pydata-sphinx-theme icon indicating copy to clipboard operation
pydata-sphinx-theme copied to clipboard

upgrade FontAwesome dependency to latest version

Open ThibHlln opened this issue 1 year ago • 5 comments

This is a PR to propose an upgrade to the latest version of FontAwesome (i.e. v6.1.2). Moving from 5.13.0 to 6.x.x provides to pydata-sphinx-theme users with a richer bank of icons, and also more up to date versions of brand logos (e.g. GitLab).

ThibHlln avatar Aug 10 '22 13:08 ThibHlln

Won't this break many of the existing class names? If I recall, their css structure change right? Eg it went from fas to fa-solid?

I think it's a good idea in general to keep up to date with these icon packs, but we should figure out how disruptive of a change it would be.

choldgraf avatar Aug 10 '22 13:08 choldgraf

I've checked in their docs, and there is backwards compatibility for style names https://fontawesome.com/docs/web/setup/upgrade/whats-changed#full-style-names

ThibHlln avatar Aug 10 '22 13:08 ThibHlln

I'd vote that we wait on this until after the 0.10 release. probably nothing will break, but to me the gain seems pretty minimal, so that it's not worth the risk of needing to scramble to fix things if something does break.

drammock avatar Aug 10 '22 20:08 drammock

As we are relying on version 5, some projects maybe still use version 4 (backward compatible). Also it's going to break custom css for sure. As an example I customize icons in the navbar using css identifier, they will stop working (https://github.com/pydata/pydata-sphinx-theme/issues/400).

Apart from finding a way to notify the users about this change I think we should follow what is done in sphinx-design (as they have all the icon-related directives) and only update the version once they do. what do you think?

12rambau avatar Aug 10 '22 21:08 12rambau

Agreed it makes sense to hold off to 0.11 👍

Note that I don't think that this one will break anything as-is, because it doesn't actually change any of our CSS classes, it just loads the latest FontAwesome, and since it is backwards-compatible with both v4 and v5 I don't think it'd disrupt anything right?

I think the path of least resistance here would be:

  1. Merge this in without changing any of our CSS classes.
  2. Open an issue to track us updating our CSS classes to use FA6 class structures. This will be the breaking change but we can do it in the future.

choldgraf avatar Aug 11 '22 12:08 choldgraf

  • Issue to track changing the classes: https://github.com/pydata/pydata-sphinx-theme/issues/881

choldgraf avatar Aug 19 '22 12:08 choldgraf