All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefano Stabellini <sstabellini@kernel.org>
To: Lars Kurth <lars.kurth@citrix.com>
Cc: Artem Mygaiev <Artem_Mygaiev@epam.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Andrew Cooper <Andrew.Cooper3@citrix.com>,
	Rich Persaud <persaur@gmail.com>,
	Committers <committers@xenproject.org>,
	xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [Xen-devel] [RFC] Documentation formats, licenses and file system structure
Date: Fri, 11 Oct 2019 10:33:22 -0700 (PDT)	[thread overview]
Message-ID: <alpine.DEB.2.21.1910111028230.6326@sstabellini-ThinkPad-T480s> (raw)
In-Reply-To: <85313DBD-6C0F-4154-99D5-211C849FA3E1@citrix.com>

[-- Attachment #1: Type: text/plain, Size: 6102 bytes --]

On Fri, 11 Oct 2019, Lars Kurth wrote:
> On 11/10/2019, 02:24, "Stefano Stabellini" <sstabellini@kernel.org> wrote:
> 
>     On Thu, 10 Oct 2019, Lars Kurth wrote:
>     > * Would we ever include API docs generated from GPLv2 code? E.g. for safety use-cases?
>     > @Stefano, @Artem: I guess this one is for you. 
>     > I suppose if we would have a similar issue for a safety manual
>     > I am also assuming we would want to use sphinx docs and rst to generate a future safety manual
>     
>     Hi Lars,
>     
>     Thanks for putting this email together.
>     
>     In terms of formats, I don't have a preference between rst and pandoc,
>     but if we are going to use rst going forward, I'd say to try to use rst
>     for everything, including converting all the old stuff. The fewer
>     different formats, the better.
> 
> I think the proposal that needs to follow on from this (which would at some
> point need to be voted on) would then be to go for rst. 
>     
>     As I mentioned during the FuSa call, I agree with you, Andrew, and
>     others that it would be best to have the docs under a CC license. I do
>     expect that we'll end up copy/pasting snippets of in-code comments into
>     the docs, so I think it is important that we are allowed to do that from
>     a license perspective. It is great that GPLv2 allows it (we need to be
>     sure about this).
> 
> The GPL does *not* allow this, but (c) law and fair use clauses do. So typically
> stuff such as
> * Referring to function names, signatures, etc. tend to be all fine
> * Copying large portions of in-line comments would not be fine, but
> If they are large, they would in most cases be re-written in a more suitable
> language. 
> 
> So, I think overall, we should be fine. It's a bit of a grey area though.
> 
> And as you point out below, most of the code in question is typically BSD 
>     
>     Yes, I expect that some docs might be automatically generated, but from
>     header files, not from source code. Especailly public/ header files,
>     which are typically BSD, not GPLv2. I cannot come up with examples of
>     docs we need to generated from GPLv2-only code at the moment, hopefully
>     there won't be any.
>     
> That makes things a lot easier.    
>          
>     >     I wasn't planning on reusing any of the markup, and wasn't expecting to
>     >     use much of the text either.  I'm still considering the option of
>     >     defining that xen/public/* isn't the canonical description of the ABI,
>     >     because C is the wrong tool for the job.
>     >     
>     >     Its fine to provide a C set of headers implementing an ABI, but there is
>     >     a very deliberate reason why the canonical migration v2 spec is in a
>     >     text document.
>     > 
>     > @Stefano: as you and I believe Brian will be spending time on improving the
>     > ABI docs, I think we need to build some agreement here on what/how
>     > to do it. I was assuming that generally the consensus was to have
>     > docs close to the code in source, but this does not seem to be the case.
>     > 
>     > But if we do have stuff separately, ideally we would have a tool that helps
>     > point people editing headers to also look at the relevant docs. Otherwise it will
>     > be hard to keep them in sync.
>     
>     In general, it is a good idea to keep the docs close to the code to make
>     it easier to keep them up to date. But there is no one-size-fits-all
>     here. For public ABI descriptions, I agree with Andrew that ideally they
>     should not be defined as C header files.
>     
>     But it is not an issue: any work that we do here won't be wasted. For
>     instance, we could start by adding more comments to the current header
>     files. Then, as a second step, take all the comments and turn them into
>     a proper ABI description document without any C function declarations.
>     It is easy to move English text around, as long as the license allows it
>     -- that is the only potential blocker I can see.
> 
> This is likely to be problematic. First of all, we are talking about BSD-3-Clause
> or BSD-2-Clause code (the latter is more dominant in headers I believe) in
> all known cases.
> 
> The main properties of the BSD are
> 1: Can be pretty much used anywhere for any purpose
> 2: Can be modified for any purpose 
> 3: But the original license header must be retained in derivates
> 
> Does *not* have requirements around attribution as CC-BY-4: however,
> as we store everything in git attribution is handled by us by default
> 
> CC-BY-4 also has properties 1-3
> In addition: it does require that 
> 4: Derived works are giving appropriate credit to authors 
>     We could clarify in a COPYING how we prefer to do this
>     4.1: We could say that "referring to the Xen Project community" 
>             is sufficient to comply with the attribution clause
>     4.2: We could require individual authors to be credited: in that
>             case we probably ought to lead by example and list the authors
>             in a credit/license section and extract the information from
>             git logs when we generate it (at some point in the future)
> 5: You give an indication whether you made changes ... in practice
> this means you have to state significant changes made to the works
> 
> As such, BSD-2/3-Clause in our context works similarly to CC-BY-4
> from a downstream's perspective. In fact CC-BY-4 is somewhat stricter
> 
> This seems to say to me that the most pragmatic way forward is to create 
> these new ABI documents under BSD-2/3-Clause and accept that the
> produced work is not fully CC-BY-4 (but in all practical terms behaves
> as if it were). The only downside I can see is a slightly less pure
> COPYING, README or credit/license section in the generated document
> but for practical use there is no actual difference.

FWIW I am OK with this. In fact, I think it is a good idea because it
does look like that it will make comments and text easier to move
around, which far overcome the small downside.

[-- Attachment #2: Type: text/plain, Size: 157 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

  reply	other threads:[~2019-10-11 17:33 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-10 12:34 [Xen-devel] [RFC] Documentation formats, licenses and file system structure Lars Kurth
2019-10-10 17:05 ` Andrew Cooper
2019-10-10 18:30   ` Lars Kurth
2019-10-11  1:24     ` Stefano Stabellini
2019-10-11 11:09       ` Lars Kurth
2019-10-11 17:33         ` Stefano Stabellini [this message]
2019-10-15  1:56         ` P S
2019-10-15  1:58         ` Rich Persaud
2019-10-15 12:25           ` Lars Kurth
2019-10-16 16:34             ` Rich Persaud
2019-10-17 13:24               ` Lars Kurth
2019-10-17 16:32                 ` Stefano Stabellini
2019-10-17 16:41                   ` Rich Persaud
2019-10-17 16:53                     ` Stefano Stabellini
2019-10-17 17:05                       ` Rich Persaud
2019-10-17 17:30                         ` Lars Kurth
2019-10-21 12:54                           ` Artem Mygaiev
2019-11-07 19:26                             ` Lars Kurth
2019-11-08 18:55                               ` Stefano Stabellini
2019-10-11  8:32     ` Jan Beulich
2019-10-11 12:25       ` Lars Kurth
2019-10-11 17:28         ` Stefano Stabellini
2019-10-11 10:49 ` Artem Mygaiev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.DEB.2.21.1910111028230.6326@sstabellini-ThinkPad-T480s \
    --to=sstabellini@kernel.org \
    --cc=Andrew.Cooper3@citrix.com \
    --cc=Artem_Mygaiev@epam.com \
    --cc=committers@xenproject.org \
    --cc=lars.kurth@citrix.com \
    --cc=persaur@gmail.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.