Friday, November 2, 2018

How to manage packages in your OSS projects?

I made a commitment that every time I release a new version of my open source .Net Core CMS between freelance gigs, I would add a new data connector until i got to 5. I started with LiteDB, then added Postgres, and looking at adding Mongo or SQLLite next.

The package right now is not huge, but the support for Postgres increased it a good bit because of extra tooling to interact with it (Marten) and I could see another bump up for MongoDB of about 20-30%. Does it make sense to have it all in one big CMS package, or do like I have seen before of having different packages like:

  • [SpoonCMS.Core]
  • SpoonCMS.LiteDB
  • SpoonCMS.Postgres
  • SpoonCMS.MongoDB
  • etc...

And having all packages depend on the SpoonCMS.Core, but you pick the Data flavor you prefer? That seems cleaner, but I know I hate having my dependency list cluttered (even if for one more dependency) and it adds a little more overhead for the project maintenance. Do people care about the size of these packages that much and prefer the simplicity?

What have you guys done as a project owner, and what would you prefer as a user?

How to manage packages in your OSS projects? Click here
  • Blogger Comment
  • Facebook Comment

0 comments:

Post a Comment

The webdev Team