sflkit 0.5.2__tar.gz → 0.5.3__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.
- {sflkit-0.5.2/src/sflkit.egg-info → sflkit-0.5.3}/PKG-INFO +1 -1
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/__init__.py +1 -1
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/analysis/factory.py +17 -18
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/features/vector.py +1 -1
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/model/parallel.py +6 -4
- {sflkit-0.5.2 → sflkit-0.5.3/src/sflkit.egg-info}/PKG-INFO +1 -1
- {sflkit-0.5.2 → sflkit-0.5.3}/LICENSE +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/README.md +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/pyproject.toml +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/setup.cfg +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/analysis/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/analysis/analysis_type.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/analysis/analyzer.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/analysis/mapping.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/analysis/predicate.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/analysis/similarity.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/analysis/spectra.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/analysis/suggestion.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/cli.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/color.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/config.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/evaluation.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/events/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/events/event_file.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/events/mapping.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/features/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/features/handler.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/features/value.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/instrumentation/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/instrumentation/dir_instrumentation.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/instrumentation/file_instrumentation.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/extract.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/finder.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/java/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/java/extract.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/java/factory.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/java/finder.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/java/visitor.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/language.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/meta.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/python/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/python/extract.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/python/factory.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/python/finder.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/python/visitor.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/language/visitor.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/logger.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/model/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/model/model.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/model/scope.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/runners/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/runners/run.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/weights/__init__.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/weights/analyzer.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit/weights/models.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit.egg-info/SOURCES.txt +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit.egg-info/dependency_links.txt +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit.egg-info/entry_points.txt +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit.egg-info/requires.txt +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/src/sflkit.egg-info/top_level.txt +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_analysis_objects.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_analyzer.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_cli.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_color.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_config.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_coverage.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_dependency_weights.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_evaluation.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_events.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_execution.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_features.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_instrumentation.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_language.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_parallelization.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_predicates.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_runner.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_runner_parallel.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_runner_pytest_versions.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_scope.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_spectra.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_suggestions.py +0 -0
- {sflkit-0.5.2 → sflkit-0.5.3}/tests/test_visitors.py +0 -0
|
@@ -267,24 +267,23 @@ class ScalarPairFactory(ComparisonFactory):
|
|
|
267
267
|
for types in (["int", "float", "bool"], ["str"], ["bytes"]):
|
|
268
268
|
if event.type_ in types:
|
|
269
269
|
for variable in variables:
|
|
270
|
-
if variable.
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
objects.append(self.objects[key])
|
|
270
|
+
if variable.type_ in types:
|
|
271
|
+
for comp in self.comparators:
|
|
272
|
+
key = (
|
|
273
|
+
ScalarPair.analysis_type(),
|
|
274
|
+
event.file,
|
|
275
|
+
event.line,
|
|
276
|
+
event.var,
|
|
277
|
+
variable.var,
|
|
278
|
+
comp,
|
|
279
|
+
types[0],
|
|
280
|
+
)
|
|
281
|
+
with self._lock:
|
|
282
|
+
if key not in self.objects:
|
|
283
|
+
self.objects[key] = ScalarPair(
|
|
284
|
+
event, comp, variable.var
|
|
285
|
+
)
|
|
286
|
+
objects.append(self.objects[key])
|
|
288
287
|
else:
|
|
289
288
|
for variable in variables:
|
|
290
289
|
if variable.type_ == event.type_:
|
|
@@ -42,7 +42,7 @@ class ParallelModel(Model):
|
|
|
42
42
|
self.returns[event_file].add(
|
|
43
43
|
event.function, event.return_value, event.type_
|
|
44
44
|
)
|
|
45
|
-
self.handle_event(event, event_file, self.returns)
|
|
45
|
+
self.handle_event(event, event_file, self.returns[event_file])
|
|
46
46
|
else:
|
|
47
47
|
self.returns_map[event_file].setdefault(event.thread_id, Scope()).add(
|
|
48
48
|
event.function, event.return_value, event.type_
|
|
@@ -67,10 +67,10 @@ class ParallelModel(Model):
|
|
|
67
67
|
def handle_def_event(self, event: DefEvent, event_file: EventFile):
|
|
68
68
|
if event.thread_id is None:
|
|
69
69
|
self.variables[event_file].add(event.var, event.value, event.type_)
|
|
70
|
-
self.handle_event(event, event_file, self.variables)
|
|
70
|
+
self.handle_event(event, event_file, self.variables[event_file])
|
|
71
71
|
else:
|
|
72
72
|
self.variables_map[event_file].setdefault(
|
|
73
|
-
event.thread_id, self.variables
|
|
73
|
+
event.thread_id, self.variables[event_file]
|
|
74
74
|
).add(event.var, event.value, event.type_)
|
|
75
75
|
self.handle_event(
|
|
76
76
|
event, event_file, self.variables_map[event_file][event.thread_id]
|
|
@@ -83,7 +83,9 @@ class ParallelModel(Model):
|
|
|
83
83
|
self.handle_event(
|
|
84
84
|
event,
|
|
85
85
|
event_file,
|
|
86
|
-
self.variables_map[event_file].get(
|
|
86
|
+
self.variables_map[event_file].get(
|
|
87
|
+
event.thread_id, self.variables[event_file]
|
|
88
|
+
),
|
|
87
89
|
)
|
|
88
90
|
|
|
89
91
|
def enter_parallel_scope(self, thread_id: int, event_file: EventFile):
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|