Merge lp:~jelmer/brz/3.0-merge into lp:brz

Proposed by Jelmer Vernooij
Status: Merged
Approved by: Jelmer Vernooij
Approved revision: no longer in the source branch.
Merge reported by: The Breezy Bot
Merged at revision: not available
Proposed branch: lp:~jelmer/brz/3.0-merge
Merge into: lp:brz
Diff against target: 289 lines (+51/-33)
13 files modified
breezy/git/.testr.conf (+1/-1)
breezy/git/bzr-receive-pack (+4/-4)
breezy/git/bzr-upload-pack (+4/-4)
breezy/osutils.py (+1/-3)
breezy/plugin.py (+6/-1)
breezy/plugins/commitfromnews/__init__.py (+1/-0)
breezy/plugins/darcs/__init__.py (+1/-0)
breezy/plugins/email/__init__.py (+1/-0)
breezy/plugins/fastimport/__init__.py (+1/-0)
breezy/plugins/propose/__init__.py (+1/-0)
breezy/plugins/repodebug/__init__.py (+1/-0)
breezy/tests/test_plugins.py (+25/-20)
doc/en/release-notes/brz-3.0.txt (+4/-0)
To merge this branch: bzr merge lp:~jelmer/brz/3.0-merge
Reviewer Review Type Date Requested Status
Jelmer Vernooij Approve
Review via email: mp+374062@code.launchpad.net

Commit message

Merge lp:brz/3.0.

Description of the change

Merge lp:brz/3.0.

