Also:
- Surfaced the comment about the Kitware repo so it's more visible
- Remove the hard-coded CMake version in comment which is likely to get out of sync and confuse someone
This should not be used
It results in build failures when using different environments/toolchains that produce new warnings
This can especially happen on compiler or dependency updates
This should only ever be set from the outside, not the project itself
Distribution build systems will set it to the right value
This breaks installing it to a custom if desired
* Bump CI
* Use 2 core arm runner
* Update ChangeLog
* Fixed filename `deskflowc.exe.manifest`
* Remove .vscode/settings.json file
* Restore test values to make tests work (test values should not contain app name)
* Fixed syntax error in Windows watchdog
* Add `sonar-project.properties` file
* Change default core count
* Add default package prefix
* Default product name in CMake
* Tweak ChangeLog
* Use Deskflow Name
* Remove business-oriented options from issue templates
* Remove business-oriented workflow
* Bump version to 3.0.0 (to avoid confusion with previously used version numbers 1.x & 2.x)
* Update readme to reflect new project name and goals
* Found some more "synergy" to rename
* Rename `synlib` to `app`
* Rename `syntool` to `deskflow-legacy`
* Rename `synwinhk` to `dfwhook`
* Rename dirs from synergy to deskflow
* Rename more "Synergy" files
* Rename app bundle ID
* Fixed copyright typo
* Rename only title in serial key dialog (to be moved downstream later)
* Preserve original serial key window for moving downstream
* Restore dialogs ready for moving downstream
* Rename `QDeskflowApplication` to `DeskflowApplication` (the Q is confusing)
* Restore Volker's original project name
* Fixed mimetype
* Fixed weird grammar
* Fixed (more) weird grammar
* Broken link, restoring (but we should move all links out of source)
* Broken link, restoring (but we should move all links out of source)
* Add write permission to valgrind-analysis.yml
* Restore AUR conflicts
* Apply Clang format
* Update ChangeLog
* Back out version change
---------
Co-authored-by: Nick Bolton <nick@symless.com>
* Delete all gcda files when integtests fail
* Update ChangeLog
* Test failure
* Move test dir creation to main
* Undo retry loop which didn't solve the issue
* Use `-fprofile-update=atomic` according to gcov bug 68080
* Use `WINDOWS_RUNNER` var to determine custom runner name
* Remove `if` step
* Change var to `CI_WINDOWS_RUNNER`
* Use other runner vars and fall back to free runners
* Update ChangeLog
* Use `CI_MAC_INTEL_RUNNER`
* Set Mac name depending on var
* Use `CI_LINUX_ARM_RUNNER`
* Change CI var to `CI_ENABLE_PACKAGING`
* Use exclusions to remove ARM runners when var not set
* Switch to `CI_USE_LINUX_ARM_RUNNER` var
* Exclude arm runners if `CI_USE_LINUX_ARM_RUNNER` not set
* Fixed path and actually capture `matrix` as var
* Fixed path
* Add debug step
* Kick build
* Add EOL delimiters
* Move action to composite action for reuse
* Make JSON output pretty
* Add shell prop
* Fixed output var name
* Cleanup debug
* Move debug to same step
* Kick build
* Use `needs` on other jobs
* Also depend unix on setup
* Dirty dirty hack so that beta testers can try Wayland on server ahead of libportal 0.8.x distribution
* Install deps for subprojects that are added with --meson-no-system
* Use `RuntimeError`
* Remove `packagefiles` from `.gitignore`
* Add ignored packagefiles
* Improve comment
* Update ChangeLog
* Add CLI11 lib
* Use newer arg parser for to add --config-toml arg
* Fix bug where coco doesn't run in elevated console
* Improve macro names
* Fixed incorrect macro name
* Improve coverage for TOML config load
* Allow legacy args and use toml config arg in launch.json
* Update ChangeLog
* Fail coverage workflow on integ test fail
* Remove line break
* Use .venv as Python venv dir
* Update refs to Python venv dir and use action to cache and setup
* Add missing shell: bash
* Source for Python deps
* Exclude .venv from lint
* Update ChangeLog
* Add cache-key arg for init-python
* Add missing "
* Use workflow specific Python cache names
* Fixed cache key for Linux
* Use bash if to make output clearer in case of skipping.
* Clearer debug output
* Add check for cache key
* Add missing shell
* Add SonarCloud and Valgrind venv cache
* Fixed typo
* Add experimental BSD job to CI
* Remove container
* cd into ` synergy/synergy/`
* Change unix to bsd
* Use only run param and not prepare
* Install python3 on FreeBSD
* Add missing command to prepare param
* Add all the Unix-like BSD-derived
* Use latest python3 for NetBSD and DragonFly BSD
* Use env for cmd and correct prepare commands
* Add deps config for unix-like
* Install Python deps on Unix-like
* Return matching entry in `get_unix_like_os`
* Add cmake dep for cmakelang py module
* Back out Unix-like support in `install_deps.py` (Python is tricky on BSD)
* Back out BSD from config
* Create install_deps.sh script for BSD-derived
* Use .sh script instead of .py for BSD-derived
* Add other case and fixed syntax
* Use /usr/bin/env
* Use more available sh
* Restore debian command
* Fixed syntax error
* Remove prepare args
* Remove space
* Use which instead of command
* Add libX11 dep
* Add other BSD-derivatives
* Set CMAKE_REQUIRED_INCLUDES
* Fixed bad separator for CMAKE_REQUIRED_INCLUDES
* Add debug lines
* Set CMAKE_REQUIRED_LIBRARIES to lib names
* use CMAKE_REQUIRED_QUIET
* Set CMAKE_REQUIRED_FLAGS for BSD
* Message for BSD packaging
* Make PKG_CONFIG_FOUND optional
* Move debug to all OS
* Remove solaris for now, too many missing packages
* Add missing override to XWindowsScreen.h
* Add PC_GLIB_INCLUDE_DIRS
* Fixed glib include
* Make libnotify optional
* Set CMAKE_LIBRARY_PATH
* Only run tests if toml++ available
* Also run integ tests
* Remove DragonFly (C++ version too old)
* Fixed NetBSD command
* Aww sucks. Well, I tried. Patches welcome
* Update ChangeLog
* Fixed README for OpenBSD, NetBSD, DragonFly BSD, Solaris
* Add missing case for SunOS
* Drop redundant virtual specifiers
* Print libs on FreeBSD
* Restore link_directories
* Beef up to ubuntu-24.04-16-core-x64, export QT_QPA_PLATFORM, improve comment
* Remove debug line
* Simplify debug text
* Restore ubuntu-latest
* Fixed really stupid typo
* Beef up with ubuntu-22.04-16-core-x64
* Revert "Beef up with ubuntu-22.04-16-core-x64"
This reverts commit 3de5773ef6c6eea99b93d3ee8448b0b95dc00dde.
* Add missing name
* Make .sh file primary deps file
* Tweaked deps instruction label
* Fixed OpenSSL exe dir to use tools dir
* Simplify vcpkg caching and use system vcpkg
* Only use ref for version when ref is a tag
* Add condition for event input
* Add restore keys for vcpkg cache
* Improve step name for vcpkg_installed
* Use `windows-2022` runner
* Update ChangeLog
* Revert "Use `windows-2022` runner"
This reverts commit f9e00cbcb3588e58914d2b9e73b3c5734a12d329.
* Brighter red
* Move openssl to vcpkg.exe
* Revert "Move openssl to vcpkg.exe"
This reverts commit 36f39d916f3cc2c8ce779442bd964bd6af7edd69.
* Add missing copyright
* Fix copyright dates
* Remove openssl from choco
* Install openssl using vcpkg
* Add deps for vcpkg
* Add missing vcpkg manifest
* Revert "Add deps for vcpkg"
This reverts commit c266d29c2cec4474a181b89c2f759b62ed67db10.
* Make vcpkg Windows only
* Improve comment about vcpkg
* Remove unused var
* Add caching for vcpkg
* Reorg launch.json
* Remove static env var for openssl on Windows
* Add openssl dep to vcpkg
* Update ChangeLog
* Add OpenSSL include dir
* Remove pointless choco cache
* Remove vcpkg downloads
* Remove wixtoolset for CI already installed on GitHub runners
* Use `Remove-Item` instead of `rmdir`
* Move cmake and ninja out of choco
* Revert "Move cmake and ninja out of choco (winget not supported on GitHub runner)"
This reverts commit a65c02d275e58705b8cd86fac72629284191d737.
* Move cmake and ninja to winget and don't use choco on CI
* Remove winget action
* Use scoop on CI and winget locally
* Use `seanmiddleditch/gha-setup-ninja` for Ninja
* Improve comments
* Install Ninja before deps
* Use system vcpkg if installed
* Revert "Use system vcpkg if installed"
This reverts commit 4ddee1c66e8cace458c047285a70d2f98cf9d82c.
* Add comment about why we're using local vcpkg
* Fixed comment about VC++
* Improve config comments
* Delete dead code
* Improve comment about vcpkg/buildtrees
* Add libei and libportal
* Port libei and libportal code by Peter Hutterer and Olivier Fourdan
* Add Peter Hutterer and Olivier Fourdan to important devs list
* Improve error handling for libei and libportal builds
* Checkout libportal tags/0.7.1
* Hack out the gi-docgen clone
* Remove new submodules in favor of using ExternalProject_Add
* Remove submodule dirs
* Use ExternalProject_Add instead of submodules
* Fixed namespace
* Hack to work around type libportal causing type conflicts
* Add log helper functions
* Use original log functions
* Switch to FetchContent, use libportal a1530a9 (unreleased) and use camelCase member names for consistency
* Restore a few events (much more work required)
* Add TODOs for supporting multiple lib versions
* Revert "Switch to FetchContent, use libportal a1530a9 (unreleased) and use camelCase member names for consistency"
This reverts commit 610cebb5b6a08282eee68f4424fcdbe9eaab4bf9.
* Simplify cmake config by removing builds for libei and libportal (will do this in `install_deps.py` instead)
* Remove submodules
* Remove .gitmodules
* Use meson to build subprojects
* Update copyright with Peter Hutterer's guidance
* Use meson for installing deps
* Fixed typo in tag name
* Remove submodules
* Remove old submodules
* Fixed libei name
* Defaults for pugixml and gtest depending on whether source exists in subprojects
* Ignore some subproject dirs
* Make deps OS-specific
* Move python deps to pyproject
* Only compile and install on Linux with Meson
* Revert "Move python deps to pyproject"
This reverts commit 92c8a287b8376a4d166058c85f1d6081f6fdb423.
* Add ninja to brewfile
* Add python3-attr
* Restore original coverage config
* Add ninja for meson
* Include meson in same try-except
* Fixed ninja dep name
* Move libs to correct oS
* Fixed include for wintoast
* Disable docs for libportal
* More options for libei and libportal
* Fixed option for libei
* Use ninja directly to install
* Revert "Use ninja directly to install"
This reverts commit c926d78ba483406a55acd10fb157c39e13f90b71.
* Meson install verbose
* Prints stdout/stderr
* Remove `from None`
* Remove submodules that somehow crept back in?!
* Prepend sudo if exists
* Add libei deps for all distros
* Fixed Fedora package name
* Add more deps for other distros
* Add more libs (including pugixml)
* Fix lib name
* Drop -u from pacman
* Add vala to rhel
* Make libportal optional
* Make portal link optional
* Remove example code
* Always use system pugixml
* Disable interactive apt through install_deps.py
* Revert "Disable interactive apt through install_deps.py"
This reverts commit 5bbc8fd689182447c79b81db16c961b98361a292.
* Set DEBIAN_FRONTEND in workflows
* Set DEBIAN_FRONTEND in CodeQL workflow
* Add gtest dep
* Add bundled libei dep
* Add libei dep to Arch
* Use `googletest` on openSUSE
* Add gmock dep
* Remove gtest dep from openSUSE
* Add libei on Fedora
* Bundle libei for older Linux distros
* Disable libei dep for RPM
* Also bundle symlink to .so
* Use ${CMAKE_INSTALL_LIBDIR}
* Rename libei to fix openSUSE
* List installed files
* Add libei-devel to openSUSE
* Add googletest-devel to openSUSE
* Remove manual deps (probably resolved automatically)
* Remove googletest from openSUSE (doesn't provide google mock)
* Only add Portal* if libportal found
* WIP - Partial work on using old events system :'(
* Add deps install commands for subprojects
* Solved more compile issues related to events system, threads, etc
* Fixed bad config for adding x, ei, portal sources
* Remove redundant deps
* Remove (another) redundant dep
* Fixed pacman command
* Add Ubuntu and Linux Mint libei deps
* Fixed Ubuntu and Linux Mint libei deps aliases
* Only iterate subprojects if not None
* Add rhel, rocky, and alma for libei
* Make rhel-like deps same as fedora again
* Build libportal on rhel-like
* Re-enable meson rhel-like for libportal
* Remove dbus-python
* Make libportal optional (for rhel-like)
* Handle ei event queue results
* Re-introduce libportal
* Print libei and libportal versions
* Add ei/portal args and client screen
* Switch --use args to --no
* Don't build libei/libportal on older distros as it's pointless
* Make libei and libportal optional
* Add Debian 13 runner
* Make some packages optional
* Remove subprojects
* Improve comment
* Add comment for libportal
* Improve comment
* Add Debian 13 runner
* Make optional... optional
* Change continuation stripper to remove newline and continuation char
* Make command strip more uniform
* Fixed help var syntax
* Fixed libei linking
* Ensure `kHelpNoWayland` is always defined
* Improve help message
* Fixed Debian 13 runner name
* Include sstream and use const var
* Update ChangeLog
* Remove Wayland block
* Return new timer
* Make tray icon logging verbose
* Fixed arg parser for wayland args
* Fixed init of EI screen
* Fixed lint issues
* Update README to indicate Wayland support in GNOME 46
* Add missing word
* Fixed comment positions
* Automate CI env
* Tone down debug log messages
* Add missing comma
* Remove redundant log line
* Also ignore `command_pre` for Fedora itself
* Improve warning message
* Fixed layout issues on main window
* Restore fusion theme for Windows dark mode
* Further correct main window layout
* Set CWD for launch on Windows to same dir as .env
* Use signals for tray icon instead of callback
* Reduce complexity for setting tray icon
* Further reduce tray icon complexity
* Reduce tray retry time
* Fixed tray not showing on macOS
* Refactor function names
* Move tray icon to lib
* Decouple server connection class
* Move server connection to lib
* Move client config to lib
* Remove redundant forward declarations
* Fixed some namespaces in the new lib
* Move core process code to new class
* Improve member names on new process class
* Remove copy/pasta code
* Move OSX helpers to lib
* Add .mm to lib config
* Fixed copyright
* Improve reliability of log line handling
* Fixed TLS certificate generate bugs
* Remove client list
* Refactor core process handling to fix various problems
* Fixed process/connection status bugs
* Fixed function signature issue on macOS
* Fixed override warnings
* Fixed string format warning
* Save `wasStarted` state and use that instead
* Use only filename in dialog
* Use lambda for simple slot
* Scroll to bottom if at bottome
* Set value based on position before text added and set horizontal scroll too
* Add 1px tollerance for Linux
* Simplify start/stop mutex
* Always stop service on restart
* Increase scroll bottom threshold to 2
* Log warning instead of critical
* Fixed long-standing dir CD-up hack
* Remove include
* Remove include
* Fixed rogue dumbisense includes
* Account for optional distro_like
* Add QAction include to solve incomplete type
* Remove rogue #pragma
* Static cast log value
* Solve event queue delete warning
* Fixed integ test on Windows 10
* Reduce enum verbosity
* Use static instance instead of global
* Make function const
* Use unique_ptr instead of new and delete, and made some functions const
* Fixed smart pointer use
* Fixed variable shadowing
* Fixed wrong use of using
* Fixed missing namespace using
* Simplify TLS error handling
* Improve UX around certificate errors and success
* Decouple app config from core process through interface
* First iteration of core process test
* Mark dtor as override
* Rename attach launch entry
* Add TODO
* Create proxy for process
* Move IPC client to deps
* Fixed warnings
* Reorganize new GUI lib dir structure
* Update includes to reflect new paths
* Reorg GUI tests
* Abstract IPC client
* Refactor about screen
* Fixed .ui warnings
* Remove redundant include
* Fixed typo
* Fixed typos and add spelling
* Fixed misleading function name
* Improve comment
* Improve code coverage for core process
* Remove noisy log line
* Make global const
* Use default dtor
* Use vector instead of new
* Make ctor explicit
* Make ctor explicit (2)
* Use enum class
* Fixed bad enum
* Stub out core tool
* Stub out dir operation
* Extract byte functions
* Add missing return path
* Simplify byte/int functions
* Fix truncation
* Use ctor member assignment
* Fixed segfault in process proxy
* Fixed print warning
* Make function const
* Cleanup header
* Fixed missing name
* Update ChangeLog
* Make more functions const
* Add RHEL image
* Use Fedora config for RHEL
* Use script to activate RHEL
* Mirror mount args
* Set RHEL username and password
* Pass RHEL build args
* Pass RHEL login by file
* Use RHEL 9 for newer Python
* Source RHEL login
* Add case for RHEL Python deps
* Add `--deactivate`
* Do PIP user install
* Upgrade PIP
* Add RHEL config
* Introduce 'command-pre'
* Inherit fedora deps for RHEL and only strip sudo on non-empty command
* Add RHEL 9 runner
* Use RHEL 9 codeready
* Add AlmaLinux EL9
* Add support for RHEL-like
* Add EPEL for Alma
* Enable power tools on Alma
* Fix missing semicolon
* Install EPEL before power tools
* Inherit Alma deps from RHEL
* Switch from `powertools` to `crb`
* Abandon RHEL for now (no Qt 6 support)
* Don't pass required when getting distro key
* Correct key name for Rocky Linux
* Add Repology badge
* Restore original `build-push-action`
* Exclude unsupported Repology entries
* Update ChangeLog
* WIP: Show dev thanks message
* Improve error messages and guard license code
* Print core command
* Allow license tests when licensing disabled by default
* Don't check invalid serial key
* Fixed typo
* Add error checking
* Use shared ptr instead of static deps
* Actually save and load the setting
* Add dev thanks vars to CI
* Show thanks message after connected
* Refactor hack-job of local/global save/load to remove coupling and use Qt events system
* Simplify config loading
* Overloads for optionals
* Fixed global config scope not loaded
* Save message state before showing to avoid multiple messages
* Update ChangeLog
* Fixed lint warnings
* Make function const
* Reduce verbosity
* Remove dead code, show version on start, tidy up lint warnings
* Make product name code safer
* Connect on enter press
* Only show server specific wording when on server
* Add emit commands
* Log info and error
* Remove deaad code
* Remove test member
* Disable start context menu action unless usable
* Show more relvant connect message
* Fixed close to tray not applied, and simplified restart core logic
* Remove redundant include
* Rename `LicenseManager` to `License`
* Rename `LicenseManager` to `License`
* Move License class to gui lib
* Rename license related classes
* Refactor serial key parsing
* Don't fail fast on containers
* Move licensed product name from config to code
* Fixed formatting
* Update code coverage generator and fixed args
* WIP: Converting license to chrono
* WIP: Fixed compile errors, tests failing
* Fixed all serial key and license tests
* Disable verbose logging
* Add missing </p>
* Add missing include
* Revert code coverage config
* Handle parse errors
* Move more classes into the new gui lib and improve license/serial object ownership
* WIP: Fixing signal/slots in MainWindow
* Fixed slot for about to quit
* Rename manual slots to solve auto-connection warnings
* Fixed logging issue
* By default, don't close to tray
* Add .env support and furthe refactor license code, also fixed some copyright dates
* Remove test code
* Fixed memory error in .env parser and refactor more licensing display code
* Fixed color inconsistencies
* Fixed link colors and made log view expand
* Disable server components rather than hiding
* Reset years of blind UI layout fiddling
* Fixed clean Qt task
* Only show notice when time limited
* Fixed main window layout
* Show connected clients
* Set 15 spacing
* Auto connect on start
* More intentional screen size
* Fixed tests related to license
* Tests for expiry notifications
* Reorg tests and remove death test
* Update gtest
* Tests for dotenv parser
* Test command process
* What the heck is that doing there?
* Merge constants headers
* Fixed magic includes
* Remove helper function
* Remove comment
* Remove extern decl
* Update ChangeLog
* Call ensure_in_venv before all imports
* Create `gui` lib and link to `synergy` and test bins
* Move GUI IPC code to GUI lib
* Improve `AppConfig` members and change `minimizeOnClose` to `closeToTray`
* Group getters and setters
* Add missing `m_CloseToTray` load
* Fixed lint issue
* Add TODO comment for main window integ test
* Remove redundant comments and add override
* Remove dead code
* Update ChangeLog
* Fixed activation related compile errors
* Disable concurrency cancel jobs
* Disable fail-fast for matrix
* Migrate from `requirements.txt` to `pyproject.toml`
* Lower Python to 3.9 for GitHub Windows runner
* Increase timeout for valgrind
* Update ChangeLog
* Add coverage for both targets
* Use var for test bins
* Disable cmake-format comment fiddling
* Refactor GUI source config
* Use bin var for tests
* Remove unused member
* Add integration tests to CI
* Use modern cmake args
* Use max threads for build
* Use better var name for CPU core count
* Split build and configure steps
* Combine tests into action and add a PR comment
* Fixed yaml indentation in action
* Pass GITHUB_TOKEN
* Update coverage paths for SonarCloud
* Don't ignore return codes
* Add shell
* Run Valgrind on integ tests
* Use header for tests
* Save test results in table
* Move setup step outside of action
* Change logic of creating PR comment
* Remove header formatting
* Use emojis for simplicity
* Run build wrapper in build dir
* Use default make target
* Pass secrets
* Fixed SonarScanner warnings
* Don't allow unit tests to fail
* Fixed typo
* Update sonar scanner paths
* Fixed line endings
* Use step output
* Improve exclusion glob
* Exclude files from coverage
* Restore simpler pattern
* Set temp file path
* Coverage tests
* Re-create comment at start of job
* Append table header
* Add setup action
* Checkout before action
* Re-add projectBaseDir
* Restore original sonar scanner
* Use bash syntax for if
* Remove unused `shell`
* Add missing shell for valgrind action
* Restore new sonar scanner config
* Add missing shell
* Run only MainWindowTests
* Test with big change
* More changes
* Move to correct dir
* Remove test code
* Disable broken integ tests
* Switch coverage to front of filename
* Remove filter
* Refactor status step
* Disable segfault test
* Fixed: No status showing
* Add link to workflows
* Add test code for coverage
* Revert "Add test code for coverage"
This reverts commit c42309349b64f7828f2ca89149b30c5b0f93478a.
* Get workflow run URL
* Add missing shell
* Use dynamic URL in valgrind comment
* Revert "Revert "Add test code for coverage""
This reverts commit 9cff58b7ea5c581681ae6d6660c073bd76ba99aa.
* Test with commented out code
* Reintroduce 6 lines for coverage
* Test code to pass scanner
* Test code to pass scanner (take 2)
* Simplify to 2 new lines
* Add another line
* Trim changes to only 3 lines
* Add task for all tests
* Surface warning on failure
* Simplify build-wrapper step and move settings from web UI to CI
* Add missing line delims
* Also run tests action on Windows and macOS
* Add names to action steps
* Add timeout for test steps
* Add failure warning for integ tests
* Remove space
* Disable failing test on macOS
* Disable problem matcher
* Simplify names
* Disable freezing test on Windows
* Disable failing integ test on Windows
* Add build-kill task
* Ignore kill result on Windows
* Delete test code
* Update ChangeLog
* Move timeout to workflow step
* Add missing atom ctor init
* Init members with `None`
* Use in-class init and delcare getter inside if init
* Temp revert of changes ahead of unit test repair
* Move IPC header to shared, restore X clipboard test, simplify test cmake, new X clipboard unit test
* Suppress sonar for undefs
* Remove base dir include
* Revert "Temp revert of changes ahead of unit test repair"
This reverts commit 8f84b6ea5d5828f1be1362de3809279bcacb8cc8.
* Use new accessor
* Use default dtor
* Beef up to 32 core
* Use enum class
* Make IPC protocol headers const at all levels
* Use enum class and const char for better type safety
* Use unique_ptr for m_clipboard
* Use `-j` instead of `-j8` to utilize full parallelism
* Increase thread count for sonar-scanner
* Use 32 threads
* Use in-class init for IpcClientProxy members
* Use const instead of #define
* Remove ctor member inits
* Use unique_ptr on win
* Implement temp bin dir for windows with more robust post-build copy
* Fixed missing iostream
* Add warning about copy errors
* Only run clean-gcda on Linux
* Use in-class init for IPC mutex
* Do no-op on Windows
* Hide clean-gcda task
* Move flakey test to integtests
* Delete dead code
* Test
* Temp disable post_config_all
* Disable post config step
* Revert "Disable post config step"
This reverts commit 2f956a7714ba9bedacd4b39d4ae00940c3d565d6.
* Revert "Temp disable post_config_all"
This reverts commit b44ed72e44f838bfe1309f6e9672d2f1c6f21b75.
* Restore -j8
* Simplify error handling
* Use const for test port
* Remove python check
* Update changelog
* Fixed order
* Fixed bad issue number
* Fixed bin copy source path
* Remove redundant except
* Move QApplication out of main to reduce memory impact when running individual tests
* Add --valgrind arg and colorize output when command returns non-zero exit code
* Fixed: colorama not always available
* Test multiple Qt tests
* Fixed: Windows Qt test failing due to missing QCoreApplication
* Simplify fake args for Qt
* Use --ci-env arg
* Create Valgrind analysis workflow
* Rename vars for fake args
* Parse and output valgrind summary
* Add build mode to comment
* Use GITHUB_OUTPUT to output summary
* Merge valgrind comment
* Improve comment
* Use `tee` instead of `--log-file` to also print stdout
* Improve comment about debug and release
* Simplify output writing in parse step
* Improve step name
* Correct comment about summaries
* Remove commented out code
* Better var name
* Missing copyright
* Rename global to shared
* Remove space
* Revert change to ConfigTests.cpp
* Test: allocLockCursorToScreenInfo_withState_setsState
* Merge remote-tracking branch 'origin/master' into S1-1717-sonarcloud-issues
* Remove header wrappers for gmock/gtest
* Convenience wrapper script for tests
* Use `std::copy` instead of `strcpy`
* Use `std::ranges::copy` instead of `stdcpy`
* Delete dead code
* Add guitests VS Code config and test wrapper
* Revert "Delete dead code"
This reverts commit aa40f5cd35a22b4b69acfd1876aceea053088060.
* Build guitests with CMake
* Run all tests
* Don't use --gtest_filter for Qt tests
* Undo skip for GUI tests
* Coverage for `IpcClient::sendCommand`
* Remove provider and proxy
* Use lamda for StreamProvider to reduce boilerplate
* Restore version checker tests
* Remove activation souces
* Tasks for current/all tests
* Change command for tasks
* Mock QNetworkAccessManager
* Create core app to satisfy Qt assertations
* Use `std::copy` instead of `std::ranges::copy`
* Remove integtests
* Merge guitests into unittests
* Use std::string::length
* Remove include (resolves to root)
* Fix memory leaks
* Disable sigsegv tests
* Fixed formatting
* Remove guitests from CI
* New MainWindowTests
* Passing test for MainWindowTests
* Use alternative to strlen in MainWindow::checkSecureSocket
* Passing test for Log::print
* Fixed dtor call order
* Fixed var name typo
* Use proxy instead of `#define protected public`
* Add args test for log
* Add license ctor
* Fixed log test for release
* Add error log test
* Init qt with -platform offscreen
* Back-out initQt function
* Use QT_QPA_PLATFORM
* Try QT_QPA_PLATFORM=offscreen
* Use more readable env node
* Set QT_QPA_PLATFORM in CI and CodeQL
* Remove env not needed
* Modernize Log::print
* Calculate the length of the format string fmt during the initial scan loop
* More direct and efficient alterative to `strlen`
* Fixed major maint issues in AppConfig
* New clang and cmake rules
* Set `max_pargs_hwrap` to 4
* Undo clang format for now
* Fix missing `Setting::`
* Fixed missing `m_S` on Windows
* Re-add accidental dep resolution (fix later)
* Fixed missing buffer position increment
* Turn on errors
* Fixed tests and improve error message
* Fixed segfault on log refactor
* Extract log time to function
* Copyright date
* Update ChangeLog
* Remove Core5Compat
* Remove hack
* Update ChangeLog
* Revert "Remove hack"
This reverts commit dda3ad05818d346fdfcbb41944b9e731a4b547c0.
* Set `add_compile_definitions` for Qt
* Revert "Set `add_compile_definitions` for Qt"
This reverts commit 0258d2d226a76081068f4e565855f37993953be5.
* Use arm64_monterey bottle
* Revert "Use arm64_monterey bottle"
This reverts commit a46d743dc6883c925e2328b9628231189cb34367.
* Use aqt to install Qt on Mac
* Append env var instead of overwrite
* Fixed filename
* Use GITHUB_PATH
* Restore original GITHUB_ENV logic
* Use newer cache action
* Update ChangeLog
* Use Ubuntu ARM64 runner
* Add Windows 11 8-core ARM64 and use 8-core for Linux
* Add bootstrap step
* Install and use choco
* Add git to path
* Split bootstrap steps
* Merge bootstrap steps
* Export path manually
* Install Python in bootstrap step
* Add Python to path
* Add choco to path
* Add C:\Python312\Scripts to path
* Back out ARM64 runner (perhaps only suitable for running programs)
* Use ARM64 for build containers
* Don't run CodeQL in PR draft
* Speed up analysis workflows
* Run install deps on Debian
* Add badge to readme
* Fixed copy and use workdir
* Use mount instead of copy
* Fixed unwanted && and changed workdir
* Split deps and deps-full
* Fixed context
* Use /app dir
* Use copy instead
* Revert to --mount and use .py (not .sh)
* Test
* Add `./scripts/install_deps.py` to all platforms
* Add missing syntax
* Fixed Python dep for OpenSUSE
* Temp remove WORKDIR for OpenSUSE
* Re-add workdir
* Increase timeout
* Delete `zypper --non-interactive remove busybox-which`
* Restore python3
* Test
* Rename to `lint-source-code`
* Beef up analysis runners
* Fixed workflow runs-on
* Use deps script
* Try pipx for gcovr
* Use containers with deps
* Add -y arg
* Install curl
* Merge deps step
* Add unzip dep
* Make Git dir safe
* Add .local/bin to env
* Improve step name
* Use `pipx ensurepath`
* Install gcovr with apt
* Use Ubuntu 22 with pip
* Update ChangeLog
* Use 16-core for Windows
* Use choco cache
* Test
* Use 8-core for Windows (picked up quicker, more available?)