New Features:
- #775 Add
cache
option toeslint-plugin-redos
(@makenowjust) - #799 Introduce
synckit
for speed-upcheckSync
(@makenowjust) - #1179 Add
recheck-macos-arm64
(@makenowjust)
Fixes:
- #777 Fix up cache implementation (@makenowjust)
- #800 Set
'conservative'
as defaultcache.strategy
(@makenowjust) - #805 Fix to decode
Duration
forString
(@makenowjust) - #872 Fix to work
RECHECK_SYNC_BACKEND
correctly (@makenowjust) - #1175 Update supported Node.js version (@makenowjust)
Misc:
- #776 Fix heading in blog articles (@makenowjust)
- #781 Fix OS version of scala-steward CI for
GLIBC
version problem (@makenowjust) - #780 Update dependency org.scalameta:scalafmt-core_2.13 to v3.7.2 (@renovate[bot])
- #873 Fix React version to v17 (@makenowjust)
- #874 Drop Node
v14
support, and add Nodev20
support (@makenowjust) - #1140 Update dependency synckit to v0.9.0 (@renovate[bot])
- #1084 Update docusaurus monorepo to v3 (major) (@renovate[bot])
- #1177 Update JVM to use on CI (@makenowjust)
- #1181 Enable Google Analytics for website (@makenowjust)
- #1184 Add
recheck-macos-arm64
torecheck
'soptionalDeps
(@makenowjust) - #1185 Add a test for
RECHECK_SYNC_BACKEND
env (@makenowjust) - #1195 Add
timeout-minutes
to workflow (@makenowjust)
Fixes:
- #768 Show
stderr
output of agent processes (@makenowjust)
Misc:
- #767 Fix links in doc comments (@makenowjust)
Fixes:
- #760 Pin the version of the CI environments for preventing GLIBC version warning (@makenowjust)
- #764 Remove deprecated
System.runFinalizer
call (@makenowjust)
Misc:
- #761 Use
$GITHUB_OUTPUT
instead ofset-output
(@makenowjust) - #753 Update circe-core, circe-generic, ... to 0.14.4 (@makenowjust)
- #762 Rename artifact files before release (@makenowjust)
- #765 Remove useless
@nowarn
annotation (@makenowjust)
Fixes:
- #720 Correctly fix
esbuild
config for Node v14 (@makenowjust)
Misc:
- #700 Update workflow for using coursier/setup-action (@makenowjust)
- #705 Update GraalVM version (@makenowjust)
- #711 Update copyright year 2022 -> 2023 (@makenowjust)
New Features:
- #698 Add
recommended
config to the ESLint plugin (@makenowjust)
Misc:
- #501 Convert duration params to integer explicitly on playground (@makenowjust)
- #609 Update Node.js to v18 (@makenowjust)
- #699 Use
action-gh-release
(@makenowjust)
Fixes:
- #491 Fix
Duration
andParameter
decoder for missing keys andnull
(@makenowjust)
Changes:
- #357 Add
Default
prefix to default parameter values (@makenowjust) - #358 Sort
Parameters
names in lexicographic order (@makenowjust) - #448 Allow all parameters to ESLint plugin options (@makenowjust)
Fixes:
- #341 Fix zero-width assertion in
automaton
checker (@makenowjust) - #380 Correct to increase steps on back-reference (@makenowjust)
- #411 Update Scala.js to 1.10.0 (@makenowjust)
Misc:
- #337 Increase timeout on
main.ts
test (@makenowjust) - #343 Enable Algolia DocSearch (@makenowjust)
- #360 Enable log on playground (@makenowjust)
- #369 Fix Windows build (@makenowjust)
- #368 Fix log scroll (@makenowjust)
- #374 Format
package.json
by using https://devina.io/package-json-formatter (@makenowjust) - #379 Fix
coreJVM/initialCommands
to run (@makenowjust)
New Features:
- #289 Add
worker
backend to the NPM package (@makenowjust)
Changes:
- #283 Rename
hybrid
toauto
(@makenowjust) - #332 Rename
labo
tolabs
(@makenowjust)
Fixes:
- #284 Add missing field
AttackPattern#pattern
in TypeScript definition (@makenowjust)
Misc:
- #279 Update
CHANGELOG.md
automatically by GitHub Actions (@makenowjust) - #280 Handle SBT deps by renovate correctly (@makenowjust)
- #281 Update scala-library, scala-reflect to 2.13.8 (@makenowjust)
- #282 Add note section to ESLint plugin document (@makenowjust)
- #286 Update
CHANGELOG.md
format (@makenowjust) - #295 Renew document website powered by Docusaurus (@makenowjust)
- #313 Remove
mdoc
to build the document (@makenowjust) - #314 Don't ignore to build website on CI test (@makenowjust)
- #318 Fix logo style (@makenowjust)
- #320 Improve documentation (@makenowjust)
Fixes:
- Fix
handleLine
inAgent
for large data (#266) - Prefer to use
native
backend onRECHECK_BACKEND=auto
(#268)
Fixes:
- Don't bundle recheck in eslint-plugin-redos (#260)
- Use
require
directly instead ofmodule.require
(#261)
Changes:
- Split
common
package into another modulerecheck-common
(#202) - Increase default parameter values (#202)
- Restrict repeats contained in gene (#202)
- Add
Parameters
as immutable version ofConfig
(#202) - Add
accelerationMode
parameter to specify acceleration mode behavior (#211) - Rename default parameter constant names (#211)
- Add the new default seeder named
StaticSeeder
(#227) - Decrease some parameters default values (#227)
- Improve repetition count estimation (#227)
- Use JavaScript style representation for
AttackPattern#toString
(#229) - Apply look-ahead optimization to VM (#233)
- Add recall validation (#234)
- Simplify automaton without input terminator distinction (#240)
- Add
recheck-jar
package (#248) - Improve
StaticSeeding.simplify
against look-around near by repeat (#255)
Fixes:
- Fix semaphore usage in test (#230)
- Fix
sbt
file issues (#231) - Check integer overflow on matching steps (#232)
- Fix loop detection in
StaticSeeder
(#235) - Returns iterator in
FuzzChecker
(#236) - Rewrite
recheck
package implementation (#248) - Add
recheck
package test (#248) - Optimize alphabet construction (#258)
Fixes:
Changes:
Fixes:
- Set default value to check config (#143)
- Rewrite
recheck
package in TypeScript (#149) - Call
subprocess.ref()
/unref()
correctly (#181)
A test release. (Second)
A test release.
Changes:
- Move unicode related types into new
recheck-unicode
module (#77) - Move
RegExp
parser into newrecheck-parse
module (#78) - Move JS binding into new
recheck-js
module (#79) - Add
recheck
CLI (#83) - Build
recheck
CLI by using Graalnative-image
- Move circe codes into
recheck-codec
module (#91) - Rename
recheck
module torecheck-core
(#92) - Add
ErrorKind.Cancel
for canceled execution (#93) - Rename
EpsNFABuilder.compile
to.build
(#94) - Improve AST node structure (#138)
- Rename
batch
subcommand toagent
(#139) - Add
recheck-${os}-${cpu}
packages to distribute binaries (#141) - Rename
@makenowjust-labs/recheck
package torecheck
(#141)
Fixes:
- Update
sourcecode
to 0.2.7 (#72) - Update Scala version to 2.13.6
- Run
recheck batch
requests in asynchronous (#89) - Update Scala version tp 2.13.7
Changes:
- Remove
isLineTerminator
andisWord
flags fromIChar
- Simplify
UString
implementation asString
wrapper - Send coverage to Codecov
- Rename
EpsNFACompiler
toEpsNFABuilder
Fixes:
- Fix nested look-around assertion behavior correctly
- Improve code coverage
- Refactor
EpsNFABuilder
by using a class.
Changes:
- Add a new VM implementation for fuzzing 🎉
- acceleration mode & opt-in analysis
Changes:
- Add
loc
to RegExp AST nodes - Add
hotspot
information toDiagnostics
Fixes:
- Update the website
- Add ES module build to JS package
Fixes:
- Upload JavaScript file correctly
Changes:
- Use consuming steps instead of VM execution steps in fuzzing
- Add cancellable
Context
- Refactor
Diagnostics
- Rename the project name
redos
torecheck
Changes:
- Drop
max
fromFString.Repeat
- Rename the module name
redos-core
toredos
- Update Scala to 2.13.4
- Rename
MultiNFA
toNFAwLA
Fixes:
- Fix ε-loop elimination
Fixes:
- Insert timeout checks more and more
- Improve some tests
Changes:
- Add
used
checker information toDiagnostics
Fixes:
- Update default parameters
- Optimize the automaton based checker implementation
Changes:
- Add
maxDegree
parameter
Fixes:
- Optimize VM implementation
- Improve attack string construction strategy
Fixes:
- Handle timeout error in
ReDoS.check
correctly.
Changes:
- Move
Compiler
toautomaton
package. - Move
unicode
package todata
package. - Add backtrack based RegExp VM.
- Add fuzz checker.
- Add hybrid checker.
Fixes:
- Fix conversion from repeat pattern
a{n,m}
to ε-NFA correctly. - Remove duplicated canonicalization of word escape class on
ignore-case
.
Changes:
- Move
Checker
,Complexity
andWitness
intoautomaton
package. - Add
Diagnostics
. - Use
Vector
instead for performance. - Improve
package.json
contents.
Fixes:
- Refactor
EpsNFA.Assertion#accept
.
Changes:
- Fix ε-elimination behavior with an assertion.
- Fix
IChar.Word
range. - Add TypeScript definition file to NPM package.
An initial release.