Commit Graph

13399 Commits

Author SHA1 Message Date
Rene Pfeuffer
86ca7426d3 Bump edison hal dependencies 2026-01-30 14:25:57 +00:00
Rene Pfeuffer
7cc18ad14d Bump picocli 2026-01-30 14:25:40 +00:00
Thomas Zerr
e6912b100b Bump sqlite version 2026-01-30 14:24:12 +00:00
Rene Pfeuffer
7b753e0981 Fix server freeze during random token generation 2026-01-30 13:50:25 +00:00
Thomas Zerr
b6ac1f3668 Bump jetty version
Mitigate CVE-2025-5115
2026-01-30 13:47:26 +00:00
Rene Pfeuffer
f21444f97b Bump shiro version 2026-01-30 13:05:45 +00:00
Thomas Zerr
0217132f68 Bump bouncycastle version 2026-01-30 13:00:25 +00:00
Rene Pfeuffer
7be567202e Fix exception with empty SVN repositories
The changeset command attempted to open a revision with
the id of 1 (starting from 0) even if only a revision 0 existed.
The thrown exception has been replaced by an empty collection
as a return value.
2026-01-30 12:24:19 +00:00
Thomas Zerr
af6b342944 Bump jaxb version 2026-01-30 12:03:57 +00:00
Thomas Zerr
1f8921a8f1 Bump jackson version 2026-01-30 12:00:51 +00:00
René Pfeuffer
3413ebc3c2 Add gradle version checks plugin 2026-01-30 11:22:17 +01:00
Thomas Zerr
fd1be5ffe8 Bump resteasy version 2026-01-30 10:08:37 +00:00
Rene Pfeuffer
225b400522 Bump logback version
Squash commits of branch dependency/logback:

