swagger-api / swagger-api/swagger-codegen
swagger-codegen python depends on PyYAML>5.1,<6.0 but PyYAML 5.4 is broken
Nobody has claimed this yet.
- Dominant language
- Mustache
- Stars
- 17.8k
- Forks
- 6k
- PR merge metrics
- No merged PRs in 30d
Description
Description
Performing a clean install using poetry , using python 3.10 (issue also occurs on Python 3.11)
poetry add swagger-codegen
causes the a transitive dependency attempted install of PyYAML 5.4.1
PyYAML 5.4 does not install now - https://github.com/yaml/pyyaml/issues/724 due to issues.
The activity from hundreds of other repositories is to update to PyYAML 6.
Swagger-codegen version
swagger-codegen 0.3.1
Suggest a fix/enhancement
Upgrade pyyaml dependency to 6.1
Workaround: install pyyaml 5.1 first,
poetry add pyyaml==5.1
poetry add swagger-codegen
attrs 19.3.0 Classes Without Boilerplate
boltons 20.2.1 When they're not builtins, they're boltons.
certifi 2024.2.2 Python package for providing Mozilla's CA Bundle.
charset-normalizer 3.3.2 The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet.
click 7.1.2 Composable command line interface toolkit
colorama 0.4.6 Cross-platform colored terminal text.
commonmark 0.9.1 Python parser for the CommonMark Markdown spec
exceptiongroup 1.2.0 Backport of PEP 654 (exception groups)
hypothesis 5.49.0 A library for property-based testing
hypothesis-jsonschema 0.20.1 Generate test data from JSON schemata with Hypothesis
idna 3.6 Internationalized Domain Names in Applications (IDNA)
inflection 0.5.1 A port of Ruby on Rails inflector to Python
iniconfig 2.0.0 brain-dead simple config-ini parsing
jinja2 2.11.3 A very fast and expressive template engine.
jsonschema 3.2.0 An implementation of JSON Schema validation for Python
markupsafe 2.1.5 Safely add untrusted strings to HTML/XML markup.
multidict 5.2.0 multidict implementation
packaging 24.0 Core utilities for Python packages
pluggy 1.4.0 plugin and hook calling mechanisms for python
pydantic 1.9.2 Data validation and settings management using python type hints
pygments 2.17.2 Pygments is a syntax highlighting package written in Python.
pyrsistent 0.20.0 Persistent/Functional/Immutable data structures
pytest 8.1.1 pytest: simple powerful testing with Python
pytest-subtests 0.2.1 unittest subTest() support and subtests fixture
pyyaml 5.1 YAML parser and emitter for Python
requests 2.31.0 Python HTTP for Humans.
rich 9.13.0 Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal
schemathesis 1.1.0 Hypothesis strategies for Open API / Swagger schemas
setuptools 69.2.0 Easily download, build, install, upgrade, and uninstall Python packages
six 1.16.0 Python 2 and 3 compatibility utilities
sortedcontainers 2.4.0 Sorted Containers -- Sorted List, Sorted Dict, Sorted Set
swagger-codegen 0.1.31 Generate API clients by parsing Swagger definitions
toml 0.10.2 Python Library for Tom's Obvious, Minimal Language
tomli 2.0.1 A lil' TOML parser
typer 0.3.2 Typer, build great CLIs. Easy to code. Based on Python type hints.
typing-extensions 3.10.0.2 Backported and Experimental Type Hints for Python 3.5+
urllib3 2.2.1 HTTP library with thread-safe connection pooling, file post, and more.
werkzeug 3.0.1 The comprehensive WSGI web application library.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Inspect the package dependency metadata for the PyYAML constraint and reproduce the clean Poetry install on Python 3.10 or 3.11. Update the constraint to PyYAML 6.1, then verify that swagger-codegen installs without the PyYAML 5.4 build failure.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 55/100