-
Notifications
You must be signed in to change notification settings - Fork 10
chore(deps): update pre-commit hook returntocorp/semgrep to v1.138.0 #179
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
alma-renovate-bot
wants to merge
1
commit into
develop
Choose a base branch
from
renovate/tools-and-pre-commit
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
a8a37f1
to
11dea91
Compare
11dea91
to
ba1915d
Compare
ba1915d
to
82722c1
Compare
82722c1
to
75800c1
Compare
75800c1
to
edde821
Compare
edde821
to
712caf0
Compare
712caf0
to
1ede29d
Compare
1ede29d
to
0cc31bf
Compare
0cc31bf
to
2d8200f
Compare
2d8200f
to
064c66c
Compare
064c66c
to
fe6760b
Compare
fe6760b
to
f756173
Compare
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v1.103.0
->v1.138.0
Note: The
pre-commit
manager in Renovate is not supported by thepre-commit
maintainers or community. Please do not report any problems there, instead create a Discussion in the Renovate repository if you have any questions.Release Notes
returntocorp/semgrep (returntocorp/semgrep)
v1.138.0
Compare Source
1.138.0 - 2025-09-25
Added
Changed
taint labels. This allows for the generation of more specific conditions than
the previously released version (v1.133.0). (code-9097)
Fixed
SEMGREP_APP_TOKEN
from any request made to non semgrep URLspassed to
-f/-c/--config
during config/rules fetching. (gh-11016)var $X = $FUNC($REQ, $RES, ...) {...}
no longer fails to parse. (saf-2159)
tsconfig.json
matching for Typescript projectsthat contain multiple
tsconfig.json
s. (saf-2163)v1.137.0
Compare Source
1.137.0 - 2025-09-17
Added
semgrep mcp
subcommand, which runs the Semgrep MCP server, which previouslyused to live at https://github.com/semgrep/mcp. That repository will be deprecated
as of this release, and future MCP contributions / issues should go into this repo. (saf-2239)
Changed
Fixed
\#
and\
in glob patterns found inSemgrepignore and included Gitignore files. (fix-glob-escape)
pkg_resources is deprecated
warning by bumping opentelemetry-*packages (gh-11069)
v1.136.0
Compare Source
1.136.0 - 2025-09-09
No significant changes.
v1.135.0
Compare Source
1.135.0 - 2025-09-03
No significant changes.
v1.134.0
Compare Source
1.134.0 - 2025-08-27
Added
v1.133.0
Compare Source
1.133.0 - 2025-08-22
Added
interfile rules earlier in the process when we determine they cannot match in a
given scan, which should improve performance. (code-8524)
Fixed
new
in some cases. (code-9047)ensure keys for match-based IDs are stable. (gh-4459)
nan
as well as some moreobscure cases that were interpreted as a float instead of a string. This
might affect any area of Semgrep that deals with YAML files containing
the string
nan
. (yaml-float-parsing)v1.132.0
Compare Source
1.132.0 - 2025-08-14
Added
taint_assume_safe_booleans
the return values ofboolval
,is_bool
, and||
will be considered safe.When enabling
taint_assume_safe_numbers
the return values ofintval
,floatval
,+
,-
,*
,/
and%
will also be considered safe. (php)took to complete will now be visible in the debug logs. (#2130)
from indefinitely hanging the engine. (#4295)
Changed
Fixed
IDE. They still log, but will no longer be displayed via UX. (saf-2193)
outstanding validators executing at a given time. (#2130)
v1.131.0
Compare Source
1.131.0 - 2025-07-30
Fixed
path rather than the entire internal structure representation. This allows for
more succinct log files and no longer introduces mid-entry newlines, which can
break log-parsing tooling. (gh-4315)
Sign in
command (saf-2151)SemgrepError
exception is raised and causessemgrep
to fail. (silent-semgrep-error)v1.130.0
Compare Source
1.130.0 - 2025-07-23
Fixed
Also includes changes from the canceled 1.129.0 release
Added
A warning is now printed for each exclude or include pattern found in rules
that is considered ambiguous (
paths.exclude
,paths.include
).Currently, a pattern that contains a middle slash such as
src/*.c
is considered floating or unanchored by our implementation. In order to
be compliant with Gitignore and Semgrepignore,
src/*.c
should be treated as anchored. Since many programmers are unaware of this
subtlety in the Gitignore specification, Semgrep now prints a warning asking
the user to lift the ambiguity. A user will now be asked to
change their pattern
src/*.c
into either/src/*.c
(anchored) or**/src/*.c
(floating). This clarifies the expected behavior for readersof Semgrep rules and will avoid problems when Semgrep rules adopt
the Gitignore/Semgrepignore behavior. (rule-paths-middle-slash-patterns)
Secrets: Validation for AWS credentials which failed due to possibly transient
reasons is now retried (3 attempts max). (scrt-917)
Fixed
semgrep scan
in a docker container without an argumentand no target project was mounted under
/src
,instead of a silent exit with code 2, a helpful error message is
now printed before exiting. (docker-mount-error)
paths.exclude
,paths.include
) now apply tonormalized file paths relative to the project root. This makes rule selection
independent from the current work folder.
Patterns with a leading slash such as
/src
are now anchored insteadof being floating. For example,
exclude: [ "/src" ]
will exclude the targetfile
src/main.c
but no longer excludesmisc/src/main.c
. (rule-paths-leading-slash-patterns)Unix.Unix_error
would occasionally crash the experimental language serveron startup. (saf-2133)
get_targets
endpoint.Previously, scanning large repos with the debug flag significantly ballooned
the size of the output log. (saf-2145)
v1.128.0
Compare Source
1.128.0 - 2025-07-03
Added
HTTP{,S}_PROXY=...
now accepts URIs without a scheme (e.gHTTP_PROXY=domain.com:port
) (saf-2082)Fixed
class $A
partial class pattern, in favor ofv1.127.0
Compare Source
1.127.0 - 2025-06-24
Fixed
TS configs. (code-8678)
v1.126.0
Compare Source
1.126.0 - 2025-06-18
Fixed
v1.125.0
Compare Source
1.125.0 - 2025-06-11
Added
--json
. (SC-2458)Fixed
.semgrepignore
excludes to be applied to Secrets product scans. Now, Semgrep will once again scan files that have been excluded from Code and SSC scans for possible leaked secrets. (SAF-2067)are now sorted correctly based on their location within files.
This benefits all the Semgrep IDE extensions (VSCode, IntelliJ). (ide-findings-order)
semgrep ci
logs in GitLab would return an incorrect URLwith the wrong
&ref=...
argument. (saf-959)v1.124.0
Compare Source
1.124.0 - 2025-06-04
Added
ALL_PROXY
,HTTP_PROXY
,HTTPS_PROXY
,NO_PROXY
,PROXY_USERNAME
andPROXY_PASSWORD
for all networking (includingthat done via the OCaml components). Moreover, the environment variable
OCAML_EXTRA_CA_CERTS
should now allow additional CA certs to be used fornetwork operations done by OCaml components. (code-8157)
Fixed
build.gradle.kts
files asbuild.gradle
. (SC-2209)with a
requires:
of the formnot A
, could produce findings with an emptylist of traces, potentially causing a crash. We now recognize the issue and
prevent the crash from happening. (code-8531)
f""
was not matched by the pattern "...". (gh-10047)metavariable-type
. Concretely, "2 * groups" was not considered an int, where groups is an int. Additionally adds type inference for mod, floor division, and pow. (gh-9855)disproportionate amount of time significantly slowing down scans. (saf-1978)
v1.123.0
Compare Source
1.123.0 - 2025-05-28
Fixed
v1.122.0
Compare Source
1.122.0 - 2025-05-14
Added
Fixed
pro: Fixed inter-file naming bug affecting Go's struct-methods that could result
in false negatives.
Previously, adding a
pattern-inside
liketo a taint rule could cause some findings to incorrectly stop being reported. (code-7767)
PRO: Fixed the issue with type matching when a type has a type parameter, e.g., matching the pattern
std::vector<$T>
with the codestd::vector<int> v
in C++. (code-8443)Make Nuget dependency child parsing case insensitive (sc-2355)
Fixed bug where direct dev depenencies were not marked as direct when parsing package-lock.json projects. (sc-dev)
v1.121.0
Compare Source
1.121.0 - 2025-05-06
Added
tsconfig.json
in instances where multipletypescript "projects" (i.e., separately rooted source directories with their
own configurations not joined by a single
tsconfig.json
with projectreferences) are being scanned as one project under semgrep. This should result
in better name/module resolution in TypeScript. (code-7798)
include
,exclude
andfiles
properties intsconfig.json
. Projects which use more than one tsconfig in a given directorywhich apply to different sets of files under that directory should see
improvements in name/module resolution. (code-7798-a)
Changed
Fixed
-j1
and it can be overridden by the user. (interfile-num-jobs)--disable-nosem
was not properly causing nosemgrep'd findingsto be uploaded to the App. (saf-1982)
This fixes a regression introduced in 1.117.0 (sca-1705). (sc-1705)
v1.120.0
Compare Source
1.120.0 - 2025-04-22
Added
(e.g., _cargo, _opam, .svn) (semgrepignore)
--x-semgrepignore-filename
to change the name of.semgrepignore
files to something else. This can be used to scan a subproject in a separate semgrep invocation as the rest of the containing project. (semgrepignore-filename)Fixed
-j
setting so as to take into account the cgroupCPU quota on Linux. This will affect Docker and other containerized
environments that share resources on the same host. Use the new command
semgrep show resources --experimental
to show the default setting. (saf-1950)v1.119.0
Compare Source
1.119.0 - 2025-04-16
Added
semgrep show project-root
is now provided to displaythe project root path associated with a scan root. This is useful for
troubleshooting Semgrepignore (v2) issues. (saf-1936)
Fixed
tainting: Apply
taint_assume_safe_numbers
andtaint_assume_safe_booleans
earlier when considering to track taint through class fields and function
parameters. If the field/parameter has a number/Boolean type and the
corresponding option is set, it will just not be tracked. In some cases this
can help with performance.
Also added
short
/Short
to the list of integer types recognized bytaint_assume_safe_numbers
. (code-8345)IDE: The Semgrep VS Code Extension will no longer hang on
Getting code actions from Semgrep...
on saving a file, when updating rules. (saf-1954)
v1.118.0
Compare Source
1.118.0 - 2025-04-09
Fixed
Pro: Failure to parse a
package.json
file when analysing JavaScript orTypeScript is no longer a fatal error. (code-8227)
taint-mode: Fixed bug in taint "auto-cleaning" where we automatically clean the
LHS of an assigmnet if the RHS is clean, provided that the LHS is not subject to
any "side-effects". In some cases, this could cause the taint analysis to timeout.
Some combinations of rules and repos will see a major perf improvement, in other
cases it may not be noticeable. (code-8288)
In a Semgrep rule's
metadata
section, two fields may provide URLs:source
: populated dynamically by the Semgrep registry serving the rule, it's a URL thatoffers information about the rule.
source-rule-url
: optional string, a URL for the source of inspiration for the rule.The SARIF format supports only one URL under the field
helpUri
.Previously, Semgrep populated the SARIF
helpUri
field only withmetadata.source
.This fix is to use
metadata.source
if available, otherwise falling back tometadata.source-rule-url
.Contributed by @candrews. (gh-10891)
v1.117.0
Compare Source
1.117.0 - 2025-04-02
Added
that start with
./
. For example, the pattern./*.py
should be written as/*.py
to have the desired effect of excluding the.py
fileslocated in the same directory as the
.semgrepignore
file containingthe pattern.
To minimize surprises for users switching to Semgrepignore v2,
we'll be interpreting automatically
./*.py
as/*.py
for the timebeing so as to match the legacy Semgrepignore v1 behavior. Users should not
rely on this since it doesn't comply with the Gitignore/Semgrepignore
standard and will be removed in the future. (tolerate-semgrepignore-v1-dotslash)
Semgrepignore v2 by default. This brings the behavior of the Semgrepignore file
exclusions closer to Git and
.gitignore
files. There can nowbe multiple
.semgrepignore
files in the project. The.semgrepignore
filein the current folder is no longer consulted unless it in the project.
Negated patterns are now supported such as
!scanme.py
as with Gitignore.Some bugs were fixed. (use-semgrepignore-v2)
Changed
Fixed
*
and?
to match file names with a leading period. This matches the behavior of Gitignore and Semgrepignore v1. (semgrepignore-dotfiles)v1.116.0
Compare Source
1.116.0 - 2025-03-28
Fixed
v1.114.0
Compare Source
1.114.0 - 2025-03-19
Fixed
Pro Engine now more accurately tracks the scope of Python local variables. For
example, the following code defines two
z
variables that should be trackedseparately.
The Pro engine now correctly recognizes that the
z
assigned toa
is the onedefined in the local scope, not the global scope. (code-8114)
v1.113.0
Compare Source
1.113.0 - 2025-03-17
Fixed
v1.112.0
Compare Source
1.112.0 - 2025-03-13
Added
write the pattern like:
Fixed
the identification of a statement like
return foo()
as one such sink. (code-8199)--gitlab-secrets
output has been updated to conform to GitLab JSON schema (scrt-849)--semgrepignore-v2
changed to be closer to the legacySemgrepignore v1.
.gitignore
files are no longer loaded automaticallyas part of the Semgrepignore v2 exclusion mechanism.
Loading a
.gitignore
file must be doneby placing
:include .gitignore
in the.semgrepignore
fileas was the case with Semgrepignore v1. (semgrepignore-v1-compat)
v1.111.0
Compare Source
1.111.0 - 2025-03-04
Changed
.semgrepignore
file lookup using theSEMGREP_R2C_INTERNAL_EXPLICIT_SEMGREPIGNORE
environment variable. This was used by semgrep-action whichhas been deprecated. (semgrep-action)
Fixed
in JS/TS. (code-8065)
the project root to reduce inaccuracies in module resolution. This change
mitigates the risk of resolving module specifiers to incorrect paths,
particularly in cases involving common library names (e.g.,
django
). (code-8146)findings when using the --gitlab-secrets flag. (scrt-833)
v1.110.0
Compare Source
1.110.0 - 2025-02-26
Added
pro: Inter-file analysis will now process Javascript and Typescript files
together, so that taint can be tracked across both languages. (code-8076)
Pro: new
metavariable-name
operator which allows for expressing a constraintagainst the fully qualified name or nearest equivalent of a metavariable
(useful mainly in JavaScript and TypeScript, where there is no first-class
syntax for this, or where such names or pseudo-names containt symbols which
cannot appear in identifiers). Requires pro naming passes and works best with
interfile naming.
Additional documentation forthcoming. (code-8121)
Changed
Fixed
Fixed a regression in pro interfile mode where type inference for the
var
keyword in Java was not functioning correctly. (code-7991)
PRO: Fix the
range not found
error when using a metavariable pattern match ona typed metavariable. For example, the following metavariable pattern rule will
no longer trigger the error:
lsp will no longer send diagnostics where the message is
MarkupContent
sinceour current implementation does not discriminate on the client capability for
recieiving such diagnostics (to-be-added in 3.18). (code-8120)
Yarn.lock parser now correctly denotes NPM organization scope. (sc-2107)
Packages in
Package.resolved
without a version are now ignored. (sc-2116)Updated
Package.swift
parser to support:v1.109.0
Compare Source
1.109.0 - 2025-02-19
Changed
Fixed
See https://semgrep.dev/playground/s/ReJQO (code-7967)
to prevent unintended interactions. See https://semgrep.dev/playground/s/7KE0k. (code-8054)
optimized the matching of ordered
..., PAT, ...
patterns. (saf-682)v1.108.0
Compare Source
1.108.0 - 2025-02-12
Added
Changed
"semgrep.policy:" are now filtered from the JSON output unless you
are logged in with the Semgrep appsec platform.
See https://semgrep.dev/docs/semgrep-appsec-platform/json-and-sarif#json for more information. (metadata-filter)
Fixed
git worktree remove
more gracefully.Instead of erroring, we continue to scan so that the user can still get results, but
log the error. It also adds a guard so that this failure is less likely to happen
and will include more debugging information when it does. (sms-521)
v1.107.0
Compare Source
1.107.0 - 2025-02-04
Added
Fixed
multiple inheritance. The type that appears later takes precedence when
resolving fields. For example, in
class A extends B with C with D
, the orderof precedence is D, C, B, and A. (code-7891)
See https://semgrep.dev/playground/s/X5kZ4. (code-7987)
like --semgrep-branch (saf-1746)
Infra/Release Changes
v1.106.0
Compare Source
1.106.0 - 2025-01-29
See 1.105.0 Changelog:
1.105.0 - 2025-01-29
Added
Changed
Fixed
v1.104.0
Compare Source
1.104.0 - 2025-01-22
Changed
Fixed
pro: Fixed bug in inter-file matching of subtypes. When looking to match some
type
A
, Semgrep will match any typeB
that is a subtype ofA
, but in certainsituations this did not work. (code-7963)
taint-mode: Make traces record assignments that transfer taint via shapes.
For example, in code like:
The assignment
b1 = b
should be recorded in the trace but previously it was not. (code-7966)Python: Parser updated to the most recent tree-sitter grammar.
Parse rate from 99.8% -> 99.998%. (saf-1810)
Configuration
📅 Schedule: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.