From b018408d58d99328c1e54c8884e68f7ddf8015d4 Mon Sep 17 00:00:00 2001 From: Jeff Williams Date: Thu, 3 Nov 2022 11:44:05 -0700 Subject: [PATCH] chore!: replace taffydb package with @jsdoc/salty For context, see https://github.com/jsdoc/jsdoc/tree/main/packages/jsdoc-salty. --- .editorconfig | 8 ++--- README.md | 2 +- cli.js | 2 +- package-lock.json | 43 +++++++++++++++---------- package.json | 17 +--------- templates/default/README.md | 3 -- templates/default/publish.js | 2 +- test/specs/jsdoc/util/templateHelper.js | 5 ++- 8 files changed, 36 insertions(+), 46 deletions(-) diff --git a/.editorconfig b/.editorconfig index c035c9f2..cb8641d2 100644 --- a/.editorconfig +++ b/.editorconfig @@ -3,10 +3,10 @@ charset = utf-8 insert_final_newline = true trim_trailing_whitespace = true -[package.json] -indent_style = space -indent_size = 2 - [{**/*.js,**/*.css,**/*.json}] indent_style = space indent_size = 4 + +[package.json,**/*.md] +indent_style = space +indent_size = 2 diff --git a/README.md b/README.md index 965de371..e8bd4c12 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ Want to contribute to JSDoc? Please read `CONTRIBUTING.md`. Installation and Usage ---------------------- -JSDoc supports stable versions of Node.js 8.15.0 and later. You can install +JSDoc supports stable versions of Node.js 12.0.0 and later. You can install JSDoc globally or in your project's `node_modules` folder. To install the latest version on npm globally (might require `sudo`; diff --git a/cli.js b/cli.js index b1de34de..170637c1 100644 --- a/cli.js +++ b/cli.js @@ -413,7 +413,7 @@ module.exports = (() => { cli.generateDocs = () => { const path = require('jsdoc/path'); const resolver = require('jsdoc/tutorial/resolver'); - const taffy = require('taffydb').taffy; + const { taffy } = require('@jsdoc/salty'); let template; diff --git a/package-lock.json b/package-lock.json index bb868350..774aa359 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,6 +10,7 @@ "license": "Apache-2.0", "dependencies": { "@babel/parser": "^7.9.4", + "@jsdoc/salty": "^0.2.1", "@types/markdown-it": "^12.2.3", "bluebird": "^3.7.2", "catharsis": "^0.9.0", @@ -22,7 +23,6 @@ "mkdirp": "^1.0.4", "requizzle": "^0.2.3", "strip-json-comments": "^3.1.0", - "taffydb": "2.6.2", "underscore": "~1.13.2" }, "bin": { @@ -430,6 +430,17 @@ "node": ">=8" } }, + "node_modules/@jsdoc/salty": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.1.tgz", + "integrity": "sha512-JXwylDNSHa549N9uceDYu8D4GMXwSo3H8CCPYEQqxhhHpxD28+lRl2b3bS/caaPj5w1YD3SWtrficJNTnUjGpg==", + "dependencies": { + "lodash": "^4.17.21" + }, + "engines": { + "node": ">=v12.0.0" + } + }, "node_modules/@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", @@ -4164,9 +4175,9 @@ } }, "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { "brace-expansion": "^1.1.7" @@ -6097,11 +6108,6 @@ "node": ">=8" } }, - "node_modules/taffydb": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" - }, "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", @@ -7165,6 +7171,14 @@ "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", "dev": true }, + "@jsdoc/salty": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.1.tgz", + "integrity": "sha512-JXwylDNSHa549N9uceDYu8D4GMXwSo3H8CCPYEQqxhhHpxD28+lRl2b3bS/caaPj5w1YD3SWtrficJNTnUjGpg==", + "requires": { + "lodash": "^4.17.21" + } + }, "@types/color-name": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", @@ -10161,9 +10175,9 @@ "dev": true }, "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "requires": { "brace-expansion": "^1.1.7" @@ -11696,11 +11710,6 @@ } } }, - "taffydb": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", - "integrity": "sha1-fLy2S1oUG2ou/CxdLGe04VCyomg=" - }, "test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", diff --git a/package.json b/package.json index fcf2c671..701c59c2 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ }, "dependencies": { "@babel/parser": "^7.9.4", + "@jsdoc/salty": "^0.2.1", "@types/markdown-it": "^12.2.3", "bluebird": "^3.7.2", "catharsis": "^0.9.0", @@ -26,7 +27,6 @@ "mkdirp": "^1.0.4", "requizzle": "^0.2.3", "strip-json-comments": "^3.1.0", - "taffydb": "2.6.2", "underscore": "~1.13.2" }, "devDependencies": { @@ -36,16 +36,6 @@ "gulp-json-editor": "^2.5.6", "nyc": "^15.1.0" }, - "resolutions": { - "ansi-regex": "5.0.1", - "fsevents": "2.3.2", - "glob-parent": "6.0.2", - "ini": "1.3.6", - "set-value": "4.0.1", - "tar": "6.1.11", - "trim-newlines": "4.0.2", - "trim-off-newlines": "1.0.3" - }, "engines": { "node": ">=12.0.0" }, @@ -55,11 +45,6 @@ "bin": { "jsdoc": "./jsdoc.js" }, - "greenkeeper": { - "ignore": [ - "taffydb" - ] - }, "bugs": "https://github.com/jsdoc/jsdoc/issues", "author": { "name": "Michael Mathews", diff --git a/templates/default/README.md b/templates/default/README.md index 1946bef5..38bc3cb3 100644 --- a/templates/default/README.md +++ b/templates/default/README.md @@ -1,6 +1,3 @@ -The default template for JSDoc 3 uses: [the Taffy Database library](http://taffydb.com/) and the [Underscore Template library](http://underscorejs.org/). - - ## Generating Typeface Fonts The default template uses the [OpenSans](https://www.google.com/fonts/specimen/Open+Sans) typeface. The font files can be regenerated as follows: diff --git a/templates/default/publish.js b/templates/default/publish.js index aaa99b3f..901e96fb 100644 --- a/templates/default/publish.js +++ b/templates/default/publish.js @@ -4,7 +4,7 @@ const fs = require('jsdoc/fs'); const helper = require('jsdoc/util/templateHelper'); const logger = require('jsdoc/util/logger'); const path = require('jsdoc/path'); -const taffy = require('taffydb').taffy; +const { taffy } = require('@jsdoc/salty'); const template = require('jsdoc/template'); const util = require('util'); diff --git a/test/specs/jsdoc/util/templateHelper.js b/test/specs/jsdoc/util/templateHelper.js index 6fe2dcda..bd6d2d9b 100644 --- a/test/specs/jsdoc/util/templateHelper.js +++ b/test/specs/jsdoc/util/templateHelper.js @@ -10,7 +10,7 @@ describe("jsdoc/util/templateHelper", () => { const helper = require('jsdoc/util/templateHelper'); const logger = require('jsdoc/util/logger'); const resolver = require('jsdoc/tutorial/resolver'); - const taffy = require('taffydb').taffy; + const { taffy } = require('@jsdoc/salty'); helper.registerLink('test', 'path/to/test.html'); @@ -558,8 +558,7 @@ describe("jsdoc/util/templateHelper", () => { }); }); - // we can't use toEqual() because TaffyDB adds its own stuff to the array it returns. - // instead, we make sure arrays a and b are the same length, and that each object in + // Make sure arrays a and b are the same length, and that each object in // array b has all the properties of the corresponding object in array a // used for getMembers and prune tests. function compareObjectArrays(a, b) {