Skip to content

Commit cc8301f

Browse files
Merge pull request #199 from JuDFTteam/release-0.12
🚀 Release `0.12`
2 parents f0370ca + e3f6995 commit cc8301f

File tree

220 files changed

+114657
-511
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

220 files changed

+114657
-511
lines changed

.github/workflows/cd.yml

+14-9
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@ jobs:
3131
- uses: actions/checkout@v3
3232

3333
- name: Set up Python 3.10
34-
uses: actions/setup-python@v4.0.0
34+
uses: actions/setup-python@v4.2.0
3535
with:
3636
python-version: '3.10'
3737

3838
- name: Cache python dependencies
3939
id: cache-pip
40-
uses: actions/[email protected].4
40+
uses: actions/[email protected].6
4141
with:
4242
path: ~/.cache/pip
4343
key: pip-docs-${{ hashFiles('**/pyproject.toml') }}
@@ -82,15 +82,15 @@ jobs:
8282

8383
- name: Cache python dependencies
8484
id: cache-pip
85-
uses: actions/[email protected].4
85+
uses: actions/[email protected].6
8686
with:
8787
path: ~/.cache/pip
8888
key: pip-pre-commit-${{ hashFiles('**/pyproject.toml') }}
8989
restore-keys: |
9090
pip-pre-commit-
9191
9292
- name: Set up Python 3.8
93-
uses: actions/setup-python@v4.0.0
93+
uses: actions/setup-python@v4.2.0
9494
with:
9595
python-version: 3.8
9696

@@ -110,8 +110,13 @@ jobs:
110110

111111
strategy:
112112
matrix:
113-
python-version: ['3.10','3.9', '3.8', '3.7']
113+
python-version: ['3.10','3.9', '3.8']
114114
experimental: [false]
115+
pytest-cmdline: ['']
116+
include:
117+
- python-version: '3.7'
118+
experimental: false
119+
pytest-cmdline: '-o addopts="--cov=masci_tools --cov=tests --cov-report xml"'
115120
# include:
116121
# - python-version: '3.11-dev'
117122
# experimental: true
@@ -125,15 +130,15 @@ jobs:
125130

126131
- name: Cache python dependencies
127132
id: cache-pip
128-
uses: actions/[email protected].4
133+
uses: actions/[email protected].6
129134
with:
130135
path: ~/.cache/pip
131136
key: pip-${{ matrix.python-version }}-tests-${{ hashFiles('**/pyproject.toml') }}
132137
restore-keys: |
133138
pip-${{ matrix.python-version }}-tests
134139
135140
- name: Set up Python ${{ matrix.python-version }}
136-
uses: actions/setup-python@v4.0.0
141+
uses: actions/setup-python@v4.2.0
137142
with:
138143
python-version: ${{ matrix.python-version }}
139144

@@ -144,7 +149,7 @@ jobs:
144149
pip install pyhull
145150
146151
- name: Run pytest
147-
run: pytest
152+
run: pytest ${{ matrix.pytest-cmdline }}
148153

149154
- name: Upload code coverage report
150155
run: |
@@ -165,7 +170,7 @@ jobs:
165170
steps:
166171
- uses: actions/checkout@v3
167172
- name: Set up Python 3.7
168-
uses: actions/setup-python@v4.0.0
173+
uses: actions/setup-python@v4.2.0
169174
with:
170175
python-version: 3.7
171176
- name: Install flit

.github/workflows/ci.yml

+13-9
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,13 @@ jobs:
2525
- uses: actions/checkout@v3
2626

2727
- name: Set up Python 3.10
28-
uses: actions/setup-python@v4.0.0
28+
uses: actions/setup-python@v4.2.0
2929
with:
3030
python-version: '3.10'
3131

3232
- name: Cache python dependencies
3333
id: cache-pip
34-
uses: actions/[email protected].4
34+
uses: actions/[email protected].6
3535
with:
3636
path: ~/.cache/pip
3737
key: pip-docs-${{ hashFiles('**/pyproject.toml') }}
@@ -76,15 +76,15 @@ jobs:
7676

7777
- name: Cache python dependencies
7878
id: cache-pip
79-
uses: actions/[email protected].4
79+
uses: actions/[email protected].6
8080
with:
8181
path: ~/.cache/pip
8282
key: pip-pre-commit-${{ hashFiles('**/pyproject.toml') }}
8383
restore-keys: |
8484
pip-pre-commit-
8585
8686
- name: Set up Python 3.8
87-
uses: actions/setup-python@v4.0.0
87+
uses: actions/setup-python@v4.2.0
8888
with:
8989
python-version: 3.8
9090

