Replies: 4 comments 14 replies
-
Yeah some definition API stability would I think be a big one. We could of course continue to evolve the system over time, with 2.x and 3.x and 4.x etc., but going from 0.x to 1.x we really need to have a better strategy around backwards compatibility than "things might break at any time" (even if in practice they usually don't) There's also the question of what compatibility guarantees we want to follow. For my other projects (Ammonite, FastParse, etc.) I've gone with a model where a project of version x.y.z means:
This conventions is significantly less strict than full Semantic Versioning, but I think has served the other projects well and could be considered for Mill as well |
Beta Was this translation helpful? Give feedback.
-
@lefou Probably not the answer you are looking for but a "cookbook" for Mill would be nice. It will save on repeatedly answering the same/similar questions. I think that it could also double as an API check. By using something like My 2 cents :-) I would also like to acknowledge the great work both @lihaoyi and you have done. |
Beta Was this translation helpful? Give feedback.
-
One thing I'd absolutely love to see done before a 1.0 release (from my own selfish desire) is to see this taken across the board #899. The current BSP support that Mill has is very IntelliJ focused and is still sort of un-usable for Metals users, primarily because of these two issues:
I know you have a pretty large refactoring started in order to try to better support |
Beta Was this translation helpful? Give feedback.
-
Maybe a cleanly running CI and a contributor's guide would help? Currently getting started hacking on Mill codebase is quite frustrating. |
Beta Was this translation helpful? Give feedback.
-
I guess mill is pretty stable to use it for larger projects on an everyday basis. So, what's holding us back to just release a 1.0?
I'd like to collect some feedback about what you think is missing?
Although I have a rather long personal wish list, most of these wishes are not holding back a 1.0 except maybe one: We need a stable API! And to ensure, that our API is stable, we need some mechanism to detect when we broke it. After we have this, we will be able to evolve further, following semantic versioning. We may raise the version as we go, but keep strong API guarantees for micro/patch version releases.
Beta Was this translation helpful? Give feedback.
All reactions