Commit Graph

69 Commits

Author SHA1 Message Date
Zach H
07a8cd0a5f Fix #4903: Parse Email Addresses whenever used (#4932) 2023-12-09 00:52:47 -05:00
Zach H
a95b338c80 Add cmake format (#4618)
* Support CMakeify operation

* Run Cmakeify

* Update cmakeify.sh

Co-authored-by: ebbit1q <ebbit1q@gmail.com>
2022-05-08 21:22:43 +02:00
ZeldaZach
b02adccf87 Support Qt6, Min Qt5.8, Fix Win32, Fix Servatrice
Add lock around deleting arrows for commanding cards

Add support for Qt6 w/ Backwards Qt5

Handle Qt5/6 cross compilation better

Last cleanups

caps matter

Fix serv

Prevent crash on 6.3.0 Linux & bump to 5.8 min

Prevent out of bounds indexing

Delete shutdown timer if it exists

Fixup ticket comments, remove unneeded guards

Try to add support for missing OSes

Update .ci/release_template.md

Update PR based on comments

Update XML name after done and remove Hirsute

Address local game crash

Address comments from PR (again)
Tests don't work on mac, will see if a problem on other OSes

make soundengine more consistent across qt versions

disable tests on distros that are covered by others

Fix Oracle Crash due to bad memory access

Update Oracle to use new Qt6 way of adding translations

Add support for Qt5/Qt6 compiling of Cockatrice

Remove unneeded calls to QtMath/cmath/math.h

Update how we handle bitwise comparisons for enums with Tray Icon

Change header guards to not duplicate function

Leave comment & Fix Path for GHA Qt

Update common/server.h

Update cockatrice/src/window_main.cpp

Rollback change on cmake module path for NSIS

check docker image requirements

add size limit to ccache

put variables in quotes

properly set build type on mac

avoid names used in cmake

fix up cmake module path

cmake 3.10 does not recognize prepend

Support Tests in FindQtRuntime

set ccache size on non debug builds as well

immediately return when removing non existing client

handle incTxBytes with a signal instead

don't set common link libraries in cockatrice/CMakeLists.txt

add comments

set macos qt version to 6

Try upgrading XCode versions to latest they can be supported on

Ensure Qt gets linked

add tmate so i can see what's going on

Qt6 points two directories further down than Qt5 with regard to the top lib path, so we need to account for this

Establish Plugins directory for Qt6

Establish TLS plugins for Qt6 services

Minor change for release channel network manager

Let windows build in parallel cores

Wrong symbols

Qt6 patch up for signal

add missing qt6 package on deb builds

boolean expressions are hard

negative indexes should go to the end

Intentionally fail cache

move size checks to individual zone types

Hardcode libs needed for building on Windows, as the regex was annoying

Update wording

use the --parallel option in all builds

clean up the .ci scripts some more

tweak fedora build

add os parameter to compile.sh

I don't really like this but it seems the easiest way
I'd prefer if these types of quirks would live in the main configuration
file, the yml

fixup yml

readd appended cache key to vcpkg step

fix windows 32 quirk

the json hash is already added to the key as well

remove os parameter and clean up ci files

set name_build.sh to output relative paths

set backwards compatible version of xcode and qt on mac

set QTDIR for mac builds on qt5

has no effect for qt6

export BUILD_DIR to name_build.sh

merge mac build steps

merge homebrew steps, set package suffix

link qt5

remove brew link

set qtdir to qt5 only

compile.sh vars need to be empty not 0

fix sets manager search bar on qt 5.12/15

fix oracle subprocess errors being ignored on qt 5

clean up translation loading

move en@source translation file so it will not get included in packages
NOTE: this needs to be done at transifex as well!

Use generator platform over osname

Short circuit if not Win defined
2022-05-06 17:31:08 -04:00
ebbit1q
45d86e7ab7 allow login using hashed passwords (#4464)
* Support getting a user's password salt via initial websocket connection (added to Event_ServerIdentification)

* Nonsense stuff to figure out later

* move passwordhasher to correct location

* protobuf changes

* add ext to protobuf

* implement request password salt server side

* add supportspasswordhash to server identification

* check backwards compatibility

* reset some changes to master

* implement get password salt client side

* implement checking hashed passwords on server login

* check for registration requirement on getting password salt

* properly check password salt response and show errors

* remove unused property

* add password salt to list of response types

Co-authored-by: ZeldaZach <zahalpern+github@gmail.com>
2021-11-09 20:00:41 -05:00
olegshtch
446f9be24d Fix unresolved symbols when link tests to system libgtest-dev (#4055) 2020-07-30 14:52:44 -04:00
Rob Blanckaert
9a8c81cf5e Client Websockets (#3545)
* Websockets

* Add setting to get websocket IP from header

* Add QT version guard

* Minor cleanup

Signed-off-by: Zach Halpern <ZaHalpern+github@gmail.com>

* - Make QWebSocket required
- Remove QWEBSOCEKT_LIB guards
- Only TCP on port 4747
- Fix peerName lookup

* fix check

Signed-off-by: Zach Halpern <ZaHalpern+github@gmail.com>

* Update CMakeLists.txt

* Update CMakeLists.txt
2019-02-03 11:43:22 +01:00
ctrlaltca
65f41e520e [WIP] Basic mtgjsonv4 support (#3458)
* Basic mtgjsonv4 support

* Fix set type

* [WIP] Oracle: use zx instead of zip

* clanfigy fixes

* Fix reading last block of xz

* Added back zip support

* [WIP] adding xz on ci + fixes

* typo

* resolve conflict

* Make gcc an happy puppy

* test appveyor build

* appveyor maybe

* Appveyor: add  xz bindir

* Update ssl version (the old one is not available anymore)

* Windows is a really shitty platform to code on.

* test vcpkg

* again

* gosh

* nowarn

* warning 2

* static

* Maybe

* cmake fix

* fsck this pain

* FindWin32SslRuntime: add vcpkg path

* Appveyor: cache support, force usable of openssl from vcpkg

* updated as suggested

* ouch

* Import card uuids and expose this property as !uuid! for card image download

* Minor style fixes

* address changed URL
2018-12-20 18:05:03 -05:00
ctrlaltca
1415a4dafa Fix servatrice linking under FreeBSD - fix #3376 (#3377)
Fix servatrice linking under FreeBSD - fix #3376
2018-09-06 12:20:20 +02:00
ctrlaltca
e223f07462 fix #3235 (#3302) 2018-06-21 18:56:53 -04:00
ctrlaltca
f97959febc fix #3257 (#3258) 2018-05-24 15:46:02 +02:00
ctrlaltca
c06fc562a1 Cmake scripts refactoring; fix #3225 (#3230)
* fix #3225

* Servatrice: use websockets as an optional component (for qt < 5.3)

* Attempt++
2018-05-12 23:28:22 +02:00
ctrlaltca
2780270911 macOS: fix qt plugin installation (#3216)
* Osx: fix qt plugin installation

* Add make install step to travis debug build

* only install under osx

* Add "styles" plugins (for native look'n'feel)

* Osx: upgrade qt from 5.5 to current (5.10.1)

* Fix osx on travis

The qt homebrew formula now installs three qt* symlinks (qt, qt5, qt5@5.x) so we can't use/don't need bash globbing anymore
2018-05-02 15:57:35 -04:00
woogerboy21
da7c7c1f83 Update Servatrice MySQL Search Path (#3039)
Removed the older versions of the mysql library install paths and updated to reflect the 5.7 product paths.
2018-01-21 11:05:13 -05:00
woogerboy21
b684c12964 Correct VS2017 Compile Issue (#2878)
A line in the servatrice CMAKE file was removed in a prior commit causing a compile error in newer versions of visual studio.  This returns the line.
2017-10-03 09:23:33 -04:00
ctrlaltca
ccee0aa3fd Cmake: remove old unneeded POLICIES (fix Appveyor) (#2859) 2017-09-22 17:47:05 +02:00
ctrlaltca
1366e5970e Portable mode for windows (#2794)
* Portable mode for windows

* fix start menu in portable mode

* Make gcc an happy puppy

* Clean old installation if we are installing over an old portable mode installation

* Default to Desktop\CockatricePortable

* Settings dialog fixes

* wording
2017-07-08 11:22:29 +02:00
Zach H
47cafde521 fix lowercase (#2419)
* fix lowercase

* fix changes

* fix .desktop

* servatrice .desktop
2017-02-23 08:53:18 +01:00
Fabio Bas
5b21dc8cde Implementation of websockets in servatrice and test js client 2016-06-26 19:38:53 +02:00
Fabio Bas
bb5292aa8d Drop Qt4, libgcrypt, qtmobility dependencies 2016-05-11 12:45:58 +02:00
ctrlaltca
55f3e9314b Merge pull request #1859 from ctrlaltca/carddb
Rework some parts of the card database
2016-03-30 22:55:36 +02:00
Fabio Bas
a55b3784eb cmake: Enable c++11 for all targets 2016-03-21 11:42:38 +01:00
Fabio Bas
62cb89d224 Fix mysql plugin deploy on windows 2016-03-08 12:54:04 +01:00
woogerboy21
3ba3f1e2a7 Added MySQL 5.7 lib path to servatrice CMAKE
Added default search path for most recent version of MySQL
2016-02-27 15:13:59 -05:00
Fabio Bas
ac06544849 Added 64bit libraries each path for libmysqlclient 2016-02-23 08:56:47 +01:00
Fabio Bas
49b22b7d2f Try to fix package creation 2015-12-27 16:03:32 +01:00
Fabio Bas
74c58cc2b0 fix qt libraries bundling on osx
fix #1547
2015-10-01 23:35:54 +02:00
marco
0b94b47f72 Servatrice portable + cmake options
Use -DPORTABLE=1 to build a portable version
2015-08-25 21:25:13 +02:00
Fabio Bas
1ffc9b4561 Refactor servatrice email send 2015-07-25 18:48:34 +02:00
Zach
7ebf817b17 Merge pull request #1197 from Cockatrice/cpp11 2015-07-13 13:23:18 -04:00
Gavin Bises
8ed9d35724 Update project to C++11 compilation. 2015-07-03 10:02:31 -04:00
Fabio Bas
6cf3db7e6b Servatrice: refactor signal handling and permit config reloading 2015-06-30 22:21:26 +02:00
Fabio Bas
471f6371b5 More work
* Refactored code out of common/ into servatrice/
 * added smtp client library
 * disable registration when connected
 * validate email address
 * send activation token via email
2015-05-24 23:02:51 +02:00
Fabio Bas
7bbb5dec52 fix #947 2015-04-11 15:19:16 +02:00
Fabio Bas
54ce135e0c Optimize qt plugins installation
* Always install “release” plugins
 * install only plugins actually used
2014-12-28 22:21:45 +01:00
Fabio Bas
c0ee060af4 Fixed vendor name 2014-11-09 23:14:36 +01:00
Fabio Bas
a716d73a42 OSX: Add proper infos to info.plist
fixes #411
2014-11-09 21:03:10 +01:00
Fabio Bas
c0abb347ac Servatrice: Install icons and desktop file under linux 2014-10-11 13:37:52 +02:00
Matt Lowe
5b50aa0f0a Servatrice logo
+ added resources needed for servatrice logo
~ updated CMakeLists.txt to include the new resources
2014-10-06 21:04:37 +02:00
Fabio Bas
a1b6600fe1 Servatrice: group all the use of QSettings in a single file
and add a method to guess the path of servatrice.ini
2014-10-02 22:37:50 +02:00
Gavin Bisesi
263b5a40f5 Merge pull request #341 from ctrlaltca/servatrice_install_configs
Servatrice: install example ini and sql schema file
2014-10-02 10:06:03 -04:00
Fabio Bas
7afdff1b3b Servatrice: install example ini and sql schema file
WIN: in the binary directory
OSX: in the app bundle’s Resources subdirectory
LINUX: in $PREFIX/share/servatrice
2014-10-02 08:34:21 +02:00
Fabio Bas
355de8fba4 Drop libgcrypt dependency for qt5 2014-10-01 20:21:22 +02:00
Fabio Bas
fc24ffdec2 Cmake reorganization
* Move all cmake-related files in a new “cmake” folder
* move nsis files in there, too, since they are templates parsed by cake
* retrieve git version once when cmake is run, and use it for both
creating version_string.h/cpp and for package naming
2014-06-28 19:39:26 +02:00
Fabio Bas
096f200eb9 Install libraries and plugins automatically under windows
You won’t have to copy manually all the dlls in the release directory
anymore
2014-06-27 17:40:29 +02:00
Fabio Bas
34772cccab Compilation fix for MSVC+Qt5 2014-06-27 17:09:09 +02:00
Fabio Bas
c4458b16b2 Qt5: fix plugin installation 2014-06-25 15:53:25 +02:00
Fabio Bas
809f390e2f Merge remote-tracking branch 'upstream/master' into cmake_qt5 2014-06-25 15:46:50 +02:00
Fabio Bas
2eebddea9a Port "make package" fix to oracle and servatrice 2014-06-22 23:41:15 +02:00
Fabio Bas
b44365b73c This finally fixes both make install and make package 2014-06-22 23:41:15 +02:00
Fabio Bas
6d1de0c617 Partially revert previous commits; ensure the bundle is fixed up correctly 2014-06-22 23:41:15 +02:00