mirror of
https://github.com/verdaccio/verdaccio.git
synced 2024-11-13 03:35:52 +01:00
6b6eaf6b67
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
281 lines
9.2 KiB
Markdown
281 lines
9.2 KiB
Markdown
# @verdaccio/web
|
|
|
|
## 5.0.0-alpha.7
|
|
|
|
### Major Changes
|
|
|
|
- e0b7c4ff: feat: flexible user interface generator
|
|
|
|
**breaking change**
|
|
|
|
The UI does not provide a pre-generated `index.html`, instead the server generates
|
|
the body of the web application based in few parameters:
|
|
|
|
- Webpack manifest
|
|
- User configuration details
|
|
|
|
It allows inject html tags, javascript and new CSS to make the page even more flexible.
|
|
|
|
### Web new properties for dynamic template
|
|
|
|
The new set of properties are made in order allow inject _html_ and _JavaScript_ scripts within the template. This
|
|
might be useful for scenarios like Google Analytics scripts or custom html in any part of the body.
|
|
|
|
- metaScripts: html injected before close the `head` element.
|
|
- scriptsBodyAfter: html injected before close the `body` element.
|
|
- bodyAfter: html injected after _verdaccio_ JS scripts.
|
|
|
|
```yaml
|
|
web:
|
|
scriptsBodyAfter:
|
|
- '<script type="text/javascript" src="https://my.company.com/customJS.min.js"></script>'
|
|
metaScripts:
|
|
- '<script type="text/javascript" src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>'
|
|
- '<script type="text/javascript" src="https://browser.sentry-cdn.com/5.15.5/bundle.min.js"></script>'
|
|
- '<meta name="robots" content="noindex" />'
|
|
bodyBefore:
|
|
- '<div id="myId">html before webpack scripts</div>'
|
|
bodyAfter:
|
|
- '<div id="myId">html after webpack scripts</div>'
|
|
```
|
|
|
|
### UI plugin changes
|
|
|
|
- `index.html` is not longer used, template is generated based on `manifest.json` generated by webpack.
|
|
- Plugin must export:
|
|
- the manifest file.
|
|
- the manifest files: matcher (array of id that generates required scripts to run the ui)
|
|
- static path: The absolute path where the files are located in `node_modules`
|
|
|
|
```
|
|
exports.staticPath = path.join(__dirname, 'static');
|
|
exports.manifest = require('./static/manifest.json');
|
|
exports.manifestFiles = {
|
|
js: ['runtime.js', 'vendors.js', 'main.js'],
|
|
css: [],
|
|
ico: 'favicon.ico',
|
|
};
|
|
```
|
|
|
|
- Remove font files
|
|
- CSS is inline on JS (this will help with #2046)
|
|
|
|
### Docker v5 Examples
|
|
|
|
- Move all current examples to v4 folder
|
|
- Remove any v3 example
|
|
- Create v5 folder with Nginx Example
|
|
|
|
#### Related tickets
|
|
|
|
https://github.com/verdaccio/verdaccio/issues/1523
|
|
https://github.com/verdaccio/verdaccio/issues/1297
|
|
https://github.com/verdaccio/verdaccio/issues/1593
|
|
https://github.com/verdaccio/verdaccio/discussions/1539
|
|
https://github.com/verdaccio/website/issues/264
|
|
https://github.com/verdaccio/verdaccio/issues/1565
|
|
https://github.com/verdaccio/verdaccio/issues/1251
|
|
https://github.com/verdaccio/verdaccio/issues/2029
|
|
https://github.com/verdaccio/docker-examples/issues/29
|
|
|
|
## 5.0.0-alpha.6
|
|
|
|
### Patch Changes
|
|
|
|
- @verdaccio/auth@5.0.0-alpha.5
|
|
- @verdaccio/middleware@5.0.0-alpha.5
|
|
|
|
## 5.0.0-alpha.5
|
|
|
|
### Patch Changes
|
|
|
|
- Updated dependencies [f8a50baa]
|
|
- @verdaccio/auth@5.0.0-alpha.4
|
|
- @verdaccio/middleware@5.0.0-alpha.4
|
|
|
|
## 5.0.0-alpha.4
|
|
|
|
### Patch Changes
|
|
|
|
- fecbb9be: chore: add release step to private regisry on merge changeset pr
|
|
- Updated dependencies [fecbb9be]
|
|
- @verdaccio/auth@5.0.0-alpha.3
|
|
- @verdaccio/config@5.0.0-alpha.3
|
|
- @verdaccio/commons-api@10.0.0-alpha.3
|
|
- @verdaccio/readme@10.0.0-alpha.3
|
|
- @verdaccio/loaders@5.0.0-alpha.3
|
|
- @verdaccio/logger@5.0.0-alpha.3
|
|
- @verdaccio/middleware@5.0.0-alpha.3
|
|
- @verdaccio/store@5.0.0-alpha.4
|
|
- @verdaccio/utils@5.0.0-alpha.3
|
|
|
|
## 5.0.0-alpha.3
|
|
|
|
### Minor Changes
|
|
|
|
- 54c58d1e: feat: add server rate limit protection to all request
|
|
|
|
To modify custom values, use the server settings property.
|
|
|
|
```markdown
|
|
server:
|
|
|
|
## https://www.npmjs.com/package/express-rate-limit#configuration-options
|
|
|
|
rateLimit:
|
|
windowMs: 1000
|
|
max: 10000
|
|
```
|
|
|
|
The values are intended to be high, if you want to improve security of your server consider
|
|
using different values.
|
|
|
|
### Patch Changes
|
|
|
|
- Updated dependencies [54c58d1e]
|
|
- @verdaccio/auth@5.0.0-alpha.2
|
|
- @verdaccio/config@5.0.0-alpha.2
|
|
- @verdaccio/commons-api@10.0.0-alpha.2
|
|
- @verdaccio/readme@10.0.0-alpha.2
|
|
- @verdaccio/loaders@5.0.0-alpha.2
|
|
- @verdaccio/logger@5.0.0-alpha.2
|
|
- @verdaccio/middleware@5.0.0-alpha.2
|
|
- @verdaccio/store@5.0.0-alpha.3
|
|
- @verdaccio/utils@5.0.0-alpha.2
|
|
|
|
## 5.0.0-alpha.2
|
|
|
|
### Patch Changes
|
|
|
|
- @verdaccio/store@5.0.0-alpha.2
|
|
|
|
## 5.0.0-alpha.1
|
|
|
|
### Major Changes
|
|
|
|
- d87fa026: feat!: experiments config renamed to flags
|
|
|
|
- The `experiments` configuration is renamed to `flags`. The functionality is exactly the same.
|
|
|
|
```js
|
|
flags: token: false;
|
|
search: false;
|
|
```
|
|
|
|
- The `self_path` property from the config file is being removed in favor of `config_file` full path.
|
|
- Refactor `config` module, better types and utilities
|
|
|
|
- da1ee9c8: - Replace signature handler for legacy tokens by removing deprecated crypto.createDecipher by createCipheriv
|
|
|
|
- Introduce environment variables for legacy tokens
|
|
|
|
### Code Improvements
|
|
|
|
- Add debug library for improve developer experience
|
|
|
|
### Breaking change
|
|
|
|
- The new signature invalidates all previous tokens generated by Verdaccio 4 or previous versions.
|
|
- The secret key must have 32 characters long.
|
|
|
|
### New environment variables
|
|
|
|
- `VERDACCIO_LEGACY_ALGORITHM`: Allows to define the specific algorithm for the token signature which by default is `aes-256-ctr`
|
|
- `VERDACCIO_LEGACY_ENCRYPTION_KEY`: By default, the token stores in the database, but using this variable allows to get it from memory
|
|
|
|
### Minor Changes
|
|
|
|
- 26b494cb: feat: add typescript project references settings
|
|
|
|
Reading https://ebaytech.berlin/optimizing-multi-package-apps-with-typescript-project-references-d5c57a3b4440 I realized I can use project references to solve the issue to pre-compile modules on develop mode.
|
|
|
|
It allows to navigate (IDE) trough the packages without need compile the packages.
|
|
|
|
Add two `tsconfig`, one using the previous existing configuration that is able to produce declaration files (`tsconfig.build`) and a new one `tsconfig` which is enables [_projects references_](https://www.typescriptlang.org/docs/handbook/project-references.html).
|
|
|
|
### Patch Changes
|
|
|
|
- 42024c34: Remove @ts-ignore and any in packages/web/src/endpoint/package.ts
|
|
- b57b4338: Enable prerelease mode with **changesets**
|
|
- Updated dependencies [d87fa026]
|
|
- Updated dependencies [42024c34]
|
|
- Updated dependencies [da1ee9c8]
|
|
- Updated dependencies [26b494cb]
|
|
- Updated dependencies [b57b4338]
|
|
- Updated dependencies [add778d5]
|
|
- Updated dependencies [31af0164]
|
|
- @verdaccio/auth@5.0.0-alpha.1
|
|
- @verdaccio/config@5.0.0-alpha.1
|
|
- @verdaccio/commons-api@10.0.0-alpha.1
|
|
- @verdaccio/readme@10.0.0-alpha.1
|
|
- @verdaccio/loaders@5.0.0-alpha.1
|
|
- @verdaccio/logger@5.0.0-alpha.1
|
|
- @verdaccio/middleware@5.0.0-alpha.1
|
|
- @verdaccio/store@5.0.0-alpha.1
|
|
- @verdaccio/utils@5.0.0-alpha.1
|
|
|
|
## 5.0.0-alpha.1
|
|
|
|
### Major Changes
|
|
|
|
- d87fa0268: feat!: experiments config renamed to flags
|
|
|
|
- The `experiments` configuration is renamed to `flags`. The functionality is exactly the same.
|
|
|
|
```js
|
|
flags: token: false;
|
|
search: false;
|
|
```
|
|
|
|
- The `self_path` property from the config file is being removed in favor of `config_file` full path.
|
|
- Refactor `config` module, better types and utilities
|
|
|
|
- da1ee9c82: - Replace signature handler for legacy tokens by removing deprecated crypto.createDecipher by createCipheriv
|
|
|
|
- Introduce environment variables for legacy tokens
|
|
|
|
### Code Improvements
|
|
|
|
- Add debug library for improve developer experience
|
|
|
|
### Breaking change
|
|
|
|
- The new signature invalidates all previous tokens generated by Verdaccio 4 or previous versions.
|
|
- The secret key must have 32 characters long.
|
|
|
|
### New environment variables
|
|
|
|
- `VERDACCIO_LEGACY_ALGORITHM`: Allows to define the specific algorithm for the token signature which by default is `aes-256-ctr`
|
|
- `VERDACCIO_LEGACY_ENCRYPTION_KEY`: By default, the token stores in the database, but using this variable allows to get it from memory
|
|
|
|
### Minor Changes
|
|
|
|
- 26b494cbd: feat: add typescript project references settings
|
|
|
|
Reading https://ebaytech.berlin/optimizing-multi-package-apps-with-typescript-project-references-d5c57a3b4440 I realized I can use project references to solve the issue to pre-compile modules on develop mode.
|
|
|
|
It allows to navigate (IDE) trough the packages without need compile the packages.
|
|
|
|
Add two `tsconfig`, one using the previous existing configuration that is able to produce declaration files (`tsconfig.build`) and a new one `tsconfig` which is enables [_projects references_](https://www.typescriptlang.org/docs/handbook/project-references.html).
|
|
|
|
### Patch Changes
|
|
|
|
- 42024c346: Remove @ts-ignore and any in packages/web/src/endpoint/package.ts
|
|
- b57b43388: Enable prerelease mode with **changesets**
|
|
- Updated dependencies [d87fa0268]
|
|
- Updated dependencies [42024c346]
|
|
- Updated dependencies [da1ee9c82]
|
|
- Updated dependencies [26b494cbd]
|
|
- Updated dependencies [b57b43388]
|
|
- Updated dependencies [add778d55]
|
|
- Updated dependencies [31af01641]
|
|
- @verdaccio/auth@5.0.0-alpha.1
|
|
- @verdaccio/config@5.0.0-alpha.1
|
|
- @verdaccio/commons-api@10.0.0-alpha.0
|
|
- @verdaccio/readme@10.0.0-alpha.0
|
|
- @verdaccio/loaders@5.0.0-alpha.1
|
|
- @verdaccio/logger@5.0.0-alpha.1
|
|
- @verdaccio/middleware@5.0.0-alpha.1
|
|
- @verdaccio/store@5.0.0-alpha.1
|
|
- @verdaccio/utils@5.0.0-alpha.1
|