opencos-eda 0.2.52__py3-none-any.whl → 0.2.54__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.
- opencos/commands/__init__.py +2 -0
- opencos/commands/build.py +1 -1
- opencos/commands/deps_help.py +259 -0
- opencos/commands/export.py +1 -1
- opencos/commands/flist.py +4 -1
- opencos/commands/lec.py +1 -1
- opencos/commands/open.py +2 -0
- opencos/commands/proj.py +1 -1
- opencos/commands/shell.py +1 -1
- opencos/commands/sim.py +76 -8
- opencos/commands/synth.py +1 -1
- opencos/commands/upload.py +3 -0
- opencos/commands/waves.py +1 -0
- opencos/deps/defaults.py +1 -0
- opencos/deps/deps_file.py +30 -4
- opencos/deps/deps_processor.py +72 -2
- opencos/deps_schema.py +3 -0
- opencos/eda.py +50 -26
- opencos/eda_base.py +177 -33
- opencos/eda_config.py +1 -1
- opencos/eda_config_defaults.yml +49 -3
- opencos/eda_extract_targets.py +1 -58
- opencos/tests/helpers.py +16 -0
- opencos/tests/test_eda.py +14 -3
- opencos/tests/test_tools.py +159 -132
- opencos/tools/cocotb.py +15 -14
- opencos/tools/iverilog.py +4 -24
- opencos/tools/modelsim_ase.py +70 -57
- opencos/tools/quartus.py +680 -0
- opencos/tools/questa.py +158 -90
- opencos/tools/questa_fse.py +10 -0
- opencos/tools/riviera.py +1 -0
- opencos/tools/verilator.py +9 -15
- opencos/tools/vivado.py +30 -23
- opencos/util.py +89 -15
- opencos/utils/status_constants.py +1 -0
- opencos/utils/str_helpers.py +85 -0
- {opencos_eda-0.2.52.dist-info → opencos_eda-0.2.54.dist-info}/METADATA +1 -1
- {opencos_eda-0.2.52.dist-info → opencos_eda-0.2.54.dist-info}/RECORD +44 -42
- {opencos_eda-0.2.52.dist-info → opencos_eda-0.2.54.dist-info}/WHEEL +0 -0
- {opencos_eda-0.2.52.dist-info → opencos_eda-0.2.54.dist-info}/entry_points.txt +0 -0
- {opencos_eda-0.2.52.dist-info → opencos_eda-0.2.54.dist-info}/licenses/LICENSE +0 -0
- {opencos_eda-0.2.52.dist-info → opencos_eda-0.2.54.dist-info}/licenses/LICENSE.spdx +0 -0
- {opencos_eda-0.2.52.dist-info → opencos_eda-0.2.54.dist-info}/top_level.txt +0 -0
opencos/utils/str_helpers.py
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
1
|
'''opencos.utils.str_helpers -- Various str helpers for printing, indenting'''
|
|
2
2
|
|
|
3
3
|
import fnmatch
|
|
4
|
+
import os
|
|
4
5
|
import re
|
|
5
6
|
import shlex
|
|
6
7
|
import textwrap
|
|
7
8
|
|
|
9
|
+
VALID_TARGET_INFO_STR = (
|
|
10
|
+
"should start with an underscore/letter, rest should be alpha-numeric, dashes, or underscores."
|
|
11
|
+
)
|
|
12
|
+
|
|
13
|
+
def is_valid_target_name(s: str) -> bool:
|
|
14
|
+
'''Returns True if str starts with underscore/letter, rest alphanum, dash, or underscores'''
|
|
15
|
+
if not s or not (s[0].isalpha() or s[0] == '_'):
|
|
16
|
+
return False
|
|
17
|
+
return s.replace('_', '').replace('-', '').isalnum()
|
|
18
|
+
|
|
8
19
|
def strip_all_quotes(s: str) -> str:
|
|
9
20
|
'''Returns str with all ' and " removed'''
|
|
10
21
|
return s.replace("'", '').replace('"', '')
|
|
@@ -109,3 +120,77 @@ def fnmatch_or_re(pattern: str, string: str) -> bool:
|
|
|
109
120
|
# could have been an illegal/unsupported regex, so don't match.
|
|
110
121
|
pass
|
|
111
122
|
return any(matches)
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
def get_terminal_columns():
|
|
126
|
+
"""
|
|
127
|
+
Retrieves the number of columns (width) of the terminal window.
|
|
128
|
+
|
|
129
|
+
Returns:
|
|
130
|
+
int: The number of columns in the terminal, or a default value (e.g., 80)
|
|
131
|
+
if the terminal size cannot be determined.
|
|
132
|
+
"""
|
|
133
|
+
try:
|
|
134
|
+
size = os.get_terminal_size()
|
|
135
|
+
return size.columns
|
|
136
|
+
except OSError:
|
|
137
|
+
# Handle cases where the terminal size cannot be determined (e.g., not in a TTY)
|
|
138
|
+
return 80 # Default to 80 columns
|
|
139
|
+
|
|
140
|
+
return 80 # else default to 80.
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
def pretty_list_columns_manual(data: list, num_columns: int = 4, auto_columns: bool = True) -> list:
|
|
144
|
+
"""Returns list, from list of str, organized into columns, manually aligning them."""
|
|
145
|
+
|
|
146
|
+
ret_lines = []
|
|
147
|
+
if not data:
|
|
148
|
+
return ret_lines
|
|
149
|
+
|
|
150
|
+
_spacing = 2
|
|
151
|
+
|
|
152
|
+
# Calculate maximum width for each column
|
|
153
|
+
max_lengths = [0] * num_columns
|
|
154
|
+
max_item_len = 0
|
|
155
|
+
for i, item in enumerate(data):
|
|
156
|
+
col_index = i % num_columns
|
|
157
|
+
max_lengths[col_index] = max(max_lengths[col_index], len(item))
|
|
158
|
+
max_item_len = max(max_item_len, len(item))
|
|
159
|
+
|
|
160
|
+
if auto_columns and num_columns > 1:
|
|
161
|
+
window_cols = get_terminal_columns()
|
|
162
|
+
max_line_len = 0
|
|
163
|
+
for x in max_lengths:
|
|
164
|
+
max_line_len += x + _spacing
|
|
165
|
+
if max_line_len > window_cols:
|
|
166
|
+
# subtract a column (already >= 2):
|
|
167
|
+
ret_lines.extend(
|
|
168
|
+
pretty_list_columns_manual(data=data, num_columns=num_columns-1, auto_columns=True)
|
|
169
|
+
)
|
|
170
|
+
return ret_lines
|
|
171
|
+
if max_line_len + max_item_len + _spacing < window_cols:
|
|
172
|
+
# add 1 more column if we're guaranteed to have room.
|
|
173
|
+
ret_lines.extend(
|
|
174
|
+
pretty_list_columns_manual(data=data, num_columns=num_columns+1, auto_columns=True)
|
|
175
|
+
)
|
|
176
|
+
return ret_lines
|
|
177
|
+
# else continue
|
|
178
|
+
|
|
179
|
+
# Print data in columns
|
|
180
|
+
ret_lines.append('')
|
|
181
|
+
for i, item in enumerate(data):
|
|
182
|
+
col_index = i % num_columns
|
|
183
|
+
ret_lines[-1] += str(item).ljust(max_lengths[col_index] + _spacing)
|
|
184
|
+
if col_index == num_columns - 1 or i == len(data) - 1:
|
|
185
|
+
ret_lines.append('')
|
|
186
|
+
|
|
187
|
+
return ret_lines
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
def print_columns_manual(data: list, num_columns: int = 4, auto_columns: bool = True) -> None:
|
|
191
|
+
"""Prints a list of strings in columns, manually aligning them."""
|
|
192
|
+
|
|
193
|
+
lines = pretty_list_columns_manual(
|
|
194
|
+
data=data, num_columns=num_columns, auto_columns=auto_columns
|
|
195
|
+
)
|
|
196
|
+
print('\n'.join(lines))
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: opencos-eda
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.54
|
|
4
4
|
Summary: A simple Python package for wrapping RTL simuliatons and synthesis
|
|
5
5
|
Author-email: Simon Sabato <simon@cognichip.ai>, Drew Ranck <drew@cognichip.ai>
|
|
6
6
|
Project-URL: Homepage, https://github.com/cognichip/opencos
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
opencos/__init__.py,sha256=RwJA9oc1uUlvNX7v5zoqwjnSRNq2NZwRlHqtS-ICJkI,122
|
|
2
2
|
opencos/_version.py,sha256=XiHFZjCofkkZvI9befTFKsRt5zLouUo1CIwhW4srWU0,582
|
|
3
3
|
opencos/_waves_pkg.sv,sha256=1lbhQOVGc3t_R8czYjP40hssP0I3FlZOpHTkI7yKFbI,1251
|
|
4
|
-
opencos/deps_schema.py,sha256=
|
|
5
|
-
opencos/eda.py,sha256=
|
|
6
|
-
opencos/eda_base.py,sha256=
|
|
7
|
-
opencos/eda_config.py,sha256=
|
|
8
|
-
opencos/eda_config_defaults.yml,sha256
|
|
4
|
+
opencos/deps_schema.py,sha256=5QLN2OQdhbfxHqbqt4Ty-Saskh-z_h9m9qfWqB8kZ9U,15691
|
|
5
|
+
opencos/eda.py,sha256=kz4jSYBANXdbNGH3DmE9v_jU2p_NkI2tT6aBslcYtcQ,22248
|
|
6
|
+
opencos/eda_base.py,sha256=DX0RHiJq84T_4LpcC7zQD5cCuDHfLrWzk7lkXBWfeP8,101892
|
|
7
|
+
opencos/eda_config.py,sha256=XgO2YKUWSL7TAFo-V4h4xqNO3Z1Ug4JI-W8LvzD-kGQ,11407
|
|
8
|
+
opencos/eda_config_defaults.yml,sha256=-2ISGkktUo-O5hzju_KxNGr9oyRL9iYQ4OKRzImgCsQ,15284
|
|
9
9
|
opencos/eda_config_max_verilator_waivers.yml,sha256=lTAU4IOEbUWVlPzuer1YYhIyxpPINeA4EJqcRIT-Ymk,840
|
|
10
10
|
opencos/eda_config_reduced.yml,sha256=cQ9jY4J7EvAbeHTiP6bvpDSVJAYiitjLZPSxxLKIEbk,1440
|
|
11
11
|
opencos/eda_deps_bash_completion.bash,sha256=jMkQKY82HBgOnQeMdA1hMrXguRFtB52SMBxUemKovL4,1958
|
|
12
12
|
opencos/eda_deps_sanitize.py,sha256=SQjvrte9Hv9JesRY0wljvbdC6pAmLCikI-Wdzzy-D04,1939
|
|
13
|
-
opencos/eda_extract_targets.py,sha256=
|
|
13
|
+
opencos/eda_extract_targets.py,sha256=POlxZfqf2dNH2nc1CEw5B_53vSHAicSTkpU9_-2_6Zw,2851
|
|
14
14
|
opencos/eda_tool_helper.py,sha256=_YgobDLEWW6Fzdr976LxaCDZ4DKRyuMs5CrYQHaTPrU,2558
|
|
15
15
|
opencos/export_helper.py,sha256=ArsM8qxBc08gj9S-UholGU417POfBYb_cHkBQZEfqfI,22046
|
|
16
16
|
opencos/export_json_convert.py,sha256=tSIMbLFtc_Fo66EhFovMii1v_qJYyFZJrPNnoPdW7L0,4182
|
|
@@ -18,42 +18,43 @@ opencos/files.py,sha256=aoq0O2KfISzZb-Vi_q_0TTGBER9xJc--FkVZf0ga7pA,1549
|
|
|
18
18
|
opencos/names.py,sha256=iC37PV7Pz0PicTDg09vbQ9NXAj-5m6RKrWHkkcHB8As,1145
|
|
19
19
|
opencos/peakrdl_cleanup.py,sha256=vHNGtalTrIVP335PhRjPt9RhoccgpK1HJAi-E4M8Kc8,736
|
|
20
20
|
opencos/seed.py,sha256=IL9Yg-r9SLSRseMVWaEHmuw2_DNi_eyut11EafoNTsU,942
|
|
21
|
-
opencos/util.py,sha256=
|
|
22
|
-
opencos/commands/__init__.py,sha256=
|
|
23
|
-
opencos/commands/build.py,sha256=
|
|
21
|
+
opencos/util.py,sha256=03b2JP80NDXksNTwShMRamnTVb1C2gUfrPYBDL40pHA,37565
|
|
22
|
+
opencos/commands/__init__.py,sha256=TtfbQgmdSTGDZzTrl1ASx7pxY3jaXyK6aTtOng0x-O8,1076
|
|
23
|
+
opencos/commands/build.py,sha256=hvjrvg7AbEotuQze6-yz3DOYRMtagkvJ-6TFNJQTwrs,1441
|
|
24
|
+
opencos/commands/deps_help.py,sha256=WDrU7H9sypzDAxe_CHqhW5B_scbQMzBEdf-v-Jcfd5Q,10682
|
|
24
25
|
opencos/commands/elab.py,sha256=m6Gk03wSzX8UkcmReooK7turF7LpqO0IcdOZwJ8XiyI,1596
|
|
25
|
-
opencos/commands/export.py,sha256=
|
|
26
|
-
opencos/commands/flist.py,sha256=
|
|
27
|
-
opencos/commands/lec.py,sha256=
|
|
26
|
+
opencos/commands/export.py,sha256=dpTcrtPjIt6TOw-i8LUWhb4ismFAE1QK-dNAHC1jxME,3510
|
|
27
|
+
opencos/commands/flist.py,sha256=x3VVarCVlz2kFJI5rQ8UsZzzas32j4zQKgzXGIozKwE,8638
|
|
28
|
+
opencos/commands/lec.py,sha256=bshOs_GkuB1nCGd_SntT43_XpSYQYJqNCjVZp6Q1Chc,3879
|
|
28
29
|
opencos/commands/multi.py,sha256=dCo4rMIkGT3BtlBhUIAd7r31w8qxeJvybpl4H7DR77o,27225
|
|
29
|
-
opencos/commands/open.py,sha256=
|
|
30
|
-
opencos/commands/proj.py,sha256=
|
|
31
|
-
opencos/commands/shell.py,sha256=
|
|
32
|
-
opencos/commands/sim.py,sha256=
|
|
30
|
+
opencos/commands/open.py,sha256=XckvKUNwvc5KHbYGV-eQ2i0WG4X-yckroDaMC610MB4,804
|
|
31
|
+
opencos/commands/proj.py,sha256=vCsZle3oUJ8xmIFuepgAD6G-YGl35xtTIcTeiVDshNo,1112
|
|
32
|
+
opencos/commands/shell.py,sha256=dFXXtvsDs3Khme41du8LhKdV3qRosxjTfju6SJbOSKM,7599
|
|
33
|
+
opencos/commands/sim.py,sha256=0FV7ODiHFyJJjVBEb3WuTKNubxB0DYGNqpZqnLP_-Hw,18038
|
|
33
34
|
opencos/commands/sweep.py,sha256=ni4XFgnFF8HLXtwPhETyLWfvc2kgtm4bcxFcKzUhkf0,9343
|
|
34
|
-
opencos/commands/synth.py,sha256=
|
|
35
|
+
opencos/commands/synth.py,sha256=tuxWmxMNmE9hveWXGNfKDelzxi_wK7ZL7V2LiZV6Ypg,4371
|
|
35
36
|
opencos/commands/targets.py,sha256=_jRNhm2Fqj0fmMvTw6Ba39DCsRHf_r_uZCy_R064kpA,1472
|
|
36
|
-
opencos/commands/upload.py,sha256=
|
|
37
|
-
opencos/commands/waves.py,sha256=
|
|
37
|
+
opencos/commands/upload.py,sha256=oyImgcEFGxDkdeY9EYyX2R6fTOmN-lTs-HYxAZqXUUo,871
|
|
38
|
+
opencos/commands/waves.py,sha256=nrp3ALwfJujZns44tgCgia_dEedQyKe0T3fuws8h39U,7697
|
|
38
39
|
opencos/deps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
|
-
opencos/deps/defaults.py,sha256=
|
|
40
|
+
opencos/deps/defaults.py,sha256=jG971rCDveja8NkY3uKcBYY-cnXsW_thqGRy19TWe1Q,1262
|
|
40
41
|
opencos/deps/deps_commands.py,sha256=OlqueYFK8U83loasok3xJGzUDpNcj2DPk37332DfmRo,17039
|
|
41
|
-
opencos/deps/deps_file.py,sha256=
|
|
42
|
-
opencos/deps/deps_processor.py,sha256=
|
|
42
|
+
opencos/deps/deps_file.py,sha256=blqrN7wgOa5x_ldFC3tn2kCR4VStTEmMdXlePwyMwE4,16268
|
|
43
|
+
opencos/deps/deps_processor.py,sha256=uO2NqQvi1iCRCO1pTS-ns-rET15FK3lsR6AjFrhPjUM,36209
|
|
43
44
|
opencos/hw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
44
45
|
opencos/hw/oc_cli.py,sha256=QBmf05VooB9kQFzgliak7PEvqVLTSEI3v6deV1OZQEs,132252
|
|
45
46
|
opencos/hw/pcie.py,sha256=VUJljaZJYgScAAx5yn7F6GoA8K9eTcw24otYZbkMpYs,3035
|
|
46
47
|
opencos/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
47
48
|
opencos/tests/custom_config.yml,sha256=TRoVM9ZFKPOA_8JmlpzaMhnGO1txmaD14N_8P1oqzew,257
|
|
48
|
-
opencos/tests/helpers.py,sha256=
|
|
49
|
+
opencos/tests/helpers.py,sha256=HdsARZK0KsGou2SRV30fBALV674bsST37ldpT-gI6q8,9512
|
|
49
50
|
opencos/tests/test_build.py,sha256=FQAxOpLVQShAHD_L5rqJctPeSAoqoOCNFI0RXflLuY0,387
|
|
50
51
|
opencos/tests/test_deps_helpers.py,sha256=f9GJXvzcdE3SGkKJ7q-YBTgRagZcIzeRa6nMVCCiEvI,7848
|
|
51
52
|
opencos/tests/test_deps_schema.py,sha256=T3P9KjaMyKsk8b7snNVvNSsom2hIJcg6Z9apYiXoH9Y,941
|
|
52
|
-
opencos/tests/test_eda.py,sha256=
|
|
53
|
+
opencos/tests/test_eda.py,sha256=cdxfLCUZq0nNelCQiplZXkeF4eyzmyJlZJFDSo77qeI,39464
|
|
53
54
|
opencos/tests/test_eda_elab.py,sha256=VyYiaLLyfJi26FkoN9p_Kb9cMHfY-0u_0Mx1iVpsg-I,2657
|
|
54
55
|
opencos/tests/test_eda_synth.py,sha256=LOM8CKpNyjka_sKS2c00YObOAQeVgpRmuM12Bn-PHqU,5234
|
|
55
56
|
opencos/tests/test_oc_cli.py,sha256=w-F-LjSSWVql3D2WG8tcV4_C52i-hL_2WT3oDpKQn9s,734
|
|
56
|
-
opencos/tests/test_tools.py,sha256
|
|
57
|
+
opencos/tests/test_tools.py,sha256=-WMpDZexAgko0FAcfiuASqSKNNL0Mr1ztag05808Upc,13735
|
|
57
58
|
opencos/tests/deps_files/command_order/DEPS.yml,sha256=vloOzWZ5qU3yGNFaDlrAJdEzYxK6qf8gfac3zqF-0FI,438
|
|
58
59
|
opencos/tests/deps_files/error_msgs/DEPS.yml,sha256=fYvHouIscOlr8V28bqx9SoxRBpDBLX4AG-AkVXh8qbo,717
|
|
59
60
|
opencos/tests/deps_files/iverilog_test/DEPS.yml,sha256=vDylEuLt642lhRSvOr3F5ziB5lhPSwkaUGN4_mWJw-c,40
|
|
@@ -62,33 +63,34 @@ opencos/tests/deps_files/non_sv_reqs/DEPS.yml,sha256=VZkahO1AKhD9GUV5lK8VwUONEi5
|
|
|
62
63
|
opencos/tests/deps_files/tags_with_tools/DEPS.yml,sha256=-5U1qfJElgpVhmkLEu3lYuvDYva8kDlt6JOdB9jidmc,1377
|
|
63
64
|
opencos/tests/deps_files/test_err_fatal/DEPS.yml,sha256=GnXIUJvshQWR9PlYxX67T53ejf5KhDbtD8sUJB4Rwd0,95
|
|
64
65
|
opencos/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
65
|
-
opencos/tools/cocotb.py,sha256=
|
|
66
|
+
opencos/tools/cocotb.py,sha256=vcp9wLlmgr6dLBnxEuJJyMjJIorIo96J0Z63tJwP-eE,16759
|
|
66
67
|
opencos/tools/invio.py,sha256=q9E9n6xsozDfar-1rLvJEZbCpPb_bQEy6WKEI3KS3dk,3163
|
|
67
68
|
opencos/tools/invio_helpers.py,sha256=1au4CYmV5aC7DHjaZBNemydH6Eq0i-Yt5L3HyKfQOfY,7638
|
|
68
69
|
opencos/tools/invio_yosys.py,sha256=asSjbdPjBXB76KxNZIhoDRn2DoXKsZEQ1YDX_WBzKiA,6019
|
|
69
|
-
opencos/tools/iverilog.py,sha256=
|
|
70
|
-
opencos/tools/modelsim_ase.py,sha256=
|
|
71
|
-
opencos/tools/
|
|
72
|
-
opencos/tools/
|
|
73
|
-
opencos/tools/
|
|
70
|
+
opencos/tools/iverilog.py,sha256=tnwhOT_WjnUKf4ioei-xmclM2xDTRnN0DrkxIKwsfnc,5926
|
|
71
|
+
opencos/tools/modelsim_ase.py,sha256=auBTdgBhbU2n92L0ezLUpppyE5z86Ci2-0hgDL_oNoc,14885
|
|
72
|
+
opencos/tools/quartus.py,sha256=Iu4zw34OCKlERMyJ9GRwaAuRDeBHG_ApvJATvyII-68,27516
|
|
73
|
+
opencos/tools/questa.py,sha256=5dr1LF7m5P1NmOPXU0hzMO0o0_RrXLDvc1gmhlwyEyU,9446
|
|
74
|
+
opencos/tools/questa_fse.py,sha256=lqhW49YpbzhkOGWG-0EjITj-RMyy8IgWYoaW9UtjxK8,2194
|
|
75
|
+
opencos/tools/riviera.py,sha256=D78anIJ_GnQ4aRwbWfR2QUslTgF38qiZod7v-EHLHg0,10716
|
|
74
76
|
opencos/tools/slang.py,sha256=mFw58vhnCTRR9yaQ2zHPlNB5HKSf3Y078XcaVnpLaAc,7798
|
|
75
77
|
opencos/tools/slang_yosys.py,sha256=3fyLRRdTXhSppNtUhhUl00oG-cT9TyyPTH6JvasS9ZE,9804
|
|
76
78
|
opencos/tools/surelog.py,sha256=dtj3ApAKoQasnGdg42n9DPgeqoJ5nCuurIkIO3G5ZCY,5011
|
|
77
79
|
opencos/tools/tabbycad_yosys.py,sha256=2LePPgYXBVdsy7YcffPIWN-I0B7queLQ_f_pme2SCGw,7803
|
|
78
|
-
opencos/tools/verilator.py,sha256=
|
|
79
|
-
opencos/tools/vivado.py,sha256=
|
|
80
|
+
opencos/tools/verilator.py,sha256=ACmRXJyE8ZGlu7gGHdgEyk8A5gQeMFSR1pBd8zw9eQc,20767
|
|
81
|
+
opencos/tools/vivado.py,sha256=TEMIYSVCdEASu2fixFuKIwDbb3r_25Ns-8YyUVEz-eg,40611
|
|
80
82
|
opencos/tools/yosys.py,sha256=UKWzvc2rSi3J9U2TROqRbmePdBmjskap664giumeRBk,26323
|
|
81
83
|
opencos/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
82
84
|
opencos/utils/markup_helpers.py,sha256=A8Ev5UJ4EVKjdcF2g85SQbjdPZR4jGpNqCLaBy_4v7Q,4569
|
|
83
|
-
opencos/utils/status_constants.py,sha256=
|
|
84
|
-
opencos/utils/str_helpers.py,sha256=
|
|
85
|
+
opencos/utils/status_constants.py,sha256=na6YsqlsCwIYzTXWE14dPadUYRNTrOS6YTXHCer2NbA,635
|
|
86
|
+
opencos/utils/str_helpers.py,sha256=1VUBL9Q09eBDpTvLarhaQoJOLoi3IKOaFy2FHvKevEU,6270
|
|
85
87
|
opencos/utils/subprocess_helpers.py,sha256=xemAGPey6M0sWY_FElvr-Z0phCfdjaC-znP8FKihPaE,3535
|
|
86
88
|
opencos/utils/vscode_helper.py,sha256=2YPjcDH_vTlwJvcITyMfvx8dLzPSRKzAvFRJz7BaJk8,1332
|
|
87
89
|
opencos/utils/vsim_helper.py,sha256=2voGRZI2iAQ2Pv2ZI5g2why6xpgig-To8im-LVXtuDU,1517
|
|
88
|
-
opencos_eda-0.2.
|
|
89
|
-
opencos_eda-0.2.
|
|
90
|
-
opencos_eda-0.2.
|
|
91
|
-
opencos_eda-0.2.
|
|
92
|
-
opencos_eda-0.2.
|
|
93
|
-
opencos_eda-0.2.
|
|
94
|
-
opencos_eda-0.2.
|
|
90
|
+
opencos_eda-0.2.54.dist-info/licenses/LICENSE,sha256=HyVuytGSiAUQ6ErWBHTqt1iSGHhLmlC8fO7jTCuR8dU,16725
|
|
91
|
+
opencos_eda-0.2.54.dist-info/licenses/LICENSE.spdx,sha256=8gn1610RMP6eFgT3Hm6q9VKXt0RvdTItL_oxMo72jII,189
|
|
92
|
+
opencos_eda-0.2.54.dist-info/METADATA,sha256=Gn37sKvN_THH6F5LkbyNTe0b1RSgTtQIYy9oCUyodyg,635
|
|
93
|
+
opencos_eda-0.2.54.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
94
|
+
opencos_eda-0.2.54.dist-info/entry_points.txt,sha256=6n1T5NwVYDhN5l1h5zmyT197G4pE0SySDreB0QJzJR0,218
|
|
95
|
+
opencos_eda-0.2.54.dist-info/top_level.txt,sha256=J4JDP-LpRyJqPNeh9bSjx6yrLz2Mk0h6un6YLmtqql4,8
|
|
96
|
+
opencos_eda-0.2.54.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|