[Pkg-javascript-commits] [node-json5] 04/12: embed tests from submodule

Praveen Arimbrathodiyil praveen at moszumanska.debian.org
Fri Feb 9 15:11:56 UTC 2018


This is an automated email from the git hooks/post-receive script.

praveen pushed a commit to branch master
in repository node-json5.

commit 1aa632d9e775bada3774261e5e2d985aaa666197
Author: Pirate Praveen <praveen at debian.org>
Date:   Fri Feb 9 19:47:47 2018 +0530

    embed tests from submodule
---
 debian/json5-tests/LICENSE.md                      |  21 ++++
 debian/json5-tests/README.md                       |  22 +++++
 debian/json5-tests/arrays/empty-array.json         |   1 +
 debian/json5-tests/arrays/leading-comma-array.js   |   3 +
 .../arrays/lone-trailing-comma-array.js            |   3 +
 debian/json5-tests/arrays/no-comma-array.errorSpec |   6 ++
 debian/json5-tests/arrays/no-comma-array.txt       |   4 +
 debian/json5-tests/arrays/regular-array.json       |   5 +
 .../json5-tests/arrays/trailing-comma-array.json5  |   3 +
 .../block-comment-following-array-element.json5    |   6 ++
 .../block-comment-following-top-level-value.json5  |   5 +
 .../comments/block-comment-in-string.json          |   1 +
 .../block-comment-preceding-top-level-value.json5  |   5 +
 .../comments/block-comment-with-asterisks.json5    |   7 ++
 .../inline-comment-following-array-element.json5   |   3 +
 .../inline-comment-following-top-level-value.json5 |   1 +
 .../comments/inline-comment-in-string.json         |   1 +
 .../inline-comment-preceding-top-level-value.json5 |   2 +
 .../comments/top-level-block-comment.errorSpec     |   6 ++
 .../comments/top-level-block-comment.txt           |   4 +
 .../comments/top-level-inline-comment.errorSpec    |   6 ++
 .../comments/top-level-inline-comment.txt          |   1 +
 .../comments/unterminated-block-comment.txt        |   5 +
 debian/json5-tests/misc/empty.txt                  |   0
 debian/json5-tests/misc/npm-package.json           | 106 +++++++++++++++++++++
 debian/json5-tests/misc/npm-package.json5          | 106 +++++++++++++++++++++
 debian/json5-tests/misc/readme-example.json5       |  25 +++++
 debian/json5-tests/misc/valid-whitespace.json5     |   5 +
 debian/json5-tests/new-lines/.editorconfig         |  13 +++
 debian/json5-tests/new-lines/.gitattributes        |   4 +
 debian/json5-tests/new-lines/comment-cr.json5      |   1 +
 debian/json5-tests/new-lines/comment-crlf.json5    |   3 +
 debian/json5-tests/new-lines/comment-lf.json5      |   3 +
 debian/json5-tests/new-lines/escaped-cr.json5      |   1 +
 debian/json5-tests/new-lines/escaped-crlf.json5    |   5 +
 debian/json5-tests/new-lines/escaped-lf.json5      |   5 +
 .../numbers/float-leading-decimal-point.json5      |   1 +
 debian/json5-tests/numbers/float-leading-zero.json |   1 +
 ...iling-decimal-point-with-integer-exponent.json5 |   1 +
 .../numbers/float-trailing-decimal-point.json5     |   1 +
 .../numbers/float-with-integer-exponent.json       |   1 +
 debian/json5-tests/numbers/float.json              |   1 +
 debian/json5-tests/numbers/hexadecimal-empty.txt   |   1 +
 .../numbers/hexadecimal-lowercase-letter.json5     |   1 +
 .../numbers/hexadecimal-uppercase-x.json5          |   1 +
 .../hexadecimal-with-integer-exponent.json5        |   1 +
 debian/json5-tests/numbers/hexadecimal.json5       |   1 +
 debian/json5-tests/numbers/infinity.json5          |   1 +
 .../numbers/integer-with-float-exponent.txt        |   1 +
 .../numbers/integer-with-hexadecimal-exponent.txt  |   1 +
 .../numbers/integer-with-integer-exponent.json     |   1 +
 .../integer-with-negative-float-exponent.txt       |   1 +
 .../integer-with-negative-hexadecimal-exponent.txt |   1 +
 .../integer-with-negative-integer-exponent.json    |   1 +
 ...nteger-with-negative-zero-integer-exponent.json |   1 +
 .../integer-with-positive-float-exponent.txt       |   1 +
 .../integer-with-positive-hexadecimal-exponent.txt |   1 +
 .../integer-with-positive-integer-exponent.json    |   1 +
 ...nteger-with-positive-zero-integer-exponent.json |   1 +
 .../integer-with-zero-integer-exponent.json        |   1 +
 debian/json5-tests/numbers/integer.json            |   1 +
 debian/json5-tests/numbers/lone-decimal-point.txt  |   1 +
 debian/json5-tests/numbers/nan.json5               |   1 +
 .../negative-float-leading-decimal-point.json5     |   1 +
 .../numbers/negative-float-leading-zero.json       |   1 +
 .../negative-float-trailing-decimal-point.json5    |   1 +
 debian/json5-tests/numbers/negative-float.json     |   1 +
 .../json5-tests/numbers/negative-hexadecimal.json5 |   1 +
 debian/json5-tests/numbers/negative-infinity.json5 |   1 +
 debian/json5-tests/numbers/negative-integer.json   |   1 +
 debian/json5-tests/numbers/negative-noctal.js      |   1 +
 debian/json5-tests/numbers/negative-octal.txt      |   1 +
 ...negative-zero-float-leading-decimal-point.json5 |   1 +
 ...egative-zero-float-trailing-decimal-point.json5 |   1 +
 .../json5-tests/numbers/negative-zero-float.json   |   1 +
 .../numbers/negative-zero-hexadecimal.json5        |   1 +
 .../json5-tests/numbers/negative-zero-integer.json |   1 +
 debian/json5-tests/numbers/negative-zero-octal.txt |   1 +
 .../numbers/noctal-with-leading-octal-digit.js     |   1 +
 debian/json5-tests/numbers/noctal.js               |   1 +
 debian/json5-tests/numbers/octal.txt               |   1 +
 .../positive-float-leading-decimal-point.json5     |   1 +
 .../numbers/positive-float-leading-zero.json5      |   1 +
 .../positive-float-trailing-decimal-point.json5    |   1 +
 debian/json5-tests/numbers/positive-float.json5    |   1 +
 .../json5-tests/numbers/positive-hexadecimal.json5 |   1 +
 debian/json5-tests/numbers/positive-infinity.json5 |   1 +
 debian/json5-tests/numbers/positive-integer.json5  |   1 +
 debian/json5-tests/numbers/positive-noctal.js      |   1 +
 debian/json5-tests/numbers/positive-octal.txt      |   1 +
 ...positive-zero-float-leading-decimal-point.json5 |   1 +
 ...ositive-zero-float-trailing-decimal-point.json5 |   1 +
 .../json5-tests/numbers/positive-zero-float.json5  |   1 +
 .../numbers/positive-zero-hexadecimal.json5        |   1 +
 .../numbers/positive-zero-integer.json5            |   1 +
 debian/json5-tests/numbers/positive-zero-octal.txt |   1 +
 .../numbers/zero-float-leading-decimal-point.json5 |   1 +
 .../zero-float-trailing-decimal-point.json5        |   1 +
 debian/json5-tests/numbers/zero-float.json         |   1 +
 debian/json5-tests/numbers/zero-hexadecimal.json5  |   1 +
 .../zero-integer-with-integer-exponent.json        |   1 +
 debian/json5-tests/numbers/zero-integer.json       |   1 +
 debian/json5-tests/numbers/zero-octal.txt          |   1 +
 debian/json5-tests/objects/duplicate-keys.json     |   4 +
 debian/json5-tests/objects/empty-object.json       |   1 +
 .../objects/illegal-unquoted-key-number.errorSpec  |   6 ++
 .../objects/illegal-unquoted-key-number.txt        |   3 +
 .../objects/illegal-unquoted-key-symbol.errorSpec  |   6 ++
 .../objects/illegal-unquoted-key-symbol.txt        |   3 +
 .../objects/leading-comma-object.errorSpec         |   6 ++
 .../json5-tests/objects/leading-comma-object.txt   |   3 +
 .../objects/lone-trailing-comma-object.txt         |   3 +
 debian/json5-tests/objects/no-comma-object.txt     |   4 +
 .../objects/reserved-unquoted-key.json5            |   3 +
 debian/json5-tests/objects/single-quoted-key.json5 |   3 +
 .../objects/trailing-comma-object.json5            |   3 +
 debian/json5-tests/objects/unquoted-keys.json5     |   8 ++
 .../strings/escaped-single-quoted-string.json5     |   1 +
 debian/json5-tests/strings/multi-line-string.json5 |   2 +
 .../json5-tests/strings/no-comma-array.errorSpec   |   6 ++
 .../json5-tests/strings/single-quoted-string.json5 |   1 +
 .../strings/unescaped-multi-line-string.errorSpec  |   6 ++
 .../strings/unescaped-multi-line-string.txt        |   2 +
 .../todo/unicode-escaped-unquoted-key.json5        |   3 +
 debian/json5-tests/todo/unicode-unquoted-key.json5 |   3 +
 125 files changed, 545 insertions(+)

