- Swift 5 support
- Improve unescaping algorithm speed
- Add mutable methods
- Update project for Xcode 9.3
- Improve tests and documentation
- Fix CocoaPods metadata
- Update project for Swift 4
- Improve tests and documentation
- Run CI tests on mutliple platforms
- Update metadata
- Implemented final API: same design as Foundation
addingPercentEncoding
/removingPercentEncoding
- Reorganized Xcode project and targets (1 target/platform)
- Better @objc annotations
- Automatic deployment from CI
- Fix Carthage minimum deployment version issue
- Updated README
- Sanitized codebase
- Added an Objective-C Mix & Match API
- Codebase improvements
- You can now perform custom escaping by escaping Unicode scalars individually.
- Further improved the escaping algorithm, which is now up to 6 times faster.
- Changed the escaping strategy: special characters are now escaped with decimal sequences. This allows for better compatibility with browsers (HTML 4.0 compatible) and better speed
- Changed the Unicode escaping strategy: only escape characters that could cause an XSS injection
- Added an asymptotic complexity approximation calculator (every algorithm is now O(N))
- Removed .DS_Store
- Changed the escaping algorithm (
reduce
instead ofmap
) - Reduced the size of the escaping mappings
- Performance improvements: escaping is up to 6.5 times faster and unescaping is up to 98 times faster
- Improved documentation
- New benchmark tool and reports
- The
Character
(un)escaping extensions have been removed.
- Performance improvements : escaping is 99.37% faster and unescaping is 10,38% faster (in average)
- Changed the escaping/unescaping tables model
- Better tests and coverage
- Transitioned to a
Character
-based API: this adds full support for extended grapheme clusters. - Reduced build times: now builds in ~5seconds (vs ~15 in v1)
- Rewrote tests: improved code coverage
- Several bug fixes and code improvements
- Added independent documentation
unescapingFromHTML
: An API difference between Darwin and Open-Source Foundation inScanner
caused compilation to fail on Linux.
- Tests on Linux and macOS
- Minor changes in README and Podspec