All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
0.18.13-beta.0 (2023-09-13)
0.18.13-beta1.0 (2023-09-13)
0.18.12 (2023-09-08)
0.18.11 (2023-07-16)
0.18.10 (2023-06-02)
0.18.10-beta.1 (2023-06-02)
0.18.10-beta.1 (2023-06-02)
0.18.10-beta.0 (2023-05-30)
0.18.9 (2023-02-09)
0.18.8 (2023-02-01)
0.18.8-beta.1 (2023-01-27)
0.18.8-beta.0 (2022-11-22)
0.18.7 (2022-11-08)
0.18.6 (2022-11-07)
- Fix unexpected ordering after
values()
/values_list()
followed byorder_by()
. (09ce0e0), closes #655 #656
0.18.5 (2022-10-12)
0.18.4 (2022-07-22)
- Update django compatibility (582b612)
0.18.3 (2022-07-19)
- Remove six (old compat layer for python2) (86b67c2)
0.18.3-beta.1 (2022-07-13)
- dev: Migrate to pytest (d3e2396)
0.18.3-beta.0 (2022-07-10)
0.18.2 (2022-05-15)
0.18.1 (2022-05-15)
0.18.0 (2022-05-14)
- Replaced
VERSION
in tuple format by__version__
as a string
- Add django version check for default_app_config (79d2e08)
- Fix django version detect during install (876f2e7)
- Store version as plain text file to simplify bumping (#636) (6b4bb73)
0.17.7 (2022-05-04)
0.17.6 (2022-04-29)
0.17.5 (2022-01-30)
0.17.4 (2022-01-28)
0.17.3 (2021-06-28)
0.17.2 (2021-05-31)
- docs: Fixed legacy python 2 print statements (10ec4ed)
- MultilingualQuerySet: Make _clone signature match default django _clone (c65adb0), closes #483
0.17.1 (2021-04-15)
0.17.0 (2021-04-15)
- Add Django 3.2 support
0.16.2 (2021-02-18)
- Fix loading for Inline Admin (c8ea228)
0.16.1 (2020-11-23)
- missing jquery operator (7c750de)
0.16.0 (2020-10-12)
- js: It's 2020 already, drop backward compatibility with jquery-ui 1.10.
- tabbed-translation-fields: Make tab with errors visible by default. (4c2e284)
-
Fix error detection; add red dot for tab with errors. (9a93cf6)
-
dev: Fix install in editable mode. (aaa2dcf)
-
js: It's 2020 already, drop backward compatibility with jquery-ui 1.10. (d8f432a)
0.15.2 (2020-09-08)
0.15.1 (2020-07-10)
- admin: Fix custom widget initialization problem (48e7f59)
0.15.0 (2020-04-22)
- Use poetry as venv manager (a5b402c)
- Drop old python versions (<3.6)
- Drop old django versions (<2.2)
- add NewMultilingualManager eq() (205a8f6)
- Django 3.0 support (#521)
- Tests when django files not writable (#527)
- Broken "Add another inline" (#475)
- Outdated formfield_for_dbfield signature (#510)
- REMOVED: Python 3.5 from test matrix
- REMOVED: Django 2.0 from test matrix
- FIXED: TabbedTranslationAdmin in django 2.2 (#506)
- ADDED: Django 2.2 to test matrix
- ADDED: Django 2.0 and 2.1 support
- ADDED: Python 3.7 support
- REMOVED: Python 3.4 from test matrix
- FIXED: Patching parent model managers on multi-table inheritance (#467)
- ADDED: Django 2.1 support
- ADDED: Python 3.7 support
- FIXED: JS errors in admin with new jQuery
- FIXED: Reverse relations and select_related for Django 2.0. (resolves issues #436 and #457, thanks to GreyZmeem and dmarcelino)
- FIXED: Multiple fixes for Django 2.0. (resolves issues #436 and #451, thanks PetrDlouhy)
- ADDED: Add primary support to DISTINCT statement (resolves issue #368, thanks Virgílio N Santos)
- CHANGED: Check if 'descendants' list has values (resolves issue #445, thanks Emilie Zawadzki)
- FIXED: order_by with expression (resolves issue #398, thanks Benjamin Toueg)
- FIXED: Issue in loaddata management command in combination with Django 1.11. (resolves issue #401)
-
ADDED: Support for Django 1.10. (resolves issue #360, thanks Jacek Tomaszewski and Primož Kerin)
-
CHANGED: Original field value became more unreliable and undetermined; please make sure you're not using it anywhere. See http://django-modeltranslation.readthedocs.io/en/latest/usage.html#the-state-of-the-original-field
-
CHANGED: Let register decorator return decorated class (resolves issue #360, thanks spacediver)
-
FIXED: Deferred classes signal connection. (resolves issue #379, thanks Jacek Tomaszewski)
-
FIXED: values_list + annotate combo bug. (resolves issue #374, thanks Jacek Tomaszewski)
-
FIXED: Several flake8 and travis related issues. (resolves issues #363, thanks Matthias K)
Released without changes.
- FIXED: Custom manager in migrations. (resolves issues #330, #339 and #350, thanks Jacek Tomaszewski)
- ADDED: Support for Django 1.9 (resolves issue #349, thanks Jacek Tomaszewski)
- FIXED: Proxy model inheritance for Django >=1.8 (resolves issues #304, thanks Stratos Moros)
- FIXED: FallbackValuesListQuerySet.iterator which broke ORM datetimes (resolves issue #324, thanks Venelin Stoykov)
-
ADDED: CSS support for bi-directional languages to TranslationAdmin using mt-bidi class. (resolves issue #317, thanks oliphunt)
-
ADDED: A decorator to handle registration of models. (resolves issue #318, thanks zenoamaro)
-
FIXED: Handled annotation fields when using values_list. (resolves issue #321, thanks Lukas Lundgren)
- FIXED: Handled deprecation of _meta._fill_fields_cache() for Django 1.8 in add_translation_fields. (resolves issue #304, thanks Mathias Ettinger and Daniel Loeb)
- FIXED: Handled deprecation of transaction.commit_unless_managed for Django 1.8 in sync_translation_fields management command. (resolves issue #310)
- FIXED: Fixed translatable fields discovery with the new _meta API and generic relations for Django 1.8. (resolves issue #309, thanks Morgan Aubert)
- ADDED: Support for Django 1.8 and the new meta API. (resolves issue #299, thanks Luca Corti and Jacek Tomaszewski)
- FIXED: Using a queryset with select related. (resolves issue #298, thanks Vladimir Sinitsin)
- FIXED: Added missing jquery browser plugin. (resolves issue #270, thanks Fabio Caccamo)
- FIXED: Deprecated imports with Django >= 1.7 (resolves issue #283, thanks Alex Marandon)
-
FIXED: JavaScript scoping issue with two jQuery versions in tabbed translation fields. (resolves issue #267, thanks Wojtek Ruszczewski)
-
ADDED: Patch db_column of translation fields in migration files. (resolves issue #264, thanks Thom Wiggers and Jacek Tomaszewski)
-
ADDED: Fallback to values and values_list. (resolves issue #258, thanks Jacek Tomaszewski)
-
ADDED: Explicit support for Python 3.4 (should have already worked for older versions that supported Python 3). (resolves issue #254)
-
ADDED: Support for Django 1.7 migrations.
-
FIXED: Dict iteration Exception under Python 3. (resolves issue #256, thanks Jacek Tomaszewski)
-
FIXED: Reduce usage under Python 3. (thanks Jacek Tomaszewski)
-
FIXED: Support for AppConfigs in INSTALLED_APPS (resolves issue #252, thanks Warnar Boekkooi, Jacek Tomaszewski)
-
FIXED: Rewrite field names in select_related. Fix deffered models registry. Rewrite spanned queries on all levels for defer/only. (resolves issue #248, thanks Jacek Tomaszewski)
-
ADDED: Detect custom get_queryset on managers. (resolves issue #242, thanks Jacek Tomaszewski)
-
ADDED: Support for Django 1.7 and the new app-loading refactor. (resolves issue #237)
-
ADDED: Added required_languages TranslationOptions (resolves issue #143)
-
FIXED: Fixed sync_translation_fields to be compatible with PostgreSQL. (resolves issue #247, thanks Jacek Tomaszewski)
-
FIXED: Manager .values() with no fields specified behaves as expected. (resolves issue #247)
-
FIXED: Fieldset headers are not capitalized when group_fieldsets is enabled. (resolves issue #234, thanks Jacek Tomaszewski)
-
FIXED: Exclude for nullable field manager rewriting. (resolves issue #231, thanks Jacek Tomaszewski)
-
FIXED: Use AVAILABLE_LANGUAGES in sync_translation_fields management command to detect missing fields. (resolves issue #227, thanks Mathieu Leplatre)
-
FIXED: Take db_column into account while syncing fields (resolves issue #225, thanks Mathieu Leplatre)
-
CHANGED: Moved to get_queryset, which resolves a deprecation warning. (resolves issue #244, thanks Thom Wiggers)
-
CHANGED: Considered iframes in tabbed_translation_fields.js to support third party apps like django-summernote. (resolves issue #229, thanks Francesc Arpí Roca)
-
CHANGED: Removed the http protocol from jquery-ui url in admin Media class. (resolves issue #224, thanks Francesc Arpí Roca)
-
ADDED: Documentation for TranslationOptions fields reference and south/sync_translation_fields.
-
FIXED: Some python3 compatibility issues. (thanks Jacek Tomaszewski, resolves issue #220)
-
FIXED: Clearing translated FileFields does not work with easy_thumbnails. (thanks Jacek Tomaszewski, resolves issue #219)
-
FIXED: Compatibility with nested inlines. (thanks abstraktor, resolves issue #218)
-
FIXED: Admin inlines recursion problem in Django 1.6. (thanks Oleg Prans, resolves issue #214)
-
FIXED: Empty FileField handling. (thanks Jacek Tomaszewski, resolves issue #215)
-
ADDED: Documentation about empty_values. (thanks Jacek Tomaszewski, resolves issue #211)
-
FIXED: Proxy model handling. (thanks Jacek Tomaszewsk)
-
FIXED: Abstract managers patching. (thanks Jacek Tomaszewski, resolves issue #212)
Packaged from revision f7c7ea174344f3dc0cf56ac3bf6e92878ed6baea
-
ADDED: Configurable formfields. The ultimate approach to nullable CharFields. (thanks Jacek Tomaszewski, resolves issue #211, ref #163, #187)
-
FIXED: Recursion problem with fieldset handling in Django 1.6. (thanks to Bas Peschier, resolves issue #214)
Packaged from revision 89f5e6712aaf5d5ec7e2d61940dc1a71fb08ca94
-
ADDED: A setting to control which language are slug fields based on (thanks to Konrad Wojas, resolves issue #194)
-
ADDED: A noinput option to the sync_translation_fields management command. (thanks to cuchac, resolves issues #179 and #184)
-
ADDED: Support for Python 3.2 and 3.3. (thanks to Karol Fuksiewicz, resolves issue #174)
-
ADDED: Convenient admin classes which already contain proper Media definitions. (resolves issue #171)
-
ADDED: Only, defer, values, values_list, dates, raw_values methods to MultilingualManager. (resolves issue #166 adn #173)
-
ADDED: Support for ForeignKey and OneToOneField. (thanks to Braden MacDonald and Jacek Tomaszewski, resolves issue #161)
-
ADDED: An auto-population option to the loaddata command. (resolves issue #160)
-
ADDED: A MODELTRANSLATION_LOADDATA_RETAIN_LOCALE setting for loaddata command to leave locale alone. (resolves issue #151)
-
FIXED: Compatibility with Django 1.6 development version. (resolves issue #169)
-
FIXED: Handling of 3rd party apps' ModelForms. (resolves issue #167)
-
FIXED: Triggering field fallback on its default value rather than empty string only. Also enhance nullable fields in forms with proper widgets to preserve
None
. (thanks to Wojtek Ruszczewski, resolves issue #163) -
FIXED: Admin prepopulated_fields is now handled properly. (thanks to Rafleze, resolves issue #181 and #190)
-
FIXED: Form saving when translated field is excluded (e.g. in admin) (resolves issue #183)
-
FIXED: Multilingual clones are Multilingual too. (resolved issue #189)
-
CHANGED: Every model's manager is patched as MultiLingual, not only objects. (resolved issue #198)
-
CHANGED: Display "make null" checkboxes in model forms.
-
CHANGED: MODELTRANSLATION_DEBUG setting defaults to False instead of settings.DEBUG.
-
CHANGED: Drop support for Python 2.5 and Django 1.3.
Packaged from revision fc8a3034897b8b818c74f41c43a92001e536d970
- FIXED: Joined query does not use translated fields. (resolves issue #162)
Packaged from revision ea0e2db68900371146d39dcdf88b29091ee5222f
-
ADDED: A new ENABLE_FALLBACKS setting and a context manager for switching fallbacks temporarily. (thanks to Wojtek Ruszczewski, resolves issue #152)
-
ADDED: Major refactoring of the tabbed translation fields javascript. Adds support for tabular inlines and includes proper handling of stacked inlines, which have never been officially supported, but were not actively prevented from being tabbified. (resolves issue #66)
-
ADDED: New group_fieldsets option for TranslationAdmin. When activated translation fields and untranslated fields are automatically grouped into fieldsets. (based on original implementation by Chris Adams, resolves issues #38)
-
FIXED: Tests to run properly in the scope of a Django project. (thanks to Wojtek Ruszczewski, resolves issue #153)
-
FIXED: Broken tab activation when using jquery-ui 1.10, keeping support for older jquery-ui versions and the jquery version shipped by Django. (thanks to Dominique Lederer, resolves issue #146)
-
FIXED: Wrong admin field css class for en-us language. (resolves issue #141)
-
FIXED: Added missing hook for admin readonly_fields. (resolves issue #140)
-
FIXED: Keys used in tabbed translation fields to group translations are not unique for inlines. (resolves issue #121)
-
FIXED: The prepopulated_fields TranslationAdmin option only works on the first defined field to prepopulate from and made the option aware of the current language. (resolves issue #57)
-
CHANGED: Removed deprecated MODELTRANSLATION_TRANSLATION_REGISTRY setting.
-
CHANGED: Refactored auto population manager functionality. Switched to a populate method in favour of the old _populate keyword and added a new contextmanager to switch the population mode on demand. (thanks to Wojtek Ruszczewski, resolves issue #145)
-
CHANGED: Major refactoring of translation field inheritance and TranslationOptions. (thanks to Wojtek Ruszczewski, resolves issues #50 and #136)
Packaged from revision bedd18ea9e338b133d06f2ed5e7ebfc2e21fd276
-
ADDED: Merged autodiscover tests from django-modeltranslation-wrapper.
-
ADDED: Rewrite method to MultilingualManager and optimized create.
-
FIXED: grouped_translations are computed twice in tabbed translations. (thanks to Wojtek Ruszczewski, resolves issue #135)
-
FIXED: CSS classes in tabbed translation fields when fieldname has a leading underscore. (thanks to Wojtek Ruszczewski, resolves issue #134)
-
FIXED: Rewriting of descending ('-' prefixed) ordering fields in MultilingualManager. (thanks to Wojtek Ruszczewski, resolves issue #133)
-
FIXED: Download url in setup.py. (thanks to Benoît Bryon, resolves issue #130)
-
FIXED: The update_translation_fields management command does nothing. (resolves issue #123)
-
FIXED: MultilingualQuerySet custom inheritance.
-
CHANGED: Don't raise an exception if TranslationField is accessed via class to allow descriptor introspection. (resolves issue #131)
Packaged from revision da928dd431fcf112e2e9c4c154c5b69e7dadc3b3.
-
ADDED: Possibility to turn off query rewriting in MultilingualManager. (thanks to Jacek Tomaszewski)
-
FIXED: Fixed update_translation_fields management command. (thanks to Jacek Tomaszewski, resolves issues #123 and #124)
-
CHANGED: Major test refactoring. (thanks to Jacek Tomaszewski, resolves issues #100 and #119)
Packaged from revision da4aeba0ea20ddbee67aa49bc90af507997ac386.
-
ADDED: Increased the number of supported fields. Essentially all Django model fields and subclasses of them should work, except related fields (ForeignKey, ManyToManyField, OneToOneField) and AutoField which are not supported.
-
ADDED: A subclass of TranslationOptions inherits fields from its bases. (thanks to Bruno Tavares and Jacek Tomaszewski, resolves issue #110)
-
ADDED: Support for fallback languages. Allows fine grained configuration through project settings and TranslationOptions on model basis. (thanks to Jacek Tomaszewski, resolves issue #104)
-
ADDED: Multilingual manager which is aware of the current language. (thanks to Jacek Tomaszewski, resolves issues #45, #78 and #84)
-
CHANGED: Version code to use a PEP386 compliant version number.
-
CHANGED: Constructor rewrites fields to be language aware. (thanks to Jacek Tomaszewski, resolves issues #33 and #58)
-
FIXED: Lacking support for readonly_fields in TranslationAdmin. (thanks to sbrandtb, resolves issue #111)
-
FIXED: Model's db_column option is not applied to the translation field. (resolves issue #83)
-
FIXED: Admin prevents saving a cleared field. The fix deactivates rule3 and implies the new language aware manager and constructor rewrite. (resolves issue #85)
Packaged from revision d9bf9709e9647fb2af51fc559bbe356010bd51ca.
- FIXED: Pypi wants to install beta version. Happened because pypi treats 0.4.0-beta2 as latest release. This also effectively resulted in a downgrade when using 'pip --upgrade' and 0.4.0 was already installed. (thanks to jmagnusson for the report, resolves issue #103)
Packaged from revision c44f9cfee59f1b440f022422f917f247e16bbc6b.
-
CHANGED: Refactored tests to allow test runs with other apps. Includes a "backport" of override_settings to ensure Django 1.3 support. (thanks to Jacek Tomaszewski)
-
CHANGED: Modeltranslation related css class prefix to 'mt'.
-
FIXED: Race condition during initialization. (resolves issue #91)
-
FIXED: Tabs don't properly support two-part language codes. (resolves issue #63)
Packaged from revision 7b8cafbde7b14afc8e85235e9b087889a6bfa86e.
- FIXED: Release doesn't include rst files.
Packaged from revision 09a0c4434a676c6fd753e6dcde95056c424db62e.
-
CHANGED: Refactored documentation using sphinx. (resolves issue #81)
-
FIXED: Setting MODELTRANSLATION_TRANSLATION_FILES should be optional. (resolves issue #86)
Packaged from revision 170.
-
ADDED: Support for FileField and ImageField. (thanks to Bruno Tavares, resolves issue #30)
-
ADDED: New management command sync_database_fields to sync the database after a new model has been registered or a new language has been added. (thanks to Sébastien Fievet and the authors of django-transmeta, resolves issue #62)
-
CHANGED: Excluded tabular inlines from jQuery tabs, as they are currently not supported.
-
CHANGED: Use app-level translation files in favour of a single project-level one. Adds an autoregister feature similiar to the one provided by Django's admin. A new setting MODELTRANSLATION_TRANSLATION_FILES keeps backwards compatibility with older versions. See documentation for details. This is basically a merge from both django-modeltranslation-wrapper and hyperweek's branch at github. (thanks to Jacek Tomaszewski, Sébastien Fievet and Maxime Haineault, resolves issues #19, #58 and #71)
-
CHANGED: Moved tests to separate folder and added tests for TranslationAdmin. To run the tests the settings provided in model.tests.modeltranslation have to be used (settings.LANGUAGES override doesn't work for TranslationAdmin).
-
CHANGED: Major refactoring of the admin integration. Subclassed BaseModelAdmin and InlineModelAdmin. Patching options in init doesn't seem to be thread safe. Instead used provided hooks like get_form, get_formset and get_fieldsets. This should resolve several problems with the exclude and fieldsets options and properly support options in inlines. (resolves issue #72)
-
FIXED: Non-unicode verbose field names showing up empty in forms. (resolves issue #35)
-
FIXED: Dynamic TranslationOptions model name.
-
FIXED: Widgets for translated fields are not properly copied from original fields. (thanks to boris-chervenkov, resolves issue #74)
-
FIXED: Removed XMLField test which is deprecated since Django 1.3 and broke tests in Django 1.4. (resolves issue #75)
Packaged from revision 129.
-
CHANGED: jQuery search path in tabbed_translation_fields.js. This allows use of a version of jQuery other than the one provided by Django. Users who want to force the use of Django's jQuery can include force_jquery.js.
-
FIXED: Another attempt to include static files during installation. (resolves reopened issue #61)
Packaged from revision 122.
- FIXED: Static files not included during installation. (resolves issue #61)
Packaged from revision 121.
- CHANGED: Renamed media folder to static.
Packaged from revision 113.
-
ADDED: Support for multi-table inheritance. (thanks to Sébastien Fievet, resolves issues #50 and #51)
-
ADDED: Jquery-ui based admin support for tabbed translation fields. (thanks to jaap and adamsc, resolves issue #39)
-
ADDED: CSS class to identify a translation field and the default translation field in admin. (thanks to jaap)
-
ADDED: Configurable default value per field instance. (thanks to bmihelac, resolves issue #28)
-
ADDED: Setting to override the default language. (thanks to jaap, resolves issue #2)
-
CHANGED: Improved performance of update_translation_fields command. (thanks to adamsc, resolves issue #43)
-
CHANGED: Factored out settings into a separate settings.py and consistently used an app specific settings prefix.
-
CHANGED: Refactored creation of translation fields and added handling of supported fields. (resolves issue #37)
-
FIXED: Clearing the default translation field in admin does not clear the original field. (resolves issue #47)
-
FIXED: In some setups appears "This field is required" error for the original field. (resolves issue #5)
-
FIXED: Translations are not saved for tinymce HTMLField when using jquery tabs. (thanks to kottenator, resolves issue #41)
-
FIXED: Fieldname isn't ensured to be string. (resolves issue #41)
-
FIXED: Kept backwards compatibility with Django-1.0. (thanks to jaap, resolves issue #34)
-
FIXED: Regression in south_field_triple caused by r55. (thanks to jaap, resolves issue #29)
-
FIXED: TranslationField pre_save does not get the default language correctly. (thanks to jaap, resolves issue #31)
Packaged from revision 57.
-
ADDED: Support for admin prepopulated_fields. (resolves issue #21)
-
ADDED: Support for admin list_editable. (thanks carl.j.meyer, resolves issue #20)
-
ADDED: Preserve the formfield widget of the translated field. (thanks piquadrat)
-
ADDED: Initial support for django-south. (thanks andrewgodwin, resolves issue #11)
-
ADDED: Support for admin inlines, common and generic. (resolves issue #12 and issue #18)
-
FIXED: Admin form validation errors with empty translated values and unique=True. (thanks to adamsc, resolves issue #26)
-
FIXED: Mangling of untranslated prepopulated fields. (thanks to carl.j.meyer, resolves issue #25)
-
FIXED: Verbose names of translated fields are not translated. (thanks to carl.j.meyer, resolves issue #24)
-
FIXED: Race condition between model import and translation registration in production by ensuring that models are registered for translation before TranslationAdmin runs. (thanks to carl.j.meyer, resolves issue #19)
-
FIXED: Added workaround for swallowed ImportErrors by printing a traceback explicitly. (resolves issue #17)
-
FIXED: Only print debug statements to stdout if the runserver or runserver_plus management commands are used. (resolves issue #16)
-
FIXED: Removed print statements so that modeltranslation is usable with mod_wsgi. (resolves issue #7)
-
FIXED: Broken admin fields and fieldsets. (thanks simoncelen, resolves issue #9)
-
FIXED: Creation of db fields with invalid python language code. (resolves issue #4)
-
FIXED: Tests to run from any project. (thanks carl.j.meyer, resolves issue #6)
-
FIXED: Removed unused dependency to content type which can break syncdb. (thanks carl.j.meyer, resolves issue #1)
Initial release packaged from revision 19.