Commit graph

124 commits

Author SHA1 Message Date
Marcin Kuzminski
b9e2364aeb shadow-repos: use safer way to destroy shadow repositories.
we had reported errors on removal of shadow repos. Not reproduced, however
suspecting are filesystem sync/symlink race-conditions on shared storage.

End result were existing shadow-repo directories that tricked rhodecode
into thinking shadow repos is existing, but infact it was a dummy
structure semi-removed. Using shutil.move we ENSURE rhodecode doesn't
read those back even if removal fails.
2018-06-05 09:53:29 +02:00
Marcin Kuzminski
ea287e0d07 diff-caches: show count and size in caches view per repository. 2018-04-18 16:52:40 +02:00
Bartłomiej Wołyńczyk
4637dd151e caching: add option to cache diffs for commits and pull requests.
- new option for vcs settings to enable caching of diffs and commits
- enables auditing of PR after closing it, and removing commits from source repo
- speed up for large PR upto 20x
- reduced memory usage
2018-04-17 18:46:20 +02:00
Marcin Kuzminski
bdf5f0afb6 svn: enable hooks and integration framework execution.
- This change will allow SVN to execute rhodecode integration framework
via executing the builting hooks.
- uses txn_id for svn to provide metadata required via Apache
- Interception of SVN transaction is required to use temporary stores for metadata
- hooks are now part of vcsserver where the install/control logic is stored
2018-04-06 12:44:01 +02:00
Marcin Kuzminski
3ea058d91b code: code fixes and small adjustments 2018-02-20 17:49:26 +01:00
Sandu Turcan
686eb87294 path-permissions: Throw RepositoryRequirementError is hgacl cannot be read 2018-02-19 18:12:52 -05:00
Sandu Turcan
cfbe15353a path-permissions: Path-based permissions for mercurial 2018-02-18 18:27:53 -05:00
Sandu Turcan
e4981d4e72 path-permissions: Initial support for path-based permissions 2018-02-18 19:30:42 -05:00
Marcin Kuzminski
f689a025ce vcs: use proper attributes/inits on base and child classes. 2018-02-20 17:47:18 +01:00
Marcin Kuzminski
141575541f core: properly report 502 errors for gevent and gunicorn.
- gevent+gunicorn doesn't raise normal pycurl errors
2018-02-09 10:52:58 +01:00
Marcin Kuzminski
b2c7cd47ea pull-request, git: add option to skip --ff-only 2018-02-07 18:26:38 +01:00
Marcin Kuzminski
fe5628ee44 mercurial: fix new 4.4.X code change that does strict requirement checks.
in few cases we init bare repos for checking, and we should use defauls that
always work.

- fixes #5433
2018-02-01 18:25:24 +01:00
Marcin Kuzminski
c36b8f3d79 git: use force branch checkout to prevent cases when .gitattributes modifies
files by specific rule and then checkout is blocked by potential file conflicts.
2018-01-29 14:37:03 +01:00
Marcin Kuzminski
0bc9813397 git: allow force checkouts for git repository 2018-01-23 22:06:41 +01:00
Marcin Kuzminski
93a93bbb19 scm: added push options for Mercurial and Git to allow remote repository sync. 2018-01-22 18:15:51 +01:00
Marcin Kuzminski
00b45c1fa7 release: update copyright year to 2018 2018-01-19 17:13:16 +01:00
Marcin Kuzminski
5b71fc3fef git: fix diff rendering with branches with '/'. 2018-01-16 16:23:16 +01:00
Marcin Kuzminski
05d8801422 git: merge test, fetch other branch if it's different from target. This
prevents potentially missing commits when doing a test merge.
2018-01-15 19:13:31 +01:00
Marcin Kuzminski
32c6a95335 env: removed old not used code for starting vcsserver together with rhodecode. 2017-12-18 21:19:00 +01:00
Marcin Kuzminski
fad0fcf1c3 git: use bool condition to check if the git path is fine. Using exceptions
spams the logs with confusing tracebacks.
2017-12-18 15:31:48 +01:00
Marcin Kuzminski
b40cdfbdac logging: log traceback for errors that are known to help debugging. 2017-12-16 16:05:38 +01:00
Marcin Kuzminski
af533f47d8 compat: use py3 compatible configparser in all places. 2017-11-15 20:35:22 +01:00
Marcin Kuzminski
ec6a342178 vcs: commits, expose refs function to fetch commit refereces such as tags, bookmarks, etc. 2017-11-09 19:49:29 +01:00
Marcin Kuzminski
7e65f0e21d exceptions: improve handling of exception that are unhandled.
- inject traceback information into unhandled exceptions.
2017-10-23 20:43:19 +02:00
Marcin Kuzminski
0baf293f82 files: remove rigth-to-left override character for display in files.
This allows faking the name a bit, we in this particular place want to
skip the override for enhanced security.
2017-10-10 10:46:54 +02:00
Marcin Kuzminski
862e0c122b commits: hide evolve commits. Fixes #5392 2017-10-03 16:37:39 +02:00
Marcin Kuzminski
3718a47d3f changelog: fix and optimize loading of chunks for file history.
- load-next/prev wasn't working
- make sure pagination works as expected
- speed up certain actions by pre-loading more attributes
2017-09-27 13:21:57 +02:00
Marcin Kuzminski
198094e646 mercurial: updated logging and function calls. 2017-08-24 18:49:20 +02:00
Marcin Kuzminski
bffc3ecda9 git: added identify command for checking the current checkout commit 2017-08-24 18:44:31 +02:00
Marcin Kuzminski
990994942d pull-requests: use close action with proper --close-commit solution.
- Mercurial settings are no long as LABS
- Unified some code between GIT and HG on rebase/close/delete feature branches
2017-08-24 22:36:34 +02:00
Mathieu Cantin
761e973359 mercurial: Add option to close a branch before merging 2017-08-08 13:46:42 -04:00
Marcin Kuzminski
ab16b87482 http: ported old depracated retry format for http client. 2017-07-26 12:39:31 +02:00
Marcin Kuzminski
5184f34ead svn: don't raise duplicate exception. The function already does that. 2017-07-17 14:19:22 +02:00
Marcin Lulek
cb6d81f435 security: escape flash messaged VCS errors to prevent XSS atacks. 2017-06-26 14:48:15 +02:00
Marcin Kuzminski
d0e3f7b137 maintenance: added svn verify command to tasks to be able to verify
the filesystem and repo formats.
2017-05-26 13:02:12 +02:00
Marcin Kuzminski
4801f5f8ca mercurial-evolve: enable evolve setting on repositories. 2017-05-10 18:33:59 +02:00
Marcin Kuzminski
9473470c8a backends: make sure the NoNode error uses safe representation of path
to avoide unicode errors.
2017-05-09 11:11:39 +02:00
Marcin Kuzminski
dabc592890 pull-request: fixed typo in wrong ref type error, and added which
refs are actually allowed.
2017-04-24 16:36:28 +02:00
Marcin Kuzminski
15fc2d8a48 mercurial: show phases status in changelog.
- ref #5265
2017-04-20 20:56:16 +02:00
Marcin Kuzminski
d321c7d65d nodes: fetching largefiles content is commit independent because the pointes is
unique id itself.
2017-04-12 20:54:32 +02:00
Marcin Kuzminski
91c104ae49 largefiles: enabled download of largefiles for git and mercurial from web interface.
- fixes #2817
2017-03-27 14:00:36 +02:00
Marcin Kuzminski
bb273b4b2b git: improve logging of git remote commands. 2017-03-23 15:16:33 +01:00
Marcin Kuzminski
ae3b38d628 git-lfs: create default LFS storage on new installation
- ref #4635
2017-03-18 12:28:23 +01:00
Marcin Kuzminski
0b8e1a6a6f mercurial: refactor how we fetch default largefile store.
- helps further changes on making this editable
- makes it more explicit how we fetch those settings
2017-03-17 21:57:05 +01:00
Marcin Kuzminski
5f5984f20a mercurial: enabled support of verify command. 2017-03-16 15:06:17 +01:00
Marcin Kuzminski
dbb53dfceb system-info: expose workers of vcsserver in system info data. 2017-02-23 21:33:49 +01:00
Marcin Kuzminski
aa55532833 backends: make HG repos throw same kind of CommitDoesNotExist errors like other backends. 2017-02-08 21:30:01 +01:00
Marcin Kuzminski
0e8868ec47 mercurial: fixed code for new ancestor code available in vcsserver. 2017-02-08 00:16:46 +01:00
Marcin Kuzminski
f8f9bdc988 http-backend: catch errors from HTTP calls that are not raising exceptions, but
return non 200 exception codes.
2017-02-07 16:16:42 +01:00
Marcin Kuzminski
3d3f2db34a core: removed pyro4 from Enterprise code. Fixes #5198 2017-02-07 15:58:49 +01:00