Registry / data / passagemath-objects

passagemath-objects

JSON →
library10.8.4pypypi✓ verified 80d ago

Core library for mathematical object infrastructure in the passagemath ecosystem. Provides base classes for Sage-like elements, parents, categories, coercion framework, and metaclasses. Part of the passagemath distribution (successor to SageMath components). Current version 10.8.4, supports Python 3.11-3.14. Released as part of passagemath v10.8.x series.

pip install passagemath-objects
INSTALL
IMPORT
SIG · PASSAGEMATH-OBJECT
P
passagemath-objects
datapythonv10.8.4
Install
Import
Disk
Pass rate
0/ 10
Env Coverage0 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v10.6.48 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
glibc
py 3.10
1/2 runs
1/2 runs
py 3.11
1/2 runs
1/2 runs
py 3.12
1/2 runs
1/2 runs
py 3.13
1/2 runs
1/2 runs
py 3.9
1/2 runs
1/2 runs
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Parent
from sage.structure.parent import Parent
from passagemath.objects.parent import Parent
Category
from sage.categories.category import Category
from passagemath.objects.category import Category
Morphism
from sage.categories.morphism import Morphism
from passagemath.objects.morphism import Morphism

Create a custom parent class with category support using passagemath-objects.

from passagemath.objects.parent import Parent from passagemath.objects.element import Element from passagemath.objects.category import Category class MyParent(Parent): def __init__(self): super().__init__(category=Category()) p = MyParent() print(isinstance(p, Parent)) # True
Debug
Known issues
breakingAll import paths changed from sage.* to passagemath.*. Code written for SageMath will not work.
fix
Replace sage structure imports with passagemath.objects.*
affects: >=10.0
deprecatedThe class `CategoryInfinite` is deprecated; use `Category` with appropriate finiteness parameter.
fix
Replace `CategoryInfinite()` with `Category(is_finite=False)`
affects: 10.8.0-10.8.4
gotchaCoercion model initialization requires explicit setup; default model raises ValueError if used directly without configuration.
fix
Call `CoercionModel()._init_coercion()` after creation or use `from passagemath.objects.parent import Parent` which sets it up automatically.
affects: >=10.0
gotchaMemory leaks may occur if elements are not properly garbage collected due to reference cycles in coercion caches.
fix
Use `gc.collect()` after cycles or call `Element._reset_cache()` periodically.
affects: all
Upgrade
Version history
10.8.4latest on PyPI · released Apr 20, 2026
Audit
Dependencies
passagemath-confrequiredConfiguration and global settings for passagemath
cypari2optionalPARI/GP integration for number theory objects
memory_allocatoroptionalEfficient memory allocation for large objects
Agent activity
7 hits · last 30 days
node
4
Resources
passagemath-objects — pip install passagemath-objects · libregistry