Giter Site home page Giter Site logo

Comments (15)

gitonthescene avatar gitonthescene commented on June 5, 2024 1

Not at all. WiIl post back shortly...

from install-poetry.

sondrelg avatar sondrelg commented on June 5, 2024 1

See python-poetry/poetry#7674 πŸ‘

from install-poetry.

gitonthescene avatar gitonthescene commented on June 5, 2024 1

Ah! I’ll remove it from my matrix. Thanks.

from install-poetry.

sondrelg avatar sondrelg commented on June 5, 2024

Hi @gitonthescene! Thanks for reporting, and your setup looks good to me πŸ‘

I see there was a release recently, but it's not clear to me if I need to take any action. (No pun intended) Should I be pointing to 1.3.4 explicitly?

No, v1 and v1.3.4 should be the same πŸ‘

Poetry itself was also released recently and it looks like the action is trying to pull this version. Perhaps some incompatibility was introduced?

Yeah this could be. Would you mind trying to run the action with version: 1.5.1, or some older version, to see if it fails then?

from install-poetry.

gitonthescene avatar gitonthescene commented on June 5, 2024

That seemed to work. It took me a minute to realize that rerunning the broken action wasn't pulling in the changes to the workflow, but...

I'm curious how you debug this. Do you just run that bash script in a Docker container or something?

from install-poetry.

sondrelg avatar sondrelg commented on June 5, 2024

It's possible to use act to test the workflow locally, but I've mostly just tested in CI in the past.

For this issue, I wonder if it would be worth trying to:

  • Set version as 1.6.1 again, but
  • Add a run: pip install requests -U above the poetry install

..to see if the requests requirement is what breaks things

from install-poetry.

gitonthescene avatar gitonthescene commented on June 5, 2024

That seemed to work just fine. I didn't change the version of poetry in this run, but assume that wasn't the point because this gets run before installing poetry.

from install-poetry.

sondrelg avatar sondrelg commented on June 5, 2024

Ah sorry, I think we'd need to check with poetry v1.6.1 to check whether it fixes your original problem. I suspect Github runners might not ship with the correct version of requests.

from install-poetry.

gitonthescene avatar gitonthescene commented on June 5, 2024

Oh, okay. That seems not to have worked with the v1.6.1.

from install-poetry.

sondrelg avatar sondrelg commented on June 5, 2024

How odd, thanks for checking! I guess running the action locally with act, or running the shell script steps manually might be the best way to debug this further - and checking the generated poetry installer logs. Feel free to take a stab at that if you have time! If not I might be able to later tonight πŸ™‚

from install-poetry.

gitonthescene avatar gitonthescene commented on June 5, 2024

I tried looking at this but it's hard to know how much of the environment is expected inside of the github action. I made a Dockerfile which looks like this:

FROM ubuntu:latest
RUN apt-get -y update && \
    apt-get -y install curl && \
    apt-get -y install python3 && \
    apt-get -y install pip

ENV GITHUB_PATH=/usr/src/myapp/github
ENV GITHUB_ENV=/usr/src/myapp/githubenv

And ran it inside a clone of this repository like this:

docker run -it --rm -v "$PWD":/usr/src/myapp snoktest /bin/sh

If that's reasonable I think the issue is missing defaults in the main.sh file. The following diff seems to work with this setup:

-poetry config virtualenvs.create "$VIRTUALENVS_CREATE"
-poetry config virtualenvs.in-project "$VIRTUALENVS_IN_PROJECT"
-poetry config virtualenvs.path "$VIRTUALENVS_PATH"
+poetry config virtualenvs.create "${VIRTUALENVS_CREATE:-true}"
+poetry config virtualenvs.in-project "${VIRTUALENVS_IN_PROJECT:-true}"
+poetry config virtualenvs.path "${VIRTUALENVS_PATH:-$INSTALL_PATH/venv}"
 
config="$(poetry config --list)"
 
if echo "$config" | grep -q -c "installer.parallel"; then
-   poetry config installer.parallel "$INSTALLER_PARALLEL"
+   poetry config installer.parallel "${INSTALLER_PARALLEL:-false}"

Let me know if this helps.

Regards

from install-poetry.

sondrelg avatar sondrelg commented on June 5, 2024

Hmm πŸ€” I think these values will be set in practice, as the action has defaults, and the shell script is always invoked like this: https://github.com/snok/install-poetry/blob/main/action.yml#L31:L43

from install-poetry.

gitonthescene avatar gitonthescene commented on June 5, 2024

Perhaps this environment doesn’t exactly replicate how it should work, but it worked in this environment. Hmm.. Maybe I should try a different os than Ubuntu.

from install-poetry.

