summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-10-22Fixed #27595 -- Made ForeignKey.get_col() follow target chains.Simon Charette
Previously, foreign relationships were followed only one level deep which prevents foreign keys to foreign keys from being resolved appropriately. This was causing issues such as improper database value conversion for UUIDField on SQLite because the resolved expression's output field's internal type wasn't correct. Added tests to make sure unlikely foreign reference cycles don't cause recursion errors. Refs #24343. Thanks oyooyo for the report and Wayne Merry for the investigation.
2018-10-22Fixed #29876 -- MySQL does not support SPATIAL fields in unique indices.Florian Apolloner
2018-10-21Fixed #29847 -- Ensured proper ordering in queries.Florian Apolloner
Even though good databases tend to keep the result sorted by the/one window expression and the planners are smart enough to not resort if not required, it is not valid to rely on this. MariaDB specifically did return whatever order it wanted, which is completely okay. Now we sort towards the expected data for all databases.
2018-10-21Fixed a failing test when the source directory is on a readonly fs.Florian Apolloner
2018-10-21Removed "encoding" description in GIS tutorial.Atul Varma
An omission in 388165ade4219aeefac1e231c1d44c51a7b62829.
2018-10-21Fixed #29870 -- Added DurationField introspection for Oracle and PostgreSQL.Mariusz Felisiak
Thanks Tim Graham for the review.
2018-10-20Fixed Italian's MONTH_DAY_FORMAT.deby
The `/` is inconsistent with the other languages.
2018-10-19Fixed #29774 -- Fixed django-admin shell hang on startup.Adam Allred
sys.stdin.read() blocks waiting for EOF in shell.py which will likely never come if the user provides input on stdin via the keyboard before the shell starts. Added check for a tty to skip reading stdin if it's not present. This still allows piping of code into the shell (which should have no TTY and should have an EOF) but also doesn't cause it to hang if multi-line input is provided.
2018-10-18Fixed #29858 -- Clarified docs regarding CSRF token header name.Tim Graham
2018-10-18Updated Jinja2 static tag example to use django.templatetags.Andy Chosak
As of cf546e11ac76c8dec527e39ff8ce8249a195ab42, this is the canonical way to invoke the static tag.
2018-10-17Fixed #29838 -- Fixed crash when combining Q objects with __in lookups and ↵aspalding
lists. Regression in fc6528b25ab1834be1a478b405bf8f7ec5cf860c.
2018-10-17Refs #29838 -- Fixed make_hashable() for values that have lists or dicts ↵aspalding
nested in tuples. And for non-hashable values that are iterable, e.g. sets.
2018-10-17Moved make_hashable() to django.utils and added tests.aspalding
2018-10-17Removed obsolete "ugly URL" reference.Tom Dyson
2018-10-17Fixed #29857 -- Added get_storage_class to django.core.files.storage.__all__.Tim Graham
2018-10-17Fixed #21171 -- Avoided starting a transaction when a single (or atomic ↵Florian Apolloner
queries) are executed. Checked the following locations: * Model.save(): If there are parents involved, take the safe way and use transactions since this should be an all or nothing operation. If the model has no parents: * Signals are executed before and after the previous existing transaction -- they were never been part of the transaction. * if `force_insert` is set then only one query is executed -> atomic by definition and no transaction needed. * same applies to `force_update`. * If a primary key is set and no `force_*` is set Django will try an UPDATE and if that returns zero rows it tries an INSERT. The first case is completly save (single query). In the second case a transaction should not produce different results since the update query is basically a no-op then (might miss something though). * QuerySet.update(): no signals issued, single query -> no transaction needed. * Model/Collector.delete(): This one is fun due to the fact that is does many things at once. Most importantly though: It does send signals as part of the transaction, so for maximum backwards compatibility we need to be conservative. To ensure maximum compatibility the transaction here is removed only if the following holds true: * A single instance is being deleted. * There are no signal handlers attached to that instance. * There are no deletions/updates to cascade. * There are no parents which also need deletion.
2018-10-16Added a paragraph in docs/intro/contributing.txt.Çağıl
2018-10-16Refs #23919 -- Removed a stray object-inheritance.Mads Jensen
Follow up to 081e78716085ff4af08604af5d084c8fd27c0730.
2018-10-15Fixed #29817 -- Deprecated settings.FILE_CHARSET.Jon Dufresne
2018-10-15Refs #27829 -- Added warning for settings.DEFAULT_CONTENT_TYPE usage outside ↵Jon Dufresne
of Django.
2018-10-15Fixed #29725 -- Removed unnecessary join in QuerySet.count() and exists() on ↵oliver
a many-to-many relation.
2018-10-15Fixed #29845 -- Fixed Cast crash on MySQL when casting to DecimalField.Mariusz Felisiak
2018-10-14Fixed typo in django/utils/datastructures.py.Taoufik
2018-10-13Removed unused fields from aggregation docs.Peter Inglesby
2018-10-13Fixed various comments in django/db/backends/oracle/base.py.Mariusz Felisiak
2018-10-12Simplified django.utils.html.urlize().Tim Graham
2018-10-12Refs #29826 -- Removed unused characters from urlize configuration.Tim Graham
The HTML characters are unused because urlize is meant to be applied to plain text and these characters aren't properly detected (refs #29826). Angle brackets and quotes are present in word_split_re and therefore won't be used in WRAPPING_PUNCTUATION.
2018-10-12Added a urlize test for wrapping characters.Tim Graham
2018-10-11Fixed #29832 -- Updated Roboto font to v2.137.Mac Chapman
2018-10-11Simplified deployment checklist docs on customizing error views.Adam Johnson
2018-10-11Fixed #29814 -- Added support for NoneType serialization in migrations.Patrik Sletmo
2018-10-11Fixed #29836 -- Bumped required cx_Oracle to 6.0.Mariusz Felisiak
2018-10-10Emphasized that ForeignKey.on_delete doesn't create a SQL constraint.Andrea Rabbaglietti
2018-10-10Refs #27795 -- Removed force_bytes() usage from django/utils/http.py.Jon Dufresne
django.utils.http.urlsafe_base64_encode() now returns a string, not a bytestring. Since URLs are represented as strings, urlsafe_base64_encode() should return a string. All uses immediately decoded the bytestring to a string anyway. As the inverse operation, urlsafe_base64_decode() accepts a string.
2018-10-09Fixed #29829 -- Remove unused code in ↵Hasan Ramezani
contrib.sites.models._simple_domain_name_validator().
2018-10-09Completed FixedOffset test coverage.Hasan Ramezani
2018-10-09Simplified handling of DurationField values on MySQL/MariaDB.Sergey Fedoseev
2018-10-09Capitalized "Python" in docs and comments.Jon Dufresne
2018-10-09Fixed postgres_tests.test_signals.OIDTests when run in isolation.Jon Dufresne
2018-10-08Replaced kwargs.pop() with keyword-only arguments.Jon Dufresne
2018-10-08Refs #27795 -- Removed force_text() usage in db/models/sql/query.py.Jon Dufresne
2018-10-05Refs #27795 -- Removed force_bytes() usage in contrib/staticfiles/storage.py.Jon Dufresne
2018-10-04Fixed #29775 -- Fixed URL converters in a nested namespaced path.Eric Brandwein
When using include() without namespaces of some urlpatterns that have an include() with namespace, the converters of the parent include() weren't being used to convert the arguments of reverse().
2018-10-04Improved tone in docs/ref/settings.txt.Kate Berry
2018-10-04Used skip(If|Unless)DBFeature in transactions tests.Jon Dufresne
2018-10-04Removed Jinja2 dependency from admin_checks tests.Jon Dufresne
2018-10-04Refs #27778 -- Removed "The database API" section from "Unicode data" docs.Jon Dufresne
Support for passing bytestrings to the database API was removed in 301de774c21d055e9e5a7073e5bffdb52bc71079.
2018-10-04Removed unnecessary skipUnless in HTTPSitemapTests.Jon Dufresne
contrib.sites is included in INSTALLED_APPS by SitemapTestsBase.
2018-10-04Simplified utils.text.StreamingBuffer.Sergey Fedoseev
2018-10-03Clarified when QuerySet.select_for_update() locks.ovalseven8