Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • ots/dosp-research
  • gedankenstuecke/dosp-research
  • msw/dosp-research
  • chadwhitacre/dosp-research
4 results
Show changes
Commits on Source (112)
......@@ -7,6 +7,8 @@
*.pdf
*.tex
*.toc
*.draft.ltx
*.rej
noun_Book_861143.svg
noun_Book_861143_ltgreen.svg
noun_Email_3027864.svg
......@@ -17,4 +19,4 @@ noun_Key_1785639_ltgreen.svg
noun_Telephone_2591756.svg
noun_Telephone_2591756_ltgreen.svg
svg-inkscape
doc/kde
Research on *delayed open source publication* (DOSP): the practice of
This repository is a collection of research, and a resultant
[whitepaper](https://opensource.org/delayed-open-source-publication),
about *delayed open source publication* (DOSP): the practice of
publishing a software release under a proprietary license initially,
then later (usually in a planned fashion) publishing that release's
source code under an open source license.
While delayed open source publication been somewhat rare, there are
some examples of it across the history of open source -- in fact, some
of the examples (e.g., Aladdin Ghostscript) predate the coining of the
term "open source". To the best of our knowledge, when software
authors have done this it has usually been in a fairly predictable
way. For example, when release N goes out under a proprietary
license, release N-1 is then (re)published under an open source
license.
This repository is a collection of research, and eventually a
whitepaper, about various examples of DOSP and show how they are alike
or different. We will also analyze the effects (if any) of this
practice generally on open source as a field. Our purpose is to
provide accurate historical description and objective analysis; our
work here represents no position on the desirability or undesirability
of delayed open source publication.
This research is supported by the [Open Source Initiative
(OSI)](https://opensource.org/).
## Terminology
We are not necessarily settled on the term "delayed open source
publication". If you can suggest a better term for the phenomenon,
please let us know.
## Contributing
then later publishing that release's source code under an open source
license. (This is often, but not always, done in a predictable
fashion: e.g., when release N goes out under a proprietary license,
release N-1 is then (re)published under an open source license.)
There are examples of DOSP across the history of open source -- in
fact, some of the examples (e.g., Aladdin Ghostscript) predate the
coining of the term "open source". We looked at various instances of
DOSP and examined how they are alike or different. We also analyzed
the effects (if any) of DOSP on open source as a field. Our purpose
was to provide accurate historical description and objective analysis;
our work here represents no position on the desirability or
undesirability of delayed open source publication.
This research was supported by the [Open Source Initiative
(OSI)](https://opensource.org/). The report is now completed and
published at
[opensource.org/delayed-open-source-publication](https://opensource.org/delayed-open-source-publication).
## Contacting us
You can email us at `dosp-research {_AT_} opensource.org` or [file a
ticket](https://code.librehq.com/ots/dosp-research/-/issues/new) to
contact us.
contact us. While we occasionally indulge in light maintenance and
error correction in the LaTeX source, that's infrequent and done
entirely at our discretion. We may prepare an updated second edition
some day; if you're interested in being involved in that, please let
us know.
To build the whitepaper from LaTeX source, you will need to use
[OTS DocTools](https://code.librehq.com/ots/ots-doctools).
## Building the whitepaper PDF from LaTeX source
Just kidding -- the whitepaper doesn't exist yet. Instead, we have
this free-form [notes file](notes.md). For now, that's the right
landing place for contributions.
To build the whitepaper from LaTeX source, use [OTS
DocTools](https://code.librehq.com/ots/ots-doctools).
#!/usr/bin/env bash
# Downloader for agreement between Troll Tech and KDE Free Qt Foundation.
#
# KDE presents the agreement as a series of PNG files on their site,
# which is less convenient than assembling that into a PDF. But we
# don't have permission to distribute an assembled PDF, so instead we
# have this script, which lets a user take the PNG files and make
# their own PDF.
SCRIPTNAME=dosh
BASEDIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )/..
# Call the upstream dosh
watch(){ ${OTS_DOCTOOLS_DIR}/dosh ${FUNCNAME[0]} "$@"; }
verify_pdf_links(){ ${OTS_DOCTOOLS_DIR}/dosh ${FUNCNAME[0]} "$@"; }
_dload(){
if [ -f "$2" ]; then
return
fi
wget -O $2 $1
}
docs_kde() {
mkdir -p $BASEDIR/doc/kde/.cache
cd $BASEDIR/doc/kde/.cache
# Don't download if it already exists
if [ -f ../kdefreeqt.pdf ]; then
return
fi
_dload https://kde.org/community/whatiskde/images/kdefreeqt0.png kdefreeqt0.png
_dload https://kde.org/community/whatiskde/images/kdefreeqt1.png kdefreeqt1.png
_dload https://kde.org/community/whatiskde/images/kdefreeqt2.png kdefreeqt2.png
_dload https://kde.org/community/whatiskde/images/kdefreeqt3.png kdefreeqt3.png
_dload https://kde.org/community/whatiskde/images/kdefreeqt4.png kdefreeqt4.png
_dload https://kde.org/community/whatiskde/images/kdefreeqt5.png kdefreeqt5.png
_dload https://kde.org/community/whatiskde/images/kdefreeqt6.png kdefreeqt6.png
_dload https://kde.org/community/whatiskde/images/kdefreeqt7.png kdefreeqt7.png
convert kdefreeqt*.png ../kdefreeqt.pdf
}
docs() {
docs_kde
}
"$@" # <- execute the task
[ "$#" -gt 0 ] || printf "Usage:\n\t./${SCRIPTNAME} %s\n" "($(compgen -A function | grep '^[^_]' | paste -sd '|' -))"
all:
@../bin/dosh docs
clean-cache:
@echo rm -rf kde/.cache
clean: clean-cache
rm -rf kde/kdefreeqt.pdf
This diff is collapsed.
......@@ -2,80 +2,61 @@ This file contains free-form notes. Anyone working on this project,
please feel free to reformat this (including to something other than
Markdown) if you want.
# Some additional license search methods
Databases licensed under BUSL:
https://dbdb.io/browse?license=business-source-license&q=
Elastic License v2 - has hosting noncompete clause but no conversion to FOSS
We can also do a search for particular SPDX values, like "BUSL" or "BUSL-1.1", in a SPDX line -- probably on GitHub!
# Examples
Note that some of these examples are still just pointers that will
need followup.
* The license now named the "Bootstrap Open Source License" (BOSL) was
formerly known as the "Transitive Grace Period Public Licence"
(TGPPL).
* Stuff about TGGPL:
The 2020 blog post [Introducing BOSL, a radically new type of
open-source
license](https://electriccoin.co/blog/introducing-tgppl-a-radically-new-type-of-open-source-license/)
discusses the license and gives some examples of its use.
discusses BOSL license and gives some examples of its use.
An earlier (2010) writeup about TGPPL from Ted T'so is
[The Transitive Grace Period Public Licence: good ideas come
around…](https://thunk.org/tytso/blog/2010/01/20/the-transitive-grace-period-public-licence-good-ideas-come-around/).
[Tahoe-LAFS](https://github.com/tahoe-lafs/tahoe-lafs) seems to have
a somewhat complicated (though still open source) licensing
situation, but it appears to be also published under the TGPPL?
And Zooko might be using BOSL or TGPPL for other things as well.
(See also https://github.com/zooko/tgppl -- note that Richard
Fontana is in the commit history there.)
* Aladdin Ghostscript
* Akka (BUSL) [license FAQ](https://www.lightbend.com/akka/license-faq)
They moved to BSL last year; after 3 years, code switches from BSL
to Apache 2.0. From [their blog
post](https://www.lightbend.com/blog/why-we-are-changing-the-license-for-akka):
> ...
> The new license for Akka is the Business Source License (BSL)
> v1.1, with an additional usage grant to cover some open source
> usage of Akka, such as part of the Play Framework. The BSL was
> created by David Axmark and Michael Widenius and has been
> adopted by MariaDB, Cockroach Labs, Sentry, Materialized, and
> others.
>
> The BSL is a “Source Available” license that freely allows using
> the code for development and other non-production work such as
> testing. Production use of the software requires a commercial
> license from Lightbend. The commercial license will be available
> at no charge for early-stage companies (less than US $25 million
> in annual revenue). By enabling early-stage companies to use
> Akka in production for free, we hope to continue to foster the
> innovation synonymous with the startup adoption of Akka.
>
> After 3 years, the BSL license indefinitely reverts to an Apache
> 2.0 license. A [detailed FAQ](http://lightbend.com/akka/license-faq) is available to answer many of the
> questions that you will have about the license change. You can
> see our version of the BSL [here](https://lightbend.com/akka/license).
> ...
* [Atom (text editor)](https://atom-editor.cc/blog/2014/05/06/atom-is-now-open-source/)
* ONE-OFF [Atom (text editor)](https://atom-editor.cc/blog/2014/05/06/atom-is-now-open-source/)
(suggested by @Zaeraxa in reply to https://news.ycombinator.com/item?id=37745772)
* BerkeleyDB and Sleepycat?
Probably not DOSP: Apparently had no license at all prior to this.
* CockroachDB (BUSL) [licensing FAQs](https://www.cockroachlabs.com/docs/stable/licensing-faqs)
* NOT DOSP BerkeleyDB and Sleepycat?
Probably not DOSP: simultaneous dual license.
* FreeBSD netgraph
* [Ghostty](https://mitchellh.com/ghostty)
Have not found any reference to licensing so far.
* ONE-OFF [Ghostty](https://mitchellh.com/ghostty)
(suggested by @Zaeraxa in reply to https://news.ycombinator.com/item?id=37745772)
* Modular/Mojo (a highly-anticipated project from Chris Lattner
"A private project. I plan to open source it one day"
* ONE-OFF Modular/Mojo (a highly-anticipated project from Chris Lattner
(creator of LLVM, Swift, and XLA/TensorFlow).
Possibly an example based on code quality and similar concerns,
but no fixed schedule: https://docs.modular.com/mojo/faq.html#open-source
* GitLab
The situation with GitLab is interesting. They make some fairly
......@@ -92,30 +73,9 @@ need followup.
their way of operating probably warrants mention in the Appendix, as
people interested in DOSP would also want to know about this.
* Hashicorp and BUSL
- https://www.hashicorp.com/license-faq#Why-is-HashiCorp-making-this-change
- https://www.hashicorp.com/blog/hashicorp-adopts-business-source-license
* MariaDB
* _MindLogger_ from Child Mind Institute
- uses its self-rolled _"Delayed Open Source Attribution License"_
- [license file on GH](https://github.com/ChildMindInstitute/mindlogger-applet-builder/blob/master/LICENSE.md)
* MkDocs
* North Road (geospatial software company) [projects](https://north-road.com/#)
@jjgreen followed up in https://news.ycombinator.com/item?id=37745772
to say: "North Road's SLYR (ESRI to QGIS Compatibility Suite) does
that (and rather good code it is too). https://north-road.com/slyr/ .
I see North Road is actually on your list, but eventual openness not
obvious. I think that's clear for SLYR at least."
* UNCLEAR MkDocs
* Onivim 2 (was this unplanned?) [issue](https://github.com/onivim/oni2/issues/3771)
see also https://v2.onivim.io/early-access-portal and
https://github.com/onivim/oni2/issues/3811#issuecomment-910306404 for additional
history
I haven't found any delayed licensing information.
* Android (Google's eventual publication of changes to AOSP)
......@@ -128,44 +88,30 @@ need followup.
commit and its becoming public can be seen? Karl guesses that they
do preserve all the metadata, but we should check.)
* OPSI ["co-funding"](https://www.opsi.org/de/dokumentation/opsi-lizenz-und-copyright) (see also [this forum link](https://forum.opsi.org/viewtopic.php?t=1193))
Cf. the situation with video game development, as Seth noted.
* [OTRS](https://www.znuny.org/en/blog/why) (open source -> delayed ->
proprietary), but one person said that the announced delayed open release
never actually happened.
* Pixelfed ["will be open sourced when we reach v1"](https://pixelfed.org/mobile-apps)
* [PKMN Classic Framework](https://github.com/mm201/pkmn-classic-framework)
(a reverse-engineered third-party Pokémon game server?) has a conditional
relicensing if the developer's official server instance goes offline in
the future
* ONE-OFF Pixelfed ["will be open sourced when we reach v1"](https://pixelfed.org/mobile-apps)
* Qt (officially delayed releases in the past from Trolltech?)
* "searchcode" server under an "eventually open license" according to the post
[GPL Time-bomb an interesting approach to #FOSS licensing](https://boyter.org/2016/08/gpl-time-bomb-interesting-approach-foss-licensing/)
by Ben Boyter.
* [Sentry](https://github.com/getsentry/sentry/blob/master/LICENSE)
(Business Source License (BUSL)); Codecov (also from Sentry) is also BUSL.
See https://blog.sentry.io/lets-talk-about-open-source/.
* [Zed](https://zed.dev/blog/open-sourcing-zed-on-zed)
* UNCLEAR [Zed](https://zed.dev/blog/open-sourcing-zed-on-zed)
(suggested by @Zaeraxa in reply to https://news.ycombinator.com/item?id=37745772)
# Not software
* INAPPLICABLE Hudson->Jenkins
* Rockefeller University Press Journal of Cell Biology has a delayed
open access policy with delayed relicensing of academic journal articles
(although the end license is a noncommercial Creative Commons license
so it would not be considered open source)
* Maybe there are other examples of delayed open access in journals with
formal relicensing that would be considered fully open source (if the
articles were software)?
Alex Scammon mentioned the Hudson->Jenkins transition to Karl. But
on looking more closely into [the
history](https://en.wikipedia.org/wiki/Jenkins_(software)), it looks
like this was not about licensing, but rather about community
influence vs corporate (Oracle) influence on shared project
decisions. ([This
article](https://www.infoworld.com/article/2624986/oracle-s-open-source-missteps-continue-with-hudson-project.html)
seems to give a good overview of what happened.)
# An annoying nomenclature problem
......@@ -202,17 +148,6 @@ suggesting some of these cases (which can be fairly famous, like Netscape
Navigator!), but I think these should be thought of as more of a one-time
"change" than a "delay".
See also [Creative Commons Final Report: On the Viability and
Development of Springing
Licenses](https://creativecommons.org/wp-content/uploads/2018/07/Springing-licenses-FINAL.pdf).
Lawrence Rosen's book *Open Source Licensing: Software Freedom and Intellectual Property Law* uses the term "eventual source".
And Kyle Mitchell just published (as we were in the middle of doing
this research) the blog post [A Short, Simple Template for Scheduled
Relicensing](https://writing.kemitchell.com/2023/10/24/Scheduled-Relicensing),
that should probably at least be referenced from our report.
# Enforceability
The Creative Commons review seems to have been concerned that springing
......@@ -239,7 +174,7 @@ more examples. Please add other threads here too.
* https://twitter.com/kfogel/status/1699104095976423795
* https://chat.opentechstrategies.com/#narrow/stream/2-general/topic/DOSP/near/172793
* https://news.ycombinator.com/item?id=37745772
* http://lists.opensource.org/pipermail/license-discuss_lists.opensource.org/2023-October/thread.html#22130
* http://lists.opensource.org/pipermail/license-discuss\_lists.opensource.org/2023-October/thread.html#22130
# Resources to check
......@@ -251,28 +186,3 @@ more examples. Please add other threads here too.
a really good post, in Karl's opinion, not that anyone asked him,
but hey, if you're editing the notes file then you get to insert
your opinions.)
* Old games and libraries from [id Software](https://github.com/id-Software),
but was this planned or announced?
# More people to contact as we're gathering examples
If your name should be on the list below but isn't, please [let us
know](https://code.librehq.com/ots/dosp-research/-/issues/new)!
* Deb Bryant
* Danese Cooper
* L. Peter Deutsch
* Raph Levien
* Zooko
* Your Name Here...
# Sources / Acknowledgements
* Simon Phipps
* Stefano Maffulli
* Nick Vidal
* Bastian Greshake Tzovaras
* Sam Ramji
* Heather Meeker
* Abby Kearns
\numberedsection{Enforceability}\label{enforce}
Delayed open source licensing is less explored than immediate open source
licensing, and some observers have expressed concerns about its legal
enforceability. For example, if an author died before the announced license
transition date, would the author's heirs be required to honor the license
transition, or could they potentially cancel or withdraw it? What if a
company were acquired by a new owner which wanted to retroactively change
its licensing structure?
% XXX We obviously don't know yet because ...
The Creative Commons research on springing licenses expressed some concerns
about their enforceability. The Creative Commons organization itself
previously implemented a delayed licensing mechanism called Founders
Copyright; unlike other Creative Commons licenses, the Founders Copyright
involves a copyright assignment to the Creative Commons nonprofit
organization itself. The organization then commits to grant the original
author an exclusive license to the for the announced delay period, and
to license the work to the public afterward. It appears that this copyright
assignment mechanism was intended to minimize uncertainty about the
extent to which authors could bind themselves (or their successors) to
future licensing intentions, although it required direct involvement by
the nonprofit as copyright holder and licensor, a role it had otherwise
not seen fit to take on.
Kyle E. Mitchell distinguishes ``a present grant of a license" (with a
specified future start date) from ``a contractual promise to grant the
license later" and advocates using the former, although he does not
imply that the latter is invalid or unenforceable. Mitchell's concerns
focus on clarity and persistent documentation of specific license
grants to specific code and project versions.
# 2023-11-07:
* (James+Karl) High-level organizing and writing in the report.
* (Seth) Did rate of outside contribution change after BUSL
relicensing of Terraform, and maybe same for some other project that
either didn't have a fork or that had a not-conspicuously-successful
fork. Not sure which project that latter would be, but it would be
great if we could identify one for comparison, since the Terraform
fork has so conspicuously successful so far.
* (Seth) Similar investigation using bug tracker data instead of
commits.
* (Seth) Figure out what other DOSP licenses there are:
See "Licenses indexed there that I'm not familiar with and that we
should double-check for possible DOSP-nature" in notes.md.
* (Seth) Remaining todo items from 2023-11-03 entry below.
* (James+Karl, for now at least) We should raise (but not try to
answer) the question of why some BUSL-relicensed projects stimulate
flourishing FOSS forks while others do not. Even within Hashicorp's
projects there are pretty dramatic contrasts.
# 2023-11-03:
* Mark items in notes.md so we know what remains to be investigated in there.
Also, organize the items (either rearranging in groups or via
tagging) to make clear which ones are the kind of DOSP we're
interested in,
* High level organization of report.
- Start w/ Early History as top-level section: Aladdin
Ghostscript, & why they went to straight-up proprietary
relicensing.
Point out how Ghostscript was not a database nor a web dev
library -- it wasn't the sort of thing that would raise the more
modern worry of "Hey, my competitors will use my thing for free
*to compete with me*."
Seth notes that while we do see Company Q expressing displeasure
at competitors picking up Q's stuff and just using it to
directly compete with Q, and we see Q switching to a DOSP
license therefore, it often seems that AGPL was not seriously
considered. Understanding why would be really useful.
- Then Motivations: today, why are people doing it?
- What is their business model?
- What sector are they in?
* Document similarity between Android ecosystem and video game developer
* Document that Trolltech agreed to a DOSP fallback for QT contractually
...and say we don't know if they actually ever did DOSP.
* BUSL
- Has any project ever come out of the gate de novo as BUSL?
Or is it always relicensing an existing open source project?
QUESTION / THOUGHT: It *might* the pattern for BSL and things like
it is that a project's owners relicense to those only after their
product gets traction under a truly OSS license first -- i.e., use
OSS dynamics to gain attention, usage, and investment/loyalty, and
then use BUSL to centralizedly capture more of the value from that
loyalty than would have been possible if the project had remained
under a from-the-start OSS license.
- QUESTION: Why did the BUSL'ing of Terraform catch so much more
blowback than other things that Hashicorp BUSL'd?
- QUESTION: If we wanted to dive deeply on this one, we might want
to get stats on how many contributors jumped ship to the recent
OSS fork of Terraform vs how many stayed (and how many decided to
straddle both projects).
- OBSERVATION: Hashicorp has a CLA-checker bot that makes sure all
the authors of a PR have signed the CLA (the CLA that presumably
allowed them to relicense contributor's changes).
* Explain distinction between BUSL and (upcoming) FSL
FSL is basically a temporary non-compete -- that's its only
proprietary term, and it's an innovation relative to licenses that
have that as a permanent proprietary term.
# 2023-10-30: Seth/Karl meet and discuss next steps
* For each project mentioned in notes.md, make sure that we have the
......