@@ -105,9 +105,13 @@ jobs:
105105

106106
strategy:
107107
matrix:
108-
python-version: ['3.10','3.9', '3.8', '3.7']
108+
python-version: ['3.10','3.9', '3.8']
109109
experimental: [false]
110-
# include:
110+
pytest-cmdline: [""]
111+
include:
112+
- python-version: '3.7'
113+
experimental: false
114+
pytest-cmdline: '-o addopts="--cov=masci_tools --cov=tests --cov-report xml"'
111115
# - python-version: '3.11-dev'
112116
# experimental: true
113117
fail-fast: false
@@ -120,15 +124,15 @@ jobs:
120124

121125
- name: Cache python dependencies
122126
id: cache-pip
123-
uses: actions/[email protected].4
127+
uses: actions/[email protected].6
124128
with:
125129
path: ~/.cache/pip
126130
key: pip-${{ matrix.python-version }}-tests-${{ hashFiles('**/pyproject.toml') }}
127131
restore-keys: |
128132
pip-${{ matrix.python-version }}-tests
129133
130134
- name: Set up Python ${{ matrix.python-version }}
131-
uses: actions/setup-python@v4.0.0
135+
uses: actions/setup-python@v4.2.0
132136
with:
133137
python-version: ${{ matrix.python-version }}
134138

@@ -147,7 +151,7 @@ jobs:
147151
pip install pyhull
148152
149153
- name: Run pytest
150-
run: pytest
154+
run: pytest ${{ matrix.pytest-cmdline }}
151155

152156
- name: Upload code coverage report
153157
run: |

.github/workflows/fleur-release.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
- uses: actions/checkout@v3
1515

1616
- name: Set up Python 3.8
17-
uses: actions/setup-python@v4.0.0
17+
uses: actions/setup-python@v4.2.0
1818
with:
1919
python-version: 3.8
2020

.pre-commit-config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ repos:
4242
]
4343

