Skip to content
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

feat: merge milestone 4 #83

Merged
merged 20 commits into from
Dec 23, 2024
Merged

feat: merge milestone 4 #83

merged 20 commits into from
Dec 23, 2024

Conversation

Rqnsom
Copy link
Member

@Rqnsom Rqnsom commented Nov 27, 2024

What is included here:

Make sure `--use-generated-mutants` cannot be used with `--coverage`,
`--downsampling-ratio-percentage`, `--mutate-functions` and `--mutate-modules`.

Add a `--downsampling-ratio-percentage` option to both `move-spec-test`
and `move-mutation-test` tools.
If we have a single mutant, fetching rayon thread won't work, since
rayon won't even be used in such a case.
Do not try to fetch the rayon thread when there is a single mutant
present.
- use `fs_extra` instead of handmade `CopyAllDir` function
- run original package on the max number of threads, while use a
  single-thread test execution for all mutants within all rayon threads
  (this increases the overall execution time)
- add additional benchmark for `executing_original_package`
- change formula for calculating average mutant execution time
- move manifest rewriting to `mutator-common` crate so that
  `move-mutotor` can use `mutator-common` without causing circular
  dependency
- ensure move-mutator doesn't use the original package path
Allow users to display the mutation testing summary from the report.
Short CLI args are not used in aptos-core, so our tooling should align.
Also: use the `package-dir` (which is more common in `aptos-core`) instead
of the `package-path` option.
There are two fixes here:
- fix for parallel mutant generation (using indexed file can cause file
  name collisions, so we are using hash of the mutant in the mutant file
  name instead)
- disabling process's ability to generate coverage report as by doing
  that we configure TRACING_ENABLED flag deep within MoveVM which is a
  statically configured flag that cannot be reset anymore. From now on,
  we will ask users to generate `aptos move test --coverage`
Mutator file configuration is a deprecated feature since it's never
been used nor there is a need for it to be used since the tool is too
slow to be used on the whole project.
We recently merged a PR in aptos-core to improve their `merge_span`
function, and now we can use their implememntation:
aptos-labs/aptos-core#15120
- How-to-use doc should be used as a quick introduction document to Move
  developers.
@Rqnsom Rqnsom changed the title Develop m4 feat: merge milestone 4 Nov 27, 2024
@Rqnsom Rqnsom requested a review from vineethk December 5, 2024 07:02
- clean the main readme and move the showcase tutorial inside
- add installation instructions to child readmes
@Rqnsom Rqnsom requested a review from vineethk December 19, 2024 16:52
The update is required after the simple project has been recently
updated (removed spec blocks from the Sum module).
@Rqnsom Rqnsom merged commit 90c840e into main Dec 23, 2024
2 checks passed
@Rqnsom Rqnsom deleted the develop-m4 branch December 23, 2024 12:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants