0.14.1 fix imports in .sqlalchemy

This commit is contained in:
Yusur 2026-11-06 18:44:46 +01:00
parent 985c3b1d8b
commit 2e16bc82ce
5 changed files with 14 additions and 4 deletions

View file

@ -3,7 +3,7 @@ version: 2
build:
os: ubuntu-24.04
tools:
python: "3.13"
python: "3.14"
sphinx:
configuration: docs/conf.py

View file

@ -1,5 +1,9 @@
# Changelog
## 0.14.1
* Fixed some imports in `sqlalchemy` module
## 0.14.0 "Claims & Columns"
* Added `ast` module

View file

@ -41,7 +41,7 @@ from .color import OKLabColor, chalk, WebColor, RGBColor, LinearRGBColor, \
from .mat import Matrix
from .argparse import LetterSubparsers
__version__ = "0.14.0"
__version__ = "0.14.1"
__all__ = (
'ColorFormatter',

View file

@ -158,7 +158,7 @@ from .asyncio import SQLAlchemy, async_query, SessionWrapper, AsyncSelectPaginat
from .orm import (
id_column, snowflake_column, match_column, match_constraint, bool_column, declarative_base, parent_children,
author_pair, age_pair, bound_fk, unbound_fk, want_column, a_relationship, BitSelector, secret_column, username_column,
ascii_column, i4_column, now_column,
ascii_column, i4_column, now_column, email_column,
)
try:
@ -173,7 +173,7 @@ __all__ = (
'match_column', 'match_constraint', 'bool_column', 'parent_children',
'author_pair', 'age_pair', 'bound_fk', 'unbound_fk', 'want_column',
'a_relationship', 'BitSelector', 'secret_column', 'username_column',
'ascii_column', 'i4_column', 'now_column',
'ascii_column', 'i4_column', 'now_column', 'email_column',
# .asyncio
'SQLAlchemy', 'AsyncSelectPagination', 'async_query', 'SessionWrapper'
)

View file

@ -102,6 +102,12 @@ match_constraint.TEXT_DIALECTS = {
## Type decorators for match_column and ascii_column follow
class MatchString(TypeDecorator):
"""
XXX if you see this type in an alembic migration this is an error. Please go to the migration file and fix the migration manually,
by replacing suou.sqlalchemy.orm.MatchString with sa.String.
In normal circumstances, this should be a VARCHAR with a CHECK constraint.
"""
impl: TypeAlias = String
def __init__(self, length: int, regex: str | re.Pattern, case: StringCase = StringCase.AS_IS, *args, **kwargs):