phetsims / chipper

Tools for developing and building PhET interactive simulations.
MIT License
11 stars 14 forks source link

MIT HTML sim license support #689

Closed jonathanolson closed 5 years ago

jonathanolson commented 6 years ago

We'll need to support MIT-licensed sims. We'll want to investigate what potential code changes there would need to be for sims (and for things like the website/metadata).

mattpen commented 6 years ago

@jonathanolson - We currently store whether a given sim is covered by cc-by license in the database and it is hard coded that all sims are covered by GPL license.

Currently there are only 4 sims NOT covered by cc-by:

website_production=# select hascreativecommonsattributionlicense , count(hascreativecommonsattributionlicense) from simulation group by hascreativecommonsattributionlicense;
 hascreativecommonsattributionlicense | count
--------------------------------------+-------
 f                                    |     4
 t                                    |   206
(2 rows)

website_production=# select name from simulation where hascreativecommonsattributionlicense = false;
       name
-------------------
 band-structure
 quantum-tunneling
 bound-states
 covalent-bonds
(4 rows)

We could fairly easily add another field into the database for MIT license (and GPL if MIT sims are not compatible with GPL) and add methods to toggle them from the administration page.

jonathanolson commented 6 years ago

We could fairly easily add another field into the database for MIT license (and GPL if MIT sims are not compatible with GPL) and add methods to toggle them from the administration page.

Yes, we probably want flags for each license that something is released under (since we are presumably NOT releasing the new sims under GPL, we wouldn't want that to show up). So basically 3 flags (cc-by, gpl, mit).

Do we need a way for a sim lead to change the license options? Should this be something automated?

samreid commented 6 years ago

Would it be sufficient for the manual step to be committing the LICENSE file, then if any steps need to be automated, they could use that as "ground truth"?

mattpen commented 5 years ago

Please reassign me if further input is needed.

jbphet commented 5 years ago

I need support for MIT license in a sim, please see https://github.com/phetsims/energy-forms-and-changes/issues/55. The sim is scheduled to be released in January 2019, so it would be good if this could be ready be early January. @mattpen and @jonathanolson - can this work be done in that time frame?

mattpen commented 5 years ago

@jonathanolson - Can you please confirm if I understand correctly?

A sim could be covered by the CC-BY license, the GPL License, both CC-BY and GPL, or the MIT license. Are there any other combinations that might be feasible (at least for now)?

jonathanolson commented 5 years ago

So we are moving the code AND the built results to MIT?

I'm interested in @mattpen's thoughts. Maybe we should have each runnable's package.json note all of the licenses we release things under?

On my end, it would just be changing the logic in buildRunnable.js to add the license snippet at the top of built files presumably.

jbphet commented 5 years ago

@jonathanolson - you assigned this to me, so I'm thinking you want me to answer the question

So we are moving the code AND the built results to MIT?

I didn't realize that the source code and the build results could be licensed in different ways. @kathy-phet just told me that the funder wanted the sim to be licensed as MIT. It seems to me that licensing both as MIT covers our bases, so unless there is a good reason not to do that, I'd go that route. If there is more information and discussion needed for this, we would need to talk to @kathy-phet.

jonathanolson commented 5 years ago

It seems to me that licensing both as MIT covers our bases

That sounds the safest to me.

If there is more information and discussion needed for this, we would need to talk to @kathy-phet.

I believe that's appropriate, as I'm curious what the license snippet in a built HTML file should show. And since we can make things available under multiple licenses, does that mean we could use CC-by, MIT, and other licenses for the same file?

@kathy-phet the current copyright header for built files is:

englishTitle + ' ' + version
Copyright 2002-' + grunt.template.today( 'yyyy' ) + ', Regents of the University of Colorado
PhET Interactive Simulations, University of Colorado Boulder

This file is licensed under Creative Commons Attribution 4.0
For alternate source code licensing, see https://github.com/phetsims
For licenses for third-party software used by this simulation, see below
For more information, see https://phet.colorado.edu/en/licensing/html

The PhET name and PhET logo are registered trademarks of The Regents of the
University of Colorado. Permission is granted to use the PhET name and PhET logo
only for attribution purposes. Use of the PhET name and/or PhET logo for promotional,
marketing, or advertising purposes requires a separate license agreement from the
University of Colorado. Contact phethelp@colorado.edu regarding licensing

What should it be in this case (and generalizing to future cases, can we assume something like "sims have a list of licenses we publish them with, and we include a certain snippet of text for each license"?)

kathy-phet commented 5 years ago

Hi All, The only change needed from our typical sim process is to change the license in the repository for EFAC from GPL to MIT. No change is needed in the website or the copyright header of the text in the published simulation above. The published sims on our website will still be CC-BY. Its just a change in how we license the source code for these particular sims - so the repository for them needs to be more open (e.g. MIT).

kathy-phet commented 5 years ago

Also, just FYI, since this is code we created, we can release it under multiple licenses - GPL, MIT, etc. - and the person using it can choose which license. But for simplicity, just make the repository MIT. And the built sim CC-BY.

mattpen commented 5 years ago

Removing assignment as no changes are needed on the website for now.

jbphet commented 5 years ago

Based on the conversation that I just had with @kathy-phet (see details in https://github.com/phetsims/energy-forms-and-changes/issues/55#issuecomment-444227551) and with @jonathanolson, nothing more needs to be done here, at least for now. Closing.