fal-ai / fal

⚡ Fastest way to serve open source ML models to millions
https://fal.ai/docs
Apache License 2.0
509 stars 44 forks source link

chore: revisit release process #177

Closed efiop closed 5 months ago

efiop commented 5 months ago

Dropping poetry, using setuptools_scm with new monorepo tags and using those to do proper github releases.

Also provides useful dev and test extras in fal that allow you to install everything you need for development/testing.

New release process goes as follows: either trigger a github release creation in the workflow dispatch (see create-release.yaml) or manually create a github release (not recommended, since this is a monorepo and git tags need a particular format, e.g. isolate_proto_v1.2.3). Then a github release is created with a tag that triggers a pypi release (see release.yaml).

We did lose a single-workflow to release fal and bump isolate_proto in its dependencies though, so one needs to release isolate_proto, then bump in fal and then release fal.

As a result of this, we will get releases in https://github.com/fal-ai/fal/releases with changelogs and proper tags. Also this won't create any PRs anymore like we used to https://github.com/fal-ai/fal/pull/174 , since there is no need anymore, which is nice.

Note that testing release without doing a release is a bit challenging, so I will be around to do the next one just to catch/fix any potential problems.

Fixes #150

linear[bot] commented 5 months ago

FEA-2222 revisit release process

efiop commented 5 months ago

Merging to release cloudpickle/pydantic and debug the process.