Bootstrap v5 support
Recently Bootstrap announced the first v5 Alpha: https://blog.getbootstrap.com/2020/06/16/bootstrap-5-alpha/
Just raising this issue to gather ideas how a potential migration plan might look like.
Maybe it would be worth pinning this issue so that it is more visible to people?
BootstrapVue v2:
- Feature-freeze after v2.17.0
- Only critical bugfixes and security updates
BootstrapVue v3:
- Based on BootstrapVue 2.17.0
- Vue.js v3 support
- Bootstrap v4.x support
- Release: Short after Vue.js v3 release
BootstrapVue v4:
- Complete rewrite
- Vue.js v3 support
- Bootstrap v5 support
- Release: No ETA yet
https://github.com/bootstrap-vue/bootstrap-vue/issues/5196#issuecomment-668837891
@Hiws Can this be pinned please?
Yes please pin, I had to go look for it glad I found it.
Please, keep in mind that several developers which run enterprise application won't switch to Vue 3 due to lack of plugins not ready for vue 3 itself, but they wish to benefit of bootstrap 5 improvements.
Please, keep in mind that several developers which run enterprise application won't switch to Vue 3 due to lack of plugins not ready for vue 3 itself, but they wish to benefit of bootstrap 5 improvements.
We are looking into supporting both Vue 2 and Vue 3 with the BootstrapVue 3 release by utilizing https://github.com/antfu/vue-demi which looks pretty promising. Which should hopefully mean we can end up on a version that will support both Vue 2/3 + Bootstrap 5.
BootstrapVue v4:
Complete rewrite
Please don't rewrite the project. Thousands of hours have gone into this project along with thousands of bugfixes, improvements, etc... Experience that all will be undone by rewriting the project, it will take years to get to the same level of features, refinement and bugless-ness with the end result that you're basically at the same point as you were a couple of years before, only now it's been "re-written".
BootstrapVue v4: Complete rewrite
Please don't rewrite the project. Thousands of hours have gone into this project along with thousands of bugfixes, improvements, etc... Experience that all will be undone by rewriting the project, it will take years to get to the same level of features, refinement and bugless-ness with the end result that you're basically at the same point as you were a couple of years before, only now it's been "re-written".
Not sure why you are getting down voted. Bootstrap-vue should upgrade to Vue3 by continuing to use the Options API, and then slowly change it over to the composition API.
Is there ETA now for BS5 + Vue3?
Sorry for this but I wasn't able to find a new update on this.
@jd-0001 Bootstrap just moved v5 stable release target to February 2021.
I'd be likewise interested to know how long it might take to have BSV on BS v5 after v5 has reached stable version? To have some estimate of this years framework update schedule targets.
@jackmu95 now that Vue 3 support upgrade has taken a longer route, does it reduce the amount of work to be done for achieving BS 5 support, as earlier it was mentioned that BS 5 based version will be a complete rewrite?
Bootstrap 5 support is a major breaking change and requires completely different changes than the ones for Vue 3 support.
We first need to finish the changes for Vue 3 which will ship in BootstrapVue v3. Then we can focus on Bootstrap 5 support which will land in BootstrapVue v4.
I can't promise right now when BV v4 will ship after the Bootstrap 5 release, but it is less work supporting Bootstrap 5 than Vue 3. We should be able to have a BV release 1 or 2 months later.
BootstrapVue v3 (with Bootstrap v4) support will also match the EOL from Bootstrap.
What about Vue 2 + Bootstrap 5? It seems Vue 2 will stay for quite a while.
What about Vue 2 + Bootstrap 5? It seems Vue 2 will stay for quite a while.
I believe the current plan is still for BootstrapVue 3 to support both Vue 2, and Vue 3. And I believe that would carry into BootstrapVue 4, which will convert from Bootstrap 4 to Bootstrap 5.
Why not rename BootstrapVue v4 to BootstrapVue v5, so it has the same number as Bootstrap 5?I think it will be less confusing for new users.
Now that Bootstrap 5 has dropped jquery, is there any advantage to using BootstrapVue with BS v5?
For example: https://dev.to/codeply/using-bootstrap-5-with-vue-js-5fnp
What would the advantage be of using a wrapper like BootstrapVue vs a direct integration like the above example?
@binaryfire I have actually been building my own Bootstrap v5 library because we're in a situation where we can't wait for BootstrapVue. There have only been a few tricky bits with getting it to work with Vue, overall it's been a lot easier than I expected though.
Saying that, I wouldn't recommend it if you're in a situation where you can wait. You're still having to do all of the boilerplate work that library will handle for you. Creating a component, creating all the various prop/slot options you need, and getting the Bootstrap javascript to work. It's still time consuming. Some components are very simple, whereas some need a lot of time.
If you need it now and only need a small amount of components, you should go that route. But if you can wait, you should because you're still avoiding all the integration and boilerplate work.
@MechJosh0 Thanks, that's very helpful. Looks like I'll be waiting :)
We're starting work on a new app soon so I want to use Bootstrap 5 and Vue 3 from the start. Hope a new version isn't too far!
Bootstrapvue contains several components that are not available with Bootstrap5 such as form tags, overlay, skeleton, etc. that’s why I use BootstrapVue.
When we can expect Vuejs 3 support coming?
When we can expect Vuejs 3 support coming?
Wrong issue.
I'm waiting for bootstrap 5 and vue 3 support since long ago. there is no option for me but to go for pure bootstrap.
The final beta of Bootstrap 5 was released last week: https://blog.getbootstrap.com/2021/03/23/bootstrap-5-beta-3/. The RC won't be far off now.
I love BootstrapVue but the reality is no-one starting a new Bootstrap project today is going to build it with Bootstrap 4. Or Vuejs 2.
I understand the need to maintain the current codebase for existing projects, but BootstrapVue won't be able to compete with other frameworks if it leaves it much longer. For example Vuetify have already released an alpha of their Vuejs 3 rewrite: https://vuetifyjs.com/en/introduction/roadmap/
I hope we see some progress on a new version soon. If there's a link where I can donate towards a BS5 / Vue3 rewrite please let me know. I'd be happy to contribute!
The major version number should be synced to Bootstrap version imo. I find it quite confusing knowing which is for which when combined with Vue version numbers and changes.
So BootstrapVue version that supports Bootstrap 5.x should also be v5.x and scrap the idea of calling it v4 altogether.
The major version number should be synced to Bootstrap version imo. I find it quite confusing knowing which is for which when combined with Vue version numbers and changes.
Why sync with Bootstrap version? Why not Vue version? Or why not based on how versions should be done.
The package version should not be dictated by the dependency versions it uses. Major versions should be by breaking changes as per the majority understanding of how versions are used.
... Breaking changes are indicated by increasing the major number (high risk)... https://en.m.wikipedia.org/wiki/Software_versioning
The major version number should be synced to Bootstrap version imo. I find it quite confusing knowing which is for which when combined with Vue version numbers and changes.
Why sync with Bootstrap version? Why not Vue version? Or why not based on how versions should be done.
The package version should not be dictated by the dependency versions it uses. Major versions should be by breaking changes as per the majority understanding of how versions are used.
... Breaking changes are indicated by increasing the major number (high risk)... https://en.m.wikipedia.org/wiki/Software_versioning
Because it is called BootstrapVue. Also v5 is a bigger number than v4 so that means it's better. Like a volume knob that goes to 11.
I love BootstrapVue but the reality is no-one starting a new Bootstrap project today is going to build it with Bootstrap 4. Or Vuejs 2.
That is not the reality at all. There can be considerable disadvantages to starting major development projects based on new versions of development libraries, especially ones that introduce completely new concepts, as Vue 3 has done. For one, stability has yet to be assured, and two, there is a learning curve involved requiring the whole team to get up to speed, not to mention the relative lack of design and troubleshooting support out there on sites like Stack Overflow when compared to the previous versions. Then, as you even mention in your comment, it takes time for dependent libraries your project may need to catch up.
The cutting edge is not always a comfortable place to be, and the wise project leads try to avoid them, unless there is a compelling reason not to.
@stringfold All good points. I was being a bit hyperbolic when I said "no-one" :) But for us, beginning a large-scale SaaS project using previous versions of frameworks just isn't an option. Firstly because we're building with the next 5 years in mind. And secondly because Vue 3 and Bootstrap 5 bring significant improvements to the table that we want to use.
BS5's CSS custom properties and the utilities API are game changers for us. Same goes for Vue 3's composition API.
The 2 most upvoted issues in the repo are Vue 3 and Bootstrap 5 support so a lot of people feel the same way.
I am of the opinion that if you are going to hitch your wagon to a parent project, like bootstrap, you should make an effort to closely track that project including major updates. Probably easier said than done considering bootstrap is developed by a muli-billion dollar corporation.
Bootstrap 5 has been released yesterday: https://blog.getbootstrap.com/2021/05/05/bootstrap-5/