A lot of packages in R (and I'm assuming in other languages as well) are licesed as "License: GPL-2 | GPL-3". Others as "GPL (>= 2)" and others as "MIT + file LICENSE". What does the "|" operator exactly mean?

If e.g. in a setting someone wants to avoid GPL-2 licenses explicitly, is a software-component (like an R package) licensed under "GPL-2 | GPL-3" still fine to use or does that always depend on GPL-2 as well?

Any sources appreciate

  • It is probably a short-hand for "GPL-2 'or (at your option) any later version'". Which for GPL is currently GPL-3 as the later version. See opensource.stackexchange.com/questions/6262/… I'm not sure if it's possible for someone actually say in the license "you may use this under the terms of GPL-2 or GPL-3 (but not a later version)", so probably the notation GPL >= 2 is more accurate. If there is ever a GPL-4, for example, then the "or (at your option) any later version" would let you use that version as well.
    – Brandin
    Oct 16 at 13:37
  • It most likely means to pick one.
    – user253751
    Oct 18 at 15:57
  • 3
    @Brandin it's perfectly possible to licence software under GPLv2 or GPLv3, at the recipient's discretion, without implying "or any later version". It's no different from any other dual-licensing arrangement, and they're common enough.
    – MadHatter
    Oct 19 at 5:51
  • @guest0323 You see that we are guessing here about the "|" operator. It is actually not commonly used. What I can say is that it cannot be both GPL2 and GPL3 at the same time, it must be either or (so dual-licensed). Also the term "MIT + file LICENSE" is not generally specified, I searched for it and only found the original MIT license language. Do any of the files include a SPDX declaration? I strongly suggest that you contact the maintainers of the project and ask for clarification. Will you post their response here? Nov 8 at 12:57

Your Answer

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

Browse other questions tagged or ask your own question.