Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
130 commits
Select commit Hold shift + click to select a range
cfac25c
Add support union type
pingsutw Nov 17, 2021
1027a31
Fixed test
pingsutw Nov 17, 2021
eab9b28
Fixed test
pingsutw Nov 17, 2021
4a0fdb9
Fixed lint
pingsutw Nov 17, 2021
38a8f7e
Fixed tests
pingsutw Nov 18, 2021
e179fb9
Updated tests
pingsutw Nov 18, 2021
c1f8cfe
Update Union to use tagged Unions
maximsmol Dec 3, 2021
a11bfe7
Update to use string tags (part 1)
maximsmol Dec 9, 2021
38b9dfa
Working implementation, update tests
maximsmol Dec 10, 2021
2ca507b
Fixes, more tests
maximsmol Dec 10, 2021
deb53a5
Fix incorrect unwrapped literal-union matching, update test
maximsmol Dec 10, 2021
154c8a0
Fix duplicate tag handling, add tests for collections containing unions
maximsmol Dec 10, 2021
b577215
Fix type hint test
maximsmol Dec 10, 2021
39b8007
Add implicit wrapping union type tests
maximsmol Dec 10, 2021
4ff3038
Add union ambiguity tests
maximsmol Dec 10, 2021
de2b7a5
Fixup tests, make TypeTransformerFailed compatible with all old excep…
maximsmol Dec 10, 2021
596fefc
Fixup models + add tests
maximsmol Dec 10, 2021
3044e85
Implement changed design
maximsmol Dec 27, 2021
a9e3c40
Fix PR comments
maximsmol Feb 17, 2022
f339931
Remote entrypoint serialize (#733)
YmirKhang Nov 17, 2021
53975f0
Fix lint error in remote.py (#755)
eapolinario Nov 17, 2021
06254e3
Support enum in dataclass (#753)
pingsutw Nov 23, 2021
9b84040
Fix subworkflow and launch plan FlyteRemote behavior (#751)
wild-endeavor Nov 24, 2021
9aa161b
Extras: Shell task (#747)
kumare3 Nov 28, 2021
c430967
Add support FlyteSchema in dataclass (#722)
pingsutw Nov 30, 2021
fac636d
Remove workflow_execution.py (#758)
pingsutw Dec 1, 2021
4036507
Get raw input/output from remote execution (#675)
kumare3 Dec 2, 2021
567d8c1
Fix mypy errors in flytekit/types (#757)
aeioulisa Dec 6, 2021
6b32abc
Remote client failed to fetch FlytePickle object (#764)
pingsutw Dec 7, 2021
ac55099
Add support FlyteFile in dataclass (#725)
pingsutw Dec 7, 2021
4411b1c
add task_resolver arg to @task decorator (#765)
cosmicbboy Dec 8, 2021
b89124f
Copy metadata into map task from underlying (#766)
wild-endeavor Dec 8, 2021
ec13d83
Support for delayed annotations (#760)
bethebunny Dec 9, 2021
64cc6e1
Complex dataclass unit tests (#773)
wild-endeavor Dec 14, 2021
41ce10d
remote_source lost on serialization of @dataclass_json with FlyteFile…
pingsutw Dec 14, 2021
9a4c582
Single-task execution FlyteRemote sync (#778)
wild-endeavor Dec 14, 2021
7ec8beb
Logging updates (#775)
wild-endeavor Dec 14, 2021
68dd191
fix: doc-requirements.txt to reduce vulnerabilities (#779)
snyk-bot Dec 15, 2021
877038a
Add cache_serialize parameter to tasks (#673)
hamersaw Dec 15, 2021
687851a
When using the `task` and `workflow` decorator, correctly wrap the fu…
bstadlbauer Dec 17, 2021
669593e
Add option to flyte-cli for specifying root certificate (#783)
wild-endeavor Dec 20, 2021
7db24b8
Add validation check to cacert switch (#787)
wild-endeavor Dec 20, 2021
7180075
Remove pytz constraint (#786)
eapolinario Dec 20, 2021
50da846
Lint: remove f-string misuse (#788)
eapolinario Dec 20, 2021
46c692e
Pyarrow greater than 4.0.0 (#790)
eapolinario Dec 23, 2021
46fb085
Support python 3.10 (#791)
eapolinario Dec 28, 2021
2aa3762
add `with_overrides` to map task (#794)
samhita-alla Jan 4, 2022
2109643
bump docsearch version (#805)
samhita-alla Jan 7, 2022
ec85174
update docs for new navbar theme (#806)
cosmicbboy Jan 8, 2022
279ce1d
fix requirment.txt github issue (#810)
yindia Jan 11, 2022
fa50c9a
Add sphinx panels (#815)
cosmicbboy Jan 12, 2022
71c922a
Schema overhaul (#785)
pingsutw Jan 13, 2022
9dbca81
Parent workflow serialization fails when calling a launch plan with f…
pingsutw Jan 14, 2022
8a3ca23
Fix sagemaker plugin (#817)
eapolinario Jan 14, 2022
a63b7ca
Remove legacy API (#807)
wild-endeavor Jan 15, 2022
a50f991
Add Bigquery plugin (#789)
pingsutw Jan 17, 2022
1220976
Fixed flytekit-papermill ImportError (#818)
pingsutw Jan 17, 2022
bcc4f61
Add support for string-format-like sytax for shell task (#792)
palchicz Jan 18, 2022
de3aba3
Expose configured RawOutputPrefix during execution (#813)
pingsutw Jan 18, 2022
83fbe50
Add SecretsManager back to old import location (#820)
wild-endeavor Jan 18, 2022
2e60266
Add some tests (#819)
wild-endeavor Jan 19, 2022
057c130
Fixed flaky spark test (#821)
pingsutw Jan 20, 2022
3248ddf
fix: plugins/flytekit-greatexpectations/requirements.txt to reduce vu…
snyk-bot Jan 21, 2022
f2a0405
fix: plugins/flytekit-papermill/requirements.txt to reduce vulnerabil…
snyk-bot Jan 21, 2022
85b5057
fix: requirements-spark2.txt to reduce vulnerabilities (#826)
snyk-bot Jan 21, 2022
9167cff
fix: requirements.txt to reduce vulnerabilities (#824)
snyk-bot Jan 21, 2022
1935006
Intratask checkpointing (#771)
kumare3 Jan 21, 2022
668bf75
Support reading subset column (#822)
pingsutw Jan 25, 2022
11f28c3
Fix spark regression (#830)
pingsutw Jan 26, 2022
79e727f
Update argument setting for in fast registered, dynamically generated…
wild-endeavor Jan 27, 2022
1202706
`ctx` Context can be used within shell tasks - to access context vars…
kumare3 Jan 29, 2022
0f4fb9e
Expose Checkpoint as a top-level interface in flytekit (#839)
kumare3 Jan 31, 2022
9b6a6cc
Parse duration field from flyteidl to `flytekit.models.execution.Exec…
bstadlbauer Jan 31, 2022
05548b0
Gate new Structured Dataset feature & remove old config objects (#831)
wild-endeavor Jan 31, 2022
71b665d
Fixing out of order for conditional outputs (#843)
kumare3 Feb 3, 2022
3db6824
Set default values to map task template (#841)
eapolinario Feb 8, 2022
110c900
Regenerate requirements files - dependencies dropping support for pyt…
eapolinario Feb 8, 2022
30ef9e9
TypeAnnotation (#759)
kennyworkman Feb 8, 2022
2ff05d0
Remove singleton from structured dataset transformer engine (#848)
wild-endeavor Feb 8, 2022
a33c108
Assign input and output to FlyteWorkflowExecution (#842)
pingsutw Feb 9, 2022
0af55a2
Add reference entities to FlyteTask and FlyteLaunchPlan (#850)
wild-endeavor Feb 12, 2022
d8f2fb0
Fix fast registration error (#851)
wild-endeavor Feb 14, 2022
7442893
Add support for local execute in pod task (#852)
ggydush-fn Feb 15, 2022
32186be
Add anonymous retry (#854)
wild-endeavor Feb 16, 2022
813e56e
fix: formatting, linting, typing_extensions
maximsmol Mar 2, 2022
abbb15c
fix: do not use SDK types
maximsmol Mar 2, 2022
960b161
fix: update test comment
maximsmol Mar 2, 2022
1368024
fix: also check literal type castability when tags match
maximsmol Mar 3, 2022
1d530a3
Point flyteidl to maxim's fork in CI and requirements files
eapolinario Mar 3, 2022
35de697
[Core feature] Add Raw AWS Batch Task (#782)
pingsutw Feb 17, 2022
d5823d2
Add structured dataset encoder/decoder in fsspec plugin (#849)
pingsutw Feb 17, 2022
cc3d739
Delete unnecessary auth configuration (#858)
wild-endeavor Feb 23, 2022
96ad23f
Fixed format alias in Flytekit docs (#844)
SmritiSatyanV Feb 23, 2022
35a4b98
Bump idl (#862)
wild-endeavor Feb 23, 2022
c980043
Updated authoring.rst (#863)
SmritiSatyanV Feb 25, 2022
517de98
Updated authoring.rst (#866)
SmritiSatyanV Feb 25, 2022
e01e7c0
Change docs for HTMLPage type to say HTMLPage instead of PNGImage (#868)
NotMatthewGriffin Feb 26, 2022
75e4da9
Revisit StructuredDatasetDecoder interface (#865)
pingsutw Mar 1, 2022
35867aa
Remove legacy mentions in contributing guide (#870)
wild-endeavor Mar 1, 2022
8636f36
Add GCS protocol in the structured dataset (#869)
pingsutw Mar 2, 2022
2dd8738
Make fetched entities callable within workflows (#867)
wild-endeavor Mar 2, 2022
93b0fd2
Caching of offloaded objects (#762)
eapolinario Mar 2, 2022
e9e2b49
FlyteRemote fetch of conditional nodes (#772)
wild-endeavor Mar 3, 2022
ef0291d
Removed root logger (#871)
pingsutw Mar 3, 2022
bcfde6d
Fix flytekit_compatibility/test_schema_types.py test
eapolinario Mar 3, 2022
f83f621
make lint
eapolinario Mar 3, 2022
12cc639
fix: annotated type conversion error
maximsmol Mar 7, 2022
0e7569c
fix: _are_types_castable based on tests
maximsmol Mar 7, 2022
7080898
fix: test failing if using random order
maximsmol Mar 8, 2022
4c925a1
Merge branch 'master' into maximsmol/union_type
maximsmol Mar 8, 2022
b452609
fix: merge issue
maximsmol Mar 8, 2022
adcbb79
fix: requirements
maximsmol Mar 8, 2022
eb75bea
fix: schema transformer error
maximsmol Mar 8, 2022
096217f
fix: git hates me
maximsmol Mar 8, 2022
8495207
fix: test
maximsmol Mar 8, 2022
cb7b8a1
fix: merge issue
maximsmol Mar 9, 2022
cc3883c
fix: union + annotated behavior
maximsmol Mar 9, 2022
4446300
Merge remote-tracking branch 'flyteorg/master' into maximsmol/union_type
eapolinario Mar 17, 2022
a7f0c18
Regenerate requirements
eapolinario Mar 17, 2022
6526999
Bump requirements in plugins
eapolinario Mar 17, 2022
e8610db
Handle nested Annotated
eapolinario Mar 18, 2022
b850092
Leave TODO re: strucutured dataset type castability
eapolinario Mar 18, 2022
6587c8f
Remove mention to flyteidl@union_type in doc-requirements
eapolinario Mar 18, 2022
843cda9
Linting
eapolinario Mar 18, 2022
861b157
Use tempfile.mkdtemp to create a temporary directory for local data p…
eapolinario Mar 18, 2022
2657c25
Revert "Use tempfile.mkdtemp to create a temporary directory for loca…
Mar 18, 2022
1672bf4
Force temporary file to not be deleted in test
Mar 18, 2022
7349bcf
Regenerate papermill dev-requirements
Mar 18, 2022
8271d2c
Remove duplicate code
eapolinario Mar 21, 2022
b94f147
Put a lower bound on the pip version installed in CI
eapolinario Mar 21, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
133 changes: 66 additions & 67 deletions .github/workflows/pythonbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: Build
on:
push:
branches:
- master
- master
pull_request:

env:
Expand All @@ -19,43 +19,43 @@ jobs:
python-version: ["3.7", "3.8", "3.9", "3.10"]
spark-version-suffix: ["", "-spark2"]
exclude:
- python-version: 3.8
spark-version-suffix: "-spark2"
- python-version: 3.9
spark-version-suffix: "-spark2"
- python-version: 3.10
spark-version-suffix: "-spark2"
# Ignore this test because we failed to install docker-py
# docker-py will install pywin32==227, whereas pywin only added support for python 3.10 in version 301.
# For more detail, see https://github.com/flyteorg/flytekit/pull/856#issuecomment-1067152855
- python-version: 3.10
os: windows-latest
- python-version: 3.8
spark-version-suffix: "-spark2"
- python-version: 3.9
spark-version-suffix: "-spark2"
- python-version: 3.10
spark-version-suffix: "-spark2"
# Ignore this test because we failed to install docker-py
# docker-py will install pywin32==227, whereas pywin only added support for python 3.10 in version 301.
# For more detail, see https://github.com/flyteorg/flytekit/pull/856#issuecomment-1067152855
- python-version: 3.10
os: windows-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Cache pip
uses: actions/cache@v2
with:
# This path is specific to Ubuntu
path: ~/.cache/pip
# Look to see if there is a cache hit for the corresponding requirements files
key: ${{ format('{0}-pip-{1}', runner.os, hashFiles('dev-requirements.txt', format('requirements{0}.txt', matrix.spark-version-suffix))) }}
- name: Install dependencies
run: |
make setup${{ matrix.spark-version-suffix }}
pip freeze
- name: Test with coverage
env:
FLYTE_SDK_USE_STRUCTURED_DATASET: "TRUE"
run: |
coverage run -m pytest tests/flytekit/unit
- name: Codecov
uses: codecov/codecov-action@v1
with:
fail_ci_if_error: true # optional (default = false)
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Cache pip
uses: actions/cache@v2
with:
# This path is specific to Ubuntu
path: ~/.cache/pip
# Look to see if there is a cache hit for the corresponding requirements files
key: ${{ format('{0}-pip-{1}', runner.os, hashFiles('dev-requirements.txt', format('requirements{0}.txt', matrix.spark-version-suffix))) }}
- name: Install dependencies
run: |
make setup${{ matrix.spark-version-suffix }}
pip freeze
- name: Test with coverage
env:
FLYTE_SDK_USE_STRUCTURED_DATASET: "TRUE"
run: |
coverage run -m pytest tests/flytekit/unit
- name: Codecov
uses: codecov/codecov-action@v1
with:
fail_ci_if_error: true # optional (default = false)

build-plugins:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -84,35 +84,35 @@ jobs:
- flytekit-spark
- flytekit-sqlalchemy
exclude:
# flytekit-modin depends on ray which does not have a 3.10 wheel yet.
# Issue tracked in https://github.com/ray-project/ray/issues/19116.
- python-version: 3.10
plugin-names: "flytekit-modin"
# flytekit-modin depends on ray which does not have a 3.10 wheel yet.
# Issue tracked in https://github.com/ray-project/ray/issues/19116.
- python-version: 3.10
plugin-names: "flytekit-modin"
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Cache pip
uses: actions/cache@v2
with:
# This path is specific to Ubuntu
path: ~/.cache/pip
# Look to see if there is a cache hit for the corresponding requirements files
key: ${{ format('{0}-pip-{1}', runner.os, hashFiles('dev-requirements.txt', format('plugins/{0}/requirements.txt', matrix.plugin-names ))) }}
- name: Install dependencies
run: |
make setup
cd plugins/${{ matrix.plugin-names }}
pip install -e .
if [ -f dev-requirements.txt ]; then pip install -r dev-requirements.txt; fi
pip install --no-deps -U https://github.com/flyteorg/flytekit/archive/${{ github.sha }}.zip#egg=flytekit
pip freeze
- name: Test with coverage
run: |
cd plugins/${{ matrix.plugin-names }}
coverage run -m pytest tests
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Cache pip
uses: actions/cache@v2
with:
# This path is specific to Ubuntu
path: ~/.cache/pip
# Look to see if there is a cache hit for the corresponding requirements files
key: ${{ format('{0}-pip-{1}', runner.os, hashFiles('dev-requirements.txt', format('plugins/{0}/requirements.txt', matrix.plugin-names ))) }}
- name: Install dependencies
run: |
make setup
cd plugins/${{ matrix.plugin-names }}
pip install -e .
if [ -f dev-requirements.txt ]; then pip install -r dev-requirements.txt; fi
pip install --no-deps -U https://github.com/flyteorg/flytekit/archive/${{ github.sha }}.zip#egg=flytekit
pip freeze
- name: Test with coverage
run: |
cd plugins/${{ matrix.plugin-names }}
coverage run -m pytest tests

lint:
runs-on: ubuntu-latest
Expand All @@ -139,8 +139,7 @@ jobs:
- name: ShellCheck
uses: ludeeus/action-shellcheck@master
with:
ignore_paths:
boilerplate
ignore_paths: boilerplate

docs:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ help:

.PHONY: install-piptools
install-piptools:
pip install -U pip-tools setuptools wheel pip==22.0.3
pip install -U pip-tools setuptools wheel "pip>=22.0.3"

.PHONY: update_boilerplate
update_boilerplate:
Expand Down
33 changes: 24 additions & 9 deletions dev-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ certifi==2021.10.8
# requests
cffi==1.15.0
# via
# -c requirements.txt
# bcrypt
# cryptography
# pynacl
Expand Down Expand Up @@ -70,8 +71,11 @@ croniter==1.3.4
# via
# -c requirements.txt
# flytekit
cryptography==36.0.1
# via paramiko
cryptography==36.0.2
# via
# -c requirements.txt
# paramiko
# secretstorage
dataclasses-json==0.5.6
# via
# -c requirements.txt
Expand Down Expand Up @@ -112,7 +116,7 @@ docstring-parser==0.13
# flytekit
filelock==3.6.0
# via virtualenv
flyteidl==0.23.1
flyteidl==0.24.0
# via
# -c requirements.txt
# flytekit
Expand All @@ -121,7 +125,7 @@ google-api-core[grpc]==2.7.1
# google-cloud-bigquery
# google-cloud-bigquery-storage
# google-cloud-core
google-auth==2.6.0
google-auth==2.6.2
# via
# google-api-core
# google-cloud-core
Expand All @@ -135,7 +139,7 @@ google-crc32c==1.3.0
# via google-resumable-media
google-resumable-media==2.3.2
# via google-cloud-bigquery
googleapis-common-protos==1.55.0
googleapis-common-protos==1.56.0
# via
# -c requirements.txt
# flyteidl
Expand All @@ -150,7 +154,7 @@ grpcio==1.44.0
# grpcio-status
grpcio-status==1.44.0
# via google-api-core
identify==2.4.11
identify==2.4.12
# via pre-commit
idna==3.3
# via
Expand All @@ -162,6 +166,11 @@ importlib-metadata==4.11.3
# keyring
iniconfig==1.1.1
# via pytest
jeepney==0.7.1
# via
# -c requirements.txt
# keyring
# secretstorage
jinja2==3.0.3
# via
# -c requirements.txt
Expand Down Expand Up @@ -277,7 +286,9 @@ pyasn1==0.4.8
pyasn1-modules==0.2.8
# via google-auth
pycparser==2.21
# via cffi
# via
# -c requirements.txt
# cffi
pynacl==1.5.0
# via paramiko
pyparsing==3.0.7
Expand Down Expand Up @@ -329,7 +340,7 @@ pyyaml==5.4.1
# -c requirements.txt
# docker-compose
# pre-commit
regex==2022.3.2
regex==2022.3.15
# via
# -c requirements.txt
# docker-image-py
Expand All @@ -353,6 +364,10 @@ retry==0.9.2
# flytekit
rsa==4.8
# via google-auth
secretstorage==3.3.1
# via
# -c requirements.txt
# keyring
six==1.16.0
# via
# -c requirements.txt
Expand Down Expand Up @@ -398,7 +413,7 @@ typing-inspect==0.7.1
# via
# -c requirements.txt
# dataclasses-json
urllib3==1.26.8
urllib3==1.26.9
# via
# -c requirements.txt
# flytekit
Expand Down
20 changes: 14 additions & 6 deletions doc-requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,10 @@ cookiecutter==1.7.3
# via flytekit
croniter==1.3.4
# via flytekit
cryptography==36.0.1
# via -r doc-requirements.in
cryptography==36.0.2
# via
# -r doc-requirements.in
# secretstorage
css-html-js-minify==2.5.5
# via sphinx-material
dataclasses-json==0.5.6
Expand All @@ -61,11 +63,11 @@ docutils==0.17.1
# via
# sphinx
# sphinx-panels
flyteidl==0.23.1
flyteidl==0.24.0
# via flytekit
furo @ git+https://github.com/flyteorg/furo@main
# via -r doc-requirements.in
googleapis-common-protos==1.55.0
googleapis-common-protos==1.56.0
# via flyteidl
grpcio==1.44.0
# via
Expand All @@ -79,6 +81,10 @@ importlib-metadata==4.11.3
# via
# keyring
# sphinx
jeepney==0.7.1
# via
# keyring
# secretstorage
jinja2==3.0.3
# via
# cookiecutter
Expand Down Expand Up @@ -161,7 +167,7 @@ pytz==2021.3
# pandas
pyyaml==6.0
# via sphinx-autoapi
regex==2022.3.2
regex==2022.3.15
# via docker-image-py
requests==2.27.1
# via
Expand All @@ -173,6 +179,8 @@ responses==0.19.0
# via flytekit
retry==0.9.2
# via flytekit
secretstorage==3.3.1
# via keyring
six==1.16.0
# via
# cookiecutter
Expand Down Expand Up @@ -243,7 +251,7 @@ unidecode==1.3.4
# via
# python-slugify
# sphinx-autoapi
urllib3==1.26.8
urllib3==1.26.9
# via
# flytekit
# requests
Expand Down
Loading