-
Notifications
You must be signed in to change notification settings - Fork 255
feat: Commit parser w/ path filter for monorepos #614
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
Comments
It has been 60 days since the last update on this confirmed issue. @python-semantic-release/team can you provide an update on the status of this issue? |
Still in backlog |
It has been 60 days since the last update on this confirmed issue. @python-semantic-release/team can you provide an update on the status of this issue? |
There is an open PR for this now, it needs automated testing and some updates but initially it works for an initial custom parser use. Should be released over the next two months |
…dard parser for monorepos Resolves: python-semantic-release#614
…dard parser for monorepos Resolves: python-semantic-release#614
It has been 60 days since the last update on this confirmed issue. @python-semantic-release/team can you provide an update on the status of this issue? |
I haven't had enough time to finish this off but it is still will be completed soon. |
Description
Adding the
use_only_cwd_commits
config makes it possible to make the semantic release look for commits in thecwd
folder only.The default behavior is any commit in the repo can trigger a package release.
https://github.com/python-semantic-release/python-semantic-release/blob/master/semantic_release/vcs_helpers.py#L19-L26
it will be good to have a config option to define one or more folders in the repo to semantic release CLI look for commits.
Use cases
Monorepo: When you have multiple packages in the same repo, you can use
use_only_cwd_commits
to force the semantic release to look for commits only in the package folder.However, when you have local dependencies that could potentially trigger the release of the application, it is required to look at multiple folders to decide if a release is necessary.
Issue reference: lucasvieirasilva/nx-plugins#122
Example:
In this example,
app1
referenceslib1
as a local dependency using the Poetry path reference https://python-poetry.org/docs/dependency-specification/#path-dependenciesIf something changes in the
lib1
it should trigger theapp1
release, however, the commit path is only in thelibs/lib1
folder, not in theapps/app1
folder.In this case, the
use_only_cwd_commits
config isn't gonna work.If we have the option to specify multiple paths for the commit analyzer, I could explicitly reference
libs/lib1
in theapps/app1/pyproject.toml
semantic release config.Possible implementation
commit_paths
that accepts a list of paths.The text was updated successfully, but these errors were encountered: