Commit Graph

1356 Commits

Author SHA1 Message Date
CES Marvin
cb489abfff Release version 2.34.0 2022-05-13 10:11:33 +00:00
CES Marvin
42f56dac5e Prepare for next development iteration 2022-04-29 12:17:25 +00:00
CES Marvin
e608b0b35d Release version 2.33.0 2022-04-29 11:42:21 +00:00
Matthias Thieroff
a0737a2c90 Fix freezing browser if syntax highlighting large files (#2010)
We unified syntax highlighting and extracted it into a low level module. Syntax highlighting from now on takes place in a web worker, so that the user interface stays responsive. The web worker stops automatically if the number of nodes which should be highlighted exceeds the defined limit we believe the browser can handle.

Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2022-04-25 16:34:40 +02:00
Matthias Thieroff
fae952ff09 Fix open file handle prevent deleting a repository on Windows (#2008)
Fixes the problem of unclosed file handles which occur when a repository or pack file is accessed (e.g. asynchronously in a post receive hook) after the file had already been closed. Such open file handle prevents deleting a repositories on Windows.
2022-04-21 07:45:44 +02:00
René Pfeuffer
edd972b1a8 Fix handling of illegal lfs pointers (#1994)
When using lfs, it could happen that there are files
committed before the `.gitattributes` file was updated.
In these cases, it could occure that we find files, that
are no lfs pointers, although they are marked as lfs files
in the attributes. In these cases we just want to handle
such files just as normal blobs and ignore the fact and
do not fail.
Before, a null pointer exception was thrown, because the
LfsPointer class from jgit returned null, which did raise
the exception in the Optional#of method.
2022-04-08 14:34:22 +02:00
Eduard Heimbuch
162dd6ad0a CLI Support for repository actions (#1987)
To make SCM-Manager more accessible and to make it easier using scripts against the server, we created a command line interface. This command line interface can be used to perform the default actions like create, modify and delete repositories. It is also very flexible and can be extended by plugins.

The CLI already supports internationalization, help texts, input validation, loose and table-like templates and nested subcommands. Check the cli guidelines to learn how add new cli commands.

Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
2022-04-04 12:02:16 +02:00
Konstantin Schaper
4d203ff36f codify extension points docs (#1947)
This pull request converts the current incomplete textual documentation of the available frontend extension points to in-code definitions that act both as documentation and as type helpers for improving overall code quality. All extension points available in the SCM-Manager core are now available, but no plugin was updated and only those parts of the core codebase had the new types added that did not require runtime changes. The only exception to this is the breadcrumbs, which was a simple change that is fully backwards-compatible.
2022-03-29 15:04:14 +02:00
CES Marvin
ad8cbd6f74 Prepare for next development iteration 2022-03-23 16:00:10 +00:00
CES Marvin
cc9b1b53b3 Release version 2.32.2 2022-03-23 15:32:49 +00:00
Eduard Heimbuch
b7f44315b2 Not unique revisions on compare (#1974)
* Throw more specific exception if compared revisions are ambiguous.
* Add changelog entry
* Move changelog entry in intended folder
* Small typo

Co-authored-by: Florian Scholdei <florian.scholdei@cloudogu.com>
2022-03-14 10:34:17 +01:00
CES Marvin
00f11cd4b9 Prepare for next development iteration 2022-03-10 17:09:14 +00:00
CES Marvin
132c25a1ce Release version 2.32.1 2022-03-10 16:28:26 +00:00
CES Marvin
f60be4291d Prepare for next development iteration 2022-03-10 09:42:54 +00:00
CES Marvin
094d1335ca Release version 2.32.0 2022-03-10 09:10:23 +00:00
René Pfeuffer
914280ae43 Prepare for next development iteration 2022-02-21 15:01:44 +01:00
CES Marvin
dff4ccfb32 Prepare for next development iteration 2022-02-18 13:04:18 +00:00
CES Marvin
5d3f985ee3 Release version 2.31.0 2022-02-18 12:34:36 +00:00
René Pfeuffer
2ededac869 Update RestEasy (#1953)
Updates RestEasy to version 4.7.5.Final.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-02-15 14:51:09 +01:00
Matthias Thieroff
44f0046f25 Collapse folders with only one child folder (#1951)
Collapses a folder in code view which only has another folder as its only child. This lets you access a sub-folder which has content directly instead of navigating down the folder tree by clicking every folder separately.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2022-02-15 10:59:32 +01:00
Sebastian Sdorra
466334aaa7 Update vulnerable version of cron-utils (#1942)
* Update lock files

* Replace usage of org.apache.commons.lang3 with guava

* Update vulnerable version of cron-utils

Update cron-util from version 9.1.3 to 9.1.6.
Version 9.1.6 fixes an arbitrary code execution
vulnerability (CVE-2021-41269).
SCM-Manager is not affected by this issue,
because it is related to the el parsing
of an annotation which we don't use.
2022-02-01 18:06:53 +01:00
Sebastian Sdorra
44be389d0c Enable Gradle dependency locking (#1922)
Enable gradle dependency locking for all subprojects. This change allows us to use dependency ranges, without loosing reproducible builds.
It also makes it easier for third party services such as snyk to detect dependencies and their versions.
2022-02-01 15:14:18 +01:00
CES Marvin
beff5706a3 Prepare for next development iteration 2022-01-26 10:02:01 +00:00
CES Marvin
8691f217c1 Release version 2.30.1 2022-01-26 09:27:00 +00:00
CES Marvin
ed3c81f3a5 Prepare for next development iteration 2022-01-24 13:13:37 +00:00
CES Marvin
8adbf29582 Release version 2.30.0 2022-01-24 12:46:01 +00:00
Eduard Heimbuch
49844d1595 Compare branches, tags and revisions (#1920)
Add branch/tag/revision compare to see diffs and changesets between the source and target revisions. This feature is reachable from the branch/tag detail page and also the source code view.

Co-authored-by: Florian Scholdei <florian.scholdei@cloudogu.com>
Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
2022-01-20 11:00:49 +01:00
René Pfeuffer
6e555a855a Set HEAD to correct default branch (#1929)
Sets the HEAD for new Git repositories to the default branch (this is 'main' for the default configuration).
This change led to errors in unit tests, that depended on the 'master' branch.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-01-20 10:19:27 +01:00
Matthias Thieroff
0f01bb82c6 Fix bugs in unit tests which occur on Windows only (#1927)
On Windows it is much more necessary to close files to avoid locked files which prevent deleting a temporary file or folder. Also paths need to be handled differently because of the drive letter and colon appearing on Windows.
2022-01-20 08:48:13 +01:00
René Pfeuffer
6ca88e6772 Merge branch 'master' into develop 2022-01-18 08:22:37 +01:00
CES Marvin
d692bf6bff Release version 2.29.1 2022-01-18 08:18:05 +01:00
CES Marvin
01fa96d29c Prepare for next development iteration 2022-01-07 17:13:27 +00:00
CES Marvin
ad390ea97b Release version 2.29.0 2022-01-07 16:45:03 +00:00
Eduard Heimbuch
aa1558dbac Disable repository types (#1908)
Disable repository types via global config for Git, Mercurial and Subversion. It is only possible to disable a type, if no repositories of this type exist. Also prevent repository creation if no type is allowed at all to catch nasty errors.

Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2022-01-06 10:05:01 +01:00
CES Marvin
90b595b545 Prepare for next development iteration 2021-12-22 18:16:08 +00:00
CES Marvin
2817c87813 Release version 2.28.0 2021-12-22 17:49:10 +00:00
Matthias Thieroff
5b700dc0c7 Fix closing of repository while getting the latest commit asynchronously (#1903)
Getting the latest commit can run asynchronously, which can lead to a reopening of a repository after the RepositoryService has already closed it. This lead to an open file handle which prevented a proper deletion of the repository. We now explicitly open and close the repository when getting the latest commit.
2021-12-21 15:09:41 +01:00
René Pfeuffer
784817d20c Merge branch 'master' into develop 2021-12-20 08:49:44 +01:00
CES Marvin
c7f603b96d Release version 2.27.4 2021-12-17 21:15:28 +00:00
René Pfeuffer
1118ddd146 Ahead/behind in branch details (#1893)
Adds the ahead/behind count to the branch details view.
2021-12-15 15:03:40 +01:00
CES Marvin
7b63a6d0bf Release version 2.27.3 2021-12-14 18:58:40 +00:00
René Pfeuffer
de22cf0d19 Upgrade logback (#1894)
Upgrade Logback to v1.2.8.
2021-12-14 19:47:52 +01:00
Eduard Heimbuch
b8d6c219ee Add extension point to branches overview (#1888)
Prepare branches overview to show additional branch details.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2021-12-10 11:04:59 +01:00
Florian Scholdei
7f807a8e0f Improve headings structure (#1883)
The content of the SCM-Manager should be made accessible and usable in a sensibly structured way so that web content is easy to use for ever user.
2021-12-02 08:45:50 +01:00
Eduard Heimbuch
9cc134f5a8 Feature/branch details (#1876)
Enrich branch overview with more details like last committer and ahead/behind commits. Since calculating this information is pretty intense, we request it in chunks to prevent very long loading times. Also we cache the results in frontend and backend.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2021-12-01 14:19:18 +01:00
Konstantin Schaper
9fc10c0bdb implement hook & fix build (#1877) 2021-11-30 09:49:16 +01:00
René Pfeuffer
6ea77b42ca Fix edge cases in move (#1874)
Fixes edge cases for "move" in the modify command, like

- reject backslashes in validation
- add overwrite option
- check for invalid source and target options

This is an update to the implementation of "move" in #1859.

Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
2021-11-30 08:49:47 +01:00
Sebastian Sdorra
9dee08f68d Update Gradle to 7.3 (#1873)
Update Gradle to 7.3. in order to profit from the performance improvement and to prepare for dependency lockfiles. Due to the upgrade to 7.x we had to use a license plugin which supports Gradle 7.
2021-11-29 09:05:24 +01:00
CES Marvin
47842cc071 Prepare for next development iteration 2021-11-19 14:19:40 +00:00
CES Marvin
df5f692a59 Merge branch 'master' into develop 2021-11-19 14:19:20 +00:00