Commit Graph

1392 Commits

Author SHA1 Message Date
Connor McCarthy 03df9df68c
chore(sdk): fix local test failure (#10161) 2023-10-26 01:39:16 +00:00
Mathew Wicks 02e00e8439
fix(sdk): type annotation for client credentials (#10158) 2023-10-26 01:39:10 +00:00
rickyxie0929 7ab05d8a84
chore(sdk): Remove the ` (<type>)`from docstring args. (#10159)
* chore(sdk): Remove the ` (<type>)`from docstring args.

Remote the ` (<type>)` from the docstring args, which are redundant since there are type annotations.

* Trim the unnecessary leading space.
2023-10-26 00:29:09 +00:00
Connor McCarthy e3b1863791
chore(sdk): add Python 3.7 EOL notice (#10139) 2023-10-24 22:06:08 +00:00
Connor McCarthy c0adea9946
chore(sdk): add test for key error bug resolved in #10067 (#10128) 2023-10-19 23:49:03 +00:00
Connor McCarthy 8d00d0eb9a
feat(sdk): support a Pythonic artifact authoring style (#9932)
* chore(sdk): test observability, refactorings, and cleanup

* implement unified i/o syntax

* clarify container component error message

* address review feedback

* add dill to packages_to_install

* update get_uri logic for KFP and tests

* update execution tests & cleanup
2023-10-19 18:49:58 +00:00
Connor McCarthy 73d51c8a23
fix(sdk): fix bug when `dsl.importer` argument is provided by loop variable (#10116) 2023-10-18 20:37:56 +00:00
Connor McCarthy 2d3171cbfe
feat(sdk): support collecting outputs from conditional branches using `dsl.OneOf` (#10067)
* support dsl.OneOf

* address review feedback

* address review feedback
2023-10-18 02:34:55 +00:00
gkcalat ab33e2af4e
chore(sdk): Improve a message printed for users. Closes #10100 (#10101) 2023-10-15 22:58:53 +00:00
gkcalat c9032716ab
fix(sdk): Fix OOB for IPython and refactor. Closes #10075. (#10094)
* Fix OOB for IPython and refactor. Closes #10075.

* Address comments
2023-10-13 22:24:52 +00:00
Connor McCarthy 55f174e5bb
chore(sdk): clean up compiler_test.py (#10070) 2023-10-09 20:50:18 +00:00
Connor McCarthy fcdff294a6
fix(sdk): fix incorrect sub-DAG output type when using `dsl.Collected` (#10069) 2023-10-09 17:04:18 +00:00
Connor McCarthy 87005cc015
chore(sdk): wrap conditional branch groups in outer pipeline (#10034) 2023-10-05 02:45:15 +00:00
Connor McCarthy 2ef5afe0bb
chore(sdk): release KFP SDK 2.3.0 (#10024) 2023-09-22 21:32:57 +00:00
Connor McCarthy e99f2704fc
feat(sdk): support `PipelineTaskFinalStatus` in tasks that use `.ignore_upstream_failure()` (#10010)
* support taskfinalstatus in tasks that ignore upstream failure

* address review feedback
2023-09-21 01:46:37 +00:00
Connor McCarthy 20218a9c1d
chore(sdk): test observability, refactorings, and cleanup (#10005)
* chore(sdk): test observability, refactorings, and cleanup

* address review feedback

* rename classes
2023-09-18 22:51:27 +00:00
Connor McCarthy d001b8055f
chore(sdk): refactor python component executor (#9990) 2023-09-15 22:00:30 +00:00
Chen Sun a13e143038
test: fix sdk execution test (#9988)
* fix sdk execution test

* fix missing key

* fix state

* fix state

* fix capitalization
2023-09-14 20:02:30 +00:00
Connor McCarthy 659c54bbeb
chore(sdk): release KFP SDK 2.2.0 (#9984) 2023-09-14 17:37:30 +00:00
Connor McCarthy cc2cd58918
fix(sdk): fix --no-deps flag usage (#9982)
* update --no-deps flag usage

* update runtime test code
2023-09-13 15:31:02 -07:00
Connor McCarthy c6b236d1a0
feat(sdk): support dsl.If, dsl.Elif, and dsl.Else (#9894)
* support if/elif/else

* deprecate dsl.Condition

* alter rebase

* update release notes

* address review feedback

* change BinaryOperation to ConditionOperation
2023-09-11 20:19:35 +00:00
Connor McCarthy 2b05ec867f
chore(sdk): remove old file (#9959) 2023-09-05 20:57:31 +00:00
Connor McCarthy 959f54efd7
chore(sdk): release kfp sdk 2.1.3 (#9896)
* release kfp sdk 2.1.3

* update tests

* update OWNERS file
2023-09-05 18:32:31 +00:00
Connor McCarthy ef0788d986
feat(sdk): add logging at end of executor execution (#9895)
* feat(sdk): add logging at end of executor execution

* Update executor.py

* Update executor.py
2023-09-05 17:25:31 +00:00
Connor McCarthy cf0e0cf87c
feat(sdk): enable dependency-free runtime install of kfp (#9886)
* handle problematic imports

* separate runtime and compile-time symbols

* wrap kfp/__init__.py imports unavailable at runtime

* update component factory + tests

* add runtime tests

* add --no-deps flag to component factory

* update release notes

* clean up

* handle containerized python components

* update golden snapshots

* update component_factory unit tests

* respond to review feedback

* fix runtime test and compilation logic

* update tests
2023-08-24 18:31:16 +00:00
Connor McCarthy f6d0772175
chore(sdk): remove kfp-dsl source code (#9881) 2023-08-16 16:47:04 +00:00
Connor McCarthy c9e54798cd
chore(sdk): undo creation of kfp-dsl namespace package (#9874)
* revert to c8204d0

* reapply #9742

* modify #9791

* reapply #9800

* reapply #9827

* revert parts of #9738

* reapply parts of #9785

* remove duplicated dsl-test code

* reapply parts of #9791

* correct version
2023-08-15 16:24:52 -07:00
Connor McCarthy 11a5ae1dd7
chore(sdk): clean up artifact code (#9800) 2023-08-04 17:12:20 +00:00
Connor McCarthy 25f6ee6389
chore(sdk): release KFP SDK 2.1.2 (#9797) 2023-07-28 16:47:34 +00:00
Connor McCarthy 540294aedb
fix(sdk): fix GCPC break in KFP SDK (#9791) 2023-07-27 23:02:32 +00:00
Connor McCarthy 49db9effe4
chore(sdk): release KFP SDK 2.1.1 (#9787) 2023-07-27 00:26:51 +00:00
Connor McCarthy 8ad97167ff
fix(sdk): various kfp-dsl fixes (#9785)
* specify kfp-dsl version directly

* make presubmit test executable

* add yaml requirement

* assorted test and import fixes
2023-07-26 22:41:51 +00:00
Connor McCarthy 309c5b9f0a
chore(sdk): release KFP SDK 2.1.0 (#9782) 2023-07-26 17:09:02 +00:00
Connor McCarthy 525ff90684
chore(sdk): extract DSL into `kfp-dsl` package (#9738)
* move dsl dir

* make kfp-dsl a package

* make kfp-dsl a package

* additional changes

* address review feedback
2023-07-25 23:34:02 +00:00
Alex 1045c95517
chore(sdk): resolve mypy finding (#9742) 2023-07-17 19:54:37 +00:00
Connor McCarthy c8204d0285
chore(sdk): partition KFP SDK source code into runtime and non-runtime code (#9710) 2023-07-07 23:18:52 +00:00
Chen Sun a727783abd
chore: remove 'dummy_root' in test samples (#9640)
* remove 'dummy_root' in test samples

* more cleanup
2023-06-21 23:51:41 +00:00
Connor McCarthy 6dfcd533f4
chore(sdk): release KFP SDK 2.0.1 (#9669) 2023-06-21 00:22:40 +00:00
Connor McCarthy e5fe981c1a
fix(sdk): fix kfp sdk v2 readme (#9668) 2023-06-21 00:15:40 +00:00
Connor McCarthy b3bdeb286d
chore(sdk): release KFP SDK 2.0.0 (#9624)
* bump kfp-server-api version

* release 2.0.0

* add 2.0.0 release notes

* apply suggested changes
2023-06-20 20:00:40 +00:00
Connor McCarthy 92c02a6172
fix(sdk): fix click dependency bug (#9634)
* fix(sdk): fix click dependency bug

* update release notes
2023-06-20 18:33:41 +00:00
Chen Sun c33afa74f3
chore(sdk): relax name validation when upload pipeline (#9646)
* relax name validation when upload pipeline

* fix typo
2023-06-16 22:20:36 +00:00
hsteude a9ac0b95bc
fix(sdk): print docker error messages (#9595)
Without this commit, `kfp component build` doesn't print any error
messages that docker emits, e.g. if docker push fails.

Co-authored-by: Christian Geier <geier@lostpackets.de>
2023-06-13 00:47:02 +00:00
Connor McCarthy b6c660853e
chore(sdk): release KFP SDK 2.0.0-rc.2 (#9605)
* release 2.0.0-rc.2

* update comment
2023-06-09 10:59:05 -07:00
Connor McCarthy 48ecc7d879
fix(sdk): fix bug when iterating over output from upstream task in nested parallelfor loops (#9580)
* refactor for clarity

* fix iter over upstream output in nested parallelfor

* update release notes

* support empty `List` generic annotation

* fix typos

* add comment about refactoring opportunity

* fix annotation

* update comment again
2023-06-09 08:58:28 -07:00
Tommy Li 0587a3fd35
chore(sdk): loosen python kubernetes version requirement (#9545)
* loosen python kubernetes version requirement

* update sdk release note
2023-06-01 19:17:06 +00:00
Chen Sun 296120290b
fix(sdk): relax executor type checking (#9481)
* relax executor type checking

* address review comments

* add release note
2023-05-23 19:05:35 +00:00
Connor McCarthy 209df547ef
chore(sdk): release KFP SDK 2.0.0-rc.1 (#9429) 2023-05-16 18:23:00 +00:00
Connor McCarthy 96742a648a
docs(sdk): add dsl placeholder exports (#9423) 2023-05-15 19:46:31 +00:00
Connor McCarthy 78902274f1
feat(sdk): support compiling components with `dsl.PipelineTaskFinalStatus` type (#9082) 2023-05-12 22:14:28 +00:00
Tommy Li 4d2a1cf173
fix(sdk): Optimize wait_for_run_completion sdk function to skip an extra wait (#9407) 2023-05-12 21:49:28 +00:00
Connor McCarthy 96947e6fb9
fix(sdk): fix compilation of boolean constant passed to component (#9390) 2023-05-12 17:13:39 +00:00
Connor McCarthy c01288d673
feat(sdk): support writing `TASK_FINAL_STATUS` parameter type (#9080)
* write new parameter type

* update golden snapshots

* add compiler tests
2023-05-12 17:13:32 +00:00
Chen Sun 3ad91a9bbe
chore: release KFP SDK 2.0.0-beta.17 (#9355)
* Release KFP SDK 2.0.0-beta.17

* update release note
2023-05-08 17:42:55 +00:00
Chen Sun b6b8f94da2
chore: recompile/update v2 samples to avoid possible runtime breakage (#9333)
* recompile/update v2 samples

* fix test
2023-05-05 17:28:24 +00:00
Connor McCarthy 58ebd202c4
release 2.0.0b16 (#9325) 2023-05-04 10:56:24 -07:00
Connor McCarthy c437004761
fix(sdk): fix appengine import error (#9323) 2023-05-04 17:31:45 +00:00
Jonny Browning b59b70875e
fix(sdk): allow user to choose platform for component container build. Fixes #8883 (#9212)
Co-authored-by: Jonny Browning <jonathan.browning@datatonic.com>
2023-04-25 19:41:45 +00:00
Connor McCarthy 04306dc3cb
chore(sdk): release KFP SDK 2.0.0b15 (#9218) 2023-04-24 18:32:43 +00:00
Connor McCarthy 946c51bafe
feat(sdk): support extracting input/output descriptions from component/pipeline docstrings (#9156)
* feat(sdk): support extracting input/output descriptions from component/pipeline docstrings

* remove numpydoc tests
2023-04-24 17:16:44 +00:00
Chen Sun 91277b1e91
fix(SDK): fix `client.run_pipeline` with `pipeline_id` and `version_id` gives error (#9191) 2023-04-20 21:17:40 +00:00
Connor McCarthy 41c0d78f5f
fix(sdk): fix handling of PipelineTaskFinalStatus in ir_type_ attribute hack (#9186) 2023-04-20 13:53:31 -07:00
Connor McCarthy 91abbeaf2f
feat(sdk): support `display_name` and `description` in `@dsl.pipeline` decorator (#9153)
* feat(sdk): support display_name and description in @dsl.pipeline decorator

* add release note

* test additional case
2023-04-17 14:15:39 -07:00
Mithil Poojary 3164dfb01a
fix(sdk): fixes module not found error for containerized python components. Fixes #8385 (#9157)
* Add module directory to sys.path

* Add nested module imports unit test

* Add release note to release.md
2023-04-17 11:46:02 -07:00
Connor McCarthy 30466586d0
chore(sdk): add kfp-kubernetes as kfp extras_require (#9152) 2023-04-17 10:08:22 -07:00
Connor McCarthy 80bd8f17b1
chore(sdk): bump kfp version in test data to 2.0.0-beta.14 (#9145) 2023-04-12 16:27:09 -07:00
Chen Sun a107fb1bcf
chore: release SDK 2.0.0b14 (#9144)
* release SDK 2.0.0b14

* doc ref
2023-04-12 14:29:29 -07:00
Chen Sun 952e0730a8
feat(sdk): Support submitting pipeline with platform config. (#9140)
* SDK client v2beta1 API integration.

* fix unit tests

* create alias for use of methods and fields referencing `job`.`

* fix cli

* fix pipeline list-versions

* more cli fixes

* client fix

* Support submitting pipeline with platform spec.

* unit test

* move util functions
2023-04-12 13:06:12 -07:00
Chen Sun 07d6c1816b
feat(SDK)!: SDK client v2beta1 API integration. Fixes #8706 (#9112)
* SDK client v2beta1 API integration.

* fix unit tests

* create alias for use of methods and fields referencing `job`.`

* fix cli

* fix pipeline list-versions

* more cli fixes

* client fix
2023-04-12 09:54:45 -07:00
IronPan 5e98b3b6f0
feat(sdk): Support PIPELINE_ROOT_PLACEHOLDER (#9134)
* Support PIPELINE_ROOT_PLACEHOLDER

/assign @connor-mccarthy

* Update __init__.py
2023-04-11 08:56:49 -07:00
Chen Sun a6ef77b784
feat(sdk): Support setting cpu/memory requests. (#9121)
* Support setting cpu/memory requests.

* address review comments

* address review comments
2023-04-10 23:35:16 -07:00
Connor McCarthy e907b6343e
set _ir_type attribute (#9105) 2023-04-10 12:01:36 -07:00
Connor McCarthy 5828632c2f
feat(sdk): support indexing into top-level artifact metadata in Container Components (#9131) 2023-04-10 11:46:01 -07:00
Connor McCarthy 5a769e9080
Revert "update compiler type annotations (#9090)" (#9095)
This reverts commit ad6f55e8f3.
2023-04-03 16:01:26 -07:00
Connor McCarthy ad6f55e8f3
update compiler type annotations (#9090) 2023-04-03 09:20:17 -07:00
Connor McCarthy 0cbcebcf88
fix(sdk): support accessing `.dsl` attribute on `kfp` module object (#9048) 2023-03-27 15:12:17 -07:00
Connor McCarthy 3026e452ff
fix(sdk): fix loading non-canonical type strings from v1 component YAML (#9041) 2023-03-27 10:25:23 -07:00
Alex 3e1f3c6d7a
feat(sdk): add experiment_id parameter to create run methods (#9004)
Co-authored-by: alenawang <alena.n.wang@gmail.com>
Co-authored-by: andreafehrman <andrea.k.fehrman@vanderbilt.edu>
Co-authored-by: owmasch <owenmaschal0598@gmail.com>
Co-authored-by: ryanrusson <ryan.russon@gmail.com>
2023-03-24 09:56:48 -07:00
Connor McCarthy 2bbfd5e89f
fix: support setting task dependencies via kfp.kubernetes.mount_pvc (#8999)
* enable accessing .task on pipeline channel

* set task dependencies in mount_pvc

* update tests
2023-03-16 21:10:54 -07:00
Ze Mao 0fd1e69c74
cpu and memory resource can be optional (#8992)
Co-authored-by: Ze Mao <zemao@google.com>
2023-03-16 09:23:55 -07:00
Connor McCarthy e96754cb53
feat(sdk): deprecate .add_node_selector_constraint in favor of .set_accelerator_type (#8980)
* rename method

* update docstring
2023-03-14 09:22:35 -07:00
Connor McCarthy a38d7479d7
feat(sdk): support compiling platform specific features (#8940)
* support compiling platform-specific features

* fix map size change during iteration
2023-03-10 11:18:25 -08:00
Connor McCarthy abdc08b773
chore(sdk): pin kfp-pipeline-spec to 0.2.1 (#8971) 2023-03-10 10:19:03 -08:00
JOCSTAA 6777e8f445
fix(sdk): Support python 3.11 (#8907)
* new branch

* add to release.md

* edit setup.py
2023-03-03 13:36:53 -08:00
b4sus ed66ba327f
feat(sdk): using component's pip_index_urls for Dockerfile generation. Fixes #8816 (#8871)
* feat(sdk): using component's pip_index_urls for Dockerfile generation

* Update sdk/python/kfp/cli/component.py

Co-authored-by: Connor McCarthy <mccarthy.connor.james@gmail.com>

* feat(sdk): PR changes: removed additional space from index url options string; duplicate removal not necessary

* feat(sdk): feature mentioned in RELEASE.md

* deduplication back - more components in a file can specify same pypi url - we need it only once for docker image

* feature note moved to current development section

---------

Co-authored-by: Connor McCarthy <mccarthy.connor.james@gmail.com>
2023-03-01 09:32:56 -08:00
Connor McCarthy 86554be46a
release kfp sdk 2.0.b13 (#8904) 2023-02-27 16:52:53 -08:00
Connor McCarthy 87062dbf22
fix(sdk): fix attribute error for Containerized Python Components (#8887) 2023-02-27 16:42:50 -08:00
Chen Sun 8d3e0dd805
fix(sdk): Fix environment variable set in component yaml lost during compilation. Fixes #8884 (#8885)
* Fix env set in component yaml not captured

* release note

* clean up unnecessary code in test
2023-02-23 14:28:26 -08:00
Connor McCarthy 386ff88236
fix(sdk): fix unknown artifact string in dsl.OutputPath/dsl.InputPath (#8880) 2023-02-23 08:37:04 -08:00
Connor McCarthy 31298c479b
fix(sdk): fix bug when passing data between tasks using f-strings (#8879) 2023-02-23 08:36:53 -08:00
Connor McCarthy c046879dda
support fanning-in artifacts (#8808) 2023-02-22 10:39:00 -08:00
Connor McCarthy 41752608bc
support list of artifact input placeholders (#8484) 2023-02-16 09:26:53 -08:00
JOCSTAA 1e1a02066a
fix(sdk): Add outputDefinitions of root pipeline to compiled components IR YAML file (#8848)
* base

* add to readme

* adress comments
2023-02-15 09:28:33 -08:00
Chen Sun 8552226c41
chore(test): revert api changes to deprecated client (#8841)
* revert api changes to deprecated client

* list experiments

* fix

* fix sample v2 test
2023-02-14 11:01:58 -08:00
JOCSTAA 5684bfccff
feat(sdk): Ignore upstream failure (#8838)
* main

* adress comments

* adress comments

* adress comments 2

* address comments 3

* address comments 4
2023-02-13 11:40:42 -08:00
Connor McCarthy e7ad073f1d
feat(sdk): deprecate .set_gpu_limit in favor of .set_accelerator_limit (#8836) 2023-02-09 15:46:10 -08:00
Chen Sun 0fc174ae28
chore(sdk): release KFP SDK 2.0.0b12 (#8823) 2023-02-08 09:46:17 -08:00
Chen Sun cc5373281d
chore(sdk): Pin kfp-server-api to an exact version (#8822) 2023-02-07 23:04:44 -08:00
Connor McCarthy b575950a75
feat(sdk): support for fan-in from `dsl.ParallelFor` (#8631)
* implement parallelfor fan-in

* temporarily block fan-in of artifacts

* clean up

* unify and clarify error messages

* remove comment

* remove unnecessary compiler condition

* make test cases more realistic

* use better ParallelFor variable name

* add and rename test cases

* add ParallelFor fan-in test cases

* fix return collected bug

* clean up compilation tests

* update docstrings; update error message

* remove fan-in artifacts read/write tests

* implement review feedback

* change use of additional_input_name_for_pipeline_channel

* move additional_input_name_for_pipeline_channel

* provide additional pipeline topology validation and tests; refactor existing validation

* add release note for parameter fan-in
2023-02-04 20:50:51 -08:00
Tara Tufano e50f40305d
fix(sdk): fix upload_pipeline when no pipeline name is provided (#8695) 2023-01-31 13:45:39 -08:00
Connor McCarthy edfb267790
bump version; update release notes; add docs (#8745) 2023-01-20 12:56:56 -08:00
Connor McCarthy 1c7ab4c5f5
pin kfp-pipeline-spec version exactly (#8737) 2023-01-20 12:49:36 -08:00
Connor McCarthy 78d31dc8a3
chore(sdk): remove v1 dependencies from SDK v2 (#8668)
* split out deprecated requirements

* pip install deprecated requirements for sample tests

* remove superfluous comments in requirements.in

* update release notes

* ignore deprecated directory in unit tests

* remove unused argo compiler

* ignore deprecated path

* update run sample yaml

* install deprecated requirements for e2e tests

* add todos
2023-01-19 12:53:27 -08:00
Owen 07615eb88a
chore(sdk): Improve CLI utility function (#8686) 2023-01-17 14:51:50 -08:00
Alex 5adc7f1b50
chore(sdk): clean up client.py (#8656) 2023-01-17 11:04:46 -08:00
Mai Nakagawa 6040334e84
feat(sdk): Accepts higher PyYAML versions (#8665)
* Accepts higher PyYAML versions

* Update the release note
2023-01-17 10:46:42 -08:00
Connor McCarthy fdf3ee7b68
chore(sdk): release KFP SDK 2.0.0b10 (#8638)
* bump version

* update release notes

* add docs version
2022-12-29 18:05:36 -05:00
Connor McCarthy 84241d6460
fix(sdk): fix deserializing v1 component yaml defaults (#8639)
* fix deserializing v1 defaults

* update test cases

* update type annotation

* add unit tests
2022-12-29 17:48:58 -05:00
Connor McCarthy 151e8a3c6e
feat(sdk): support optional artifact inputs (#8623)
* add compiler tests

* support optional artifact inputs

* update executor test

* update existing golden snapshot

* add new compiler test/snapshot

* add release note

* bump kfp-pipeline-spec dependency
2022-12-28 13:40:12 -05:00
Connor McCarthy 5491f6f3db
fix(sdk): support writing/reading isOptional for input parameters (#8612)
* add tests

* support writing/reading isOptional for parameters

* update golden snapshots

* temporarily maintain workaround for v1 optional artifact inputs

* add release note
2022-12-21 14:46:59 -08:00
Connor McCarthy ecfdc665c4
chore(sdk): release KFP SDK 2.0.0b9 (#8609) 2022-12-21 00:55:12 +00:00
Connor McCarthy f64348f29e
fix(sdk): make executor output writer more permissive [sdk v2] (#8607) 2022-12-21 00:23:13 +00:00
Sune Debel 2eef97cfc7
fix(sdk): add special handling for PipelineTaskFinalStatus to get_parameter_type (#8587) 2022-12-19 18:48:46 +00:00
Connor McCarthy 08b2408d3d
feat(sdk): add support for lists of artifacts in Python components [support lists of artifacts pt. 3] (#8465)
* remove unused codepath

* rename to avoid confusing variable names

* implement support in executor

* add comment

* make executor code safer
2022-12-15 21:34:21 +00:00
Connor McCarthy 47eb1cad92
chore(sdk): update golden snapshots with pipeline interface comments (#8575)
* update path in readme

* update golden snapshots
2022-12-15 01:32:21 +00:00
Connor McCarthy d4b896d3e3
fix(sdk): new fix for multiple workers writing with gcsfuse bug [KFP SDK v2] (#8544)
* fix and test

* update release notes

* extract constants
2022-12-13 18:01:29 +00:00
Connor McCarthy f4588f3112
chore(sdk): idiomatic Python pure refactorings (#8537)
* use f-strings

* inline immediately returned variables

* simplify comprehension

* use list literals

* lift return statements into control flow blocks

* other pure refactorings

* remove passthrough function

* use a ternary when it improves readability

* use __getitem__ for regex match groups; introduced in Python 3.6

* fix changed comments

* revert one change
2022-12-06 23:44:36 +00:00
JOCSTAA 49db63c916
feat(sdk): Add comments to IR YAML file (#8467)
* base

* add tests

* fix bug

* adress comments

* address comments 2

* sort comments

* sort signatures

* add indempotent test

* add indempotent test2

* support multiline docstring

* review

* docformatter presubmit exclude

* docformatter presubmit exclude

* docformatter

* docformatter

* merge 1

* update readme

* nit .items()

* remove reduntant test
2022-12-05 14:43:14 -08:00
Alex 1d6a52b9ff
fix(sdk): print max_attempts instead of sleep_duration (#8523) 2022-12-02 19:32:16 +00:00
Connor McCarthy 00c6b01040
fix(sdk): fix bug when referencing component.pipeline_spec in a pipeline body (#8514)
* add tests

* implement fix

* add TODO
2022-12-02 09:35:16 +00:00
JOCSTAA 614c231ae6
fix(sdk): unblock valid topology. (#8416)
* unblock valid topology

* add more tests

* handle git fork

* sample_test_cases

* main

* restore to master

* resolve comments on PR

* resolve conflicts

* resolve conflict 2

* revert conflict fix

* fix changes

* address comments

* review

* docformatter presubmit

* revert docformatter

* update release.md
2022-12-02 00:15:15 +00:00
andreafehrman b26dd100e1
test(sdk): implement small tests for Client class (#8517)
Co-authored-by: droctothorpe <mythicalsunlight@gmail.com>

Co-authored-by: droctothorpe <mythicalsunlight@gmail.com>
2022-12-01 19:39:45 +00:00
Connor McCarthy e7c82c0593
feat(sdk): support list of artifacts annotations [list of artifacts support pt. 1] (#8464)
* update get_io_artifact_class function

* update various type annotation tests

* support list of artifacts in component interfaces

* move helper function

* clarify function name

* respond to review feedback
2022-11-30 05:24:15 +00:00
Connor McCarthy 249e7af384
chore(sdk): release KFP SDK 2.0.0b8 (#8508)
* update release notes

* bump version

* add beta 8 to docs; remove beta 7
2022-11-30 05:04:15 +00:00
Connor McCarthy 834bfbe90a
fix(sdk): revert premature client changes (#8507)
* revert _v1 client changes

* do not install kfp_server_api from source
2022-11-29 20:39:23 -08:00
Connor McCarthy 1043a88842
chore(sdk): release KFP SDK 2.0.0b7 (#8503)
* update release notes

* bump version

* add docs version to dropdown
2022-11-28 22:58:42 +00:00
Connor McCarthy b829e4a5da
feat(sdk): enable use of primitive placeholders in f-string (#8494)
* support primitive placeholders in fstring

* add read/write test component
2022-11-28 14:45:48 -08:00
Connor McCarthy 4bb57e6723
fix(sdk): fix multiple workers writing with gcsfuse bug [KFP SDK v2] (#8455)
* fix(sdk): fix multiple workers writing with gcsfuse bug [KFP SDK v1]

* add comment for context
2022-11-23 00:38:48 +00:00
Connor McCarthy e97fe8e04f
feat(sdk): add pipeline job placholders for scheduled runs (#8447)
* add pipeline job placeholders

* simplify example code in docs

* add _PLACEHOLDER suffix to variable names
2022-11-23 00:38:42 +00:00
Connor McCarthy be766dc352
docs(sdk): update pipeline task .set_gpu_limit reference docs (#8477) 2022-11-18 17:58:22 +00:00
Connor McCarthy 6b3b4df3d2
refactor(sdk): simplify InputSpec (#8422)
* simplify usage of inputspec

* remove underscore from optional

* add error message and test

* remove optional
2022-11-14 18:39:26 +00:00
Connor McCarthy 9e9e1081c6
fix(sdk): fix boolean default value serialization bug (#8444)
* add test cases

* fix bug

* add v1 component yaml back compat changes

* update golden snapshot
2022-11-11 15:42:33 -08:00
Lingqing Gan 3f2e20d14f
chore(backend): regenerate v1beta1 api clients (#8403)
* add v2 experiment.proto

* regenerate v1beta1 client

* remove api version from combined swagger file

* Revert "regenerate v1beta1 client"

This reverts commit 02769d779b.

* regenerate v1beta1 clients

* regenerate python packages without api version

* remove regenerated v1 python packages&change proto

* refactor v1 exp apis and functions

* remove v2 api package and refactor v1 proto

* regenerate v1 go clients

* regenerate v1 python package

* refactor and update the human maintained swagger

* renew swagger file

* regenerate v1 packages

* regenerate v1 python package

* refactor

* regenerate v1 go clients

* regenerate v1 python package

* recover dockerfile and add s in python

* fix func name

* use commit for sdk execution test

* change sdk execution test

* update test script

* add v1 to methods

* proto update v1 method names

* regenerate v1 go packages

* regenerate python client

* update server methods

* refactor

* refactor

* refactor

* refactor python client

* fix get_healthz

* update sample-test.sh in v2 backend

* sample test script

* change v2 sample test

* change package install order

* Revert "change package install order"

This reverts commit c24fcfbed9.

* use KFP server api from commit for v2 sample tests

* small fix
2022-11-10 19:18:00 +00:00
Connor McCarthy 24e17f7352
chore(sdk): quiet noisy SDK unit test output (#8434) 2022-11-09 17:47:39 +00:00
Connor McCarthy d33f359797
fix(sdk): fix nested placeholders and block illegal IfPresent form in Concat (#8414)
* support single element IfPresentPlaceholders that contain a primitive placeholder

* block list then and else_ inside concat

* support single element IfPresent in v1

* clean up typing

* skip loading batch_predict_job yaml
2022-11-04 18:20:16 +00:00
Connor McCarthy 08a8b1df97
refactor(sdk): remove dead BaseModel code (#8415)
* remove dead basemodel code

* remove unused deserialization logic

* remove more dead code

* remove basemodel entirely
2022-11-03 21:58:15 +00:00
Connor McCarthy 4c6abe5afc
refactor(sdk): simplify placeholders and logic (#8402)
* simplify placeholders

* update placeholders_test.py

* update structures to use placeholders correctly

* update use of placeholders elsewhere in codebase

* clean up

* move placeholder type checking logic to PipelineTask to prevent v1 load breaks

* clean up

* update docstrings

* make to_dict and to_string private methods

* revert unnecessary change to tests

* improve type safety of code

* prefix module-level constant with underscore
2022-11-02 00:31:45 +00:00
Connor McCarthy ca6ad27020
chore(sdk): remove unused linter comments (#8405) 2022-11-01 18:31:46 +00:00
Jonny Browning (Datatonic) 5b75d75ad7
feat(sdk): add --build-image option to 'kfp components build' to allow users to skip docker build. Fixes #8382 for 2.0 (#8387)
* feat: added --build-image/--no-build-image flags to skip docker build

* fix: logic error for warnings/errors
2022-10-26 15:58:31 +00:00
Chen Sun 8df22db757
chore(release): release sdk 2.0.0b6 (#8373)
* release sdk 2.0.0b6

* address review comments
2022-10-18 00:30:27 +00:00
JOCSTAA ac02a0e191
fix(sdk): Throw exception for component parameter named Output (#8367)
* fix(sdk): Throw exception for component parameter named Output

* Add unit test

* lint fix

* nit fixes

* nit

* nit

* format fixes
2022-10-17 23:40:27 +00:00
Connor McCarthy 30669e46dc
chore(sdk): improve KFP SDK reference documentation (#8337)
* use autodoc default options

* sort symbol order by typical usage patterns

* include summary of submodule symbols

* expose Input[] and Output[] type generics

* include tables of contents on API reference docs pages

* expand global TOC for discoverability

* fix missing reference / circular import problem
2022-10-17 19:58:53 +00:00
Chen Sun 54922b32c6
fix(sdk): fix `kfp component build` only produces empty requirements.txt (#8372)
* fix CUJ2 always writes empty requirements.txt

* sort dependencies
2022-10-17 19:22:53 +00:00
Chen Sun 4cc0e80183
fix(sdk): Allow using cli `kfp dsl compile` to compile components (#8371)
* Allow using cli `kfp dsl compile` to compile components

* improve error message

* address review comments
2022-10-17 16:06:52 +00:00
Chen Sun 83e0f16af1
fix(sdk): Fix "No KFP components found in file" error. Fixes #8353 (#8359)
* Update component.py

* Update component.py

* Update component.py
2022-10-13 21:04:03 +00:00
JOCSTAA 764140153f
fix(sdk): Fix PyPi typo in cli/component docstring (#8361) 2022-10-13 20:28:03 +00:00
Connor McCarthy 26f1fe4dfa
fix(sdk): fix NamedTuple output with Dict/List bug (#8316) 2022-09-28 02:25:10 +00:00
Connor McCarthy 19b8709ca3
chore(release): release sdk 2.0.0b5 (#8309)
* bump reference docs

* update release notes; modify structure

* bump version

* implement review feedback
2022-09-26 21:38:35 +00:00
Connor McCarthy 8ab690f3ed
feat(sdk): add workaround for google artifact (support custom artifact types pt. 4) (#8279) 2022-09-19 22:32:38 +00:00
Connor McCarthy 0cb0d99d69
fix(sdk): fix InputPath error in executor (#8273)
* fix inputpath error

* add tests

* fix nit
2022-09-19 22:32:31 +00:00