ppetzold / nestjs-paginate

Pagination and filtering helper method for TypeORM repositories or query builders using Nest.js framework :book::paperclip:
MIT License
443 stars 99 forks source link

Dependency policy #908

Open Helveg opened 6 months ago

Helveg commented 6 months ago

The Renovate Bot seems to update our peer dependencies rather aggressively. peerDependencies should be as relaxed as possible, even spanning multiple major versions like: "@nestjs/common": "7 || 8 || 9 || 10". Peer dependencies reflect compatibility with a peer package. Since we are a NestJS and TypeORM plugin, I believe we should strive to keep every version compatible with as many supported major versions as possible, as not to over-restrict users of nestjs-paginate to the very latest versions of our peer deps.

We seem to be coupled to express and fastify as well for a couple of cases, there too relaxing the constraints would increase our compatibility.

I would strive for a compatibility policy like "we'll aim to support the last 2 major versions of Nest, express and fastify, and the last 3 minor versions of typeorm at the time of nestjs-paginate release"

ppetzold commented 6 months ago

Good point. Renovate is ignoring peer deps now - but I only set support all current majors (can be lowered if needed). Typeorm is still set to ^0.3.17 as it doesn't follow semver 🤔

https://github.com/ppetzold/nestjs-paginate/commit/57ea1a52da5e8986605b626e50870439a5fe3efe