Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What is the roadmap towards 1.0.0? #944

Closed
voxpelli opened this issue Mar 11, 2014 · 3 comments
Closed

What is the roadmap towards 1.0.0? #944

voxpelli opened this issue Mar 11, 2014 · 3 comments
Labels

Comments

@voxpelli
Copy link

As a follow up to #940 (thanks for the quick fix!) and the accidental issues that arose there due to some liberal dependencies in karma and related packages along with some breaking updates in new versions I'm wondering what the plan is for getting to a 1.0.0 release?

The Semantic Versioning specification, http://semver.org/, that all npm modules should use, defines all 0.y.z releases as having an unstable public API and all new versions to therefor possibly be incompatible. That makes issues like the recent one a bit tough to properly solve.

About a 1.0.0 version it says:

How do I know when to release 1.0.0?

If your software is being used in production, it should probably already be 1.0.0. If you have a stable API on which users have come to depend, you should be 1.0.0. If you're worrying a lot about backwards compatibility, you should probably already be 1.0.0.

To me it feels like karma is becoming such a widely used project that backwards compatibility is very much a concern and that it is very much a software used in production – as showed by mine and others reaction on #940 and some of the slight panic shown when CI-environments and such all of the sudden began to complain.

With a 1.0.0 release the API that people already perceive as stable would officially become so from a npm and Semantic Versioning perspective as well and one can easily define the need for a compatible version of it in ones dependencies. That is what npm now does by default on a --save or --save-dev since some time ago by using the new ^ version range – like ^1.0.0 (see https://github.com/isaacs/node-semver#ranges) – and would be great if such an important project as karma would play along well with that.

@vojtajina
Copy link
Contributor

Thanks for bringing this up @voxpelli.

My plans, stuff that I wanna do before 1.0:

  • better APIs (more strict) for plugins (currently this is very powerful, but also very fragile)
  • parallelization

Now, about breaking changes. I do care about it. This is a tough problem to solve. Semver won't solve it. Semver wouldn't solve #940 either.

I'm gonna write down my thoughts (including concrete steps how to improve the stability of Karma). Will post it here and then, we can decide what to do.

@vojtajina
Copy link
Contributor

All right, here is the document with some thoughts. Everybody should be allowed to comment...
https://docs.google.com/document/d/1XMg9CYTsu8NIGBFyXtQS8q0KaWdvldhjLsIcEBOitjo/edit?usp=sharing

@dignifiedquire
Copy link
Member

Closing in favor of #1406

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants