Age | Commit message (Collapse) | Author |
|
For the upcoming update to Scons 3, which works with Python 2
and Python 3, this change makes our code compatible with
Python 3 so that it still works with Python 2.
Test-Information:
Tested these changes with SCons 3.0.1 on macOS 10.13.6 with
Python 2.7.15 and Python 3.7.0.
Change-Id: Idb5207b179a79a0dbe89d7e620d182a7d2f1ca6c
|
|
so that the swift-im openSUSE package builds in a reproducible way
in spite of indeterministic filesystem readdir order
See https://reproducible-builds.org/ for why this is good.
License:
This patch is BSD licensed - see Documentation/Licenses/BSD-simplified.txt for details.
Test-Information:
Builds on different machines should no longer have differences in Swiften.h
Change-Id: I8066a66db83c7d7ff10858196cb72b13af3f6008
|
|
* swift-4.x: (44 commits)
Test-Information:
Builds on macOS 10.13.3 with clang trunk.
Change-Id: If50381f103b0ad18d038b920d3d43537642141cb
|
|
Add PrivateKey class to simply encapsulate arbitrary private
key data and the corresponding password.
This enables easy unit testing by loading the certificate and
key from within a test case.
Test-Information:
Added unit tests for certificate and key generated by OpenSSL.
Tested on macOS 10.13.2 with OpenSSL.
Change-Id: I1c9ffc3c70f61af65c4f1c48670badaf74b672b7
|
|
Boost 1.64 introduced a regression where boost::optional deserialisation
could lead to a crash when loading the recent chats.
This fix updates the way we serialise the ChatListWindow::Chat and
HighlightAction classes to avoid these errors.
A flag has been added, to allow the use of the erroneous version of the
library during the build. During runtime if needed, the client will skip
loading the data, to avoid any unpredicted behaviour.
Test-Information:
Tested on windows 10 with different versions of boost 1.56(bundled), 1.63,
1.64, 1.65 and Ubuntu 17.04 with versions 1.56(bundled) and 1.64. Added
unit tests for the serialisation ChatListWindow::Chat class.
Change-Id: Idc5c3a6cfd92272b8eab2d77e243dda743803a31
|
|
Clang raises warnings about unused members and
macros on Linux. These are fixed with this change.
Test-Information:
Tested with clang-3.9 on Debian Stretch.
Change-Id: I87bc0606cfd14365330aaad4ed433d3bca2d5330
|
|
If scons detects a Sparkle release in the 3rdParty folder,
it will add the containing LICENSE file at the end of the
dynamically generated COPYING file.
Test-Information:
Tested that the contents of Sparkle’s LICENSE file are at
the end of the text in the license window of the about dialog,
if the Sparkle folder, with a Sparkle release inside, is
present in 3rdParty.
Tested that Swift builds fine, if the Sparkle folder is
missing in 3rdParty.
Change-Id: I89db155b5bb3eef4d632997fd99ff270b4720a16
|
|
Test-Information:
Build Swiften on Debian 8.6 with all installed dependencies
with and without passing these new options to scons. Either case
built fine.
Change-Id: I4867c0479a0d44b15e12918c5075e9039945ed95
|
|
Sparkle is configured to do silent automatic background
updates based on the provide appcast feed. When a new update
was downloaded and is ready to be installed Swift notifies
the user that they can restart to take advantage of the newly
available version.
Test-Information:
Setup a custom appcast feed with a newer Swift dev release.
Tested updating with Sparkle 1.14.0 binary release using DSA
keys and signatures. Did not test Sparkle update with code
signed Swift builds. Tested on macOS 10.12.
Change-Id: Idad461ec53963c80990e51a502cb6e28bc7b6b4e
|
|
SCons will now include Qt headers via -isystem if the compiler
is either clang or gcc to ignore warnings in files out of our
control.
Fix SCons to test for boost/signals2.hpp header instead of
boost/signals.hpp as we migrated to the newer signals2 library.
Test-Information:
Successfully build with allow_warnings=0 on Debian 8.5 with
system boost.
Change-Id: Ie6871daae73d97369de4de652e994ad5542715cf
|
|
This removes Snarl from 3rdParty, our adapter to it in
SwifTools and the integration in Swift UI.
Test-Information:
Builds and installer still work on Windows 8. Standard
system tray balloon notifications still work.
Change-Id: Id580642932eac260c79eaf2343a94ec9d5606f11
|
|
Test-Information:
Unit and integration tests pass with system libs on Debian 8.5.
Change-Id: Ibcf7a1e07071d5de10c9d99c9b38e67b747f45eb
|
|
This changes HippoMocks include to -isystem include so it will
not cause compiler warnings.
This changes UserLocation floating point values to double and
remove remaining numerical casts.
Change C++11 compiler test to not cause warnings.
Test-Information:
Builds with allow_warnings=0 on OS X 10.11.5 with Xcode clang.
Change-Id: I26c60265a86c9be656089ade63fe9ad63851580f
|
|
Converted relevant SCons files from hard tabs to space based
indentation with 4 spaces width.
Test-Information:
Tested that build failed with misconfigured OpenSSL backend
(providing tls_backend=openssl on OS X and no information on
where to find it).
Tested that build succeeds on OS X 10.11.4.
Change-Id: I17f85ca3194f100f63361a8c94667d7aa76e811a
|
|
The signals library is still called signals and not signals2.
Test-Information:
Builds and unit tests pass on Debian 8.4 with system GCC.
Change-Id: I1d1b3f6bade979bc8a181915176b84be0ddf6597
|
|
Boost.Signals was deprecated and is not improved further.
This patch removes Boost.Signals from 3rdParty and adds
Boost.Signals2 and its dependencies.
Also removed the Qt signals compatibility file
Swiften/Base/boost_bsignals.h.
Test-Information:
Build and ran unit tests on OS X 10.11.4. Confirmed successful
login using Swift client.
Change-Id: Ie6e3b2d15aac2462cda95401582f5287a479fb54
|
|
Added a SCons compiler test so that the build process fails
early if C++11 is not supported.
Remove C++11 checks as we now default to C++11 and they are
not needed anymore.
Ignore a Clang warning if building 3rdParty Boost.
Test-Information:
Tested build and unit tests on OS X 10.11.3.
Change-Id: Icbecbd1e25e8d8bbe5f402f75355373a86b5f8a1
|
|
This commit changes our TLS backend configuration behavior.
It introduces the tls_backend Scons argument, which defaults
to the native backend, but can also explicitly set to
'openssl' to use a project external OpenSSL installation or
'openssl_bundled' to build and configure with the OpenSSL
source in the 3rdParty directory.
Test-Information:
Tested on OS X 10.11.3.
./scons ends up using Secure Transport.
./scons tls_backend=openssl \
openssl_include=/usr/local/opt/openssl/include \
openssl_libdir=/usr/local/opt/openssl/lib \
openssl=/usr/local/opt/openssl successfully builds with
openssl from Homebrew.
./scons tls_backend=openssl_bundled successfully builds with
OpenSSL in 3rdParty.
Change-Id: I4fb0ef9d197609afe793554f86e54fe67fc1cab5
|
|
Our Hunspell support has not been finished and thoroughly
tested yet. This commit disabled building with Hunspell
by default, even if the dependencies for it are installed
on the system.
Remove libhunspell-dev from the build depends in Debian
packaging.
Test-Information:
Tested on Debian 8.
Tested with and without the hunspell_enable=True flag.
With the spellchecking options are shown and however spell
checking is not stable.
Without it the spellchecking options are not shown and
spellchecking is disabled in general, as expected.
Change-Id: I100582852cbe128149fdb2e2a28d4ae407398be6
|
|
This will print errors like missing Qt linguist tools.
Test-Information:
Tested on Fedora 22 and OS X 10.11.3.
Change-Id: I0817f368920b839805597d8eb2f3297b1fbd90e6
|
|
Test-Information:
Tested on Debian 8 with system Boost packages.
Change-Id: Ice6a98dc8ba3f09502d79e704c3e1b744d829d5d
|
|
Even when using the OpenSSL TLS backend for Swiften secur32.lib is required by
Swiften/SASL/WindowsAuthentication.
This also adds additional flags needed to build a bundled OpenSSL on Windows.
Test-Information:
Tested on Windows 8 with VS 2013.
Change-Id: I51da79cfa7931c07c8da3f0c5d941a637ac26d0c
|
|
Added integration tests for certificate validation and
revocation behavior checking.
Test-Information:
Tested client login over TLS against Prosody and M-Link.
Verified client certificate authentication works against
M-Link.
Change-Id: I6ad870f17adbf279f3bac913a3076909308a0021
|
|
Test-Information:
Verified that SCons still runs on OS X.
Change-Id: I7e9b97f90ee5581a691a959b6f2c999d93e0be53
|
|
Test-Information:
Tested behavior on Elementary OS 0.2.1.
Change-Id: I887b85b78bfe5210844e0ea31f496fdbc8c21fa0
|
|
When compiling with Clang or GCC, include 3rdParty libraries as system
headers and frameworks (-isystem and -f).
Test-Information:
Tested with Clang on OS X.
Change-Id: I184221ddc4b34d30ee6ba66e202953619b5afd56
|
|
Test-information:
Ran through the configuration step on a machine with only Python 2.4
Change-Id: I3d5ba54395ede875c7f21c2769151fe6d308e760
|
|
This will clearly break all the tests, Swift, Sluift etc., but is useful
if someone wants to use Swiften and inject their own IDN provider.
Test-information:
Compiles with Isode's IDN provider
Change-Id: Ia55991054f42f332bf34b653d7b55f64f654820e
|
|
Includes fixes to:
Build with new Visual Studio and Boost
Avoid error caused when Avahi is present but Qt is not
Make declaration of XMPPRosterImpl::addContact consistent with implementation
Includes enhancements to:
Allow user-configurable mt.exe
Allow splitting openssl paths
Allow disabling gconf lookup
Make idn support optional
Allow disabling various library detections
Remove use of non-Python2.4 features in sconscripts
Test-Information:
Builds
Change-Id: Iee91ee80291a8bdf87cc169c915e4dad1cc1055b
|
|
Change-Id: I7c83c416507635f5bba6411824bd1a540dffc910
|
|
- Prints results of each command (if it can be interpreted as an
expression)
- Stores results of last command in _1, _2, ...
- Supports tab completion
- Compatible with Lua 5.2
Other changes:
- Add support for specifying custom editline library
- Don't load sluift into global namespace. Tab completion should be
convenient enough.
Change-Id: I2a26346469d67c281d09d47cacaa0b267f5ea9f9
|
|
- Rename boot.lua to core.lua
- Support Lua 5.2
- Support version prefixes for sluift module
- Add Client:process_events
Change-Id: I3fa6d06d1dbdf86f65b9f4203bd2ec5b5526b104
|
|
Effectively disables whiteboarding and history in default builds so we can avoid having to do a full cleanup of them for 3.0. File transfer remains enabled in default builds as we're intending getting that ready and shipping it.
Change-Id: I8c1dcc989f238b58d6d7c426485e7cf582514d8f
|
|
Change-Id: I363e9d740bbec311454827645f4ea6df8bb60bed
License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
|
|
Change-Id: I6bb4c81b1f92a5b038ff034a4e03bab997fe8880
|
|
Change-Id: I665a603b1afa1e24e1b73618e976113a87be2001
|
|
Change-Id: I04ff7111b73565c00bff6db183451774a633344f
|
|
Change-Id: I1d74324515b20e0dc3d0ef4aa2f556fea7b4bee3
License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.s
|
|
This script allows you to use ninja to drive your build, but
using SCons in the back to generate the ninja files.
Change-Id: I410d80d91f3c2ca6f369169d9b004b531625022f
|
|
Change-Id: I6d86bf7d8dcc750ff69ff08500c9987b3c1de43e
|
|
Change-Id: I504fa7d33b8cb6572f05ba8478d277ddc7705483
|
|
Change-Id: I2c00de607e204f7d2c474aa9d4c18cde86d575ec
|
|
Change-Id: Ia15b6532edf6eef7c45bdfb273e77f65ce998f13
License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details
|
|
Change-Id: I8cda6397048911f48575659ef2f59076d8022f03
|
|
Change-Id: Ic11b04663f324b75d81a18887cbe4c7324823c86
|
|
Change-Id: I5fbe1a44ae95c80eaf11bda466576154633abda8
|
|
This slightly speeds up compilation on Windows. Adding this mostly
as demonstrating/documentation purposes.
Change-Id: Ic50aaef04589c79b926a0dcb4bb8d00284fd5a21
|
|
Resolves: #1173
Change-Id: I79343bf8ff0d14528825699d8eee79985a09d29d
|
|
|
|
|