gitonthescene avatar gitonthescene commented on June 5, 2024

Maybe change the script to be invoked with bash -x so we can see what's being run inside the action?

Or maybe add a signal trap and print the log before failing??

from install-poetry.

sondrelg avatar sondrelg commented on June 5, 2024

Looks like Poetry v1.6.0 and above no longer supports Python 3.7:

ERROR: Ignored the following versions that require a different python version: 1.6.0 Requires-Python >=3.8,<4.0; 1.6.1 Requires-Python >=3.8,<4.0
ERROR: Could not find a version that satisfies the requirement poetry==1.6.0 (from versions: 0.1.0, 0.2.0, 0.3.0, 0.4.0, 0.4.0.post1, 0.4.1, 0.4.2, 0.5.0b1, 0.5.0b2, 0.5.0, 0.6.0, 0.6.1, 0.6.2, 0.6.3b1, 0.6.3b2, 0.6.3b3, 0.6.3b4, 0.6.3b5, 0.6.3b6, 0.6.3b7, 0.6.3, 0.6.4b1, 0.6.4, 0.6.5, 0.7.0b1, 0.7.0b2, 0.7.0b3, 0.7.0b4, 0.7.0, 0.7.1, 0.8.0a0, 0.8.0a1, 0.8.0a2, 0.8.0a3, 0.8.0a4, 0.8.0, 0.8.1a0, 0.8.1, 0.8.2, 0.8.3, 0.8.4, 0.8.5a0, 0.8.5, 0.8.6, 0.9.0a0, 0.9.0a1, 0.9.0a2, 0.9.0a3, 0.9.0, 0.9.1, 0.10.0a0, 0.10.0a1, 0.10.0a2, 0.10.0a3, 0.10.0, 0.10.1, 0.10.2, 0.10.3, 0.11.0a0, 0.11.0a1, 0.11.0a2, 0.11.0a3, 0.11.0a4, 0.11.0, 0.11.1, 0.11.2, 0.11.3, 0.11.4, 0.11.5, 0.12.0a0, 0.12.0a1, 0.12.0a2, 0.12.0a3, 0.12.0a4, 0.12.0a5, 0.12.0, 0.12.1, 0.12.2, 0.12.3, 0.12.4, 0.12.5, 0.12.6, 0.12.7, 0.12.8, 0.12.9, 0.12.10, 0.12.11, 0.12.12, 0.12.13, 0.12.14, 0.12.15, 0.12.16, 0.12.17, 1.0.0a0, 1.0.0a1, 1.0.0a2, 1.0.0a3, 1.0.0a4, 1.0.0a5, 1.0.0b1, 1.0.0b2, 1.0.0b3, 1.0.0b4, 1.0.0b5, 1.0.0b6, 1.0.0b7, 1.0.0b8, 1.0.0b9, 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.0.10, 1.1.0a1, 1.1.0a2, 1.1.0a3, 1.1.0b1, 1.1.0b2, 1.1.0b3, 1.1.0b4, 1.1.0rc1, 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.1.6, 1.1.7, 1.1.8, 1.1.9, 1.1.10, 1.1.11, 1.1.12, 1.1.13, 1.1.14, 1.1.15, 1.2.0a1, 1.2.0a2, 1.2.0b1, 1.2.0b2, 1.2.0b3, 1.2.0rc1, 1.2.0rc2, 1.2.0, 1.2.1, 1.2.2, 1.3.0, 1.3.1, 1.3.2, 1.4.0, 1.4.1, 1.4.2, 1.5.0, 1.5.1)
ERROR: No matching distribution found for poetry==1.6.0

Traceback:

  File "/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp.qaP8pFtf", line 9[23](https://github.com/snok/install-poetry/actions/runs/6106514510/job/16571742739#step:5:24), in main
    return installer.run()
  File "/var/folders/[24](https://github.com/snok/install-poetry/actions/runs/6106514510/job/16571742739#step:5:25)/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp.qaP8pFtf", line 560, in run
    self.install(version)
  File "/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp.qaP8pFtf", line 582, in install
    self.install_poetry(version, env)
  File "/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp.qaP8pFtf", line 685, in install_poetry
    env.pip("install", specification)
  File "/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp.qaP8pFtf", line 375, in pip
    return self.python("-m", "pip", *args, **kwargs)
  File "/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp.qaP8pFtf", line 372, in python
    return self.run(self._python, *args, **kwargs)
  File "/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/tmp.qaP8pFtf", line [36](https://github.com/snok/install-poetry/actions/runs/6106514510/job/16571742739#step:5:37)7, in run
    log=completed_process.stdout.decode(),

Notice Requires-Python >=3.8,<4.0

from install-poetry.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.