Roland Rossgotterer
a7509669f9
Refactor crashpad initialization
...
Crashpad handler was initialized quite late since we were waiting for settings. However the settings in crashpad are persistent itself, hence we can start it at the earliest possible time and change the upload settings independently later. The only prerequisite is to have QCoreApplication constructed in order for the application name to be available.
ref T652
2019-05-13 11:21:05 +02:00
Klaus Basan
0d0e093330
Download related:
...
* Info which URL failed
* log redirects
* disabled CNetworkUtils::setSwiftClientSslCertificate(copiedReques
2019-04-11 22:12:05 +01:00
Roland Rossgotterer
04787bbf39
Fix MinGW build failure
2019-04-11 22:11:49 +01:00
Klaus Basan
94513951e1
Added backtrace attributes for Qt version and platform
2019-04-11 22:11:38 +01:00
Klaus Basan
f080f0bb86
Cmd.line arg --skipsa to skip "single application check". Allows to run multiple clients on one machine.
2019-04-11 22:11:37 +01:00
Klaus Basan
60b3c16120
Ref T401, crash simulation improvements
...
* sub-directory paths in directory utils
* no UI simulated crash in release builds
* no upload rate in local developer builds
2019-04-11 22:11:31 +01:00
Mat Sutcliffe
e9a4c49d68
Ref T547 Update license masthead in all source code files.
2019-02-22 20:36:43 +00:00
Klaus Basan
16dd6d7451
Ref T401, crash handling in application
...
* function to simulate crash
* init crash info so file is written + add arguments for handler
* enable / disable uploads
2019-02-22 20:36:31 +00:00
Roland Rossgotterer
50e82c26c6
Add current log file as file attachment to crash dump
...
ref T401
2019-02-22 20:36:24 +00:00
Klaus Basan
ddd44edebd
Ref T528, test if simulator interface can be used (only possible in local UI, not in remote UI)
2019-02-22 20:36:08 +00:00
Klaus Basan
1b7f1b1662
Minor reader formatting/comments
2019-02-22 20:36:07 +00:00
Mat Sutcliffe
077fd8c35a
Ref T525 Avoid directly calling getLogCategories.
2019-02-22 20:35:52 +00:00
Mat Sutcliffe
fe7a45afcf
Ref T516 Update CStatusMessage call sites to use new syntax.
2019-02-22 20:35:51 +00:00
Klaus Basan
8c3faa4ca9
Ref T489, support download progress in our readers
...
* signal for download progress per entity (DB reader)
* ProgressSlot
* changed signatures for ProgressSlot
2019-02-22 20:35:00 +00:00
Klaus Basan
5c785643c7
Ref T484, string improvements
2019-02-22 20:35:00 +00:00
Mat Sutcliffe
225ff81252
Ref T485 Adjust CLogMessage and CStatusMessage call sites to use the new API.
2019-02-22 20:34:55 +00:00
Mat Sutcliffe
d6b5dca6b2
Return a default-constructed QString instead of implicitly converting an empty string literal.
2019-02-22 20:23:49 +00:00
Mat Sutcliffe
6c05c5249d
When calling arg() on a QString constructed from a literal, use QStringLiteral.
2019-02-22 20:23:47 +00:00
Klaus Basan
a09d7191f3
Ref T456, user statistics monitored at backend
...
* values for simulator/network
* changed concept a bit so crash handler values are used for statistics as well
2018-12-16 00:22:33 +01:00
Roland Rossgotterer
686f8a478e
Update crashpad
...
crashpad is now also supported on Linux. Therefore build it everywhere except under Windows MinGW.
2018-12-16 00:22:00 +01:00
Roland Rossgotterer
08558a0803
Change crashreport url to to backtrace.io
...
From now on, all crashreports will be submitted to backtrace.io url. Backtrace.io also requires a different set of annotations.
2018-12-11 17:42:49 +01:00
Klaus Basan
42af510342
Check for minimum mapping version
...
* check functions in gui application/application
* check for instance mapping wizard
* check on mapping tool's stashing component
2018-12-05 04:03:59 +01:00
Klaus Basan
3c20590293
Allow a forced update of the setup reader
...
When the network is down it can happen the bootstrap file request is not yet timed out but we use our own time out.
In that case we check the cached data upfront by faking a failed web read.
2018-12-05 04:03:43 +01:00
Mat Sutcliffe
df563d5b29
Fixes needed to compile swift with MSVC with the /permissive- switch
...
which enables more C++ standard conformance.
2018-11-16 02:49:55 +01:00
Klaus Basan
dfd33e40c1
Detect emulated driver before casting to avoid crashs
2018-11-16 02:49:51 +01:00
Klaus Basan
17382a0019
Ref T401, update functions for crashpad info in CApplication
2018-11-04 17:43:06 +01:00
Klaus Basan
d7380966de
Style
2018-11-04 17:42:44 +01:00
Klaus Basan
4a82621a1d
Ref T400, swift needs to start even without network connection, especially for mapping tool
...
* count errors and call "manageSetupAvailability" to update cache availability
* minor adjustments
2018-11-04 17:42:43 +01:00
Roland Winklmeier
f6ea2a9107
Move CInputManager from singleton to CApplication member
...
The main reason why CInputManager was singleton is the easy access across
the code. That had the negative side effect that time of destruction was
at a very late stage of the shutdown and could not be controlled by us.
My moving it to CApplication, the access is equally easy (using sApp) and
allows to be cleaned up properly during graceful shutdown.
ref T391
2018-11-04 17:42:42 +01:00
Klaus Basan
705a56b1cb
Ref T401, adjusted settings used in components
2018-11-04 17:42:42 +01:00
Klaus Basan
fe99eb261b
Ref T367, Ref T400 signal and read handling
...
* connect this->setupHandlingCompleted directly with reader + renaming
* do not waitForSetup if request already failed
2018-11-04 17:42:41 +01:00
Roland Winklmeier
832082c5bc
Delay creating input devices to when required
...
Every first call to CInputManager::instance() was automatically creating
the low level input devices. This was not always desired and therefore
creation is now explicit via function.
Unit tests do not need the devices created. In contrast, Windows unit tests
failed since Windows didn't like the Jenkins service childs to allocate
DInput devices.
T391
2018-10-07 16:17:28 +02:00
Roland Winklmeier
c42900f959
Release input devices when application is shutdown
...
If they are released with the deallocation of CInputManager, we might
run into global deallocation hell.
Also on Windows release all DirectX devices before COM library is closed.
ref T391
2018-10-07 16:17:26 +02:00
Mat Sutcliffe
f42d42487d
Ref T314 Change CApplication::m_networkWatchDog from a smart pointer to a raw pointer.
...
Attempting to manage a worker's lifetime with a smart pointer is a mistake.
It can lead to double-delete or premature-delete bugs, and race conditions.
Workers self-manage their own lifetimes.
2018-10-05 17:39:56 +02:00
Klaus Basan
4406174668
Ref T341, crash prevention as seen in https://crashreports.swift-project.org/crashreports/81
2018-09-09 02:53:36 +02:00
Klaus Basan
09ab653cf9
Reduced number of (unnecessary) network status messages
2018-09-08 15:36:21 +02:00
Klaus Basan
5096df034b
Ref T314, thread CContinuousWorker::finish
...
- use application thread if there is no owner
- use QPointer for owner
- more detailled error message
2018-08-31 20:08:06 +02:00
Klaus Basan
755455e8a4
Style, in CGuiApplication sGui can be used as guard (no QPointer needed)
2018-08-16 14:33:54 +02:00
Klaus Basan
0327776edd
Ref T295, based on bug report of RP (no WIFI detected) creating a network report
...
* network report when starting swift
* also ignore inactive configs when checking for "the bearer bug"
references:
https://stackoverflow.com/questions/51824242/disable-qt-bearer-management-at-runtime
https://swift-project.slack.com/archives/G7GD2UP9C/p1534181224000115
https://swift-project.slack.com/archives/G96QTUBEG/p1534162173000320
2018-08-16 14:33:52 +02:00
Klaus Basan
c0ca56ee93
Ref T295, fix for the "no network config" issue
...
* details: https://stackoverflow.com/questions/51686943/no-qnetworkconfiguration-although-i-can-connect-to-wifi
* network accessibility check can be disabled if network config looks suspicious
* using QNetworkConfigurationManager
2018-08-09 01:25:18 +02:00
Klaus Basan
c282d4e1f8
Ref T295, network watchdog optimizations
...
* constructor can pass network accessibility as default
* ping URL now constructed in global setup
* watchdog will prevent unnecessary signals by checking if state has really changed (there are redundant QAM signals for QNetworkAccessManager::networkAccessibleChanged)
* refactorings, thread checks
2018-07-31 01:43:32 +02:00
Klaus Basan
5966a1ead4
Display platform in title bar (easier to identify screenshot)
2018-07-27 23:33:14 +02:00
Klaus Basan
a6ee6d4b72
Ref T292, Ref T285 minor style improvements, renamings
2018-07-26 04:32:38 +02:00
Klaus Basan
6f8d980d2c
Exclude some more cmd line args. from being passed from launcher
2018-06-13 13:59:47 +02:00
Klaus Basan
87b96f8910
Cleanup: toFormattedQString was not really used and just redirecting toQString
...
* marked deprecated
* and replaced by toQString
2018-06-13 13:59:35 +02:00
Roland Winklmeier
4aaccb44c3
Cleanup the enabled modules in all sub projects
...
Most modules were just enabled to add include path for dependent headers
2018-06-02 02:08:46 +02:00
Klaus Basan
c7f77c6892
Load settings before contexts are loaded, see https://swift-project.slack.com/archives/G7GD2UP9C/p1527537764000022
...
* load local settings before core facade is created
* or load it in the next step, in case there are no contexts
2018-06-01 01:30:50 +02:00
Klaus Basan
f7a0c69fc8
Ref T270, push front for sequence and unified "insert" -> "push_back"
...
Remark: "CSequence::insert" is a synonym "push_back". This makes it clearer that push_back is used.
2018-06-01 01:30:33 +02:00
Klaus Basan
4eeaf1adc4
Smaller adjustments of unit test and application
2018-06-01 01:30:26 +02:00
Klaus Basan
fc35e8b654
Formatting, style
2018-05-22 13:23:47 +02:00