Commit Graph

366 Commits

Author SHA1 Message Date
Konstantin Schaper
95cd15e57d Adjust changelog for release 2.35.0 2022-06-02 09:19:50 +02:00
Phil-Ah
b1e8bb7f98 Differentiate focused buttons in confirmation dialog (#2050)
Users need to understand which option they are choosing in an confirmation dialog. Buttons for primary and secondary actions should be visually discernible when one is focused/hovered.
The changes remove default-styling from buttons in confirmation dialogues. The style is set in the element using this dialog to better visually separate the primary and secondary action.

Resolves #2049
2022-06-01 18:10:42 +02:00
René Pfeuffer
c5b4dcb19e Fix character encoding in diffs (#2046)
Fixes encodings in diff results. The is especially necessary for Windows systems.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-06-01 09:32:12 +02:00
Konstantin Schaper
1b18191c57 Add plugin wizard initialization step (#2045)
Adds a new initialization step after setting up the initial administration account that allows administrators to initialize the instance with a selection of plugin sets.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
2022-05-31 15:15:30 +02:00
Florian Scholdei
6216945f0d Notify user about results of manually executed health check (#2044)
When manually starting health checks, the user should always receive a notification about the status, whether successful or not.
2022-05-25 09:30:45 +02:00
Eduard Heimbuch
8f0facf394 Order repo info extensions (#2041)
Set order priority for repository information extensions.
Also add new annotation to set custom resource bundles for cli commands.
2022-05-23 15:06:08 +02:00
René Pfeuffer
303f8daaf9 Fix NPE on synchronous repository export (#2040)
When a repository was exported synchronously with metadata,
the server ran into a NullPointerException. The was because
the resource tried to write an export result to a stored
export item, that does not exist for synchronous exports.

This simply removes this call.
2022-05-19 08:36:25 +02:00
René Pfeuffer
256106545d Fix character encoding for basic authentication (#2038)
Regarding to RFC 7617 (see
https://datatracker.ietf.org/doc/html/rfc7617), the default
encoding for basic auth strings should be UTF-8.
2022-05-18 09:44:38 +02:00
René Pfeuffer
9bfb074805 Use Java 11 as compile version (#2033)
This sets Java 11 for compilation. To do so, this has to use the gradle smp plugin with the pull request scm-manager/gradle-smp-plugin#16. If the smp plugin is not released as version 0.10.4, the version has to be corrected for org.scm-manager.smpin the various build.gradle files.

It might be necessary to delete all build folders when switching between Java 8 and Java 11:

rm -rf build */build scm-plugins/*/build

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-05-18 08:56:41 +02:00
Florian Scholdei
8448a3520b Correct resource for branch details (#2037)
The two BranchDetails resource endpoints were shown twice in the Rest Api documentation. Once each without path prefix.
This pr removes the duplicate endpoints.
2022-05-17 16:34:25 +02:00
Eduard Heimbuch
6a7dc8253d Fix diff command content (#2036)
Fix diff command getContent which returned always empty string because the results were ignored.
2022-05-13 17:59:33 +02:00
René Pfeuffer
e75756eae5 Adjust changelog for release 2.34.0 2022-05-13 12:03:45 +02:00
Konstantin Schaper
264e80f47c Improve visibility and contrast for focused line in syntax highlighting (#2031)
The styling for the focused line (e.g. permalink) in the source view with syntax highlighting was hard-coded and did not meet accessibility standards, especially in high-contrast mode. This pull request introduces two new css variables that are fine-tuned to meet contrast requirements for each theme. An additional "bar" with specifically high contrast has been added to the left of the focused line, because it was impossible to find one background color that would provide sufficient contrast with both the page background as well as all highlighting colors.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-05-10 11:17:10 +02:00
Eduard Heimbuch
4fdd6f4d0c Require password for creation of internal user (#2027) 2022-05-09 09:41:59 +02:00
Eduard Heimbuch
826f34f821 Show confirmation modal before deleting keys (#2028)
Show confirmation modal before deleting public keys and api keys.
2022-05-09 09:26:52 +02:00
Phil-Ah
7676d709bb Change CSS definition of padding to better confer to standard (#2023)
"padding: inherit;" does not take any further arguments.
Further definitions will be moved to separate lines to produce valid CSS.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-05-09 09:16:26 +02:00
Florian Scholdei
4c94235414 Remove card-table action area (#2016)
In .card-tables there was an action area that had a darker background. Now this area only contains the delete action. Also, users mistakenly assumed that the hovered area could be clicked. It has therefore been removed and the icons themselves have received a hover effect.
2022-05-06 10:01:01 +02:00
Phil-Ah
6cf8afac01 Fix jumping and broken tool tips (#2026)
The way the tool tip implements passed class names is mistakable. The passed classes broke the tool tip and are removed. The same issue led to a broken tool tip for the code search and is fixed as well. Unnecessary code is removed from help.

Fixes #2025
2022-05-05 21:51:20 +02:00
René Pfeuffer
a5d1901660 Fix ui dependencies (#2024)
Due to the dependencies to ui-syntaxhighlighting and ui-text
from ui-components, these new packages have to be deployed on
npm if ui-components is used in version 2.32.0 or later. Because
these packages shall not be deployed on npm, this changes the
dependencies to dev dependencies in ui-components.
2022-05-04 15:15:35 +02:00
Sebastian Sdorra
af2cdfb739 Docker multi-arch builds (#2021)
Replaces the current docker build with a multi arch build powered by buildx.
The new build creates two scm-manager docker image variants.
One based on alpine which uses the openjdk distribution and the other based on debian and eclipse temurin:

scmmanager/scm-manager:<version>-alpine
- linux/amd64
- linux/arm64
scmmanager/scm-manager:<version>-debian
- linux/amd64
- linux/arm64
- linux/arm/v7
scmmanager/scm-manager:<version>
- linux/amd64 alpine based
- linux/arm64 alpine based
- linux/arm/v7 debian based
scmmanager/scm-manager:latest
- linux/amd64 alpine based
- linux/arm64 alpine based
- linux/arm/v7 debian based

The development build produces only a single amd64 image at cloudogu/scm-manager with a snapshot version.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-05-04 14:38:31 +02:00
Eduard Heimbuch
3853084106 Add action bar menu (#2015)
Create action bar overflow menu to handle increasing number of file actions.
2022-05-04 09:39:25 +02:00
Eduard Heimbuch
1c540e1fbd Sort CLI commands alphabetically (#2020)
Sort CLI commands alphabetically to show them in consistent order.
2022-05-04 09:36:01 +02:00
Eduard Heimbuch
77046bb6fd Throw error if repo is created with not supported type (#2019)
Throw error if repository is created with not supported type. Currently we only allow git, svn or hg all lowercase.
2022-05-03 16:06:38 +02:00
Eduard Heimbuch
da7d523f77 Do not show feedback form for anonymous users 2022-05-02 14:15:50 +02:00
René Pfeuffer
f2e6d7e561 Adjust changelog for release 2.33.0 2022-04-29 13:31:01 +02:00
René Pfeuffer
b8e2ae747a Omit default port in protocol urls (#2014)
This omits the port in the protocol urls when the port is the default port for the protocol.
So if you have your server https://my.scm.net/scm and the repository admin/test, the protocol url is no longer https://my.scm.net:443/scm/repo/admin/test, but simply https://my.scm.net/scm/repo/admin/test without the :443.
2022-04-29 11:57:28 +02:00
René Pfeuffer
84f7c5c099 Update jjwt to 0.11.5 (#2017)
Updates jjwt in response to CVE-2022-21449.

See https://github.com/jwtk/jjwt/blob/0.11.5/CHANGELOG.md?s=03#0115
2022-04-29 11:17:47 +02: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
Phil-Ah
21d2422b3c Add visible outline to focused button (#2009)
The focus state of buttons should be clearly visible in all modes to help find the focused element. Buttons are especially important and therefore receive a special outline in a unique color. The colored outline can be set with CSS-variables.
2022-04-25 07:23:23 +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
Phil-Ah
81891051a4 Fix media-query to keep white space between button group and border (#2006)
Fix media queries to ensure that layout wraps consistently. Resolves #2005
2022-04-20 16:27:01 +02:00
Eduard Heimbuch
c8207d89da Fix routing for entity names with parenthesis (#1998)
If entities like users, groups or repository namespaces contains parenthesis the frontend router gets confused and doesn't work properly. To fix this issue we escape the chars in the url which may cause such problems because they are reserved by the http url schema.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
Co-authored-by: Florian Scholdei <florian.scholdei@cloudogu.com>
2022-04-13 13:06:02 +02:00
Matthias Thieroff
f34c794308 Avoid unnecessary re-rendering of markdown view (#1999)
Avoid unnecessary re-rendering of markdown view which e.g. caused an embedded secure code warrior video to reload on every page interaction.

Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2022-04-12 19:21:16 +02:00
Matthias Thieroff
8fd6026396 Fix missing hash 2022-04-12 14:47:40 +02:00
Florian Scholdei
5eacb9da6a Small tweaks in darkmode (#1976)
* The scss variable $popover-border-color is now also used throughout the internal styles
* Derived css variable is exported only once
* Scss definitions are now organized and structured with descriptive comments
* Fix incorrect styling due to a too dark and at the same time very thick border in the CreateButton component
* Darken $border-light a little, so that it is not brighter than the border in dark mode
2022-04-12 12:45:23 +02:00
Phil-Ah
c265383f37 Enable wrapping of actions in code view table (#1995)
At certain screen sizes the table in code view breaks if more than one action is available in a row. The fix enables the list of actions to wrap if the table is displayed on smaller sizes.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
2022-04-11 16:47:32 +02:00
René Pfeuffer
d2e81ce121 Add cli commands for users and groups (#1993)
Adds cli commands to manage users and groups.

Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
2022-04-11 10:04:19 +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
Phil-Ah
b88435df84 hide wrong table head for mobile mode of public key table (#1990)
Change wording for table head for creation date (de/en)

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-04-06 14:56:08 +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
René Pfeuffer
07afe4b439 Fixes incorrect warning "could not set executable flag"
This warning was triggered, when the change was successful. Of course,
this should be the other way.
2022-04-01 11:29:03 +02:00
René Pfeuffer
de9984ae2c Do not process missing index types (#1985)
Fixes an error that arises, when a plugin with search
indices for repositories is removed and later on a repository
is deleted. This led to a null pointer exception in the
SearchableTypeResolver, but only because an "illegal" index
detail without proper type was given as a parameter. This
type cannot be resolved any longer due to the removed plugin.
We therefore can simply filter these index details.
2022-03-30 15:30:54 +02:00
Florian Scholdei
5505b3ce11 Correct styling of syntax highlighter .section elements (#1984)
Fixes styling of syntax highlighter .section elements which causes unsightly rendering due to a global definition by bulma.
2022-03-30 09:40:48 +02:00
René Pfeuffer
a28ca84f12 Adjust changelog for release 2.32.2 2022-03-23 16:23:42 +01:00
Konstantin Schaper
f7718b80e8 Fix plugin bundles being executed multiple times because of transient dependencies (#1980)
If a queued module is only removed from the queue upon successfully resolving all its dependencies,
it could fail multiple times, causing multiple entries to appear in the queue.
This in turn causes the module to get executed multiple times.
The solution is to immediately remove the module when it is dequeued.
If it fails again, it is then re-added to the queue.
2022-03-23 08:48:17 +01:00
René Pfeuffer
4bba593714 Remove plugin center login without url (#1978)
This removes the "login" button for the plugin center, when the authentication url is not set.
2022-03-21 08:21:36 +01:00
Eduard Heimbuch
9ec38a858d Handle ui test errors in Jenkins Pipeline (#1975)
Fix jenkins testing stage to not ignore test result. This led to different results between local builds and Jenkins builds which confused the developer and could hide implementation errors.
2022-03-17 09:13:51 +01:00
Florian Scholdei
a1133176c6 Hide plugin dependencies on uninstall (#1977)
When uninstalling a plugin, there should be no notification about installing or updating plugins.
2022-03-16 13:28:46 +01: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
Eduard Heimbuch
8cafb9e38f Branch details invalidation (#1973)
Fix branch details invalidation
2022-03-14 09:46:11 +01:00