- Internal: Mockito 5.13.0 to 5.14.2, HtmlUnit 4.4.0 to 4.6.0
- Fix sort by name implementation (#328)
- Upgrade closure-compiler v20231112 to v20240317, gson 2.10.1 to 2.11.0
- Internal: HtmlUnit 3.9.0 to 4.4.0, Mockito 5.8.0 to 5.13.0, JaCoCo 0.8.11 to 0.8.12, Rhino 1.7.14 to 1.7.15
- Internal: Maven Resolver Ant Tasks 1.2.1-SNAPSHOT to 1.5.1, hamcrest-core 2.2 to 3.0
- Upgrade closure-compiler v20230502 to v20231112
- Update documentation and manual for Java 11
- Internal: HtmlUnit 2.70.0 to 3.9.0, Mockito 5.3.1 to 5.8.0, JaCoCo 0.8.10 to 0.8.11
- Update documentation and samples
- Java 11 to align with closure-compiler
- Upgrade closure-compiler v20220601 to v20230502
- Internal: HtmlUnit 2.66.0 to 2.70.0, Mockito 4.8.1 to 5.3.1, JaCoCo 0.8.8 to 0.8.10
- Fix instruments in lit-html template (#311)
- Fix "this" is undefined in header.js in strict mode (#293)
- Upgrade closure-compiler v20220405 to v20220601, gson 2.9.0 to 2.10
- Internal: HtmlUnit 2.61.0 to 2.66.0, Mockito 4.5.1 to 4.8.1
- Fix instrument function after comma in assignment (#303)
- Fix selenium-ide.html in localStorage-file-system example (#312)
- Upgrade closure-compiler v20220202 to v20220405, gson 2.8.9 to 2.9.0
- Internal: HtmlUnit 2.58.0 to 2.61.0, Mockito 4.3.1 to 4.5.1, JaCoCo 0.8.7 to 0.8.8
- IllegalStateException: FUNCTION when arrow function is used (#310)
- Upgrade closure-compiler v20211006 to v20220202
- Internal: HtmlUnit 2.54.0 to 2.58.0, Mockito 4.0.0 to 4.3.1, Rhino 1.7.13 to 1.7.14
- 404 with large query headers (#308)
- Fix eval('this') handling (#268)
- Upgrade closure-compiler v20210601 to v20211006
- Upgrade GSON 2.8.7 to 2.8.9
- Internal: HtmlUnit 2.51.0 to 2.54.0, Mockito 3.11.2 to 4.0.0, Jasmine 3.8.0 to 3.9.0
- Proxy Server: Get request is not ending \r\n (#302)
- Upgrade closure-compiler v20210202 to v20210601
- Upgrade GSON 2.8.6 to 2.8.7
- Update all pages links to github.io
- Internal: JUnit 4.13.1 tp 4.13.2, Mockito 3.7.7 to 3.11.2, HtmlUnit 2.47.1 to 2.51.0, Jasmine 3.7.1 to 3.8.0, JaCoCo 0.8.6 to 0.8.7
- Upgrade closure-compiler v20200628 to v20210202
- Add GSON dependency, com.google.code.gson:gson:2.8.6, removed from closure-compiler
- Internal: HtmlUnit 2.42 to 2.47.1, Mockito 3.2.4 to 3.7.7, Rhino 1.7.12 to 1.7.13, JaCoCo 0.8.5 to 0.8.6, Jasmine 3.5.0 to 3.7.1, JUnit 4.13 tp 4.13.1
- Replace 'eval' with 'JSON.parse' (#290)
- Upgrade closure-compiler v20200101 to v20200628, Rhino 1.7.11 to 1.7.12
- Internal: HtmlUnit 2.36 to 2.42.0, Mockito 3.2.4 to 3.4.2
- Replace deprecated Maven Ant Tasks with Maven Artifact Resolver Ant Tasks (#285)
- Add support for for...of (#276)
- Don't instrument for..of loop code (#279)
- Should not instrument between return of function (#280)
- Should not instrument inside for...in (#281)
- Upgrade closure-compiler v20190618 to v20200101
- Internal: Mockito 2.28.2 to 3.2.4, HtmlUnit 2.35 to 2.36.0, Jacoco 0.8.4 to 0.8.5, Jasmine 3.4.0 to 3.5.0, JUnit 4.12 to 4.13
- Upgrade closure-compiler v20181210 to v20190618, Rhino 1.7.10 to 1.7.11
- Instrumentation added in class body (#275)
- Internal: Mockito 2.23.4 to 2.28.2, HtmlUnit 2.30 to 2.35.0, Upgrade Jasmine 3.3.0 to 3.4.0
- Upgrade closure-compiler v20180506 to v20181210
- Internal: Mockito 2.18.3 to 2.23.4, HtmlUnit 2.31 to 2.33, Upgrade Jasmine 3.1.0 to 3.3.0
- Internal: Swap from Cobertura to Jacoco for coverage
- Add GNU classpath exception to license (#271)
- Upgrade closure-compiler v20180204 to v20180506
- Bump JS language in from ECMASCRIPT8 to ES_NEXT
- Internal: Mockito 2.18.0 to 2.18.3, HtmlUnit 2.30 to 2.31
- Upgrade closure-compiler v20180204 to v20180402
- Internal: HtmlUnit 2.29 to 2.30, Upgrade Jasmine 3.0.0 to 3.1.0, Mockito 2.15.0 to 2.18
- Upgrade closure-compiler v20171023 to v20180204
- Internal: Upgrade HtmlUnit 2.27 to 2.29, Mockito 2.11.0 to 2.15, Jasmine 2.8.0 to 3.0.0
- Fix instrumentation fn declaration in new operator (#265)
- Upgrade closure-compiler v20170626 to v20171023
- Internal: Upgrade Jasmine 2.7.0 to 2.8.0, Mockito 2.8.47 to 2.11.0
- Fix instrumentation for ES6 class members (#261)
- Fix instrumentation for array definition across lines (#260)
- Internal: Upgrade Jasmine 2.6.4 to 2.7.0
- Convert JSON merger from Mozilla Rhino to Google GSON (#258)
- Replace Rhino AST engine with Closure Compiler (#255)
- Internal: Upgrade HtmlUnit 2.24 to 2.27, Mockito 2.7.5 to 2.8.47, Jasmine 2.5.2 to 2.6.4
This is a major upgrade of the AST engine. The only visible changes should be the options for --js-version
have
changed, as well as the default language level. See the manual
for details.
- Remove conditional source from JSON (#244)
- Wrong 'position' values (#243)
- Minor API modifications to assist with Maven plugins
- Internal: Upgrade HtmlUnit 2.23 to 2.24, Mockito 2.3.30 to 2.7.5
- Missing instrumentation in a 'if' in 'case' statement (#241)
- Poor performance when used together with systemjs 0.19.37 (#235)
- Source Error Message Not Cleared When Displaying New Source (#234)
- Remove deprecated Synchronous XMLHttpRequest1 (#232)
- Add asynchronous option to jscoverage_report() (#227)
- Internal: Upgrade HtmlUnit 2.20 to 2.23, Jasmine 2.4.1 to 2.5.2, Mockito 1.10.19 to 2.3.30
1 - This means calls to jscoverage_report
will need to pass in a call-back to indicate when the function has completed. See the documentation for more details.
- Upgrade to Rhino 1.7.7.1
- Improve Logic To Determine Inverted Mode (#223)
- Don't Switch To Inverted Mode If There's A Query String (#222)
- Fix NullPointerException when Logger is removed while looping (#225)
- Internal: Upgrade HtmlUnit 2.19 to 2.20
- Fix
isCoalesce
for return statements (#219) - Allow sorting by all columns (#193)
- Provide a column with Missing statements (count) (#192)
- Add option to generate JSCover report files (#215)
- Fix undefined reportError error in
jscoverage.js
(#214) - Limit IE restrictions to IE7 and below
- Upgrade Jasmine 2.3.4 to 2.4.1 and update run-jscover-jasmine2.js
- Internal: Upgrade HtmlUnit 2.18 to 2.19
- Improve proxy logging (#210)
- Internal: Minor API modifications to assist with Maven plugin
- Make js (-fs option) code instrumentation multithreaded (#209)
- Include Empty Case Statements In Coverage (#202)
- NPE when showing help for '-io' option (#205)
- Fix syntax error caused by branch traversing instrumented nodes (#208)
- Handle statements in switch case better in compressed files (#208)
- Add CLI option for testing regular expressions (#206)
- Update samples to use latest JSCover, Underscore, QUnit and YUI3
- Internal: Upgrade HtmlUnit 2.18
- Add
--include-unloaded-js
for file mode (#199) - Add
--isolate-browser
to avoid automatically combining coverage (#197) - Update documentation for
-io
option - Internal: Upgrade HtmlUnit 2.17
- Upgrade to Rhino 1.7.7 with initial ES6 support (https://github.com/mozilla/rhino/issues?q=milestone%3A%22Release+1.7.7%22+is%3Aclosed)
- Internal: Upgrade to Jasmine 2.3.4, HtmlUnit 2.16
- Swap back to official Rhino release 1.7.6 with merged fixes
- Set minimum Java version to 1.6
- Fix web-server generated paths (#186)
- Internal: Upgrade to Cobertura 2.0.3->2.1.1, Mockito 1.10.17 to 1.10.19
- Add time-stamp to report (#184)
- Include Rhino fix for empty switch statements (#179)
- Improve memory usage when merging (#178)
- Sort files in web-server (#177)
- Fix view source failures in Internet Explorer (#171)
- Add option to exclude coalesce from conditional coverage (#86)
- Fix labelled loop with continue issue (#174)
- Internal: Upgrade to JUnit 4.12, Jasmine 2.1.3, Mockito 1.10.17
- Fix instrumentation for label without braces (#165)
- Fix instrumentation for some cases without braces (#160)
- Remove proxy headers to avoid persistent connections (#159)
- Decode URI in proxy mode
- Add logging to merge and report code
- Internal: Upgrade to Jasmine 2.0.3
- Fix Java 5 compatibility (#150)
- Don't copy non-report files (#149)
- Internal: Remove checked exception from public API
- Add
--save-json-only
to only save coverage data (#142) - Allow merging if no
original-src
directory exists (#142) - Include
jscoverage-clear-local-storage.html
in file-system output if using HTML5 localStorage - Internal:
- Fix tests failing with non-english locale (#141)
- Remove checked exception from public API
- Improve error when
Class-Path
not in manifest (#135) - Don't try to cover empty condition in loop (#137)
- Add shutdown hook
- Upgrade to Jasmine 2, HtmlUnit 2.15 (HtmlUnit/htmlunit-rhino-fork#2)
- Internal: Minor modifications to assist with Maven plugin
- Fix some single variable branch conditions (#132)
- Fix Content-Length return wrong length (#129)
- Exclude dependencies from Maven JSCover JAR
- Log program arguments
- Internal:
- Upgrade HTMLUnit to 2.14
- Swap from Selenium to HTMLUnit for localStorage test
- Add drone.io CI
- Add sort by file name in the coverage report web UI (#108)
- Fix handling of 'N/A' when sorting by line coverage (#115)
- Proxy Mode: Add support for other HTTP methods (#117)
- FireFox 27.0.1 Request To http://localhost:8080/ failing (#118)
- Internal:
- Upgrade selenium to 2.40
- Use tntim96 Maven repository version of Rhino
- Add more UI tests
- Remove need for user to add maven-ant-tasks-2.1.3.jar to their ant lib directory
- Fix JSON creation where object may have added properties (#105)
- Adding support for single file instrumentation via stdio (#100)
- Internal: Minor modifications to assist with Maven plugin (#103)
- Using HTML5 localStorage instead of an iframe (#92)
- Provide URI to File-System Path Translation (#98)
- Fix LogFormatterTest time zone issue (#99)
- Internal: Add check-style plugin to Maven POM and code quality improvements
- Support
include-unloaded-js
in proxy mode (#93) - Fix inclusion logic for unloaded-js (#93)
- Improve error message when invalid CL option supplied (#96)
- Add enhanced logging using JUL (#88)
- Add
--only-instrument-reg=URL
switch (#89) - Fix POSTs hanging due to persistent connections (#91)
- Internal:
- Move WebDriver samples to a separate project
- Set up infrastructure to remove some code duplication
- Proxy stream now forwarded exactly as received (#80)
- Encoding problem with proxied binary data - fix by KPesendorfer (#80)
- Document some ways to save a report in file-system mode (#83)
- Empty JS Source not viewable (#79)
- Empty JS source causes exception upon storing (#78)
- Add WebDriver samples with FireFox, PhantomJS, Internet Explorer and Google Chrome
- Remove difference in web-server and file-system instrumentation (#77)
- Use Semantic Versioning 2.0.0 Guidelines (#76)
- Reduce branch data JSON size (#73)
- Add 'Stop Server' Button to UI (#74)
- Allow
-fs
to be last option (#71) - Internal:
- Move common JavaScript functions to common JavaScript file
- Remove unused JavaScript functions
- Add function data to
jscoverage_report(dir)
function call (#69) - Merging Empty Branches Causes IllegalStateException (#68)
- Different Line Count When Unloaded (#70)
- Null Pointer Exception when performing --merge (#66)
- Internal: Use Maven for dependency management (#9)
- Add function coverage (#61)
- Include branch and function statistics from unloaded JavaScript (#63)
- Include branch coverage by default. Replace
--branch
switch with--no-branch
- Remove instrumentation code from branch data source
- Make
jscoverage.html
XHTML compliant - Website - handle direct links to HTML pages
- Add regular expression based path switch support (#57)
- Add HTTP Server support for XML MIME type (#56)
- Remember UI sort order (#59)
- Disallow invalid web-server document-root
- Fix Cobertura report for file-system instrumentation (#50)
- Fix continue label handling (#51)
- Fix MIME image mappings
- Fix proxy report for viewing source (#53)
- Fix "Refused to set unsafe header 'Content-Length'" (#54)
- Internal:
- Upgrade to HTMLUnit 2.12
- Add tests for headers in proxy for '.js' files (#49)
- Add PhantomJS samples
- Include headers in proxy mode when fetching '.js' files (#49)
- Fix NPE (#47)
- Fix Cobertura XML source display (#39)
- Synchronize threads saving JSON to the same report directory (#40).
- Fix logger NPE in InstrumentingRequestHandler
- Add Cobertura XML output (#39)
- Fix handling of comma error (#41)
- Add documentation for integration with PhantomJS
- Fix report merging (#38)
- Fix web-server for URLs with a space in them (#33)
- Internal: Upgrade to JUnit-4.11, Hamcrest-1.3. Remove deprecated code.
- Add report merging command line interface
- Improve unloaded JavaScript parsing error logging issue #27
- Internal:
- Load original JS source from file-system instead of JSON for report viewing
- Remove source from JSON
- Alter _$jscoverage object and JSON to elegantly accommodate branch (and other) properties
- Alter JSONDataMerger.mergeJSONCoverageStrings to accept and array of coverage strings to merge
- Upgrade to HTMLUnit 2.11
- Fix web-server looping issue #26
- Add infrastructure to generate other report formats with XML Summary
- Add JSON to LCov coverage data conversion
- Internal:
- Update examples with v0.1.0-RC3
- Update help text to use 'JSCover-all.jar'
- Update YUI3/QUnit examples
- Add support for getter/setter
- Add YUI3 server report (from running yui3/src/test/tests/unit/index.html)
- Add branch coverage support for expression statements
- Add line coverage handling for function in braces
- Fix bug where URI is ignored
- Minor - Set title/heading to JSCover. Fix 'Brance' typo in documentation
- Add proxy support for HEAD requests
- Fix multiple NPE errors
- Add FAQ on error log, and the manual on the error log and exit status
- Set exit status code to 1 if any exceptions were logged in file-system mode or if invalid parameters were supplied
- Fix bug where line is recorded as valid for line instrumentation but no instrumentation is added
- Add branch coverage
- Improve style of web-site
- Fix detection of destination as sub-directory of source #19
- Fix error message re: destination as sub-directory of source #18
- Fix detection of destination as sub-directory of source #16
- Use platform default encoding. Add documentation on -Dfile.encoding JVM property usage in manual.
- Flawed and download. Replaced with 0.0.11
- Add simple non-instrumenting web-server used in the manual's examples
- Improve manual to a usable state independent of JSCoverage's documentation
- Fix bug where destination folder can be in the source folder
- Add
--include-unloaded-js
, only for non-proxy web-server, to scan beneath www-root for unloaded/untested JS files - Leading slash in --no-instrument and --exclude are ignored for consistent internal handling.
- Double forward slashes in URLs replaced with single forward slashes
- Internal:
- Replace URL based proxy with sockets
- All headers now forwarded as received.
- Fixed basic non-SSL proxy support
- Add POST, cookie and redirect support for proxy mode
- Add proxy support (flawed and download has been replaced with 0.0.6)
- Message 'Report stored at' changed to 'Coverage data stored at' (important for HtmlUnit/Selenium)
- Internal:
- Swap from NanoHTTPD to JSCover's own web-server
- index.htm(l) no longer served automatically
- Include JSCover-all.jar, containing all JAR dependencies, in distribution
- Fix #2, https://bugzilla.mozilla.org/show_bug.cgi?id=800616
- Internal:
- More tests. Inverted mode test
- Remove Apache commons JARs
- Upgrade Mockito
- Add server handling of JavaScript-programmatic triggering of report storage
- Add more tests
- Addition of command line file instrumentation
- Working example of QUnit test suite
- Initial release comprising of web-server