1
0
mirror of https://github.com/verdaccio/verdaccio.git synced 2024-11-13 03:35:52 +01:00
verdaccio/.changeset/dry-planes-tap.md
Juan Picado 00d1d2a179
chore: env variable for launch fastify (#3295)
* chore: relocate package server

* chore: relocate server packages

* Update ci.yml

* rename packages

* rename package

* chore: refactor fastify endpoints

* chore: fix types requests

* fix warnings

* chore: refactor endpoints

* refactor launch fastify

* Update package.json

* chore: update deps

* Create green-yaks-divide.md
2022-08-08 07:14:23 +02:00

1.9 KiB

@verdaccio/api @verdaccio/auth @verdaccio/cli @verdaccio/config @verdaccio/commons-api @verdaccio/core @verdaccio/local-storage @verdaccio/server-fastify @verdaccio/streams @verdaccio/types @verdaccio/hooks verdaccio-audit verdaccio-aws-s3-storage verdaccio-google-cloud verdaccio-memory @verdaccio/ui-theme @verdaccio/proxy @verdaccio/server @verdaccio/store @verdaccio/eslint-config @verdaccio/dev-types @verdaccio/utils verdaccio @verdaccio/web
major major major major major major major major major major major major major major major major major major major major major major major major

refactor: search v1 endpoint and local-database

  • refactor search api v1 endpoint, improve performance
  • remove usage of async dependency https://github.com/verdaccio/verdaccio/issues/1225
  • refactor method storage class
  • create new module core to reduce the ammount of modules with utilities
  • use undici instead node-fetch
  • use fastify instead express for functional test

Breaking changes

  • plugin storage API changes
  • remove old search endpoint (return 404)
  • filter local private packages at plugin level

The storage api changes for methods get, add, remove as promise base. The search methods also changes and recieves a query object that contains all query params from the client.

export interface IPluginStorage<T> extends IPlugin {
  add(name: string): Promise<void>;
  remove(name: string): Promise<void>;
  get(): Promise<any>;
  init(): Promise<void>;
  getSecret(): Promise<string>;
  setSecret(secret: string): Promise<any>;
  getPackageStorage(packageInfo: string): IPackageStorage;
  search(query: searchUtils.SearchQuery): Promise<searchUtils.SearchItem[]>;
  saveToken(token: Token): Promise<any>;
  deleteToken(user: string, tokenKey: string): Promise<any>;
  readTokens(filter: TokenFilter): Promise<Token[]>;
}