diff --git a/debian/json5-tests/LICENSE.md b/debian/json5-tests/LICENSE.md
new file mode 100644
index 0000000..861df26
--- /dev/null
+++ b/debian/json5-tests/LICENSE.md
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2012-2016 Aseem Kishore, and [others](https://github.com/aseemk/json5/contributors).
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/debian/json5-tests/README.md b/debian/json5-tests/README.md
new file mode 100644
index 0000000..76b9c81
--- /dev/null
+++ b/debian/json5-tests/README.md
@@ -0,0 +1,22 @@
+# Parse Test Cases for JSON5
+
+The test cases' file extension signals the expected behavior:
+
+- Valid JSON should remain valid JSON5. These cases have a `.json` extension
+  and are tested via `JSON.parse()`.
+
+- JSON5's new features should remain valid ES5. These cases have a `.json5`
+  extension are tested via `eval()`.
+
+- Valid ES5 that's explicitly disallowed by JSON5 is also invalid JSON. These
+  cases have a `.js` extension and are expected to fail.
+
+- Invalid ES5 should remain invalid JSON5. These cases have a `.txt` extension
+  and are expected to fail.
+
+This should cover all our bases. Most of the cases are unit tests for each
+supported data type, but aggregate test cases are welcome, too.
+
+## License
+
+MIT. See [LICENSE.md](./LICENSE.md) for details.
diff --git a/debian/json5-tests/arrays/empty-array.json b/debian/json5-tests/arrays/empty-array.json
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/debian/json5-tests/arrays/empty-array.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/debian/json5-tests/arrays/leading-comma-array.js b/debian/json5-tests/arrays/leading-comma-array.js
new file mode 100644
index 0000000..23c097c
--- /dev/null
+++ b/debian/json5-tests/arrays/leading-comma-array.js
@@ -0,0 +1,3 @@
+[
+    ,null
+]
\ No newline at end of file
diff --git a/debian/json5-tests/arrays/lone-trailing-comma-array.js b/debian/json5-tests/arrays/lone-trailing-comma-array.js
new file mode 100644
index 0000000..013b45c
--- /dev/null
+++ b/debian/json5-tests/arrays/lone-trailing-comma-array.js
@@ -0,0 +1,3 @@
+[
+    ,
+]
\ No newline at end of file
diff --git a/debian/json5-tests/arrays/no-comma-array.errorSpec b/debian/json5-tests/arrays/no-comma-array.errorSpec
new file mode 100644
index 0000000..b476eca
--- /dev/null
+++ b/debian/json5-tests/arrays/no-comma-array.errorSpec
@@ -0,0 +1,6 @@
+{
+    at: 16,
+    lineNumber: 3,
+    columnNumber: 5,
+    message: "Expected ']' instead of 'f'"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/arrays/no-comma-array.txt b/debian/json5-tests/arrays/no-comma-array.txt
new file mode 100644
index 0000000..22b41c1
--- /dev/null
+++ b/debian/json5-tests/arrays/no-comma-array.txt
@@ -0,0 +1,4 @@
+[
+    true
+    false
+]
\ No newline at end of file
diff --git a/debian/json5-tests/arrays/regular-array.json b/debian/json5-tests/arrays/regular-array.json
new file mode 100644
index 0000000..9072780
--- /dev/null
+++ b/debian/json5-tests/arrays/regular-array.json
@@ -0,0 +1,5 @@
+[
+    true,
+    false,
+    null
+]
\ No newline at end of file
diff --git a/debian/json5-tests/arrays/trailing-comma-array.json5 b/debian/json5-tests/arrays/trailing-comma-array.json5
new file mode 100644
index 0000000..6e6b6ed
--- /dev/null
+++ b/debian/json5-tests/arrays/trailing-comma-array.json5
@@ -0,0 +1,3 @@
+[
+    null,
+]
\ No newline at end of file
diff --git a/debian/json5-tests/comments/block-comment-following-array-element.json5 b/debian/json5-tests/comments/block-comment-following-array-element.json5
new file mode 100644
index 0000000..8677f63
--- /dev/null
+++ b/debian/json5-tests/comments/block-comment-following-array-element.json5
@@ -0,0 +1,6 @@
+[
+    false
+    /*
+        true
+    */
+]
\ No newline at end of file
diff --git a/debian/json5-tests/comments/block-comment-following-top-level-value.json5 b/debian/json5-tests/comments/block-comment-following-top-level-value.json5
new file mode 100644
index 0000000..1e6ccfd
--- /dev/null
+++ b/debian/json5-tests/comments/block-comment-following-top-level-value.json5
@@ -0,0 +1,5 @@
+null
+/*
+    Some non-comment top-level value is needed;
+    we use null above.
+*/
\ No newline at end of file
diff --git a/debian/json5-tests/comments/block-comment-in-string.json b/debian/json5-tests/comments/block-comment-in-string.json
new file mode 100644
index 0000000..7d2916c
--- /dev/null
+++ b/debian/json5-tests/comments/block-comment-in-string.json
@@ -0,0 +1 @@
+"This /* block comment */ isn't really a block comment."
\ No newline at end of file
diff --git a/debian/json5-tests/comments/block-comment-preceding-top-level-value.json5 b/debian/json5-tests/comments/block-comment-preceding-top-level-value.json5
new file mode 100644
index 0000000..df1e520
--- /dev/null
+++ b/debian/json5-tests/comments/block-comment-preceding-top-level-value.json5
@@ -0,0 +1,5 @@
+/*
+    Some non-comment top-level value is needed;
+    we use null below.
+*/
+null
\ No newline at end of file
diff --git a/debian/json5-tests/comments/block-comment-with-asterisks.json5 b/debian/json5-tests/comments/block-comment-with-asterisks.json5
new file mode 100644
index 0000000..94c44e7
--- /dev/null
+++ b/debian/json5-tests/comments/block-comment-with-asterisks.json5
@@ -0,0 +1,7 @@
+/**
+ * This is a JavaDoc-like block comment.
+ * It contains asterisks inside of it.
+ * It might also be closed with multiple asterisks.
+ * Like this:
+ **/
+true
\ No newline at end of file
diff --git a/debian/json5-tests/comments/inline-comment-following-array-element.json5 b/debian/json5-tests/comments/inline-comment-following-array-element.json5
new file mode 100644
index 0000000..d6a3f8c
--- /dev/null
+++ b/debian/json5-tests/comments/inline-comment-following-array-element.json5
@@ -0,0 +1,3 @@
+[
+    false   // true
+]
\ No newline at end of file
diff --git a/debian/json5-tests/comments/inline-comment-following-top-level-value.json5 b/debian/json5-tests/comments/inline-comment-following-top-level-value.json5
new file mode 100644
index 0000000..cf9ed01
--- /dev/null
+++ b/debian/json5-tests/comments/inline-comment-following-top-level-value.json5
@@ -0,0 +1 @@
+null // Some non-comment top-level value is needed; we use null here.
\ No newline at end of file
diff --git a/debian/json5-tests/comments/inline-comment-in-string.json b/debian/json5-tests/comments/inline-comment-in-string.json
new file mode 100644
index 0000000..f0fb14f
--- /dev/null
+++ b/debian/json5-tests/comments/inline-comment-in-string.json
@@ -0,0 +1 @@
+"This inline comment // isn't really an inline comment."
\ No newline at end of file
diff --git a/debian/json5-tests/comments/inline-comment-preceding-top-level-value.json5 b/debian/json5-tests/comments/inline-comment-preceding-top-level-value.json5
new file mode 100644
index 0000000..d4b9b4d
--- /dev/null
+++ b/debian/json5-tests/comments/inline-comment-preceding-top-level-value.json5
@@ -0,0 +1,2 @@
+// Some non-comment top-level value is needed; we use null below.
+null
\ No newline at end of file
diff --git a/debian/json5-tests/comments/top-level-block-comment.errorSpec b/debian/json5-tests/comments/top-level-block-comment.errorSpec
new file mode 100644
index 0000000..9bf5cf5
--- /dev/null
+++ b/debian/json5-tests/comments/top-level-block-comment.errorSpec
@@ -0,0 +1,6 @@
+{
+    at: 77,
+    lineNumber: 4,
+    columnNumber: 3,
+    message: "Unexpected EOF"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/comments/top-level-block-comment.txt b/debian/json5-tests/comments/top-level-block-comment.txt
new file mode 100644
index 0000000..7466bd2
--- /dev/null
+++ b/debian/json5-tests/comments/top-level-block-comment.txt
@@ -0,0 +1,4 @@
+/*
+    This should fail;
+    comments cannot be the only top-level value.
+*/
\ No newline at end of file
diff --git a/debian/json5-tests/comments/top-level-inline-comment.errorSpec b/debian/json5-tests/comments/top-level-inline-comment.errorSpec
new file mode 100644
index 0000000..3d915cd
--- /dev/null
+++ b/debian/json5-tests/comments/top-level-inline-comment.errorSpec
@@ -0,0 +1,6 @@
+{
+    at: 66,
+    lineNumber: 1,
+    columnNumber: 67,
+    message: "Unexpected EOF"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/comments/top-level-inline-comment.txt b/debian/json5-tests/comments/top-level-inline-comment.txt
new file mode 100644
index 0000000..c5577f1
--- /dev/null
+++ b/debian/json5-tests/comments/top-level-inline-comment.txt
@@ -0,0 +1 @@
+// This should fail; comments cannot be the only top-level value.
\ No newline at end of file
diff --git a/debian/json5-tests/comments/unterminated-block-comment.txt b/debian/json5-tests/comments/unterminated-block-comment.txt
new file mode 100644
index 0000000..627b7bd
--- /dev/null
+++ b/debian/json5-tests/comments/unterminated-block-comment.txt
@@ -0,0 +1,5 @@
+true
+/*
+    This block comment doesn't terminate.
+    There was a legitimate value before this,
+    but this is still invalid JS/JSON5.
diff --git a/debian/json5-tests/misc/empty.txt b/debian/json5-tests/misc/empty.txt
new file mode 100644
index 0000000..e69de29
diff --git a/debian/json5-tests/misc/npm-package.json b/debian/json5-tests/misc/npm-package.json
new file mode 100644
index 0000000..85568da
--- /dev/null
+++ b/debian/json5-tests/misc/npm-package.json
@@ -0,0 +1,106 @@
+{
+  "name": "npm",
+  "publishConfig": {
+    "proprietary-attribs": false
+  },
+  "description": "A package manager for node",
+  "keywords": [
+    "package manager",
+    "modules",
+    "install",
+    "package.json"
+  ],
+  "version": "1.1.22",
+  "preferGlobal": true,
+  "config": {
+    "publishtest": false
+  },
+  "homepage": "http://npmjs.org/",
+  "author": "Isaac Z. Schlueter <i at izs.me> (http://blog.izs.me)",
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/isaacs/npm"
+  },
+  "bugs": {
+    "email": "npm- at googlegroups.com",
+    "url": "http://github.com/isaacs/npm/issues"
+  },
+  "directories": {
+    "doc": "./doc",
+    "man": "./man",
+    "lib": "./lib",
+    "bin": "./bin"
+  },
+  "main": "./lib/npm.js",
+  "bin": "./bin/npm-cli.js",
+  "dependencies": {
+    "semver": "~1.0.14",
+    "ini": "1",
+    "slide": "1",
+    "abbrev": "1",
+    "graceful-fs": "~1.1.1",
+    "minimatch": "~0.2",
+    "nopt": "1",
+    "node-uuid": "~1.3",
+    "proto-list": "1",
+    "rimraf": "2",
+    "request": "~2.9",
+    "which": "1",
+    "tar": "~0.1.12",
+    "fstream": "~0.1.17",
+    "block-stream": "*",
+    "inherits": "1",
+    "mkdirp": "0.3",
+    "read": "0",
+    "lru-cache": "1",
+    "node-gyp": "~0.4.1",
+    "fstream-npm": "0 >=0.0.5",
+    "uid-number": "0",
+    "archy": "0",
+    "chownr": "0"
+  },
+  "bundleDependencies": [
+    "slide",
+    "ini",
+    "semver",
+    "abbrev",
+    "graceful-fs",
+    "minimatch",
+    "nopt",
+    "node-uuid",
+    "rimraf",
+    "request",
+    "proto-list",
+    "which",
+    "tar",
+    "fstream",
+    "block-stream",
+    "inherits",
+    "mkdirp",
+    "read",
+    "lru-cache",
+    "node-gyp",
+    "fstream-npm",
+    "uid-number",
+    "archy",
+    "chownr"
+  ],
+  "devDependencies": {
+    "ronn": "https://github.com/isaacs/ronnjs/tarball/master"
+  },
+  "engines": {
+    "node": "0.6 || 0.7 || 0.8",
+    "npm": "1"
+  },
+  "scripts": {
+    "test": "node ./test/run.js",
+    "prepublish": "npm prune; rm -rf node_modules/*/{test,example,bench}*; make -j4 doc",
+    "dumpconf": "env | grep npm | sort | uniq"
+  },
+  "licenses": [
+    {
+      "type": "MIT +no-false-attribs",
+      "url": "http://github.com/isaacs/npm/raw/master/LICENSE"
+    }
+  ]
+}
diff --git a/debian/json5-tests/misc/npm-package.json5 b/debian/json5-tests/misc/npm-package.json5
new file mode 100644
index 0000000..6994406
--- /dev/null
+++ b/debian/json5-tests/misc/npm-package.json5
@@ -0,0 +1,106 @@
+{
+  name: 'npm',
+  publishConfig: {
+    'proprietary-attribs': false,
+  },
+  description: 'A package manager for node',
+  keywords: [
+    'package manager',
+    'modules',
+    'install',
+    'package.json',
+  ],
+  version: '1.1.22',
+  preferGlobal: true,
+  config: {
+    publishtest: false,
+  },
+  homepage: 'http://npmjs.org/',
+  author: 'Isaac Z. Schlueter <i at izs.me> (http://blog.izs.me)',
+  repository: {
+    type: 'git',
+    url: 'https://github.com/isaacs/npm',
+  },
+  bugs: {
+    email: 'npm- at googlegroups.com',
+    url: 'http://github.com/isaacs/npm/issues',
+  },
+  directories: {
+    doc: './doc',
+    man: './man',
+    lib: './lib',
+    bin: './bin',
+  },
+  main: './lib/npm.js',
+  bin: './bin/npm-cli.js',
+  dependencies: {
+    semver: '~1.0.14',
+    ini: '1',
+    slide: '1',
+    abbrev: '1',
+    'graceful-fs': '~1.1.1',
+    minimatch: '~0.2',
+    nopt: '1',
+    'node-uuid': '~1.3',
+    'proto-list': '1',
+    rimraf: '2',
+    request: '~2.9',
+    which: '1',
+    tar: '~0.1.12',
+    fstream: '~0.1.17',
+    'block-stream': '*',
+    inherits: '1',
+    mkdirp: '0.3',
+    read: '0',
+    'lru-cache': '1',
+    'node-gyp': '~0.4.1',
+    'fstream-npm': '0 >=0.0.5',
+    'uid-number': '0',
+    archy: '0',
+    chownr: '0',
+  },
+  bundleDependencies: [
+    'slide',
+    'ini',
+    'semver',
+    'abbrev',
+    'graceful-fs',
+    'minimatch',
+    'nopt',
+    'node-uuid',
+    'rimraf',
+    'request',
+    'proto-list',
+    'which',
+    'tar',
+    'fstream',
+    'block-stream',
+    'inherits',
+    'mkdirp',
+    'read',
+    'lru-cache',
+    'node-gyp',
+    'fstream-npm',
+    'uid-number',
+    'archy',
+    'chownr',
+  ],
+  devDependencies: {
+    ronn: 'https://github.com/isaacs/ronnjs/tarball/master',
+  },
+  engines: {
+    node: '0.6 || 0.7 || 0.8',
+    npm: '1',
+  },
+  scripts: {
+    test: 'node ./test/run.js',
+    prepublish: 'npm prune; rm -rf node_modules/*/{test,example,bench}*; make -j4 doc',
+    dumpconf: 'env | grep npm | sort | uniq',
+  },
+  licenses: [
+    {
+      type: 'MIT +no-false-attribs',
+      url: 'http://github.com/isaacs/npm/raw/master/LICENSE',
+    },
+  ],
+}
diff --git a/debian/json5-tests/misc/readme-example.json5 b/debian/json5-tests/misc/readme-example.json5
new file mode 100644
index 0000000..25c920a
--- /dev/null
+++ b/debian/json5-tests/misc/readme-example.json5
@@ -0,0 +1,25 @@
+{
+    foo: 'bar',
+    while: true,
+
+    this: 'is a \
+multi-line string',
+
+    // this is an inline comment
+    here: 'is another', // inline comment
+
+    /* this is a block comment
+       that continues on another line */
+
+    hex: 0xDEADbeef,
+    half: .5,
+    delta: +10,
+    to: Infinity,   // and beyond!
+
+    finally: 'a trailing comma',
+    oh: [
+        "we shouldn't forget",
+        'arrays can have',
+        'trailing commas too',
+    ],
+}
diff --git a/debian/json5-tests/misc/valid-whitespace.json5 b/debian/json5-tests/misc/valid-whitespace.json5
new file mode 100644
index 0000000..5cb57d3
--- /dev/null
+++ b/debian/json5-tests/misc/valid-whitespace.json5
@@ -0,0 +1,5 @@
+{
+ 
   // An invalid form feed character (\x0c) has been entered before this comment.
+    // Be careful not to delete it.
+  "a": true
+}
diff --git a/debian/json5-tests/new-lines/.editorconfig b/debian/json5-tests/new-lines/.editorconfig
new file mode 100644
index 0000000..1784f9e
--- /dev/null
+++ b/debian/json5-tests/new-lines/.editorconfig
@@ -0,0 +1,13 @@
+# Since we're testing different representations of new lines,
+# make sure the editor doesn't mangle line endings.
+# Don't commit files in this directory unless you've checked
+# their escaped new lines.
+
+[*-lf.*]
+end_of_line = lf
+
+[*-cr.*]
+end_of_line = cr
+
+[*-crlf.*]
+end_of_line = crlf
diff --git a/debian/json5-tests/new-lines/.gitattributes b/debian/json5-tests/new-lines/.gitattributes
new file mode 100644
index 0000000..2b3eea6
--- /dev/null
+++ b/debian/json5-tests/new-lines/.gitattributes
@@ -0,0 +1,4 @@
+# Since we're testing different representations of new lines,
+# treat all tests in this folder as binary files.
+
+* binary
diff --git a/debian/json5-tests/new-lines/comment-cr.json5 b/debian/json5-tests/new-lines/comment-cr.json5
new file mode 100644
index 0000000..e55aff8
--- /dev/null
+++ b/debian/json5-tests/new-lines/comment-cr.json5
@@ -0,0 +1 @@
+{
    // This comment is terminated with `\r`.
}
\ No newline at end of file
diff --git a/debian/json5-tests/new-lines/comment-crlf.json5 b/debian/json5-tests/new-lines/comment-crlf.json5
new file mode 100644
index 0000000..3791ee6
--- /dev/null
+++ b/debian/json5-tests/new-lines/comment-crlf.json5
@@ -0,0 +1,3 @@
+{
+    // This comment is terminated with `\r\n`.
+}
diff --git a/debian/json5-tests/new-lines/comment-lf.json5 b/debian/json5-tests/new-lines/comment-lf.json5
new file mode 100644
index 0000000..e17dd72
--- /dev/null
+++ b/debian/json5-tests/new-lines/comment-lf.json5
@@ -0,0 +1,3 @@
+{
+    // This comment is terminated with `\n`.
+}
diff --git a/debian/json5-tests/new-lines/escaped-cr.json5 b/debian/json5-tests/new-lines/escaped-cr.json5
new file mode 100644
index 0000000..38e55b6
--- /dev/null
+++ b/debian/json5-tests/new-lines/escaped-cr.json5
@@ -0,0 +1 @@
+{
    // the following string contains an escaped `\r`
    a: 'line 1 \
line 2'
}
\ No newline at end of file
diff --git a/debian/json5-tests/new-lines/escaped-crlf.json5 b/debian/json5-tests/new-lines/escaped-crlf.json5
new file mode 100644
index 0000000..7e3f1ce
--- /dev/null
+++ b/debian/json5-tests/new-lines/escaped-crlf.json5
@@ -0,0 +1,5 @@
+{
+    // the following string contains an escaped `\r\n`
+    a: 'line 1 \
+line 2'
+}
diff --git a/debian/json5-tests/new-lines/escaped-lf.json5 b/debian/json5-tests/new-lines/escaped-lf.json5
new file mode 100644
index 0000000..2235e8c
--- /dev/null
+++ b/debian/json5-tests/new-lines/escaped-lf.json5
@@ -0,0 +1,5 @@
+{
+    // the following string contains an escaped `\n`
+    a: 'line 1 \
+line 2'
+}
diff --git a/debian/json5-tests/numbers/float-leading-decimal-point.json5 b/debian/json5-tests/numbers/float-leading-decimal-point.json5
new file mode 100644
index 0000000..d6c9fff
--- /dev/null
+++ b/debian/json5-tests/numbers/float-leading-decimal-point.json5
@@ -0,0 +1 @@
+.5
diff --git a/debian/json5-tests/numbers/float-leading-zero.json b/debian/json5-tests/numbers/float-leading-zero.json
new file mode 100644
index 0000000..2eb3c4f
--- /dev/null
+++ b/debian/json5-tests/numbers/float-leading-zero.json
@@ -0,0 +1 @@
+0.5
diff --git a/debian/json5-tests/numbers/float-trailing-decimal-point-with-integer-exponent.json5 b/debian/json5-tests/numbers/float-trailing-decimal-point-with-integer-exponent.json5
new file mode 100644
index 0000000..70b8720
--- /dev/null
+++ b/debian/json5-tests/numbers/float-trailing-decimal-point-with-integer-exponent.json5
@@ -0,0 +1 @@
+5.e4
diff --git a/debian/json5-tests/numbers/float-trailing-decimal-point.json5 b/debian/json5-tests/numbers/float-trailing-decimal-point.json5
new file mode 100644
index 0000000..e4c8c31
--- /dev/null
+++ b/debian/json5-tests/numbers/float-trailing-decimal-point.json5
@@ -0,0 +1 @@
+5.
diff --git a/debian/json5-tests/numbers/float-with-integer-exponent.json b/debian/json5-tests/numbers/float-with-integer-exponent.json
new file mode 100644
index 0000000..0e957c6
--- /dev/null
+++ b/debian/json5-tests/numbers/float-with-integer-exponent.json
@@ -0,0 +1 @@
+1.2e3
diff --git a/debian/json5-tests/numbers/float.json b/debian/json5-tests/numbers/float.json
new file mode 100644
index 0000000..5625e59
--- /dev/null
+++ b/debian/json5-tests/numbers/float.json
@@ -0,0 +1 @@
+1.2
diff --git a/debian/json5-tests/numbers/hexadecimal-empty.txt b/debian/json5-tests/numbers/hexadecimal-empty.txt
new file mode 100644
index 0000000..ec68726
--- /dev/null
+++ b/debian/json5-tests/numbers/hexadecimal-empty.txt
@@ -0,0 +1 @@
+0x
diff --git a/debian/json5-tests/numbers/hexadecimal-lowercase-letter.json5 b/debian/json5-tests/numbers/hexadecimal-lowercase-letter.json5
new file mode 100644
index 0000000..57e27ee
--- /dev/null
+++ b/debian/json5-tests/numbers/hexadecimal-lowercase-letter.json5
@@ -0,0 +1 @@
+0xc8
diff --git a/debian/json5-tests/numbers/hexadecimal-uppercase-x.json5 b/debian/json5-tests/numbers/hexadecimal-uppercase-x.json5
new file mode 100644
index 0000000..1a35066
--- /dev/null
+++ b/debian/json5-tests/numbers/hexadecimal-uppercase-x.json5
@@ -0,0 +1 @@
+0XC8
diff --git a/debian/json5-tests/numbers/hexadecimal-with-integer-exponent.json5 b/debian/json5-tests/numbers/hexadecimal-with-integer-exponent.json5
new file mode 100644
index 0000000..3c2204a
--- /dev/null
+++ b/debian/json5-tests/numbers/hexadecimal-with-integer-exponent.json5
@@ -0,0 +1 @@
+0xc8e4
diff --git a/debian/json5-tests/numbers/hexadecimal.json5 b/debian/json5-tests/numbers/hexadecimal.json5
new file mode 100644
index 0000000..cf832ed
--- /dev/null
+++ b/debian/json5-tests/numbers/hexadecimal.json5
@@ -0,0 +1 @@
+0xC8
diff --git a/debian/json5-tests/numbers/infinity.json5 b/debian/json5-tests/numbers/infinity.json5
new file mode 100644
index 0000000..3c62151
--- /dev/null
+++ b/debian/json5-tests/numbers/infinity.json5
@@ -0,0 +1 @@
+Infinity
diff --git a/debian/json5-tests/numbers/integer-with-float-exponent.txt b/debian/json5-tests/numbers/integer-with-float-exponent.txt
new file mode 100644
index 0000000..fa0688c
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-float-exponent.txt
@@ -0,0 +1 @@
+1e2.3
diff --git a/debian/json5-tests/numbers/integer-with-hexadecimal-exponent.txt b/debian/json5-tests/numbers/integer-with-hexadecimal-exponent.txt
new file mode 100644
index 0000000..0f58237
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-hexadecimal-exponent.txt
@@ -0,0 +1 @@
+1e0x4
diff --git a/debian/json5-tests/numbers/integer-with-integer-exponent.json b/debian/json5-tests/numbers/integer-with-integer-exponent.json
new file mode 100644
index 0000000..0d5cde8
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-integer-exponent.json
@@ -0,0 +1 @@
+2e23
diff --git a/debian/json5-tests/numbers/integer-with-negative-float-exponent.txt b/debian/json5-tests/numbers/integer-with-negative-float-exponent.txt
new file mode 100644
index 0000000..5be0915
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-negative-float-exponent.txt
@@ -0,0 +1 @@
+1e-2.3
diff --git a/debian/json5-tests/numbers/integer-with-negative-hexadecimal-exponent.txt b/debian/json5-tests/numbers/integer-with-negative-hexadecimal-exponent.txt
new file mode 100644
index 0000000..adeb2b9
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-negative-hexadecimal-exponent.txt
@@ -0,0 +1 @@
+1e-0x4
diff --git a/debian/json5-tests/numbers/integer-with-negative-integer-exponent.json b/debian/json5-tests/numbers/integer-with-negative-integer-exponent.json
new file mode 100644
index 0000000..6118c3e
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-negative-integer-exponent.json
@@ -0,0 +1 @@
+2e-23
diff --git a/debian/json5-tests/numbers/integer-with-negative-zero-integer-exponent.json b/debian/json5-tests/numbers/integer-with-negative-zero-integer-exponent.json
new file mode 100644
index 0000000..eb67bf4
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-negative-zero-integer-exponent.json
@@ -0,0 +1 @@
+5e-0
diff --git a/debian/json5-tests/numbers/integer-with-positive-float-exponent.txt b/debian/json5-tests/numbers/integer-with-positive-float-exponent.txt
new file mode 100644
index 0000000..f89d55e
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-positive-float-exponent.txt
@@ -0,0 +1 @@
+1e+2.3
diff --git a/debian/json5-tests/numbers/integer-with-positive-hexadecimal-exponent.txt b/debian/json5-tests/numbers/integer-with-positive-hexadecimal-exponent.txt
new file mode 100644
index 0000000..a6c75d9
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-positive-hexadecimal-exponent.txt
@@ -0,0 +1 @@
+1e+0x4
diff --git a/debian/json5-tests/numbers/integer-with-positive-integer-exponent.json b/debian/json5-tests/numbers/integer-with-positive-integer-exponent.json
new file mode 100644
index 0000000..90c0616
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-positive-integer-exponent.json
@@ -0,0 +1 @@
+1e+2
diff --git a/debian/json5-tests/numbers/integer-with-positive-zero-integer-exponent.json b/debian/json5-tests/numbers/integer-with-positive-zero-integer-exponent.json
new file mode 100644
index 0000000..1d7002f
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-positive-zero-integer-exponent.json
@@ -0,0 +1 @@
+5e+0
diff --git a/debian/json5-tests/numbers/integer-with-zero-integer-exponent.json b/debian/json5-tests/numbers/integer-with-zero-integer-exponent.json
new file mode 100644
index 0000000..a5e3196
--- /dev/null
+++ b/debian/json5-tests/numbers/integer-with-zero-integer-exponent.json
@@ -0,0 +1 @@
+5e0
diff --git a/debian/json5-tests/numbers/integer.json b/debian/json5-tests/numbers/integer.json
new file mode 100644
index 0000000..60d3b2f
--- /dev/null
+++ b/debian/json5-tests/numbers/integer.json
@@ -0,0 +1 @@
+15
diff --git a/debian/json5-tests/numbers/lone-decimal-point.txt b/debian/json5-tests/numbers/lone-decimal-point.txt
new file mode 100644
index 0000000..9c558e3
--- /dev/null
+++ b/debian/json5-tests/numbers/lone-decimal-point.txt
@@ -0,0 +1 @@
+.
diff --git a/debian/json5-tests/numbers/nan.json5 b/debian/json5-tests/numbers/nan.json5
new file mode 100644
index 0000000..736991a
--- /dev/null
+++ b/debian/json5-tests/numbers/nan.json5
@@ -0,0 +1 @@
+NaN
diff --git a/debian/json5-tests/numbers/negative-float-leading-decimal-point.json5 b/debian/json5-tests/numbers/negative-float-leading-decimal-point.json5
new file mode 100644
index 0000000..c6eaee5
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-float-leading-decimal-point.json5
@@ -0,0 +1 @@
+-.5
diff --git a/debian/json5-tests/numbers/negative-float-leading-zero.json b/debian/json5-tests/numbers/negative-float-leading-zero.json
new file mode 100644
index 0000000..e118203
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-float-leading-zero.json
@@ -0,0 +1 @@
+-0.5
diff --git a/debian/json5-tests/numbers/negative-float-trailing-decimal-point.json5 b/debian/json5-tests/numbers/negative-float-trailing-decimal-point.json5
new file mode 100644
index 0000000..52e5245
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-float-trailing-decimal-point.json5
@@ -0,0 +1 @@
+-5.
diff --git a/debian/json5-tests/numbers/negative-float.json b/debian/json5-tests/numbers/negative-float.json
new file mode 100644
index 0000000..1d94c8a
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-float.json
@@ -0,0 +1 @@
+-1.2
diff --git a/debian/json5-tests/numbers/negative-hexadecimal.json5 b/debian/json5-tests/numbers/negative-hexadecimal.json5
new file mode 100644
index 0000000..8882fae
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-hexadecimal.json5
@@ -0,0 +1 @@
+-0xC8
diff --git a/debian/json5-tests/numbers/negative-infinity.json5 b/debian/json5-tests/numbers/negative-infinity.json5
new file mode 100644
index 0000000..879e80e
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-infinity.json5
@@ -0,0 +1 @@
+-Infinity
diff --git a/debian/json5-tests/numbers/negative-integer.json b/debian/json5-tests/numbers/negative-integer.json
new file mode 100644
index 0000000..2192236
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-integer.json
@@ -0,0 +1 @@
+-15
diff --git a/debian/json5-tests/numbers/negative-noctal.js b/debian/json5-tests/numbers/negative-noctal.js
new file mode 100644
index 0000000..8826f48
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-noctal.js
@@ -0,0 +1 @@
+-098
diff --git a/debian/json5-tests/numbers/negative-octal.txt b/debian/json5-tests/numbers/negative-octal.txt
new file mode 100644
index 0000000..2e7a4b4
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-octal.txt
@@ -0,0 +1 @@
+-0123
diff --git a/debian/json5-tests/numbers/negative-zero-float-leading-decimal-point.json5 b/debian/json5-tests/numbers/negative-zero-float-leading-decimal-point.json5
new file mode 100644
index 0000000..8dd8e03
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-zero-float-leading-decimal-point.json5
@@ -0,0 +1 @@
+-.0
diff --git a/debian/json5-tests/numbers/negative-zero-float-trailing-decimal-point.json5 b/debian/json5-tests/numbers/negative-zero-float-trailing-decimal-point.json5
new file mode 100644
index 0000000..90cc048
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-zero-float-trailing-decimal-point.json5
@@ -0,0 +1 @@
+-0.
diff --git a/debian/json5-tests/numbers/negative-zero-float.json b/debian/json5-tests/numbers/negative-zero-float.json
new file mode 100644
index 0000000..1344bfd
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-zero-float.json
@@ -0,0 +1 @@
+-0.0
diff --git a/debian/json5-tests/numbers/negative-zero-hexadecimal.json5 b/debian/json5-tests/numbers/negative-zero-hexadecimal.json5
new file mode 100644
index 0000000..8847d05
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-zero-hexadecimal.json5
@@ -0,0 +1 @@
+-0x0
diff --git a/debian/json5-tests/numbers/negative-zero-integer.json b/debian/json5-tests/numbers/negative-zero-integer.json
new file mode 100644
index 0000000..ec064f6
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-zero-integer.json
@@ -0,0 +1 @@
+-0
diff --git a/debian/json5-tests/numbers/negative-zero-octal.txt b/debian/json5-tests/numbers/negative-zero-octal.txt
new file mode 100644
index 0000000..200a801
--- /dev/null
+++ b/debian/json5-tests/numbers/negative-zero-octal.txt
@@ -0,0 +1 @@
+-00
diff --git a/debian/json5-tests/numbers/noctal-with-leading-octal-digit.js b/debian/json5-tests/numbers/noctal-with-leading-octal-digit.js
new file mode 100644
index 0000000..1fd7c08
--- /dev/null
+++ b/debian/json5-tests/numbers/noctal-with-leading-octal-digit.js
@@ -0,0 +1 @@
+0780
diff --git a/debian/json5-tests/numbers/noctal.js b/debian/json5-tests/numbers/noctal.js
new file mode 100644
index 0000000..fa5c783
--- /dev/null
+++ b/debian/json5-tests/numbers/noctal.js
@@ -0,0 +1 @@
+080
diff --git a/debian/json5-tests/numbers/octal.txt b/debian/json5-tests/numbers/octal.txt
new file mode 100644
index 0000000..9e8493e
--- /dev/null
+++ b/debian/json5-tests/numbers/octal.txt
@@ -0,0 +1 @@
+010
diff --git a/debian/json5-tests/numbers/positive-float-leading-decimal-point.json5 b/debian/json5-tests/numbers/positive-float-leading-decimal-point.json5
new file mode 100644
index 0000000..0434608
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-float-leading-decimal-point.json5
@@ -0,0 +1 @@
++.5
diff --git a/debian/json5-tests/numbers/positive-float-leading-zero.json5 b/debian/json5-tests/numbers/positive-float-leading-zero.json5
new file mode 100644
index 0000000..d89b45d
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-float-leading-zero.json5
@@ -0,0 +1 @@
++0.5
diff --git a/debian/json5-tests/numbers/positive-float-trailing-decimal-point.json5 b/debian/json5-tests/numbers/positive-float-trailing-decimal-point.json5
new file mode 100644
index 0000000..bee758a
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-float-trailing-decimal-point.json5
@@ -0,0 +1 @@
++5.
diff --git a/debian/json5-tests/numbers/positive-float.json5 b/debian/json5-tests/numbers/positive-float.json5
new file mode 100644
index 0000000..c5732cb
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-float.json5
@@ -0,0 +1 @@
++1.2
diff --git a/debian/json5-tests/numbers/positive-hexadecimal.json5 b/debian/json5-tests/numbers/positive-hexadecimal.json5
new file mode 100644
index 0000000..c91ede9
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-hexadecimal.json5
@@ -0,0 +1 @@
++0xC8
diff --git a/debian/json5-tests/numbers/positive-infinity.json5 b/debian/json5-tests/numbers/positive-infinity.json5
new file mode 100644
index 0000000..9bcb989
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-infinity.json5
@@ -0,0 +1 @@
++Infinity
diff --git a/debian/json5-tests/numbers/positive-integer.json5 b/debian/json5-tests/numbers/positive-integer.json5
new file mode 100644
index 0000000..8ed01e0
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-integer.json5
@@ -0,0 +1 @@
++15
diff --git a/debian/json5-tests/numbers/positive-noctal.js b/debian/json5-tests/numbers/positive-noctal.js
new file mode 100644
index 0000000..2f450fc
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-noctal.js
@@ -0,0 +1 @@
++098
diff --git a/debian/json5-tests/numbers/positive-octal.txt b/debian/json5-tests/numbers/positive-octal.txt
new file mode 100644
index 0000000..faa8600
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-octal.txt
@@ -0,0 +1 @@
++0123
diff --git a/debian/json5-tests/numbers/positive-zero-float-leading-decimal-point.json5 b/debian/json5-tests/numbers/positive-zero-float-leading-decimal-point.json5
new file mode 100644
index 0000000..557bcde
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-zero-float-leading-decimal-point.json5
@@ -0,0 +1 @@
++.0
diff --git a/debian/json5-tests/numbers/positive-zero-float-trailing-decimal-point.json5 b/debian/json5-tests/numbers/positive-zero-float-trailing-decimal-point.json5
new file mode 100644
index 0000000..d8912d1
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-zero-float-trailing-decimal-point.json5
@@ -0,0 +1 @@
++0.
diff --git a/debian/json5-tests/numbers/positive-zero-float.json5 b/debian/json5-tests/numbers/positive-zero-float.json5
new file mode 100644
index 0000000..11e8402
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-zero-float.json5
@@ -0,0 +1 @@
++0.0
diff --git a/debian/json5-tests/numbers/positive-zero-hexadecimal.json5 b/debian/json5-tests/numbers/positive-zero-hexadecimal.json5
new file mode 100644
index 0000000..40a9ce6
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-zero-hexadecimal.json5
@@ -0,0 +1 @@
++0x0
diff --git a/debian/json5-tests/numbers/positive-zero-integer.json5 b/debian/json5-tests/numbers/positive-zero-integer.json5
new file mode 100644
index 0000000..9317bcb
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-zero-integer.json5
@@ -0,0 +1 @@
++0
diff --git a/debian/json5-tests/numbers/positive-zero-octal.txt b/debian/json5-tests/numbers/positive-zero-octal.txt
new file mode 100644
index 0000000..80959e5
--- /dev/null
+++ b/debian/json5-tests/numbers/positive-zero-octal.txt
@@ -0,0 +1 @@
++00
diff --git a/debian/json5-tests/numbers/zero-float-leading-decimal-point.json5 b/debian/json5-tests/numbers/zero-float-leading-decimal-point.json5
new file mode 100644
index 0000000..7d856fd
--- /dev/null
+++ b/debian/json5-tests/numbers/zero-float-leading-decimal-point.json5
@@ -0,0 +1 @@
+.0
diff --git a/debian/json5-tests/numbers/zero-float-trailing-decimal-point.json5 b/debian/json5-tests/numbers/zero-float-trailing-decimal-point.json5
new file mode 100644
index 0000000..17a5757
--- /dev/null
+++ b/debian/json5-tests/numbers/zero-float-trailing-decimal-point.json5
@@ -0,0 +1 @@
+0.
diff --git a/debian/json5-tests/numbers/zero-float.json b/debian/json5-tests/numbers/zero-float.json
new file mode 100644
index 0000000..ba66466
--- /dev/null
+++ b/debian/json5-tests/numbers/zero-float.json
@@ -0,0 +1 @@
+0.0
diff --git a/debian/json5-tests/numbers/zero-hexadecimal.json5 b/debian/json5-tests/numbers/zero-hexadecimal.json5
new file mode 100644
index 0000000..9982566
--- /dev/null
+++ b/debian/json5-tests/numbers/zero-hexadecimal.json5
@@ -0,0 +1 @@
+0x0
diff --git a/debian/json5-tests/numbers/zero-integer-with-integer-exponent.json b/debian/json5-tests/numbers/zero-integer-with-integer-exponent.json
new file mode 100644
index 0000000..da219e3
--- /dev/null
+++ b/debian/json5-tests/numbers/zero-integer-with-integer-exponent.json
@@ -0,0 +1 @@
+0e23
diff --git a/debian/json5-tests/numbers/zero-integer.json b/debian/json5-tests/numbers/zero-integer.json
new file mode 100644
index 0000000..573541a
--- /dev/null
+++ b/debian/json5-tests/numbers/zero-integer.json
@@ -0,0 +1 @@
+0
diff --git a/debian/json5-tests/numbers/zero-octal.txt b/debian/json5-tests/numbers/zero-octal.txt
new file mode 100644
index 0000000..4daddb7
--- /dev/null
+++ b/debian/json5-tests/numbers/zero-octal.txt
@@ -0,0 +1 @@
+00
diff --git a/debian/json5-tests/objects/duplicate-keys.json b/debian/json5-tests/objects/duplicate-keys.json
new file mode 100644
index 0000000..bb0e4cc
--- /dev/null
+++ b/debian/json5-tests/objects/duplicate-keys.json
@@ -0,0 +1,4 @@
+{
+    "a": true,
+    "a": false
+}
diff --git a/debian/json5-tests/objects/empty-object.json b/debian/json5-tests/objects/empty-object.json
new file mode 100644
index 0000000..9e26dfe
--- /dev/null
+++ b/debian/json5-tests/objects/empty-object.json
@@ -0,0 +1 @@
+{}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/illegal-unquoted-key-number.errorSpec b/debian/json5-tests/objects/illegal-unquoted-key-number.errorSpec
new file mode 100644
index 0000000..e44dc85
--- /dev/null
+++ b/debian/json5-tests/objects/illegal-unquoted-key-number.errorSpec
@@ -0,0 +1,6 @@
+{
+    at: 7,
+    lineNumber: 2,
+    columnNumber: 5,
+    message: "Bad identifier as unquoted key"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/illegal-unquoted-key-number.txt b/debian/json5-tests/objects/illegal-unquoted-key-number.txt
new file mode 100644
index 0000000..aebcac2
--- /dev/null
+++ b/debian/json5-tests/objects/illegal-unquoted-key-number.txt
@@ -0,0 +1,3 @@
+{
+    10twenty: "ten twenty"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/illegal-unquoted-key-symbol.errorSpec b/debian/json5-tests/objects/illegal-unquoted-key-symbol.errorSpec
new file mode 100644
index 0000000..95ba468
--- /dev/null
+++ b/debian/json5-tests/objects/illegal-unquoted-key-symbol.errorSpec
@@ -0,0 +1,6 @@
+{
+    at: 12,
+    lineNumber: 2,
+    columnNumber: 10,
+    message: "Expected ':' instead of '-'"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/illegal-unquoted-key-symbol.txt b/debian/json5-tests/objects/illegal-unquoted-key-symbol.txt
new file mode 100644
index 0000000..4cb2bd5
--- /dev/null
+++ b/debian/json5-tests/objects/illegal-unquoted-key-symbol.txt
@@ -0,0 +1,3 @@
+{
+    multi-word: "multi-word"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/leading-comma-object.errorSpec b/debian/json5-tests/objects/leading-comma-object.errorSpec
new file mode 100644
index 0000000..e44dc85
--- /dev/null
+++ b/debian/json5-tests/objects/leading-comma-object.errorSpec
@@ -0,0 +1,6 @@
+{
+    at: 7,
+    lineNumber: 2,
+    columnNumber: 5,
+    message: "Bad identifier as unquoted key"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/leading-comma-object.txt b/debian/json5-tests/objects/leading-comma-object.txt
new file mode 100644
index 0000000..bfb3c51
--- /dev/null
+++ b/debian/json5-tests/objects/leading-comma-object.txt
@@ -0,0 +1,3 @@
+{
+    ,"foo": "bar"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/lone-trailing-comma-object.txt b/debian/json5-tests/objects/lone-trailing-comma-object.txt
new file mode 100644
index 0000000..3f3f9f7
--- /dev/null
+++ b/debian/json5-tests/objects/lone-trailing-comma-object.txt
@@ -0,0 +1,3 @@
+{
+    ,
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/no-comma-object.txt b/debian/json5-tests/objects/no-comma-object.txt
new file mode 100644
index 0000000..c073875
--- /dev/null
+++ b/debian/json5-tests/objects/no-comma-object.txt
@@ -0,0 +1,4 @@
+{
+    "foo": "bar"
+    "hello": "world"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/reserved-unquoted-key.json5 b/debian/json5-tests/objects/reserved-unquoted-key.json5
new file mode 100644
index 0000000..4b80a63
--- /dev/null
+++ b/debian/json5-tests/objects/reserved-unquoted-key.json5
@@ -0,0 +1,3 @@
+{
+    while: true
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/single-quoted-key.json5 b/debian/json5-tests/objects/single-quoted-key.json5
new file mode 100644
index 0000000..842ca19
--- /dev/null
+++ b/debian/json5-tests/objects/single-quoted-key.json5
@@ -0,0 +1,3 @@
+{
+    'hello': "world"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/trailing-comma-object.json5 b/debian/json5-tests/objects/trailing-comma-object.json5
new file mode 100644
index 0000000..ab61ba7
--- /dev/null
+++ b/debian/json5-tests/objects/trailing-comma-object.json5
@@ -0,0 +1,3 @@
+{
+    "foo": "bar",
+}
\ No newline at end of file
diff --git a/debian/json5-tests/objects/unquoted-keys.json5 b/debian/json5-tests/objects/unquoted-keys.json5
new file mode 100644
index 0000000..0c06f3f
--- /dev/null
+++ b/debian/json5-tests/objects/unquoted-keys.json5
@@ -0,0 +1,8 @@
+{
+    hello: "world",
+    _: "underscore",
+    $: "dollar sign",
+    one1: "numerals",
+    _$_: "multiple symbols",
+    $_$hello123world_$_: "mixed"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/strings/escaped-single-quoted-string.json5 b/debian/json5-tests/strings/escaped-single-quoted-string.json5
new file mode 100644
index 0000000..1c79910
--- /dev/null
+++ b/debian/json5-tests/strings/escaped-single-quoted-string.json5
@@ -0,0 +1 @@
+'I can\'t wait'
\ No newline at end of file
diff --git a/debian/json5-tests/strings/multi-line-string.json5 b/debian/json5-tests/strings/multi-line-string.json5
new file mode 100644
index 0000000..964dc2d
--- /dev/null
+++ b/debian/json5-tests/strings/multi-line-string.json5
@@ -0,0 +1,2 @@
+'hello\
+ world'
\ No newline at end of file
diff --git a/debian/json5-tests/strings/no-comma-array.errorSpec b/debian/json5-tests/strings/no-comma-array.errorSpec
new file mode 100644
index 0000000..9835561
--- /dev/null
+++ b/debian/json5-tests/strings/no-comma-array.errorSpec
@@ -0,0 +1,6 @@
+{
+    at: 16,
+    lineNumber: 3,
+    columNumber: 5,
+    message: "Expected ']' instead of 'f'"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/strings/single-quoted-string.json5 b/debian/json5-tests/strings/single-quoted-string.json5
new file mode 100644
index 0000000..5dadd33
--- /dev/null
+++ b/debian/json5-tests/strings/single-quoted-string.json5
@@ -0,0 +1 @@
+'hello world'
\ No newline at end of file
diff --git a/debian/json5-tests/strings/unescaped-multi-line-string.errorSpec b/debian/json5-tests/strings/unescaped-multi-line-string.errorSpec
new file mode 100644
index 0000000..a85f1ad
--- /dev/null
+++ b/debian/json5-tests/strings/unescaped-multi-line-string.errorSpec
@@ -0,0 +1,6 @@
+{
+    at: 5,
+    lineNumber: 2,
+    columnNumber: 0,
+    message: "Bad string"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/strings/unescaped-multi-line-string.txt b/debian/json5-tests/strings/unescaped-multi-line-string.txt
new file mode 100644
index 0000000..7325139
--- /dev/null
+++ b/debian/json5-tests/strings/unescaped-multi-line-string.txt
@@ -0,0 +1,2 @@
+"foo
+bar"
diff --git a/debian/json5-tests/todo/unicode-escaped-unquoted-key.json5 b/debian/json5-tests/todo/unicode-escaped-unquoted-key.json5
new file mode 100644
index 0000000..56c3457
--- /dev/null
+++ b/debian/json5-tests/todo/unicode-escaped-unquoted-key.json5
@@ -0,0 +1,3 @@
+{
+    sig\u03A3ma: "the sum of all things"
+}
\ No newline at end of file
diff --git a/debian/json5-tests/todo/unicode-unquoted-key.json5 b/debian/json5-tests/todo/unicode-unquoted-key.json5
new file mode 100644
index 0000000..98382e6
--- /dev/null
+++ b/debian/json5-tests/todo/unicode-unquoted-key.json5
@@ -0,0 +1,3 @@
+{
+    ümlåût: "that's not really an ümlaüt, but this is"
+}
\ No newline at end of file

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/node-json5.git



More information about the Pkg-javascript-commits mailing list