1 | # jsonld ChangeLog
|
2 |
|
3 | ## 5.2.0 - 2021-04-07
|
4 |
|
5 | ### Changed
|
6 | - Update `rdf-canonize`.
|
7 |
|
8 | ## 5.1.0 - 2021-04-07
|
9 |
|
10 | ### Changed
|
11 | - Use `globalThis` to set globals in browser contexts.
|
12 | - Split platform support out into Node.js and browser files.
|
13 | - Update `@digitalbazaar/http-client` dependency to address engine
|
14 | compatibility issues with newer Node.js versions.
|
15 | - Update dependencies.
|
16 |
|
17 | ### Fixed
|
18 | - Browser override path style.
|
19 |
|
20 | ## 5.0.0 - 2021-03-18
|
21 |
|
22 | ### Notes
|
23 | - Support is dropped for Node.js versions earlier than v12. This reduces the
|
24 | maintenance burden of being limited by older APIs, development tools, and
|
25 | dependencies. If you need to use an earlier Node.js then either use a
|
26 | previous jsonld.js version or use translation tools and polyfills as needed.
|
27 | (The built-in process to make browser bundles may work for this.) Bug fixes
|
28 | and updates may be back-ported to previous versions from time to time or on
|
29 | request (preferably with a patch).
|
30 |
|
31 | ### Changed
|
32 | - Node.js documentLoader now uses `@digitalbazaar/http-client` instead of
|
33 | `request`.
|
34 | - **BREAKING**: Only support Node.js >= 12. Remove related unneeded polyfills,
|
35 | tests, and `node6` output. Update dependencies that needed newer Node.js
|
36 | versions.
|
37 | - Use Babel `usage` mode rather than listing individual polyfills. May increase
|
38 | bundle size due to more accurate support of intended output targets.
|
39 | - Default Node.js document loader `user-agent` header set to "jsonld.js".
|
40 |
|
41 | ### Added
|
42 | - Distribute a `jsonld.esm.min.js` bundle optimized for the features available
|
43 | in browsers that support ES Modules.
|
44 | - Default Node.js document loader `httpAgent` and `httpsAgent` options.
|
45 | - Add note to README about setting a custom `user-agent` header for the default
|
46 | Node.js document loader.
|
47 |
|
48 | ### Removed
|
49 | - Use of deprecated library `request` in Node.js documentLoader.
|
50 | - **BREAKING**: Parameter `request` has been removed from the Node.js
|
51 | documentLoader.
|
52 | - Node.js documentLoader should no longer be included in browser build.
|
53 |
|
54 | ## 4.0.1 - 2021-02-11
|
55 |
|
56 | ### Changed
|
57 | - State which protected term is being redefined.
|
58 | - Switch to `core-js@3`.
|
59 |
|
60 | ## 4.0.0 - 2021-02-11
|
61 |
|
62 | ### Removed
|
63 | - **BREAKING**: RDFa parser moved to `jsonld-rdfa` package, remove `xmldom`
|
64 | dependency.
|
65 |
|
66 | ## 3.3.2 - 2021-02-10
|
67 |
|
68 | ### Fixed
|
69 | - Add `yallist` to packages run through babel for bundles. Fixes use of
|
70 | `function*`.
|
71 |
|
72 | ## 3.3.1 - 2021-02-10
|
73 |
|
74 | ### Fixed
|
75 | - Add `lru-cache` to packages run through babel for bundles. Fixes use of arrow
|
76 | functions.
|
77 |
|
78 | ## 3.3.0 - 2021-01-21
|
79 |
|
80 | ### Changed
|
81 | - Update `rdf-canonize` to 2.0.1.
|
82 | - **NOTE**: The `rdf-canonize` update changes browser support and removes forge
|
83 | in favor of the WebCrypto `crypto.subtle` API. A WebCrypto polyfill *may* be
|
84 | required if a jsonld.js API is used that calls `rdf-canonize`. The polyfill
|
85 | is needed if older browsers are targeted or when not using a secure context
|
86 | on some modern browsers. Due to other concerns and the expected minimal
|
87 | impact of this change, it is happening in a minor release. Please provide
|
88 | feedback if this decision causes problems.
|
89 | - Node.js 6 is no longer tested due to development tool dependency updates and
|
90 | to avoid adding additional testing complexity. Node.js 6 will otherwise still
|
91 | be supported until the next major release. Please report any issues found.
|
92 |
|
93 | ## 3.2.0 - 2020-10-13
|
94 |
|
95 | ### Fixed
|
96 | - Empty-property scoped context should not effect the outer context. Note that
|
97 | in situations where this fix is used there is now an extra clone of the
|
98 | active context which could potentially cause performance issues.
|
99 |
|
100 | ## 3.1.1 - 2020-05-22
|
101 |
|
102 | ### Fixed
|
103 | - Fix XHR document loader Link header processing.
|
104 |
|
105 | ## 3.1.0 - 2020-04-15
|
106 |
|
107 | ### Fixed
|
108 | - Support recusrive scoped contexts.
|
109 | - Various EARL report updates.
|
110 | - Fixed `prependBase` to start path with a '/' for a zero length path
|
111 | if there is an authority in base.
|
112 |
|
113 | ### Changed
|
114 | - Better support for using a processed context for `null` and caching
|
115 | `@import`.
|
116 | - Don't set `@base` in initial context and don't resolve a relative IRI
|
117 | when setting `@base` in a context, so that the document location can
|
118 | be kept separate from the context itself.
|
119 | - Use `package.json` `version` field for EARL reports.
|
120 |
|
121 | ## 3.0.1 - 2020-03-10
|
122 |
|
123 | ### Fixed
|
124 | - Exclude `@type` from added values in Merge Node Maps step 2.2.1.
|
125 |
|
126 | ## 3.0.0 - 2020-03-10
|
127 |
|
128 | ### Notes
|
129 | - This release adds support for a majority of JSON-LD 1.1. Significant thanks
|
130 | goes to Gregg Kellogg!
|
131 | - **BREAKING**: A notable change is that the framing `omitGraph` default
|
132 | changed to match the JSON-LD 1.1 Framing spec. This is likely to cause issues
|
133 | in most current uses of `frame()`. Result handling similar to
|
134 | `framed['@graph'][0]` will have to be changed. Check your code.
|
135 | - The spec calls for various situations to issue warnings. This is currently
|
136 | done with `console.warn`. This will be replaced by a new event notification
|
137 | API in an upcoming release.
|
138 |
|
139 | ### Fixed
|
140 | - More support for `"@type": "@none"`.
|
141 | - JSON literal value handling issues (`null` and `[]`).
|
142 | - Always pass `typeScopedContext` to `_expandObject`.
|
143 | - Allow a keyword to exist when expanding in `_expandObject` when the key is
|
144 | `@included` or `@type`.
|
145 | - Improve `isDouble` to look for big integers.
|
146 | - URI `removeDotSegments` only ensures preceding '/' if was already absolute.
|
147 | - Do minimal checking to see if IRIs are valid by making sure they contain no
|
148 | whitespace.
|
149 | - Terms of the form of an IRI must map to the same IRI.
|
150 | - Terms of the form of a relative IRI may not be used as prefixes.
|
151 | - Match spec error code "invalid context entry" vs "invalid context member".
|
152 | - Keywords may not be used as prefixes.
|
153 | - Handle term definition on `@type` with empty map.
|
154 | - Handling of `@` values for `@reverse`.
|
155 | - Changes in object embedding.
|
156 | - Better support for graph framing.
|
157 | - Better frame validation.
|
158 | - Wildcard matching on `@id` and other `requireAll` semantics.
|
159 | - Default frame for lists.
|
160 | - Check unused scoped contexts for validity.
|
161 |
|
162 | ### Changed
|
163 | - Keep term definitions mapping to null so they may be protected.
|
164 | - **NOTE**: `LINK_HEADER_REL` in `lib/constants.js` has been deprecated and
|
165 | renamed to `LINK_HEADER_CONTEXT`. It remains for now but will be removed in a
|
166 | future release.
|
167 | - Changed framing defaults
|
168 | - `embed` to "@once" and warn on "@first" or "@last".
|
169 | - `pruneBlankNodeIdentifiers` based on processingMode.
|
170 | - `omitGraph` based on processingMode.
|
171 | - Replaced `removePreserve` with `cleanupPreserve` and `cleanupNulls`.
|
172 | - Remove unused framing `graphStack` code that was removed from the spec.
|
173 |
|
174 | ### Added
|
175 | - Support for `"@import"`.
|
176 | - Added support for `@included` blocks
|
177 | - Skip things that have the form of a keyword, with warning.
|
178 | - Support for expansion and compaction of values container `"@direction"`.
|
179 | - Support for RDF transformation of `@direction` when `rdfDirection` is
|
180 | 'i18n-datatype'.
|
181 | - Top level `@graph` omitted if `omitGraph` is `true`.
|
182 | - Check for invalid values of `@embed`.
|
183 | - Support default values for `@type` when framing.
|
184 |
|
185 | ## 2.0.2 - 2020-01-17
|
186 |
|
187 | ### Fixed
|
188 | - More support for `"@type": "@none"`.
|
189 | - JSON literal value handling issues (`null` and `[]`).
|
190 | - Fix resolving context `null` values.
|
191 |
|
192 | ### Changed
|
193 | - `isKeyword()` optimization for non-keyword fast path.
|
194 |
|
195 | ## 2.0.1 - 2019-12-10
|
196 |
|
197 | ### Fixed
|
198 | - JSON literal value handling issues.
|
199 |
|
200 | ## 2.0.0 - 2019-12-09
|
201 |
|
202 | ### Notes
|
203 | - An important **BREAKING** change in this release is the removal of callback
|
204 | support in favor of Promises and async/await. This release does **not**
|
205 | include a backwards compatible layer. If you need callback support, please
|
206 | use the 1.x releases, the Node.js `callbackify` feature, or another similar
|
207 | utility library. Suggestions on how best to provide a backwards compatibility
|
208 | layer are welcome.
|
209 |
|
210 | ### Fixed
|
211 | - Expanding the value of a graph container which is already a graph object
|
212 | generates a recursive graph object.
|
213 | - Compacting multiple nodes in a graph container places them in `@included`.
|
214 | - Indexing on `@type` requires `@type` to be either `@id` or `@vocab`, and
|
215 | defaults to `@id`.
|
216 | - Expanding/compacting type scoped contexts uses context before applying
|
217 | new versions to look for type scopes.
|
218 |
|
219 | ### Changed
|
220 | - Default processing mode changed to json-ld-1.1. Allows a 1.1 context to be
|
221 | used after non-1.1 contexts.
|
222 | - Indexing on an arbitrary property, not just `@index`.
|
223 | - `@vocab` can be relative or a Compact IRI in 1.1, resolved against either a
|
224 | previous `@vocab`, `@base` or document base.
|
225 | - Better checking of absolute IRIs.
|
226 | - Terms that begin with a ':' are not considered absolute or compact IRIs.
|
227 | - Don't use terms with `"@prefix": false` or expanded term definitions to
|
228 | construct compact IRIs.
|
229 | - `@type` may be used as a term definition only if `"@container": "@set"`.
|
230 | - Improve support for term propagation.
|
231 | - Context propagation no longer strictly related to use for property-scoped
|
232 | or term-scoped contexts and can be overridden.
|
233 | - Refactored internal context resolution. Processed context cache feature
|
234 | added. To be documented later.
|
235 |
|
236 | ### Removed
|
237 | - **BREAKING**: Remove callback API support. This includes removing support
|
238 | for callback-based document loaders and RDF parsers. This is done to
|
239 | facilitate JSON-LD 1.1 document loader features and to remove deprecated
|
240 | code.
|
241 | - **BREAKING**: Remove deprecated `loadDocument` API and obsolete
|
242 | `DocumentCache`.
|
243 | - **BREAKING**: Remove deprecated support for parsing legacy dataset format.
|
244 |
|
245 | ## 1.8.1 - 2019-10-24
|
246 |
|
247 | ### Fixed
|
248 | - Run babel on canonicalize. Fixes arrow function compatibility issue.
|
249 |
|
250 | ## 1.8.0 - 2019-09-10
|
251 |
|
252 | ### Added
|
253 | - Support literal JSON.
|
254 | - **NOTE**: The JSON serialization is based on the JSON Canonicalization
|
255 | Scheme (JCS) drafts. Changes in the JCS algorithm could cause changes in
|
256 | the `toRdf` output.
|
257 |
|
258 | ## 1.7.0 - 2019-08-30
|
259 |
|
260 | ### Added
|
261 | - Support list of lists.
|
262 |
|
263 | ## 1.6.2 - 2019-05-21
|
264 |
|
265 | ### Fixed
|
266 | - Allow overriding of protected terms when redefining to the same
|
267 | definition, modulo the `protected` flag itself.
|
268 | - Fix type-scoped context application:
|
269 | - Ensure values and subject references are expanded and compacted
|
270 | using type-scoped contexts, if available.
|
271 | - Ensure `@type` values are evaluated against the previous context,
|
272 | not the type-scoped context.
|
273 |
|
274 | ## 1.6.1 - 2019-05-13
|
275 |
|
276 | ### Fixed
|
277 | - Ensure `@type`-scoped terms are limited to their `@type`-scoped object.
|
278 |
|
279 | ## 1.6.0 - 2019-04-17
|
280 |
|
281 | ### Fixed
|
282 | - Testing: Use explicit id and description skipping regexes.
|
283 | - Usage of JavaScript Object property names in data.
|
284 | - **NOTE**: A class of bugs was causing term names such as `toString`,
|
285 | `valueOf`, and others to be dropped or produce bogus output. The fix could
|
286 | cause output triples to differ from previous versions if those special
|
287 | names were used.
|
288 | - Specifically, the problem was using `x in obj` instead of
|
289 | `obj.hasOwnProperty(x)` or a `Map`.
|
290 | - Fixed usage in contexts for expand and compact.
|
291 | - Attempted fixes in other parts of the code with similar `x in obj` usage.
|
292 | Finding actual realistic failing test cases proved difficult.
|
293 |
|
294 | ### Changed
|
295 | - Testing: Improve skip logging.
|
296 |
|
297 | ### Added
|
298 | - Testing: `skip` and `only` flags in manifests.
|
299 | - Testing: `VERBOSE_SKIP=true` env var to debug skipping.
|
300 | - Support `@protected`.
|
301 | - Support experimental non-standard `protectedMode` option.
|
302 |
|
303 | ## 1.5.4 - 2019-02-28
|
304 |
|
305 | ### Fixed
|
306 | - Handle `<subject> <rdf:first> <rdf:nil>` triple.
|
307 |
|
308 | ## 1.5.3 - 2019-02-21
|
309 |
|
310 | ### Fixed
|
311 | - Improve handling of canonize test cases.
|
312 | - Update rdf-canonize dependency to address N-Quads parsing bug.
|
313 |
|
314 | ## 1.5.2 - 2019-02-20
|
315 |
|
316 | ### Changed
|
317 | - Switch to eslint.
|
318 | - Optimize ensuring value is an array.
|
319 |
|
320 | ## 1.5.1 - 2019-02-01
|
321 |
|
322 | ### Fixed
|
323 | - Update canonize docs.
|
324 |
|
325 | ## 1.5.0 - 2019-01-24
|
326 |
|
327 | ### Changed
|
328 | - [rdf-canonize][] updated:
|
329 | - **BREAKING**: A fix was applied that makes the canonical output format
|
330 | properly match the N-Triples canoncial format. This fixes the format to no
|
331 | longer escape tabs in literals. This may cause canonical output from
|
332 | `jsonld.normalize()`/`jsonld.canonize()` to differ from previous versions
|
333 | depending on your literal data. If a backwards compatibility mode is
|
334 | needed please use 1.4.x and file an issue.
|
335 | - **BREAKING**: [rdf-canonize-native][] was removed as an indirect optional
|
336 | dependency and the JavaScript implemenation is now the default. The former
|
337 | `usePureJavaScript` flag was removed and a new `useNative` flag was added
|
338 | to force use of the native bindings. Higher level applications must
|
339 | explicitly install `rdf-canonize-native` to use this mode. Note that in
|
340 | many cases the JavaScript implemenation will be *faster*. Apps should be
|
341 | benchmarked before using the specialized native mode.
|
342 | - **NOTE**: The Travis-CI C++11 compiler update fixes are no longer needed
|
343 | when using jsonld.js! [rdf-canonize-native][] was updated to not use C++11
|
344 | features and is also no longer a direct or indirect dependency of
|
345 | jsonld.js.
|
346 |
|
347 | ### Fixed
|
348 | - `rdfn:Urgna2012EvalTest` and `rdfn:Urdna2015EvalTest` tests should compare
|
349 | with expected output.
|
350 |
|
351 | ## 1.4.0 - 2019-01-05
|
352 |
|
353 | ### Changed
|
354 | - PhantomJS is deprecated, now using headless Chrome with Karma.
|
355 | - **NOTE**: Using headless Chrome vs PhantomJS may cause newer JS features to
|
356 | slip into releases without proper support for older runtimes and browsers.
|
357 | Please report such issues and they will be addressed.
|
358 | - Update webpack and babel.
|
359 | - Use CommonJS style in main file.
|
360 | - **NOTE**: This change *might* cause problems if code somehow was still
|
361 | using the long deprecated `jsonldjs` global. Any dependants on this feature
|
362 | should update to use bundler tools such as webpack or use `jsonld` in the
|
363 | distributed bundle.
|
364 |
|
365 | ## 1.3.0 - 2019-01-04
|
366 |
|
367 | ### Fixed
|
368 | - Use rdf-canonize to compare n-quads test results.
|
369 | - Maintain multiple graphs.
|
370 | - Sort `@type` when looking for scoped contexts.
|
371 |
|
372 | ### Changed
|
373 | - Use JSON-LD WG tests.
|
374 | - Categorize and skip failing tests.
|
375 |
|
376 | ## 1.2.1 - 2018-12-11
|
377 |
|
378 | ### Fixed
|
379 | - Fix source map generation.
|
380 |
|
381 | ## 1.2.0 - 2018-12-11
|
382 |
|
383 | ### Notes
|
384 | - The updated [rdf-canonize][] extracted out native support into
|
385 | [rdf-canonize-native][] and now has an *optional* dependency on this new
|
386 | module. If you have build tools available it will still build and use native
|
387 | support otherwise it will fallback to less performant JS code.
|
388 | - If you wish to *require* the native `rdf-canonize` bindings, add a dependency
|
389 | in your code to `rdf-canonize-native` to insure it is installed.
|
390 | - Some systems such as [Travis CI](https://travis-ci.org) currently only have
|
391 | ancient compilers installed by default. Users of `rdf-canonize`, and hence
|
392 | `jsonld.js`, previously required special setup so the `rdf-canonize` native
|
393 | bindings would be installable. If CI testing is not performance critical you
|
394 | can now simplify your CI config, let those bindings fail to install, and use
|
395 | the JS fallback code.
|
396 |
|
397 | ### Changed
|
398 | - Update `rdf-canonize` dependency to 0.3.
|
399 |
|
400 | ### Added
|
401 | - Initial support for benchmarking.
|
402 | - Basic callback interface tests.
|
403 | - Add README note about running json-ld.org test suite.
|
404 |
|
405 | ### Removed
|
406 | - Callback version of every test.
|
407 | - Callback interface tests added to catch callback API errors.
|
408 | - Avoids duplication of running every test for promises and callbacks.
|
409 | - Simplifies testing code and makes async/await conversion easier.
|
410 |
|
411 | ## 1.1.0 - 2018-09-05
|
412 |
|
413 | ### Added
|
414 | - Add `skipExpansion` flag to `toRdf` and `canonize`.
|
415 |
|
416 | ## 1.0.4 - 2018-08-17
|
417 |
|
418 | ### Fixed
|
419 | - Fix `_findContextUrls` refactoring bug from 1.0.3.
|
420 |
|
421 | ## 1.0.3 - 2018-08-16
|
422 |
|
423 | ### Changed
|
424 | - Improve performance of active context cache and find context urls:
|
425 | - Use Map/Set.
|
426 | - Cache initial contexts based on options.
|
427 | - Reduce lookups.
|
428 | - Update webpack/karma core-js usage:
|
429 | - Add Map, Set, and Array.from support.
|
430 |
|
431 | ## 1.0.2 - 2018-05-22
|
432 |
|
433 | ### Fixed
|
434 | - Handle compactArrays option in `@graph` compaction.
|
435 | - Many eslint fixes.
|
436 | - Add missing await to createNodeMap() and merge().
|
437 |
|
438 | ## 1.0.1 - 2018-03-01
|
439 |
|
440 | ### Fixed
|
441 | - Don't always use arrays for `@graph`. Fixes 1.0 compatibility issue.
|
442 |
|
443 | ## 1.0.0 - 2018-02-28
|
444 |
|
445 | ### Notes
|
446 | - **1.0.0**!
|
447 | - [Semantic Versioning](https://semver.org/) is now past the "initial
|
448 | development" 0.x.y stage (after 7+ years!).
|
449 | - [Conformance](README.md#conformance):
|
450 | - JSON-LD 1.0 + JSON-LD 1.0 errata
|
451 | - JSON-LD 1.1 drafts
|
452 | - Thanks to the JSON-LD and related communities and the many many people over
|
453 | the years who contributed ideas, code, bug reports, and support!
|
454 |
|
455 | ### Added
|
456 | - Expansion and Compaction using scoped contexts on property and `@type` terms.
|
457 | - Expansion and Compaction of nested properties.
|
458 | - Index graph containers using `@id` and `@index`, with `@set` variations.
|
459 | - Index node objects using `@id` and `@type`, with `@set` variations.
|
460 | - Framing default and named graphs in addition to merged graph.
|
461 | - Value patterns when framing, allowing a subset of values to appear in the
|
462 | output.
|
463 |
|
464 | ## 0.5.21 - 2018-02-22
|
465 |
|
466 | ### Fixed
|
467 | - ES2018 features are being used. Update version check to use generated Node.js
|
468 | 6 code when using Node.js earlier than 8.6.0.
|
469 |
|
470 | ## 0.5.20 - 2018-02-10
|
471 |
|
472 | ### Fixed
|
473 | - Typo handling legacy N-Quads dataset format.
|
474 |
|
475 | ## 0.5.19 - 2018-02-09
|
476 |
|
477 | ### Fixed
|
478 | - Include String startsWith() compatibility code.
|
479 |
|
480 | ## 0.5.18 - 2018-01-26
|
481 |
|
482 | ### Changed
|
483 | - Use the W3C standard MIME type for N-Quads of "application/n-quads". Accept
|
484 | "application/nquads" for compatibility.
|
485 |
|
486 | ### Fixed
|
487 | - Fix fromRdf with input triple having a nil subject.
|
488 |
|
489 | ## 0.5.17 - 2018-01-25
|
490 |
|
491 | ### Changed
|
492 | - **BREAKING**: Release 0.5.x as latest branch. See the many many changes below
|
493 | since 0.4.x including many potential breaking changes.
|
494 |
|
495 | ## 0.5.16 - 2018-01-25
|
496 |
|
497 | ### Removed
|
498 | - **BREAKING**: Remove `jsonld.version` API and `pkginfo` dependency. This
|
499 | feature added complexity and browser issues and the use case is likely
|
500 | handled by semantic versioning and using a proper dependency.
|
501 |
|
502 | ### Fixed
|
503 | - Do not use native types to create IRIs in value expansion.
|
504 | - Improved error detection for `@container` variations.
|
505 | - Handle empty and relative `@base`.
|
506 | - Remove shortcut from compactIri when IRI is a keyword (fixes compact-0073).
|
507 |
|
508 | ### Changed
|
509 | - Set processingMode from options or first encountered context.
|
510 | - Use array representation of `@container` in processing.
|
511 | - **BREAKING**: Check for keys in term definition outside that expected:
|
512 | `@container`, `@id`, `@language`, `@reverse`, and `@type`. This also sets up
|
513 | for additional keywords in 1.1.
|
514 |
|
515 | ## 0.5.15 - 2017-10-16
|
516 |
|
517 | ### Changed
|
518 | - **BREAKING**: Use RDF JS (rdf.js.org) interfaces for internal
|
519 | representation of dataset and quads. This should only break
|
520 | code that was using undocumented internal data structures,
|
521 | backwards-compat code exists to handle external RDF parsers.
|
522 | - Update `rdf-canonize` to dependency with native support.
|
523 |
|
524 | ## 0.5.14 - 2017-10-11
|
525 |
|
526 | ### Fixed
|
527 | - Allow empty lists to be compacted to any `@list` container term. Fixes
|
528 | compact-0074 test.
|
529 |
|
530 | ## 0.5.13 - 2017-10-05
|
531 |
|
532 | ### Fixed
|
533 | - Remote context retrieval bug.
|
534 |
|
535 | ### Removed
|
536 | - **BREAKING**: Remove `promisify` API.
|
537 |
|
538 | ## 0.5.12 - 2017-10-05
|
539 |
|
540 | ### Changed
|
541 | - **BREAKING**: Remove top-layer errors.
|
542 |
|
543 | ## 0.5.11 - 2017-09-28
|
544 |
|
545 | ### Removed
|
546 | - **BREAKING**: Remove deprecated extensions API, including `jsonld.request`.
|
547 |
|
548 | ## 0.5.10 - 2017-09-21
|
549 |
|
550 | ### Added
|
551 | - Add `expansionMap` and `compactionMap` options. These
|
552 | functions may be provided that will be called when an
|
553 | unmapped value or property will be dropped during expansion
|
554 | or compaction, respectively. The function map return either
|
555 | `undefined` to cause the default behavior, some other
|
556 | value to use instead of the default expanded/compacted value,
|
557 | or it may throw an error to stop expansion/compaction.
|
558 |
|
559 | ### Removed
|
560 | - **BREAKING**: Remove deprecated `objectify` and `prependBase` APIs. Now
|
561 | `objectify` can be achieved via the `@link` option in framing and
|
562 | `prependBase` can be found via `url.prependBase`.
|
563 | - **BREAKING**: Remove deprecated `namer` option from all public APIs, use
|
564 | `issuer` instead.
|
565 | - **BREAKING**: Last active context used is no longer returned as an optional
|
566 | parameter to the `compact` callback.
|
567 | - **BREAKING**: Do not expose deprecated `DocumentCache`.
|
568 |
|
569 | ### Changed
|
570 | - **BREAKING**: Change default canonicalization algorithm to `URDNA2015`.
|
571 |
|
572 | ## 0.5.9 - 2017-09-21
|
573 |
|
574 | ### Fixed
|
575 | - Callbackify bugs.
|
576 | - Document loaders.
|
577 | - Request queue.
|
578 | - Handling of exceptions in callbacks.
|
579 |
|
580 | ### Added
|
581 | - Various toRDF tests.
|
582 |
|
583 | ### Changed
|
584 | - Move tests from test/ to tests/.
|
585 |
|
586 | ## 0.5.8 - 2017-09-20
|
587 |
|
588 | ### Changed
|
589 | - Run all test-suite tests with promises and callbacks.
|
590 |
|
591 | ### Fixed
|
592 | - Use Node.js "global" or webpack polyfill.
|
593 |
|
594 | ## 0.5.7 - 2017-09-20
|
595 |
|
596 | ### Fixed
|
597 | - Distribute all js files, for real this time.
|
598 |
|
599 | ## 0.5.6 - 2017-09-20
|
600 |
|
601 | ### Fixed
|
602 | - Fix `toRDF()`.
|
603 |
|
604 | ## 0.5.5 - 2017-09-20
|
605 |
|
606 | ### Fixed
|
607 | - Distribute all js files.
|
608 |
|
609 | ## 0.5.4 - 2017-09-20
|
610 |
|
611 | ### Fixed
|
612 | - Generate all js files for Node.js 6.
|
613 |
|
614 | ## 0.5.3 - 2017-09-20
|
615 |
|
616 | ### Changed
|
617 | - Significant code reorganization and splitting into multiple files.
|
618 |
|
619 | ### Removed
|
620 | - **BREAKING**: Explicit IE8 support. Webpack, babel, and/or polyfills may be
|
621 | of help if support is still needed.
|
622 | - **BREAKING**: jQuery document loader. Use the XHR loader.
|
623 | - `Object.keys` polyfill. Other tools can provide this.
|
624 |
|
625 | ### Fixed
|
626 | - Handling of "global".
|
627 |
|
628 | ## 0.5.2 - 2017-09-19
|
629 |
|
630 | ### Fixed
|
631 | - Distribute browser files.
|
632 |
|
633 | ## 0.5.1 - 2017-09-19
|
634 |
|
635 | ### Fixed
|
636 | - Distribute unminified bundle.
|
637 |
|
638 | ## 0.5.0 - 2017-09-18
|
639 |
|
640 | ### Added
|
641 | - Add .editorconfig support.
|
642 | - `fetch-test-suites` and related `fetch-*-test-suite` NPM scripts.
|
643 | - Support for `@graph` `@container`.
|
644 |
|
645 | ### Removed
|
646 | - Bower support. Use NPM, a NPM proxy site, or build your own bundle.
|
647 | - Makefile. Use NPM script targets.
|
648 |
|
649 | ### Changed
|
650 | - Update url parser to remove default ports from URLs.
|
651 | - Skip spec version 1.1 tests.
|
652 | - **BREAKING**: Only support Node.js 6.x and later with ES2015 features.
|
653 | - Build and use custom Node.js 6.x output so async/await/etc can be used.
|
654 | - **BREAKING**: Move `js/jsonld.js` to `lib/jsonld.js`.
|
655 | - **BREAKING**: Switch to CommonJS.
|
656 | - **BREAKING**: Fixes to allow RFC3986 tests to pass. Some URI edge cases and
|
657 | certain base URIs with dot segments may cause different URI outputs.
|
658 | - Switch to Karma for browser testing.
|
659 | - Switch to webpack to build browser bundles.
|
660 | - Add explicit feature compatibility libs to browser bundles.
|
661 | - Use async APIs for test generation.
|
662 | - Done to allow testing in Node.js and browsers.
|
663 | - Required major testing changes to make everything async.
|
664 | - Workarounds added to get async generated mocha tests working.
|
665 | - Improved support for loading various types of tests.
|
666 | - Can load local files, test manifests, or plain js files (in Node.js).
|
667 | - Use ES2015 in tests and babel/webpack to support older platforms.
|
668 | - Use rdf-canonize library, remove local implementation.
|
669 |
|
670 | ## 0.4.12 - 2017-04-24
|
671 |
|
672 | ### Fixed
|
673 | - Fix `promises.compact` API when called with only 2 parameters.
|
674 |
|
675 | ## 0.4.11 - 2016-04-24
|
676 |
|
677 | ### Changed
|
678 | - Add optimization for finding best CURIE matches.
|
679 |
|
680 | ## 0.4.10 - 2016-04-24
|
681 |
|
682 | ### Changed
|
683 | - Add optimization for compacting keywords.
|
684 |
|
685 | ## 0.4.9 - 2016-04-23
|
686 |
|
687 | ### Changed
|
688 | - Add optimizations for \_compactIri.
|
689 |
|
690 | ## 0.4.8 - 2016-04-14
|
691 |
|
692 | ### Fixed
|
693 | - Revert es6-promise dependency to 2.x to avoid auto-polyfill behavior.
|
694 |
|
695 | ## 0.4.7 - 2016-04-14
|
696 |
|
697 | ### Fixed
|
698 | - Testing document loader.
|
699 |
|
700 | ## 0.4.6 - 2016-03-02
|
701 |
|
702 | ### Added
|
703 | - Add `headers` and `request` option for node doc loader.
|
704 |
|
705 | ### Changed
|
706 | - Include local tests.
|
707 |
|
708 | ## 0.4.5 - 2016-01-19
|
709 |
|
710 | ### Fixed
|
711 | - N-Quads comments pattern.
|
712 | - Local tests.
|
713 |
|
714 | ## 0.4.4 - 2016-01-08
|
715 |
|
716 | ### Fixed
|
717 | - Document cache in default node document loader is broken; disable
|
718 | until HTTP caching is implemented.
|
719 |
|
720 | ## 0.4.3 - 2016-01-05
|
721 |
|
722 | ### Fixed
|
723 | - N-Quads may contain comments.
|
724 |
|
725 | ## 0.4.2 - 2015-10-12
|
726 |
|
727 | ### Added
|
728 | - Add inputFormat and algorithm options to normalize.
|
729 |
|
730 | ### Changed
|
731 | - Add support for normalization test suite.
|
732 | - Support URDNA2015 normalization algorithm.
|
733 | - Add async scheduling of normalization algorithms.
|
734 |
|
735 | ### Fixed
|
736 | - Ignore null values in language maps.
|
737 |
|
738 | ## 0.4.1 - 2015-09-12
|
739 |
|
740 | ### Changed
|
741 | - Ignore jsonld-request and pkginfo for browserify.
|
742 |
|
743 | ## 0.4.0 - 2015-09-12
|
744 |
|
745 | ### Breaking Changes
|
746 | - "request" extension moved to [jsonld-request][]. This was done to simplify
|
747 | the core JSON-LD processing library. In particular, the extension pulled in
|
748 | RDFa processing code and related dependencies. The old method of using this
|
749 | extension of `jsonld.use('request')` is deprecated in favor of using the new
|
750 | module directly.
|
751 | - The `jsonld` tool moved to [jsonld-cli][]. This was also done to simplify the
|
752 | core JSON-LD processing library and because it uses the [jsonld-request][]
|
753 | module.
|
754 |
|
755 | ## 0.3.26 - 2015-09-01
|
756 |
|
757 | ## Before 0.3.26
|
758 |
|
759 | - See git history for changes.
|
760 |
|
761 | [jsonld-cli]: https://github.com/digitalbazaar/jsonld-cli
|
762 | [jsonld-request]: https://github.com/digitalbazaar/jsonld-request
|
763 | [rdf-canonize]: https://github.com/digitalbazaar/rdf-canonize
|
764 | [rdf-canonize-native]: https://github.com/digitalbazaar/rdf-canonize-native
|