Skip to content

Releases: cherab/imas

v0.3.0

30 Jan 08:14
08c398b

Choose a tag to compare

Added

  • Implement Bolometry Observer functionality
  • Add new notebook for creating emission profiles
  • Add *.pyi files for cython sources
  • Add overload decorator for better type hinting
  • Add ultraplot package into pixi default environment

Changed

  • Add pyrefly package for type checking (still experimental)
  • Refactor load_equilibrium and load_magnetic_field_data to use dataclasses
  • Use ultraplot for plotting in examples and notebooks

Fixed

  • Fix num_toroidal parameter handling in load_unstruct_grid_2d function
  • Fix typo in warning message in load_profiles.py

v0.2.1

18 Nov 22:38
5a036bd

Choose a tag to compare

Added

  • Add some missing type hints.

Changed

  • Migrate docstring linting/formatting from numpydoc and docformatter to ruff
  • Migrate numpydoc Python API reference to napoleon extension for Sphinx (to enjoy type hinting support)
  • Update docstrings to be compatible with the napoleon style

Fixed

  • Fix values assignment in load_equilibrium_data function (convert to python types)
  • Bug fix in load_unstruct_grid_2d function (incorrect cells.append(cell) line)

Removed

  • Remove numpydoc dependency (migrated to ruff for docstring linting as well)
  • Remove docformatter dependency (migrated to ruff for docstring formatting as well)

v0.2.0

04 Nov 10:41
a6d02b3

Choose a tag to compare

Added

  • 3D unstructured mesh support with tetrahedralization functionality
  • Documentation sources and Jupyter notebooks for demos
  • GitHub Actions workflow for documentation build and deployment
  • Dataset utilities and fetchers using pooch and rich libraries
  • Unit tests for loading plasma objects and data fetching functionality
  • Test coverage reporting with pytest-cov
  • VSCode settings for Python testing configuration
  • Support for extended unstructured 2D grids with triangular mesh plotting
  • OpenMP support for parallel compilation

Changed

  • 💥 BREAKING: Minimum Python version requirement increased to 3.10+
  • Build system migrated from setuptools to hatchling with hatch-vcs
  • Dependencies updated to use imas-python[netcdf] instead of separate packages
  • Improved documentation structure and installation instructions
  • Enhanced type checking configurations with mypy and basedpyright
  • Refactored codebase to use src/ layout
  • Updated docstrings formatting and improved code organization

Fixed

  • Grid subset name handling in edge plasma mesh demo
  • String concatenation in error and warning messages
  • Access to z_min and z_max attributes in get_ion_state function
  • Species attribute references updated from label to name for DD4
  • Toroidal magnetic field component renamed from b_field_tor to b_field_phi
  • Bug in UnstructGrid2D pickling with numpy array setflags()
  • Incorrect transposition in get_cylindrical_velocity_interpolators()
  • Branch name references from 'main' to 'master' in CI workflows
  • macOS x86_64 compilation support with appropriate LDFLAGS

Removed

  • Remove support for python 3.9 and earlier
  • Obsolete build, clean, and test scripts replaced by pixi tasks
  • setup.py file (build configuration moved to pyproject.toml)
  • imas-data-dictionaries dependency
  • Unused ruff target settings