From 1d219c90907524457d270c21f8dbef3ba1b0f2fa Mon Sep 17 00:00:00 2001 From: Colton Hicks Date: Tue, 6 Aug 2024 12:07:02 -0700 Subject: [PATCH] Added back <=3.11 for tomli dependency. Removed black and isort from format.sh script. Updated documentation to more modern format. --- .pre-commit-config.yaml | 1 + README.md | 2 +- chemcloud/config.py | 2 +- docs/CHANGELOG.md | 13 ++++--- docs/index.md | 2 +- mkdocs.yml | 83 ++++++++++++++++++++++++++++++----------- pyproject.toml | 6 +-- scripts/format.sh | 2 - 8 files changed, 76 insertions(+), 35 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 5a48dd1..23f668f 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -5,6 +5,7 @@ repos: rev: v4.6.0 hooks: - id: check-yaml + exclude: mkdocs.yml - id: check-added-large-files args: ["--maxkb=250"] - repo: https://github.com/Yelp/detect-secrets diff --git a/README.md b/README.md index 77d2212..e39faa9 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ ## The QC Suite of Programs -- [qcio](https://github.com/coltonbh/qcio) - Elegant and intuitive data structures for quantum chemistry, featuring seamless Jupyter Notebook visualizations. +- [qcio](https://github.com/coltonbh/qcio) - Elegant and intuitive data structures for quantum chemistry, featuring seamless Jupyter Notebook visualizations. [Documentation](https://qcio.coltonhicks.com) - [qcparse](https://github.com/coltonbh/qcparse) - A library for efficient parsing of quantum chemistry data into structured `qcio` objects. - [qcop](https://github.com/coltonbh/qcop) - A package for operating quantum chemistry programs using `qcio` standardized data structures. Compatible with `TeraChem`, `psi4`, `QChem`, `NWChem`, `ORCA`, `Molpro`, `geomeTRIC`, and many more, featuring seamless Jupyter Notebook visualizations. - [BigChem](https://github.com/mtzgroup/bigchem) - A distributed application for running quantum chemistry calculations at scale across clusters of computers or the cloud. Bring multi-node scaling to your favorite quantum chemistry program, featuring seamless Jupyter Notebook visualizations. diff --git a/chemcloud/config.py b/chemcloud/config.py index 3afc566..a746948 100644 --- a/chemcloud/config.py +++ b/chemcloud/config.py @@ -1,4 +1,4 @@ -from __future__ import annotations +from __future__ import annotations # Can remove once we drop Python 3.9 support from pathlib import Path from typing import Optional diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 5350c9f..b0e28fd 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -6,13 +6,16 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [unreleased] +### Changed + - Removed `black` and `isort` in favor for `ruff` - Updated: - - `python` (`>3.8` -> `>3.9`) - - `tomli` (`^1.0` -> `^2.0`) - - `httpx` (`^0.23.1` -> `^0.27`) - - `ruff` (`^0.0287` -> `^0.5`) - - `pytest-httpx` (`<0.23.0` -> `>=0.23.0`) + - `python` (`>3.8` -> `>3.9`) + - `tomli` (`^1.0` -> `^2.0`) + - `httpx` (`^0.23.1` -> `^0.27`) + - `ruff` (`^0.0287` -> `^0.5`) + - `pytest-httpx` (`<0.23.0` -> `>=0.23.0`) +- `format.sh` script dropped `black` and `isort`. ## [0.11.1] - 2024-07-19 diff --git a/docs/index.md b/docs/index.md index d9574da..415607a 100644 --- a/docs/index.md +++ b/docs/index.md @@ -15,7 +15,7 @@ ## The QC Suite of Programs -- [qcio](https://github.com/coltonbh/qcio) - Elegant and intuitive data structures for quantum chemistry, featuring seamless Jupyter Notebook visualizations. +- [qcio](https://github.com/coltonbh/qcio) - Elegant and intuitive data structures for quantum chemistry, featuring seamless Jupyter Notebook visualizations. [Documentation](https://qcio.coltonhicks.com) - [qcparse](https://github.com/coltonbh/qcparse) - A library for efficient parsing of quantum chemistry data into structured `qcio` objects. - [qcop](https://github.com/coltonbh/qcop) - A package for operating quantum chemistry programs using `qcio` standardized data structures. Compatible with `TeraChem`, `psi4`, `QChem`, `NWChem`, `ORCA`, `Molpro`, `geomeTRIC`, and many more, featuring seamless Jupyter Notebook visualizations. - [BigChem](https://github.com/mtzgroup/bigchem) - A distributed application for running quantum chemistry calculations at scale across clusters of computers or the cloud. Bring multi-node scaling to your favorite quantum chemistry program, featuring seamless Jupyter Notebook visualizations. diff --git a/mkdocs.yml b/mkdocs.yml index ca18aaf..f968de3 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -3,14 +3,36 @@ site_url: https://mtzgroup.github.io/chemcloud-client/ theme: name: material palette: - - scheme: default + - media: "(prefers-color-scheme: light)" + scheme: default primary: teal accent: amber + toggle: + icon: material/lightbulb + name: Switch to dark mode + - media: "(prefers-color-scheme: dark)" + scheme: slate + primary: teal + accent: amber + toggle: + icon: material/lightbulb-outline + name: Switch to light mode features: - - search.suggest - - search.highlight + - content.tabs.link + - content.code.annotate + - content.code.copy + - announce.dismiss + - navigation.tabs - navigation.instant - - navigation.expand + - navigation.instant.prefetch + - navigation.instant.preview + - navigation.instant.progress + - navigation.path + - navigation.sections + - navigation.top + - navigation.tracking + - search.suggest + - toc.follow icon: repo: fontawesome/brands/github-alt @@ -24,27 +46,46 @@ plugins: - mkdocstrings: handlers: python: - rendering: - show_root_heading: False - show_root_full_path: True - show_category_heading: True - show_signature_annotations: True - show_if_no_docstring: True - group_by_category: True - heading_level: 2 - selection: - new_path_syntax: True - inherited_members: True + options: + members_order: source + separate_signature: true + show_bases: false + show_root_heading: true + show_symbol_type_heading: true + show_symbol_type_toc: true + merge_init_into_class: true + show_signature_annotations: true + signature_crossrefs: true + inherited_members: false + # Pretty sure I want this false. + show_if_no_docstring: false + + docstring_options: + ignore_init_summary: true + filters: - "!^_" - - "^__init__$" + - "!^model" + - "^__init__" + + selection: + new_path_syntax: true + markdown_extensions: - - pymdownx.highlight - - pymdownx.superfences - - pymdownx.details - - admonition - toc: - permalink: 🔗 + permalink: true + title: Page contents + - admonition + - pymdownx.details + - pymdownx.superfences + - pymdownx.highlight: + pygments_lang_class: true + - pymdownx.extra + - pymdownx.emoji: + emoji_index: !!python/name:material.extensions.emoji.twemoji + emoji_generator: !!python/name:material.extensions.emoji.to_svg + - pymdownx.tabbed: + alternate_style: true - markdown_include.include: base_path: docs diff --git a/pyproject.toml b/pyproject.toml index 5322ff2..11a88bc 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -27,7 +27,7 @@ classifiers = [ [tool.poetry.dependencies] python = "^3.9" -tomli = "^2.0" +tomli = { version = "^2.0", python = "<3.11" } tomli-w = "^1.0.0" httpx = "^0.27" qcio = "^0.11.0" @@ -63,9 +63,7 @@ target-version = "py39" [tool.ruff.lint] isort = { known-first-party = ["tests"] } -select = [ - "I" -] +select = ["I"] [tool.coverage.run] branch = true diff --git a/scripts/format.sh b/scripts/format.sh index d3aca9c..6adb857 100755 --- a/scripts/format.sh +++ b/scripts/format.sh @@ -2,6 +2,4 @@ set -x -poetry run black . -poetry run isort . poetry run ruff check --fix .