Skip to content

Releases: typeddjango/django-stubs

4.2.0

27 Apr 12:45
87f48b3
Compare
Choose a tag to compare

Headline changes

  • New version scheme: django-stubs will now use the same major.minor version number as Django.
    Our Django support policy remains the same: Older versions are still partially supported, and we will continue supporting them as long as it's not a maintenance burden.
  • Django 4.2: This release adds initial support for some new features in 4.2.
    There is still work to do, feel free to open issues or submit pull requests!
  • mypy 1.2.0: Recommended mypy version updated to 1.2.0
  • Compatibility: This is the last release to support Python version 3.7 and Django 4.0.

Django 4.2 additions

  • Added django.utils.http.content_disposition_header() function by @alexmv in #1448
  • Add stubs for new async Model methods by @bigfootjon in #1443

Other stubs additions

  • Added Query.join() method by @RyanWalker277 in #1404
  • Added Query.where attribute by @RyanWalker277 in #1407
  • Added Model methods date_error_message(), get_constraints(), serializable_value(), prepare_database_save()
    Added app_label= argument to AdminSite.get_app_list() by @RyanWalker277 in #1413
  • Added BaseConstraint.default_violation_error_message attribute by @RyanWalker277 in #1419
  • Added BaseUserCreationForm class by @monosans in #1424
  • Improve Form, FormSet, BoundField, ErrorDict and ErrorList rendering types.
    Added IntegerField.step_size attribute and argument by @monosans in #1427
  • Added type JSONObject.__init__() constructor by @realsuayip in #1430
  • Added RenameIndex migration from Django 4.1 by @karamanolev in #1438
  • Added STORAGES setting by @federicobond in #1439

Stubs fixes

  • Allow lazy translation strings for constraint violation_error_message arguments, attributes by @realsuayip in #1418
  • Allow setting SECRET_KEY to be str or bytes, add SECRET_KEY_FALLBACKS, update PasswordResetTokenGenerator by @christianbundy in #1411
  • Allow passing BaseExpression to UniqueConstraint.expressions by @realsuayip in #1420
  • Allow middlewares to return StreamingReponse by @rik in #1421
  • Removed Manager.delete() method which is not accessible on Manager by @mschoettle in #1431
  • Allow lazy translation strings in email contexts by @realsuayip in #1442
  • Fixed aiterator() method of QuerySet and BaseManager by @kjagiello in #1449
  • Syndication Feed items do not need to be Model instances by @bigfootjon in #1444

Mypy plugin fixes

  • Allow custom Manager and QuerySet classes to be inner class of Model by @federicobond in #1392
  • Fixed handling of ForeignKey in abstract models when using to= with a string reference by @Kircheneer in #1436
  • Handle repeated field lookups in calls to QuerySet.values_list() by @leamingrad in #1441
  • Handle Model relations created with ForeignObject/ForeignObjectRel by @Photonios in #1451

Other improvements

  • Don't require tomli dependency on Python>=3.11 by @monosans in #1423

Tests & CI

  • Add tests for QuerySet.select_related returning queryset type by @flaeppe in #1400
  • Add test for overriding User model manager by @flaeppe in #1401
  • CI: Add Django 4.2 to typecheck and update other Django versions by @intgr in #1455
  • CI: Stop testing with Python 3.7 by @intgr in #1453
  • Run CI with Django 4.2 and declare support in package metadata by @intgr in #1452

Dependencies

Deferred for next release

  • Added decorators.AsyncGetResponseCallable Protocol, but is not yet used anywhere by @RyanWalker277 in #1425
  • Added BaseModelMeta for typing Model inner Meta class by @intgr in #1375
  • Rename BaseModelMeta to TypedModelMeta and document it by @intgr in #1456

New Contributors

Full Changelog: 1.16.0...4.2.0

1.16.0

16 Mar 14:26
6a850f6
Compare
Choose a tag to compare

What's Changed

This release updates recommended mypy version to 1.1.x.

Stubs fixes

Stubs additions

Housekeeping

  • Update recommended mypy & CI to 1.1.1, update MultiValueDict by @intgr in #1391
  • Release script: Also clean build directories before a build by @intgr in #1378
  • Version 1.16.0 release by @intgr in #1396

New Contributors

Full Changelog: 1.15.0...1.16.0

django-stubs-ext 0.8.0

15 Mar 17:22
dd92489
Compare
Choose a tag to compare

