- Improve whitespace handling
- Support ctrl+c
- Improve logging
- Change language names
- Support for YAML structural find/replace
- Better concrete syntax semantics (#671)
- More Python types in polyglot_piranha.pyi (#675 ; #674)
- Fixing bug with
.kt
extension (#676) - Improvements and fixes to Spark migration rules (#658)
- Ruby support (#649 ; #670)
- Disabled graph validation by default (#672)
- Maturin: 1.4.0 <= version < 2.0
- Fix python wheel not working on specific Linux versions.
This version may fail to pip install polyglot-piranha
in some Linux versions.
- Python wheel with no duplicate entries in generated METADATA
- RELEASING.md: updated instructions
- Starter kit for Zap Transformation plugin
- Improved rule syntax. Now :[x] pattern is supported for references too.
- Improved Swift cleanup
- Bug fix: concrete syntax matching- Handle trailing commas and comments
- Feature: Support for
ParentIterative
edge
- Fix swift cleanup of statements after return
- Improve go feature flag cleanup
- Fix bug related to leading/trailing comma
- Breaking change: the Piranha argument api now accepts a list of paths to source code (paths_to_codebase), as opposed to accepting just
path_to_codebase
- Add support for scala
- Added concrete syntax as matching language
- Bug-fix in query validation
- Bug-fix in graph validation
- Introduce graph validation
- Improved swift syntax support
- Capture interface as "Class" scope in Java
- Refactor to support other matching languages
- Introduce regex syntax for rules
- Add support for replace node index
- Bug fix for iOS cleanup
- Rule graph validation #493
- Bug fix #497 #499
- Kotlin dependency update
- Bug Fix related to code snippet mode #489
- Added support for iOS string resource file format #490
- Support
enabled, err := foobar(), nil
scenario
- Support richer constraints with
not_enclosing_node
- Added checks to make sure filter arguments are consistent
- Support filters without
enclosing_node
(#482)
- Support richer constraints
- ability to
include
orexclude
particular paths - Support variable / field inlining in Swift
- More optimized if-statement cleanups
- Swift cleanup bug fixes
- Added equality simplification for Java
- Add support for thrift
- Ternary operator simplification for Swift
- Improved the Python interface for constructing PiranhaArguments
- Improve handling of leading (and trailing) commas and comments
- Fix boolean simplification rules
- Add Enum scope for Java
- Add option to transform/analyze partially parsable code (
--alow-dirty-tree
) - Bug fixes
- Introduce Feature flag cleanup for Go and Swift
- Introduce a Python / Rust API for defining rules, edges and the arguments
- Introduce code snippet mode
- Improvements for the command line interface
- Bug fixes
- Fixed bug related to build-in cleanup rules not being packaged [#247]
- Improve demos and documentation [#242] [#243]
- Add Python Structural/Replace support [#248]
- Improve logging and expose logs via pyo3 [#246]
- Fix delete trailing comma bug [#251]
- Add
File
Scope for Kotlin [#249] - Added GitHub workflow to make release
- Fix disjunction rule [#269]
- Handle cleanups for feature flags within constructors [#268]
- Add
dry_run
as a command line argument [#263] - Support for structural match/replace (with chaining) for Go [#256]
- Support for structural match/replace (with chaining) for TS / TSX [#260]
- Improve documentation [#261, #259, #258, #257]