0
Answered
@hebcal/core JS library license
I am using the @hebcal/core library in a project that I would like to open source, but I would also like to use Drizzle ORM (licensed under Apache-2.0, not compatible with GPL-2). I am curious if there is an "or later" clause that would allow me to open source this project under AGPLv3, which allows me to use Apache-2.0 licensed products? Thank you!
Customer support service by UserEcho
Hi Justin,
Short answer: no, I can't offer an "or later" / AGPLv3 option here, and it's not really my call to make even if I wanted to.
@hebcal/core is a descendant of a chain of GPL work I didn't originate — the original Emacs Lisp calendar code by Dershowitz and Reingold, Danny Sadinoff's C port, and Eyal Schachter's JS port, all released under GPL. Each of those was licensed strictly as GPL (not "GPL-2.0-or-later"), so I don't hold the rights to relicense the derived work under AGPLv3 or anything else — I'd need sign-off from the original authors, and I'm not in a position to get that.
A couple of options that might get you where you want to go without needing a relicense:
1. Keep @hebcal/core's GPL scope contained. If it only needs to compute dates/holidays server-side, you can put it behind a small internal service or API boundary rather than linking it directly into the codebase you want to license permissively. That's a common pattern for isolating a GPL dependency from the rest of an application (network-service separation avoids creating a single combined/derivative work), though I'd suggest getting a second opinion from someone with real legal expertise if the boundary matters for your project's compliance.
2. Use the hosted Hebcal.com REST API instead of the library. Content from the API is CC BY 4.0, not GPL — free for any use, including commercial, with attribution to Hebcal.com. If you just need holiday/date data rather than the library's code, that sidesteps the GPL question entirely.
Sorry I can't be more flexible on the license itself — it's inherited, not a choice I get to revisit. Happy to answer follow-up questions if useful.
Best,
Michael