sinter 1.16.dev1748073630__tar.gz → 1.16.dev1750923543__tar.gz
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.
Potentially problematic release.
This version of sinter might be problematic. Click here for more details.
- {sinter-1.16.dev1748073630/src/sinter.egg-info → sinter-1.16.dev1750923543}/PKG-INFO +1 -1
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/setup.py +1 -1
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/__init__.py +1 -1
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_anon_task_stats.py +6 -5
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_csv_out.py +3 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_task_stats.py +11 -11
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_task_stats_test.py +1 -1
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543/src/sinter.egg-info}/PKG-INFO +1 -1
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/MANIFEST.in +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/README.md +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/readme_example_plot.png +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/requirements.txt +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/setup.cfg +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/__init__.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_collection.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_collection_manager.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_collection_manager_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_collection_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_collection_worker_loop.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_collection_worker_state.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_collection_worker_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_mux_sampler.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_printer.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_sampler_ramp_throttled.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_sampler_ramp_throttled_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/__init__.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_collect.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_collect_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_combine.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_combine_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_plot.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_plot_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_predict.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_predict_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/__init__.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_anon_task_stats_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_collection_options.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_collection_options_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_existing_data.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_existing_data_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_task.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_task_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/__init__.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_all_built_in_decoders.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_decoder_class.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_fusion_blossom.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_mwpf.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_pymatching.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_vacuous.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_perfectionist_sampler.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_sampler.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_stim_then_decode_sampler.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_stim_then_decode_sampler_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_plotting.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_plotting_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_predict.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_predict_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_probability_util.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_probability_util_test.py +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter.egg-info/SOURCES.txt +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter.egg-info/dependency_links.txt +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter.egg-info/entry_points.txt +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter.egg-info/requires.txt +0 -0
- {sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter.egg-info/top_level.txt +0 -0
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_anon_task_stats.py
RENAMED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import collections
|
|
2
2
|
import dataclasses
|
|
3
3
|
from typing import Counter, Union, TYPE_CHECKING
|
|
4
|
+
import numpy as np
|
|
4
5
|
|
|
5
6
|
if TYPE_CHECKING:
|
|
6
7
|
from sinter._data._task_stats import TaskStats
|
|
@@ -34,16 +35,16 @@ class AnonTaskStats:
|
|
|
34
35
|
custom_counts: Counter[str] = dataclasses.field(default_factory=collections.Counter)
|
|
35
36
|
|
|
36
37
|
def __post_init__(self):
|
|
37
|
-
assert isinstance(self.errors, int)
|
|
38
|
-
assert isinstance(self.shots, int)
|
|
39
|
-
assert isinstance(self.discards, int)
|
|
40
|
-
assert isinstance(self.seconds, (int, float))
|
|
38
|
+
assert isinstance(self.errors, (int, np.integer))
|
|
39
|
+
assert isinstance(self.shots, (int, np.integer))
|
|
40
|
+
assert isinstance(self.discards, (int, np.integer))
|
|
41
|
+
assert isinstance(self.seconds, (int, float, np.integer, np.floating))
|
|
41
42
|
assert isinstance(self.custom_counts, collections.Counter)
|
|
42
43
|
assert self.errors >= 0
|
|
43
44
|
assert self.discards >= 0
|
|
44
45
|
assert self.seconds >= 0
|
|
45
46
|
assert self.shots >= self.errors + self.discards
|
|
46
|
-
assert all(isinstance(k, str) and isinstance(v, int) for k, v in self.custom_counts.items())
|
|
47
|
+
assert all(isinstance(k, str) and isinstance(v, (int, np.integer)) for k, v in self.custom_counts.items())
|
|
47
48
|
|
|
48
49
|
def __repr__(self) -> str:
|
|
49
50
|
terms = []
|
|
@@ -36,6 +36,9 @@ def csv_line(*,
|
|
|
36
36
|
separators=(',', ':'),
|
|
37
37
|
sort_keys=True)
|
|
38
38
|
if custom_counts:
|
|
39
|
+
# Ensure all custom_counts values are integers before dumping to JSON
|
|
40
|
+
for k in custom_counts:
|
|
41
|
+
custom_counts[k] = int(custom_counts[k])
|
|
39
42
|
custom_counts = escape_csv(
|
|
40
43
|
json.dumps(custom_counts,
|
|
41
44
|
separators=(',', ':'),
|
|
@@ -4,7 +4,7 @@ from typing import Counter, List, Any
|
|
|
4
4
|
from typing import Optional
|
|
5
5
|
from typing import Union
|
|
6
6
|
from typing import overload
|
|
7
|
-
|
|
7
|
+
import numpy as np
|
|
8
8
|
from sinter._data._anon_task_stats import AnonTaskStats
|
|
9
9
|
from sinter._data._csv_out import csv_line
|
|
10
10
|
|
|
@@ -71,10 +71,10 @@ class TaskStats:
|
|
|
71
71
|
custom_counts: Counter[str] = dataclasses.field(default_factory=collections.Counter)
|
|
72
72
|
|
|
73
73
|
def __post_init__(self):
|
|
74
|
-
assert isinstance(self.errors, int)
|
|
75
|
-
assert isinstance(self.shots, int)
|
|
76
|
-
assert isinstance(self.discards, int)
|
|
77
|
-
assert isinstance(self.seconds, (int, float))
|
|
74
|
+
assert isinstance(self.errors, (int, np.integer))
|
|
75
|
+
assert isinstance(self.shots, (int, np.integer))
|
|
76
|
+
assert isinstance(self.discards, (int, np.integer))
|
|
77
|
+
assert isinstance(self.seconds, (int, float, np.integer, np.floating))
|
|
78
78
|
assert isinstance(self.custom_counts, collections.Counter)
|
|
79
79
|
assert isinstance(self.decoder, str)
|
|
80
80
|
assert isinstance(self.strong_id, str)
|
|
@@ -83,7 +83,7 @@ class TaskStats:
|
|
|
83
83
|
assert self.discards >= 0
|
|
84
84
|
assert self.seconds >= 0
|
|
85
85
|
assert self.shots >= self.errors + self.discards
|
|
86
|
-
assert all(isinstance(k, str) and isinstance(v, int) for k, v in self.custom_counts.items())
|
|
86
|
+
assert all(isinstance(k, str) and isinstance(v, (int, np.integer)) for k, v in self.custom_counts.items())
|
|
87
87
|
|
|
88
88
|
def with_edits(
|
|
89
89
|
self,
|
|
@@ -190,13 +190,13 @@ class TaskStats:
|
|
|
190
190
|
>>> print(sinter.CSV_HEADER)
|
|
191
191
|
shots, errors, discards, seconds,decoder,strong_id,json_metadata,custom_counts
|
|
192
192
|
>>> print(stat.to_csv_line())
|
|
193
|
-
22, 3, 0,
|
|
193
|
+
22, 3, 0, 5.00,pymatching,test,"{""a"":[1,2,3]}",
|
|
194
194
|
"""
|
|
195
195
|
return csv_line(
|
|
196
|
-
shots=self.shots,
|
|
197
|
-
errors=self.errors,
|
|
198
|
-
seconds=self.seconds,
|
|
199
|
-
discards=self.discards,
|
|
196
|
+
shots=int(self.shots),
|
|
197
|
+
errors=int(self.errors),
|
|
198
|
+
seconds=float(self.seconds),
|
|
199
|
+
discards=int(self.discards),
|
|
200
200
|
strong_id=self.strong_id,
|
|
201
201
|
decoder=self.decoder,
|
|
202
202
|
json_metadata=self.json_metadata,
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_task_stats_test.py
RENAMED
|
@@ -29,7 +29,7 @@ def test_to_csv_line():
|
|
|
29
29
|
discards=4,
|
|
30
30
|
seconds=5,
|
|
31
31
|
)
|
|
32
|
-
assert v.to_csv_line() == str(v) == ' 22, 3, 4,
|
|
32
|
+
assert v.to_csv_line() == str(v) == ' 22, 3, 4, 5.00,pymatching,test,"{""a"":[1,2,3]}",'
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
def test_to_anon_stats():
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_collection.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_collection_test.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_collection/_mux_sampler.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_collect.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_collect_test.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_combine.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_combine_test.py
RENAMED
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_plot_test.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_predict.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_command/_main_predict_test.py
RENAMED
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_anon_task_stats_test.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_collection_options.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_collection_options_test.py
RENAMED
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_data/_existing_data_test.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_mwpf.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_pymatching.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_test.py
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_decoding/_decoding_vacuous.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter/_probability_util_test.py
RENAMED
|
File without changes
|
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{sinter-1.16.dev1748073630 → sinter-1.16.dev1750923543}/src/sinter.egg-info/entry_points.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|