Skip to content

Releases: flyteorg/flyte-migrate

v0.0.3

Choose a tag to compare

@pingsutw pingsutw released this 19 Aug 16:59
bece6cc

What's Changed

  • Count pyflyte-migrate invocations via the SDK's Sentry integration by @pingsutw in #78

Full Changelog: v0.0.2...v0.0.3

v0.0.2

Choose a tag to compare

@pingsutw pingsutw released this 17 Aug 17:22
d695595

What's Changed

  • Skip biguqery test by @pingsutw in #75
  • Lead the README with pyflyte-migrate instead of the import line by @pingsutw in #76
  • Map cache_version to v2 override; fix stale capability-doc rows by @pingsutw in #77

Full Changelog: v0.0.2b8...v0.0.2

v0.0.2b8

v0.0.2b8 Pre-release
Pre-release

Choose a tag to compare

@pingsutw pingsutw released this 11 Aug 20:06
050588f

What's Changed

  • Use real repo examples in the README CLI snippet by @pingsutw in #58
  • Close v1 API coverage gaps: gates, StructuredDataset, ContainerTask, and decorator arg fidelity by @pingsutw in #65
  • Fix env-name mismatch and missing deck reports for scripts run directly by @pingsutw in #64
  • Bump the uv group across 1 directory with 13 updates by @dependabot[bot] in #57
  • Remove merged_requirements.txt and gitignore it by @pingsutw in #67
  • Add pull request template by @pingsutw in #68
  • Make raw task templates block on the controller when called from sync workflows by @pingsutw in #69
  • Bump requests from 2.32.5 to 2.33.0 in the uv group across 1 directory by @dependabot[bot] in #66
  • Add a contribution guide by @pingsutw in #70
  • Integration tests: fall back to config + PKCE login when FLYTE_API_KEY is unset by @pingsutw in #71
  • Apply the shim at runtime via a custom task resolver by @pingsutw in #72
  • Add disclaimer recommending the v2 migration guide by @pingsutw in #73
  • Add an example mixing v1 code with a v2 flyte.Image by @pingsutw in #74

Full Changelog: v0.0.2b7...v0.0.2b8

v0.0.2b7

v0.0.2b7 Pre-release
Pre-release

Choose a tag to compare

@pingsutw pingsutw released this 08 Aug 07:34
0dbb578

Fixes remote image builds silently downgrading flyte to 2.0.12.

0.0.2b6's metadata capped flyte<2.1, so every image that pip-installed flyte-migrate
had the base image's flyte (2.5.18) downgraded out from under it. This release depends on
flyte>=2.5.18, and #62 adds a flyte>= floor to the shim's own pip layers so a stale
release can't reintroduce the downgrade.

  • Floor flyte in shim images so flyte-migrate metadata can't downgrade it (#62)
  • Keep _task annotations lazy so the shim imports on older flytekit (#61)

v0.0.2b6

v0.0.2b6 Pre-release
Pre-release

Choose a tag to compare

@pingsutw pingsutw released this 07 Aug 22:17
86ac7b7

Pre-release.

Fix

  • Do not carry the v1 registry onto the derived v2 image.

ImageSpec.registry records where the v1 image was pulled from, which is not necessarily
somewhere the cluster may push to. Carrying it over made the derived build target
public.ecr.aws/unionai/flytekit, which the image builder has no push credentials for, so the
build succeeded and then failed on export:

#15 ERROR: failed to push public.ecr.aws/unionai/flytekit:c26bfcf523... 401 Unauthorized

The registry is now left unset, so the remote builder pushes to the backend's own default
registry and the target becomes a bare flytekit:<hash>. The image name is still propagated,
since Image.clone refuses to add layers to an unnamed image.

v0.0.2b5

v0.0.2b5 Pre-release
Pre-release

Choose a tag to compare

@pingsutw pingsutw released this 07 Aug 22:00
a6ad600

Pre-release.

Fix

  • Tolerate ImageSpec fields that older flytekit does not have.

The shim is pip-installed into the user's own v1 image, so it runs against whatever flytekit
that image was built with. flytekit.ImageSpec has gained fields over time, and reading an
absent one raised AttributeError during image translation, before any user code ran:

AttributeError: 'ImageSpec' object has no attribute 'pip_secret_mounts'

Verified against a real v1 image running flytekit 1.13.5, whose ImageSpec is missing three
of the fields the shim reads: pip_secret_mounts, pip_extra_args, and copy. These now go
through a helper that treats absent as unset.

Checked by installing the shim into that image and importing a deck example end to end.

v0.0.2b4

v0.0.2b4 Pre-release
Pre-release

Choose a tag to compare

@pingsutw pingsutw released this 07 Aug 21:35
0ce5b4d

Pre-release. Supersedes 0.0.2b3.

Fixes 0.0.2b3

0.0.2b3 was tagged on main, which does not carry the upgrade-exec CLI command that the
v1 to v2 upgrade flow invokes in the pod. Every upgraded run installing that version failed
with:

Usage: pyflyte-migrate [OPTIONS] ...
Try 'pyflyte-migrate --help' for help
Error

This release is cut from upgrade-exec (the same branch 0.0.2b2 came from), so
pyflyte-migrate upgrade-exec is present again, with the annotation fix cherry-picked on top.

Included

  • Keep _task annotations lazy so the shim imports on older flytekit (#61).
    flytekit.Cache is only referenced in annotations; evaluating them eagerly broke
    import flyte_migrate on v1 images built against older flytekit with
    AttributeError: module 'flytekit' has no attribute 'Cache'.

v0.0.2b3

v0.0.2b3 Pre-release
Pre-release

Choose a tag to compare

@pingsutw pingsutw released this 07 Aug 21:26
82e3fc5

Pre-release.

Fix

  • Keep _task annotations lazy so the shim imports on older flytekit (#61).

_task.py annotated three signatures with Union[bool, flytekit.Cache]. Module-level
annotations are evaluated eagerly, and flytekit.Cache only exists in newer flytekit, so
importing flyte_migrate inside a v1 image built against an older flytekit failed before any
user code ran:

AttributeError: module 'flytekit' has no attribute 'Cache'

This affected the v1 to v2 upgrade flow, which pip-installs the shim into the user's own
unmodified v1 image. Cache is referenced only in annotations and never at runtime, so
from __future__ import annotations is sufficient and avoids forcing a flytekit upgrade
inside images we do not control.

v0.0.1b2

v0.0.1b2 Pre-release
Pre-release

Choose a tag to compare

@pingsutw pingsutw released this 06 Aug 22:01
4887cf1

What's Changed

  • Trigger the publish workflow on published releases by @pingsutw in #54

Full Changelog: v0.0.1b1...v0.0.1b2

v0.0.1b1

v0.0.1b1 Pre-release
Pre-release

Choose a tag to compare

@pingsutw pingsutw released this 06 Aug 21:28
596a9b8

What's Changed

  • Grant contents: read to the PyPI publish job by @pingsutw in #53

Full Changelog: v0.0.1.b0...v0.0.1b1