From ffe686a9b1d5adae75239da3592aa077a9970728 Mon Sep 17 00:00:00 2001 From: Tom Schraitle Date: Thu, 24 Feb 2022 21:36:49 +0100 Subject: [PATCH] Add topic to read version from file Fix #340 --- changelog.d/340.doc.rst | 1 + docs/advanced/index.rst | 1 + docs/advanced/version-from-file.rst | 23 +++++++++++++++++++++++ 3 files changed, 25 insertions(+) create mode 100644 changelog.d/340.doc.rst create mode 100644 docs/advanced/version-from-file.rst diff --git a/changelog.d/340.doc.rst b/changelog.d/340.doc.rst new file mode 100644 index 00000000..807e401c --- /dev/null +++ b/changelog.d/340.doc.rst @@ -0,0 +1 @@ +Describe how to get version from a file \ No newline at end of file diff --git a/docs/advanced/index.rst b/docs/advanced/index.rst index d82da1a1..8a45d361 100644 --- a/docs/advanced/index.rst +++ b/docs/advanced/index.rst @@ -9,3 +9,4 @@ Advanced topics display-deprecation-warnings combine-pydantic-and-semver convert-pypi-to-semver + version-from-file diff --git a/docs/advanced/version-from-file.rst b/docs/advanced/version-from-file.rst new file mode 100644 index 00000000..6dc9bb48 --- /dev/null +++ b/docs/advanced/version-from-file.rst @@ -0,0 +1,23 @@ +.. _sec_reading_versions_from_file: + +Reading versions from file +========================== + +In cases where a version is stored inside a file, one possible solution +is to use the following function: + +.. code-block:: python + + from semver.version import Version + + def get_version(path: str = "version") -> Version: + """ + Construct a Version from a file + + :param path: A text file only containing the semantic version + :return: A :class:`Version` object containing the semantic + version from the file. + """ + with open(path,"r") as fh: + version = fh.read().strip() + return Version.parse(version)