Thanks Ken,
On Jun 1 2019, at 4:45 pm, Kenneth Loafman <[email protected]> wrote:
> Launchpad runs tests when building the package. It will fail if something is
> wrong.
Sure, and that is really helpful, but that is only at/post release time, rather
than on merge to trunk.
>
> I am working on a dev PPA for 0.8.xx but I'm having some issues. Missing
> packages for one. Having to understand unclear errors is the main one.
Presumably to do with the Python 3 enablement, rather than anything to do with
the actual 0.8 changes? I was tracking some of the backends that seemed
problematic for us with Python 3 in the first paragraph of:
https://blueprints.launchpad.net/duplicity/+spec/python3
please feel free to update there/add bugs for anything that is not working if
you want help.
I would not be averse to just cutting off non-python3 backends behind a "Sorry,
this does not yet work on Python 3" error. It obviously does not solve the
problem, but would let us get python3-compatible debs out the door (which is
pretty vital with distros busy kicking out anything non-python3 in advance of
the python2 EOL) and then work on updating the backends after that -- it may
also encourage contributions from those who actually use those backends.
> We can add the Snap package to the PPA if that helps.
I agree that, in the medium and long term, we should replace the PPAs with Snap
packages.
Once we are happy that the Snap is working well enough (I have had nearly zero
feedback on whether it is working for others), I think step one is to encourage
new users who want a non-distro-supplied version (e.g. if they have a bug or
need a later version) to install duplicity that way instead of through the
PPAs. That essentially means that we on the team are effectively only targeting
one release/set of package versions at a time (currently Ubuntu Bionic).
If that is going well we can then just stop updating the PPAs and anyone
wanting further updates can move over to the Snap. I believe some packages then
push an updated package to the PPAs that installs the Snap instead.
> > > > > On py2 I cannot get past to import even though it's in tox and local
> > > > > site-packages. This causes all of the functional tests to fail.
> > > > Do we need this on Py2? Isn't it to provide Python 2-equivalent
> > > > functionality in Python 3? Can we put the import within a test for
> > > > Python version (and then obviously in future move over to using Python
> > > > 3 constructs).
> > > >
> > >
> > > Yes, past.old_div() is used in multiple modules to keep away from py3's
> > > broken division.
> > >
> > >
> > >
> >
> > I am still getting this when trying to do ./run-tests on trunk, but I see
> > you managed to get 0.8.00 out the door -- how did you fix it on your
> > machine?
>
>
> I did a clean install on a Ubuntu Bionic VM and that worked.
Hmmm... Did you install anything from outside the Bionic repos (e.g. pip etc)
to make it work?
When I try to run our tests on a clean 18.04 environment, I'm getting an
"IndexError: list index out of range" again:
lxc launch ubuntu:18.04 duplicity-run-tests
lxc exec duplicity-run-tests -- /bin/bash
apt update && \
apt -y install build-essential librsync-dev python-dev bzr python3-dev \
python-fasteners python-future python-mock python-requests python-urllib3
python3-urllib3 \
python-coverage python3-coverage python-pexpect python3-pexpect
python-pycodestyle python3-pycodestyle pylint pylint3 python-pytest
python-pytest-pylint python3-pytest-pylint python-pytest-runner
python3-pytest-runner tox && \
bzr branch lp:duplicity && \
cd duplicity/duplicity && \
python2 compilec.py && python3 compilec.py && \
cd ../testing && \
./run-tests
[...]
GLOB sdist-make: /root/duplicity/setup.py
Traceback (most recent call last):
File "/usr/bin/tox", line 11, in <module>
load_entry_point('tox==2.5.0', 'console_scripts', 'tox')()
File "/usr/lib/python3/dist-packages/tox/session.py", line 39, in main
retcode = Session(config).runcommand()
File "/usr/lib/python3/dist-packages/tox/session.py", line 390, in runcommand
return self.subcommand_test()
File "/usr/lib/python3/dist-packages/tox/session.py", line 535, in
subcommand_test
path = self.get_installpkg_path()
File "/usr/lib/python3/dist-packages/tox/session.py", line 511, in
get_installpkg_path
path = self._makesdist()
File "/usr/lib/python3/dist-packages/tox/session.py", line 414, in _makesdist
return self.config.distdir.listdir()[0]
IndexError: list index out of range
That is not an error I am getting on my normal development box, but I cannot
remember what I have done to that since a fresh install. Any tips if you have
just done it? That's all the packages from requirements.txt in both their
python2 and python3 variants.
Kind regards,
Aaron_______________________________________________
Mailing list: https://launchpad.net/~duplicity-team
Post to : [email protected]
Unsubscribe : https://launchpad.net/~duplicity-team
More help : https://help.launchpad.net/ListHelp