@verdaccio/loaders 6.0.0-6-next.9 → 6.0.0-6-next.12

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @verdaccio/loaders
2
2
 
3
+ ## 6.0.0-6-next.12
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [82cb0f2b]
8
+ - @verdaccio/logger@6.0.0-6-next.11
9
+
10
+ ## 6.0.0-6-next.11
11
+
12
+ ### Patch Changes
13
+
14
+ - 31d661c7: always create plugin instance with new
15
+
16
+ ## 6.0.0-6-next.10
17
+
18
+ ### Patch Changes
19
+
20
+ - Updated dependencies [b78f3525]
21
+ - @verdaccio/logger@6.0.0-6-next.10
22
+
3
23
  ## 6.0.0-6-next.9
4
24
 
5
25
  ### Patch Changes
@@ -129,7 +129,7 @@ function loadPlugin(config, pluginConfigs = {}, params, sanityCheck, prefix = 'v
129
129
 
130
130
 
131
131
  try {
132
- plugin = isES6(plugin) ? new plugin.default(mergeConfig(config, pluginConfigs[pluginId]), params) : plugin(pluginConfigs[pluginId], params);
132
+ plugin = isES6(plugin) ? new plugin.default(mergeConfig(config, pluginConfigs[pluginId]), params) : new plugin(pluginConfigs[pluginId], params);
133
133
  } catch (error) {
134
134
  plugin = null;
135
135
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/plugin-loader.ts"],"names":["debug","MODULE_NOT_FOUND","tryLoad","path","require","err","code","mergeConfig","appConfig","pluginConfig","_","merge","isValid","plugin","isFunction","default","isES6","Object","keys","includes","loadPlugin","config","pluginConfigs","params","sanityCheck","prefix","map","pluginId","localPlugin","Path","resolve","__dirname","plugins","pluginDir","externalFilePlugin","match","dirname","config_path","logger","error","content","Error"],"mappings":"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","sourcesContent":["import buildDebug from 'debug';\nimport _ from 'lodash';\nimport Path from 'path';\n\nimport { logger } from '@verdaccio/logger';\nimport { Config, IPlugin } from '@verdaccio/types';\n\nconst debug = buildDebug('verdaccio:plugin:loader');\n\nexport const MODULE_NOT_FOUND = 'MODULE_NOT_FOUND';\n\n/**\n * Requires a module.\n * @param {*} path the module's path\n * @return {Object}\n */\nfunction tryLoad(path: string): any {\n try {\n return require(path);\n } catch (err: any) {\n if (err.code === MODULE_NOT_FOUND) {\n return null;\n }\n throw err;\n }\n}\n\nfunction mergeConfig(appConfig, pluginConfig): Config {\n return _.merge(appConfig, pluginConfig);\n}\n\nfunction isValid(plugin): boolean {\n return _.isFunction(plugin) || _.isFunction(plugin.default);\n}\n\nfunction isES6(plugin): boolean {\n return Object.keys(plugin).includes('default');\n}\n\n// export type PluginGeneric<R, T extends IPlugin<R> = ;\n\n/**\n * Load a plugin following the rules\n * - First try to load from the internal directory plugins (which will disappear soon or later).\n * - A second attempt from the external plugin directory\n * - A third attempt from node_modules, in case to have multiple match as for instance\n * verdaccio-ldap\n * and sinopia-ldap. All verdaccio prefix will have preferences.\n * @param {*} config a reference of the configuration settings\n * @param {*} pluginConfigs\n * @param {*} params a set of params to initialize the plugin\n * @param {*} sanityCheck callback that check the shape that should fulfill the plugin\n * @return {Array} list of plugins\n */\nexport function loadPlugin<T extends IPlugin<T>>(\n config: Config,\n pluginConfigs: any = {},\n params: any,\n sanityCheck: any,\n prefix: string = 'verdaccio'\n): any[] {\n return Object.keys(pluginConfigs).map((pluginId: string): IPlugin<T> => {\n let plugin;\n\n const localPlugin = Path.resolve(__dirname + '/../plugins', pluginId);\n // try local plugins first\n plugin = tryLoad(localPlugin);\n\n // try the external plugin directory\n if (plugin === null && config.plugins) {\n const pluginDir = config.plugins;\n const externalFilePlugin = Path.resolve(pluginDir, pluginId);\n plugin = tryLoad(externalFilePlugin);\n\n // npm package\n if (plugin === null && pluginId.match(/^[^\\.\\/]/)) {\n plugin = tryLoad(Path.resolve(pluginDir, `${prefix}-${pluginId}`));\n // compatibility for old sinopia plugins\n if (!plugin) {\n plugin = tryLoad(Path.resolve(pluginDir, `sinopia-${pluginId}`));\n }\n }\n }\n\n // npm package\n if (plugin === null && pluginId.match(/^[^\\.\\/]/)) {\n plugin = tryLoad(`${prefix}-${pluginId}`);\n // compatibility for old sinopia plugins\n if (!plugin) {\n plugin = tryLoad(`sinopia-${pluginId}`);\n }\n }\n\n if (plugin === null) {\n plugin = tryLoad(pluginId);\n }\n\n // relative to config path\n if (plugin === null && pluginId.match(/^\\.\\.?($|\\/)/)) {\n plugin = tryLoad(Path.resolve(Path.dirname(config.config_path), pluginId));\n }\n\n if (plugin === null) {\n logger.error(\n { content: pluginId, prefix },\n 'plugin not found. try npm install @{prefix}-@{content}'\n );\n throw Error(`\n ${prefix}-${pluginId} plugin not found. try \"npm install ${prefix}-${pluginId}\"`);\n }\n\n if (!isValid(plugin)) {\n logger.error(\n { content: pluginId },\n '@{prefix}-@{content} plugin does not have the right code structure'\n );\n throw Error(`\"${pluginId}\" plugin does not have the right code structure`);\n }\n\n /* eslint new-cap:off */\n try {\n plugin = isES6(plugin)\n ? new plugin.default(mergeConfig(config, pluginConfigs[pluginId]), params)\n : plugin(pluginConfigs[pluginId], params);\n } catch (error: any) {\n plugin = null;\n logger.error({ error, pluginId }, 'error loading a plugin @{pluginId}: @{error}');\n }\n /* eslint new-cap:off */\n\n if (plugin === null || !sanityCheck(plugin)) {\n logger.error(\n { content: pluginId, prefix },\n \"@{prefix}-@{content} doesn't look like a valid plugin\"\n );\n throw Error(`sanity check has failed, \"${pluginId}\" is not a valid plugin`);\n }\n\n debug('Plugin successfully loaded: %o-%o', pluginId, prefix);\n return plugin;\n });\n}\n"],"file":"plugin-loader.js"}
1
+ {"version":3,"sources":["../src/plugin-loader.ts"],"names":["debug","MODULE_NOT_FOUND","tryLoad","path","require","err","code","mergeConfig","appConfig","pluginConfig","_","merge","isValid","plugin","isFunction","default","isES6","Object","keys","includes","loadPlugin","config","pluginConfigs","params","sanityCheck","prefix","map","pluginId","localPlugin","Path","resolve","__dirname","plugins","pluginDir","externalFilePlugin","match","dirname","config_path","logger","error","content","Error"],"mappings":"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","sourcesContent":["import buildDebug from 'debug';\nimport _ from 'lodash';\nimport Path from 'path';\n\nimport { logger } from '@verdaccio/logger';\nimport { Config, IPlugin } from '@verdaccio/types';\n\nconst debug = buildDebug('verdaccio:plugin:loader');\n\nexport const MODULE_NOT_FOUND = 'MODULE_NOT_FOUND';\n\n/**\n * Requires a module.\n * @param {*} path the module's path\n * @return {Object}\n */\nfunction tryLoad(path: string): any {\n try {\n return require(path);\n } catch (err: any) {\n if (err.code === MODULE_NOT_FOUND) {\n return null;\n }\n throw err;\n }\n}\n\nfunction mergeConfig(appConfig, pluginConfig): Config {\n return _.merge(appConfig, pluginConfig);\n}\n\nfunction isValid(plugin): boolean {\n return _.isFunction(plugin) || _.isFunction(plugin.default);\n}\n\nfunction isES6(plugin): boolean {\n return Object.keys(plugin).includes('default');\n}\n\n// export type PluginGeneric<R, T extends IPlugin<R> = ;\n\n/**\n * Load a plugin following the rules\n * - First try to load from the internal directory plugins (which will disappear soon or later).\n * - A second attempt from the external plugin directory\n * - A third attempt from node_modules, in case to have multiple match as for instance\n * verdaccio-ldap\n * and sinopia-ldap. All verdaccio prefix will have preferences.\n * @param {*} config a reference of the configuration settings\n * @param {*} pluginConfigs\n * @param {*} params a set of params to initialize the plugin\n * @param {*} sanityCheck callback that check the shape that should fulfill the plugin\n * @return {Array} list of plugins\n */\nexport function loadPlugin<T extends IPlugin<T>>(\n config: Config,\n pluginConfigs: any = {},\n params: any,\n sanityCheck: any,\n prefix: string = 'verdaccio'\n): any[] {\n return Object.keys(pluginConfigs).map((pluginId: string): IPlugin<T> => {\n let plugin;\n\n const localPlugin = Path.resolve(__dirname + '/../plugins', pluginId);\n // try local plugins first\n plugin = tryLoad(localPlugin);\n\n // try the external plugin directory\n if (plugin === null && config.plugins) {\n const pluginDir = config.plugins;\n const externalFilePlugin = Path.resolve(pluginDir, pluginId);\n plugin = tryLoad(externalFilePlugin);\n\n // npm package\n if (plugin === null && pluginId.match(/^[^\\.\\/]/)) {\n plugin = tryLoad(Path.resolve(pluginDir, `${prefix}-${pluginId}`));\n // compatibility for old sinopia plugins\n if (!plugin) {\n plugin = tryLoad(Path.resolve(pluginDir, `sinopia-${pluginId}`));\n }\n }\n }\n\n // npm package\n if (plugin === null && pluginId.match(/^[^\\.\\/]/)) {\n plugin = tryLoad(`${prefix}-${pluginId}`);\n // compatibility for old sinopia plugins\n if (!plugin) {\n plugin = tryLoad(`sinopia-${pluginId}`);\n }\n }\n\n if (plugin === null) {\n plugin = tryLoad(pluginId);\n }\n\n // relative to config path\n if (plugin === null && pluginId.match(/^\\.\\.?($|\\/)/)) {\n plugin = tryLoad(Path.resolve(Path.dirname(config.config_path), pluginId));\n }\n\n if (plugin === null) {\n logger.error(\n { content: pluginId, prefix },\n 'plugin not found. try npm install @{prefix}-@{content}'\n );\n throw Error(`\n ${prefix}-${pluginId} plugin not found. try \"npm install ${prefix}-${pluginId}\"`);\n }\n\n if (!isValid(plugin)) {\n logger.error(\n { content: pluginId },\n '@{prefix}-@{content} plugin does not have the right code structure'\n );\n throw Error(`\"${pluginId}\" plugin does not have the right code structure`);\n }\n\n /* eslint new-cap:off */\n try {\n plugin = isES6(plugin)\n ? new plugin.default(mergeConfig(config, pluginConfigs[pluginId]), params)\n : new plugin(pluginConfigs[pluginId], params);\n } catch (error: any) {\n plugin = null;\n logger.error({ error, pluginId }, 'error loading a plugin @{pluginId}: @{error}');\n }\n /* eslint new-cap:off */\n\n if (plugin === null || !sanityCheck(plugin)) {\n logger.error(\n { content: pluginId, prefix },\n \"@{prefix}-@{content} doesn't look like a valid plugin\"\n );\n throw Error(`sanity check has failed, \"${pluginId}\" is not a valid plugin`);\n }\n\n debug('Plugin successfully loaded: %o-%o', pluginId, prefix);\n return plugin;\n });\n}\n"],"file":"plugin-loader.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@verdaccio/loaders",
3
- "version": "6.0.0-6-next.9",
3
+ "version": "6.0.0-6-next.12",
4
4
  "description": "loaders logic",
5
5
  "main": "./build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -13,15 +13,15 @@
13
13
  "url": "https://github.com/verdaccio/verdaccio"
14
14
  },
15
15
  "dependencies": {
16
- "@verdaccio/logger": "6.0.0-6-next.9",
16
+ "@verdaccio/logger": "6.0.0-6-next.11",
17
17
  "debug": "4.3.3",
18
18
  "lodash": "4.17.21"
19
19
  },
20
20
  "devDependencies": {
21
- "@verdaccio/core": "6.0.0-6-next.4",
22
- "@verdaccio/config": "6.0.0-6-next.12",
23
- "@verdaccio/mock": "6.0.0-6-next.13",
24
- "@verdaccio/types": "11.0.0-6-next.10"
21
+ "@verdaccio/core": "6.0.0-6-next.5",
22
+ "@verdaccio/config": "6.0.0-6-next.13",
23
+ "@verdaccio/mock": "6.0.0-6-next.14",
24
+ "@verdaccio/types": "11.0.0-6-next.11"
25
25
  },
26
26
  "homepage": "https://verdaccio.org",
27
27
  "keywords": [
@@ -121,7 +121,7 @@ export function loadPlugin<T extends IPlugin<T>>(
121
121
  try {
122
122
  plugin = isES6(plugin)
123
123
  ? new plugin.default(mergeConfig(config, pluginConfigs[pluginId]), params)
124
- : plugin(pluginConfigs[pluginId], params);
124
+ : new plugin(pluginConfigs[pluginId], params);
125
125
  } catch (error: any) {
126
126
  plugin = null;
127
127
  logger.error({ error, pluginId }, 'error loading a plugin @{pluginId}: @{error}');