dateutil icon indicating copy to clipboard operation
dateutil copied to clipboard

chore(python): add Python 3.12 in test matrix

Open stegayet opened this issue 2 years ago • 7 comments

Summary of changes

Closes https://github.com/dateutil/dateutil/issues/1301.

Pull Request Checklist

  • [ ] Changes have tests
  • [ ] Authors have been added to AUTHORS.md
  • [ ] News fragment added in changelog.d. See CONTRIBUTING.md for details

stegayet avatar Aug 05 '23 23:08 stegayet

I seems this work is already ongoing in https://github.com/dateutil/dateutil/pull/1290.

stegayet avatar Aug 05 '23 23:08 stegayet

@stegayet This PR has more of the necessary parts than #1290.

I recommend adding this, it will allow the 3.12 jobs to run, regardless of the unrelated 2.7 failures:

diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml
index b02427c..4e68c0a 100644
--- a/.github/workflows/validate.yml
+++ b/.github/workflows/validate.yml
@@ -11,6 +11,7 @@ on:
 jobs:
   test:
     strategy:
+      fail-fast: false
       matrix:
         python-version: [
           "2.7",

hugovk avatar Aug 26 '23 15:08 hugovk

Python 2.7 has been removed from the runners on June 19. There are two options:

  1. Remove tests on Python 2.7
  2. Create custom solution to continue running tests on Python 2.7

Since Python 2.7 is EOL since 2020, I'd recommend the first option.

cbrnr avatar Oct 04 '23 12:10 cbrnr

I agree but let's not discuss Python 2.7 here, instead please see https://github.com/dateutil/dateutil/issues/653 and https://github.com/dateutil/dateutil/issues/1291. The failing 2.7 CI job need not delay this PR.

hugovk avatar Oct 04 '23 15:10 hugovk

All other jobs are green, is there anything else that's missing?

cbrnr avatar Oct 04 '23 17:10 cbrnr

LGTM! Would be good to merge this.

Python 3.12 with dateutil 2.8.2 shows a deprecation warning:

.tox/py312-fuse3/lib/python3.12/site-packages/dateutil/tz/tz.py:37: 16 warnings
/vagrant/borg/borg/.tox/py312-fuse3/lib/python3.12/site-packages/dateutil/tz/tz.py:37: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC).
     EPOCH = datetime.datetime.utcfromtimestamp(0)

BTW, the setuptools_scm related failure seen in the test run might go away with 8.0.4.

ThomasWaldmann avatar Oct 09 '23 18:10 ThomasWaldmann

Please rebase so we can see if the tests now pass.

cclauss avatar Jan 19 '24 10:01 cclauss