8
8
import shutil
9
9
import tempfile
10
10
import uuid
11
- from datetime import datetime
11
+ from datetime import datetime , timezone
12
12
from glob import glob
13
13
from pathlib import Path
14
14
from subprocess import CalledProcessError
@@ -31,7 +31,8 @@ def bump_version(version_spec, version_cmd, changelog_path):
31
31
parsed = parse_version (version )
32
32
33
33
if util .SETUP_PY .exists () and not hasattr (parsed , "major" ):
34
- raise ValueError (f"Invalid version { version } " )
34
+ msg = f"Invalid version { version } "
35
+ raise ValueError (msg )
35
36
36
37
# Bail if tag already exists
37
38
tag_name = f"v{ version } "
@@ -72,7 +73,8 @@ def draft_changelog(
72
73
73
74
tags = util .run ("git --no-pager tag" , quiet = True )
74
75
if f"v{ version } " in tags .splitlines ():
75
- raise ValueError (f"Tag v{ version } already exists" )
76
+ msg = f"Tag v{ version } already exists"
77
+ raise ValueError (msg )
76
78
77
79
current = changelog .extract_current (changelog_path )
78
80
util .log (f"\n \n Current Changelog Entry:\n { current } " )
@@ -116,8 +118,10 @@ def draft_changelog(
116
118
if str (rel .draft ).lower () == "false" :
117
119
continue
118
120
created = rel .created_at
119
- d_created = datetime .strptime (created , r"%Y-%m-%dT%H:%M:%SZ" )
120
- delta = datetime .utcnow () - d_created
121
+ d_created = datetime .strptime (created , r"%Y-%m-%dT%H:%M:%SZ" ).astimezone (
122
+ tz = timezone .utc
123
+ )
124
+ delta = datetime .now (tz = timezone .utc ) - d_created
121
125
if delta .days > 0 :
122
126
gh .repos .delete_release (rel .id )
123
127
@@ -254,7 +258,8 @@ def delete_release(auth, release_url, dry_run=False):
254
258
match = re .match (pattern , release_url )
255
259
match = match or re .match (util .RELEASE_API_PATTERN , release_url )
256
260
if not match :
257
- raise ValueError (f"Release url is not valid: { release_url } " )
261
+ msg = f"Release url is not valid: { release_url } "
262
+ raise ValueError (msg )
258
263
259
264
gh = util .get_gh_object (dry_run = dry_run , owner = match ["owner" ], repo = match ["repo" ], token = auth )
260
265
release = util .release_for_url (gh , release_url )
@@ -300,14 +305,16 @@ def extract_release(auth, dist_dir, dry_run, release_url):
300
305
if asset .name .endswith (".json" ):
301
306
continue
302
307
if asset .name not in asset_shas :
303
- raise ValueError (f"{ asset .name } was not found in asset_shas file" )
308
+ msg = f"{ asset .name } was not found in asset_shas file"
309
+ raise ValueError (msg )
304
310
if util .compute_sha256 (dist / asset .name ) != asset_shas [asset .name ]:
305
- raise ValueError (f"sha for { asset .name } does not match asset_shas file" )
311
+ msg = f"sha for { asset .name } does not match asset_shas file"
312
+ raise ValueError (msg )
306
313
307
314
os .chdir (orig_dir )
308
315
309
316
310
- def publish_assets (
317
+ def publish_assets ( # noqa
311
318
dist_dir ,
312
319
npm_token ,
313
320
npm_cmd ,
@@ -321,7 +328,7 @@ def publish_assets(
321
328
"""Publish release asset(s)"""
322
329
os .environ ["NPM_REGISTRY" ] = npm_registry
323
330
os .environ ["TWINE_REPOSITORY_URL" ] = twine_repository_url
324
- twine_token = ""
331
+ twine_token = "" # noqa
325
332
326
333
if len (glob (f"{ dist_dir } /*.tgz" )):
327
334
npm .handle_npm_config (npm_token )
@@ -330,10 +337,7 @@ def publish_assets(
330
337
331
338
res = python_package .split (":" )
332
339
python_package_path = res [0 ]
333
- if len (res ) == 2 :
334
- python_package_name = res [1 ].replace ("-" , "_" )
335
- else :
336
- python_package_name = ""
340
+ python_package_name = res [1 ].replace ("-" , "_" ) if len (res ) == 2 else "" # noqa
337
341
338
342
if release_url and len (glob (f"{ dist_dir } /*.whl" )):
339
343
twine_token = python .get_pypi_token (release_url , python_package_path )
@@ -357,10 +361,7 @@ def publish_assets(
357
361
suffix = Path (path ).suffix
358
362
if suffix in [".gz" , ".whl" ]:
359
363
dist : Union [Type [SDist ], Type [Wheel ]]
360
- if suffix == ".gz" :
361
- dist = SDist
362
- else :
363
- dist = Wheel
364
+ dist = SDist if suffix == ".gz" else Wheel
364
365
pkg = dist (path )
365
366
if not python_package_name or python_package_name == pkg .name :
366
367
env = os .environ .copy ()
@@ -409,7 +410,7 @@ def publish_release(auth, dry_run, release_url):
409
410
util .actions_output ("release_url" , release .html_url )
410
411
411
412
412
- def prep_git (ref , branch , repo , auth , username , url ):
413
+ def prep_git (ref , branch , repo , auth , username , url ): # noqa
413
414
"""Set up git"""
414
415
repo = repo or util .get_repo ()
415
416
@@ -538,7 +539,8 @@ def forwardport_changelog(auth, ref, branch, repo, username, changelog_path, dry
538
539
break
539
540
540
541
if not prev_header :
541
- raise ValueError ("No anchor for previous entry" )
542
+ msg = "No anchor for previous entry"
543
+ raise ValueError (msg )
542
544
543
545
# Check out the branch again
544
546
util .run (f"git checkout -B { branch } origin/{ branch } " )
0 commit comments