sparclclient 1.2.5b1__py2.py3-none-any.whl → 1.2.6__py2.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.
sparcl/__init__.py CHANGED
@@ -34,4 +34,5 @@ __all__ = ["client", "align_records"]
34
34
  #__version__ = "1.2.2"
35
35
  #__version__ = "1.2.3"
36
36
  #__version__ = "1.2.4"
37
- __version__ = "1.2.5b1"
37
+ #__version__ = "1.2.5"
38
+ __version__ = "1.2.6"
sparcl/client.py CHANGED
@@ -159,6 +159,9 @@ class SparclClient: # was SparclApi()
159
159
  wait for server to send a response. Generally time to
160
160
  wait for first byte. Defaults to 5400.
161
161
 
162
+ announcement (:obj:`bool`, optional): SPARCL announcements.
163
+ Defaults to True.
164
+
162
165
  Example:
163
166
  >>> client = SparclClient()
164
167
 
@@ -179,6 +182,7 @@ class SparclClient: # was SparclApi()
179
182
  show_curl=False,
180
183
  connect_timeout=1.1, # seconds
181
184
  read_timeout=90 * 60, # seconds
185
+ announcement=True,
182
186
  ):
183
187
  """Create client instance."""
184
188
  session = requests.Session()
@@ -193,9 +197,8 @@ class SparclClient: # was SparclApi()
193
197
  self.verbose = verbose
194
198
  self.show_curl = show_curl # Show CURL equivalent of client method
195
199
  #!self.internal_names = internal_names
196
- self.c_timeout = min(
197
- MAX_CONNECT_TIMEOUT, float(connect_timeout)
198
- ) # seconds
200
+ self.c_timeout = min(MAX_CONNECT_TIMEOUT,
201
+ float(connect_timeout)) # seconds
199
202
  self.r_timeout = min(MAX_READ_TIMEOUT, float(read_timeout)) # seconds
200
203
 
201
204
  # require response within this num seconds
@@ -203,10 +206,18 @@ class SparclClient: # was SparclApi()
203
206
  # (connect timeout, read timeout) in seconds
204
207
  self.timeout = (self.c_timeout, self.r_timeout)
205
208
  # @@@ read timeout should be a function of the POST payload size
209
+ self.announcement = announcement
206
210
 
207
211
  if verbose:
208
212
  print(f"apiurl={self.apiurl}")
209
213
 
214
+ if announcement:
215
+ ann = f"{self.apiurl}/announcement/"
216
+ annres = requests.get(ann, timeout=self.timeout)
217
+ annstr = annres.json()['announcement']
218
+ if annstr:
219
+ print(f"announcement={annstr}")
220
+
210
221
  # Get API Version
211
222
  try:
212
223
  endpoint = f"{self.apiurl}/version/"
@@ -249,18 +260,19 @@ class SparclClient: # was SparclApi()
249
260
  f" client_hash={ut.githash()},"
250
261
  f" verbose={self.verbose},"
251
262
  f" connect_timeout={self.c_timeout},"
252
- f" read_timeout={self.r_timeout})"
263
+ f" read_timeout={self.r_timeout},"
264
+ f" announcement={self.announcement})"
253
265
  )
254
266
 
255
267
  def token_expired(self, renew=False):
256
268
  """
257
- POST http://localhost:8050/sparc/renew_token/
258
- Content-Type: application/json
259
- {
260
- "refresh_token": "..."
261
- }
269
+ POST http://localhost:8050/sparc/renew_token/
270
+ Content-Type: application/json
271
+ {
272
+ "refresh_token": "..."
273
+ }
262
274
 
263
- Returns an 'access' token
275
+ Returns an 'access' token
264
276
  """
265
277
  now = datetime.datetime.now()
266
278
  expired = True
@@ -274,8 +286,8 @@ class SparclClient: # was SparclApi()
274
286
  resp = requests.post(url, json={"refresh_token": self.renew_token})
275
287
  resp.raise_for_status()
