dimanche 28 juillet 2019

When should a module be packaged into a versioned library?

When is it appropriate to take a module (or some unit of software) and convert it into a versioned package?

At my current company, we have a large monolithic application. Specifically, on the front-end we have many es6 modules that are either cross-cutting concerns, business logic, or helpful utilities. These modules are currently placed in a shared/ directory where they get imported into specific pages as needed.

My director has asked me to convert these modules into versioned npm packages that are rigorously tested. This led me down the rabbit hole of wondering when is it, in general, appropriate to take a piece of code and share it as a versioned library.

I can think of potential harm it might cause by doing this: one module contains our form validation logic. Do we really want to allow some part of the application to use v1 of email validation logic, and some other part to use v2?

Aucun commentaire:

Enregistrer un commentaire