4444
- repo: https://github.com/asottile/pyupgrade
45-
rev: v2.34.0
45+
rev: v2.37.3
4646
hooks:
4747
- id: pyupgrade
4848
args: [

CHANGELOG.md

+23-1
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,32 @@
11
# Changelog
22

33
## latest
4-
[full changelog](https://github.com/JuDFTteam/masci-tools/compare/v0.11.3...develop)
4+
[full changelog](https://github.com/JuDFTteam/masci-tools/compare/v0.12.0...develop)
55

66
Nothing here yet
77

8+
## v.0.12.0
9+
[full changelog](https://github.com/JuDFTteam/masci-tools/compare/v0.11.3...v0.12.0)
10+
11+
### Added
12+
- Added XPath evaluation functions with runtime tpye checking of the results of the expressions [[#181]](https://github.com/JuDFTteam/masci-tools/pull/181)
13+
- Command `masci-tools fleur-schema pull <branch>` to update/add Fleur Schema files from the iffgit more easily [[#184]](https://github.com/JuDFTteam/masci-tools/pull/184)
14+
- New XML setters [[#183]](https://github.com/JuDFTteam/masci-tools/pull/183):
15+
- Setting XC functional explicitly + LibXC support (`set_xcfunctional`),
16+
- Creating a kpoint path using `ase` (`set_kpointpath`)
17+
- Creating a kpoint mesh with symmetry reduction using `spglib`. Should be equivalent to the `gamma@grid=nx,ny,nz` kpoint generator in `inpgen` (`set_kpointmesh`)
18+
- Added `FleurInputSchema.xsd` and `FleurOutputSchema.xsd` for the MaX6.1 release of fleur (file version `0.36`) [[#196]](https://github.com/JuDFTteam/masci-tools/pull/196)
19+
20+
### Bugfixes
21+
- Add clearer error message if `None` is passed to the `convert_to_xml` functions. This would happen for example using the `set_inpchanges` function with `{'minDistance': None}` [[#182]](https://github.com/JuDFTteam/masci-tools/pull/182)
22+
- Fixed `masci-tools fleur-schema add` with `--from-git` flag. Previously it would still check for the existence of the Schema file locally [[#184]](https://github.com/JuDFTteam/masci-tools/pull/184)
23+
- `get_fleur_modes`: `gw` mode renamed to `spex` and now stores the actual integer value of the attribute [[#185]](https://github.com/JuDFTteam/masci-tools/pull/185)
24+
- Bugfix in `clear_xml`, when multiple XML comments are present outside the root element [[#193]](https://github.com/JuDFTteam/masci-tools/pull/193)
25+
- Bugfix in `reverse_xinclude`. This would previously break when reexcluding trees already containing a `relaxation` tag and would end up with two `xi:include` tags for the `relax.xml` [[#194]](https://github.com/JuDFTteam/masci-tools/pull/194)
26+
- Bugfix for `FleurXMLModifier`. The `task_list` property would incorrectly enter a `kwargs` key if the modifying function in question has an explicit `**kwargs` argument
27+
- Bugfix in matplotlib plots with placement of multiple colorbars (e.g. weighted spin-polarized bandstructure) [[#198]](https://github.com/JuDFTteam/masci-tools/pull/198)
28+
29+
830
## v.0.11.3
931
[full changelog](https://github.com/JuDFTteam/masci-tools/compare/v0.11.2...v0.11.3)
1032

codecov.yml

+4
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,7 @@ comment:
2424
layout: "header, diff"
2525
behavior: default
2626
require_changes: no
27+
28+
ignore:
29+
- "masci_tools/util/kkr_rms_tracker.py"
30+
- "masci_tools/util/modifypotential.py"

docs/source/conf.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@
4444
'python': ('https://docs.python.org/3', None),
4545
'lxml': ('https://lxml.de/apidoc/',None),
4646
'h5py': ('https://docs.h5py.org/en/latest/', None),
47-
'pandas': ('http://pandas.pydata.org/pandas-docs/dev', None)}
47+
'pandas': ('http://pandas.pydata.org/pandas-docs/dev', None),
48+
'spglib': ('http://spglib.github.io/spglib', None)}
4849

4950
myst_enable_extensions = ['colon_fence',
5051
'fieldlist',

docs/source/devel_guide/index.md

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ This is the developers guide for masci-tools
55
```{toctree}
66
:maxdepth: 3
77
8+
tests
89
fleur_parser
910
plotting
1011
plot_data

docs/source/devel_guide/tests.md

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
(devguidetests)=
2+
3+
4+
# Test suite of masci-tools
5+
6+
## Installation
7+
8+
Install the package with the `testing` extra:
9+
10+
```bash
11+
pip install -e .[testing]
12+
```
13+
14+
## Running the tests
15+
16+
Run `pytest` in the `tests` path of masci-tools:
17+
```bash
18+
cd tests
19+
pytest .
20+
```
21+
22+
## Regenerating test files
23+
24+
With some code changes an update of the reference files for the tests is required. This can be done with the `--force-regen` option:
25+
26+
27+
```bash
28+
pytest --force-regen .
29+
```
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
RUNOPT
2+
qdos
3+
ALATBASIS= 4.823819747883
4+
BRAVAIS
5+
0.000000000000 0.707106781187 0.707106781187
6+
0.707106781187 0.000000000000 0.707106781187
7+
0.707106781187 0.707106781187 0.000000000000
8+
NAEZ= 1
9+
CARTESIAN= True
10+
11+
<RBASIS>
12+
0.000000000000 0.000000000000 0.000000000000
13+
14+
KSHAPE= 2
15+
<SHAPE>
16+
1
17+
18+
NSPIN= 1
19+
<ZATOM>
20+
29.000000000000
21+
22+
LINIPOL= False
23+
HFIELD= 0.000000000000
24+
LMAX= 2
25+
BZDIVIDE= 1 1 1
26+
27+
EMIN= -0.092276291413
28+
EMAX= 1.010203373856
29+
TEMPR= 50.000000000000
30+
NPT1= 0
31+
NPT2= 96
32+
NPT3= 0
33+
NPOL= 0
34+
RCLUSTZ= 2.236067977500
35+
INS= 1
36+
RMAX= 10.000000000000
37+
GMAX= 100.000000000000
38+
39+
NSTEPS= 50
40+
IMIX= 5
41+
STRMIX= 0.030000000000
42+
BRYMIX= 0.050000000000
43+
QBOUND= 1.000000e-08
44+
45+
IEMXD= 96
46+
KPOIBZ= 1
47+
<USE_SEMI_CIRCLE_CONTOUR>= False

0 commit comments

Comments
 (0)