diff --git a/CHANGELOG.md b/CHANGELOG.md
index 049543ae10..84e8fe80e0 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,7 +4,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.0.0-rc7 - 2020-04-09
### Added
- Fire various plugin events ([#1088](https://github.com/scm-manager/scm-manager/pull/1088))
- Display version for plugins ([#1089](https://github.com/scm-manager/scm-manager/pull/1089)
diff --git a/Jenkinsfile b/Jenkinsfile
index a6ca00bb51..c910f01521 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -53,6 +53,7 @@ node('docker') {
// merge release branch into master
sh "git checkout master"
+ sh "git reset --hard origin/master"
sh "git merge --ff-only ${env.BRANCH_NAME}"
// set tag
diff --git a/docs/v2/release-process.md b/docs/v2/release-process.md
index 83f4db8ce2..d30b0d6289 100644
--- a/docs/v2/release-process.md
+++ b/docs/v2/release-process.md
@@ -14,7 +14,7 @@ git fetch && git checkout develop && git reset --hard origin/develop
Change "Unreleased" header in `CHANGELOG.md` to ` - `
-## Create release branch:
+## Create release branch
`git checkout -b release/`
@@ -37,6 +37,7 @@ Jenkins will
- merge with master branch
- build and deploy everything
- set the new development version for the develop branch
+- delete the release branch
## Make a party
@@ -44,7 +45,7 @@ Jenkins will
To release a new version of a Plugin for SCM-Manager v2 you have to do the following steps (replace placeholder `` accordingly, eg. with `2.1.0`):
-## Update to latest version
+## Check out default branch
Make sure you have no changes you want to keep!
@@ -52,68 +53,55 @@ Make sure you have no changes you want to keep!
git fetch && git checkout develop && git reset --hard origin/develop
```
-## Set new version
+## Update SCM parent if necessary
-Edit `pom.xml`:
+If you need to update the parent of the plugin to a new release of SCM-Manager, change it now:
-- `version` and `scm.tag` have to be set to the new version.
-- ensure that all dependencies to other scm resources have released versions
-- ensure `parent.version` points to stable release
+- `pom.xml`: `parent.version`
+- `package.json`: `dependencies.ui-plugins`
-Edit `package.json`:
+```
+rm -rf node_modules yarn.lock
+mvn clean install
+git add yarn.lock pom.xml package.json
+git commit -m "Update to new version of SCM-Manager"
+git push
+```
-- `version` has to be set to the new version.
-- ensure that all dependencies to other scm resources have released versions
-- ensure the version of `@scm-manager/ui-plugins` points to the same version as `parent.version` in the `pom.xml`
+Wait for Jenkins to be green.
+
+## Create release branch
+
+```
+git checkout -b release/
+```
## Modify Changelog
Change "Unreleased" header in `CHANGELOG.md` to ` - `
-## Remove old dependencies
-
-`rm -rf node_modules yarn.lock`
-
-## Build
-
-`mvn clean install`
-
## Commit and push release
```
-git commit -am "Release version "
-git push origin develop
+git commit -am "Prepare release of "
```
-## Merge with master branch
-
-The merge should be possible with a fast forward. If this fails, check for changes on the `master` branch that are not present on the `develop` branch. Merge these changes into the `develop` branch, first!
+## Push release branch
```
-git checkout master && git pull && git merge develop --ff-only && git push origin master
+git push origin release/
```
-## Create and push tag
+## Wait for Jenkins build
-```
-git tag -s -a -m ""
-git push --tags origin
-```
+Jenkins will
-## Prepare next development version
+- update versions in pom.xml and package.json
+- merge with master branch
+- build and deploy everything
+- set the new development version for the develop branch
+- delete the release branch
-```
-git checkout develop
-```
-
-Edit `pom.xml`: `version` has to be set to the new development version, `tag` to `HEAD`.
-
-Edit `package.json`: `version` has to be set to the new development version.
-
-```
-git commit -am "Prepare for next development iteration"
-git push origin develop
-```
## Attention: Creating new plugins
If you are creating a new plugin which doesn't exist in the SCM-Manager Plugin-Center yet, your plugin will not be shown after the release. First you have to create a `index.md` in the Plugin-Center Repository.
diff --git a/pom.xml b/pom.xml
index f806be11d7..cbbb7656f6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -494,7 +494,7 @@
sonia.scm.mavensmp-maven-plugin
- 1.0.0-rc5
+ 1.0.0-rc6
@@ -902,7 +902,7 @@
2.28.21.3
- 5.6.0
+ 5.6.11.7.30
@@ -913,7 +913,7 @@
4.5.2.Final1.19.42.10.3
- 4.2.2
+ 4.2.32.3.16.1.2.Final
diff --git a/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SimpleSvnWorkDirFactory.java b/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SimpleSvnWorkDirFactory.java
index c02e656821..dcd06f9207 100644
--- a/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SimpleSvnWorkDirFactory.java
+++ b/scm-plugins/scm-svn-plugin/src/main/java/sonia/scm/repository/spi/SimpleSvnWorkDirFactory.java
@@ -21,15 +21,15 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
-
+
package sonia.scm.repository.spi;
-import org.apache.commons.lang.exception.CloneFailedException;
import org.tmatesoft.svn.core.SVNException;
import org.tmatesoft.svn.core.SVNURL;
import org.tmatesoft.svn.core.wc2.SvnCheckout;
import org.tmatesoft.svn.core.wc2.SvnOperationFactory;
import org.tmatesoft.svn.core.wc2.SvnTarget;
+import sonia.scm.repository.InternalRepositoryException;
import sonia.scm.repository.Repository;
import sonia.scm.repository.SvnWorkDirFactory;
import sonia.scm.repository.util.SimpleWorkdirFactory;
@@ -37,7 +37,6 @@ import sonia.scm.repository.util.WorkdirProvider;
import javax.inject.Inject;
import java.io.File;
-import java.io.IOException;
public class SimpleSvnWorkDirFactory extends SimpleWorkdirFactory implements SvnWorkDirFactory {
@@ -60,7 +59,7 @@ public class SimpleSvnWorkDirFactory extends SimpleWorkdirFactory{children};
-const title = title;
-const avatar = ;
const link = "/foo/bar";
+const avatar = ;
+const title = title;
const footerLeft = left footer;
const footerRight = right footer;
+const baseDate = "2020-03-26T12:13:42+02:00";
storiesOf("CardColumn", module)
.addDecorator(story => {story()})
.addDecorator(storyFn => {storyFn()})
.add("default", () => (
- ));
+ ))
+ .add("minimal", () => (
+
+ ))
+ .add("with hoverable date", () => (
+
+
+ } />
+ ));
diff --git a/scm-ui/ui-components/src/CardColumn.tsx b/scm-ui/ui-components/src/CardColumn.tsx
index 2ef488e746..70d3da1946 100644
--- a/scm-ui/ui-components/src/CardColumn.tsx
+++ b/scm-ui/ui-components/src/CardColumn.tsx
@@ -21,19 +21,19 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
-import React, { ReactNode } from "react";
+import React, { FC, ReactNode } from "react";
import classNames from "classnames";
import styled from "styled-components";
import { Link } from "react-router-dom";
type Props = {
+ link?: string;
+ avatar?: ReactNode;
title: ReactNode;
description?: string;
- avatar: ReactNode;
contentRight?: ReactNode;
footerLeft: ReactNode;
footerRight: ReactNode;
- link?: string;
action?: () => void;
className?: string;
};
@@ -74,53 +74,63 @@ const RightMarginDiv = styled.div`
const InheritFlexShrinkDiv = styled.div`
flex-shrink: inherit;
+ pointer-events: all;
`;
-export default class CardColumn extends React.Component {
- createLink = () => {
- const { link, action } = this.props;
- if (link) {
- return ;
- } else if (action) {
- return (
- {
- e.preventDefault();
- action();
- }}
- href="#"
- />
- );
- }
- return null;
- };
+const CardColumn: FC = ({
+ link,
+ avatar,
+ title,
+ description,
+ contentRight,
+ footerLeft,
+ footerRight,
+ action,
+ className
+}) => {
+ const renderAvatar = avatar ? {avatar} : null;
+ const renderDescription = description ?
@@ -34564,9 +34704,6 @@ exports[`Storyshots RepositoryEntry Avatar EP 1`] = `
The starship Heart of Gold was the first spacecraft to make use of the Infinite Improbability Drive