License header: Difference between revisions
Dan Polansky (talk | contribs) No edit summary |
Dan Polansky (talk | contribs) No edit summary |
||
| Line 81: | Line 81: | ||
*/ | */ | ||
</pre> | </pre> | ||
Notes: The authors are not stated on a per-file basis; they can be seen from the commit history. See also https://api.libreoffice.org/share/readme/LICENSE.html. | Notes: The authors are not stated on a per-file basis; they can be seen from the commit history. See also https://api.libreoffice.org/share/readme/LICENSE.html. A similar header (not stating individual contributors) was seen in other files[https://github.com/LibreOffice/core/blob/master/basic/source/runtime/iosys.cxx][https://github.com/LibreOffice/core/blob/master/dbaccess/source/core/dataaccess/ComponentDefinition.cxx]. | ||
== Links == | == Links == | ||
Revision as of 06:57, 15 May 2026
What follows includes reports on current license header practice in FreeMind as well as design considerations on how things could be done in future and what principles to apply. In support of the latter, practice in other free/open-source (FOSS) projects is considered.
FreeMind license header
FreeMind uses the following license header in .java files (see also Licensing; keywords: copyright header, copyright notice):
/* FreeMind - A program for creating and viewing mind maps * Copyright (C) 2000-<YEAR> <AUTHORS> * See COPYING for Details * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
Questions:
- What detail and granularity of authorship should be maintained in the license header?
- Would it suffice to identify the license more succinctly, e.g. "License: GNU GPL V2+; see COPYING for details"? For instance, the applicable SPDX license identifier is "GPL-2.0-or-later"[1].
- What FOSS projects use this kind of succincts identification?
- What FOSS projects use SPDX identifier and in what way?
Example author-declaring lines in the license headers of FreeMind 0.9.0:
- Copyright (C) 2000-2001 Joerg Mueller <joergmueller@bigfoot.com>
- Copyright (C) 2000-2006 Joerg Mueller, Daniel Polansky, Christian Foltin, Dimitri Polivaev and others.
- Copyright (C) 2000-2006 Christian Foltin and others
- Copyright (C) 2000-2004 Joerg Mueller, Daniel Polansky, Christian Foltin and others.
Helpful queries using Unix-like oneliners:
- grep -r --include="*.java" "Copyright" .
- grep -h -r --include="*.java" "Copyright" . | sort | uniq
- grep -h -r --include="*.java" "Copyright" . | sed "s/.*\(C\).*[0-9] *//" | sort | uniq
- This one drops the beginning with years and year ranges.
Examples from other FOSS projects
Example author-declaring line in Emacs[2]:
- Copyright (C) 2023-2026 Free Software Foundation, Inc.
Notes: the license header resembles that of FreeMind. GNU Emacs requires copyright assignment to FSF, making the above possible.
Example license header from Linux[3]:
// SPDX-License-Identifier: GPL-2.0-only /* * kernel/sched/core.c * * Core kernel CPU scheduler code * * Copyright (C) 1991-2002 Linus Torvalds * Copyright (C) 1998-2024 Ingo Molnar, Red Hat */
Example license header from LibreOffice[4]:
/* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */
Notes: The authors are not stated on a per-file basis; they can be seen from the commit history. See also https://api.libreoffice.org/share/readme/LICENSE.html. A similar header (not stating individual contributors) was seen in other files[5][6].