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

bootstrap 5 upgrade plan? #1748

Closed
thecodejack opened this issue Jan 10, 2020 · 62 comments
Closed

bootstrap 5 upgrade plan? #1748

thecodejack opened this issue Jan 10, 2020 · 62 comments

Comments

@thecodejack
Copy link

Now that bootstrap 5 nearing the release(https://github.com/twbs/bootstrap/projects/11), any plans to start working on supporting same?

@TheSharpieOne
Copy link
Member

I haven't been tracking it. Personally, I haven't had the time to give to reactstrap for a while now. Plus (FWIW) react-bootstrap now supports v4. I would love for some help from the community and would be happy to pass the torch if someone wants to completely take over.

@thecodejack
Copy link
Author

At present, I can try starting branch around bootstrap 5. I would love to takeover the torch but don't think I am ready as of now. I will start working on bootstrap 5 upgrade.

@Ashniu123
Copy link
Contributor

I would also love to assist with the work on bootstrap 5.

@TheSharpieOne
Copy link
Member

I made a branch bootstrap5, make PRs to that. Feel free to open new issues to keep track of bootstrap5 related efforts so that efforts are not duplicated.

@TheSharpieOne TheSharpieOne added this to In progress in Bootstrap v5 Jan 16, 2020
@thecodejack
Copy link
Author

Thanks. That really helps. Waiting for a dev release tag of bootstrap to start on this. I will review after and add all todos once available. Later can start picking the tasks.

@iamandrewluca
Copy link
Contributor

@TheSharpieOne

I would love for some help from the community and would be happy to pass the torch if someone wants to completely take over.

I can step in to help with the library maintainance.

Plus (FWIW) react-bootstrap now supports v4.

Maybe slowly move reactstrap API to match react-bootstrap and deprecate this library in favor of react-bootstrap?

As I see they have a roadmap for bootstrap v5

@mxschmitt
Copy link
Contributor

mxschmitt commented May 18, 2020

Hey folks,
I'm one of the react-bootstrap maintainers, we would really appreciate to work together for Bootstrap 5. We have updated our codebase fully too hooks, have tests in place and soon (PR open) we are moving it to TypeScript for a better type safety.
What do you think about that? (if not, thats also fully okay. Would be cool to provide for the community one solution which is in place for using Bootstrap with React)

react-bootstrap issue: react-bootstrap/react-bootstrap#5174

@kyletsang
Copy link
Member

Hey folks,
I'm one of the react-bootstrap maintainers, we would really appreciate to work together for Bootstrap 5. We have updated our codebase fully too hooks, have tests in place and soon (PR open) we are moving it to TypeScript for a better type safety.
What do you think about that? (if not, thats also fully okay. Would be cool to provide for the community one solution which is in place for using Bootstrap with React)

react-bootstrap issue: react-bootstrap/react-bootstrap#5174

I'd be happy to contribute towards BS5 in react-bootstrap.

@thecodejack
Copy link
Author

I agree with @mxschmitt . This seems to be best solution.

@illiteratewriter
Copy link
Member

This is the repository where I kind of made the first open-source contribution and I would like to see this go on. If someone (@TheSharpieOne, @gergely-nagy) can point in the right direction, for instance, help create the cards in the todo part(https://github.com/reactstrap/reactstrap/projects/4#card-31741444), I think we all can take it forward.

I know and understand that the maintainers don't have much time to put into this project, but I think this has taken a lot of time and effort from your part and we really shouldn't abandon this.

@bestguy
Copy link
Contributor

bestguy commented Oct 3, 2020

In a perfect world react-bootstrap & reactstrap could join forces under react-bootstrap, but realistically it's going to be pretty awkward for existing codebases to rework to the differences in API, Component & prop names.
A few years back reactstrap seemed the better choice for v4 and why we've used and contributed to it.

I'd also like to see reactstrap continue to v5 and will try to help more and involve my co-workers/company too.

@bestguy
Copy link
Contributor

bestguy commented Oct 26, 2020

@TheSharpieOne , we were looking to start some PRs in the next week, but noticed the bootstrap5 branch is pretty state.
Would you be up for rebasing this or would you like to start a new v5 branch off latest master?

@TheSharpieOne
Copy link
Member

@bestguy there was nothing new added to the bootstrap5 branch, so I just brought it up to master (they are now even).

@gthomas-appfolio
Copy link
Contributor

gthomas-appfolio commented Jan 29, 2021

Hi, just an update on this - we have a fork that we plan to PR back here to reactstrap's bootstrap5 branch after completing Bootstrap 5.0 beta 1 compatibility. Hopefully within the next week.

@kyletsang
Copy link
Member

Disclaimer: these comments are my own and may not reflect the views of the other maintainers.

As @mxschmitt mentioned above, I still think it's best to unify the community under react-bootstrap. RB is pretty much at v5 beta 1 parity right now. There's also a number of other improvements RB has currently including:

  • Extensive docs
  • All dependencies up to date including Popper 2, react-transition-group etc
  • Migrated to hooks
  • Codebase is written in typescript

I think the community will benefit a lot from having a single library instead of being fragmented like for v4. Maybe the best time to do this is now since there are numerous breaking changes required to migrate from v4 -> v5 anyway.

I will still continue to support reactstrap for v4 long after v5 lands though.

@gthomas-appfolio
Copy link
Contributor

Hi @kyletsang
In general I'd agree with you, but the prop and component differences between RB and reactstrap means many projects can't just switch without extensive code changes. My co. at least has tens of thousands (or maybe hundreds) of lines of React that use reactstrap extensively and we'd basically be stuck on v4 Bootstrap. Updating reactstrap was the less-effort alternative to allow updating to Bootstrap v5.

(I'm not suggesting or volunteering to fork permanently for v5, but I'm assuming others may be in this situation as well hence the PR back)

@kyletsang
Copy link
Member

Yeah, unfortunately it's quite a bit of work to do for the update. @TheSharpieOne, @iamandrewluca, your thoughts on this?

@iamandrewluca
Copy link
Contributor

@bestguy
Copy link
Contributor

bestguy commented Jan 30, 2021

If if helps, FYI we are currently updating branch above to beta 1 compatibility including tests and docs, and planned to update to Popper 2 and React transition group. We have not PRed back here yet for a few loose ends, but it seems in good shape for PR in next week. (Sorry if confusing, am mixing comments from personal and work github accounts)

@TheSharpieOne
Copy link
Member

@bestguy that is awesome!

As for the link @iamandrewluca posted, for transparency I am going to post the text here.

Before you read it, keep this in mind: I would love for someone or someones (the community) to maintain reactstrap and support bootstrap 5. I will give access to those willing to do so. Since posting the below @kyletsang has come and has been doing a lot to maintain what is currently supported. Maybe with @bestguy's help, bootstrap 5 support can be achieved.

Posted July 1, 2020:
When reactstrap was originally create, react-bootstrap did not support bootstrap 4 and didn't really have a plan to support bootstrap 4. Since then, react-bootstrap has released support for bootstrap 4. Now that bootstrap is about to release v5, react-bootstrap is already on top of it. reactstrap on the other hand is not.
react-bootstrap also was a large bundle, making reactstrap a lighter solution. But now, react-bootstrap's bundle is actually smaller than reactstrap.
While I'm sure it is possible to make reactstrap support bootstrap v5 and make the bundle smaller, it all requires work. It was proposed by a react-bootstrap maintainer (a while ago, as well as more recently) that we just forces under the react-bootstrap repo. Since I don't have any time to give reactstrap the love it needs, I am fine with deprecating reactstrap in favor of react-bootstrap.
At this point, reactstrap is fine as it is and people are using it, but in all honesty I don't see reactstrap supporting bootstrap v5 since no one is going to put that effort in. Plus there are a lot of other standard maintenance things, such as upgrading the build and the reducing bundle size, upgrading the docs and its build.

Thoughts?

@bestguy
Copy link
Contributor

bestguy commented Feb 3, 2021

Thanks for posting @TheSharpieOne. I and some others would be happy to help maintain for v5, but caveat is we probably would not be best primary maintainers due to our limited staffing. So if others would be up for stepping up to maintain v5 too that would be much healthier for the project.
(We are probably better at "bursty" updates like v5 changes.)

We have a good investment in Reactstrap and helping update seems best path forward for us, and assuming some others too if there is interest. Again many thanks for this project and your help these years!

@gauravshah27
Copy link

gauravshah27 commented Feb 4, 2021

@bestguy I am with you. We are also heavily invested in Reactstrap and would love to see an update for bootstrap v5. I would love to help in whatever capacity I can. I have never really contributed to opensource before and would like to learn the ways and contribute to a project that really matters to me.

@re-thc
Copy link

re-thc commented Feb 9, 2021

Maybe I missed it but what's the migration path to react-bootstrap? If there was a codemod, a guide or something that simplified the transition greatly - that might be another option.

@kyletsang
Copy link
Member

@hc-codersatlas, currently no guide. I believe most(?) of the props have a 1:1 translation, but complicated components such as popovers and tooltips are quite different.

@gthomas-appfolio does have a lot of work put into v5, so looks like we can move forward with that. More community involvement would be great!

@illiteratewriter
Copy link
Member

If someone adds to https://github.com/reactstrap/reactstrap/projects/4#card-31741444 or add issues with the things that need to be done, I think it will be easier to contribute.

@bestguy
Copy link
Contributor

bestguy commented Feb 12, 2021

Thanks, we will pr the v5 update work back to this repo and can determine what issues remain. (Hopefully very soon, we are working on one last Popper 2 issue)

@DaddyWarbucks
Copy link

Big thanks to everyone that has worked on this so far! I use reactstrap for many projects and appreciate the work everyone has done.
I am starting a new project that will use v5. I plan to install reactstrap straight from github at the bootstrap5 branch and will report back any issues.

@BustaFett
Copy link

BustaFett commented Jul 20, 2021

Is the v5 branch ready for use? We have been using this library on a large software project for 2+ years now, and we are looking to update to Bootstrap 5. Just curious as to where you are on the updates. Can help if needed?

@bestguy
Copy link
Contributor

bestguy commented Jul 21, 2021

Hi @BustaFett , not a maintainer but see my comment(s) above

I believe the only thing missing currently is the Offcanvas component. I have a WIP PR for it (https://github.com/bestguy/reactstrap/pull/1/files) but it needs some work.

@MatyCZ
Copy link

MatyCZ commented Jul 27, 2021

Is this project dead?

@krnlde
Copy link
Contributor

krnlde commented Jul 29, 2021

Hi @BustaFett , not a maintainer but see my comment(s) above

I believe the only thing missing currently is the Offcanvas component. I have a WIP PR for it (https://github.com/bestguy/reactstrap/pull/1/files) but it needs some work.

What kind of work is needed @bestguy ?

Also what is with all the open PRs in this project? It feels a bit dead tbh.

@gauravshah27
Copy link

@bestguy @kyletsang do you have any kind of timelines that you can provide as to when this will be released. Also judging from the number of open PRs - is this project going to be maintained going forward.

Sorry for asking question that many other users have already but if you can provide a more concrete timeline - that would be greatly appreciated. Thanks.

@bestguy
Copy link
Contributor

bestguy commented Aug 18, 2021

Hi @gauravshah27 , sorry I'm not a maintainer, just contributor to the v5 updates. I think the situation is the current maintainers are unable to actively work on this, so if we want to get official v5 out we users will need to help out with the remaining PRs needed to be compatible with Bootstrap 5.0/5.1. It's very close imo, but I can summarize the todos on a project board to help. I'll do my best to work on these as well, as switching to another library for v5 would be really painful!

@illiteratewriter
Copy link
Member

@bestguy hey, it would be great if you can summarize the todos since it will be easier to pick up what are pending

@bestguy
Copy link
Contributor

bestguy commented Aug 18, 2021

Sure @illiteratewriter , here is the missing work to get to Bootstrap 5.1 compatibility: https://github.com/gthomas-appfolio/reactstrap/projects/1

@phwebi was going to update this repo's V5 project board with this info: https://github.com/reactstrap/reactstrap/projects/4

@illiteratewriter
Copy link
Member

@bestguy I'll get started with placeholders and try and get it done over the weekend. So you can maybe move it to In Progress

@kyletsang
Copy link
Member

Hi @gauravshah27, sorry for delayed response. Unfortunately I no longer have the time to help out here since I've picked up a few other projects to work on.

@bestguy and @phwebi are probably the best people to talk to in order to get support here.

@bestguy
Copy link
Contributor

bestguy commented Aug 21, 2021

Hi @gauravshah27, @illiteratewriter ,

These PRs are ready for review and merge if approved:
Offcanvas: #2235
Horizontal Collapse: #2236

This has been merged:
Accordion updates: #2185

The only addition needed for a Bootstrap 5 release is Placeholders, let me know if you can't get to it soon @illiteratewriter .

Thanks all, really close 🤞 Would be great to get a release out next week.

@illiteratewriter
Copy link
Member

I'll get it done by tonight mostly.

@illiteratewriter
Copy link
Member

@bestguy #2237 Placeholders is done

phwebi added a commit that referenced this issue Aug 24, 2021
@bestguy
Copy link
Contributor

bestguy commented Aug 26, 2021

I think that's it! Thanks all for the help. Phwebi is working on a beta release and hope to try this soon.

@phwebi
Copy link
Member

phwebi commented Aug 27, 2021

Hey all! We just published a beta on Bootstrap 5.1 if anyone would like to try it out: https://www.npmjs.com/package/reactstrap/v/9.0.0-2 🙌🏼

This version contains everything currently in our bootstrap5 branch. Please let us know if you notice any issues. Thanks!

@kevincolten
Copy link

Are there updated docs hosted anywhere?

@bestguy
Copy link
Contributor

bestguy commented Aug 28, 2021

Hi Kevin, not yet, we are looking at a PR to update the docs and also keep v4 docs available too.

@DaddyWarbucks
Copy link

Thanks for the update!

This was referenced Oct 27, 2021
@bestguy
Copy link
Contributor

bestguy commented Oct 28, 2021

Thank you @phwebi and all who contributed!!!! ❤️
Reactstrap 9.0.0 is released, with Bootstrap 5.1 compatibility, and with new documentation based on Storybook as well.

Thanks for your patience while we ramped up new committers.
I think we can close this!

@John-Shortland-PikiTech
Copy link

Thank you @phwebi and all who contributed!!!! ❤️ Reactstrap 9.0.0 is released, with Bootstrap 5.1 compatibility, and with new documentation based on Storybook as well.

Thanks for your patience while we ramped up new committers. I think we can close this!

Please can you direct me to the release notes? Also, any documentation for migrating from 8.10.0 to 9.0.0? 🤔

@jakeboone02
Copy link

@John-Shortland-PikiTech you quoted basically what you're asking for.

Release notes: https://github.com/reactstrap/reactstrap/releases/tag/v9.0.0

Migration from v8: https://reactstrap.github.io/?path=/story/home-upgrading--page

@davidacevedo davidacevedo moved this from In progress to Done in Bootstrap v5 Nov 12, 2022
@mikegoatly-coeo
Copy link

I would propose that this can be closed now 😊

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Bootstrap v5
  
Done
Development

No branches or pull requests