saffier

The only ORM that you will ever need for python.

MIT License

Downloads
1.7K
Stars
58
Committers
4

Bot releases are hidden (Show)

saffier - Version 1.4.2 Latest Release

Published by tarsil 3 months ago

Changed

  • Add integration with the newly databasez 0.8.5+.
  • Internal refactor of the registry.

Fixed

  • CI integration.
saffier - Version 1.4.1

Published by tarsil 6 months ago

  • Support for list and tuples as a type for model_apps.
saffier - Version 1.4.0

Published by tarsil 6 months ago

Added

  • Support for model_apps inside the Migrate object allowing
    global discovery by application. This will make sure all apps will be properly
    inspected.
  • Add documentation about the new model_apps.

Changed

  • Upgrade internal requirements.
saffier - Version 1.3.7

Published by tarsil 8 months ago

Added

  • New lazy loading settings system making it more unique and dynamic working side by side with dymmond-settings.
saffier - Version 1.3.6

Published by tarsil 8 months ago

Changed

  • Update internal dymmond-settings minimum requirement.
saffier - Version 1.3.5

Published by tarsil 8 months ago

Changed

BREAKING CHANGE

Due to some internal compatibilities, Saffier is rolling back to SAFFIER_SETTINGS_MODULE
from SETTINGS_MODULE

  • SETTINGS_MODULE was renamed to SAFFIER_SETTINGS_MODULE.
saffier - Version 1.3.4

Published by tarsil 9 months ago

Changed

  • Update internal anyio dependency.
saffier - Version 1.3.3

Published by tarsil 9 months ago

Changed

  • Upgrade internal requirements.

Fixed

  • auto_now and auto_now_add on save() and update() wasn't only updating the
    field with auto_now.
  • Extraction of the default field for date and datetime.
saffier - Version 1.3.2

Published by tarsil 9 months ago

Fixed

saffier - Version 1.3.1

Published by tarsil 9 months ago

Fixed

  • Fix default for SETTINGS_MODULE if nothing is provided.
saffier - Version 1.3.0

Published by tarsil 9 months ago

Added

  • Added new experimental activate_schema for tenant models using the using queryset operator.
  • Support for ManyToMany to accept strings to the to attribute.
  • Support for new queryset operations only() and defer.
  • Intenal ModelProxy allowing to manipulate objects querysets such as only and defer.
  • Support for secrets and secret queryset.

Changed

Breaking changes

Saffier now uses Dymmond Settings which this simlpy affects the way the
settings module is loaded. Prior to version 1.3.0 it was like this:

SAFFIER_SETTINGS_MODULE=...

From version 1.3.0 is:

SETTINGS_MODULE=...

The rest remains as it. More information about how to use it in the official documentation.

Fixed

  • Multiple join tables were not generating the complete join statement when using select_related.
  • Fixed metaclass for TenantMixin making sure all the queries are correctly pointing
    to the right tenant.
  • When generating a many to many through model, the maximum length is enforced to be 63 characters.
  • Object discovery for intellisense.
  • Allow ManyToMany to also accept a string as a parameter for the to.
saffier - Version 1.2.0

Published by tarsil 10 months ago

Added

  • Support for sync queries. This will enable Edgy to run in blocking frameworks like
    Flask, bottle or any other by using the newly added run_sync.

Fixed

  • Fixed multi tenancy from contrib.
  • Fixed using where schema name was raising a not found reference for foreign key
    when querying the tenant.
saffier - Version 1.1.0

Published by tarsil 11 months ago

Added

  • Support for or_, and_ and not_ for SQLAlchemy style queries and Edgy syntax sugar queries.

Changed

  • inspectdb is now handled by an independent isolated called InspectDB.
  • Updated internal support for databasez 0.7.0 and this fixes the URL parsing errors for complex passwords
    caused by the urlsplit.

Fixed

  • server_default does not raise a FieldValidationError.
  • server_default added as validation for nullable.

!!! Warning
This could impact your migrations, so the advise would be to generate a new migration
after upgrading to the new version of Edgy to make sure the database reflects the proper
nullables/non-nullable fields.

saffier - Version 1.0.1

Published by tarsil 12 months ago

Changed

Fixed

  • Database object docstring.
saffier - Version 1.0.0

Published by tarsil about 1 year ago

Added

  • Support for Python 3.12

Changed

  • Update base requirements.
saffier - Version 0.18.0

Published by tarsil about 1 year ago

Added

  • New Prefetch support allowing to simultaneously load nested data onto models.
  • New Signal support allowing to "listen" to model events upon actions being triggered.

Changed

  • Updated pydantic and alembic
saffier - Version 0.17.1

Published by tarsil about 1 year ago

Fixed

  • DeclarativeModel generating internal mappings names was breaking for class objects.
saffier - Version 0.17.0

Published by tarsil about 1 year ago

Added

  • Multi tenancy support by updating the registry and allowing to create the multi schema.
  • Add new using(schema=...) and using_with_db(database=..., schema=...) to querysets.
  • Add support for create_schema and drop_schema via registry.
  • Add support to get_default_schema from the registry.schema.
  • Documentation for tenancy.
  • Improved the documentation for schemas.
  • Added a new parameter extra to registry allowing to pass a Dict like object containing more database connections. This is an alternative to the registries.
  • Improved documentation for registry explaining how to use the extra parameters.
    and query them.
  • Added a new ConnectionConfig TypedDict for the registry extra.

Changed

  • Update the build for Model and ReflectModel to allow passing the schema.
saffier - Version 0.16.0

Published by tarsil about 1 year ago

Changed

  • Updated versions of the requirements to the latest.
  • Internal file structure
  • Breaking change. Before for fields the import was from saffier.db.models.fields import ... and that
    was now changed to from saffier.db.fields import ...

Added

  • values() and values_list() to the queryset.

Fixed

  • ConfigDict in settings.
saffier - 0.15.0

Published by tarsil over 1 year ago

Added

  • SaffierExtra class allowing the use of Saffier tools without depending on the Migrate object.