Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-licensing libzmq #2376

Closed
rlenferink opened this issue Mar 19, 2017 · 70 comments · Fixed by #4555
Closed

Re-licensing libzmq #2376

rlenferink opened this issue Mar 19, 2017 · 70 comments · Fixed by #4555

Comments

@rlenferink
Copy link
Contributor

Hello libzmq contributors,

I'm starting this issue because of the current libzmq license. At the moment, libzmq is licensed as LGPL with static linking exception and this makes it a complex "one of a kind" license.

Almost a year ago the ZeroMQ project team started to collect license grants to re-license libzmq to a clearer license, namely the MPLv2. Collecting these license grants stopped for a while, because Pieter Hintjens, the former BDFL (Benevolent Dictator for Life) behind ZeroMQ, got sick and passed away.

We want to continue Pieter's work with collecting these contributor license grants. We want to ask you to send us a license grant to permit the libzmq to relicense to a different license. At the moment, libzmq is licensed as LGPL 3 with a static linking exception (http://zeromq.org/area:licensing). This makes it hard to make use of libzmq in projects with some other Open Source licenses (e.g. projects using the Apache License). The existing LGPL 3 with exceptions is also a non-standard license that some corporate lawyers are unwilling to accept for use in their companies.

For relicensing the libzmq project, we need to collect a license grant from each individual contributor who wrote a major piece of code in the development process of libzmq.

We are requesting contributors to send in a license grant to relicense libzmq to one of the options listed below:

  1. relicense to the MPLv2 license specifically;
  2. relicense to the MPLv2 or any "share alike" Open Source Initiative (OSI) approved license chosen by the current ZeroMQ BDFL;
  3. relicense to the MPLv2 or any Open Source Initiative (OSI) approved license chosen by the current ZeroMQ BDFL (preferred selection)

If a contribution was made during working hours for an employer then we will also need a license grant (or "quit claim") from the employer.

We would like to follow a certain template as license grant to ensure all the necessary information is included. There are three templates, one for each option. Please choose the template that best represents your wishes.

The templates can be found at: https://github.com/zeromq/libzmq/tree/master/RELICENSE/templates

To include the license grant, please:

  • fork the original libzmq repository
  • create a new file in the RELICENSE directory, named after your name and/or your employers name, with the license grant as content, using the template chosen
  • commit this file to the repository, using the same email address as your earlier contributions
  • create a pull request on libzmq to have your license grant merged into the repository.

See the existing files in:
https://github.com/zeromq/libzmq/tree/master/RELICENSE

or this specific example: https://github.com/zeromq/libzmq/blob/master/RELICENSE/rlenferink.md

for a guide for how to fill out the template.


If there are any questions, don't hesitate to ask them below.

Roy

@bluca
Copy link
Member

bluca commented Mar 19, 2017

Thanks for kickstarting the process again!

@vielmetti
Copy link
Contributor

I contributed a one-line update to some documentation, is it necessary to go through an entire license grant to handle that?

@rlenferink
Copy link
Contributor Author

@vielmetti this is the specific commit you contributed: 92b1b2b

Since it is only documentation and not a major addition to libzmq it is not required for you to send in a license grant.

@junovitch
Copy link
Contributor

Hi, I believe my submissions were two fixes to fix compiling the FreeBSD port of zeromq. One for GCC not liking a missing newline (zeromq/zeromq4-x@2ac32f8) and one for fixing compiling with the documentation option by just shifting code (zeromq/zeromq4-1@c75cc9e). I personally don't consider either significant enough of a contribution.

Good on you folks. Good luck!

@Asmod4n
Copy link
Contributor

Asmod4n commented Apr 1, 2017

I believe i don't have to sign it, or? just added a option to zmq_has afaik, but how can i find out my contributions?

@bluca
Copy link
Member

bluca commented Apr 1, 2017

https://github.com/zeromq/libzmq/commits?author=Asmod4n

It's a few lines, so if you don't mind it would be better to. Thanks!

@Asmod4n
Copy link
Contributor

