-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
usvm-python #169
Merged
Merged
usvm-python #169
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4998232
to
0e829f9
Compare
050aa5d
to
553d719
Compare
fff3d0b
to
c695c9a
Compare
c7ed7f8
to
f270820
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
detekt found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.
f30709f
to
ef2ce3f
Compare
...ns/src/main/kotlin/org/usvm/annotations/codegeneration/SymbolicMemberDescriptorGeneration.kt
Fixed
Show fixed
Hide fixed
...ython-annotations/src/main/kotlin/org/usvm/annotations/codegeneration/GenerateDefinitions.kt
Fixed
Show fixed
Hide fixed
...-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/USVMPythonInterpreter.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/symbolicobjects/memory/Float.kt
Fixed
Show fixed
Hide fixed
...hon/usvm-python-main/src/main/kotlin/org/usvm/machine/symbolicobjects/PreallocatedObjects.kt
Fixed
Show fixed
Hide fixed
...-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/operations/basic/Long.kt
Fixed
Show fixed
Hide fixed
...-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/USVMPythonInterpreter.kt
Fixed
Show fixed
Hide fixed
usvm-python/src/test/kotlin/org/usvm/runner/manual/program/LocalProgramProvider.kt
Fixed
Show fixed
Hide fixed
...python-main/src/main/kotlin/org/usvm/machine/ps/strategies/impls/DelayedForkByInstruction.kt
Fixed
Show fixed
Hide fixed
...python-main/src/main/kotlin/org/usvm/machine/ps/strategies/impls/DelayedForkByInstruction.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyExecutionException.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyExecutionException.kt
Fixed
Show fixed
Hide fixed
sergeypospelov
requested changes
Jul 1, 2024
usvm-python/usvm-python-runner/src/main/kotlin/org/usvm/runner/DebugRunner.kt
Show resolved
Hide resolved
usvm-python/usvm-python-runner/src/main/kotlin/org/usvm/runner/DistributionLayout.kt
Show resolved
Hide resolved
usvm-python/usvm-python-runner/src/test/kotlin/org/usvm/runner/ManualTest.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-runner/src/test/kotlin/org/usvm/runner/ManualTest.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-runner/src/main/kotlin/org/usvm/runner/venv/VenvUtils.kt
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/runner/NewStateObserverForRunner.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/model/PyModel.kt
Outdated
Show resolved
Hide resolved
...ain/kotlin/org/usvm/machine/interpreters/symbolic/operations/tracing/SymbolicHandlerEvent.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyState.kt
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyState.kt
Show resolved
Hide resolved
2693f55
to
7909461
Compare
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/model/PyModel.kt
Fixed
Show fixed
Hide fixed
usvm-python/src/test/kotlin/org/usvm/runner/manual/program/SampleProgram.kt
Fixed
Show fixed
Hide fixed
usvm-python/src/test/kotlin/org/usvm/runner/manual/program/SampleProgram.kt
Fixed
Show fixed
Hide fixed
sergeypospelov
requested changes
Jul 5, 2024
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyState.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyState.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/language/Callables.kt
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/language/Callables.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/language/Program.kt
Outdated
Show resolved
Hide resolved
usvm-python/src/main/kotlin/org/usvm/runner/UtBotPythonRunnerEntryPoint.kt
Show resolved
Hide resolved
usvm-python/usvm-python-commons/src/main/kotlin/org/usvm/python/ps/PyPathSelectorType.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-runner/src/test/kotlin/org/usvm/runner/ManualTest.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-annotations/src/main/kotlin/org/usvm/annotations/DataClasses.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-annotations/src/main/kotlin/org/usvm/annotations/DataClasses.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/ConcolicRunContext.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/ConcolicRunContext.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/ConcolicRunContext.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/ConcolicRunContext.kt
Fixed
Show fixed
Hide fixed
...ain/kotlin/org/usvm/machine/interpreters/symbolic/operations/descriptors/MemberDescriptor.kt
Fixed
Show fixed
Hide fixed
...n-main/src/main/kotlin/org/usvm/machine/interpreters/concrete/utils/NamedSymbolForCPython.kt
Fixed
Show fixed
Hide fixed
...hon-main/src/main/kotlin/org/usvm/machine/interpreters/concrete/utils/VirtualPythonObject.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyMachine.kt
Fixed
Show fixed
Hide fixed
...m-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/operations/basic/Int.kt
Fixed
Show fixed
Hide fixed
...m-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/operations/basic/Int.kt
Fixed
Show fixed
Hide fixed
...m-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/operations/basic/Int.kt
Fixed
Show fixed
Hide fixed
...m-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/operations/basic/Int.kt
Fixed
Show fixed
Hide fixed
sergeypospelov
requested changes
Jul 8, 2024
...m-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/operations/basic/Int.kt
Fixed
Show fixed
Hide fixed
...m-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/operations/basic/Int.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyState.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/Mocking.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyState.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/Mocking.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyComponents.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/model/Utils.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/model/PythonMockEvaluator.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/model/PythonMockEvaluator.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/model/PythonMockEvaluator.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/model/PythonMockEvaluator.kt
Fixed
Show fixed
Hide fixed
…PyMachine.kt Co-authored-by: Sergey Pospelov <[email protected]>
afafc0d
to
ba507b1
Compare
zishkaz
pushed a commit
that referenced
this pull request
Jul 17, 2024
* fix on linux * tp_getattro * slice fields * list_subscript on slices * allowed path diversion in test for slices * Fixed state termination * Added depth limit in SymbolTypeTree * fix in virtualPathSelector * Fix after rebase * More tuple operations * Fixes after rebase * Started working on floats * Float operations * Global clones; float to int * Accurate float operations * Fixed bug in ElementConstraints * Fixed issues with GlobalHeapRef * small fix * New structure for global refs * Fix for linux * Added nb_true_div for ints * Fixed memory leak from PathTrieNode * new params in VirtualPathSelector; soft constraints on floats * modified state labels * Fixes after rebase * Added unregistered virtual operations to statistics * added list_pop * some new list methods * Create structure.md * Started switching to annotation processing * Implemented CPythonFunctionProcessor * got rid of jsons in cpythonadapter * added annotations for descriptors * fixes for linux * Implemented SymbolicMethodProcessor * Switched to new SymbolicMethods * Removed some redundant code * updated docs, gradle tasks, cpython patch * Update structure.md * Update API.md * Update API.md * update of cpython (added docs) * added list.extend method * implemented list.clear() * New approximations * Fixed some bugs; some new tests * Added list.reverse(); refactored some old approximations * Added usvm-python runner * Fixes after rebase * Fixed some warnings * work on usvm-python package * Fixes after rebase; work on gradle scripts * fixes in configurations * Added environment to build task in actions * Added permissions * Added MavenPublication * Added debug runner * Fixed blocking accept() * Started working on fields * Supported calls of python methods * preparations for further objects support * Fixed some crashes * Fixed one crash * Added venv; updated usvm-python-runner * Fix in getTypeFromTypeHint * Several fixes; core update * fixed compilation on linux * Fix in build script * fix in usvm-python-runner * supported constructor calls * Supported load of default parameters * some tests * Fix in standard tp_getattro/tp_setattro logic * Added WrappedSetRegion * Added virtual tp_call * Several fixes * Reduced waiting time in loop * Trying to catch segfault * Started working on dicts * usvm-python-runner: wrapped interruped in while loop * small fix * new attempt * fix * preparations for dict * Added heuristic that adds default fields to an object * Added filtration * Fixed segfault * Supported propertied * Fixes after rebase * Added restriction for index type * Fixed silly bug * Added approximation for contains_op * Changed processing of UnregisteredVirtualOperation * Added nb_positive and nb_negative * Started implementing dicts * Further work on dicts: int keys * Added some samples * Added dict_set_item * fixed create_dict_const_key * Fixed one case of underapproximation * Fixed a case of path diversion * More work on underapproximations * Fixed message in DebugRunner * Fixed parsing of venv info * Removed warning about loggin * Changed logic of standard tp_getattro * Added support for generators * Working on sending inputs from new states * Added substitution of virtual objects to None * onNewState for initial state * Fixed dict type conversion * Added dict.isEmpty and dict contains_op * Added approximation scheme for constructors; started working on sets * Changed logic of virtual objects as keys in dicts * Further work on sets * Fixed segfault with PyTuple_Pack * One more check * set.add; fork on dict_iter; fixed constructor call * Fixed compilation error on linux * Supported enumerate * Added repetition check in NewStateObserverForRunner * Added several approximations * Supported build_set * Added str_eq and str_neq * Some tests * Fixes after rebase * Structure refactoring * Refactoring: removed ConverterToPythonObject + started changing API for saving results * Finished working on new saving interface * Small fixes in python_approximations * Added constraints from native calls * Refactored PyVirtualPathSelector * Added default value for arrays * Moved makeTypeRating function * Added innerType * Added BaselineWeightedByNumberOfVirtual path selector * Fixed visitor for recursive objects * Made Python modules optional * Update README.md * Added PyPathSelectorType.DelayedForkByInstructionDfs * Fix in BaselineStrategy * small fix * Added TypeRatingByNumberOfHints * Changed ResultReceiver in runner * Removed commented out code * small fix in model visitor * Changed usvm-python module logic * Work on test task dependencies * More work on dependencies * Fix in ArrayCastExample + experiment with CI * Added optional dependencies installation + fix in usvm-jvm test * Added apt update * Removed some optional packages * next attempt * more work on dependencies * updated readme * fix after rebase * Added RandomizedPriorityActionStrategy * Fixed python soft constraints * Added DelayedForkByInstructionWeightedRandomTree * Fixed exception catching * Updated usvm-python/buildDistWithoutPip.sh * Added pathSelector parameter to usvm-python-runner * Fixed module dependency * Added publication of usvm-python-commons * Fixed publish task * Added WeightedByNumberOfVirtualPathSelector; changed baseline probabilities * Changed parameter in WeightedByNumberOfVirtualPathSelector * Fixed WeightedByNumberOfVirtualPathSelector * Added path selectors weighted by number of instructions * Added parameter proportionalToSelectorSize in WeightedPyPathSelector * Added PyMockTypeStream * Fixed compilation error * Fixed usage of RandomTreePathSelector * fix: auto-formatting * fix: try to fix gradle error * added new path selector type * fmt * Formatting * More formatting * exclude rule with false-positive * Started refactoring build scripts * Fixed property access * fixed typo * More refactoring * Increased Gradle max JVM heap size * more build refactoring * Started refactoring manualTest * Update README.md * More refactoring * More refactoring * refactoring + enhancement of SymbolTypeTree * More formatting * fmt * reverted some changes in usvm-core * PyPathConstraints * fix: MacOS build support * revert USoftConstraintsProvider * fix: remove property * LocalProgramProvider * Finished refactoring manualTestKt * fmt * changed println to logger in tests * more formatting * fmt * fmt * fmt * fmt * chore: flaky test disabled * Refactored exception structure * Removed handlerPOWLong * refactoring in usvm-python-annotations * removed nbBoolKt * Update usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/model/PyModel.kt Co-authored-by: Sergey Pospelov <[email protected]> * Added description for Gradle modules * Fixed unused import * Fixed api in ManualTest * Update usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyState.kt Co-authored-by: Sergey Pospelov <[email protected]> * refactored jni header generation + pr fixes * Update usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/interpreters/symbolic/USVMPythonInterpreter.kt Co-authored-by: Sergey Pospelov <[email protected]> * CE fix * Converted several classes from Java to Kotlin * removed some redundant code * Update usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/interpreters/concrete/ConcretePythonInterpreter.kt Co-authored-by: Sergey Pospelov <[email protected]> * Update usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/PyMachine.kt Co-authored-by: Sergey Pospelov <[email protected]> * detekt fixes * pr fixes * several renamings * fixes in usvm-python-runner * Docs for withTracing * spacing in PyMachine * detekt fix * Simplified PyState * several simple fixes * more simple pr fixes * description for handlerIsinstanceKt + minor * fix * more simple pr fixes * pr fixes * trickier pr fixes * detekt fixes * Separate action for python package * removed duplicated lines * removed redundant step * pr comments * detekt fix * Updated Python link in README * switch from self-hosted to ubuntu-20.04 runners * lead pipeline to common look * switch another pipelines to github hosted runners --------- Co-authored-by: Tochilina Ekaterina <[email protected]> Co-authored-by: Sergey Pospelov <[email protected]> Co-authored-by: Egor Vasilyev <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.