##// END OF EJS Templates
merged default into stable
super-admin -
r4781:c8c75bc4 merge stable
parent child Browse files
Show More
@@ -0,0 +1,40 b''
1 |RCE| 4.27.1 |RNS|
2 ------------------
3
4 Release Date
5 ^^^^^^^^^^^^
6
7 - 2022-10-12
8
9
10 New Features
11 ^^^^^^^^^^^^
12
13
14
15 General
16 ^^^^^^^
17
18
19
20 Security
21 ^^^^^^^^
22
23
24
25 Performance
26 ^^^^^^^^^^^
27
28
29
30 Fixes
31 ^^^^^
32
33 - VCSServer: fixes the file-store backend to use serialized names for filename cache of vcsserver.
34
35
36
37 Upgrade notes
38 ^^^^^^^^^^^^^
39
40 - Un-scheduled release 4.27.1 addressing some new cache backed problems.
@@ -24,7 +24,7 b' done = true'
24
24
25 [release]
25 [release]
26 state = prepared
26 state = prepared
27 version = 4.27.0
27 version = 4.26.0
28
28
29 [task:generate_js_routes]
29 [task:generate_js_routes]
30
30
@@ -262,3 +262,39 b' ishell interface should be used.'
262 In [1]: repo = Repository.get_by_repo_name('SOME_REPO_NAME')
262 In [1]: repo = Repository.get_by_repo_name('SOME_REPO_NAME')
263 In [2]: repo.archived = False
263 In [2]: repo.archived = False
264 In [3]: Session().add(repo);Session().commit()
264 In [3]: Session().add(repo);Session().commit()
265
266
267
268
269 Bulk change repository owner
270 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
271
272 Here's how one can change an owner of repository for an user who has been de activated.
273 Settings a new owner can be done via ishell for all repositories that past owner had.
274
275 do run this script the interactive ishell interface should be used.
276
277 .. code-block:: bash
278
279 # Open iShell from the terminal
280 $ rccontrol ishell enterprise-1/community-1
281
282
283 .. code-block:: python
284
285 from rhodecode.model.db import User, Repository, Session
286 from rhodecode.model.permission import PermissionModel
287
288 # replace old-owner and new-owner with your exact users
289 old_owner = User.get_by_username('old-owner')
290 new_owner = User.get_by_username('new-owner')
291
292 # list of users we need to "flush" permissions
293 affected_user_ids = [new_owner.user_id, old_owner.user_id]
294
295 for repo in Repository.get_all_repos(user_id=old_owner.user_id):
296 repo.user = new_owner
297 Session().add(repo)
298 Session().commit()
299
300 PermissionModel().trigger_permission_flush(affected_user_ids)
@@ -9,6 +9,7 b' Release Notes'
9 .. toctree::
9 .. toctree::
10 :maxdepth: 1
10 :maxdepth: 1
11
11
12 release-notes-4.27.1.rst
12 release-notes-4.27.0.rst
13 release-notes-4.27.0.rst
13 release-notes-4.26.0.rst
14 release-notes-4.26.0.rst
14 release-notes-4.25.2.rst
15 release-notes-4.25.2.rst
@@ -1883,7 +1883,7 b' self: super: {'
1883 };
1883 };
1884 };
1884 };
1885 "rhodecode-enterprise-ce" = super.buildPythonPackage {
1885 "rhodecode-enterprise-ce" = super.buildPythonPackage {
1886 name = "rhodecode-enterprise-ce-4.27.0";
1886 name = "rhodecode-enterprise-ce-4.27.1";
1887 buildInputs = [
1887 buildInputs = [
1888 self."pytest"
1888 self."pytest"
1889 self."py"
1889 self."py"
@@ -185,8 +185,10 b' class RemoteRepo(object):'
185 self.url = remote_maker.url
185 self.url = remote_maker.url
186 self.stream_url = remote_maker.stream_url
186 self.stream_url = remote_maker.stream_url
187 self._session = remote_maker._session_factory()
187 self._session = remote_maker._session_factory()
188
189 cache_repo_id = self._repo_id_sanitizer(repo_id)
188 self._cache_region, self._cache_namespace = \
190 self._cache_region, self._cache_namespace = \
189 remote_maker.init_cache_region(self._repo_id_sanitizer(repo_id))
191 remote_maker.init_cache_region(cache_repo_id)
190
192
191 with_wire = with_wire or {}
193 with_wire = with_wire or {}
192
194
@@ -194,6 +196,7 b' class RemoteRepo(object):'
194 self._wire = {
196 self._wire = {
195 "path": path, # repo path
197 "path": path, # repo path
196 "repo_id": repo_id,
198 "repo_id": repo_id,
199 "cache_repo_id": cache_repo_id,
197 "config": config,
200 "config": config,
198 "repo_state_uid": repo_state_uid,
201 "repo_state_uid": repo_state_uid,
199 "context": self._create_vcs_cache_context(path, repo_state_uid)
202 "context": self._create_vcs_cache_context(path, repo_state_uid)
@@ -210,7 +213,7 b' class RemoteRepo(object):'
210 self.cert_dir = get_cert_path(rhodecode.CONFIG.get('__file__'))
213 self.cert_dir = get_cert_path(rhodecode.CONFIG.get('__file__'))
211
214
212 def _repo_id_sanitizer(self, repo_id):
215 def _repo_id_sanitizer(self, repo_id):
213 return repo_id.replace('/', '__')
216 return repo_id.replace('/', '__').replace('-', '_')
214
217
215 def __getattr__(self, name):
218 def __getattr__(self, name):
216
219
General Comments 0
You need to be logged in to leave comments. Login now