Re: [Django] #31026: Switch form rendering to template engine

2023-11-19 Thread Django
#31026: Switch form rendering to template engine
-+-
 Reporter:  Johannes Maron   |Owner:  David
 Type:   |  Smith
  Cleanup/optimization   |   Status:  closed
Component:  Forms|  Version:  dev
 Severity:  Normal   |   Resolution:  fixed
 Keywords:   | Triage Stage:  Ready for
 |  checkin
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by GitHub ):

 In [changeset:"f1697ec7c8fc851baa9c890a605acb67f04210f2" f1697ec]:
 {{{
 #!CommitTicketReference repository=""
 revision="f1697ec7c8fc851baa9c890a605acb67f04210f2"
 Refs #31026 -- Simplified BaseForm.get_context().

 bf.errors returns an ErrorList. Access this directly and avoid creating
 a new instance in BaseForm.get_context()

 Calling str() on the ErrorList can also be deferred to when the
 variable used in the template.
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018beecf-8836de31-953d-4071-a374-c0efd9eea029-00%40eu-central-1.amazonses.com.


Re: [Django] #16281: ContentType.get_object_for_this_type using wrong database for creating object

2023-11-19 Thread Django
#16281: ContentType.get_object_for_this_type using wrong database for creating
object
-+-
 Reporter:  tfrydrychewicz@… |Owner:  bcail
 Type:  Bug  |   Status:  assigned
Component:   |  Version:  dev
  contrib.contenttypes   |
 Severity:  Normal   |   Resolution:
 Keywords:  contenttype, object  | Triage Stage:  Accepted
  get_object_for_this_type,  |
  database, multiple |
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Mariusz Felisiak):

 * owner:  (none) => bcail
 * status:  new => assigned


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018beb25cf55-944e6240-a44d-4408-b559-98adb19d9418-00%40eu-central-1.amazonses.com.


Re: [Django] #34977: Turn link to change password form in admin user change form into a button

2023-11-19 Thread Django
#34977: Turn link to change password form in admin user change form into a 
button
-+-
 Reporter:  Fabian Braun |Owner:  Fabian
 Type:   |  Braun
  Cleanup/optimization   |   Status:  assigned
Component:  contrib.auth |  Version:  4.2
 Severity:  Normal   |   Resolution:
 Keywords:  accessibility| Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  1
-+-
Changes (by Mariusz Felisiak):

 * keywords:   => accessibility
 * stage:  Unreviewed => Accepted


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018beb1705c3-041004a1-7e54-49c9-851f-3e439821531d-00%40eu-central-1.amazonses.com.


Re: [Django] #34978: Annotating through an aggregate with RawSQL() raises 1056 "Can't group on" on MySQL/MariaDB. (was: Annotating through an aggregate with MySQL/MariaDB raises 1056 "Can't group on"

2023-11-19 Thread Django
#34978: Annotating through an aggregate with RawSQL() raises 1056 "Can't group 
on"
on MySQL/MariaDB.
-+-
 Reporter:  Matthew Somerville   |Owner:  nobody
 Type:  Bug  |   Status:  new
Component:  Database layer   |  Version:  4.2
  (models, ORM)  |
 Severity:  Release blocker  |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Mariusz Felisiak):

 * cc: Simon Charette (added)
 * severity:  Normal => Release blocker
 * stage:  Unreviewed => Accepted


Comment:

 Thanks for the report. Regression in
 041551d716b69ee7c81199eee86a2d10a72e15ab.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018beb0e5935-24169722-44ed-443e-85ad-4b76b21b4081-00%40eu-central-1.amazonses.com.


Re: [Django] #34979: inlineformset_factory sets max_num forms to one even though there is a unique_together constraint

2023-11-19 Thread Django
#34979: inlineformset_factory sets max_num forms to one even though there is a
unique_together constraint
---+--
 Reporter:  Evan Hallein   |Owner:  nobody
 Type:  Uncategorized  |   Status:  closed
Component:  contrib.admin  |  Version:  3.2
 Severity:  Normal |   Resolution:  invalid
 Keywords:  inline admin   | Triage Stage:  Unreviewed
Has patch:  0  |  Needs documentation:  0
  Needs tests:  0  |  Patch needs improvement:  0
Easy pickings:  0  |UI/UX:  1
---+--
Changes (by Mariusz Felisiak):

 * resolution:  fixed => invalid


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018beafcf0fe-78be0fed-4c23-41c7-aeb9-2ed6316a3ef3-00%40eu-central-1.amazonses.com.


Re: [Django] #34979: inlineformset_factory sets max_num forms to one even though there is a unique_together constraint

2023-11-19 Thread Django
#34979: inlineformset_factory sets max_num forms to one even though there is a
unique_together constraint
---+--
 Reporter:  Evan Hallein   |Owner:  nobody
 Type:  Uncategorized  |   Status:  closed
Component:  contrib.admin  |  Version:  3.2
 Severity:  Normal |   Resolution:  fixed
 Keywords:  inline admin   | Triage Stage:  Unreviewed
Has patch:  0  |  Needs documentation:  0
  Needs tests:  0  |  Patch needs improvement:  0
Easy pickings:  0  |UI/UX:  1
---+--
Changes (by Evan Hallein):

 * status:  new => closed
 * resolution:   => fixed


Comment:

 fixed by changing the model to not use the onetoone as a primary key and
 instead have a separate primary key:

 {{{
 class TrtMeasurements(models.Model):
 id = models.AutoField(primary_key=True)
 observation = models.ForeignKey('TrtObservations',
 on_delete=models.CASCADE)
 measurement_type = models.ForeignKey(TrtMeasurementTypes,
 on_delete=models.CASCADE, db_column='measurement_type')
 measurement_value = models.FloatField()
 comments = models.TextField(blank=True, null=True)

 class Meta:
 managed = False
 db_table = 'trt_measurements'
 unique_together = (('observation', 'measurement_type'),)
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018bead7ff4e-0ecdc5e5-01d5-45e7-b4a3-e96f34c708b5-00%40eu-central-1.amazonses.com.


Re: [Django] #34976: startproject and startapp should provide feedback

2023-11-19 Thread Django
#34976: startproject and startapp should provide feedback
-+-
 Reporter:  Thibaud Colas|Owner:  Abhay
 Type:   |  Vachhani
  Cleanup/optimization   |   Status:  assigned
Component:  Core (Management |  Version:  dev
  commands)  |
 Severity:  Normal   |   Resolution:
 Keywords:  tutorial, command,   | Triage Stage:  Accepted
  startproject, startapp |
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  1
-+-
Changes (by Abhay Vachhani):

 * owner:  nobody => Abhay Vachhani
 * status:  new => assigned


Comment:

 Assigned ticket to Abhay Vachhani

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018beabee835-a49ee23b-eb8e-49ea-924d-b12c49bf6e5a-00%40eu-central-1.amazonses.com.


Re: [Django] #34979: inlineformset_factory sets max_num forms to one even though there is a unique_together constraint

2023-11-19 Thread Django
#34979: inlineformset_factory sets max_num forms to one even though there is a
unique_together constraint
---+--
 Reporter:  Evan Hallein   |Owner:  nobody
 Type:  Uncategorized  |   Status:  new
Component:  contrib.admin  |  Version:  3.2
 Severity:  Normal |   Resolution:
 Keywords:  inline admin   | Triage Stage:  Unreviewed
Has patch:  0  |  Needs documentation:  0
  Needs tests:  0  |  Patch needs improvement:  0
Easy pickings:  0  |UI/UX:  1
---+--
Description changed by Evan Hallein:

Old description:

> I have a unique_together primary key in one of my models.  When adding an
> inline admin for that model, the interface only allows adding one new
> object.  I have tracked it down to code in django/django/forms/models.py:
> {{{
> fk = _get_foreign_key(parent_model, model, fk_name=fk_name)
> # enforce a max_num=1 when the foreign key to the parent model is
> unique.
> if fk.unique:
> max_num = 1
> }}}
>
> this is my model (autogenerated from an existing database):
> class TrtMeasurements(models.Model):
> observation = models.OneToOneField('TrtObservations',
> models.DO_NOTHING, primary_key=True)
> measurement_type = models.ForeignKey(TrtMeasurementTypes,
> models.DO_NOTHING, db_column='measurement_type')
> measurement_value = models.FloatField()
> comments = models.TextField(blank=True, null=True)
>
> class Meta:
> managed = False
> db_table = 'trt_measurements'
> unique_together = (('observation', 'measurement_type'),)
>
> While this makes sense for a single unique primary key, it is the wrong
> behavior for a composite primary key.
>
> Is a fix needed in Django so multiple objects with unique_together
> primary keys can be added as inlines, or should this be done using custom
> code?

New description:

 I have a unique_together primary key in one of my models.  When adding an
 inline admin for that model, the interface only allows adding one new
 object.  I have tracked it down to code in django/django/forms/models.py:
 {{{
 fk = _get_foreign_key(parent_model, model, fk_name=fk_name)
 # enforce a max_num=1 when the foreign key to the parent model is
 unique.
 if fk.unique:
 max_num = 1
 }}}

 this is my model (autogenerated from an existing database):

 {{{
 class TrtMeasurements(models.Model):
 observation = models.OneToOneField('TrtObservations',
 models.DO_NOTHING, primary_key=True)
 measurement_type = models.ForeignKey(TrtMeasurementTypes,
 models.DO_NOTHING, db_column='measurement_type')
 measurement_value = models.FloatField()
 comments = models.TextField(blank=True, null=True)

 class Meta:
 managed = False
 db_table = 'trt_measurements'
 unique_together = (('observation', 'measurement_type'),)
 }}}


 While this makes sense for a single unique primary key, it is the wrong
 behavior for a composite primary key.

 Is a fix needed in Django so multiple objects with unique_together primary
 keys can be added as inlines, or should this be done using custom code?

--

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018beabdc6a8-ef5a8a1f-cb81-4a70-a5a2-f1df99a9e3d4-00%40eu-central-1.amazonses.com.


Re: [Django] #34979: inlineformset_factory sets max_num forms to one even though there is a unique_together constraint

2023-11-19 Thread Django
#34979: inlineformset_factory sets max_num forms to one even though there is a
unique_together constraint
---+--
 Reporter:  Evan Hallein   |Owner:  nobody
 Type:  Uncategorized  |   Status:  new
Component:  contrib.admin  |  Version:  3.2
 Severity:  Normal |   Resolution:
 Keywords:  inline admin   | Triage Stage:  Unreviewed
Has patch:  0  |  Needs documentation:  0
  Needs tests:  0  |  Patch needs improvement:  0
Easy pickings:  0  |UI/UX:  1
---+--
Description changed by Evan Hallein:

Old description:

> I have a unique_together primary key in one of my models.  When adding an
> inline admin for that model, the interface only allows adding one new
> object.  I have tracked it down to code in django/django/forms/models.py:
> {{{
> fk = _get_foreign_key(parent_model, model, fk_name=fk_name)
> # enforce a max_num=1 when the foreign key to the parent model is
> unique.
> if fk.unique:
> max_num = 1
> }}}
>
> While this makes sense for a single unique primary key, it is the wrong
> behavior for a composite primary key.
>
> Is a fix needed in Django so multiple objects with unique_together
> primary keys can be added as inlines, or should this be done using custom
> code?

New description:

 I have a unique_together primary key in one of my models.  When adding an
 inline admin for that model, the interface only allows adding one new
 object.  I have tracked it down to code in django/django/forms/models.py:
 {{{
 fk = _get_foreign_key(parent_model, model, fk_name=fk_name)
 # enforce a max_num=1 when the foreign key to the parent model is
 unique.
 if fk.unique:
 max_num = 1
 }}}

 this is my model (autogenerated from an existing database):
 class TrtMeasurements(models.Model):
 observation = models.OneToOneField('TrtObservations',
 models.DO_NOTHING, primary_key=True)
 measurement_type = models.ForeignKey(TrtMeasurementTypes,
 models.DO_NOTHING, db_column='measurement_type')
 measurement_value = models.FloatField()
 comments = models.TextField(blank=True, null=True)

 class Meta:
 managed = False
 db_table = 'trt_measurements'
 unique_together = (('observation', 'measurement_type'),)

 While this makes sense for a single unique primary key, it is the wrong
 behavior for a composite primary key.

 Is a fix needed in Django so multiple objects with unique_together primary
 keys can be added as inlines, or should this be done using custom code?

--

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018beabd5836-b24db87b-d45d-445a-b4f4-53a2cb993b24-00%40eu-central-1.amazonses.com.


[Django] #34979: inlineformset_factory sets max_num forms to one even though there is a unique_together constraint

2023-11-19 Thread Django
#34979: inlineformset_factory sets max_num forms to one even though there is a
unique_together constraint
-+--
   Reporter:  ehallein   |  Owner:  nobody
   Type:  Uncategorized  | Status:  new
  Component:  contrib.admin  |Version:  3.2
   Severity:  Normal |   Keywords:  inline admin
   Triage Stage:  Unreviewed |  Has patch:  0
Needs documentation:  0  |Needs tests:  0
Patch needs improvement:  0  |  Easy pickings:  0
  UI/UX:  1  |
-+--
 I have a unique_together primary key in one of my models.  When adding an
 inline admin for that model, the interface only allows adding one new
 object.  I have tracked it down to code in django/django/forms/models.py:
 {{{
 fk = _get_foreign_key(parent_model, model, fk_name=fk_name)
 # enforce a max_num=1 when the foreign key to the parent model is
 unique.
 if fk.unique:
 max_num = 1
 }}}

 While this makes sense for a single unique primary key, it is the wrong
 behavior for a composite primary key.

 Is a fix needed in Django so multiple objects with unique_together primary
 keys can be added as inlines, or should this be done using custom code?

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018beaa6f107-66adf339-ea8a-412b-877c-af6cefe6788c-00%40eu-central-1.amazonses.com.


Re: [Django] #34972: Aggregate with CombinedExpression resulting in NotImplemented instead of None after update from 3.2 -> 4.2

2023-11-19 Thread Django
#34972: Aggregate with CombinedExpression resulting in NotImplemented instead of
None after update from 3.2 -> 4.2
-+-
 Reporter:  ElRoberto538 |Owner:  nobody
 Type:  Bug  |   Status:  closed
Component:  Database layer   |  Version:  4.2
  (models, ORM)  |   Resolution:
 Severity:  Normal   |  worksforme
 Keywords:  CombinedExpression,  | Triage Stage:
  NotImplemented, aggregate  |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by ElRoberto538):

 We tried it in a different project and confirmed it worked, I expect this
 is an issue with the mssql-django DB connector.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be9ab171a-ec62e8b7-7c03-4209-8ae5-ea791b48842e-00%40eu-central-1.amazonses.com.


[Django] #34978: Annotating through an aggregate with MySQL/MariaDB raises 1056 "Can't group on" error

2023-11-19 Thread Django
#34978: Annotating through an aggregate with MySQL/MariaDB raises 1056 "Can't 
group
on" error
-+-
   Reporter:  Matthew|  Owner:  nobody
  Somerville |
   Type:  Bug| Status:  new
  Component:  Database   |Version:  4.2
  layer (models, ORM)|
   Severity:  Normal |   Keywords:
   Triage Stage: |  Has patch:  0
  Unreviewed |
Needs documentation:  0  |Needs tests:  0
Patch needs improvement:  0  |  Easy pickings:  0
  UI/UX:  0  |
-+-
 I have some code I am trying to update from Django 3.2 to 4.2, using
 MariaDB, that has worked in previous Django versions, and works fine in
 4.1, but fails in 4.2. You can see an example GitHub Action output at
 https://github.com/dracos/Theatricalia/actions/runs/6922955832 showing 3
 and 4.1 passing, but 4.2 failing.

 One problem query is the following code:
 {{{
 seen =
 
user.visit_set.annotate(min_press_date=Min('production__place__press_date')).annotate(best_date=RawSQL('MIN(IFNULL(productions_place.press_date,
 IF(productions_place.end_date!="", productions_place.end_date,
 productions_place.start_date)))', ())).order_by('-best_date')
 }}}

 In Django 4.1, this produces the following SQL, which works fine:
 {{{
 SELECT `productions_visit`.`id`, `productions_visit`.`production_id`,
 `productions_visit`.`user_id`, `productions_visit`.`recommend`,
 `productions_visit`.`date`, MIN(`productions_place`.`press_date`) AS
 `min_press_date`, (MIN(IFNULL(productions_place.press_date,
 IF(productions_place.end_date!="", productions_place.end_date,
 productions_place.start_date AS `best_date` FROM `productions_visit`
 INNER JOIN `productions_production` ON
 (`productions_visit`.`production_id` = `productions_production`.`id`) LEFT
 OUTER JOIN `productions_place` ON (`productions_production`.`id` =
 `productions_place`.`production_id`) WHERE `productions_visit`.`user_id` =
 1 GROUP BY `productions_visit`.`id` ORDER BY `best_date` DESC
 }}}

 Whilst the SQL produced by Django 4.2 is:
 {{{
 SELECT `productions_visit`.`id`, `productions_visit`.`production_id`,
 `productions_visit`.`user_id`, `productions_visit`.`recommend`,
 `productions_visit`.`date`, MIN(`productions_place`.`press_date`) AS
 `min_press_date`, (MIN(IFNULL(productions_place.press_date,
 IF(productions_place.end_date!="", productions_place.end_date,
 productions_place.start_date AS `best_date` FROM `productions_visit`
 INNER JOIN `productions_production` ON
 (`productions_visit`.`production_id` = `productions_production`.`id`) LEFT
 OUTER JOIN `productions_place` ON (`productions_production`.`id` =
 `productions_place`.`production_id`) WHERE `productions_visit`.`user_id` =
 1 GROUP BY `productions_visit`.`id`, 7 ORDER BY 7 DESC LIMIT 21
 }}}

 It has added a group by on column 7 (which is best_date) and this then
 gives a "1056 Can't group by best_date" error from MySQL/MariaDB.

 I have bisected Django between 4.1 and 4.2, and the problem was introduced
 by the fix for #31331 in 041551d716b69ee7c81199eee86a2d10a72e15ab. Somehow
 that fix means my annotation is now being included in the group by when it
 shouldn't be, as it's an aggregate per visit ID, as far as I understand.
 Let me know if you need any other details.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be988fc7b-7fc7083d-c974-483c-8ba7-26455e3e1814-00%40eu-central-1.amazonses.com.


Re: [Django] #34971: Several loggers missing from logging documentation

2023-11-19 Thread Django
#34971: Several loggers missing from logging documentation
-+-
 Reporter:  Ryan Siemens |Owner:  Benoît
 Type:   |  Durand
  Cleanup/optimization   |   Status:  assigned
Component:  Documentation|  Version:  5.0
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  1
Easy pickings:  1|UI/UX:  0
-+-
Changes (by Simon Charette):

 * needs_better_patch:  0 => 1
 * has_patch:  0 => 1


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be94293e3-94fea258-d912-4907-a773-32c586dd45ba-00%40eu-central-1.amazonses.com.


Re: [Django] #34971: Several loggers missing from logging documentation

2023-11-19 Thread Django
#34971: Several loggers missing from logging documentation
--+
 Reporter:  Ryan Siemens  |Owner:  duranbe
 Type:  Cleanup/optimization  |   Status:  assigned
Component:  Documentation |  Version:  5.0
 Severity:  Normal|   Resolution:
 Keywords:| Triage Stage:  Accepted
Has patch:  0 |  Needs documentation:  0
  Needs tests:  0 |  Patch needs improvement:  0
Easy pickings:  1 |UI/UX:  0
--+
Changes (by duranbe):

 * owner:  nobody => duranbe
 * status:  new => assigned


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be90ad0f6-c24cecd9-bd69-45ba-8837-fbc38e2e301a-00%40eu-central-1.amazonses.com.


Re: [Django] #34118: Python 3.12 compatibility

2023-11-19 Thread Django
#34118: Python 3.12 compatibility
-+-
 Reporter:  Mariusz Felisiak |Owner:  Mariusz
 |  Felisiak
 Type:  New feature  |   Status:  closed
Component:  Core (Other) |  Version:  dev
 Severity:  Normal   |   Resolution:  fixed
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-
Changes (by Mariusz Felisiak):

 * status:  assigned => closed
 * resolution:   => fixed


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be83d7eb6-b385464e-966e-405f-ac36-ab2779741339-00%40eu-central-1.amazonses.com.


Re: [Django] #34118: Python 3.12 compatibility

2023-11-19 Thread Django
#34118: Python 3.12 compatibility
-+-
 Reporter:  Mariusz Felisiak |Owner:  Mariusz
 |  Felisiak
 Type:  New feature  |   Status:  assigned
Component:  Core (Other) |  Version:  dev
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Mariusz Felisiak ):

 In [changeset:"233e2a9e31ba7acbad4a0f5131ed2bcdcdba3b02" 233e2a9e]:
 {{{
 #!CommitTicketReference repository=""
 revision="233e2a9e31ba7acbad4a0f5131ed2bcdcdba3b02"
 [4.2.x] Refs #34118 -- Added Python 3.12 to classifiers and tox.ini.

 Backport of f955c90488e1f32e6e38b3c956e937579d389fb2 from main.
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be83c3cff-4182c8d7-e88c-4753-ae9e-c310983b7b96-00%40eu-central-1.amazonses.com.


Re: [Django] #34118: Python 3.12 compatibility

2023-11-19 Thread Django
#34118: Python 3.12 compatibility
-+-
 Reporter:  Mariusz Felisiak |Owner:  Mariusz
 |  Felisiak
 Type:  New feature  |   Status:  assigned
Component:  Core (Other) |  Version:  dev
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Mariusz Felisiak ):

 In [changeset:"9afeb6b9b6d4e025306c918e7e717288049cbdfd" 9afeb6b9]:
 {{{
 #!CommitTicketReference repository=""
 revision="9afeb6b9b6d4e025306c918e7e717288049cbdfd"
 [4.2.x] Refs #34118 -- Doc'd Python 3.12 compatibility in Django 4.2.x.

 Backport of ecfea054ee2b8ddfa027459ff8b6aecba05facf7 from main.
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be83c3d56-1f4bc5b8-e8fc-41d2-bf4e-de500b35c071-00%40eu-central-1.amazonses.com.


Re: [Django] #34118: Python 3.12 compatibility

2023-11-19 Thread Django
#34118: Python 3.12 compatibility
-+-
 Reporter:  Mariusz Felisiak |Owner:  Mariusz
 |  Felisiak
 Type:  New feature  |   Status:  assigned
Component:  Core (Other) |  Version:  dev
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Mariusz Felisiak ):

 In [changeset:"c342b58243fac5019290bb328d68093462066535" c342b58]:
 {{{
 #!CommitTicketReference repository=""
 revision="c342b58243fac5019290bb328d68093462066535"
 [5.0.x] Refs #34118 -- Added Python 3.12 to classifiers and tox.ini.

 Backport of f955c90488e1f32e6e38b3c956e937579d389fb2 from main
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be8372a3d-cf36ccb7-2317-4ffb-8d18-9a5713beb1db-00%40eu-central-1.amazonses.com.


Re: [Django] #34118: Python 3.12 compatibility

2023-11-19 Thread Django
#34118: Python 3.12 compatibility
-+-
 Reporter:  Mariusz Felisiak |Owner:  Mariusz
 |  Felisiak
 Type:  New feature  |   Status:  assigned
Component:  Core (Other) |  Version:  dev
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Mariusz Felisiak ):

 In [changeset:"f721fb937c6e41fab3cc1451f7170e8d9ab4940d" f721fb93]:
 {{{
 #!CommitTicketReference repository=""
 revision="f721fb937c6e41fab3cc1451f7170e8d9ab4940d"
 [5.0.x] Refs #34118 -- Doc'd Python 3.12 compatibility in Django 4.2.x.

 Backport of ecfea054ee2b8ddfa027459ff8b6aecba05facf7 from main
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be8372a6e-88fec2a5-d1bb-482f-b503-08cdecfa74b6-00%40eu-central-1.amazonses.com.


Re: [Django] #34118: Python 3.12 compatibility

2023-11-19 Thread Django
#34118: Python 3.12 compatibility
-+-
 Reporter:  Mariusz Felisiak |Owner:  Mariusz
 |  Felisiak
 Type:  New feature  |   Status:  assigned
Component:  Core (Other) |  Version:  dev
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Mariusz Felisiak ):

 In [changeset:"f955c90488e1f32e6e38b3c956e937579d389fb2" f955c90]:
 {{{
 #!CommitTicketReference repository=""
 revision="f955c90488e1f32e6e38b3c956e937579d389fb2"
 Refs #34118 -- Added Python 3.12 to classifiers and tox.ini.
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be835a74d-0d5c16b9-11d2-450e-a52a-fccd95f42a91-00%40eu-central-1.amazonses.com.


Re: [Django] #34118: Python 3.12 compatibility

2023-11-19 Thread Django
#34118: Python 3.12 compatibility
-+-
 Reporter:  Mariusz Felisiak |Owner:  Mariusz
 |  Felisiak
 Type:  New feature  |   Status:  assigned
Component:  Core (Other) |  Version:  dev
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by Mariusz Felisiak ):

 In [changeset:"ecfea054ee2b8ddfa027459ff8b6aecba05facf7" ecfea05]:
 {{{
 #!CommitTicketReference repository=""
 revision="ecfea054ee2b8ddfa027459ff8b6aecba05facf7"
 Refs #34118 -- Doc'd Python 3.12 compatibility in Django 4.2.x.
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be835a7c3-099d5503-07c5-4b03-9e11-5975ef604079-00%40eu-central-1.amazonses.com.


Re: [Django] #34118: Python 3.12 compatibility

2023-11-19 Thread Django
#34118: Python 3.12 compatibility
-+-
 Reporter:  Mariusz Felisiak |Owner:  Mariusz
 |  Felisiak
 Type:  New feature  |   Status:  assigned
Component:  Core (Other) |  Version:  dev
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:  Accepted
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  0|UI/UX:  0
-+-

Comment (by GitHub ):

 In [changeset:"b5750b9f6414865200221d9c0dc568ae6b551294" b5750b9f]:
 {{{
 #!CommitTicketReference repository=""
 revision="b5750b9f6414865200221d9c0dc568ae6b551294"
 [4.2.x] Refs #34118 -- Fixed stacklevel in complex_setting_changed on
 Python 3.12.

 This fix is unnecessary in Django 5.0 since
 e83a88566a71a2353cebc35992c110be0f8628af because signals no longer use
 sync_to_async().
 }}}

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be8335973-ceeb54c2-1371-4062-96eb-59a331cdea36-00%40eu-central-1.amazonses.com.


Re: [Django] #34977: Turn link to change password form in admin user change form into a button

2023-11-19 Thread Django
#34977: Turn link to change password form in admin user change form into a 
button
-+-
 Reporter:  Fabian Braun |Owner:  Fabian
 Type:   |  Braun
  Cleanup/optimization   |   Status:  assigned
Component:  contrib.auth |  Version:  4.2
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  1
-+-
Changes (by Fabian Braun):

 * owner:  Fabian Braun => Fabian Braun


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be7e98e27-fdef2f3e-cbe6-4b65-8e26-b748e02e0959-00%40eu-central-1.amazonses.com.


Re: [Django] #34977: Turn link to change password form in admin user change form into a button

2023-11-19 Thread Django
#34977: Turn link to change password form in admin user change form into a 
button
-+-
 Reporter:  Fabian Braun |Owner:  Fabian
 Type:   |  Braun
  Cleanup/optimization   |   Status:  assigned
Component:  contrib.auth |  Version:  4.2
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  1|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  1
-+-
Changes (by Fabian Braun):

 * has_patch:  0 => 1


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be7e8620b-8f7b0d9f-2100-4a81-a8cc-369af8e744e7-00%40eu-central-1.amazonses.com.


Re: [Django] #34977: Turn link to change password form in admin user change form into a button

2023-11-19 Thread Django
#34977: Turn link to change password form in admin user change form into a 
button
-+-
 Reporter:  Fabian Braun |Owner:  Fabian
 Type:   |  Braun
  Cleanup/optimization   |   Status:  assigned
Component:  contrib.auth |  Version:  4.2
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  1
-+-
Changes (by Fabian Braun):

 * owner:  nobody => Fabian Braun
 * status:  new => assigned


-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be7c569d5-7f887687-01a8-450c-b17c-03e75bffd4d6-00%40eu-central-1.amazonses.com.


Re: [Django] #34977: Turn link to change password form in admin user change form into a button

2023-11-19 Thread Django
#34977: Turn link to change password form in admin user change form into a 
button
-+-
 Reporter:  Fabian Braun |Owner:  nobody
 Type:   |   Status:  new
  Cleanup/optimization   |
Component:  contrib.auth |  Version:  4.2
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  1
-+-
Description changed by Fabian Braun:

Old description:

> Currently, to change a user's password the admin user must got to the
> change user form, find the password field and click a link in its help
> text.
>
> [[Image(https://code.djangoproject.com/raw-attachment/ticket/34977
> /password-link.jpg)]]
>
> For better user guidance and accessibility, I suggest turning this link
> into a button:
>
> [[Image(https://user-
> images.githubusercontent.com/16904477/283912840-524b-3845-411a-a804-7217d8778e62.png)]]
>
> As David Smith pointed out, links in help texts are not read by screen
> readers:
>
> "Do not include links within hint text. While screen readers will read
> out the link text when describing the field, they will not tell users
> that the text is a link." (https://design-
> system.service.gov.uk/components/text-input/#hint-text).
>
> I'll be happy to provide a patch.

New description:

 Currently, to change a user's password the admin user must got to the
 change user form, find the password field and click a link in its help
 text.

 [[Image(https://code.djangoproject.com/raw-attachment/ticket/34977
 /password-link.jpg)]]

 For better user guidance and accessibility, I suggest turning this link
 into a button:

 [[Image(https://code.djangoproject.com/raw-attachment/ticket/34977
 /password-button.png)]]

 As David Smith pointed out, links in help texts are not read by screen
 readers:

 "Do not include links within hint text. While screen readers will read out
 the link text when describing the field, they will not tell users that the
 text is a link." (https://design-system.service.gov.uk/components/text-
 input/#hint-text).

 I'll be happy to provide a patch.

--

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be7c469ef-5a488e43-fb61-4043-8fdd-b4d10eca8239-00%40eu-central-1.amazonses.com.


Re: [Django] #34977: Turn link to change password form in admin user change form into a button

2023-11-19 Thread Django
#34977: Turn link to change password form in admin user change form into a 
button
-+-
 Reporter:  Fabian Braun |Owner:  nobody
 Type:   |   Status:  new
  Cleanup/optimization   |
Component:  contrib.auth |  Version:  4.2
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  1
-+-
Changes (by Fabian Braun):

 * Attachment "password-button.png" added.

 Potential new change or (in this case) set password button.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be7c40259-31d62df5-d876-4967-a427-eddd34cc2a79-00%40eu-central-1.amazonses.com.


Re: [Django] #34977: Turn link to change password form in admin user change form into a button

2023-11-19 Thread Django
#34977: Turn link to change password form in admin user change form into a 
button
-+-
 Reporter:  Fabian Braun |Owner:  nobody
 Type:   |   Status:  new
  Cleanup/optimization   |
Component:  contrib.auth |  Version:  4.2
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  1
-+-
Description changed by Fabian Braun:

Old description:

> Currently, to change a user's password the admin user must got to the
> change user form, find the password field and click a link in its help
> text.
>
> [[Image()]]
>
> For better user guidance and accessibility, I suggest turning this link
> into a button:
>
> [[Image(https://user-
> images.githubusercontent.com/16904477/283912840-524b-3845-411a-a804-7217d8778e62.png)]]
>
> As David Smith pointed out, links in help texts are not read by screen
> readers:
>
> "Do not include links within hint text. While screen readers will read
> out the link text when describing the field, they will not tell users
> that the text is a link." (https://design-
> system.service.gov.uk/components/text-input/#hint-text).
>
> I'll be happy to provide a patch.

New description:

 Currently, to change a user's password the admin user must got to the
 change user form, find the password field and click a link in its help
 text.

 [[Image(https://code.djangoproject.com/raw-attachment/ticket/34977
 /password-link.jpg)]]

 For better user guidance and accessibility, I suggest turning this link
 into a button:

 [[Image(https://user-
 
images.githubusercontent.com/16904477/283912840-524b-3845-411a-a804-7217d8778e62.png)]]

 As David Smith pointed out, links in help texts are not read by screen
 readers:

 "Do not include links within hint text. While screen readers will read out
 the link text when describing the field, they will not tell users that the
 text is a link." (https://design-system.service.gov.uk/components/text-
 input/#hint-text).

 I'll be happy to provide a patch.

--

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be7c2b868-57aa253c-a1f0-4c55-bd76-669bf9cc2484-00%40eu-central-1.amazonses.com.


Re: [Django] #34977: Turn link to change password form in admin user change form into a button

2023-11-19 Thread Django
#34977: Turn link to change password form in admin user change form into a 
button
-+-
 Reporter:  Fabian Braun |Owner:  nobody
 Type:   |   Status:  new
  Cleanup/optimization   |
Component:  contrib.auth |  Version:  4.2
 Severity:  Normal   |   Resolution:
 Keywords:   | Triage Stage:
 |  Unreviewed
Has patch:  0|  Needs documentation:  0
  Needs tests:  0|  Patch needs improvement:  0
Easy pickings:  1|UI/UX:  1
-+-
Changes (by Fabian Braun):

 * Attachment "password-link.jpg" added.

 Current link to change password form

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be7c220e0-73dc634e-8022-4c23-a7be-36879ff9170a-00%40eu-central-1.amazonses.com.


[Django] #34977: Turn link to change password form in admin user change form into a button

2023-11-19 Thread Django
#34977: Turn link to change password form in admin user change form into a 
button
+
   Reporter:  Fabian Braun  |  Owner:  nobody
   Type:  Cleanup/optimization  | Status:  new
  Component:  contrib.auth  |Version:  4.2
   Severity:  Normal|   Keywords:
   Triage Stage:  Unreviewed|  Has patch:  0
Needs documentation:  0 |Needs tests:  0
Patch needs improvement:  0 |  Easy pickings:  1
  UI/UX:  1 |
+
 Currently, to change a user's password the admin user must got to the
 change user form, find the password field and click a link in its help
 text.

 [[Image()]]

 For better user guidance and accessibility, I suggest turning this link
 into a button:

 [[Image(https://user-
 
images.githubusercontent.com/16904477/283912840-524b-3845-411a-a804-7217d8778e62.png)]]

 As David Smith pointed out, links in help texts are not read by screen
 readers:

 "Do not include links within hint text. While screen readers will read out
 the link text when describing the field, they will not tell users that the
 text is a link." (https://design-system.service.gov.uk/components/text-
 input/#hint-text).

 I'll be happy to provide a patch.

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018be7c16f49-db0ec7c7-e950-42ed-9c3d-2669b9e3c559-00%40eu-central-1.amazonses.com.