incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bolke de Bruin <>
Subject Re: [VOTE] Release Airflow 1.10.0
Date Sat, 21 Jul 2018 18:33:35 GMT
Hi Justin,

Thank you for the thorough review! I have created AIRFLOW-2779 to track most of the issues
you have raised. 

On the GPL dependency you mentioned. We are not distributing GPL sources, not in source or
in binary form. This has never been the case. In the third degree there potentially was a
GPL issue during runtime. The author of the package in question (unidecode) when asked mentioned
several times that he considered the usage equal to an API (ie. like the Linux kernel exposing
a set of generic calls) and the API could be implemented by an alternative. This was discussed
in LEGAL-362, which you took part in.

We managed to convince the upstream package maintainers (python-slugify and python-nvd3) to
allow a patch that allowed switching to a different API implementation by setting a environment
variable while installing their packages and to release new versions. However it is not the
default for them. This means at least that the situation we are now in is an improvement over
the previous releases (1.8.0 -> 1.8.1 -> 1.8.2 -> 1.9.0) as there was no way switch
and avoid the package before.

As to our solution (for now). Python packages are often installed site-wide and can be part
of the dependencies of other packages. While we maybe could enforce the installation of the
non-GPL API it would/could 1) interfere with other packages on the same system that do not
set this environment variable explicitly. 2) If any the other packages upgrades without setting
this variable it would pull in the GPL API. So we decided that it would be better to educate
the user and make it part of the install instructions.

We can reconsider, but we cannot solve #1 and #2. Which, in my opinion, would make it more
opaque to the users. 

Given the current situation is at least improvement over the old situation can you reconsider
your -1 for this release and preferably agree with our approach (or maybe have an improvement
over it)?	


> On 21 Jul 2018, at 03:03, Justin Mclean <> wrote:
> Hi,
> -1 (binding) because of GPL dependancy
> I checked the source release:
> - incubating in name
> - signatures and hash good but please remove md5 hashes and don’t publish then
> - DISCLAIMER exists
> - Year in NOTICE is not correct "2016 and onwards” isn’t valid as copyright has an
expiry date
> - NOTICE and LICENSE have a couple of minor issues (see below)
> - Several files look to have incorrect headers with copyright lines [8][9][10] Are these
actually 3rd party files?
> - No unexpected binary files
> - Failed to install, probably my set up. Would be nice to note python version required
and supported OS’s in INSTALL.
> - missing jQuery clock [3] and typeahead [4], as they are ALv2 it’s not required to
list them but it’s a good idea to do so.
> - missing the license for this [5]
> - this file [7] oddly has © 2016 GitHub, the bottom of it
> This files [1][2] seem to be 3rd party ALv2 licensed files that refers to a NOTICE file,
that information in that NOTICE file (at the very least the copyright into) should be in your
NOTICE file. This should also be noted in LICENSE.
> I also find it very odd that the GPL dependancy unidecode is opt out, rather than opt
in (ie the user has to do something to not get it) and that makes it non optional IMO [6].
 Can you explain why it was done this way and I’ll consider changing my vote.
> Thanks,
> Justin
> 1. /airflow/security/
> 2. ./airflow/security/
> 3. ./airflow/www_rbac/static/jqClock.min.js
> 4. ./airflow/www/static/bootstrap3-typeahead.min.js
> 5. ./apache-airflow-1.10.0rc2+incubating/scripts/ci/
> 6.
> 7. ./docs/license.rst
> 8. airflow/contrib/auth/backends/
> 9. /airflow/contrib/auth/backends/
> 10. /airflow/contrib/hooks/
> 11. /airflow/
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message