|
|
高大的卤蛋
3 年前 |
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement . We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your accountWhen I use a git repository via an HTTP link NPM "takes liberties" with it, which breaks my build:
$ npm init -y
Wrote to /Users/eugene.lazutkin/Work/temp/package.json:
"name": "temp",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
"keywords": [],
"author": "",
"license": "ISC"
$ npm i --save https://github.com/uhop/stream-chain.git
added 1 package, and audited 2 packages in 3s
found 0 vulnerabilities
It produces
package-lock.json
:
Note that
https://github.com/uhop/stream-chain.git
was replaced with
github:uhop/stream-chain
, which is probably OK in this case. But other two links (?) are rewritten from
https://github.com/uhop/stream-chain.git
to
git+ssh://git@github.com/uhop/stream-chain.git
, which is clearly bad.
The problem is that a build bot we use in similar situations can access private git repositories using HTTP, but not SSH for security reasons. It fails on an authentication. Rewriting
https://github.com/uhop/stream-chain.git
to
git+ssh://git@github.com/uhop/stream-chain.git
is not acceptable for that reasons.
The fix is relatively minor yet unpleasant: we have to replace
npm ci
with
npm i
, which takes more time and introduced instabilities with other dependencies.
When running
npm ci
it should use the original URL with the HTTP authentication instead of SSH.
See the description and do the same steps using git repositories (github only?) as dependencies.
OS: Mac
Node: 15.7.0
NPM: 7.4.3
Just to point it out explicitly:
https://github.com/uhop/stream-chain.git
— note
https://
part of it.
package-lock.json
it is mentioned three times.
git+ssh://git@github.com/uhop/stream-chain.git#459f5a1708c138b6e0abaae4cf103c3488e1e78e
.
git+ssh://git@github.com
part.
ssh
rather than
https
protocol and fails.
ssh
, yet we can use
https
.
I don't know if the bug is specific to GitHub: adding
https://github.com/uhop/stream-chain.git
was transformed into
github:uhop/stream-chain
(please peruse my bug report above), and who knows what protocol it assumes. But not all repositories support
ssh
. We clearly have a bug on our hands.
I hope I explained the problem better now. Please do not hesitate to ask, if something is left unclear.
It came to my attention that this is a documented behavior that breaks private repositories and environments without
ssh
access (from
https://blog.npmjs.org/post/626173315965468672/npm-v7-series-beta-release-and-semver-major
):
Git dependencies on known git hosts (GitHub, BitBucket, etc.) will always attempt to fetch package contents from the relevant tarball CDNs if possible, falling back to git+ssh for private packages. resolved value in package-lock.json will always reflect the git+ssh url value. Saved value in package.json dependencies will always reflect the canonical shorthand value.
Clearly this is not correct and should be fixed.
This is a breaking change in npm v7 and prevents anyone using even public packages without ssh keys.
We have made a fork of an npm package and host it as a public repo. We refer to it using a
github:
link. In v6 this github link was populated to package-lock.json as well, which worked fine. In v7 it is converted into
git+ssh:
which fails in our CI/CD pipeline as it doesn't have any ssh keys configured.
We don't want to add ssh keys to our CI pipeline just to fetch public packages, so I don't see any way we can upgrade. I'd be glad to hear of any workaround.
Specific example:
In package.json referring to https://github.com/Vincit/winston-azure-transport :
"winston-azure-transport": "github:Vincit/winston-azure-transport#ed07d0685ca601638ab8ebcf660128848dd30215"
Diff of package-lock.json between npm v6 and v7:
"winston-azure-transport": {
- "version": "github:Vincit/winston-azure-transport#ed07d0685ca601638ab8ebcf660128848dd30215",
- "from": "github:Vincit/winston-azure-transport#ed07d0685ca601638ab8ebcf660128848dd30215",```
+ "version": "git+ssh://git@github.com/Vincit/winston-azure-transport.git#ed07d0685ca601638ab8ebcf660128848dd30215",
+ "from": "winston-azure-transport@github:Vincit/winston-azure-transport#ed07d0685ca601638ab8ebcf660128848dd30215",
Our CI now fails with:
npm ERR! Error while executing:
npm ERR! /usr/bin/git ls-remote -h -t ssh://git@github.com/Vincit/winston-azure-transport.git
npm ERR!
npm ERR! git@github.com: Permission denied (publickey).
npm ERR! fatal: Could not read from remote repository.
npm ERR!
npm ERR! Please make sure you have the correct access rights
npm ERR! and the repository exists.
npm ERR!
npm ERR! exited with error code: 128
This is tricky.
We currently keep the https url if auth is set in the url, because presumably you need that auth to access the repo.
The tricky bit is that using https without auth in the url will trigger a prompt to enter a username and password on the command line, which will fail (or at least be confusing and strange) in many cases where an install with ssh would work fine.
If the repo is public, and a git sha is specified in the spec that we're fetching, then we never hit it via git at all; npm will just fetch the tarball from the appropriate CDN url for the known host. However, if you do not have a git sha in the spec (typically, because there's no lockfile present), then we will have to do a git rev-list to figure out which sha we need to fetch, and that's where it runs into trouble.
Perhaps an approach that both works in build scenarios without ssh keys and for dev machines where ssh keys are present, while minimizing the scenarios where we need to prompt for a username/password for basic auth, would be to do the following for resolving any known-host git spec:
If the spec has a git sha, just fetch the tarball from the CDN, and we're done. No git commands needed. If that fails, continue (either a private package or an invalid git sha).
If the spec is git+https, and has auth specified, save the full git+https url, and only ever access via https.
Attempt to fetch the rev-list via the git+ssh url for the known host/repo. This will fail if ssh keys are not available, but at least will do so without confusingly prompting for user interaction, in the case of private repos where ssh keys are available. If that fails, continue.
Attempt to fetch the rev-list via the git+https url for the known host/repo. This will fail if auth is required for a private package. (Note: best to just close stdin immediately, so that it fails as quickly as possible.) But, it will succeed in cases where auth is not required and ssh keys are not available.
Maybe we could also add a config to tell npm which git interaction to prefer, thus swapping the order of (3) and (4) above? --git-prefer=(ssh-first|https-first|ssh-only|https-only), defaulting to ssh-first? Then you could set npm_config_git_prefer=https-only in the build environment, and have it never try ssh at all.
Having an all repo config is probably not the best idea, as packages come in all shapes and forms.
I think respecting the installation method provided during the npm install is probably the best approach. If anyone needs ssh or https, they should simply add the package this way.
elazutkin-dynata, bryan-hoang, TwilightOwl, bmacnaughton, gavinvangent, chahn, idleberg, Phebonacci, engelrolling, ralejandre, and 14 more reacted with thumbs up emoji
binki reacted with confused emoji
All reactions
Having an all repo config is probably not the best idea, as packages come in all shapes and forms.
This is only relevant when pulling packages from known hosts like GitHub or GitLab, where the "shape and size" is fairly well understood. The difference is in the current environment capabilities. Ie, can it use ssh? should it fail if it can't get the repo via git+https, or should it fall back to ssh? should it use https first, or ssh first? These are all system-specific, not dependency- or repo-specific.
Having well-known hosts is admirable, as long as it is transparent, yet it smells like magic — an extra-bandwidth knowledge, which makes the system behave differently on unexpected factors. In my experience, it is a major source of support incidents and perceived bugs even when everything works fine.
uhop, Tallyb, plaa, wesgarland, bryan-hoang, jansgescheit, reconbot, srl295, tstibbs, jaydenseric, and 164 more reacted with thumbs up emoji
lightningspirit reacted with laugh emoji
ralejandre, kellertobias, gen1us, cbartondock, mo-fc, and lightningspirit reacted with hooray emoji
Mihailoff, kellertobias, gen1us, rfpedrosa, cbartondock, mo-fc, jacinda-shulman, lightningspirit, and rainabba reacted with heart emoji
All reactions
Merge: f6c193f 5de8f9f
Author: Niklas <nscuro@protonmail.com>
Date: Tue Oct 25 11:08:52 2022 +0200
Merge pull request DependencyTrack#280 from DependencyTrack/dependabot/npm_and_yarn/xmldom/xmldom-0.8.3
build(deps): bump @xmldom/xmldom from 0.8.2 to 0.8.3
commit f6c193f
Merge: 3f0ce6d c908972
Author: Niklas <nscuro@protonmail.com>
Date: Tue Oct 25 11:08:36 2022 +0200
Merge pull request DependencyTrack#305 from DependencyTrack/dependabot/docker/docker/nginxinc/nginx-unprivileged-94f0b80
build(deps): bump nginxinc/nginx-unprivileged from `2d58b97` to `94f0b80` in /docker
commit c908972
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue Oct 25 01:59:05 2022 +0000
build(deps): bump nginxinc/nginx-unprivileged in /docker
Bumps nginxinc/nginx-unprivileged from `2d58b97` to `94f0b80`.
updated-dependencies:
- dependency-name: nginxinc/nginx-unprivileged
dependency-type: direct:production
update-type: version-update:semver-patch
Signed-off-by: dependabot[bot] <support@github.com>
commit 3f0ce6d
Merge: f38b9e6 1591b3f
Author: Niklas <nscuro@protonmail.com>
Date: Mon Oct 24 23:30:04 2022 +0200
Merge pull request DependencyTrack#298 from DependencyTrack/dependabot/github_actions/actions/upload-artifact-3.1.1
build(deps): bump actions/upload-artifact from 3.1.0 to 3.1.1
commit f38b9e6
Merge: 47bcf76 9e56c9a
Author: Niklas <nscuro@protonmail.com>
Date: Mon Oct 24 11:58:10 2022 +0200
Merge pull request DependencyTrack#304 from nscuro/fix-gh-release
Specify the target branch when creating a release via GitHub CLI
commit 9e56c9a
Author: nscuro <nscuro@protonmail.com>
Date: Mon Oct 24 11:53:44 2022 +0200
Specify the target branch when creating a release via GitHub CLI
It uses `master` per default, which is not the intention when releasing from a release branch.
Signed-off-by: nscuro <nscuro@protonmail.com>
commit 5de8f9f
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon Oct 24 09:33:26 2022 +0000
build(deps): bump @xmldom/xmldom from 0.8.2 to 0.8.3
Bumps [@xmldom/xmldom](https://github.com/xmldom/xmldom) from 0.8.2 to 0.8.3.
- [Release notes](https://github.com/xmldom/xmldom/releases)
- [Changelog](https://github.com/xmldom/xmldom/blob/master/CHANGELOG.md)
- [Commits](xmldom/xmldom@0.8.2...0.8.3)
updated-dependencies:
- dependency-name: "@xmldom/xmldom"
dependency-type: indirect
Signed-off-by: dependabot[bot] <support@github.com>
commit 47bcf76
Merge: 9b34ef9 f6763bc
Author: Niklas <nscuro@protonmail.com>
Date: Mon Oct 24 11:32:14 2022 +0200
Merge pull request DependencyTrack#301 from nscuro/replace-vue-showdown-master
Remove dependency on vue-showdown
commit f6763bc
Author: nscuro <nscuro@protonmail.com>
Date: Mon Oct 24 11:21:44 2022 +0200
Fix NPM falsely using SSH URLs for GitHub repos
Appears to only be necessary for the build with Node 14.
npm/cli#2610
Signed-off-by: nscuro <nscuro@protonmail.com>
commit e80627d
Author: nscuro <nscuro@protonmail.com>
Date: Sat Oct 22 21:25:55 2022 +0200
Remove dependency on vue-showdown
Depend on Showdown directly instead, cutting out the middleman.
Additionally:
* Escape HTML outside of Markdown code blocks, in order to prevent unintended rendering of HTML elements (e.g. the `textarea` in CVE-2022-25869)
* Always run Showdown output through DOMPurify
Signed-off-by: nscuro <nscuro@protonmail.com>
commit 1591b3f
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Mon Oct 24 01:54:42 2022 +0000
build(deps): bump actions/upload-artifact from 3.1.0 to 3.1.1
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](actions/upload-artifact@v3.1.0...v3.1.1)
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-patch
Signed-off-by: dependabot[bot] <support@github.com>
commit 9b34ef9
Merge: 9c6bd07 c4ed1f6
Author: Niklas <nscuro@protonmail.com>
Date: Sat Oct 22 22:09:59 2022 +0200
Merge pull request DependencyTrack#296 from nscuro/enable-releasing-from-release-branch
Enable release creation from non-master branches
commit c4ed1f6
Author: nscuro <nscuro@protonmail.com>
Date: Sat Oct 22 21:48:47 2022 +0200
Update `RELEASING.md`
Signed-off-by: nscuro <nscuro@protonmail.com>
commit 33bafea
Author: nscuro <nscuro@protonmail.com>
Date: Sat Oct 22 21:37:14 2022 +0200
Enable release creation from non-master branches
This just makes the destination of version bump commits dependent on the branch the workflow is running on, instead of always pushing to `master`. This will allow us to run the workflow on release branches as well.
Signed-off-by: nscuro <nscuro@protonmail.com>
commit 9c6bd07
Merge: 1ff579f 839f7de
Author: Niklas <nscuro@protonmail.com>
Date: Fri Oct 21 13:30:32 2022 +0200
Merge pull request DependencyTrack#295 from sahibamittal/snyk-integration-frontend
Snyk integration frontend
commit 1ff579f
Merge: 8bcac46 031074c
Author: Niklas <nscuro@protonmail.com>
Date: Fri Oct 21 12:02:22 2022 +0200
Merge pull request DependencyTrack#294 from DependencyTrack/dependabot/github_actions/actions/download-artifact-3.0.1
build(deps): bump actions/download-artifact from 3.0.0 to 3.0.1
commit 031074c
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Fri Oct 21 01:57:23 2022 +0000
build(deps): bump actions/download-artifact from 3.0.0 to 3.0.1
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](actions/download-artifact@v3.0.0...v3.0.1)
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-type: direct:production
update-type: version-update:semver-patch
Signed-off-by: dependabot[bot] <support@github.com>
commit 8bcac46
Merge: 8362943 abf25ae
Author: Niklas <nscuro@protonmail.com>
Date: Thu Oct 20 17:56:00 2022 +0200
Merge pull request DependencyTrack#293 from nscuro/release-docs
Add release documentation
commit 8362943
Merge: c400ae6 2c4e36c
Author: Niklas <nscuro@protonmail.com>
Date: Thu Oct 20 17:48:08 2022 +0200
Merge pull request DependencyTrack#292 from DependencyTrack/dependabot/docker/docker/nginxinc/nginx-unprivileged-1.23.2-alpine
build(deps): bump nginxinc/nginx-unprivileged from 1.23.1-alpine to 1.23.2-alpine in /docker
commit c400ae6
Merge: c5c5ab3 ae3c963
Author: Niklas <nscuro@protonmail.com>
Date: Thu Oct 20 17:47:52 2022 +0200
Merge pull request DependencyTrack#291 from DependencyTrack/dependabot/github_actions/docker/setup-buildx-action-2.2.1
build(deps): bump docker/setup-buildx-action from 2.2.0 to 2.2.1
commit abf25ae
Author: nscuro <nscuro@protonmail.com>
Date: Thu Oct 20 17:43:53 2022 +0200
Add release documentation
Signed-off-by: nscuro <nscuro@protonmail.com>
commit 2c4e36c
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Thu Oct 20 01:51:11 2022 +0000
build(deps): bump nginxinc/nginx-unprivileged in /docker
Bumps nginxinc/nginx-unprivileged from 1.23.1-alpine to 1.23.2-alpine.
updated-dependencies:
- dependency-name: nginxinc/nginx-unprivileged
dependency-type: direct:production
update-type: version-update:semver-patch
Signed-off-by: dependabot[bot] <support@github.com>
commit ae3c963
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed Oct 19 01:45:01 2022 +0000
build(deps): bump docker/setup-buildx-action from 2.2.0 to 2.2.1
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@v2.2.0...v2.2.1)
updated-dependencies:
- dependency-name: docker/setup-buildx-action
dependency-type: direct:production
update-type: version-update:semver-patch
Signed-off-by: dependabot[bot] <support@github.com>
commit c5c5ab3
Merge: 0bf649a 622f275
Author: Niklas <nscuro@protonmail.com>
Date: Tue Oct 18 18:57:26 2022 +0200
Merge pull request DependencyTrack#290 from nscuro/revert-272
commit 622f275
Author: nscuro <nscuro@protonmail.com>
Date: Tue Oct 18 18:12:27 2022 +0200
Revert "Merge pull request DependencyTrack#272 from rbt-mm/master-show-hierarchical-view-in-project-list"
This reverts commit 58b8940, reversing
changes made to 3a64bbc.
Signed-off-by: nscuro <nscuro@protonmail.com>
commit 0bf649a
Merge: 58b8940 b03b122
Author: Niklas <nscuro@protonmail.com>
Date: Tue Oct 18 17:51:34 2022 +0200
Merge pull request DependencyTrack#274 from rbt-mm/master-limit-alert-rules-to-project-including-all-existing-or-future-versions
Include a projects children in an alert rules limitations
commit 58b8940
Merge: 3a64bbc abfe53c
Author: Niklas <nscuro@protonmail.com>
Date: Tue Oct 18 17:46:59 2022 +0200
Merge pull request DependencyTrack#272 from rbt-mm/master-show-hierarchical-view-in-project-list
Show hierarchical view in project list
commit abfe53c
Author: rbt-mm <113189967+rbt-mm@users.noreply.github.com>
Date: Tue Oct 18 17:05:21 2022 +0200
Hide detail view button when no active child
Signed-off-by: RBickert <rbt@mm-software.com>
Co-authored-by: Niklas <nscuro@protonmail.com>
Signed-off-by: RBickert <rbt@mm-software.com>
commit dbb34d3
Author: RBickert <rbt@mm-software.com>
Date: Tue Oct 4 17:56:55 2022 +0200
Change prototype method in project list
Do not access Object.prototype method 'hasOwnProperty' from target
object.
Only show project name in create project modal, if a project does not
have a version
Signed-off-by: RBickert <rbt@mm-software.com>
commit a79d535
Author: RBickert <rbt@mm-software.com>
Date: Tue Oct 4 17:03:10 2022 +0200
Revert "Update ci-build.yaml"
This reverts commit aeccadc.
Signed-off-by: RBickert <rbt@mm-software.com>
commit d7b8d69
Author: RBickert <rbt@mm-software.com>
Date: Fri Sep 30 16:27:18 2022 +0200
Filter detail view parents in backend
Available parents in a project detail view are now filtered in the
backend instead of the UI
Signed-off-by: RBickert <rbt@mm-software.com>
commit 87a9d8c
Author: RBickert <rbt@mm-software.com>
Date: Thu Sep 29 16:37:23 2022 +0200
Fix switching parent to inactive
A parent project cannot be set to inactive if any of his children are
set to active
Signed-off-by: RBickert <rbt@mm-software.com>
commit 11c7eab
Author: RBickert <rbt@mm-software.com>
Date: Fri Sep 23 16:28:37 2022 +0200
Add hierarchical view in project list
Added CSwitch in project list to switch between current flat view
(default) and a new hierarchical view (shows root projects and their
children in the detail view of a row).
Project detail view only shows viable projects as selectable parent.
Hierarchical project list shows inactive projects for children and
children are sortable.
Signed-off-by: RBickert <rbt@mm-software.com>
commit ee96685
Author: RBickert <rbt@mm-software.com>
Date: Tue Sep 20 17:03:51 2022 +0200
Add persistent selection of parent to detail view
Send selected parent in project detail view via API call to backend to
create a persistent parent-child-relationship.
Signed-off-by: RBickert <rbt@mm-software.com>
commit b05a11c
Author: RBickert <rbt@mm-software.com>
Date: Mon Sep 19 16:53:00 2022 +0200
Add parent in project creation and detail view
Display list of every project in `Create Project` and `View
Project` to select a parent project for the new or current project.
Send selected parent in project creation via API call to backend to
create a persistent parent-child-relationship.
Signed-off-by: RBickert <rbt@mm-software.com>
commit 053f6fa
Author: rbt-mm <113189967+rbt-mm@users.noreply.github.com>
Date: Wed Sep 28 13:24:38 2022 +0200
Update ci-build.yaml
Workflow now starts on every pull request, if the branch name contains 'master' in it.
Signed-off-by: RBickert <rbt@mm-software.com>
commit b03b122
Author: RBickert <rbt@mm-software.com>
Date: Tue Oct 18 13:11:23 2022 +0200
Make inclusion of children optional
Added a switch in the alerts view which optionally includes every active
child of the subscribed projects in the notification rule.
Signed-off-by: RBickert <rbt@mm-software.com>
commit 298c5be
Merge: 54e7c51 3a64bbc
Author: rbt-mm <113189967+rbt-mm@users.noreply.github.com>
Date: Tue Oct 18 13:01:18 2022 +0200
Merge branch 'DependencyTrack:master' into master-limit-alert-rules-to-project-including-all-existing-or-future-versions
commit 3a64bbc
Merge: 8a1239c 9d78a3b
Author: Niklas <nscuro@protonmail.com>
Date: Tue Oct 18 10:06:35 2022 +0200
Merge pull request DependencyTrack#287 from DependencyTrack/dependabot/docker/docker/nginxinc/nginx-unprivileged-5af0906
build(deps): bump nginxinc/nginx-unprivileged from `31ac9ab` to `5af0906` in /docker
commit 8a1239c
Merge: 21cd1f0 0610ba0
Author: Niklas <nscuro@protonmail.com>
Date: Tue Oct 18 10:06:26 2022 +0200
Merge pull request DependencyTrack#288 from DependencyTrack/dependabot/github_actions/docker/setup-buildx-action-2.2.0
build(deps): bump docker/setup-buildx-action from 2.1.0 to 2.2.0
commit 0610ba0
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue Oct 18 01:33:58 2022 +0000
build(deps): bump docker/setup-buildx-action from 2.1.0 to 2.2.0
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@v2.1.0...v2.2.0)
updated-dependencies:
- dependency-name: docker/setup-buildx-action
dependency-type: direct:production
update-type: version-update:semver-minor
Signed-off-by: dependabot[bot] <support@github.com>
commit 9d78a3b
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue Oct 18 01:33:57 2022 +0000
build(deps): bump nginxinc/nginx-unprivileged in /docker
Bumps nginxinc/nginx-unprivileged from `31ac9ab` to `5af0906`.
updated-dependencies:
- dependency-name: nginxinc/nginx-unprivileged
dependency-type: direct:production
update-type: version-update:semver-patch
Signed-off-by: dependabot[bot] <support@github.com>
commit 54e7c51
Merge: 1eaefe5 c80f0ea
Author: rbt-mm <113189967+rbt-mm@users.noreply.github.com>
Date: Wed Oct 5 14:09:32 2022 +0200
Merge pull request #3 from rbt-mm/rbt-limit-alert-rules-to-project-including-all-existing-or-future-versions
Limit alert rules to project including all existing or future versions
commit c80f0ea
Author: RBickert <rbt@mm-software.com>
Date: Wed Oct 5 10:53:17 2022 +0200
Add new info in alerts view
Change "Limit to projects" to "Limit to projects (including all of their
active children)" to indicate that every child of a subscribed project
will also be included in the notification rule.
Signed-off-by: RBickert <rbt@mm-software.com>
domino14, sidpremkumar, Git-I985, macrouch, tracetechnical, and twinklecube reacted with thumbs up emoji
tracetechnical reacted with hooray emoji
tracetechnical reacted with heart emoji
All reactions
Running NPM 6.14.x, this is only an issue with lockfile v2. Reverting back to a v1 lockfile fixes it.
Compare the CI check before and after the last commit here: nextstrain/nextstrain.org@1b6d471...db923e2
I just had success by changing from git+https://github.com/ to git+https://git@github.com/ —it then resolved to HTTPS in my lock file.
this seemed insane enough to try, and i did, and this worked. Thank you!
So basically, npm install git+https://git@github.com/user/repo is what i did
"version": "git+ssh://github.com/paulswartz/turbolinks.git#82b188ec4cf2177e2ce9b18698206476178befa1",
to (npm 6):
"version": "git+https://github.com/paulswartz/turbolinks.git#82b188ec4cf2177e2ce9b18698206476178befa1",
It turns out there's an [NPM bug](npm/cli#2610) in npm 7 that records git repo dependencies with `ssh://` instead of `https://`, which was causing the `npm ci` step in our Docker container to fail because of not having set up SSH keys.
We'll probably have to reconsider our setup eventually, but for now let's just use the `https://` version.
"version": "git+ssh://github.com/paulswartz/turbolinks.git#82b188ec4cf2177e2ce9b18698206476178befa1",
to (npm 6):
"version": "git+
https://github.com/paulswartz/turbolinks.git#82b188ec4cf2177e2ce9b18698206476178befa1
",
It turns out there's an [NPM bug](
npm/cli#2610
) in npm 7 that records git repo dependencies with `ssh://` instead of `https://`, which was causing the `npm ci` step in our Docker container to fail because of not having set up SSH keys.
We'll probably have to reconsider our setup eventually, but for now let's just use the `https://` version.
* chore(npm): downgrade to lockfileVersion 1
* chore(Dockerfile): don't upgrade npm version
* docs: Add a note about npm versioning
* chore: regenerate `package-lock.json` using correct npm version
The real change here is the change from the npm-v7-generated
"version": "git+ssh://github.com/paulswartz/turbolinks.git#82b188ec4cf2177e2ce9b18698206476178befa1",
to (npm 6):
"version": "git+https://github.com/paulswartz/turbolinks.git#82b188ec4cf2177e2ce9b18698206476178befa1",
It turns out there's an [NPM bug](npm/cli#2610) in npm 7 that records git repo dependencies with `ssh://` instead of `https://`, which was causing the `npm ci` step in our Docker container to fail because of not having set up SSH keys.
We'll probably have to reconsider our setup eventually, but for now let's just use the `https://` version.
* chore: resolve conflict with master branch
* chore: add and enforce react type resolution
there's a version conflict in dependencies using the `@types/react` package - using the intended one makes type checks pass.
@msimerson
I'm completely baffled by this too. How is this still an issue? The only thing that is working for me is using the full URLs starting with
git+https
. Even the mentioned git config commands don't work; the resulting
package-lock.json
after running
npm install
still contains the
git+ssh
URLs. (I might have misunderstood the solution and maybe it needs to run on every device before calling
npm ci
, but that's just not feasible. I simply want to have a working
package-lock.json
file...)
Does has anybody provided a PR or a fork fixing this? It should not be so much difficult to do...
There is the exact same issue on yarn 1.X, and it's solved the same way, by adding the "git@" in the URL.
The
git@github.com
solution doesn't work for private repositories, because it will actually attempt to authenticate with the "git" user.
We would actually need to put in our own dev account username in there to make this approach work, which is 100% not feasible.
Tested on the latest version of npm -- 9.8.1 -- and haven't upgraded past v6 because of this nonsense.
EDIT: because a fix for this doesn't look like this is coming any time soon and the last vresion where this works is out of support, have added this bash workaround and used where needed:
function configureGitForceHttps {
git config url."https://".insteadOf ssh://