From 2baa61eb095386c96ff09690711df26536ca516b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 13 Oct 2020 20:40:00 +0000 Subject: [PATCH 01/12] Bump junit from 4.13 to 4.13.1 Bumps [junit](https://github.com/junit-team/junit4) from 4.13 to 4.13.1. - [Release notes](https://github.com/junit-team/junit4/releases) - [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.13.1.md) - [Commits](https://github.com/junit-team/junit4/compare/r4.13...r4.13.1) Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 0a7d225c3b..506c11920f 100644 --- a/pom.xml +++ b/pom.xml @@ -429,7 +429,7 @@ junit junit - 4.13 + 4.13.1 test From e3cbdf6a930bbf6851dcc585b94e2ec6fe404ca3 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Tue, 13 Oct 2020 21:57:02 +0000 Subject: [PATCH 02/12] fix: pom.xml to reduce vulnerabilities The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JAVA-JUNIT-1017047 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 0a7d225c3b..506c11920f 100644 --- a/pom.xml +++ b/pom.xml @@ -429,7 +429,7 @@ junit junit - 4.13 + 4.13.1 test From 2c640009cce8f20c2de7f98aff2c339f108541f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Wed, 14 Oct 2020 08:34:32 +0200 Subject: [PATCH 03/12] Fix anonymous migration for deleted repositories --- CHANGELOG.md | 4 + .../repository/PublicFlagUpdateStep.java | 10 +- .../repository/PublicFlagUpdateStepTest.java | 117 ++++++++++-------- 3 files changed, 78 insertions(+), 53 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 97644147c9..e94d216088 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## Unreleased +### Fixed +- Null Pointer Exception on anonymous migration with deleted repositories ([#1371](https://github.com/scm-manager/scm-manager/pull/1371)) + ## [2.7.0] - 2020-10-12 ### Added - Users can create API keys with limited permissions ([#1359](https://github.com/scm-manager/scm-manager/pull/1359)) diff --git a/scm-webapp/src/main/java/sonia/scm/update/repository/PublicFlagUpdateStep.java b/scm-webapp/src/main/java/sonia/scm/update/repository/PublicFlagUpdateStep.java index 310ce25c5c..8a18442afa 100644 --- a/scm-webapp/src/main/java/sonia/scm/update/repository/PublicFlagUpdateStep.java +++ b/scm-webapp/src/main/java/sonia/scm/update/repository/PublicFlagUpdateStep.java @@ -21,7 +21,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ - + package sonia.scm.update.repository; import org.slf4j.Logger; @@ -89,9 +89,11 @@ public class PublicFlagUpdateStep implements UpdateStep { .filter(V1Repository::isPublic) .forEach(v1Repository -> { Repository v2Repository = repositoryDAO.get(v1Repository.getId()); - LOG.info(String.format("Add RepositoryRole 'READ' to _anonymous user for repository: %s - %s/%s", v2Repository.getId(), v2Repository.getNamespace(), v2Repository.getName())); - v2Repository.addPermission(new RepositoryPermission(v2AnonymousUser.getId(), "READ", false)); - repositoryDAO.modify(v2Repository); + if (v2Repository != null) { + LOG.info(String.format("Add RepositoryRole 'READ' to _anonymous user for repository: %s - %s/%s", v2Repository.getId(), v2Repository.getNamespace(), v2Repository.getName())); + v2Repository.addPermission(new RepositoryPermission(v2AnonymousUser.getId(), "READ", false)); + repositoryDAO.modify(v2Repository); + } }); } diff --git a/scm-webapp/src/test/java/sonia/scm/update/repository/PublicFlagUpdateStepTest.java b/scm-webapp/src/test/java/sonia/scm/update/repository/PublicFlagUpdateStepTest.java index 54c5460c6e..23eda6d38e 100644 --- a/scm-webapp/src/test/java/sonia/scm/update/repository/PublicFlagUpdateStepTest.java +++ b/scm-webapp/src/test/java/sonia/scm/update/repository/PublicFlagUpdateStepTest.java @@ -25,6 +25,7 @@ package sonia.scm.update.repository; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.junit.jupiter.api.io.TempDir; @@ -77,63 +78,81 @@ class PublicFlagUpdateStepTest { //prepare backup xml V1RepositoryFileSystem.createV1Home(tempDir); Files.move(tempDir.resolve("config").resolve("repositories.xml"), tempDir.resolve("config").resolve("repositories.xml.v1.backup")); - when(repositoryDAO.get((String) any())).thenReturn(REPOSITORY); } @Test - void shouldDeleteOldAnonymousUserIfExists() throws JAXBException { - User anonymous = new User("anonymous"); - when(userDAO.getAll()).thenReturn(Collections.singleton(anonymous)); - doReturn(anonymous).when(userDAO).get("anonymous"); - doReturn(SCMContext.ANONYMOUS).when(userDAO).get(SCMContext.USER_ANONYMOUS); - - updateStep.doUpdate(); - - verify(userDAO).delete(anonymous); - } - - @Test - void shouldNotTryToDeleteOldAnonymousUserIfNotExists() throws JAXBException { - when(userDAO.getAll()).thenReturn(Collections.emptyList()); - doReturn(SCMContext.ANONYMOUS).when(userDAO).get(SCMContext.USER_ANONYMOUS); - - updateStep.doUpdate(); - - verify(userDAO, never()).delete(any()); - } - - @Test - void shouldCreateNewAnonymousUserIfNotExists() throws JAXBException { - doReturn(SCMContext.ANONYMOUS).when(userDAO).get(SCMContext.USER_ANONYMOUS); - when(userDAO.getAll()).thenReturn(Collections.singleton(new User("trillian"))); - - updateStep.doUpdate(); - - verify(userDAO).add(SCMContext.ANONYMOUS); - } - - @Test - void shouldNotCreateNewAnonymousUserIfAlreadyExists() throws JAXBException { - doReturn(SCMContext.ANONYMOUS).when(userDAO).get(SCMContext.USER_ANONYMOUS); - when(userDAO.getAll()).thenReturn(Collections.singleton(new User("_anonymous"))); - - updateStep.doUpdate(); - - verify(userDAO, never()).add(SCMContext.ANONYMOUS); - } - - @Test - void shouldMigratePublicFlagToAnonymousRepositoryPermission() throws JAXBException { + void shouldNotFailForDeletedRepository() throws JAXBException { when(userDAO.getAll()).thenReturn(Collections.emptyList()); when(userDAO.get("_anonymous")).thenReturn(SCMContext.ANONYMOUS); updateStep.doUpdate(); - verify(repositoryDAO, times(2)).modify(repositoryCaptor.capture()); + verify(repositoryDAO, never()).modify(any()); + } - RepositoryPermission migratedRepositoryPermission = repositoryCaptor.getValue().getPermissions().iterator().next(); - assertThat(migratedRepositoryPermission.getName()).isEqualTo(SCMContext.USER_ANONYMOUS); - assertThat(migratedRepositoryPermission.getRole()).isEqualTo("READ"); - assertThat(migratedRepositoryPermission.isGroupPermission()).isFalse(); + @Nested + class WithExistingRepository { + + @BeforeEach + void mockRepository() { + when(repositoryDAO.get((String) any())).thenReturn(REPOSITORY); + } + + @Test + void shouldDeleteOldAnonymousUserIfExists() throws JAXBException { + User anonymous = new User("anonymous"); + when(userDAO.getAll()).thenReturn(Collections.singleton(anonymous)); + doReturn(anonymous).when(userDAO).get("anonymous"); + doReturn(SCMContext.ANONYMOUS).when(userDAO).get(SCMContext.USER_ANONYMOUS); + + updateStep.doUpdate(); + + verify(userDAO).delete(anonymous); + } + + @Test + void shouldNotTryToDeleteOldAnonymousUserIfNotExists() throws JAXBException { + when(userDAO.getAll()).thenReturn(Collections.emptyList()); + doReturn(SCMContext.ANONYMOUS).when(userDAO).get(SCMContext.USER_ANONYMOUS); + + updateStep.doUpdate(); + + verify(userDAO, never()).delete(any()); + } + + @Test + void shouldCreateNewAnonymousUserIfNotExists() throws JAXBException { + doReturn(SCMContext.ANONYMOUS).when(userDAO).get(SCMContext.USER_ANONYMOUS); + when(userDAO.getAll()).thenReturn(Collections.singleton(new User("trillian"))); + + updateStep.doUpdate(); + + verify(userDAO).add(SCMContext.ANONYMOUS); + } + + @Test + void shouldNotCreateNewAnonymousUserIfAlreadyExists() throws JAXBException { + doReturn(SCMContext.ANONYMOUS).when(userDAO).get(SCMContext.USER_ANONYMOUS); + when(userDAO.getAll()).thenReturn(Collections.singleton(new User("_anonymous"))); + + updateStep.doUpdate(); + + verify(userDAO, never()).add(SCMContext.ANONYMOUS); + } + + @Test + void shouldMigratePublicFlagToAnonymousRepositoryPermission() throws JAXBException { + when(userDAO.getAll()).thenReturn(Collections.emptyList()); + when(userDAO.get("_anonymous")).thenReturn(SCMContext.ANONYMOUS); + + updateStep.doUpdate(); + + verify(repositoryDAO, times(2)).modify(repositoryCaptor.capture()); + + RepositoryPermission migratedRepositoryPermission = repositoryCaptor.getValue().getPermissions().iterator().next(); + assertThat(migratedRepositoryPermission.getName()).isEqualTo(SCMContext.USER_ANONYMOUS); + assertThat(migratedRepositoryPermission.getRole()).isEqualTo("READ"); + assertThat(migratedRepositoryPermission.isGroupPermission()).isFalse(); + } } } From c9410a63929c0d4f90dc9ab17b101802019a65f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Wed, 14 Oct 2020 08:56:07 +0200 Subject: [PATCH 04/12] Add logging --- .../sonia/scm/update/repository/PublicFlagUpdateStep.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scm-webapp/src/main/java/sonia/scm/update/repository/PublicFlagUpdateStep.java b/scm-webapp/src/main/java/sonia/scm/update/repository/PublicFlagUpdateStep.java index 8a18442afa..e80fca770d 100644 --- a/scm-webapp/src/main/java/sonia/scm/update/repository/PublicFlagUpdateStep.java +++ b/scm-webapp/src/main/java/sonia/scm/update/repository/PublicFlagUpdateStep.java @@ -90,9 +90,11 @@ public class PublicFlagUpdateStep implements UpdateStep { .forEach(v1Repository -> { Repository v2Repository = repositoryDAO.get(v1Repository.getId()); if (v2Repository != null) { - LOG.info(String.format("Add RepositoryRole 'READ' to _anonymous user for repository: %s - %s/%s", v2Repository.getId(), v2Repository.getNamespace(), v2Repository.getName())); + LOG.info("Add RepositoryRole 'READ' to _anonymous user for repository: {} - {}/{}", v2Repository.getId(), v2Repository.getNamespace(), v2Repository.getName()); v2Repository.addPermission(new RepositoryPermission(v2AnonymousUser.getId(), "READ", false)); repositoryDAO.modify(v2Repository); + } else { + LOG.info("Repository no longer found for id {}; could not set permission for former anonymous mode", v1Repository.getId()); } }); } From d273b19f683adb8fc1ba8b966a46793a7ae1cdcf Mon Sep 17 00:00:00 2001 From: Eduard Heimbuch Date: Wed, 14 Oct 2020 10:47:03 +0200 Subject: [PATCH 05/12] add null check on parsing svn properties in browsecommand --- CHANGELOG.md | 1 + .../scm/repository/spi/SvnBrowseCommand.java | 33 +++++++++++-------- 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e94d216088..e14e58db6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased ### Fixed - Null Pointer Exception on anonymous migration with deleted repositories ([#1371](https://github.com/scm-manager/scm-manager/pull/1371)) +- Null Pointer Exception on parsing SVN properties ([#1373](https://github.com/scm-manager/scm-manager/pull/1373)) ## [2.7.0] - 2020-10-12 ### Added diff --git a/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SvnBrowseCommand.java b/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SvnBrowseCommand.java index 00a135dd82..e83a0dc365 100644 --- a/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SvnBrowseCommand.java +++ b/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SvnBrowseCommand.java @@ -193,23 +193,28 @@ public class SvnBrowseCommand extends AbstractSvnCommand repository.getDir(entry.getRelativePath(), revision, properties, (Collection) null); - String[] externals = properties.getStringValue(SVNProperty.EXTERNALS).split("\\r?\\n"); - for (String external : externals) { - String subRepoUrl = ""; - String subRepoPath = ""; - for (String externalPart : external.split(" ")) { - if (shouldSetExternal(externalPart)) { - subRepoUrl = externalPart; - } else if (!externalPart.contains("-r")) { - subRepoPath = externalPart; + String externals = properties.getStringValue(SVNProperty.EXTERNALS); + + if (!Strings.isNullOrEmpty(externals)) { + String[] splitExternals = externals.split("\\r?\\n"); + for (String external : splitExternals) { + String subRepoUrl = ""; + String subRepoPath = ""; + for (String externalPart : external.split(" ")) { + if (shouldSetExternal(externalPart)) { + subRepoUrl = externalPart; + } else if (!externalPart.contains("-r")) { + subRepoPath = externalPart; + } + } + + if (Util.isNotEmpty(external)) { + SubRepository subRepository = new SubRepository(subRepoUrl); + fileObject.addChild(createSubRepoDirectory(subRepository, subRepoPath)); } } - - if (Util.isNotEmpty(external)) { - SubRepository subRepository = new SubRepository(subRepoUrl); - fileObject.addChild(createSubRepoDirectory(subRepository, subRepoPath)); - } } + } catch (SVNException ex) { logger.error("could not fetch file properties", ex); } From 07a85ef9c16b5e0e0d23d1f1bbbc9c7fd4ddf827 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Wed, 14 Oct 2020 11:03:42 +0200 Subject: [PATCH 06/12] Check token content before handling them This adds plausibility checks before handling tokens as for example jwt or api keys. Doing so we generate less error logs and therefore we cause less confusion. --- CHANGELOG.md | 2 ++ .../java/sonia/scm/security/ApiKeyRealm.java | 13 ++++++++++++- .../java/sonia/scm/security/BearerRealm.java | 17 +++++++++++++++-- .../scm/web/security/TokenRefreshFilter.java | 6 +++++- .../sonia/scm/security/ApiKeyRealmTest.java | 9 +++++++++ .../scm/security/ApiKeyTokenHandlerTest.java | 7 +++++++ .../sonia/scm/security/BearerRealmTest.java | 10 ++++++++++ .../web/security/TokenRefreshFilterTest.java | 11 ++++++++--- 8 files changed, 68 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e94d216088..314f94b374 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased ### Fixed - Null Pointer Exception on anonymous migration with deleted repositories ([#1371](https://github.com/scm-manager/scm-manager/pull/1371)) +### Changed +- Reduced logging for invalid JWT or api keys ([#1374](https://github.com/scm-manager/scm-manager/pull/1374)) ## [2.7.0] - 2020-10-12 ### Added diff --git a/scm-webapp/src/main/java/sonia/scm/security/ApiKeyRealm.java b/scm-webapp/src/main/java/sonia/scm/security/ApiKeyRealm.java index ed2954eb32..d9c1536e0e 100644 --- a/scm-webapp/src/main/java/sonia/scm/security/ApiKeyRealm.java +++ b/scm-webapp/src/main/java/sonia/scm/security/ApiKeyRealm.java @@ -30,6 +30,8 @@ import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.authc.credential.AllowAllCredentialsMatcher; import org.apache.shiro.authz.AuthorizationException; import org.apache.shiro.realm.AuthenticatingRealm; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import sonia.scm.plugin.Extension; import sonia.scm.repository.RepositoryRole; import sonia.scm.repository.RepositoryRoleManager; @@ -43,6 +45,8 @@ import static com.google.common.base.Preconditions.checkArgument; @Extension public class ApiKeyRealm extends AuthenticatingRealm { + private static final Logger LOG = LoggerFactory.getLogger(ApiKeyRealm.class); + private final ApiKeyService apiKeyService; private final DAORealmHelper helper; private final RepositoryRoleManager repositoryRoleManager; @@ -58,7 +62,14 @@ public class ApiKeyRealm extends AuthenticatingRealm { @Override public boolean supports(AuthenticationToken token) { - return token instanceof UsernamePasswordToken || token instanceof BearerToken; + if (token instanceof UsernamePasswordToken || token instanceof BearerToken) { + boolean containsDot = getPassword(token).contains("."); + if (containsDot) { + LOG.debug("Ignoring token with at least one dot ('.'); this is probably a JWT token"); + } + return !containsDot; + } + return false; } @Override diff --git a/scm-webapp/src/main/java/sonia/scm/security/BearerRealm.java b/scm-webapp/src/main/java/sonia/scm/security/BearerRealm.java index e037590db6..f554c92d04 100644 --- a/scm-webapp/src/main/java/sonia/scm/security/BearerRealm.java +++ b/scm-webapp/src/main/java/sonia/scm/security/BearerRealm.java @@ -21,7 +21,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ - + package sonia.scm.security; import com.google.common.annotations.VisibleForTesting; @@ -29,6 +29,8 @@ import org.apache.shiro.authc.AuthenticationInfo; import org.apache.shiro.authc.AuthenticationToken; import org.apache.shiro.authc.credential.AllowAllCredentialsMatcher; import org.apache.shiro.realm.AuthenticatingRealm; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import sonia.scm.group.GroupDAO; import sonia.scm.plugin.Extension; import sonia.scm.user.UserDAO; @@ -54,6 +56,7 @@ public class BearerRealm extends AuthenticatingRealm @VisibleForTesting static final String REALM = "BearerRealm"; + private static final Logger LOG = LoggerFactory.getLogger(BearerRealm.class); /** dao realm helper */ private final DAORealmHelper helper; @@ -76,7 +79,17 @@ public class BearerRealm extends AuthenticatingRealm setAuthenticationTokenClass(BearerToken.class); } - //~--- methods -------------------------------------------------------------- + @Override + public boolean supports(AuthenticationToken token) { + if (token instanceof BearerToken) { + boolean containsDot = ((BearerToken) token).getCredentials().contains("."); + if (!containsDot) { + LOG.debug("Ignoring token without a dot ('.'); this probably is an API key"); + } + return containsDot; + } + return false; + } /** * Validates the given bearer token and retrieves authentication data from diff --git a/scm-webapp/src/main/java/sonia/scm/web/security/TokenRefreshFilter.java b/scm-webapp/src/main/java/sonia/scm/web/security/TokenRefreshFilter.java index 47da2d5718..be691da1d8 100644 --- a/scm-webapp/src/main/java/sonia/scm/web/security/TokenRefreshFilter.java +++ b/scm-webapp/src/main/java/sonia/scm/web/security/TokenRefreshFilter.java @@ -21,7 +21,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ - + package sonia.scm.web.security; import org.apache.shiro.authc.AuthenticationException; @@ -90,6 +90,10 @@ public class TokenRefreshFilter extends HttpFilter { private void examineToken(HttpServletRequest request, HttpServletResponse response, BearerToken token) { AccessToken accessToken; + if (!token.getCredentials().contains(".")) { + LOG.trace("Ignoring token without dot. This probably is an API key, no JWT"); + return; + } try { accessToken = resolver.resolve(token); } catch (AuthenticationException e) { diff --git a/scm-webapp/src/test/java/sonia/scm/security/ApiKeyRealmTest.java b/scm-webapp/src/test/java/sonia/scm/security/ApiKeyRealmTest.java index 48a014dfb2..0f4171b8d9 100644 --- a/scm-webapp/src/test/java/sonia/scm/security/ApiKeyRealmTest.java +++ b/scm-webapp/src/test/java/sonia/scm/security/ApiKeyRealmTest.java @@ -96,6 +96,15 @@ class ApiKeyRealmTest { assertThrows(AuthorizationException.class, () -> realm.doGetAuthenticationInfo(token)); } + @Test + void shouldIgnoreTokensWithDots() { + BearerToken token = valueOf("this.is.no.api.token"); + + boolean supports = realm.supports(token); + + assertThat(supports).isFalse(); + } + void verifyScopeSet(String... permissions) { verify(authenticationInfoBuilder).withScope(argThat(scope -> { assertThat(scope).containsExactly(permissions); diff --git a/scm-webapp/src/test/java/sonia/scm/security/ApiKeyTokenHandlerTest.java b/scm-webapp/src/test/java/sonia/scm/security/ApiKeyTokenHandlerTest.java index 390d5e6ba2..151d3e2c10 100644 --- a/scm-webapp/src/test/java/sonia/scm/security/ApiKeyTokenHandlerTest.java +++ b/scm-webapp/src/test/java/sonia/scm/security/ApiKeyTokenHandlerTest.java @@ -61,4 +61,11 @@ class ApiKeyTokenHandlerTest { assertThat(token).isEmpty(); } + + @Test + void shouldParseRealWorldExample() { + Optional token = handler.readToken("JhcGlLZXlJZCI6IkE2U0ROWmV0MjEiLCJ1c2VyIjoiaG9yc3QiLCJwYXNzcGhyYXNlIjoiWGNKQ01PMnZuZ1JaOEhVU21BSVoifQ"); + + assertThat(token).get().extracting("user").isEqualTo("horst"); + } } diff --git a/scm-webapp/src/test/java/sonia/scm/security/BearerRealmTest.java b/scm-webapp/src/test/java/sonia/scm/security/BearerRealmTest.java index c0ac82b7f6..c9d834cdbc 100644 --- a/scm-webapp/src/test/java/sonia/scm/security/BearerRealmTest.java +++ b/scm-webapp/src/test/java/sonia/scm/security/BearerRealmTest.java @@ -40,6 +40,7 @@ import static org.junit.jupiter.api.Assertions.assertThrows; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; +import static sonia.scm.security.BearerToken.valueOf; /** * Unit tests for {@link BearerRealm}. @@ -96,4 +97,13 @@ class BearerRealmTest { void shouldThrowIllegalArgumentExceptionForWrongTypeOfToken() { assertThrows(IllegalArgumentException.class, () -> realm.doGetAuthenticationInfo(new UsernamePasswordToken())); } + + @Test + void shouldIgnoreTokensWithoutDot() { + BearerToken token = valueOf("this-is-no-jwt-token"); + + boolean supports = realm.supports(token); + + assertThat(supports).isFalse(); + } } diff --git a/scm-webapp/src/test/java/sonia/scm/web/security/TokenRefreshFilterTest.java b/scm-webapp/src/test/java/sonia/scm/web/security/TokenRefreshFilterTest.java index d74a5eef7f..410eb1f368 100644 --- a/scm-webapp/src/test/java/sonia/scm/web/security/TokenRefreshFilterTest.java +++ b/scm-webapp/src/test/java/sonia/scm/web/security/TokenRefreshFilterTest.java @@ -21,7 +21,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ - + package sonia.scm.web.security; import org.apache.shiro.authc.AuthenticationToken; @@ -52,6 +52,7 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; +import static sonia.scm.security.BearerToken.valueOf; @ExtendWith({MockitoExtension.class}) class TokenRefreshFilterTest { @@ -103,7 +104,7 @@ class TokenRefreshFilterTest { @Test void shouldNotRefreshNonJwtToken() throws IOException, ServletException { - BearerToken token = mock(BearerToken.class); + BearerToken token = createValidToken(); JwtAccessToken jwtToken = mock(JwtAccessToken.class); when(tokenGenerator.createToken(request)).thenReturn(token); when(resolver.resolve(token)).thenReturn(jwtToken); @@ -116,7 +117,7 @@ class TokenRefreshFilterTest { @Test void shouldRefreshIfRefreshable() throws IOException, ServletException { - BearerToken token = mock(BearerToken.class); + BearerToken token = createValidToken(); JwtAccessToken jwtToken = mock(JwtAccessToken.class); JwtAccessToken newJwtToken = mock(JwtAccessToken.class); when(tokenGenerator.createToken(request)).thenReturn(token); @@ -128,4 +129,8 @@ class TokenRefreshFilterTest { verify(issuer).authenticate(request, response, newJwtToken); verify(filterChain).doFilter(request, response); } + + BearerToken createValidToken() { + return valueOf("some.jwt.token"); + } } From f35fddc505f80468fee8163d44c3d4317a311cfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Wed, 14 Oct 2020 11:28:21 +0200 Subject: [PATCH 07/12] Add debug log for successful login --- scm-webapp/src/main/java/sonia/scm/security/ApiKeyRealm.java | 1 + 1 file changed, 1 insertion(+) diff --git a/scm-webapp/src/main/java/sonia/scm/security/ApiKeyRealm.java b/scm-webapp/src/main/java/sonia/scm/security/ApiKeyRealm.java index d9c1536e0e..672f972dab 100644 --- a/scm-webapp/src/main/java/sonia/scm/security/ApiKeyRealm.java +++ b/scm-webapp/src/main/java/sonia/scm/security/ApiKeyRealm.java @@ -85,6 +85,7 @@ public class ApiKeyRealm extends AuthenticatingRealm { private AuthenticationInfo buildAuthenticationInfo(AuthenticationToken token, ApiKeyService.CheckResult check) { RepositoryRole repositoryRole = determineRole(check); Scope scope = createScope(repositoryRole); + LOG.debug("login for user {} with api key limited to role {}", check.getUser(), check.getPermissionRole()); return helper .authenticationInfoBuilder(check.getUser()) .withSessionId(getPrincipal(token)) From ab6e5fd6d6ff0547b5cd52674f4b288f46f0a23b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Wed, 14 Oct 2020 11:43:47 +0200 Subject: [PATCH 08/12] Fix unit test --- .../test/java/sonia/scm/security/ApiKeyTokenHandlerTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scm-webapp/src/test/java/sonia/scm/security/ApiKeyTokenHandlerTest.java b/scm-webapp/src/test/java/sonia/scm/security/ApiKeyTokenHandlerTest.java index 151d3e2c10..ac0ee44040 100644 --- a/scm-webapp/src/test/java/sonia/scm/security/ApiKeyTokenHandlerTest.java +++ b/scm-webapp/src/test/java/sonia/scm/security/ApiKeyTokenHandlerTest.java @@ -64,7 +64,7 @@ class ApiKeyTokenHandlerTest { @Test void shouldParseRealWorldExample() { - Optional token = handler.readToken("JhcGlLZXlJZCI6IkE2U0ROWmV0MjEiLCJ1c2VyIjoiaG9yc3QiLCJwYXNzcGhyYXNlIjoiWGNKQ01PMnZuZ1JaOEhVU21BSVoifQ"); + Optional token = handler.readToken("eyJhcGlLZXlJZCI6IkE2U0ROWmV0MjEiLCJ1c2VyIjoiaG9yc3QiLCJwYXNzcGhyYXNlIjoiWGNKQ01PMnZuZ1JaOEhVU21BSVoifQ"); assertThat(token).get().extracting("user").isEqualTo("horst"); } From 0847a3eda0a94873848c592a3abc531ff2f6f159 Mon Sep 17 00:00:00 2001 From: Eduard Heimbuch Date: Wed, 14 Oct 2020 12:02:05 +0200 Subject: [PATCH 09/12] add unit tests --- .../spi/AbstractSvnCommandTestBase.java | 4 +- .../repository/spi/SvnBrowseCommandTest.java | 67 ++++++++++++++++--- 2 files changed, 57 insertions(+), 14 deletions(-) diff --git a/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/AbstractSvnCommandTestBase.java b/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/AbstractSvnCommandTestBase.java index b6d9e4ba26..8228d42f39 100644 --- a/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/AbstractSvnCommandTestBase.java +++ b/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/AbstractSvnCommandTestBase.java @@ -21,15 +21,13 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ - + package sonia.scm.repository.spi; //~--- non-JDK imports -------------------------------------------------------- import org.junit.After; -//~--- JDK imports ------------------------------------------------------------ - import java.io.IOException; /** diff --git a/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/SvnBrowseCommandTest.java b/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/SvnBrowseCommandTest.java index 3d3a3131e5..698fec8f37 100644 --- a/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/SvnBrowseCommandTest.java +++ b/scm-plugins/scm-svn-plugin/src/test/java/sonia/scm/repository/spi/SvnBrowseCommandTest.java @@ -24,10 +24,20 @@ package sonia.scm.repository.spi; +import org.junit.Rule; import org.junit.Test; +import org.junit.rules.TemporaryFolder; +import org.tmatesoft.svn.core.SVNDepth; +import org.tmatesoft.svn.core.SVNException; +import org.tmatesoft.svn.core.SVNPropertyValue; +import org.tmatesoft.svn.core.SVNURL; +import org.tmatesoft.svn.core.wc.SVNClientManager; +import org.tmatesoft.svn.core.wc.SVNRevision; import sonia.scm.repository.BrowserResult; import sonia.scm.repository.FileObject; +import sonia.scm.repository.SubRepository; +import java.io.File; import java.io.IOException; import java.util.Collection; import java.util.Iterator; @@ -36,14 +46,16 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; /** - * * @author Sebastian Sdorra */ -public class SvnBrowseCommandTest extends AbstractSvnCommandTestBase -{ +public class SvnBrowseCommandTest extends AbstractSvnCommandTestBase { + + @Rule + public TemporaryFolder temporaryFolder = new TemporaryFolder(); @Test public void testBrowseWithFilePath() { @@ -83,7 +95,6 @@ public class SvnBrowseCommandTest extends AbstractSvnCommandTestBase /** * Method description * - * * @throws IOException */ @Test @@ -260,14 +271,51 @@ public class SvnBrowseCommandTest extends AbstractSvnCommandTestBase .containsExactly("e.txt"); } + @Test + public void shouldNotAddSubRepositoryIfNotSetInProperties() { + BrowserResult browserResult = new SvnBrowseCommand(createContext()).getBrowserResult(new BrowseCommandRequest()); + + boolean containsSubRepository = browserResult.getFile().getChildren() + .stream() + .anyMatch(c -> c.getSubRepository() != null); + + assertFalse(containsSubRepository); + } + + @Test + public void shouldAddSubRepositoryIfSetInProperties() throws IOException, SVNException { + String externalLink = "https://scm-manager.org/svn-repo"; + SvnContext svnContext = setProp("svn:externals", "external -r1 " + externalLink); + + BrowserResult browserResult = new SvnBrowseCommand(svnContext).getBrowserResult(new BrowseCommandRequest()); + + boolean containsSubRepository = browserResult.getFile().getChildren() + .stream() + .anyMatch(c -> c.getSubRepository().getRepositoryUrl().equals(externalLink)); + + assertTrue(containsSubRepository); + } + + private SvnContext setProp(String propName, String propValue) throws SVNException, IOException { + SvnContext context = createContext(); + SVNClientManager client = SVNClientManager.newInstance(); + + File workingCopyDirectory = temporaryFolder.newFolder("working-copy"); + + SVNURL url = SVNURL.fromFile(context.getDirectory()); + client.getUpdateClient().doCheckout(url, workingCopyDirectory, SVNRevision.HEAD, SVNRevision.HEAD, SVNDepth.INFINITY, true); + + client.getWCClient().doSetProperty(workingCopyDirectory, propName, SVNPropertyValue.create(propValue), true, SVNDepth.UNKNOWN, null, null); + client.getCommitClient().doCommit(new File[]{workingCopyDirectory}, false, "set prop", null, null, false, false, SVNDepth.UNKNOWN); + return context; + } + /** * Method description * - * * @return */ - private SvnBrowseCommand createCommand() - { + private SvnBrowseCommand createCommand() { return new SvnBrowseCommand(createContext()); } @@ -276,14 +324,11 @@ public class SvnBrowseCommandTest extends AbstractSvnCommandTestBase /** * Method description * - * * @param foList * @param name - * * @return */ - private FileObject getFileObject(Collection foList, String name) - { + private FileObject getFileObject(Collection foList, String name) { return foList.stream() .filter(f -> name.equals(f.getName())) .findFirst() From fbffdea2a566dc4ac54ea38d4aade5aaf541e7f2 Mon Sep 17 00:00:00 2001 From: Eduard Heimbuch Date: Wed, 14 Oct 2020 13:57:39 +0200 Subject: [PATCH 10/12] Adjust changelog for release 2.7.1 --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index de732d6da1..148eb799f3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## Unreleased +## [2.7.1] - 2020-10-14 ### Fixed - Null Pointer Exception on anonymous migration with deleted repositories ([#1371](https://github.com/scm-manager/scm-manager/pull/1371)) - Null Pointer Exception on parsing SVN properties ([#1373](https://github.com/scm-manager/scm-manager/pull/1373)) From eb126a5bbe2a43d63fce3fead8ddaaaa9da39a77 Mon Sep 17 00:00:00 2001 From: CES Marvin Date: Wed, 14 Oct 2020 12:03:24 +0000 Subject: [PATCH 11/12] release version 2.7.1 --- lerna.json | 2 +- pom.xml | 2 +- scm-annotation-processor/pom.xml | 6 ++--- scm-annotations/pom.xml | 4 +-- scm-core/pom.xml | 8 +++--- scm-dao-xml/pom.xml | 8 +++--- scm-it/pom.xml | 20 +++++++------- scm-packaging/deb/pom.xml | 6 ++--- scm-packaging/docker/pom.xml | 4 +-- scm-packaging/helm/pom.xml | 4 +-- scm-packaging/pom.xml | 4 +-- scm-packaging/release-yaml/pom.xml | 4 +-- scm-packaging/rpm/pom.xml | 6 ++--- scm-packaging/unix/pom.xml | 4 +-- scm-packaging/windows/pom.xml | 4 +-- scm-plugins/pom.xml | 10 +++---- scm-plugins/scm-git-plugin/package.json | 4 +-- scm-plugins/scm-git-plugin/pom.xml | 2 +- scm-plugins/scm-hg-plugin/package.json | 4 +-- scm-plugins/scm-hg-plugin/pom.xml | 2 +- .../scm-integration-test-plugin/pom.xml | 4 +-- scm-plugins/scm-legacy-plugin/package.json | 4 +-- scm-plugins/scm-legacy-plugin/pom.xml | 4 +-- scm-plugins/scm-svn-plugin/package.json | 4 +-- scm-plugins/scm-svn-plugin/pom.xml | 2 +- scm-server/pom.xml | 4 +-- scm-test/pom.xml | 6 ++--- scm-ui/babel-preset/package.json | 2 +- scm-ui/e2e-tests/package.json | 2 +- scm-ui/eslint-config/package.json | 2 +- scm-ui/jest-preset/package.json | 2 +- scm-ui/pom.xml | 4 +-- scm-ui/prettier-config/package.json | 2 +- scm-ui/tsconfig/package.json | 2 +- scm-ui/ui-components/package.json | 8 +++--- scm-ui/ui-extensions/package.json | 2 +- scm-ui/ui-plugins/package.json | 22 ++++++++-------- scm-ui/ui-polyfill/package.json | 2 +- scm-ui/ui-scripts/package.json | 2 +- scm-ui/ui-styles/package.json | 2 +- scm-ui/ui-tests/package.json | 2 +- scm-ui/ui-types/package.json | 2 +- scm-ui/ui-webapp/package.json | 8 +++--- scm-webapp/pom.xml | 26 +++++++++---------- 44 files changed, 114 insertions(+), 114 deletions(-) diff --git a/lerna.json b/lerna.json index 2eb3066367..848b7032b3 100644 --- a/lerna.json +++ b/lerna.json @@ -5,5 +5,5 @@ ], "npmClient": "yarn", "useWorkspaces": true, - "version": "2.8.0-SNAPSHOT" + "version": "2.7.1" } diff --git a/pom.xml b/pom.xml index 506c11920f..96f8d3766f 100644 --- a/pom.xml +++ b/pom.xml @@ -32,7 +32,7 @@ sonia.scm scm pom - 2.8.0-SNAPSHOT + 2.7.1 The easiest way to share your Git, Mercurial and Subversion repositories. diff --git a/scm-annotation-processor/pom.xml b/scm-annotation-processor/pom.xml index 28702106db..b75f79c6d8 100644 --- a/scm-annotation-processor/pom.xml +++ b/scm-annotation-processor/pom.xml @@ -31,12 +31,12 @@ sonia.scm scm - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm scm-annotation-processor - 2.8.0-SNAPSHOT + 2.7.1 scm-annotation-processor @@ -46,7 +46,7 @@ sonia.scm scm-annotations - 2.8.0-SNAPSHOT + 2.7.1 diff --git a/scm-annotations/pom.xml b/scm-annotations/pom.xml index f48c2dfb58..719c61e57d 100644 --- a/scm-annotations/pom.xml +++ b/scm-annotations/pom.xml @@ -31,11 +31,11 @@ sonia.scm scm - 2.8.0-SNAPSHOT + 2.7.1 scm-annotations - 2.8.0-SNAPSHOT + 2.7.1 scm-annotations diff --git a/scm-core/pom.xml b/scm-core/pom.xml index e6b41a4e6c..d17664f51b 100644 --- a/scm-core/pom.xml +++ b/scm-core/pom.xml @@ -31,11 +31,11 @@ scm sonia.scm - 2.8.0-SNAPSHOT + 2.7.1 scm-core - 2.8.0-SNAPSHOT + 2.7.1 scm-core @@ -54,7 +54,7 @@ sonia.scm scm-annotations - 2.8.0-SNAPSHOT + 2.7.1 @@ -227,7 +227,7 @@ sonia.scm scm-annotation-processor - 2.8.0-SNAPSHOT + 2.7.1 provided diff --git a/scm-dao-xml/pom.xml b/scm-dao-xml/pom.xml index 25231dc4e7..00a35cfb16 100644 --- a/scm-dao-xml/pom.xml +++ b/scm-dao-xml/pom.xml @@ -31,11 +31,11 @@ sonia.scm scm - 2.8.0-SNAPSHOT + 2.7.1 scm-dao-xml - 2.8.0-SNAPSHOT + 2.7.1 scm-dao-xml @@ -50,7 +50,7 @@ sonia.scm scm-core - 2.8.0-SNAPSHOT + 2.7.1 @@ -58,7 +58,7 @@ sonia.scm scm-test - 2.8.0-SNAPSHOT + 2.7.1 test diff --git a/scm-it/pom.xml b/scm-it/pom.xml index ff9a7d87f8..782d092fe6 100644 --- a/scm-it/pom.xml +++ b/scm-it/pom.xml @@ -31,40 +31,40 @@ sonia.scm scm - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm scm-it war - 2.8.0-SNAPSHOT + 2.7.1 scm-it sonia.scm scm-core - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm scm-test - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm.plugins scm-git-plugin - 2.8.0-SNAPSHOT + 2.7.1 test sonia.scm.plugins scm-git-plugin - 2.8.0-SNAPSHOT + 2.7.1 tests test @@ -72,14 +72,14 @@ sonia.scm.plugins scm-hg-plugin - 2.8.0-SNAPSHOT + 2.7.1 test sonia.scm.plugins scm-hg-plugin - 2.8.0-SNAPSHOT + 2.7.1 tests test @@ -87,14 +87,14 @@ sonia.scm.plugins scm-svn-plugin - 2.8.0-SNAPSHOT + 2.7.1 test sonia.scm.plugins scm-svn-plugin - 2.8.0-SNAPSHOT + 2.7.1 tests test diff --git a/scm-packaging/deb/pom.xml b/scm-packaging/deb/pom.xml index 6f0657736f..5ec93a2ed1 100644 --- a/scm-packaging/deb/pom.xml +++ b/scm-packaging/deb/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.8.0-SNAPSHOT + 2.7.1 deb deb - 2.8.0-SNAPSHOT + 2.7.1 Packaging for Debian/Ubuntu deb @@ -46,7 +46,7 @@ sonia.scm scm-server - 2.8.0-SNAPSHOT + 2.7.1 diff --git a/scm-packaging/docker/pom.xml b/scm-packaging/docker/pom.xml index 941a5c1516..a55a0bd42a 100644 --- a/scm-packaging/docker/pom.xml +++ b/scm-packaging/docker/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.8.0-SNAPSHOT + 2.7.1 docker pom - 2.8.0-SNAPSHOT + 2.7.1 diff --git a/scm-packaging/helm/pom.xml b/scm-packaging/helm/pom.xml index 5ad0cf6fd3..389a88c3e5 100644 --- a/scm-packaging/helm/pom.xml +++ b/scm-packaging/helm/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.8.0-SNAPSHOT + 2.7.1 helm helm - 2.8.0-SNAPSHOT + 2.7.1 3.2.1 diff --git a/scm-packaging/pom.xml b/scm-packaging/pom.xml index 300f088af6..60208278e1 100644 --- a/scm-packaging/pom.xml +++ b/scm-packaging/pom.xml @@ -31,13 +31,13 @@ sonia.scm scm - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm.packaging scm-packaging pom - 2.8.0-SNAPSHOT + 2.7.1 packages.scm-manager.org diff --git a/scm-packaging/release-yaml/pom.xml b/scm-packaging/release-yaml/pom.xml index 27c2731b87..0283d8ed2a 100644 --- a/scm-packaging/release-yaml/pom.xml +++ b/scm-packaging/release-yaml/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.8.0-SNAPSHOT + 2.7.1 release-yaml pom - 2.8.0-SNAPSHOT + 2.7.1 diff --git a/scm-packaging/rpm/pom.xml b/scm-packaging/rpm/pom.xml index fee0719a8d..d2d316030b 100644 --- a/scm-packaging/rpm/pom.xml +++ b/scm-packaging/rpm/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.8.0-SNAPSHOT + 2.7.1 rpm rpm - 2.8.0-SNAPSHOT + 2.7.1 Packaging for RedHat/Centos/Fedora rpm @@ -52,7 +52,7 @@ sonia.scm scm-server - 2.8.0-SNAPSHOT + 2.7.1 diff --git a/scm-packaging/unix/pom.xml b/scm-packaging/unix/pom.xml index 5cd9e36a97..f74fcdc3df 100644 --- a/scm-packaging/unix/pom.xml +++ b/scm-packaging/unix/pom.xml @@ -31,12 +31,12 @@ sonia.scm.packaging scm-packaging - 2.8.0-SNAPSHOT + 2.7.1 unix pom - 2.8.0-SNAPSHOT + 2.7.1 diff --git a/scm-packaging/windows/pom.xml b/scm-packaging/windows/pom.xml index 593c17a151..22211c8fc6 100644 --- a/scm-packaging/windows/pom.xml +++ b/scm-packaging/windows/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.8.0-SNAPSHOT + 2.7.1 windows pom - 2.8.0-SNAPSHOT + 2.7.1 diff --git a/scm-plugins/pom.xml b/scm-plugins/pom.xml index 24e002fc17..e5de4992e5 100644 --- a/scm-plugins/pom.xml +++ b/scm-plugins/pom.xml @@ -31,13 +31,13 @@ sonia.scm scm - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm.plugins scm-plugins pom - 2.8.0-SNAPSHOT + 2.7.1 scm-plugins @@ -60,7 +60,7 @@ sonia.scm scm-core - 2.8.0-SNAPSHOT + 2.7.1 provided @@ -69,7 +69,7 @@ sonia.scm scm-annotation-processor - 2.8.0-SNAPSHOT + 2.7.1 provided @@ -99,7 +99,7 @@ sonia.scm scm-test - 2.8.0-SNAPSHOT + 2.7.1 test diff --git a/scm-plugins/scm-git-plugin/package.json b/scm-plugins/scm-git-plugin/package.json index 1e61547668..69d77cb454 100644 --- a/scm-plugins/scm-git-plugin/package.json +++ b/scm-plugins/scm-git-plugin/package.json @@ -1,7 +1,7 @@ { "name": "@scm-manager/scm-git-plugin", "private": true, - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "license": "MIT", "main": "./src/main/js/index.ts", "scripts": { @@ -20,6 +20,6 @@ }, "prettier": "@scm-manager/prettier-config", "dependencies": { - "@scm-manager/ui-plugins": "^2.8.0-SNAPSHOT" + "@scm-manager/ui-plugins": "^2.7.1" } } diff --git a/scm-plugins/scm-git-plugin/pom.xml b/scm-plugins/scm-git-plugin/pom.xml index d1d18f1329..bc8b579f3d 100644 --- a/scm-plugins/scm-git-plugin/pom.xml +++ b/scm-plugins/scm-git-plugin/pom.xml @@ -31,7 +31,7 @@ scm-plugins sonia.scm.plugins - 2.8.0-SNAPSHOT + 2.7.1 scm-git-plugin diff --git a/scm-plugins/scm-hg-plugin/package.json b/scm-plugins/scm-hg-plugin/package.json index 6683453f24..410e9c7a58 100644 --- a/scm-plugins/scm-hg-plugin/package.json +++ b/scm-plugins/scm-hg-plugin/package.json @@ -1,7 +1,7 @@ { "name": "@scm-manager/scm-hg-plugin", "private": true, - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "license": "MIT", "main": "./src/main/js/index.ts", "scripts": { @@ -19,6 +19,6 @@ }, "prettier": "@scm-manager/prettier-config", "dependencies": { - "@scm-manager/ui-plugins": "^2.8.0-SNAPSHOT" + "@scm-manager/ui-plugins": "^2.7.1" } } diff --git a/scm-plugins/scm-hg-plugin/pom.xml b/scm-plugins/scm-hg-plugin/pom.xml index 0a03731bd3..18ac32897f 100644 --- a/scm-plugins/scm-hg-plugin/pom.xml +++ b/scm-plugins/scm-hg-plugin/pom.xml @@ -31,7 +31,7 @@ sonia.scm.plugins scm-plugins - 2.8.0-SNAPSHOT + 2.7.1 scm-hg-plugin diff --git a/scm-plugins/scm-integration-test-plugin/pom.xml b/scm-plugins/scm-integration-test-plugin/pom.xml index 755348c9d7..5166e42524 100644 --- a/scm-plugins/scm-integration-test-plugin/pom.xml +++ b/scm-plugins/scm-integration-test-plugin/pom.xml @@ -29,12 +29,12 @@ sonia.scm.plugins scm-plugins - 2.8.0-SNAPSHOT + 2.7.1 scm-integration-test-plugin Add functions for integration tests. This is not intended for production systems. - 2.8.0-SNAPSHOT + 2.7.1 smp diff --git a/scm-plugins/scm-legacy-plugin/package.json b/scm-plugins/scm-legacy-plugin/package.json index 510cdae1a6..4b9fe6a6cc 100644 --- a/scm-plugins/scm-legacy-plugin/package.json +++ b/scm-plugins/scm-legacy-plugin/package.json @@ -1,7 +1,7 @@ { "name": "@scm-manager/scm-legacy-plugin", "private": true, - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "license": "MIT", "main": "./src/main/js/index.tsx", "scripts": { @@ -19,6 +19,6 @@ }, "prettier": "@scm-manager/prettier-config", "dependencies": { - "@scm-manager/ui-plugins": "^2.8.0-SNAPSHOT" + "@scm-manager/ui-plugins": "^2.7.1" } } diff --git a/scm-plugins/scm-legacy-plugin/pom.xml b/scm-plugins/scm-legacy-plugin/pom.xml index 51c7e718a0..6d85526ffb 100644 --- a/scm-plugins/scm-legacy-plugin/pom.xml +++ b/scm-plugins/scm-legacy-plugin/pom.xml @@ -29,12 +29,12 @@ sonia.scm.plugins scm-plugins - 2.8.0-SNAPSHOT + 2.7.1 scm-legacy-plugin Support migrated repository urls and v1 passwords - 2.8.0-SNAPSHOT + 2.7.1 smp diff --git a/scm-plugins/scm-svn-plugin/package.json b/scm-plugins/scm-svn-plugin/package.json index c0b0051b1e..d99381a930 100644 --- a/scm-plugins/scm-svn-plugin/package.json +++ b/scm-plugins/scm-svn-plugin/package.json @@ -1,7 +1,7 @@ { "name": "@scm-manager/scm-svn-plugin", "private": true, - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "license": "MIT", "main": "./src/main/js/index.ts", "scripts": { @@ -19,6 +19,6 @@ }, "prettier": "@scm-manager/prettier-config", "dependencies": { - "@scm-manager/ui-plugins": "^2.8.0-SNAPSHOT" + "@scm-manager/ui-plugins": "^2.7.1" } } diff --git a/scm-plugins/scm-svn-plugin/pom.xml b/scm-plugins/scm-svn-plugin/pom.xml index 26c16a221c..1fe6caf5c4 100644 --- a/scm-plugins/scm-svn-plugin/pom.xml +++ b/scm-plugins/scm-svn-plugin/pom.xml @@ -31,7 +31,7 @@ scm-plugins sonia.scm.plugins - 2.8.0-SNAPSHOT + 2.7.1 scm-svn-plugin diff --git a/scm-server/pom.xml b/scm-server/pom.xml index 5a10a9c098..530caabdc0 100644 --- a/scm-server/pom.xml +++ b/scm-server/pom.xml @@ -31,12 +31,12 @@ scm sonia.scm - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm scm-server - 2.8.0-SNAPSHOT + 2.7.1 scm-server jar diff --git a/scm-test/pom.xml b/scm-test/pom.xml index 0544a10524..0cb3be6409 100644 --- a/scm-test/pom.xml +++ b/scm-test/pom.xml @@ -31,12 +31,12 @@ scm sonia.scm - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm scm-test - 2.8.0-SNAPSHOT + 2.7.1 scm-test @@ -50,7 +50,7 @@ sonia.scm scm-core - 2.8.0-SNAPSHOT + 2.7.1 diff --git a/scm-ui/babel-preset/package.json b/scm-ui/babel-preset/package.json index 37a15f5131..f6b9602291 100644 --- a/scm-ui/babel-preset/package.json +++ b/scm-ui/babel-preset/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/babel-preset", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "license": "MIT", "description": "Babel configuration for scm-manager and its plugins", "main": "index.js", diff --git a/scm-ui/e2e-tests/package.json b/scm-ui/e2e-tests/package.json index bc1af44bbd..4333e19254 100644 --- a/scm-ui/e2e-tests/package.json +++ b/scm-ui/e2e-tests/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/e2e-tests", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "description": "End to end Tests for SCM-Manager", "main": "index.js", "author": "Eduard Heimbuch ", diff --git a/scm-ui/eslint-config/package.json b/scm-ui/eslint-config/package.json index 17cec9c9ee..4d4e167ef0 100644 --- a/scm-ui/eslint-config/package.json +++ b/scm-ui/eslint-config/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/eslint-config", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "description": "ESLint configuration for scm-manager and its plugins", "main": "src/index.js", "author": "Sebastian Sdorra ", diff --git a/scm-ui/jest-preset/package.json b/scm-ui/jest-preset/package.json index 6f8c5d71fc..3bff24508b 100644 --- a/scm-ui/jest-preset/package.json +++ b/scm-ui/jest-preset/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/jest-preset", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "description": "Jest presets for SCM-Manager and its plugins", "main": "src/index.js", "author": "Sebastian Sdorra ", diff --git a/scm-ui/pom.xml b/scm-ui/pom.xml index fce99381c3..227b3efc81 100644 --- a/scm-ui/pom.xml +++ b/scm-ui/pom.xml @@ -32,13 +32,13 @@ sonia.scm scm - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm scm-ui war - 2.8.0-SNAPSHOT + 2.7.1 scm-ui diff --git a/scm-ui/prettier-config/package.json b/scm-ui/prettier-config/package.json index 27c6e63597..92f67c880d 100644 --- a/scm-ui/prettier-config/package.json +++ b/scm-ui/prettier-config/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/prettier-config", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "license": "MIT", "description": "Prettier configuration", "author": "Sebastian Sdorra ", diff --git a/scm-ui/tsconfig/package.json b/scm-ui/tsconfig/package.json index 7801717520..e7213af1ae 100644 --- a/scm-ui/tsconfig/package.json +++ b/scm-ui/tsconfig/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/tsconfig", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "license": "MIT", "description": "TypeScript configuration", "author": "Sebastian Sdorra ", diff --git a/scm-ui/ui-components/package.json b/scm-ui/ui-components/package.json index 3e5889c081..5177dd6a66 100644 --- a/scm-ui/ui-components/package.json +++ b/scm-ui/ui-components/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-components", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "description": "UI Components for SCM-Manager and its plugins", "main": "src/index.ts", "files": [ @@ -18,7 +18,7 @@ "update-storyshots": "jest --testPathPattern=\"storyshots.test.ts\" --collectCoverage=false -u" }, "devDependencies": { - "@scm-manager/ui-tests": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-tests": "^2.7.1", "@storybook/addon-actions": "^5.2.3", "@storybook/addon-storyshots": "^5.2.3", "@storybook/react": "^5.2.3", @@ -46,8 +46,8 @@ "worker-plugin": "^3.2.0" }, "dependencies": { - "@scm-manager/ui-extensions": "^2.8.0-SNAPSHOT", - "@scm-manager/ui-types": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-extensions": "^2.7.1", + "@scm-manager/ui-types": "^2.7.1", "classnames": "^2.2.6", "date-fns": "^2.4.1", "gitdiff-parser": "^0.1.2", diff --git a/scm-ui/ui-extensions/package.json b/scm-ui/ui-extensions/package.json index 049d153b07..5e6262a76b 100644 --- a/scm-ui/ui-extensions/package.json +++ b/scm-ui/ui-extensions/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-extensions", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "main": "src/index.ts", "license": "MIT", "private": false, diff --git a/scm-ui/ui-plugins/package.json b/scm-ui/ui-plugins/package.json index 6bd7d2a93a..e7d752a84f 100644 --- a/scm-ui/ui-plugins/package.json +++ b/scm-ui/ui-plugins/package.json @@ -1,13 +1,13 @@ { "name": "@scm-manager/ui-plugins", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "license": "MIT", "bin": { "ui-plugins": "./bin/ui-plugins.js" }, "dependencies": { - "@scm-manager/ui-components": "^2.8.0-SNAPSHOT", - "@scm-manager/ui-extensions": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-components": "^2.7.1", + "@scm-manager/ui-extensions": "^2.7.1", "classnames": "^2.2.6", "query-string": "^5.0.1", "react": "^16.10.2", @@ -18,14 +18,14 @@ "styled-components": "^5.1.0" }, "devDependencies": { - "@scm-manager/babel-preset": "^2.8.0-SNAPSHOT", - "@scm-manager/eslint-config": "^2.8.0-SNAPSHOT", - "@scm-manager/jest-preset": "^2.8.0-SNAPSHOT", - "@scm-manager/prettier-config": "^2.8.0-SNAPSHOT", - "@scm-manager/tsconfig": "^2.8.0-SNAPSHOT", - "@scm-manager/ui-scripts": "^2.8.0-SNAPSHOT", - "@scm-manager/ui-tests": "^2.8.0-SNAPSHOT", - "@scm-manager/ui-types": "^2.8.0-SNAPSHOT", + "@scm-manager/babel-preset": "^2.7.1", + "@scm-manager/eslint-config": "^2.7.1", + "@scm-manager/jest-preset": "^2.7.1", + "@scm-manager/prettier-config": "^2.7.1", + "@scm-manager/tsconfig": "^2.7.1", + "@scm-manager/ui-scripts": "^2.7.1", + "@scm-manager/ui-tests": "^2.7.1", + "@scm-manager/ui-types": "^2.7.1", "@types/classnames": "^2.2.9", "@types/enzyme": "^3.10.3", "@types/fetch-mock": "^7.3.1", diff --git a/scm-ui/ui-polyfill/package.json b/scm-ui/ui-polyfill/package.json index bed6f43cb2..30d17424d6 100644 --- a/scm-ui/ui-polyfill/package.json +++ b/scm-ui/ui-polyfill/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-polyfill", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "description": "Polyfills for SCM-Manager UI", "main": "src/index.js", "author": "Sebastian Sdorra ", diff --git a/scm-ui/ui-scripts/package.json b/scm-ui/ui-scripts/package.json index bbd3caac00..606ec00e03 100644 --- a/scm-ui/ui-scripts/package.json +++ b/scm-ui/ui-scripts/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-scripts", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "description": "Build scripts for SCM-Manager", "main": "src/index.js", "author": "Sebastian Sdorra ", diff --git a/scm-ui/ui-styles/package.json b/scm-ui/ui-styles/package.json index 4f4b7d8023..aa71da2a4c 100644 --- a/scm-ui/ui-styles/package.json +++ b/scm-ui/ui-styles/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-styles", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "description": "Styles for SCM-Manager", "main": "src/scm.scss", "license": "MIT", diff --git a/scm-ui/ui-tests/package.json b/scm-ui/ui-tests/package.json index 0c8f3d3aae..e79d175f81 100644 --- a/scm-ui/ui-tests/package.json +++ b/scm-ui/ui-tests/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-tests", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "description": "UI-Tests helpers", "author": "Sebastian Sdorra ", "license": "MIT", diff --git a/scm-ui/ui-types/package.json b/scm-ui/ui-types/package.json index 9ffb7f4251..751a43af3e 100644 --- a/scm-ui/ui-types/package.json +++ b/scm-ui/ui-types/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-types", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "description": "Flow types for SCM-Manager related Objects", "main": "src/index.ts", "files": [ diff --git a/scm-ui/ui-webapp/package.json b/scm-ui/ui-webapp/package.json index 1d5a332dc6..4e0c4d4bb6 100644 --- a/scm-ui/ui-webapp/package.json +++ b/scm-ui/ui-webapp/package.json @@ -1,10 +1,10 @@ { "name": "@scm-manager/ui-webapp", - "version": "2.8.0-SNAPSHOT", + "version": "2.7.1", "private": true, "dependencies": { - "@scm-manager/ui-components": "^2.8.0-SNAPSHOT", - "@scm-manager/ui-extensions": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-components": "^2.7.1", + "@scm-manager/ui-extensions": "^2.7.1", "classnames": "^2.2.5", "history": "^4.10.1", "i18next": "^19.6.0", @@ -29,7 +29,7 @@ "test": "jest" }, "devDependencies": { - "@scm-manager/ui-tests": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-tests": "^2.7.1", "@types/classnames": "^2.2.9", "@types/enzyme": "^3.10.3", "@types/fetch-mock": "^7.3.1", diff --git a/scm-webapp/pom.xml b/scm-webapp/pom.xml index f30c2cdb99..8f914afe2d 100644 --- a/scm-webapp/pom.xml +++ b/scm-webapp/pom.xml @@ -32,13 +32,13 @@ sonia.scm scm - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm scm-webapp war - 2.8.0-SNAPSHOT + 2.7.1 scm-webapp @@ -48,7 +48,7 @@ sonia.scm scm-annotation-processor - 2.8.0-SNAPSHOT + 2.7.1 provided @@ -73,13 +73,13 @@ sonia.scm scm-core - 2.8.0-SNAPSHOT + 2.7.1 sonia.scm scm-dao-xml - 2.8.0-SNAPSHOT + 2.7.1 @@ -343,7 +343,7 @@ sonia.scm scm-test - 2.8.0-SNAPSHOT + 2.7.1 test @@ -405,7 +405,7 @@ sonia.scm.plugins scm-git-plugin - 2.8.0-SNAPSHOT + 2.7.1 tests test @@ -413,14 +413,14 @@ sonia.scm.plugins scm-git-plugin - 2.8.0-SNAPSHOT + 2.7.1 test sonia.scm.plugins scm-hg-plugin - 2.8.0-SNAPSHOT + 2.7.1 tests test @@ -428,14 +428,14 @@ sonia.scm.plugins scm-hg-plugin - 2.8.0-SNAPSHOT + 2.7.1 test sonia.scm.plugins scm-svn-plugin - 2.8.0-SNAPSHOT + 2.7.1 tests test @@ -443,7 +443,7 @@ sonia.scm.plugins scm-svn-plugin - 2.8.0-SNAPSHOT + 2.7.1 test @@ -729,7 +729,7 @@ sonia.scm scm-ui - 2.8.0-SNAPSHOT + 2.7.1 war From bb9f1adc5265d1d56232297fd2faa0830cfba04f Mon Sep 17 00:00:00 2001 From: CES Marvin Date: Wed, 14 Oct 2020 12:38:13 +0000 Subject: [PATCH 12/12] prepare for next development iteration --- lerna.json | 2 +- pom.xml | 2 +- scm-annotation-processor/pom.xml | 6 ++--- scm-annotations/pom.xml | 4 +-- scm-core/pom.xml | 8 +++--- scm-dao-xml/pom.xml | 8 +++--- scm-it/pom.xml | 20 +++++++------- scm-packaging/deb/pom.xml | 6 ++--- scm-packaging/docker/pom.xml | 4 +-- scm-packaging/helm/pom.xml | 4 +-- scm-packaging/pom.xml | 4 +-- scm-packaging/release-yaml/pom.xml | 4 +-- scm-packaging/rpm/pom.xml | 6 ++--- scm-packaging/unix/pom.xml | 4 +-- scm-packaging/windows/pom.xml | 4 +-- scm-plugins/pom.xml | 10 +++---- scm-plugins/scm-git-plugin/package.json | 4 +-- scm-plugins/scm-git-plugin/pom.xml | 2 +- scm-plugins/scm-hg-plugin/package.json | 4 +-- scm-plugins/scm-hg-plugin/pom.xml | 2 +- .../scm-integration-test-plugin/pom.xml | 4 +-- scm-plugins/scm-legacy-plugin/package.json | 4 +-- scm-plugins/scm-legacy-plugin/pom.xml | 4 +-- scm-plugins/scm-svn-plugin/package.json | 4 +-- scm-plugins/scm-svn-plugin/pom.xml | 2 +- scm-server/pom.xml | 4 +-- scm-test/pom.xml | 6 ++--- scm-ui/babel-preset/package.json | 2 +- scm-ui/e2e-tests/package.json | 2 +- scm-ui/eslint-config/package.json | 2 +- scm-ui/jest-preset/package.json | 2 +- scm-ui/pom.xml | 4 +-- scm-ui/prettier-config/package.json | 2 +- scm-ui/tsconfig/package.json | 2 +- scm-ui/ui-components/package.json | 8 +++--- scm-ui/ui-extensions/package.json | 2 +- scm-ui/ui-plugins/package.json | 22 ++++++++-------- scm-ui/ui-polyfill/package.json | 2 +- scm-ui/ui-scripts/package.json | 2 +- scm-ui/ui-styles/package.json | 2 +- scm-ui/ui-tests/package.json | 2 +- scm-ui/ui-types/package.json | 2 +- scm-ui/ui-webapp/package.json | 8 +++--- scm-webapp/pom.xml | 26 +++++++++---------- 44 files changed, 114 insertions(+), 114 deletions(-) diff --git a/lerna.json b/lerna.json index 848b7032b3..2eb3066367 100644 --- a/lerna.json +++ b/lerna.json @@ -5,5 +5,5 @@ ], "npmClient": "yarn", "useWorkspaces": true, - "version": "2.7.1" + "version": "2.8.0-SNAPSHOT" } diff --git a/pom.xml b/pom.xml index 96f8d3766f..506c11920f 100644 --- a/pom.xml +++ b/pom.xml @@ -32,7 +32,7 @@ sonia.scm scm pom - 2.7.1 + 2.8.0-SNAPSHOT The easiest way to share your Git, Mercurial and Subversion repositories. diff --git a/scm-annotation-processor/pom.xml b/scm-annotation-processor/pom.xml index b75f79c6d8..28702106db 100644 --- a/scm-annotation-processor/pom.xml +++ b/scm-annotation-processor/pom.xml @@ -31,12 +31,12 @@ sonia.scm scm - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm scm-annotation-processor - 2.7.1 + 2.8.0-SNAPSHOT scm-annotation-processor @@ -46,7 +46,7 @@ sonia.scm scm-annotations - 2.7.1 + 2.8.0-SNAPSHOT diff --git a/scm-annotations/pom.xml b/scm-annotations/pom.xml index 719c61e57d..f48c2dfb58 100644 --- a/scm-annotations/pom.xml +++ b/scm-annotations/pom.xml @@ -31,11 +31,11 @@ sonia.scm scm - 2.7.1 + 2.8.0-SNAPSHOT scm-annotations - 2.7.1 + 2.8.0-SNAPSHOT scm-annotations diff --git a/scm-core/pom.xml b/scm-core/pom.xml index d17664f51b..e6b41a4e6c 100644 --- a/scm-core/pom.xml +++ b/scm-core/pom.xml @@ -31,11 +31,11 @@ scm sonia.scm - 2.7.1 + 2.8.0-SNAPSHOT scm-core - 2.7.1 + 2.8.0-SNAPSHOT scm-core @@ -54,7 +54,7 @@ sonia.scm scm-annotations - 2.7.1 + 2.8.0-SNAPSHOT @@ -227,7 +227,7 @@ sonia.scm scm-annotation-processor - 2.7.1 + 2.8.0-SNAPSHOT provided diff --git a/scm-dao-xml/pom.xml b/scm-dao-xml/pom.xml index 00a35cfb16..25231dc4e7 100644 --- a/scm-dao-xml/pom.xml +++ b/scm-dao-xml/pom.xml @@ -31,11 +31,11 @@ sonia.scm scm - 2.7.1 + 2.8.0-SNAPSHOT scm-dao-xml - 2.7.1 + 2.8.0-SNAPSHOT scm-dao-xml @@ -50,7 +50,7 @@ sonia.scm scm-core - 2.7.1 + 2.8.0-SNAPSHOT @@ -58,7 +58,7 @@ sonia.scm scm-test - 2.7.1 + 2.8.0-SNAPSHOT test diff --git a/scm-it/pom.xml b/scm-it/pom.xml index 782d092fe6..ff9a7d87f8 100644 --- a/scm-it/pom.xml +++ b/scm-it/pom.xml @@ -31,40 +31,40 @@ sonia.scm scm - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm scm-it war - 2.7.1 + 2.8.0-SNAPSHOT scm-it sonia.scm scm-core - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm scm-test - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm.plugins scm-git-plugin - 2.7.1 + 2.8.0-SNAPSHOT test sonia.scm.plugins scm-git-plugin - 2.7.1 + 2.8.0-SNAPSHOT tests test @@ -72,14 +72,14 @@ sonia.scm.plugins scm-hg-plugin - 2.7.1 + 2.8.0-SNAPSHOT test sonia.scm.plugins scm-hg-plugin - 2.7.1 + 2.8.0-SNAPSHOT tests test @@ -87,14 +87,14 @@ sonia.scm.plugins scm-svn-plugin - 2.7.1 + 2.8.0-SNAPSHOT test sonia.scm.plugins scm-svn-plugin - 2.7.1 + 2.8.0-SNAPSHOT tests test diff --git a/scm-packaging/deb/pom.xml b/scm-packaging/deb/pom.xml index 5ec93a2ed1..6f0657736f 100644 --- a/scm-packaging/deb/pom.xml +++ b/scm-packaging/deb/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.7.1 + 2.8.0-SNAPSHOT deb deb - 2.7.1 + 2.8.0-SNAPSHOT Packaging for Debian/Ubuntu deb @@ -46,7 +46,7 @@ sonia.scm scm-server - 2.7.1 + 2.8.0-SNAPSHOT diff --git a/scm-packaging/docker/pom.xml b/scm-packaging/docker/pom.xml index a55a0bd42a..941a5c1516 100644 --- a/scm-packaging/docker/pom.xml +++ b/scm-packaging/docker/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.7.1 + 2.8.0-SNAPSHOT docker pom - 2.7.1 + 2.8.0-SNAPSHOT diff --git a/scm-packaging/helm/pom.xml b/scm-packaging/helm/pom.xml index 389a88c3e5..5ad0cf6fd3 100644 --- a/scm-packaging/helm/pom.xml +++ b/scm-packaging/helm/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.7.1 + 2.8.0-SNAPSHOT helm helm - 2.7.1 + 2.8.0-SNAPSHOT 3.2.1 diff --git a/scm-packaging/pom.xml b/scm-packaging/pom.xml index 60208278e1..300f088af6 100644 --- a/scm-packaging/pom.xml +++ b/scm-packaging/pom.xml @@ -31,13 +31,13 @@ sonia.scm scm - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm.packaging scm-packaging pom - 2.7.1 + 2.8.0-SNAPSHOT packages.scm-manager.org diff --git a/scm-packaging/release-yaml/pom.xml b/scm-packaging/release-yaml/pom.xml index 0283d8ed2a..27c2731b87 100644 --- a/scm-packaging/release-yaml/pom.xml +++ b/scm-packaging/release-yaml/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.7.1 + 2.8.0-SNAPSHOT release-yaml pom - 2.7.1 + 2.8.0-SNAPSHOT diff --git a/scm-packaging/rpm/pom.xml b/scm-packaging/rpm/pom.xml index d2d316030b..fee0719a8d 100644 --- a/scm-packaging/rpm/pom.xml +++ b/scm-packaging/rpm/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.7.1 + 2.8.0-SNAPSHOT rpm rpm - 2.7.1 + 2.8.0-SNAPSHOT Packaging for RedHat/Centos/Fedora rpm @@ -52,7 +52,7 @@ sonia.scm scm-server - 2.7.1 + 2.8.0-SNAPSHOT diff --git a/scm-packaging/unix/pom.xml b/scm-packaging/unix/pom.xml index f74fcdc3df..5cd9e36a97 100644 --- a/scm-packaging/unix/pom.xml +++ b/scm-packaging/unix/pom.xml @@ -31,12 +31,12 @@ sonia.scm.packaging scm-packaging - 2.7.1 + 2.8.0-SNAPSHOT unix pom - 2.7.1 + 2.8.0-SNAPSHOT diff --git a/scm-packaging/windows/pom.xml b/scm-packaging/windows/pom.xml index 22211c8fc6..593c17a151 100644 --- a/scm-packaging/windows/pom.xml +++ b/scm-packaging/windows/pom.xml @@ -32,12 +32,12 @@ sonia.scm.packaging scm-packaging - 2.7.1 + 2.8.0-SNAPSHOT windows pom - 2.7.1 + 2.8.0-SNAPSHOT diff --git a/scm-plugins/pom.xml b/scm-plugins/pom.xml index e5de4992e5..24e002fc17 100644 --- a/scm-plugins/pom.xml +++ b/scm-plugins/pom.xml @@ -31,13 +31,13 @@ sonia.scm scm - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm.plugins scm-plugins pom - 2.7.1 + 2.8.0-SNAPSHOT scm-plugins @@ -60,7 +60,7 @@ sonia.scm scm-core - 2.7.1 + 2.8.0-SNAPSHOT provided @@ -69,7 +69,7 @@ sonia.scm scm-annotation-processor - 2.7.1 + 2.8.0-SNAPSHOT provided @@ -99,7 +99,7 @@ sonia.scm scm-test - 2.7.1 + 2.8.0-SNAPSHOT test diff --git a/scm-plugins/scm-git-plugin/package.json b/scm-plugins/scm-git-plugin/package.json index 69d77cb454..1e61547668 100644 --- a/scm-plugins/scm-git-plugin/package.json +++ b/scm-plugins/scm-git-plugin/package.json @@ -1,7 +1,7 @@ { "name": "@scm-manager/scm-git-plugin", "private": true, - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "license": "MIT", "main": "./src/main/js/index.ts", "scripts": { @@ -20,6 +20,6 @@ }, "prettier": "@scm-manager/prettier-config", "dependencies": { - "@scm-manager/ui-plugins": "^2.7.1" + "@scm-manager/ui-plugins": "^2.8.0-SNAPSHOT" } } diff --git a/scm-plugins/scm-git-plugin/pom.xml b/scm-plugins/scm-git-plugin/pom.xml index bc8b579f3d..d1d18f1329 100644 --- a/scm-plugins/scm-git-plugin/pom.xml +++ b/scm-plugins/scm-git-plugin/pom.xml @@ -31,7 +31,7 @@ scm-plugins sonia.scm.plugins - 2.7.1 + 2.8.0-SNAPSHOT scm-git-plugin diff --git a/scm-plugins/scm-hg-plugin/package.json b/scm-plugins/scm-hg-plugin/package.json index 410e9c7a58..6683453f24 100644 --- a/scm-plugins/scm-hg-plugin/package.json +++ b/scm-plugins/scm-hg-plugin/package.json @@ -1,7 +1,7 @@ { "name": "@scm-manager/scm-hg-plugin", "private": true, - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "license": "MIT", "main": "./src/main/js/index.ts", "scripts": { @@ -19,6 +19,6 @@ }, "prettier": "@scm-manager/prettier-config", "dependencies": { - "@scm-manager/ui-plugins": "^2.7.1" + "@scm-manager/ui-plugins": "^2.8.0-SNAPSHOT" } } diff --git a/scm-plugins/scm-hg-plugin/pom.xml b/scm-plugins/scm-hg-plugin/pom.xml index 18ac32897f..0a03731bd3 100644 --- a/scm-plugins/scm-hg-plugin/pom.xml +++ b/scm-plugins/scm-hg-plugin/pom.xml @@ -31,7 +31,7 @@ sonia.scm.plugins scm-plugins - 2.7.1 + 2.8.0-SNAPSHOT scm-hg-plugin diff --git a/scm-plugins/scm-integration-test-plugin/pom.xml b/scm-plugins/scm-integration-test-plugin/pom.xml index 5166e42524..755348c9d7 100644 --- a/scm-plugins/scm-integration-test-plugin/pom.xml +++ b/scm-plugins/scm-integration-test-plugin/pom.xml @@ -29,12 +29,12 @@ sonia.scm.plugins scm-plugins - 2.7.1 + 2.8.0-SNAPSHOT scm-integration-test-plugin Add functions for integration tests. This is not intended for production systems. - 2.7.1 + 2.8.0-SNAPSHOT smp diff --git a/scm-plugins/scm-legacy-plugin/package.json b/scm-plugins/scm-legacy-plugin/package.json index 4b9fe6a6cc..510cdae1a6 100644 --- a/scm-plugins/scm-legacy-plugin/package.json +++ b/scm-plugins/scm-legacy-plugin/package.json @@ -1,7 +1,7 @@ { "name": "@scm-manager/scm-legacy-plugin", "private": true, - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "license": "MIT", "main": "./src/main/js/index.tsx", "scripts": { @@ -19,6 +19,6 @@ }, "prettier": "@scm-manager/prettier-config", "dependencies": { - "@scm-manager/ui-plugins": "^2.7.1" + "@scm-manager/ui-plugins": "^2.8.0-SNAPSHOT" } } diff --git a/scm-plugins/scm-legacy-plugin/pom.xml b/scm-plugins/scm-legacy-plugin/pom.xml index 6d85526ffb..51c7e718a0 100644 --- a/scm-plugins/scm-legacy-plugin/pom.xml +++ b/scm-plugins/scm-legacy-plugin/pom.xml @@ -29,12 +29,12 @@ sonia.scm.plugins scm-plugins - 2.7.1 + 2.8.0-SNAPSHOT scm-legacy-plugin Support migrated repository urls and v1 passwords - 2.7.1 + 2.8.0-SNAPSHOT smp diff --git a/scm-plugins/scm-svn-plugin/package.json b/scm-plugins/scm-svn-plugin/package.json index d99381a930..c0b0051b1e 100644 --- a/scm-plugins/scm-svn-plugin/package.json +++ b/scm-plugins/scm-svn-plugin/package.json @@ -1,7 +1,7 @@ { "name": "@scm-manager/scm-svn-plugin", "private": true, - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "license": "MIT", "main": "./src/main/js/index.ts", "scripts": { @@ -19,6 +19,6 @@ }, "prettier": "@scm-manager/prettier-config", "dependencies": { - "@scm-manager/ui-plugins": "^2.7.1" + "@scm-manager/ui-plugins": "^2.8.0-SNAPSHOT" } } diff --git a/scm-plugins/scm-svn-plugin/pom.xml b/scm-plugins/scm-svn-plugin/pom.xml index 1fe6caf5c4..26c16a221c 100644 --- a/scm-plugins/scm-svn-plugin/pom.xml +++ b/scm-plugins/scm-svn-plugin/pom.xml @@ -31,7 +31,7 @@ scm-plugins sonia.scm.plugins - 2.7.1 + 2.8.0-SNAPSHOT scm-svn-plugin diff --git a/scm-server/pom.xml b/scm-server/pom.xml index 530caabdc0..5a10a9c098 100644 --- a/scm-server/pom.xml +++ b/scm-server/pom.xml @@ -31,12 +31,12 @@ scm sonia.scm - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm scm-server - 2.7.1 + 2.8.0-SNAPSHOT scm-server jar diff --git a/scm-test/pom.xml b/scm-test/pom.xml index 0cb3be6409..0544a10524 100644 --- a/scm-test/pom.xml +++ b/scm-test/pom.xml @@ -31,12 +31,12 @@ scm sonia.scm - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm scm-test - 2.7.1 + 2.8.0-SNAPSHOT scm-test @@ -50,7 +50,7 @@ sonia.scm scm-core - 2.7.1 + 2.8.0-SNAPSHOT diff --git a/scm-ui/babel-preset/package.json b/scm-ui/babel-preset/package.json index f6b9602291..37a15f5131 100644 --- a/scm-ui/babel-preset/package.json +++ b/scm-ui/babel-preset/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/babel-preset", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "license": "MIT", "description": "Babel configuration for scm-manager and its plugins", "main": "index.js", diff --git a/scm-ui/e2e-tests/package.json b/scm-ui/e2e-tests/package.json index 4333e19254..bc1af44bbd 100644 --- a/scm-ui/e2e-tests/package.json +++ b/scm-ui/e2e-tests/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/e2e-tests", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "description": "End to end Tests for SCM-Manager", "main": "index.js", "author": "Eduard Heimbuch ", diff --git a/scm-ui/eslint-config/package.json b/scm-ui/eslint-config/package.json index 4d4e167ef0..17cec9c9ee 100644 --- a/scm-ui/eslint-config/package.json +++ b/scm-ui/eslint-config/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/eslint-config", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "description": "ESLint configuration for scm-manager and its plugins", "main": "src/index.js", "author": "Sebastian Sdorra ", diff --git a/scm-ui/jest-preset/package.json b/scm-ui/jest-preset/package.json index 3bff24508b..6f8c5d71fc 100644 --- a/scm-ui/jest-preset/package.json +++ b/scm-ui/jest-preset/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/jest-preset", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "description": "Jest presets for SCM-Manager and its plugins", "main": "src/index.js", "author": "Sebastian Sdorra ", diff --git a/scm-ui/pom.xml b/scm-ui/pom.xml index 227b3efc81..fce99381c3 100644 --- a/scm-ui/pom.xml +++ b/scm-ui/pom.xml @@ -32,13 +32,13 @@ sonia.scm scm - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm scm-ui war - 2.7.1 + 2.8.0-SNAPSHOT scm-ui diff --git a/scm-ui/prettier-config/package.json b/scm-ui/prettier-config/package.json index 92f67c880d..27c6e63597 100644 --- a/scm-ui/prettier-config/package.json +++ b/scm-ui/prettier-config/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/prettier-config", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "license": "MIT", "description": "Prettier configuration", "author": "Sebastian Sdorra ", diff --git a/scm-ui/tsconfig/package.json b/scm-ui/tsconfig/package.json index e7213af1ae..7801717520 100644 --- a/scm-ui/tsconfig/package.json +++ b/scm-ui/tsconfig/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/tsconfig", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "license": "MIT", "description": "TypeScript configuration", "author": "Sebastian Sdorra ", diff --git a/scm-ui/ui-components/package.json b/scm-ui/ui-components/package.json index 5177dd6a66..3e5889c081 100644 --- a/scm-ui/ui-components/package.json +++ b/scm-ui/ui-components/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-components", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "description": "UI Components for SCM-Manager and its plugins", "main": "src/index.ts", "files": [ @@ -18,7 +18,7 @@ "update-storyshots": "jest --testPathPattern=\"storyshots.test.ts\" --collectCoverage=false -u" }, "devDependencies": { - "@scm-manager/ui-tests": "^2.7.1", + "@scm-manager/ui-tests": "^2.8.0-SNAPSHOT", "@storybook/addon-actions": "^5.2.3", "@storybook/addon-storyshots": "^5.2.3", "@storybook/react": "^5.2.3", @@ -46,8 +46,8 @@ "worker-plugin": "^3.2.0" }, "dependencies": { - "@scm-manager/ui-extensions": "^2.7.1", - "@scm-manager/ui-types": "^2.7.1", + "@scm-manager/ui-extensions": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-types": "^2.8.0-SNAPSHOT", "classnames": "^2.2.6", "date-fns": "^2.4.1", "gitdiff-parser": "^0.1.2", diff --git a/scm-ui/ui-extensions/package.json b/scm-ui/ui-extensions/package.json index 5e6262a76b..049d153b07 100644 --- a/scm-ui/ui-extensions/package.json +++ b/scm-ui/ui-extensions/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-extensions", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "main": "src/index.ts", "license": "MIT", "private": false, diff --git a/scm-ui/ui-plugins/package.json b/scm-ui/ui-plugins/package.json index e7d752a84f..6bd7d2a93a 100644 --- a/scm-ui/ui-plugins/package.json +++ b/scm-ui/ui-plugins/package.json @@ -1,13 +1,13 @@ { "name": "@scm-manager/ui-plugins", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "license": "MIT", "bin": { "ui-plugins": "./bin/ui-plugins.js" }, "dependencies": { - "@scm-manager/ui-components": "^2.7.1", - "@scm-manager/ui-extensions": "^2.7.1", + "@scm-manager/ui-components": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-extensions": "^2.8.0-SNAPSHOT", "classnames": "^2.2.6", "query-string": "^5.0.1", "react": "^16.10.2", @@ -18,14 +18,14 @@ "styled-components": "^5.1.0" }, "devDependencies": { - "@scm-manager/babel-preset": "^2.7.1", - "@scm-manager/eslint-config": "^2.7.1", - "@scm-manager/jest-preset": "^2.7.1", - "@scm-manager/prettier-config": "^2.7.1", - "@scm-manager/tsconfig": "^2.7.1", - "@scm-manager/ui-scripts": "^2.7.1", - "@scm-manager/ui-tests": "^2.7.1", - "@scm-manager/ui-types": "^2.7.1", + "@scm-manager/babel-preset": "^2.8.0-SNAPSHOT", + "@scm-manager/eslint-config": "^2.8.0-SNAPSHOT", + "@scm-manager/jest-preset": "^2.8.0-SNAPSHOT", + "@scm-manager/prettier-config": "^2.8.0-SNAPSHOT", + "@scm-manager/tsconfig": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-scripts": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-tests": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-types": "^2.8.0-SNAPSHOT", "@types/classnames": "^2.2.9", "@types/enzyme": "^3.10.3", "@types/fetch-mock": "^7.3.1", diff --git a/scm-ui/ui-polyfill/package.json b/scm-ui/ui-polyfill/package.json index 30d17424d6..bed6f43cb2 100644 --- a/scm-ui/ui-polyfill/package.json +++ b/scm-ui/ui-polyfill/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-polyfill", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "description": "Polyfills for SCM-Manager UI", "main": "src/index.js", "author": "Sebastian Sdorra ", diff --git a/scm-ui/ui-scripts/package.json b/scm-ui/ui-scripts/package.json index 606ec00e03..bbd3caac00 100644 --- a/scm-ui/ui-scripts/package.json +++ b/scm-ui/ui-scripts/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-scripts", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "description": "Build scripts for SCM-Manager", "main": "src/index.js", "author": "Sebastian Sdorra ", diff --git a/scm-ui/ui-styles/package.json b/scm-ui/ui-styles/package.json index aa71da2a4c..4f4b7d8023 100644 --- a/scm-ui/ui-styles/package.json +++ b/scm-ui/ui-styles/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-styles", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "description": "Styles for SCM-Manager", "main": "src/scm.scss", "license": "MIT", diff --git a/scm-ui/ui-tests/package.json b/scm-ui/ui-tests/package.json index e79d175f81..0c8f3d3aae 100644 --- a/scm-ui/ui-tests/package.json +++ b/scm-ui/ui-tests/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-tests", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "description": "UI-Tests helpers", "author": "Sebastian Sdorra ", "license": "MIT", diff --git a/scm-ui/ui-types/package.json b/scm-ui/ui-types/package.json index 751a43af3e..9ffb7f4251 100644 --- a/scm-ui/ui-types/package.json +++ b/scm-ui/ui-types/package.json @@ -1,6 +1,6 @@ { "name": "@scm-manager/ui-types", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "description": "Flow types for SCM-Manager related Objects", "main": "src/index.ts", "files": [ diff --git a/scm-ui/ui-webapp/package.json b/scm-ui/ui-webapp/package.json index 4e0c4d4bb6..1d5a332dc6 100644 --- a/scm-ui/ui-webapp/package.json +++ b/scm-ui/ui-webapp/package.json @@ -1,10 +1,10 @@ { "name": "@scm-manager/ui-webapp", - "version": "2.7.1", + "version": "2.8.0-SNAPSHOT", "private": true, "dependencies": { - "@scm-manager/ui-components": "^2.7.1", - "@scm-manager/ui-extensions": "^2.7.1", + "@scm-manager/ui-components": "^2.8.0-SNAPSHOT", + "@scm-manager/ui-extensions": "^2.8.0-SNAPSHOT", "classnames": "^2.2.5", "history": "^4.10.1", "i18next": "^19.6.0", @@ -29,7 +29,7 @@ "test": "jest" }, "devDependencies": { - "@scm-manager/ui-tests": "^2.7.1", + "@scm-manager/ui-tests": "^2.8.0-SNAPSHOT", "@types/classnames": "^2.2.9", "@types/enzyme": "^3.10.3", "@types/fetch-mock": "^7.3.1", diff --git a/scm-webapp/pom.xml b/scm-webapp/pom.xml index 8f914afe2d..f30c2cdb99 100644 --- a/scm-webapp/pom.xml +++ b/scm-webapp/pom.xml @@ -32,13 +32,13 @@ sonia.scm scm - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm scm-webapp war - 2.7.1 + 2.8.0-SNAPSHOT scm-webapp @@ -48,7 +48,7 @@ sonia.scm scm-annotation-processor - 2.7.1 + 2.8.0-SNAPSHOT provided @@ -73,13 +73,13 @@ sonia.scm scm-core - 2.7.1 + 2.8.0-SNAPSHOT sonia.scm scm-dao-xml - 2.7.1 + 2.8.0-SNAPSHOT @@ -343,7 +343,7 @@ sonia.scm scm-test - 2.7.1 + 2.8.0-SNAPSHOT test @@ -405,7 +405,7 @@ sonia.scm.plugins scm-git-plugin - 2.7.1 + 2.8.0-SNAPSHOT tests test @@ -413,14 +413,14 @@ sonia.scm.plugins scm-git-plugin - 2.7.1 + 2.8.0-SNAPSHOT test sonia.scm.plugins scm-hg-plugin - 2.7.1 + 2.8.0-SNAPSHOT tests test @@ -428,14 +428,14 @@ sonia.scm.plugins scm-hg-plugin - 2.7.1 + 2.8.0-SNAPSHOT test sonia.scm.plugins scm-svn-plugin - 2.7.1 + 2.8.0-SNAPSHOT tests test @@ -443,7 +443,7 @@ sonia.scm.plugins scm-svn-plugin - 2.7.1 + 2.8.0-SNAPSHOT test @@ -729,7 +729,7 @@ sonia.scm scm-ui - 2.7.1 + 2.8.0-SNAPSHOT war