You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Historically, alarmingly, these files were not treated as static dependencies to be left alone and patched with additional overrides from the outside, but as files owned by SpaceDock; edits were made to the Bootstrap files themselves to fix SpaceDock-specific problems or tweak SpaceDock's page layouts.
This is (very?) bad practice because:
It's impossible to tell at a glance whether a given style directive is really part of Bootstrap or a hack added later by SpaceDock devs without digging into the git log, which makes investigating and fixing visual problems more difficult.
We can't upgrade our version of Bootstrap, which is currently stuck at v3.3.6 (from 2015!!) while the upstream project has moved on to v5.1.3 as I write this, because we would lose all these hack changes if we replaced our static copies of the Bootstrap files, completely breaking the layout.
Suggestions
Remove all SpaceDock-specific hacks from these files by checking their git log
Move them to separate stylesheet files that are clearly identifiable as SpaceDock-specific
Remove the embedded copy of Bootstrap from the source repo
Switch to installing Bootstrap with npm
Upgrade Bootstrap to a recent version
This would make it much easier for us to make big changes like migrating away from Bootstrap if we wanted to do that, or adding a new frontend dependency like AdminLTE if we wanted to do that (and as @V1TA5 does very much want to do).
The text was updated successfully, but these errors were encountered:
Checking the ancient history of the repo, it looks like this is only a problem for the CSS files, not Javascript. The latter are installed as .min.js files that I do not think have been edited. 🎉
The parts about Bootstrap v3.3.5 and v3.3.6 and copyright Twitter Inc made it sound like this is a standard file from Bootstrap (and indeed, bootstrap does ship a file by that name). Yet the "Generated using the Bootstrap Customizer" part suggests that it wasn't a file owned by the Bootstrap installation itself, but rather that Bootstrap intentionally sets that file aside for sites to customize. So it is OK to edit it, and it's OK to keep it in the repo, which should make it a lot easier to clean up the repo.
Background
SpaceDock's layout is based on Bootstrap, which has been installed by copying the Bootstrap files to /frontend/static/css and /frontend/static/js.
Problems
Historically, alarmingly, these files were not treated as static dependencies to be left alone and patched with additional overrides from the outside, but as files owned by SpaceDock; edits were made to the Bootstrap files themselves to fix SpaceDock-specific problems or tweak SpaceDock's page layouts.
This is (very?) bad practice because:
Suggestions
npm
This would make it much easier for us to make big changes like migrating away from Bootstrap if we wanted to do that, or adding a new frontend dependency like AdminLTE if we wanted to do that (and as @V1TA5 does very much want to do).
The text was updated successfully, but these errors were encountered: