Road to v3.0.0 #2754
Replies: 13 comments 36 replies
-
@StephanHoyer that sounds excellent! I ❤️ all your point items. What do you have in mind to rework the router? I am particularly interested in this. Thank you for your efforts! |
Beta Was this translation helpful? Give feedback.
-
@StephanHoyer sounds good... If we're eliminating POJOs, can we eliminate |
Beta Was this translation helpful? Give feedback.
-
I read the issue about replacing All the rest sounds cool! |
Beta Was this translation helpful? Give feedback.
-
Just echoing @webketje - I feel like v3 should (similar to v2) not introduce or alter too many APIs. But just remove API's to make it clearer what the community thinks is idiomatic. E.g. removing classes/pojos/oninit. I'm ok with removing stream (even though I wish we'd actually lean into streams more ). But having it as a separate module that is so similar to flyd sort of defeats the point of having it at all. I think the router can be cleaned up, but if we took @foxdonut's approach and just exposed primitives, we could keep the current router API there for v3 and let people use the low level primitives with custom routers for e.g. meiosis. And then just improving the release process and the docs, moving to esm as source, removing the bundler etc, all of that can be still v2.x There hasn't been much complaints or demands to change the lifecycle, but there has been frequent confusion in gitter from people reaching for classes/oninit/pojos, followed shortly after by @CreaturesInUnitards saying to use a closure, so we should just have a release that makes it harder for newcomers to get confused, by removing options. Removing things is enough of a breaking change for one major release I think. New API's should probably come in a separate pass and driven by community needs/requirements. I think most of us are pretty happy with the core of v2's API as it is. |
Beta Was this translation helpful? Give feedback.
-
FWIW I'm in favor of all points (eventually), including removing |
Beta Was this translation helpful? Give feedback.
-
|
Beta Was this translation helpful? Give feedback.
-
@StephanHoyer All you'd need to do here is |
Beta Was this translation helpful? Give feedback.
-
What is your opinion about integrating something like classies into the core. I think we did this discussion a few times, but I would really like to see this integrated. m('div', { classes: { foo: true, bar: false } }) //=> <div class="foo" /> Alternative attribute name can be |
Beta Was this translation helpful? Give feedback.
-
Am I the only one the uses oninit? I use it all the time - esp with POJOS which I use when that component does not need to have its own state.
am i correct in that removing POJOS and oninit would require me to write components like this?
I have never used vnode.state - so I dont have an opinion on that - unless removing it will reduce size or improve perf and then I will be up for it. |
Beta Was this translation helpful? Give feedback.
-
Add me as a +1 on keeping the API breakage minimal. My very small voice notes that I use Mithril for two reasons:
I understand that many people might dislike classes in js and therefore class components but I am a definite fan. For that matter, for very simple components, I love POJO components. |
Beta Was this translation helpful? Give feedback.
-
Hello to everyone, Does anyone has an idea of when the v3 might be released? I see no commit in the last 6 month - and very little activity overall - hinting that progress is not being done. As such, I'm a little concerned about the state of Mithril. I know we should not fix something that is not broken, but after some point it starts looking like an abandonware, making it extremely difficult to convince people to use Mithril for anything work related. Other than that, thanks a lot for Mithril! Been using it for the past 5 years and I love it ! |
Beta Was this translation helpful? Give feedback.
-
I've been out since the summer because of health issues (likely a post-COVID syndrome). I'm at long last getting back some ability to focus and can once again contribute here. #2273 or something similar is material for the next 2.x release. I can give it a crack this month (starting this week). |
Beta Was this translation helpful? Give feedback.
-
Hey all I used Mithril v2 a couple of years ago and loved it but had to let it go because I needed a better full stack solution. Mithril is great client-side but the server-side rendering is quite slow. I did these benchmarks a couple of months ago:
https://github.com/PierBover/fastify-vite-ssr-benchmarks Just something to consider if you're thinking about improvements for v3. |
Beta Was this translation helpful? Give feedback.
-
Hi all,
as we are working through the last issues before releasing 2.1.0 hopefully this month we should think about whats next with mithril.js. There are a few things I personally want to tackle, most of it is replace NIH-solutions with established solutions to reduce maintenance of the project and let us focus on bringing the framework itself forward. That includes
ospec
to own repo (or even discontinue it, except anyone wants to takeover maintenance 🤷♀️)stream
to own repo (or even discontinue it, except anyone wants to takeover maintenance 🤷♀️)A second big thing we need to do is to modernise the documentation, both from the technical standpoint and also the aesthetics.
We also plan to change a few internals. I don't have all in my mind right now, we can start the discussion on a few of them right now. What comes in mind are
retain
Most of the things are great ideas from @dead-claudia.
So this discussion is the place, where we can start discussing all this. I'm really interested about your opinions and wishes for the future of this great little framework.
Beta Was this translation helpful? Give feedback.
All reactions