10

I found a javascript module (file), which contains two functions, and I would like to modify it under the terms of its BSD license. I'm happy for the resulting source file to be declared derived work and to keep the same BSD license.

Case 1)
I don't want the second function so I remove it, do I (or can I) say that it's derived work even if it's only been deleted from and not added to?

Case 2)
I make changes to parts of the first function.

In either case, do I just add a second copyright line with my own details to the existing one and keep the rest of the terms of the license there or how do I actually indicate this for BSD?

Bonus question: the original author has not indicated a copyright year but only the full date of last modification of v2 of the module... do I use that as the copyright year for his copyright line? (yes, he only mentioned "BSD" in the module but didn't include the full text of a BSD license or copyright year)

9

If you adapt a file, you have to satisfy the licensing requirements for that file, whatever your changes and whatever the licensing requirements. If the module only specifies Copyright ... and BSD, I'd start by seeking clarification from the original author, since there are different versions of the BSD license (two-clause, three-clause and the obsolete four-clause): ideally you want to know exactly which one applies. While you're at it, ask the original author to specify a complete copyright line...

In your first case, I believe the notion of derived work involves some measure of creativity, so deleting a function wouldn't produce a derived work — but you still need to follow the original licensing requirements. (You can look at this this the other way round: you're extracting the BSD-licensed first function only.)

In your second case, you're creating a derived work.

In both cases, since the BSD license allows you to modify the code and redistribute the modified copies, you can perform the changes you envision; in the second case, this makes you an additional copyright holder on the resulting work, so it follows that you should add a corresponding copyright line.

The result should look like

// Copyright © original year, original author
// Copyright © 2016, Paolo Marini
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// 1. Redistributions of source code must retain the above copyright
//    notice, this list of conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright
//    notice, this list of conditions and the following disclaimer in the
//    documentation and/or other materials provided with the distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

(assuming the two-clause form).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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