Asmod4n commented Apr 19, 2017

Could someone elaborate what the 2nd or 3rd options could mean? I currently like the MPLv2 the most, because its compatible to pretty much every other license?

@bluca
Copy link
Member

bluca commented Apr 19, 2017

I like MPL2 as well and it's 99/99% what is going to end up being, but given we are going through this ordeal it's worth, if the contributor agrees, to keep the options open.
It's up to you what you prefer for your grant.

Kentzo added a commit to GreatFruitOmsk/libzmq that referenced this issue May 23, 2017
mattconnolly added a commit to mattconnolly/libzmq that referenced this issue Jun 29, 2017
@lresende
Copy link

lresende commented Aug 9, 2018

Where are we with the relicensing process? Any ETA?

@bluca
Copy link
Member

bluca commented Aug 14, 2018

No ETA, there are still many old contributors missing.

@bluca
Copy link
Member

bluca commented Aug 15, 2018

@sigiesec let's try to be more disciplined on this - GitHub actually helps and tells if someone is a "first time contributor" so when we see that, let's ask for the grant before merging

@sigiesec
Copy link
Member

@bluca Ok, I will try too :)

@rlenferink
Copy link
Contributor Author

It's been some time ago since I've been working on this topic as well. At the time of sending out the first request to submit a grant, I've kept track of the responses but it should be updated to include new contributors from the past couple of months as well. I'm still busy this week but will try to restart this process somewhere next week.

As @bluca mentioned it indeed would be good to ask first time contributors to submit a grant before merging ;)

@bluca
Copy link
Member

bluca commented Feb 16, 2019

@rlenferink hi - I am looking at this again. Did you have a script or set of scripts to compile the checklist? I'd be happy to run them myself

@brugr9
Copy link

brugr9 commented Jan 18, 2022

@bluca As seen on @lalebarde account he was active on github this year. Did @lalebarde already respond concerning the re-licensing of libzmq to MPLv2?

@bluca
Copy link
Member

bluca commented Jan 18, 2022

No answer so far

@brugr9
Copy link

brugr9 commented Feb 11, 2022

566 grants to collect, work done within 5 years:

Is there a way to complete this task?

@lalebarde @soundart @thijsterlouw @hshardeesi @guidog If you could please come forward and make a decision for the MPLv2. Thanks a lot.

@nightlark
Copy link

nightlark commented May 9, 2023

Instead of continuing to ask for relicensing statements from new PRs, it might be worth exploring the LLVM relicensing approach where all contributions after X date are made under both the new and legacy licenses (which for LLVM was January 19, 2019 after the LLVM 8.0 release was branched). Then wait until either the remaining relicensing long tail responses trickle in, or rewritten code takes the place of the old contributions.

@bluca
Copy link
Member

bluca commented Jun 4, 2023

I have done some work to remove contributions from the authors who did not grant permissions:

#4554

The two removed APIs can be made non-stubs again if somebody is able to provide a clean-room reimplementation (ie: without looking at the old code that was removed). I can review such implementations, but for obvious reasons I cannot provide them, as my knowledge is 'tainted'.
With these changes, the relicense can be finalized.

@bluca
Copy link
Member

bluca commented Jun 4, 2023

Consider following use cases that would not be possible with GPL'd codebase:

  • Putting the technology into BSD kernel(s).
  • Incorporating the technology into Windows OS.
  • Providing the infrastructure on iPhones and iPads.
  • Even using ZeroMQ (LGPLv3) code in Linux (GPLv2) in-kernel implementation would be a problem.
  • Supporting the infrastructure inside networking hardware.
  • Plugging the proprietary products into the infrastructure

Note that none of this is true. The new license will be MPL2, which is very much intentionally still share-alike, and in layman's terms, for all intents and purposes, provides the same terms as the current LGPL3 + custom exceptions. The main purpose is to use a 'standard' license (no custom exceptions) and harmonize with the rest of the zeromq projects which are already on MPL2.

e.g.: the current license already allows using libzmq in proprietary products or networking hardware, and it already routinely happens.

