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

Prepare for Bootstrap 4 #355

Closed
stevepiercy opened this issue Oct 25, 2017 · 9 comments
Closed

Prepare for Bootstrap 4 #355

stevepiercy opened this issue Oct 25, 2017 · 9 comments

Comments

@stevepiercy
Copy link
Member

This is a placeholder for discussing how to upgrade deform from Bootstrap 3 to Bootstrap 4, assuming that is desired.

Questions

  1. Do we try to make deform compatible between both BS3 and BS4?
  2. If such compatibility is not possible or desired, how do we handle breaking changes?
@bouillon
Copy link

I think to support Bootstrap3 is not important.
Much more important to migrate widgets to BS4. Nobody will start a new project with BS3 and for the moment deform with bs4 is not usable.

@digitalresistor
Copy link
Member

Hey @mcdonc I remember you twittering something about Boot Strap 4, would this be an easy migration?

@stevepiercy
Copy link
Member Author

@sydoluciani
Copy link
Contributor

For the sake of quick test,
cloned deformdemo
did pip install -e .
copied to override two bootstrap 3 files with bootstrap 4 files:
bootstrap.min.css file to python3.7/site-packages/deform/static/css/
bootstrap.min.js to python3.7/site-packages/deform/static/scripts/

started deformdemo and checked couple of widgets and all working.

JQuery and Popper that is used in bootstrap 4 shall be included using CDN
therefore no changes in deform itself.

looking at deform/widget.py requirements, only tinymce has specific version, the rest
have version requirements set to None, so we can start with minimum changes and replacing bootstrap.min.css and bootstrap.min.js, and add new resources if there are incompatibility.

The question is:
for new branch, would you prefer to add a new directory like static_bs4 to contain bootstrap 4 files
and change:
config.add_static_view('deform_static', 'deform:static/')
to
config.add_static_view('deform_static', 'deform:static_bs4/')
to test bootstrap4 and fallback if required,
or just start overriding the bootstrap 3 files with bootstrap4 ?

@digitalresistor
Copy link
Member

Start overriding the bootstrap 3 files with bootstrap 4.

I have no desire to maintain both BS3 and BS4, we simply don't have the capacity or the team to do so.

@stevepiercy
Copy link
Member Author

2.5 years after this was suggested, we've seen the EOL of Python 2.7 and 3.4. If we are going to release a new Deform with BS4—I guess we could call it Deform 3.0—then I would suggest we drop support for those Pythons and add up through 3.8.

@digitalresistor
Copy link
Member

I'm all for making it a new release that is not Py2.7 compatible (if only because we no longer test on it... not necessarily because we go through and explicitly make it incompatible).

Anyway, it's great to see movement on this!

@stevepiercy
Copy link
Member Author

Yup, I meant drop testing of EOL versions by "drop support".

One more suggestion: the build is noisy with lots of WARNI [waitress.queue:115][MainThread] Task queue depth is 1 and we could resolve it by bumping up the number of threads to 6 per this SO post: https://stackoverflow.com/a/55861495/2214933

@stevepiercy
Copy link
Member Author

Closed by #400

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants