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

Roadmap to v1.0? #1328

Closed
enyo opened this issue Jan 20, 2025 · 3 comments
Closed

Roadmap to v1.0? #1328

enyo opened this issue Jan 20, 2025 · 3 comments
Labels
discussion Let's talk about design, goals and other stuff related to Kysely's development

Comments

@enyo
Copy link

enyo commented Jan 20, 2025

Thanks for this excellent library. We are evaluating whether to use this library for our next project, but are a bit hesitant because it hasn't reached v1.0 yet. What are the reasons for kysely not being v1.0 yet, and is there are roadmap who you expect it to reach a stable version?

Thanks!

@igalklebanov
Copy link
Member

igalklebanov commented Jan 20, 2025

Hey 👋

This has no meaning here.

  • We follow Semantic Versioning. Minor versions are major versions. Even if they might only include backwards compatible API changes.
  • Kysely is pretty stable at this point.
  • We spread breaking changes / deprecations across multiple minors, usually.
  • Minor versions are not that frequently released.
  • Kysely is being used by plenty of companies in production. Including Bluesky, serving millions of users.
  • There is no roadmap.
  • Major >0 usually brings a library's velocity and innovation down. These big bang releases are scary to teams.
  • Your package manager protects you from downloading a new minor in case major =0, the same way it would protect you from downloading a new major in case major >0.
  • Kysely is very tested. Different runtimes, typings, type benchmarks (WIP), minimum TypeScript version protection, etc.
  • We use pkg.pr.new and version branches, so you can check/try next minors and provide feedback before they're released. v0.28 #1278
  • Major N>0 doesn't mean major N+1 won't completely change what the library is/does. Vue, Python, etc.

@igalklebanov igalklebanov added the discussion Let's talk about design, goals and other stuff related to Kysely's development label Jan 20, 2025
@igalklebanov
Copy link
Member

Why is v1.0 important to you? Did I answer your concerns? Any other questions?

@enyo
Copy link
Author

enyo commented Jan 23, 2025

Thanks for your thorough reply @igalklebanov . That is good enough for me!

The reason I'm asking is because this is in the SemVer spec:

  1. Major version zero (0.y.z) is for initial development. Anything MAY change at any time. The public API SHOULD NOT be considered stable.

  2. Version 1.0.0 defines the public API. The way in which the version number is incremented after this release is dependent on this public API and how it changes.

This is why I'm usually hesitant to use libraries below 1.0 since it signals to me that the developer(s) are still in the "trial" / initial development phase.

But as I said, if this is the way you are versioning Kysely that's absolutely fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Let's talk about design, goals and other stuff related to Kysely's development
Projects
None yet
Development

No branches or pull requests

2 participants