change(types): canonical datetime helpers and mapped datetime types

Open
#17 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 2 days

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
45/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Quiet
Tech stack
python, sqlalchemy

Research direction

Start by reading the datetime helpers exposed through tigrbl.types and their legacy imports in tigrbl.orm.mixins, then locate the DateTime and TzDateTime definitions. Run the type, ORM mapping, serialization, and migration tests. Done means the canonical imports work, legacy imports warn but remain functional for the stated window, mapped declarations need no explicit field specs, and timezone semantics are preserved.

Written by the indexing model from the issue text.

Description

enhancement tigrbl-orm tigrbl-types

Origin

Migrated from swarmauri/swarmauri-sdk#4753 because Tigrbl is maintained in this repository.

Scope

  • expose tzutcnow and related datetime helpers from the supported tigrbl.types surface;
  • deprecate legacy imports from tigrbl.orm.mixins with a documented removal window;
  • make DateTime and TzDateTime usable in Mapped[...] without an explicit field specification by consistently declaring py_type=datetime.datetime;
  • preserve the semantic distinction between timezone-naive and timezone-aware values.

Acceptance criteria

  • Canonical helper imports work from tigrbl.types.
  • Legacy mixin imports warn and remain functional for the stated compatibility window.
  • DateTime and TzDateTime work in mapped declarations without explicit field specs.
  • Schema/database behavior preserves timezone semantics.
  • Type, ORM mapping, serialization, and migration tests pass.

Implementation breakdown

  • #44 handles the public UTC helper exports. Keep the compatibility window, deprecation warnings, ORM inference, and timezone round trips in this parent issue.
Dominant language
Python
Stars
3
Forks
1
Avg merge
1d 6m
Merged PRs (30d)
13

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from tigrbl/tigrbl

All issues in tigrbl/tigrbl

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.