Comments (2)
Hey, thank you! poetry-dynamic-versioning is exactly the way I'd have expected things to work. I'll be using that and probably taking a look at it to add the 'replace placeholder in files' myself.
If I have any questions I'll contact you there, thanks again.
from dunamai.
Hello! I don't think you should commit the changes to pyproject.toml and _version.py. The committed values would just be placeholders like 0.0.0, since ultimately you only need the real version in the published artifacts. All you need is a script like an Invoke task to do something like this:
from invoke import task
from dunamai import Version
@task
def build(ctx):
version = Version.from_git().serialize()
ctx.run("echo __version__ = '{}' > _version.py".format(version))
ctx.run("poetry version {}".format(version))
ctx.run("poetry build")
ctx.run("git checkout -- .")
Then the workflow would be:
- Make the tag.
- Run
invoke build
instead ofpoetry build
to create an artifact with the new version.
Since you're using Poetry specifically, you may want to check out poetry-dynamic-versioning (I'm also the author). It doesn't currently create/modify _version.py, but I do plan to add that. Right now, it just sets the version in pyproject.toml during packaging and then reverts it after.
from dunamai.
Related Issues (20)
- Bump behavior different between `dunamai` and `poetry-dynamic-versioning` HOT 2
- gitflow support HOT 7
- Unstable sha commit length HOT 2
- using CalVer HOT 2
- Documentation for output substitutions HOT 2
- --no-show-signature breaks compatibility with git 2.7 HOT 2
- Tags not found in monorepo setup HOT 5
- Could not properly parse with Version.parse HOT 9
- Possibly misleading vcs check message for git HOT 1
- Style is overwritten which causes validation of format regardless if user passed parameter HOT 15
- 1.16.0: pytest needs `setuptools` HOT 9
- dunamai.Version.from_git() fails if 'v' prefix not set HOT 4
- sdist is missing tests HOT 1
- Wrong version being reported HOT 9
- Bump fails for lazy clone (GitLab CI/CD) with `tag-branch = "master"` HOT 2
- dunamai 1.18.0 silently does not produce version with `--strict` in CI HOT 2
- Git version detection fails if `log.excludeDecoration = refs/tags` set in git config HOT 2
- Support getting versions from VCS at a specified directory HOT 2
- Visual Studio Code Workspace Settings file is missing ending `}` HOT 1
- calver versioning HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dunamai.