Edgy

Latest version: v0.30.0

Safety actively analyzes 725439 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 5 of 10

0.19.1

Fixed

- Migration issues with ManyToMany fields.
- Wrong UUIDField type.
- Passing options from Migrate to the alembic context.

0.19.0

Added

- New `SET_DEFAULT`, and `PROTECT` to `on_delete` in the ForeignKey.
- New `through_tablename` parameter for ManyToMany.

Removed

- `__db_model__` is removed. Replaced by registry = False.

Changed

- Allow setting registry = False, for disabling retrieving the registry from parents.
- Removed unecessary warning for ManyToMany.
- Add warnings for problematic combinations in ForeignKey.
- Make QuerySet nearly keyword only and deprecate keywords not matching function names.
- Clone QuerySet via `__init__`.
- Make select_related variadic and deprecate former call taking a Sequence.
- Improved QuerySet caching.

Fixed

- Multi-column fields honor now `column_name`. This allows special characters in model names.

0.18.1

Changed

- Cleanup Model inheritance: Database related operations are put into a mixin. The customized metaclass is moved from EdgyBaseModel to `edgy.Model` as well as some db related ClassVars.
- `multi_related` is now a set containing tuples (from_fk, to_fk). This can be used to identify fields used by ManyToMany fields.
- Deprecate `is_multi`.
- Deprecate `parents`. There are no users, it was undocumented and uses are limited.

Fixed

- Non-abstract through-models wouldn't be marked as many to many relations.
- Issues related with the Edgy shell initialization.

0.18.0

Added

- ComputedField.
- Permission template.
- `reverse_clean` for ForeignKeys.
- Expanded filter methods of querysets (can pass now dict and querysets).
- Properly scoped `with_tenant` and `with_schema`.

Changed

- Managers use now instance attributes (database, schema).
- Expose `as_select` instead of `raw_query`.
- `model_fields` contain now the fields so we can actually use the pydantic magic.
- BREAKING: deprecate `set_tenant` and remove manager hack. This way the tenant scope could leak. Use `with_tenant` instead.

Fixed

- `select_related` works across ManyToMany fields.
- `select_related` couldn't handle multiple pathes to the same table.
- `select_related` would remove valid model instances because of non-existent related objects.
- Fix identifying clashing column names in joins, so every model gets its right parameters.
- Dependency tracking for join, so it doesn't depend on the order of `select_related`.
- `select_related` entries work in any order and don't overwrite each other.
-`only` and `defer` work on `select_related`.
- Autogenerated `id` wasn't added in model_dump.
- Tenants worked only till the first query.

Breaking changes (upgrade path)

python
set_tenant("foo")


Becomes now

python
with with_tenant("foo"):
...



python
activate_schema("foo")
...
deactivate_schema()


Becomes now

python
with with_schema("foo"):
...

0.17.4

Fixed

- `model_dump_json` returns right result.
- `show_pk=False` can now be used to disable the inclusion of pk fields regardless of `__show_pk__`.
- `__setattr__` is called after insert/update. We have transform_input already.

0.17.3

Fixed

- Lazy ManyToMany fields.

Page 5 of 10

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.