Skip to content

Commit

Permalink
Refactor docs
Browse files Browse the repository at this point in the history
  • Loading branch information
utf committed Oct 4, 2022
1 parent ddb2b67 commit f00cd48
Show file tree
Hide file tree
Showing 10 changed files with 268 additions and 189 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ jobs:
ref: ${{ github.event.workflow_run.head_branch }}

- name: Write release info
run: awk 'BEGIN {p = 0} {a = 0 }; /^v\d*.\d*.\d*./ { p += 1; a = 1}; p + a == 1 { print } ' docs/about/changelog.md | sed -e '1,1d' | sed -e '/./,$!d' -e :a -e '/^\n*$/{$d;N;ba' -e '}' > release_info.txt
run: awk 'BEGIN {p = 0} {a = 0 }; /^v\d*.\d*.\d*./ { p += 1; a = 1}; p + a == 1 { print } ' CHANGELOG.md | sed -e '1,1d' | sed -e '/./,$!d' -e :a -e '/^\n*$/{$d;N;ba' -e '}' > release_info.txt

- name: Release
uses: actions/create-release@v1
Expand Down
7 changes: 7 additions & 0 deletions ADMIN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Releasing a new atomate2 version

Version releases on Pypi and GitHub are handled automatically through GitHub
actions. The steps to push a new release are:
1. Update `CHANGELOG.md` with a new version and release notes.
2. Create a tagged Git commit with the above changes: `git tag v0.0.1`
3. Push the commit and tags to GitHub using: `git push origin --tags`
137 changes: 137 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
Change log
==========

v0.0.8
------

New features:

