Bug 1115659

Summary: Review Request: bootstrap - A front-end framework for developing projects on the web
Product: [Fedora] Fedora Reporter: Ralph Bean <rbean>
Component: Package ReviewAssignee: Nobody's working on this, feel free to take it <nobody>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: dcallagh, michele, ngompa13, package-review, tomspur
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-04-04 16:02:21 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 977126, 1115665, 1115668, 1115669, 1115670, 1115671, 1115672, 1115673, 1115674, 1115676, 1115677, 1115678    
Bug Blocks:    

Description Ralph Bean 2014-07-02 21:02:38 UTC
Spec URL: http://ralph.fedorapeople.org//bootstrap.spec
SRPM URL: http://ralph.fedorapeople.org//bootstrap-3.1.1-2.fc20.src.rpm

Description:
A front-end framework for developing responsive, mobile first projects on the
web.

Comment 1 Ralph Bean 2016-04-04 16:02:21 UTC
I'm no longer pursuing this.

Comment 2 Dan Callaghan 2017-06-12 05:52:15 UTC
Ralph, just wondering why you gave up on this? No longer needed, or too hard for some other reasons? Do you happen to remember what else would be needed to get this going again?

Comment 3 Dan Callaghan 2017-06-12 05:53:18 UTC
Specifically I was thinking it would be nice if resultsdb_frontend didn't reference off to some third party CDNs for downloading its CSS and JS dependencies... Looks like the Bootstrap bits are the only ones not already packaged in Fedora.

Comment 4 Ralph Bean 2017-06-12 15:40:19 UTC
Yeah, the dependencies to *build* bootstrap were enormous.  I wrote a script (npm2spec[1]) to automate it, but getting through the hundreds of reviews took years.  If I included buildtime dependencies to run the tests, there were over 1000 upstream projects that needed to be packaged.  Even after I got some of these were approved, maintaining the nest of pinned-version deps between all the nodejs components turned out to be overwhelming.

I ended up building my own version of bootstrap and hosting a shared copy on fedoraproject.org (a kind of "local to fedora" CDN) or bundling it with the projects that needed it (this ended up being more common).

For resultsdb_frontend, I would recommend pointing to a copy of bootstrap using a URL that administrators can configure.  By default, it can point to a CDN, but you can optionally host a local-to-your-site copy of bootstrap and configure resultsdb to request it from there.

[1] - https://github.com/ralphbean/npm2spec

Comment 5 Ralph Bean 2017-06-12 15:41:18 UTC
See this for the dep chain:  https://bugzilla.redhat.com/showdependencytree.cgi?id=1115659&hide_resolved=0

Comment 6 Dan Callaghan 2017-06-13 00:50:10 UTC
Yeah, wow... I had a feeling it would be something nightmarish like that. I've had a bit of a taste of it myself from the handful of nodejs packages I'm maintaining.

The NPM ecosystem is in quite a sorry state IMHO, this trend towards publishing little four-line functions as their own entire separately-maintained, separately-versioned, separately-licensed "package" is dumb and just makes life painful for everyone...

Comment 7 Neal Gompa 2017-06-13 02:35:04 UTC
Just popping in to say that is a truly hideous dependency chain. I don't know how anyone could stand to deal with that...

Has anyone told the nodejs community that they're heading towards bad road?

Comment 8 Dan Callaghan 2017-06-13 05:39:41 UTC
I thought the left-pad fiasco would have been a bit of a wake-up call for them, but it seems it wasn't...