Skip to main content

AIBS Informatics Core

Docs Build Status codecov


Overview

The AIBS Informatics Core library provides a collection of core functionalities and utilities for various projects at the Allen Institute for Brain Science. This library includes modules for handling environment configurations, data models, executors, and various utility functions.

Modules

Utils

The utils module provides various utility functions and classes to facilitate common tasks such as logging, hashing, and working with dictionaries and strings.

  • file_operations: Functions for working with files and directories.
  • decorators: Decorators for adding functionality to functions and methods.
  • hashing: Functions for generating hashes.
  • json: Functions for working with JSON data.
  • logging: Utilities for setting up and managing logging.
  • modules: Functions dealing with modules and imports.
  • multiprocessing: Functions for working with multiprocessing.
  • os_operations: Functions for working with the operating system.
  • time: Functions for working with time.
  • units: Functions for converting units.
  • version: Functions and classes for handling version numbers.
  • tools.dicttools: Functions for manipulating dictionaries.
  • tools.strtools: Functions for manipulating strings.

Models

The models module defines protocols and base models used for serialization and deserialization of data. This module provides base classes for creating data models and utilities for working with data models.

There are a few base classes that can be used to create data models:

  • ModelProtocol: A protocol defining the serialization/deserialization interface.
  • ModelBase: An abstract base class implementing the serialization protocol.
  • PydanticBaseModel: The primary base class for creating data models (backed by Pydantic).

Executors

The executors module provides base classes and utilities for creating and running executors. Executors are responsible for handling specific tasks or requests. They allow for validating inputs/outputs based on data models.

  • BaseExecutor: A base class for creating executors.
  • run_cli_executor: A utility function for running executors from the command line.

Env

The env module provides a concept of EnvBase which allows for creating isolated namespaces based on the type and name of environment:

env_base = EnvBase('dev-projectX')
env_base.prefixed('my_resource', 'blue')  # 'dev-projectX-my_resource-blue'

Collections

The collections module provides various collection classes and utilities for working with collections of data.

  • Classes
    • DeepChainMap: A class for creating recursive capable deep chain maps.
    • Tree: A subclass of dict for creating tree structures from sequences.
    • ValidatedStr: A class for creating validated strings based on regex patterns.
  • Mixins
    • PostInitMixin: A mixin class for handling post-initialization tasks.
    • PydanticStrMixin: A mixin for Pydantic models that provides custom string validation.
  • Enums
    • BaseEnum: A base class for creating enums.
    • OrderedEnum: A base class for creating ordered enums.
    • StrEnum: A base class for creating string enums.
    • OrderedStrEnum: A base class for creating ordered string enums.

Contributing

Any and all PRs are welcome. Please see CONTRIBUTING.md for more information.

Licensing

This software is licensed under the Allen Institute Software License, which is the 2-clause BSD license plus a third clause that prohibits redistribution and use for commercial purposes without further permission. For more information, please visit Allen Institute Terms of Use.

Metadata

Release files for aibs-informatics-core 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aibs-informatics-core 1.1.0
File Size Uploaded Provenance Actions
aibs_informatics_core-1.1.0.tar.gz 81.6 kB With provenance Details for aibs_informatics_core-1.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for aibs-informatics-core 1.1.0
File Interpreter ABI Platform Actions
aibs_informatics_core-1.1.0-py3-none-any.whl Python 3 none any Details for aibs_informatics_core-1.1.0-py3-none-any.whl

Total release size: 182.4 kB

Release files / aibs_informatics_core-1.1.0.tar.gz

Download URL aibs_informatics_core-1.1.0.tar.gz
Size 81.6 kB
Tags Source
SHA-256 checksum
How to use checksums
98682e737515aeed4cb471ead3b42b414cba93fa2a95f6f3040f2f991795dd89
BLAKE2b-256 checksum
How to use checksums
7d119dc03e0dd7133f0dea4b534192ec6c135ee1559b6bd769e9a51f8cabe13e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 14, 2026.

Transparency log

Release files / aibs_informatics_core-1.1.0-py3-none-any.whl

Download URL aibs_informatics_core-1.1.0-py3-none-any.whl
Size 100.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8627ebc4a6ab30516c54d7fbf25635636be10120714df8d335d346880ba654ce
BLAKE2b-256 checksum
How to use checksums
0cbc7cc5203a52b98bffe671069969bfe3ea96c671f4bb0967518d2bd2ec7bbd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 14, 2026.

Transparency log

Security for aibs-informatics-core 1.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for aibs_informatics_core-1.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 14, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page