AgeCommit message (Collapse)Author
2019-11-19Remove std::endl from SWIFT_LOG callsEdwin Mons
The std::endl is now added by ~Log, but only for output to stderr or a log file. Calls to the Android logging system or manually set callbacks will not include the newline in the logging output. JIRA: SWIFT-430 Test-Information: Unit tests pass on Debian 9 Checked that running Swift with logging to stderr still had a newline. Change-Id: I096fdba78a3b8f87db2097951c28c528592183e8
2019-03-19Replace use of Cocoa API deprecated in 10.14 in SlimberTobias Markmann
macOS 10.14 started to deprecate some old Cocoa API. This replaces use of the deprecated API with newer Cocoa API. Test-Information: Still builds fine on macOS 10.14.3. Verified that Slimber still works as expected. Change-Id: Id772af58b3fd233ecf829b80eca59815184a6113
2018-11-14Build on MojaveKevin Smith
We can't target 10.5 any more with the latest xcode, so instead of thinking too much about the right thing, just bump to 10.6 for the moment. Test-Information: Builds again on Mojave Change-Id: I3975a3ce0c8246ba4dabb0f86390060c4c4a1972
2018-11-14Address LinkLocal issuesEdwin Mons
Generation of TXT records might fail if any of the fields is too long, so the result is now an optional (pending Expected). Callsites have been updated to deal with this. Three potentially uncaught exceptions in the Bonjour implementation have been addressed. Test-Information: Unit tests pass on macOS 10.14 and Debian 9 Change-Id: Iec02c4606a18eee855362fd3c3d15614a9e72547
2018-11-08Consistently use unsigned short for network portsEdwin Mons
Network ports are now consistently stored as unsigned shorts, apart from the options and user interface, where -1 is still used to denote the use of default ports. Test-Information: Unit tests pass on macOS 10.13 and Debian 9 On macOS: tested the UI with various proxy and manual ports, behaviour as expected. Change-Id: I7a65f40083022887aa30ed7b21eadc56d0c52be1
2018-07-27Autofix boost-use-to-string clang-tidy warningsKevin Smith
Done by adding --fix --fix-errors to the clang-tidy args in the Makefile Test-Information: Unit tests pass (macOS) Change-Id: I3a4df955ac3553afeb9384f23f9d8b2ef01117e2
2018-07-12Fix Python 3 compatibility of our SCons and tooling Python codeTobias Markmann
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
2016-11-23Migrate remaining Swiften/Base/foreach.h use to range-based for loopTobias Markmann
Test-Information: Build on macOS 10.12.1 and all tests pass. Change-Id: Iedaa3fa7e7672c77909fd0568bf30e9393cb87e0
2016-05-25Remove unnecessary include of iostream headerTobias Markmann
Move std::cout/cerr logging to SWIFT_LOG. Test-Information: Builds and all tests pass on OS X 10.11.5. Change-Id: I0a0c24654a8b3abf3244a79fd6d970eee90559d0
2016-04-25Convert hard tabs to four spaces in all our SConscript/*.py filesTobias Markmann
Test-Information: Test that it still builds and unit test pass on OS X 10.11.4. Change-Id: I2eb4a0b707991aee553db36a8cd1ae28b813acab
2016-04-05Migrate to Boost.Signals2 from Boost.SignalsTobias Markmann
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
2016-04-04Modernize code to use C++11 shared_ptr instead of Boost'sTobias Markmann
This change was done by applying the following 'gsed' replacement calls to all source files: 's/\#include <boost\/shared_ptr\.hpp>/\#include <memory>/g' 's/\#include <boost\/enable_shared_from_this\.hpp>/\#include <memory>/g' 's/\#include <boost\/smart_ptr\/make_shared\.hpp>/\#include <memory>/g' 's/\#include <boost\/make_shared\.hpp>/\#include <memory>/g' 's/\#include <boost\/weak_ptr\.hpp>/\#include <memory>/g' 's/boost::make_shared/std::make_shared/g' 's/boost::dynamic_pointer_cast/std::dynamic_pointer_cast/g' 's/boost::shared_ptr/std::shared_ptr/g' 's/boost::weak_ptr/std::weak_ptr/g' 's/boost::enable_shared_from_this/std::enable_shared_from_this/g' The remaining issues have been fixed manually. Test-Information: Code builds on OS X 10.11.4 and unit tests pass. Change-Id: Ia7ae34eab869fb9ad6387a1348426b71ae4acd5f
2016-04-01Modernize code to use C++11 nullptr using clang-tidyTobias Markmann
Run 'clang-tidy -fix -checks=modernize-use-nullptr' on all source code files on OS X. This does not modernize platform specific code on Linux and Windows Test-Information: Code builds and unit tests pass on OS X 10.11.4. Change-Id: Ic43ffeb1b76c1a933a55af03db3c54977f5f60dd
2016-03-31Convert tabs to 4 spaces for all source filesTobias Markmann
Removed trailing spaces and whitespace on empty lines in the process. Changed tool to disallow hard tabs in source files. Test-Information: Manually checked 30 random files that the conversion worked as expected. Change-Id: I874f99d617bd3d2bb55f02d58f22f58f9b094480
2016-03-30Apply consistent #include grouping and sorting styleTobias Markmann
Changed "" style includes to <> style. Test-Information: Build with Clang 3.9.0 and ran all tests on OS X 10.11.4. Change-Id: Ic05e53f2e5dba39cc1307b116fc5f17b62ab9eb8
2016-03-15Explicitly convert between nullable and non-nullable on OS XTobias Markmann
Clang was complaining about implicit conversions between nullable and non-nullable NSString pointers. Adjusted our std::string -> NSString* conversion utilities to check for nil and return an empty std::string in that case. Replaced uses of [NSString stringWithUTF8String] with our STD2NSSTRING macro. Turned std::string <-> NSString* conversion macros into functions. Test-Information: Builds without the warning on OS X 10.11.3 and Swift runs without issues. Change-Id: I949f2f3332018391aead58ef362764f4b7955b01
2015-10-30Remove Boost workaround for OS X headersTobias Markmann
Older versions of OS X define the same symbol as Boost does. The workaround, defining __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES as 0 worked around this issue, however __ prefixed defines are considered private and cause the warning "macro name is a reserved identifier [-Wreserved-id-macro]". Test-Information: Builds and unit tests pass on OS X 10.10.5. Change-Id: I489ec201dc31fb4e43336da690c7d348a7d0d9ca
2015-05-19Consolidate Python and SCons files to tab based indentationTobias Markmann
Test-Information: Verified that SCons still runs on OS X. Change-Id: I7e9b97f90ee5581a691a959b6f2c999d93e0be53
2015-04-28Add Qt flags detection using pkg-config on Linux platformsTobias Markmann
Fix SCons module to use the specific tools of the correct Qt verison. On non-Windows and non-Darwin platforms SCons will try to detect the correct Qt compiler and linker flags from pkg-config. Added the ability to build Slimber with Qt5. Fixed Qt5 support on Linux when using prebuilt Qt distribution from Qt. This patch adds support for building Swift on Arch Linux, with Qt4 and Qt5. Test-Information: Tested under Mac OS X 10.9.5 and Manjaor Linux (Arch Linux) in Qt4 and Qt5 configuration, and tested Qt5 Linux binary from their website on Arch Linux with the qt variable set in Change-Id: I2e19ab4aa7a26fdd989e2a12faa51a0f3f89c3ce
2014-12-15Update Copyright In SlimberKevin Smith
Change-Id: I927ac2ed7be0153bb0e3d9f33c3001734ee9f65c
2014-10-01Port many of Isode's local fixes upstreamKevin Smith
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
2014-08-10Fix invalid characters being allowed in JID domainsRichard Maudsley
Test-Information: Prepare valid and invalid JIDs and make sure that isValid() is reported correctly. Added unit tests. Change-Id: Ic4d86f8b6ea9defc517ada2f8e3cc54979237cf4
2014-04-28Create ToplevelElement to replace Element.Richard Maudsley
Change-Id: I3460f6f4a2ffa9b795080664f49d9138440de72d
2014-01-25Fix images which caused libpng to issue warningsPavol Babincak
Warnings were seen in console while running Swift. Used ImageMagick to do identity reconversion: $ convert file.png file.png Following warnings were seen during reconversion on Fedora 20 with libpng-devel-1.6.3-3.fc20.x86_64 and ImageMagick- convert: cHRM: invalid chromaticities `./Swift/resources/icons/certificate.png' convert: iCCP: known incorrect sRGB profile `./Slimber/Resources/Offline.png' @ warning/png.c/MagickPNGWarningHandler/1830. convert: iCCP: known incorrect sRGB profile `./Swift/resources/icons/certificate.png' @ warning/png.c/MagickPNGWarningHandler/1830. convert: cHRM: invalid chromaticities `./Swift/resources/icons/certificate.png' @ warning/png.c/MagickPNGWarningHandler/1830. convert: iCCP: known incorrect sRGB profile `./Swift/resources/themes/Default/Incoming/buddy_icon.png' @ warning/png.c/MagickPNGWarningHandler/1830. convert: iCCP: known incorrect sRGB profile `./Swift/resources/themes/Default/Outgoing/buddy_icon.png' @ warning/png.c/MagickPNGWarningHandler/1830. convert: iCCP: profile 'Photoshop ICC profile': 'RGB ': RGB color space not permitted on grayscale PNG `./Swift/resources/logo/logo-chat-100.png' @ warning/png.c/MagickPNGWarningHandler/1830. convert: iCCP: profile 'Photoshop ICC profile': 'RGB ': RGB color space not permitted on grayscale PNG `./Swift/resources/logo/logo-chat-16.png' @ warning/png.c/MagickPNGWarningHandler/1830. And following on Ubuntu 13.10 with libpng12-dev 1.2.49-4ubuntu1 and imagemagick 8: convert.im6: Ignoring attempt to set cHRM RGB triangle with zero area `./Swift/resources/icons/certificate.png' @ warning/png.c/MagickPNGWarningHandler/1754. Change-Id: Ic8689f220c1863ec9b3dfa7686633e707d253317 License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2013-08-15Getting rid of "-Wobjc-interface-ivars" warnings from clang.Tobias Markmann
Move instance variables to implementation because they are deprecated to have in the interface. Requires 'Modern' obj-c runtime. Change-Id: I60d693b7966e08ccc003818ab51ea3633c90ae17 License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2013-01-13Fix more warnings.Remko Tronçon
Fix sign conversion warnings. Removing heavy unnecessary includes. Change-Id: I992f43065498823098a875badb020c7c84fc4797
2013-01-01Fix Objective-C memory leaks.Remko Tronçon
Change-Id: I62206d3813e8873f027ff46e525a30bcb2e945c9
2012-12-23Fix Cocoa-Boost conflict.Remko Tronçon
This one only seems to appear when using CLang. Change-Id: Ib12fbeb3da0dfb54aef0613c7b9eba577654cd6a
2012-06-17Remove some unused private variables.Remko Tronçon
2012-06-05Added ICU support.Remko Tronçon
2012-03-20boost::shared_ptr<?>(new ?(...)) -> boost::make_shared<?>(...) ↵Tobias Markmann
transformation where possible. License: This patch is BSD-licensed, see
2011-10-07Hoist XML parser factory creation out of Swiften.Remko Tronçon
2011-07-03Implement TableRoster with roster diff.Remko Tronçon
2011-06-18Merge branch 'swift-1.x'Remko Tronçon
* swift-1.x: Fixed compilation of Slimber/Qt. Fixed flag order in Slimber. MergeFlags->UseFlags in Slimber. Use UseFlags for compiling the unit test.
2011-06-18Fixed compilation of Slimber/Qt.Remko Tronçon
2011-06-18Fixed flag order in Slimber.Remko Tronçon
2011-06-18MergeFlags->UseFlags in Slimber.Remko Tronçon
2011-06-18Merge branch 'swift-1.x'Remko Tronçon
* swift-1.x: Moving unused server code out of Swiften into Limber. Conflicts: Limber/Server/ServerFromClientSession.cpp Limber/Server/ServerSession.cpp Limber/Server/ServerStanzaRouter.cpp Limber/Server/SimpleUserRegistry.cpp Limber/Server/SimpleUserRegistry.h Limber/Server/UnitTest/ServerStanzaRouterTest.cpp Limber/Server/UserRegistry.cpp Limber/main.cpp Slimber/Server.cpp Slimber/Server.h
2011-06-18Moving unused server code out of Swiften into Limber.Remko Tronçon
2011-06-13Added CppCheck script.Remko Tronçon
Tweaked the sources to satisfy cppcheck.
2011-05-18Introduce safe containers for storing passwords.Remko Tronçon
2011-05-10Fix buildKevin Smith
2011-05-05Replace ByteArray by typedef.Remko Tronçon
2011-05-02Replace auto_ptr by shared_ptr.Remko Tronçon
2011-04-30Replace #include "" by #include <> in SwifTools, Swiftob, Slimber and Limber.Remko Tronçon
2011-04-18Added RFC5122 XMPP URI parsing and basic handling.Remko Tronçon
URI Handling currently only works on Mac OS X.
2011-04-18Cleaned up includes.swift-2.0alphaRemko Tronçon
2011-03-12Make ByteArray an std::vector<unsigned char>.Remko Tronçon
2011-02-19Make Swift translatable.Remko Tronçon
2011-02-16Fixed slimber compilation.Remko Tronçon