So this is indeed a difficult topic. We won on the Bootstrap bet, but not so much on the LESS one.
I am not sure which variant would be harder: A. support for SASS instead of LESS in order to use the Bootstrap 4 or B. changing to Foundation or Semantic-UI instead of Bootstrap. I would be -1 for B since as I said I think we 'won' the bet on Bootstrap. Dumping Bootstrap in order to keep LESS would not be a smart option, but I agree Semantic-UI comes with a multitude of JS components. I would like us to be able to integrate somehow Semantic-UI with Boostrap (not sure about the technical limitations) instead of replacing each other. Using a more popular framework (like Bootstrap) as the 'core' framework is better in terms of developer's familiarity and support. Actually we should be happy that they create a new and improved version of Bootstrap (we were counting on that). Too bad their backwards policy is not a strong one :) they just dumped LESS. Also lots of the extensions (especially some of the Recommended ones) are using Bootstrap classes, so replacing it is not an option (because of the volume of work needed). Regarding A. and the SASS switch, from what I remember we picked LESS since there was no conflict with the Velocity syntax. We need to reanalyze that. What I can say is that I don't think we used LESS to much on the recommended extensions. I know we provided LESS code for the Menu Application, but besides that I don't know how many other contrib applications used the feature (would be great if you could mention here if you used it in your apps). But I have no way to determine if LESS was used or not in external projects. So the majority of work would be needed on Flamingo Skin and the Web module. There are similitudes between the preprocessors so not sure how to evaluate the change's timeline, but it would not be very complex. But it will take a while to replace the preprocessors for skin and colorthemes. My guess is that LESS was mostly used in the Flamingo Themes, in the advanced section, in order to change the default colors. Also, as Guillaume mentioned, we could support multiple preprocessors. This will influence the loading performance for sure, needing to go first in LESS files, than in SCSS files, etc. Also adding Semantic-UI on top of Bootstrap will make the load heavier (even if we try to optimize it and make it selective). But it would surely provide also benefits (new framework, new components, etc.). As Marius said there are many things we need to consider for the future. The easier solution would be to not move Flamingo Skin to Bootstrap 4. Wait for a new skin to make the change. Or support Bootstrap 3.3.7 for our selves. Maybe others have the same problem and there will be a forking for the LESS version. But the question still remains, for new applications and code we write, how do we make sure what we write will not be deprecated? do we still use Bootstrap 3 classes? should we still write in LESS or we now recommend SASS? Or how do we find an easy way to update the code? Or we just don't update, but change the skin and the version that supports a certain framework. Thanks, Caty On Mon, Oct 24, 2016 at 7:50 PM, Guillaume Delhumeau < [email protected]> wrote: > Last month, one of the main contributors of Bootstrap has announced that > the 3.x.x branch will no longer be developed [1]. > > It means that they are currently putting all their efforts to Bootstrap > 4.x, and now they are releasing Alphas so the version 4.0 should be > available soon. > > In Flamingo, we use Bootstrap 3.3.7. If we decide to upgrade to Bootstrap > 4, we will have the following problems: > > 1. Bootstrap 4 is not retro-compatible with Bootstrap 3. There are new > components, and some have been removed. We know that some extensions are > using Bootstrap elements so there is a risk they're gonna be broken. > > 2. Bootstrap 4 no longer uses the LESS language. Instead, they use SASS [2] > (the SCSS variant). Which means we should integrate SASS in XWiki, as we > did for LESS. Some work could be re-used, but there are still work to do, > and it increases the number of CSS preprocessor to support. For the record, > the team has mentioned that Bootstrap might use PostCSS in the future! > > I've already spoken about this problem in a previous thread last year [3], > but the problem will probably hits us in the following months. It may be a > strong topic for XWiki 9.x or 10.x. > > Note: I haven't mentioned the Bootstrap alternative called "Foundation" > [4], since it would be a bigger breaking change :) > > Thanks, > > Guillaume > > [1] https://github.com/twbs/bootstrap/issues/20631#issuecomment-244844932 > [2] http://sass-lang.com/guide > [3] http://markmail.org/message/7sbviier23wzfadf > [4] http://foundation.zurb.com/ > > -- > Guillaume Delhumeau ([email protected]) > Research & Development Engineer at XWiki SAS > Committer on the XWiki.org project > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs > _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

