Hi Sid, Do you have a JIRA and a PR to address it? I can then consider it for RC2
B. > On 12 Jul 2018, at 04:50, Sid Anand <san...@apache.org> wrote: > > FYI! > I just installed the release candidate. The first thing I noticed is a > missing tool tip for the Null State in the Recent Tasks column on the landing > page. Since the null globe is new to this UI, users will likely hover over it > to inquire what it means... and will be left wanting. Of course, they could > click on the globe, which will take them to > http://localhost:8080/admin/taskinstance/?flt1_dag_id_equals=example_bash_operator&flt2_state_equals=null > > <http://localhost:8080/admin/taskinstance/?flt1_dag_id_equals=example_bash_operator&flt2_state_equals=null>, > which will always show an empty list, leaving them a bit more confused. > > -s > > On Wed, Jul 11, 2018 at 3:13 PM Carl Johan Gustavsson > <carl.jo...@tictail.com.invalid> wrote: > Hi Bolke, > > (Switching email to avoid moderation on my emails.) > > The normal Airflow test suite does not fail as it uses a LC_ALL set to > utf-8. > > I think it is a proper test though, it is a minimal reproducible version of > the code that fails. And the only difference in behaviour is at 3.7 which > we don’t support anyway so I’m fairly sure it is broken for all supported > Python 3 versions. > > I now tried running the tests in docker using 3.5 with the LC_ALL/LANG > unset and I see the same failure. > > I don’t think this is a big thing though and we could release it without > the fix I made. I think most people run it with a sane LC_ALL, but > apparently we didn’t. > Here’s the log for the test: > > > docker run -t -i -v `pwd`:/airflow/ python:3.5 bash > root@b99b297df111:/# locale > LANG=C.UTF-8 > LANGUAGE= > LC_CTYPE="C.UTF-8" > LC_NUMERIC="C.UTF-8" > LC_TIME="C.UTF-8" > LC_COLLATE="C.UTF-8" > LC_MONETARY="C.UTF-8" > LC_MESSAGES="C.UTF-8" > LC_PAPER="C.UTF-8" > LC_NAME="C.UTF-8" > LC_ADDRESS="C.UTF-8" > LC_TELEPHONE="C.UTF-8" > LC_MEASUREMENT="C.UTF-8" > LC_IDENTIFICATION="C.UTF-8" > LC_ALL= > > unset LANG > root@b99b297df111:/# locale > LANG= > LANGUAGE= > LC_CTYPE="POSIX" > LC_NUMERIC="POSIX" > LC_TIME="POSIX" > LC_COLLATE="POSIX" > LC_MONETARY="POSIX" > LC_MESSAGES="POSIX" > LC_PAPER="POSIX" > LC_NAME="POSIX" > LC_ADDRESS="POSIX" > LC_TELEPHONE="POSIX" > LC_MEASUREMENT="POSIX" > LC_IDENTIFICATION="POSIX" > LC_ALL= > root@b99b297df111:/# pip install -e .[devel] > root@b99b297df111:/airflow# ./run_unit_tests.sh > + export AIRFLOW_HOME=/root/airflow > + AIRFLOW_HOME=/root/airflow > + export AIRFLOW__CORE__UNIT_TEST_MODE=True > + AIRFLOW__CORE__UNIT_TEST_MODE=True > + export AIRFLOW__TESTSECTION__TESTKEY=testvalue > + AIRFLOW__TESTSECTION__TESTKEY=testvalue > + export AIRFLOW_USE_NEW_IMPORTS=1 > + AIRFLOW_USE_NEW_IMPORTS=1 > +++ dirname ./run_unit_tests.sh > ++ cd . > ++ pwd > + DIR=/airflow > + export PYTHONPATH=:/airflow/tests/test_utils > + PYTHONPATH=:/airflow/tests/test_utils > + nose_args= > + which airflow > + echo 'Initializing the DB' > Initializing the DB > + airflow resetdb > + yes > Traceback (most recent call last): > File "/usr/local/bin/airflow", line 6, in <module> > exec(compile(open(__file__).read(), __file__, 'exec')) > File "/airflow/airflow/bin/airflow", line 21, in <module> > from airflow import configuration > File "/airflow/airflow/__init__.py", line 35, in <module> > from airflow import configuration as conf > File "/airflow/airflow/configuration.py", line 106, in <module> > DEFAULT_CONFIG = f.read() > File "/usr/local/lib/python3.5/encodings/ascii.py", line 26, in decode > return codecs.ascii_decode(input, self.errors)[0] > UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 21082: > ordinal not in range(128) > + '[' '' ']' > + '[' -z '' ']' > + nose_args='--with-coverage --cover-erase --cover-html > --cover-package=airflow --cover-html-dir=airflow/www/static/coverage > --with-ignore-docstrings --rednose --with-timer -s -v > --logging-level=DEBUG ' > + echo 'Starting the unit tests with the following nose arguments: > --with-coverage' --cover-erase --cover-html --cover-package=airflow > --cover-html-dir=airflow/www/static/coverage --with-ignore-docstrings > --rednose --with-timer -s -v --logging-level=DEBUG > Starting the unit tests with the following nose arguments: --with-coverage > --cover-erase --cover-html --cover-package=airflow > --cover-html-dir=airflow/www/static/coverage --with-ignore-docstrings > --rednose --with-timer -s -v --logging-level=DEBUG > + nosetests --with-coverage --cover-erase --cover-html > --cover-package=airflow --cover-html-dir=airflow/www/static/coverage > --with-ignore-docstrings --rednose --with-timer -s -v --logging-level=DEBUG > nose.plugins.cover: ERROR: Coverage not available: unable to import > coverage module > Failure: UnicodeDecodeError ('ascii' codec can't decode byte 0xe2 in > position 21082: ordinal not in range(128)) ... ERROR > Failure: UnicodeDecodeError ('ascii' codec can't decode byte 0xe2 in > position 21082: ordinal not in range(128)) ... ERROR > ====================================================================== > 1) ERROR: Failure: UnicodeDecodeError ('ascii' codec can't decode byte 0xe2 > in position 21082: ordinal not in range(128)) > ---------------------------------------------------------------------- > Traceback (most recent call last): > /usr/local/lib/python3.5/site-packages/nose/failure.py line 39 in > runTest > raise self.exc_val.with_traceback(self.tb) > /usr/local/lib/python3.5/site-packages/nose/loader.py line 418 in > loadTestsFromName > addr.filename, addr.module) > /usr/local/lib/python3.5/site-packages/nose/importer.py line 47 in > importFromPath > return self.importFromDir(dir_path, fqname) > /usr/local/lib/python3.5/site-packages/nose/importer.py line 94 in > importFromDir > mod = load_module(part_fqname, fh, filename, desc) > /usr/local/lib/python3.5/imp.py line 245 in load_module > return load_package(name, filename) > /usr/local/lib/python3.5/imp.py line 217 in load_package > return _load(spec) > <frozen importlib._bootstrap> line 693 in _load > > <frozen importlib._bootstrap> line 673 in _load_unlocked > > <frozen importlib._bootstrap_external> line 697 in exec_module > > <frozen importlib._bootstrap> line 222 in _call_with_frames_removed > > airflow/__init__.py line 35 in <module> > from airflow import configuration as conf > airflow/configuration.py line 106 in <module> > DEFAULT_CONFIG = f.read() > /usr/local/lib/python3.5/encodings/ascii.py line 26 in decode > return codecs.ascii_decode(input, self.errors)[0] > UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position > 21082: ordinal not in range(128) > ====================================================================== > 2) ERROR: Failure: UnicodeDecodeError ('ascii' codec can't decode byte 0xe2 > in position 21082: ordinal not in range(128)) > ---------------------------------------------------------------------- > Traceback (most recent call last): > /usr/local/lib/python3.5/site-packages/nose/failure.py line 39 in > runTest > raise self.exc_val.with_traceback(self.tb) > /usr/local/lib/python3.5/site-packages/nose/loader.py line 418 in > loadTestsFromName > addr.filename, addr.module) > /usr/local/lib/python3.5/site-packages/nose/importer.py line 47 in > importFromPath > return self.importFromDir(dir_path, fqname) > /usr/local/lib/python3.5/site-packages/nose/importer.py line 94 in > importFromDir > mod = load_module(part_fqname, fh, filename, desc) > /usr/local/lib/python3.5/imp.py line 245 in load_module > return load_package(name, filename) > /usr/local/lib/python3.5/imp.py line 217 in load_package > return _load(spec) > <frozen importlib._bootstrap> line 693 in _load > > <frozen importlib._bootstrap> line 673 in _load_unlocked > > <frozen importlib._bootstrap_external> line 697 in exec_module > > <frozen importlib._bootstrap> line 222 in _call_with_frames_removed > > tests/__init__.py line 25 in <module> > from .configuration import * > tests/configuration.py line 28 in <module> > from airflow import configuration > airflow/__init__.py line 35 in <module> > from airflow import configuration as conf > airflow/configuration.py line 106 in <module> > DEFAULT_CONFIG = f.read() > /usr/local/lib/python3.5/encodings/ascii.py line 26 in decode > return codecs.ascii_decode(input, self.errors)[0] > UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position > 21082: ordinal not in range(128) > > [error] 100.00% nose.failure.Failure.runTest: 0.0004s > ----------------------------------------------------------------------------- > 2 tests run in 0.060 seconds. > 2 errors (0 tests passed) > > > -- > Carl Johan Gustavsson > > On 11 July 2018 at 23:24:01, Bolke de Bruin (bdbr...@gmail.com > <mailto:bdbr...@gmail.com>) wrote: > > Hi Carl, > > That is not a real check, ie. Does Airflow have the same issue clean > install on 3.5? Travis’ tests run on 3.5. > > B. > > Verstuurd vanaf mijn iPad > > > Op 10 jul. 2018 om 15:10 heeft Carl Johan Gustavsson < > carl.j.gustavs...@gmail.com <mailto:carl.j.gustavs...@gmail.com>> het > volgende geschreven: > > > > Hi Bolke, > > > > > > I did a quick test on 3.5.5, 3.4.0 and 3.7.0 on OS X now, all but 3.7 > breaks > > > > Quick repro: > > > > ➜ ~ pyenv local 3.5.5 > > ➜ ~ locale > > LANG= > > LC_COLLATE="C" > > LC_CTYPE="C" > > LC_MESSAGES="C" > > LC_MONETARY="C" > > LC_NUMERIC="C" > > LC_TIME="C" > > LC_ALL= > > ➜ ~ cat testweird.txt > > ’ > > ➜ ~ python > > Python 3.5.5 (default, Jul 7 2018, 17:00:56) > > [GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.1)] on darwin > > Type "help", "copyright", "credits" or "license" for more information. > > >>> open('testweird.txt').read() > > Traceback (most recent call last): > > File "<stdin>", line 1, in <module> > > File "/Users/cjg/.pyenv/versions/3.5.5/lib/python3.5/encodings/ascii.py", > line 26, in decode > > return codecs.ascii_decode(input, self.errors)[0] > > UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 0: > ordinal not in range(128) > > >>> > > > > > > Maybe not a blocking change but it is a breaking change from 1.9 I guess. > > > > > > / Carl Johan > > > > > >> On 10 July 2018 at 14:48:47, Bolke de Bruin (bdbr...@gmail.com > >> <mailto:bdbr...@gmail.com>) wrote: > >> > >> Hi Carl, > >> > >> Did you this on python 3.5 as well? 3.6 is not an officially supported > (yet). As a workaround is available I won’t consider this blocking btw. > >> > >> Bolke > >> > >> Verstuurd vanaf mijn iPad > >> > >> Op 10 jul. 2018 om 11:53 heeft Carl Johan Gustavsson < > carl.j.gustavs...@gmail.com <mailto:carl.j.gustavs...@gmail.com>> het > volgende geschreven: > >> > >>> Hi, > >>> > >>> First of all, thank you for all the work with the release management. > >>> > >>> I ran in to a weird issue testing the RC1, running under Python 3.6.0 / > Ubuntu 14.04.5, upgrading from a master build from February. > >>> > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 Traceback > (most recent call last): > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 File > "/opt/virtualenv/tictail/pipeline/bin/airflow", line 21, in <module> > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 from airflow > import configuration > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 File > "/opt/virtualenv/tictail/pipeline/lib/python3.6/site-packages/airflow/__init__.py", > line 35, in <module> > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 from airflow > import configuration as conf > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 File > "/opt/virtualenv/tictail/pipeline/lib/python3.6/site-packages/airflow/configuration.py", > line 106, in <module> > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 > DEFAULT_CONFIG = f.read() > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 File > "/opt/virtualenv/tictail/pipeline/lib/python3.6/encodings/ascii.py", line > 26, in decode > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 return > codecs.ascii_decode(input, self.errors)[0] > >>> Jul 10 08:50:33 hostname supervisord: airflow-webserver-01 > UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 20770: > ordinal not in range(128) > >>> > >>> Removing the ’ on > https://github.com/apache/incubator-airflow/blob/master/airflow/config_templates/default_airflow.cfg#L613 > > <https://github.com/apache/incubator-airflow/blob/master/airflow/config_templates/default_airflow.cfg#L613> > solved the issue for me, and digging a bit deeper it seems Airflow now > requires setting LC_ALL=en_US.UTF-8 in the environment or similar to force > Python to read the file as utf-8 and not ascii. (I think this was changed > in to default to utf-8 in Python 3.7). > >>> > >>> I see 3 solutions for this > >>> 1. Document that Airflow need to run with LC_ALL=en_US.UTF-8 or > similar. > >>> 2. Change the default config file to not contain non-ascii characters. > >>> 3. Always read the file as unicode regardless of the LC_ALL > environment, by the encoding='utf-8’ parameter to open(). > >>> > >>> I think 3 is the best solution, and I can prepare a PR for that if > necessary . > >>> > >>> I guess this counts as -1 (non-binding) > >>> > >>> All the best > >>> > >>> Carl Johan > >>> > >>> > >>> > >>>> On 8 July 2018 at 22:02:33, Bolke de Bruin (bdbr...@gmail.com > >>>> <mailto:bdbr...@gmail.com>) wrote: > >>>> > >>>> Hey all, > >>>> > >>>> I have cut Airflow 1.10.0 RC1. This email is calling a vote on the > release, > >>>> which will last for 72 hours. Consider this my (binding) +1. > >>>> > >>>> Airflow 1.10.0 RC 1 is available at: > >>>> > >>>> https://dist.apache.org/repos/dist/dev/incubator/airflow/1.10.0rc1/ > >>>> <https://dist.apache.org/repos/dist/dev/incubator/airflow/1.10.0rc1/> < > https://dist.apache.org/repos/dist/dev/incubator/airflow/1.10.0rc1/ > <https://dist.apache.org/repos/dist/dev/incubator/airflow/1.10.0rc1/>> > >>>> > >>>> apache-airflow-1.10.0rc1+incubating-source.tar.gz is a source release > that > >>>> comes with INSTALL instructions. > >>>> apache-airflow-1.10.0rc1+incubating-bin.tar.gz is the binary Python > "sdist" > >>>> release. > >>>> > >>>> Public keys are available at: > >>>> > >>>> https://dist.apache.org/repos/dist/release/incubator/airflow/ > >>>> <https://dist.apache.org/repos/dist/release/incubator/airflow/> < > https://dist.apache.org/repos/dist/release/incubator/airflow/ > <https://dist.apache.org/repos/dist/release/incubator/airflow/>> > >>>> > >>>> The amount of JIRAs fixed is over 700. Please have a look at the > changelog. > >>>> > >>>> Please note that the version number excludes the `rcX` string as well > >>>> as the "+incubating" string, so it's now simply 1.10.0. This will > allow us > >>>> to rename the artifact without modifying the artifact checksums when > we > >>>> actually release. > >>>> > >>>> > >>>> Cheers, > >>>> Bolke