aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authorbloodstalker <thabogre@gmail.com>2017-01-23 12:35:22 +0000
committerbloodstalker <thabogre@gmail.com>2017-01-23 12:35:22 +0000
commitf0c74f2202a27c3cb818571794d12b411bef5644 (patch)
tree154fc73f747de0b59c8256c627115e2c2a16badb /README.md
parentdeleted a comment line (diff)
downloadmutator-f0c74f2202a27c3cb818571794d12b411bef5644.tar.gz
mutator-f0c74f2202a27c3cb818571794d12b411bef5644.zip
added notes regarding the dev plan, mutator-lvl0 release candidate and testing, started implementing the automatic refactoring features
Diffstat (limited to 'README.md')
-rw-r--r--README.md17
1 files changed, 9 insertions, 8 deletions
diff --git a/README.md b/README.md
index 078f9c4..5ed2718 100644
--- a/README.md
+++ b/README.md
@@ -52,28 +52,29 @@ Mutation levels have nothing to do with the order of mutants.<br/>
<br/>
### Dev Status
-All the as-of-yet implemented features of the project are very much buildable and usable at all times, even during the dev phase.<br/>
-* **`mutator-lvl0`** is the executable responsible for the Misra-C rule checks. Currently it can check for 139 out of the 141 Misra-C:2004 rules. For a more accurate list please check out `misrac.ods` under `docs` in project's root.<br/>
-* **`mutator`** and **`mutator-lvl2`** are collectively the code muatation and code transformation executables. Currently the automatic code transformation implemented is only limited to adding braces to blocks that are missing it and adding `else` if an if-else if is missing one. The mutation is only limited to statement and condition tagging for the time-being.<br/>
+All the as-of-yet implemented features of the project are very much buildable and usable at all times, even during the dev phase on the master branch. If something's not working properly let me know.<br/>
+* **`mutator-lvl0`** is the executable responsible for the Misra-C rule checks. Currently it has reached a release candidate, soon to be branched and have unit tests written for it.<br/>
+* **`mutator`** and **`mutator-lvl2`** are collectively the code muatation and code transformation(automatic-refactoring) executables. Currently the automatic code transformations implemented are only limited to adding braces to blocks that are missing it, fixing SwitchStmts with adding a default clause if missing and breaks, swapping the RHS and LHS when the RHS is a constant and adding `else` if an if-else is missing one. The mutation is only limited to statement and condition tagging for the time-being.<br/>
### Dev Plans
-* Finish the Misra-C:2004 implementation.
-* Start the unit tests for `mutator-lvl0`.
-* start implementing `mutator` and `mutator-lvl2`.
+* Branch a release candidate for `mutator-lvl0`, then start writing the unit tests. This might take a while, since I will try to find testers and code reviewers. If you are willing to help with testing, Email me at `thabogre@gmail.com`. Please set the subject to `mutator-lvl0 test` so I wouldnt miss it. I'll do the unit tests and reviews myself if I dont manage to find volunteers for that. while it's far from ideal, it's better than nothing.
+* Implementing the automatic refactoring features of mutator.
+* Upgrading the UI to be able to handle the new automatic-refactoring features.
### Test Plans
* The Dev method is TDD so of course, we currently have TDD tests.
* For static analysis tools, mutator uses [Coverity](https://scan.coverity.com/projects/bloodstalker-mutator) which is integrated with [Travic CI](https://travis-ci.org/bloodstalker/mutator) so it runs everytime on every commit.<br/>
* For dynamic analysis tools, currently mutator is using [Valgrind](http://valgrind.org). You can run it using `./mutator.sh -test mutator-lvl0 valgrind`. You do need to have `valgrind` installed.<br/>
+* Looking at Google's `OSS Fuzzy`, though I'm not entirely sure if we can use that.<br/>
* The code will be reviewed after the first pre-release version. I'm hoping to find some reviewers but if not, I'll have to do it myself.<br/>
* There will be unit tests after a first pre-release version.<br/>
##Announcements
-####* As Soon as the 2 remaining rules(2.1 and 2.3) are dealt with, mutator-lvl0 will have a release candidate, which is going to be forked and will start its testing phase.<br/>
+####* `mutator-lvl0` has reached a release candidate. I will branch a release candidate for it and then we can start the unit tests.<br/>
+* The Implementation of the automatic refactoring facilities of `mutator` has begun. The UI is not yet capable of accomodating the current features so I'll try to add them as soon as possible.<br/>
* LLVM has bumped to 5.0 so mutator has also changed to using that(trunk:292415). Everything is in working order.<br/>
* The Travis build is now using 4.0 for build checks. LLVM 3.9 is still supported minus rule check 8.8 which uses a non-existant matcher in 3.9.<br/>
* There are no plans in regards to keeping or dropping LLVM 3.9 support but do keep in mind the libraries mutator uses are not guaranteed to keep backwards-compatibility by their developers as they are still under development.<br/>
-* The 2 newly introduced defects are inside the new header mutator is using, `<regex>`.<br/>
* There are only 4 actual defects on mutator's Coverity scan that belong to mutator's source code and not the library. 4 are potential defects which are not really defects.<br/>
##Building and Running