Changeset - 935a5a7eb13a
[Not reviewed]
2.0.7
0 2 0
Vitaly Takmazov - 8 years ago 2018-04-27 12:27:02
vitalyster@gmail.com
bump version to 2.0.7
2 files changed with 8 insertions and 1 deletions:
0 comments (0 inline, 0 general)
CMakeLists.txt
Show inline comments
 
@@ -63,385 +63,385 @@ if(NOT SWIFTEN_FOUND)
 
	if (EXPAT_LIBRARY)
 
		set(SWIFTEN_LIBRARY ${SWIFTEN_LIBRARY} ${EXPAT_LIBRARY})
 
	endif()
 
	if (LIBIDN_LIBRARY)
 
		set(SWIFTEN_LIBRARY ${SWIFTEN_LIBRARY} ${LIBIDN_LIBRARY})
 
	endif()
 
	if (LIBXML_LIBRARY)
 
		set(SWIFTEN_LIBRARY ${SWIFTEN_LIBRARY} ${LIBXML_LIBRARY})
 
	endif()
 
	set(SWIFTEN_LIBRARY ${SWIFTEN_LIBRARY} "Dnsapi")
 
	set(SWIFTEN_LIBRARY ${SWIFTEN_LIBRARY} "Crypt32")
 
	set(SWIFTEN_LIBRARY ${SWIFTEN_LIBRARY} "Secur32")
 
	set(SWIFTEN_LIBRARY ${SWIFTEN_LIBRARY} "Iphlpapi")
 
	set(SWIFTEN_LIBRARY ${SWIFTEN_LIBRARY} "Winscard")
 
	message(STATUS "XXXUsing swiften: ${SWIFTEN_INCLUDE_DIR} ${SWIFTEN_LIBRARY}
 
	Version: ${SWIFTEN_VERSION}")
 
endif()
 

	
 
# FIND BOOST
 
if (WIN32)
 
	set(Boost_USE_STATIC_LIBS      OFF)
 
	set(Boost_USE_MULTITHREADED      ON)
 
	set(Boost_USE_STATIC_RUNTIME    OFF)
 
	add_definitions(-DBOOST_ALL_DYN_LINK)
 
	add_definitions(-DBOOST_ALL_NO_LIB)
 
endif(WIN32)
 
	set(Boost_FIND_QUIETLY ON)
 
	find_package(Boost COMPONENTS program_options date_time system filesystem regex thread signals locale REQUIRED)
 

	
 
message( STATUS "Found Boost: ${Boost_VERSION}, ${Boost_LIBRARIES}, ${Boost_INCLUDE_DIR}")
 

	
 
if (${Boost_VERSION} GREATER 104999)
 
	message( STATUS "Using BOOST_FILESYSTEM_VERSION=3")
 
	add_definitions(-DBOOST_FILESYSTEM_VERSION=3)
 
endif()
 

	
 
# FIND POPT
 
if (NOT WIN32)
 
	set(popt_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
	find_package(popt REQUIRED)
 
endif()
 

	
 
###### Database ######
 

	
 
# FIND SQLITE3
 
if (ENABLE_SQLITE3)
 
	set(sqlite3_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
	find_package(sqlite3)
 
endif()
 

	
 
# FIND MYSQL
 
if(ENABLE_MYSQL)
 
	set(mysql_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
	find_package(mysql)
 
endif()
 

	
 
# FIND PQXX
 
if(ENABLE_PQXX)
 
	set(pqxx_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
	find_package(pqxx)
 
endif()
 

	
 
###### Plugins ######
 

	
 
# FIND LIBPURPLE
 
if(ENABLE_PURPLE)
 
	set(purple_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
	find_package(purple)
 

	
 
	if (WIN32)
 
		if (PURPLE_NOT_RUNTIME)
 
			add_definitions(-DPURPLE_RUNTIME=0)
 
		else(PURPLE_NOT_RUNTIME)
 
			add_definitions(-DPURPLE_RUNTIME=1)
 
		endif(PURPLE_NOT_RUNTIME)
 
	else()
 
		add_definitions(-DPURPLE_RUNTIME=0)
 
	endif()
 

	
 
	# FIND LIBEVENT
 
	set(event_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
	find_package(event)
 
endif()
 

	
 
# FIND GLIB
 
if(ENABLE_PURPLE)
 
#	if (GLIB2_INCLUDE_DIR AND GLIB2_LIBRARIES)
 
#		set(GLIB2_FOUND TRUE)
 
#	else()
 
		set(glib_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
		find_package(glib)
 
#	endif()
 
endif()
 

	
 
# FIND LIBXML2
 
# set(libxml2_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
# find_package(libxml2)
 

	
 
# FIND PROTOBUF
 
set(Protobuf_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
find_package(Protobuf REQUIRED)
 

	
 
if (NOT PROTOBUF_FOUND AND PROTOBUF_INCLUDE_DIR AND PROTOBUF_LIBRARY)
 
	set(PROTOBUF_FOUND 1)
 
	set(PROTOBUF_INCLUDE_DIRS ${PROTOBUF_INCLUDE_DIR})
 
	if (PROTOBUF_PROTOC_EXECUTABLE)
 
	else()
 
		set(PROTOBUF_PROTOC_EXECUTABLE protoc)
 
	endif()
 
	message(STATUS "Using protobuf: ${PROTOBUF_INCLUDE_DIRS} ${PROTOBUF_LIBRARY}")
 
endif()
 

	
 
find_package(PkgConfig REQUIRED)
 
pkg_check_modules(JSONCPP jsoncpp)
 
include_directories(${JSONCPP_INCLUDE_DIRS})
 

	
 
if (WIN32)
 
	add_definitions(-DSWIFTEN_STATIC=1)
 
	ADD_DEFINITIONS(-D_WIN32_WINNT=0x0600)
 
	ADD_DEFINITIONS(-DWIN32_LEAN_AND_MEAN)
 
	ADD_DEFINITIONS(-DBOOST_USE_WINDOWS_H)
 
	ADD_DEFINITIONS(-D_UNICODE)
 
	ADD_DEFINITIONS(-DUNICODE)
 
endif()
 

	
 

	
 
if (CMAKE_COMPILER_IS_GNUCXX)
 
set(openssl_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
find_package(openssl)
 
endif()
 

	
 
if(ENABLE_IRC)
 
	set(Communi_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
	find_package(Communi)
 

	
 
	INCLUDE(FindQt4)
 
	FIND_PACKAGE(Qt4 COMPONENTS QtCore QtNetwork)
 
	# ADD_DEFINITIONS(${SWIFTEN_CFLAGS})
 
	ADD_DEFINITIONS(-DSUPPORT_LEGACY_CAPS)
 
	# ADD_DEFINITIONS(-DBOOST_FILESYSTEM_VERSION=2)
 
endif()
 

	
 
set(event_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
find_package(event)
 

	
 

	
 
####### Miscallanous ######
 

	
 
if(ENABLE_DOCS)
 
	find_package(Doxygen)
 
endif()
 

	
 
# if(ENABLE_LOG)
 
	if(LOG4CXX_INCLUDE_DIR AND LOG4CXX_LIBRARY)
 
		set(LOG4CXX_LIBRARIES ${LOG4CXX_LIBRARY})
 
		set(LOG4CXX_FOUND 1)
 
		message(STATUS "Using log4cxx: ${CPPUNIT_INCLUDE_DIR} ${LOG4CXX_INCLUDE_DIR}")
 
	else()
 
		set(log4cxx_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
		find_package(log4cxx)
 
	endif()
 
# endif()
 

	
 
# FIND CPPUNIT
 
if(ENABLE_TESTS)
 
	set(cppunit_DIR "${CMAKE_SOURCE_DIR}/cmake_modules")
 
	find_package(cppunit)
 

	
 
	if(NOT CPPUNIT_FOUND AND CPPUNIT_INCLUDE_DIR AND CPPUNIT_LIBRARY)
 
		set(CCPUNIT_LIBRARIES ${CPPUNIT_LIBRARY})
 
		set(CPPUNIT_FOUND 1)
 
		message(STATUS "Using cppunit: ${CPPUNIT_INCLUDE_DIR} ${CPPUNIT_LIBRARIES}")
 
	endif()
 
endif()
 

	
 
message("  Supported features")
 
message("-----------------------")
 

	
 
if (SPECTRUM_VERSION)
 
	ADD_DEFINITIONS(-DSPECTRUM_VERSION="${SPECTRUM_VERSION}")
 
else (SPECTRUM_VERSION)
 
	if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git)
 
		if (NOT GIT_EXECUTABLE)
 
		set (GIT_EXECUTABLE git)
 
		endif()
 
		execute_process(COMMAND ${GIT_EXECUTABLE} "--git-dir=${CMAKE_CURRENT_SOURCE_DIR}/.git" rev-parse --short HEAD
 
						OUTPUT_VARIABLE GIT_REVISION
 
						OUTPUT_STRIP_TRAILING_WHITESPACE
 
		)
 
		set(SPECTRUM_VERSION 2.0.x-git-${GIT_REVISION})
 
		ADD_DEFINITIONS(-DSPECTRUM_VERSION="${SPECTRUM_VERSION}")
 
	else (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git)
 
		set(SPECTRUM_VERSION 2.0.6)
 
		set(SPECTRUM_VERSION 2.0.7)
 
		ADD_DEFINITIONS(-DSPECTRUM_VERSION="${SPECTRUM_VERSION}")
 
	endif (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.git)
 
endif (SPECTRUM_VERSION)
 

	
 
message("Version           : " ${SPECTRUM_VERSION})
 

	
 
if (SQLITE3_FOUND)
 
	ADD_DEFINITIONS(-DWITH_SQLITE)
 
if (WIN32)
 
	include_directories("${CMAKE_SOURCE_DIR}/msvc-deps/sqlite3")
 
	message("SQLite3           : bundled")
 
else (WIN32)
 
	include_directories(${SQLITE3_INCLUDE_DIR})
 
	message("SQLite3           : yes")
 
endif (WIN32)
 
else (SQLITE3_FOUND)
 
	set(SQLITE3_LIBRARIES "")
 
	if(ENABLE_SQLITE3)
 
		message("SQLite3           : no (install sqlite3)")
 
	else(ENABLE_SQLITE3)
 
		message("SQLite3           : no (user disabled)")
 
	endif()
 
endif (SQLITE3_FOUND)
 

	
 
if (MYSQL_FOUND)
 
	ADD_DEFINITIONS(-DWITH_MYSQL)
 
	include_directories(${MYSQL_INCLUDE_DIR})
 
	message("MySQL             : yes")
 
else (MYSQL_FOUND)
 
	set(MYSQL_LIBRARIES "")
 
	if(ENABLE_MYSQL)
 
		message("MySQL             : no (install mysql-devel)")
 
	else(ENABLE_MYSQL)
 
		message("MySQL             : no (user disabled)")
 
	endif()
 
endif (MYSQL_FOUND)
 

	
 
if (PQXX_FOUND)
 
	ADD_DEFINITIONS(-DWITH_PQXX)
 
	include_directories(${PQXX_INCLUDE_DIR})
 
	message("PostgreSQL        : yes")
 
else (PQXX_FOUND)
 
	set(PQXX_LIBRARY "")
 
	set(PQ_LIBRARY "")
 
	if(ENABLE_PQXX)
 
		message("PostgreSQL        : no (install libpqxx-devel)")
 
	else(ENABLE_PQXX)
 
		message("PostgreSQL        : no (user disabled)")
 
	endif()
 
endif (PQXX_FOUND)
 

	
 
if (PROTOBUF_FOUND)
 
	ADD_DEFINITIONS(-DWITH_PROTOBUF)
 
	include_directories(${PROTOBUF_INCLUDE_DIRS})
 
	message("Network plugins   : yes")
 

	
 
	if(PURPLE_FOUND)
 
		message("Libpurple plugin  : yes")
 
		include_directories(${PURPLE_INCLUDE_DIR})
 
		include_directories(${GLIB2_INCLUDE_DIR})
 
	else()
 
		if(ENABLE_PURPLE)
 
			message("Libpurple plugin  : no (install libpurple)")
 
		else(ENABLE_PURPLE)
 
			message("Libpurple plugin  : no (user disabled)")
 
		endif()
 
	endif()
 

	
 
	if (HAVE_EVENT)
 
		ADD_DEFINITIONS(-DWITH_LIBEVENT)
 
		include_directories(${EVENT_INCLUDE_DIRS})
 
		message("  libev eventloop : yes")
 
	else()
 
		if(ENABLE_PURPLE)
 
			message("  libev eventloop : no (install libev-devel)")
 
		endif()
 
	endif()
 

	
 
	if(IRC_FOUND)
 
		ADD_DEFINITIONS(-DIRC_SHARED)
 
		message("IRC plugin        : yes")
 
		include_directories(${QT_QTNETWORK_INCLUDE_DIR})
 
		include_directories(${IRC_INCLUDE_DIR})
 
		include(${QT_USE_FILE})
 
	else()
 
		if(ENABLE_IRC)
 
			message("IRC plugin        : no (install libCommuni and libprotobuf-dev)")
 
		else(ENABLE_IRC)
 
			message("IRC plugin        : no (user disabled)")
 
		endif()
 
	endif()
 
	if(ENABLE_TWITTER)
 
		message("Twitter plugin    : yes")
 
	else(ENABLE_TWITTER)
 
		message("Twitter plugin    : no (user disabled)")
 
	endif()
 
	if (NOT WIN32)
 
		if(ENABLE_FROTZ)
 
			message("Frotz plugin      : yes")
 
		else()
 
			message("Frotz plugin      : no (user disabled)")
 
		endif()
 
		if(ENABLE_SMSTOOLS3)
 
			message("SMSTools3 plugin  : yes")
 
		else()
 
			message("SMSTools3 plugin  : no (user disabled)")
 
		endif()
 
	else()
 
		message("Frotz plugin      : no (does not run on Win32)")
 
		message("SMSTools3 plugin  : no (does not run on Win32)")
 
		message("Skype plugin      : no (does not run on Win32)")
 
	endif()
 

	
 
	if(ENABLE_XMPP)
 
		message("Swiften plugin    : yes")
 
	else()
 
		message("Swiften plugin    : no (user disabled)")
 
	endif()
 
else()
 
	message("Network plugins   : no (install libprotobuf-dev)")
 
	message("Libpurple plugin  : no (install libpurple and libprotobuf-dev)")
 
	message("IRC plugin        : no (install libircclient-qt and libprotobuf-dev)")
 
	message("Frotz plugin      : no (install libprotobuf-dev)")
 
	message("SMSTools3 plugin  : no (install libprotobuf-dev)")
 
	message("Swiften plugin    : no (install libprotobuf-dev)")
 
    message("Twitter plugin    : no (install libprotobuf-dev)")
 
endif()
 

	
 
if (LOG4CXX_FOUND)
 
	message("Log4cxx           : yes")
 
	include_directories(${LOG4CXX_INCLUDE_DIR})
 
	ADD_DEFINITIONS(-DWITH_LOG4CXX)
 
else()
 
	set(LOG4CXX_LIBRARIES "")
 
	if (WIN32)
 
		message("Log4cxx           : no (install log4cxx-devel)")
 
	else()
 
		message(FATAL_ERROR "Log4cxx           : no (install log4cxx-devel)")
 
	endif()
 
endif()
 

	
 
if (WIN32)
 
	ADD_DEFINITIONS(-DLOG4CXX_STATIC)
 
endif()
 

	
 
if(CMAKE_BUILD_TYPE MATCHES Debug)
 
	if (CMAKE_COMPILER_IS_GNUCXX)
 
		ADD_DEFINITIONS(-O0)
 
		ADD_DEFINITIONS(-ggdb)
 
	endif()
 
	ADD_DEFINITIONS(-DDEBUG)
 
	message("Debug             : yes")
 
else(CMAKE_BUILD_TYPE MATCHES Debug)
 
	message("Debug             : no (run \"cmake . -DCMAKE_BUILD_TYPE=Debug\")")
 
endif(CMAKE_BUILD_TYPE MATCHES Debug)
 

	
 

	
 
SET(TRANSPORT_VERSION 2.0)
 
SET(PROJECT_VERSION 2.0)
 
include_directories(include)
 

	
 

	
 
include_directories(${EVENT_INCLUDE_DIRS})
 
include_directories(${SWIFTEN_INCLUDE_DIR})
 
include_directories(${Boost_INCLUDE_DIRS})
 

	
 
if (CMAKE_COMPILER_IS_GNUCXX)
 
include_directories(${OPENSSL_INCLUDE_DIR})
 
endif()
 

	
 
ADD_SUBDIRECTORY(libtransport)
 
ADD_SUBDIRECTORY(plugin)
 
ADD_SUBDIRECTORY(include)
 
ADD_SUBDIRECTORY(spectrum)
 
ADD_SUBDIRECTORY(backends)
 
ADD_SUBDIRECTORY(tests)
 
if (NOT WIN32)
 
	ADD_SUBDIRECTORY(spectrum_manager)
 
#	ADD_SUBDIRECTORY(spectrum2_send_message)
 
endif()
 

	
 
if (CPPUNIT_FOUND)
 
	message("Tests             : yes")
 
	include_directories(${CPPUNIT_INCLUDE_DIR})
 
else()
 
	if(ENABLE_TESTS)
 
		message("Tests             : no (install CPPUnit)")
 
	else(ENABLE_TESTS)
 
		message("Tests             : no (user disabled)")
 
	endif()
 
endif()
 

	
ChangeLog
Show inline comments
 
Version 2.0.7 (2018-04-27):
 
	General:
 
	* Fix Web interface and Twitter backend compatibilty with Swiften 4 by switching to C++11-compatible JSON library
 
	* Minor changes in packaging and build environment
 
	XMPP:
 
	* Fix XEP-0085 compatibility with some clients
 

	
 
Version 2.0.6 (2018-02-07):
 
	General:
 
	* Add support for forwading own messages sent from different legacy network client.
 
	XMPP frontend:
 
	* Forward own messages as XEP-280 Carbons. Requires XEP-0356 capable server
 
	  and transport should be configured as privileged entity for outgoing messages.
 
	* Fixed compatibility with XEP-0356: now it can be used to provide remote
 
	  roster management support.
 
	* Forward images using XEP-0066 attachments. May not be compatible with all backends.
 
	Libpurple backend:
 
	* Forward own messages to frontend. Tested with prpl-skypeweb.
 
	* Fixed compatibility with latest prpl-steam-mobile
 
	Minor bugfixes:
 
	* packaging updates and improvements
 
	* better compatibility with newest compilers and libraries
 

	
 
Version 2.0.5 (2017-08-09):
 
	Minor bugfixes:
 
	* fix purple-hangouts login
 
	* fix Debian packages dependencies
 

	
 
Version 2.0.4 (2017-08-03):
 
	General:
 
	* Add support for Swiften 4.0rc2. Swiften 3.x and 2.x are still supported.
 
	* Add support for passwordless libpurple backends (e.g. purple-hangouts).
 
	* Partial support for groupchats with case-sensitive names (e.g. purple-telegram).
 
	* Various small bugfixes, see Git commit descriptions for the full list of changes.
 
	
 
Version 2.0.3 (2016-02-29):
 
	General:
 
	* Swift 3.0rc2 is now minimum Swift 3.x version needed to compile Spectrum2,
 
	  Swith 2.x remains supported.
 
	* Rename user when he tries to connect to room from the second client
 
	  with different nickname than he used with the first client.
 
	* Send self presence as the first presence from the MUC room.
 
	* Send the icon hash to the backend with other buddies information.
 
	* Send unavailable presence as a response to presence for exiting
 
	  the room. Fixes room rejoin in Pidgin.
 
	* Fix memory leak in HTTPRequest - currently used only in Slack frontend.
 

	
 
	Slack frontend:
 
	* For IRC allow registering without providing account name/password.
 
	* Do not reconnect to Slack RTM when no URL is available after disconnect.
 
	* Handle "account_inactive" Slack error.
 

	
 
	Web interface:
 
	* Show warning when trying to register already registered username.
 
	* Allow registering with empty password for networks like IRC where
 
	  password is not needed.
 
	* Allow showing examples of username or server in registration form. This
 
	  is configured in config file.
 
	* Fix `service.base_location` setting for register.shtml page.
 

	
 
	Libpurple backend:
 
	* Make the conversation active according to chatstates notifications.
 
	  Should fix the issue with repeating messages with prpl-facebook.
 
	* When `service.web_directory` and `service.web_url` is set, images sent
 
	  in messages are stored to `service.web_directory` and link is forwarded
 
	  to the user. Tested only with prpl-facebook for now.
 
	* Treat empty password as fatal error - do no try to reconnect
 
	  automatically in that case.
 

	
 
	Libcommuni backend:
 
	* Latest libcommuni 3.4.0 is now needed.
 
	* Libcommuni backend has been improved to use the newest libcommuni
 
	  features.
 
	* Ports can now be set in `service.irc_server` option and in the JID. When
 
	  '+' character is used before the port number, SSL is used automatically.
 
	  When port 6697 is used, SSL is used automatically too.
 

	
 
	Swiften backend:
 
	* Respect the resource when connecting to 3rd-party XMPP network.
 

	
 
Version 2.0.2 (2016-02-09):
 
	General:
 
	* Fix joining the room when using JID Escaping even for '@' character.
 
	* Fix Raw XML mode - fixes the Swiften backend.
 
	* Allow backends to set avatars to buddies in room - currently no backend
 
	  uses it.
 
	* Set the room list per frontend user - this fixes possible information
 
	  for networks like Skype or Facebook where the room list is not global
 
	  per network.
 
	* Support usage of aliases in the rooms, so backends can use the
 
	  network-based UID for the buddies in the room while still setting
 
	  user-friendly aliases to them.
 
	* Fix leaving the room when user is connected to transport using two
 
	  clients, but only one of them joined the room and that one disconnects
 
	  the transport without leaving the room (For example when he just
 
	  quits the client).
 

	
 
	XMPP frontend:
 
	* Handle the XMPP VCard changes - updating avatar should work now for
 
	  backends supporting it.
 

	
 
	Slack frontend:
 
	* Slack frontend is now completely managed by the web interface, old
 
	  way of managing (".spectrum2 ..." commands sent to Spectrum 2 bot)
 
	  are not supported.
 
	* Slack channels are now created automatically on Slack when you join them
 
	  using web-interface. The same applies also to the Main channel.
 
	* Logging has been improved to show the name of Slack team for each log
 
	  line.
 

	
 
	Libpurple backend:
 
	* Forward the room topic to frontend.
 
	* Fix joining the rooms on networks when the nickname in the room cannot
 
	  be changed (Skype or Facebook). Libpurple backend changes your nickname
 
	  to the right one in that case.
 
	* Show the buddies aliases in the Facebook rooms instead of Facebook
 
	  buddies numbers.
 

	
 
	Twitter backend:
 
	* Fix compilation with newer gcc.
 

	
 
	Swiften backend:
 
	* Swiften backend works as before the frontends introduction.
 

	
 
	Skype backend:
 
	* The old skype backend has been removed. Use purple-skypeweb instead.
 

	
 
	Web interface:
 
	* Allow setting "port" and "base_location" in the config file.
 
	* Allow maintaining joined rooms in the Web interface for the Slack
 
	  frontend.
 
	* "[identity] name" config variables is now used as a name of the
 
	  transport.
 

	
 
Version 2.0.1 (2016-01-25):
 
	General:
 
	* Fix wrong nickname when joining room with some backends.
 
	* Leave room when disconnected from 3rd-party network because of an error.
 
	  Fixes a bug when users were not able to rejoin the room after Spectrum 2
 
	  disconnected them from 3rd-party network.
 
	* Fix building on Windows.
 
	* Support case-sensitive buddy names transparently - boost_locale is now
 
	  needed as a new dependency.
 

	
 
	Spectrum2_manager:
 
	* Add simple web interface, can be tested using "spectrum2_manager server".
 

	
 
	XMPP frontend:
 
	* Show MUC feature in room disco#info response.
 

	
 
	Slack frontend:
 
	* Slack frontend is now working as Slack app, so you need to obtain the
 
	  client_id and client_secret from Slack to setup your own server and to
 
	  do the OAuth2 flow, you have to setup the Spectrum2_manager Server. Read
 
	  the documentation for more info.
 
	* Fix OAuth2 registration flow.
 
	* Fix multiple crashes when disconnected from Slack network or from
 
	  3rd-party network.
 
	* Slack frontend should still be used only for testing, it is till under
 
	  the development.
 

	
 
	Libpurple backend:
 
	* Forward room list to frontend.
 
	* Fix compatibility with latest telegram-purple - You mean need to
 
	  unregister the transport and register it again if you experience
 
	  compatibility problems.
 

	
 
	Twitter backend:
 
	* Fix default value of fetch timer.
 
	* Disable useless Curl verbose output.
 
	* Fix crash when populating roster when using Swiften 3.
 
	* Do not set status message for buddies not in Friends list - fixes a bug
 
	  when buddies who are not in Friends list have been added to roster.
 

	
 
Version 2.0.0 (2015-12-29):
 
	General:
 
	* Fix compilation with new versions of Spectrum 2 dependencies.
 
	* Added support for multiple frontends - Slack frontend is the first one.
 
	* Log errors related to backend spawning (Show proper log message for
 
	  example when path to backend binary is not found).
 
	* Set SQLite3 as default database backend.
 
	* Fixed disconnecting from server caused by sending VCard response
 
	  with bad "from" attribute.
 
	* Added Munin plugin (Thanks to Askovpen).
 
	* Added support for more admin_jid JIDs (Thanks to Askovpen).
 
	* Fixed allowed_servers option.
 
	* Options from config file can now be set also using command line like
 
	  --service.jid=domain.tld .
 
	* Do not send password in IQ-get registration response.
 
	* Added support for AdHoc commands.
 
	* Do not store buddies with empty name in database.
 
	* Improved MySQL storage backend performance.
 
	* Fix crash caused by two XMPP users using single PurpleAccount instance.
 
	* Support for [registration] allowed_usernames.
 

	
 
	Spectrum2_manager:
 
	* Rewritten to provide more features. Check the documentation.
 

	
 
	Libpurple:
0 comments (0 inline, 0 general)