From 9cb735abebe179e9134d7334a604effd43d89c33 Mon Sep 17 00:00:00 2001 From: Diego Herrera Date: May 28 2024 18:03:21 +0000 Subject: Fix datetime.utcnow deprecation warning Signed-off-by: Diego Herrera --- diff --git a/fedpkg/__init__.py b/fedpkg/__init__.py index aa84bc1..0e1a007 100644 --- a/fedpkg/__init__.py +++ b/fedpkg/__init__.py @@ -15,7 +15,7 @@ import git import re import six -from datetime import datetime, timedelta +from datetime import datetime, timedelta, timezone # doc/fedpkg_man_page.py uses the 'cli' import from . import cli # noqa @@ -363,7 +363,7 @@ class Commands(pyrpkg.Commands): override = result['overrides'][0] expiration_date = datetime.strptime(override['expiration_date'], '%Y-%m-%d %H:%M:%S') - if expiration_date < datetime.utcnow(): + if expiration_date < datetime.now(timezone.utc).replace(tzinfo=None): self.log.info( 'Buildroot override for %s exists and is expired. Consider' ' using command `override extend` to extend duration.', @@ -384,7 +384,7 @@ class Commands(pyrpkg.Commands): override = result['overrides'][0] expiration_date = datetime.strptime(override['expiration_date'], '%Y-%m-%d %H:%M:%S') - utcnow = datetime.utcnow() + utcnow = datetime.now(timezone.utc).replace(tzinfo=None) # bodhi-client binding API save_override calculates expiration # date by adding duration to datetime.utcnow diff --git a/fedpkg/bugzilla.py b/fedpkg/bugzilla.py index 08674fa..9305572 100644 --- a/fedpkg/bugzilla.py +++ b/fedpkg/bugzilla.py @@ -13,7 +13,7 @@ # So that we import the bugzilla package and not fedpkg.bugzilla from __future__ import absolute_import -from datetime import datetime +from datetime import datetime, timezone import bugzilla @@ -95,7 +95,7 @@ class BugzillaClient(object): if update_dt: dt = datetime.strptime( update_dt.value, '%Y%m%dT%H:%M:%S') - delta = datetime.utcnow().date() - dt.date() + delta = datetime.now(timezone.utc).replace(tzinfo=None).date() - dt.date() if delta.days > 60: raise rpkgError('The Bugzilla bug\'s review was ' 'approved over 60 days ago') diff --git a/fedpkg/utils.py b/fedpkg/utils.py index a596012..d104b50 100644 --- a/fedpkg/utils.py +++ b/fedpkg/utils.py @@ -12,7 +12,7 @@ import json import re -from datetime import datetime +from datetime import datetime, timezone import git import requests @@ -292,7 +292,7 @@ def verify_sls(sl_dict): for sl, eol in sl_dict.items(): if re.match(eol_date_regex, eol): eol_date = datetime.strptime(eol, '%Y-%m-%d').date() - today = datetime.utcnow().date() + today = datetime.now(timezone.utc).replace(tzinfo=None).date() if eol_date < today: raise rpkgError( 'The SL "{0}" is already expired'.format(eol)) diff --git a/test/test_cli.py b/test/test_cli.py index b6a11d1..3aa6737 100644 --- a/test/test_cli.py +++ b/test/test_cli.py @@ -16,7 +16,7 @@ import json import os import re import sys -from datetime import datetime, timedelta +from datetime import datetime, timedelta, timezone from os import rmdir from tempfile import mkdtemp, mkstemp @@ -472,7 +472,7 @@ class TestRequestRepo(CliTestCase): self.mock_bug.assigned_to = 'Tom Brady' self.mock_bug.setter = 'Tom Brady' mod_date = Mock() - mod_date.value = datetime.utcnow().strftime('%Y%m%dT%H:%M:%S') + mod_date.value = datetime.now(timezone.utc).replace(tzinfo=None).strftime('%Y%m%dT%H:%M:%S') self.mock_bug.flags = [{ 'status': '+', 'name': 'fedora-review', @@ -804,7 +804,7 @@ class TestRequestRepo(CliTestCase): """Tests request-repo errors when the bug was approved over 60 days ago """ self.mock_bug.flags[0]['modification_date'].value = \ - (datetime.utcnow() - timedelta(days=75)).strftime( + (datetime.now(timezone.utc).replace(tzinfo=None) - timedelta(days=75)).strftime( '%Y%m%dT%H:%M:%S') mock_bz.getbug.return_value = self.mock_bug cli_cmd = ['fedpkg-stage', '--path', self.cloned_repo_path, @@ -1968,7 +1968,7 @@ class TestBodhiOverrideExtend(CliTestCase): @patch('fedpkg.BodhiClient.send_request') def test_extend_override_by_days( self, send_request, csrf, list_overrides): - utcnow = datetime.utcnow() + utcnow = datetime.now(timezone.utc).replace(tzinfo=None) override_expiration_date = utcnow + timedelta(days=7) build_nvr = 'somepkg-1.54-2.fc28' build_override = { @@ -2021,7 +2021,7 @@ class TestBodhiOverrideExtend(CliTestCase): @patch('fedpkg.BodhiClient.send_request') def test_extend_override_by_specific_date( self, send_request, csrf, list_overrides): - utcnow = datetime.utcnow() + utcnow = datetime.now(timezone.utc) override_expiration_date = utcnow + timedelta(days=7) build_nvr = 'somepkg-1.54-2.fc28' build_override = { @@ -2078,7 +2078,7 @@ class TestBodhiOverrideExtend(CliTestCase): @freeze_time('2018-06-08 16:17:30') def test_extend_for_expired_override( self, send_request, csrf, list_overrides): - utcnow = datetime.utcnow() + utcnow = datetime.now(timezone.utc).replace(tzinfo=None) # Make override expired override_expiration_date = utcnow - timedelta(days=7) build_nvr = 'somepkg-1.54-2.fc28' @@ -2136,7 +2136,7 @@ class TestBodhiOverrideExtend(CliTestCase): self, extend_override, csrf, list_overrides): extend_override.side_effect = Exception - utcnow = datetime.utcnow() + utcnow = datetime.now(timezone.utc).replace(tzinfo=None) override_expiration_date = utcnow + timedelta(days=7) build_nvr = 'somepkg-1.54-2.fc28' @@ -2171,7 +2171,7 @@ class TestBodhiOverrideExtend(CliTestCase): @patch('fedpkg.BodhiClient.send_request') def test_retry_to_extend_override_by_days( self, send_request, csrf, list_overrides): - utcnow = datetime.utcnow() + utcnow = datetime.now(timezone.utc).replace(tzinfo=None) override_expiration_date = utcnow + timedelta(days=7) from fedora.client import AuthError