cgcsdk 1.0.11__py3-none-any.whl → 1.0.13__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.
cgc/.env CHANGED
@@ -6,4 +6,4 @@ CONFIG_FILE_NAME = cfg.json
6
6
  TMP_DIR = .tmp
7
7
  RELEASE = 1
8
8
  MAJOR_VERSION = 0
9
- MINOR_VERSION = 11
9
+ MINOR_VERSION = 13
cgc/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Change Log
2
2
 
3
+ ## 1.0.13
4
+
5
+ Release on June 05, 2024
6
+
7
+ * increase volume create size to 4 TB (4096 GB)
8
+ * cgc volume list now shows which disk type is used for the volume
9
+
10
+ ## 1.0.12
11
+
12
+ Release on May 09, 2024
13
+
14
+ * hotfix: allow secret upper cased, during registration process
15
+
3
16
  ## 1.0.11
4
17
 
5
18
  Release on April 25, 2024
cgc/cgc.py CHANGED
@@ -1,7 +1,7 @@
1
1
  import click
2
2
  from cgc.commands.volume.volume_cmd import volume_group
3
3
  from cgc.commands.compute.compute_cmd import compute_group
4
- from cgc.commands.billing.billing_cmd import billing_group
4
+ from cgc.commands.compute.billing.billing_cmd import billing_group
5
5
  from cgc.commands.db.db_cmd import db_group
6
6
  from cgc.commands.resource.resource_cmd import resource_group
7
7
  from cgc.commands.jobs.jobs_cmd import job_group
@@ -7,7 +7,7 @@ class BillingCommandException(ResponseException):
7
7
 
8
8
  class NoCostsFound(BillingCommandException):
9
9
  def __init__(self) -> None:
10
- super().__init__(f"No costs found in your namespace for current month.")
10
+ super().__init__("No costs found in your namespace for current month.")
11
11
 
12
12
 
13
13
  class NoInvoiceFoundForSelectedMonth(BillingCommandException):
@@ -2,8 +2,8 @@ import click
2
2
 
3
3
  from datetime import datetime
4
4
 