@nightlark
Copy link

nightlark commented Jun 4, 2023

I have done some work to remove contributions from the authors who did not grant permissions:

#4554

The two removed APIs can be made non-stubs again if somebody is able to provide a clean-room reimplementation (ie: without looking at the old code that was removed). I can review such implementations, but for obvious reasons I cannot provide them, as my knowledge is 'tainted'. With these changes, the relicense can be finalized.

Should clean-room reimplementations of the removed features be backwards compatible in terms of how they are used? Eg code setting the CMake option for using tweetnacl, or using the reimplemented functions should continue to work without the user having to make changes to their code to use the new MPL implementations?

@bluca
Copy link
Member

bluca commented Jun 4, 2023

Yes - note that I am referring to zmq_proxy_steerable() and ZMQ_RECONNECT_IVL_MAX. I don't see any point in adding back tweetnacl, it just causes problems and it's unsafe to use anyway. libsodium is available everywhere. I don't think anybody should spend any time on tweetnacl, but obviously I can't stop anyone from doing so.

@bluca
Copy link
Member

bluca commented Jun 5, 2023

@lalebarde I see that you were active in the past week on Github, so one last chance to please give us permission to relicense your libzmq contributions to MPL-2.0. Your contributions are otherwise going to be deleted, and you will be removed from the zeromq Github organization.

bluca added a commit to bluca/libzmq that referenced this issue Jun 5, 2023
Relicense permission collected from all relevant authors as tallied at:
https://github.com/rlenferink/libzmq-relicense/blob/master/checklist.md
The relicense grants are collected under RELICENSE/ and will be moved
to the above repository in a later commit.

Fixes zeromq#2376
bluca added a commit to bluca/libzmq that referenced this issue Jun 5, 2023
Relicense permission collected from all relevant authors as tallied at:
https://github.com/rlenferink/libzmq-relicense/blob/master/checklist.md
The relicense grants are collected under RELICENSE/ and will be moved
to the above repository in a later commit.

Fixes zeromq#2376
@bluca
Copy link
Member

bluca commented Jun 7, 2023

Relicensing has now been completed.

@bluca
Copy link
Member

bluca commented Jun 7, 2023

@rlenferink could you please transfer ownership of the https://github.com/rlenferink/libzmq-relicense repository to me? I will then transfer it to the org here, and archive it

@shripchenko
Copy link
Contributor

Prob im - the author of ZMQ_RECONNECT_IVL_MAX
should i do anything ?
i can,

@bluca
Copy link
Member

bluca commented Jun 7, 2023

@shripchenko assuming you have not sent a relicense grant, you could send one just to clarify any doubt, simply copy the following text in a new comment filling with your data, I'll do the rest:

# Permission to Relicense under MPLv2

This is a statement by {{ name of company / name of individual }}
that grants permission to relicense its copyrights in the libzmq C++
library (ZeroMQ) under the Mozilla Public License v2 (MPLv2).

A portion of the commits made by the Github handle "{{github username}}", with
commit author "{{github commit author}}", are copyright of {{ name }} .
This document hereby grants the libzmq project team to relicense libzmq, 
including all past, present and future contributions of the author listed above.

{{ Full Name }}  
{{ creation date of document (format: yyyy/mm/dd) }}

@shripchenko
Copy link
Contributor

Permission to Relicense under MPLv2

This is a statement by Sergey KHripchenko aka @shripchenko
that grants permission to relicense its copyrights in the libzmq C++
library (ZeroMQ) under the Mozilla Public License v2 (MPLv2).

A portion of the commits made by the Github handle "shripchenko", with
commit author "Sergey KHripchenko [email protected]", are copyright of Sergey KHripchenko.
This document hereby grants the libzmq project team to relicense libzmq,
including all past, present and future contributions of the author listed above.

Sergey KHripchenko
2023/06/07

@rlenferink
Copy link
Contributor Author

@rlenferink could you please transfer ownership of the https://github.com/rlenferink/libzmq-relicense repository to me? I will then transfer it to the org here, and archive it

