[License-review] For Approval: License Zero Reciprocal Public License

Kyle Mitchell kyle at kemitchell.com
Tue Sep 26 16:52:49 UTC 2017


On 2017-09-26 11:09, Nigel T wrote:
> > > Triggering on use opens a host of issues for users.  This doesn't happen
> > > in AGPL so no, you can't pull the same stunt.
> >
> > I mentioned AGPL because it smudges the line between "use" and
> > "distribution".  Which is providing software for remote interaction over a
> > network?
> >
>
> The hosting entity is the distributor right?  There are some gray areas but
> this is a bug not a feature of AGPL.

This idea of gray areas representing bugs, rather than features, is a very important one!  I think I will borrow that turn of phrase...

> Also content creators are not the only users of the software package/CMS
> correct?  The folks that log in to read the blogs are also users.
>
> The content creators are in that gray area for distribution.  The content
> consumers are not.  Both are users of the code.

Agreed.  My point was that at least some users---I think the ones you're calling "content creators"---face a copyleft source provision requirement triggered by "use".

> > Open Source has never required free-as-in-beer distribution.  Early
> > license drafters expected payment for copies of source, and media and
> > shipping weren't cheap.
> >
>
> If putting the repo behind a $100,000 paywall meets the requirement for
> publishing under L0-R then the source isn't really available under terms
> normally associated with open source.
>
> The GPL doesn't permit this:
>
>    - b) Convey the object code in, or embodied in, a physical product
>    (including a physical distribution medium), accompanied by a written offer,
>    valid for at least three years and valid for as long as you offer spare
>    parts or customer support for that product model, to give anyone who
>    possesses the object code either (1) a copy of the Corresponding Source for
>    all the software in the product that is covered by this License, on a
>    durable physical medium customarily used for software interchange, *for
>    a price no more than your reasonable cost of physically performing this
>    conveying of source, *or (2) access to copy the Corresponding Source
>    from a network server at no charge.
>
> Adding this kind of protection to the license would be well worth the
> impact to brevity.
>
> It occurs to me that there is also no language in the license to keep the
> developers from pointing to a repo behind a paywall that
> restricts redistribution of source code or requiring software audits as
> part of the terms of access.
>
> GPL has language to protect against these kinds of loopholes and this too
> is worth the impact to brevity.

I think these can both be addressed, and briefly.  Off the cuff here:

  Uses in the execution or development of any computer program, the
  entire source code of which is not publicly available, free of charge,
  on terms approved by the Open Source Initiative...

What do you think?

I like it, but worry a bit about the extent to which it ensconces availability of free and freemium distribution for Open Source as an expectation.  But that's a general concern.  Your concerns were specific.

> You still have the issue where users have no access to source code because
> the repository went away.  Most users would likely depend on the link in
> the license to meet their obligation for publishing source code.  If that
> link were to die then they would be out of compliance with no way to
> recover.  Given they aren't developers they may never know the link went
> bad or was ever good in the first place.
>
> So I would also like to see language in the license that protects users if
> access to the original source code as noted in the license is lost.

Would a clarification that use in unmodified form, not as part of some larger work or to develop some other program, does not fall under the Open Source release condition, allay your concerns?

> > We disagree on the basic distinction you draw between users and
> > developers.  We may not resolve that disagreement, and we may not need to.
> > I think I know where you're coming from.  To give you a sense of where I'm
> > coming from: I couldn't help noticing, browsing through lists of AGPL
> > projects on Wikipedia, how many are either databases (MongoDB, Neo4j
> > extensions) or network applications (Diaspora, Gitorious).  Software very
> > often run with, or for, others.
> >
>
> The difference between developers and users is still very relevant.
>
> By claiming that the OSI should ignore the distinction because the AGPL has
> slightly muddied the waters is like claiming we can ignore the difference
> between people who craft chairs and people who sit on them because some
> users paint their chairs or put stickers on them blurs the line between
> users and furniture makers.
>
> So yeah, we disagree.  Determining impact to the user community as well as
> the developer community is part of the license approval process.

This is not the first time today that I'm reading that OSI approval is more than what opensource.org says.  But I hope it's been clear from the get-go that I'm open to all questions.  My concern, procedurally, is making clear that I know what is part of the process, and what is a part of the process that affects the outcome, and how.

I brought up AGPL as I did to demonstrate that hooking into use for copyleft is not without precedent, and evidently compatible with the Definition, in principle.  That being the case, I'm by no means against assessing impacts of various kinds, as well.

For what it's worth, I think users-not-developers has been a fissure point between Free Software and permissive Open Source worldviews for as far back as I've read.  Nothing new under the sun, I suppose.  But the Definition has accepted Free Software licenses that implement the view that software consumers should be software makers, too.

> > > I have triggered #3 by developing code based on L0-R.  I must now publish
> > > the code.
> >
> > For completeness: or cease executing or developing it, or cease using the
> > L0-R code in doing so.
>
> Thank you for the clarification.  I would ask that you put that into the
> license text.

I think that it's there.  You could read condition 3 as:

    function condition_three (l0r_code, program) {
      if (
        // "cease using the L0-R code":
        using(l0r_code) &&
        // "cease executing or developing it":
        (executing(program) || developing(program)) &&
        (!published(program) || !osi_licensed(program))
      ) {
        return "
          must be limited to a period
          of ${GRACE_PERIOD} consecutive calendar days
        "
      } else {
        return "
          [U]se in source and binary forms,
          with or without modification,
          are permitted
        "
      }
    }

> > Nigel, brother, it's hard to read retorts about my own intent with a level
> > head.
> >
>
> My apologies.

And mine, sincerely.  If I provoked you, if I was anything less than careful.

We're on level ground.  This has been an _excellent_ conversation.

Best,

K

-- 
Kyle Mitchell, attorney // Oakland // (510) 712 - 0933



More information about the License-review mailing list