5
- from cgc.commands.billing.billing_utils import verify_input_datetime
6
- from cgc.commands.billing.billing_responses import (
5
+ from cgc.commands.compute.billing.billing_utils import verify_input_datetime
6
+ from cgc.commands.compute.billing.billing_responses import (
7
7
  billing_status_response,
8
8
  billing_invoice_response,
9
9
  stop_events_resource_response,
@@ -1,11 +1,11 @@
1
1
  import calendar
2
- from cgc.commands.billing import (
2
+ from cgc.commands.compute.billing import (
3
3
  NoCostsFound,
4
4
  NoInvoiceFoundForSelectedMonth,
5
5
  NoResourceStopEvents,
6
6
  NoVolumeStopEvents,
7
7
  )
8
- from cgc.commands.billing.billing_utils import (
8
+ from cgc.commands.compute.billing.billing_utils import (
9
9
  get_billing_status_message,
10
10
  get_table_compute_stop_events_message,
11
11
  get_table_volume_stop_events_message,
@@ -54,7 +54,7 @@ def volume_list():
54
54
  "--size",
55
55
  "size",
56
56
  help="Volume size in GiB",
57
- type=click.IntRange(1, 1000),
57
+ type=click.IntRange(1, 4000),
58
58
  required=True,
59
59
  )
60
60
  @click.option(
@@ -26,7 +26,7 @@ def volume_list_response(data: dict) -> str:
26
26
  volume_list_to_print, total_size = get_formatted_volume_list_and_total_size(
27
27
  list_of_volumes
28
28
  )
29
- list_headers = ["name", "used", "size", "type", "mounted to"]
29
+ list_headers = ["name", "used", "size", "type", "disks type", "mounted to"]
30
30
 
31
31
  setup_gauge(f"{get_namespace()}.volume.count", len(list_of_volumes))
32
32
  setup_gauge(f"{get_namespace()}.volume.totalSizeAccumulated", total_size)
@@ -12,12 +12,13 @@ def get_formatted_volume_list_and_total_size(list_of_volumes: list):
12
12
  name = volume["name"]
13
13
  used = volume["used"]
14
14
  size = volume["size"]
15
+ disks_type = volume["disks_type"]
15
16
  access_types = ", ".join(volume["access_types"])
16
17
  mounts = volume["mounted_to"]
17
18
  mounts[:] = [s.rsplit("-", 2)[0] for s in mounts]
18
19
  all_mounted_to = ", ".join(mounts)
19
20
  total_size += int("".join(filter(str.isdigit, size)))
20
- row_list = [name, used, size, access_types, all_mounted_to]
21
+ row_list = [name, used, size, access_types, disks_type, all_mounted_to]
21
22
  list_to_print.append(row_list)
22
23
  return list_to_print, total_size
23
24
 
@@ -17,7 +17,7 @@ from cgc.commands.compute.compute_responses import (
17
17
  template_list_response,
18
18
  template_get_start_path_response,
19
19
  )
20
- from cgc.commands.billing.billing_responses import (
20
+ from cgc.commands.compute.billing.billing_responses import (
21
21
  billing_status_response,
22
22
  billing_invoice_response,
23
23
  stop_events_resource_response,
cgc/utils/__init__.py CHANGED
@@ -22,7 +22,7 @@ def require_confirm_loop(message: str):
22
22
 
23
23
  def require_answer_loop(message: str, default: str):
24
24
  while True:
25
- answer = input(f"{message}: [{default}]").lower()
25
+ answer = input(f"{message}: [{default}]")
26
26
  if answer == "":
27
27
  return default
28
28
  return answer
cgc/utils/config_utils.py CHANGED
@@ -55,6 +55,21 @@ def save_to_config(**kwargs):
55
55
  json.dump(final_cfg, f)
56
56
 
57
57
 
58
+ def is_config_file_present():
59
+ """Function to check if the config file is present
60
+
61
+ :return: True if the config file is present, False otherwise
62
+ :rtype: bool
63
+ """
64
+ try:
65
+ with open(
66
+ os.path.join(config_path, get_config_file_name()), "r", encoding="UTF-8"
67
+ ) as _:
68
+ return True
69
+ except FileNotFoundError:
70
+ return False
71
+
72
+
58
73
  def read_from_cfg(key: str, filename=None):
59
74
  """Function to read a single value from config
60
75
 
@@ -32,12 +32,12 @@ def _process_endpoint_kwargs(**kwargs):
32
32
  return kwargs
33
33
 
34
34
 
35
- def _call_rest_endpoint(request: EndpointTypes, **kwargs):
35
+ def _call_rest_endpoint(request: EndpointTypes, **kwargs) -> requests.Response:
36
36
  kwargs = _process_endpoint_kwargs(**kwargs)
37
37
  return request(**kwargs)
38
38
 
39
39
 
40
- def _call_rest_ssl_endpoint(request: EndpointTypes, **kwargs):
40
+ def _call_rest_ssl_endpoint(request: EndpointTypes, **kwargs) -> requests.Response:
41
41
  kwargs = _process_endpoint_kwargs(**kwargs)
42
42
  return request(
43
43
  **kwargs, verify=False
@@ -2,6 +2,7 @@ import os
2
2
  import subprocess
3
3
  import sys
4
4
  import click
5
+ from cgc.utils.config_utils import is_config_file_present
5
6
  from cgc.utils.prepare_headers import get_api_url_and_prepare_headers_version_control
6
7
  from cgc.utils.message_utils import (
7
8
  prepare_error_message,
@@ -15,7 +16,6 @@ from cgc.utils.consts.message_consts import (
15
16
  )
16
17
 
17
18
  from cgc.utils.requests_helper import call_api, EndpointTypes
18
- from cgc.utils.response_utils import retrieve_and_validate_response_send_metric
19
19
 
20
20
 
21
21
  def get_server_version():
@@ -26,7 +26,14 @@ def get_server_version():
26
26
  """
27
27
  api_url, headers = get_api_url_and_prepare_headers_version_control()
28
28
  __res = call_api(request=EndpointTypes.get, url=api_url, headers=headers)
29
- return retrieve_and_validate_response_send_metric(__res, None)
29
+ try:
30
+ __res.raise_for_status()
31
+ except Exception:
32
+ click.echo(
33
+ "Your current context server is not available, cannot check server version.",
34
+ color="yellow",
35
+ )
36
+ return __res.json()
30
37
 
31
38
 
32
39
  def print_compare_versions(server_version: str, client_version: str):
@@ -37,6 +44,8 @@ def print_compare_versions(server_version: str, client_version: str):
37
44
  @key_error_decorator_for_helpers
38
45
  def check_version():
39
46
  """Checks if Client version is up to date with Server version."""
47
+ if not is_config_file_present():
48
+ return
40
49
  data = get_server_version()
41
50
  server_release, server_major, server_minor = (
42
51
  data["server_version"]["release"],
@@ -48,7 +57,7 @@ def check_version():
48
57
  ] # braking change - 0.9.0, will not work with lower server version
49
58
  server_version = f"{server_release}.{server_major}.{server_minor}"
50
59
  client_version = f"{RELEASE}.{MAJOR_VERSION}.{MINOR_VERSION}"
51
- if server_major > MAJOR_VERSION or server_release > RELEASE:
60
+ if server_major >= MAJOR_VERSION and server_release > RELEASE:
52
61
  click.echo(prepare_error_message(OUTDATED_MAJOR))
53
62
  print_compare_versions(server_version, client_version)
54
63
  while True:
@@ -1,24 +1,25 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cgcsdk
3
- Version: 1.0.11
3
+ Version: 1.0.13
4
4
  Summary: Comtegra GPU Cloud REST API client
5
+ Home-page: https://git.comtegra.pl/
5
6
  Author: Comtegra AI Team
6
7
  Author-email: ai@comtegra.pl
7
8
  License: BSD 2-clause
8
- Project-URL: Documentation, https://example.com/documentation/
9
- Project-URL: GitHub, https://github.com/foobar/foobar/
10
- Project-URL: Changelog, https://github.com/foobar/foobar/blob/master/CHANGELOG.md
9
+ Project-URL: Documentation, https://docs.cgc.comtegra.cloud/
10
+ Project-URL: GitHub, https://git.comtegra.pl/
11
+ Project-URL: Changelog, https://git.comtegra.pl/foobar/foobar/blob/master/CHANGELOG.md
11
12
  Keywords: cloud,sdk,orchestrator,kubernetes,jupyter-notebook
12
13
  Classifier: Development Status :: 1 - Planning
13
14
  Classifier: Intended Audience :: Science/Research
14
15
  Classifier: License :: OSI Approved :: BSD License
15
16
  Classifier: Operating System :: POSIX :: Linux
16
17
  Classifier: Programming Language :: Python :: 3
17
- Classifier: Programming Language :: Python :: 3.4
18
- Classifier: Programming Language :: Python :: 3.5
19
18
  Classifier: Programming Language :: Python :: 3.8
20
19
  Classifier: Programming Language :: Python :: 3.9
21
20
  Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
22
23
  Description-Content-Type: text/markdown
23
24
  License-File: LICENSE
24
25
  Requires-Dist: click
@@ -1,7 +1,7 @@
1
- cgc/.env,sha256=GAb-EBVNtzC-cmDEt71iK-qpPKlXSIBqT5k7X5B5Z10,210
2
- cgc/CHANGELOG.md,sha256=bw-rz1Rg1uhYUqYVW1Oi2ztI5FPCv0ETJVH8rUAuKDQ,8626
1
+ cgc/.env,sha256=qjUqdM59LavIOj9PI4Yp6IY-GenzQ-GjKMoSsbzSbAY,210
2
+ cgc/CHANGELOG.md,sha256=EGVriqZcu86Vjgk7htQNlJybvKrs5mf-dtjFerLcqWk,8880
3
3
  cgc/__init__.py,sha256=d03Xv8Pw4ktNyUHfmicP6XfxYPXnVYLaCZPyUlg_RNQ,326
4
- cgc/cgc.py,sha256=SaZIGvZpA25OBx2KnQlZVjWNY2ejCyPU5KEkwqh7sh0,1655
4
+ cgc/cgc.py,sha256=3I_Ef0ggX9caaJKJkhfGYSe8XwkHzSWxwGAClMHDnUs,1663
5
5
  cgc/config.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  cgc/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
7
  cgc/commands/cgc_cmd.py,sha256=QwqjZl9FmAMOvuUQMJm-wOV88OxbdwK5UIS0zkg-mAo,4956
@@ -13,15 +13,15 @@ cgc/commands/auth/__init__.py,sha256=JnqNezSEUEVVPQIymya4llXr8LIug2vymQSAGBr4Ovg
13
13
  cgc/commands/auth/auth_cmd.py,sha256=FiRM16RGtP1zoJ9InbFAa-3W-EkJQbzBDxF0AmZa1JA,4196
14
14
  cgc/commands/auth/auth_responses.py,sha256=oZ1aC7tyrT43imF2iMaL0u1jTJzuGLEmCN8RBeMxpf4,1959
15
15
  cgc/commands/auth/auth_utils.py,sha256=-diCsKuF5UcQZoq962RuLktrG6sRmipJrDkm9Sf3wbg,5507
16
- cgc/commands/billing/__init__.py,sha256=0arQm0R3Ouw7tXPooJsvWd_pGeHhzaVwQCbWMKQPT9A,753
17
- cgc/commands/billing/billing_cmd.py,sha256=T1E5WW5Z-RlzddaotimTuvLvIbGihNpStIBETnlUznM,4140
18
- cgc/commands/billing/billing_responses.py,sha256=HAD5N-Odx3Jz1OmhO4v66rHoXpTYIOGlXDsrs0da9dk,1949
19
- cgc/commands/billing/billing_utils.py,sha256=zXLbBBcWeOgur-r0OKiIjaKeaxMNxASXWzCTeTsyC6o,4711
20
16
  cgc/commands/compute/__init__.py,sha256=lCdLfZ0ECSHtXEUSwq5YRHH85yXHchSsz8ZJvmClPtI,239
21
17
  cgc/commands/compute/compute_cmd.py,sha256=eXKeoOV3DsOypuxzKMa3MpITOKKbF2cZjy30iofHHG8,15489
22
18
  cgc/commands/compute/compute_models.py,sha256=yse6mCEhhE2RdWIO7EHx4r5Y-350gWWy4UWFsdltNNg,778
23
19
  cgc/commands/compute/compute_responses.py,sha256=DnRIZC_F1ZE887fMOXXYGYuYmB9n5x63sf8Ga_TL4Ww,5806
24
20
  cgc/commands/compute/compute_utils.py,sha256=XXnd_EuF9vCmW14r0ThlN98ScKSx3KAeqFbWy2g2mlk,8812
21
+ cgc/commands/compute/billing/__init__.py,sha256=ccjz-AzBCROjuR11qZRM4_62slI9ErmLi27xPUoRPHM,752
22
+ cgc/commands/compute/billing/billing_cmd.py,sha256=8lGf2GPyr09ZmqkRshmgfSPQgXa9o_IDSfwZgMfBE4k,4156
23
+ cgc/commands/compute/billing/billing_responses.py,sha256=5vQSR_d41uizengzfXlHXL7XivO_73PpWdKmoUgqYNw,1965
24
+ cgc/commands/compute/billing/billing_utils.py,sha256=zXLbBBcWeOgur-r0OKiIjaKeaxMNxASXWzCTeTsyC6o,4711
25
25
  cgc/commands/db/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
26
  cgc/commands/db/db_cmd.py,sha256=4iamsHTy68YjrKztyRGz2PqQgo54Q_rURgm2zpp_hL8,3512
27
27
  cgc/commands/db/db_models.py,sha256=oJUAF23nb_r8fSyhLHMJrRbRzLY_vpJQu6Vy4WRa0cg,1036
@@ -45,9 +45,9 @@ cgc/commands/user/secret_responses.py,sha256=sg7HP5a0LnUvlo9w8oOcYASwI2cPeRnecjT
45
45
  cgc/commands/user/secret_utils.py,sha256=70dn937rzecQ0eE-8zb9fLnBDWtjWjdQY1LJvHv3NzM,1623
46
46
  cgc/commands/volume/__init__.py,sha256=Ou3kyb72aaXkrVCfQCVdniA65R2xHsRFgebooG1gflA,384
47
47
  cgc/commands/volume/data_model.py,sha256=meprXdaXLo3mMTZta1ks1-BJ7G0rO16qi_ycH-sXJpY,1295
48
- cgc/commands/volume/volume_cmd.py,sha256=5bd0vq5--Y7IfniO33tGBYH0Z67Le2s_AMTiwJcPBA4,7673
49
- cgc/commands/volume/volume_responses.py,sha256=WefUohXxXZ9Znfc6P2XjoAM2RlA19hMKcVaW-xG9HWs,3199
50
- cgc/commands/volume/volume_utils.py,sha256=n6s0FgpsYyxFMp_JdMRCzRi5Ar3_Svg9JDvWSdX4lhk,1919
48
+ cgc/commands/volume/volume_cmd.py,sha256=swT-U7zUGjXsItK-Esl7XUKtvOCHulLykJR0w15StJc,7673
49
+ cgc/commands/volume/volume_responses.py,sha256=PqYe5HVbClkCMIuXWn_FDvPUNxsJW8M_hFIB0lf40bo,3213
50
+ cgc/commands/volume/volume_utils.py,sha256=6IuDCNT-KAvUUF_EDg5cL9JewTGsbBsZlYd_zKHowCU,1973
51
51
  cgc/sdk/__init__.py,sha256=m8uAD2e_ADbHC4_kaOpLrUk_bHy7wC56rPjhcttclCs,177
52
52
  cgc/sdk/exceptions.py,sha256=99XIzDO6LYKjex715troH-MkGUN7hi2Bit4KHfSHDis,214
53
53
  cgc/sdk/job.py,sha256=q9Vsarc3rKzurM4AOmbQDsQUVdyRqx0UzJVe_uO8xCU,5318
@@ -56,7 +56,7 @@ cgc/sdk/resource.py,sha256=w8SVRqrx0Mj1FS91Bt0oaMAfC4CDEcomgqzFCNgGaPc,13537
56
56
  cgc/telemetry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
57
  cgc/telemetry/basic.py,sha256=XagCcyH4QSEPmfiQ1WCjqXslnJO6IaJCY0AMPySd5rc,3175
58
58
  cgc/tests/__init__.py,sha256=8aI3MVpkzaj0_UX02kZCtY5vmGO0rnq0mw2H04-OHf8,102743
59
- cgc/tests/responses_tests.py,sha256=TtTwMZFo-nqJ-gHRmObYZsVKFdaEpT0JovMynmcxxfQ,9180
59
+ cgc/tests/responses_tests.py,sha256=9vLOaUICeUXoDObeFwuu0FBTmC-hnJNZfzvolT96dGM,9188
60
60
  cgc/tests/desired_responses/test_billing_invoice.txt,sha256=KR5m2gamn_bgfBdBmWDH2sPRJIPOw1u8kdH-gYE8jow,1579
61
61
  cgc/tests/desired_responses/test_billing_status.txt,sha256=2KSUixFOrhXI5ON6qtsIUmzFye5LBZB1xneY8ST0MqE,2381
62
62
  cgc/tests/desired_responses/test_billing_stop_events_compute.txt,sha256=nHdixgLhAXDMeoDvjk9Mwv6b0JIAsW8j7Z6SS5scjSs,234
@@ -65,16 +65,16 @@ cgc/tests/desired_responses/test_compute_list.txt,sha256=3CDAuILJdwBmX6-GLj3zDbn
65
65
  cgc/tests/desired_responses/test_compute_list_no_labels.txt,sha256=-OeQIaEHHsHZ81tCOI5j6VQYUMlj8VYcyyOU_DhPOpU,155
66
66
  cgc/tests/desired_responses/test_tabulate_response.txt,sha256=beNyCTS9fwrHn4ueEOVk2BpOeSYZWumIa3H5EUGnW1I,789
67
67
  cgc/tests/desired_responses/test_volume_list.txt,sha256=vYB1p50BBHD801q7LUdDc_aca4ezQ8CFLWw7I-b4Uao,309
68
- cgc/utils/__init__.py,sha256=o3YYCh02WiAvmHw-8Hy3FJA4LjGWwPkaLTur6tEvsbE,3669
68
+ cgc/utils/__init__.py,sha256=JOvbqyGdFtswXE1TntOqM7XuIg5-t042WzAzvmX7Xtk,3661
69
69
  cgc/utils/click_group.py,sha256=Scfw8eMIyt2dE1ezUq2JuiI-E_LklqXQXJEr7L-EG6A,633
70
- cgc/utils/config_utils.py,sha256=p1zVOsjRzci8xHOd5NHk8SrEFVHS2prkdqwvTdM73hk,3083
70
+ cgc/utils/config_utils.py,sha256=-DkUBncq_nTUIbxnF9vTiibZHgJ6Beomzk7fg7zQJVA,3465
71
71
  cgc/utils/custom_exceptions.py,sha256=qvHdzaunZswZgN96iOHZIfLjehlJ79mcjqoMoW-tqEM,2628
72
72
  cgc/utils/message_utils.py,sha256=FAiUC-0zJiMhfPQAQC0ki1ZUs1vI_QqHwLmfoCDbLeU,1790
73
73
  cgc/utils/prepare_headers.py,sha256=67YMPogNoGbKnHQmGFc3iJCbsDZbRVjAIe3kBY-Dq98,2838
74
- cgc/utils/requests_helper.py,sha256=qhSTfOb0o-luHLAeIuiHTOl0R_ykkdQldQZz3D6Sr6s,2062
74
+ cgc/utils/requests_helper.py,sha256=vM1b3sBF56HhiowrRFo6piEZ8lFbFSD9ZUF93OMFaYE,2104
75
75
  cgc/utils/response_utils.py,sha256=9vJqAt2UFJ1n-oesFPe6CB_ooGoStjl-twY_31Jt4_I,7374
76
76
  cgc/utils/update.py,sha256=AsQwhcBqsjgNPKn6AN6ojt0Ew5otvJXyshys6bjr7DQ,413
77
- cgc/utils/version_control.py,sha256=VsqNzNYWDvU3VsoPuYIaZV7Img-K2_DmEOHd7rZlRxk,3267
77
+ cgc/utils/version_control.py,sha256=PeoLhA3045dZofFh5yvcqGt1NAVnRaZ_AK-e-HpGd7o,3468
78
78
  cgc/utils/consts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
79
79
  cgc/utils/consts/env_consts.py,sha256=8huPDBkbNEXoPHskFhYwiRi6TTw0_e9ylClpgh1NF2E,1290
80
80
  cgc/utils/consts/message_consts.py,sha256=8CIe3N_HL6Pj-gSArkPkpegsvm-QMWxqqnSgtzG08Qw,1218
@@ -82,9 +82,9 @@ cgc/utils/cryptography/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
82
82
  cgc/utils/cryptography/aes_crypto.py,sha256=S0rKg38oy7rM5lTrP6DDpjLA-XRxuZggAXyxMFHtyzY,3333
83
83
  cgc/utils/cryptography/encryption_module.py,sha256=rbblBBorHYPGl-iKblyZX3_NuPEvUTpnH1l_RgNGCbA,1958
84
84
  cgc/utils/cryptography/rsa_crypto.py,sha256=h3jU5qPpj9uVjP1rTqZJTdYB5yjhD9HZpr_nD439h9Q,4180
85
- cgcsdk-1.0.11.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
86
- cgcsdk-1.0.11.dist-info/METADATA,sha256=eHHp9OBhlNmUQN5v0I2IaqkkrDV5Y0X9GwCiLEim92s,3058
87
- cgcsdk-1.0.11.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
88
- cgcsdk-1.0.11.dist-info/entry_points.txt,sha256=bdfIHeJ6Y-BBr5yupCVoK7SUrJj1yNdew8OtIOg_3No,36
89
- cgcsdk-1.0.11.dist-info/top_level.txt,sha256=nqW9tqcIcCXFigQT69AuOk7XHKc4pCuv4HGJQGXb6iA,12
90
- cgcsdk-1.0.11.dist-info/RECORD,,
85
+ cgcsdk-1.0.13.dist-info/LICENSE,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
86
+ cgcsdk-1.0.13.dist-info/METADATA,sha256=xxo5AMMCHkob54TrssRPxCEaHHZW2C-J9qBqgTDwBtk,3091
87
+ cgcsdk-1.0.13.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
88
+ cgcsdk-1.0.13.dist-info/entry_points.txt,sha256=bdfIHeJ6Y-BBr5yupCVoK7SUrJj1yNdew8OtIOg_3No,36
89
+ cgcsdk-1.0.13.dist-info/top_level.txt,sha256=nqW9tqcIcCXFigQT69AuOk7XHKc4pCuv4HGJQGXb6iA,12
90
+ cgcsdk-1.0.13.dist-info/RECORD,,