| Age | Commit message (Collapse) | Author |
|
via archive.extract().
Thanks stackered for the report.
Follow up to 05413afa8c18cdb978fcdf470e09f7a12b234a23.
Backport of 924a0c092e65fa2d0953fd1855d2dc8786d94de2 from main.
|
|
aggregate(), and extra() against SQL injection in column aliases on MySQL/MariaDB.
Thanks sw0rd1ight for the report.
Follow up to 93cae5cb2f9a4ef1514cf1a41f714fef08005200.
Backport of 41b43c74bda19753c757036673ea9db74acf494a from main.
|
|
Backport of 6c82b0bc91fc650891b0b411ac4a5a86cf0cf3e8 from main.
|
|
Backport of 00174507f8a91e9577ae233c58af561b379f2695 from main.
|
|
|
|
widget chosen labels in TabularInlines.
Regression in a0f50c2a483678d31bd1ad6f08fd3a0b8399e27b.
Backport of 1e7728888dbbff437ad9847c82b84feb81f785df from main.
|
|
in docs.
Thanks Mike Edmunds for the report.
Backport of e183d6c26c8da4486c151f9ce973828e2404a796 from main.
|
|
Backport of 686a8a62ae7faba9c3b17080c3532b821e8cb1f3 from main
|
|
Backport of f0c05a40d27d69ef3a7b4e5e0199b5dba5b11feb from main.
|
|
Backport of ab7c7dd99b3ddc489d9f007b273d891973212aa3 from main.
|
|
injection in column aliases.
Thanks Eyal Gabay (EyalSec) for the report.
Backport of 51711717098d3f469f795dfa6bc3758b24f69ef7 from main.
|
|
Backport of d044e25dc2106b94ebdedf0bfde9238be1a3765c from main.
|
|
values()/values_list().
Thanks Jacob Walls and Simon Charette for tests.
Signed-off-by: SaJH <wogur981208@gmail.com>
Backport of bb7a7701b1a0e8fffe14dcebf5d5bac7f176c02a from main
|
|
Backport of 4c71e334401a3e83c013419d0e2211543e7e873b from main.
|
|
Follow up to ceecd518b19044181a3598c55ebed7c2545963cc.
Backport of b3166e1e15824aedb7a609dfda18ef36ea023d06 from main.
|
|
Backport of bcddf641ae705209c01a4b18a9384aa91fdc94e1 from main
|
|
Backport of 0bff53b4138d8c6009e9040dbb8916a1271a68d7 from main.
|
|
Backport of 8999b0e2bf62ffa1ea19995508712ed8eda2cc14 from main.
|
|
involving CompositePrimaryKey on either side.
Thanks to Jacob Walls for the report.
Backport of 2013092b693be0ebdf36f41dc61615a2de1bbe31 from main.
|
|
Regression in 65ab92f6a83644bbb555d0eff3a02d8d9301aba4.
Backport of 9cec8d9f55d90fbc162fde23d6ea7a34e322fcae from main.
|
|
replacement.
This allows the proper resolving of lookups when performing constraint
validation involving Q and Case objects.
Thanks Andrew Roberts for the report and Sarah for the tests and review.
Backport of 079d31e698fa08dd92e2bc4f3fe9b4817a214419 from main.
|
|
tuple of expressions.
Thanks Jacob Walls for the report, and Sarah Boyce and Mariusz Felisiak
for reviews.
Backport of 0a4999b422702c64e21f5a10a4d60300b7074401 from main.
|
|
inserts on PostgreSQL.
Regression in 764af7a3d6c0b543dcf659a2c327f214da768fe4.
Backport of 0fe218842e0e396e3ab3982bd21227968a9e7fd8 from main.
|
|
Backport of 94ebcf8366d62f6360851b40e9c4dfe3f71d202f from main.
|
|
Backport of 7ab6b863da9c8c41dd86bfd1ede1e48e79c719bd from main.
|
|
support.
When native support for tuple lookups is missing in a DB backend, it can
be emulated with an EXISTS clause. This is controlled by the backend
feature flag "supports_tuple_lookups".
The mishandling of subquery right-hand side in `TupleIn` (added to
support `CompositePrimaryKey` in Refs #373) was likely missed because
the only core backend we test with the feature flag disabled
(Oracle < 23.4) supports it natively.
Thanks to Nandana Raol for the report, and to Sarah Boyce, Jacob Walls,
and Natalia Bidart for reviews.
Backport of 192bc7a7be92e20cc250907fb4083df689715679 from main.
|
|
Value(None, JSONField()) when used in When.condition incorrectly resolved with
for_save=True, resulting in the value being serialized as SQL NULL instead of
JSON null.
Regression in c1fa3fdd040718356e5a3b9a0fe699d73f47a940.
Thanks to Thomas McKay for the report, and to David Sanders and Simon Charettes
for the review.
Co-authored-by: Sarah Boyce <42296566+sarahboyce@users.noreply.github.com>
Backport of 104cbfd44b9eff010daf0ef0e1ce434385855b13 from main.
|
|
When matching which entry in the `Accept` header should be used for
a given media type, the specificity matters. However once those are
resolved, only the quality matters when selecting preference.
Regression in c075508b4de8edf9db553b409f8a8ed2f26ecead.
Thank you to Anders Kaseorg for the report.
Backport of 12c1557060fc94fe5e1fbddc4578a4e29d38f77c from main.
|
|
Backport of 2714bc3f2c8675d32caae764c874ac381c836c7f from main.
|
|
Backport of 7fcc7b1a0cc7e7c542b37a094731bbf632636f1f from main.
|
|
The "q" key was removed while addressing ticket #36411. Despite
`MediaType.params` is undocumented and considered internal, it was used
in third-party projects (Zulip reported breakage), so this work restored
the `q` key in `params`.
Thanks Anders Kaseorg for the report.
Regression in c075508b4de8edf9db553b409f8a8ed2f26ecead.
Backport of cf5f36bf903a2854f5e395149cee707115b83744 from main.
|
|
expressions.
The for_save flag wasn't properly propagated when resolving expressions, which
prevented get_db_prep_save() from being called in some cases. This affected
fields like JSONField where None would be saved as JSON null instead of SQL NULL.
Regression in 00c690efbc0b10f67924687f24a7b30397bf47d9.
Thanks to David Sanders and Simon Charette for reviews.
Co-authored-by: Adam Johnson <me@adamj.eu>
Backport of c1fa3fdd040718356e5a3b9a0fe699d73f47a940 from main.
|
|
logging.
Migrated remaining response-related logging to use the `log_response()`
helper to avoid potential log injection, to ensure untrusted values like
request paths are safely escaped.
Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>
Backport of 957951755259b412d5113333b32bf85871d29814 from main.
|
|
|
|
Backport of 51923c576a596ad00214e44028f9dee9748bce95 from main.
|
|
Backport of 1f19c36e2d57607b82476cc90bc881ac2586d2d5 from main.
|
|
`log_response()`.
Suitably crafted requests containing a CRLF sequence in the request
path may have allowed log injection, potentially corrupting log files,
obscuring other attacks, misleading log post-processing tools, or
forging log entries.
To mitigate this, all positional formatting arguments passed to the
logger are now escaped using "unicode_escape" encoding.
Thanks to Seokchan Yoon (https://ch4n3.kr/) for the report.
Co-authored-by: Carlton Gibson <carlton@noumenal.es>
Co-authored-by: Jake Howard <git@theorangeone.net>
Backport of a07ebec5591e233d8bbb38b7d63f35c5479eef0e from main.
|
|
subclass queryset.
Regression in 626d77e52a3f247358514bcf51c761283968099c.
Refs #36116.
Thanks Cornelis Poppema for the excellent report.
Backport of 08187c94ed02c45ad40a32244dedeaa7ac71ca87 from main.
|
|
type parameters.
HttpRequest.get_preferred_type() did not account for parameters in
Accept header media types (e.g., "text/vcard; version=3.0"). This caused
incorrect content negotiation when multiple types differed only by
parameters, reducing specificity as per RFC 7231 section 5.3.2
(https://datatracker.ietf.org/doc/html/rfc7231.html#section-5.3.2).
This fix updates get_preferred_type() to treat media types with
parameters as distinct, allowing more precise and standards-compliant
matching.
Thanks to magicfelix for the report, and to David Sanders and Sarah
Boyce for the reviews.
Backport of c075508b4de8edf9db553b409f8a8ed2f26ecead from main.
|
|
id_list.
Backport of 26313bc21932d0d3af278ab387549d63b1f64575 from main.
|
|
intercepting form submission.
In the admin's filter_horizontal widget, optional action buttons like
"Choose all", "Remove all", etc. were changed from `<a>` to `<button>`
elements in #34619, but without specifying `type="button"`. As a result,
when pressing Enter while focused on a form input, these buttons could
be triggered and intercept form submission.
Explicitly set `type="button"` on these control buttons to prevent them
from acting as submit buttons.
Thanks Antoliny Lee for the quick triage and review.
Regression in 857b1048d53ebf5fc5581c110e85c212b81ca83a.
Backport of 90429625a85f1f77dfea200c91bd2dabab57974f from main.
|
|
Backport of 1a744343999c9646912cee76ba0a2fa6ef5e6240 from main.
|
|
co-authored-by: Simon Charette <charette.s@gmail.com>
Backport of c2615a050036eda0bca090c707191076220cee9f from main.
|
|
Regression in a76035e925ff4e6d8676c65cb135c74b993b1039.
Thank you to Simon Charette for the review.
co-authored-by: Simon Charette <charette.s@gmail.com>
Backport of b8e5a8a9a2a767f584cbe89a878a42363706f939 from main.
|
|
aprocess_request().
Regression in 50f89ae850f6b4e35819fe725a08c7e579bfd099.
Thank you to shamoon for the report and Natalia Bidart for the review.
Backport of 1704c49a9b149b66b6a0e67abc8c95293bc35649 from main.
|
|
no arguments.
Regression in 9cb8baa0c4fa2c10789c5c8b65f4465932d4d172.
Thank you to Antoine Humeau for the report and Simon Charette for the review.
Backport of 802baf5da5b8d8b44990a8214a43b951e7ab8b39 from main.
|
|
composite pk selects too many columns.
Backport of 994dc6d8a1bae717baa236b65e11cf91ce181c53 from main.
|
|
composite pk.
Thanks Jacob Walls for the report and Sarah for the in-depth review.
Backport of 8be0c0d6901669661fca578f474cd51cd284d35a from main.
|
|
filenames.
Backport of 42ab99309d347f617d60751c2e8d627fb2963049 from main.
|
|
Backport of c86156378db09e68db3a9ae1c108f661a67e3abe from main.
|