-
Notifications
You must be signed in to change notification settings - Fork 226
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
setup: take a post version from environment variable #2000
Conversation
@xrmx Aside: I think there is an issue either with the "labeler" workflow in this repo, or with your team membership, because I would not expect PRs from you to be labelled "community" and "triage". |
I don't want to belong to any club that will accept me as one of its members :) I guess I'm not in the elastic/apm github team |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks fine.
Have you considered "dev releases" per https://peps.python.org/pep-0440/#developmental-releases rather than "local versions" https://peps.python.org/pep-0440/#local-version-identifiers ?
The docs on local versions includes:
Local version identifiers SHOULD NOT be used when publishing upstream projects to a public index server, but MAY be used to identify private builds created directly from the project source. Local version identifiers SHOULD be used by downstream projects when releasing a version that is API compatible with the version of the upstream project identified by the public version identifier, but contains additional changes (such as bug fixes). As the Python Package Index is intended solely for indexing and hosting upstream projects, it MUST NOT allow the use of local version identifiers.
I'm not sure of the full intent of these "releases from main".
I tested your changes and:
in https://github.com/elastic/apm-agent-python/actions/runs/8236346346/job/22522564642#step:6:26 |
I don't think test.pypi.org is considerd a public index server since the packages name ownership is not shared with the production one so you have no guarantee you are instaling the same package. I haven't checked if it'll accept a package with the local version though. I can use a .postX maybe. UPDATE: it doesn't accept local versions :) |
The only intent is double check that the CI workflows are working because they were broken for 2 different issues until friday. |
pypi/legacy#731 , they suggest to remove
https://github.com/elastic/apm-agent-python/actions/runs/8236509058 |
2da159e
to
f555363
Compare
@v1v I've updated the PR to look for an ELASTIC_CI_POST_VERSION environment variable and append it as |
done
in https://github.com/elastic/apm-agent-python/actions/runs/8236877975/job/22524360434 I cherry-picked your changes in #1998 |
Make it possible to add a post version (per PEP-440) to the current agent version at build time. This will be useful because we want to continuously build the agent on CI and avoid version conflicts when publishing to test pypi. So when returning the agent version add anything that has been passed in ELASTIC_CI_POST_VERSION environment variable as post version. Refs elastic#1994
f555363
to
640840f
Compare
Would |
I see x.y.z.dev as early releases of a x.y.z release and not something created after it. In fact we are bumping the version of the package just before tagging the release so to me does not make much sense to release x.y.z.devXXX after x.y.z. |
Yah, for ordering you are right. IIUC, you are not ever publishing these to For the "spirit" of those releases, I think ".dev" fits better. From https://packaging.python.org/en/latest/specifications/version-specifiers/#post-releases
vs.
|
I agree that dev is more in the spirit but still cannot unsee that these releases are coming after the release they are supposed to be preparatory for. What about something like |
Nah. I think your using |
Yes, these |
Make it possible to add a post version (per PEP-440) to the current agent version at build time. This will be useful because we want to continuously build the agent on CI and avoid version conflicts when publishing to test pypi. So when returning the agent version add anything that has been passed in ELASTIC_CI_POST_VERSION environment variable as post version. Refs #1994
What does this pull request do?
Make it possible to add a post version to the current agent version at build time. This will be useful because we want to continuously build the agent on CI and avoid version conflict when publishing to test pypi.
So when returning the agent version add anything that has been passed in ELASTIC_CI_POST_VERSION environment variable.
Related issues
Refs #1994
Refs #1998