Recent Releases of farn
farn - v0.4.1
Added
- Added support for Python 3.13
- Added CITATION.cff
- pyproject.toml : Added keywords
Changed
- ruff.toml : removed deprecated ruff rules ANN101 and ANN102 from excluded rules
- Use f-string, where possible, instead of '%' style string formatting
Solved
- src/farn/core/case.py : Changed the way how local variables get added / manipulated through code. Replaced access to
locals()withsys._getframe().f_localswhen manipulating local variables. This change became necessary as Python 3.13 changed the way Python's builtinlocals()method works. See PEP 667 for details. - Resolved issues raised by
ruff0.9.2
Dependencies
- Updated to ruff>=0.9.2 (from ruff>=0.6.3)
- Updated to pyright>=1.1.392 (from pyright>=1.1.378)
- Updated to sourcery>=1.31 (from sourcery>=1.22)
- Updated to lxml>=5.3 (from lxml>=5.2)
- Updated to types-lxml>=2024.12 (from types-lxml>=2024.4)
- Updated to scipy>=1.15 (from scipy>=1.13)
- Updated to matplotlib>=3.10 (from matplotlib>=3.9)
- Updated to dictIO>=0.4.1 (from dictIO>=0.4.0)
- Updated to Pillow>=11.1 (from Pillow>=10.4)
- Updated to Sphinx>=8.1 (from Sphinx>=8.0)
- Updated to sphinx-argparse-cli>=1.19 (from sphinx-argparse-cli>=1.17)
- Updated to sphinx-autodoc-typehints>=3.0 (from sphinx-autodoc-typehints>=2.2)
- Updated to mypy>=1.14 (from mypy>=1.11.1)
- Updated to setup-uv@v5 (from setup-uv@v2)
- Updated to ospx>=0.3.1 (from ospx>=0.3.0)
- Updated to jupyter>=1.1 (from jupyter>=1.0)
- Updated to pytest-cov>=6.0 (from pytest-cov>=5.0)
- Updated to pre-commit>=4.0 (from pre-commit>=3.8)
- Updated to types-psutil>=6.1 (from types-psutil>=6.0)
- numpy: As Python 3.13 requires numpy 2.x, made minimum required numpy version in pyproject.toml dependent on Python version:
- "numpy>=1.26; python_version < '3.13'",
- "numpy>=2.2; python_version >= '3.13'",
- Python
Published by ClaasRostock over 1 year ago
farn - v0.4.0
Breaking changes
- The code has been adapted to dictIO 0.4.0
dictIO 0.4.0 introduced some breaking changes. With the current release 0.4.0 of farn, the code base has been adapted to these in changes.
The most prominent change being that class
dictIO.CppDicthas been replaced by classdictIO.SDict.
Changed
- Changed from
pip/toxtouvas package manager - README.md : Completely rewrote section "Development Setup", introducing
uvas package manager. - Changed publishing workflow to use OpenID Connect (Trusted Publisher Management) when publishing to PyPI
- Updated copyright statement
- VS Code settings: Turned off automatic venv activation
- Replaced black formatter with ruff formatter
Solved
- Sphinx documentation: Resolved issue that documentation of class members was generated twice.
Added
- Sphinx documentation: Added extension to support Markdown-based diagrams
- Python
Published by ClaasRostock over 1 year ago
farn - v0.3.7
Dependencies
- updated to ruff==0.4.2 (from ruff==0.2.1)
- updated to pyright==1.1.360 (from pyright==1.1.350)
- updated to sourcery==1.16 (from sourcery==1.15)
- updated to lxml>=5.2 (from lxml>=5.1)
- updated to types-lxml>=2024.4 (from types-lxml>=5.1)
- updated to scipy>=1.13 (from scipy>=1.12)
- updated to Pillow>=10.3 (from Pillow>=10.2)
- updated to pytest>=8.2 (from pytest>=7.4)
- updated to pytest-cov>=5.0 (from pytest-cov>=4.1)
- updated to Sphinx>=7.3 (from Sphinx>=7.2)
- updated to sphinx-argparse-cli>=1.15 (from sphinx-argparse-cli>=1.11)
- updated to myst-parser>=3.0 (from myst-parser>=2.0)
- updated to furo>=2024.4 (from furo>=2023.9.10)
- updated to dictIO>=0.3.4 (from dictIO>=0.3.3)
- updated to ospx>=0.2.14 (from ospx>=0.2.13)
- updated to numpy>=1.26,<2.0 (from numpy>=1.26)
- updated to matplotlib>=3.9 (from matplotlib>=3.8)
- removed black
Changed
- replaced black formatter with ruff formatter
- Changed publishing workflow to use OpenID Connect (Trusted Publisher Management) when publishing to PyPI
- Updated copyright statement
- VS Code settings: Turned off automatic venv activation
Added
farn.core.case.Case: Added methodadd_parameters(), which allows to manually add user-defined parameters to a Case.
- Python
Published by ClaasRostock about 2 years ago
farn - v0.3.6
Added
- README.md : Under
Development Setup, added a step to install current package in "editable" mode, using the pip install -e option. This removes the need to manually add /src to the PythonPath environment variable in order for debugging and tests to work.
Removed
- VS Code settings: Removed the setting which added the /src folder to PythonPath. This is no longer necessary. Installing the project itself as a package in "editable" mode, using the pip install -e option, solves the issue and removes the need to manually add /src to the PythonPath environment variable.
Changed
- Moved all project configuration from setup.cfg to pyproject.toml
- Moved all tox configuration from setup.cfg to tox.ini.
- Moved pytest configuration from pyproject.toml to pytest.ini
- Deleted setup.cfg
Dependencies
- updated to black[jupyter]==24.1 (from black[jupyter]==23.12)
- updated to version: '==24.1' (from version: '==23.12')
- updated to ruff==0.2.1 (from ruff==0.1.8)
- updated to pyright==1.1.350 (from pyright==1.1.338)
- updated to sourcery==1.15 (from sourcery==1.14)
- updated to lxml>=5.1 (from lxml>=4.9)
- updated to scipy>=1.12 (from scipy>=1.11)
- updated to pandas>=2.2 (from pandas>=2.1)
- updated to Pillow>=10.2 (from Pillow>=10.1)
- Python
Published by ClaasRostock over 2 years ago
farn - v0.3.5
Changed
- farn/sampling/sampling.py:
- generatevaluesusinguniformlhssampling(): replaced SALib latin with pyDOE2 lhs
- generatevaluesusingsobol_sampling(): replaced sobol-seq with scipy.stats.qmc.sobol
- removed orphaned _cov argument from normalLhs sampling
Dependencies
- Upgraded from pyDOE2>=1.3 to pyDOE3>=1.0
- Removed SALib and sobol-seq
- Updated to dictIO>=0.3.1 and ospx>=0.2.12
- Python
Published by ClaasRostock over 2 years ago
farn - v0.3.1
Changed
- Added missing DocStrings for public classes, methods and functions
- Changed links to package documentation to open README.html, not the default index page
- data classes: changed initialisation of mutable types to use default_factory
- ruff: added rule-set "B" (flake8-bugbear)
Dependencies
- updated to dictIO>=0.2.6 and ospx>=0.2.8
- Python
Published by ClaasRostock over 3 years ago
farn - v0.3.0
v0.3.0 is a major update comprising one breaking change (see below). Users are encouraged to update to this version.
Breaking Change
- Moved classes 'Case' and 'Parameter' from farn.farn to farn.core
As a consequence, if you imported these classes in your code, you need to adapt the respective import statements. I.e. old ~~~py from farn.farn import Case, Parameter ~~~ new ~~~py from farn.core import Case, Parameter ~~~
Added
- Added a 'Cases' class, acting as a container for Case instances. Cases inherits from List[Case] and can hence transparently be used as a Python list type. However, Cases provides additional convenience methods to export the attributes of all contained Case instances to a pandas DataFrame (Cases.topandas()) or to a numpy ndarray (Cases.tonumpy()) Cases is located in the farn.core sub-package and can be imported from there, i.e: ~~~py from farn.core import Case, Cases, Parameter ~~~
- Python
Published by ClaasRostock over 3 years ago
farn - v0.2.7
Changed
- Linter: Migrated from flake8 to ruff. (Added ruff; removed flake8 and isort)
- Adjusted GitHub CI workflow accordingly. (Added ruff job; removed flake8 and isort jobs)
- VS Code settings: Adjusted Pylance configuration
Added
- Added a batch file 'qa.bat' in root folder to ease local execution of code quality checks
Dependencies
- updated to dictIO>=0.2.5 and ospx>=0.2.7
- Python
Published by ClaasRostock over 3 years ago
farn - v0.2.5
Changed
- Moved dev-only dependencies from requirements.txt to requirements-dev.txt
- farn/
__init__.py : ensured that imported symbols get also exported
(added "as" clause -> "from x import y as y" instead of only "from x import y") - sampling.py: refactored for cleaner code
- Configured code quality tools flake8, black, isort, pyright
- Improved code quality, resolving all warnings and errors flagged by the configured code quality tools (flake8, black, isort, pyright, sourcery)
Added
- Added GitHub workflow 'main.yml' for continuous integration (runs all CI tasks except Sphinx)
- format checks: black, isort
- lint check: flake8, flake8-bugbear
- type check: pyright
- test: uses tox to run pytest on {Windows, Linux, MacOS} with {py39, py310}
- publish: publishing to PyPI (runs only on push of new tag vx.x.x, and after all other jobs succeeded)
- mergetorelease_branch: merge tagged commit to release branch (runs after publish)
Dependencies
- updated to dictIO>=0.2.4
- Python
Published by ClaasRostock over 3 years ago
farn - v0.2.4
Changed
- Code formatting: Changed from yapf to black
- STYLEGUIDE.md : Adjusted to match black formatting
- VS Code settings: Updated to use black as formatter
- requirements.txt: Updated dependencies to their most recent versions
- GitHub actions (yml files): Updated following actions to their most recent versions:
- checkout@v1 -> checkout@v3
- setup-python@v2 -> setup-python@v4
- cache@v2 -> cache@v3
Added
- Added sourcery configuration (.sourcery.yaml)
- Added py.typed file into the package root folder and included it setup.cfg as package_data
- Python
Published by ClaasRostock over 3 years ago