276
288
  data = resp.json()
277
- #@print(f"{data=}")
278
- self.token = data['access']
289
+ # @print(f"{data=}")
290
+ self.token = data["access"]
279
291
  self.set_token_exp()
280
292
  expired = False
281
293
 
@@ -322,8 +334,8 @@ class SparclClient: # was SparclApi()
322
334
  try:
323
335
  res.raise_for_status()
324
336
  #!print(f"DBG: {res.content=}")
325
- self.token = res.json()['access']
326
- self.renew_token = res.json()['refresh']
337
+ self.token = res.json()["access"]
338
+ self.renew_token = res.json()["refresh"]
327
339
  self.session.auth = (email, password)
328
340
  except Exception:
329
341
  self.session.auth = None
@@ -331,8 +343,8 @@ class SparclClient: # was SparclApi()
331
343
  self.renew_token = None
332
344
  self.token_exp = None
333
345
  msg = (
334
- "Could not login with given credentials."
335
- ' Reverted to "Anonymous" user.'
346
+ 'Could not login with given credentials. '
347
+ 'Reverted to "Anonymous" user.'
336
348
  )
337
349
  return msg
338
350
 
@@ -343,10 +355,12 @@ class SparclClient: # was SparclApi()
343
355
  def set_token_exp(self):
344
356
  decoded = jwt.decode(
345
357
  self.token,
346
- algorithms=['HS256',],
347
- options={'verify_signature': False}
358
+ algorithms=[
359
+ "HS256",
360
+ ],
361
+ options={"verify_signature": False},
348
362
  )
349
- self.token_exp = datetime.datetime.fromtimestamp(decoded['exp'])
363
+ self.token_exp = datetime.datetime.fromtimestamp(decoded["exp"])
350
364
 
351
365
  def logout(self):
352
366
  """Logout of the SPARCL service.
@@ -398,10 +412,10 @@ class SparclClient: # was SparclApi()
398
412
  parameter of client.retrieve().
399
413
 
400
414
  Args:
401
- dataset_list (:obj:`list`, optional): List of data sets from
402
- which to get the default fields. Defaults to None, which
403
- will return the intersection of default fields in all
404
- data sets hosted on the SPARCL database.
415
+ dataset_list (:obj:`list` of :obj:`str`, optional): List of
416
+ data sets from which to get the default fields. Defaults
417
+ to None, which will return the intersection of default
418
+ fields in all data sets hosted on the SPARCL database.
405
419
 
406
420
  Returns:
407
421
  List of fields tagged as 'default' from DATASET_LIST.
@@ -415,9 +429,9 @@ class SparclClient: # was SparclApi()
415
429
  if dataset_list is None:
416
430
  dataset_list = self.fields.all_drs
417
431
 
418
- assert isinstance(
419
- dataset_list, (list, set)
420
- ), f"DATASET_LIST must be a list. Found {dataset_list}"
432
+ assert isinstance(dataset_list, (list, set)), (
433
+ f"DATASET_LIST must be a list. Found {dataset_list}"
434
+ )
421
435
 
422
436
  common = set(self.fields.common(dataset_list))
423
437
  union = self.fields.default_retrieve_fields(dataset_list=dataset_list)
@@ -429,10 +443,10 @@ class SparclClient: # was SparclApi()
429
443
  of client.retrieve().
430
444
 
431
445
  Args:
432
- dataset_list (:obj:`list`, optional): List of data sets from
433
- which to get all fields. Defaults to None, which
434
- will return the intersection of all fields in all
435
- data sets hosted on the SPARCL database.
446
+ dataset_list (:obj:`list` of :obj:`str`, optional): List of data
447
+ sets from which to get all fields. Defaults to None, which
448
+ will return the intersection of all fields in all data sets
449
+ hosted on the SPARCL database.
436
450
 
437
451
  Returns:
438
452
  List of fields tagged as 'all' from DATASET_LIST.
@@ -458,16 +472,15 @@ class SparclClient: # was SparclApi()
458
472
  drs = self.fields.all_drs if dataset_list is None else dataset_list
459
473
  msg = (
460
474
  f'Unknown fields "{",".join(unk)}" given '
461
- f'for DataSets {",".join(drs)}. '
462
- f'Allowed fields are: {",".join(all)}. '
475
+ f"for DataSets {','.join(drs)}. "
476
+ f"Allowed fields are: {','.join(all)}. "
463
477
  )
464
478
  raise ex.UnknownField(msg)
465
479
  return True
466
480
 
467
481
  def _common_internal(self, *, science_fields=None, dataset_list=None):
468
- self._validate_science_fields(
469
- science_fields, dataset_list=dataset_list
470
- )
482
+ self._validate_science_fields(science_fields,
483
+ dataset_list=dataset_list)
471
484
 
472
485
  if dataset_list is None:
473
486
  dataset_list = self.fields.all_drs
@@ -487,10 +500,10 @@ class SparclClient: # was SparclApi()
487
500
  client.retreive().
488
501
 
489
502
  Args:
490
- dataset_list (:obj:`list`, optional): List of data sets from
491
- which to get available fields. Defaults to None, which
492
- will return the intersection of all available fields in
493
- all data sets hosted on the SPARCL database.
503
+ dataset_list (:obj:`list` of :obj:`str`, optional): List of data
504
+ sets from which to get available fields. Defaults to None,
505
+ which will return the intersection of all available fields
506
+ in all data sets hosted on the SPARCL database.
494
507
 
495
508
  Returns:
496
509
  Set of fields available from data sets in DATASET_LIST.
@@ -543,10 +556,10 @@ class SparclClient: # was SparclApi()
543
556
  """Find records in the SPARCL database.
