Sorry, still getting used to pypi's naming conventions. The latest version you should use is actually https://test.pypi.org/project/mnemosyne/2.10.1a0/ , which pypi treats as a prerelease to what it wrongly considers the latest version 2.10.1.
Peter On Thursday, 5 October 2023 at 19:58:03 UTC+2 Peter Bienstman wrote: > Ok, I jumped through a few hoops, made use of an undocumented feature > of poetry, did some final tweaks, and now it seems to work for me: > > https://test.pypi.org/project/mnemosyne/ > > Devin, could you try and see if this also works on Mac, and perhaps > write some Mac-specific instructions so that a non-technical user is > able to install it that way? > > There is one final hurdle, though, and that is that I can't register > mnemosyne on the actual pypi site, as opposed to the test-pypi site. > Perhaps somebody already claimed the name? In any case, I've opened a > request to try and fix this... > > Cheers, > > Peter > > On Thu, Oct 5, 2023 at 3:23 AM Ace Alba <[email protected]> wrote: > > > > Also, wheel needs to be installed 'pip install wheel' before running > 'python3 setup.py bdist_wheel'. > > > > On Thursday, October 5, 2023 at 9:19:15 AM UTC+8 Ace Alba wrote: > >> > >> This is unfamiliar terrain for me. Poetry cannot access makefile > commands, but can access python commands, I think. I think you are in the > right direction; what you did for pyqt_ui, you do for the rest of the build > commands. Either that or access the make commands from a python script, > then register that in pyproject.toml. > >> > >> As for the wheel generation... well everytime i try something in google > there's just commenters in github issues duking it on what the proper > behavior should be. Woe the hellscape that is python's packaging ecosystem. > >> > >> Anyhow, from this github issue, > https://github.com/pypa/wheel/issues/276... here is a possible solution: > >> Python3 setup.py bdist_wheel. > >> > >> Other than that i haven't found a way yet to generate the wheel > directly from an sdist. I'll update if I ever find something. > >> On Thursday, October 5, 2023 at 1:17:39 AM UTC+8 Peter Bienstman wrote: > >>> > >>> 'python3 setup.py sdist' just creates the source, not a wheel. Anyway, > >>> I made some progress by adding a section [tool.poetry.scripts] to > >>> pyproject.toml and doing some other minor changes. Now an executable > >>> is added to the Scripts directory which starts to run Mnemosyne. > >>> However, where it currently fails is that the new poetry > >>> infrastructure does not know that it should build the dependencies > >>> (build, build-po in the makefile)... > >>> > >>> Ace, any idea how best to do this? > >>> > >>> Thanks! > >>> > >>> Peter > >>> > >>> On Wed, Oct 4, 2023 at 12:44 PM Ace Alba <[email protected]> wrote: > >>> > > >>> > When building the dists, we might need to use > >>> > > >>> > python3 setup.py sdist > >>> > > >>> > Instead of Python3 -m build... ? > >>> > > >>> > Then reupload the packages to testpypi. > >>> > On Wednesday, October 4, 2023 at 6:18:45 PM UTC+8 Peter Bienstman > wrote: > >>> >> > >>> >> Excellent detective work, thanks a lot! > >>> >> > >>> >> I've tried the second option in a virtual environment, and it seems > to > >>> >> install everything just fine, apart from the main script to start > >>> >> Mnemosye... In setup.py the location of this script is mentioned, > but > >>> >> perhaps there's something in the new poetry infrastructure that > needs > >>> >> to change in order to accomodate this as well? (I've very little > >>> >> experience with poetry) > >>> >> > >>> >> Cheers, > >>> >> > >>> >> Peter > >>> >> > >>> >> On Wed, Oct 4, 2023 at 11:52 AM Ace Alba <[email protected]> > wrote: > >>> >> > > >>> >> > Edit: Here's the solution for option two, which is much simpler. > Use this command instead. > >>> >> > > >>> >> > pip install --index-url https://test.pypi.org/simple/ > --extra-index-url https://pypi.org/simple/ mnemosyne==2.10.1 > >>> >> > > >>> >> > This command allows pip to use pypi as an alternative repo in > resolving the dependencies. works on my end. > >>> >> > On Wednesday, October 4, 2023 at 5:45:14 PM UTC+8 Ace Alba wrote: > >>> >> >> > >>> >> >> Here's our blocker. It's no one's fault but the nature of how > pip resolves dependencies. See > >>> >> >> > >>> >> >> > https://stackoverflow.com/questions/49900875/pip-install-fails-to-install-dependencies > >>> >> >> > >>> >> >> With the following paragraph: > >>> >> >> > >>> >> >> When installing a package from testPyPI, the dependencies are > also installed from there. And it seems, that while there are many packages > available, pytables and progress are apparently missing. This caused the > installation to fail. > >>> >> >> > >>> >> >> So though we followed the instructions to the letter, we cannot > proceed because testpypi will always get the packages from testpypi > repository (which does not have the dependencies), not from pypi (where the > dependencies are actually located). So installing our test package from > testpypi will always cause it to break. > >>> >> >> > >>> >> >> We have two options: > >>> >> >> 1. A test deploy from pypi itself. > >>> >> >> > >>> >> >> because the commands listed rely on pyproject.toml, all you need > is to: > >>> >> >> - rename the package name in pyproject.toml (i.e. mnemosyne-test > or another name) > >>> >> >> - clear out everything from the dist/ folder > >>> >> >> - go do the same process again in the article (register a pypi > account, python3 -m build, etc.,) up until.. > >>> >> >> - when uploading the distributions, use `twine upload --verbose > --repository pypi dist/*` instead of `testpypi` > >>> >> >> - download the package using the pip install command > >>> >> >> - if the package is successfully installed, i guess it is > successful. so the test package can be deleted from pypi. > >>> >> >> - then restore back the proper package name in pyproject.toml. > purge all contest of dist/*, then do everything all over again. > >>> >> >> > >>> >> >> 2. figure out a way for pip to resolve the dependency tree from > pypi instead of testpypi. I don't know how to do this. > >>> >> > > >>> >> > -- > >>> >> > You received this message because you are subscribed to the > Google Groups "mnemosyne-proj-users" group. > >>> >> > To unsubscribe from this group and stop receiving emails from it, > send an email to [email protected]. > >>> >> > To view this discussion on the web visit > https://groups.google.com/d/msgid/mnemosyne-proj-users/a478ec86-5a17-4215-920e-d41208eaf735n%40googlegroups.com > . > >>> > > >>> > -- > >>> > You received this message because you are subscribed to the Google > Groups "mnemosyne-proj-users" group. > >>> > To unsubscribe from this group and stop receiving emails from it, > send an email to [email protected]. > >>> > To view this discussion on the web visit > https://groups.google.com/d/msgid/mnemosyne-proj-users/bb174636-3457-420b-b9e2-f6dd8b47e8bdn%40googlegroups.com > . > > > > -- > > You received this message because you are subscribed to the Google > Groups "mnemosyne-proj-users" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected]. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/mnemosyne-proj-users/d32aa821-9d3b-4353-87ee-b9b8a8343babn%40googlegroups.com > . > -- You received this message because you are subscribed to the Google Groups "mnemosyne-proj-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/mnemosyne-proj-users/ed471624-b9e3-488e-8464-9271bcbd39f1n%40googlegroups.com.
