Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
cc23c29
modifying benchmarks to reduce non-determinism (#3150)
tlhunter May 12, 2023
75795f6
Fix IAST evidence redaction (#3160)
CarlesDD May 16, 2023
df2a95a
Use 'process' as default strategy for oom export (#3136)
nsavoire May 17, 2023
4523431
Add test for pg native bindings. Pin pg version for v2 appsec test (#…
CarlesDD May 18, 2023
5d7c3d3
Service Naming API (#3161)
jbertran May 18, 2023
7f8a0dd
test: force a stop before starting metrics (#3173)
tlhunter May 18, 2023
a347a68
Fix path traversal vulnerability detection on close (#3172)
uurien May 19, 2023
a3cdfc4
More beautiful debug logs (#3171)
juan-fernandez May 22, 2023
cde49cf
[ci-visibility] Use new endpoint for code coverage (#3157)
juan-fernandez May 22, 2023
d83dca5
[ci-visibility] Fix cucumber parallel mode (#3156)
juan-fernandez May 23, 2023
6d26b58
[ci-visibility] Extract code coverage from `cypress` (#3159)
juan-fernandez May 23, 2023
85a4a51
Cache integrations - service naming (#3056)
jbertran May 23, 2023
83b925a
Fix ASM_DD batch update (#3165)
simon-id May 23, 2023
93cb891
Remove `git.properties` error log (#3179)
juan-fernandez May 23, 2023
af22048
Implement RC custom rules (#3126)
simon-id May 23, 2023
235e6e0
[ci-visibility] Fix [email protected] (#3180)
juan-fernandez May 24, 2023
432df55
Update AppSec blocking templates (#3181)
simon-id May 24, 2023
3cc4e2e
Update Appsec rules to 1.7.1 (#3185)
CarlesDD May 24, 2023
aa6f41f
Detect SQL injection with sequelize (#3154)
uurien May 25, 2023
462a2d9
[ci-visibility] Change gitlab's pipeline URL extraction (#3183)
juan-fernandez May 25, 2023
64ccce2
Taint cookies and headers (#3182)
CarlesDD May 26, 2023
a20357c
Add more scenarios to system-tests (#3191)
simon-id May 26, 2023
9b9d661
Revert "Taint cookies and headers (#3182)" (#3192)
CarlesDD May 26, 2023
c7c0ac3
postgres: DBM full service fallback w/ prepared statements (#3186)
tlhunter May 31, 2023
b17b534
Detect SSRF vulnerabilities (#3115)
uurien Jun 1, 2023
f952138
Insecure cookie vulnerability detection (#3184)
uurien Jun 1, 2023
43e410e
Update blocking page and status from RC or rules file (#3195)
uurien Jun 1, 2023
248ca53
[ci-visibility] Test skipping logic for cypress (#3167)
juan-fernandez Jun 1, 2023
453173a
Make HTTP clients fit in the plugin hierarchy (#3178)
jbertran Jun 1, 2023
a5e7538
Replace rmSync by unlinkSync (#3208)
uurien Jun 1, 2023
21441e7
v3.22.0
uurien Jun 1, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/appsec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ jobs:
ports:
- 3306:3306
env:
PLUGINS: mysql|mysql2
PLUGINS: mysql|mysql2|sequelize
SERVICES: mysql
steps:
- uses: actions/checkout@v2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/system-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
run: ./build.sh

- name: Run
run: ./run.sh
run: ./run.sh TRACER_ESSENTIAL_SCENARIOS

- name: Compress artifact
if: ${{ always() }}
Expand Down
3 changes: 1 addition & 2 deletions benchmark/sirun/log/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ const log = require('../../../packages/dd-trace/src/log')

const {
DD_TRACE_DEBUG = 'true',
ITERATIONS = 1000,
WITH_LEVEL = 'debug'
} = process.env

Expand All @@ -19,6 +18,6 @@ log.use({
error () {}
})

for (let i = 0; i < ITERATIONS; i++) {
for (let i = 0; i < 1000000; i++) {
log[WITH_LEVEL](() => 'message')
}
2 changes: 1 addition & 1 deletion benchmark/sirun/log/meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"run": "node index.js",
"run_with_affinity": "bash -c \"taskset -c $CPU_AFFINITY node index.js\"",
"cachegrind": false,
"iterations": 190,
"iterations": 40,
"instructions": true,
"variants": {
"without-log": { "env": { "DD_TRACE_DEBUG": "false" } },
Expand Down
7 changes: 4 additions & 3 deletions integration-tests/ci-visibility-intake.js
Original file line number Diff line number Diff line change
Expand Up @@ -161,12 +161,13 @@ class FakeCiVisIntake extends FakeAgent {
})
}

async stop () {
await super.stop()
stop () {
settings = DEFAULT_SETTINGS
suitesToSkip = DEFAULT_SUITES_TO_SKIP
gitUploadStatus = DEFAULT_GIT_UPLOAD_STATUS
infoResponse = DEFAULT_INFO_RESPONSE
this.removeAllListeners()
return super.stop()
}

// Similar to gatherPayloads but resolves if enough payloads have been gathered
Expand Down Expand Up @@ -230,7 +231,7 @@ class FakeCiVisIntake extends FakeAgent {
}, timeout || 15000)
const messageHandler = (message) => {
if (!payloadMatch || payloadMatch(message)) {
clearInterval(timeoutId)
clearTimeout(timeoutId)
resolve(message)
this.off('message', messageHandler)
}
Expand Down
6 changes: 3 additions & 3 deletions integration-tests/ci-visibility.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -455,7 +455,7 @@ testFrameworks.forEach(({
receiver.assertPayloadReceived(() => {
const error = new Error('it should not report code coverage')
done(error)
}, ({ url }) => url === '/api/v2/citestcov')
}, ({ url }) => url === '/api/v2/citestcov').catch(() => {})

receiver.assertPayloadReceived(({ headers, payload }) => {
assert.propertyVal(headers, 'dd-api-key', '1')
Expand Down Expand Up @@ -774,7 +774,7 @@ testFrameworks.forEach(({
receiver.assertPayloadReceived(() => {
const error = new Error('it should not report code coverage')
done(error)
}, ({ url }) => url === '/evp_proxy/v2/api/v2/citestcov')
}, ({ url }) => url === '/evp_proxy/v2/api/v2/citestcov').catch(() => {})

receiver.assertPayloadReceived(({ headers, payload }) => {
assert.notProperty(headers, 'dd-api-key')
Expand Down Expand Up @@ -817,7 +817,7 @@ testFrameworks.forEach(({

const [coveragePayload] = coverageRequest.payload
assert.notProperty(coverageRequest.headers, 'dd-api-key')
assert.propertyVal(coverageRequest.headers, 'x-datadog-evp-subdomain', 'event-platform-intake')
assert.propertyVal(coverageRequest.headers, 'x-datadog-evp-subdomain', 'citestcov-intake')
assert.propertyVal(coveragePayload, 'name', 'coverage1')
assert.propertyVal(coveragePayload, 'filename', 'coverage1.msgpack')
assert.propertyVal(coveragePayload, 'type', 'application/msgpack')
Expand Down
263 changes: 263 additions & 0 deletions integration-tests/ci-visibility/fixtures/coverage.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,263 @@
{
"src/utils.tsx": {
"path": "src/utils.tsx",
"statementMap": {
"0": {
"start": {
"line": 1,
"column": 19
},
"end": {
"line": 1,
"column": 48
}
},
"1": {
"start": {
"line": 1,
"column": 43
},
"end": {
"line": 1,
"column": 48
}
},
"2": {
"start": {
"line": 3,
"column": 23
},
"end": {
"line": 9,
"column": 1
}
},
"3": {
"start": {
"line": 4,
"column": 2
},
"end": {
"line": 8,
"column": 3
}
},
"4": {
"start": {
"line": 5,
"column": 4
},
"end": {
"line": 5,
"column": 17
}
},
"5": {
"start": {
"line": 7,
"column": 4
},
"end": {
"line": 7,
"column": 41
}
}
},
"fnMap": {
"0": {
"name": "(anonymous_0)",
"decl": {
"start": {
"line": 1,
"column": 19
},
"end": {
"line": 1,
"column": 20
}
},
"loc": {
"start": {
"line": 1,
"column": 43
},
"end": {
"line": 1,
"column": 48
}
},
"line": 1
},
"1": {
"name": "(anonymous_1)",
"decl": {
"start": {
"line": 3,
"column": 23
},
"end": {
"line": 3,
"column": 24
}
},
"loc": {
"start": {
"line": 3,
"column": 42
},
"end": {
"line": 9,
"column": 1
}
},
"line": 3
}
},
"branchMap": {
"0": {
"loc": {
"start": {
"line": 4,
"column": 2
},
"end": {
"line": 8,
"column": 3
}
},
"type": "if",
"locations": [
{
"start": {
"line": 4,
"column": 2
},
"end": {
"line": 8,
"column": 3
}
},
{
"start": {
"line": 4,
"column": 2
},
"end": {
"line": 8,
"column": 3
}
}
],
"line": 4
}
},
"s": {
"0": 1,
"1": 0,
"2": 1,
"3": 1,
"4": 0,
"5": 1
},
"f": {
"0": 0,
"1": 1
},
"b": {
"0": [0, 1]
}
},
"src/App.tsx": {
"path": "src/App.tsx",
"statementMap": {
"0": {
"start": {
"line": 6,
"column": 12
},
"end": {
"line": 25,
"column": 1
}
},
"1": {
"start": {
"line": 7,
"column": 2
},
"end": {
"line": 24,
"column": 4
}
}
},
"fnMap": {
"0": {
"name": "(anonymous_0)",
"decl": {
"start": {
"line": 6,
"column": 12
},
"end": {
"line": 6,
"column": 13
}
},
"loc": {
"start": {
"line": 6,
"column": 18
},
"end": {
"line": 25,
"column": 1
}
},
"line": 6
}
},
"branchMap": {},
"s": {
"0": 1,
"1": 1
},
"f": {
"0": 1
},
"b": {}
},
"src/index.tsx": {
"path": "src/index.tsx",
"statementMap": {
"0": {
"start": {
"line": 7,
"column": 0
},
"end": {
"line": 7,
"column": 58
}
},
"1": {
"start": {
"line": 12,
"column": 0
},
"end": {
"line": 12,
"column": 27
}
}
},
"fnMap": {},
"branchMap": {},
"s": {
"0": 1,
"1": 1
},
"f": {},
"b": {}
}
}
4 changes: 4 additions & 0 deletions integration-tests/ci-visibility/web-app-server.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
// File to spin an HTTP server that returns an HTML for playwright to visit
const http = require('http')
const coverage = require('../ci-visibility/fixtures/coverage.json')

module.exports = http.createServer((req, res) => {
res.setHeader('Content-Type', 'text/html')
Expand All @@ -10,6 +11,9 @@ module.exports = http.createServer((req, res) => {
<body>
<div class="hello-world">Hello World</div>
</body>
<script>
window.__coverage__ = ${JSON.stringify(coverage)}
</script>
</html>
`)
})
Loading