mirror of
https://github.com/verdaccio/verdaccio.git
synced 2024-12-24 21:15:51 +01:00
build: configure prettier as formatter for json, yaml and markdown (#1930)
* build: configure pretter as formatter for most files * chore: reformat code (#1931) * chore: re-format all files * chore: force run quality anaylsis test Co-authored-by: Juan Picado @jotadeveloper <juanpicado19@gmail.com> Co-authored-by: Juan Picado @jotadeveloper <juanpicado19@gmail.com>
This commit is contained in:
parent
8efc6feab2
commit
ddb42431d1
@ -1,30 +1,30 @@
|
||||
---
|
||||
"@verdaccio/api": patch
|
||||
"@verdaccio/auth": patch
|
||||
"@verdaccio/cli": patch
|
||||
"@verdaccio/dev-commons": patch
|
||||
"@verdaccio/config": patch
|
||||
"@verdaccio/commons-api": patch
|
||||
"@verdaccio/file-locking": patch
|
||||
"@verdaccio/htpasswd": patch
|
||||
"@verdaccio/local-storage": patch
|
||||
"@verdaccio/readme": patch
|
||||
"@verdaccio/streams": patch
|
||||
"@verdaccio/types": patch
|
||||
"@verdaccio/hooks": patch
|
||||
"@verdaccio/loaders": patch
|
||||
"@verdaccio/logger": patch
|
||||
"@verdaccio/logger-prettify": patch
|
||||
"@verdaccio/middleware": patch
|
||||
"@verdaccio/mock": patch
|
||||
"@verdaccio/node-api": patch
|
||||
"@verdaccio/proxy": patch
|
||||
"@verdaccio/server": patch
|
||||
"@verdaccio/store": patch
|
||||
"@verdaccio/dev-types": patch
|
||||
"@verdaccio/utils": patch
|
||||
"verdaccio": patch
|
||||
"@verdaccio/web": patch
|
||||
'@verdaccio/api': patch
|
||||
'@verdaccio/auth': patch
|
||||
'@verdaccio/cli': patch
|
||||
'@verdaccio/dev-commons': patch
|
||||
'@verdaccio/config': patch
|
||||
'@verdaccio/commons-api': patch
|
||||
'@verdaccio/file-locking': patch
|
||||
'@verdaccio/htpasswd': patch
|
||||
'@verdaccio/local-storage': patch
|
||||
'@verdaccio/readme': patch
|
||||
'@verdaccio/streams': patch
|
||||
'@verdaccio/types': patch
|
||||
'@verdaccio/hooks': patch
|
||||
'@verdaccio/loaders': patch
|
||||
'@verdaccio/logger': patch
|
||||
'@verdaccio/logger-prettify': patch
|
||||
'@verdaccio/middleware': patch
|
||||
'@verdaccio/mock': patch
|
||||
'@verdaccio/node-api': patch
|
||||
'@verdaccio/proxy': patch
|
||||
'@verdaccio/server': patch
|
||||
'@verdaccio/store': patch
|
||||
'@verdaccio/dev-types': patch
|
||||
'@verdaccio/utils': patch
|
||||
'verdaccio': patch
|
||||
'@verdaccio/web': patch
|
||||
---
|
||||
|
||||
Enable prerelease mode with **changesets**
|
||||
|
@ -1,5 +1,5 @@
|
||||
---
|
||||
"@verdaccio/api": patch
|
||||
'@verdaccio/api': patch
|
||||
---
|
||||
|
||||
testing changesets
|
||||
|
@ -1,24 +1,11 @@
|
||||
node_modules
|
||||
coverage/
|
||||
wiki/
|
||||
static/
|
||||
flow-typed/
|
||||
website/
|
||||
build/
|
||||
*.md
|
||||
*.lock
|
||||
*.yaml
|
||||
Dockerfile
|
||||
*.rpi
|
||||
*.html
|
||||
*.scss
|
||||
*.png
|
||||
*.json
|
||||
*.name
|
||||
*.tgz
|
||||
*.jpg
|
||||
*.sh
|
||||
**/partials/**
|
||||
**/fixtures/**
|
||||
types/custom.d.ts
|
||||
**/mock/store/**
|
||||
**/partials/**
|
||||
**/types/custom.d.ts
|
||||
build/
|
||||
coverage/
|
||||
flow-typed/
|
||||
node_modules/
|
||||
static/
|
||||
website/
|
||||
wiki/
|
||||
|
26
.eslintrc
26
.eslintrc
@ -2,18 +2,15 @@
|
||||
"extends": [
|
||||
"eslint:recommended",
|
||||
"google",
|
||||
"plugin:prettier/recommended",
|
||||
"plugin:react/recommended",
|
||||
"plugin:jest/recommended",
|
||||
"plugin:@typescript-eslint/eslint-recommended",
|
||||
"plugin:@typescript-eslint/recommended",
|
||||
"plugin:import/typescript",
|
||||
"plugin:jsx-a11y/recommended",
|
||||
"prettier",
|
||||
"prettier/react",
|
||||
"prettier/@typescript-eslint"
|
||||
"prettier"
|
||||
],
|
||||
"plugins": ["import", "jest", "jsx-a11y", "react-hooks", "prettier"],
|
||||
"plugins": ["import", "jest", "jsx-a11y", "react-hooks"],
|
||||
"env": {
|
||||
"es6": true,
|
||||
"node": true,
|
||||
@ -32,9 +29,6 @@
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"react": {
|
||||
"version": "detect"
|
||||
},
|
||||
"import/resolver": {
|
||||
"node": {
|
||||
"extensions": [".js", ".jsx", ".ts", ".tsx"]
|
||||
@ -44,22 +38,6 @@
|
||||
"parser": "@typescript-eslint/parser",
|
||||
"rules": {
|
||||
"curly": ["error", "all"],
|
||||
"prettier/prettier": [
|
||||
2,
|
||||
{
|
||||
"useTabs": false,
|
||||
"printWidth": 160,
|
||||
"tabWidth": 2,
|
||||
"singleQuote": true,
|
||||
"bracketSpacing": true,
|
||||
"jsxBracketSameLine": true,
|
||||
"trailingComma": "es5",
|
||||
"semi": true,
|
||||
"parser": "typescript",
|
||||
"importOrder": ["^@verdaccio/(.*)$", "^[./]"],
|
||||
"importOrderSeparation": true
|
||||
}
|
||||
],
|
||||
"react/prop-types": 0,
|
||||
"jest/no-export": 0,
|
||||
"jest/no-test-callback": 0,
|
||||
|
15
.github/ISSUE_TEMPLATE/bug_report.md
vendored
15
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@ -7,9 +7,11 @@ assignees: ''
|
||||
---
|
||||
|
||||
**Describe the bug**
|
||||
|
||||
<!-- A clear and concise description of what the bug is. -->
|
||||
|
||||
**To Reproduce**
|
||||
|
||||
<!-- IMPORTANT:
|
||||
- How to reproduce the issue
|
||||
- Steps to reproduce the issue
|
||||
@ -18,9 +20,11 @@ Be aware, the lack of reproducible steps the issue might cause your ticket to be
|
||||
-->
|
||||
|
||||
**Expected behavior**
|
||||
|
||||
<!-- A clear and concise description of what you expected to happen. -->
|
||||
|
||||
**Screenshots**
|
||||
|
||||
<!-- If applicable, add screenshots to help explain your problem. -->
|
||||
|
||||
**Configuration File (cat ~/.config/verdaccio/config.yaml)**
|
||||
@ -28,16 +32,17 @@ Be aware, the lack of reproducible steps the issue might cause your ticket to be
|
||||
<!-- Please be careful do not leak any sensitive information, remove tokens -->
|
||||
|
||||
**Environment information**
|
||||
|
||||
<!-- Please paste the results of running `verdaccio --info` -->
|
||||
|
||||
**Debugging output**
|
||||
- `$ NODE_DEBUG=request verdaccio` display request calls (verdaccio <--> uplinks)
|
||||
- `$ DEBUG=express:* verdaccio` enable extreme verdaccio debug mode (verdaccio api)
|
||||
- `$ npm -ddd` prints:
|
||||
- `$ npm config get registry` prints:
|
||||
|
||||
- `$ NODE_DEBUG=request verdaccio` display request calls (verdaccio <--> uplinks)
|
||||
- `$ DEBUG=express:* verdaccio` enable extreme verdaccio debug mode (verdaccio api)
|
||||
- `$ npm -ddd` prints:
|
||||
- `$ npm config get registry` prints:
|
||||
|
||||
<!--
|
||||
|
||||
IMPORTANT: please do not attach external files, all content should be visible from any device.
|
||||
-->
|
||||
|
||||
|
3
.github/ISSUE_TEMPLATE/feature.md
vendored
3
.github/ISSUE_TEMPLATE/feature.md
vendored
@ -1,10 +1,9 @@
|
||||
---
|
||||
name: "Feature Request \U0001F52E"
|
||||
name: 'Feature Request 🔮'
|
||||
about: You want a feature request.
|
||||
title: ''
|
||||
labels: 'topic: feature request'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
|
22
.github/dependabot.yml
vendored
22
.github/dependabot.yml
vendored
@ -5,23 +5,21 @@
|
||||
|
||||
version: 2
|
||||
updates:
|
||||
|
||||
# Maintain dependencies for GitHub Actions
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
- package-ecosystem: 'github-actions'
|
||||
directory: '/'
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
interval: 'weekly'
|
||||
|
||||
# Maintain dependencies for npm
|
||||
- package-ecosystem: "npm"
|
||||
directory: "/"
|
||||
- package-ecosystem: 'npm'
|
||||
directory: '/'
|
||||
schedule:
|
||||
interval: "daily"
|
||||
interval: 'daily'
|
||||
allow:
|
||||
- dependency-name: "@verdaccio/*"
|
||||
- dependency-name: "verdaccio-*"
|
||||
- dependency-name: '@verdaccio/*'
|
||||
- dependency-name: 'verdaccio-*'
|
||||
assignees:
|
||||
- "verdacciobot"
|
||||
- 'verdacciobot'
|
||||
labels:
|
||||
- "bot: dependencies"
|
||||
|
||||
- 'bot: dependencies'
|
||||
|
10
.github/lock.yml
vendored
10
.github/lock.yml
vendored
@ -26,10 +26,10 @@ lockComment: >
|
||||
|
||||
# Optionally, specify configuration settings just for `issues` or `pulls`
|
||||
issues:
|
||||
exemptLabels:
|
||||
- help-wanted
|
||||
lockLabel: outdated
|
||||
exemptLabels:
|
||||
- help-wanted
|
||||
lockLabel: outdated
|
||||
|
||||
pulls:
|
||||
daysUntilLock: 90
|
||||
lockLabel: outdated
|
||||
daysUntilLock: 90
|
||||
lockLabel: outdated
|
||||
|
14
.github/stale.yml
vendored
14
.github/stale.yml
vendored
@ -10,17 +10,17 @@ exemptLabels:
|
||||
- issue: bug
|
||||
- dev: discuss
|
||||
# Label to use when marking an issue as stale
|
||||
staleLabel: issue: wontfix
|
||||
staleLabel: 'issue: wontfix'
|
||||
# Comment to post when marking an issue as stale. Set to `false` to disable
|
||||
markComment: >
|
||||
Hi pal 👋🏼!
|
||||
Hi pal 👋🏼!
|
||||
|
||||
This issue has gone quiet 😶.
|
||||
This issue has gone quiet 😶.
|
||||
|
||||
We get a lot of issues, so we currently close issues after 25 days of inactivity. It’s been at least 15 days since the last update here.
|
||||
If we missed this issue or if you want to keep it open, please reply here. You can also add/suggest the label "discuss" to keep this issue open!
|
||||
As a friendly reminder: the best way to see this issue, or any other, fixed is to open a Pull Request. Check out [https://github.com/verdaccio/contributing](https://github.com/verdaccio/contributing) for more information about opening PRs, triaging issues, and contributing!
|
||||
We get a lot of issues, so we currently close issues after 25 days of inactivity. It’s been at least 15 days since the last update here.
|
||||
If we missed this issue or if you want to keep it open, please reply here. You can also add/suggest the label "discuss" to keep this issue open!
|
||||
As a friendly reminder: the best way to see this issue, or any other, fixed is to open a Pull Request. Check out [https://github.com/verdaccio/contributing](https://github.com/verdaccio/contributing) for more information about opening PRs, triaging issues, and contributing!
|
||||
|
||||
Thanks for being a part of the Verdaccio community! 💘
|
||||
Thanks for being a part of the Verdaccio community! 💘
|
||||
# Comment to post when closing a stale issue. Set to `false` to disable
|
||||
closeComment: false
|
||||
|
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
@ -34,6 +34,8 @@ jobs:
|
||||
run: npm i -g pnpm
|
||||
- name: Install
|
||||
run: pnpm recursive install
|
||||
- name: Format
|
||||
run: pnpm format:check
|
||||
- name: Lint
|
||||
run: pnpm lint
|
||||
- name: Clean
|
||||
|
@ -19,7 +19,6 @@ jobs:
|
||||
run: npm run docker
|
||||
env:
|
||||
VERDACCIO_BUILD_REGISTRY: https://registry.verdaccio.org
|
||||
|
||||
# testVerdaccio:
|
||||
# name: Test Verdaccio Publish
|
||||
# runs-on: ubuntu-latest
|
||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -2,6 +2,7 @@
|
||||
verdaccio-*.tgz
|
||||
.DS_Store
|
||||
build/
|
||||
.eslintcache
|
||||
|
||||
### Test
|
||||
|
||||
|
@ -13,20 +13,3 @@
|
||||
CHANGELOG.md
|
||||
CONTRIBUTORS.md
|
||||
node_modules/
|
||||
**/coverage/**
|
||||
**/build/*.js
|
||||
test/unit/partials/*
|
||||
build/*
|
||||
.github/
|
||||
.vscode/
|
||||
wiki/
|
||||
.yarnrc.yml
|
||||
yarn-error.log
|
||||
.yarn/
|
||||
test/functional/store/*
|
||||
storage_default_storage/*
|
||||
docker-examples/
|
||||
.prettierignore
|
||||
.npmignore
|
||||
.gitignore
|
||||
*.ico
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"endOfLine": "lf",
|
||||
"useTabs": false,
|
||||
"printWidth": 180,
|
||||
"printWidth": 160,
|
||||
"tabWidth": 2,
|
||||
"singleQuote": true,
|
||||
"bracketSpacing": true,
|
||||
|
149
.vscode/launch.json
vendored
149
.vscode/launch.json
vendored
@ -1,79 +1,74 @@
|
||||
{
|
||||
// Use IntelliSense to learn about possible Node.js debug attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
|
||||
{
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"name": "CLI Babel Registry",
|
||||
"stopOnEntry": false,
|
||||
"program": "${workspaceFolder}/debug/bootstrap.js",
|
||||
"args": ["-l", "0.0.0.0:4873"],
|
||||
"env": {
|
||||
"BABEL_ENV": "registry"
|
||||
},
|
||||
"preLaunchTask": "npm: build:webui",
|
||||
"console": "integratedTerminal"
|
||||
},
|
||||
{
|
||||
"name": "Unit Tests",
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"program": "${workspaceRoot}/node_modules/bin/jest",
|
||||
"stopOnEntry": false,
|
||||
"args": [
|
||||
"--debug=true" ],
|
||||
"cwd": "${workspaceRoot}",
|
||||
"runtimeExecutable": null,
|
||||
"runtimeArgs": [
|
||||
"--nolazy"
|
||||
],
|
||||
"env": {
|
||||
"NODE_ENV": "test",
|
||||
"TZ": "UTC"
|
||||
},
|
||||
"console": "integratedTerminal"
|
||||
},
|
||||
{
|
||||
"name": "Functional Tests",
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"program": "${workspaceRoot}/node_modules/.bin/jest",
|
||||
"stopOnEntry": false,
|
||||
"args": [
|
||||
"--config",
|
||||
"./test/jest.config.functional.js",
|
||||
"--testPathPattern",
|
||||
"./test/functional/index*",
|
||||
"--debug=false",
|
||||
"--verbose",
|
||||
"--useStderr",
|
||||
"--detectOpenHandles"],
|
||||
"cwd": "${workspaceRoot}",
|
||||
"env": {
|
||||
"BABEL_ENV": "testOldEnv",
|
||||
"VERDACCIO_DEBUG": "true",
|
||||
"VERDACCIO_DEBUG_INJECT": "true",
|
||||
"NODE_DEBUG": "TO_DEBUG_REQUEST_REMOVE_THIS_request"
|
||||
},
|
||||
"preLaunchTask": "pre-test",
|
||||
"console": "integratedTerminal",
|
||||
"runtimeExecutable": null,
|
||||
"runtimeArgs": [
|
||||
"--nolazy"
|
||||
],
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"name": "Verdaccio Compiled",
|
||||
"preLaunchTask": "npm: code:build",
|
||||
"program": "${workspaceRoot}/bin/verdaccio",
|
||||
"args": ["-l", "0.0.0.0:4873"],
|
||||
"console": "integratedTerminal"
|
||||
}
|
||||
]
|
||||
// Use IntelliSense to learn about possible Node.js debug attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"name": "CLI Babel Registry",
|
||||
"stopOnEntry": false,
|
||||
"program": "${workspaceFolder}/debug/bootstrap.js",
|
||||
"args": ["-l", "0.0.0.0:4873"],
|
||||
"env": {
|
||||
"BABEL_ENV": "registry"
|
||||
},
|
||||
"preLaunchTask": "npm: build:webui",
|
||||
"console": "integratedTerminal"
|
||||
},
|
||||
{
|
||||
"name": "Unit Tests",
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"program": "${workspaceRoot}/node_modules/bin/jest",
|
||||
"stopOnEntry": false,
|
||||
"args": ["--debug=true"],
|
||||
"cwd": "${workspaceRoot}",
|
||||
"runtimeExecutable": null,
|
||||
"runtimeArgs": ["--nolazy"],
|
||||
"env": {
|
||||
"NODE_ENV": "test",
|
||||
"TZ": "UTC"
|
||||
},
|
||||
"console": "integratedTerminal"
|
||||
},
|
||||
{
|
||||
"name": "Functional Tests",
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"program": "${workspaceRoot}/node_modules/.bin/jest",
|
||||
"stopOnEntry": false,
|
||||
"args": [
|
||||
"--config",
|
||||
"./test/jest.config.functional.js",
|
||||
"--testPathPattern",
|
||||
"./test/functional/index*",
|
||||
"--debug=false",
|
||||
"--verbose",
|
||||
"--useStderr",
|
||||
"--detectOpenHandles"
|
||||
],
|
||||
"cwd": "${workspaceRoot}",
|
||||
"env": {
|
||||
"BABEL_ENV": "testOldEnv",
|
||||
"VERDACCIO_DEBUG": "true",
|
||||
"VERDACCIO_DEBUG_INJECT": "true",
|
||||
"NODE_DEBUG": "TO_DEBUG_REQUEST_REMOVE_THIS_request"
|
||||
},
|
||||
"preLaunchTask": "pre-test",
|
||||
"console": "integratedTerminal",
|
||||
"runtimeExecutable": null,
|
||||
"runtimeArgs": ["--nolazy"]
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"name": "Verdaccio Compiled",
|
||||
"preLaunchTask": "npm: code:build",
|
||||
"program": "${workspaceRoot}/bin/verdaccio",
|
||||
"args": ["-l", "0.0.0.0:4873"],
|
||||
"console": "integratedTerminal"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
18
.vscode/settings.json
vendored
18
.vscode/settings.json
vendored
@ -1,12 +1,12 @@
|
||||
// Place your settings in this file to overwrite default and user settings.
|
||||
{
|
||||
"files.exclude": {
|
||||
"**/.nyc_output": true,
|
||||
"**/build": false,
|
||||
"**/coverage": true,
|
||||
".idea": true,
|
||||
"storage_default_storage": true,
|
||||
".yarn": true
|
||||
},
|
||||
"typescript.tsdk": "node_modules/typescript/lib"
|
||||
"files.exclude": {
|
||||
"**/.nyc_output": true,
|
||||
"**/build": false,
|
||||
"**/coverage": true,
|
||||
".idea": true,
|
||||
"storage_default_storage": true,
|
||||
".yarn": true
|
||||
},
|
||||
"typescript.tsdk": "node_modules/typescript/lib"
|
||||
}
|
||||
|
41
.vscode/tasks.json
vendored
41
.vscode/tasks.json
vendored
@ -1,24 +1,21 @@
|
||||
{
|
||||
// See https://go.microsoft.com/fwlink/?LinkId=733558
|
||||
// for the documentation about the tasks.json format
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"type": "npm",
|
||||
"script": "build:webui",
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"type": "npm",
|
||||
"script": "code:build",
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "pre-test",
|
||||
"dependsOn": [
|
||||
"npm: code:build",
|
||||
"npm: test:clean"
|
||||
]
|
||||
}
|
||||
]
|
||||
// See https://go.microsoft.com/fwlink/?LinkId=733558
|
||||
// for the documentation about the tasks.json format
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"type": "npm",
|
||||
"script": "build:webui",
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"type": "npm",
|
||||
"script": "code:build",
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "pre-test",
|
||||
"dependsOn": ["npm: code:build", "npm: test:clean"]
|
||||
}
|
||||
]
|
||||
}
|
@ -8,19 +8,19 @@ In the interest of fostering an open and welcoming environment, we as contributo
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment include:
|
||||
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
- Using welcoming and inclusive language
|
||||
- Being respectful of differing viewpoints and experiences
|
||||
- Gracefully accepting constructive criticism
|
||||
- Focusing on what is best for the community
|
||||
- Showing empathy towards other community members
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or electronic address, without explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a professional setting
|
||||
- The use of sexualized language or imagery and unwelcome sexual attention or advances
|
||||
- Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
- Public or private harassment
|
||||
- Publishing others' private information, such as a physical or electronic address, without explicit permission
|
||||
- Other conduct which could reasonably be considered inappropriate in a professional setting
|
||||
|
||||
## Our Responsibilities
|
||||
|
||||
|
@ -14,13 +14,13 @@ Additional information is available on the
|
||||
- [How Do I Contribute?](#how-do-i-contribute)
|
||||
- [Development](#development)
|
||||
- [Reporting Bugs](#reporting-bugs)
|
||||
- [Issue Search](#issue-search)
|
||||
- [Check Website For Solution](#check-website-for-solution)
|
||||
- [Chat](#chat)
|
||||
- [Check If It's Been Fixed](#check-if-its-been-fixed)
|
||||
- [Issue Search](#issue-search)
|
||||
- [Check Website For Solution](#check-website-for-solution)
|
||||
- [Chat](#chat)
|
||||
- [Check If It's Been Fixed](#check-if-its-been-fixed)
|
||||
- [Request Features](#request-features)
|
||||
- [Submitting a Pull Request](#submitting-a-pull-request)
|
||||
- [Make Changes and Commit](#make-changes-and-commit)
|
||||
- [Submitting a Pull Request](#submitting-a-pull-request)
|
||||
- [Make Changes and Commit](#make-changes-and-commit)
|
||||
- [Update Tests](#update-tests)
|
||||
- [Develop Plugins](#develop-plugins)
|
||||
|
||||
@ -29,10 +29,10 @@ Additional information is available on the
|
||||
There are different ways to contribute, each with a different level
|
||||
of involvement and technical knowledge required, such as:
|
||||
|
||||
* [Reporting Bugs](#reporting-bugs)
|
||||
* [Request Features](#request-features)
|
||||
* [Develop Plugins](#develop-plugins)
|
||||
* [Improve Documentation](http://www.verdaccio.org/docs/en/installation.html)
|
||||
- [Reporting Bugs](#reporting-bugs)
|
||||
- [Request Features](#request-features)
|
||||
- [Develop Plugins](#develop-plugins)
|
||||
- [Improve Documentation](http://www.verdaccio.org/docs/en/installation.html)
|
||||
|
||||
**Please read this document carefully. It will help maintainers and readers
|
||||
in solving your issue(s), evaluating your feature request, etc.**
|
||||
@ -41,8 +41,8 @@ in solving your issue(s), evaluating your feature request, etc.**
|
||||
|
||||
Development guides can be found on the [wiki](https://github.com/verdaccio/verdaccio/wiki):
|
||||
|
||||
* [Building the project](https://github.com/verdaccio/verdaccio/wiki/Build-Source-Code)
|
||||
* [Running, debugging, and testing](https://github.com/verdaccio/verdaccio/wiki/Running-and-Debugging-tests)
|
||||
- [Building the project](https://github.com/verdaccio/verdaccio/wiki/Build-Source-Code)
|
||||
- [Running, debugging, and testing](https://github.com/verdaccio/verdaccio/wiki/Running-and-Debugging-tests)
|
||||
|
||||
## Reporting Bugs
|
||||
|
||||
@ -89,10 +89,10 @@ the project. Then, detail your request, ensuring context and use case is provide
|
||||
|
||||
**Please provide:**
|
||||
|
||||
* A detailed description the advantages of your request
|
||||
* Whether or not it's compatible with `npm` and `yarn`
|
||||
* A potential implementation or design
|
||||
* Whatever else you have in your mind 🤓
|
||||
- A detailed description the advantages of your request
|
||||
- Whether or not it's compatible with `npm` and `yarn`
|
||||
- A potential implementation or design
|
||||
- Whatever else you have in your mind 🤓
|
||||
|
||||
### Submitting a Pull Request
|
||||
|
||||
@ -137,8 +137,8 @@ semantic versioning.
|
||||
|
||||
For example:
|
||||
|
||||
* `feat: A new feature`
|
||||
* `fix: A bug fix`
|
||||
- `feat: A new feature`
|
||||
- `fix: A bug fix`
|
||||
|
||||
A commit of the type feat introduces a new feature to the codebase
|
||||
(this correlates with MINOR in semantic versioning).
|
||||
@ -154,7 +154,7 @@ A commit of the type fix patches a bug in your codebase (this correlates with PA
|
||||
e.g.:
|
||||
|
||||
```
|
||||
fix: xxxxxxxxxx
|
||||
fix: xxxxxxxxxxx
|
||||
```
|
||||
|
||||
Commits types such as as `docs:`,`style:`,`refactor:`,`perf:`,`test:`
|
||||
@ -174,12 +174,13 @@ If you need help with how testing works, please [refer to the following guide](h
|
||||
features without tests will not be merged.**
|
||||
|
||||
Things excluded from tests:
|
||||
* Documentation
|
||||
* Website
|
||||
* Build
|
||||
* Deployment
|
||||
* Assets
|
||||
* Flow types
|
||||
|
||||
- Documentation
|
||||
- Website
|
||||
- Build
|
||||
- Deployment
|
||||
- Assets
|
||||
- Flow types
|
||||
|
||||
## Develop Plugins
|
||||
|
||||
@ -188,7 +189,7 @@ Plugins are add-ons that extend the functionality of the application.
|
||||
If you want to develop your own plugin:
|
||||
|
||||
1. Check whether there is a legacy Sinopia plugin for the feature that you need
|
||||
via [npmjs](https://www.npmjs.com/search?q=sinopia)
|
||||
via [npmjs](https://www.npmjs.com/search?q=sinopia)
|
||||
2. Keep in mind the [life-cycle to load a plugin](https://verdaccio.org/docs/en/dev-plugins)
|
||||
3. You are free to host your plugin in your repository or ours (just ask)
|
||||
4. Provide a detailed description of your plugin to help users understand it
|
||||
|
@ -1,5 +1,4 @@
|
||||
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
|
||||
<!-- prettier-ignore-start -->
|
||||
<!-- markdownlint-disable -->
|
||||
<table>
|
||||
<tr>
|
||||
@ -37,5 +36,4 @@
|
||||
</table>
|
||||
|
||||
<!-- markdownlint-enable -->
|
||||
<!-- prettier-ignore-end -->
|
||||
<!-- ALL-CONTRIBUTORS-LIST:END -->
|
||||
|
32
README.md
32
README.md
@ -10,7 +10,6 @@ For those looking to extend their storage capabilities, Verdaccio
|
||||
**supports various community-made plugins to hook into services such as Amazon's s3,
|
||||
Google Cloud Storage** or create your own plugin.
|
||||
|
||||
|
||||
[![backers](https://opencollective.com/verdaccio/tiers/backer/badge.svg?label=Backer&color=brightgreen)](https://opencollective.com/verdaccio)
|
||||
[![stackshare](https://img.shields.io/badge/Follow%20on-StackShare-blue.svg?logo=stackshare&style=flat)](https://stackshare.io/verdaccio)
|
||||
[![MIT](https://img.shields.io/github/license/mashape/apistatus.svg)](https://github.com/verdaccio/verdaccio/blob/master/LICENSE)
|
||||
@ -20,7 +19,6 @@ Google Cloud Storage** or create your own plugin.
|
||||
[![Twitter followers](https://img.shields.io/twitter/follow/verdaccio_npm.svg?style=social&label=Follow)](https://twitter.com/verdaccio_npm)
|
||||
[![Github](https://img.shields.io/github/stars/verdaccio/verdaccio.svg?style=social&label=Stars)](https://github.com/verdaccio/verdaccio/stargazers)
|
||||
|
||||
|
||||
## Install 5.x
|
||||
|
||||
> ⚠️ Not available on npmjs yet
|
||||
@ -35,8 +33,8 @@ docker pull verdaccio/verdaccio:5.x-next
|
||||
|
||||
The `5.x` still under development, key points:
|
||||
|
||||
* We use **pnpm** as monorepo management. `npm i -g pnpm@latest`.
|
||||
* Please check [the roadmap](https://github.com/verdaccio/verdaccio/issues/1690) if you want to contribute
|
||||
- We use **pnpm** as monorepo management. `npm i -g pnpm@latest`.
|
||||
- Please check [the roadmap](https://github.com/verdaccio/verdaccio/issues/1690) if you want to contribute
|
||||
|
||||
```
|
||||
pnpm install
|
||||
@ -51,19 +49,16 @@ pnpm test
|
||||
|
||||
We are still experimenting with few things, be patience, Verdaccio v4 will run for still long period until this is getting done.
|
||||
|
||||
|
||||
## Donations
|
||||
|
||||
Verdaccio is run by **volunteers**; nobody is working full-time on it. If you find this project to be useful and would like to support its development, consider making a donation - **your logo might end up in this readme.** 😉
|
||||
|
||||
**[Donate](https://opencollective.com/verdaccio)** 💵👍🏻 starting from *$1/month* or just one single contribution.
|
||||
**[Donate](https://opencollective.com/verdaccio)** 💵👍🏻 starting from _\$1/month_ or just one single contribution.
|
||||
|
||||
## Report a vulnerability
|
||||
|
||||
If you want to report a security vulnerability, please follow the steps which we have defined for you in our [security policy](https://github.com/verdaccio/verdaccio/security/policy).
|
||||
|
||||
|
||||
|
||||
## Open Collective Sponsors
|
||||
|
||||
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/verdaccio#sponsor)]
|
||||
@ -103,19 +98,18 @@ This project exists thanks to all the people who contribute. [[Contribute](CONTR
|
||||
|
||||
If you have any issue you can try the following options, do no desist to ask or check our issues database, perhaps someone has asked already what you are looking for.
|
||||
|
||||
* [Blog](https://verdaccio.org/blog/)
|
||||
* [Donations](https://opencollective.com/verdaccio)
|
||||
* [Reporting an issue](https://github.com/verdaccio/verdaccio/blob/master/CONTRIBUTING.md#reporting-a-bug)
|
||||
* [Running discussions](https://github.com/verdaccio/verdaccio/issues?q=is%3Aissue+is%3Aopen+label%3Adiscuss)
|
||||
* [Chat](http://chat.verdaccio.org/)
|
||||
* [Logos](https://verdaccio.org/docs/en/logo)
|
||||
* [Docker Examples](https://github.com/verdaccio/docker-examples)
|
||||
* [FAQ](https://github.com/verdaccio/verdaccio/issues?utf8=%E2%9C%93&q=is%3Aissue%20label%3Aquestion%20)
|
||||
|
||||
- [Blog](https://verdaccio.org/blog/)
|
||||
- [Donations](https://opencollective.com/verdaccio)
|
||||
- [Reporting an issue](https://github.com/verdaccio/verdaccio/blob/master/CONTRIBUTING.md#reporting-a-bug)
|
||||
- [Running discussions](https://github.com/verdaccio/verdaccio/issues?q=is%3Aissue+is%3Aopen+label%3Adiscuss)
|
||||
- [Chat](http://chat.verdaccio.org/)
|
||||
- [Logos](https://verdaccio.org/docs/en/logo)
|
||||
- [Docker Examples](https://github.com/verdaccio/docker-examples)
|
||||
- [FAQ](https://github.com/verdaccio/verdaccio/issues?utf8=%E2%9C%93&q=is%3Aissue%20label%3Aquestion%20)
|
||||
|
||||
### License
|
||||
|
||||
Verdaccio is [MIT licensed](https://github.com/verdaccio/verdaccio/blob/master/LICENSE)
|
||||
|
||||
The Verdaccio documentation and logos (excluding /thanks, e.g., .md, .png, .sketch) files within the /assets folder) is
|
||||
[Creative Commons licensed](https://github.com/verdaccio/verdaccio/blob/master/LICENSE-docs).
|
||||
The Verdaccio documentation and logos (excluding /thanks, e.g., .md, .png, .sketch) files within the /assets folder) is
|
||||
[Creative Commons licensed](https://github.com/verdaccio/verdaccio/blob/master/LICENSE-docs).
|
||||
|
12
SECURITY.md
12
SECURITY.md
@ -6,11 +6,9 @@ The following table describes the versions of this project that are currently su
|
||||
|
||||
| Version | Supported |
|
||||
| ------- | ------------------ |
|
||||
| 2.x | :x: |
|
||||
| 3.x | :x: |
|
||||
| 4.x | :white_check_mark: (until 1st July 2021) |
|
||||
| 5.x | :white_check_mark: |
|
||||
|
||||
| 2.x | :x: |
|
||||
| 3.x | :x: |
|
||||
| 4.x | :white_check_mark: |
|
||||
|
||||
## Responsible disclosure security policy
|
||||
|
||||
@ -28,11 +26,11 @@ At Verdaccio, we consider the security of our systems a top priority. But no mat
|
||||
|
||||
If you discover a security vulnerability, please use one of the following means of communications to report it to us:
|
||||
|
||||
* Report the security issue to the Node.js Security WG through the [HackerOne program](https://hackerone.com/nodejs-ecosystem) for ecosystem modules on npm, or to [Snyk Security Team](https://snyk.io/vulnerability-disclosure). They will help triage the security issue and work with all involved parties to remediate and release a fix.
|
||||
- Report the security issue to the Node.js Security WG through the [HackerOne program](https://hackerone.com/nodejs-ecosystem) for ecosystem modules on npm, or to [Snyk Security Team](https://snyk.io/vulnerability-disclosure). They will help triage the security issue and work with all involved parties to remediate and release a fix.
|
||||
|
||||
Note that time-frame and processes are subject to each program’s own policy.
|
||||
|
||||
* Report the security issue to the project maintainers directly at verdaccio@pm.me. If the report contains highly sensitive information, please be advised to encrypt your findings using our [PGP key](https://verdaccio.nyc3.digitaloceanspaces.com/gpg/publickey.verdaccio@pm.me.asc) which is also available in this document.
|
||||
- Report the security issue to the project maintainers directly at verdaccio@pm.me. If the report contains highly sensitive information, please be advised to encrypt your findings using our [PGP key](https://verdaccio.nyc3.digitaloceanspaces.com/gpg/publickey.verdaccio@pm.me.asc) which is also available in this document.
|
||||
|
||||
Your efforts to responsibly disclose your findings are sincerely appreciated and will be taken into account to acknowledge your contributions.
|
||||
|
||||
|
@ -4,7 +4,7 @@ codecov:
|
||||
coverage:
|
||||
precision: 2
|
||||
round: down
|
||||
range: "80...85"
|
||||
range: '80...85'
|
||||
|
||||
status:
|
||||
project:
|
||||
@ -24,6 +24,6 @@ parsers:
|
||||
macro: no
|
||||
|
||||
comment:
|
||||
layout: "diff,flags,tree"
|
||||
layout: 'diff,flags,tree'
|
||||
behavior: default
|
||||
require_changes: no
|
@ -1,10 +1,7 @@
|
||||
# Debuging Documentation
|
||||
|
||||
|
||||
## Debugging tests
|
||||
|
||||
|
||||
|
||||
### Running a single test
|
||||
|
||||
```bash
|
||||
@ -17,7 +14,7 @@ Using `--runInBand` allows you to see the `console.log` prints, without that `je
|
||||
|
||||
You can take advance of `debug` module used by many dependencies, eg:
|
||||
|
||||
* `supertest`: `DEBUG=superagent yarn test test/integration/package.spec.ts --runInBand`
|
||||
* `express`: `DEBUG=express:* yarn test test/integration/package.spec.ts --runInBand`
|
||||
* `nock`: `DEBUG=nock yarn test test/integration/package.spec.ts --runInBand`
|
||||
* All of if: `DEBUG=* yarn test test/integration/package.spec.ts --runInBand`
|
||||
- `supertest`: `DEBUG=superagent yarn test test/integration/package.spec.ts --runInBand`
|
||||
- `express`: `DEBUG=express:* yarn test test/integration/package.spec.ts --runInBand`
|
||||
- `nock`: `DEBUG=nock yarn test test/integration/package.spec.ts --runInBand`
|
||||
- All of if: `DEBUG=* yarn test test/integration/package.spec.ts --runInBand`
|
||||
|
32
package.json
32
package.json
@ -38,8 +38,8 @@
|
||||
"@babel/preset-typescript": "7.10.4",
|
||||
"@babel/register": "7.10.5",
|
||||
"@babel/runtime": "7.10.5",
|
||||
"@changesets/changelog-github": "^0.1.1",
|
||||
"@changesets/cli": "^2.10.1",
|
||||
"@changesets/changelog-github": "0.1.1",
|
||||
"@changesets/cli": "2.10.1",
|
||||
"@commitlint/cli": "8.3.5",
|
||||
"@commitlint/config-conventional": "8.2.0",
|
||||
"@octokit/rest": "17.0.0",
|
||||
@ -54,8 +54,8 @@
|
||||
"@types/request": "2.48.3",
|
||||
"@types/semver": "7.2.0",
|
||||
"@types/supertest": "2.0.9",
|
||||
"@typescript-eslint/eslint-plugin": "^3.10.1",
|
||||
"@typescript-eslint/parser": "^3.10.1",
|
||||
"@typescript-eslint/eslint-plugin": "3.10.1",
|
||||
"@typescript-eslint/parser": "3.10.1",
|
||||
"@verdaccio/types": "workspace:*",
|
||||
"@verdaccio/ui-theme": "latest",
|
||||
"babel-core": "7.0.0-bridge.0",
|
||||
@ -72,10 +72,9 @@
|
||||
"eslint-plugin-babel": "5.3.0",
|
||||
"eslint-plugin-import": "2.22.0",
|
||||
"eslint-plugin-jest": "23.8.0",
|
||||
"eslint-plugin-jsx-a11y": "^6.3.1",
|
||||
"eslint-plugin-prettier": "3.1.2",
|
||||
"eslint-plugin-react": "^7.20.6",
|
||||
"eslint-plugin-react-hooks": "^4.1.0",
|
||||
"eslint-plugin-jsx-a11y": "6.3.1",
|
||||
"eslint-plugin-react": "7.20.6",
|
||||
"eslint-plugin-react-hooks": "4.1.0",
|
||||
"eslint-plugin-simple-import-sort": "5.0.2",
|
||||
"eslint-plugin-verdaccio": "8.4.2",
|
||||
"fs-extra": "8.1.0",
|
||||
@ -88,13 +87,13 @@
|
||||
"kleur": "3.0.3",
|
||||
"lint-staged": "8.2.1",
|
||||
"nock": "12.0.3",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"npm-run-all": "4.1.5",
|
||||
"prettier": "2.0.5",
|
||||
"rimraf": "3.0.2",
|
||||
"selfsigned": "1.10.7",
|
||||
"standard-version": "8.0.0",
|
||||
"supertest": "4.0.2",
|
||||
"typescript": "4.0.2",
|
||||
"typescript": ">=3.3.1 <3.10.0",
|
||||
"verdaccio": "latest",
|
||||
"verdaccio-audit": "latest",
|
||||
"verdaccio-auth-memory": "latest",
|
||||
@ -107,7 +106,9 @@
|
||||
"clean": "pnpm recursive run clean",
|
||||
"build": "pnpm recursive run build",
|
||||
"docker": "docker build -t verdaccio/verdaccio:local . --no-cache",
|
||||
"lint": "eslint . --ext .js,.ts,.tsx,.jsx",
|
||||
"format": "prettier --write \"**/*.{js,jsx,ts,tsx,json,yml,yaml,md}\"",
|
||||
"format:check": "prettier --check \"**/*.{js,jsx,ts,tsx,json,yml,yaml,md}\"",
|
||||
"lint": "eslint \"**/*.{js,jsx,ts,tsx}\"",
|
||||
"test": "pnpm recursive test",
|
||||
"test:e2e:cli": "cross-env NODE_ENV=test jest --config ./test/e2e-cli/jest.config.e2e.cli.js --passWithNoTests",
|
||||
"website:lint": "cd website && yarn lint",
|
||||
@ -124,5 +125,14 @@
|
||||
"extends": [
|
||||
"@commitlint/config-conventional"
|
||||
]
|
||||
},
|
||||
"husky": {
|
||||
"hooks": {
|
||||
"pre-commit": "lint-staged"
|
||||
}
|
||||
},
|
||||
"lint-staged": {
|
||||
"*.{js,jsx,ts,tsx,json,yml,yaml,md}": "prettier --write",
|
||||
"*.{js,jsx,ts,tsx}": "eslint --cache --fix"
|
||||
}
|
||||
}
|
||||
|
@ -214,7 +214,7 @@ class Auth implements IAuth {
|
||||
debug('bypass unpublish for %o, publish will handle the access', packageName);
|
||||
// @ts-ignore
|
||||
// eslint-disable-next-line
|
||||
return this.allow_publish(...arguments);
|
||||
return this.allow_publish(...arguments);
|
||||
}
|
||||
|
||||
if (ok) {
|
||||
|
@ -1 +1 @@
|
||||
? security
|
||||
security:
|
||||
|
@ -1,11 +1,11 @@
|
||||
import { getInternalError } from '@verdaccio/commons-api';
|
||||
|
||||
module.exports = function ( ) {
|
||||
module.exports = function () {
|
||||
return {
|
||||
authenticate( user, pass, callback ) {
|
||||
// we return an 500 error, the second argument must be false.
|
||||
// https://verdaccio.org/docs/en/dev-plugins#onerror
|
||||
authenticate(user, pass, callback) {
|
||||
// we return an 500 error, the second argument must be false.
|
||||
// https://verdaccio.org/docs/en/dev-plugins#onerror
|
||||
callback(getInternalError(), false);
|
||||
}
|
||||
},
|
||||
};
|
||||
};
|
||||
|
@ -1,10 +1,9 @@
|
||||
|
||||
module.exports = function ( ) {
|
||||
module.exports = function () {
|
||||
return {
|
||||
authenticate( user, pass, callback ) {
|
||||
authenticate(user, pass, callback) {
|
||||
/* user and pass are used here to forward errors
|
||||
and success types respectively for testing purposes */
|
||||
callback(user, pass);
|
||||
}
|
||||
},
|
||||
};
|
||||
};
|
||||
|
@ -1,10 +1,9 @@
|
||||
|
||||
module.exports = function ( ) {
|
||||
module.exports = function () {
|
||||
return {
|
||||
authenticate( user, pass, callback ) {
|
||||
authenticate(user, pass, callback) {
|
||||
// https://verdaccio.org/docs/en/dev-plugins#onsuccess
|
||||
// this is a successful login and return a simple group
|
||||
callback(null, ['test']);
|
||||
}
|
||||
},
|
||||
};
|
||||
};
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
This directory host the default configuration file, but you can find more here:
|
||||
|
||||
* [https://verdaccio.org/docs/en/installation](https://verdaccio.org/docs/en/installation)
|
||||
* [Chat with us](http://chat.verdaccio.org) <- You need a Discord account
|
||||
* [Follow us on Twitter](https://twitter.com/verdaccio_npm)
|
||||
- [https://verdaccio.org/docs/en/installation](https://verdaccio.org/docs/en/installation)
|
||||
- [Chat with us](http://chat.verdaccio.org) <- You need a Discord account
|
||||
- [Follow us on Twitter](https://twitter.com/verdaccio_npm)
|
||||
|
||||
Enjoy Verdaccio !
|
||||
|
@ -87,7 +87,6 @@ logs:
|
||||
# { type: file, path: verdaccio.log, level: http}
|
||||
# FIXME: this should be documented
|
||||
# More info about log rotation https://github.com/pinojs/pino/blob/master/docs/help.md#log-rotation
|
||||
|
||||
#experiments:
|
||||
# # support for npm token command
|
||||
# token: false
|
||||
|
@ -11,6 +11,5 @@ commons api utilities for verdaccio
|
||||
![MIT](https://img.shields.io/github/license/mashape/apistatus.svg)
|
||||
[![Crowdin](https://d322cqt584bo4o.cloudfront.net/verdaccio/localized.svg)](https://crowdin.com/project/verdaccio)
|
||||
|
||||
|
||||
[![Twitter followers](https://img.shields.io/twitter/follow/verdaccio_npm.svg?style=social&label=Follow)](https://twitter.com/verdaccio_npm)
|
||||
[![Github](https://img.shields.io/github/stars/verdaccio/verdaccio.svg?style=social&label=Stars)](https://github.com/verdaccio/verdaccio/stargazers)
|
||||
|
@ -17,6 +17,5 @@ This an utility to lock and unlock files
|
||||
![MIT](https://img.shields.io/github/license/mashape/apistatus.svg)
|
||||
[![Crowdin](https://d322cqt584bo4o.cloudfront.net/verdaccio/localized.svg)](https://crowdin.com/project/verdaccio)
|
||||
|
||||
|
||||
[![Twitter followers](https://img.shields.io/twitter/follow/verdaccio_npm.svg?style=social&label=Follow)](https://twitter.com/verdaccio_npm)
|
||||
[![Github](https://img.shields.io/github/stars/verdaccio/verdaccio.svg?style=social&label=Stars)](https://github.com/verdaccio/verdaccio/stargazers)
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
[![verdaccio (latest)](https://img.shields.io/npm/v/verdaccio-htpasswd/latest.svg)](https://www.npmjs.com/package/verdaccio-htpasswd)
|
||||
[![Known Vulnerabilities](https://snyk.io/test/github/verdaccio/verdaccio-htpasswd/badge.svg?targetFile=package.json)](https://snyk.io/test/github/verdaccio/verdaccio-htpasswd?targetFile=package.json)
|
||||
[![CircleCI](https://circleci.com/gh/verdaccio/verdaccio-htpasswd.svg?style=svg)](https://circleci.com/gh/ayusharma/verdaccio-htpasswd) [![codecov](https://codecov.io/gh/ayusharma/verdaccio-htpasswd/branch/master/graph/badge.svg)](https://codecov.io/gh/ayusharma/verdaccio-htpasswd)
|
||||
@ -8,7 +7,6 @@
|
||||
![MIT](https://img.shields.io/github/license/mashape/apistatus.svg)
|
||||
[![node](https://img.shields.io/node/v/verdaccio-htpasswd/latest.svg)](https://www.npmjs.com/package/verdaccio-htpasswd)
|
||||
|
||||
|
||||
# Verdaccio Module For User Auth Via Htpasswd
|
||||
|
||||
`verdaccio-htpasswd` is a default authentication plugin for the [Verdaccio](https://github.com/verdaccio/verdaccio).
|
||||
@ -56,10 +54,12 @@ crypt method and may use MD5 or SHA1.
|
||||
There are many ways to extend [Verdaccio](https://github.com/verdaccio/verdaccio),
|
||||
currently it support authentication plugins, middleware plugins (since v2.7.0)
|
||||
and storage plugins since (v3.x).
|
||||
|
||||
#### Useful Links
|
||||
|
||||
- [Plugin Development](http://www.verdaccio.org/docs/en/dev-plugins.html)
|
||||
- [List of Plugins](http://www.verdaccio.org/docs/en/plugins.html)
|
||||
|
||||
|
||||
## License
|
||||
|
||||
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fverdaccio%2Fverdaccio-htpasswd.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fverdaccio%2Fverdaccio-htpasswd?ref=badge_large)
|
||||
|
@ -35,5 +35,5 @@ packages:
|
||||
|
||||
# log settings
|
||||
logs:
|
||||
- {type: stdout, format: pretty, level: http}
|
||||
- { type: stdout, format: pretty, level: http }
|
||||
#- {type: file, path: verdaccio.log, level: info}
|
||||
|
@ -29,8 +29,8 @@ The main object that handle a JSON database the private packages.
|
||||
new LocalDatabase(config, logger);
|
||||
```
|
||||
|
||||
* **config**: A verdaccio configuration instance.
|
||||
* **logger**: A logger instance
|
||||
- **config**: A verdaccio configuration instance.
|
||||
- **logger**: A logger instance
|
||||
|
||||
### LocalFS
|
||||
|
||||
@ -40,10 +40,8 @@ A class that handle an package instance in the File System
|
||||
new LocalFS(packageStoragePath, logger);
|
||||
```
|
||||
|
||||
|
||||
|
||||
## License
|
||||
|
||||
Verdaccio is [MIT licensed](https://github.com/verdaccio/local-storage/blob/master/LICENSE).
|
||||
|
||||
|
||||
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fverdaccio%2Flocal-storage.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fverdaccio%2Flocal-storage?ref=badge_large)
|
||||
|
@ -1,56 +1,56 @@
|
||||
{
|
||||
"name": "readme-test",
|
||||
"versions": {
|
||||
"0.0.0": {
|
||||
"name": "test-readme",
|
||||
"version": "0.0.0",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": ""
|
||||
},
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"_id": "test-readme@0.0.0",
|
||||
"dist": {
|
||||
"shasum": "8ee7331cbc641581b1a8cecd9d38d744a8feb863",
|
||||
"tarball": "http://localhost:1234/test-readme/-/test-readme-0.0.0.tgz"
|
||||
},
|
||||
"_from": ".",
|
||||
"_npmVersion": "1.3.1",
|
||||
"_npmUser": {
|
||||
"name": "alex",
|
||||
"email": "alex@kocharin.ru"
|
||||
},
|
||||
"maintainers": [
|
||||
{
|
||||
"name": "juan",
|
||||
"email": "juanpicado19@gmail.com"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"dist-tags": {
|
||||
"foo": "0.0.0",
|
||||
"latest": "0.0.0"
|
||||
},
|
||||
"time": {
|
||||
"modified": "2017-10-06T20:30:38.721Z",
|
||||
"created": "2017-10-06T20:30:38.721Z",
|
||||
"0.0.0": "2017-10-06T20:30:38.721Z"
|
||||
},
|
||||
"_distfiles": {},
|
||||
"_attachments": {
|
||||
"test-readme-0.0.0.tgz": {
|
||||
"shasum": "8ee7331cbc641581b1a8cecd9d38d744a8feb863",
|
||||
"version": "0.0.0"
|
||||
}
|
||||
},
|
||||
"_uplinks": {},
|
||||
"_rev": "5-d647003b88ff08a0",
|
||||
"readme": "this is a readme"
|
||||
"name": "readme-test",
|
||||
"versions": {
|
||||
"0.0.0": {
|
||||
"name": "test-readme",
|
||||
"version": "0.0.0",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": ""
|
||||
},
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"_id": "test-readme@0.0.0",
|
||||
"dist": {
|
||||
"shasum": "8ee7331cbc641581b1a8cecd9d38d744a8feb863",
|
||||
"tarball": "http://localhost:1234/test-readme/-/test-readme-0.0.0.tgz"
|
||||
},
|
||||
"_from": ".",
|
||||
"_npmVersion": "1.3.1",
|
||||
"_npmUser": {
|
||||
"name": "alex",
|
||||
"email": "alex@kocharin.ru"
|
||||
},
|
||||
"maintainers": [
|
||||
{
|
||||
"name": "juan",
|
||||
"email": "juanpicado19@gmail.com"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"dist-tags": {
|
||||
"foo": "0.0.0",
|
||||
"latest": "0.0.0"
|
||||
},
|
||||
"time": {
|
||||
"modified": "2017-10-06T20:30:38.721Z",
|
||||
"created": "2017-10-06T20:30:38.721Z",
|
||||
"0.0.0": "2017-10-06T20:30:38.721Z"
|
||||
},
|
||||
"_distfiles": {},
|
||||
"_attachments": {
|
||||
"test-readme-0.0.0.tgz": {
|
||||
"shasum": "8ee7331cbc641581b1a8cecd9d38d744a8feb863",
|
||||
"version": "0.0.0"
|
||||
}
|
||||
},
|
||||
"_uplinks": {},
|
||||
"_rev": "5-d647003b88ff08a0",
|
||||
"readme": "this is a readme"
|
||||
}
|
||||
|
@ -18,4 +18,5 @@ npm install @verdaccio/readme
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
Verdaccio is [MIT licensed](https://github.com/verdaccio/readme/blob/master/LICENSE).
|
||||
|
@ -1,5 +1,5 @@
|
||||
# mix html and XSS markdown
|
||||
|
||||
[Basic](javascript:alert('Basic'))
|
||||
[Basic](<javascript:alert('Basic')>)
|
||||
|
||||
<a href="https://github.com/webpack/webpack"><img width="200" height="200" src="https://webpack.js.org/assets/icon-square-big.svg"></a>
|
||||
<a href="https://github.com/webpack/webpack"><img width="200" height="200" src="https://webpack.js.org/assets/icon-square-big.svg"></a>
|
||||
|
@ -193,8 +193,8 @@ describe('readme', () => {
|
||||
test('should parse marked', async () => {
|
||||
const readme: string = await readReadme('mixed-html-mk');
|
||||
|
||||
expect(clean(parseReadme(readme) as string)).toEqual(
|
||||
`<h1 id=\"mix-html-and-xss-markdown\">mix html and XSS markdown</h1><p><a>Basic</a></p><p> <a href=\"https://github.com/webpack/webpack\"><img src=\"https://webpack.js.org/assets/icon-square-big.svg\" height=\"200\" width=\"200\"></a></p>`
|
||||
expect(clean(parseReadme(readme) as string)).toMatchInlineSnapshot(
|
||||
`"<h1 id=\\"mix-html-and-xss-markdown\\">mix html and XSS markdown</h1><p><a>Basic</a></p><p><a href=\\"https://github.com/webpack/webpack\\"><img src=\\"https://webpack.js.org/assets/icon-square-big.svg\\" height=\\"200\\" width=\\"200\\"></a></p>"`
|
||||
);
|
||||
});
|
||||
});
|
||||
|
@ -8,7 +8,6 @@
|
||||
![MIT](https://img.shields.io/github/license/mashape/apistatus.svg)
|
||||
[![node](https://img.shields.io/node/v/@verdaccio/streams/latest.svg)](https://www.npmjs.com/package/@verdaccio/streams)
|
||||
|
||||
|
||||
This project provides an extension of `PassThrough` stream.
|
||||
|
||||
## Detail
|
||||
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"rules": {
|
||||
"spaced-comment": 0,
|
||||
"@typescript-eslint/adjacent-overload-signatures": "off",
|
||||
"@typescript-eslint/explicit-member-accessibility": "off",
|
||||
"@typescript-eslint/interface-name-prefix": "off",
|
||||
"@typescript-eslint/no-explicit-any": "off",
|
||||
"@typescript-eslint/no-unused-vars": "off"
|
||||
}
|
||||
"rules": {
|
||||
"spaced-comment": 0,
|
||||
"@typescript-eslint/adjacent-overload-signatures": "off",
|
||||
"@typescript-eslint/explicit-member-accessibility": "off",
|
||||
"@typescript-eslint/interface-name-prefix": "off",
|
||||
"@typescript-eslint/no-explicit-any": "off",
|
||||
"@typescript-eslint/no-unused-vars": "off"
|
||||
}
|
||||
}
|
||||
|
@ -3,6 +3,7 @@
|
||||
Typescript definitions for verdaccio plugins and internal code
|
||||
|
||||
# Typescript
|
||||
|
||||
For usage with the library, the `tsconfig.json` should looks like this.
|
||||
|
||||
```
|
||||
@ -44,5 +45,3 @@ import type {ILocalData, LocalStorage, Logger, Config} from '@verdaccio/types';
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
|
@ -11,10 +11,6 @@ notify:
|
||||
content: '{"color":"green","message":"New package published: * {{ name }}*","notify":true,"message_format":"text"}'
|
||||
'example-stride':
|
||||
method: POST
|
||||
headers:
|
||||
[
|
||||
{ 'Content-Type': 'application/json' },
|
||||
{ 'authorization': 'Bearer secretToken' },
|
||||
]
|
||||
headers: [{ 'Content-Type': 'application/json' }, { 'authorization': 'Bearer secretToken' }]
|
||||
endpoint: https://api.atlassian.com/site/{cloudId}/conversation/{conversationId}/message
|
||||
content: '{"body": {"version": 1,"type": "doc","content": [{"type": "paragraph","content": [{"type": "text","text": "New package published: * {{ name }}* Publisher name: * {{ publisher.name }}"}]}]}}'
|
||||
|
@ -1,11 +1,11 @@
|
||||
import { getInternalError } from '@verdaccio/commons-api';
|
||||
|
||||
module.exports = function ( ) {
|
||||
module.exports = function () {
|
||||
return {
|
||||
authenticate( user, pass, callback ) {
|
||||
// we return an 500 error, the second argument must be false.
|
||||
// https://verdaccio.org/docs/en/dev-plugins#onerror
|
||||
authenticate(user, pass, callback) {
|
||||
// we return an 500 error, the second argument must be false.
|
||||
// https://verdaccio.org/docs/en/dev-plugins#onerror
|
||||
callback(getInternalError(), false);
|
||||
}
|
||||
},
|
||||
};
|
||||
};
|
||||
|
@ -1,10 +1,9 @@
|
||||
|
||||
module.exports = function ( ) {
|
||||
module.exports = function () {
|
||||
return {
|
||||
authenticate( user, pass, callback ) {
|
||||
authenticate(user, pass, callback) {
|
||||
/* user and pass are used here to forward errors
|
||||
and success types respectively for testing purposes */
|
||||
callback(user, pass);
|
||||
}
|
||||
},
|
||||
};
|
||||
};
|
||||
|
@ -1,10 +1,9 @@
|
||||
|
||||
module.exports = function ( ) {
|
||||
module.exports = function () {
|
||||
return {
|
||||
authenticate( user, pass, callback ) {
|
||||
authenticate(user, pass, callback) {
|
||||
// https://verdaccio.org/docs/en/dev-plugins#onsuccess
|
||||
// this is a successful login and return a simple group
|
||||
callback(null, ['test']);
|
||||
}
|
||||
},
|
||||
};
|
||||
};
|
||||
|
@ -2,8 +2,8 @@ function ValidVerdaccioPlugin() {
|
||||
return {
|
||||
// not valid method
|
||||
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
||||
authenticate__: function(){}
|
||||
}
|
||||
authenticate__: function () {},
|
||||
};
|
||||
}
|
||||
|
||||
module.exports = ValidVerdaccioPlugin;
|
||||
|
@ -1,16 +1,35 @@
|
||||
// this is how a Babel.js transpiled plugin looks like
|
||||
|
||||
"use strict";
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
Object.defineProperty(exports, '__esModule', {
|
||||
value: true,
|
||||
});
|
||||
|
||||
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) {descriptor.writable = true;} Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) {defineProperties(Constructor.prototype, protoProps);} if (staticProps) {defineProperties(Constructor, staticProps);} return Constructor; }; }();
|
||||
var _createClass = (function () {
|
||||
function defineProperties(target, props) {
|
||||
for (var i = 0; i < props.length; i++) {
|
||||
var descriptor = props[i];
|
||||
descriptor.enumerable = descriptor.enumerable || false;
|
||||
descriptor.configurable = true;
|
||||
if ('value' in descriptor) descriptor.writable = true;
|
||||
Object.defineProperty(target, descriptor.key, descriptor);
|
||||
}
|
||||
}
|
||||
return function (Constructor, protoProps, staticProps) {
|
||||
if (protoProps) defineProperties(Constructor.prototype, protoProps);
|
||||
if (staticProps) defineProperties(Constructor, staticProps);
|
||||
return Constructor;
|
||||
};
|
||||
})();
|
||||
|
||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
function _classCallCheck(instance, Constructor) {
|
||||
if (!(instance instanceof Constructor)) {
|
||||
throw new TypeError('Cannot call a class as a function');
|
||||
}
|
||||
}
|
||||
|
||||
var Dummy = function () {
|
||||
var Dummy = (function () {
|
||||
function Dummy(config, logger) {
|
||||
_classCallCheck(this, Dummy);
|
||||
|
||||
@ -19,12 +38,14 @@ var Dummy = function () {
|
||||
this.data = [];
|
||||
}
|
||||
|
||||
_createClass(Dummy, [{
|
||||
key: "getPackageStorage",
|
||||
value: function getPackageStorage() {}
|
||||
}]);
|
||||
_createClass(Dummy, [
|
||||
{
|
||||
key: 'getPackageStorage',
|
||||
value: function getPackageStorage() {},
|
||||
},
|
||||
]);
|
||||
|
||||
return Dummy;
|
||||
}();
|
||||
})();
|
||||
|
||||
exports.default = Dummy;
|
||||
|
@ -1,8 +1,8 @@
|
||||
'use strict';
|
||||
/* eslint-disable @typescript-eslint/no-var-requires */
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
Object.defineProperty(exports, '__esModule', {
|
||||
value: true,
|
||||
});
|
||||
exports.Dummy = undefined;
|
||||
|
||||
@ -10,7 +10,9 @@ var _dummy = require('./dummy');
|
||||
|
||||
var _dummy2 = _interopRequireDefault(_dummy);
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
function _interopRequireDefault(obj) {
|
||||
return obj && obj.__esModule ? obj : { default: obj };
|
||||
}
|
||||
|
||||
exports.Dummy = _dummy2.default;
|
||||
exports.default = _dummy2.default;
|
||||
|
@ -1,7 +1,7 @@
|
||||
function ValidVerdaccioPlugin() {
|
||||
return {
|
||||
authenticate: function(){}
|
||||
}
|
||||
authenticate: function () {},
|
||||
};
|
||||
}
|
||||
|
||||
module.exports = ValidVerdaccioPlugin;
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,14 +1,20 @@
|
||||
import {DOMAIN_SERVERS, PORT_SERVER_1, TARBALL} from '../constants';
|
||||
import { DOMAIN_SERVERS, PORT_SERVER_1, TARBALL } from '../constants';
|
||||
|
||||
export default function(name, version = '0.0.0', port = PORT_SERVER_1, domain= `http://${DOMAIN_SERVERS}:${port}`,
|
||||
fileName = TARBALL, readme = 'this is a readme'): any {
|
||||
return {
|
||||
name,
|
||||
version,
|
||||
readme,
|
||||
dist: {
|
||||
shasum: 'fake',
|
||||
tarball: `${domain}/${encodeURIComponent(name)}/-/${fileName}`,
|
||||
}
|
||||
export default function (
|
||||
name,
|
||||
version = '0.0.0',
|
||||
port = PORT_SERVER_1,
|
||||
domain = `http://${DOMAIN_SERVERS}:${port}`,
|
||||
fileName = TARBALL,
|
||||
readme = 'this is a readme'
|
||||
): any {
|
||||
return {
|
||||
name,
|
||||
version,
|
||||
readme,
|
||||
dist: {
|
||||
shasum: 'fake',
|
||||
tarball: `${domain}/${encodeURIComponent(name)}/-/${fileName}`,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
@ -10,4 +10,3 @@ The test are structured by feature following this shape:
|
||||
--- mock (storage folder) optional
|
||||
--- partials (optional)
|
||||
```
|
||||
|
||||
|
@ -1,76 +1,76 @@
|
||||
{
|
||||
"name": "@jquery/jquery",
|
||||
"versions": {
|
||||
"1.5.1": {
|
||||
"name": "@jquery/jquery",
|
||||
"description": "jQuery: The Write Less, Do More, JavaScript Library",
|
||||
"url": "jquery.com",
|
||||
"keywords": [
|
||||
"util",
|
||||
"dom",
|
||||
"jquery"
|
||||
],
|
||||
"author": {
|
||||
"name": "John Resig",
|
||||
"email": "jeresig@gmail.com"
|
||||
},
|
||||
"contributors": [],
|
||||
"dependencies": {
|
||||
"jsdom": "=0.1.20",
|
||||
"htmlparser": ">= 1.7.3"
|
||||
},
|
||||
"lib": "lib",
|
||||
"main": "./dist/node-jquery.js",
|
||||
"version": "1.5.1",
|
||||
"_id": "@jquery/jquery@1.5.1",
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"_engineSupported": true,
|
||||
"_npmVersion": "0.3.15",
|
||||
"_nodeVersion": "v0.4.2",
|
||||
"directories": {
|
||||
"lib": "./lib"
|
||||
},
|
||||
"files": [
|
||||
""
|
||||
],
|
||||
"_defaultsLoaded": true,
|
||||
"dist": {
|
||||
"shasum": "2ae2d661e906c1a01e044a71bb5b2743942183e5",
|
||||
"tarball": "https://registry.npmjs.org/@jquery%2jquery/-/jquery-1.5.1.tgz"
|
||||
},
|
||||
"deprecated": "Versions of the jquery npm package older than 1.9.0 are patched versions that don't work in web browsers. Please upgrade to >=1.11.0."
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
"modified": "2018-05-21T21:39:54.702Z",
|
||||
"created": "2011-03-19T07:19:56.392Z",
|
||||
"1.5.1": "2011-03-19T07:19:56.956Z"
|
||||
},
|
||||
"dist-tags": {
|
||||
"beta": "3.0.0",
|
||||
"latest": "3.3.1",
|
||||
"jota": "1.6.3"
|
||||
},
|
||||
"_uplinks": {
|
||||
"npmjs": {
|
||||
"etag": "W/\"252f0a131cedd3ea82dfefd6fa049558\"",
|
||||
"fetched": 1529779934081
|
||||
}
|
||||
},
|
||||
"_distfiles": {
|
||||
"jquery-1.5.1.tgz": {
|
||||
"url": "https://registry.npmjs.org/@jquery%2jquery/-/jquery-1.5.1.tgz",
|
||||
"sha": "2ae2d661e906c1a01e044a71bb5b2743942183e5",
|
||||
"registry": "npmjs"
|
||||
}
|
||||
},
|
||||
"_attachments": {
|
||||
"jquery-1.5.1.tgz": {
|
||||
"shasum": "2ae2d661e906c1a01e044a71bb5b2743942183e5"
|
||||
}
|
||||
},
|
||||
"_rev": "60-fed4915c27b9c1e6",
|
||||
"readme": "# jQuery\n\n> jQuery is a fast, small, and feature-rich JavaScript library.\n\nFor information on how to get started and how to use jQuery, please see [jQuery's documentation](http://api.jquery.com/).\nFor source files and issues, please visit the [jQuery repo](https://github.com/jquery/jquery).\n\nIf upgrading, please see the [blog post for 3.3.1](https://blog.jquery.com/2017/03/20/jquery-3.3.1-now-available/). This includes notable differences from the previous version and a more readable changelog.\n\n## Including jQuery\n\nBelow are some of the most common ways to include jQuery.\n\n### Browser\n\n#### Script tag\n\n```html\n<script src=\"https://code.jquery.com/jquery-3.3.1.min.js\"></script>\n```\n\n#### Babel\n\n[Babel](http://babeljs.io/) is a next generation JavaScript compiler. One of the features is the ability to use ES6/ES2015 modules now, even though browsers do not yet support this feature natively.\n\n```js\nimport $ from \"jquery\";\n```\n\n#### Browserify/Webpack\n\nThere are several ways to use [Browserify](http://browserify.org/) and [Webpack](https://webpack.github.io/). For more information on using these tools, please refer to the corresponding project's documention. In the script, including jQuery will usually look like this...\n\n```js\nvar $ = require(\"jquery\");\n```\n\n#### AMD (Asynchronous Module Definition)\n\nAMD is a module format built for the browser. For more information, we recommend [require.js' documentation](http://requirejs.org/docs/whyamd.html).\n\n```js\ndefine([\"jquery\"], function($) {\n\n});\n```\n\n### Node\n\nTo include jQuery in [Node](nodejs.org), first install with npm.\n\n```sh\nnpm install jquery\n```\n\nFor jQuery to work in Node, a window with a document is required. Since no such window exists natively in Node, one can be mocked by tools such as [jsdom](https://github.com/tmpvar/jsdom). This can be useful for testing purposes.\n\n```js\nrequire(\"jsdom\").env(\"\", function(err, window) {\n\tif (err) {\n\t\tconsole.error(err);\n\t\treturn;\n\t}\n\n\tvar $ = require(\"jquery\")(window);\n});\n```"
|
||||
"name": "@jquery/jquery",
|
||||
"versions": {
|
||||
"1.5.1": {
|
||||
"name": "@jquery/jquery",
|
||||
"description": "jQuery: The Write Less, Do More, JavaScript Library",
|
||||
"url": "jquery.com",
|
||||
"keywords": [
|
||||
"util",
|
||||
"dom",
|
||||
"jquery"
|
||||
],
|
||||
"author": {
|
||||
"name": "John Resig",
|
||||
"email": "jeresig@gmail.com"
|
||||
},
|
||||
"contributors": [],
|
||||
"dependencies": {
|
||||
"jsdom": "=0.1.20",
|
||||
"htmlparser": ">= 1.7.3"
|
||||
},
|
||||
"lib": "lib",
|
||||
"main": "./dist/node-jquery.js",
|
||||
"version": "1.5.1",
|
||||
"_id": "@jquery/jquery@1.5.1",
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"_engineSupported": true,
|
||||
"_npmVersion": "0.3.15",
|
||||
"_nodeVersion": "v0.4.2",
|
||||
"directories": {
|
||||
"lib": "./lib"
|
||||
},
|
||||
"files": [
|
||||
""
|
||||
],
|
||||
"_defaultsLoaded": true,
|
||||
"dist": {
|
||||
"shasum": "2ae2d661e906c1a01e044a71bb5b2743942183e5",
|
||||
"tarball": "https://registry.npmjs.org/@jquery%2jquery/-/jquery-1.5.1.tgz"
|
||||
},
|
||||
"deprecated": "Versions of the jquery npm package older than 1.9.0 are patched versions that don't work in web browsers. Please upgrade to >=1.11.0."
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
"modified": "2018-05-21T21:39:54.702Z",
|
||||
"created": "2011-03-19T07:19:56.392Z",
|
||||
"1.5.1": "2011-03-19T07:19:56.956Z"
|
||||
},
|
||||
"dist-tags": {
|
||||
"beta": "3.0.0",
|
||||
"latest": "3.3.1",
|
||||
"jota": "1.6.3"
|
||||
},
|
||||
"_uplinks": {
|
||||
"npmjs": {
|
||||
"etag": "W/\"252f0a131cedd3ea82dfefd6fa049558\"",
|
||||
"fetched": 1529779934081
|
||||
}
|
||||
},
|
||||
"_distfiles": {
|
||||
"jquery-1.5.1.tgz": {
|
||||
"url": "https://registry.npmjs.org/@jquery%2jquery/-/jquery-1.5.1.tgz",
|
||||
"sha": "2ae2d661e906c1a01e044a71bb5b2743942183e5",
|
||||
"registry": "npmjs"
|
||||
}
|
||||
},
|
||||
"_attachments": {
|
||||
"jquery-1.5.1.tgz": {
|
||||
"shasum": "2ae2d661e906c1a01e044a71bb5b2743942183e5"
|
||||
}
|
||||
},
|
||||
"_rev": "60-fed4915c27b9c1e6",
|
||||
"readme": "# jQuery\n\n> jQuery is a fast, small, and feature-rich JavaScript library.\n\nFor information on how to get started and how to use jQuery, please see [jQuery's documentation](http://api.jquery.com/).\nFor source files and issues, please visit the [jQuery repo](https://github.com/jquery/jquery).\n\nIf upgrading, please see the [blog post for 3.3.1](https://blog.jquery.com/2017/03/20/jquery-3.3.1-now-available/). This includes notable differences from the previous version and a more readable changelog.\n\n## Including jQuery\n\nBelow are some of the most common ways to include jQuery.\n\n### Browser\n\n#### Script tag\n\n```html\n<script src=\"https://code.jquery.com/jquery-3.3.1.min.js\"></script>\n```\n\n#### Babel\n\n[Babel](http://babeljs.io/) is a next generation JavaScript compiler. One of the features is the ability to use ES6/ES2015 modules now, even though browsers do not yet support this feature natively.\n\n```js\nimport $ from \"jquery\";\n```\n\n#### Browserify/Webpack\n\nThere are several ways to use [Browserify](http://browserify.org/) and [Webpack](https://webpack.github.io/). For more information on using these tools, please refer to the corresponding project's documention. In the script, including jQuery will usually look like this...\n\n```js\nvar $ = require(\"jquery\");\n```\n\n#### AMD (Asynchronous Module Definition)\n\nAMD is a module format built for the browser. For more information, we recommend [require.js' documentation](http://requirejs.org/docs/whyamd.html).\n\n```js\ndefine([\"jquery\"], function($) {\n\n});\n```\n\n### Node\n\nTo include jQuery in [Node](nodejs.org), first install with npm.\n\n```sh\nnpm install jquery\n```\n\nFor jQuery to work in Node, a window with a document is required. Since no such window exists natively in Node, one can be mocked by tools such as [jsdom](https://github.com/tmpvar/jsdom). This can be useful for testing purposes.\n\n```js\nrequire(\"jsdom\").env(\"\", function(err, window) {\n\tif (err) {\n\t\tconsole.error(err);\n\t\treturn;\n\t}\n\n\tvar $ = require(\"jquery\")(window);\n});\n```"
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -14,28 +14,22 @@
|
||||
"dependencies": {
|
||||
"test": "^1.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
},
|
||||
"devDependencies": {},
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"keywords": [
|
||||
|
||||
],
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"readme": "ERROR: No README data found!",
|
||||
"_id": "npm_test@1.0.0",
|
||||
"_npmVersion": "5.5.1",
|
||||
"_nodeVersion": "9.3.0",
|
||||
"_npmUser": {
|
||||
|
||||
},
|
||||
"_npmUser": {},
|
||||
"dist": {
|
||||
"integrity": "sha512-tfzM1OFjWwg2d2Wke\/DV6icjeTZUVOZYLkbf8wmONRSAgMovL\/F+zyI24OhTtWyOXd1Kbj2YUMBvLpmpAjv8zg==",
|
||||
"integrity": "sha512-tfzM1OFjWwg2d2Wke/DV6icjeTZUVOZYLkbf8wmONRSAgMovL/F+zyI24OhTtWyOXd1Kbj2YUMBvLpmpAjv8zg==",
|
||||
"shasum": "3e4e6bd5097b295e520b947c9be3259a9509a673",
|
||||
"tarball": "http:\/\/localhost:4873\/npm_test\/-\/npm_test-1.0.0.tgz"
|
||||
"tarball": "http://localhost:4873/npm_test/-/npm_test-1.0.0.tgz"
|
||||
}
|
||||
},
|
||||
"2.0.0": {
|
||||
@ -46,41 +40,35 @@
|
||||
"dependencies": {
|
||||
"test": "^2.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
},
|
||||
"devDependencies": {},
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"keywords": [
|
||||
|
||||
],
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"readme": "ERROR: No README data found!",
|
||||
"_id": "npm_test@2.0.0",
|
||||
"_npmVersion": "5.5.1",
|
||||
"_nodeVersion": "9.3.0",
|
||||
"_npmUser": {
|
||||
|
||||
},
|
||||
"_npmUser": {},
|
||||
"dist": {
|
||||
"integrity": "sha512-tzzM1OFjWwg2d2Wke\/DV6icjeTZUVOZYLkbf8wmONRSAgMovL\/F+zyI24OhTtWyOXd1Kbj2YUMBvLpmpAjv8zg==",
|
||||
"integrity": "sha512-tzzM1OFjWwg2d2Wke/DV6icjeTZUVOZYLkbf8wmONRSAgMovL/F+zyI24OhTtWyOXd1Kbj2YUMBvLpmpAjv8zg==",
|
||||
"shasum": "3a4e6bd5097b295e520b947c9be3259a9509a673",
|
||||
"tarball": "http:\/\/localhost:4873\/npm_test\/-\/npm_test-2.0.0.tgz"
|
||||
"tarball": "http://localhost:4873/npm_test/-/npm_test-2.0.0.tgz"
|
||||
}
|
||||
}
|
||||
},
|
||||
"readme": "ERROR: No README data found!",
|
||||
"_attachments": {
|
||||
"npm_test-1.0.0.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAE+2ST08CMRDFOe+nmPTAyawt7ELCVT149ihqmu4gI9I2bUGM4bvbbhGM4eYmxmR\/l6bvtW+mf6xUK\/mMlzaP5Ys3etAxnPNJVcE5PVHV0RPjkairsZiK0YALUU+mMOBdN3KOjQ\/SxVZ+m5PPAsfxn\/BRADAt18hmwDxpY0k+BfSBXSRni86T0ckUJS95Vhv0ypENByeLa0ntjHSDu\/iPvpZajIJWhD66qRwcC6Xlj6KsYm7U94cN2+sfe7KRS34LabuMCaiWBubsxjnjZqANJAO8RUULwmbOYDgE3FEAcSqzwvc345oUd\/\/QKnITlsadzvNKCrVv7+X27ooV++Kv36qnp6enSz4B8bhKUwAIAAA=",
|
||||
"content_type": "application/octet-stream",
|
||||
"data": "H4sIAAAAAAAAE+2ST08CMRDFOe+nmPTAyawt7ELCVT149ihqmu4gI9I2bUGM4bvbbhGM4eYmxmR/l6bvtW+mf6xUK/mMlzaP5Ys3etAxnPNJVcE5PVHV0RPjkairsZiK0YALUU+mMOBdN3KOjQ/SxVZ+m5PPAsfxn/BRADAt18hmwDxpY0k+BfSBXSRni86T0ckUJS95Vhv0ypENByeLa0ntjHSDu/iPvpZajIJWhD66qRwcC6Xlj6KsYm7U94cN2+sfe7KRS34LabuMCaiWBubsxjnjZqANJAO8RUULwmbOYDgE3FEAcSqzwvc345oUd//QKnITlsadzvNKCrVv7+X27ooV++Kv36qnp6enSz4B8bhKUwAIAAA=",
|
||||
"length": 281
|
||||
},
|
||||
"npm_test-2.0.0.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAE+2ST08CMRDFOe+nmPTAyawt7ELCVT149ihqmu4gI9I2bUGM4bvbbhGM4eYmxmR\/l6bvtW+mf6xUK\/mMlzaP5Ys3etAxnPNJVcE5PVHV0RPjkairsZiK0YALUU+mMOBdN3KOjQ\/SxVZ+m5PPAsfxn\/BRADAt18hmwDxpY0k+BfSBXSRni86T0ckUJS95Vhv0ypENByeLa0ntjHSDu\/iPvpZajIJWhD66qRwcC6Xlj6KsYm7U94cN2+sfe7KRS34LabuMCaiWBubsxjnjZqANJAO8RUULwmbOYDgE3FEAcSqzwvc345oUd\/\/QKnITlsadzvNKCrVv7+X27ooV++Kv36qnp6enSz4B8bhKUwAIAAA=",
|
||||
"content_type": "application/octet-stream",
|
||||
"data": "H4sIAAAAAAAAE+2ST08CMRDFOe+nmPTAyawt7ELCVT149ihqmu4gI9I2bUGM4bvbbhGM4eYmxmR/l6bvtW+mf6xUK/mMlzaP5Ys3etAxnPNJVcE5PVHV0RPjkairsZiK0YALUU+mMOBdN3KOjQ/SxVZ+m5PPAsfxn/BRADAt18hmwDxpY0k+BfSBXSRni86T0ckUJS95Vhv0ypENByeLa0ntjHSDu/iPvpZajIJWhD66qRwcC6Xlj6KsYm7U94cN2+sfe7KRS34LabuMCaiWBubsxjnjZqANJAO8RUULwmbOYDgE3FEAcSqzwvc345oUd//QKnITlsadzvNKCrVv7+X27ooV++Kv36qnp6enSz4B8bhKUwAIAAA=",
|
||||
"length": 281
|
||||
}
|
||||
}
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@ -1,76 +1,76 @@
|
||||
{
|
||||
"name": "@jquery/jquery",
|
||||
"versions": {
|
||||
"1.5.1": {
|
||||
"name": "@jquery/jquery",
|
||||
"description": "jQuery: The Write Less, Do More, JavaScript Library",
|
||||
"url": "jquery.com",
|
||||
"keywords": [
|
||||
"util",
|
||||
"dom",
|
||||
"jquery"
|
||||
],
|
||||
"author": {
|
||||
"name": "John Resig",
|
||||
"email": "jeresig@gmail.com"
|
||||
},
|
||||
"contributors": [],
|
||||
"dependencies": {
|
||||
"jsdom": "=0.1.20",
|
||||
"htmlparser": ">= 1.7.3"
|
||||
},
|
||||
"lib": "lib",
|
||||
"main": "./dist/node-jquery.js",
|
||||
"version": "1.5.1",
|
||||
"_id": "@jquery/jquery@1.5.1",
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"_engineSupported": true,
|
||||
"_npmVersion": "0.3.15",
|
||||
"_nodeVersion": "v0.4.2",
|
||||
"directories": {
|
||||
"lib": "./lib"
|
||||
},
|
||||
"files": [
|
||||
""
|
||||
],
|
||||
"_defaultsLoaded": true,
|
||||
"dist": {
|
||||
"shasum": "2ae2d661e906c1a01e044a71bb5b2743942183e5",
|
||||
"tarball": "https://registry.npmjs.org/@jquery%2jquery/-/jquery-1.5.1.tgz"
|
||||
},
|
||||
"deprecated": "Versions of the jquery npm package older than 1.9.0 are patched versions that don't work in web browsers. Please upgrade to >=1.11.0."
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
"modified": "2018-05-21T21:39:54.702Z",
|
||||
"created": "2011-03-19T07:19:56.392Z",
|
||||
"1.5.1": "2011-03-19T07:19:56.956Z"
|
||||
},
|
||||
"dist-tags": {
|
||||
"beta": "3.0.0",
|
||||
"latest": "3.3.1",
|
||||
"jota": "1.6.3"
|
||||
},
|
||||
"_uplinks": {
|
||||
"npmjs": {
|
||||
"etag": "W/\"252f0a131cedd3ea82dfefd6fa049558\"",
|
||||
"fetched": 1529779934081
|
||||
}
|
||||
},
|
||||
"_distfiles": {
|
||||
"jquery-1.5.1.tgz": {
|
||||
"url": "https://registry.npmjs.org/@jquery%2jquery/-/jquery-1.5.1.tgz",
|
||||
"sha": "2ae2d661e906c1a01e044a71bb5b2743942183e5",
|
||||
"registry": "npmjs"
|
||||
}
|
||||
},
|
||||
"_attachments": {
|
||||
"jquery-1.5.1.tgz": {
|
||||
"shasum": "2ae2d661e906c1a01e044a71bb5b2743942183e5"
|
||||
}
|
||||
},
|
||||
"_rev": "60-fed4915c27b9c1e6",
|
||||
"readme": "# jQuery\n\n> jQuery is a fast, small, and feature-rich JavaScript library.\n\nFor information on how to get started and how to use jQuery, please see [jQuery's documentation](http://api.jquery.com/).\nFor source files and issues, please visit the [jQuery repo](https://github.com/jquery/jquery).\n\nIf upgrading, please see the [blog post for 3.3.1](https://blog.jquery.com/2017/03/20/jquery-3.3.1-now-available/). This includes notable differences from the previous version and a more readable changelog.\n\n## Including jQuery\n\nBelow are some of the most common ways to include jQuery.\n\n### Browser\n\n#### Script tag\n\n```html\n<script src=\"https://code.jquery.com/jquery-3.3.1.min.js\"></script>\n```\n\n#### Babel\n\n[Babel](http://babeljs.io/) is a next generation JavaScript compiler. One of the features is the ability to use ES6/ES2015 modules now, even though browsers do not yet support this feature natively.\n\n```js\nimport $ from \"jquery\";\n```\n\n#### Browserify/Webpack\n\nThere are several ways to use [Browserify](http://browserify.org/) and [Webpack](https://webpack.github.io/). For more information on using these tools, please refer to the corresponding project's documention. In the script, including jQuery will usually look like this...\n\n```js\nvar $ = require(\"jquery\");\n```\n\n#### AMD (Asynchronous Module Definition)\n\nAMD is a module format built for the browser. For more information, we recommend [require.js' documentation](http://requirejs.org/docs/whyamd.html).\n\n```js\ndefine([\"jquery\"], function($) {\n\n});\n```\n\n### Node\n\nTo include jQuery in [Node](nodejs.org), first install with npm.\n\n```sh\nnpm install jquery\n```\n\nFor jQuery to work in Node, a window with a document is required. Since no such window exists natively in Node, one can be mocked by tools such as [jsdom](https://github.com/tmpvar/jsdom). This can be useful for testing purposes.\n\n```js\nrequire(\"jsdom\").env(\"\", function(err, window) {\n\tif (err) {\n\t\tconsole.error(err);\n\t\treturn;\n\t}\n\n\tvar $ = require(\"jquery\")(window);\n});\n```"
|
||||
"name": "@jquery/jquery",
|
||||
"versions": {
|
||||
"1.5.1": {
|
||||
"name": "@jquery/jquery",
|
||||
"description": "jQuery: The Write Less, Do More, JavaScript Library",
|
||||
"url": "jquery.com",
|
||||
"keywords": [
|
||||
"util",
|
||||
"dom",
|
||||
"jquery"
|
||||
],
|
||||
"author": {
|
||||
"name": "John Resig",
|
||||
"email": "jeresig@gmail.com"
|
||||
},
|
||||
"contributors": [],
|
||||
"dependencies": {
|
||||
"jsdom": "=0.1.20",
|
||||
"htmlparser": ">= 1.7.3"
|
||||
},
|
||||
"lib": "lib",
|
||||
"main": "./dist/node-jquery.js",
|
||||
"version": "1.5.1",
|
||||
"_id": "@jquery/jquery@1.5.1",
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"_engineSupported": true,
|
||||
"_npmVersion": "0.3.15",
|
||||
"_nodeVersion": "v0.4.2",
|
||||
"directories": {
|
||||
"lib": "./lib"
|
||||
},
|
||||
"files": [
|
||||
""
|
||||
],
|
||||
"_defaultsLoaded": true,
|
||||
"dist": {
|
||||
"shasum": "2ae2d661e906c1a01e044a71bb5b2743942183e5",
|
||||
"tarball": "https://registry.npmjs.org/@jquery%2jquery/-/jquery-1.5.1.tgz"
|
||||
},
|
||||
"deprecated": "Versions of the jquery npm package older than 1.9.0 are patched versions that don't work in web browsers. Please upgrade to >=1.11.0."
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
"modified": "2018-05-21T21:39:54.702Z",
|
||||
"created": "2011-03-19T07:19:56.392Z",
|
||||
"1.5.1": "2011-03-19T07:19:56.956Z"
|
||||
},
|
||||
"dist-tags": {
|
||||
"beta": "3.0.0",
|
||||
"latest": "3.3.1",
|
||||
"jota": "1.6.3"
|
||||
},
|
||||
"_uplinks": {
|
||||
"npmjs": {
|
||||
"etag": "W/\"252f0a131cedd3ea82dfefd6fa049558\"",
|
||||
"fetched": 1529779934081
|
||||
}
|
||||
},
|
||||
"_distfiles": {
|
||||
"jquery-1.5.1.tgz": {
|
||||
"url": "https://registry.npmjs.org/@jquery%2jquery/-/jquery-1.5.1.tgz",
|
||||
"sha": "2ae2d661e906c1a01e044a71bb5b2743942183e5",
|
||||
"registry": "npmjs"
|
||||
}
|
||||
},
|
||||
"_attachments": {
|
||||
"jquery-1.5.1.tgz": {
|
||||
"shasum": "2ae2d661e906c1a01e044a71bb5b2743942183e5"
|
||||
}
|
||||
},
|
||||
"_rev": "60-fed4915c27b9c1e6",
|
||||
"readme": "# jQuery\n\n> jQuery is a fast, small, and feature-rich JavaScript library.\n\nFor information on how to get started and how to use jQuery, please see [jQuery's documentation](http://api.jquery.com/).\nFor source files and issues, please visit the [jQuery repo](https://github.com/jquery/jquery).\n\nIf upgrading, please see the [blog post for 3.3.1](https://blog.jquery.com/2017/03/20/jquery-3.3.1-now-available/). This includes notable differences from the previous version and a more readable changelog.\n\n## Including jQuery\n\nBelow are some of the most common ways to include jQuery.\n\n### Browser\n\n#### Script tag\n\n```html\n<script src=\"https://code.jquery.com/jquery-3.3.1.min.js\"></script>\n```\n\n#### Babel\n\n[Babel](http://babeljs.io/) is a next generation JavaScript compiler. One of the features is the ability to use ES6/ES2015 modules now, even though browsers do not yet support this feature natively.\n\n```js\nimport $ from \"jquery\";\n```\n\n#### Browserify/Webpack\n\nThere are several ways to use [Browserify](http://browserify.org/) and [Webpack](https://webpack.github.io/). For more information on using these tools, please refer to the corresponding project's documention. In the script, including jQuery will usually look like this...\n\n```js\nvar $ = require(\"jquery\");\n```\n\n#### AMD (Asynchronous Module Definition)\n\nAMD is a module format built for the browser. For more information, we recommend [require.js' documentation](http://requirejs.org/docs/whyamd.html).\n\n```js\ndefine([\"jquery\"], function($) {\n\n});\n```\n\n### Node\n\nTo include jQuery in [Node](nodejs.org), first install with npm.\n\n```sh\nnpm install jquery\n```\n\nFor jQuery to work in Node, a window with a document is required. Since no such window exists natively in Node, one can be mocked by tools such as [jsdom](https://github.com/tmpvar/jsdom). This can be useful for testing purposes.\n\n```js\nrequire(\"jsdom\").env(\"\", function(err, window) {\n\tif (err) {\n\t\tconsole.error(err);\n\t\treturn;\n\t}\n\n\tvar $ = require(\"jquery\")(window);\n});\n```"
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -14,28 +14,22 @@
|
||||
"dependencies": {
|
||||
"test": "^1.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
},
|
||||
"devDependencies": {},
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"keywords": [
|
||||
|
||||
],
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"readme": "ERROR: No README data found!",
|
||||
"_id": "npm_test@1.0.0",
|
||||
"_npmVersion": "5.5.1",
|
||||
"_nodeVersion": "9.3.0",
|
||||
"_npmUser": {
|
||||
|
||||
},
|
||||
"_npmUser": {},
|
||||
"dist": {
|
||||
"integrity": "sha512-tfzM1OFjWwg2d2Wke\/DV6icjeTZUVOZYLkbf8wmONRSAgMovL\/F+zyI24OhTtWyOXd1Kbj2YUMBvLpmpAjv8zg==",
|
||||
"integrity": "sha512-tfzM1OFjWwg2d2Wke/DV6icjeTZUVOZYLkbf8wmONRSAgMovL/F+zyI24OhTtWyOXd1Kbj2YUMBvLpmpAjv8zg==",
|
||||
"shasum": "3e4e6bd5097b295e520b947c9be3259a9509a673",
|
||||
"tarball": "http:\/\/localhost:4873\/npm_test\/-\/npm_test-1.0.0.tgz"
|
||||
"tarball": "http://localhost:4873/npm_test/-/npm_test-1.0.0.tgz"
|
||||
}
|
||||
},
|
||||
"2.0.0": {
|
||||
@ -46,41 +40,35 @@
|
||||
"dependencies": {
|
||||
"test": "^2.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
},
|
||||
"devDependencies": {},
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"keywords": [
|
||||
|
||||
],
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"readme": "ERROR: No README data found!",
|
||||
"_id": "npm_test@2.0.0",
|
||||
"_npmVersion": "5.5.1",
|
||||
"_nodeVersion": "9.3.0",
|
||||
"_npmUser": {
|
||||
|
||||
},
|
||||
"_npmUser": {},
|
||||
"dist": {
|
||||
"integrity": "sha512-tzzM1OFjWwg2d2Wke\/DV6icjeTZUVOZYLkbf8wmONRSAgMovL\/F+zyI24OhTtWyOXd1Kbj2YUMBvLpmpAjv8zg==",
|
||||
"integrity": "sha512-tzzM1OFjWwg2d2Wke/DV6icjeTZUVOZYLkbf8wmONRSAgMovL/F+zyI24OhTtWyOXd1Kbj2YUMBvLpmpAjv8zg==",
|
||||
"shasum": "3a4e6bd5097b295e520b947c9be3259a9509a673",
|
||||
"tarball": "http:\/\/localhost:4873\/npm_test\/-\/npm_test-2.0.0.tgz"
|
||||
"tarball": "http://localhost:4873/npm_test/-/npm_test-2.0.0.tgz"
|
||||
}
|
||||
}
|
||||
},
|
||||
"readme": "ERROR: No README data found!",
|
||||
"_attachments": {
|
||||
"npm_test-1.0.0.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAE+2ST08CMRDFOe+nmPTAyawt7ELCVT149ihqmu4gI9I2bUGM4bvbbhGM4eYmxmR\/l6bvtW+mf6xUK\/mMlzaP5Ys3etAxnPNJVcE5PVHV0RPjkairsZiK0YALUU+mMOBdN3KOjQ\/SxVZ+m5PPAsfxn\/BRADAt18hmwDxpY0k+BfSBXSRni86T0ckUJS95Vhv0ypENByeLa0ntjHSDu\/iPvpZajIJWhD66qRwcC6Xlj6KsYm7U94cN2+sfe7KRS34LabuMCaiWBubsxjnjZqANJAO8RUULwmbOYDgE3FEAcSqzwvc345oUd\/\/QKnITlsadzvNKCrVv7+X27ooV++Kv36qnp6enSz4B8bhKUwAIAAA=",
|
||||
"content_type": "application/octet-stream",
|
||||
"data": "H4sIAAAAAAAAE+2ST08CMRDFOe+nmPTAyawt7ELCVT149ihqmu4gI9I2bUGM4bvbbhGM4eYmxmR/l6bvtW+mf6xUK/mMlzaP5Ys3etAxnPNJVcE5PVHV0RPjkairsZiK0YALUU+mMOBdN3KOjQ/SxVZ+m5PPAsfxn/BRADAt18hmwDxpY0k+BfSBXSRni86T0ckUJS95Vhv0ypENByeLa0ntjHSDu/iPvpZajIJWhD66qRwcC6Xlj6KsYm7U94cN2+sfe7KRS34LabuMCaiWBubsxjnjZqANJAO8RUULwmbOYDgE3FEAcSqzwvc345oUd//QKnITlsadzvNKCrVv7+X27ooV++Kv36qnp6enSz4B8bhKUwAIAAA=",
|
||||
"length": 281
|
||||
},
|
||||
"npm_test-2.0.0.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAE+2ST08CMRDFOe+nmPTAyawt7ELCVT149ihqmu4gI9I2bUGM4bvbbhGM4eYmxmR\/l6bvtW+mf6xUK\/mMlzaP5Ys3etAxnPNJVcE5PVHV0RPjkairsZiK0YALUU+mMOBdN3KOjQ\/SxVZ+m5PPAsfxn\/BRADAt18hmwDxpY0k+BfSBXSRni86T0ckUJS95Vhv0ypENByeLa0ntjHSDu\/iPvpZajIJWhD66qRwcC6Xlj6KsYm7U94cN2+sfe7KRS34LabuMCaiWBubsxjnjZqANJAO8RUULwmbOYDgE3FEAcSqzwvc345oUd\/\/QKnITlsadzvNKCrVv7+X27ooV++Kv36qnp6enSz4B8bhKUwAIAAA=",
|
||||
"content_type": "application/octet-stream",
|
||||
"data": "H4sIAAAAAAAAE+2ST08CMRDFOe+nmPTAyawt7ELCVT149ihqmu4gI9I2bUGM4bvbbhGM4eYmxmR/l6bvtW+mf6xUK/mMlzaP5Ys3etAxnPNJVcE5PVHV0RPjkairsZiK0YALUU+mMOBdN3KOjQ/SxVZ+m5PPAsfxn/BRADAt18hmwDxpY0k+BfSBXSRni86T0ckUJS95Vhv0ypENByeLa0ntjHSDu/iPvpZajIJWhD66qRwcC6Xlj6KsYm7U94cN2+sfe7KRS34LabuMCaiWBubsxjnjZqANJAO8RUULwmbOYDgE3FEAcSqzwvc345oUd//QKnITlsadzvNKCrVv7+X27ooV++Kv36qnp6enSz4B8bhKUwAIAAA=",
|
||||
"length": 281
|
||||
}
|
||||
}
|
||||
|
@ -1,53 +1,50 @@
|
||||
const json = {
|
||||
"_id": "forbidden-place",
|
||||
"name": "forbidden-place",
|
||||
"description": "",
|
||||
"dist-tags": {
|
||||
"latest": "1.0.6"
|
||||
_id: 'forbidden-place',
|
||||
name: 'forbidden-place',
|
||||
description: '',
|
||||
'dist-tags': {
|
||||
latest: '1.0.6',
|
||||
},
|
||||
"versions": {
|
||||
"1.0.6": {
|
||||
"name": "forbidden-place",
|
||||
"version": "1.0.6",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
versions: {
|
||||
'1.0.6': {
|
||||
name: 'forbidden-place',
|
||||
version: '1.0.6',
|
||||
description: '',
|
||||
main: 'index.js',
|
||||
scripts: {
|
||||
test: 'echo "Error: no test specified" && exit 1',
|
||||
},
|
||||
"keywords": [
|
||||
|
||||
],
|
||||
"author": {
|
||||
"name": "User NPM",
|
||||
"email": "user@domain.com"
|
||||
keywords: [],
|
||||
author: {
|
||||
name: 'User NPM',
|
||||
email: 'user@domain.com',
|
||||
},
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"verdaccio": "^2.7.2"
|
||||
license: 'ISC',
|
||||
dependencies: {
|
||||
verdaccio: '^2.7.2',
|
||||
},
|
||||
"readme": "# test",
|
||||
"readmeFilename": "README.md",
|
||||
"_id": "forbidden-place@1.0.6",
|
||||
"_npmVersion": "5.5.1",
|
||||
"_nodeVersion": "8.7.0",
|
||||
"_npmUser": {
|
||||
|
||||
readme: '# test',
|
||||
readmeFilename: 'README.md',
|
||||
_id: 'forbidden-place@1.0.6',
|
||||
_npmVersion: '5.5.1',
|
||||
_nodeVersion: '8.7.0',
|
||||
_npmUser: {},
|
||||
dist: {
|
||||
integrity: 'sha512-6gHiERpiDgtb3hjqpQH5/i7zRmvYi9pmCjQf2ZMy3QEa9wVk9RgdZaPWUt7ZOnWUPFjcr9cmE6dUBf+XoPoH4g==',
|
||||
shasum: '2c03764f651a9f016ca0b7620421457b619151b9',
|
||||
tarball: 'http://localhost:5555/forbidden-place/-/forbidden-place-1.0.6.tgz',
|
||||
},
|
||||
"dist": {
|
||||
"integrity": "sha512-6gHiERpiDgtb3hjqpQH5\/i7zRmvYi9pmCjQf2ZMy3QEa9wVk9RgdZaPWUt7ZOnWUPFjcr9cmE6dUBf+XoPoH4g==",
|
||||
"shasum": "2c03764f651a9f016ca0b7620421457b619151b9",
|
||||
"tarball": "http:\/\/localhost:5555\/forbidden-place\/-\/forbidden-place-1.0.6.tgz"
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
"readme": "# test",
|
||||
"_attachments": {
|
||||
"forbidden-place-1.0.6.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAE+2W32vbMBDH85y\/QnjQp9qxLEeBMsbGlocNBmN7bFdQ5WuqxJaEpGQdo\/\/79KPeQsnIw5KUDX\/9IOvurLuz\/DHSjK\/YAiY6jcXSKjk6sMqypHWNdtmD6hlBI0wqQmo8nVbVqMR4OsNoVB66kF1aW8eML+Vv10m9oF\/jP6IfY4QyyTrILlD2eqkcm+gVzpdrJrPz4NuAsULJ4MZFWdBkbcByI7R79CRjx0ScCdnAvf+SkjUFWu8IubzBgXUhDPidQlfZ3BhlLpBUKDiQ1cDFrYDmKkNnZwjuhUM4808+xNVW8P2bMk1Y7vJrtLC1u1MmLPjBF40+Cc4ahV6GDmI\/DWygVRpMwVX3KtXUCg7Sxp7ff3nbt6TBFy65gK1iffsN41yoEHtdFbOiisWMH8bPvXUH0SP3k+KG3UBr+DFy7OGfEJr4x5iWVeS\/pLQe+D+FIv\/agIWI6GX66kFuIhT+1gDjrp\/4d7WAvAwEJPh0u14IufWkM0zaW2W6nLfM2lybgJ4LTJ0\/jWiAK8OcMjt8MW3OlfQppcuhhQ6k+2OgkK2Q8DssFPi\/IHpU9fz3\/+xj5NjDf8QFE39VmE4JDfzPCBn4P4X6\/f88f\/Pu47zomiPk2Lv\/dOv8h+P\/34\/D\/p9CL+Kp67mrGDRo0KBBp9ZPsETQegASAAA=",
|
||||
"length": 512
|
||||
}
|
||||
}
|
||||
}
|
||||
readme: '# test',
|
||||
_attachments: {
|
||||
'forbidden-place-1.0.6.tgz': {
|
||||
content_type: 'application/octet-stream',
|
||||
data:
|
||||
'H4sIAAAAAAAAE+2W32vbMBDH85y/QnjQp9qxLEeBMsbGlocNBmN7bFdQ5WuqxJaEpGQdo//79KPeQsnIw5KUDX/9IOvurLuz/DHSjK/YAiY6jcXSKjk6sMqypHWNdtmD6hlBI0wqQmo8nVbVqMR4OsNoVB66kF1aW8eML+Vv10m9oF/jP6IfY4QyyTrILlD2eqkcm+gVzpdrJrPz4NuAsULJ4MZFWdBkbcByI7R79CRjx0ScCdnAvf+SkjUFWu8IubzBgXUhDPidQlfZ3BhlLpBUKDiQ1cDFrYDmKkNnZwjuhUM4808+xNVW8P2bMk1Y7vJrtLC1u1MmLPjBF40+Cc4ahV6GDmI/DWygVRpMwVX3KtXUCg7Sxp7ff3nbt6TBFy65gK1iffsN41yoEHtdFbOiisWMH8bPvXUH0SP3k+KG3UBr+DFy7OGfEJr4x5iWVeS/pLQe+D+FIv/agIWI6GX66kFuIhT+1gDjrp/4d7WAvAwEJPh0u14IufWkM0zaW2W6nLfM2lybgJ4LTJ0/jWiAK8OcMjt8MW3OlfQppcuhhQ6k+2OgkK2Q8DssFPi/IHpU9fz3/+xj5NjDf8QFE39VmE4JDfzPCBn4P4X6/f88f/Pu47zomiPk2Lv/dOv8h+P/34/D/p9CL+Kp67mrGDRo0KBBp9ZPsETQegASAAA=',
|
||||
length: 512,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
module.exports = json;
|
||||
|
@ -1,54 +1,50 @@
|
||||
const json = {
|
||||
"_id": "@scope\/pk1-test",
|
||||
"name": "@scope\/pk1-test",
|
||||
"description": "",
|
||||
"dist-tags": {
|
||||
"latest": "1.0.6"
|
||||
_id: '@scope/pk1-test',
|
||||
name: '@scope/pk1-test',
|
||||
description: '',
|
||||
'dist-tags': {
|
||||
latest: '1.0.6',
|
||||
},
|
||||
"versions": {
|
||||
"1.0.6": {
|
||||
"name": "@scope\/pk1-test",
|
||||
"version": "1.0.6",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
versions: {
|
||||
'1.0.6': {
|
||||
name: '@scope/pk1-test',
|
||||
version: '1.0.6',
|
||||
description: '',
|
||||
main: 'index.js',
|
||||
scripts: {
|
||||
test: 'echo "Error: no test specified" && exit 1',
|
||||
},
|
||||
"keywords": [
|
||||
|
||||
],
|
||||
"author": {
|
||||
"name": "User NPM",
|
||||
"email": "user@domain.com"
|
||||
keywords: [],
|
||||
author: {
|
||||
name: 'User NPM',
|
||||
email: 'user@domain.com',
|
||||
},
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"verdaccio": "^2.7.2"
|
||||
license: 'ISC',
|
||||
dependencies: {
|
||||
verdaccio: '^2.7.2',
|
||||
},
|
||||
"readme": "# test",
|
||||
"readmeFilename": "README.md",
|
||||
"_id": "@scope\/pk1-test@1.0.6",
|
||||
"_npmVersion": "5.5.1",
|
||||
"_nodeVersion": "8.7.0",
|
||||
"_npmUser": {
|
||||
|
||||
readme: '# test',
|
||||
readmeFilename: 'README.md',
|
||||
_id: '@scope/pk1-test@1.0.6',
|
||||
_npmVersion: '5.5.1',
|
||||
_nodeVersion: '8.7.0',
|
||||
_npmUser: {},
|
||||
dist: {
|
||||
integrity: 'sha512-6gHiERpiDgtb3hjqpQH5/i7zRmvYi9pmCjQf2ZMy3QEa9wVk9RgdZaPWUt7ZOnWUPFjcr9cmE6dUBf+XoPoH4g==',
|
||||
shasum: '2c03764f651a9f016ca0b7620421457b619151b9',
|
||||
tarball: 'http://localhost:5555/@scope/pk1-test/-/@scope/pk1-test-1.0.6.tgz',
|
||||
},
|
||||
"dist": {
|
||||
"integrity": "sha512-6gHiERpiDgtb3hjqpQH5\/i7zRmvYi9pmCjQf2ZMy3QEa9wVk9RgdZaPWUt7ZOnWUPFjcr9cmE6dUBf+XoPoH4g==",
|
||||
"shasum": "2c03764f651a9f016ca0b7620421457b619151b9",
|
||||
"tarball": "http:\/\/localhost:5555\/@scope\/pk1-test\/-\/@scope\/pk1-test-1.0.6.tgz"
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
"readme": "# test",
|
||||
"_attachments": {
|
||||
"@scope\/pk1-test-1.0.6.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
// eslint-disable-next-line max-len
|
||||
"data": "H4sIAAAAAAAAE+2W32vbMBDH85y\/QnjQp9qxLEeBMsbGlocNBmN7bFdQ5WuqxJaEpGQdo\/\/79KPeQsnIw5KUDX\/9IOvurLuz\/DHSjK\/YAiY6jcXSKjk6sMqypHWNdtmD6hlBI0wqQmo8nVbVqMR4OsNoVB66kF1aW8eML+Vv10m9oF\/jP6IfY4QyyTrILlD2eqkcm+gVzpdrJrPz4NuAsULJ4MZFWdBkbcByI7R79CRjx0ScCdnAvf+SkjUFWu8IubzBgXUhDPidQlfZ3BhlLpBUKDiQ1cDFrYDmKkNnZwjuhUM4808+xNVW8P2bMk1Y7vJrtLC1u1MmLPjBF40+Cc4ahV6GDmI\/DWygVRpMwVX3KtXUCg7Sxp7ff3nbt6TBFy65gK1iffsN41yoEHtdFbOiisWMH8bPvXUH0SP3k+KG3UBr+DFy7OGfEJr4x5iWVeS\/pLQe+D+FIv\/agIWI6GX66kFuIhT+1gDjrp\/4d7WAvAwEJPh0u14IufWkM0zaW2W6nLfM2lybgJ4LTJ0\/jWiAK8OcMjt8MW3OlfQppcuhhQ6k+2OgkK2Q8DssFPi\/IHpU9fz3\/+xj5NjDf8QFE39VmE4JDfzPCBn4P4X6\/f88f\/Pu47zomiPk2Lv\/dOv8h+P\/34\/D\/p9CL+Kp67mrGDRo0KBBp9ZPsETQegASAAA=",
|
||||
"length": 512
|
||||
}
|
||||
}
|
||||
}
|
||||
readme: '# test',
|
||||
_attachments: {
|
||||
'@scope/pk1-test-1.0.6.tgz': {
|
||||
content_type: 'application/octet-stream',
|
||||
data:
|
||||
'H4sIAAAAAAAAE+2W32vbMBDH85y/QnjQp9qxLEeBMsbGlocNBmN7bFdQ5WuqxJaEpGQdo//79KPeQsnIw5KUDX/9IOvurLuz/DHSjK/YAiY6jcXSKjk6sMqypHWNdtmD6hlBI0wqQmo8nVbVqMR4OsNoVB66kF1aW8eML+Vv10m9oF/jP6IfY4QyyTrILlD2eqkcm+gVzpdrJrPz4NuAsULJ4MZFWdBkbcByI7R79CRjx0ScCdnAvf+SkjUFWu8IubzBgXUhDPidQlfZ3BhlLpBUKDiQ1cDFrYDmKkNnZwjuhUM4808+xNVW8P2bMk1Y7vJrtLC1u1MmLPjBF40+Cc4ahV6GDmI/DWygVRpMwVX3KtXUCg7Sxp7ff3nbt6TBFy65gK1iffsN41yoEHtdFbOiisWMH8bPvXUH0SP3k+KG3UBr+DFy7OGfEJr4x5iWVeS/pLQe+D+FIv/agIWI6GX66kFuIhT+1gDjrp/4d7WAvAwEJPh0u14IufWkM0zaW2W6nLfM2lybgJ4LTJ0/jWiAK8OcMjt8MW3OlfQppcuhhQ6k+2OgkK2Q8DssFPi/IHpU9fz3/+xj5NjDf8QFE39VmE4JDfzPCBn4P4X6/f88f/Pu47zomiPk2Lv/dOv8h+P/34/D/p9CL+Kp67mrGDRo0KBBp9ZPsETQegASAAA=',
|
||||
length: 512,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
module.exports = json;
|
||||
|
2
packages/store/test/fixtures/test.utils.ts
vendored
2
packages/store/test/fixtures/test.utils.ts
vendored
@ -5,4 +5,4 @@ function readFile(filePath) {
|
||||
return fs.readFileSync(path.join(__dirname, `/${filePath}`));
|
||||
}
|
||||
|
||||
export { readFile }
|
||||
export { readFile };
|
||||
|
@ -32,7 +32,7 @@ exports[`Utilities parseReadme should parse makrdown text to html template 1`] =
|
||||
<li>Used to generate RSS Feeds</li>
|
||||
</ul>
|
||||
<h2 id=\\"contributing\\">Contributing</h2>
|
||||
<p>Please read <a href=\\"CONTRIBUTING.md\\">CONTRIBUTING.md</a> for details on our code of conduct, and the process for submitting pull requests to us.</p>
|
||||
<p>Please read <a href=\\"CONTRIBUTING.md\\">CONTRIBUTING.md</a> for details on our code of conduct, and the process for submitting pull requests to us.</p>
|
||||
<h2 id=\\"versioning\\">Versioning</h2>
|
||||
<p>We use <a href=\\"http://semver.org/\\">SemVer</a> for versioning. For the versions available, see the <a href=\\"https://github.com/your/project/tags\\">tags on this repository</a>.</p>
|
||||
<h2 id=\\"license\\">License</h2>
|
||||
|
@ -1,15 +1,15 @@
|
||||
module.exports = { storage: './storage_default_storage',
|
||||
module.exports = {
|
||||
storage: './storage_default_storage',
|
||||
uplinks: { npmjs: { url: 'http://localhost:4873/' } },
|
||||
packages:
|
||||
{ '@*/*': { access: '$all', publish: '$all', proxy: 'npmjs' },
|
||||
'forbidden-place': { access: 'nobody', publish: '$all' },
|
||||
react: { access: '$all', publish: '$all', proxy: 'npmjs' },
|
||||
'corrupted-package': { access: '$all', publish: '$all', proxy: 'npmjs' },
|
||||
jquery: { access: '$all', publish: '$all', proxy: 'npmjs' },
|
||||
'auth-package': { access: '$authenticated', publish: '$authenticated' },
|
||||
vue:
|
||||
{ access: '$authenticated',
|
||||
publish: '$authenticated',
|
||||
proxy: 'npmjs' },
|
||||
'*': { access: '$all', publish: '$all', proxy: 'npmjs' } },
|
||||
logs: [ { type: 'stdout', format: 'pretty', level: 'warn' } ] };
|
||||
packages: {
|
||||
'@*/*': { access: '$all', publish: '$all', proxy: 'npmjs' },
|
||||
'forbidden-place': { access: 'nobody', publish: '$all' },
|
||||
react: { access: '$all', publish: '$all', proxy: 'npmjs' },
|
||||
'corrupted-package': { access: '$all', publish: '$all', proxy: 'npmjs' },
|
||||
jquery: { access: '$all', publish: '$all', proxy: 'npmjs' },
|
||||
'auth-package': { access: '$authenticated', publish: '$authenticated' },
|
||||
vue: { access: '$authenticated', publish: '$authenticated', proxy: 'npmjs' },
|
||||
'*': { access: '$all', publish: '$all', proxy: 'npmjs' },
|
||||
},
|
||||
logs: [{ type: 'stdout', format: 'pretty', level: 'warn' }],
|
||||
};
|
||||
|
@ -1,6 +1,6 @@
|
||||
# JSON Configurations
|
||||
|
||||
This folder host all sort of JSON configurations for testing. **It should not include many scenarios, since we use `yaml` for testing. JSON files on this folder aims to verify a verdaccio JSON config file works properly.
|
||||
This folder host all sort of JSON configurations for testing. \*\*It should not include many scenarios, since we use `yaml` for testing. JSON files on this folder aims to verify a verdaccio JSON config file works properly.
|
||||
|
||||
## Contribute
|
||||
|
||||
|
@ -58,13 +58,13 @@ Add additional notes about how to deploy this on a live system
|
||||
|
||||
## Built With
|
||||
|
||||
* The web framework used
|
||||
* Dependency Management
|
||||
* Used to generate RSS Feeds
|
||||
- The web framework used
|
||||
- Dependency Management
|
||||
- Used to generate RSS Feeds
|
||||
|
||||
## Contributing
|
||||
|
||||
Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
|
||||
Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
|
||||
|
||||
## Versioning
|
||||
|
||||
@ -76,6 +76,6 @@ This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md
|
||||
|
||||
## Acknowledgments
|
||||
|
||||
* Hat tip to anyone whose code was used
|
||||
* Inspiration
|
||||
* etc
|
||||
- Hat tip to anyone whose code was used
|
||||
- Inspiration
|
||||
- etc
|
||||
|
@ -8,15 +8,15 @@ First of all, we should explain the testing frameworks being used. We use `jest`
|
||||
|
||||
We go along with the following rules in order to be consistent with all tests which will make your code review smooth and fast:
|
||||
|
||||
* We **type** all our tests. eg `const foo: number = 3;`
|
||||
* **Each test should be as small as possible**: You should use the `test()` block to test only one thing and do not depend on other tests. If the test requires different steps, group them with a `describe()` block.
|
||||
* All `test()` **headers titles** should begin with `test('should test ...')`: For consistency with reporting tools, this makes it easier to match the test with the feature needed to be tested.
|
||||
* **Any mock data** should be located in the `partials` folder in each section.
|
||||
* Use `yaml` for **configuration files examples** instead of JSON.
|
||||
* If you use a **file based mock storage**, it should be located in the `store` folder in each section.
|
||||
* All tests **MUST NOT** rely on external sources and must be able to run them **offline**.
|
||||
* Tests **must run on the following Operating Systems**: Unix (Mac, Linux) and Windows (7 -> latest).
|
||||
* If you are creating mock data file which use the state and need a clean state, use `rimraf` to remove folders.
|
||||
- We **type** all our tests. eg `const foo: number = 3;`
|
||||
- **Each test should be as small as possible**: You should use the `test()` block to test only one thing and do not depend on other tests. If the test requires different steps, group them with a `describe()` block.
|
||||
- All `test()` **headers titles** should begin with `test('should test ...')`: For consistency with reporting tools, this makes it easier to match the test with the feature needed to be tested.
|
||||
- **Any mock data** should be located in the `partials` folder in each section.
|
||||
- Use `yaml` for **configuration files examples** instead of JSON.
|
||||
- If you use a **file based mock storage**, it should be located in the `store` folder in each section.
|
||||
- All tests **MUST NOT** rely on external sources and must be able to run them **offline**.
|
||||
- Tests **must run on the following Operating Systems**: Unix (Mac, Linux) and Windows (7 -> latest).
|
||||
- If you are creating mock data file which use the state and need a clean state, use `rimraf` to remove folders.
|
||||
|
||||
## Testing sections
|
||||
|
||||
@ -24,11 +24,11 @@ Verdaccio testing is split in 3 sections, each of them has different setup and s
|
||||
|
||||
If you are adding new tests, comply with the following:
|
||||
|
||||
* If you add a new API endpoint, unit and functional tests are mandatory.
|
||||
* If you add a utility, unit test is mandatory.
|
||||
* If you are adding a new web API endpoint, the unit test, functional test and if such endpoint has new changes in the UI, E2E test is also mandatory.
|
||||
* If you add or refactor a core class, unit test is mandatory.
|
||||
* If you fix a bug, you **must** add a new `test()` block to prove that the patch fixes the bug.
|
||||
- If you add a new API endpoint, unit and functional tests are mandatory.
|
||||
- If you add a utility, unit test is mandatory.
|
||||
- If you are adding a new web API endpoint, the unit test, functional test and if such endpoint has new changes in the UI, E2E test is also mandatory.
|
||||
- If you add or refactor a core class, unit test is mandatory.
|
||||
- If you fix a bug, you **must** add a new `test()` block to prove that the patch fixes the bug.
|
||||
|
||||
## Unit test
|
||||
|
||||
@ -44,10 +44,10 @@ We have prepared a template at `test/unit/api/api.__test.template.spec.ts` that
|
||||
|
||||
We recommend the following approach when you create a unit test:
|
||||
|
||||
* For new utilities, we recommend creating a new spec.
|
||||
* For existing utilities, if the method is already being tested, just add a new `test()` block.
|
||||
* Notice that all API spec files are appended with `api.[feature].spec.js`, we recommend to follow the same approach. eg: `api.[deprecate].spec.js`.
|
||||
* Don't mix utilities with API tests.
|
||||
- For new utilities, we recommend creating a new spec.
|
||||
- For existing utilities, if the method is already being tested, just add a new `test()` block.
|
||||
- Notice that all API spec files are appended with `api.[feature].spec.js`, we recommend to follow the same approach. eg: `api.[deprecate].spec.js`.
|
||||
- Don't mix utilities with API tests.
|
||||
|
||||
### How the mockServer works?
|
||||
|
||||
@ -56,38 +56,39 @@ Each `[xxx].spec.ts` file usually triggers a `mockServer` on in the`beforeAll` p
|
||||
Let's analyze the following example:
|
||||
|
||||
```js
|
||||
const configForTest = configDefault({
|
||||
const configForTest = configDefault(
|
||||
{
|
||||
auth: {
|
||||
htpasswd: {
|
||||
file: './test-storage-api-spec/.htpasswd'
|
||||
}
|
||||
file: './test-storage-api-spec/.htpasswd',
|
||||
},
|
||||
},
|
||||
filters: {
|
||||
'../../modules/api/partials/plugin/filter': {
|
||||
pkg: 'npm_test',
|
||||
version: '2.0.0'
|
||||
}
|
||||
version: '2.0.0',
|
||||
},
|
||||
},
|
||||
storage: store,
|
||||
self_path: store,
|
||||
uplinks: {
|
||||
npmjs: {
|
||||
url: `http://${DOMAIN_SERVERS}:${mockServerPort}`
|
||||
}
|
||||
url: `http://${DOMAIN_SERVERS}:${mockServerPort}`,
|
||||
},
|
||||
},
|
||||
logs: [
|
||||
{ type: 'stdout', format: 'pretty', level: 'trace' }
|
||||
]
|
||||
}, 'api.spec.yaml');
|
||||
logs: [{ type: 'stdout', format: 'pretty', level: 'trace' }],
|
||||
},
|
||||
'api.spec.yaml'
|
||||
);
|
||||
|
||||
app = await endPointAPI(configForTest);
|
||||
mockRegistry = await mockServer(mockServerPort).init();
|
||||
app = await endPointAPI(configForTest);
|
||||
mockRegistry = await mockServer(mockServerPort).init();
|
||||
```
|
||||
|
||||
The `configDefault({}, 'myConfig.yaml)` function is a method that returns a configuration file that will be the config used for your test.
|
||||
|
||||
* The *first argument* allows you to override/extend the default configuration located `/test/unit/partials/config/yaml/default.yaml`.
|
||||
* The *second argument*s is being used to override the base configuration file, you only need to set the name `api.spec.yaml` you are willing to use, the relative location will be `test/unit/partials/config/yaml/` and will be prefixed on runtime.
|
||||
- The _first argument_ allows you to override/extend the default configuration located `/test/unit/partials/config/yaml/default.yaml`.
|
||||
- The *second argument*s is being used to override the base configuration file, you only need to set the name `api.spec.yaml` you are willing to use, the relative location will be `test/unit/partials/config/yaml/` and will be prefixed on runtime.
|
||||
|
||||
> **The generated object will be used for run your test, not for mock the mock server.**
|
||||
|
||||
@ -95,20 +96,20 @@ The `app = await endPointAPI(configForTest);` is the server that you are about t
|
||||
|
||||
```js
|
||||
test('should fetch jquery package from remote uplink', (done) => {
|
||||
request(app)
|
||||
.get('/jquery')
|
||||
.set(HEADER_TYPE.CONTENT_TYPE, HEADERS.JSON_CHARSET)
|
||||
.expect(HEADER_TYPE.CONTENT_TYPE, HEADERS.JSON_CHARSET)
|
||||
.expect(HTTP_STATUS.OK)
|
||||
.end(function(err, res) {
|
||||
if (err) {
|
||||
return done(err);
|
||||
}
|
||||
request(app)
|
||||
.get('/jquery')
|
||||
.set(HEADER_TYPE.CONTENT_TYPE, HEADERS.JSON_CHARSET)
|
||||
.expect(HEADER_TYPE.CONTENT_TYPE, HEADERS.JSON_CHARSET)
|
||||
.expect(HTTP_STATUS.OK)
|
||||
.end(function (err, res) {
|
||||
if (err) {
|
||||
return done(err);
|
||||
}
|
||||
|
||||
expect(res.body).toBeDefined();
|
||||
expect(res.body.name).toMatch(/jquery/);
|
||||
done();
|
||||
});
|
||||
expect(res.body).toBeDefined();
|
||||
expect(res.body.name).toMatch(/jquery/);
|
||||
done();
|
||||
});
|
||||
});
|
||||
```
|
||||
|
||||
@ -118,7 +119,7 @@ In the previous example, we are fetching `jquery` metadata from our server, we c
|
||||
|
||||
The `mockRegistry = await mockServer(mockServerPort).init();` mock registry will be used as `uplink` for the `app` object described above, **this is optional**, but, the most of the tests are using this approach for increase the number of tested scenarios.
|
||||
|
||||
The *mock server* has a static storage which is located `test/unit/partials/mock-store`, if you need add new packages, those must be commited in such folder. **Any modification in the mock server might affect other test, since is a shared context**.
|
||||
The _mock server_ has a static storage which is located `test/unit/partials/mock-store`, if you need add new packages, those must be commited in such folder. **Any modification in the mock server might affect other test, since is a shared context**.
|
||||
|
||||
> It is not possible yet to override the mocks configuration server.
|
||||
|
||||
@ -127,7 +128,6 @@ The *mock server* has a static storage which is located `test/unit/partials/mock
|
||||
> The `const mockServerPort = 55549;` mock server must be added manually, be careful and try to define a port that is not being used by another test, there is not automation here yet.
|
||||
|
||||
> To increase debugging you might override the `logs` property using `{ type: 'stdout', format: 'pretty', level: 'trace' }` level **trace**, thus the test will display the server request in your terminal, try to keep it in **warn** by default to avoid noise on run all your test.
|
||||
>
|
||||
|
||||
#### Running a single Unit Test
|
||||
|
||||
@ -137,7 +137,7 @@ To run a single test, use the following command:
|
||||
yarn jest test/unit/modules/api/api.spec.ts --coverage=false
|
||||
```
|
||||
|
||||
You might use the *jest* feature `.only` to limit the test suites you want to run, for instance.
|
||||
You might use the _jest_ feature `.only` to limit the test suites you want to run, for instance.
|
||||
|
||||
```js
|
||||
describe.only('should test package api', () => {
|
||||
@ -199,6 +199,7 @@ Ran all test suites matching /test\/unit\/modules\/api\/api.spec.ts/i.
|
||||
debug-=- updating package jquery info
|
||||
http <-- 200, user: null(::ffff:127.0.0.1), req: 'GET /jquery', bytes: 0/10300
|
||||
```
|
||||
|
||||
The debug display request headers and other handy information about what is happening between your test and the mock server.
|
||||
|
||||
## Functional tests
|
||||
@ -213,37 +214,33 @@ The jest configuration file is defined in `test/jest.config.functional.js`. The
|
||||
|
||||
The servers are linked as follows:
|
||||
|
||||
* Server 1
|
||||
* -> Server 2
|
||||
* -> Server 3
|
||||
* Server 2
|
||||
* -> Server 1
|
||||
* Server 3
|
||||
* -> Server 2
|
||||
* -> Server 1
|
||||
* Express app: (if you need to emulate any external endpoint, use the express app)
|
||||
- Server 1
|
||||
- -> Server 2
|
||||
- -> Server 3
|
||||
- Server 2
|
||||
- -> Server 1
|
||||
- Server 3
|
||||
- -> Server 2
|
||||
- -> Server 1
|
||||
- Express app: (if you need to emulate any external endpoint, use the express app)
|
||||
|
||||
Server 1 runs on port `55551`, Server 2 on port `55552` and Server 3 on port `55553`.
|
||||
|
||||
> If you have the need to increase the number of servers running, it is possible, but please discuss with the team before you go in that path.
|
||||
|
||||
|
||||
#### Adding a new block
|
||||
|
||||
To add a new feature you need to export the feature as a function that take as an argument any of the servers you want to interact.
|
||||
|
||||
|
||||
```js
|
||||
// newFeature.ts
|
||||
|
||||
export default function(server) {
|
||||
|
||||
export default function (server) {
|
||||
describe('package access control', () => {
|
||||
test('should ...', (done) => {
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
}
|
||||
```
|
||||
|
||||
@ -254,7 +251,7 @@ Then import the feature and run the function within the main `describe` block.
|
||||
|
||||
import newFeature from './newFeature';
|
||||
|
||||
describe('functional test verdaccio', function() {
|
||||
describe('functional test verdaccio', function () {
|
||||
// test are fast, but do not change this time out, 10 seconds should be more than enough
|
||||
jest.setTimeout(10000);
|
||||
// servers are accessed via a global jest state.
|
||||
@ -294,7 +291,6 @@ We recommend run your tests and linters before commit.
|
||||
yarn lint && yarn test:all
|
||||
```
|
||||
|
||||
|
||||
You can find more in our [guide about run and debugging test](https://github.com/verdaccio/verdaccio/wiki/Running-and-Debugging-tests#running-the-test).
|
||||
|
||||
## Continuous Integration
|
||||
@ -303,8 +299,3 @@ Verdaccio uses [CircleCI](https://circleci.com/gh/verdaccio) as its primary Cont
|
||||
Node.js versions available, LTS and the latest release. Before the PR is being merged, all check must be green.
|
||||
|
||||
> You need a CircleCI account to be able see the test running
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -7,12 +7,11 @@ function Plugin(config, pluginOptions) {
|
||||
}
|
||||
|
||||
Plugin.prototype.register_middlewares = function (app) {
|
||||
|
||||
const {message} = this._config;
|
||||
const { message } = this._config;
|
||||
app.get('/test/route', function (req, res, next) {
|
||||
res.status(200);
|
||||
|
||||
return next({ ok: message })
|
||||
return next({ ok: message });
|
||||
});
|
||||
};
|
||||
|
||||
|
@ -29,28 +29,24 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
Object.defineProperty(exports, '__esModule', {
|
||||
value: true,
|
||||
});
|
||||
class PluginES6 {
|
||||
|
||||
constructor(config, stuff) {
|
||||
this._config = config;
|
||||
this._logger = stuff.logger;
|
||||
}
|
||||
|
||||
register_middlewares(app, /* auth, storage */) {
|
||||
register_middlewares(app /* auth, storage */) {
|
||||
const message = this._config.message;
|
||||
|
||||
|
||||
app.get('/test/route/es6', function (req, res, next) {
|
||||
res.status(200);
|
||||
|
||||
return next({ ok: message });
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
exports.default = PluginES6;
|
||||
|
||||
|
@ -8,7 +8,6 @@ function Plugin(config) {
|
||||
}
|
||||
|
||||
Plugin.prototype.register_middlewares = function (app) {
|
||||
|
||||
app.get('/test-uplink-timeout-*', function (req, res, next) {
|
||||
// https://github.com/nock/nock#readme
|
||||
nock('http://localhost:55552')
|
||||
@ -21,7 +20,6 @@ Plugin.prototype.register_middlewares = function (app) {
|
||||
|
||||
next();
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
module.exports = Plugin;
|
||||
|
@ -1,48 +1,48 @@
|
||||
{
|
||||
"name": "__NAME__",
|
||||
"versions": {
|
||||
"0.1.0": {
|
||||
"name": "__NAME__",
|
||||
"version": "0.1.0",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
},
|
||||
"0.1.1alpha": {
|
||||
"name": "__NAME__",
|
||||
"version": "0.1.1alpha",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
},
|
||||
"0.1.2": {
|
||||
"name": "__NAME__",
|
||||
"version": "0.1.2",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
},
|
||||
"0.1.3alpha": {
|
||||
"name": "__NAME__",
|
||||
"version": "0.1.3alpha",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
},
|
||||
"1.1.0": {
|
||||
"name": "__NAME__",
|
||||
"version": "1.1.0",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
}
|
||||
},
|
||||
"dist-tags": {
|
||||
"latest": "1.1.0"
|
||||
}
|
||||
"name": "__NAME__",
|
||||
"versions": {
|
||||
"0.1.0": {
|
||||
"name": "__NAME__",
|
||||
"version": "0.1.0",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
},
|
||||
"0.1.1alpha": {
|
||||
"name": "__NAME__",
|
||||
"version": "0.1.1alpha",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
},
|
||||
"0.1.2": {
|
||||
"name": "__NAME__",
|
||||
"version": "0.1.2",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
},
|
||||
"0.1.3alpha": {
|
||||
"name": "__NAME__",
|
||||
"version": "0.1.3alpha",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
},
|
||||
"1.1.0": {
|
||||
"name": "__NAME__",
|
||||
"version": "1.1.0",
|
||||
"dist": {
|
||||
"shasum": "fake",
|
||||
"tarball": "http://localhost:55551/__NAME__/-/blahblah"
|
||||
}
|
||||
}
|
||||
},
|
||||
"dist-tags": {
|
||||
"latest": "1.1.0"
|
||||
}
|
||||
}
|
||||
|
@ -1,13 +1,13 @@
|
||||
{
|
||||
"_id": "@test\/scoped",
|
||||
"name": "@test\/scoped",
|
||||
"_id": "@test/scoped",
|
||||
"name": "@test/scoped",
|
||||
"description": "test... test... test...",
|
||||
"dist-tags": {
|
||||
"latest": "1.0.0"
|
||||
},
|
||||
"versions": {
|
||||
"1.0.0": {
|
||||
"name": "@test\/scoped",
|
||||
"name": "@test/scoped",
|
||||
"version": "1.0.0",
|
||||
"description": "test... test... test...",
|
||||
"main": "index.js",
|
||||
@ -17,25 +17,23 @@
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"readme": "ERROR: No README data found!",
|
||||
"_id": "@test\/scoped@1.0.0",
|
||||
"_id": "@test/scoped@1.0.0",
|
||||
"_shasum": "6e67b14e2c0e450b942e2bc8086b49e90f594790",
|
||||
"_from": ".",
|
||||
"_npmVersion": "2.0.1",
|
||||
"_nodeVersion": "0.10.25",
|
||||
"_npmUser": {
|
||||
|
||||
},
|
||||
"_npmUser": {},
|
||||
"dist": {
|
||||
"shasum": "6e67b14e2c0e450b942e2bc8086b49e90f594790",
|
||||
"tarball": "http:\/\/localhost:4873\/@test\/scoped\/-\/@test\/scoped-1.0.0.tgz"
|
||||
"tarball": "http://localhost:4873/@test/scoped/-/@test/scoped-1.0.0.tgz"
|
||||
}
|
||||
}
|
||||
},
|
||||
"readme": "ERROR: No README data found!",
|
||||
"_attachments": {
|
||||
"@test\/scoped-1.0.0.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAAytITM5OTE\/VL4DQelnF+XkMVAYGBgZmZiYKQNrQ3NQAmQYDYwMg29DIxMTY2Mzc1NSYwcDQ2MDIDChPbYdgA6XFJYlFQKdQag7ELwpweoiAaqW8xNxUJSslh5LU4hL94uT8gtQUJR2lstSi4sz8PKCEoZ6BngFQJCW1OLkos6AEIgpSraenp4BGA9XlJmaCFGTmpaRWAJMTUASir1jJqhqsDSiZmpyRrxCj5FpUlF9kpZCXD9auUFyQmpyZlpmaEqOkoKamkFqRWaJgqFSro5RYWpKRXwTUBzQsJzM5Na8Y5GLPYGel2oEOv6EOCtDyf2Vibg617SCQ\/41MzZHyv+Fo\/qcnAOV+KwXU3M8FzfxWCuC8z4WU863QMzyM5gJleysFWK7nguZ5Ky4FsAqgFaTkeS5IjgfqUuKCZngrBWB+5xro4Bp2AJb\/QZGhC4l\/XXCs65WkV1HJDgL539QAOf8bmwHzv4khWD2V7McLRnj+l+\/mgDCY307enXXYQKTN+LUmn5QRq\/u+5mVOLy\/szBZTXN1764bRpKAgp3t7j08XuS7itTLT4+P+P49iligvXC\/2ydVmZendyg9vfLbOiOjZqOPNYHsm2OxLmOHhUglVT5n0Sql0brFjOqcM7b8qxGe+37PB4lT+95fvmOTrVK0ueU3pKqp6PPVztrrvWq5di9afssrV8mlh5JZw43q65OrW94t8SwVYDIrWaLfmcZWErmCuU+8pqe37lHy7zVN1O5vZl3NRyZYhy3LZw7VXym\/VMhOZ5h3A\/lZxyXJR0er9pmK\/CzbPnbaq6OyR7\/zbv5S8\/L677Kryv\/suO2f\/6sn\/0X+p5kC9RPmfdOP\/9Qvb6vjmv1S3\/SMT9e1kQ40d2783Sw7OOzyz6pLxec4tohVH\/Geoy3684erJb8P+ZG7Mr51pZ2eZvr7\/QpbVdU4yA8\/ARuEoGAWjYBSQBQDM0BedABAAAA==",
|
||||
"@test/scoped-1.0.0.tgz": {
|
||||
"content_type": "application/octet-stream",
|
||||
"data": "H4sIAAAAAAAAAytITM5OTE/VL4DQelnF+XkMVAYGBgZmZiYKQNrQ3NQAmQYDYwMg29DIxMTY2Mzc1NSYwcDQ2MDIDChPbYdgA6XFJYlFQKdQag7ELwpweoiAaqW8xNxUJSslh5LU4hL94uT8gtQUJR2lstSi4sz8PKCEoZ6BngFQJCW1OLkos6AEIgpSraenp4BGA9XlJmaCFGTmpaRWAJMTUASir1jJqhqsDSiZmpyRrxCj5FpUlF9kpZCXD9auUFyQmpyZlpmaEqOkoKamkFqRWaJgqFSro5RYWpKRXwTUBzQsJzM5Na8Y5GLPYGel2oEOv6EOCtDyf2Vibg617SCQ/41MzZHyv+Fo/qcnAOV+KwXU3M8FzfxWCuC8z4WU863QMzyM5gJleysFWK7nguZ5Ky4FsAqgFaTkeS5IjgfqUuKCZngrBWB+5xro4Bp2AJb/QZGhC4l/XXCs65WkV1HJDgL539QAOf8bmwHzv4khWD2V7McLRnj+l+/mgDCY307enXXYQKTN+LUmn5QRq/u+5mVOLy/szBZTXN1764bRpKAgp3t7j08XuS7itTLT4+P+P49iligvXC/2ydVmZendyg9vfLbOiOjZqOPNYHsm2OxLmOHhUglVT5n0Sql0brFjOqcM7b8qxGe+37PB4lT+95fvmOTrVK0ueU3pKqp6PPVztrrvWq5di9afssrV8mlh5JZw43q65OrW94t8SwVYDIrWaLfmcZWErmCuU+8pqe37lHy7zVN1O5vZl3NRyZYhy3LZw7VXym/VMhOZ5h3A/lZxyXJR0er9pmK/CzbPnbaq6OyR7/zbv5S8/L677Kryv/suO2f/6sn/0X+p5kC9RPmfdOP/9Qvb6vjmv1S3/SMT9e1kQ40d2783Sw7OOzyz6pLxec4tohVH/Geoy3684erJb8P+ZG7Mr51pZ2eZvr7/QpbVdU4yA8/ARuEoGAWjYBSQBQDM0BedABAAAA==",
|
||||
"length": 736
|
||||
}
|
||||
}
|
||||
|
@ -24,7 +24,7 @@
|
||||
"_id": "test-readme@0.0.0",
|
||||
"dist": {
|
||||
"shasum": "8ee7331cbc641581b1a8cecd9d38d744a8feb863",
|
||||
"tarball": "http:\/\/localhost:1234\/test-readme\/-\/test-readme-0.0.0.tgz"
|
||||
"tarball": "http://localhost:1234/test-readme/-/test-readme-0.0.0.tgz"
|
||||
},
|
||||
"_from": ".",
|
||||
"_npmVersion": "1.3.1",
|
||||
@ -48,8 +48,8 @@
|
||||
],
|
||||
"_attachments": {
|
||||
"test-readme-0.0.0.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAA+2TsW7CMBCGM\/spTh6YKHUSIJLXqkPnrixWcIMLsS3btCDEu\/fs0Ba1SFVVVISUP8Odzqf\/zlY+K+qlaOSt7eLo2RudnVmMsel4DBjzasKOY1JZlJDlRVkU5aSspnnG8pIVOZ6fe5FTWvsgHK7yV5\/uLvARr0Q7qkUrKadB+mCXzY2Wr9q2TjZ0SF+k88poPGUj\/LAyl752yoauioVWqJgpPZcb\/Hmw0jV4ynfJEw9lvTAwo\/fOGcdBG4h18FbW6knJ+YzCYAByowLkdD+kTlrjVTBumzy2Nq7XqIDea7eKY7FJrMPCuG6Hlaql9rHr4fGO7i\/9pFcl+4X\/rWhX557xA\/9FVZ3gv+j5\/w9F+jl8g58c0OeQyCdH3HOglETsObxTTw7McwLJClt+wzz5JD45IPEcEHjMEfg0r8M9pQfaOSDs5NLP16tXr15XqzeJD6m5AAwAAA==",
|
||||
"content_type": "application/octet-stream",
|
||||
"data": "H4sIAAAAAAAAA+2TsW7CMBCGM/spTh6YKHUSIJLXqkPnrixWcIMLsS3btCDEu/fs0Ba1SFVVVISUP8Odzqf/zlY+K+qlaOSt7eLo2RudnVmMsel4DBjzasKOY1JZlJDlRVkU5aSspnnG8pIVOZ6fe5FTWvsgHK7yV5/uLvARr0Q7qkUrKadB+mCXzY2Wr9q2TjZ0SF+k88poPGUj/LAyl752yoauioVWqJgpPZcb/Hmw0jV4ynfJEw9lvTAwo/fOGcdBG4h18FbW6knJ+YzCYAByowLkdD+kTlrjVTBumzy2Nq7XqIDea7eKY7FJrMPCuG6Hlaql9rHr4fGO7i/9pFcl+4X/rWhX557xA/9FVZ3gv+j5/w9F+jl8g58c0OeQyCdH3HOglETsObxTTw7McwLJClt+wzz5JD45IPEcEHjMEfg0r8M9pQfaOSDs5NLP16tXr15XqzeJD6m5AAwAAA==",
|
||||
"length": 352
|
||||
}
|
||||
}
|
||||
|
@ -25,7 +25,7 @@
|
||||
"_id": "test-readme@0.0.0",
|
||||
"dist": {
|
||||
"shasum": "8ee7331cbc641581b1a8cecd9d38d744a8feb863",
|
||||
"tarball": "http:\/\/localhost:1234\/test-readme\/-\/test-readme-0.0.0.tgz"
|
||||
"tarball": "http://localhost:1234/test-readme/-/test-readme-0.0.0.tgz"
|
||||
},
|
||||
"_from": ".",
|
||||
"_npmVersion": "1.3.1",
|
||||
@ -50,8 +50,8 @@
|
||||
],
|
||||
"_attachments": {
|
||||
"test-readme-0.0.0.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAA+2TsW7CMBCGM\/spTh6YKHUSIJLXqkPnrixWcIMLsS3btCDEu\/fs0Ba1SFVVVISUP8Odzqf\/zlY+K+qlaOSt7eLo2RudnVmMsel4DBjzasKOY1JZlJDlRVkU5aSspnnG8pIVOZ6fe5FTWvsgHK7yV5\/uLvARr0Q7qkUrKadB+mCXzY2Wr9q2TjZ0SF+k88poPGUj\/LAyl752yoauioVWqJgpPZcb\/Hmw0jV4ynfJEw9lvTAwo\/fOGcdBG4h18FbW6knJ+YzCYAByowLkdD+kTlrjVTBumzy2Nq7XqIDea7eKY7FJrMPCuG6Hlaql9rHr4fGO7i\/9pFcl+4X\/rWhX557xA\/9FVZ3gv+j5\/w9F+jl8g58c0OeQyCdH3HOglETsObxTTw7McwLJClt+wzz5JD45IPEcEHjMEfg0r8M9pQfaOSDs5NLP16tXr15XqzeJD6m5AAwAAA==",
|
||||
"content_type": "application/octet-stream",
|
||||
"data": "H4sIAAAAAAAAA+2TsW7CMBCGM/spTh6YKHUSIJLXqkPnrixWcIMLsS3btCDEu/fs0Ba1SFVVVISUP8Odzqf/zlY+K+qlaOSt7eLo2RudnVmMsel4DBjzasKOY1JZlJDlRVkU5aSspnnG8pIVOZ6fe5FTWvsgHK7yV5/uLvARr0Q7qkUrKadB+mCXzY2Wr9q2TjZ0SF+k88poPGUj/LAyl752yoauioVWqJgpPZcb/Hmw0jV4ynfJEw9lvTAwo/fOGcdBG4h18FbW6knJ+YzCYAByowLkdD+kTlrjVTBumzy2Nq7XqIDea7eKY7FJrMPCuG6Hlaql9rHr4fGO7i/9pFcl+4X/rWhX557xA/9FVZ3gv+j5/w9F+jl8g58c0OeQyCdH3HOglETsObxTTw7McwLJClt+wzz5JD45IPEcEHjMEfg0r8M9pQfaOSDs5NLP16tXr15XqzeJD6m5AAwAAA==",
|
||||
"length": 352
|
||||
}
|
||||
}
|
||||
|
@ -24,7 +24,7 @@
|
||||
"_id": "testpkg-search@0.0.1",
|
||||
"dist": {
|
||||
"shasum": "8ee7331cbc641581b1a8cecd9d38d744a8feb863",
|
||||
"tarball": "http:\/\/localhost:1234\/testpkg-search\/-\/testpkg-search-0.0.1.tgz"
|
||||
"tarball": "http://localhost:1234/testpkg-search/-/testpkg-search-0.0.1.tgz"
|
||||
},
|
||||
"_from": ".",
|
||||
"_npmVersion": "1.3.1",
|
||||
@ -49,8 +49,8 @@
|
||||
],
|
||||
"_attachments": {
|
||||
"testpkg-search-0.0.1.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAA+2TsW7CMBCGM\/spTh6YKHUSIJLXqkPnrixWcIMLsS3btCDEu\/fs0Ba1SFVVVISUP8Odzqf\/zlY+K+qlaOSt7eLo2RudnVmMsel4DBjzasKOY1JZlJDlRVkU5aSspnnG8pIVOZ6fe5FTWvsgHK7yV5\/uLvARr0Q7qkUrKadB+mCXzY2Wr9q2TjZ0SF+k88poPGUj\/LAyl752yoauioVWqJgpPZcb\/Hmw0jV4ynfJEw9lvTAwo\/fOGcdBG4h18FbW6knJ+YzCYAByowLkdD+kTlrjVTBumzy2Nq7XqIDea7eKY7FJrMPCuG6Hlaql9rHr4fGO7i\/9pFcl+4X\/rWhX557xA\/9FVZ3gv+j5\/w9F+jl8g58c0OeQyCdH3HOglETsObxTTw7McwLJClt+wzz5JD45IPEcEHjMEfg0r8M9pQfaOSDs5NLP16tXr15XqzeJD6m5AAwAAA==",
|
||||
"content_type": "application/octet-stream",
|
||||
"data": "H4sIAAAAAAAAA+2TsW7CMBCGM/spTh6YKHUSIJLXqkPnrixWcIMLsS3btCDEu/fs0Ba1SFVVVISUP8Odzqf/zlY+K+qlaOSt7eLo2RudnVmMsel4DBjzasKOY1JZlJDlRVkU5aSspnnG8pIVOZ6fe5FTWvsgHK7yV5/uLvARr0Q7qkUrKadB+mCXzY2Wr9q2TjZ0SF+k88poPGUj/LAyl752yoauioVWqJgpPZcb/Hmw0jV4ynfJEw9lvTAwo/fOGcdBG4h18FbW6knJ+YzCYAByowLkdD+kTlrjVTBumzy2Nq7XqIDea7eKY7FJrMPCuG6Hlaql9rHr4fGO7i/9pFcl+4X/rWhX557xA/9FVZ3gv+j5/w9F+jl8g58c0OeQyCdH3HOglETsObxTTw7McwLJClt+wzz5JD45IPEcEHjMEfg0r8M9pQfaOSDs5NLP16tXr15XqzeJD6m5AAwAAA==",
|
||||
"length": 352
|
||||
}
|
||||
}
|
||||
|
@ -32,8 +32,7 @@ auth:
|
||||
name: authtest
|
||||
password: blahblah-password
|
||||
|
||||
logs: { type: stdout, format: pretty, level: trace
|
||||
}
|
||||
logs: { type: stdout, format: pretty, level: trace }
|
||||
packages:
|
||||
'@test/*':
|
||||
access: $all
|
||||
|
@ -24,7 +24,7 @@
|
||||
"_id": "testpkg-preserve@0.0.1",
|
||||
"dist": {
|
||||
"shasum": "8ee7331cbc641581b1a8cecd9d38d744a8feb863",
|
||||
"tarball": "http:\/\/localhost:1234\/testpkg-preserve\/-\/testpkg-preserve-0.0.1.tgz"
|
||||
"tarball": "http://localhost:1234/testpkg-preserve/-/testpkg-preserve-0.0.1.tgz"
|
||||
},
|
||||
"_from": ".",
|
||||
"_npmVersion": "1.3.1",
|
||||
@ -49,8 +49,8 @@
|
||||
],
|
||||
"_attachments": {
|
||||
"testpkg-preserve-0.0.1.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
"data": "H4sIAAAAAAAAA+2TsW7CMBCGM\/spTh6YKHUSIJLXqkPnrixWcIMLsS3btCDEu\/fs0Ba1SFVVVISUP8Odzqf\/zlY+K+qlaOSt7eLo2RudnVmMsel4DBjzasKOY1JZlJDlRVkU5aSspnnG8pIVOZ6fe5FTWvsgHK7yV5\/uLvARr0Q7qkUrKadB+mCXzY2Wr9q2TjZ0SF+k88poPGUj\/LAyl752yoauioVWqJgpPZcb\/Hmw0jV4ynfJEw9lvTAwo\/fOGcdBG4h18FbW6knJ+YzCYAByowLkdD+kTlrjVTBumzy2Nq7XqIDea7eKY7FJrMPCuG6Hlaql9rHr4fGO7i\/9pFcl+4X\/rWhX557xA\/9FVZ3gv+j5\/w9F+jl8g58c0OeQyCdH3HOglETsObxTTw7McwLJClt+wzz5JD45IPEcEHjMEfg0r8M9pQfaOSDs5NLP16tXr15XqzeJD6m5AAwAAA==",
|
||||
"content_type": "application/octet-stream",
|
||||
"data": "H4sIAAAAAAAAA+2TsW7CMBCGM/spTh6YKHUSIJLXqkPnrixWcIMLsS3btCDEu/fs0Ba1SFVVVISUP8Odzqf/zlY+K+qlaOSt7eLo2RudnVmMsel4DBjzasKOY1JZlJDlRVkU5aSspnnG8pIVOZ6fe5FTWvsgHK7yV5/uLvARr0Q7qkUrKadB+mCXzY2Wr9q2TjZ0SF+k88poPGUj/LAyl752yoauioVWqJgpPZcb/Hmw0jV4ynfJEw9lvTAwo/fOGcdBG4h18FbW6knJ+YzCYAByowLkdD+kTlrjVTBumzy2Nq7XqIDea7eKY7FJrMPCuG6Hlaql9rHr4fGO7i/9pFcl+4X/rWhX557xA/9FVZ3gv+j5/w9F+jl8g58c0OeQyCdH3HOglETsObxTTw7McwLJClt+wzz5JD45IPEcEHjMEfg0r8M9pQfaOSDs5NLP16tXr15XqzeJD6m5AAwAAA==",
|
||||
"length": 352
|
||||
}
|
||||
}
|
||||
|
@ -8,7 +8,7 @@ The files on this folder should be small as possible, **there is a custom config
|
||||
|
||||
- Each topic ideally should have his **own folder** if many scenarios might be part of the test. **eg: profile, security**
|
||||
- Include different scenarios inside of the folder with enough context to indenty the use case.
|
||||
- Foder or file, should be **named** as the test that used them. *eg: `api.spec.yaml` -> `api.spec.ts`*
|
||||
- Foder or file, should be **named** as the test that used them. _eg: `api.spec.yaml` -> `api.spec.ts`_
|
||||
- **Don't use the same config file in multiple test**, it increase maintenance complexity.
|
||||
- Try to **include only the props are require for the test**:
|
||||
- Comment the config files, don't be shy, add as much context you think is need it for future contributors.
|
||||
|
@ -1,54 +1,50 @@
|
||||
const json = {
|
||||
"_id": "forbidden-place",
|
||||
"name": "forbidden-place",
|
||||
"description": "",
|
||||
"dist-tags": {
|
||||
"latest": "1.0.6"
|
||||
_id: 'forbidden-place',
|
||||
name: 'forbidden-place',
|
||||
description: '',
|
||||
'dist-tags': {
|
||||
latest: '1.0.6',
|
||||
},
|
||||
"versions": {
|
||||
"1.0.6": {
|
||||
"name": "forbidden-place",
|
||||
"version": "1.0.6",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
versions: {
|
||||
'1.0.6': {
|
||||
name: 'forbidden-place',
|
||||
version: '1.0.6',
|
||||
description: '',
|
||||
main: 'index.js',
|
||||
scripts: {
|
||||
test: 'echo "Error: no test specified" && exit 1',
|
||||
},
|
||||
"keywords": [
|
||||
|
||||
],
|
||||
"author": {
|
||||
"name": "User NPM",
|
||||
"email": "user@domain.com"
|
||||
keywords: [],
|
||||
author: {
|
||||
name: 'User NPM',
|
||||
email: 'user@domain.com',
|
||||
},
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"verdaccio": "^2.7.2"
|
||||
license: 'ISC',
|
||||
dependencies: {
|
||||
verdaccio: '^2.7.2',
|
||||
},
|
||||
"readme": "# test",
|
||||
"readmeFilename": "README.md",
|
||||
"_id": "forbidden-place@1.0.6",
|
||||
"_npmVersion": "5.5.1",
|
||||
"_nodeVersion": "8.7.0",
|
||||
"_npmUser": {
|
||||
|
||||
readme: '# test',
|
||||
readmeFilename: 'README.md',
|
||||
_id: 'forbidden-place@1.0.6',
|
||||
_npmVersion: '5.5.1',
|
||||
_nodeVersion: '8.7.0',
|
||||
_npmUser: {},
|
||||
dist: {
|
||||
integrity: 'sha512-6gHiERpiDgtb3hjqpQH5/i7zRmvYi9pmCjQf2ZMy3QEa9wVk9RgdZaPWUt7ZOnWUPFjcr9cmE6dUBf+XoPoH4g==',
|
||||
shasum: '2c03764f651a9f016ca0b7620421457b619151b9',
|
||||
tarball: 'http://localhost:5555/forbidden-place/-/forbidden-place-1.0.6.tgz',
|
||||
},
|
||||
"dist": {
|
||||
"integrity": "sha512-6gHiERpiDgtb3hjqpQH5\/i7zRmvYi9pmCjQf2ZMy3QEa9wVk9RgdZaPWUt7ZOnWUPFjcr9cmE6dUBf+XoPoH4g==",
|
||||
"shasum": "2c03764f651a9f016ca0b7620421457b619151b9",
|
||||
"tarball": "http:\/\/localhost:5555\/forbidden-place\/-\/forbidden-place-1.0.6.tgz"
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
"readme": "# test",
|
||||
"_attachments": {
|
||||
"forbidden-place-1.0.6.tgz": {
|
||||
"content_type": "application\/octet-stream",
|
||||
// eslint-disable-next-line max-len
|
||||
"data": "H4sIAAAAAAAAE+2W32vbMBDH85y\/QnjQp9qxLEeBMsbGlocNBmN7bFdQ5WuqxJaEpGQdo\/\/79KPeQsnIw5KUDX\/9IOvurLuz\/DHSjK\/YAiY6jcXSKjk6sMqypHWNdtmD6hlBI0wqQmo8nVbVqMR4OsNoVB66kF1aW8eML+Vv10m9oF\/jP6IfY4QyyTrILlD2eqkcm+gVzpdrJrPz4NuAsULJ4MZFWdBkbcByI7R79CRjx0ScCdnAvf+SkjUFWu8IubzBgXUhDPidQlfZ3BhlLpBUKDiQ1cDFrYDmKkNnZwjuhUM4808+xNVW8P2bMk1Y7vJrtLC1u1MmLPjBF40+Cc4ahV6GDmI\/DWygVRpMwVX3KtXUCg7Sxp7ff3nbt6TBFy65gK1iffsN41yoEHtdFbOiisWMH8bPvXUH0SP3k+KG3UBr+DFy7OGfEJr4x5iWVeS\/pLQe+D+FIv\/agIWI6GX66kFuIhT+1gDjrp\/4d7WAvAwEJPh0u14IufWkM0zaW2W6nLfM2lybgJ4LTJ0\/jWiAK8OcMjt8MW3OlfQppcuhhQ6k+2OgkK2Q8DssFPi\/IHpU9fz3\/+xj5NjDf8QFE39VmE4JDfzPCBn4P4X6\/f88f\/Pu47zomiPk2Lv\/dOv8h+P\/34\/D\/p9CL+Kp67mrGDRo0KBBp9ZPsETQegASAAA=",
|
||||
"length": 512
|
||||
}
|
||||
}
|
||||
}
|
||||
readme: '# test',
|
||||
_attachments: {
|
||||
'forbidden-place-1.0.6.tgz': {
|
||||
content_type: 'application/octet-stream',
|
||||
data:
|
||||
'H4sIAAAAAAAAE+2W32vbMBDH85y/QnjQp9qxLEeBMsbGlocNBmN7bFdQ5WuqxJaEpGQdo//79KPeQsnIw5KUDX/9IOvurLuz/DHSjK/YAiY6jcXSKjk6sMqypHWNdtmD6hlBI0wqQmo8nVbVqMR4OsNoVB66kF1aW8eML+Vv10m9oF/jP6IfY4QyyTrILlD2eqkcm+gVzpdrJrPz4NuAsULJ4MZFWdBkbcByI7R79CRjx0ScCdnAvf+SkjUFWu8IubzBgXUhDPidQlfZ3BhlLpBUKDiQ1cDFrYDmKkNnZwjuhUM4808+xNVW8P2bMk1Y7vJrtLC1u1MmLPjBF40+Cc4ahV6GDmI/DWygVRpMwVX3KtXUCg7Sxp7ff3nbt6TBFy65gK1iffsN41yoEHtdFbOiisWMH8bPvXUH0SP3k+KG3UBr+DFy7OGfEJr4x5iWVeS/pLQe+D+FIv/agIWI6GX66kFuIhT+1gDjrp/4d7WAvAwEJPh0u14IufWkM0zaW2W6nLfM2lybgJ4LTJ0/jWiAK8OcMjt8MW3OlfQppcuhhQ6k+2OgkK2Q8DssFPi/IHpU9fz3/+xj5NjDf8QFE39VmE4JDfzPCBn4P4X6/f88f/Pu47zomiPk2Lv/dOv8h+P/34/D/p9CL+Kp67mrGDRo0KBBp9ZPsETQegASAAA=',
|
||||
length: 512,
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
module.exports = json;
|
||||
|
@ -1 +1 @@
|
||||
{"list":["@verdaccio/test"],"secret":"48cd053de97d4ef34aea4f1efb902334442bea1e735df5fdc9424c986a281b3d"}
|
||||
{ "list": ["@verdaccio/test"], "secret": "48cd053de97d4ef34aea4f1efb902334442bea1e735df5fdc9424c986a281b3d" }
|
||||
|
129
pnpm-lock.yaml
generated
129
pnpm-lock.yaml
generated
@ -41,8 +41,8 @@ importers:
|
||||
'@types/request': 2.48.3
|
||||
'@types/semver': 7.2.0
|
||||
'@types/supertest': 2.0.9
|
||||
'@typescript-eslint/eslint-plugin': 3.10.1_7cafb685ae559438a248caf09aa37585
|
||||
'@typescript-eslint/parser': 3.10.1_eslint@7.5.0+typescript@4.0.2
|
||||
'@typescript-eslint/eslint-plugin': 3.10.1_a05db04594704d0c3392f43fee866a02
|
||||
'@typescript-eslint/parser': 3.10.1_eslint@7.5.0+typescript@3.9.7
|
||||
'@verdaccio/types': 'link:packages/core/types'
|
||||
'@verdaccio/ui-theme': 1.12.1
|
||||
babel-core: 7.0.0-bridge.0_@babel+core@7.10.5
|
||||
@ -58,9 +58,8 @@ importers:
|
||||
eslint-config-prettier: 6.10.0_eslint@7.5.0
|
||||
eslint-plugin-babel: 5.3.0_eslint@7.5.0
|
||||
eslint-plugin-import: 2.22.0_eslint@7.5.0
|
||||
eslint-plugin-jest: 23.8.0_eslint@7.5.0+typescript@4.0.2
|
||||
eslint-plugin-jest: 23.8.0_eslint@7.5.0+typescript@3.9.7
|
||||
eslint-plugin-jsx-a11y: 6.3.1_eslint@7.5.0
|
||||
eslint-plugin-prettier: 3.1.2_eslint@7.5.0+prettier@2.0.5
|
||||
eslint-plugin-react: 7.20.6_eslint@7.5.0
|
||||
eslint-plugin-react-hooks: 4.1.0_eslint@7.5.0
|
||||
eslint-plugin-simple-import-sort: 5.0.2_eslint@7.5.0
|
||||
@ -81,7 +80,7 @@ importers:
|
||||
selfsigned: 1.10.7
|
||||
standard-version: 8.0.0
|
||||
supertest: 4.0.2
|
||||
typescript: 4.0.2
|
||||
typescript: 3.9.7
|
||||
verdaccio: 4.8.1
|
||||
verdaccio-audit: 9.7.3
|
||||
verdaccio-auth-memory: 9.7.2
|
||||
@ -112,8 +111,8 @@ importers:
|
||||
'@babel/preset-typescript': 7.10.4
|
||||
'@babel/register': 7.10.5
|
||||
'@babel/runtime': 7.10.5
|
||||
'@changesets/changelog-github': ^0.1.1
|
||||
'@changesets/cli': ^2.10.1
|
||||
'@changesets/changelog-github': 0.1.1
|
||||
'@changesets/cli': 2.10.1
|
||||
'@commitlint/cli': 8.3.5
|
||||
'@commitlint/config-conventional': 8.2.0
|
||||
'@octokit/rest': 17.0.0
|
||||
@ -128,8 +127,8 @@ importers:
|
||||
'@types/request': 2.48.3
|
||||
'@types/semver': 7.2.0
|
||||
'@types/supertest': 2.0.9
|
||||
'@typescript-eslint/eslint-plugin': ^3.10.1
|
||||
'@typescript-eslint/parser': ^3.10.1
|
||||
'@typescript-eslint/eslint-plugin': 3.10.1
|
||||
'@typescript-eslint/parser': 3.10.1
|
||||
'@verdaccio/types': 'workspace:*'
|
||||
'@verdaccio/ui-theme': latest
|
||||
babel-core: 7.0.0-bridge.0
|
||||
@ -146,10 +145,9 @@ importers:
|
||||
eslint-plugin-babel: 5.3.0
|
||||
eslint-plugin-import: 2.22.0
|
||||
eslint-plugin-jest: 23.8.0
|
||||
eslint-plugin-jsx-a11y: ^6.3.1
|
||||
eslint-plugin-prettier: 3.1.2
|
||||
eslint-plugin-react: ^7.20.6
|
||||
eslint-plugin-react-hooks: ^4.1.0
|
||||
eslint-plugin-jsx-a11y: 6.3.1
|
||||
eslint-plugin-react: 7.20.6
|
||||
eslint-plugin-react-hooks: 4.1.0
|
||||
eslint-plugin-simple-import-sort: 5.0.2
|
||||
eslint-plugin-verdaccio: 8.4.2
|
||||
fs-extra: 8.1.0
|
||||
@ -162,13 +160,13 @@ importers:
|
||||
kleur: 3.0.3
|
||||
lint-staged: 8.2.1
|
||||
nock: 12.0.3
|
||||
npm-run-all: ^4.1.5
|
||||
npm-run-all: 4.1.5
|
||||
prettier: 2.0.5
|
||||
rimraf: 3.0.2
|
||||
selfsigned: 1.10.7
|
||||
standard-version: 8.0.0
|
||||
supertest: 4.0.2
|
||||
typescript: 4.0.2
|
||||
typescript: '>=3.3.1 <3.10.0'
|
||||
verdaccio: latest
|
||||
verdaccio-audit: latest
|
||||
verdaccio-auth-memory: latest
|
||||
@ -3525,7 +3523,7 @@ packages:
|
||||
integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
|
||||
/@changesets/apply-release-plan/4.0.0:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@changesets/config': 1.3.0
|
||||
'@changesets/get-version-range-type': 0.3.2
|
||||
'@changesets/git': 1.0.6
|
||||
@ -3542,7 +3540,7 @@ packages:
|
||||
integrity: sha512-MrcUd8wIlQ4S/PznzqJVsmnEpUGfPEkCGF54iqt8G05GEqi/zuxpoTfebcScpj5zeiDyxFIcA9RbeZ3pvJJxoA==
|
||||
/@changesets/assemble-release-plan/3.0.0:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@changesets/errors': 0.1.4
|
||||
'@changesets/get-dependents-graph': 1.1.3
|
||||
'@changesets/types': 3.1.1
|
||||
@ -3561,7 +3559,7 @@ packages:
|
||||
integrity: sha512-xwwyc7nSVVEUmVCiqT1dyju1rxe2awk5XOWLEwpsez3j9gXKwixlK43daG5jP1caGuXFc9f1BOSod2oJTUbtew==
|
||||
/@changesets/cli/2.10.1:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@changesets/apply-release-plan': 4.0.0
|
||||
'@changesets/assemble-release-plan': 3.0.0
|
||||
'@changesets/config': 1.3.0
|
||||
@ -3631,7 +3629,7 @@ packages:
|
||||
integrity: sha512-PTFJk1hiMUZ1YGzULmRNo6a6w6LTV6iCY1muCBTby+k4WWGbGgAaqKfUVhpZBosd1fvFIlXl3wqxdA93PLkRaQ==
|
||||
/@changesets/get-release-plan/2.0.0:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@changesets/assemble-release-plan': 3.0.0
|
||||
'@changesets/config': 1.3.0
|
||||
'@changesets/pre': 1.0.5
|
||||
@ -3647,7 +3645,7 @@ packages:
|
||||
integrity: sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg==
|
||||
/@changesets/git/1.0.6:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@changesets/errors': 0.1.4
|
||||
'@changesets/types': 3.1.1
|
||||
'@manypkg/get-packages': 1.1.1
|
||||
@ -3671,7 +3669,7 @@ packages:
|
||||
integrity: sha512-0XPd/es9CfogI7XIqDr7I2mWzm++xX2s9GZsij3GajPYd7ouEsgJyNatPooxNtqj6ZepkiD6uqlqbeBUyj/A0Q==
|
||||
/@changesets/pre/1.0.5:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@changesets/errors': 0.1.4
|
||||
'@changesets/types': 3.1.1
|
||||
'@manypkg/get-packages': 1.1.1
|
||||
@ -3681,7 +3679,7 @@ packages:
|
||||
integrity: sha512-p43aAQY3aijhDnBLCriPao5YArlRjD4mSHRJq9PsBhljVLWqQQXcn6seSd77d+bD1tATLhB8tQ2eYoxMtMydXQ==
|
||||
/@changesets/read/0.4.6:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@changesets/git': 1.0.6
|
||||
'@changesets/logger': 0.0.5
|
||||
'@changesets/parse': 0.3.6
|
||||
@ -3702,7 +3700,7 @@ packages:
|
||||
integrity: sha512-XWGEGWXhM92zvBWiQt2sOwhjTt8eCQbrsRbqkv4WYwW3Zsl4qPpvhHsNt845S42dJXrxgjWvId+jxFQocCayNQ==
|
||||
/@changesets/write/0.1.3:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@changesets/types': 3.1.1
|
||||
fs-extra: 7.0.1
|
||||
human-id: 1.0.2
|
||||
@ -4624,7 +4622,7 @@ packages:
|
||||
integrity: sha512-MY5KFYUru0y74IsgM/9asDwb3ERxWxXEu3CRCZEvE7DtT86y1bR1XgtlSliMrptjz4qbivNGMQSvUBpEFJDp1A==
|
||||
/@manypkg/find-root/1.1.0:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@types/node': 12.12.54
|
||||
find-up: 4.1.0
|
||||
fs-extra: 8.1.0
|
||||
@ -4633,7 +4631,7 @@ packages:
|
||||
integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==
|
||||
/@manypkg/get-packages/1.1.1:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@manypkg/find-root': 1.1.0
|
||||
fs-extra: 8.1.0
|
||||
globby: 11.0.1
|
||||
@ -5742,17 +5740,17 @@ packages:
|
||||
optional: true
|
||||
resolution:
|
||||
integrity: sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ==
|
||||
/@typescript-eslint/eslint-plugin/3.10.1_7cafb685ae559438a248caf09aa37585:
|
||||
/@typescript-eslint/eslint-plugin/3.10.1_a05db04594704d0c3392f43fee866a02:
|
||||
dependencies:
|
||||
'@typescript-eslint/experimental-utils': 3.10.1_eslint@7.5.0+typescript@4.0.2
|
||||
'@typescript-eslint/parser': 3.10.1_eslint@7.5.0+typescript@4.0.2
|
||||
'@typescript-eslint/experimental-utils': 3.10.1_eslint@7.5.0+typescript@3.9.7
|
||||
'@typescript-eslint/parser': 3.10.1_eslint@7.5.0+typescript@3.9.7
|
||||
debug: 4.1.1
|
||||
eslint: 7.5.0
|
||||
functional-red-black-tree: 1.0.1
|
||||
regexpp: 3.1.0
|
||||
semver: 7.3.2
|
||||
tsutils: 3.17.1_typescript@4.0.2
|
||||
typescript: 4.0.2
|
||||
tsutils: 3.17.1_typescript@3.9.7
|
||||
typescript: 3.9.7
|
||||
dev: true
|
||||
engines:
|
||||
node: ^10.12.0 || >=12.0.0
|
||||
@ -5780,10 +5778,10 @@ packages:
|
||||
typescript: '*'
|
||||
resolution:
|
||||
integrity: sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==
|
||||
/@typescript-eslint/experimental-utils/2.34.0_eslint@7.5.0+typescript@4.0.2:
|
||||
/@typescript-eslint/experimental-utils/2.34.0_eslint@7.5.0+typescript@3.9.7:
|
||||
dependencies:
|
||||
'@types/json-schema': 7.0.5
|
||||
'@typescript-eslint/typescript-estree': 2.34.0_typescript@4.0.2
|
||||
'@typescript-eslint/typescript-estree': 2.34.0_typescript@3.9.7
|
||||
eslint: 7.5.0
|
||||
eslint-scope: 5.1.0
|
||||
eslint-utils: 2.1.0
|
||||
@ -5795,11 +5793,11 @@ packages:
|
||||
typescript: '*'
|
||||
resolution:
|
||||
integrity: sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==
|
||||
/@typescript-eslint/experimental-utils/3.10.1_eslint@7.5.0+typescript@4.0.2:
|
||||
/@typescript-eslint/experimental-utils/3.10.1_eslint@7.5.0+typescript@3.9.7:
|
||||
dependencies:
|
||||
'@types/json-schema': 7.0.5
|
||||
'@typescript-eslint/types': 3.10.1
|
||||
'@typescript-eslint/typescript-estree': 3.10.1_typescript@4.0.2
|
||||
'@typescript-eslint/typescript-estree': 3.10.1_typescript@3.9.7
|
||||
eslint: 7.5.0
|
||||
eslint-scope: 5.1.0
|
||||
eslint-utils: 2.1.0
|
||||
@ -5829,15 +5827,15 @@ packages:
|
||||
optional: true
|
||||
resolution:
|
||||
integrity: sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA==
|
||||
/@typescript-eslint/parser/3.10.1_eslint@7.5.0+typescript@4.0.2:
|
||||
/@typescript-eslint/parser/3.10.1_eslint@7.5.0+typescript@3.9.7:
|
||||
dependencies:
|
||||
'@types/eslint-visitor-keys': 1.0.0
|
||||
'@typescript-eslint/experimental-utils': 3.10.1_eslint@7.5.0+typescript@4.0.2
|
||||
'@typescript-eslint/experimental-utils': 3.10.1_eslint@7.5.0+typescript@3.9.7
|
||||
'@typescript-eslint/types': 3.10.1
|
||||
'@typescript-eslint/typescript-estree': 3.10.1_typescript@4.0.2
|
||||
'@typescript-eslint/typescript-estree': 3.10.1_typescript@3.9.7
|
||||
eslint: 7.5.0
|
||||
eslint-visitor-keys: 1.3.0
|
||||
typescript: 4.0.2
|
||||
typescript: 3.9.7
|
||||
dev: true
|
||||
engines:
|
||||
node: ^10.12.0 || >=12.0.0
|
||||
@ -5874,7 +5872,7 @@ packages:
|
||||
optional: true
|
||||
resolution:
|
||||
integrity: sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==
|
||||
/@typescript-eslint/typescript-estree/2.34.0_typescript@4.0.2:
|
||||
/@typescript-eslint/typescript-estree/2.34.0_typescript@3.9.7:
|
||||
dependencies:
|
||||
debug: 4.1.1
|
||||
eslint-visitor-keys: 1.3.0
|
||||
@ -5882,8 +5880,8 @@ packages:
|
||||
is-glob: 4.0.1
|
||||
lodash: 4.17.20
|
||||
semver: 7.3.2
|
||||
tsutils: 3.17.1_typescript@4.0.2
|
||||
typescript: 4.0.2
|
||||
tsutils: 3.17.1_typescript@3.9.7
|
||||
typescript: 3.9.7
|
||||
dev: true
|
||||
engines:
|
||||
node: ^8.10.0 || ^10.13.0 || >=11.10.1
|
||||
@ -5894,7 +5892,7 @@ packages:
|
||||
optional: true
|
||||
resolution:
|
||||
integrity: sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==
|
||||
/@typescript-eslint/typescript-estree/3.10.1_typescript@4.0.2:
|
||||
/@typescript-eslint/typescript-estree/3.10.1_typescript@3.9.7:
|
||||
dependencies:
|
||||
'@typescript-eslint/types': 3.10.1
|
||||
'@typescript-eslint/visitor-keys': 3.10.1
|
||||
@ -5903,8 +5901,8 @@ packages:
|
||||
is-glob: 4.0.1
|
||||
lodash: 4.17.20
|
||||
semver: 7.3.2
|
||||
tsutils: 3.17.1_typescript@4.0.2
|
||||
typescript: 4.0.2
|
||||
tsutils: 3.17.1_typescript@3.9.7
|
||||
typescript: 3.9.7
|
||||
dev: true
|
||||
engines:
|
||||
node: ^10.12.0 || >=12.0.0
|
||||
@ -6505,7 +6503,7 @@ packages:
|
||||
integrity: sha1-7L0W+JSbFXGDcRsb2jNPN4QBhas=
|
||||
/aria-query/4.2.2:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
'@babel/runtime-corejs3': 7.11.2
|
||||
engines:
|
||||
node: '>=6.0'
|
||||
@ -10232,9 +10230,9 @@ packages:
|
||||
eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0
|
||||
resolution:
|
||||
integrity: sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg==
|
||||
/eslint-plugin-jest/23.8.0_eslint@7.5.0+typescript@4.0.2:
|
||||
/eslint-plugin-jest/23.8.0_eslint@7.5.0+typescript@3.9.7:
|
||||
dependencies:
|
||||
'@typescript-eslint/experimental-utils': 2.34.0_eslint@7.5.0+typescript@4.0.2
|
||||
'@typescript-eslint/experimental-utils': 2.34.0_eslint@7.5.0+typescript@3.9.7
|
||||
eslint: 7.5.0
|
||||
dev: true
|
||||
engines:
|
||||
@ -10246,7 +10244,7 @@ packages:
|
||||
integrity: sha512-DKXmLxguZ1Lru4u5YM12ko3WLq6gqo7dhV2b63K731+/PNyZ/Ff6NGONQsGUtPLG9zU3kdz/N+2LTbweNZifeg==
|
||||
/eslint-plugin-jsx-a11y/6.3.1_eslint@6.8.0:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
aria-query: 4.2.2
|
||||
array-includes: 3.1.1
|
||||
ast-types-flow: 0.0.7
|
||||
@ -10267,7 +10265,7 @@ packages:
|
||||
integrity: sha512-i1S+P+c3HOlBJzMFORRbC58tHa65Kbo8b52/TwCwSKLohwvpfT5rm2GjGWzOHTEuq4xxf2aRlHHTtmExDQOP+g==
|
||||
/eslint-plugin-jsx-a11y/6.3.1_eslint@7.5.0:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.10.5
|
||||
'@babel/runtime': 7.11.2
|
||||
aria-query: 4.2.2
|
||||
array-includes: 3.1.1
|
||||
ast-types-flow: 0.0.7
|
||||
@ -10286,19 +10284,6 @@ packages:
|
||||
eslint: ^3 || ^4 || ^5 || ^6 || ^7
|
||||
resolution:
|
||||
integrity: sha512-i1S+P+c3HOlBJzMFORRbC58tHa65Kbo8b52/TwCwSKLohwvpfT5rm2GjGWzOHTEuq4xxf2aRlHHTtmExDQOP+g==
|
||||
/eslint-plugin-prettier/3.1.2_eslint@7.5.0+prettier@2.0.5:
|
||||
dependencies:
|
||||
eslint: 7.5.0
|
||||
prettier: 2.0.5
|
||||
prettier-linter-helpers: 1.0.0
|
||||
dev: true
|
||||
engines:
|
||||
node: '>=6.0.0'
|
||||
peerDependencies:
|
||||
eslint: '>= 5.0.0'
|
||||
prettier: '>= 1.13.0'
|
||||
resolution:
|
||||
integrity: sha512-GlolCC9y3XZfv3RQfwGew7NnuFDKsfI4lbvRK+PIIo23SFH+LemGs4cKwzAaRa+Mdb+lQO/STaIayno8T5sJJA==
|
||||
/eslint-plugin-react-hooks/1.7.0_eslint@6.8.0:
|
||||
dependencies:
|
||||
eslint: 6.8.0
|
||||
@ -10876,10 +10861,6 @@ packages:
|
||||
/fast-deep-equal/3.1.3:
|
||||
resolution:
|
||||
integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
|
||||
/fast-diff/1.2.0:
|
||||
dev: true
|
||||
resolution:
|
||||
integrity: sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==
|
||||
/fast-glob/2.2.7:
|
||||
dependencies:
|
||||
'@mrmlnc/readdir-enhanced': 2.2.1
|
||||
@ -18214,14 +18195,6 @@ packages:
|
||||
dev: false
|
||||
resolution:
|
||||
integrity: sha1-kysxwj792zb8ZqgtzvNirzEimC8=
|
||||
/prettier-linter-helpers/1.0.0:
|
||||
dependencies:
|
||||
fast-diff: 1.2.0
|
||||
dev: true
|
||||
engines:
|
||||
node: '>=6.0.0'
|
||||
resolution:
|
||||
integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==
|
||||
/prettier/1.19.1:
|
||||
dev: true
|
||||
engines:
|
||||
@ -21408,10 +21381,10 @@ packages:
|
||||
typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
|
||||
resolution:
|
||||
integrity: sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==
|
||||
/tsutils/3.17.1_typescript@4.0.2:
|
||||
/tsutils/3.17.1_typescript@3.9.7:
|
||||
dependencies:
|
||||
tslib: 1.13.0
|
||||
typescript: 4.0.2
|
||||
typescript: 3.9.7
|
||||
dev: true
|
||||
engines:
|
||||
node: '>= 6'
|
||||
@ -21520,13 +21493,13 @@ packages:
|
||||
/typedarray/0.0.6:
|
||||
resolution:
|
||||
integrity: sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
|
||||
/typescript/4.0.2:
|
||||
/typescript/3.9.7:
|
||||
dev: true
|
||||
engines:
|
||||
node: '>=4.2.0'
|
||||
hasBin: true
|
||||
resolution:
|
||||
integrity: sha512-e4ERvRV2wb+rRZ/IQeb3jm2VxBsirQLpQhdxplZ2MEzGvDkkMmPglecnNDfSUBivMjP93vRbngYYDQqQ/78bcQ==
|
||||
integrity: sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw==
|
||||
/uglify-js/3.10.2:
|
||||
engines:
|
||||
node: '>=0.8.0'
|
||||
|
@ -2,4 +2,4 @@ packages:
|
||||
- packages/*
|
||||
- packages/core/*
|
||||
- website
|
||||
- "!**/test/**"
|
||||
- '!**/test/**'
|
||||
|
@ -6,7 +6,11 @@
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"keywords": ["verdaccio", "sample", "scoped"],
|
||||
"keywords": [
|
||||
"verdaccio",
|
||||
"sample",
|
||||
"scoped"
|
||||
],
|
||||
"dependencies": {
|
||||
"verdaccio": "latest"
|
||||
},
|
||||
|
@ -10,16 +10,7 @@
|
||||
"strictNullChecks": true,
|
||||
"resolveJsonModule": true,
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"esModuleInterop": true,
|
||||
"esModuleInterop": true
|
||||
},
|
||||
"exclude": [
|
||||
"**/build",
|
||||
"node_modules",
|
||||
"**/node_modules",
|
||||
"**/coverage",
|
||||
"**/*.spec.ts",
|
||||
"**/test",
|
||||
"**/__tests__",
|
||||
"**/*.test.ts"
|
||||
]
|
||||
"exclude": ["**/build", "node_modules", "**/node_modules", "**/coverage", "**/*.spec.ts", "**/test", "**/__tests__", "**/*.test.ts"]
|
||||
}
|
||||
|
@ -2,6 +2,11 @@
|
||||
"env": {
|
||||
"browser": true
|
||||
},
|
||||
"settings": {
|
||||
"react": {
|
||||
"version": "detect"
|
||||
}
|
||||
},
|
||||
"rules": {
|
||||
"react/prop-types": 0
|
||||
}
|
||||
|
@ -1,8 +0,0 @@
|
||||
# Builded files
|
||||
/.cache/
|
||||
/public/
|
||||
/crowdin/
|
||||
/src/dictionaries/
|
||||
|
||||
# Node.js modules
|
||||
/node_modules/
|
@ -16,7 +16,7 @@ yarn develop
|
||||
```
|
||||
|
||||
Run [http://localhost:8000/](http://localhost:8000/)
|
||||
GraphQL [http://localhost:8000/___graphql](http://localhost:8000/___graphql)
|
||||
GraphQL [http://localhost:8000/\_\_\_graphql](http://localhost:8000/___graphql)
|
||||
|
||||
or build locally
|
||||
|
||||
|
@ -5,9 +5,9 @@ services:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "8000:8000"
|
||||
- "9929:9929"
|
||||
- "9230:9230"
|
||||
- '8000:8000'
|
||||
- '9929:9929'
|
||||
- '9230:9230'
|
||||
volumes:
|
||||
- /app/node_modules
|
||||
- .:/app
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: amazon
|
||||
title: "Amazon Web Services"
|
||||
title: 'Amazon Web Services'
|
||||
---
|
||||
|
||||
This document describes several approaches for deploying Verdaccio in the AWS cloud.
|
||||
@ -31,19 +31,21 @@ Elastic File System
|
||||
```
|
||||
|
||||
Architecture notes:
|
||||
* Deploy this stack into the region closest to your users for maximum performance.
|
||||
* We use an auto scaling group primarily for self-healing. The system requirements of Verdaccio are pretty low, so it's unlikely you'll need multiple instances to handle traffic load.
|
||||
* Because Amazon Linux 2 doesn't include Node, we run Verdaccio as a Docker image rather than natively on the instance. This is faster and more secure than relying on third party package sources for Node.
|
||||
* Elastic File System is cheap and stateful, and works across AZs. An alternative would be the [third-party S3 storage plugin](https://github.com/remitly/verdaccio-s3-storage).
|
||||
* For backup, use AWS Backup
|
||||
|
||||
- Deploy this stack into the region closest to your users for maximum performance.
|
||||
- We use an auto scaling group primarily for self-healing. The system requirements of Verdaccio are pretty low, so it's unlikely you'll need multiple instances to handle traffic load.
|
||||
- Because Amazon Linux 2 doesn't include Node, we run Verdaccio as a Docker image rather than natively on the instance. This is faster and more secure than relying on third party package sources for Node.
|
||||
- Elastic File System is cheap and stateful, and works across AZs. An alternative would be the [third-party S3 storage plugin](https://github.com/remitly/verdaccio-s3-storage).
|
||||
- For backup, use AWS Backup
|
||||
|
||||
Estimated monthly cost for a small installation (in us-east-1):
|
||||
* ALB (1 LCU average): $22.265/mo
|
||||
* EC2 (t3.nano): $3.796/mo
|
||||
* EBS (8gb): $0.80/mo
|
||||
* EFS (5gb): $1.5/mo
|
||||
* Data transfer: (10gb): $0.9/mo
|
||||
* **TOTAL:** Under $30/mo
|
||||
|
||||
- ALB (1 LCU average): \$22.265/mo
|
||||
- EC2 (t3.nano): \$3.796/mo
|
||||
- EBS (8gb): \$0.80/mo
|
||||
- EFS (5gb): \$1.5/mo
|
||||
- Data transfer: (10gb): \$0.9/mo
|
||||
- **TOTAL:** Under \$30/mo
|
||||
|
||||
## ECS
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: ansible
|
||||
title: "Ansible"
|
||||
title: 'Ansible'
|
||||
---
|
||||
|
||||
We have a customised solution for `verdaccio` in our organization.
|
||||
@ -11,6 +11,6 @@ We have a customised solution for `verdaccio` in our organization.
|
||||
|
||||
#### Other options
|
||||
|
||||
* Ansible role for Gentoo users: [jirutka/ansible-role-sinopia](https://github.com/jirutka/ansible-role-sinopia).
|
||||
* Ansible role for Ubuntu users: [jagregory/sinopia-ansible](https://github.com/jagregory/sinopia-ansible).
|
||||
* ansible-verdaccio-role [https://github.com/refinery29/ansible-verdaccio-role](https://github.com/refinery29/ansible-verdaccio-role)
|
||||
- Ansible role for Gentoo users: [jirutka/ansible-role-sinopia](https://github.com/jirutka/ansible-role-sinopia).
|
||||
- Ansible role for Ubuntu users: [jagregory/sinopia-ansible](https://github.com/jagregory/sinopia-ansible).
|
||||
- ansible-verdaccio-role [https://github.com/refinery29/ansible-verdaccio-role](https://github.com/refinery29/ansible-verdaccio-role)
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: articles
|
||||
title: "Articles"
|
||||
title: 'Articles'
|
||||
---
|
||||
|
||||
Below is a list of articles about Verdaccio. If you have written a blog post or tutorial that mentions Verdaccio, feel free to add it here!
|
||||
@ -9,83 +9,79 @@ Below is a list of articles about Verdaccio. If you have written a blog post or
|
||||
|
||||
## Core Team Articles
|
||||
|
||||
* [An Introduction to Verdaccio](https://medium.com/@jotadeveloper/an-introduction-to-verdaccio-f6c72e865425)
|
||||
* [Five use cases where a npm private proxy fits in your workflow](https://medium.com/@jotadeveloper/five-use-cases-where-a-npm-private-proxy-fits-in-your-workflow-632a81779c14)
|
||||
* [An Introduction to Verdaccio](https://medium.com/@jotadeveloper/an-introduction-to-verdaccio-f6c72e865425)
|
||||
* [NPM Registry for your organisation](https://medium.com/@ayusharma.in/npm-registry-for-your-organisation-aeb8ea76144)
|
||||
* [Verdaccio 3 released 🎉!!](https://medium.com/verdaccio/verdaccio-3-released-feb06ef38558)
|
||||
* [The crazy story of Verdaccio](https://medium.com/verdaccio/the-crazy-story-of-verdaccio-d35d924728bc)
|
||||
* [Verdaccio 4 alpha release 🚀](https://medium.com/verdaccio/verdaccio-4-alpha-release-400c7ed4884d)
|
||||
* [Verdaccio and deterministic lock files](https://medium.com/verdaccio/verdaccio-and-deterministic-lock-files-5339d82d611e)
|
||||
* [Setting up Verdaccio on DigitalOcean](https://medium.com/verdaccio/setting-up-verdaccio-on-digitalocean-61b5d08e4f0d)
|
||||
* [How I learned React Js and how you can…](https://medium.com/verdaccio/how-i-learned-react-js-and-how-you-can-8663f938426c)
|
||||
* [How did I fall in the open source world…and that was a nice thing!](https://medium.com/@priscilawebdev/how-do-i-fall-in-the-open-source-world-and-that-was-a-nice-thing-b0e85d05490d)
|
||||
|
||||
|
||||
- [An Introduction to Verdaccio](https://medium.com/@jotadeveloper/an-introduction-to-verdaccio-f6c72e865425)
|
||||
- [Five use cases where a npm private proxy fits in your workflow](https://medium.com/@jotadeveloper/five-use-cases-where-a-npm-private-proxy-fits-in-your-workflow-632a81779c14)
|
||||
- [An Introduction to Verdaccio](https://medium.com/@jotadeveloper/an-introduction-to-verdaccio-f6c72e865425)
|
||||
- [NPM Registry for your organisation](https://medium.com/@ayusharma.in/npm-registry-for-your-organisation-aeb8ea76144)
|
||||
- [Verdaccio 3 released 🎉!!](https://medium.com/verdaccio/verdaccio-3-released-feb06ef38558)
|
||||
- [The crazy story of Verdaccio](https://medium.com/verdaccio/the-crazy-story-of-verdaccio-d35d924728bc)
|
||||
- [Verdaccio 4 alpha release 🚀](https://medium.com/verdaccio/verdaccio-4-alpha-release-400c7ed4884d)
|
||||
- [Verdaccio and deterministic lock files](https://medium.com/verdaccio/verdaccio-and-deterministic-lock-files-5339d82d611e)
|
||||
- [Setting up Verdaccio on DigitalOcean](https://medium.com/verdaccio/setting-up-verdaccio-on-digitalocean-61b5d08e4f0d)
|
||||
- [How I learned React Js and how you can…](https://medium.com/verdaccio/how-i-learned-react-js-and-how-you-can-8663f938426c)
|
||||
- [How did I fall in the open source world…and that was a nice thing!](https://medium.com/@priscilawebdev/how-do-i-fall-in-the-open-source-world-and-that-was-a-nice-thing-b0e85d05490d)
|
||||
|
||||
# Articles / Blogs / Tutorials (by Language)
|
||||
|
||||
### Remarkable Articles
|
||||
|
||||
* [10 npm Security Best Practices](https://snyk.io/blog/ten-npm-security-best-practices/)
|
||||
* [Cover Your Apps While Still Using npm](https://nodesource.com/blog/cover-your-apps-while-still-using-npm/)
|
||||
* [Containerizing Node.js Applications with Docker](https://nodesource.com/blog/containerizing-node-js-applications-with-docker)
|
||||
* [Verdaccio - A lightweight npm proxy registry - Interview with Juan Picado](https://survivejs.com/blog/verdaccio-interview/)
|
||||
* [Host, Publish and Manage Private npm Packages with Verdaccio](https://www.sitepoint.com/private-npm-packages-verdaccio/)
|
||||
* [Free Private NPM with Verdaccio and AWS](https://medium.com/@odahcam/free-private-npm-with-verdaccio-and-aws-a88e6f0f4beb)
|
||||
* [Run your own Unity Package Server!](https://medium.com/@markushofer/run-your-own-unity-package-server-b4fe9995704e)
|
||||
* [Ways to have your private npm registry — and a final DIY solution](https://medium.com/engenharia-noalvo/ways-to-have-your-private-npm-registry-and-a-final-diy-solution-eed001a88e74)
|
||||
* [How to set up a free private npm registry… for Windows](https://medium.com/@Anderson7301/how-to-set-up-a-free-private-npm-registry-for-windows-f532c6a381ce)
|
||||
- [10 npm Security Best Practices](https://snyk.io/blog/ten-npm-security-best-practices/)
|
||||
- [Cover Your Apps While Still Using npm](https://nodesource.com/blog/cover-your-apps-while-still-using-npm/)
|
||||
- [Containerizing Node.js Applications with Docker](https://nodesource.com/blog/containerizing-node-js-applications-with-docker)
|
||||
- [Verdaccio - A lightweight npm proxy registry - Interview with Juan Picado](https://survivejs.com/blog/verdaccio-interview/)
|
||||
- [Host, Publish and Manage Private npm Packages with Verdaccio](https://www.sitepoint.com/private-npm-packages-verdaccio/)
|
||||
- [Free Private NPM with Verdaccio and AWS](https://medium.com/@odahcam/free-private-npm-with-verdaccio-and-aws-a88e6f0f4beb)
|
||||
- [Run your own Unity Package Server!](https://medium.com/@markushofer/run-your-own-unity-package-server-b4fe9995704e)
|
||||
- [Ways to have your private npm registry — and a final DIY solution](https://medium.com/engenharia-noalvo/ways-to-have-your-private-npm-registry-and-a-final-diy-solution-eed001a88e74)
|
||||
- [How to set up a free private npm registry… for Windows](https://medium.com/@Anderson7301/how-to-set-up-a-free-private-npm-registry-for-windows-f532c6a381ce)
|
||||
|
||||
### English
|
||||
|
||||
* [Testing your npm package before releasing it using Verdaccio + ngrok](https://medium.com/strapi/testing-your-npm-package-before-releasing-it-using-verdaccio-ngrok-28e2832c850a)
|
||||
* [Host your own private NPM repository with Verdaccio](https://medium.com/devopslinks/host-your-own-private-npm-repository-with-verdaccio-e8a3202b97c5)
|
||||
* [Local npm private registry with zero configuration](https://dev.to/iriskatastic/local-npm-private-registry-with-zero-configuration-njo)
|
||||
* [It depends. On the registry](https://blog.softwaremill.com/it-depends-on-the-registry-8fa9d9c5a3b)
|
||||
* [Host, Publish and Manage Private npm Packages with Verdaccio](http://allprowebdesigns.com/2017/01/host-publish-and-manage-private-npm-packages-with-verdaccio/)
|
||||
* [Setting Up a Private NPM Registry](https://gir.me.uk/posts/private-npm-registry.html)
|
||||
* [Testing NPM alpha / beta / rc packages](https://medium.com/@the1mills/testing-npm-alpha-beta-rc-packages-108b65eb03d2)
|
||||
* [Running a local npm repository on Windows Server using Verdaccio](https://robertwray.co.uk/blog/running-a-local-npm-repository-on-windows-server-using-verdaccio)
|
||||
* [Kubernetes private NPM registry](https://medium.com/@tompape/kubernetes-private-npm-registry-fb5f450fa611)
|
||||
* [Verdaccio examples for Google Cloud and K8s setups. https://github.com/papezt/verdaccio-examples](https://github.com/papezt/verdaccio-examples)
|
||||
* [Setting up a private NPM Registry Is Easier Than You Think](https://medium.com/@902Labs/setting-up-a-private-npm-registry-is-easier-than-you-think-455e1bd438f2)
|
||||
- [Testing your npm package before releasing it using Verdaccio + ngrok](https://medium.com/strapi/testing-your-npm-package-before-releasing-it-using-verdaccio-ngrok-28e2832c850a)
|
||||
- [Host your own private NPM repository with Verdaccio](https://medium.com/devopslinks/host-your-own-private-npm-repository-with-verdaccio-e8a3202b97c5)
|
||||
- [Local npm private registry with zero configuration](https://dev.to/iriskatastic/local-npm-private-registry-with-zero-configuration-njo)
|
||||
- [It depends. On the registry](https://blog.softwaremill.com/it-depends-on-the-registry-8fa9d9c5a3b)
|
||||
- [Host, Publish and Manage Private npm Packages with Verdaccio](http://allprowebdesigns.com/2017/01/host-publish-and-manage-private-npm-packages-with-verdaccio/)
|
||||
- [Setting Up a Private NPM Registry](https://gir.me.uk/posts/private-npm-registry.html)
|
||||
- [Testing NPM alpha / beta / rc packages](https://medium.com/@the1mills/testing-npm-alpha-beta-rc-packages-108b65eb03d2)
|
||||
- [Running a local npm repository on Windows Server using Verdaccio](https://robertwray.co.uk/blog/running-a-local-npm-repository-on-windows-server-using-verdaccio)
|
||||
- [Kubernetes private NPM registry](https://medium.com/@tompape/kubernetes-private-npm-registry-fb5f450fa611)
|
||||
- [Verdaccio examples for Google Cloud and K8s setups. https://github.com/papezt/verdaccio-examples](https://github.com/papezt/verdaccio-examples)
|
||||
- [Setting up a private NPM Registry Is Easier Than You Think](https://medium.com/@902Labs/setting-up-a-private-npm-registry-is-easier-than-you-think-455e1bd438f2)
|
||||
|
||||
### Japanese
|
||||
|
||||
* [Verdaccio でプライベート npm リポジトリをサクッと立てる](http://neos21.hatenablog.com/entry/2017/09/08/080000)
|
||||
* [verdaccioでprivateなnpmリポジトリを作成](https://qiita.com/mtokiwa/items/1bc22a2270e4408d4cdd)
|
||||
* [Version control of my own UnityPackage with Unity × Verdaccio / Unity×Verdaccioで自作UnityPackageをバージョン管理する](https://synamon.hatenablog.com/entry/2018/08/15/185607)
|
||||
- [Verdaccio でプライベート npm リポジトリをサクッと立てる](http://neos21.hatenablog.com/entry/2017/09/08/080000)
|
||||
- [verdaccio で private な npm リポジトリを作成](https://qiita.com/mtokiwa/items/1bc22a2270e4408d4cdd)
|
||||
- [Version control of my own UnityPackage with Unity × Verdaccio / Unity×Verdaccio で自作 UnityPackage をバージョン管理する](https://synamon.hatenablog.com/entry/2018/08/15/185607)
|
||||
|
||||
### Chinese
|
||||
|
||||
* [使用 verdaccio 搭建 npm 私有仓储](https://blog.sigoden.com/verdaccio--private-npm-registry/)
|
||||
* [Verdaccio:一个轻量级的私有npm代理注册表(sinopia fork)](https://www.ctolib.com/verdaccio-verdaccio.html)
|
||||
* [npm 私服工具verdaccio 安装配置试用](http://www.cnblogs.com/rongfengliang/p/7811838.html)
|
||||
* [搭建私有npm镜像](http://www.blackcater.win/2018/03/01/%E6%90%AD%E5%BB%BA%E7%A7%81%E6%9C%89npm%E9%95%9C%E5%83%8F/)
|
||||
* [搭建离线npm私库——verdaccio](https://www.jishux.com/plus/view-765581-1.html)
|
||||
* [[筆記] 建立自己的 npm, 以npm Orgs跟Verdaccio為例](https://medium.com/@ceall8650/%E7%AD%86%E8%A8%98-%E5%BB%BA%E7%AB%8B%E8%87%AA%E5%B7%B1%E7%9A%84-npm-%E4%BB%A5npm-orgs%E8%B7%9Fverdaccio%E7%82%BA%E4%BE%8B-cfb83b2307e6)
|
||||
|
||||
- [使用 verdaccio 搭建 npm 私有仓储](https://blog.sigoden.com/verdaccio--private-npm-registry/)
|
||||
- [Verdaccio:一个轻量级的私有 npm 代理注册表(sinopia fork)](https://www.ctolib.com/verdaccio-verdaccio.html)
|
||||
- [npm 私服工具 verdaccio 安装配置试用](http://www.cnblogs.com/rongfengliang/p/7811838.html)
|
||||
- [搭建私有 npm 镜像](http://www.blackcater.win/2018/03/01/%E6%90%AD%E5%BB%BA%E7%A7%81%E6%9C%89npm%E9%95%9C%E5%83%8F/)
|
||||
- [搭建离线 npm 私库——verdaccio](https://www.jishux.com/plus/view-765581-1.html)
|
||||
- [[筆記] 建立自己的 npm, 以 npm Orgs 跟 Verdaccio 為例](https://medium.com/@ceall8650/%E7%AD%86%E8%A8%98-%E5%BB%BA%E7%AB%8B%E8%87%AA%E5%B7%B1%E7%9A%84-npm-%E4%BB%A5npm-orgs%E8%B7%9Fverdaccio%E7%82%BA%E4%BE%8B-cfb83b2307e6)
|
||||
|
||||
### French
|
||||
|
||||
* [Installer un registre NPM](https://allons-y.io/wiki/installer-un-registre-npm)
|
||||
|
||||
- [Installer un registre NPM](https://allons-y.io/wiki/installer-un-registre-npm)
|
||||
|
||||
### Spanish
|
||||
* [NPM privado: instalar y configurar Verdaccio](https://www.todojs.com/npm-privado-con-verdaccio/)
|
||||
* [NPM privado: 5 razones y 7 recomendaciones para utilizarlo](https://www.todojs.com/npm-privado-5-razones-y-7-recomendaciones/)
|
||||
|
||||
- [NPM privado: instalar y configurar Verdaccio](https://www.todojs.com/npm-privado-con-verdaccio/)
|
||||
- [NPM privado: 5 razones y 7 recomendaciones para utilizarlo](https://www.todojs.com/npm-privado-5-razones-y-7-recomendaciones/)
|
||||
|
||||
### German
|
||||
|
||||
* [Struktur für große Angular-Anwendungen: Microservices, Module, MonoRepo?](https://jaxenter.de/struktur-angular-anwendungen-67467)
|
||||
* [Angular in einer Microservices-Welt](https://jaxenter.de/angular-microservices-66445)
|
||||
* [Privates NPM Repository mit Verdaccio (SSL & Docker)](https://blog.zotorn.de/privates-npm-repository-mit-verdaccio-ssl-docker-1/)
|
||||
- [Struktur für große Angular-Anwendungen: Microservices, Module, MonoRepo?](https://jaxenter.de/struktur-angular-anwendungen-67467)
|
||||
- [Angular in einer Microservices-Welt](https://jaxenter.de/angular-microservices-66445)
|
||||
- [Privates NPM Repository mit Verdaccio (SSL & Docker)](https://blog.zotorn.de/privates-npm-repository-mit-verdaccio-ssl-docker-1/)
|
||||
|
||||
## Slides
|
||||
|
||||
* [Introduction to Verdaccio VueJS Meetup 2018](https://www.slideshare.net/juancarlospicado/introduction-to-verdaccio)
|
||||
* [Introduccion Verdaccio Vienna JS Meetup 2019](https://docs.google.com/presentation/d/1eam_OtXCQh5IVYyia2GHhxVD8tb37B0yIadVa8wxQSk/edit?usp=sharing)
|
||||
* [Cover Your Apps While Still Using npm](https://www.slideshare.net/TierneyCoren/cover-your-apps-while-still-using-npm)
|
||||
* [Unity 2018-2019を見据えたDeNAのUnity開発のこれから [DeNA TechCon 2019]](https://www.slideshare.net/dena_tech/unity-20182019denaunity-dena-techcon-2019)
|
||||
- [Introduction to Verdaccio VueJS Meetup 2018](https://www.slideshare.net/juancarlospicado/introduction-to-verdaccio)
|
||||
- [Introduccion Verdaccio Vienna JS Meetup 2019](https://docs.google.com/presentation/d/1eam_OtXCQh5IVYyia2GHhxVD8tb37B0yIadVa8wxQSk/edit?usp=sharing)
|
||||
- [Cover Your Apps While Still Using npm](https://www.slideshare.net/TierneyCoren/cover-your-apps-while-still-using-npm)
|
||||
- [Unity 2018-2019 を見据えた DeNA の Unity 開発のこれから [DeNA TechCon 2019]](https://www.slideshare.net/dena_tech/unity-20182019denaunity-dena-techcon-2019)
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: authentification
|
||||
title: "Authentification"
|
||||
title: 'Authentification'
|
||||
---
|
||||
|
||||
The authentification is tied to the auth [plugin](plugins.md) you are using. The package restrictions also is handled by the [Package Access](packages.md).
|
||||
@ -29,10 +29,10 @@ registry=http://localhost:5555/
|
||||
Eg:
|
||||
|
||||
```yaml
|
||||
'my-company-*':
|
||||
access: $anonymous
|
||||
publish: $anonymous
|
||||
proxy: npmjs
|
||||
'my-company-*':
|
||||
access: $anonymous
|
||||
publish: $anonymous
|
||||
proxy: npmjs
|
||||
```
|
||||
|
||||
As is described [on issue #212](https://github.com/verdaccio/verdaccio/issues/212#issuecomment-308578500) until `npm@5.3.0` and all minor releases **won't allow you publish without a token**.
|
||||
@ -41,11 +41,11 @@ As is described [on issue #212](https://github.com/verdaccio/verdaccio/issues/21
|
||||
|
||||
### The meaning of `$all` and `$anonymous`
|
||||
|
||||
As you know *Verdaccio* uses the `htpasswd` by default. That plugin does not implement the methods `allow_access`, `allow_publish` and `allow_unpublish`.
|
||||
Thus, *Verdaccio* will handle that in the following way:
|
||||
As you know _Verdaccio_ uses the `htpasswd` by default. That plugin does not implement the methods `allow_access`, `allow_publish` and `allow_unpublish`.
|
||||
Thus, _Verdaccio_ will handle that in the following way:
|
||||
|
||||
* If you are not logged in (you are anonymous), `$all` and `$anonymous` means exactly the same.
|
||||
* If you are logged in, `$anonymous` won't be part of your groups and `$all` will match any logged user. A new group `$authenticated` will be added to the list.
|
||||
- If you are not logged in (you are anonymous), `$all` and `$anonymous` means exactly the same.
|
||||
- If you are logged in, `$anonymous` won't be part of your groups and `$all` will match any logged user. A new group `$authenticated` will be added to the list.
|
||||
|
||||
As a takeaway, `$all` **will match all users, independently whether is logged or not**.
|
||||
|
||||
@ -54,8 +54,8 @@ As a takeaway, `$all` **will match all users, independently whether is logged or
|
||||
|
||||
Let's recap:
|
||||
|
||||
* **logged**: `$all`, `$authenticated`, + groups added by the plugin
|
||||
* **anonymous (logged out)**: `$all` and `$anonymous`.
|
||||
- **logged**: `$all`, `$authenticated`, + groups added by the plugin
|
||||
- **anonymous (logged out)**: `$all` and `$anonymous`.
|
||||
|
||||
## Default htpasswd
|
||||
|
||||
@ -71,9 +71,9 @@ auth:
|
||||
#max_users: 1000
|
||||
```
|
||||
|
||||
Property | Type | Required | Example | Support | Description
|
||||
--- | --- | --- | --- | --- | ---
|
||||
file | string | Yes | ./htpasswd | all | file that host the encrypted credentials
|
||||
max_users | number | No | 1000 | all | set limit of users
|
||||
| Property | Type | Required | Example | Support | Description |
|
||||
| --------- | ------ | -------- | ---------- | ------- | ---------------------------------------- |
|
||||
| file | string | Yes | ./htpasswd | all | file that host the encrypted credentials |
|
||||
| max_users | number | No | 1000 | all | set limit of users |
|
||||
|
||||
In case to decide do not allow user to login, you can set `max_users: -1`.
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: azure
|
||||
title: "Windows Azure"
|
||||
title: 'Windows Azure'
|
||||
---
|
||||
|
||||
dsadsa
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user