Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update mkdocstrings and mkdocstrings-python, pin griffe, restructure poetry dependencies #4049

Merged
merged 2 commits into from
Jul 5, 2023

Conversation

glennmatthews
Copy link
Contributor

@glennmatthews glennmatthews commented Jul 5, 2023

Closes: #N/A

Problems:

  • ReadTheDocs build was broken the last couple of days because we don't pin our griffe dependency and a new version of griffe was released that breaks compatibility with the older versions of mkdocstrings and mkdocstrings-python we were pinned to.
  • [tool.poetry.dev-dependencies] in pyproject.toml has been deprecated by Poetry since version 1.2.0 in favor of [tool.poetry.group.dev.dependencies], and newer versions of Poetry don't add things to the deprecated section any more, requiring manual cleanup of pyproject.toml.

Solutions

  • Put in the time to restructure pyproject.toml to match Poetry's newer expectations. I've split our "dev" dependencies into the sub-groups of "dev", "docs", "linting", and "testing", all of which are still installed by default by Poetry but could in future be installed separately or together as best suits needs.
  • Pin griffe docs dependency in both pyproject.toml and docs/requirements.txt to the latest version that still supports Python 3.7. (The new version just released, 0.31, drops support for 3.7, so we can't use it just yet)
  • Update mkdocstrings and mkdocstrings-python docs dependencies in both pyproject.toml and docs/requirements.txt to latest versions for compatibility with this version of griffe.

TODO

  • Explanation of Change(s)
  • Added change log fragment(s) (for more information see the documentation)
  • n/a Attached Screenshots, Payload Example
  • n/a Unit, Integration Tests
  • n/a Documentation Updates (when adding/changing features)
  • n/a Example Plugin Updates (when adding/changing features)
  • Outline Remaining Work, Constraints from Design

@glennmatthews glennmatthews added type: documentation Improvements or additions to documentation dependencies Pull requests that update a dependency file labels Jul 5, 2023
@glennmatthews glennmatthews self-assigned this Jul 5, 2023
# Tool for debugging Django
django-debug-toolbar = "~3.7.0"
# DiscoverSlowestTestsRunner for running CI performance tests and benchmarking.
django-slowtests = "^1.1.1"
# Nautobot example plugin used for testing
example-plugin = {path = "examples/example_plugin", develop = true}
# Nautobot test plugin used for testing core view overrides
example-plugin-with-view-override = { path = "examples/example_plugin_with_view_override", develop = true }
# Random data generation
factory-boy = "~3.2.1"
Copy link
Contributor

@HanlinMiao HanlinMiao Jul 5, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should factory-boy be under testing?
I guess it is used for more than just testing.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Certainly could be - I recognize that these categories are fairly arbitrary. :-)

Copy link
Contributor

@HanlinMiao HanlinMiao left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@glennmatthews glennmatthews merged commit 2b53c9c into develop Jul 5, 2023
17 checks passed
@glennmatthews glennmatthews deleted the u/glennmatthews-fix-readthedocs branch July 5, 2023 15:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file type: documentation Improvements or additions to documentation
Projects
No open projects
Archived in project
Development

Successfully merging this pull request may close these issues.

None yet

2 participants