544
557
 
545
558
  Args:
546
- outfields (:obj:`list`, optional): List of fields to return.
547
- Only CORE fields may be passed to this parameter.
548
- Defaults to None, which will return only the sparcl_id
549
- and _dr fields.
559
+ outfields (:obj:`list` of :obj:`str`, optional): List of
560
+ fields to return. Only CORE fields may be passed to
561
+ this parameter. Defaults to None, which will return
562
+ only the sparcl_id and _dr fields.
550
563
 
551
564
  constraints (:obj:`dict`, optional): Key-Value pairs of
552
565
  constraints to place on the record selection. The Key
@@ -591,12 +604,10 @@ class SparclClient: # was SparclApi()
591
604
  #! dataset_list=dataset_list) # DLS-401
592
605
  dr = list(dataset_list)[0]
593
606
  if len(constraints) > 0:
594
- self._validate_science_fields(
595
- constraints.keys(), dataset_list=dataset_list
596
- )
607
+ self._validate_science_fields(constraints.keys(),
608
+ dataset_list=dataset_list)
597
609
  constraints = {
598
- self.fields._internal_name(k, dr): v
599
- for k, v in constraints.items()
610
+ self.fields._internal_name(k, dr): v for k, v in constraints.items() # noqa: E501
600
611
  }
