suite-py 1.43.0__py3-none-any.whl → 1.43.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
suite_py/__version__.py CHANGED
@@ -1,2 +1,2 @@
1
1
  # -*- encoding: utf-8 -*-
2
- __version__ = "1.43.0"
2
+ __version__ = "1.43.2"
suite_py/cli.py CHANGED
@@ -38,7 +38,6 @@ from typing import Optional
38
38
 
39
39
  import click
40
40
  import requests
41
- from autoupgrade import Package
42
41
  from click.exceptions import ClickException
43
42
 
44
43
  from suite_py.__version__ import __version__
@@ -95,6 +94,8 @@ def upgrade_suite_py_if_needed(break_on_missing_package: bool = False) -> None:
95
94
  # If available, upgrade (if needed)
96
95
  latest_version = fetch_latest_version()
97
96
  if latest_version is None or latest_version > installed_version:
97
+ from autoupgrade import Package
98
+
98
99
  # If we fail to fetch the latest version, fallback to attempting the upgrade anyway
99
100
  Package("suite_py").upgrade()
100
101
  except Exception as error:
@@ -15,6 +15,7 @@ from suite_py.lib.handler.youtrack_handler import YoutrackHandler
15
15
 
16
16
  class Release:
17
17
  # pylint: disable=too-many-instance-attributes
18
+ # pylint: disable=too-many-positional-arguments
18
19
  def __init__(self, action, project, captainhook, config, tokens):
19
20
  self._action = action
20
21
  self._project = project
@@ -19,6 +19,7 @@ class GithubHandler:
19
19
  def get_user(self):
20
20
  return self._client.get_user()
21
21
 
22
+ # pylint: disable=too-many-positional-arguments
22
23
  def create_pr(self, repo, branch, title, body="", base="master", is_draft=False):
