summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRonny Pfannschmidt <opensource@ronnypfannschmidt.de>2020-02-08 10:44:18 +0100
committerGitHub <noreply@github.com>2020-02-08 10:44:18 +0100
commit7b21089a545667f0ae7852e1039f8028be288f48 (patch)
tree177b2278ab3525895c07c0f35e9061adb034c2d6
parente79044f8e486fe096396d091f09d3f9a345542b4 (diff)
parentcb211ba93b01ded1114c96a3df7de19377624be5 (diff)
downloadsetuptools-scm-7b21089a545667f0ae7852e1039f8028be288f48.tar.gz
Merge pull request #405 from con-f-use/no_local_versionv3.5.0
no-local-version scheme and improved documentation
-rw-r--r--CHANGELOG.rst5
-rw-r--r--README.rst9
-rw-r--r--setup.py1
-rw-r--r--src/setuptools_scm/version.py4
-rw-r--r--testing/test_functions.py3
5 files changed, 21 insertions, 1 deletions
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 540d06e..278abba 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -1,3 +1,8 @@
+v3.5.0
+======
+
+* add ``no-local-version`` local scheme and improve documentation for schemes
+
v3.4.4
======
diff --git a/README.rst b/README.rst
index d6b947a..f0400f0 100644
--- a/README.rst
+++ b/README.rst
@@ -100,7 +100,11 @@ Arguments to ``get_version()`` (see below) may be passed as a dictionary to
from setuptools import setup
setup(
...,
- use_scm_version = {"root": "..", "relative_to": __file__},
+ use_scm_version = {
+ "root": "..",
+ "relative_to": __file__,
+ "local_scheme": "node-and-timestamp"
+ },
setup_requires=['setuptools_scm'],
...,
)
@@ -463,6 +467,7 @@ Version number construction
:guess-next-dev: automatically guesses the next development version (default)
:post-release: generates post release versions (adds :code:`postN`)
+ :python-simplified-semver: basic semantic versioning similar to ``guess-next-dev``
``setuptools_scm.local_scheme``
Configures how the local part of a version is rendered given a
@@ -476,6 +481,8 @@ Version number construction
:node-and-timestamp: like ``node-and-date`` but with a timestamp of
the form ``{:%Y%m%d%H%M%S}`` instead
:dirty-tag: adds ``+dirty`` if the current workdir has changes
+ :no-local-version: omits local version, useful e.g. because pypi does
+ not support it
Importing in ``setup.py``
diff --git a/setup.py b/setup.py
index ced9a3b..9dd2566 100644
--- a/setup.py
+++ b/setup.py
@@ -95,6 +95,7 @@ arguments = dict(
node-and-timestamp = \
setuptools_scm.version:get_local_node_and_timestamp
dirty-tag = setuptools_scm.version:get_local_dirty_tag
+ no-local-version = setuptools_scm.version:get_no_local_node
""",
classifiers=[
"Development Status :: 4 - Beta",
diff --git a/src/setuptools_scm/version.py b/src/setuptools_scm/version.py
index 783cffa..5c6f4a6 100644
--- a/src/setuptools_scm/version.py
+++ b/src/setuptools_scm/version.py
@@ -284,6 +284,10 @@ def get_local_dirty_tag(version):
return version.format_choice("", "+dirty")
+def get_no_local_node(_):
+ return ""
+
+
def postrelease_version(version):
if version.exact:
return version.format_with("{tag}")
diff --git a/testing/test_functions.py b/testing/test_functions.py
index 9249a80..808a1d1 100644
--- a/testing/test_functions.py
+++ b/testing/test_functions.py
@@ -50,9 +50,12 @@ VERSIONS = {
[
("exact", "guess-next-dev node-and-date", "1.1"),
("zerodistance", "guess-next-dev node-and-date", "1.2.dev0"),
+ ("zerodistance", "guess-next-dev no-local-version", "1.2.dev0"),
("dirty", "guess-next-dev node-and-date", "1.2.dev0+dtime"),
+ ("dirty", "guess-next-dev no-local-version", "1.2.dev0"),
("distance", "guess-next-dev node-and-date", "1.2.dev3"),
("distancedirty", "guess-next-dev node-and-date", "1.2.dev3+dtime"),
+ ("distancedirty", "guess-next-dev no-local-version", "1.2.dev3"),
("exact", "post-release node-and-date", "1.1"),
("zerodistance", "post-release node-and-date", "1.1.post0"),
("dirty", "post-release node-and-date", "1.1.post0+dtime"),