pyEQL 1.1.6__tar.gz → 1.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyeql-1.1.6 → pyeql-1.3.0}/.github/workflows/post-process.yml +3 -7
- {pyeql-1.1.6 → pyeql-1.3.0}/.github/workflows/release.yml +1 -1
- {pyeql-1.1.6 → pyeql-1.3.0}/.github/workflows/testing.yaml +10 -11
- {pyeql-1.1.6 → pyeql-1.3.0}/.github/workflows/upgrade_dependencies.yml +4 -4
- {pyeql-1.1.6 → pyeql-1.3.0}/.pre-commit-config.yaml +17 -13
- {pyeql-1.1.6 → pyeql-1.3.0}/.readthedocs.yml +1 -1
- pyeql-1.3.0/.zenodo.json +25 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/AUTHORS.md +5 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/CHANGELOG.md +85 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/CITATION.cff +6 -6
- {pyeql-1.1.6/src/pyEQL.egg-info → pyeql-1.3.0}/PKG-INFO +12 -12
- {pyeql-1.1.6 → pyeql-1.3.0}/README.md +2 -2
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/authors.md +5 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/changelog.md +85 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/class_solution.md +1 -1
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/conf.py +37 -37
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/contributing.md +11 -11
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/creating.md +0 -2
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/database.md +1 -1
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/examples/.ipynb_checkpoints/pyEQL_demo_1-checkpoint.ipynb +10 -12
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/examples/.ipynb_checkpoints/pyeql_demo-checkpoint.ipynb +13 -12
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/examples/.ipynb_checkpoints/pyeql_tutorial_database-checkpoint.ipynb +12 -20
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/examples/.ipynb_checkpoints/pyeql_tutorial_osmotic_pressure-checkpoint.ipynb +39 -24
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/examples/.ipynb_checkpoints/speedup-checkpoint.ipynb +4 -4
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/examples/pyeql_demo.ipynb +14 -13
- pyeql-1.3.0/docs/examples/pyeql_tutorial_activity.ipynb +270 -0
- pyeql-1.3.0/docs/examples/pyeql_tutorial_carbonate.ipynb +390 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/examples/pyeql_tutorial_database.ipynb +13 -21
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/examples/pyeql_tutorial_osmotic_pressure.ipynb +41 -26
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/index.md +1 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/installation.md +4 -4
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/requirements.txt +2 -1
- pyeql-1.3.0/docs/tutorials.md +52 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/pyproject.toml +9 -9
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/macos-latest_py3.10.txt +70 -62
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/macos-latest_py3.10_extras.txt +96 -88
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/macos-latest_py3.11.txt +70 -62
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/macos-latest_py3.11_extras.txt +96 -87
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/macos-latest_py3.12.txt +70 -62
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/macos-latest_py3.12_extras.txt +96 -87
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/macos-latest_py3.9.txt +23 -23
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/macos-latest_py3.9_extras.txt +32 -32
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/ubuntu-latest_py3.10.txt +70 -62
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/ubuntu-latest_py3.10_extras.txt +96 -88
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/ubuntu-latest_py3.11.txt +70 -62
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/ubuntu-latest_py3.11_extras.txt +96 -87
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/ubuntu-latest_py3.12.txt +70 -62
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/ubuntu-latest_py3.12_extras.txt +96 -87
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/ubuntu-latest_py3.9.txt +23 -23
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/ubuntu-latest_py3.9_extras.txt +32 -32
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/windows-latest_py3.10.txt +70 -62
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/windows-latest_py3.10_extras.txt +96 -88
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/windows-latest_py3.11.txt +70 -62
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/windows-latest_py3.11_extras.txt +96 -87
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/windows-latest_py3.12.txt +70 -62
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/windows-latest_py3.12_extras.txt +96 -87
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/windows-latest_py3.9.txt +23 -23
- {pyeql-1.1.6 → pyeql-1.3.0}/requirements/windows-latest_py3.9_extras.txt +32 -32
- {pyeql-1.1.6 → pyeql-1.3.0}/setup.py +1 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/__init__.py +1 -1
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/activity_correction.py +9 -9
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/database/pyeql_db.json +20799 -21094
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/engines.py +61 -66
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/equilibrium.py +2 -2
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/functions.py +12 -12
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/presets/Ringers lactate.yaml +3 -3
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/presets/normal saline.yaml +3 -3
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/presets/rainwater.yaml +3 -3
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/presets/seawater.yaml +3 -3
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/presets/urine.yaml +3 -3
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/presets/wastewater.yaml +3 -3
- pyeql-1.3.0/src/pyEQL/py.typed +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/salt_ion_match.py +2 -2
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/solution.py +199 -293
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/utils.py +22 -9
- {pyeql-1.1.6 → pyeql-1.3.0/src/pyEQL.egg-info}/PKG-INFO +12 -12
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL.egg-info/SOURCES.txt +3 -3
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL.egg-info/requires.txt +5 -5
- pyeql-1.3.0/tests/conftest.py +156 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_activity.py +133 -1
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_bulk_properties.py +0 -1
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_debye_length.py +1 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_density.py +1 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_dielectric.py +3 -2
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_effective_pitzer.py +3 -2
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_equilibrium.py +1 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_functions.py +19 -21
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_mixed_electrolyte_activity.py +14 -6
- pyeql-1.3.0/tests/test_osmotic_coeff.py +180 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_phreeqc.py +10 -10
- pyeql-1.3.0/tests/test_salt_matching.py +424 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_solute.py +1 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_solution.py +216 -30
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_utils.py +7 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_volume_concentration.py +7 -7
- {pyeql-1.1.6 → pyeql-1.3.0}/tox.ini +3 -2
- pyeql-1.1.6/.zenodo.json +0 -25
- pyeql-1.1.6/docs/examples/pyEQL_demo_1.ipynb +0 -525
- pyeql-1.1.6/docs/examples/speedup.ipynb +0 -404
- pyeql-1.1.6/docs/readme.md +0 -84
- pyeql-1.1.6/docs/tutorials.md +0 -32
- pyeql-1.1.6/tests/conftest.py +0 -10
- pyeql-1.1.6/tests/test_osmotic_coeff.py +0 -96
- pyeql-1.1.6/tests/test_salt_matching.py +0 -133
- {pyeql-1.1.6 → pyeql-1.3.0}/.coveragerc +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/.gitattributes +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/.github/dependabot.yml +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/.github/pull_request_template.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/.github/release.yml +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/.gitignore +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/COPYING +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/LICENSE.txt +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/MANIFEST.in +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/Makefile +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/_static/.gitignore +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/amounts.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/arithmetic.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/chemistry.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/engines.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/internal.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/license.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/mixing.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/quickstart.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/serialization.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/docs/units.md +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/pyeql-logo.png +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/pyeql-logo.svg +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/setup.cfg +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/database/geothermal.dat +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/database/llnl.dat +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/database/phreeqc_license.txt +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL/solute.py +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL.egg-info/dependency_links.txt +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/src/pyEQL.egg-info/top_level.txt +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_logging.py +0 -0
- {pyeql-1.1.6 → pyeql-1.3.0}/tests/test_solute_properties.py +0 -0
|
@@ -34,19 +34,15 @@ jobs:
|
|
|
34
34
|
max-parallel: 6
|
|
35
35
|
matrix:
|
|
36
36
|
version:
|
|
37
|
-
- { python: "3.9", resolution: highest, extras: testing }
|
|
38
37
|
- { python: "3.10", resolution: lowest-direct, extras: testing }
|
|
39
38
|
- { python: "3.11", resolution: highest, extras: testing }
|
|
40
39
|
- { python: "3.12", resolution: lowest-direct, extras: testing }
|
|
40
|
+
- { python: "3.13", resolution: highest, extras: testing }
|
|
41
41
|
os:
|
|
42
42
|
- ubuntu-latest
|
|
43
43
|
- macos-latest
|
|
44
44
|
- windows-latest
|
|
45
45
|
- macos-14
|
|
46
|
-
exclude:
|
|
47
|
-
- {version: {
|
|
48
|
-
python: "3.9" },
|
|
49
|
-
os: macos-14 }
|
|
50
46
|
runs-on: ${{ matrix.os }}
|
|
51
47
|
steps:
|
|
52
48
|
- uses: actions/checkout@v4
|
|
@@ -61,8 +57,8 @@ jobs:
|
|
|
61
57
|
uv pip install '.[${{ matrix.version.extras }}]' --system --resolution=${{ matrix.version.resolution }}
|
|
62
58
|
- name: Run tests
|
|
63
59
|
run: |
|
|
64
|
-
pytest -n auto --cov=src/pyEQL --cov-report=xml
|
|
65
|
-
- uses: codecov/codecov-action@
|
|
60
|
+
pytest -n auto --cov=src/pyEQL --cov-report=xml --dist=loadscope
|
|
61
|
+
- uses: codecov/codecov-action@v5
|
|
66
62
|
with:
|
|
67
63
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
68
64
|
file: ./coverage.xml
|
|
@@ -4,6 +4,7 @@ on:
|
|
|
4
4
|
pull_request:
|
|
5
5
|
branches:
|
|
6
6
|
- main
|
|
7
|
+
- pourbaix
|
|
7
8
|
paths-ignore:
|
|
8
9
|
- CHANGELOG.md
|
|
9
10
|
|
|
@@ -23,7 +24,7 @@ jobs:
|
|
|
23
24
|
- name: Set up Python
|
|
24
25
|
uses: actions/setup-python@v5
|
|
25
26
|
with:
|
|
26
|
-
python-version: 3.11
|
|
27
|
+
python-version: "3.11"
|
|
27
28
|
cache: pip
|
|
28
29
|
- name: Run pre-commit
|
|
29
30
|
run: |
|
|
@@ -36,21 +37,17 @@ jobs:
|
|
|
36
37
|
max-parallel: 6
|
|
37
38
|
matrix:
|
|
38
39
|
# for most PRs, test the min and max supported python on every platform, test all python on ubuntu
|
|
39
|
-
python-version: ["3.
|
|
40
|
+
python-version: ["3.10", "3.12","3.13"]
|
|
40
41
|
os:
|
|
41
42
|
- ubuntu-latest
|
|
42
43
|
- macos-latest
|
|
43
44
|
- macos-14
|
|
44
45
|
- windows-latest
|
|
45
46
|
include:
|
|
46
|
-
- os: ubuntu-latest
|
|
47
|
-
python-version: "3.10"
|
|
48
47
|
- os: ubuntu-latest
|
|
49
48
|
python-version: "3.11"
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
- os: macos-14
|
|
53
|
-
python-version: "3.9"
|
|
49
|
+
- os: ubuntu-latest
|
|
50
|
+
python-version: "3.12"
|
|
54
51
|
runs-on: ${{ matrix.os }}
|
|
55
52
|
steps:
|
|
56
53
|
- uses: actions/checkout@v4
|
|
@@ -64,8 +61,8 @@ jobs:
|
|
|
64
61
|
pip install -e ".[testing]"
|
|
65
62
|
- name: Run tests
|
|
66
63
|
run: |
|
|
67
|
-
pytest -n auto --cov=src/pyEQL --cov-report=xml
|
|
68
|
-
- uses: codecov/codecov-action@
|
|
64
|
+
pytest -n auto --cov=src/pyEQL --cov-report=xml --dist=loadscope
|
|
65
|
+
- uses: codecov/codecov-action@v5
|
|
69
66
|
with:
|
|
70
67
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
71
68
|
file: ./coverage.xml
|
|
@@ -77,10 +74,12 @@ jobs:
|
|
|
77
74
|
- name: Setup Python
|
|
78
75
|
uses: actions/setup-python@v5
|
|
79
76
|
with:
|
|
80
|
-
python-version: 3.
|
|
77
|
+
python-version: "3.11"
|
|
81
78
|
- name: Install tox
|
|
82
79
|
run: |
|
|
83
80
|
python -m pip install tox
|
|
84
81
|
- uses: r-lib/actions/setup-pandoc@v2
|
|
85
82
|
- name: Build docs
|
|
86
83
|
run: tox -e docs
|
|
84
|
+
- name: Check links
|
|
85
|
+
run: tox -e links
|
|
@@ -6,7 +6,7 @@ on:
|
|
|
6
6
|
workflow_dispatch: # Allow running on-demand
|
|
7
7
|
schedule:
|
|
8
8
|
# Runs on the 10th day of every month at 8:00 UTC (4:00 Eastern)
|
|
9
|
-
- cron:
|
|
9
|
+
- cron: "0 8 10 * *"
|
|
10
10
|
|
|
11
11
|
jobs:
|
|
12
12
|
upgrade:
|
|
@@ -14,9 +14,9 @@ jobs:
|
|
|
14
14
|
runs-on: ${{ matrix.os }}
|
|
15
15
|
strategy:
|
|
16
16
|
matrix:
|
|
17
|
-
os: [
|
|
17
|
+
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
|
|
18
18
|
package: ["."]
|
|
19
|
-
python-version: ["3.
|
|
19
|
+
python-version: ["3.10", "3.11", "3.12"]
|
|
20
20
|
steps:
|
|
21
21
|
- uses: actions/checkout@v4
|
|
22
22
|
with:
|
|
@@ -24,7 +24,7 @@ jobs:
|
|
|
24
24
|
- uses: actions/setup-python@v5
|
|
25
25
|
with:
|
|
26
26
|
python-version: ${{ matrix.python-version }}
|
|
27
|
-
cache:
|
|
27
|
+
cache: "pip"
|
|
28
28
|
- name: Upgrade Python dependencies
|
|
29
29
|
shell: bash
|
|
30
30
|
run: |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
exclude: "^docs/conf.py"
|
|
2
2
|
|
|
3
|
-
default_stages: [commit]
|
|
3
|
+
default_stages: [pre-commit]
|
|
4
4
|
|
|
5
5
|
default_install_hook_types: [pre-commit, commit-msg]
|
|
6
6
|
|
|
@@ -12,26 +12,30 @@ ci:
|
|
|
12
12
|
|
|
13
13
|
repos:
|
|
14
14
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
15
|
-
rev: v0.
|
|
15
|
+
rev: v0.12.7
|
|
16
16
|
hooks:
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
# Run the linter. filters are to exclude .ipynb files
|
|
18
|
+
- id: ruff-check
|
|
19
|
+
types_or: [ python, pyi ]
|
|
20
|
+
args: [--fix, --ignore, "D,E501", --show-fixes]
|
|
21
|
+
# Run the formatter. This WILL run on .ipynb files
|
|
22
|
+
- id: ruff-format
|
|
19
23
|
|
|
20
24
|
- repo: https://github.com/psf/black-pre-commit-mirror
|
|
21
|
-
rev:
|
|
25
|
+
rev: 25.1.0
|
|
22
26
|
hooks:
|
|
23
27
|
- id: black
|
|
24
28
|
|
|
25
29
|
- repo: https://github.com/codespell-project/codespell
|
|
26
|
-
rev: v2.
|
|
30
|
+
rev: v2.4.1
|
|
27
31
|
hooks:
|
|
28
32
|
- id: codespell
|
|
29
|
-
stages: [commit, commit-msg]
|
|
33
|
+
stages: [pre-commit, commit-msg]
|
|
30
34
|
exclude_types: [html, svg]
|
|
31
35
|
additional_dependencies: [tomli] # needed to read pyproject.toml below py3.11
|
|
32
36
|
|
|
33
37
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
34
|
-
rev:
|
|
38
|
+
rev: v5.0.0
|
|
35
39
|
hooks:
|
|
36
40
|
- id: check-case-conflict
|
|
37
41
|
- id: check-symlinks
|
|
@@ -41,8 +45,8 @@ repos:
|
|
|
41
45
|
exclude_types: [svg]
|
|
42
46
|
- id: trailing-whitespace
|
|
43
47
|
exclude_types: [svg]
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
48
|
+
- id: check-yaml
|
|
49
|
+
- id: check-json
|
|
50
|
+
- id: pretty-format-json
|
|
51
|
+
exclude_types: [jupyter]
|
|
52
|
+
args: [--autofix, --indent=4]
|
pyeql-1.3.0/.zenodo.json
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"creators": [
|
|
3
|
+
{
|
|
4
|
+
"affiliation": "Princeton University",
|
|
5
|
+
"name": "Kingsbury, Ryan",
|
|
6
|
+
"orcid": "0000-0002-7168-3967"
|
|
7
|
+
}
|
|
8
|
+
],
|
|
9
|
+
"rights": [
|
|
10
|
+
{
|
|
11
|
+
"description": {
|
|
12
|
+
"en": ""
|
|
13
|
+
},
|
|
14
|
+
"id": "lgpl-3.0-only",
|
|
15
|
+
"props": {
|
|
16
|
+
"scheme": "spdx",
|
|
17
|
+
"url": "https://www.gnu.org/licenses/lgpl-3.0-standalone.html"
|
|
18
|
+
},
|
|
19
|
+
"title": {
|
|
20
|
+
"en": "GNU Lesser General Public License v3.0 only"
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"title": "pyEQL: A python library for water chemistry"
|
|
25
|
+
}
|
|
@@ -6,8 +6,13 @@ developed and maintained by the Kingsbury Lab at Princeton University.
|
|
|
6
6
|
Other contributors, listed alphabetically, are:
|
|
7
7
|
|
|
8
8
|
- Arpit Bhardwaj (@abhardwaj73)
|
|
9
|
+
- Nikhil Dhruv (@NikhilDhruv)
|
|
9
10
|
- Dhruv Duseja (@DhruvDuseja)
|
|
11
|
+
- @githubalexliu
|
|
10
12
|
- Hernan Grecco (@hgrecco)
|
|
13
|
+
- @Ouriel Ndalamba (@Ouriel-N)
|
|
14
|
+
- Ugo Nwosu (@ugognw)
|
|
15
|
+
- Yitong Pan (@YitongPan1)
|
|
11
16
|
- Jaebeom Park (@Jaebeom-P)
|
|
12
17
|
- Kirill Pushkarev (@kirill-push)
|
|
13
18
|
- Andrew Rosen (@arosen93)
|
|
@@ -5,6 +5,91 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.3.0] - 2025-08-08
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- `Solution.__add__`: engine, solvent, database were not inherited by the sum of `Solution`
|
|
13
|
+
objects (#258, @ugognw)
|
|
14
|
+
- `Solution.get_activity_coefficient`: Fixed bugs where incorrect Pitzer scaling parameters $\alpha_1$
|
|
15
|
+
and $\alpha_2$ parameters were used to calculate activity coefficients and solute molar volumes for salts with multivalent ions (#258, @ugognw)
|
|
16
|
+
- `Solution.get_salt_dict`: fixed errors in the calculation of concentrations for salts
|
|
17
|
+
containing polyvalent cations (#258, @ugognw)
|
|
18
|
+
- `Solution.get_salt_dict` now respects the `cutoff` parameter. Note that `cutoff`
|
|
19
|
+
is now interpreted in units of moles per kilogram of solution (#258, @ugognw)
|
|
20
|
+
- `Solution.get_salt_dict` always returns a salt dictionary sorted in order of decreasing salt concentration (#258, @ugognw)
|
|
21
|
+
- `Solution.__init__`: Raise `ValueError` if a user sets inconsistent `H[+1]` in `solutes` and
|
|
22
|
+
`pH` keyword arguments (#270, @gnuhpdiem, @rkingsbury). Previously, if the user set `H[+1]` in `solutes`, it's value would silently override the `pH` kwarg. Now, you will get a `ValueError`
|
|
23
|
+
if the two are inconsistent, unless the `pH` kwarg is kept at the default value. In that case,
|
|
24
|
+
a warning will be logged.
|
|
25
|
+
- `standardize_formula`: properly interpret ambiguous dash / hyphen characters as "minus" (#264, @rkingsbury)
|
|
26
|
+
- Ensure `Solution.p()` always returns a regular `float` and returns `np.nan` if the
|
|
27
|
+
concentration is zero or negative (#269, @rkingsbury)
|
|
28
|
+
- `Solution.get_diffusion_coefficient`: prevent diffusion coefficient adjustment when temperature
|
|
29
|
+
is within 1 degree of the the reference value (#215, @YitongPan1)
|
|
30
|
+
- Tests: literature data used in `test_mixed_electrolyte_activity.py` was updated to reflect
|
|
31
|
+
corrected we recently became aware of. (#271, @Ouriel-N, @rkingsbury)
|
|
32
|
+
- Docs: Sphinx warnings are cleared (#255, ugognw)
|
|
33
|
+
- Docs: Minor fixes for private / cached methods (#197, @githubalexliu)
|
|
34
|
+
- Docs: Edit documentation of `debye_parameter_B` (#196, @YitongPan1)
|
|
35
|
+
|
|
36
|
+
### Added
|
|
37
|
+
|
|
38
|
+
- Docs/CI: sphinx linkcheck job and tox environment/command (`tox -e links`) (#255, @ugognw)
|
|
39
|
+
- Docs: add carbonate system tutorial (#204, @NikhilDhruv)
|
|
40
|
+
|
|
41
|
+
### Changed
|
|
42
|
+
|
|
43
|
+
- **BREAKING** - the return value of `Solution.get_salt_dict` now includes `Salt` objects instead of keys corresponding
|
|
44
|
+
to `cation` and `anion`. See the example in the docstring for how to adapt existing code to accommodate this
|
|
45
|
+
change. (#258, @ugognw)
|
|
46
|
+
- **BREAKING** - `Solution.get_salt_dict` no longer returns an entry for water (#258, @ugognw)
|
|
47
|
+
- **BREAKING** - `Solution.get_salt` will not return water and may return `None` if no salt is present.
|
|
48
|
+
Previously, `Solution.get_salt` would have returned a `Salt` representing water. (#258, @ugognw)
|
|
49
|
+
- Ensure more consistent column formatting in `Solution.print()` (#269, @rkingsbury)
|
|
50
|
+
- Switch `math.log10` to `np.log10` in `Solution.p()` (#269, @rkingsbury)
|
|
51
|
+
- update pre-commit configuration (#269, @rkingsbury)
|
|
52
|
+
- use [`--dist loadscope`](https://pytest-xdist.readthedocs.io/en/latest/distribution.html) in parallelized CI tests. Closes #170. (#269, @rkingsbury)
|
|
53
|
+
- update license specification in `pyproject.toml` to conform to [latest packaging standards](https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license). Closes #233. (#269, @rkingsbury)
|
|
54
|
+
- add `py.typed` to report type checking to other libraries. Closes #179. (#269, @rkingsbury)
|
|
55
|
+
- Support `numpy>2.0`
|
|
56
|
+
- Bump `pint` to `0.24.4` for `numpy` `v2.0` compatibility and to mitigate CI issues (#239, @SuixiongTay, @rkingsbury)
|
|
57
|
+
- CI: add `python` `v3.13` to post-merge unit tests
|
|
58
|
+
- Docs: `tox -e docs` command configured to fail on warning (#255, @ugognw)
|
|
59
|
+
- Docs: ReadTheDocs built with Python 3.11 (#255, ugognw)
|
|
60
|
+
- Use `importlib` to locate test files (#241, @SuixiongTay)
|
|
61
|
+
- Support `numpy>2.0`
|
|
62
|
+
- Bump `pint` to `0.24.4` for `numpy` `v2.0` compatibility and to mitigate CI issues (#239, @SuixiongTay, @rkingsbury)
|
|
63
|
+
- CI: add `python` `v3.13` to post-merge unit tests
|
|
64
|
+
- bump `pymatgen` to `v2025.1.9`
|
|
65
|
+
- bump `maggma` to `v0.71.4`
|
|
66
|
+
|
|
67
|
+
### Removed
|
|
68
|
+
|
|
69
|
+
- **BREAKING** Methods previously marked for deprecation - `list_solutes`, `list_activities`,
|
|
70
|
+
`list_concentrations`, `list_salts` have been removed.
|
|
71
|
+
- `Solution.add_solvent` has been marked for deprecation and will be removed in a future
|
|
72
|
+
release. Use `add_solute` instead.
|
|
73
|
+
- Python 3.9 version classifier in pyproject.toml (#247, @ugognw)
|
|
74
|
+
- `Solution.list_salts` (use `Solution.get_salt_dict()` instead) (#258)
|
|
75
|
+
|
|
76
|
+
## [1.2.0] - 2024-09-24
|
|
77
|
+
|
|
78
|
+
### Fixed
|
|
79
|
+
|
|
80
|
+
- Database: removed several erroneous species (such as `CO32-` which was really `CO3[-2]`),
|
|
81
|
+
corrected other parsing errors, and updated formula syntax for consistency with recent
|
|
82
|
+
`standardize_formula` changes (e.g., `H4NCl -> NH4Cl`) (#190, @rkingsbury)
|
|
83
|
+
|
|
84
|
+
### Changed
|
|
85
|
+
|
|
86
|
+
- Bump `pymatgen` to `v2024.9.10` for additional upstream formula fixes. (#188, @abhardwaj73)
|
|
87
|
+
|
|
88
|
+
### Removed
|
|
89
|
+
|
|
90
|
+
- **BREAKING** - dropped python 3.9 support, in accordance with numpy deprecation policy.
|
|
91
|
+
(#188, @abhardwaj73)
|
|
92
|
+
|
|
8
93
|
## [1.1.6] - 2024-09-01
|
|
9
94
|
|
|
10
95
|
### Fixed
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
cff-version: "1.2.0"
|
|
2
2
|
authors:
|
|
3
|
-
- family-names: Kingsbury
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
- family-names: Kingsbury
|
|
4
|
+
given-names: Ryan
|
|
5
|
+
orcid: "https://orcid.org/0000-0002-7168-3967"
|
|
6
6
|
doi: 10.5281/zenodo.8332915
|
|
7
7
|
message: If you use this software, please cite our article in the
|
|
8
8
|
Journal of Open Source Software.
|
|
9
9
|
preferred-citation:
|
|
10
10
|
authors:
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
- family-names: Kingsbury
|
|
12
|
+
given-names: Ryan
|
|
13
|
+
orcid: "https://orcid.org/0000-0002-7168-3967"
|
|
14
14
|
date-published: 2024-03-25
|
|
15
15
|
doi: 10.21105/joss.06295
|
|
16
16
|
issn: 2475-9066
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: pyEQL
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.3.0
|
|
4
4
|
Summary: A python interface for solution chemistry
|
|
5
5
|
Author-email: Ryan Kingsbury <kingsbury@princeton.edu>
|
|
6
|
+
License-Expression: LGPL-3.0-or-later
|
|
6
7
|
Project-URL: Docs, https://pyeql.readthedocs.io/
|
|
7
8
|
Project-URL: Repo, https://github.com/KingsburyLab/pyEQL
|
|
8
9
|
Project-URL: Package, https://pypi.org/project/pyEQL
|
|
9
10
|
Classifier: Programming Language :: Python :: 3
|
|
10
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
12
12
|
Classifier: Programming Language :: Python :: 3.11
|
|
13
13
|
Classifier: Programming Language :: Python :: 3.12
|
|
@@ -15,18 +15,17 @@ Classifier: Development Status :: 4 - Beta
|
|
|
15
15
|
Classifier: Intended Audience :: Science/Research
|
|
16
16
|
Classifier: Operating System :: OS Independent
|
|
17
17
|
Classifier: Topic :: Scientific/Engineering
|
|
18
|
-
Requires-Python: >=3.
|
|
18
|
+
Requires-Python: >=3.10
|
|
19
19
|
Description-Content-Type: text/markdown
|
|
20
20
|
License-File: LICENSE.txt
|
|
21
|
-
License-File: COPYING
|
|
22
21
|
License-File: AUTHORS.md
|
|
23
|
-
Requires-Dist: pint>=0.
|
|
24
|
-
Requires-Dist: numpy
|
|
22
|
+
Requires-Dist: pint>=0.24.4
|
|
23
|
+
Requires-Dist: numpy>1.26
|
|
25
24
|
Requires-Dist: scipy>=1.12
|
|
26
|
-
Requires-Dist: pymatgen
|
|
25
|
+
Requires-Dist: pymatgen>=2025.1.9
|
|
27
26
|
Requires-Dist: iapws>=1.5.3
|
|
28
|
-
Requires-Dist: monty>=2024.
|
|
29
|
-
Requires-Dist: maggma>=0.
|
|
27
|
+
Requires-Dist: monty>=2024.12.10
|
|
28
|
+
Requires-Dist: maggma>=0.71.4
|
|
30
29
|
Requires-Dist: phreeqpython>=1.5.2
|
|
31
30
|
Provides-Extra: testing
|
|
32
31
|
Requires-Dist: setuptools>=68; extra == "testing"
|
|
@@ -44,11 +43,12 @@ Requires-Dist: sphinx-rtd-theme; extra == "docs"
|
|
|
44
43
|
Requires-Dist: myst-parser[linkify]; extra == "docs"
|
|
45
44
|
Provides-Extra: full
|
|
46
45
|
Requires-Dist: rich; extra == "full"
|
|
46
|
+
Dynamic: license-file
|
|
47
47
|
|
|
48
48
|
[](https://pyeql.readthedocs.io/en/latest/)
|
|
49
49
|
[](https://github.com/KingsburyLab/pyeql/actions?query=workflow%3Atesting)
|
|
50
50
|
[](https://codecov.io/gh/KingsburyLab/pyeql)
|
|
51
|
-

|
|
52
52
|
[](https://doi.org/10.5281/zenodo.8332915)
|
|
53
53
|
[](https://badge.fury.io/py/pyEQL)
|
|
54
54
|
[](https://joss.theoj.org/papers/bdd9e247ea9736a0fdbbd5fe12bef7a6)
|
|
@@ -112,7 +112,7 @@ Detailed documentation is available at [https://pyeql.readthedocs.io/](https://p
|
|
|
112
112
|
|
|
113
113
|
### Dependencies
|
|
114
114
|
|
|
115
|
-
- Python 3.
|
|
115
|
+
- Python 3.10+. This project will attempt to adhere to NumPy's
|
|
116
116
|
[NEP 29](https://numpy.org/neps/nep-0029-deprecation_policy.html) deprecation policy
|
|
117
117
|
for older version of Python.
|
|
118
118
|
- [pint](https://github.com/hgrecco/pint) - for units-aware calculations
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
[](https://pyeql.readthedocs.io/en/latest/)
|
|
2
2
|
[](https://github.com/KingsburyLab/pyeql/actions?query=workflow%3Atesting)
|
|
3
3
|
[](https://codecov.io/gh/KingsburyLab/pyeql)
|
|
4
|
-

|
|
5
5
|
[](https://doi.org/10.5281/zenodo.8332915)
|
|
6
6
|
[](https://badge.fury.io/py/pyEQL)
|
|
7
7
|
[](https://joss.theoj.org/papers/bdd9e247ea9736a0fdbbd5fe12bef7a6)
|
|
@@ -65,7 +65,7 @@ Detailed documentation is available at [https://pyeql.readthedocs.io/](https://p
|
|
|
65
65
|
|
|
66
66
|
### Dependencies
|
|
67
67
|
|
|
68
|
-
- Python 3.
|
|
68
|
+
- Python 3.10+. This project will attempt to adhere to NumPy's
|
|
69
69
|
[NEP 29](https://numpy.org/neps/nep-0029-deprecation_policy.html) deprecation policy
|
|
70
70
|
for older version of Python.
|
|
71
71
|
- [pint](https://github.com/hgrecco/pint) - for units-aware calculations
|
|
@@ -6,8 +6,13 @@ developed and maintained by the Kingsbury Lab at Princeton University.
|
|
|
6
6
|
Other contributors, listed alphabetically, are:
|
|
7
7
|
|
|
8
8
|
- Arpit Bhardwaj (@abhardwaj73)
|
|
9
|
+
- Nikhil Dhruv (@NikhilDhruv)
|
|
9
10
|
- Dhruv Duseja (@DhruvDuseja)
|
|
11
|
+
- @githubalexliu
|
|
10
12
|
- Hernan Grecco (@hgrecco)
|
|
13
|
+
- @Ouriel Ndalamba (@Ouriel-N)
|
|
14
|
+
- Ugo Nwosu (@ugognw)
|
|
15
|
+
- Yitong Pan (@YitongPan1)
|
|
11
16
|
- Jaebeom Park (@Jaebeom-P)
|
|
12
17
|
- Kirill Pushkarev (@kirill-push)
|
|
13
18
|
- Andrew Rosen (@arosen93)
|
|
@@ -5,6 +5,91 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.3.0] - 2025-08-08
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- `Solution.__add__`: engine, solvent, database were not inherited by the sum of `Solution`
|
|
13
|
+
objects (#258, @ugognw)
|
|
14
|
+
- `Solution.get_activity_coefficient`: Fixed bugs where incorrect Pitzer scaling parameters $\alpha_1$
|
|
15
|
+
and $\alpha_2$ parameters were used to calculate activity coefficients and solute molar volumes for salts with multivalent ions (#258, @ugognw)
|
|
16
|
+
- `Solution.get_salt_dict`: fixed errors in the calculation of concentrations for salts
|
|
17
|
+
containing polyvalent cations (#258, @ugognw)
|
|
18
|
+
- `Solution.get_salt_dict` now respects the `cutoff` parameter. Note that `cutoff`
|
|
19
|
+
is now interpreted in units of moles per kilogram of solution (#258, @ugognw)
|
|
20
|
+
- `Solution.get_salt_dict` always returns a salt dictionary sorted in order of decreasing salt concentration (#258, @ugognw)
|
|
21
|
+
- `Solution.__init__`: Raise `ValueError` if a user sets inconsistent `H[+1]` in `solutes` and
|
|
22
|
+
`pH` keyword arguments (#270, @gnuhpdiem, @rkingsbury). Previously, if the user set `H[+1]` in `solutes`, it's value would silently override the `pH` kwarg. Now, you will get a `ValueError`
|
|
23
|
+
if the two are inconsistent, unless the `pH` kwarg is kept at the default value. In that case,
|
|
24
|
+
a warning will be logged.
|
|
25
|
+
- `standardize_formula`: properly interpret ambiguous dash / hyphen characters as "minus" (#264, @rkingsbury)
|
|
26
|
+
- Ensure `Solution.p()` always returns a regular `float` and returns `np.nan` if the
|
|
27
|
+
concentration is zero or negative (#269, @rkingsbury)
|
|
28
|
+
- `Solution.get_diffusion_coefficient`: prevent diffusion coefficient adjustment when temperature
|
|
29
|
+
is within 1 degree of the the reference value (#215, @YitongPan1)
|
|
30
|
+
- Tests: literature data used in `test_mixed_electrolyte_activity.py` was updated to reflect
|
|
31
|
+
corrected we recently became aware of. (#271, @Ouriel-N, @rkingsbury)
|
|
32
|
+
- Docs: Sphinx warnings are cleared (#255, ugognw)
|
|
33
|
+
- Docs: Minor fixes for private / cached methods (#197, @githubalexliu)
|
|
34
|
+
- Docs: Edit documentation of `debye_parameter_B` (#196, @YitongPan1)
|
|
35
|
+
|
|
36
|
+
### Added
|
|
37
|
+
|
|
38
|
+
- Docs/CI: sphinx linkcheck job and tox environment/command (`tox -e links`) (#255, @ugognw)
|
|
39
|
+
- Docs: add carbonate system tutorial (#204, @NikhilDhruv)
|
|
40
|
+
|
|
41
|
+
### Changed
|
|
42
|
+
|
|
43
|
+
- **BREAKING** - the return value of `Solution.get_salt_dict` now includes `Salt` objects instead of keys corresponding
|
|
44
|
+
to `cation` and `anion`. See the example in the docstring for how to adapt existing code to accommodate this
|
|
45
|
+
change. (#258, @ugognw)
|
|
46
|
+
- **BREAKING** - `Solution.get_salt_dict` no longer returns an entry for water (#258, @ugognw)
|
|
47
|
+
- **BREAKING** - `Solution.get_salt` will not return water and may return `None` if no salt is present.
|
|
48
|
+
Previously, `Solution.get_salt` would have returned a `Salt` representing water. (#258, @ugognw)
|
|
49
|
+
- Ensure more consistent column formatting in `Solution.print()` (#269, @rkingsbury)
|
|
50
|
+
- Switch `math.log10` to `np.log10` in `Solution.p()` (#269, @rkingsbury)
|
|
51
|
+
- update pre-commit configuration (#269, @rkingsbury)
|
|
52
|
+
- use [`--dist loadscope`](https://pytest-xdist.readthedocs.io/en/latest/distribution.html) in parallelized CI tests. Closes #170. (#269, @rkingsbury)
|
|
53
|
+
- update license specification in `pyproject.toml` to conform to [latest packaging standards](https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license). Closes #233. (#269, @rkingsbury)
|
|
54
|
+
- add `py.typed` to report type checking to other libraries. Closes #179. (#269, @rkingsbury)
|
|
55
|
+
- Support `numpy>2.0`
|
|
56
|
+
- Bump `pint` to `0.24.4` for `numpy` `v2.0` compatibility and to mitigate CI issues (#239, @SuixiongTay, @rkingsbury)
|
|
57
|
+
- CI: add `python` `v3.13` to post-merge unit tests
|
|
58
|
+
- Docs: `tox -e docs` command configured to fail on warning (#255, @ugognw)
|
|
59
|
+
- Docs: ReadTheDocs built with Python 3.11 (#255, ugognw)
|
|
60
|
+
- Use `importlib` to locate test files (#241, @SuixiongTay)
|
|
61
|
+
- Support `numpy>2.0`
|
|
62
|
+
- Bump `pint` to `0.24.4` for `numpy` `v2.0` compatibility and to mitigate CI issues (#239, @SuixiongTay, @rkingsbury)
|
|
63
|
+
- CI: add `python` `v3.13` to post-merge unit tests
|
|
64
|
+
- bump `pymatgen` to `v2025.1.9`
|
|
65
|
+
- bump `maggma` to `v0.71.4`
|
|
66
|
+
|
|
67
|
+
### Removed
|
|
68
|
+
|
|
69
|
+
- **BREAKING** Methods previously marked for deprecation - `list_solutes`, `list_activities`,
|
|
70
|
+
`list_concentrations`, `list_salts` have been removed.
|
|
71
|
+
- `Solution.add_solvent` has been marked for deprecation and will be removed in a future
|
|
72
|
+
release. Use `add_solute` instead.
|
|
73
|
+
- Python 3.9 version classifier in pyproject.toml (#247, @ugognw)
|
|
74
|
+
- `Solution.list_salts` (use `Solution.get_salt_dict()` instead) (#258)
|
|
75
|
+
|
|
76
|
+
## [1.2.0] - 2024-09-24
|
|
77
|
+
|
|
78
|
+
### Fixed
|
|
79
|
+
|
|
80
|
+
- Database: removed several erroneous species (such as `CO32-` which was really `CO3[-2]`),
|
|
81
|
+
corrected other parsing errors, and updated formula syntax for consistency with recent
|
|
82
|
+
`standardize_formula` changes (e.g., `H4NCl -> NH4Cl`) (#190, @rkingsbury)
|
|
83
|
+
|
|
84
|
+
### Changed
|
|
85
|
+
|
|
86
|
+
- Bump `pymatgen` to `v2024.9.10` for additional upstream formula fixes. (#188, @abhardwaj73)
|
|
87
|
+
|
|
88
|
+
### Removed
|
|
89
|
+
|
|
90
|
+
- **BREAKING** - dropped python 3.9 support, in accordance with numpy deprecation policy.
|
|
91
|
+
(#188, @abhardwaj73)
|
|
92
|
+
|
|
8
93
|
## [1.1.6] - 2024-09-01
|
|
9
94
|
|
|
10
95
|
### Fixed
|
|
@@ -10,7 +10,7 @@ This page contains detailed information on each of the methods, attributes, and
|
|
|
10
10
|
.. autoclass:: pyEQL.Solution
|
|
11
11
|
:members:
|
|
12
12
|
:inherited-members:
|
|
13
|
-
:private-members: _get_property
|
|
13
|
+
:private-members: _get_property, _get_diffusion_coefficient, _get_molar_conductivity, _get_mobility
|
|
14
14
|
:special-members: __init__
|
|
15
15
|
:member-order: bysource
|
|
16
16
|
```
|