48 Commits

Author SHA1 Message Date
Oliver Stöneberg
0f28f3e493
generate AddonInfo only once (#4958)
Currently the `AddonInfo` is generated and discarded on each addon
invocation. This leads to an unnecessary process invocation for each
addon on each file.

Also if an addon is completely broken we will still perform the whole
analysis only for it to be failed at the end so we should bail out early
if we know it doesn't work at all.
2023-10-08 21:28:57 +02:00
Oliver Stöneberg
3ba53c6b6a
fixed #12022 - disallow using --project with source files (#5515) 2023-10-08 09:07:15 +02:00
Oliver Stöneberg
5a52fa80fb
refs #12022 - disallow multiple --project options (#5499) 2023-10-05 21:36:44 +02:00
Oliver Stöneberg
fc700b68eb
refs #4452 / refs #11705 - improved --showtime= behavior and testing (#4876)
This is a step onto leveraging the `ThreadExecutor` implementation for
`ProcessExecutor` which is a follow-up to #4870. We need to have the
proper test coverage and the existing implementations working as
expected before we move to the shared code.

Fixes:
- added `--showtime=` tests for all executor implementations
- only print `--showtime=summary` once at the end
- prevents `--showtime=` by multiple threads to be written at the same
time - essentially breaking the output
- reset the timer results before each test
- deprecated `top5` in favor of `top5_file`
- fixed printing for all executors except `ProcessExecutor`
2023-10-05 19:04:06 +02:00
Oliver Stöneberg
98ce46a3e5
fixed #11919 - Removed deprecated command-line options --template <template> and --template-format=<template> (#5439) 2023-09-12 22:46:40 +02:00
Oliver Stöneberg
64cd09ab62
fixed #11917 (Default to native platform in Windows builds) (#5428) 2023-09-11 11:08:23 +02:00
Daniel Marjamäki
c816aecae4 releasenotes.txt: start new notes for 2.13 2023-09-10 17:08:14 +02:00
Oliver Stöneberg
3cbbb77335
fixed #11926 (Treat MacOS filesystem as case insensitive) / TestPath: added more tests (#5412) 2023-09-08 17:33:37 +02:00
Oliver Stöneberg
ce780177b2
fixed #11910 - removed Visual Studio x86 targets from project files and builds from CI (#5397)
Windows XP Pro x64 was released on April 25, 2005 and consumer
processors supporting x86-64 have been around almost as long. Although
there are still 32-bit Windows images available there is not much of a
point maintaining support for these. We also never did any x86 builds
for non-Windows platforms in CI so we don't even know if we work on
those. You might still be able to build 32-bit binaries via CMake.
2023-09-04 19:40:13 +02:00
Daniel Marjamäki
44c149e51b
Fix #11897 (Safety: show what checks are enabled/disabled) (#5378)
This primarily adds the corresponding report in the GUI that we have in
the command line already
2023-08-31 18:28:47 +02:00
Oliver Stöneberg
ad1caa8100
report internalError when command execution returns errorcode / also some related cleanups and tests (#5037)
Encountered while investigating https://trac.cppcheck.net/ticket/11708.

This has been like this since the introduction of `internalError` in
b6bcdf29363a25112b8884fc9944237f1461402d (almost ten years ago to the
day). Logging internal errors which bail out(!) of the analysis simply
to `std::cout` for them possibly never to be seen (and also not affected
the exitcode) is pretty bad IMO. They should always be visible.

I also removed the filename from the message as it is already available
(and thus redundant) and its existence should be defined by the
template.
2023-08-31 13:33:29 +02:00
Paul Fultz II
03b952d5eb
Fix 11579: false negative: knownConditionTrueFalse with non-bool as bool parameter (#5349)
This adds a new checker to check for pointer to bool conversions that
are always known. I removed the previous knownConditionTrueFalse checks
since this was too noisy.
2023-08-20 22:32:41 +02:00
Oliver Stöneberg
c7f88db90a
CmdLineParser: deprecated --template <template> and --template-location <template> (#5331)
Both are bugprone since they just take the next parameter which doesn't
start with `-`.

Also `--template` has not been documented since
17842394c00fd0288abfed509baad76aa3a5f2e9 back in 2011(!). And
`--template-location` has never been documented since its induction in
f058d9ad083a6111e9339b4b3506c5da7db579e0. That's also why we can have a
short deprecation period.
2023-08-18 11:59:14 +02:00
chrchr-github
76ffd21ecf
Update releasenotes.txt [skip ci] (#5313) 2023-08-11 16:49:49 +02:00
Oliver Stöneberg
de9795b07b
deprecated qmake build system / removed Qt5 fallback when using USE_QT6=On (#5271)
QT 5 is now completely EOL and since we never supported Qt6 in qmake
which also has various shortcomings, it is time to at least deprecate it
and direct users to CMake instead.
2023-08-09 22:40:15 +02:00
Daniel Marjamäki
353f54089c releasenotes.txt: bumped version to 2.12 2023-06-22 13:53:40 +02:00
Paul Fultz II
1ad51ed01a
Update releasenotes.txt (#5180) 2023-06-22 10:40:36 +02:00
Oliver Stöneberg
b5ce2c708b
SingleExecutor: process markup files after code when scanning projects (#4972)
* SingleExecutor: added TODOs

* test `SingleExecutor` with files and project

* SingleExecutor: process markup files after code when scanning project

* TestSingleExecutor: generate scoped files before calling executor

* CI-unixish.yml: added `--output-on-failure` to CTest call

* helpers.cpp: improved error reporting in `~ScopedFile()`

* use unique filenames in executor tests to avoid collisions

* fixed `functionStatic` selfcheck warnings
2023-05-03 17:32:28 +02:00
Daniel Marjamäki
12118d8d67 Document --check-level better 2023-04-11 15:30:07 +02:00
Oliver Stöneberg
f5e51eace7
do not use string-to-integer conversions without error handling (#4906) 2023-04-08 22:29:09 +02:00
Daniel Marjamäki
89a95ddc8f --performance-valueflow-max-if-count: review comments 2023-04-08 13:07:28 +02:00
Paul Fultz II
93b4de36cd
Update constVariable IDs for references and pointers (#4904) 2023-04-07 20:14:53 +02:00
Oliver Stöneberg
30131837b5
refs #11603 - deprecated --enable=information implicitly enabling missingInclude (#4865) 2023-03-09 20:04:20 +01:00
Oliver Stöneberg
7fd4118d60
Fix #10039 (integrate --check-config include findings with normal analysis) / also fixes #11283 (#3229) 2023-03-04 09:02:35 +01:00
Oliver Stöneberg
14e78e1800
greatly improved error handling in Cppcheck project file parsing / some cleanups (#4752) 2023-02-08 20:30:43 +01:00
Oliver Stöneberg
1a460d7bc0
bumped version to 2.11 (#4751) 2023-01-29 15:18:22 +01:00
Oliver Stöneberg
f16ffd88e9
deprecate non-native platform being used by default in Windows builds (#4734)
* deprecate non-`native` platform being used by default in Windows builds

* test-helloworld.py: avoid deprecation warnings
2023-01-27 10:46:48 +01:00
Oliver Stöneberg
a0b1285f4a
added CMake option BUILD_CORE_DLL to build lib as cppcheck-core.dll with Visual Studio (#4733) 2023-01-26 22:13:07 +01:00
Oliver Stöneberg
38abeccd24
added command-line option --disable=<id> to disable individual checks (#4712) 2023-01-21 10:39:44 +01:00
Oliver Stöneberg
2cd8bb94e4
some small CmdLineParser cleanups and improvements (#4654) 2022-12-19 22:28:36 +01:00
Oliver Stöneberg
9542a7b3cc
Makefile: some cleanups / added VERBOSE option (#4438) 2022-09-09 15:06:40 +02:00
Paul Fultz II
e715ba1d3c
Update releasenotes.txt (#4405) 2022-08-27 07:05:16 +02:00
chrchr-github
0e788fb697
Update releasenotes.txt (#4404) 2022-08-26 23:24:25 +02:00
Oliver Stöneberg
1202efb438
some --exception-handling related improvements (#4368) 2022-08-20 20:54:31 +02:00
orbitcowboy
dfbc4afc59 Mentioned changes from LCppC in release notes: 9eb16e1002. 2022-06-19 12:03:08 +02:00
PKEuS
82af702c6f
LCppC backport: Restored Check: Detect negative VLA and allocation (new[]) sizes (#4187) 2022-06-11 09:55:38 +02:00
Daniel Marjamäki
c9073682ca 2.9: empty release notes 2022-05-21 19:15:26 +02:00
orbitcowboy
093d9514e5 Updated release notes 2022-05-20 10:16:41 +02:00
Paul Fultz II
3e3abecba0
Rename old uninitvar ID to use legacyUninitvar (#4043) 2022-04-27 17:37:37 +02:00
chrchr-github
00badff622
Fix #10315 FP functionConst (#3997)
* Fix #10315 FP functionConst

* Update releasenotes.txt
2022-04-11 22:55:16 +02:00
Paul Fultz II
98f84e34c6
Update releasenotes.txt with some changes (#3992) 2022-04-11 07:24:12 +02:00
Daniel Marjamäki
55a0227af9 releasenotes: start fresh 2022-02-05 13:57:13 +01:00
Paul Fultz II
8668d445c7
Add support for string_view (#3480) 2021-10-05 08:28:19 +02:00
Daniel Marjamäki
ca26f2bdda Add releasenotes document in repo 2021-09-27 07:57:24 +02:00
Daniel Marjamäki
b31b56fbe9 releasenotes : removed this file 2008-12-31 09:07:01 +00:00
Daniel Marjamäki
75ec9f5c86 releasenotes : edit 2008-12-30 18:45:06 +00:00
Reijo Tomperi
56de5ece91 releasenotes updated command line options made more accurate 2008-12-28 16:01:26 +00:00
Daniel Marjamäki
dbe56e2574 releasenotes : Added release notes for the coming 1.27 release 2008-12-28 14:41:22 +00:00