What's Changed

  • Make BaseConnectionHandler generic in monkeypatching by @adambirds in #1349
  • Introduce QuerySetAny type for QuerySet isinstance checks by @PIG208 in #1199
  • Remove unintentional re-exports by @intgr in #1309

Housekeeping

  • Prepare django-stubs-ext 0.8.0 release by @intgr in #1395

1.15.0

22 Feb 10:51
74c39d5
Compare
Choose a tag to compare

This release updates recommended mypy version to 1.0.x. No changes in Django version compatibility.

Some re-exports that were unintentional have been removed. If you get errors like error: Module "django.core.cache" has no attribute "ConnectionProxy" (for any import path), you probably need to change the module you are importing e.g. ConnectionProxy from. These re-exports were never intentional and are not stable across Django versions.

In addition to code contributions, I'd like to thank @ngnpope, @sobolevn, @ljodal, @christianbundy, @mschoettle for helping out with reviews.

What's Changed

Fixes

Django 4.2 compatibility

Documentation

  • Use supported version in typecheck_tests command in Contributing guide by @adamantike in #1251

Housekeeping

Dependencies

New Contributors

Full Changelog: 1.14.0...1.15.0

1.14.0

26 Jan 10:44
5338769
Compare
Choose a tag to compare

What's Changed

This release updates recommended mypy version to 0.991 and fixes a few regressions in the last release. No changes in Django version compatibility.

In addition to code contributions, I'd like to thank @flaeppe, @ngnpope and @sobolevn who helped out with reviews.

Fixes for regressions from last version

  • Fix some errors in GeoDjango stubs by @ciscorn in #1335
    • Fixes "OGRGeometry" has no attribute "__iter__" (not iterable) #1333
    • Fixes error: "bytes" has no attribute "tobytes" #1336
  • Allow returning Response from admin @action callbacks by @christianbundy in #1331
    • Fixes Recent change to admin action decorators bans return values #1330
  • Allow int, bool for data argument in test.client.Client.get() by @nils-van-zuijlen in #1345
    • Fixes Recent changes to test.client.Client.get() do not accept valid data types #1327

Mypy plugin fixes

  • Fix crash when filtering on implicit pk field on abstract model by @flaeppe in #1328
  • Suppress FieldDoesNotExist raised from attribute on class definition by @flaeppe in #1329
  • Fix crash when FK references unknown 'app_label' by @flaeppe in #1342

Enhancements

Housekeeping, dependencies

New Contributors

Full Changelog: 1.13.2...1.14.0

1.13.2

21 Jan 12:37
7d50e5b
Compare
Choose a tag to compare

What's Changed

Mypy plugin fixes

  • Avoid index errors that cause Mypy to raise Internal Error by @jimmylai in #1317

Strings/translations

  • Enhance support for gettext_lazy in AdminSite and ModelAdmin by @rclement in #1296
  • Support lazy strings for form errors and ValidationError by @mschoettle in #1319
  • Add support for send_mail subject using gettext_lazy by @mschoettle in #1304
  • Add FAQ entry regarding StrPromise to README by @mschoettle in #1320

GeoDjango

Decorators

  • Fix @classproperty decorator by @intgr in #1287
  • Improve types of django.contrib.admin.decorators by @flaeppe in #1267
  • Improve ModelAdmin and decorator hints and attributes, add tests by @intgr in #1292
  • Improve system check registry hints by @intgr in #1249
  • Fix override_settings decorator typing by @martinlehoux in #1322

Other type stubs changes

Housekeeping

CI

Dependency updates

New Contributors

Full Changelog: 1.13.1...1.13.2

Version 1.13.1

08 Dec 09:19
090aea6
Compare
Choose a tag to compare

What's Changed

Fixes

  • Fix hasattr(settings) AssertionError with mypy 0.990 by @intgr in #1239

Housekeeping

Continuous integration

Dependency updates

New Contributors

Full Changelog: 1.13.0...1.13.1

Version 1.13.0 and django-stubs-ext@0.7.0

03 Nov 10:28
d489959
Compare
Choose a tag to compare

What's Changed

Read more

Release django-stubs@1.12.0

17 Jun 15:16
d6a9a4e
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: https://github.com/typeddjango/django-stubs/compare/v1.11.0...django-stubs@1.12.0

Release django-stubs-ext@0.5.0

17 Jun 15:12
d6a9a4e
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: https://github.com/typeddjango/django-stubs/compare/v1.11.0...django-stubs-ext@0.5.0