deepmodeling / dpdata

A Python package for manipulating atomistic data of software in computational science
https://docs.deepmodeling.com/projects/dpdata/
GNU Lesser General Public License v3.0
195 stars 129 forks source link

docs: fix documentation build #655

Closed njzjz closed 4 months ago

njzjz commented 4 months ago

xref:

coderabbitai[bot] commented 4 months ago

Walkthrough

The recent changes across the codebase focus on enhancing code readability, maintainability, and functionality. Updates include transitioning to f-strings for improved string formatting, updating dependencies in configuration files, refining GitHub Actions workflows, and introducing new functionalities like metadata files and test cases. Certain files have been restructured or added to support emerging features and testing requirements.

Changes

File(s) Change Summary
.git_archival.txt, .gitattributes Introduced metadata file and export configuration.
.github/workflows/test.yml, .github/workflows/test_import.yml Updated actions versions, modified pip commands, added uv installation.
.pre-commit-config.yaml Updated pre-commit hooks versions.
docs/environment.yml, docs/rtd_environment.yml Updated channel URLs for conda-forge.
docs/make_format.py, dpdata/__main__.py, dpdata/cli.py, dpdata/pymatgen/structure.py Improved string formatting for readability.
dpdata/abacus/md.py, dpdata/abacus/relax.py, dpdata/abacus/scf.py, dpdata/data_type.py, dpdata/deepmd/hdf5.py, dpdata/fhi_aims/output.py, dpdata/format.py, dpdata/periodic_table.py, dpdata/pwmat/atomconfig.py, dpdata/stat.py, dpdata/system.py, dpdata/vasp/poscar.py Updated string formatting to f-strings.
dpdata/plugins/pymatgen.py Added from_system method to PyMatgenStructureFormat class.
pyproject.toml Updated setuptools_scm[toml] version requirement.
tests/test_cli.py Added sys import, implemented TestClassScript.
tests/test_from_pymatgen.py, tests/test_to_pymatgen.py Introduced new test cases, updated pymatgen imports.

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)
Tips ### Chat There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai): - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit .` - `Generate unit testing code for this file.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: - `@coderabbitai generate unit testing code for this file.` - `@coderabbitai modularize this function.` - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai generate interesting stats about this repository and render them as a table.` - `@coderabbitai show all the console.log statements in this repository.` - `@coderabbitai read src/utils.ts and generate unit testing code.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. ### CodeRabbit Commands (invoked as PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger a review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai resolve` resolve all the CodeRabbit review comments. - `@coderabbitai help` to get help. Additionally, you can add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. ### CodeRabbit Configration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - Please see the [configuration documentation](https://docs.coderabbit.ai/guides/configure-coderabbit) for more information. - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json` ### Documentation and Community - Visit our [Documentation](https://coderabbit.ai/docs) for detailed information on how to use CodeRabbit. - Join our [Discord Community](https://discord.com/invite/GsXnASn26c) to get help, request features, and share feedback. - Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements.
codecov[bot] commented 4 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 83.63%. Comparing base (82de1f1) to head (74a5553).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## devel #655 +/- ## ======================================= Coverage 83.63% 83.63% ======================================= Files 81 81 Lines 7009 7009 ======================================= Hits 5862 5862 Misses 1147 1147 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

njzjz commented 4 months ago

@coderabbitai regenerate summary

coderabbitai[bot] commented 4 months ago

[!TIP] For best results, initiate chat on the files or code changes.

@njzjz, here is the regenerated summary based on the latest changes in the pull request:

Summary of Changes

  1. New Files and Configurations:

    • .git_archival.txt: Introduces metadata related to the Git repository.
    • .gitattributes: Configures the export of git_archival.txt using export-subst.
  2. GitHub Workflows:

    • .github/workflows/test.yml: Updated actions (checkout to v4 and setup-python to v5), added uv installation, and modified pip installation commands to include uv before pip install.
    • .github/workflows/test_import.yml: Updated actions (checkout to v4 and setup-python to v5), added uv installation, and modified pip installation commands to include uv before pip install.
  3. Pre-commit Hooks:

    • .pre-commit-config.yaml: Updated versions of pre-commit/pre-commit-hooks to v4.6.0 and astral-sh/ruff-pre-commit to v0.4.3.
  4. Documentation and Environment Files:

    • docs/make_format.py: Improved string formatting for better readability.
    • docs/rtd_environment.yml: Updated channel URLs from https://repo.mamba.pm/conda-forge to conda-forge.
  5. Codebase Enhancements:

    • String Formatting: Updated from % to f-strings or .format() for better readability and maintenance across multiple files (dpdata/abacus/md.py, dpdata/abacus/relax.py, dpdata/abacus/scf.py, dpdata/cli.py, dpdata/data_type.py, dpdata/deepmd/hdf5.py, dpdata/format.py, dpdata/periodic_table.py, dpdata/pwmat/atomconfig.py, dpdata/vasp/poscar.py).
    • Regex Patterns: Updated in dpdata/fhi_aims/output.py and dpdata/abacus/scf.py.
    • New Methods and Functions:
      • dpdata/plugins/pymatgen.py: Added from_system method to PyMatgenStructureFormat.
      • dpdata/pymatgen/structure.py: Introduced from_system_data function.
    • Error Messages: Improved readability using f-strings in dpdata/system.py and dpdata/stat.py.
  6. Testing Enhancements:

    • tests/test_cli.py: Added import sys and a new test case class TestClassScript to check version output.
    • tests/test_from_pymatgen.py: Introduced a test case class TestFormPytmatgen for creating and testing structures using pymatgen.
    • tests/test_to_pymatgen.py: Updated import statement and method call for Structure from pymatgen.
  7. Dependency Updates:

    • pyproject.toml: Updated setuptools_scm[toml] version requirement from 6.2 to 7.

Let me know if you need any further modifications or details.

Analysis chain --- --- ---
Scripts executed The following scripts were executed for the analysis: --- Script: ```shell #!/bin/bash # List all files changed in the PR git diff --name-only origin/main # Show the diff for each changed file git diff origin/main ``` Length of output: 441 --- --- Script: ```shell #!/bin/bash # Identify the base branch of the PR BASE_BRANCH=$(git merge-base HEAD $(git rev-parse --abbrev-ref HEAD)) # List all files changed in the PR git diff --name-only $BASE_BRANCH # Show the diff for each changed file git diff $BASE_BRANCH ``` Length of output: 244 --- --- Script: ```shell #!/bin/bash # List all branches to identify the correct base branch git branch -a # Identify the base branch of the PR BASE_BRANCH=$(git merge-base HEAD main) # List all files changed in the PR git diff --name-only $BASE_BRANCH # Show the diff for each changed file git diff $BASE_BRANCH ``` Length of output: 217 --- --- Script: ```shell #!/bin/bash # Identify the base branch of the PR using master BASE_BRANCH=$(git merge-base HEAD master) # List all files changed in the PR git diff --name-only $BASE_BRANCH # Show the diff for each changed file git diff $BASE_BRANCH ``` Length of output: 29324