json-next 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8be12b2735cd395e2b7df815212ae0883813ebd5
4
- data.tar.gz: c2825771ae3b950e828fdc3de35261b039bec33c
3
+ metadata.gz: cab3b125181669cf07bc490253eea3bf4e43ce0a
4
+ data.tar.gz: 6759ea62cb24134d486826228352c9b2bb103df3
5
5
  SHA512:
6
- metadata.gz: 9e70939b56c4c28d44ac85ee00e3b8c03d0e835ed408f47aef1a5e521a6eb92f76f7ad35bbad3b1e3a8873da903a04f38b095822ea25f7a5896d2899f4ba767f
7
- data.tar.gz: 3c45fdada52846cc88eccad43f6bab60ed63e7ef59a6f9ec352fa61995c914d05405174ccc357d4af4c90e80d11ed74b3d2c77c5179ccd5bfc51407b05420145
6
+ metadata.gz: 7d8a33c50cf262518bbe6291f6031c135fafc72915119714b9105c4cbe8d3828ea47adcbe3f3eab7cdde98e1cdd6f4d4feb29e0501b4a32c528111c433a7e01d
7
+ data.tar.gz: 35acfddb995924c35e49d36db14ba12947c9270e79d8820e7dcb5ccbe2a4eb1d5af46767931b150a78a714edfb72edc5f0f17ede74a6f3e1751da0245912127b
data/README.md CHANGED
@@ -169,6 +169,7 @@ Includes all JSON extensions from HanSON:
169
169
  - you can use JavaScript comments, both single line (`//`) and multi-line comments (`/* */`), in all places where JSON allows whitespace.
170
170
  - Commas after the last list element or object property will be ignored.
171
171
 
172
+
172
173
  Plus all JSON extensions from SON:
173
174
 
174
175
  - comments starts with `#` sign and ends with newline (`\n`)
@@ -176,6 +177,12 @@ Plus all JSON extensions from SON:
176
177
  - comma after an array item is optional
177
178
 
178
179
 
180
+ Plus some more extra JSON extensions:
181
+
182
+ - unquoted strings following the JavaScript identifier rules can use the dash (`-`) too e.g. allows common keys such as `core-js`, `babel-preset-es2015`, `eslint-config-jquery` and others
183
+
184
+
185
+
179
186
  Example:
180
187
 
181
188
  ```
@@ -19,7 +19,7 @@ module JSONX
19
19
  SHELL_COMMENT = JSON::Next::SHELL_COMMENT
20
20
 
21
21
  KEYWORDS = JSON::Next::KEYWORDS
22
- IDENTIFIER = JSON::Next::IDENTIFIER
22
+ IDENTIFIER = JSON::Next::IDENTIFIER_EXTENDED
23
23
  TRAILING_COMMA = JSON::Next::TRAILING_COMMA
24
24
 
25
25
  UNESCAPE_MAP = JSON::Next::UNESCAPE_MAP
@@ -92,6 +92,7 @@ module JSON
92
92
  )
93
93
  >
94
94
 
95
+
95
96
  IDENTIFIER = %<
96
97
  (?<identifier>
97
98
  [a-zA-Z_$]
@@ -99,6 +100,24 @@ module JSON
99
100
  )
100
101
  >
101
102
 
103
+
104
+ ## note: allow extra chars for identifier (extended)
105
+ ## e.g. allow dash (-) e.g:
106
+ ## babel-preset-es2015
107
+ ## core-js
108
+ ## cross-spawn
109
+ ## eslint-config-jquery
110
+ ## and others
111
+
112
+ IDENTIFIER_EXTENDED = %<
113
+ (?<identifier>
114
+ [a-zA-Z_$]
115
+ [\\w_$\\-]*
116
+ )
117
+ >
118
+
119
+
120
+
102
121
  TRAILING_COMMA = %<
103
122
  (?<trailing_comma>,)
104
123
  (?=
@@ -5,7 +5,7 @@ module JSON
5
5
 
6
6
  MAJOR = 1 ## todo: namespace inside version or something - why? why not??
7
7
  MINOR = 2
8
- PATCH = 0
8
+ PATCH = 1
9
9
  VERSION = [MAJOR,MINOR,PATCH].join('.')
10
10
 
11
11
  def self.version
@@ -4,13 +4,13 @@
4
4
  {
5
5
  name: "Cookie Monster"
6
6
  /* Note the template quotes and unescaped regular quotes in the next string */
7
- background: `Cookie Monster used to be a
7
+ background-text: `Cookie Monster used to be a
8
8
  monster that ate everything, especially cookies.
9
9
  These days he is forced to eat "healthy" food.`
10
10
  }, {
11
11
  # You can single-quote strings too:
12
12
  name: 'Herry Monster',
13
- background: `Herry Monster is a furry blue monster with a purple nose.
13
+ background-text: `Herry Monster is a furry blue monster with a purple nose.
14
14
  He's mostly retired today.`
15
15
  }, /* don't worry, the trailing comma will be ignored */
16
16
  ]
@@ -22,10 +22,10 @@ He's mostly retired today.`
22
22
  "listName" => "Sesame Street Monsters",
23
23
  "content" =>
24
24
  [{"name" => "Cookie Monster",
25
- "background" =>
25
+ "background-text" =>
26
26
  "Cookie Monster used to be a\nmonster that ate everything, especially cookies.\nThese days he is forced to eat \"healthy\" food."},
27
27
  {"name" => "Herry Monster",
28
- "background" =>
28
+ "background-text" =>
29
29
  "Herry Monster is a furry blue monster with a purple nose.\nHe's mostly retired today."}
30
30
  ]
31
31
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: json-next
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gerald Bauer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-07-09 00:00:00.000000000 Z
11
+ date: 2017-07-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rdoc
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '3.15'
33
+ version: '3.16'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '3.15'
40
+ version: '3.16'
41
41
  description: json-next - read generation y / next generation json versions (HanSON,
42
42
  SON, JSONX/JSON11, etc.) with comments, unquoted keys, multi-line strings, trailing
43
43
  commas, optional commas, and more