601
612
  uparams = dict(
602
613
  limit=limit,
@@ -622,7 +633,7 @@ class SparclClient: # was SparclApi()
622
633
 
623
634
  if res.status_code != 200:
624
635
  if verbose and ("traceback" in res.json()):
625
- print(f'DBG: Server traceback=\n{res.json()["traceback"]}')
636
+ print(f"DBG: Server traceback=\n{res.json()['traceback']}")
626
637
  raise ex.genSparclException(res, verbose=self.verbose)
627
638
 
628
639
  found = Found(res.json(), client=self)
@@ -637,11 +648,11 @@ class SparclClient: # was SparclApi()
637
648
  NOT stored in the SPARCL database.
638
649
 
639
650
  Args:
640
- uuid_list (:obj:`list`): List of sparcl_ids.
651
+ uuid_list (:obj:`list` of :obj:`str`): List of sparcl_ids.
641
652
 
642
- dataset_list (:obj:`list`, optional): List of data sets from
643
- which to find missing sparcl_ids. Defaults to None, meaning
644
- all data sets hosted on the SPARCL database.
653
+ dataset_list (:obj:`list` of :obj:`str`, optional): List of data
654
+ sets from which to find missing sparcl_ids. Defaults to None,
655
+ meaning all data sets hosted on the SPARCL database.
645
656
 
646
657
  countOnly (:obj:`bool`, optional): Set to True to return only
647
658
  a count of the missing sparcl_ids from the uuid_list.
@@ -656,16 +667,16 @@ class SparclClient: # was SparclApi()
656
667
 
657
668
  Example:
658
669
  >>> client = SparclClient()
659
- >>> ids = ['ddbb57ee-8e90-4a0d-823b-0f5d97028076',]
660
- >>> client.missing(ids)
670
+ >>> sparcl_ids = ['ddbb57ee-8e90-4a0d-823b-0f5d97028076',]
671
+ >>> client.missing(uuid_list=sparcl_ids)
661
672
  ['ddbb57ee-8e90-4a0d-823b-0f5d97028076']
662
673
  """
663
674
 
664
675
  if dataset_list is None:
665
676
  dataset_list = self.fields.all_drs
666
- assert isinstance(
667
- dataset_list, (list, set)
668
- ), f"DATASET_LIST must be a list. Found {dataset_list}"
677
+ assert isinstance(dataset_list, (list, set)), (
678
+ f"DATASET_LIST must be a list. Found {dataset_list}"
679
+ )
669
680
 
670
681
  verbose = verbose or self.verbose
671
682
  uparams = dict(dataset_list=",".join(dataset_list))
@@ -692,11 +703,11 @@ class SparclClient: # was SparclApi()
692
703
  NOT stored in the SPARCL database.
693
704
 
694
705
  Args:
695
- specid_list (:obj:`list`): List of specids.
706
+ specid_list (:obj:`list` of :obj:`int`): List of specids.
696
707
 
697
- dataset_list (:obj:`list`, optional): List of data sets from
698
- which to find missing specids. Defaults to None, meaning
699
- all data sets hosted on the SPARCL database.
708
+ dataset_list (:obj:`list` of :obj:`str`, optional): List of data
709
+ sets from which to find missing specids. Defaults to None,
710
+ meaning all data sets hosted on the SPARCL database.
700
711
 
701
712
  countOnly (:obj:`bool`, optional): Set to True to return only
702
713
  a count of the missing specids from the specid_list.
@@ -711,16 +722,15 @@ class SparclClient: # was SparclApi()
711
722
 
712
723
  Example:
713
724
  >>> client = SparclClient()
714
- >>> found = client.find(outfields=['specid'], limit=2)
715
- >>> specids = [f.specid for f in found.records]
716
- >>> client.missing_specids(specids + ['bad_id'])
717
- ['bad_id']
725
+ >>> specids = [398913623742323421, 6181239242670493696]
726
+ >>> client.missing_specids(specid_list=specids)
727
+ [398913623742323421]
718
728
  """
719
729
  if dataset_list is None:
720
730
  dataset_list = self.fields.all_drs
721
- assert isinstance(
722
- dataset_list, (list, set)
723
- ), f"DATASET_LIST must be a list. Found {dataset_list}"
731
+ assert isinstance(dataset_list, (list, set)), (
732
+ f"DATASET_LIST must be a list. Found {dataset_list}"
733
+ )
724
734
 
725
735
  verbose = verbose or self.verbose
726
736
  uparams = dict(dataset_list=",".join(dataset_list))
@@ -756,13 +766,13 @@ class SparclClient: # was SparclApi()
756
766
  unknown = inc_set.difference(avail_science)
757
767
  if len(unknown) > 0:
758
768
  msg = (
759
- f'The INCLUDE list ({",".join(sorted(include_list))}) '
769
+ f"The INCLUDE list ({','.join(sorted(include_list))}) "
760
770
  f"contains invalid data field names "
761
- f'for Data Sets ({",".join(sorted(dataset_list))}). '
771
+ f"for Data Sets ({','.join(sorted(dataset_list))}). "
762
772
  f"Unknown fields are: "
763
- f'{", ".join(sorted(list(unknown)))}. '
773
+ f"{', '.join(sorted(list(unknown)))}. "
764
774
  f"Available fields are: "
765
- f'{", ".join(sorted(avail_science))}.'
775
+ f"{', '.join(sorted(avail_science))}."
766
776
  )
767
777
  raise ex.BadInclude(msg)
768
778
  return True
@@ -780,15 +790,15 @@ class SparclClient: # was SparclApi()
780
790
  sparcl_ids.
781
791
 
782
792
  Args:
783
- uuid_list (:obj:`list`): List of sparcl_ids.
793
+ uuid_list (:obj:`list` of :obj:`str`): List of sparcl_ids.
784
794
 
785
- include (:obj:`list`, optional): List of field names to include
786
- in each record. Defaults to 'DEFAULT', which will return
787
- the fields tagged as 'default'.
795
+ include (:obj:`list` of :obj:`str`, optional): List of field
796
+ names to include in each record. Defaults to 'DEFAULT',
797
+ which will return the fields tagged as 'default'.
788
798
 
789
- dataset_list (:obj:`list`, optional): List of data sets from
790
- which to retrieve spectra data. Defaults to None, meaning all
791
- data sets hosted on the SPARCL database.
799
+ dataset_list (:obj:`list` of :obj:`str`, optional): List of data
800
+ sets from which to retrieve spectra data. Defaults to None,
801
+ meaning all data sets hosted on the SPARCL database.
792
802
 
793
803
  limit (:obj:`int`, optional): Maximum number of records to
794
804
  return. Defaults to 500. Maximum allowed is 24,000.
@@ -827,9 +837,9 @@ class SparclClient: # was SparclApi()
827
837
  orig_dataset_list = dataset_list
828
838
  if dataset_list is None:
829
839
  dataset_list = self.fields.all_drs
830
- assert isinstance(
831
- dataset_list, (list, set)
832
- ), f"DATASET_LIST must be a list. Found {dataset_list}"
840
+ assert isinstance(dataset_list, (list, set)), (
841
+ f"DATASET_LIST must be a list. Found {dataset_list}"
842
+ )
833
843
 
834
844
  verbose = self.verbose if verbose is None else verbose
835
845
 
@@ -920,7 +930,7 @@ class SparclClient: # was SparclApi()
920
930
  print(f"DBG: Server response=\n{res.text}")
921
931
  # @@@ FAILS on invalid JSON. Maybe not json at all !!!
922
932
  if verbose and ("traceback" in res.json()):
923
- print(f'DBG: Server traceback=\n{res.json()["traceback"]}')
933
+ print(f"DBG: Server traceback=\n{res.json()['traceback']}")
924
934
  raise ex.genSparclException(res, verbose=verbose)
925
935
 
926
936
  if format == "json":
@@ -944,26 +954,26 @@ class SparclClient: # was SparclApi()
944
954
  count = len(results) - 1
945
955
  print(
946
956
  f"Got {count} spectra in "
947
- f"{elapsed:.2f} seconds ({count/elapsed:.0f} "
957
+ f"{elapsed:.2f} seconds ({count / elapsed:.0f} "
948
958
  "spectra/sec)"
949
959
  )
950
- print(f'{meta["status"]}')
951
-
952
- # Format/consolodate the server messages to one message with the count of missing
953
- # files
960
+ print(f"{meta['status']}")
961
+
962
+ # Format/consolodate the server messages to one message with
963
+ # the count of missing files
954
964
  if len(meta["status"].get("warnings", [])) > 0:
955
965
  warnings = meta["status"].get("warnings")
956
966
  if verbose:
957
967
  print(f"There are {len(warnings)} warnings")
958
968
  missingcount = 0
959
- missing_message = re.sub(r' [0-9]+ ', ' %s ', warnings[0])
969
+ missing_message = re.sub(r" [0-9]+ ", " %s ", warnings[0])
960
970
  for i in warnings:
961
- matches = re.match(r'.* ([0-9]+) out of the ([0-9]+).*', i)
971
+ matches = re.match(r".* ([0-9]+) out of the ([0-9]+).*", i)
962
972
  if matches:
963
973
  missingcount += int(matches.groups()[0])
964
974
 
965
975
  # using old style substitution to avoid issue with the {} in the message # noqa: E501
966
- warning_message = missing_message % (missingcount, req_num, missingcount) # noqa: E501
976
+ warning_message = missing_message % (missingcount, req_num, missingcount) # noqa: E501
967
977
  warn(warning_message, stacklevel=2)
968
978
 
969
979
  return Retrieved(results, client=self)
@@ -983,15 +993,15 @@ class SparclClient: # was SparclApi()
983
993
  specids.
984
994
 
985
995
  Args:
986
- specid_list (:obj:`list`): List of specids.
996
+ specid_list (:obj:`list` of :obj:`int`): List of specids.
987
997
 
988
- include (:obj:`list`, optional): List of field names to include
989
- in each record. Defaults to 'DEFAULT', which will return
990
- the fields tagged as 'default'.
998
+ include (:obj:`list` of :obj:`str`, optional): List of field
999
+ names to include in each record. Defaults to 'DEFAULT',
1000
+ which will return the fields tagged as 'default'.
991
1001
 
992
- dataset_list (:obj:`list`, optional): List of data sets from
993
- which to retrieve spectra data. Defaults to None, meaning all
994
- data sets hosted on the SPARCL database.
1002
+ dataset_list (:obj:`list` of :obj:`str`, optional): List of data
1003
+ sets from which to retrieve spectra data. Defaults to None,
1004
+ meaning all data sets hosted on the SPARCL database.
995
1005
 
996
1006
  limit (:obj:`int`, optional): Maximum number of records to
997
1007
  return. Defaults to 500. Maximum allowed is 24,000.
@@ -1016,9 +1026,9 @@ class SparclClient: # was SparclApi()
1016
1026
  f'The "specid_list" parameter must be a python list. '
1017
1027
  f"You used a value of type {type(specid_list)}."
1018
1028
  )
