Releases: zimmski/tavor
Releases · zimmski/tavor
v0.6
Tavor v0.6 changelog
- Add a simple keyword-driven executor to make model-based testing usage clearer
- Add support for negative values in integer ranges
- Add support for negative values in the positive boundary filter
- Add token attribute "Reference" to variable tokens
- Add token attribute "Item" to list tokens
- Allow list tokens for the "no in" operator
- Add "path" operator as first experimental graph operator
- Allow tokens in expressions
- Allow token attributes in expressions
- Allow variable forward usage
- Accepting states in the DOT format are now double ellipses
- Make the whole Tavor installation easier
- Write temporary files for fuzzing with the "argument" exec type
- Double escape escaped characters for the DOT format
- Fix missing --list-exec-argument-types argument for the "fuzz" command
- Fix typed token were not correctly used in early-usage list and variable scopes
- Fix do not remove temporary files if there is an result folder
- Fix wrong range for data-left error message in the internal parser
- Fix endless loop in "Sequence.existing"
- Fix internal/external mix-up in LoopExists
- Fix "graph" command did not handle scopes
- Fix the "random" fuzzing strategy should check for a nil random generator
- Fix if multiple fuzzing filters can be applied only the first one is applied
- Fix variables should be usable as normal tokens
- Make it clear that the Tavor format is not final
- Typed tokens can now be defined outside the Tavor parser
- Introduce the term "expression list"
- Add new token interfaces "Follow", InternalReplace", "Resolve" and "Scoping"
- Do not make Go-generate mandatory
- Permutations are now 0-based in Tavor
- Refine all strategy and filter interfaces so that they can be directly applied to a token
v0.5
Tavor v0.5 changelog
- Complete documentation
- Require Go 1.4
- Do not allow empty strings
- Remove
Least
,Many
andMost
token - Remove
Fuzz
andFuzzAll
- Rename
special token
totyped token
- Rename the reduce strategy
BinarySearch
toLinear
- Replace
RandomInt
withRangeInt
- Fix reducing by making it work in general
- Fix another unrolling bug by regenerating the whole structure
- Fix resets of sequences and scopes
- Fix combinations of
Repeat
- Workaround for zero repeat parsing
- Fix
UniqueItem
permutation which fixes some resets - Fix release of
Unique
- Fix EOF in character classes
v0.4
Tavor v0.4 changelog
- (Almost) complete documentation
- Passing gofmt, golint, go vet and errcheck is now required by all code
- 32bit on Linux is now supported
- Added ranges, hex and some other escapes for character classes
- Added permutations groups to the Tavor format
- Allow infinite loops in the Tavor format
- Allow "if" in Tavor format to have no "else" branch
- Added token attribute "Count" to variables
- Make "to" and "from" optional for special token "Int"
- Switched default exec-argument-types to STDIN
- Fixed goroutine leak in repeat reduction
- Converted a lot of the API from int to uint
- Setup TravisCI and Coveralls
- Only write temporary files if they are needed
- Fixed some permutation cornercases
- Fixed corner case of unrolling
- Replaced test.Rand with rand.IncrementRand
- Make minimizing phase independent
- Cleanup the tavor package
- Even more small things and of course even more tests
v0.3
Tavor v0.3 changelog
- Added Reduction of repeats
- Forward usage of attributes
- Arguments to automate delta debugging by executing external binaries
- Arguments to automate fuzzing by executing external binaries
- Added "Variables" with scopes
- Added conditions "if", "if else" and "else"
- Added operator "defined"
- Added operator "not in"
- Added "character class"
- Added "Index" and "Unique" attributes
- Added fuzzing filter for Negative boundary value analysis
- Redone pointer unrolling (fixed a lot of cases)
- Argument to define maximum repeats
- Argument to print AST
- Argument to not remove tmp files on error
- Added IncrementRand and use it everywhere instead of ConstantRand this leads to more divers results
- First draft to fix the mess that is the fuzzing of ExistingSequenceItems
- Lots of old outstanding test cases and many many new ones
v0.2
Tavor v0.2 changelog
- refactored binary to have commands
- able to read in files validated through a format file (fuzzing output -> read back into tavor is now possible!)
- basic delta debugging (reduction)
- fuzzing filters
- graphing of internal representation
- bash completion support
- logger
- fixed special tokens
- more verbose and debugging logs
- additional API for tokens (like InternalGet and InternalLen)
- Go 1.3 is required
- even more tests
v0.1
Tavor v0.1 provides
- a working framework to create fuzzers and additional fuzzer heuristics
- import Tavor format files into the internal token structure
- fuzzer heuristics
- Random - fuzz once at random
- AllPermutations - generate all possibilities for the given format
- PermuteOptionals - generate all possibilities for optional tokens (enable/disable them)
- a working binary to validate and fuzz Tavor format files
- automated tests for all major functionality