git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Can I use CRoaring library in Git?

From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date
Jul 21, 2022, 13:51 UTC
Message-ID
<220721.86r12etvly.gmgdl@evledraar.gmail.com>
In-Reply-To
<304fd857-db62-7a1a-a9a9-cbfa93c2a00c@github.com>
On Thu, Jul 21 2022, Derrick Stolee wrote:
Show 23 quoted lines
> On 7/21/2022 2:12 AM, Junio C Hamano wrote:
>> Abhradeep Chakraborty <chakrabortyabhradeep79@gmail.com> writes:
>> 
>>> On Sat, Jul 16, 2022 at 7:20 PM Abhradeep Chakraborty
>>> <chakrabortyabhradeep79@gmail.com> wrote:
>>>>
>>>> Hello,
>>>>
>>>> I need the CRoaring[1] library to use roaring bitmaps. But it has
>>>> Apache license v2 which is not compatible with GPLv2[2].
>>>
>>> I have reached out to Daniel and he agreed to make CRoaring
>>> dual-licensed under MIT and Apachev2[1].
>>> Now, I can use CRoaring, right?
>>>
>>> [1] https://groups.google.com/g/roaring-bitmaps/c/0d7KoA79k3A
>>>
>>> Thanks :)
>> 
>> Nice.
>
> Great news! Thanks for reaching out. I'm pleasantly surprised at
> the turnaround. Good luck integrating it into the Git codebase!

It's great that the primary author of the library wants to release it under a compatible license.

But I feel like I'm missing something here, don't we still need the other contributors to that code to sign off on such a license change, and for us to be comfortable with integrating such code?

I tried a one-liner to see who has git-blame-able ranges[1] in the code, which of course is just a rough approximation of "derived work" and "copyright holder".

My understanding (again, not a lawyer and all that) is that such transitions happen one of a few ways:

 A. One entity had been assigned copyright in the first place, and can
    re-license the work. E.g. the FSF requiring copyright assignments
    for anything non-trivial.
 B. The license itself has an "upgrade" clause (e.g. GPLv2 "or later"
    projects being GPLv3 compatible).
 C. All copyright holders (or near enough) agree to
    relicense. E.g. OpenStreetMap went through this process at some
    point.

Aren't we just at the beginning (but already past the most significant step) of C?

1. $ git ls-files | xargs -P 8 -L 1 git -P blame --porcelain HEAD -- |grep -E '^author ' 2>/dev/null |sort|uniq -c|sort -nr
   2872 author Daniel Lemire
    131 author Owen Kaser
     87 author AE1020
     70 author Cerul Alain
     63 author Andrei Gudkov
     62 author François Saint-Jacques
     50 author Jacob Evans
     40 author Tom Cornebize
     37 author Mats Klepsland
     27 author Luca Deri
     17 author Mario Rugiero
     14 author DarrenJiang13
     11 author Wojciech Muła
     11 author GuillaumeHolley
     10 author Mario J. Rugiero
      9 author Paul Smith
      9 author Matt Olan
      6 author Salvatore Previti
      6 author Brian-Esch
      5 author tony eve
      5 author Chris O'Hara
      4 author Alexander Gallego
      3 author Zachary Dremann
      3 author Simon McVittie
      3 author Richard Odenweller
      3 author Hurricane Lee
      3 author daniel-j-h
      2 author stdpain
      2 author Shawn Cao
      2 author Murali Vemulapati
      2 author longqimin
      1 author Yuce Tekol
      1 author yperbasis
      1 author Saulius Grigaliunas
      1 author plantree
      1 author Nathan Kurz
      1 author Guillaume Holley
      1 author gssiyankai
      1 author Daniel Lem_equal(cm12, array_container_cardinality(AM));
      1 author Amos Bird
Previous: Derrick StoleeNext: Abhradeep Chakraborty
Message 23 of 25 in “Can I use CRoaring library in Git?”
  1. Abhradeep ChakrabortyJul 16, 2022
  2. Ævar Arnfjörð BjarmasonJul 16, 2022
  3. Abhradeep ChakrabortyJul 16, 2022
  4. Kaartic SivaraamJul 17, 2022
  5. Junio C HamanoJul 17, 2022
  6. Taylor BlauJul 17, 2022
  7. Abhradeep ChakrabortyJul 18, 2022
  8. Taylor BlauJul 25, 2022
  9. Derrick StoleeJul 17, 2022
  10. Jakub NarębskiJul 18, 2022
  11. Abhradeep ChakrabortyJul 18, 2022
  12. Ævar Arnfjörð BjarmasonJul 18, 2022
  13. Abhradeep ChakrabortyJul 18, 2022
  14. Derrick StoleeJul 18, 2022
  15. Abhradeep ChakrabortyJul 18, 2022
  16. brian m. carlsonJul 18, 2022
  17. Taylor BlauJul 25, 2022
  18. rsbecker@nexbridge.comJul 25, 2022
  19. Taylor BlauJul 25, 2022
  20. Abhradeep ChakrabortyJul 21, 2022
  21. Junio C HamanoJul 21, 2022
  22. Derrick StoleeJul 21, 2022
  23. Ævar Arnfjörð BjarmasonJul 21, 2022
  24. Abhradeep ChakrabortyJul 21, 2022
  25. Ævar Arnfjörð BjarmasonJul 22, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.