1019
- assert (
1020
- len(specid_list) > 0
1021
- ), f'The "specid_list" parameter value must be a non-empty list'
1029
+ assert len(specid_list) > 0, (
1030
+ f'The "specid_list" parameter value must be a non-empty list'
1031
+ )
1022
1032
  assert isinstance(specid_list[0], int), (
1023
1033
  f'The "specid_list" parameter must be a python list of INTEGERS. '
1024
1034
  f"You used an element value of type {type(specid_list[0])}."
@@ -1026,8 +1036,10 @@ class SparclClient: # was SparclApi()
1026
1036
 
1027
1037
  if dataset_list is None:
1028
1038
  constraints = {"specid": specid_list}
1039
+ dr_list = self.fields.all_drs
1029
1040
  else:
1030
1041
  constraints = {"specid": specid_list, "data_release": dataset_list}
1042
+ dr_list = dataset_list
1031
1043
 
1032
1044
  # Science Field Name for uuid.
1033
1045
  dr = list(self.fields.all_drs)[0]
@@ -1036,6 +1048,16 @@ class SparclClient: # was SparclApi()
1036
1048
  found = self.find([idfld], constraints=constraints, limit=limit)
1037
1049
  if verbose:
1038
1050
  print(f"Found {found.count} matches.")
1051
+ if found.count < len(specid_list):
1052
+ usrcount = len(specid_list)
1053
+ dbcount = found.count
1054
+ warn = (
1055
+ f"UserWarning: Some specIDs were not found. "
1056
+ f"{usrcount - dbcount} out of the {usrcount} requested "
1057
+ f"specids have no records available in the SPARCL database "
1058
+ f"associated with DataSets {dr_list}."
1059
+ )
1060
+ print(warn)
1039
1061
  res = self.retrieve(
1040
1062
  found.ids,
1041
1063
  #! svc=svc,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: sparclclient
3
- Version: 1.2.5b1
3
+ Version: 1.2.6
4
4
  Summary: A client for getting spectra and meta-data from NOIRLab.
5
5
  Author-email: "S. Pothier" <datalab-spectro@noirlab.edu>
6
6
  Description-Content-Type: text/markdown
@@ -1,6 +1,6 @@
1
1
  sparcl/Results.py,sha256=vnACjm8sp7MrsJ_5LTuKMuyRWqeBJxOxQM302cHmAlk,9159
2
- sparcl/__init__.py,sha256=hahu4a4UYZyFWVRvdhVioUHONvVyQDt1S3dMczOFNkg,1101
3
- sparcl/client.py,sha256=riepZHgMhxC328GX9vIGOWGMPfn-aIKGFziFYB12d8c,38669
2
+ sparcl/__init__.py,sha256=ddW6kTTKyO62X2WfQ6s_ZDmyc5hIkRBh7C6SsM2KE1s,1122
3
+ sparcl/client.py,sha256=a3uUD19yi_hHAkRtpk-A2gXQ_w1l1LktDFLCrUUAcV0,39876
4
4
  sparcl/conf.py,sha256=GFNDelaiVIAkjNjvFlG7HAlPpU39nqZmTPohQGmOcgI,928
5
5
  sparcl/exceptions.py,sha256=sznmOMGENHvxutSXlRVWqi87bR2Qiebka7LyR3mAII0,4244
6
6
  sparcl/fields.py,sha256=NZUBqDidpbXfeX5F4b306F323xZY2CRIx8eVv-HWTVU,5127
@@ -15,7 +15,7 @@ sparcl/benchmarks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU
15
15
  sparcl/benchmarks/benchmarks.py,sha256=OmlSdnAPLmcvGXsr-HzGyfAAcnoqlO0JQ4EIA7JGhZc,9424
16
16
  sparcl/benchmarks/sparcl_benchmarking.ipynb,sha256=gwof2hqM9Qb49qzRX-mky7WNqXZCMSB7ry8bX8dImxc,17559
17
17
  sparcl/notebooks/sparcl-examples.ipynb,sha256=gEwMKI1x7A1YsVeCsQn1QoMO0ZuIhMUAu3qedTiQ7hM,169268
18
- sparclclient-1.2.5b1.dist-info/LICENSE,sha256=y10EluGMCzGs9X4oYCYyix3l6u-lawB_vlGR8qe442Q,1576
19
- sparclclient-1.2.5b1.dist-info/WHEEL,sha256=ssQ84EZ5gH1pCOujd3iW7HClo_O_aDaClUbX4B8bjKY,100
20
- sparclclient-1.2.5b1.dist-info/METADATA,sha256=9lhlH82UUmM1h1FKAe6CJOKDV7CF84pYtBVDFCmRYqY,680
21
- sparclclient-1.2.5b1.dist-info/RECORD,,
18
+ sparclclient-1.2.6.dist-info/LICENSE,sha256=y10EluGMCzGs9X4oYCYyix3l6u-lawB_vlGR8qe442Q,1576
19
+ sparclclient-1.2.6.dist-info/WHEEL,sha256=ssQ84EZ5gH1pCOujd3iW7HClo_O_aDaClUbX4B8bjKY,100
20
+ sparclclient-1.2.6.dist-info/METADATA,sha256=Y8Rgexjy-KrLSpXugWfxnIHfMB6EhwEsWK1b1UyGisg,678
21
+ sparclclient-1.2.6.dist-info/RECORD,,