Commit Graph

60 Commits

Author SHA1 Message Date
Oliver Stöneberg bc58f55c6e
donate-cpu: greatly improved `LibraryIncludes.get_libraries()` performance / some optimizations and cleanups (#4273)
* donate_cpu_lib.py: use `os.path.join()`

* donate-cpu: removed remaining usage of `os.chdir()`

* donate_cpu_lib.py: moved library includes code into class

* donate_cpu_lib.py: pre-compile library include regular expressions

* donate_cpu_lib.py: pre-compile some more regular expressions

* donate_cpu_lib.py: small unpack_package() cleanup and optimization

* donate_cpu_lib.py: added some information about the extracted files to unpack_package()

* donate_cpu_lib.py: bumped version

* added test_donate_cpu_lib.py

* donate_cpu_lib.py: greatly improved `LibraryIncludes.get_libraries()` performance

only scan each file once for previously undetected libraries only

* test_donate_cpu_lib.py: fix for Python 3.5

* scriptcheck.yml: added `-v` to pytest calls so we get the complete diff on assertions

* fixed `test_arguments_regression()` Python tests with additional pytest arguments

* donate_cpu_lib.py: use `subprocess.check_call()`

* test_donate_cpu_lib.py: sort results to address differences in order with Python 3.5
2022-07-13 21:09:29 +02:00
Oliver Stöneberg 1d9b6e1aac
donate-cpu: fixed library detection (#4261) 2022-07-12 19:39:07 +02:00
orbitcowboy 6f303ce61c daca@home: Set '--inline-suppr' flag. 2022-06-21 16:18:12 +02:00
Daniel Marjamäki 31560299f8 donate-cpu: skip torture test file 2022-05-20 23:20:16 +02:00
orbitcowboy a6b8bb5950 donate_cpu: Added '<sys/uio.h>' to bsd include list. 2022-04-26 09:46:18 +02:00
chrchr-github bd9f5231b8
Fix #10179 FP divideSizeof with dereferenced pointer-to-pointer (#3786) 2022-04-10 22:47:27 +02:00
Oliver Stöneberg dcaff3b635
donate_cpu_lib.py: some cleanups (#3916) 2022-03-21 18:46:19 +01:00
Oliver Stöneberg 469575cb21
donate_cpu_lib.py: actually make compile_cppcheck() fail when the build fails / some cleanups (#3830) 2022-03-19 20:06:11 +01:00
Oliver Stöneberg d3ba5a0829
donate-cpu.py: added "--packages" parameter to specify a list of packages to process (#3742) 2022-02-14 12:59:38 +01:00
Rikard Falkeborn d105f3b05f
Minor improvements to package selection in test-my-pr/donate-cpu (#3754) 2022-01-26 11:36:58 +01:00
guillaume-uH57J9 dfd22919bc
donate_cpu_lib.py: fix callstack capture, fix dependency check (#3665)
* donate_cpu_lib.py: fix callstack capture, fix dependency check

check_requirements: verify that module psutil is available. 
scan_package: collect crash callstack regardless of cppcheck_path and cppcheck version

* donate_cpu_lib.pu: remove debug code

* donate_cpu_lib.py: add parameter capture_callstack
2022-01-02 22:16:00 +01:00
guillaume-uH57J9 a3560aaf5a
Better git usage in donate-cpu.py to reduce bandwidth and disk usage (#3584)
* Better git usage in donate-cpu.py to reduce bandwidth and disk usage

Main changes:
* Bump client version
* Move try+retry logic to function try_retry to reduce duplication
* Use exponential backoff for try_retry
* git clone with --depth=1 to reduce bandwidth and disk use
* Use multiple worktree to work with multiple versions, instead of back-and-forth checkouts

* donate-cpu.py fixes for review comments and automated check failures

* Move compile_cppcheck within (if ver == 'main) branch to avoid duplicate compile_cppcheck+compile_version cals
* Use classic format syntax for python 3.5 compatibility
* Fix undefined CalledProcessError detected by pylint

* donate-cpu.py code changes following code review

* Migration existing "cppcheck" directory if available instead of "git clone"
* Logging message tweaks
* Use subprocess' cwd parameter instead of os.chdir() to avoid risk around changing and not restoring the working directory

* Update tools/test-my-pr.py to account for donate_cpu_lib changes

* donate-cpu.py: ensure correct workspace locations with relative --work-path
2021-12-19 18:52:36 +01:00
Oliver Stöneberg 7004ceb691
donate_cpu_lib.py: fixed detection of ThreadExecutor error (#3521) 2021-10-24 11:02:51 +02:00
Oliver Stöneberg 48d5f47e73
Fix #10509 (donate_cpu_lib.py: fixed stupid error in lookup of signal in internal error) (#3503) 2021-10-13 14:51:56 +02:00
Oliver Stöneberg 85b02e4ecb
Fix #10509 (improved signal detection daca@home client) / also optimized stack trace generation (#3157) 2021-10-11 19:07:19 +02:00
Oliver Stöneberg 3f8e523c71
donate_cpu_lib.py: some cleanups (#3490) 2021-10-09 14:51:24 +02:00
Alfi Maulana aab5b39e2d
feat: add support for .ipp and .ixx extensions (#3383) 2021-08-09 10:46:56 +02:00
Oliver Stöneberg f8edb7b6e6
various daca@home client cleanups (#3161) 2021-03-06 12:34:12 +01:00
Oliver Stöneberg 0c6bb44ea5
donate_cpu_lib.py: fixed timeout handling - again (#3158) 2021-03-02 10:05:49 +01:00
Oliver Stöneberg 4b1d1ebe41
donate_cpu_lib.py: fixed potential hang in timeout handling (#3155) 2021-03-01 22:17:00 +01:00
Oliver Stöneberg be62fab737
donate_cpu_lib.py: improved timeout reporting and process handling (#3153) 2021-02-27 03:19:08 +01:00
Oliver Stöneberg 4dd7b2e958
donate_cpu_lib.py: reduced daca timeout to 1800 seconds (#3140) 2021-02-20 13:44:14 +01:00
orbitcowboy 01c434f8bf donate_cpu: Auto detect ntl-library 2021-01-04 16:28:05 +01:00
orbitcowboy c643e7e7b5 donate_cpu: Improved auto detection of bsd library configuration 2020-12-28 18:08:36 +01:00
orbitcowboy 922e2b5713 donate_cpu: Added auto detection for GiNaC 2020-12-28 17:41:16 +01:00
orbitcowboy 28b4d1a6b3 donate_cpu: Auto detect pcre.h 2020-12-28 09:30:39 +01:00
orbitcowboy 81be03fd6d donate_cpu: Incremented client version. 2020-12-27 14:41:36 +01:00
orbitcowboy 4ab5b33cc7 donate_cpu: Auto detect wxSqlite3 includes 2020-12-27 12:44:56 +01:00
Oliver Stöneberg 018b26a4ef
donate_cpu_lib.py: fixed some cases with missing error information / cleanups (#2982) 2020-12-26 17:59:19 +01:00
orbitcowboy 23c7621b24 donate_cpu_lib.py: Improved auto detection of bsd config 2020-12-18 13:23:41 +01:00
orbitcowboy 52e6bd76c4 donate_cpu_lib.py: Improved auto detection of bsd config 2020-12-18 13:21:49 +01:00
orbitcowboy 099d4ce574 donate_cpu: Add another header to auto detect BSD configuration. 2020-12-12 17:36:31 +01:00
orbitcowboy 4b079c8934 donate_cpu: Add rule for automatically activate bsd.cfg 2020-12-12 17:29:25 +01:00
orbitcowboy d37ddc7114 donate_cpu_lib.py: Formatted Qt list, there are no functional changes 2020-10-04 18:42:59 +02:00
orbitcowboy 9d2564993a donate_cpu_lib.py: Improved Qt config detection by adding more Qt-headers. 2020-10-04 18:31:30 +02:00
orbitcowboy 71f5e5bb46 donate_cpu_lib.py: Improved detection of Qt-includes by adding <QMetaType> 2020-10-03 20:38:42 +02:00
orbitcowboy 1886a43f98 donate_cpu_lib.py: Improved detection of Qt headers: added <Qtest> detection. 2020-10-03 20:15:08 +02:00
orbitcowboy 5eb718f9b4 donate_cpu_lib.py: Improved detection of GTK headers 2020-10-03 19:36:32 +02:00
orbitcowboy 0b62ca7250 donate_cpu.py: Improved detection of Qt headers 2020-10-03 12:19:02 +02:00
orbitcowboy 14f70cf131 Attempt to make travis happy 2020-10-02 20:45:06 +02:00
orbitcowboy b19e631292 Added macros from ICU-Project (ref. to https://unicode-org.github.io/icu-docs/apidoc/released/icu4c/index.html). This found by daca@home. 2020-10-02 20:01:06 +02:00
firewave fa7e687853 donate_cpu_lib.py: fixed Python error 2020-06-15 22:12:22 +02:00
Daniel Marjamäki e2c99ee697 donate_cpu: master branch was renamed to main 2020-06-15 19:46:34 +02:00
Sebastian feb767a66b
donate_cpu_lib.py: Fix that timed out analyses are handled as crashes (#2561)
Sometimes it could happen that SIGSEGV is thrown when Cppcheck is killed
because of a timeout. Then the execution is wrongly handled as a crash
and debugged with gdb instead of marking it as timed out.
This fixes that issue by checking the time out before checking sig_num.
2020-02-28 08:12:10 +01:00
Rikard Falkeborn 73ee317866
donate_cpu: Fix timeout if multithreaded (#2510)
Highly inspired by https://stackoverflow.com/a/4791612.
2020-02-25 11:49:56 +01:00
Rikard Falkeborn b13ae83845
donate_cpu: Use with ... as (#2520) 2020-02-03 10:27:32 +01:00
Rikard Falkeborn 0d361f8a2e
test-my-pr: Retry if failed to get package (#2515) 2020-02-02 18:00:36 +01:00
Sebastian 206eb0f527
Fix #9584: Limit stack trace depth in daca@home crash page (#2502)
This limits the backtrace to a maximum of 50 entries.
Trac ticket: https://trac.cppcheck.net/ticket/9584
2020-01-25 15:20:06 +01:00
Sebastian 2d95c35974
Donate CPU/test-my-pr: Add timeout for the Cppcheck execution (#2500)
This adds a timeout of 60 minutes for the Cppcheck analysis.
Timed out results do not count as crash but they are uploaded and
marked with "TO!" in the list of the latest results. No "diff" is
generated for timed out results so they do not add wrong entries to
the "Diff report".
In test-my-pr.py the timed out results are listed separately just like
the crashes.
donate-cpu-server.py: Add timeout report
2020-01-24 12:33:51 +01:00
Sebastian d8e0f40663
donate-cpu/test-my-pr: Minor fixes (PEP 8, old Python 2 code, ...) (#2499)
* donate-cpu/test-my-pr: Minor fixes (PEP 8, old Python 2 code, ...)

* test-my-pr.py: Add Python 3 shebang
2020-01-21 14:27:39 +01:00