forked from materialsproject/pymatgen
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of https://github.com/materialsproject/pymatgen
- Loading branch information
Showing
526 changed files
with
48,221 additions
and
43,715 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
changelog: | ||
exclude: | ||
authors: [dependabot, github-actions, pre-commit-ci] | ||
categories: | ||
- title: 🎉 New Features | ||
labels: [feature] | ||
- title: 🐛 Bug Fixes | ||
labels: [fix] | ||
- title: 🛠 Enhancements | ||
labels: [enhancement, DX, UX] | ||
- title: 📖 Documentation | ||
labels: [docs] | ||
- title: 🧹 House-Keeping | ||
labels: [housekeeping] | ||
- title: 🚀 Performance | ||
labels: [performance] | ||
- title: 💡 Refactoring | ||
labels: [refactor] | ||
- title: 🧪 Tests | ||
labels: [tests] | ||
- title: 💥 Breaking Changes | ||
labels: [breaking] | ||
- title: 🔒 Security Fixes | ||
labels: [security] | ||
- title: 🏥 Package Health | ||
labels: [pkg] | ||
- title: 📦 Dependencies | ||
labels: [dependencies, outdated] | ||
- title: 🏷️ Type Hints | ||
labels: [types] | ||
- title: 🤷♂️ Other Changes | ||
labels: ["*"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
# Sample workflow for building and deploying a Jekyll site to GitHub Pages | ||
name: Deploy Jekyll with GitHub Pages dependencies preinstalled | ||
|
||
on: | ||
# Runs on pushes targeting the default branch | ||
push: | ||
branches: ["master"] | ||
|
||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
|
||
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages | ||
permissions: | ||
contents: read | ||
pages: write | ||
id-token: write | ||
|
||
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. | ||
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. | ||
concurrency: | ||
group: "pages" | ||
cancel-in-progress: false | ||
|
||
jobs: | ||
# Build job | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Setup Pages | ||
uses: actions/configure-pages@v3 | ||
- name: Build with Jekyll | ||
uses: actions/jekyll-build-pages@v1 | ||
with: | ||
source: ./docs | ||
destination: ./_site | ||
- name: Upload artifact | ||
uses: actions/upload-pages-artifact@v2 | ||
|
||
# Deployment job | ||
deploy: | ||
environment: | ||
name: github-pages | ||
url: ${{ steps.deployment.outputs.page_url }} | ||
runs-on: ubuntu-latest | ||
needs: build | ||
steps: | ||
- name: Deploy to GitHub Pages | ||
id: deployment | ||
uses: actions/deploy-pages@v2 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,152 @@ | ||
# Runs the complete test suite incl. many external command line dependencies (like Openbabel) | ||
# as well as the pymatgen.ext package. Coverage is computed based on this workflow. | ||
name: Release | ||
|
||
on: | ||
release: | ||
types: [published] | ||
workflow_dispatch: | ||
inputs: | ||
task: | ||
type: choice | ||
options: [release, test-release] | ||
default: release | ||
description: Release to PyPI or TestPyPI. | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
test: | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest] | ||
python-version: ["3.11"] | ||
|
||
runs-on: ${{ matrix.os }} | ||
|
||
env: | ||
PMG_MAPI_KEY: ${{ secrets.PMG_MAPI_KEY }} | ||
MPLBACKEND: Agg # https://github.com/orgs/community/discussions/26434 | ||
PMG_TEST_FILES_DIR: ${{ github.workspace }}/tests/files | ||
GULP_LIB: ${{ github.workspace }}/cmd_line/gulp/Libraries | ||
PMG_VASP_PSP_DIR: ${{ github.workspace }}/tests/files | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
cache: pip | ||
cache-dependency-path: setup.py | ||
- name: Copy GULP to bin | ||
if: matrix.os == 'ubuntu-latest' | ||
run: | | ||
sudo cp cmd_line/gulp/Linux_64bit/* /usr/local/bin/ | ||
- name: Install Bader | ||
if: matrix.os == 'ubuntu-latest' | ||
run: | | ||
wget http://theory.cm.utexas.edu/henkelman/code/bader/download/bader_lnx_64.tar.gz | ||
tar xvzf bader_lnx_64.tar.gz | ||
sudo mv bader /usr/local/bin/ | ||
continue-on-error: true # This is not critical to succeed. | ||
- name: Install Enumlib | ||
if: matrix.os == 'ubuntu-latest' | ||
run: | | ||
git clone --recursive https://github.com/msg-byu/enumlib.git | ||
cd enumlib/symlib/src | ||
export F90=gfortran | ||
make | ||
cd ../../src | ||
make enum.x | ||
sudo mv enum.x /usr/local/bin/ | ||
cd .. | ||
sudo cp aux_src/makeStr.py /usr/local/bin/ | ||
continue-on-error: true # This is not critical to succeed. | ||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
python -m pip install numpy cython packaging | ||
python -m pip install -e '.[dev,optional]' | ||
- name: pytest | ||
if: github.event_name == 'release' || (github.event_name == 'workflow_dispatch' && inputs.task == 'release') | ||
run: | | ||
rm -rf .coverage* coverage* | ||
pytest --cov=pymatgen tests | ||
- name: Upload coverage reports to Codecov | ||
if: github.event_name == 'release' || (github.event_name == 'workflow_dispatch' && inputs.task == 'release') | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
token: ${{ secrets.CODECOV_TOKEN }} | ||
verbose: true | ||
|
||
build_sdist: | ||
needs: test | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Check out repo | ||
uses: actions/checkout@v4 | ||
|
||
- uses: actions/setup-python@v5 | ||
name: Install Python | ||
with: | ||
python-version: "3.11" | ||
|
||
- run: | | ||
python -m pip install build | ||
pip install -e . | ||
- name: Build sdist | ||
run: python -m build --sdist | ||
|
||
- uses: actions/upload-artifact@v3 | ||
with: | ||
path: dist/*.tar.gz | ||
|
||
build_wheels: | ||
needs: test | ||
strategy: | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-latest] | ||
python-version: ["39", "310", "311"] | ||
runs-on: ${{ matrix.os }} | ||
steps: | ||
- name: Check out repo | ||
uses: actions/checkout@v4 | ||
|
||
- name: Build wheels | ||
uses: pypa/cibuildwheel@v2.16.2 | ||
env: | ||
CIBW_BUILD: cp${{ matrix.python-version }}-* | ||
|
||
- name: Save artifact | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
path: ./wheelhouse/*.whl | ||
|
||
release: | ||
needs: [build_wheels, build_sdist] | ||
runs-on: ubuntu-latest | ||
permissions: | ||
# For pypi trusted publishing | ||
id-token: write | ||
steps: | ||
- name: Set up Python 3.11 | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: 3.11 | ||
|
||
- name: Get build artifacts | ||
uses: actions/download-artifact@v3 | ||
with: | ||
name: artifact | ||
path: dist | ||
|
||
- name: Publish to PyPi or TestPyPI | ||
uses: pypa/gh-action-pypi-publish@release/v1 | ||
with: | ||
skip-existing: true | ||
verbose: true | ||
repository-url: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.task == 'test-release' && 'https://test.pypi.org/legacy/' || '' }} |
Oops, something went wrong.