Update dependency comby/comby to v1 - autoclosed
Created by: renovate[bot]
This PR contains the following updates:
Package | Type | Update | New value | References | Sourcegraph |
---|---|---|---|---|---|
comby/comby | stage | major | 1.7.0 | source | |
comby/comby | final | major | 1.7.0 | source |
Test plan: CI should pass with updated dependencies. No review required: this is an automated dependency update PR.
Test plan: CI should pass with updated dependencies.
Release Notes
comby-tools/comby
v1.7.0
-
update language definitions (MATLAB, R)
-
recognize Terraform file extension
.tf
for-lang
flag (previously.hcl
). -
additional property accesses
.file
aliased tofile.path
-
fixes behavior so that
-newline-separated
works withrewrite {...}
rules -
custom metasyntax is now recognized for all terms inside rules
-
custom metasyntax aliases are now applied to rules
v1.6.0
Utility properties for holes. The following are introduced and recognized in rules and rewrite templates, and are substituted:
- Length. Substitute the length of a hole in rules and rewrite templates
:[hole].length
- String conversions. The following are recognized pattern that will substitute the value of
:[hole]
with the respective string processing in rewrite templates and rules
:[hole].lowercase
:[hole].UPPERCASE
:[hole].Capitalize
:[hole].uncapitalize
:[hole].UpperCamelCase
:[hole].lowerCamelCase
:[hole].UPPER_SNAKE_CASE
:[hole].lower_snake_case
- Filepaths. Substitute the file name, file path, or directory
:[hole].file.path
:[hole].file.name
:[hole].file.directory
- Simpler rule syntax modifications. Less strict parsing and more convenient/readable possibilities for rule syntax.
Expand for full list of changes
- trailing commas for rule expressions are OK:
where :[x] == :[y],
where match :[x] {
| :[y] -> :[z],
},
- optional first
|
for pattern matching:
where match :[x] { :[y] -> :[z] }
- convenience interpretations for
_
:
where match :[x] { _ -> :[z] }
implies
where match :[x] { :[_] -> :[z] }
- convenience interpretation for regex
~
:
where match :[x] { ~match-regex -> :[z] }
implies
where match :[x] { :[~match-regex] -> :[z] }
- Single, double escapable quotes in match and rewrite cases (interprets
\t
,\n
,\r
,\\
escape sequences):
where match :[x] { '"yep"\n' -> :[z] }
- Raw string quotes (no interpreting escape sequences)
where match :[x] { `"yep"\n` -> :[z] }
- Heuristic parsing for patterns in match cases that require neither quotes nor recognized variable:
where match :[x] { foo(:[x]) -> :[x] }
where rewrite :[x] { foo(:[x]) -> :[x] }
Behavior looks for the first ->
, so ->
must be escaped if this should be matched literally. Trailing and leading spaces in pattern matches are ignored--use quotes for significant leading and trailing spaces
-
Added
.hcl
language definition -
The experimental optional hole syntax is removed. Use regular expressions holes with optional modifiers
?
instead.
v1.5.1
- Changed
-rg
option to not emit an error when no matches/files are found to process.
v1.1.0
- adds
-bound-count
flag
Stop running when at least num matches are found (possibly more are returned for parallel jobs).
-
avoids writing to file system if a file is unchanged
-
bug fix: don't parse for comments inside strings
-
bug fix: don't assume single quotes in Haskell are balanced
-
adds additional delimiters to interpret code blocks in Julia
-
adds support for Coq, Zig, Solidity, and Move languages by adding basic definitions
-
bug fix where strings should have been escaped in
-match-only
JSON output -
bug fix where carriage returns
\r
were not escaped in match output -
fresh variable generation via
:[id()]
in-sequential
mode increment sequentially -
add experimental nested matching via
where nested
v1.0.0
Breaking change:
-
:[hole]
will only match across newlines If they are inside delimiters for a language. Otherwise, it will match at most to the end of line, rather than across multiple lines or to the end of file. To disable this behavior and force matching across newlines for any language, add the flag-match-newline-at-toplevel
. There is one exception to this change: The following languages/file extensions are unaffected and will continue to match across newlines outside delimiters:-
.tsx
,.jsx
,.html
,.xml
,.tex
,.txt
This is because tags like<p>...</p>
are not yet considered proper delimiters, and other textual inputs do not typically contain delimiters.
-
Additions:
- The ellipses
...
alias can now be used instead of:[_]
in rules. Example:
where match :[args] {
| "..., foo, ..." -> true
| "..." -> false
}
Configuration
-
If you want to rebase/retry this PR, click this checkbox.
This PR has been generated by WhiteSource Renovate. View repository job log here.