1
0
mirror of https://github.com/verdaccio/verdaccio.git synced 2024-11-13 03:35:52 +01:00
verdaccio/.changeset/bright-poems-obey.md
Juan Picado a828271d63
refactor: fetch package endpoint and basic integration fastify (#2750)
* refactor: download manifest endpoint and integrate fastify

* fix file not found issue

* add temporary migration method to storage memory

* sanitize fs methods

* restore tests

* chore: restore sanitilize

will do later

* add tests

* add changeset

* lint

* trying something test

* chore: lint

* restore code

* fix e2e

* fix lint
2021-12-12 18:00:19 +01:00

1.1 KiB

@verdaccio/api @verdaccio/fastify-migration @verdaccio/tarball @verdaccio/local-storage verdaccio-memory @verdaccio/server @verdaccio/store @verdaccio/utils
major major major major major major major major

refactor: download manifest endpoint and integrate fastify

Much simpler API for fetching a package

 const manifest = await storage.getPackageNext({
      name,
      uplinksLook: true,
      req,
      version: queryVersion,
      requestOptions,
 });

not perfect, the req still is being passed to the proxy (this has to be refactored at proxy package) and then removed from here, in proxy we pass the request instance to the request library.

Details

  • async/await sugar for getPackage()
  • Improve and reuse code between current implementation and new fastify endpoint (add scaffolding for request manifest)
  • Improve performance
  • Add new tests

Breaking changes

All storage plugins will stop to work since the storage uses getPackageNext method which is Promise based, I won't replace this now because will force me to update all plugins, I'll follow up in another PR. Currently will throw http 500