23
24
  return self.get_repo(repo).create_pull(
24
25
  title=title, head=branch, base=base, body=body, draft=is_draft
@@ -1,4 +1,5 @@
1
1
  import os
2
+
2
3
  import yaml
3
4
 
4
5
  from suite_py.lib import logger
suite_py/lib/logger.py CHANGED
@@ -1,33 +1,40 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  import logging
3
3
 
4
- import logzero
5
- from logzero import logger as _logger
4
+ from rich.logging import RichHandler
6
5
 
7
- DEFAULT_FORMAT = "%(color)s[%(levelname)1.4s]%(end_color)s %(message)s"
8
- # Set a custom formatter
9
- formatter = logzero.LogFormatter(fmt=DEFAULT_FORMAT)
6
+ # Rich handles color and formatting internally
7
+ # This format will make it so we print stuff like "[I] message"
8
+ LOG_FORMAT = "%(message)s"
9
+
10
+ LOGGER_NAME = "suite_py_logger"
10
11
 
11
12
 
12
13
  def setup(verbose):
13
- logzero.setup_default_logger(formatter=formatter)
14
14
  level = logging.DEBUG if verbose else logging.INFO
15
15
 
16
- _logger.setLevel(level)
17
- _logger.debug("Logging as %s", level)
16
+ logging.basicConfig(
17
+ level=level,
18
+ format=LOG_FORMAT,
19
+ datefmt="[%X]",
20
+ handlers=[RichHandler(rich_tracebacks=True, markup=False)],
21
+ )
22
+
23
+ logger = logging.getLogger(LOGGER_NAME)
24
+ logger.debug("Logging as %s", level)
18
25
 
19
26
 
20
27
  def debug(message, *args, **kwargs):
21
- _logger.debug(message, *args, **kwargs)
28
+ logging.getLogger(LOGGER_NAME).debug(message, *args, **kwargs)
22
29
 
23
30
 
24
31
  def info(message, *args, **kwargs):
25
- _logger.info(message, *args, **kwargs)
32
+ logging.getLogger(LOGGER_NAME).info(message, *args, **kwargs)
26
33
 
27
34
 
28
35
  def warning(message, *args, **kwargs):
29
- _logger.warning(message, *args, **kwargs)
36
+ logging.getLogger(LOGGER_NAME).warning(message, *args, **kwargs)
30
37
 
31
38
 
32
39
  def error(message, *args, **kwargs):
33
- _logger.error(message, *args, **kwargs)
40
+ logging.getLogger(LOGGER_NAME).error(message, *args, **kwargs)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: suite-py
3
- Version: 1.43.0
3
+ Version: 1.43.2
4
4
  Summary:
5
5
  Author: larrywax, EugenioLaghi, michelangelomo
6
6
  Author-email: devops@prima.it
@@ -13,30 +13,22 @@ Classifier: Programming Language :: Python :: 3.11
13
13
  Classifier: Programming Language :: Python :: 3.12
14
14
  Requires-Dist: Click (>=7.0)
15
15
  Requires-Dist: InquirerPy (>=0.2.0)
16
- Requires-Dist: Jinja2 (>=3.1.4,<4.0.0)
17
16
  Requires-Dist: PyGithub (>=1.57)
18
17
  Requires-Dist: PyYaml (>=5.4)
19
18
  Requires-Dist: autoupgrade-prima (>=0.6)
20
- Requires-Dist: black (>=22.6,<25.0)
21
19
  Requires-Dist: boto3 (>=1.17.84)
22
20
  Requires-Dist: cement (>=3.0)
23
21
  Requires-Dist: colorama (>=0.4.3)
24
- Requires-Dist: cryptography (==43.0.1)
25
22
  Requires-Dist: halo (>=0.0.28)
26
- Requires-Dist: inquirer (==3.1.4)
23
+ Requires-Dist: inquirer (>=3.1.4,<4.0.0)
27
24
  Requires-Dist: itsdangerous (==2.2.0)
28
25
  Requires-Dist: keyring (>=23.9.1,<26.0.0)
29
- Requires-Dist: kubernetes (==31.0.0)
30
- Requires-Dist: logzero (==1.7.0)
31
- Requires-Dist: markupsafe (==2.0.1)
32
- Requires-Dist: pptree (==3.1)
33
26
  Requires-Dist: pylint (>=2.14.5,<4.0.0)
34
- Requires-Dist: pyreadline (>=2.1,<3.0)
35
27
  Requires-Dist: pytest (>=7.0.0)
36
28
  Requires-Dist: python-dateutil (>=2.8.2)
37
29
  Requires-Dist: requests (>=2.26.0)
38
30
  Requires-Dist: requests-toolbelt (>=0.9.1)
39
- Requires-Dist: rich (==13.9.2)
40
- Requires-Dist: semver (>=2.13.0,<3.0.0)
31
+ Requires-Dist: rich (==13.9.4)
32
+ Requires-Dist: semver (>=3.0.4,<4.0.0)
41
33
  Requires-Dist: termcolor (>=1.1.0)
42
34
  Requires-Dist: truststore (>=0.7,<0.11) ; python_version >= "3.10"
@@ -1,6 +1,6 @@
1
1
  suite_py/__init__.py,sha256=REmi3D0X2G1ZWnYpKs8Ffm3NIj-Hw6dMuvz2b9NW344,142
2
- suite_py/__version__.py,sha256=ieZXcKFUSr3HB9yG_7H6w0LtkWcCWwTjzJFoXitR7tQ,49
3
- suite_py/cli.py,sha256=sgJAT5ofSw4dCSVPtiatWaPrrMJdLSstsDiVcyl2IAE,10258
2
+ suite_py/__version__.py,sha256=SR24OnP25lyhv9S8uSr8R09yJ7ur2tBrLIa4zoztNdc,49
3
+ suite_py/cli.py,sha256=dqLHo7HADRcXj0xD278bYZjCywx4YUfVFxCvQvjNoi4,10271
4
4
  suite_py/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  suite_py/commands/ask_review.py,sha256=yN__Ac-fiZBPShjRDhyCCQZGfVlQE16KozoJk4UtiNw,3788
6
6
  suite_py/commands/bump.py,sha256=oFZU1hPfD11ujFC5G7wFyQOf2alY3xp2SO1h1ldjf3s,5406
@@ -12,7 +12,7 @@ suite_py/commands/login.py,sha256=A59e1HsbN7Ocv2L_2H0Eb7MZK7AzLkLb72QxBthnIqU,25
12
12
  suite_py/commands/merge_pr.py,sha256=fXIE8mT9MjvvpqE-uVdXGBVFGhn0eQzcBxNr-N8SyAY,5171
13
13
  suite_py/commands/open_pr.py,sha256=e6IT6f8L_HKsOEtrGHZQ2HWrFwmvIgXGNCK_TU0WE9k,7009
14
14
  suite_py/commands/project_lock.py,sha256=b7OkGysue_Sl13VIT7B5CTBppCvrB_Q6iC0IJRBSHp8,1909
15
- suite_py/commands/release.py,sha256=Mh6esivJ234cRE5mYWPOZSgpujO47RprySh0U_9BD9s,7857
15
+ suite_py/commands/release.py,sha256=u6pdT1Vk9qBLnfgxcWtpk_KV-hh_NL9yHfFQz6ZcbUs,7909
16
16
  suite_py/commands/set_token.py,sha256=fehIqKjKhE-BJGFhgkPTo3Ntr0MvpgLd6EC5yjKuRs8,1508
17
17
  suite_py/commands/status.py,sha256=0JUK53_d1-U3WNS742JD2QTiGmCGZONo3jJx8WR7q70,1122
18
18
  suite_py/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -23,14 +23,14 @@ suite_py/lib/handler/captainhook_handler.py,sha256=R30_Vvh2ck7fM5fwbpm3UV_FtlQr2
23
23
  suite_py/lib/handler/changelog_handler.py,sha256=-ppnRl3smBA_ys8tPqXmytS4eyntlwfawC2fiXFcwlw,4818
24
24
  suite_py/lib/handler/frequent_reviewers_handler.py,sha256=EIJX5FEMWzrxuXS9A17hu1vfxgJSOHSBX_ahCEZ2FVA,2185
25
25
  suite_py/lib/handler/git_handler.py,sha256=Y2hKR5sUKBhfRfQrMNjyCScJpdyPJ7XWK9f3ykx7Lf0,12710
26
- suite_py/lib/handler/github_handler.py,sha256=AnFL54yOZ5GDIU91wQat4s-d1WTcmg_B_5M7-Rop3wA,2900
26
+ suite_py/lib/handler/github_handler.py,sha256=xnBATLOTnOLpiYE29WwUrtDr7hxusfId9a1KbfK1OyA,2952
27
27
  suite_py/lib/handler/metrics_handler.py,sha256=-Tp62pFIiYsBkDga0nQG3lWU-gxH68wEjIIIJeU1jHk,3159
28
28
  suite_py/lib/handler/okta_handler.py,sha256=UiRcBDmFkMFi9H7Me1QaruC8yPI5fFbnLGzOf3kfxG0,2805
29
- suite_py/lib/handler/pre_commit_handler.py,sha256=2-G67eS5LNYUK3P9JLJmhz_UbMIQr7RffsIaVZ34vy4,3739
29
+ suite_py/lib/handler/pre_commit_handler.py,sha256=nwqVgC-KnUjn7NVIHZ0VmDdUfp6Q1ieFIth-1_U76Gw,3740
30
30
  suite_py/lib/handler/prompt_utils.py,sha256=vgk1O7h-iYEAZv1sXtMh8xIgH1djI398rzxRIgZWZcg,2474
31
31
  suite_py/lib/handler/version_handler.py,sha256=DXTx4yCAbFVC6CdMqPJ-LiN5YM-dT2zklG8POyKTP5A,6774
32
32
  suite_py/lib/handler/youtrack_handler.py,sha256=eTGBBXjlN_ay1cawtnZ2IG6l78dDyKdMN1x6PxcvtA0,7499
33
- suite_py/lib/logger.py,sha256=q_qRtpg0Eh7r5tB-Rwz87dnWBwP-a2dIvggkiQikH8M,782
33
+ suite_py/lib/logger.py,sha256=d162j5BWDDkss424-aTviJNR4uFulP8_P__wn42MvtU,1012
34
34
  suite_py/lib/metrics.py,sha256=urTBVzIc1Ys6OHPOO32fLPPRcQU45tzM3XMJ7mUl5dc,1629
35
35
  suite_py/lib/oauth.py,sha256=DhXimUu7MDscQsMyt3L04_kw0ZmuqmhYG6KZTPlKqNQ,5083
36
36
  suite_py/lib/requests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -39,7 +39,7 @@ suite_py/lib/requests/session.py,sha256=P32H3cWnCWunu91WIj2iDM5U3HzaBglg60VN_C9J
39
39
  suite_py/lib/symbol.py,sha256=z3QYBuNIwD3qQ3zF-cLOomIr_-C3bO_u5UIDAHMiyTo,60
40
40
  suite_py/lib/tokens.py,sha256=4DbsHDFLIxs40t3mRw_ZyhmejZQ0Bht7iAL8dTCTQd4,5458
41
41
  suite_py/templates/login.html,sha256=fJLls2SB84oZTSrxTdA5q1PqfvIHcCD4fhVWfyco7Ig,861
42
- suite_py-1.43.0.dist-info/METADATA,sha256=F4M9UIEhOXN7cbAYMSYRI3lV5bVA3GWKtTEghpHQwg4,1533
43
- suite_py-1.43.0.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
44
- suite_py-1.43.0.dist-info/entry_points.txt,sha256=dVKLC-9Infy-dHJT_MkK6LcDjOgBCJ8lfPkURJhBjxE,46
45
- suite_py-1.43.0.dist-info/RECORD,,
42
+ suite_py-1.43.2.dist-info/METADATA,sha256=r4xQWkD6GVipj2lUmc941wyj7pjxjUIc-KdgPBFA3A4,1250
43
+ suite_py-1.43.2.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
44
+ suite_py-1.43.2.dist-info/entry_points.txt,sha256=dVKLC-9Infy-dHJT_MkK6LcDjOgBCJ8lfPkURJhBjxE,46
45
+ suite_py-1.43.2.dist-info/RECORD,,