Release 1.5.0
See https://docs.lamin.ai/changelog/2025#db-1-5-0-bionty-1-3-2
What's Changed
- ✨ Refresh db token on expiration by @Koncopd in #2674
- ✏️ Improve installation hint for zarr by @namsaraeva in #2681
- ✅ Decrypt token inside RLS (adapt tests) by @Koncopd in #2680
- 🐛 Do not delete version family if user wants to retain store by passing
storage=False
toartifact.delete()
by @falexwolf in #2683 - ✨ Enable executing notebooks via
jupyter nbconvert --execute
by @falexwolf in #2684 - 🐛 Delete version family if user wants to retain store by passing
storage=False
toartifact.delete()
, but retain warning by @falexwolf in #2687 - ✨ Enable curating the index of a dataframe by @falexwolf in #2688
- ✅ Temp table based authentication (adapt tests) by @Koncopd in #2682
- 🐛 Fix
.using
with fine-grained access instances and permissions test by @Koncopd in #2697 - ⬆️ Fix downloading old ensembl genes by @sunnyosun in #2698
- ♻️ Allow passing
key
tosave_vitessce_config()
by @namsaraeva in #2694 - ✨ Can save csv artifacts in
DataFrameCurator
by @sunnyosun in #2696 - 🥅 Do not raise exceptions on problems with
copy_or_move_to_cache
withinArtifact.save
by @Koncopd in #2699 - 🐛 Fix
ordered_set
in curators by @sunnyosun in #2700 - ✏️ Fix typo in bio-registry guide by @sunnyosun in #2703
- ♻️ Avoid non-lazy loads of settings on import of
lamindb.models
by @Koncopd in #2704 - ♻️ Refactor annotating with inferred feature sets by @falexwolf in #2690
- ♻️ Execute curator examples and also show them in the curation guide by @falexwolf in #2706
- ♻️ Separate legacy curators from new curators by @falexwolf in #2707
- ♻️ Separate
CatManager
usage for.cat
attribute and as legacy interface by @falexwolf in #2708 - 🚸 Restore validation error messages, add their fine-grained testing, and prepare
var
refactor in curators by @falexwolf in #2709 - ♻️
AnnData
: enable explicit transposition invar
schema definition by @falexwolf in #2710 - 🥅 Catch and clarify RLS error on
Record.save()
by @Koncopd in #2715 - 🚸 Do not annotate with more than
n_max_records = 1000
by @falexwolf in #2713 - ♻️ Clearer naming conventions in the internal curator codebase by @falexwolf in #2717
- 📝 Prettify API reference docs, document
base
API by @falexwolf in #2719 - ♻️ Eliminate monkey patching of
django.db.models.QuerySet
anddjango.db.models.Manager
by @Koncopd in #2637 - 🔊 Fix modules warning in
.using
by @Koncopd in #2722 - 🚸 Enable passing the 12-char stem uid to
ln.track()
, detect renames of notebooks, better experience withnbconvert
execution by @falexwolf in #2718 - ✨ Enable to validate against nested dicts in
spatialdata
by @falexwolf in #2723 - 🚸 Fully functional
ULabel
subtype validation, better syntax for it by @falexwolf in #2726 - ⬆️ Update bionty by @sunnyosun in #2728
- ⬆️ Upgrade
lamindb-setup
by @fredericenard in #2729 - ♻️ Add
using
as an arg to theSchema
constructor by @falexwolf in #2705 - 🚚 Rename
components
keyword argument ofSchema()
toslots
by @falexwolf in #2727 - 🚸 Prettier
Schema.describe()
by @sunnyosun in #2731 - 🎨 Allow pass _skip_validation to ULabel by @sunnyosun in #2732
- 🚸 Handle schema updates decently by @falexwolf in #2733
- 🚸 Introduce a submodule for example schemas, further consolidate curation and schema code examples, refactor schema hashing, expand schema tests, reduce schema uid length from 20 to 16 by @falexwolf in #2737
- ✨ Allow to use
polars
inArtifact.open()
andCollection.open()
by @Koncopd in #2730 - ✨ Add
ArtifactQuerySet
with.load()
and.open()
and.mapped()
by @Koncopd in #2743 - 🚸 For artifacts, improve (1) bulk annotation with features + (2) queries by features by @falexwolf in #2740
- 🐛 Fix curating DataFrame index & 🚸 Automatically pass validation of ensembl gene IDs & ✨ add curator repr by @Zethson in #2742
- 🎨 Allow pass
_aux
toULabel
by @sunnyosun in #2744 - ♻️ Support dictionary-type features in bulk queries, handle clean up of dictionary-type feature values by @falexwolf in #2745
New Contributors
- @namsaraeva made their first contribution in #2681
Full Changelog: 1.4.0...1.5.0