Skip to content
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

PR: House cleaning #7785

Merged
merged 47 commits into from
Sep 9, 2018
Merged
Show file tree
Hide file tree
Changes from 45 commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
b6aa16e
Remove unnessesary vitables and pythonxy icons
CAM-Gerlach Aug 13, 2018
55bbcdf
Remove no longer used PyDev and SciPy icons
CAM-Gerlach Aug 14, 2018
60a83c8
Removed no-longer-needed Qt external tools icons
CAM-Gerlach Aug 14, 2018
c386485
Remove no longer used filetype icons after considerable testing
CAM-Gerlach Aug 15, 2018
076eb49
Replace loading sprites with unclear license with homemade ones
CAM-Gerlach Aug 17, 2018
ad9b6ca
Remove alternate Python logo
CAM-Gerlach Aug 20, 2018
440365f
Remove use of Github logo
CAM-Gerlach Aug 20, 2018
41a65b6
Move and expand addtional license info from LICENSE to NOTICES.txt
CAM-Gerlach Aug 20, 2018
fb08938
Add LICENSE.txt file in root of images directory
CAM-Gerlach Aug 21, 2018
490f144
Remove outline and py PNGs from img_src that are no longer used
CAM-Gerlach Aug 21, 2018
1edcdd9
Minor reorganization and additional clarification in NOTICES.txt
CAM-Gerlach Aug 21, 2018
dd5931d
Add Font Awesome information to NOTICES.txt and SIL OFL 1.1 text
CAM-Gerlach Aug 25, 2018
f331332
Add SVG sources for Oxygen assets and accompyning text
CAM-Gerlach Aug 25, 2018
c41f349
Add MathJax license and information to NOTICES.txt and subdirectory
CAM-Gerlach Aug 25, 2018
518e98e
Add jQuery and Sizzle, along with GPLv2 and BSD-3 to NOTICES.txt
CAM-Gerlach Aug 26, 2018
847ed23
Fix headers/docstrings for QCrash and Githubpy and add to NOTICES
CAM-Gerlach Aug 26, 2018
868be7b
Move QCrash Github tests into more appropriate directory
CAM-Gerlach Aug 26, 2018
5fee34f
Add Sphinxify and related information to NOTICES.txt
CAM-Gerlach Aug 26, 2018
ef505a4
Add IPython and Jupyter QtConsole to headers and NOTICES.txt
CAM-Gerlach Aug 26, 2018
b82016f
Add BinaryOrNot headers and to NOTICES.txt, and version numbers
CAM-Gerlach Aug 27, 2018
2a6bdcb
Add LICENSE.txt and README.rst to externals dir and info to __init__
CAM-Gerlach Aug 27, 2018
fcbf413
Add Twisted copyright to headers and NOTICE.txt
CAM-Gerlach Aug 27, 2018
d79df69
Add LICENSE.txt and __init__ headers in Help utils directory
CAM-Gerlach Aug 27, 2018
6005290
Add collapse sections from Sphinx Cloud theme headers and NOTICE.txt
CAM-Gerlach Aug 28, 2018
565e4fa
Add headers and NOTICE.txt info for copybutton from PSF docs theme
CAM-Gerlach Aug 28, 2018
394d60c
Tweak headers for WaitingSpinner and add to NOTICE.txt
CAM-Gerlach Aug 28, 2018
c9a665c
Update dataframeeditor header and NOTICE.txt information
CAM-Gerlach Aug 28, 2018
2fe7ed7
Update missing/placeholder copyright statements in gettext files
CAM-Gerlach Aug 29, 2018
47b95a7
Update About dialog w/ copyright info etc and fix links not working
CAM-Gerlach Aug 29, 2018
0a42a04
Add specific legal details to README where required or requested
CAM-Gerlach Aug 29, 2018
72b3b0b
Merge latest changes from 3.x to fix Travis tests
CAM-Gerlach Sep 3, 2018
ef3f7f3
Update .ciocopyright with updated copyright headers
CAM-Gerlach Sep 4, 2018
687c9a5
Harmonize LICENSE and MANIFEST.in to LF EOLs
CAM-Gerlach Sep 5, 2018
a613360
Move NOTICES.txt to NOTICE.txt and update references
CAM-Gerlach Sep 5, 2018
b2837ee
Moves AUTHORS and LICENSE to .txt, update refs and reorg MANIFEST.in
CAM-Gerlach Sep 5, 2018
1b60100
Add additional authorship information and links to AUTHORS.txt
CAM-Gerlach Sep 5, 2018
73bc2f3
Clean up LICENSE and init docstr for reliable machine-readibility
CAM-Gerlach Sep 5, 2018
efecf03
Add instructions and template in NOTICE.txt
CAM-Gerlach Sep 5, 2018
049f0d0
Add instructions in CONTRIBUTING guide for third party projects
CAM-Gerlach Sep 6, 2018
0cd850a
Add legal affirmation to pull request template
CAM-Gerlach Sep 6, 2018
fd4e00a
Merge from 3.x to fix tests on CircleCI
CAM-Gerlach Sep 6, 2018
7c14181
Rename Oxygen Icon set directory in img_src to lower case
CAM-Gerlach Sep 7, 2018
5ce0d24
Minor text tweaks in README and LICENSE for clarity
CAM-Gerlach Sep 7, 2018
8c39472
Revert LF harmonization and re-organization in MANIFEST and fix bug
CAM-Gerlach Sep 7, 2018
d80242a
Revert About dialog change to non-modal
CAM-Gerlach Sep 7, 2018
f0bba41
Remove some non-vital blank lines in the NOTICE.txt file
CAM-Gerlach Sep 8, 2018
3f6cfc5
Merge with 3.x to fix remaining test failure
CAM-Gerlach Sep 8, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
6 changes: 3 additions & 3 deletions .ciocopyright
@@ -1,6 +1,6 @@
# -----------------------------------------------------------------------------
# Copyright (c) Spyder Project Contributors
# Copyright (c) 2009- Spyder Project Contributors
#
# Licensed under the terms of the MIT License
# Distributed under the terms of the MIT License
# (see spyder/__init__.py for details)
# -----------------------------------------------------------------------------
# -----------------------------------------------------------------------------
16 changes: 16 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Expand Up @@ -15,6 +15,22 @@
* [ ] Included a screenshot, if this PR makes any visible changes to the UI


