I've seen some projects that - with each new year - start to change all files in their source-tree to update the copyright year.

Isn't this just pushing hot air on a level of magnitude? AFAIK:

  • Copyright year is based on relevant changes of a work (also) - not only because of a trivial change of the copyright year in a file-header that is the only change.
  • Changing nearly all files without an actual need brings the code out of order in version control.

I can't help myself but have problems to see why someone wants to do such superfluous stuff, albeit I know some projects are doing this (for example Zend Framework 1 in 2012).

Is there any use in changing the copyright year in each file only because Jan 1st has passed?

  • I don't understand the problem. Its a trivial change even in the largest projects. Although I would agree the copyright should only be updated in files that were actually updated, the reason for that, would be an entirely different then yours.
    – Ramhound
    May 17 '13 at 12:19
  • @Ramhound: Probably my problem is I don't see a reason to update the headers only because it's January 1st. So if you know one, I would be more than happy to learn about it. Or did you mean because it's trivial most often folks don't care if it is necessary or not and so because of the trivial nature it's very easy to do mistakes?
    – hakre
    May 17 '13 at 12:41
  • You update templates and then do a Find and Replace across all files. There are lots of legal reasons you should do it. As for the reason you don't do it for every single file, there are historical considerations, you don't update a file that has not been touched since 2000.
    – Ramhound
    May 17 '13 at 12:51
  • 2
    AFAIK from a legal standpoint (alone) you should not update the file only because it is January 1st. So I wonder where those "lots of legal reasons" come-from that say it should be done you point to here. Can you name something or is that "lots" just unquantified?
    – hakre
    May 17 '13 at 13:46
  • are you talking about code which a company would publish to the outside world here, or are you talking about all code?
    – PeteH
    May 17 '13 at 13:48

"All problems in computer science can be solved by another level of indirection." (quote source)

In one of my past projects, we once got such kind of requirement. It has been solved once and forever by inserting a "copyright placeholder" into source code stored under version control:


Whenever any change in that text was required, for whatever reason, we simply modified copyright template containing actual copyright text in our release scripts, so that published code has gotten that template inserted instead of placeholder.

Easy peasy, and programmers didn't waste their time trying to figure is there any use in changing the copyright.

  • 1
    exactly what I was about to post, I'd also add that In some companies I've been able to get away with not putting a date at all, it isn't really needed
    – jk.
    May 17 '13 at 11:43
  • @jk. back then my intuition also told me me update isn't needed, there are some good points in that in related question. However, since the change turned out so minor and easy to do (actually, with placeholder I even stopped noticing when changes happened), cumbersome diving into tricky legal matters became an issue of idle curiosity, so that I didn't bother to learn more
    – gnat
    May 17 '13 at 11:55
  • I think your answer suggest a different expression of the same problem. You just have moved it out of the source-tree (and for that matter there is no copyright header in the source-tree any longer and therefore somewhat out of scope of the question). Also your suggestion does not work with authors claiming credits in their files which is common in programming like the many permissive licenses require it. - I'm not saying that the idea alone to move this out of the source-tree couldn't solve some problems ;) but I find it a bit misleading for what I ask for.
    – hakre
    May 17 '13 at 12:48
  • 1
    @hakre well you described it as "change all files in... source-tree to update the copyright year", that's exactly the issue I had in the project I mention, and placeholder is exactly the solution that solved it for us. Regarding authors claiming credits..., that would probably be a different question, consider posting it separately
    – gnat
    May 17 '13 at 13:13
  • So your answer to the question "Updating Copyright Headers each new Year just because Jan 1st has passed?" is: "Yes - but do it by replacing a (generic) placehoder, not just replacing last years year." ?
    – hakre
    May 17 '13 at 13:49

Actually the updating of the headers with copyright information is a form of fraud. You cannot claim that a work you made in 2010 has been made in 2014.

  • Well actually you can claim, however it's just not giving correct information. But sure what I think you want to say (nit picking mode off), you say a simple matter true point here.
    – hakre
    Jan 23 '14 at 9:03
  • It's only fraud if you try and say that a previous "work" has to change as well. If Microsoft were to just recompile Windows 3.11 with even a trivial change, they could re-set the copyright to 2014. (The same thing's done for significant works of fiction, from fantasy novels to even Shakesphere and Sherlock Holmes.)
    – DougM
    Feb 12 '14 at 2:28
  • 1
    @DougM in the case of the OP the "trivial change" would be the updating of the copyright header, before any source has changed. Change the copyright date when you actually change a file, not when a new year hits.
    – Pieter B
    Feb 12 '14 at 7:40

Not the answer you're looking for? Browse other questions tagged or ask your own question.