4

I duplicated a source-code file released under the Apache License, Version 2.0, made very few changes to adapt the code to slightly different situation. So this would seem to be a Derivative Works as defined in part 1 of the license.

The top of that source code has the following text:

/*
 * Copyright 2000-2020 Example Corporation.
 *
 * Licensed 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
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */

Exactly how should I change that statement now that I am technically the author but (a) need to acknowledege that I derived this code from existing code of another author, and (b) meet the terms of license?

Do I leave that text block seen above intact as-is? Do I simply add a mention of me above or below that block, stating that I made changes?

Do I change the "Copyright" line to use my name instead? Both my name and the original author's name? The original author does not know of my changes, and did not approve of my changes, so I don't want to imply their involvement or support.

Part 4 item 2 says my modified files must "carry prominent notices stating that You changed the files" but I do not know what exactly that means, nor what is the usual custom.

It would help if someone could post a full example of original versus derived works.

1
  • 1
    Don't change the copyright line but add a 2nd copyright line for yourself below the existing Jan 9, 2020 at 8:01

1 Answer 1

4

Exactly how should I change that statement now that I am technically the author but (a) need to acknowledege that I derived this code from existing code of another author, and (b) meet the terms of license?

Actually, you are not the author of the file. You are one of the authors, because multiple authors have now made changes to the file.

You must leave that comment block with the copyright and license statements in place, but you should change it to add your own copyright line, making the comment block

/*
 * Copyright 2000-2020 Example Corporation.
 * Copyright 2020 Basil Bourque.
 *
 * Licensed 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
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */

This is also customary for satisfying the "prominent notices" of part 4 item 2.

Another custom, that is not required by most licenses but is done anyway, is to add a comment which project you copied the source from, something along the lines of

Copied and adapted from <Original project name> (<link to repository>)

This both acknowledges the original project and makes it clear that they are not responsible for the full contents of the file.

2
  • 1
    My concern is that I duplicated this source to create a new class with a different purpose than the original class. So my changes are not a mere bug fix or small tweak. But my work is directly based on the original, changing only a few of a couple hundred lines of code. Following your approach seems to imply that the original authors have "bought into" my new purpose and my new code when that is not the case. The original authors are unaware. Should I just prepend comments explaining this situation to alleviate my concerns? Is that customary with such re-purposing of a "Derivative Works"? Jan 10, 2020 at 0:01
  • A good example of an Apache licensed derivative work would be of great help. @Basil Bourque I have the same doubts that you seem to have. Have you reached to a conclusion on that matters?
    – Iogui
    Jan 24, 2021 at 16:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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