- Bump logback version
2026-01-30 09:55:32 +00:00
Rene Pfeuffer
471f40208a Bump hikariCp version 2026-01-30 09:32:22 +00:00
Johannes Schnatterer
676628ce1e Helm: Add ingressClassName 2026-01-27 16:18:21 +00:00
René Pfeuffer
f0144c96b0 Log internal server errors with exceptions 2026-01-26 18:57:59 +01:00
Rene Pfeuffer
e98a6ff093 Include filename of corrupt file in store exception 2026-01-26 15:51:32 +00:00
Rene Pfeuffer
a378ad97e3 Fix error in cat command on empty repository 2026-01-26 13:43:28 +00:00
René Pfeuffer
fd3231a24f Add changelog entry for b6116b1fc9 2026-01-23 10:15:40 +01:00
René Pfeuffer
d1a0cc9fa5 Fix logos for plugins 2026-01-23 10:12:24 +01:00
Matt Harbison
b6116b1fc9 Mercurial config fixes (#2247)
* Stop ignoring global Mercurial configuration for non-server commands

There was previously a weird duality where a simple push to or pull from a
repository hosted by SCM-Manager would load all of the system and user level
config files, but they were ignored when importing a repository.  I found this
out when importing an LFS repo, and it eventually failed with a message that the
LFS extension needs to be enabled, even though it was enabled globally.  The
global config should typically never be ignored, because some repositories are
unreadable without certain extensions or configurations.

The JavaHg API here mirrors the hg behavior for the `HGRCPATH` environment
variable- not setting it (or null here) uses the default config resolution, and
`""` (the default in JavaHg for some reason) disables default config resolution.
The repository initialization code in JavaHg also uses `""`, and there's no way
to alter that from the outside.  But that appears to be harmless, so I'm
ignoring that for now.  Note that this may only have been a problem on
non-Windows systems- setting an environment variable to empty on Windows
*unsets* the variable, even in the `_wputenv()` API, which is what we want.

After this, normal push/pull operations continue to use the global config.  But
now imports from the SCM-Manager UI, the hooks run during a push, and any other
commands that are run through JavaHg will see a consistent configuration.  LFS
(and maybe largefiles- I haven't tested it) repository imports now work.  (I
wouldn't say "supported" yet because it doesn't pull the blobs.  The largefiles
extension has a command for doing this, but the LFS extension doesn't.  The
stopgap for this is to run `hg verify` to download the blobs, but that won't
work here with the way subrepos aren't nested as expected.  I can work on a
command on the hg side to fill this gap.)

One final thing to note here- as I was testing, I initially got authentication
failures when trying to pull.  It happened several times as I added more and
more logging, then disappeared, and I wasn't able to trigger it again as I
backed off the logging to get to this change alone.  The auth info is written to
the repository's hgrc file, so a change to whether or not the global
configuration is processed is irrelevant.  The next couple of commits will try
to improve the related code.

* Stop modifying and reusing the global JavaHg RepositoryConfiguration singleton

I can't point to a specific error, but modifying a singleton and reusing it is
a good way to get unexpected state.  The extension adding won't collect
additional state (it's add-if-not-present), but the underlying
`java.util.HashMap` isn't threadsafe.  Any differences in the environment map
when this is called would alter that state of anything else that still held a
configuration (and it also uses `HashMap`), and the pending changeset, encoding,
and HgBin settings would be overwritten for everybody outright.

There's only a default constructor for this class, so nothing to pass along in
the constructor.  I don't *think* this was the cause of the random auth failures
mentioned in the previous commit, but it's easy to avoid these potential
problems.

* Avoid modifying the Mercurial repository config file to add config options

Modifying the config file is complicated and error prone, but there hasn't been
any other option aside from setting `HGRCPATH` to point to a standalone file.
Starting with Mercurial 7.0 (scheduled for March 2025), there's now a global
option to specify one or more additional config files on the command line,
without disabling the normal system and user level config file processing.[1]
Since I'm not sure what the minimum supported Mercurial is for this project,
this includes an extension that backports the same option if it is not present
in the version of Mercurial that is used, and does nothing if Mercurial natively
supports it.  I tested back to Mercurial 6.0, which should be more than
sufficient- 6.1.4 (June 2022) was the last release to support Python 2 (which
has been EOL since Jan 2020), and the Python 3 support before that release was
considered experimental.  It likely works in earlier versions, but there's a
definite minimum of 4.9 (Feb 2019), due to the `exthelper` module import.

Without the need to modify a possibly existing file and then restore it when
done, a bunch of code falls away, and the tests that supported it.


[1] https://repo.mercurial-scm.org/hg/rev/25b344f2aeef

* Clean up

---------

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2026-01-23 08:55:57 +01:00
Matthias Thieroff
42c185cdb2 Update IntelliJ IDEA configuration 2026-01-21 13:36:36 +00:00
CES Marvin
2a4089de3d Prepare for next development iteration 2026-01-12 10:44:14 +00:00
CES Marvin
5186c2c9f1 Release version 3.11.2 3.11.2 2026-01-12 09:54:50 +00:00
Thomas Zerr
72e8ad5002 Adjust changelog for release 3.11.2 2026-01-12 10:46:09 +01:00
Rene Pfeuffer
a8307f8618 Update Tika to mitigate CVE-2025-54988 and CVE-2025-66516
To do so, we also have to update slf4j, logback, and spotter.
2026-01-12 09:44:26 +00:00
René Pfeuffer
67fa03736d Increase gradle memory for sonar analysis 2026-01-06 15:24:09 +01:00
René Pfeuffer
cd11f2854f Bump node version 2026-01-06 10:18:14 +01:00
Rene Pfeuffer
186e56d8cb Fix locales/docs 2025-12-27 10:41:17 +00:00
Rene Pfeuffer
09fe95e3ae Fix misleading error log
When a commit could not be found, JGit throws a MissingObjectException.
Because this extends IOException, the according catch block is executed
with a log with level ERROR and the message, that the repository could not
be opened. This is simply wrong.

With this, we catch the MissingObjectException explicitly and simply return null.
2025-12-18 08:26:41 +00:00
CES Marvin
fa37ba0efa Prepare for next development iteration 2025-11-28 15:20:19 +00:00
CES Marvin
14e908b6be Release version 3.11.1 3.11.1 2025-11-28 14:31:02 +00:00
René Pfeuffer
2d01b6536d Prepare release of 3.11.1 2025-11-28 15:15:55 +01:00
René Pfeuffer
f7cc6d815d Merge branch 'main' into develop 2025-11-28 14:42:22 +01:00
René Pfeuffer
e51795bdfd Merge tag '3.7.7'
Release version 3.7.7
2025-11-28 14:42:06 +01:00
CES Marvin
ad5e642eb9 Release version 3.7.7 3.7.7 2025-11-28 12:33:58 +00:00
René Pfeuffer
219e17ae25 Adjust changelog for release 3.7.7 2025-11-28 13:25:33 +01:00
Rene Pfeuffer
31fa1ba0a4 Improve repository load times
This performance optimization results from the fact that during namespace loading, read permissions are no longer verified for every repository, but only for those that would result in a new namespace. Simply put: If a namespace has already been discovered, no further repositories within that namespace are checked.

We need the new function `streamAll` for this, because the `getAllRepositories` would create all repositories before returning them, which would make it impossible to intervene in time using the filter parameter.
2025-11-28 11:02:31 +00:00
Florian Scholdei
3d238db2e0 Remove duplicated @deprecated tag
The `@deprecated` tag was applied twice to old `useKeyboardIteratorTarget()` and new `useKeyboardIteratorTargetV2()`.
2025-10-21 13:05:11 +00:00
René Pfeuffer
fd84485425 Log exception when GPG signature cannot be read 2025-10-14 13:46:08 +02:00
CES Marvin
75b5842b12 Prepare for next development iteration 2025-09-26 12:07:56 +00:00
CES Marvin
ca5aa4c24c Release version 3.11.0 3.11.0 2025-09-26 11:58:20 +00:00
Thomas Zerr
55b00e8302 Adjust changelog for release 3.11.0 2025-09-26 12:43:38 +02:00
Thomas Zerr
25c09a3b0f Fix export of read-only repositories
- Fix startup issue with unfinished export of deleted repository
- Add withIgnoreReadOnly setting
- Build store with ignore read only flag
- Add logging
2025-09-24 14:43:14 +02:00
Rene Pfeuffer
3062851e32 Fix hg testing issues with new versions of hg
With this, we updated the zipped test repositories in
scm-plugins/scm-hg-plugin/src/test/resources/sonia/scm/repository
with `hg debugupgraderepo --run` and a hg version 5.3.1

It lookes like the old format does not work with newer
version of hg (maybe since 6.x or 6.7 or something)
2025-09-24 13:40:33 +02:00
Rene Pfeuffer
9c5e9adbb4 Fix simple repository export 2025-09-22 11:26:46 +02:00
René Pfeuffer
017e1c96fe Merge branch 'hotfix/3.10.3' into develop 2025-09-17 08:44:46 +02:00
René Pfeuffer
453796f03b Prepare for next development iteration 2025-09-17 08:44:34 +02:00
CES Marvin
6d8a96e890 Release version 3.10.3 3.10.3 2025-09-17 05:40:18 +00:00
René Pfeuffer
0924fa6ebd Prepare release of 3.10.3 2025-09-17 07:29:19 +02:00