- VASP Phonopy workflow ([@JaGeo](https://github.com/JaGeo), [#137](https://github.com/materialsproject/atomate2/pull/137))
- Molecular dynamics VASP job ([@mjwen](https://github.com/mjwen), [#134](https://github.com/materialsproject/atomate2/pull/134))

Enhancements:

- Update IO classes to use pymatgen base classes ([@rkingsbury](https://github.com/rkingsbury), [#141](https://github.com/materialsproject/atomate2/pull/141))
- Read and write VASP structures with higher precision ([@JaGeo](https://github.com/JaGeo), [#167](https://github.com/materialsproject/atomate2/pull/167))

Bug fixes:

- Fix code examples in docs ([@JaGeo](https://github.com/JaGeo), [#169](https://github.com/materialsproject/atomate2/pull/169))
- Fix f-orbital DOS properties ([@arosen93](https://github.com/arosen93), [#138](https://github.com/materialsproject/atomate2/pull/138))
- Fix `mock_run_vasp` testing to accept args ([@mjwen](https://github.com/mjwen), [#151](https://github.com/materialsproject/atomate2/pull/151))
- Regenerate calc_types enum ([@mjwen](https://github.com/mjwen), [#153](https://github.com/materialsproject/atomate2/pull/153))

v0.0.7
------

New features:

- Include band-related features (e.g. band center, bandwidth, skewness, kurtosis) in
VASP schema ([@arosen93](https://github.com/arosen93), [#92](https://github.com/materialsproject/atomate2/pull/92))
- Add `use_auto_ispin` and `update_user_potcar_functional` powerups

Enhancements:

- Add `is_hubbard` and `hubbards` to VASP task doc.
- Migrate build system to pyproject.toml.
- Migrate docs to jupyter-book.
- Docs improvements ([@janosh](https://github.com/janosh), [@mjwen](https://github.com/mjwen))

Bug fixes:

- Fix HSE tags.
- Fix running bader.
- Make potcar_spec argument usable ([@jmmshn](https://github.com/jmmshn), [#83](https://github.com/materialsproject/atomate2/pull/83))
- Replace monty which with shutil which ([@arosen93](https://github.com/arosen93), [#92](https://github.com/materialsproject/atomate2/pull/92))
- Fix `calculate_deformation_potentials()` ([@janosh](https://github.com/janosh), [#94](https://github.com/materialsproject/atomate2/pull/94))
- Fix gzipping of files with numerical suffixes ([@jmmshn](https://github.com/jmmshn), [#116](https://github.com/materialsproject/atomate2/pull/116))

v0.0.6
------

New features:

- cclib task document supporting virtually all popular molecular DFT codes out-of-the-box
([@arosen93](https://github.com/arosen93), [#64](https://github.com/materialsproject/atomate2/pull/64))

Enhancements:

- Add mag_density to VASP output doc ([@arosen93](https://github.com/arosen93), [#65](https://github.com/materialsproject/atomate2/pull/66))
- Double relax maker now supports two different Makers ([@arosen93](https://github.com/arosen93), [#32](https://github.com/materialsproject/atomate2/pull/32))

Bug fixes:

- Store band structure efermi in CalculationOutput ([@arosen93](https://github.com/arosen93), [#66](https://github.com/materialsproject/atomate2/pull/66))
- Support for VASP6 and latest pymatgen ([@arosen93](https://github.com/arosen93), [#75](https://github.com/materialsproject/atomate2/pull/75))
- Fixed atomate2 version string.
- Disabled orbital projections in the electron-phonon workflow.

v0.0.5
------

This version removed Python 3.7 support following numpy and pymatgen.

New features:

- Base schema for molecule task documents ([@arosen93](https://github.com/arosen93), [#54](https://github.com/materialsproject/atomate2/pull/54))

Bug fixes:

- Fix VASP relaxation using custodian "FULL_OPT" ([@arosen93](https://github.com/arosen93), [#42](https://github.com/materialsproject/atomate2/pull/42))
- Fix supercell generation and input sets in electron-phonon workflow.
- Fix `HSEBSSetGenerator` INCAR settings.
- Fix issue with magnetism in SOC structures.
- Fix bug with Fermi level and IBRION=1
- Better handling of URI generation.
- Tweak k-spacing formula to stop large band gaps giving negative values

v0.0.4
------

Lots of improvements and bug fixes this release.

New features:

- AMSET workflow.
- Electron phonon band gap renormalisation workflow.
- Specific uniform and line mode band structure makers.
- Optics maker.
- Transmuter maker.

Enhancements:

- Support for automatic handling of ISPIN.
- Add MP base sets ([@arosen93](https://github.com/arosen93), [#27](https://github.com/materialsproject/atomate2/pull/27))
- Docs updates ([@arosen93](https://github.com/arosen93), [#13](https://github.com/materialsproject/atomate2/pull/13) [#17](https://github.com/materialsproject/atomate2/pull/17))
- Options to strip band structure and DOS projects to reduce object sizes.
- Input sets now use generators to avoid serialization issues.
- Use smart efermi finding to remove errors with tetrahedron integration in VASP 6.
- Powerups can now work on `Maker` objects directly.

Bug fixes:

- Use PBEsol by default.
- Increase number of significant figures when writing POSCAR files.
- Remove unused INCAR settings ([@arosen93](https://github.com/arosen93))
- Add missing LASPH flags on vdW functionals ([@arosen93](https://github.com/arosen93), [#31](https://github.com/materialsproject/atomate2/pull/31))
- Use `NSW=0` in static calculations ([@arosen93](https://github.com/arosen93), [#10](https://github.com/materialsproject/atomate2/pull/10))
- `LREAL = False` in static jobs by default ([@arosen93](https://github.com/arosen93), [#23](https://github.com/materialsproject/atomate2/pull/23))
- Add missing functionals in output schema ([@arosen93](https://github.com/arosen93), [#12](https://github.com/materialsproject/atomate2/pull/12))
- Many output schema fixes.
- Better support for FireWorks.
- Support writing additional files in VASP jobs.

v0.0.3
------

Many updates to use the latest jobflow store features.

v0.0.2
------

Automated releases.

v0.0.1
------

Initial release.
48 changes: 48 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Contributor Code of Conduct

As contributors and maintainers of this project, and in the interest of
fostering an open and welcoming community, we pledge to respect all people who
contribute through reporting issues, posting feature requests, updating
documentation, submitting pull requests or patches, and other activities.

We are committed to making participation in this project a harassment-free
experience for everyone, regardless of level of experience, gender, gender
identity and expression, sexual orientation, disability, personal appearance,
body size, race, ethnicity, age, religion, or nationality.

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery
* Personal attacks
* Trolling or insulting/derogatory comments
* Public or private harassment
* Publishing other's private information, such as physical or electronic
addresses, without explicit permission
* Other unethical or unprofessional conduct

Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.

By adopting this Code of Conduct, project maintainers commit themselves to
fairly and consistently applying these principles to every aspect of managing
this project. Project maintainers who do not follow or enforce the Code of
Conduct may be permanently removed from the project team.

This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community.

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting a project maintainer at [INSERT EMAIL ADDRESS]. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. Maintainers are
obligated to maintain confidentiality with regard to the reporter of an
incident.


This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 1.3.0, available at https://www.contributor-covenant.org/version/1/3/0/code-of-conduct.html

[homepage]: https://www.contributor-covenant.org
68 changes: 68 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Contributing to atomate2

We love your input! We want to make contributing to as easy and
transparent as possible, whether it's:

- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing or implementing new features
- Becoming a maintainer

## Reporting bugs, getting help, and discussion

atomate2 is still in development, so at the moment we
do not have a dedicated help forum. For the time being, please
submit questions and bugs to the
[GitHub issues page](https://github.com/materialsproject/atomate2/issues).

If you are making a bug report, incorporate as many elements of the
following as possible to ensure a timely response and avoid the
need for followups:

- A quick summary and/or background.
- Steps to reproduce - be specific! **Provide sample code.**
- What you expected would happen, compared to what actually happens.
- The full stack trace of any errors you encounter.
- Notes (possibly including why you think this might be happening,
or steps you tried that didn't work).

We love thorough bug reports as this means the development team can
make quick and meaningful fixes. When we confirm your bug report,
we'll move it to the GitHub issues where its progress can be
further tracked.

## Contributing code modifications or additions through Github

We use github to host code, to track issues and feature requests,
as well as accept pull requests. We maintain a list of all
contributors [here](https://materialsproject.github.io/atomate2/contributors.html).

Pull requests are the best way to propose changes to the codebase.
Follow the [Github flow](https://www.atlassian.com/git/tutorials/comparing-workflows/forking-workflow)
for more information on this procedure.

The basic procedure for making a PR is:

- Fork the repo and create your branch from master.
- Commit your improvements to your branch and push to your Github fork (repo).
- When you're finished, go to your fork and make a Pull Request. It will
automatically update if you need to make further changes.

## How to Make a Great Pull Request

We have a few tips for writing good PRs that are accepted into the main repo:

- Use the Numpy Code style for all of your code. Find an example [here](hhttps://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_numpy.html#example-numpy).
- Your code should have (4) spaces instead of tabs.
- If needed, update the documentation.
- **Write tests** for new features! Good tests are 100%, absolutely necessary
for good code. We use the python `pytest` framework -- see some of the
other tests in this repo for examples, or review the [Hitchhiker's guide
to python](https://docs.python-guide.org/writing/tests) for some good
resources on writing good tests.
- Understand your contributions will fall under the same license as this repo.

When you submit your PR, our CI service will automatically run your tests.
We welcome good discussion on the best ways to write your code, and the comments
on your PR are an excellent area for discussion.
119 changes: 2 additions & 117 deletions docs/about/changelog.md
Original file line number Diff line number Diff line change
@@ -1,117 +1,2 @@
Change log
==========

v0.0.7
------

New features:

- Include band-related features (e.g. band center, bandwidth, skewness, kurtosis) in
VASP schema ([@arosen93](https://github.com/arosen93), [#92](https://github.com/materialsproject/atomate2/pull/92))
- Add `use_auto_ispin` and `update_user_potcar_functional` powerups

Enhancements:

- Add `is_hubbard` and `hubbards` to VASP task doc.
- Migrate build system to pyproject.toml.
- Migrate docs to jupyter-book.
- Docs improvements ([@janosh](https://github.com/janosh), [@mjwen](https://github.com/mjwen))

Bug fixes:

- Fix HSE tags.
- Fix running bader.
- Make potcar_spec argument usable ([@jmmshn](https://github.com/jmmshn), [#83](https://github.com/materialsproject/atomate2/pull/83))
- Replace monty which with shutil which ([@arosen93](https://github.com/arosen93), [#92](https://github.com/materialsproject/atomate2/pull/92))
- Fix `calculate_deformation_potentials()` ([@janosh](https://github.com/janosh), [#94](https://github.com/materialsproject/atomate2/pull/94))
- Fix gzipping of files with numerical suffixes ([@jmmshn](https://github.com/jmmshn), [#116](https://github.com/materialsproject/atomate2/pull/116))

v0.0.6
------

New features:

- cclib task document supporting virtually all popular molecular DFT codes out-of-the-box
([@arosen93](https://github.com/arosen93), [#64](https://github.com/materialsproject/atomate2/pull/64))

Enhancements:

- Add mag_density to VASP output doc ([@arosen93](https://github.com/arosen93), [#65](https://github.com/materialsproject/atomate2/pull/66))
- Double relax maker now supports two different Makers ([@arosen93](https://github.com/arosen93), [#32](https://github.com/materialsproject/atomate2/pull/32))

Bug fixes:

- Store band structure efermi in CalculationOutput ([@arosen93](https://github.com/arosen93), [#66](https://github.com/materialsproject/atomate2/pull/66))
- Support for VASP6 and latest pymatgen ([@arosen93](https://github.com/arosen93), [#75](https://github.com/materialsproject/atomate2/pull/75))
- Fixed atomate2 version string.
- Disabled orbital projections in the electron-phonon workflow.

v0.0.5
------

This version removed Python 3.7 support following numpy and pymatgen.

New features:

- Base schema for molecule task documents ([@arosen93](https://github.com/arosen93), [#54](https://github.com/materialsproject/atomate2/pull/54))

Bug fixes:

- Fix VASP relaxation using custodian "FULL_OPT" ([@arosen93](https://github.com/arosen93), [#42](https://github.com/materialsproject/atomate2/pull/42))
- Fix supercell generation and input sets in electron-phonon workflow.
- Fix `HSEBSSetGenerator` INCAR settings.
- Fix issue with magnetism in SOC structures.
- Fix bug with Fermi level and IBRION=1
- Better handling of URI generation.
- Tweak k-spacing formula to stop large band gaps giving negative values

v0.0.4
------

Lots of improvements and bug fixes this release.

New features:

- AMSET workflow.
- Electron phonon band gap renormalisation workflow.
- Specific uniform and line mode band structure makers.
- Optics maker.
- Transmuter maker.

Enhancements:

- Support for automatic handling of ISPIN.
- Add MP base sets ([@arosen93](https://github.com/arosen93), [#27](https://github.com/materialsproject/atomate2/pull/27))
- Docs updates ([@arosen93](https://github.com/arosen93), [#13](https://github.com/materialsproject/atomate2/pull/13) [#17](https://github.com/materialsproject/atomate2/pull/17))
- Options to strip band structure and DOS projects to reduce object sizes.
- Input sets now use generators to avoid serialization issues.
- Use smart efermi finding to remove errors with tetrahedron integration in VASP 6.
- Powerups can now work on `Maker` objects directly.

Bug fixes:

- Use PBEsol by default.
- Increase number of significant figures when writing POSCAR files.
- Remove unused INCAR settings ([@arosen93](https://github.com/arosen93))
- Add missing LASPH flags on vdW functionals ([@arosen93](https://github.com/arosen93), [#31](https://github.com/materialsproject/atomate2/pull/31))
- Use `NSW=0` in static calculations ([@arosen93](https://github.com/arosen93), [#10](https://github.com/materialsproject/atomate2/pull/10))
- `LREAL = False` in static jobs by default ([@arosen93](https://github.com/arosen93), [#23](https://github.com/materialsproject/atomate2/pull/23))
- Add missing functionals in output schema ([@arosen93](https://github.com/arosen93), [#12](https://github.com/materialsproject/atomate2/pull/12))
- Many output schema fixes.
- Better support for FireWorks.
- Support writing additional files in VASP jobs.

v0.0.3
------

Many updates to use the latest jobflow store features.

v0.0.2
------

Automated releases.

v0.0.1
------

Initial release.
```{include} ../../CHANGELOG.md
```
Loading

0 comments on commit f00cd48

Please sign in to comment.