To post a comment you must log in.
Revision history for this message
Jelmer Vernooij (jelmer) :
review: Approve
Revision history for this message
The Breezy Bot (the-breezy-bot) wrote :

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'breezy/git/.testr.conf'
2--- breezy/git/.testr.conf 2018-03-30 14:33:57 +0000
3+++ breezy/git/.testr.conf 2019-10-14 00:07:21 +0000
4@@ -1,4 +1,4 @@
5 [DEFAULT]
6-test_command=BRZ_PLUGINS_AT=git@`pwd` BRZ_PLUGIN_PATH=-site:-user ${BRZ:-../../../brz} selftest ^breezy.plugins.git. Git --subunit2 $IDOPTION $LISTOPT
7+test_command=BRZ_PLUGINS_AT=git@`pwd` BRZ_PLUGIN_PATH=-site:-user ${BRZ:-../../brz} selftest ^breezy.git. Git --subunit2 $IDOPTION $LISTOPT
8 test_id_option=--load-list $IDFILE
9 test_list_option=--list
10
11=== modified file 'breezy/git/bzr-receive-pack'
12--- breezy/git/bzr-receive-pack 2018-03-26 22:28:24 +0000
13+++ breezy/git/bzr-receive-pack 2019-10-14 00:07:21 +0000
14@@ -1,14 +1,14 @@
15 #!/usr/bin/env python
16
17 import breezy
18-from breezy.plugin import load_plugins
19-load_plugins()
20-from breezy.plugins.git.server import BzrBackend
21+import breezy.bzr
22+import breezy.git
23+from breezy.git.server import BzrBackend
24 from dulwich.server import ReceivePackHandler, serve_command
25 import sys, os
26
27 if len(sys.argv) < 2:
28- print >>sys.stderr, "usage: %s <git-dir>" % os.path.basename(sys.argv[0])
29+ print("usage: %s <git-dir>" % os.path.basename(sys.argv[0]))
30 sys.exit(1)
31
32 backend = BzrBackend(breezy.transport.get_transport("/"))
33
34=== modified file 'breezy/git/bzr-upload-pack'
35--- breezy/git/bzr-upload-pack 2018-03-26 22:28:24 +0000
36+++ breezy/git/bzr-upload-pack 2019-10-14 00:07:21 +0000
37@@ -1,14 +1,14 @@
38 #!/usr/bin/env python
39
40 import breezy
41-from breezy.plugin import load_plugins
42-load_plugins ()
43-from breezy.plugins.git.server import BzrBackend
44+import breezy.bzr
45+import breezy.git
46+from breezy.git.server import BzrBackend
47 from dulwich.server import UploadPackHandler, serve_command
48 import sys, os
49
50 if len(sys.argv) < 2:
51- print "usage: %s <git-dir>" % os.path.basename(sys.argv[0])
52+ print("usage: %s <git-dir>" % os.path.basename(sys.argv[0]))
53 sys.exit(1)
54
55 backend = BzrBackend(breezy.transport.get_transport("/"))
56
57=== modified file 'breezy/osutils.py'
58--- breezy/osutils.py 2019-10-13 17:17:48 +0000
59+++ breezy/osutils.py 2019-10-14 00:07:21 +0000
60@@ -520,9 +520,7 @@
61 """Replacer for shutil.rmtree: could remove readonly dirs/files"""
62 return shutil.rmtree(path, ignore_errors, onerror)
63
64- f = win32utils.get_unicode_argv # special function or None
65- if f is not None:
66- get_unicode_argv = f
67+ get_unicode_argv = getattr(win32utils, 'get_unicode_argv', get_unicode_argv)
68 path_from_environ = win32utils.get_environ_unicode
69 _get_home_dir = win32utils.get_home_location
70 getuser_unicode = win32utils.get_user_name
71
72=== modified file 'breezy/plugin.py'
73--- breezy/plugin.py 2019-06-16 01:03:51 +0000
74+++ breezy/plugin.py 2019-10-14 00:07:21 +0000
75@@ -225,7 +225,12 @@
76 """
77 path_details = []
78 env = osutils.path_from_environ(key)
79- defaults = {"user": not env, "core": True, "site": True, 'entrypoints': True}
80+ defaults = {
81+ "user": not env,
82+ "core": True,
83+ "site": True,
84+ 'entrypoints': False,
85+ }
86 if env:
87 # Add paths specified by user in order
88 for p in env.split(os.pathsep):
89
90=== modified file 'breezy/plugins/commitfromnews/__init__.py'
91--- breezy/plugins/commitfromnews/__init__.py 2018-11-11 04:08:32 +0000
92+++ breezy/plugins/commitfromnews/__init__.py 2019-10-14 00:07:21 +0000
93@@ -35,6 +35,7 @@
94
95 from __future__ import absolute_import
96
97+from ... import version_info # noqa: F401
98 from ... import hooks
99 from ...config import (
100 option_registry,
101
102=== modified file 'breezy/plugins/darcs/__init__.py'
103--- breezy/plugins/darcs/__init__.py 2018-11-11 04:08:32 +0000
104+++ breezy/plugins/darcs/__init__.py 2019-10-14 00:07:21 +0000
105@@ -21,6 +21,7 @@
106
107 from __future__ import absolute_import
108
109+from ... import version_info # noqa: F401
110 from breezy import (
111 controldir,
112 errors,
113
114=== modified file 'breezy/plugins/email/__init__.py'
115--- breezy/plugins/email/__init__.py 2018-11-11 04:08:32 +0000
116+++ breezy/plugins/email/__init__.py 2019-10-14 00:07:21 +0000
117@@ -66,6 +66,7 @@
118
119 from __future__ import absolute_import
120
121+from ... import version_info # noqa: F401
122 from ...config import option_registry
123
124
125
126=== modified file 'breezy/plugins/fastimport/__init__.py'
127--- breezy/plugins/fastimport/__init__.py 2018-11-11 04:08:32 +0000
128+++ breezy/plugins/fastimport/__init__.py 2019-10-14 00:07:21 +0000
129@@ -56,6 +56,7 @@
130
131 from __future__ import absolute_import
132
133+from ... import version_info # noqa: F401
134 from ...commands import plugin_cmds
135
136
137
138=== modified file 'breezy/plugins/propose/__init__.py'
139--- breezy/plugins/propose/__init__.py 2019-04-27 15:40:17 +0000
140+++ breezy/plugins/propose/__init__.py 2019-10-14 00:07:21 +0000
141@@ -18,6 +18,7 @@
142
143 from __future__ import absolute_import
144
145+from ... import version_info # noqa: F401
146 from ...commands import plugin_cmds
147
148 plugin_cmds.register_lazy("cmd_propose_merge", ["propose"], __name__ + ".cmds")
149
150=== modified file 'breezy/plugins/repodebug/__init__.py'
151--- breezy/plugins/repodebug/__init__.py 2017-09-07 08:21:29 +0000
152+++ breezy/plugins/repodebug/__init__.py 2019-10-14 00:07:21 +0000
153@@ -22,6 +22,7 @@
154
155 from __future__ import absolute_import
156
157+from ... import version_info # noqa: F401
158 from ...commands import plugin_cmds
159
160
161
162=== modified file 'breezy/tests/test_plugins.py'
163--- breezy/tests/test_plugins.py 2019-01-25 03:30:39 +0000
164+++ breezy/tests/test_plugins.py 2019-10-14 00:07:21 +0000
165@@ -606,59 +606,62 @@
166 self.assertEqual(expected_dirs, actual)
167
168 def test_default(self):
169- self.check_path([self.user, self.core, self.entrypoints, self.site],
170- None)
171+ self.check_path([self.user, self.core, self.site], None)
172
173 def test_adhoc_policy(self):
174- self.check_path([self.user, self.core, self.site, self.entrypoints],
175+ self.check_path([self.user, self.core, self.site],
176 ['+user', '+core', '+site'])
177
178 def test_fallback_policy(self):
179- self.check_path([self.core, self.site, self.user, self.entrypoints],
180+ self.check_path([self.core, self.site, self.user],
181 ['+core', '+site', '+user'])
182
183 def test_override_policy(self):
184- self.check_path([self.user, self.site, self.core, self.entrypoints],
185+ self.check_path([self.user, self.site, self.core],
186 ['+user', '+site', '+core'])
187
188+ def test_enable_entrypoints(self):
189+ self.check_path([self.user, self.core, self.site, self.entrypoints],
190+ ['+user', '+core', '+site', '+entrypoints'])
191+
192 def test_disable_user(self):
193- self.check_path([self.core, self.entrypoints, self.site], ['-user'])
194+ self.check_path([self.core, self.site], ['-user'])
195
196 def test_disable_user_twice(self):
197 # Ensures multiple removals don't left cruft
198- self.check_path([self.core, self.entrypoints, self.site], ['-user', '-user'])
199+ self.check_path([self.core, self.site], ['-user', '-user'])
200
201 def test_duplicates_are_removed(self):
202- self.check_path([self.user, self.core, self.entrypoints, self.site],
203+ self.check_path([self.user, self.core, self.site],
204 ['+user', '+user'])
205 # And only the first reference is kept (since the later references will
206 # only produce '<plugin> already loaded' mutters)
207- self.check_path([self.user, self.core, self.site, self.entrypoints],
208+ self.check_path([self.user, self.core, self.site],
209 ['+user', '+user', '+core',
210 '+user', '+site', '+site',
211 '+core'])
212
213 def test_disable_overrides_enable(self):
214- self.check_path([self.core, self.entrypoints, self.site], ['-user', '+user'])
215+ self.check_path([self.core, self.site], ['-user', '+user'])
216
217 def test_disable_core(self):
218- self.check_path([self.entrypoints, self.site], ['-core'])
219- self.check_path([self.user, self.entrypoints, self.site], ['+user', '-core'])
220+ self.check_path([self.site], ['-core'])
221+ self.check_path([self.user, self.site], ['+user', '-core'])
222
223 def test_disable_site(self):
224- self.check_path([self.core, self.entrypoints], ['-site'])
225- self.check_path([self.user, self.core, self.entrypoints], ['-site', '+user'])
226+ self.check_path([self.core], ['-site'])
227+ self.check_path([self.user, self.core], ['-site', '+user'])
228
229 def test_override_site(self):
230- self.check_path(['mysite', self.user, self.core, self.entrypoints],
231+ self.check_path(['mysite', self.user, self.core],
232 ['mysite', '-site', '+user'])
233- self.check_path(['mysite', self.core, self.entrypoints],
234+ self.check_path(['mysite', self.core],
235 ['mysite', '-site'])
236
237 def test_override_core(self):
238- self.check_path(['mycore', self.user, self.site, self.entrypoints],
239+ self.check_path(['mycore', self.user, self.site],
240 ['mycore', '-core', '+user', '+site'])
241- self.check_path(['mycore', self.entrypoints, self.site],
242+ self.check_path(['mycore', self.site],
243 ['mycore', '-core'])
244
245 def test_my_plugin_only(self):
246@@ -667,11 +670,11 @@
247 ['myplugin', '-user', '-core', '-site', '-entrypoints'])
248
249 def test_my_plugin_first(self):
250- self.check_path(['myplugin', self.core, self.site, self.user, self.entrypoints],
251+ self.check_path(['myplugin', self.core, self.site, self.user],
252 ['myplugin', '+core', '+site', '+user'])
253
254 def test_bogus_references(self):
255- self.check_path(['+foo', '-bar', self.core, self.entrypoints, self.site],
256+ self.check_path(['+foo', '-bar', self.core, self.site],
257 ['+foo', '-bar'])
258
259
260@@ -923,6 +926,7 @@
261
262 def test_plugin_loaded(self):
263 self.assertPluginUnknown('plugin')
264+ self.overrideEnv('BRZ_PLUGIN_PATH', '+entrypoints')
265 self.setup_plugin()
266 p = self.plugins['plugin']
267 self.assertIsInstance(p, breezy.plugin.PlugIn)
268@@ -930,6 +934,7 @@
269
270 def test_plugin_loaded_disabled(self):
271 self.assertPluginUnknown('plugin')
272+ self.overrideEnv('BRZ_PLUGIN_PATH', '+entrypoints')
273 self.overrideEnv('BRZ_DISABLE_PLUGINS', 'plugin')
274 self.setup_plugin()
275 self.assertNotIn('plugin', self.plugins)
276
277=== modified file 'doc/en/release-notes/brz-3.0.txt'
278--- doc/en/release-notes/brz-3.0.txt 2019-06-18 11:21:15 +0000
279+++ doc/en/release-notes/brz-3.0.txt 2019-10-14 00:07:21 +0000
280@@ -32,6 +32,10 @@
281 .. Fixes for situations where brz would previously crash or give incorrect
282 or undesirable results.
283
284+ * Disable loading from entrypoints by default, since it can
285+ significantly slow down startup on some platforms.
286+ (Jelmer Vernooij, #1832868)
287+
288 Documentation
289 *************
290

Subscribers

People subscribed via source and target branches