Added
- `null-field` or `nf` parameter for makemigrations/revision.
- Add `FORCE_FIELDS_NULLABLE` ContextVar.
- Add `CURRENT_FIELD_CONTEXT` ContextVar.
- Add automigrations (migrations capsuled in Registry).
Changed
- The default migration templates allow now to use complex defaults for migrations.
- Fields must use get_columns_nullable instead of ColumnDefinitionModel null. for determining if the columns should be nullable.
- For model `save` and `update` the values can be callables which are evaluated.
- Streamline ContentTypeField in using a parameter-less default function. Use `CURRENT_FIELD_CONTEXT` ContextVar field for referencing the owner.
- Fail when specifying a server_default for ForeignKey, ManyToMany, FileField, ImageField. This is not possible.
- Internals: _insert and _update have now a different signature.
Fixed
- ForeignKeys aren't required to be saved models when passed.
- Cli command revision takes now also the arg argument.
- Revisioning works now with relative revisions with - (e.g. -2).
- Downgrades are now possible with unique_together. Build a constraint name from the fields.
- `is_partial` was incorrectly set to always `False` for the model.save update path.
- FileFields could have make problems when migrating.
- Differing ruff versions and rules between `hatch fmt` and `pre-commit`.