From 46db6e7fc994aa4bc5281eaf38125cdb30ab96e9 Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Fri, 13 Mar 2020 09:02:42 +0100 Subject: [PATCH 01/25] added notes to parent version and ui-plugins --- docs/v2/Release process.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/v2/Release process.md b/docs/v2/Release process.md index 39c1e47298..6667ec1273 100644 --- a/docs/v2/Release process.md +++ b/docs/v2/Release process.md @@ -77,11 +77,13 @@ Edit `pom.xml`: - `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 Edit `package.json`: - `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` ## Modify Changelog @@ -131,4 +133,4 @@ 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 -``` \ No newline at end of file +``` From cbfc9ce6e79da87a662fb00c821832f3005a0c87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Fri, 13 Mar 2020 15:30:52 +0100 Subject: [PATCH 02/25] Add hints for release of plugins --- docs/v2/Release process.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/v2/Release process.md b/docs/v2/Release process.md index 6667ec1273..ebbea4088c 100644 --- a/docs/v2/Release process.md +++ b/docs/v2/Release process.md @@ -71,6 +71,16 @@ docker push scmmanager/scm-manager: 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 + +Make sure you have no changes you want to keep. + +``` +git checkout develop +git fetch +git reset --hard origin/develop +``` + ## Set new version Edit `pom.xml`: @@ -106,10 +116,12 @@ git push origin develop ## 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! + ``` git checkout master git pull -git merge develop +git merge develop --ff-only git push origin master ``` From 5b0c98fd3c3b72836472c53970080af24c8363a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Fri, 13 Mar 2020 15:44:35 +0100 Subject: [PATCH 03/25] Update release documentation --- docs/v2/Release process.md | 78 +++++++++++--------------------------- 1 file changed, 23 insertions(+), 55 deletions(-) diff --git a/docs/v2/Release process.md b/docs/v2/Release process.md index ebbea4088c..3ebf091572 100644 --- a/docs/v2/Release process.md +++ b/docs/v2/Release process.md @@ -1,69 +1,42 @@ # How to release SCM-Manager v2 core -To release a new version of SCM-Manager v2 you have to do the following steps (replace placeholders `` and `` accordingly, eg. with `2.1.0` and `2.2.0-SNAPSHOT`): +To release a new version of SCM-Manager v2 you have to do the following steps (replace placeholders `` accordingly, eg. with `2.1.0`): ## Check out default branch -`hg checkout default` +Make sure you have no changes you want to keep! -## Set release version for maven artefacts: - -`mvn versions:set -DnewVersion= -DgenerateBackupPoms=false` - -## Set release version for Javascript artefacts: - -`yarn run set-version ` +``` +git fetch && git checkout default && git reset --hard origin/default +``` ## Modify Changelog Change "Unreleased" header in `CHANGELOG.md` to ` - ` +## Create release branch: + +`git checkout -b release/` + ## Commit version changes -`hg commit -m "Release version "` +``` +git add CHANGELOG.md +git commit -m "Adjust changelog for release " +``` -## Run last test locally +## Push release branch -`mvn clean install -Pit -DClassLoaderLeakPreventor.threadWaitMs=10` - -## Create tag - -`hg tag ""` - -## Push - -`hg push -b .` +`git push origin release/` ## Wait for Jenkins build -## Deploy release version +Jenkins will -This only works with OpenJDK 8! - -`mvn clean deploy -DperformRelease` - -# Release docker image - -``` -docker build . -t scmmanager/scm-manager: -docker push scmmanager/scm-manager: -``` - -## Set next development version for maven artefacts: - -`mvn versions:set -DnewVersion= -DgenerateBackupPoms=false` - -## Set next development version for Javascript artefacts: - -`yarn run set-version ` - -## Commit version changes - -`hg commit -m "Prepare for next development iteration"` - -## Push - -`hg push -b .` +- update `pom.xml` and `package.json` +- merge with master branch +- build and deploy everything +- set the new development version for the develop branch ## Make a party @@ -73,12 +46,10 @@ To release a new version of a Plugin for SCM-Manager v2 you have to do the follo ## Update to latest version -Make sure you have no changes you want to keep. +Make sure you have no changes you want to keep! ``` -git checkout develop -git fetch -git reset --hard origin/develop +git fetch && git checkout develop && git reset --hard origin/develop ``` ## Set new version @@ -119,10 +90,7 @@ git push origin develop 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! ``` -git checkout master -git pull -git merge develop --ff-only -git push origin master +git checkout master && git pull && git merge develop --ff-only && git push origin master ``` ## Create and push tag From 176f19fb1a8b94838672feb43067577b8bbf8cf8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Sat, 14 Mar 2020 20:50:25 +0100 Subject: [PATCH 04/25] Add extension point for repository links in card --- CHANGELOG.md | 4 ++++ .../ui-webapp/src/repos/components/list/RepositoryEntry.tsx | 2 ++ 2 files changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7ef56053a6..bd6ceb194b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,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 +### Added +- Extension point to add links to the repository cards from plug ins ([#1041](https://github.com/scm-manager/scm-manager/pull/1041)) + ## 2.0.0-rc5 - 2020-03-12 ### Added - Added footer extension points for links and avatar diff --git a/scm-ui/ui-webapp/src/repos/components/list/RepositoryEntry.tsx b/scm-ui/ui-webapp/src/repos/components/list/RepositoryEntry.tsx index b0aba7cfb3..8f4f0c295a 100644 --- a/scm-ui/ui-webapp/src/repos/components/list/RepositoryEntry.tsx +++ b/scm-ui/ui-webapp/src/repos/components/list/RepositoryEntry.tsx @@ -3,6 +3,7 @@ import { Repository } from "@scm-manager/ui-types"; import { CardColumn, DateFromNow } from "@scm-manager/ui-components"; import RepositoryEntryLink from "./RepositoryEntryLink"; import RepositoryAvatar from "./RepositoryAvatar"; +import { ExtensionPoint } from "@scm-manager/ui-extensions"; type Props = { repository: Repository; @@ -47,6 +48,7 @@ class RepositoryEntry extends React.Component { {this.renderBranchesLink(repository, repositoryLink)} {this.renderChangesetsLink(repository, repositoryLink)} {this.renderSourcesLink(repository, repositoryLink)} + {this.renderModifyLink(repository, repositoryLink)} ); From 124aaa3e80df9cd793005f634b23e8b0c88a1f0f Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Sat, 14 Mar 2020 21:16:11 +0000 Subject: [PATCH 05/25] fix: upgrade org.eclipse.jetty:jetty-jmx from 9.4.22.v20191022 to 9.4.26.v20200117 Snyk has created this PR to upgrade org.eclipse.jetty:jetty-jmx from 9.4.22.v20191022 to 9.4.26.v20200117. See this package in NPM: https://www.npmjs.com/package/org.eclipse.jetty:jetty-jmx See this project in Snyk: https://app.snyk.io/org/scm-manager/project/9ae37cfe-98a5-4b6b-bbf7-ffa5cde55e58?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index a6a28ca542..faa2460349 100644 --- a/pom.xml +++ b/pom.xml @@ -847,7 +847,7 @@ 1.6.2 - 9.4.22.v20191022 + 9.4.26.v20200117 9.4.22.v20191022 @@ -870,7 +870,7 @@ 8 UTF-8 SCM-BSD - + 1.2.0.Final From 46f6971eae5c0438d05ef7737f899ae511af69b8 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Sat, 14 Mar 2020 21:16:26 +0000 Subject: [PATCH 06/25] fix: upgrade commons-daemon:commons-daemon from 1.1.0 to 1.2.2 Snyk has created this PR to upgrade commons-daemon:commons-daemon from 1.1.0 to 1.2.2. See this package in NPM: https://www.npmjs.com/package/commons-daemon:commons-daemon See this project in Snyk: https://app.snyk.io/org/scm-manager/project/9ae37cfe-98a5-4b6b-bbf7-ffa5cde55e58?utm_source=github&utm_medium=upgrade-pr --- scm-server/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scm-server/pom.xml b/scm-server/pom.xml index 4abaa49dc1..984b7d2ceb 100644 --- a/scm-server/pom.xml +++ b/scm-server/pom.xml @@ -196,7 +196,7 @@ BSD 3-Clause www.scm-manager.org ${project.description} - Sebastian Sdorra <s.sdorra@gmail.com> + Sebastian Sdorra <s.sdorra@gmail.com> noarch linux @@ -306,7 +306,7 @@ - 1.1.0 + 1.2.2 1.1.0 ${project.build.directory}/appassembler/commons-daemon/scm-server From 9f51f96a4fcca91df99493dd3ca87f070d6e1e96 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Sat, 14 Mar 2020 21:57:45 +0000 Subject: [PATCH 07/25] fix: upgrade org.slf4j:slf4j-simple from 1.7.25 to 1.7.30 Snyk has created this PR to upgrade org.slf4j:slf4j-simple from 1.7.25 to 1.7.30. See this package in NPM: https://www.npmjs.com/package/org.slf4j:slf4j-simple See this project in Snyk: https://app.snyk.io/org/scm-manager/project/c575ed09-e310-44e7-afc8-22b77c5873cf?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index a6a28ca542..6d3ae0defb 100644 --- a/pom.xml +++ b/pom.xml @@ -831,7 +831,7 @@ 5.2.0 - 1.7.25 + 1.7.30 1.2.3 3.0.1 @@ -870,7 +870,7 @@ 8 UTF-8 SCM-BSD - + 1.2.0.Final From cd7b79a0d777f8077d0e40823f112bb59d0121a6 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Sat, 14 Mar 2020 21:57:49 +0000 Subject: [PATCH 08/25] fix: upgrade com.google.inject:guice from 4.0 to 4.2.2 Snyk has created this PR to upgrade com.google.inject:guice from 4.0 to 4.2.2. See this package in NPM: https://www.npmjs.com/package/com.google.inject:guice See this project in Snyk: https://app.snyk.io/org/scm-manager/project/c575ed09-e310-44e7-afc8-22b77c5873cf?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index a6a28ca542..dda86a9077 100644 --- a/pom.xml +++ b/pom.xml @@ -839,7 +839,7 @@ 4.4.1.Final 1.19.4 2.10.0 - 4.0 + 4.2.2 2.3.0 6.1.0.Final @@ -870,7 +870,7 @@ 8 UTF-8 SCM-BSD - + 1.2.0.Final From 5b7247b8af052fef52e44db25f44a4bf64bb9362 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Sat, 14 Mar 2020 21:57:54 +0000 Subject: [PATCH 09/25] fix: upgrade org.jboss.resteasy:resteasy-core from 4.4.1.Final to 4.4.2.Final Snyk has created this PR to upgrade org.jboss.resteasy:resteasy-core from 4.4.1.Final to 4.4.2.Final. See this package in NPM: https://www.npmjs.com/package/org.jboss.resteasy:resteasy-core See this project in Snyk: https://app.snyk.io/org/scm-manager/project/c575ed09-e310-44e7-afc8-22b77c5873cf?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index a6a28ca542..569d80a8f2 100644 --- a/pom.xml +++ b/pom.xml @@ -836,7 +836,7 @@ 3.0.1 2.1.1 - 4.4.1.Final + 4.4.2.Final 1.19.4 2.10.0 4.0 @@ -870,7 +870,7 @@ 8 UTF-8 SCM-BSD - + 1.2.0.Final From ae8c6a2391a8ec2c621f147e6d964abba41a9970 Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Mon, 16 Mar 2020 08:49:42 +0100 Subject: [PATCH 10/25] replace node-sass with sass Because snyk reported 5 high and 11 medium vulns for node-sass and sass is the new reference implementation of sass. see https://snyk.io/node-js/node-sass --- scm-ui/ui-scripts/package.json | 2 +- scm-ui/ui-styles/package.json | 2 +- yarn.lock | 304 +++++++++------------------------ 3 files changed, 78 insertions(+), 230 deletions(-) diff --git a/scm-ui/ui-scripts/package.json b/scm-ui/ui-scripts/package.json index 7c0610625e..5df93fa572 100644 --- a/scm-ui/ui-scripts/package.json +++ b/scm-ui/ui-scripts/package.json @@ -16,9 +16,9 @@ "file-loader": "^4.2.0", "mini-css-extract-plugin": "^0.8.0", "mustache": "^3.1.0", - "node-sass": "^4.12.0", "optimize-css-assets-webpack-plugin": "^5.0.3", "react-refresh": "^0.7.2", + "sass": "^1.26.3", "sass-loader": "^8.0.0", "script-loader": "^0.7.2", "style-loader": "^1.0.0", diff --git a/scm-ui/ui-styles/package.json b/scm-ui/ui-styles/package.json index d4f160f2d7..86740eccd9 100644 --- a/scm-ui/ui-styles/package.json +++ b/scm-ui/ui-styles/package.json @@ -17,7 +17,7 @@ }, "devDependencies": { "css-loader": "^3.2.0", - "node-sass": "^4.12.0", + "sass": "^1.26.3", "sass-loader": "^8.0.0", "style-loader": "^1.0.0", "webpack": "^4.41.5", diff --git a/yarn.lock b/yarn.lock index 7af10ca445..42d56ee047 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3259,11 +3259,6 @@ alphanum-sort@^1.0.0: resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= -amdefine@>=0.0.4: - version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" - integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= - ansi-align@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" @@ -3353,6 +3348,14 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" +anymatch@~3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" + integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + app-root-dir@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/app-root-dir/-/app-root-dir-1.0.2.tgz#38187ec2dea7577fff033ffcb12172692ff6e118" @@ -3571,11 +3574,6 @@ async-each@^1.0.1: resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== -async-foreach@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" - integrity sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI= - async-limiter@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" @@ -4122,6 +4120,11 @@ binary-extensions@^1.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== +binary-extensions@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" + integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== + bindings@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" @@ -4129,13 +4132,6 @@ bindings@^1.5.0: dependencies: file-uri-to-path "1.0.0" -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= - dependencies: - inherits "~2.0.0" - bluebird@^3.3.5, bluebird@^3.5.1, bluebird@^3.5.3, bluebird@^3.5.5: version "3.7.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" @@ -4217,7 +4213,7 @@ braces@^2.3.1, braces@^2.3.2: split-string "^3.0.2" to-regex "^3.0.1" -braces@^3.0.1: +braces@^3.0.1, braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== @@ -4584,7 +4580,7 @@ chalk@2.4.2, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3. escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^1.1.1, chalk@^1.1.3: +chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= @@ -4640,6 +4636,21 @@ cheerio@^1.0.0-rc.3: lodash "^4.15.0" parse5 "^3.0.1" +"chokidar@>=2.0.0 <4.0.0": + version "3.3.1" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.1.tgz#c84e5b3d18d9a4d77558fef466b1bf16bbeb3450" + integrity sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.3.0" + optionalDependencies: + fsevents "~2.1.2" + chokidar@^2.0.2, chokidar@^2.0.4, chokidar@^2.1.8: version "2.1.8" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" @@ -5288,14 +5299,6 @@ cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" - integrity sha1-ElYDfsufDF9549bvE14wdwGEuYI= - dependencies: - lru-cache "^4.0.1" - which "^1.2.9" - crypto-browserify@^3.11.0: version "3.12.0" resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" @@ -7185,15 +7188,10 @@ fsevents@^1.2.7: bindings "^1.5.0" nan "^2.12.1" -fstream@^1.0.0, fstream@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.12.tgz#4e8ba8ee2d48be4f7d0de505455548eae5932045" - integrity sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg== - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" +fsevents@~2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805" + integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA== function-bind@^1.1.1: version "1.1.1" @@ -7238,13 +7236,6 @@ gauge@~2.7.3: strip-ansi "^3.0.1" wide-align "^1.1.0" -gaze@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" - integrity sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g== - dependencies: - globule "^1.0.0" - genfun@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/genfun/-/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537" @@ -7386,7 +7377,7 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" -glob-parent@^5.0.0: +glob-parent@^5.0.0, glob-parent@~5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.0.tgz#5f4c1d1e748d30cd73ad2944b3577a81b081e8c2" integrity sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw== @@ -7403,7 +7394,7 @@ glob-to-regexp@^0.4.0: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.1.1: +glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -7516,15 +7507,6 @@ globby@^9.2.0: pify "^4.0.1" slash "^2.0.0" -globule@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/globule/-/globule-1.3.0.tgz#41d0e9fb44afd4b80d93a23263714f90b3dec904" - integrity sha512-YlD4kdMqRCQHrhVdonet4TdRtv1/sZKepvoxNT4Nrhrp5HI8XFfc8kFlGlBn2myBo80aGp8Eft259mbcUJhgSg== - dependencies: - glob "~7.1.1" - lodash "~4.17.10" - minimatch "~3.0.2" - good-listener@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" @@ -8076,11 +8058,6 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= -in-publish@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" - integrity sha1-4g/146KvwmkDILbcVSaCqcf631E= - indent-string@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" @@ -8116,7 +8093,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -8330,6 +8307,13 @@ is-binary-path@^1.0.0: dependencies: binary-extensions "^1.0.0" +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + is-boolean-object@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.0.1.tgz#10edc0900dd127697a92f6f9807c7617d68ac48e" @@ -8494,7 +8478,7 @@ is-glob@^3.1.0: dependencies: is-extglob "^2.1.0" -is-glob@^4.0.0, is-glob@^4.0.1: +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== @@ -9175,11 +9159,6 @@ jest@^24.9.0: import-local "^2.0.0" jest-cli "^24.9.0" -js-base64@^2.1.8: - version "2.5.1" - resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.5.1.tgz#1efa39ef2c5f7980bb1784ade4a8af2de3291121" - integrity sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw== - "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -9650,7 +9629,7 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= -lodash@^4.0.0, lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.5, lodash@^4.2.1, lodash@~4.17.10: +lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.5, lodash@^4.2.1: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== @@ -9688,14 +9667,6 @@ lowlight@1.13.1, lowlight@^1.13.0, lowlight@~1.11.0: fault "^1.0.0" highlight.js "~9.16.0" -lru-cache@^4.0.1: - version "4.1.5" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" - integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -9869,7 +9840,7 @@ memory-fs@^0.5.0: errno "^0.1.3" readable-stream "^2.0.1" -meow@^3.3.0, meow@^3.7.0: +meow@^3.3.0: version "3.7.0" resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= @@ -10064,7 +10035,7 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= -minimatch@3.0.4, minimatch@^3.0.2, minimatch@^3.0.4, minimatch@~3.0.2: +minimatch@3.0.4, minimatch@^3.0.2, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== @@ -10176,7 +10147,7 @@ mkdirp-promise@^5.0.1: dependencies: mkdirp "*" -mkdirp@*, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: +mkdirp@*, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= @@ -10272,7 +10243,7 @@ mz@^2.5.0: object-assign "^4.0.1" thenify-all "^1.0.0" -nan@^2.12.1, nan@^2.13.2: +nan@^2.12.1: version "2.14.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== @@ -10371,24 +10342,6 @@ node-forge@0.9.0: resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.9.0.tgz#d624050edbb44874adca12bb9a52ec63cb782579" integrity sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ== -node-gyp@^3.8.0: - version "3.8.0" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.8.0.tgz#540304261c330e80d0d5edce253a68cb3964218c" - integrity sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA== - dependencies: - fstream "^1.0.0" - glob "^7.0.3" - graceful-fs "^4.1.2" - mkdirp "^0.5.0" - nopt "2 || 3" - npmlog "0 || 1 || 2 || 3 || 4" - osenv "0" - request "^2.87.0" - rimraf "2" - semver "~5.3.0" - tar "^2.0.0" - which "1" - node-gyp@^5.0.2: version "5.0.7" resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.0.7.tgz#dd4225e735e840cf2870e4037c2ed9c28a31719e" @@ -10472,36 +10425,6 @@ node-releases@^1.1.29, node-releases@^1.1.46: dependencies: semver "^6.3.0" -node-sass@^4.12.0: - version "4.13.1" - resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.13.1.tgz#9db5689696bb2eec2c32b98bfea4c7a2e992d0a3" - integrity sha512-TTWFx+ZhyDx1Biiez2nB0L3YrCZ/8oHagaDalbuBSlqXgUPsdkUSzJsVxeDO9LtPB49+Fh3WQl3slABo6AotNw== - dependencies: - async-foreach "^0.1.3" - chalk "^1.1.1" - cross-spawn "^3.0.0" - gaze "^1.0.0" - get-stdin "^4.0.1" - glob "^7.0.3" - in-publish "^2.0.0" - lodash "^4.17.15" - meow "^3.7.0" - mkdirp "^0.5.1" - nan "^2.13.2" - node-gyp "^3.8.0" - npmlog "^4.0.0" - request "^2.88.0" - sass-graph "^2.2.4" - stdout-stream "^1.4.0" - "true-case-path" "^1.0.2" - -"nopt@2 || 3": - version "3.0.6" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" - integrity sha1-xkZdvwirzU2zWTF/eaxopkayj/k= - dependencies: - abbrev "1" - nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -10534,7 +10457,7 @@ normalize-path@^2.1.1: dependencies: remove-trailing-separator "^1.0.1" -normalize-path@^3.0.0: +normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== @@ -10620,7 +10543,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.1.2: +npmlog@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -10891,7 +10814,7 @@ os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= -osenv@0, osenv@^0.1.4, osenv@^0.1.5: +osenv@^0.1.4, osenv@^0.1.5: version "0.1.5" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== @@ -11251,7 +11174,7 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= -picomatch@^2.0.5: +picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.0.7: version "2.2.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.1.tgz#21bac888b6ed8601f831ce7816e335bc779f0a4a" integrity sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA== @@ -11923,11 +11846,6 @@ prr@~1.0.1: resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= - psl@^1.1.24, psl@^1.1.28: version "1.7.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.7.0.tgz#f1c4c47a8ef97167dea5d6bbf4816d736e884a3c" @@ -12593,6 +12511,13 @@ readdirp@^2.2.1: micromatch "^3.1.10" readable-stream "^2.0.2" +readdirp@~3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.3.0.tgz#984458d13a1e42e2e9f5841b129e162f369aff17" + integrity sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ== + dependencies: + picomatch "^2.0.7" + realpath-native@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.1.0.tgz#2003294fea23fb0672f2476ebe22fcf498a2d65c" @@ -13016,13 +12941,6 @@ rgba-regex@^1.0.0: resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= -rimraf@2, rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3, rimraf@^2.7.1: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - rimraf@2.6.3: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" @@ -13030,6 +12948,13 @@ rimraf@2.6.3: dependencies: glob "^7.1.3" +rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3, rimraf@^2.7.1: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" @@ -13114,16 +13039,6 @@ sane@^4.0.3: minimist "^1.1.1" walker "~1.0.5" -sass-graph@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" - integrity sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k= - dependencies: - glob "^7.0.0" - lodash "^4.0.0" - scss-tokenizer "^0.2.3" - yargs "^7.0.0" - sass-loader@^8.0.0: version "8.0.2" resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-8.0.2.tgz#debecd8c3ce243c76454f2e8290482150380090d" @@ -13135,6 +13050,13 @@ sass-loader@^8.0.0: schema-utils "^2.6.1" semver "^6.3.0" +sass@^1.26.3: + version "1.26.3" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.26.3.tgz#412df54486143b76b5a65cdf7569e86f44659f46" + integrity sha512-5NMHI1+YFYw4sN3yfKjpLuV9B5l7MqQ6FlkTcC4FT+oHbBRUZoSjHrrt/mE0nFXJyY2kQtU9ou9HxvFVjLFuuw== + dependencies: + chokidar ">=2.0.0 <4.0.0" + sax@^1.2.4, sax@~1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" @@ -13172,14 +13094,6 @@ script-loader@^0.7.2: dependencies: raw-loader "~0.5.1" -scss-tokenizer@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" - integrity sha1-jrBtualyMzOCTT9VMGQRSYR85dE= - dependencies: - js-base64 "^2.1.8" - source-map "^0.4.2" - select-hose@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" @@ -13212,11 +13126,6 @@ semver@^6.0.0, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@~5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" - integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8= - send@0.17.1: version "0.17.1" resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" @@ -13554,13 +13463,6 @@ source-map-url@^0.4.0: resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= -source-map@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" - integrity sha1-66T12pwNyZneaAMti092FzZSA2s= - dependencies: - amdefine ">=0.0.4" - source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -13724,13 +13626,6 @@ static-extend@^0.1.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= -stdout-stream@^1.4.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" - integrity sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA== - dependencies: - readable-stream "^2.0.1" - stealthy-require@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" @@ -14147,15 +14042,6 @@ tapable@^1.0.0, tapable@^1.1.3: resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== -tar@^2.0.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.2.tgz#0ca8848562c7299b8b446ff6a4d60cdbb23edc40" - integrity sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA== - dependencies: - block-stream "*" - fstream "^1.0.12" - inherits "2" - tar@^4.4.10, tar@^4.4.12, tar@^4.4.8: version "4.4.13" resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" @@ -14475,13 +14361,6 @@ trough@^1.0.0: resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.4.tgz#3b52b1f13924f460c3fbfd0df69b587dbcbc762e" integrity sha512-tdzBRDGWcI1OpPVmChbdSKhvSVurznZ8X36AYURAcl+0o2ldlCY2XPzyXNNxwJwwyIU+rIglTCG4kxtNKBQH7Q== -"true-case-path@^1.0.2": - version "1.0.3" - resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.3.tgz#f813b5a8c86b40da59606722b144e3225799f47d" - integrity sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew== - dependencies: - glob "^7.1.2" - ts-dedent@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-1.1.0.tgz#67983940793183dc7c7f820acb66ba02cdc33c6e" @@ -15186,7 +15065,7 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@1, which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: +which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -15368,11 +15247,6 @@ y18n@^3.2.1: resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= - yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" @@ -15428,13 +15302,6 @@ yargs-parser@^4.2.0: dependencies: camelcase "^3.0.0" -yargs-parser@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" - integrity sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo= - dependencies: - camelcase "^3.0.0" - yargs@12.0.5: version "12.0.5" resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" @@ -15521,22 +15388,3 @@ yargs@^14.2.2: which-module "^2.0.0" y18n "^4.0.0" yargs-parser "^15.0.0" - -yargs@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" - integrity sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg= - dependencies: - camelcase "^3.0.0" - cliui "^3.2.0" - decamelize "^1.1.1" - get-caller-file "^1.0.1" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^1.0.2" - which-module "^1.0.0" - y18n "^3.2.1" - yargs-parser "^5.0.0" From b3fe97309624f729d4bfc3155a330aff71288e29 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Mon, 16 Mar 2020 22:15:39 +0000 Subject: [PATCH 11/25] fix: upgrade com.fasterxml.jackson.core:jackson-core from 2.10.0 to 2.10.2 Snyk has created this PR to upgrade com.fasterxml.jackson.core:jackson-core from 2.10.0 to 2.10.2. See this package in NPM: https://www.npmjs.com/package/com.fasterxml.jackson.core:jackson-core See this project in Snyk: https://app.snyk.io/org/scm-manager/project/0397d943-538d-483e-9c87-a3f7e7665d7b?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d3301168cb..6104fd2f1f 100644 --- a/pom.xml +++ b/pom.xml @@ -838,7 +838,7 @@ 2.1.1 4.4.2.Final 1.19.4 - 2.10.0 + 2.10.2 4.2.2 2.3.0 6.1.0.Final From 2114923932cd7e086094fd6d8613e444f470f2c1 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Mon, 16 Mar 2020 22:15:45 +0000 Subject: [PATCH 12/25] fix: upgrade org.mapstruct:mapstruct-jdk8 from 1.2.0.Final to 1.3.1.Final Snyk has created this PR to upgrade org.mapstruct:mapstruct-jdk8 from 1.2.0.Final to 1.3.1.Final. See this package in NPM: https://www.npmjs.com/package/org.mapstruct:mapstruct-jdk8 See this project in Snyk: https://app.snyk.io/org/scm-manager/project/0397d943-538d-483e-9c87-a3f7e7665d7b?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d3301168cb..18459d371d 100644 --- a/pom.xml +++ b/pom.xml @@ -871,7 +871,7 @@ UTF-8 SCM-BSD - 1.2.0.Final + 1.3.1.Final From 4d4ceeb6273653a060788acf3263f9d15217cd72 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Tue, 17 Mar 2020 01:00:33 +0000 Subject: [PATCH 13/25] fix: upgrade org.junit.jupiter:junit-jupiter-params from 5.2.0 to 5.6.0 Snyk has created this PR to upgrade org.junit.jupiter:junit-jupiter-params from 5.2.0 to 5.6.0. See this package in NPM: https://www.npmjs.com/package/org.junit.jupiter:junit-jupiter-params See this project in Snyk: https://app.snyk.io/org/scm-manager/project/4ac22872-f5a6-4220-bfe8-e6e5bf4c5fcb?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d3301168cb..ae2abd7a70 100644 --- a/pom.xml +++ b/pom.xml @@ -828,7 +828,7 @@ 2.28.2 1.3 - 5.2.0 + 5.6.0 1.7.30 From f73a383362643febed8cb833e12ba5aee3a7c1cb Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Tue, 17 Mar 2020 01:40:37 +0000 Subject: [PATCH 14/25] fix: upgrade bulma from 0.7.5 to 0.8.0 Snyk has created this PR to upgrade bulma from 0.7.5 to 0.8.0. See this package in NPM: https://www.npmjs.com/package/bulma See this project in Snyk: https://app.snyk.io/org/scm-manager/project/b494e382-e614-456b-8015-0be5a5d07674?utm_source=github&utm_medium=upgrade-pr --- scm-ui/ui-styles/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scm-ui/ui-styles/package.json b/scm-ui/ui-styles/package.json index d4f160f2d7..b4fffb547e 100644 --- a/scm-ui/ui-styles/package.json +++ b/scm-ui/ui-styles/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "@fortawesome/fontawesome-free": "^5.11.2", - "bulma": "^0.7.5", + "bulma": "^0.8.0", "bulma-popover": "^1.0.0", "bulma-tooltip": "^3.0.0", "react-diff-view": "^2.4.1" From eefcbad4660c46f4490adf8b637fd3354aaf2aa3 Mon Sep 17 00:00:00 2001 From: Florian Scholdei <45232454+fscholdei@users.noreply.github.com> Date: Wed, 18 Mar 2020 10:13:26 +0100 Subject: [PATCH 15/25] Add scm-manager logo --- docs/screenshots/logo_transparent.png | Bin 0 -> 44070 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/screenshots/logo_transparent.png diff --git a/docs/screenshots/logo_transparent.png b/docs/screenshots/logo_transparent.png new file mode 100644 index 0000000000000000000000000000000000000000..0f238a38ba59709f60b270accb0842446e67712a GIT binary patch literal 44070 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

0CP2 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 literal 0 HcmV?d00001 From 58821f47edd61f041948f30637ac8a34f25558e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Wed, 18 Mar 2020 16:10:34 +0100 Subject: [PATCH 16/25] Fix filename for Windows --- docs/Home.md | 2 +- ... => UI Additions or Changes to ui-components or ui-types.md} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename docs/v2/{UI: Additions or Changes to ui-components or ui-types.md => UI Additions or Changes to ui-components or ui-types.md} (100%) diff --git a/docs/Home.md b/docs/Home.md index bd3008f3dd..02bb5f4e8d 100644 --- a/docs/Home.md +++ b/docs/Home.md @@ -118,7 +118,7 @@ for more information. - [i18n for Plugins](v2/i18n%20for%20Plugins.md "wikilink") - [Extension Points](v2/Extension-Points.md "wikilink") - [API changes](v2/API%20changes.md "wikilink") -- [ui-components/ui-types](v2/UI:%20Additions%20or%20Changes%20to%20ui-components%20or%20ui-types.md "wikilink") +- [ui-components/ui-types](v2/UI%20Additions%20or%20Changes%20to%20ui-components%20or%20ui-types.md "wikilink") - [Vulnerabilities](v2/vulnerabilities.md "wikilink") - [Common pitfall](v2/Common%20pitfall.md "wikilink") - [Release process](v2/Release%20process.md "wikilink") diff --git a/docs/v2/UI: Additions or Changes to ui-components or ui-types.md b/docs/v2/UI Additions or Changes to ui-components or ui-types.md similarity index 100% rename from docs/v2/UI: Additions or Changes to ui-components or ui-types.md rename to docs/v2/UI Additions or Changes to ui-components or ui-types.md From 49cc3ebbda89c4edbb3ed662f051439eed8b1ac3 Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Wed, 18 Mar 2020 21:39:17 +0100 Subject: [PATCH 17/25] #1049 fix ui build on windows --- scm-ui/ui-scripts/src/lerna.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scm-ui/ui-scripts/src/lerna.js b/scm-ui/ui-scripts/src/lerna.js index b5404fbd62..6479b112fb 100644 --- a/scm-ui/ui-scripts/src/lerna.js +++ b/scm-ui/ui-scripts/src/lerna.js @@ -1,7 +1,10 @@ const { spawnSync } = require("child_process"); +const os = require("os"); + +const yarnCmd = os.platform() === "win32" ? "yarn.cmd" : "yarn"; const yarn = args => { - const result = spawnSync("yarn", args, { stdio: "inherit" }); + const result = spawnSync(yarnCmd, args, { stdio: "inherit" }); if (result.error) { console.log("could not start yarn command:", result.error); process.exit(2); From 5c9a03a3847be36838a5957444048ed192d617a7 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Thu, 19 Mar 2020 02:37:59 +0000 Subject: [PATCH 18/25] fix: upgrade org.glassfish:javax.json from 1.0.4 to 1.1.4 Snyk has created this PR to upgrade org.glassfish:javax.json from 1.0.4 to 1.1.4. See this package in NPM: https://www.npmjs.com/package/org.glassfish:javax.json See this project in Snyk: https://app.snyk.io/org/scm-manager/project/19b9a56b-d5b5-4d36-a7e8-665c853bc716?utm_source=github&utm_medium=upgrade-pr --- scm-it/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scm-it/pom.xml b/scm-it/pom.xml index efcc59d212..e2038e2816 100644 --- a/scm-it/pom.xml +++ b/scm-it/pom.xml @@ -84,7 +84,7 @@ org.glassfish javax.json - 1.0.4 + 1.1.4 runtime From 19ce54d202c129112ef03d0426b1908e33ef7337 Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Thu, 19 Mar 2020 07:18:17 +0100 Subject: [PATCH 19/25] update CHANGELOG.md --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index bd6ceb194b..8de0a1ae51 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Extension point to add links to the repository cards from plug ins ([#1041](https://github.com/scm-manager/scm-manager/pull/1041)) +### Fixed +- Build on windows ([#1048](https://github.com/scm-manager/scm-manager/issues/1048), [#1049](https://github.com/scm-manager/scm-manager/issues/1049), [#1056](https://github.com/scm-manager/scm-manager/pull/1056)) + ## 2.0.0-rc5 - 2020-03-12 ### Added - Added footer extension points for links and avatar From 70149865a891ee73340eeaed0f13e8f0ccfa7f7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Thu, 19 Mar 2020 08:19:12 +0100 Subject: [PATCH 20/25] Fix unnecessary stubbing --- .../java/sonia/scm/web/WireProtocolRequestMockFactory.java | 5 ++--- .../src/test/java/sonia/scm/web/WireProtocolTest.java | 6 ++++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/scm-plugins/scm-hg-plugin/src/test/java/sonia/scm/web/WireProtocolRequestMockFactory.java b/scm-plugins/scm-hg-plugin/src/test/java/sonia/scm/web/WireProtocolRequestMockFactory.java index d1f5124b3a..e319b07608 100644 --- a/scm-plugins/scm-hg-plugin/src/test/java/sonia/scm/web/WireProtocolRequestMockFactory.java +++ b/scm-plugins/scm-hg-plugin/src/test/java/sonia/scm/web/WireProtocolRequestMockFactory.java @@ -3,12 +3,12 @@ package sonia.scm.web; import com.google.common.collect.Lists; import javax.servlet.http.HttpServletRequest; - import java.util.Collections; import java.util.List; import java.util.Locale; -import static org.mockito.Mockito.*; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; public class WireProtocolRequestMockFactory { @@ -88,7 +88,6 @@ public class WireProtocolRequestMockFactory { private HttpServletRequest base(String method, String queryStringValue) { HttpServletRequest request = mock(HttpServletRequest.class); - when(request.getRequestURI()).thenReturn(repositoryPath); when(request.getMethod()).thenReturn(method); queryString(request, queryStringValue); diff --git a/scm-plugins/scm-hg-plugin/src/test/java/sonia/scm/web/WireProtocolTest.java b/scm-plugins/scm-hg-plugin/src/test/java/sonia/scm/web/WireProtocolTest.java index 9237127c88..40af1acfeb 100644 --- a/scm-plugins/scm-hg-plugin/src/test/java/sonia/scm/web/WireProtocolTest.java +++ b/scm-plugins/scm-hg-plugin/src/test/java/sonia/scm/web/WireProtocolTest.java @@ -47,7 +47,10 @@ import java.util.Collections; import java.util.List; import static org.hamcrest.Matchers.contains; -import static org.junit.Assert.*; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.when; /** @@ -98,7 +101,6 @@ public class WireProtocolTest { @Test public void testGetCommandsOfWithHgArgsPost() throws IOException { - when(request.getMethod()).thenReturn("POST"); when(request.getQueryString()).thenReturn("cmd=batch"); when(request.getIntHeader("X-HgArgs-Post")).thenReturn(29); when(request.getHeaderNames()).thenReturn(Collections.enumeration(Lists.newArrayList("X-HgArgs-Post"))); From 99e2781d93b793e0a395544412e0203cbbb83e75 Mon Sep 17 00:00:00 2001 From: Eduard Heimbuch Date: Thu, 19 Mar 2020 10:06:54 +0100 Subject: [PATCH 21/25] show specific notification for each plugin action --- scm-ui/ui-webapp/public/locales/de/admin.json | 5 ++++- scm-ui/ui-webapp/public/locales/en/admin.json | 5 ++++- .../admin/plugins/components/PluginModal.tsx | 4 ++-- .../components/SuccessNotification.tsx | 21 +++++++++++++++++-- 4 files changed, 29 insertions(+), 6 deletions(-) diff --git a/scm-ui/ui-webapp/public/locales/de/admin.json b/scm-ui/ui-webapp/public/locales/de/admin.json index 2bfc2d6b5b..e65a10eb85 100644 --- a/scm-ui/ui-webapp/public/locales/de/admin.json +++ b/scm-ui/ui-webapp/public/locales/de/admin.json @@ -61,7 +61,10 @@ "newVersion": "Neue Version", "dependencyNotification": "Mit diesem Plugin werden folgende Abhängigkeiten mit installiert, wenn sie noch nicht vorhanden sind!", "dependencies": "Abhängigkeiten", - "successNotification": "Das Plugin wurde erfolgreich installiert. Um Änderungen an der UI zu sehen, muss die Seite neu geladen werden:", + "installedNotification": "Das Plugin wurde erfolgreich installiert. Um Änderungen an der UI zu sehen, muss die Seite neu geladen werden:", + "updatedNotification": "Das Plugin wurde erfolgreich aktualisiert. Um Änderungen an der UI zu sehen, muss die Seite neu geladen werden:", + "uninstalledNotification": "Das Plugin wurde erfolgreich installiert. Um Änderungen an der UI zu sehen, muss die Seite neu geladen werden:", + "executedChangesNotification": "Die Plugin Änderungen wurden erfolgreich durchgeführt. Um Änderungen an der UI zu sehen, muss die Seite neu geladen werden:", "reload": "jetzt neu laden", "restartNotification": "Der SCM-Manager Kontext sollte nur neu gestartet werden, wenn aktuell niemand damit arbeitet.", "executePending": "Die folgenden Plugin-Änderungen werden ausgeführt. Anschließend wird der SCM-Manager Kontext neu gestartet.", diff --git a/scm-ui/ui-webapp/public/locales/en/admin.json b/scm-ui/ui-webapp/public/locales/en/admin.json index b061901df2..5e7e44dcd2 100644 --- a/scm-ui/ui-webapp/public/locales/en/admin.json +++ b/scm-ui/ui-webapp/public/locales/en/admin.json @@ -61,7 +61,10 @@ "newVersion": "New version", "dependencyNotification": "With this plugin, the following dependencies will be installed if they are not available yet!", "dependencies": "Dependencies", - "successNotification": "Successful installed plugin. You have to reload the page, to see ui changes:", + "installedNotification": "Successfully installed plugin. You have to reload the page, to see ui changes:", + "updatedNotification": "Successfully updated plugin. You have to reload the page, to see ui changes:", + "uninstalledNotification": "Successfully uninstalled plugin. You have to reload the page, to see ui changes:", + "executedChangesNotification": "Successfully executed plugin changes. You have to reload the page, to see ui changes:", "reload": "reload now", "restartNotification": "You should only restart the scm-manager context if no one else is currently working with it.", "executePending": "The following plugin changes will be executed and after that the scm-manager context will be restarted.", diff --git a/scm-ui/ui-webapp/src/admin/plugins/components/PluginModal.tsx b/scm-ui/ui-webapp/src/admin/plugins/components/PluginModal.tsx index 1863ce0843..d8dd1bdd9c 100644 --- a/scm-ui/ui-webapp/src/admin/plugins/components/PluginModal.tsx +++ b/scm-ui/ui-webapp/src/admin/plugins/components/PluginModal.tsx @@ -161,7 +161,7 @@ class PluginModal extends React.Component { } renderNotifications = () => { - const { t } = this.props; + const { t, pluginAction } = this.props; const { restart, error, success } = this.state; if (error) { return ( @@ -172,7 +172,7 @@ class PluginModal extends React.Component { } else if (success) { return (

- +
); } else if (restart) { diff --git a/scm-ui/ui-webapp/src/admin/plugins/components/SuccessNotification.tsx b/scm-ui/ui-webapp/src/admin/plugins/components/SuccessNotification.tsx index 8e01e84bbd..cbee8e3e15 100644 --- a/scm-ui/ui-webapp/src/admin/plugins/components/SuccessNotification.tsx +++ b/scm-ui/ui-webapp/src/admin/plugins/components/SuccessNotification.tsx @@ -1,13 +1,30 @@ import React from "react"; import { WithTranslation, withTranslation } from "react-i18next"; import { Notification } from "@scm-manager/ui-components"; +import { PluginAction } from "./PluginEntry"; + +type Props = WithTranslation & { + pluginAction?: string; +}; + +class InstallSuccessNotification extends React.Component { + createMessageForPluginAction = () => { + const { pluginAction, t } = this.props; + if (pluginAction === PluginAction.INSTALL) { + return t("plugins.modal.installedNotification"); + } else if (pluginAction === PluginAction.UPDATE) { + return t("plugins.modal.updatedNotification"); + } else if (pluginAction === PluginAction.UNINSTALL) { + return t("plugins.modal.uninstalledNotification"); + } + return t("plugins.modal.executedChangesNotification"); + }; -class InstallSuccessNotification extends React.Component { render() { const { t } = this.props; return ( - {t("plugins.modal.successNotification")}{" "} + {this.createMessageForPluginAction()}{" "}
window.location.reload(true)}>{t("plugins.modal.reload")} ); From e30bbcfc6c50016076d451eb1eef868435e58910 Mon Sep 17 00:00:00 2001 From: Eduard Heimbuch Date: Thu, 19 Mar 2020 10:11:13 +0100 Subject: [PATCH 22/25] update CHANGELOG.md --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index bd6ceb194b..c3f417e570 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Extension point to add links to the repository cards from plug ins ([#1041](https://github.com/scm-manager/scm-manager/pull/1041)) +### Fixed +- Show specific notification for plugin actions on plugin administration ([#1057](https://github.com/scm-manager/scm-manager/pull/1057)) + ## 2.0.0-rc5 - 2020-03-12 ### Added - Added footer extension points for links and avatar From 882f2f074411e2a0052217011d3f206905ebe917 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Thu, 19 Mar 2020 22:15:57 +0000 Subject: [PATCH 23/25] fix: upgrade org.apache.shiro:shiro-core from 1.4.1 to 1.5.1 Snyk has created this PR to upgrade org.apache.shiro:shiro-core from 1.4.1 to 1.5.1. See this package in NPM: https://www.npmjs.com/package/org.apache.shiro:shiro-core See this project in Snyk: https://app.snyk.io/org/scm-manager/project/0397d943-538d-483e-9c87-a3f7e7665d7b?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9143814968..77773a2f54 100644 --- a/pom.xml +++ b/pom.xml @@ -852,7 +852,7 @@ 1.2.0 - 1.4.1 + 1.5.1 5.6.1.202002131546-r-scm1 From 4d88765ea57c96c53af543b6e4dbf64905adaee2 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Thu, 19 Mar 2020 22:16:07 +0000 Subject: [PATCH 24/25] fix: upgrade org.hibernate.validator:hibernate-validator from 6.1.0.Final to 6.1.2.Final Snyk has created this PR to upgrade org.hibernate.validator:hibernate-validator from 6.1.0.Final to 6.1.2.Final. See this package in NPM: https://www.npmjs.com/package/org.hibernate.validator:hibernate-validator See this project in Snyk: https://app.snyk.io/org/scm-manager/project/0397d943-538d-483e-9c87-a3f7e7665d7b?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9143814968..4d0ec84f9f 100644 --- a/pom.xml +++ b/pom.xml @@ -841,7 +841,7 @@ 2.10.2 4.2.2 2.3.0 - 6.1.0.Final + 6.1.2.Final 1.6.2 From 00f99eb603586edb3bd28bdf2ad7a788c2c3e778 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Thu, 19 Mar 2020 22:16:11 +0000 Subject: [PATCH 25/25] fix: upgrade de.otto.edison:edison-hal from 2.0.1 to 2.1.0 Snyk has created this PR to upgrade de.otto.edison:edison-hal from 2.0.1 to 2.1.0. See this package in NPM: https://www.npmjs.com/package/de.otto.edison:edison-hal See this project in Snyk: https://app.snyk.io/org/scm-manager/project/0397d943-538d-483e-9c87-a3f7e7665d7b?utm_source=github&utm_medium=upgrade-pr --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9143814968..43900ce51e 100644 --- a/pom.xml +++ b/pom.xml @@ -200,7 +200,7 @@ de.otto.edison edison-hal - 2.0.1 + 2.1.0