@bluca I just transferred the repository to you for archival

@bluca
Copy link
Member

bluca commented Jun 7, 2023

great, thank you, will fix a rebase mistake, add the license grant from above, move it to this org and archive it

@bluca
Copy link
Member

bluca commented Jun 7, 2023

and done: https://github.com/zeromq/libzmq-relicense

bluca added a commit to zeromq/libzmq-relicense that referenced this issue Jun 7, 2023
clrpackages pushed a commit to clearlinux-pkgs/libzmq that referenced this issue Jul 10, 2024
Abael He (2):
      Permission to Relicense under relevant approved license
      Problem: some tools misdetect null access or broken libsodium implementation

Abama cai (2):
      Problem: get_opt function read the options value maybe not thread safe
      Add RELICENSE statement

Abama.cai (1):
      Update tongsong-cai.md

Arnaud Loonstra (2):
      deprecate sprint and replace with snprintf
      treat bind errors as a protocol_error instead of connection_error preventing an infinite loop of trying to create the udp socket as through the protocol_error the creation of the socket fails

Benjamin Deroche (7):
      Problem: Outdated Android build tools
      Problem: Android build script isn't compatible with latest NDK version (#4278)
      Problem: Android build scripts does not work with latest NDK versions
      Problem: Accidentaly deleted a comment when updating Android build scripts
      Problem: Libs crash at runtime on Android when built with NDK 23+
      Revert "Problem: Libs crash at runtime on Android when built with NDK 23+"
      Problem: Default Android NDK version is not aligned with zproject