### Affirmation

By submitting this Pull Request, I affirm that:
* I release the content of this PR under Spyder's MIT (Expat) license.
* I hold the copyright to all the content in this PR, have not copied any of it
directly or indirectly from any source other than the public domain,
and no other party owns the rights to this work.

<!--- TYPE YOUR GITHUB USERNAME OR FULL NAME AFTER THE BELOW STATEMENT ---!>
I affirm all of the above:

<!--- Note that you (not Spyder) retain copyright ownership of your work, --->
<!--- and may license it to other parties under the terms of your choice. --->
<!--- Contact us if you would like to include content from other sources. --->


## Description of Changes

<!--- Describe what you've changed and why. --->
Expand Down
5 changes: 0 additions & 5 deletions AUTHORS

This file was deleted.

25 changes: 25 additions & 0 deletions AUTHORS.txt
@@ -0,0 +1,25 @@
The Spyder Project Contributors is composed of:

* Pierre Raybaut <pierre.raybaut@gmail.com> (Main Spyder author)
* Carlos Cordoba <ccordoba12@gmail.com> (Current maintainer)
* All other developers that have contributed to the spyder repository:
<https://github.com/spyder-ide/spyder/graphs/contributors>

Additionally, some assets and code were originally sourced from third-party
authors or projects, including:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are not authors of the project, at least in the way we mean here. So I think all this text should be removed.

Developers of the several projects we have taken code from (like QCrash or gtabview) are more authors of the Spyder source code than Icon developers (I know that's debatable, but this addition doesn't make any sense to me).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Developers of the several projects we have taken code from (like QCrash or gtabview) are more authors of the Spyder source code than Icon developers

Indeed, I would normally agree with that, and not include this section. However, there is a very specific reason this is here—the licenses of at least half (2/4) the external icon sources (CC-BY) require an attribution credit wherever other authors of the covered work are normally listed, and additionally both authors if I recall explicitly requested it (that's also why I added it them to the README and kept them in the About screen, where they were already listed); the LGPL (which the other half of the icons are under) also contains a somewhat less clear clause that implies something similar. Even if some didn't require it (IANAL, after all), it would be rather odd and inconsistent to only list certain icon authors and not others so I listed all of them, as we already did in our About dialog in the application itself.

However, if you have a better idea that would still meet the legal and ethical requirements, I'm certainly open to hearing it, since this isn't an ideal solution as you mention.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

gtabview

I didn't find anything for that in my search of 3.x for third-party material, and searching for that right now reveals no hits, unlike in master where I can see it is clearly marked. Is the code in 3.x also and someone was delinquent about adding the appropriate copyright notices, disclaimer and license to that branch, or is it only in master and I'll need to do it after this is merged there?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps it is just the word "authors" that is the issue here, and we should call them "designers" or "artists".

Generally, I think we should be generous in giving credit.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct me if I'm wrong, but if I understand @ccordoba12 's point correctly, its really that we mention the icon authors there, but not those of the external source code we've used, which may arguably be seen as even more central to Spyder. I agree that its inconsistent, but including the icon authors is motivated by the requirements of the licenses and their specific requests (and they are also the ones listed in the About dialog already), while if we were to include all the authors of the code as well, it would be much longer and rather duplicative of the NOTICE.txt file. However, on the other hand, it could be seen as a convenient summary of the 4000-line latter, so if that's what's agreed on then I can do that.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the creator of an icon is its "author"

Yes, they are the authors of their icons but not the authors of Spyder.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Anyway, this is just ugly, but if we have to do it to comply to the license, then there's no point in keep arguing about it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, they are the authors of their icons but not the authors of Spyder.

Authors of the Spyder code, no. But they are as much authors of the combined end product, which includes their icons, as anyone else who contributes.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't want to keep arguing about this.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're right, sorry.


* The icons for the Spyder 3 theme are derived from Font Awesome, by
David Gandy <https://fontawesome.com/>
* Most Spyder 2 theme icons are sourced from the Crystal Project icon set, by
Everaldo Coelho <https://www.everaldo.com>
* Other Spyder 2 icons are from Yusuke Kamiyamane's icon sets, by
Yusuke Kamiyamane <http://p.yusukekamiyamane.com/>
* As well as the FamFamFam Silk icon set, by
Mark James <http://www.famfamfam.com/lab/icons/silk/>
* And the KDE Oxygen icons, by
The KDE Artists <https://www.kde.org/>

For information about the sources and authors of other third-party code
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with leaving this paragraph.

and other resources used, please see the NOTICE.txt file, located in the
root of the spyder repository or online at:
<https://github.com/spyder-ide/spyder/blob/master/NOTICE.txt>
76 changes: 76 additions & 0 deletions CONTRIBUTING.md
Expand Up @@ -212,6 +212,82 @@ To run the Spyder test suite, please use (from the `spyder` root directory):
```


## Adding Third-Party Content

All files or groups of files, including source code, images, icons, and other
assets, that originate from projects outside of the Spyder organization
(regardless of the license), must be first approved by the Spyder team.
Always check with us (on Github, Gitter, Google Group, etc) before attempting
to add content from an external project, and only do so when necessary.


### Licenses

Code considered for inclusion must be under a permissive (i.e. non-copyleft)
license, particularly as the following (in order of preference):
* MIT (Expat)
* Public domain (preferably, CC0)
* ISC license
* BSD 2-clause ("Simplified BSD")
* BSD 3-clause ("New" or "Modified BSD")
* Apache License 2.0

Additionally, external assets (fonts, icons, images, sounds, animations)
can generally be under one of the following weak-copyleft and content licenses:
* Creative Commons Attribution 3.0 or 4.0
* SIL Open Font License 1.1
* GNU LGPL 2.1 or 3.0

Additional licenses *may* qualify for these lists from time to time, but every
effort should be made to avoid it. Regardless, all such licenses must be
OSI, FSF, and DSFG approved as well as GPLv3-compatible to ensure maximum
free distribution and use of Spyder with minimum ambiguity or fragmentation.


### Steps to take

#. Contact the Spyder team to ensure the usage is justified and compatible.

#. Add the files, preserving any original copyright/legal/attribution header

#. If making non-trivial modifications, copy the standard Spyder copyright
header from ``.ciocopyright`` to just below the original headers;
if the original headers are unformatted and just consist of a copyright
statement and perhaps mention of the license, incorporate them verbatim
within the Spyder header where appropriate.
Always ensure copyright statements are in ascending chronological order,
and replace the year in the Spyder copyright statement with the current one.
Modify the license location to be the current directory, or NOTICE.txt.

#. Include the following line at the end of each module's docstring,
separated by blank lines:

```rst
Adapted from path/to/file/in/original/repo.py of the
`Project Name <url-to-original-github-repo>`_.
```

For example,

```rst
Adapted from qcrash/_dialogs/gh_login.py of the
`QCrash Project <https://github.com/ColinDuquesnoy/QCrash>`_.
```

#. Convert the files to project standards where needed.

#. If the copied file(s) reside in a directory dedicated to them, place the
source project's LICENSE.txt file there, and any other legal files.
Also, mention the same in the __init__.py file in that directory.

#. Add an entry in NOTICE.txt with the instructions and template there.

#. If a non-code visible asset (icons, fonts, animations, etc) or otherwise
under a Creative Commons license, include a mention in the appropriate
section of the README, as well as Spyder's About dialog, in the same form
as the others present there.


## More information

[Main Website](https://www.spyder-ide.org/)
Expand Down