Skip to content

Latest commit

 

History

5,150 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About

A modern, elegant approach to working with eOn.

Build

Pixi

We provide a pixi environment for reproducible builds:

pixi install

Then build and install:

pixi run bash -c "meson setup bbdir \
  --prefix=$CONDA_PREFIX --libdir=lib \
  --buildtype release --wipe 2>/dev/null \
  || meson setup bbdir --prefix=$CONDA_PREFIX \
  --libdir=lib --buildtype release"
pixi run meson install -C bbdir

The server is accessed through python -m eon.server. The eonclient binary is automatically made available in the activated environment.

Running Tests

Meson

This is the preferred method.

cd client
# in pixi, add --prefix=$CONDA_PREFIX --libdir=lib
meson setup bbdir --buildtype=debug -Dbuild_tests=true
meson test -C bbdir

Python (ASV Benchmarks)

Performance benchmarks use ASV with results posted on PRs via asv-perch:

# Validate benchmarks
pixi run bash -c "pip install asv && asv check"

# Quick local run
pixi run bash -c "asv machine --yes && \
  asv run -E 'existing:$(which python)' --quick"

Documentation

The published site is MyST markdown under docs/source, built with Sphinx (eondocs.org).

To schedule eonclient through AiiDA, install aiida-eon and see docs/source/user_guide/aiida.md. That page is the plugin landing in this tree. In-process Matter work is pyeonclient, not AiiDA.

Contributing

Run pre-commit before submitting pull requests:

uvx prek run --all-files

For best results, install the git hook:

uvx prek install

Testing

We have both Catch2 unit tests, and also ApprovalTests. For adding new approval tests, first build them with meson compile, run them to approve, and then re-run to make sure things pass with meson test.

License

BSD-3 clause.

Releases

Packages

Used by

Contributors

Languages