Comments (1)
Hi! The sorting logic did change a bit between 1.5.0 and 1.5.1, but what you're seeing is ultimately a "feature" of Git's lightweight tags (created by git tag foo
). They don't store their own creation timestamp, so when there are multiple of them on a single commit, there's no way to determine which one was created last. If you use annotated tags (git tag foo -m "comment"
), then a tag timestamp is saved separately from the commit timestamp, which enables better sorting.
The prior behavior was kind of a happy accident and wasn't guaranteed to happen consistently. Consider what happens when you make rc1
before rc0
:
$ git init
Initialized empty Git repository in C:/tmp/d3/.git/
$ touch foo
$ git add .
$ git commit -m Initial
[master (root-commit) 804464f] Initial
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 foo
$ git tag v0.1.0-rc1
$ git tag v0.1.0-rc0
$ git tag -l
v0.1.0-rc0
v0.1.0-rc1
$ git tag --merged HEAD --sort -creatordate
v0.1.0-rc0
v0.1.0-rc1
$ dunamai from git --latest-tag
0.1.0rc0
In this case, v0.1.0-rc0
is the newest tag, so the output ends up being correct, but not because Dunamai actually knows which one was created more recently.
from dunamai.
Related Issues (20)
- 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
- Remove python dependency upper bound HOT 1
- `test__version__from_fossil` fails without home HOT 6
- bump behavior different in command line and python API HOT 4
- "RuntimeError: Unable to detect version control system" HOT 3
- Add option for detecting only changed files as dirty HOT 1
- Confusing behavior (bug?) v0.0.0 fallback code does not work if there are *any* tags in the repo HOT 1
- Inconsistent distance for non-matching tags HOT 2
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.