Bill Torpey (6):
      - fix formatting problems in .clang-tidy options
      add suppressions for clang-tidy-10 on ubuntu:
      ZMQ_RECONNECT_STOP options are intended to be inclusive (i.e., can be OR'ed together),  and so values must be powers of two
      fixes for UBSAN warnings (#4223)
      default to not building tests if cmake version can't handle skipped tests (#4376)
      avoid intermittent timeouts in test (esp. when run w/ASAN etc.)

Björn Strömberg (1):
      Problem: no relicense agreement by bjornstromberg

Brett Viren (1):
      A clean-room implementation of zmq_proxy_steerable().

Chengye Ke (1):
      Support so_busy_poll (#4188)

Chris Thrasher (3):
      Use standard C11 and C++11
      Add RELICENSE statement
      Correct messages about whether or not the draft API is being built

Cornelius (1):
      Problem: long flag isn't set for subscriptions if topic has between 246 and 255 characters (#4564)

Daira Hopwood (1):
      #4494 added calls to snprintf, but did not take into account that snprintf

Darkdragon-001 (2):
      Fix pkgconfig
      Add RELICENSE.

David Gloe (2):
      Problem: Fix fork detection on gcc 7
      Problem: Missing relicense statement for dgloe-hpe

Dennis Gosnell (2):
      Problem: don't link to openpgm when building with cmake
      Problem: no relicense agreement by cdepillabout

Dimitris Apostolou (2):
      Fix typos
      Add relicense statement

Doron Somech (2):
      problem: outpipe can be null when sending disconnect msg
      problem: no way to know when connection is temporarly dropped

E. G. Patrick Bos (3):
      add relicense statement for egpbos
      add zmq_ppoll
      Problem: when linking to libzmq in my project, I want zmq symbols to remain invisible to users of my library. There is no way to control this, since visibility is set automatically through ZMQ_EXPORT based on OS and compiler.

FeRD (Frank Dana) (1):
      Problem: Docs reference outdated spec

Francesco Montorsi (2):
      Fix typo in zmq_socket_monitor_versioned docs (#4458)
      Add ZMQ_TOPICS_COUNT socket option (#4459)

Gudmundur Adalsteinsson (5):
      Problem: C style malloc and free
      Problem: Unused member variables _last_in
      Problem: strtok is not thread safe
      Problem: fast vector resize bug
      Problem: Invalid and inconsistent poller docs

Guillaume DELACOURT (3):
      When setting thread priority, always set the value to zero when the policy is not compatible. Also, only call nice when the priority is set to a strictly positive value.
      Checks for pthread setname and setaffinity API are compilation checks, not execution checks.
      Always allow DNS when resolving TCP and UDP adresses. DNS resolution is done after interface resolution, so it can always be enabled to have a fallback mecanism on hostname resolution.

Guilloux Stephan (Ubuntu) (10):
      Problem: Android build system needs some debug (./configure options)
      TAB -> SPACE
      Problem: Android CI build helper has no trace function.
      Problem: Android helpers have duplicate init code.
      Problem: android_download_ndk can be more 'autonomous'.
      Problem: android_clone_library() review
      Problem: android_build_library can be more robust & generic
      Enriched Android helpers
      Problem: Android dependencies are downloaded in an hard-coded /tmp/tmp-deps.
      Android helpers minor fixes.

Han Gao (1):
      fix: fix build on qemu-user

Hennadii Stepanov (1):
      Replace `egrep` with `grep -E`

Ilya Kondrashkin (1):
      Problem: message can't be received due to signal

Jack·Boos·Yu (1):
      [document] add vcpkg instruction (#4425)

James Choi (2):
      Add support for QNX 7.1 build
      Add RELICENSE for James Choi

James Wu (1):
      fix test comparison between -1 and unsigned winsock2.h socket return

Jasper Bekkers (2):
      Fix minor casing issue in include files
      Add relicense

Jeff Weston (2):
      Add NORM Transport configuration sockopts (#4541)
      Change NORM to set TTL using MULTICAST_HOPS sockopt (#4552)

Jeffery Weston (1):
      fix assert error on late-joining subscriber after publisher has filled NORM buffer

Jose Santiago (5):
      Fix Fedora33 s390x build.
      Add Relicense statement.
      MINGW Build Fix.
      Fix MINGW with pthread cv
      Fix Build BSD

Keith Williams (3):
      extend tipc check to support Android under Termux
      remove c99 extention from c++11  code
      Add RELICENSE for Keith Williams

Koby Boyango (1):
      Fix iOS build failure for x86_64

Krzysztof Rosiński (2):
      fix missing sodium link_directories
      add relicense note

Leander Schulten (2):
      Don't assume that GnuTLS is on the search path
      license

Lingqiao Zhao (1):
      Problem: exception thrown when debugging cl.exe x64 build with LLDB (#4129)

Luca Boccassi (60):
      Problem: 4.3.4 is out, need new version
      Problem: wrong year in NEWS for 4.3.4
      Problem: test_pubsub broken everywhere
      Add relicense grant by eponsko
      Problem: formatting errors
      Problem: vmci tests built in repo root
      Problem: VMCI build broken
      Problem: no CI coverage for VMCI transport
      rpm: run make check in %check area
      rpm: fix Group metadata
      rpm: fix license shortname
      Problem: compiler error with GCC 11
      Problem: travis badge points to old travis-ci.org
      Problem: build with curve fails on GCC 11
      Problem: build/test breakages on various distros are discovered only after merge
      Problem: test_inproc_connect occasionally fails on slow archs
      Problem: formatting is broken
      Problem: wepoll is out of date, known issues on Windows
      Problem: Appveyor build fails to clone libsodium
      Problem: OSX Travis builds using homebrew are timing out
      Problem: appveyor has broken libsodium cache
      Problem: formatting broken
      Problem: README.md does not mention Libera.chat
      Problem: test_pair_tcp_cap_net_admin requires privileges and might fail
      Problem: VMCI might not be supported by CI
      Problem: formatting errors
      Problem: some tests time out in CI under Valgrind
      Problem: test_socks and test_proxy hang under valgrind in Github Actions
      Problem: test_security_curve always fails when run by CMake under Github Actions
      Problem: some tests occasionally fail on OBS
      Problem: Travis is no longer free for FLOSS projects
      Problem: OBS CI config needs update following breaking change
      Problem: formatting broken
      Add relicense grant from hitstergtd
      Problem: build fails with gcc 12
      Problem: manual release OBS trigger is flaky
      Problem: cannot use obs_scm which is faster than tar_scm
      Problem: build fails with PGM + CXX98 + clang++
      Problem: windows-2016 build no longer runs in CI
      Problem: missing VMCI can also return EPROTONOSUPPORT and the tests fail
      Problem: formatting errors with clang-format-11
      Problem: libsodium doesn't build anymore in VS2010
      Problem: shipping binaries is a responsibility that requires time
      Problem: address sanitizer complains about uninitialised func pointer
      Problem: buffer overflow in new test case
      Problem: test_zmq_ppol_signals uses fixed TCP port
      Problem: test_zmq_ppoll_signals does not cleanup context
      Problem: VMCI tests are not skipped outside VMs
      Problem: test_filter_ipc is flacky
      Problem: no permission to relicense zmq_proxy_steerable
      Problem: no permission to relicense tweetnacl integration
      Problem: no permission to relicense ZMQ_RECONNECT_IVL_MAX
      Relicense from LGPL3 + exceptions to Mozilla Public License version 2.0
      Remove RELICENSE/ directory
      Problem: trailing whitespace
      Problem: docs for ZMQ_RECONNECT_IVL_MAX are stubs
      spec: remove duplicated macros
      spec: do not attempt to install curve_keygen if curve is disabled
      obs: trigger build on merge
      Update NEWS for 4.3.5

Marco Casaroli (3):
      Use parenthesis for alloc_assert macro
      Do not break if malloc size is zero
      Add RELICENSE for Marco Casaroli

Mark Jan van Kampen (1):
      Problem: newer cmake versions set CMAKE_C(XX)_FLAGS at a later stage not allowing a user to override the standard

Martin Delille (2):
      Add conan badge
      Add relicense statement

Michael Ngarimu (2):
      Problem: (Windows) /GL /LTCG breaks builds when the compiler/linker of static library differs from compiler/linker of executable
      Adding missing RELICENSE file

Min RK (4):
      [appveyor] upload artifacts to GitHub releases
      Problem: calling randombytes_close with libsodium can crash Contexts in other threads (#4242)
      check rc in make_fdpair
      AF_UNIX support may fail on bind

Nehal Patel (1):
      Problem: unused variables warnings

Nevin Valsaraj (2):
      Problem: Incorrect formatting of documentation in zmq_udp.txt
      Add relicense for nevalsar

Nicolas Benes (3):
      Add missing pkg_config_defines when built with CMake
      RELICENSE: add statement
      Fix pkg_config_defines in CMakeFile

Niyas Sait (4):
      Get cycle count from ARM64 PMCCNTR_EL0 register
      add relicense for niyas sait
      Fix linting error reported by clang-format
      add win/arm64 to supported platform list

Patrick Bos (1):
      fix unused parameter warning when POLL_BASED_ON_SELECT

Patrick Trantham (1):
      Add license file for tranthamp

Paul Thiele (2):
      Problem: if ZMQ_XPUB_VERBOSER is used with proxies unsubscribe messages are lost
      Problem: no relicense agreement by thielepaul

Qqzk (2):
      Create qzkLicense
      Update decoder_allocators.cpp

Rosen Penev (1):
      fix unused variables under windows

Sascha van Vliet (2):
      Fix crash in context with wide characters in path
      Add missing relicense agreement

Sergei Trofimovich (1):
      src/secure_allocator.hpp: define missing 'rebind' type

Sergey Fedorov (2):
      tests: use NOT APPLE instead of NOT MATCHES Clang
      Add relicense statement

Stephan Guilloux (4):
      Problem: Android APP fails to load ZMQ since NDK r25.x (#4437)
      Problem: Android APP fails to load ZMQ (ARM64 only) (#4442)
      Problem: Android build environment variables need clarifications. (#4443)
      Problem: Android NDK 22 download broken since support of NDK 23. (#4444)

Stephan Guilloux (cos) (14):
      Problem: builds/android/build.sh fails with CURVE=libsodium
      Changed more git:gihub.com to https://github.com
      Problem: Android helpers no not validate dependent libraries.
      Problem: Android build script may fail silently
      Problem: Android CI build scripts need minor enhancements (traces & cleanup).
      Regression: Android build fails with libsodium.
      Problem: Android CI build tools does not support LIBSODIUM_ROOT
      Problem: Android helpers should export more compilation chain related variables
      Problem: Android helpers must provide build/clone functions.
      Problem: Android docker image is outdated.
      Problem: Android build documentation to be updated.
      Android minor fix in documentation.
      Android specific documentation update.
      Problem: Main documentation refers to Android NDK 24, when 25 is currently in use.

Stephan Guilloux (home) (3):
      Added RELICENSE statement
      More enhancements and configuration variables to Android CI build scripts.
      Documentation update.

Stephan Lachnit (4):
      CMake: fix not defining pollset in platform.hpp
      CMake: fix devpoll detection not working properly
      CMake: properly set ZMQ_HAVE_OPENPGM and ZMQ_HAVE_VMCI
      RELICENSE: add statement

Stéphane Valès (1):
      Problem: relicensing forced to remove support for ZMQ_RECONNECT_IVL_MAX option

Tarmo Tänav (2):
      Problem: XPUB socket allows manual subscription on terminated pipe
      Problem: ROUTER loses first frame metadata on message prefetch

Tarn W. Burton (2):
      Update fd slot type to zmq_fd_t
      Add RELICENSE for yitzchak

Teebonne (2):
      sodium, not Sodium
      Create Teebonne.md

Tim Blechmann (3):
      relicense: add relicense statement for tim blechmann
      add missing override statements
      epoll: add missing override statement

Tobias Schlüter (1):
      Remove Windows-specific defines from zmq.h.

Wojciech Kula (1):
      Add relicense statement for Cziken

Yunye Pu (2):
      Problem: WSS broken under contention
      Add relicense statement for Yunye Pu

bjornstromberg (1):
      Problem: merged pr-4432 broke FindSodium on linux

boscosiu (1):
      Problem: ZMQ_BUILD_DRAFT_API define is not propagated to dependent CMake projects

fanquake (2):
      problem: typo in configure.ac output
      problem: kevent udata is now void* on NetBSD Current (10)

mjvankampen (2):
      Problem: norm fails to compile under windows (#4123)
      Problem: polling_util.hpp missing sys/select.h include (#4283)

myd7349 (2):
      Problem: In rare cases, afunix.h doesn't contain a definition for struct sockaddr_un (#4310)
      Problem: struct sockaddr_un redefinition

patrick-volante (2):
      Problem: inside the event array, epoll return an event with invalid data pointer which create a segmentation fault
      issue-4312 Add relicnce file.

sab24 (3):
      Fixes Firefox WebSocket upgrade request in WebSocket engine
      Fixes indentation
      Adds RELICENSE

sabotagebeats (2):
      fix: building libzmq fails with error src/clock.cpp:131:16: error: unused variable 'nsecs_per_usec'
      fix: relicense

Đorđije Manojlović (2):
      Problem: Handshake timeout error with ZMTP_2_0
      Add RELICENSE statement

0MQ version 4.3.5 stable, released on 2023/10/09
================================================

* Relicensing from LGPL-3.0+ (with custom exceptions) to MPL-2.0 is now complete.
  libzmq is now distributed under the Mozilla Public License 2.0. Relicensing
  grants have been collected from all relevant authors, and some functionality
  has been clean-room reimplemented where that was not possible. In layman terms,
  the new license provides the same rights and obligations as before. Source
  files are now tagged using the SPDX license identifier format.
  Details of the relicensing process can be seen at:
  zeromq/libzmq#2376
  Relicensing grants have been archived at:
  https://github.com/rlenferink/libzmq-relicense
  A special thanks to everybody who helped with this long and difficult task,
  with the process, the reimplementations, the collections and everything else.

(NEWS truncated at 15 lines)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.