Mathias Vorreiter Pedersen
58f4b7696d
Merge pull request #13223 from geoffw0/useasnominaltypedecl
...
Swift: Use asNominalTypeDecl more.
2023-05-19 16:53:28 +01:00
Alexandre Boulgakov
b3e76d6052
Swift: Drop support for plaintext diagnostics (and helpLinks).
...
The recommended option is Markdown diagnostics, and we have already migrated everything to emit them. The empty help link we're currently emitting everywhere is a bug.
2023-05-19 15:16:02 +01:00
Alexandre Boulgakov
110b766770
Swift: Add a . to a test message to match the logging API change in this PR.
2023-05-19 14:46:12 +01:00
Alexandre Boulgakov
1e9b849e93
Merge branch 'main' into redsun82/swift-diagnostics-wording
2023-05-19 14:43:01 +01:00
Alexandre Boulgakov
8f7279ee05
Swift: TSP message wording changes.
2023-05-19 14:39:57 +01:00
Alexandre Boulgakov
5bb2eb4155
Swift: TSP message wording changes.
...
Co-authored-by: Isaac Brown <101839405+isaacmbrown@users.noreply.github.com >
2023-05-19 14:37:18 +01:00
Alexandre Boulgakov
137b4a99ef
Swift: TSP message wording changes.
...
Co-authored-by: Isaac Brown <101839405+isaacmbrown@users.noreply.github.com >
2023-05-19 14:36:24 +01:00
Alexandre Boulgakov
ddcac20a94
Swift: TSP message wording changes.
...
Co-authored-by: Isaac Brown <101839405+isaacmbrown@users.noreply.github.com >
2023-05-19 14:36:14 +01:00
Alexandre Boulgakov
8a15af5614
Swift: TSP message wording changes.
...
Co-authored-by: Isaac Brown <101839405+isaacmbrown@users.noreply.github.com >
2023-05-19 14:36:04 +01:00
Geoffrey White
68bdd51dd3
Swift: Add QLDoc encouraging this pattern.
2023-05-19 14:35:08 +01:00
Geoffrey White
0d8aa825d9
Swift: Use asNominalType() more widely to include things declared in extensions.
2023-05-19 14:19:32 +01:00
Geoffrey White
ccbd041875
Swift: Use asNominalTypeDecl() to simplify models.
2023-05-19 14:04:49 +01:00
Mathias Vorreiter Pedersen
2206216dbb
Merge pull request #13221 from geoffw0/filepath
...
Swift: Taint model for FilePath
2023-05-19 14:01:22 +01:00
Geoffrey White
c8dfc87dae
Swift: getName -> getFullName.
2023-05-19 12:18:17 +01:00
Geoffrey White
13755ad5f5
Swift: Remove placeholder lines I had left in.
2023-05-19 11:42:00 +01:00
Geoffrey White
6dfad79972
Swift: Model FilePath.
2023-05-18 18:56:08 +01:00
Geoffrey White
371bcc55fa
Swift: Consolidate and extend tests of taint flow through FilePath.
2023-05-18 18:01:38 +01:00
Alexandre Boulgakov
fa52c32564
Merge pull request #13170 from github/sashabu/internal-error-tsp
...
Swift: Emit diagnostics on assertion/expectation violations.
2023-05-18 17:19:43 +01:00
Alex Denisov
7e15386376
Swift: bump all versions to 0.1.0
2023-05-17 11:28:28 +02:00
Alexandre Boulgakov
060a48571a
Swift: Emit diagnostics on assertion/expectation violations.
2023-05-16 19:40:00 +01:00
Alexandre Boulgakov
7ada125299
Swift: Support fmtlib for assertions/expectations.
...
Specifically, this adds custom formatters using `path::operator string()` and `error_code::message()` and dereferences a (non-empty) optional. `fmtlib` provides formatters for these standard library types in `fmt/std.h`, but that file also requires RTTI (which we disable) for `std::exception` so we can't use it without either patching `fmtlib` (which they're open to: https://github.com/fmtlib/fmt/issues/3170 ) or enabling RTTI (which will require some consideration).
2023-05-16 18:33:28 +01:00
Mathias Vorreiter Pedersen
99545420d5
Merge pull request #13177 from MathiasVP/recommend-secure-randomness
...
Swift: Recommend a proper source of randomness in `swift/hardcoded-key`
2023-05-16 18:04:13 +01:00
Mathias Vorreiter Pedersen
9def3dd440
Update swift/ql/src/queries/Security/CWE-321/HardcodedEncryptionKey.swift
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2023-05-16 17:42:34 +01:00
Geoffrey White
3bd16fa1d8
Merge pull request #13184 from geoffw0/docconsistency
...
Swift: Mirror changes made in the tutorial docs.
2023-05-16 17:42:03 +01:00
Mathias Vorreiter Pedersen
f5be8cfe58
Merge pull request #13167 from geoffw0/sensitivefps
...
Swift: Fix some FPs from the sensitive data library
2023-05-16 17:12:47 +01:00
Paolo Tranquilli
42d40900d3
Swift: reword TSP diagnostics after doc team review
2023-05-16 17:52:02 +02:00
Paolo Tranquilli
fc9fe13278
Merge pull request #13181 from github/redsun82/swift-diagnostics-enable-warnings
...
Swift: turn internal error into a TSP warning
2023-05-16 17:20:46 +02:00
Paolo Tranquilli
7e61e99e4a
Swift: make help links optional argument more explicit
2023-05-16 16:52:22 +02:00
Geoffrey White
35b35ec377
Swift: Mirror changes made in the docs.
2023-05-16 14:26:16 +01:00
Paolo Tranquilli
8291b2229a
Swift: turn internal error into a TSP warning
2023-05-16 15:18:29 +02:00
Mathias Vorreiter Pedersen
03ef18b286
Swift: Recommend a proper source of randomness in 'swift/hardcoded-key'.
2023-05-16 11:59:41 +01:00
Alexandre Boulgakov
8db945a11e
Swift: Use ... to find and run all Bazel tests instead of having to list them.
2023-05-15 20:51:31 +01:00
Geoffrey White
4781881a6a
Swift: Improve mobile/phone number regexp.
2023-05-15 15:30:30 +01:00
Geoffrey White
a0cba8cb6b
Swift: Address boolean value FPs.
2023-05-15 14:24:18 +01:00
Geoffrey White
27c8eb301e
Swift: Fix URL-related FPs.
2023-05-15 14:08:43 +01:00
Geoffrey White
e59d7e0345
Swift: Remove assumption that 'username' is not sensitive (in the tests).
2023-05-15 13:58:44 +01:00
Geoffrey White
dba951111a
Swift: Add more sensitive data test cases.
2023-05-15 13:58:44 +01:00
Paolo Tranquilli
10d084fbbf
Swift: update comment
2023-05-15 13:48:24 +02:00
Paolo Tranquilli
cfcd26cf0d
Swift: support markdown TSP diagnostics
2023-05-15 13:48:24 +02:00
Paolo Tranquilli
dbff3e4fa4
Swift: remove unneeded SwiftDiagnosticLogWrapper
2023-05-15 10:08:43 +02:00
Paolo Tranquilli
a2cb331ebe
Swift: remove hacky binlog interception
2023-05-15 10:02:24 +02:00
Paolo Tranquilli
9a555aea5f
Merge branch 'main' into redsun82/swift-diagnostics-locations
2023-05-15 10:01:45 +02:00
Paolo Tranquilli
95cd948f09
Swift: order help links in integration test checks
...
They are currently a set within the codeql cli.
2023-05-14 22:33:48 +02:00
Paolo Tranquilli
d7cc506080
Merge branch 'main' into sashabu/tsp-incompatible-os
2023-05-12 09:58:36 +02:00
Paolo Tranquilli
9ffada31a8
Swift: make internal error telemetry only for the moment
2023-05-12 09:19:44 +02:00
Paolo Tranquilli
cce9352272
Swift: add visibility customization to diagnostics
2023-05-12 09:05:45 +02:00
Paolo Tranquilli
dedbd9ab63
Swift: remove unneeded SwiftDiagnosticsDumper
2023-05-12 08:30:43 +02:00
Paolo Tranquilli
86777fa4c2
Swift: remove obsolete comment
2023-05-12 08:23:14 +02:00
Paolo Tranquilli
03f4625b5f
Swift: go back to explicit DIAGNOSE_ERROR macros
2023-05-12 06:30:58 +02:00
Paolo Tranquilli
3f2a059b3b
Swift: add location support to TSP diagnostics
...
This required a bit of an overhaul of the original integration of
JSON diagnostics into binlog.
The problem is that it is quite hard to add a kind of metadata to
binlog entries without changing its code. Another problem is that when
wanting to avoid double evaluation of logging macro arguments one
cannot really add a separate "diagnose" step easily.
The proposed solution consists in two things:
* hook into a binlog plumbing function by providing a better overload
resolution match, which happens after logging macro expansion,
bypassing the problem of double evaluation
* in that hook, produce the diagnostic directly, without waiting to
reconstruct the diagnostics entry from the binlog serialized entry.
This allows to forgo the weird category to diagnostic mapping, and now a
diagnostics emission simply happens when a diagnostic source is given
as the first argument after the log format string. A flavour of
diganostics sources with locations is then added with the same
mechanism, allowing to write something like
```cpp
LOG_ERROR("[{}] ouch!", internalError.withLocation("foo.swift", 32));
```
2023-05-11 17:52:02 +02:00