File tree Expand file tree Collapse file tree 4 files changed +38
-0
lines changed Expand file tree Collapse file tree 4 files changed +38
-0
lines changed Original file line number Diff line number Diff line change @@ -84,6 +84,11 @@ representing the version.
84
84
` no-guess-dev `
85
85
: Does no next version guessing, just adds ` .post1.devN `
86
86
87
+ ` only-version `
88
+ : Only use the version from the tag, as given.
89
+
90
+ !!! warning "This means version is no longer pseudo unique per commit"
91
+
87
92
88
93
### ` setuptools_scm.local_scheme `
89
94
Configures how the local part of a version is rendered given a
Original file line number Diff line number Diff line change @@ -98,6 +98,7 @@ PKG-INFO = "setuptools_scm.fallbacks:parse_pkginfo"
98
98
"calver-by-date" = " setuptools_scm.version:calver_by_date"
99
99
"guess-next-dev" = " setuptools_scm.version:guess_next_dev_version"
100
100
"no-guess-dev" = " setuptools_scm.version:no_guess_dev_version"
101
+ "only-version" = " setuptools_scm.version:only_version"
101
102
"post-release" = " setuptools_scm.version:postrelease_version"
102
103
"python-simplified-semver" = " setuptools_scm.version:simplified_semver_version"
103
104
"release-branch-semver" = " setuptools_scm.version:release_branch_semver_version"
Original file line number Diff line number Diff line change @@ -299,6 +299,10 @@ def release_branch_semver(version: ScmVersion) -> str:
299
299
return release_branch_semver_version (version )
300
300
301
301
302
+ def only_version (version : ScmVersion ) -> str :
303
+ return version .format_with ("{tag}" )
304
+
305
+
302
306
def no_guess_dev_version (version : ScmVersion ) -> str :
303
307
if version .exact :
304
308
return version .format_with ("{tag}" )
Original file line number Diff line number Diff line change 15
15
from setuptools_scm .version import guess_next_version
16
16
from setuptools_scm .version import meta
17
17
from setuptools_scm .version import no_guess_dev_version
18
+ from setuptools_scm .version import only_version
18
19
from setuptools_scm .version import release_branch_semver_version
19
20
from setuptools_scm .version import ScmVersion
20
21
from setuptools_scm .version import simplified_semver_version
@@ -170,6 +171,33 @@ def test_bump_dev_version_nonzero_raises() -> None:
170
171
guess_next_version (m ("1.0.dev1" ))
171
172
172
173
174
+ @pytest .mark .parametrize (
175
+ "version" ,
176
+ [
177
+ "1.dev0" ,
178
+ "1.0.dev456" ,
179
+ "1.0a1" ,
180
+ "1.0a2.dev456" ,
181
+ "1.0a12.dev456" ,
182
+ "1.0a12" ,
183
+ "1.0b1.dev456" ,
184
+ "1.0b2" ,
185
+ "1.0b2.post345.dev456" ,
186
+ "1.0b2.post345" ,
187
+ "1.0rc1.dev456" ,
188
+ "1.0rc1" ,
189
+ "1.0" ,
190
+ "1.0.post456.dev34" ,
191
+ "1.0.post456" ,
192
+ "1.0.15" ,
193
+ "1.1.dev1" ,
194
+ ],
195
+ )
196
+ def test_only_version (version : str ) -> None :
197
+ assert version == only_version (meta (version , config = c ))
198
+ assert version == only_version (meta (version , distance = 2 , config = c ))
199
+
200
+
173
201
@pytest .mark .parametrize (
174
202
("tag" , "expected" ),
175
203
[
You can’t perform that action at this time.
0 commit comments