-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade Font Awesome #81
Comments
Here is a link to FA licensing: https://fontawesome.com/license/free
|
Here is the 4.7.0 licensing: https://fontawesome.com/v4.7.0/license/
So the CC BY 4.0 License seems to be new for FA 5 icons. |
Adding developer meeting label to review with team and see if anyone can confirm that CC BY 4.0 is usable by PhET. |
CC BY 4.0 requires:
We provide some (but not all of this) in https://github.com/phetsims/sherpa/blob/master/third-party-licenses.md. To my knowledge, none of this is provided in the sim or in the app. It may be the most cost-effective route for PhET to subscribe to the pro license for font awesome, which is described at https://fontawesome.com/plans#faq-standard-pro-license |
FYI... SVG for icons can be downloaded directly from the FA website, by pressing the "Download SVG" button. E.g. for icon user-cog (the one that @jessegreenberg is interested in): Then you'll get a dialog like this, informing you of the license requirements: The "link to the license" hyperlink takes you to https://fontawesome.com/license. |
Some other sources for icons, perhaps with easier licensing: https://lineicons.com/blog/font-awesome-alternatives/ |
12/10/2020 dev meeting: The question is whether the new FA license (CC-BY) is compatible with PhET. @samreid recalls that CC-BY was not approved when PhET had a legal review a few years ago. PhET has been using MIT. CC-BY puts restrictions on how we can relicense sims. @jonathanolson said that PhET licenses its sim as CC-BY. He's skeptical that FA license will work, because we need to be GPL compatible. @ariel-phet How much is the paid plan? @samreid $90/year for 5 "seats". @jonathanolson doesn't solve the issue because we're redistributing. @ariel-phet we can't go down this road. @jonathanolson we could look for other sources for new SVG icons. @samreid for user-cog, we could combine two FA 4 icons (user + gear). @samreid suggested asking @kathy-phet check with legal. What needs to be done to upgrade to new FA license? @samreid will put on agenda for next status meeting. Could also ask FA if they'd give us special license terms. Assigned to @samreid to bring up at status meeting. |
CC-BY is how we license the simulations, and it should be compatible with even our licensed commercial products we offer in terms of PhET-iO. We just need to attribute the image to them, but I will check with my contacts at Creative Commons that doing so in the HTML code will be sufficient. It doesn't have any GPL type of issues. |
@samreid - Currently within the HTML sim code file we do have this text in our license section (taken from Build a Molecule): "font-awesome-4.5.0": { | "text": [ |
Font Awesome 5.0's free license says:
So Font Awesome is CC-BY. There was a recent article from creative commons, saying that even the more restrictive "CC-BY-SA" is one-way compatible with GPL. https://creativecommons.org/2015/10/08/cc-by-sa-4-0-now-one-way-compatible-with-gplv3/. So since we would be using the less-restrictive CC-BY, it seems permissible. @kathy-phet thanks for reminding me that the attributions appear in the built HTML files. Since we are already providing attribution, it seems like we can proceed with this. I recall in Thursday's meeting @jonathanolson and @pixelzoom raised other concerns or commented on these concerns, so I'll reassign to them for further discussion. @ariel-phet also asked me to add an agenda item for Thursday status meeting--we can also touch base then if we haven't concluded discussion in the issue beforehand. |
The concern I raised was simply that you can't upgrade sherpa to a new version of FA, or cherry-pick icons (via their web interface) from newer versions of FA, because the license has changed. It's up to PhET to decide how to proceed with evaluating the new license, resolving any licensing issues, and/or finding other sources for SVG icons. Advice on licensing issues is not a service that PixelZoom provides, so unassigning myself. |
If joist/sun/scenery-phet is relying on that (and it doesn't look MIT-compatible, see https://opensource.stackexchange.com/questions/7435/mit-licensed-project-with-cc-by-sa-dependency), then I'm concerned. Strong preference to either use alternatives, or have someone look into whether we wouldn't run into issues. |
The links you described refer to "CC-BY-SA" but Font Awesome is "CC-BY" without the "SA" restrictions. Does the same argument apply? |
A quick read of https://creativecommons.org/licenses/by/4.0/legalcode doesn't seem compatible with the MIT license. |
@jonathanolson - My understanding here is that the code remains MIT and the images then remain CC-BY. They can be combined and redistributed, but we will need to specify that the images are CC-BY. We handle this fine in the HTML file. The license needs a tweak. And I will need to consult the lawyers as well. |
My concern is that the derived work is specifically embedded and checked into our MIT'ed source code, e.g. https://github.com/phetsims/sun/blob/master/js/FontAwesomeNode.js |
Discussed with @samreid, he will do a bit more work before my review. |
I pushed icons.json from fontawesome, keeping the same directory structure in case we later decide to commit more of that library. In discussion, @zepumph and I agreed to commit and push all font awesome icons. However, some are having Shape assembly errors, so I'll leave those off of the master list for now. It added a 5 second delay to start up scenery-phet, so @zepumph and I discussed adding it as an isolated scenery test. |
I added a scrollable, zoomable test at scenery/tests/fontawesome5.html. I think everything is all set for review. @zepumph please let me know if I've missed anything. |
Sherpa was not linted because of this line (and others) https://github.com/phetsims/chipper/blob/6e4d288b017138d901e982e75638b22e9fc5eeb0/js/grunt/lint.js#L30. I noticed you added an eslintignore file, but I couldn't get our linter to work with multiple eslintignore files. Perhaps just a defect of the NodeAPI we use in lint.js (which takes an arg of a single ignore file). I updated the project to lint sherpa, and I added a top level eslintrc file in sherpa that is set up to ignore the necessary files. please review. fontawesome5.html is very cool. Can you describe the use of it? Is it to test that the icons work? I don't see a way to use that to pick my icon, as I don't know how to go from icon to name. Likely this isn't the purpose of the html scrap. Do you want to do anything with this? Load it on CT? Perhaps like: Index: js/listContinuousTests.js
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/js/listContinuousTests.js b/js/listContinuousTests.js
--- a/js/listContinuousTests.js (revision 85ccba1aa6c5d75f685e6c3ac86540b52dac7bdc)
+++ b/js/listContinuousTests.js (date 1613526983532)
@@ -275,7 +275,8 @@
'tests/',
'tests/playground.html',
'tests/renderer-comparison.html?renderers=canvas,svg,dom',
- 'tests/text-quality-test.html'
+ 'tests/text-quality-test.html',
+ 'tests/fontawesome5.html'
]
}
].forEach( ( { repo, urls } ) => {
It looks like #83 is for discussing if we get rid of all font awesome 4 content in the project. Without knowing any of the details, it would be nice to do that! Swapping the import lines for the individual generated icons' template means that the output icons don't change when autoformatting. Please review my commit. Thanks for doing all this awesome work! |
sherpa/.eslintrc.js looks great, I tried commenting out a line to see that font awesome would be linted and it worked as expected, thanks! fontawesome5.html was developed as a manual test harness to see if all the icons could render. It helped us identify this issue: phetsims/kite#88. I don't think it should be added to CT--it takes too long to run and would be testing code that is unlikely to change. I think we covered everything, back to @zepumph to close if we are all set. |
I needed a new icon from Font Awesome that is not in the version we have. Considering upgrading but there was some uncertainty around licensing. Font Awesome also changed a lot between versions 4 and 5. For instance, the old fontawesome-webfont.svg file has been replaced by a different file called sprites/solid.svg.
We need to make sure that FA 5 licensing allows PhET to use it, and that the changes in FA 5 still work with FontAwesomeNode.js.
The text was updated successfully, but these errors were encountered: