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

Missing license headers on some files in the AVR core #1847

Closed
matthijskooijman opened this issue Feb 6, 2014 · 5 comments
Closed

Missing license headers on some files in the AVR core #1847

matthijskooijman opened this issue Feb 6, 2014 · 5 comments
Labels
Component: Core Related to the code for the standard Arduino API
Milestone

Comments

@matthijskooijman
Copy link
Collaborator

I needed to copy some files from the AVR core and noticed some files did not have a copyright and license header. For consistency, it seems good to make sure all files have one. Since adding licensing is not something to do lightly (as setting a license is normally the sole right of the author of a work), I'll first summarize the affected files and propose a way forward for each.

  • Arduino.h This shows contributions from different people, but mostly from the Arduino team. Let's add "Copyright 2005-2013 Arduino Team" and LGPL 2.1+.
  • binary.h. This file's content was only touched by David. A. Mellis. It's not really much of a creative work, but let's add "Copyright 2006 David A. Mellis" and LGPL 2.1+. @damellis, ok?
  • Client.h, IPAddress.cpp and Server.h. These were originally added in this form by Adrian McEwen. Since Adrian also added IPAddress.h with a copyright header and MIT license, I suggest adding "Copyright 2011 Adrian McEwen" and an MIT license. @amcewen, is that ok for you?
  • USBAPI.h. This was commited in 9b954df by Zach Eveland. A few commits later it was renamed and the corresponding implementation was added in 3f6df05. The implementation is copyrighted by Peter Barret and has the ISC license, so it seems reasonable that the .h file was also written by him. I'd propose adding "Copyright 2011 Peter Barret" and the ISC license to this file. @zeveland, does this sound ok? @Peter-Barrett, did you indeed write the code in this file?
  • main.cpp. This file was originally added by David A. Mellis and touched by Zach Eveland and Christian Maglie. Since it's really simple but also very Arduino-specific file, I'd propose adding "Copyright 2005-2013 Arduino Team" and LGPL 2.1+.
  • new.cpp and new.h. It seems these were taken from the avrfreaks forum, but there is no indication of copyright or license in that post (it's not even clear if the poster actually wrote the code or just collected it). Instead of figuring this out, it might be better to just replace these files with better implementations right away. See Correct implementation of gcc specific internal functions #107 and Fix operator new #108 for this.
  • Platform.h. This file just contains some includes and trivial typedefs. It is used by the CDC serial code, but I suspect that this code was not written by Peter Barret, but by Zach Eveland when he integrated Zach's code. So I'd propose adding a "Copyright 2011 Zach Eveland" and ISC license to it. @zeveland, does that sound correct?
  • HardwareSerial0.cpp (and also 1, 2 and 3). These files were added by me, copying code from HardwareSerial.cpp. I propose copying the copyright header and LGPL2.1+ license from HardwareSerial.cpp to them.

If I've pinged you with a question above, please comment with your agreement below (preferably repeat my proposal so there can be no misunderstanding about what code you wrote and what license you want to use). If my proposal does not sound good, of course also say that :-)

@amcewen
Copy link
Contributor

amcewen commented Feb 7, 2014

Sounds like a sensible idea. (And apologies for missing the copyright on the initial versions!). I'm happy to go with whichever licence makes most sense for the Arduino team, which seems like MIT or LGPL would be the most sensible.

Happy to submit a pull request with the licences added if that makes the assignation clearer (as it would come from the same github account as the original then)

@cmaglie
Copy link
Member

cmaglie commented Feb 7, 2014

While waiting for other answers I'm updating the following files to LGPL 2.1+:

Arduino.h, binary.h (I guess that @damellis agree with the change but I'll ask him directly just to be sure), main.cpp, HardwareSerial*.cpp as suggested by @matthijskooijman

@amcewen, thanks for your answer, I'll put the same Arduino LGPL 2.1+ license on your files Client.h, IPAddress.cpp and Server.h.

@cmaglie
Copy link
Member

cmaglie commented Feb 7, 2014

@amcewen I've just realized that in IPAddress.h you've already used MIT license (I should read better before replying), is ok for you if I change also that to LGPL 2.1+? The most part of the Arduino core is LGPL, so I'm trying to keep the number of different license low, but I'm fine also if you want to keep the other files with the MIT license, just tell me what to do.

C

@amcewen
Copy link
Contributor

amcewen commented Feb 10, 2014

Updating IPAddress.h to match the rest of the core is fine with me.

@cmaglie
Copy link
Member

cmaglie commented Sep 12, 2014

Fixed license for USBAPI.h and removed Platform.h by integrating it in USBAPI.h.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Core Related to the code for the standard Arduino API
Projects
None yet
Development

No branches or pull requests

4 participants