Hi,

There's a Jenkins job now to build NetBeans Platform with the mandatory
LICENSE/NOTICE/DEPENDENCIES/DISCLAIMER files:
https://builds.apache.org/view/Incubator%20Projects/job/incubator-netbeans-generate-mandatory-files-linux/
(the work is in the "generate-license-notice-dependencies" branch in the
main NetBeans repository)

There are 3 zips there:
-platform-src-dev-incubator-netbeans-generate-mandatory-files-linux-2-on-20171020.zip:
platform sources
-netbeans/nbbuild/NetBeans-dev-incubator-netbeans-generate-mandatory-files-linux-2-on-20171020-platform.zip:
"ordinary" platform built from the checkout
-temp/nbbuild/NetBeans-dev-incubator-netbeans-generate-mandatory-files-linux-2-on-20171020-platform.zip:
a platform build built by unpacking the platform sources and building from
there (without the git checkout)

The latter two should (ideally) be equivalent, but I didn't do a proper
full check yet.

These files contain the LICENSE/NOTICE/DEPENDENCIES/DISCLAIMER files. Notes
on how these are built (this is based on the existing framework to build
the THIDRPARTYREADME):
-LICENSE: for source distribution, this currently contains only (newly
added) nbbuild/license-stub.txt (which should include the Apache License),
but if individual modules would have a need to add specific texts to the
file, we could do that
          for binary distribution, this contains nbbuild/license-stub.txt +
any licenses for included third party libraries

-NOTICE: for source distribution, this currently contains (newly added)
nbbuild/notice-stub.txt (which should be the "generic" notice for the whole
codebase) + any notice.txt from the source modules (in case the source
module needs some special note)
         for binary distribution, this contains the above + any -notice.txt
for included third party libraries

-DEPENDENCIES: conceptually based on */external/*-license.txt
               for source distribution, a list of runtime and compile time
dependencies (they are distinguished using "Type: compile-time" in
-license.txt)
               for binary distribution, a list of runtime dependencies of
the given distribution

-DISCLAMER: the standard disclaimer from the root of the repository

This all should ensure that the content of LICENSE/NOTICE/DEPENDECIES
reflects what is the in particular build (as opposed to e.g. LICENSE/NOTICE
for the full repository, which AFAIK needs to reflect the whole content of
the repository)

I've also updated headers in a number of */external/*-license.txt files to
get better results in DEPENDENCIES, please see the full patch for details:
https://gitbox.apache.org/repos/asf?p=incubator-netbeans.git;a=commit;h=bf6c6e3dcd18eaf04fd819f2ffa076b0f20e1c2b

Some other notes:
-nbbuild/external/findbugs contains (optional) support for downloading and
running FindBugs, but as this is not using the external binaries framework,
this is not reflected in DEPENDENCIES.
-nbProxyAutoConfig.js (in core.network) is being solved under
NETBEANS-4/NETBEANS-96:
https://issues.apache.org/jira/browse/NETBEANS-4
https://issues.apache.org/jira/browse/NETBEANS-96
-(Windows binary) launchers are currently downloaded from the binary
server, at some point, we may need to discuss how we go about these.

Any comments/feedback on the generated files, or on the process would be
welcome!

Thanks,
    Jan


On Wed, Oct 18, 2017 at 8:27 PM, Geertjan Wielenga <
geertjan.wiele...@googlemail.com> wrote:

> Sounds great and thanks for doing this.
>
> Gj
>
> On Wed, 18 Oct 2017 at 20:26, Jan Lahoda <lah...@gmail.com> wrote:
>
> > On Tue, Oct 17, 2017 at 10:06 PM, Antonio Vieiro <anto...@vieiro.net>
> > wrote:
> >
> > >
> > > > El 17 oct 2017, a las 21:42, Jan Lahoda <lah...@gmail.com> escribió:
> > > >
> > > > Hi Antonio,
> > > >
> > > > On Sun, Oct 8, 2017 at 12:36 PM, Antonio Vieiro <anto...@vieiro.net>
> > > wrote:
> > > >
> > > >> I understand, thanks for the info.
> > > >>
> > > >> I think that once we have maven group/artifact/version coordinates
> for
> > > >> each of the files in binaries_list we could try to automatically
> > > generate
> > > >> notice files (as in [1]).
> > > >>
> > > >> I’ll take a look at how this can be automated.
> > > >>
> > > >
> > > > Did you have a chance to look at this? I think it would be good to
> > start
> > > > looking at producing the appropriate LICENSE/NOTICE(/DEPENDENCIES)
> > files
> > > > for distributions we do, should I look at that, or is that part of
> what
> > > you
> > > > want to look at?
> > > >
> > >
> > > Hi Jan,
> > >
> > > This is a bad week for me (helping out a customer with a big mess) so I
> > > won’t be able to look at this at all. Your lead here would be most
> > > appreciated.
> > >
> >
> > Ok. I am peeking at this. Unless there are objections or better ideas,
> I'll
> > create a new branch for this over the next few days, and a (platform)
> build
> > to produce the zips, so that the content of all the files can be checked.
> >
> > Jan
> >
> >
> > > As time permits I’d like to tackle the generation of binaries for those
> > > modules that have patches to third party source code, and that cannot
> be
> > > then downloaded from Maven.
> > >
> > > Un abrazo,
> > > Antonio
> > >
> > >
> > >
> > >
> >
>

Reply via email to