Repository navigation
Remove\Trim copyright on individual files #2485
Description
Activity
I think we definitely need a header on each file. Traditionally, the MIT license has appeared in full in each file in most software that uses it, while GPL and Apache used a standard short header that refers to the full license. Microsoft's use of a short reference header for the MIT license is a bit of a change from tradition.
@nunit/core-team members: Is this an issue for the core team or for the individual project lead? My feeling that it pertains to the project, in which case @rprouse should decide what he wants to do - with input from the team, of course. IMO, it's not a user issue since it doesn't affect the product.
My own feeling: it would be OK to change but not a big priority. We should do it internally if and when we are ready and not accept any outside PRs on it. We just made a global change to the copyright headers and I don't see any reason to rush into making another one just to save 20 or so lines.
All legal issues being equal, I'm for less ceremony. I don't have to scroll as far down in every file and that's nice. Similarly, I don't see any reason to constrain individual project leads from whichever they prefer.
A recurring thought is that I would love to have an analyzer that lets me insert/update copyright headers using Ctrl+. and that warns me when I forget. Would be the easiest thing in the world to write and it would automatically be there for every NUnit contributor in every IDE without them setting anything up.
See also the Cake project:
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information.
Cecil:
// // Author: // Jb Evain (jbevain@gmail.com) // // Copyright (c) 2008 - 2015 Jb Evain // Copyright (c) 2008 - 2011 Novell, Inc. // // Licensed under the MIT/X11 license. //
OpenLiveWriter:
// Copyright (c) .NET Foundation. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for details.
These have an MIT LICENSE.txt but no headers, which is what all my projects do:
- AutoMapper
- BenchmarkDotNet
- Nancy
- Orleans
- Prism
- Protobuild
- Umbraco
- WorldWide Telescope
I agree this is a Project Lead decision. I have no personal preference.
I would be okay with the shorter header. I have thought about doing the same thing myself. Not a high priority though.
Specific wording is important, obviously. Handling files that are licensed differently is also an issue.
Scope of this "standard" is also important: organization? core projects? project by project?
Closing this issue, as #3795 has just been merged. So now the copyright header is just a single line
// Copyright (c) Charlie Poole, Rob Prouse and Contributors. MIT License - see LICENSE.txt
It seems a little overkill to have to include the full copyright text (22 lines) on each file. Couldn't this be removed as the license is in the root of the project in a license.txt file. Failing that, could you reduce it down to "see license.txt" like VS Code has done like:
https://github.com/Microsoft/vscode/blob/master/src/bootstrap.js