Merge lp:~cjwatson/lazr.restful/faster-version into lp:lazr.restful

Proposed by Colin Watson
Status: Merged
Merged at revision: 303
Proposed branch: lp:~cjwatson/lazr.restful/faster-version
Merge into: lp:lazr.restful
Diff against target: 88 lines (+17/-9)
4 files modified
NEWS.rst (+6/-0)
setup.py (+2/-3)
src/lazr/restful/__init__.py (+6/-2)
src/lazr/restful/docs/conf.py (+3/-4)
To merge this branch: bzr merge lp:~cjwatson/lazr.restful/faster-version
Reviewer Review Type Date Requested Status
Cristian Gonzalez (community) Approve
Review via email: mp+408469@code.launchpad.net

Commit message

Adjust versioning strategy to avoid importing pkg_resources, which is slow in large environments.

To post a comment you must log in.
Revision history for this message
Cristian Gonzalez (cristiangsp) wrote :

Looks good!

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'NEWS.rst'
2--- NEWS.rst 2021-05-20 21:34:13 +0000
3+++ NEWS.rst 2021-09-13 09:28:50 +0000
4@@ -2,6 +2,12 @@
5 NEWS for lazr.restful
6 =====================
7
8+1.0.4
9+=====
10+
11+- Adjust versioning strategy to avoid importing pkg_resources, which is slow
12+ in large environments.
13+
14 1.0.3 (2021-05-20)
15 ==================
16
17
18=== modified file 'setup.py'
19--- setup.py 2021-02-16 16:51:35 +0000
20+++ setup.py 2021-09-13 09:28:50 +0000
21@@ -32,11 +32,9 @@
22 return '\n'.join(res)
23 # end generic helpers
24
25-__version__ = open("src/lazr/restful/version.txt").read().strip()
26-
27 setup(
28 name='lazr.restful',
29- version=__version__,
30+ version='1.0.4',
31 namespace_packages=['lazr'],
32 packages=find_packages('src'),
33 package_dir={'':'src'},
34@@ -52,6 +50,7 @@
35 install_requires=[
36 'docutils>=0.3.9',
37 'grokcore.component>=1.6',
38+ 'importlib-metadata; python_version < "3.8"',
39 'lazr.batchnavigator>=1.2.0-dev',
40 'lazr.delegates>=2.0.3',
41 'lazr.enum',
42
43=== modified file 'src/lazr/restful/__init__.py'
44--- src/lazr/restful/__init__.py 2020-02-04 11:52:59 +0000
45+++ src/lazr/restful/__init__.py 2021-09-13 09:28:50 +0000
46@@ -19,8 +19,12 @@
47
48 from __future__ import absolute_import, print_function
49
50-import pkg_resources
51-__version__ = pkg_resources.resource_string("lazr.restful", "version.txt").strip()
52+try:
53+ import importlib.metadata as importlib_metadata
54+except ImportError:
55+ import importlib_metadata
56+
57+__version__ = importlib_metadata.version("lazr.restful")
58
59 # Re-export in such a way that __version__ can still be imported if
60 # dependencies are not yet available.
61
62=== modified file 'src/lazr/restful/docs/conf.py'
63--- src/lazr/restful/docs/conf.py 2019-11-04 09:54:43 +0000
64+++ src/lazr/restful/docs/conf.py 2021-09-13 09:28:50 +0000
65@@ -12,8 +12,7 @@
66 # All configuration values have a default; values that are commented out
67 # serve to show the default.
68
69-with open('../version.txt') as version_file:
70- _version = version_file.read().strip()
71+from lazr.restful import __version__
72
73 # If extensions (or modules to document with autodoc) are in another directory,
74 # add these directories to sys.path here. If the directory is relative to the
75@@ -57,9 +56,9 @@
76 # built documents.
77 #
78 # The short X.Y version.
79-version = _version
80+version = __version__
81 # The full version, including alpha/beta/rc tags.
82-release = _version
83+release = __version__
84
85 # The language for content autogenerated by Sphinx. Refer to documentation
86 # for a list of supported languages.
87
88=== removed file 'src/lazr/restful/version.txt'

Subscribers

People subscribed via source and target branches