Skip to content

Commit

Permalink
#9508: Recreating and handling Name contains illegal characters in pa…
Browse files Browse the repository at this point in the history
…ckage.json error.
  • Loading branch information
“Thavachelvam committed Apr 25, 2024
1 parent f0715df commit 21074a6
Show file tree
Hide file tree
Showing 8 changed files with 160 additions and 2 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"name": "@colend-contract-helpers",
"dependencies": {
"@commitlint/cli": "^15.0.0",
"is-positive": "^3.1.0",
"left-pad": "^1.1.3"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1

"@commitlint/cli@^15.0.0":
version "15.0.0"
resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-15.0.0.tgz#8e78e86ee2b6955c1a5d140e734a6c171ce367ee"

"is-positive@^3.1.0":
version "3.1.0"
resolved "https://registry.yarnpkg.com/is-positive/-/is-positive-3.1.0.tgz#857db584a1ba5d1cb2980527fc3b6c435d37b0fd"

"left-pad@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.0.0.tgz#c84e2417581bbb8eaf2b9e3d7a122e572ab1af37"
33 changes: 31 additions & 2 deletions npm_and_yarn/helpers/test/yarn/updater.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ describe("updater", () => {

const result = await updateDependencyFiles(tempDir, [
{
name: "left-pad",
version: "1.1.3",
name: "@commitlint/cli",
version: "^15.0.0",
requirements: [{ file: "package.json", groups: ["dependencies"] }],
},
]);
Expand Down Expand Up @@ -85,4 +85,33 @@ describe("updater", () => {
expect(error).not.toBeNull();
}
});

it("Name contains illegal characters", async () => {
copyDependencies("illegal_character", tempDir);

try {
await updateDependencyFiles(tempDir, [
{
name: "@commitlint/cli",
version: "19.3.0",
requirements: [
{
requirement: "^19.3.0",
file: "package.json",
groups: ["devDependencies"],
source:
{
type: "registry",
url: "https://registry.yarnpkg.com"
}
}
]
}
]
);
} catch (error) {
expect(error).not.toBeNull();
expect(error.message).toEqual("package.json: Name contains illegal characters")
}
});
});
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,8 @@ def run_yarn_top_level_updater(top_level_dependency_updates:)
top_level_dependency_updates
]
)
rescue SharedHelpers::HelperSubprocessFailed => e
raise Dependabot::DependencyFileNotParseable, e.message
end

def run_yarn_subdependency_updater(yarn_lock:)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -338,4 +338,15 @@
.to include("https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3")
end
end

context "Package.json Name contains illegal characters" do
let(:files) { project_dependency_files("yarn/package_json_contains_illegal_characters_in_name") }

it "keeps the default npm registry" do
expect { updated_yarn_lock_content }
.to raise_error(Dependabot::DependencyFileNotParseable) do |error|
expect(error.message).to eq("package.json: Name contains illegal characters not parseable")
end
end
end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
registry "https://registry.npmjs.org"
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"name": "@test",
"version": "1.0.0",
"description": "",
"main": "index.js",
"repository": {
"type": "git",
"url": "git+https://github.com/waltfy/PROTO_TEST.git"
},
"author": "",
"license": "ISC",
"bugs": {
"url": "https://github.com/waltfy/PROTO_TEST/issues"
},
"homepage": "https://github.com/waltfy/PROTO_TEST#readme",
"dependencies": {
"fetch-factory": "^0.0.1"
},
"devDependencies": {
"etag" : "^1.0.0"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1


encoding@^0.1.11:
version "0.1.13"
resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9"
integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==
dependencies:
iconv-lite "^0.6.2"

es6-promise@^3.0.2:
version "3.3.1"
resolved "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613"
integrity sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=

etag@^1.0.0:
version "1.8.1"
resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=

fetch-factory@^0.0.1:
version "0.0.1"
resolved "https://registry.npmjs.org/fetch-factory/-/fetch-factory-0.0.1.tgz#e0076059bdb31e3147c75b3b8c04133ba8c7e071"
integrity sha1-4AdgWb2zHjFHx1s7jAQTO6jH4HE=
dependencies:
es6-promise "^3.0.2"
isomorphic-fetch "^2.1.1"
lodash "^3.10.1"

iconv-lite@^0.6.2:
version "0.6.3"
resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501"
integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==
dependencies:
safer-buffer ">= 2.1.2 < 3.0.0"

is-stream@^1.0.1:
version "1.1.0"
resolved "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=

isomorphic-fetch@^2.1.1:
version "2.2.1"
resolved "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=
dependencies:
node-fetch "^1.0.1"
whatwg-fetch ">=0.10.0"

lodash@^3.10.1:
version "3.10.1"
resolved "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6"
integrity sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=

node-fetch@^1.0.1:
version "1.6.1"
resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-1.6.1.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef"
dependencies:
encoding "^0.1.11"
is-stream "^1.0.1"

"safer-buffer@>= 2.1.2 < 3.0.0":
version "2.1.2"
resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==

whatwg-fetch@>=0.10.0:
version "3.6.2"
resolved "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c"
integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==

0 comments on commit 21074a6

Please sign in to comment.