Bamboost

Migration Guide

Starting from version 0.10.0, bamboost breaks compatibility with all previous (alpha) versions. Data collected with the alpha versions is not picked up by the new code and you will need to use the old versions to manage that data.

The new and old versions do not interfere and can be installed and used side by side.


Migrating from 0.10.x to 0.11.x (and later)

Version 0.11 changes the index database schema and file name. The old database (bamboost-next.sqlite) is not read by 0.11.x. A one-time migration copies your existing index into the new schema.

Upgrade the package

pip install --upgrade bamboost
# or
uv add bamboost

Run the migration command

bamboost migrate

This reads ~/.local/share/bamboost/bamboost-next.sqlite (the 0.10.x database) and copies all collections, simulations, and parameters into the new ~/.local/share/bamboost/bamboost.0.11.sqlite file.

If the old file is not found, the command exits with a clear message and nothing is changed.

Verify the result

bamboost list

All your previously indexed collections should appear. If any collections are missing, re-run the scanner:

bamboost scan

Changes from alpha to 0.10.x

Notation

Simulation UIDs now use the format <collection_uid>:<simulation_name>.

The collection identifier file is now .bamboost-collection-<UID>.

Writing data

The writer pattern changed significantly. Use SimulationWriter (obtained via coll.add(...) or sim.edit()) to write data.

# Old (alpha)
sim.write("field", data)

# New (0.10+)
sim = coll.add(name="my-sim", parameters={"Re": 1000})
step = sim.data.require_step(value=t)
step.add_field("field", data)

Accessing data

Series data is now accessed through sim.data (a Series object) instead of direct group traversal.

# default series
sim.data["field"][5]

# other series
sim.require_series("other")["field"][5]

Collection identifier files

Collections are now identified by a YAML file named .bamboost-collection-<UID> instead of the old marker format. Existing collections will be picked up correctly as long as you run bamboost scan after upgrading.

On this page