* 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
* Turn off alignment of params
* Apply Clang format
* Change AlignAfterOpenBracket to AlwaysBreak and add extra bin pack settings
* Restore default bin packing
* Apply format
* Lint script with CLang format
* Use `-i` for `clang-format` and add more logging for lint scripts
* Apply LLVM CLang formatting
* Fixed comment
* Update ChangeLog
* Fixed bad return code logic
* Improve output for linters
* Fixed re-used var in clang lint
* Fixed include order for tests and use `#if 0` instead of commenting out code
* Use full Clang format dump
* Dump Ubuntu Clang format
* Dump Clang format from Debian
* Dumped from: clang-format version 18.1.8
* Revert "Dumped from: clang-format version 18.1.8"
This reverts commit b9bbda2995bb0b4b65baf14afebb0361ec64e644.
* Remove BasedOnStyle
* Restore base Clang format file
* Use clang-format from pip
* Apply Clang format 18 style
* Add clang_format deps
* Fixed include order issues and *some* accidental includes
* Reorganize CMake Packaging module
* Match if statements to function order
* Cleanup root, res, and doc dirs
* Move deps to requirements.txt file
* Reorganize and format CMake files
* Rename changelog lint
* Add reccomended extension
* Workflow to lint CMake files
* Move CMake lint to script
* Try lighter dep
* Use venv
* Add --format arg
* Format all CMake files
* Convert bash script to Python
* Set CMake line ending format
* Restore formatting
* Add pyyaml dep
* Remove unused arg
* Rename config file
* Remove comment
* Repair copyrights (broken by defualt cmake-format)
* Restore 3rd party copyright
* Break up libs config into smaller macros
* Better macro name
* Load config after venv
* Make intentional noop clearer
* Only use upload step if required (make skip clearer)
* Use CPack for deb and rpm packaging
* Add upload step for Linux
* Remove cpack dep, doesn't exist
* Roll back presets version
* Fixed distro like match
* Update ChangeLog
* Legacy checkout for some distros
* All distros support v4
* Trying out newer Linux distros
* Install Git on Docker images
* Install without actions (not available before checkout)
* Delete useless action
* Install Python
* Support for Arch and OpenSUSE
* Add Arch and OpenSUSE to deps
* Name steps
* Full OpenSUSE names
* Mark Git dir safe
* Add pkgconf
* Legacy CMake for Debian 11
* Add OpenSSL to OpenSUSE
* Drop OpenSUSE Leap (no C++20 support)
* Skip packaging for Arch and OpenSUSE (for now)
* Shorten Arch/OpenSUSE names
* Clearer step name
* SImpler bootstrap
* Shell not needed
* Update apt
* Don't check return code
* Simplify python deps commands
* Add STGZ/.sh package type
* Prevent input prompt
* Only config git safe dir when needed
* Try cache v4
* Safe dir for Ubuntu
* Safe dir for Arch
* All Docker images seem to need safe dir config
* Refactor env var getters
* Make Ubuntu build extra packages
* Condense bootstep to single step
* Fixed var name
* Fixed bootstrap logic
* Simplify logic for upload condition (Windows and macOS)
* Make package/upload condition easier to understand
* Add Manjaro
* Generic names for Linux .tar.gz and .sh packages
* Add Manjaro deps
* Swap macOS matrix entries
* Add Red Hat UBI
* Remove RHEL subscription manager
* Throw on unsupported package distro
* Conditionally install pip and venv
* Remove extra pip arg
* Add config for RHEL
* Install EPEL for RHEL
* Back-out RHEL as EPEL requires subscription
* Restore Python deps logic
* Fixed bug: Packacking run twice
* Testing arm32v7 and arm64v8
* Revert "Testing arm32v7 and arm64v8"
This reverts commit cb3caf188d2b79ed083a62fc091de295f9889f3d.
* Re-add icon and shortcut file for Linux to package
* Support OpenSUSE RPM build
* Check return code
* Add `rpm-build` for OpenSUSE
* Reorg packages
* Remove busybox-which
* Add --non-interactive
* Move --non-interactive to correct position
* Experiment with makepkg
* Check and print package commands
* Make distro version optional
* Use 8 cores to build
* Default to distro name only
* Fixed bad PKGBUILD filename
* Use 4-part version for Arch
* Remove comma from conflicts
* Use .tar.gz from cwd
* Generate checksum for Arch
* Fixed file extension
* Use shell to print output
* Don't use shell
* Gaurd against bad cmd_utils.run
* Fixed bad import
* Use list command
* Fixed unable to run list commands
* Use source file name
* Simplify PKGBUILD to use make install
* Change install prefix
* Use DESTDIR
* Copy .desktop and .png to build dir
* Restore original `install(FILES...`
* Improving comments
* Fixed: makepkg runs from `src` by default
* Move error after command print
* Remove shell arg
* Package as a user instead of root (makepkg can't run as root)
* Fixed codesign runs in shell
* Allow list commands in shell on windows
* Don't use sudo on arch
* Install sudo on Arch
* Fixed typo
* Fix ownership of build directory for package user
* Improve example .env
* Change to depend on libstdc++6
* Add TODO
* Fixed Fedora version
* Remove libstdc++ deps (names vary between distros)
* Roll back to Fedora 40 and 39
* Improve comment
* Remove unneccesary default
* Made log lines consistent
* Change log level for process list
* Only show advanced proc info at DEBUG2
* Fixed some more log lines
* Update AppUtilWindows.cpp
* Switch client help to use dynamic buffer
* Add the new param into client help
* Parse the new param as a generic param
* Add additional member to store server address
* Bind client socket to network interface
* Update Changelog
* Fix code smell
* Add SecureClientSocket
* Add SecureServerSocket
* SecureServerSocket code cleanup
* Refactoring for SecureClientSocket
* Change base class for SecureClientSocket to InverseClientSocket
* Change base class for SecureServerSocket to InverseServerSocket
* Small refactoring
* Fix Linux compilation
* Fix code smells
* Refactoring
* Update ChangeLog
* Fix code smells
Co-authored-by: Serhii Hadzhilov <serhii@symless.com>
* Add a new hidden readonly option "initiateConnectionFromServer"
* Add option "clientHostMode"
* Add host mode to the client GUI
* Hide main window controls for the client host mode
* Store client address into the server config file
* Add client mode the server
* Pass option --host into the client
* Add --host parameter into the synergyc
* Add InverseSocketFactory
* Add InverseClientSocket
* Add InverseServerSocket
* Add AutoArchSocket
* Add listener on the client side
* Add connection from the server side
* Fix code smells
* Additional code smells
* Requested changes
Co-authored-by: Serhii Hadzhilov <serhii@symless.com>
* SYNERGY1-1497 Fix problem with memory leak
* SYNERGY1-1497 Fix memory leak for TLS
* Update ChangeLog
* SYNERGY-1-1497 Update ChangeLog and Copyright info
* SYNERGY-970 Synergy1. User is not able to connect to server using ipv6 without wrapping IP in square quotes
*Fix connection without brackets
*Fix config screen bug
* SYNERGY-970 Synergy1. User is not able to connect to server using ipv6 without wrapping IP in square quotes
*Update changelog
* SYNERGY-970 Mac client listens on ipv4 only but attempts to connect on ipv6 #6964
*Add logging in case of several IP of hostname
* Synergy 970 synergy1. user is not able to connect to server using ipv6 without wrapping ip in square quotes
*Update changelog
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
*Fix Sonar warnings
* SUNERGY-885-Mac client listens on ipv4 only but attempts to connect on ipv6
*Update Changelog
* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix include
* Sunergy-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix sonar warnings
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
*Add loggic to connect to first from reachable server addresses
* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix unix compilation
* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix unix compilation
* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix code smells
* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix build
* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Fix memory leak
* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Added logic for temporary ipv6 filtering from connect
* SYNERGY-885 mac client listens on ipv4 only but attempts to connect on ipv6
*Temporary disable ipv6 parsing and resolving tests
Co-authored-by: Andrii Batyiev <andrii-external@symless.com>
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix ipv6 port parsing
* Fix ipv6 server bind
* SYNERGY 885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Add ipv6 scope checker
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Update changelog
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Refactor network address logic
* SYNERGY-885-Mac client listens on ipv4 only but attempts to connect on ipv6
* Build fix
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix code smells
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix empty ipv4 hostname
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix build
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Add test for new logic
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Upgrade network adress parser tests
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix sonar code smells in tests
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
* Fix code smells
* SYNERGY-885 Mac client listens on ipv4 only but attempts to connect on ipv6
*Fix comment
Co-authored-by: user <user@users-Mac-mini.local>
Co-authored-by: Andrii Batyiev <andrii-external@symless.com>
* Change cmake to use find_package for openssl
* Change cmake prefix paths
* Fix Qt prefix path
* Limit static to apple
* Re-add qt bin path
* Fix use of apple cmake variable
* Update ChangeLog
* Update CMake prefix path for mac and windows tests
* Fix windows test
* Seems to fix mac test
* Brew defined prefix paths
* Explicitly ensure all homebrew dependencies
* Fix formatting in CMakeLists
* Add SYNERGY_NO_LEGACY environment flag
* Add build script for Windows
* Find_package for OpenSSL
* Move build scrits to scripts folder
* Add macOS and Linux build scripts
* Add environment variable
* Compile core with static openssl
* Default builds to Release
* Streamline OpenSSL dependancies
* Remove openssl from repo
* Change actions to test actions
* Add zip creation to build scripts
* Re-add original tests
* Add action value output
* Build per platform on release
* Fix path for core build
* Temporarily keep artifacts
* Set execute flag
* Zip before archiving
* Static build only for windows
* Remove -m flag from zip
* Change zip to tar
* Fix workflow name
* Add hints to openssl on mac
* Fix zip files
* Fix verbose flag on tar
* Remove path on download artifacts
* Try an array of build targets
* Extract action binaries
* Install full openssl
* Add 32bit openssl
* Modify installer to use the openssl.exe from ext
* Install OpenSSL full for windows release build
* Add openssl installation during windows CI
* Modify changelog
* Add enhancments section
* Remove bottom line in changelog
* (WIP)-all issues corrected, tests started
* first test passing
alternative solution for SonarCloud check
fixed for to while translation
added changelog item
adding tests and fixes
more tests; avoid compiling BSD Tests on Windows
attempting a BSD compile patch
more tests
borrowing symbol detection from another test
more ambitious testing
changed the order of assertions for better info
more tests
fixed clear errors before executing
expanding transformation to use string comparison
including terminator on translation count
a different flag for testing MS Windows
differente Windows flag
more tests
fixing platform encoding match
Windows compiler difference on #ifdef
Google Test macro usage fix
test added
added keymap test
test and initialisation fixed
ms cl issue with named init
test for keymap
exercising keystate
more configuration exercises
one more test for config
added Unicode test
an IPv6 test
more portable networking code
using our own platform switching code
avoiding strcpy
* Fixed typo in Changelog.
* +appropriate memory handling
* one more test for coverage
* a tad more coverage
* expanded test on Config
Co-authored-by: Max <maxmommersteeg@hotmail.com>
Co-authored-by: SerhiiGadzhilov <71632867+SerhiiGadzhilov@users.noreply.github.com>
- Moved ArgsBase, ClientArgs, and ServerArgs to own namespace
- Added some Documentation to Args classes
Signed-off-by: Jamie Newbon <jamie@symless.com>