tinyfpga / TinyFPGA-Bootloader

An open source USB bootloader for FPGAs
Apache License 2.0
352 stars 94 forks source link

tinyprog 1.0.23 has no py3 wheel #25

Open MartyMacGyver opened 5 years ago

MartyMacGyver commented 5 years ago

There are py2 and py3 wheels for the previous release: https://pypi.org/project/tinyprog/1.0.21/#files

There's no py3 wheel for the current one though: https://pypi.org/project/tinyprog/1.0.23/#files

ewenmcneill commented 5 years ago

@tinyfpga, as noted in https://discourse.tinyfpga.com/t/issues-with-tinyprog-u-on-bx/628/16, it appears that https://github.com/tinyfpga/TinyFPGA-Bootloader/tree/master/programmer does not include changes after 2018-09-07, and thus only has the source for 1.0.22b1 (missing 1.0.22b2 and 1.0.23 as compared with https://pypi.org/project/tinyprog/1.0.23/#history). Releasing this source would in theory allow installing 1.0.23 on Python 3.x with something like:

pip install "git+https://github.com/tinyfpga/TinyFPGA-Bootloader#egg=tinyprog&subdirectory=programmer&subdirectory=programmer"

which is being used by https://github.com/timvideos/litex-buildenv/ to install tinyprog for Python 3.6 now, and getting 1.0.22b1:

(LX P=tinyfpga_bx.minimal F=micropython) ewen@parthenon:/src/fpga/litex-buildenv$ pip list 2>/dev/null | grep tinyprog 
tinyprog                 1.0.22b1     
(LX P=tinyfpga_bx.minimal F=micropython) ewen@parthenon:/src/fpga/litex-buildenv$ 

Particularly with only about 11 months of Python 2.7 upstream support left it'd be helpful to be able to install the latest tinyprog with Python 3.x.

Thanks,

Ewen

ewenmcneill commented 5 years ago

@MartyMacGyver

Tim Ansell (@mithro ) and I have done some spring cleaning on the tinyprog PyPI package (and on GitHub) over the last couple of days, and have a 1.0.24 pre-release version which hopefully is installable on Python 2 and Python 3 again:

https://pypi.org/project/tinyprog/1.0.24.dev18/

It's currently marked as a "dev" version because we'd like a few people to test it before we make it the new stable release. Could you perhaps try testing it out?

IIRC:

pip install tinyprog --pre --upgrade

will allow you to upgrade to a pre-release (ie not stable) version.

Changes made are in https://github.com/tinyfpga/TinyFPGA-Bootloader/pull/35, https://github.com/tinyfpga/TinyFPGA-Bootloader/pull/36, https://github.com/tinyfpga/TinyFPGA-Bootloader/pull/37, https://github.com/tinyfpga/TinyFPGA-Bootloader/pull/39, which includes grabbing the 1.0.23 changes that were only on PyPI and apparently not in the GitHub repo and re-adding them to git, as well as a bunch of packaging tidy ups so as to get a nicer PyPI description and more automated package upload.

Thanks,

Ewen

mithro commented 5 years ago

I believe this is no longer relevant?

ewenmcneill commented 5 years ago

I believe this is no longer relevant?

Well, there's still no Python 3 wheel of tinyprog 1.0.23 :-) And there's no non-development release of anything later either.

But if you're planning on doing a non-development release of 1.0.24 (or later) with Py2/Py3 versions that people can install directly (ie, without installing from git or explicitly requesting a development version), then yes this issue would then be no longer relevant / out of date.

Ewen

mithro commented 5 years ago

@ewenmcneill - I think we need to do some testing, but should try and get that release out ASAP....