Re: Open Discussion: remove Bootstrap from T5 core
David Taylor <[email protected]> Thu, 14 Feb 2019 23:01:14 -0500
| Newsgroups | gmane.comp.java.tapestry.user |
|---|---|
| Message-ID | <[email protected]> |
I completely agree. We would like to move to bootstrap 4 and improve our integration with Kendo UI in the process. We also need to upgrade bootstrap 3 to the latest version since there have been issues that cause it to show up as a XSS risk on application vulnerability scans. Just yesterday bootstrap 3.4.1 was released to address CVE-2019-8331. We would be happy to participate in the development and testing of this feature. We are actively developing hybrid applications on Tapestry and would be able to test and provide feedback. On 2/14/2019 6:20 PM, JumpStart wrote: > I think it’s a fabulous idea. Two thumbs up. > >> On 14 Feb 2019, at 9:07 pm, Bob Harner <[email protected]> wrote: >> >> I agree that Tapestry shouldn't be so tightly coupled to a specific CSS >> framework. >> >> For context and some alternative ideas, see this prior discussion of the >> same topic: >> >> https://tapestry.markmail.org/search/?q=What+happens+when+Boootstrap+4+is+released%3F >> >> On Thu, Feb 14, 2019, 4:52 AM Ben Weidig <[email protected] wrote: >> >>> Hi Jens, >>> >>> I like the idea of decoupling the core and Bootstrap to make it easier to >>> use other versions. >>> >>> Maybe the components should be updated to BS4 for T5.5, with a legacy >>> fallback or a component swap (can't remember the service doing it, we have >>> our own implementation, it's doing an advice on >>> ComponentClassResolver#resolveComponentTypeToClassName or >>> ComponentInstantiatorSource#getInstantiator). >>> >>> For 5.4 we've developed an internal solution for using different BS >>> versions, here are some specifics. >>> >>> We have multi-tenant-apps with different BS versions (so far up to 3), so >>> we needed a flexible solution that supports the internal BS and other >>> versions dynamically. >>> >>> To make it even more flexible we've added SASS-support and compile >>> Bootstrap from the source files, with the possibility to add files >>> beforehand to the compilation step with custom variables etc. >>> >>> The layout component has an annotation that triggers >>> a ComponentClassTransformWorker2 attaching a JavaScriptStack containing the >>> BS version decided by a contributable strategy pipeline. >>> >>> JavaScript modules were the biggest problems, we started with replacing the >>> internal modules, but ended up adding additional modules instead. This >>> worked fine after getting all the dependencies right, but every BS version >>> might break it again, so we're now using the bundled version of BS JS. >>> >>> We think this could all be cleaned up nicely if the internal BS wouldn't be >>> as integrated as it is right now. >>> >>> Eventually we will release it as open-source, but having an integration >>> into Tapestry (as a new tapestry-*) would be even nicer :-) >>> >>> Best regards >>> Ben >>> >>> >>> On Thu, Feb 14, 2019 at 10:14 AM Jens Breitenstein <[email protected]> >>> wrote: >>> >>>> Hi Tapestry guys! >>>> >>>> I want to hear/read your opinion about getting rid of the Bootstrap >>>> Library from T5 core. >>>> I would like to move all BS related code (css/js) to a seperate module >>>> like "tapestry-bootstrap3" and decouple the hardcoded BS from T5. >>>> Furthermore I would like to see a second module "tapestry-bootstrap4" >>>> which uses BS4. >>>> >>>> From the sources I see direct dependencies are less than expected. Some >>>> tml's use it (I just ignore the internal T5 pages for now): >>>> >>>> AjaxFormLoop.tml >>>> class="btn btn-default btn-sm" >>>> <t:glyphicon name="plus-sign"/> >>>> >>>> BeanEditForm.tml >>>> class="btn-toolbar" >>>> class="btn-group" >>>> class="btn btn-primary" >>>> >>>> DevTool.tml >>>> <t:glyphicon name="cog"/> >>>> class="dropdown-menu" >>>> class="dropdown-header" >>>> >>>> ExceptionDisplay.tml >>>> class="well" >>>> class="pull-right" >>>> class="checkbox" // ? >>>> >>>> Palette.tml >>>> class="btn-group-vertical" >>>> >>>> and some JAVA references like: >>>> >>>> JavaScriptModule.java >>>> configuration.add("bootstrap/ ...") >>>> >>>> bundledModules=... >>>> >>>> >>>> Do you think it's worths looking into it, digging deeper? >>>> Any pitfalls I should consider? >>>> Anyone interested to discuss it? >>>> >>>> >>>> Jens >>>> >>>> >>>> >>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [email protected] >>>> For additional commands, e-mail: [email protected] >>>> >>>> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]