Yup, and we're looking at dropping Legacy Edge from our supported browsers for this reason as well. As of right now, we still have v17 and v18 in there, but there's a PR open to remove.
Speaking to the lifetime of each major version—Bootstrap 4 can't go into any kind of LTS situation until v5 is fully stable. That's going to take a few months just being honest, so I fully expect v4 to be around into 2021.
We've also maintained security patches and more for v3 where appropriate well past the LTS for the web's sake. While we try to have guidelines around it, we want to help move things forward for the web :).
We'll be working on moving on from jQuery. When we finally decided to commit to it, it was too late in the v4 alpha process to really spend significant time doing it. We'll be piece-meal updating our plugins to drop it.
Lots of folks like to shit on jQuery these days, but it changed JS forever. We're still using it while focusing on other things, and you can easily swap it out for something else or use a ported version of our JS for React, Angular, etc.
I don't particularly aim to shit on it, but I've been on the vanilla train for awhile now. So when I see something I'd like to try out to solve a specific problem, having it pull in jQuery for a dependency is kind of frustrating.
Especially when (and I'm sure Bootstrap does more with it) the only reason it's pulled in is to replace document.querySelectorAll and fetch/xhr.
Very exciting! I have been slowly removing jQuery from many web apps over the last several years and its good too hear that Bootstrap wants to get there too :)
Now obviously removing jQuery would be a major revision and break the current API. But are there any particular pain points in removing jQuery as far as features go?
A cursory look at the source code (/js/src/*.js) shows that most jQuery usage is simple $(el).hasClass('foo') or $(el).on(evt, handler) so those ones are easily replaced by the native APIs.
Maybe the harder parts to replace are $.data or $.event?
If he takes a look at v4 beta than ui-kit creator will ask him to look at the next beta. This is an endless cycle. I think he's comparing against 3 which is valid. And from your replies, it looks to me like he's right on all counts.
Probably gonna stick with some Sass stuff for awhile, tackling components and JS behaviors we haven’t done in the past. There’s some major stuff we’re missing even before CSS grid layout (which doesn’t have super great support today).
To the contrary, CSS Grid Layout has excellent support. All modern browsers aside from Edge. For Edge, IE11, and IE10, you can use the original Grid spec since it's frozen in time and can replicate most of what Grid can do today, albeit it's more complicated and explicit.
Considering Bootstrap does not support the same browsers that CSS Grid does not work in, this argument doesn't stand.
If you look through the stats of every unsupported browser in the list above, almost all of them are %0.x. Adding them all up still gives you single digits. And with Flexbox as a fallback, you're covering virtually all modern browsers.
I really hope you consider adding this last feature to Bootstrap 4 as I truly believe it will be worth the effort.