CARTAvis / carta-backend

Source code repository for the backend component of CARTA, a new visualization tool designed for the ALMA, the VLA and the SKA pathfinders.
https://cartavis.github.io/
GNU General Public License v3.0
22 stars 11 forks source link

Add copyright heading to source code #40

Closed pford closed 3 years ago

pford commented 5 years ago

Once the text is agreed upon

veggiesaurus commented 5 years ago

in the meantime, I've added a COPYING.md file to both repositories, with the GPL license. But I guess each source code file should have a header as well

confluence commented 5 years ago

To the best of my knowledge (and I am not a lawyer, so we should find a reputable source) there is no legal reason to put copyright headers in individual files. It's purely a matter of taste. I know that some projects have done this historically, but it is sufficient to have a single licensing statement (and probably a copy of the licence) in the repo.

I'm -1 to cluttering up individual files with headers which will have to be maintained separately and added to each new file.

I guess that a header would add context to a file from the project that someone obtains in isolation (something which doesn't seem very likely in the first place), but given that the repo is public, code fragments can easily be identified with a web search.

pford commented 5 years ago

I checked with NRAO management, and the official NRAO policy is to have the license in every file.

The last section of COPYING.md, "How to Apply These Terms to Your New Programs", shows the notice to attach to the file and a short notice in include in "About" in a GUI. NRAO specifies this line in the notice: Copyright (C) Associated Universities, Inc. Washington DC, USA. and we would need to include the other organizations.

veggiesaurus commented 5 years ago

It's also specified on the GPL website that you need a header. I don't think it's legally required, but if it's a GPL directive and an NRAO policy, I guess we'd better put it in.

confluence commented 5 years ago

Fair enough. In that case, please let me know when the text has been finalised.

On Thu, Mar 7, 2019 at 7:24 PM Angus Comrie notifications@github.com wrote:

It's also specified on the GPL website that you need a header. I don't think it's legally required, but if it's a GPL directive and an NRAO policy, I guess we'd better put it in.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/CARTAvis/carta-backend/issues/40#issuecomment-470617133, or mute the thread https://github.com/notifications/unsubscribe-auth/AAnvFnFzH9ddWBWsHjteiXAOTe6Gp530ks5vUUs0gaJpZM4ZdG6F .

-- Adrianna Pińska

confluence commented 4 years ago

After some discussion over email, the current plan is to use a copyright statement followed by a one-line SPDX licence identifier (a new, compact and machine-readable standard which has been adopted by the Linux kernel). We will possibly also add a line at the start identifying the file as part of this project.

Proposed format:

// This file is part of the CARTA Image Viewer: https://github.com/CARTAvis/carta-backend
// Copyright 2018, 2019, 2020 Academia Sinica Institute of Astronomy and Astrophysics (ASIAA), Associated Universities, Inc. (AUI) and the Inter-University Institute for Data Intensive Astronomy (IDIA)
// SPDX-License-Identifier: GPL-3.0-or-later

Please comment in this thread if you have any thoughts about this format.

confluence commented 3 years ago

Followup question: what about the protocol buffer code? Should it be included? My instinct would be to use a more permissive (MIT-style) licence for it because it's a low-level component, to encourage interoperability, but I'm open to other suggestions. We can also leave it out of this change, but that doesn't answer the underlying question of how it should be licensed.

veggiesaurus commented 3 years ago

Followup question: what about the protocol buffer code? Should it be included? My instinct would be to use a more permissive (MIT-style) licence for it because it's a low-level component, to encourage interoperability, but I'm open to other suggestions. We can also leave it out of this change, but that doesn't answer the underlying question of how it should be licensed.

I agree that it would be good to do a MIT licence for it.

confluence commented 3 years ago

I'm leaving the protocol buffers out of this; those changes should be done in their respective repositories. I have switched to a multiline comment style and wrapped the copyright holders (otherwise clang does its own wrapping and makes a mess).