Skip to content

Releases: django-salesforce/django-salesforce-agpl

Django v5.1 support

10 Oct 08:54
Compare
Choose a tag to compare

When you're ready to use django-salesforce with Django v5.1, please start a GitHub Sponsorship. You'll receive a license key.

The most important visible change is Django v5.1 support.

What is changed

  • Add: Support for Django 5.1
  • Change: The cursor rollback() method log messages are silenced by default
    because they are mostly anoying in tests. They can be enabled again if
    settings.DATABASES['salesforce']['OPTIONS']['WARNING_ON_ROLLBACK'] == True
  • Changes where users will not know a difference:
    • Refactored the backend.query to use consistent data types internally.
    • Checked a development version of Django is really used by "tox -e djdev"
    • Fix introspection for Salesforce API 62.0 Winter '25
      (skip introspection of ...Event object that is not a table)

Improved query compiler

27 May 22:07
Compare
Choose a tag to compare

The main new features are in the improved query compiler

  • Remove: the old Python 3.7
  • Remove: the code for Django 2.0
  • Fix: many issues in the query compiler in edge cases:
    • fix a query with offset, but without a limit (NotImplementedError)
    • fix a '__range' lookup on a field of custom foreign key object (SalesforceError)
    • fix a '=null' lookup. It worked probably always correctly, but the old implementation was different from standard lookups. It made it impossible to distinguish it from unsupported queries
  • Add: The query compiler is now much more precise. Most of unsupported queries will
    write a warning before they are tried compiled. This is how users have
    discovered some functional queries in the past.
    No regression is known that a previously correct query would write a warning.
  • Add: Support for date and datetime lookup by year, quarter, month, day, week_day, hour
    e.g. group this year by month:
    .filter(date__year=2024).value('date__month').annotate(total=Sum('amount'))
  • Add: The method .sf(minimal_aliases=True) is not necessary
    for ContentDocumentLink .filter(...); #259
  • Fix: Compile correctly: .filter(related_model__field__in=...) Fix #302
  • Fix: Prepare tests for Salesforce API 61.0 Summer '24
  • Add: Introspect Salesforce fields of type Formula to sf_formula="..." parameter

Fixed a different homepage URL for django-salesforce-agpl Latest

05 Mar 23:41
Compare
Choose a tag to compare

Fixed a different homepage URL for django-salesforce-agpl

It is important for PyPI metadata, but the installed code is the same as in version v5.0.1

Support for db_default=... for defaults generated by Salesforce

05 Mar 10:53
Compare
Choose a tag to compare
  • Add: Support for db_default field option in Django 5.0. It allows a seamless
    support of the defaultedOnCreate counterpart in Salesforce.
  • Add: Support for Salesforce API 60.0 Spring '24.
  • Change: Values of FloatField are now really float, not Decimal as previously.
  • Fix: Compatibility with the current django-debug-toolbar #322
  • Fix: Introspection inspectdb of custom editable name fields #308
  • Add: FloatField is used by inspectdb for some metadata with negative decimal places
    that are new in API 60.0.
  • Change: A license code is required also in the first half of lifetime of a LTS version
    unless the AGPL licence is accepted.
    Django 4.2 LTS will be unlocked together with unlocking 5.0 in August 2024
    in Django-salesforce 5.1 release.
  • Change: License code validity may not transfer to the next django-salesforce version
    if sponsorship ended.

Django v5.0 support for project sponsors

09 Dec 17:25
Compare
Choose a tag to compare

This release contains mostly a series of small changes to enable Django v5.0 support.

It also makes Django 4.2 support available to all users.

What's Changed

Django v4.2 support

04 Jul 14:01
Compare
Choose a tag to compare

As part of this release, we're beginning a two-tiered licensing process to encourage sponsorship from users who run this library in a commercial context. All sponsorship dollars go directly to the developer and support continued features and maintenance.

When you're ready to use django-salesforce with Django v4.2, you have a choice between:

What's Changed

  • Add: Basic diagnostics after installation can be done by command
    python manage.py check --database=salesforce
  • Change: Use with Django 4.2 requires an enterprise license key.
  • Add: Support for Django 4.2
  • Use API 58.0 Summer '23
  • Add: Support for Django Database caching #315
  • Fix: Configurable max introspected pick-list size
    SF_MAX_INSPECTDB_PICKLIST_LENGTH #312
    Some people need to introspect huge picklists, some don't want.

New Contributors

Full Changelog: django-salesforce/django-salesforce@v4.1...v4.2