python / pythondotorg

Source code for python.org
https://www.python.org
Apache License 2.0
1.47k stars 587 forks source link

Tests: Silence naive datetime warning spam #2415

Open JacobCoffee opened 3 months ago

JacobCoffee commented 3 months ago

Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is.

When running tests we get this:

Tests Example pythondotorg on  4.2 [📝++(1)✓] via 🐋 colima via 🤖 v21.6.1 via  pyenv via 💎 v2.6.10 took 14s ✗ docker-compose run --rm web ./manage.py test events.tests.test_importer.EventsImporterTestCase [+] Creating 2/0 ✔ Container pythondotorg-redis-1 Running 0.0s ✔ Container pythondotorg-postgres-1 Running 0.0s Found 4 test(s). Creating test database for alias 'default'... System check identified no issues (0 silenced). ./usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2015-03-28 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2015-03-29 00:00:00) while time zone support is active. warnings.warn( ./usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-05-16 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-05-18 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-06-18 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-06-20 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-05-13 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-05-17 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-07-26 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-07-27 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-03-14 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-03-14 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-02-01 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-02-02 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-06-13 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-06-15 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-02-07 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-02-09 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-02-21 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-02-23 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-08-01 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-08-05 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-07-06 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-07-12 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-03-29 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2014-03-30 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-02-22 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2014-07-21 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2013-10-17 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2013-10-20 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2013-10-26 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2013-10-29 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2013-11-01 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2013-11-01 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2013-10-03 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2013-10-04 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2013-11-02 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2013-11-08 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2013-11-10 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_start received a naive datetime (2013-08-31 00:00:00) while time zone support is active. warnings.warn( /usr/local/lib/python3.9/site-packages/django/db/models/fields/__init__.py:1535: RuntimeWarning: DateTimeField OccurringRule.dt_end received a naive datetime (2013-09-01 00:00:00) while time zone support is active. warnings.warn(

Describe the solution you'd like A clear and concise description of what you want to happen. Ex. It would be great if [...]

It would be nice to silence these until we can fix them either by settings.py:

import warnings

warnings.filterwarnings(
    "ignore",
    message="DateTimeField .* received a naive datetime",
    category=RuntimeWarning,
    module='django.db.models.fields',
)

Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

Additional context Add any other context or screenshots about the feature request here.

JacobCoffee commented 3 months ago

Something like

Index: pydotorg/settings/base.py
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/pydotorg/settings/base.py b/pydotorg/settings/base.py
--- a/pydotorg/settings/base.py (revision 127dcc930ab323d391bc6939a370673c7fae26e8)
+++ b/pydotorg/settings/base.py (date 1710913519229)
@@ -1,4 +1,6 @@
 import os
+import warnings
+
 from dj_database_url import parse as dj_database_url_parser
 from decouple import config

@@ -21,6 +23,14 @@
     'site_descript': 'The official home of the Python Programming Language',
 }

+### silence naive DT warning during 2.2 -> 4.2 migration
+warnings.filterwarnings(
+    "ignore",
+    message="DateTimeField .* received a naive datetime",
+    category=RuntimeWarning,
+    module='django.db.models.fields',
+)
+
 ### Databases

 DATABASES = {