Squash commits of branch feature/hikari:
- Introduce HikariCP as connection pool
- Log change
- Close maintenance stores correctly
- Do not force minimum number of connections
- Log change
- Assert stores are closed correctly
... and test QueryableStoreDeletionHandler
- Fix license
- Fix unit tests
- Use constants
- Change change log
- Move hikari version to libraries
- Enhance documentation
- Use configuration for pool settings
Besides the endpoint, another API was added, the ShouldRequestPassChecker.
This api should be used to check whether a REST Request should be passed or rejected.
This adds the new "queryable store" API, that allows complex
queries and is backed by SQLite. This new API can be used
for entities annotated with the new QueryableType annotation.
Tasks.documentation.javadoc threw around 50 errors due to multiple inconsistencies within the javadoc comments.
Furthermore, the option 'failOnError' is now set to 'true' so that future Javadoc errors in our codebase are avoided.
Squash commits of branch feature/permission-updater:
- Add API for updating RepositoryPermissions
- Add licensing and logging
- Fix assertion depending on the order of item serialization
- Replace manual logger setup with @Slf4j annotation
To still support the editor plugin, a new field in the
browse command results is needed to indicate, whether
such a result or rather the requested revision can be
modified by a new commit.
This is the case, when
- for Subversion repositories either the new 'head' or the
latest revision has been requested, or
- for Git and HG when a branch (or the default by specifying
no concrete revision) has been used.
We need this setting to be able to display PDF files in the file view in Firefox (Chrome does this nonethelss, only Firefox seems to have a problem without this header).
Pushed-by: Rene Pfeuffer<rene.pfeuffer@cloudogu.com>
Co-authored-by: René Pfeuffer<rene.pfeuffer@cloudogu.com>
Committed-by: René Pfeuffer<rene.pfeuffer@cloudogu.com>
With this change,
- logs are only written to console when the server is started in foreground (prevents writing to scm-server.out file)
- the location of the log file is determined correctly, when it is configured with a relative path
- less logs are written to console on startup
- enabling file and console appenders via config.yml
This fixes the following security issue: If a user creates a new repository in a namespace this user had no permission to read any repository from, the user gets OWNER permissions on this namespace and all other permissions are removed from this namespace.
Pushed-by: Rene Pfeuffer<rene.pfeuffer@cloudogu.com>
Co-authored-by: René Pfeuffer<rene.pfeuffer@cloudogu.com>
Committed-by: René Pfeuffer<rene.pfeuffer@cloudogu.com>
A notification will be displayed when an external user
management system is activated to inform that users
created within the SCMM will not be transferred to the
external system.
Co-authored-by: René Pfeuffer<rene.pfeuffer@cloudogu.com>
Previously a query was only parsed by lucene as it is, if the query
contained a colon (:) or a wildcard character (*). With this, every query
gets parsed as it is, as long as there is one operator contained inside
the query (colon, quotation marks, logical operators, ...). These are
called "expert queries". All other queries are still processed as
"simple queries" where every part of the query is extended with a
wildcard operator.
Addtionally the user is now getting feedback for every
search, if the query is a simple query or an expert query. The syntax
documentation got also extended with the quotation mark operator
and the definition of the two query types.
Co-authored-by: René Pfeuffer<rene.pfeuffer@cloudogu.com>
With this change, every repository initializer gets its own modification command and therefore its own commit. This allows each initializer to decide on its own, if he want to use the default path of the repository.