Skip to content

Commit

Permalink
Merge branch 'master' into mam
Browse files Browse the repository at this point in the history
  • Loading branch information
Ri0n committed Sep 29, 2024
2 parents f6cfa6e + 4927ae6 commit 56f6c03
Show file tree
Hide file tree
Showing 252 changed files with 17,872 additions and 13,432 deletions.
3 changes: 3 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
github: [Ri0n, Vitozz, tehnick]
Liberapay: Psi
custom: https://yoomoney.ru/to/410011685497701
21 changes: 17 additions & 4 deletions .github/workflows/ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ jobs:
chattype: ['BASIC', 'WEBENGINE']
include:
- compiler: 'clang'
cc: 'clang'
cxx: 'clang++'
cc: 'clang-17'
cxx: 'clang++-17'
- compiler: 'gcc'
cc: 'gcc'
cxx: 'g++'
Expand All @@ -32,15 +32,28 @@ jobs:
- name: Updating apt package metadata
run: |
sudo apt-get update
- name: Installing compiler ${{ matrix.compiler }}
- name: Installing compiler GCC
if: ${{ matrix.compiler == 'gcc' }}
run: |
sudo apt-get -y install ${{ matrix.compiler }}
- name: Installing compiler CLang
if: ${{ matrix.compiler == 'clang' }}
run: |
wget https://apt.llvm.org/llvm.sh
chmod +x ./llvm.sh
sudo ./llvm.sh 17
- name: Remove conflicting slotted packages
run: |
sudo apt-get remove libunwind-*
- name: Installing build system
run: |
sudo apt-get -y install cmake make
- name: Installing development packages
run: |
sudo apt-get -y install \
sudo apt-get -y install --no-install-recommends \
gstreamer1.0-dev \
libhttp-parser-dev \
libhunspell-dev \
Expand Down
2 changes: 1 addition & 1 deletion 3rdparty/qite
Submodule qite updated 1 files
+2 −2 libqite/qiteaudio.cpp
1 change: 1 addition & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ New in 2.0 (UNRELEASED)
- Fixed build for macOS using cmake + different macOS specific improvements
- Different MS Windows specific improvements
- Added official support of Haiku operating system
- Added DOAP file
- PsiMedia (Psi Multimedia) library was rewritten and now is loaded as usual
Psi plugin instead of loading library directly
- Changed plugins API (plugins from old releases of Psi will not work):
Expand Down
61 changes: 25 additions & 36 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules" )
include(psi-cmake-functions)
include(policyRules)

# Define LINUX on Linux like as WIN32 on Windows and APPLE on macOS
if(UNIX AND NOT (APPLE OR HAIKU))
# Define LINUX on Linux like and BSD as WIN32 on Windows and APPLE on macOS
if(UNIX AND (NOT (APPLE OR HAIKU) AND NOT CYGWIN))
set(LINUX ON)
endif()

Expand All @@ -38,7 +38,7 @@ set(SBM_LIST
)
foreach(submodule ${SBM_LIST})
if(NOT EXISTS "${submodule}")
message(FATAL_ERROR "Psi submodules not found.\nPlease run:\n====\ncd ${PROJECT_SOURCE_DIR}\ngit submodule init\ngit submodule update\n====\nbefore run cmake again")
message(FATAL_ERROR "Psi ${submodule} submodule not found.\nPlease run:\n====\ncd ${PROJECT_SOURCE_DIR}\ngit submodule update --init --recursive\n====\nbefore run cmake again")
endif()
endforeach()

Expand Down Expand Up @@ -67,7 +67,6 @@ option( USE_ENCHANT "Build psi with enchant spellcheck" OFF )
option( USE_ASPELL "Build psi with aspell spellcheck" OFF )
option( USE_CCACHE "Use ccache utility if found" ON )
option( USE_CRASH "Enable builtin sigsegv handling" OFF )
option( USE_DBUS "Enable DBUS support" ON )
option( USE_KEYCHAIN "Enable QtKeychain support" ON )
option( ONLY_BINARY "Build and install only binary file" OFF )
option( ONLY_PLUGINS "Build psi plugins only" OFF )
Expand All @@ -79,8 +78,12 @@ option( DEV_MODE "Enable prepare-bin-libs target for MS Windows only. Set PSI_DA
# Iris options
option( BUNDLED_IRIS "Build iris library bundled" ON )
option( BUNDLED_IRIS_ALL "Build bundled iris library with bundled QCA and bundled USRSCTP" OFF)
option( IRIS_BUNDLED_QCA "Adds: DTLS, Blake2b and other useful for XMPP crypto-stuff" ${DEFAULT_BUNDLED_QCA} )
# note Blake2b is needed only with Qt5. Qt6 has its own implementation
option( IRIS_BUNDLED_QCA "Adds: DTLS, Blake2b (needed with Qt5) and other useful for XMPP crypto-stuff" ${DEFAULT_BUNDLED_QCA} )
option( IRIS_BUNDLED_USRSCTP "Compile compatible usrsctp lib when system one is not available or uncompatible (required for p2p file transfer)" ${DEFAULT_BUNDLED_USRSCTP} )
option( BUNDLED_KEYCHAIN "Build QtKeychain library bundled" OFF )
option( USE_TASKBARNOTIFIER "Use taskbar notifications for incoming events" ON )

if (UNIX AND "${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
option( ENABLE_ASAN "Enable compilation with address sanitizer" OFF )
endif()
Expand All @@ -91,6 +94,7 @@ option( USE_MXE "Use MXE (cross-compilation build environment for MS Windows)" $

# Other systems
if(LINUX)
option( USE_DBUS "Enable DBUS support" ON )
option( USE_X11 "Enable X11 features support" ON )
option( USE_XSS "Enable Xscreensaver support" ON )
option( LIMIT_X11_USAGE "Disable usage of X11 features which may crash program" OFF )
Expand All @@ -100,10 +104,6 @@ elseif(APPLE)
option( USE_MAC_DOC "Use macOS dock" OFF )
endif()

if(WIN32 AND ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug" OR ("${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo")))
option( NO_DEBUG_OPTIMIZATION "Disable optimization for debug builds" OFF )
endif()

if( USE_HUNSPELL AND (USE_ENCHANT AND USE_ASPELL) )
message(FATAL_ERROR "Flags USE_HUNSPELL, USE_ASPELL and USE_ENCHANT cannot be enabled at the same time.\nPlease enable only one of them")
elseif( USE_HUNSPELL AND USE_ASPELL )
Expand All @@ -125,17 +125,10 @@ set(IS_WEBENGINE OFF CACHE INTERNAL "Use webengine. Internal variable")
string(TOLOWER "${CHAT_TYPE}" LCHAT_TYPE)

if("${LCHAT_TYPE}" STREQUAL "webkit")
add_definitions(
-DWEBKIT
)
set(IS_WEBKIT ON)
message(STATUS "Chatlog type - QtWebKit")
elseif("${LCHAT_TYPE}" STREQUAL "webengine")
set(IS_WEBENGINE ON)
add_definitions(
-DWEBKIT
-DWEBENGINE=1
)
message(STATUS "Chatlog type - QtWebEngine")
else()
set(IS_WEBKIT OFF)
Expand All @@ -146,14 +139,14 @@ endif()
message(STATUS "System name - ${CMAKE_SYSTEM_NAME}")

if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug" OR ("${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo"))
set(ISDEBUG ON)
set(ISDEBUG ON CACHE INTERNAL "Debug on RelWithDebInfo build type enabled")
option(PLUGIN_INSTALL_PATH_DEBUG "Add -DPLUGIN_INSTALL_PATH_DEBUG definition" OFF)
option(CHATVIEW_CORRECTION_DEBUG "Add -DCORRECTION_DEBUG definition" OFF)
if(PLUGIN_INSTALL_PATH_DEBUG)
add_definitions(-DPLUGIN_INSTALL_PATH_DEBUG)
endif()
if(CHATVIEW_CORRECTION_DEBUG)
add_definitions(-DCORRECTION_DEBUG)
if(WIN32)
option( NO_DEBUG_OPTIMIZATION "Disable optimization for debug builds" OFF )
endif()
endif()

Expand All @@ -176,35 +169,23 @@ elseif(NOT ENABLE_PLUGINS AND BUILD_PSIMEDIA)
message(FATAL_ERROR "BUILD_PSIMEDIA flag not works without ENABLE_PLUGINS flag.\nPlease enable ENABLE_PLUGINS flag or disable BUILD_PSIMEDIA flag")
endif()

if(USE_CRASH)
add_definitions(-DUSE_CRASH)
endif()

if(USE_MXE)
if(WIN32 OR USE_MXE)
set(BUNDLED_IRIS_ALL ON)
endif()

# For GNU/Linux and *BSD systems:
if(UNIX AND NOT (APPLE OR HAIKU))
if(UNIX AND (NOT (APPLE OR HAIKU) AND NOT CYGWIN))
if(USE_X11)
add_definitions( -DHAVE_X11 )
message(STATUS "X11 features support - ENABLED")
if(LIMIT_X11_USAGE)
add_definitions( -DLIMIT_X11_USAGE )
message(STATUS "Unsafe X11 features support - DISABLED")
set(USE_XSS OFF)
message(STATUS "Xscreensaver support - DISABLED")
endif()
if(USE_XSS)
add_definitions( -DHAVE_XSS )
message(STATUS "Xscreensaver support - ENABLED")
endif()
endif()
add_definitions(
-DHAVE_FREEDESKTOP
-DAPP_PREFIX=${CMAKE_INSTALL_PREFIX}
-DAPP_BIN_NAME=${PROJECT_NAME}
)
if(USE_DBUS)
message(STATUS "DBus support - ENABLED")
endif()
Expand All @@ -226,8 +207,8 @@ if(PROJECT_OS_NETBSD)
endif()

# Qt dependencies make building very slow
# Track only .h files
include_regular_expression("^.*\\.h$")
# Track only .h and .hpp files
include_regular_expression("^.*\\.h$|^.*\\.hpp$")

# Put executable in build root dir
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/psi" )
Expand All @@ -236,7 +217,7 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/psi" )
if(APPLE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-overloaded-virtual")
elseif(WIN32)
include("${CMAKE_CURRENT_SOURCE_DIR}/win32/win32_definitions.cmake")
include(win32_definitions)
endif()

if(ENABLE_ASAN)
Expand Down Expand Up @@ -286,6 +267,14 @@ if(USE_CCACHE)
find_program(CCACHE_PATH ccache DOC "Path to ccache")
if(CCACHE_PATH)
message(STATUS "Found ccache at ${CCACHE_PATH}")
if(MSVC AND (CMAKE_VERSION VERSION_GREATER "3.13.0"))
set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "$<$<CONFIG:Debug,RelWithDebInfo>:Embedded>")
set(CMAKE_VS_GLOBALS
"TrackFileAccess=false"
"UseMultiToolTask=true"
"DebugInformationFormat=OldStyle"
)
endif()
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ${CCACHE_PATH})
set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ${CCACHE_PATH})
endif()
Expand Down
6 changes: 3 additions & 3 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ See "Packages and installers" section in [README.md](README.md) or [README.html]
* libhttp-parser (optional, for plugins only)
* libotr (optional, for plugins only)
* libtidy (optional, for plugins only)
* libsignal-protocol-c (optional, for plugins only)
* libomemo-c (optional, for plugins only)

### Common

Expand Down Expand Up @@ -74,7 +74,7 @@ Plugin build dependencies:
sudo apt install -qq \
libhttp-parser-dev \
libotr5-dev \
libsignal-protocol-c-dev \
libomemo-c-dev \
libtidy-dev
```

Expand Down Expand Up @@ -108,7 +108,7 @@ Plugin build dependencies:

```shell
sudo zypper in libotr-devel \
libsignal-protocol-c-devel \
libomemo-c-devel \
libtidy-devel
```

Expand Down
18 changes: 9 additions & 9 deletions README.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ <h2>License</h2>

<h2>Description</h2>

<p>Psi is an XMPP client designed for experienced users. It is highly portable and runs on GNU/Linux, MS Windows, macOS, FreeBSD and Haiku.</p>
<p>Psi is an XMPP client designed for experienced users. It is highly portable and runs on GNU/Linux, MS Windows, macOS, FreeBSD, NetBSD and Haiku.</p>

<p>User interface of program is very flexible in customization. For example, there are "multi windows" and "all in one" modes, support of different iconsets and themes. Psi supports file sharing and audio/video calls. Security is also a major consideration, and Psi provides it for both client-to-server (TLS) and client-to-client (OpenPGP, OTR, OMEMO) via appropriate plugins.</p>

Expand All @@ -32,7 +32,7 @@ <h2>Installation</h2>

<p>For build from sources see <a href="https://github.com/psi-im/psi/blob/master/INSTALL.md">INSTALL</a> file.</p>

<p>GNU/Linux and FreeBSD users may install <a href="https://github.com/psi-im/psi#packages-and-installers">packages</a> from official and unofficial repositories, ports, etc.</p>
<p>GNU/Linux and *BSD users may install <a href="https://github.com/psi-im/psi#packages-and-installers">packages</a> from official and unofficial repositories, ports, etc.</p>

<p>macOS users may install and update official builds using <a href="https://brew.sh/">Homebrew</a> cask:</p>

Expand Down Expand Up @@ -79,11 +79,11 @@ <h2>Developers</h2>
<h3>Lead developers</h3>

<ul>
<li>2017-now, Sergey Ilinykh &lt;<a href="&#x6D;&#97;&#105;l&#116;&#111;:&#x72;&#105;&#111;&#x6E;&#52;&#105;&#x6B;&#64;&#x67;&#x6D;&#x61;&#105;&#x6C;&#x2E;&#x63;&#x6F;&#x6D;">&#x72;&#105;&#111;&#x6E;&#52;&#105;&#x6B;&#64;&#x67;&#x6D;&#x61;&#105;&#x6C;&#x2E;&#x63;&#x6F;&#x6D;</a>>, Psi and Psi+ projects</li>
<li>2010-2017, Sergey Ilinykh &lt;<a href="&#x6D;&#97;&#105;l&#116;&#111;:&#x72;&#105;&#111;&#x6E;&#52;&#105;&#x6B;&#64;&#x67;&#x6D;&#x61;&#105;&#x6C;&#x2E;&#x63;&#x6F;&#x6D;">&#x72;&#105;&#111;&#x6E;&#52;&#105;&#x6B;&#64;&#x67;&#x6D;&#x61;&#105;&#x6C;&#x2E;&#x63;&#x6F;&#x6D;</a>>, Psi+ project</li>
<li>2009-2010, <a href="https://jblog.andbit.net/">Justin Karneges</a> &lt;<a href="&#x6D;&#97;&#105;l&#116;&#111;:&#x6A;&#117;&#115;&#x74;&#105;&#110;&#64;&#107;&#x61;&#x72;&#x6E;&#101;&#x67;&#x65;&#x73;&#x2E;&#x63;&#111;&#109;">&#x6A;&#117;&#115;&#x74;&#105;&#110;&#64;&#107;&#x61;&#x72;&#x6E;&#101;&#x67;&#x65;&#x73;&#x2E;&#x63;&#111;&#109;</a>>, Psi project</li>
<li>2004-2009, <a href="https://doomsong.co.uk/">Kevin Smith</a> &lt;<a href="&#x6D;&#97;&#105;l&#116;&#111;:&#x6B;&#101;&#118;&#x69;&#110;&#64;&#x6B;&#105;&#x73;&#x6D;&#x69;&#116;&#x68;&#x2E;&#x63;&#x6F;&#x2E;&#117;&#107;">&#x6B;&#101;&#118;&#x69;&#110;&#64;&#x6B;&#105;&#x73;&#x6D;&#x69;&#116;&#x68;&#x2E;&#x63;&#x6F;&#x2E;&#117;&#107;</a>>, Psi project</li>
<li>2001-2004, <a href="https://jblog.andbit.net/">Justin Karneges</a> &lt;<a href="&#x6D;&#97;&#105;l&#116;&#111;:&#x6A;&#117;&#115;&#x74;&#105;&#110;&#64;&#107;&#x61;&#x72;&#x6E;&#101;&#x67;&#x65;&#x73;&#x2E;&#x63;&#111;&#109;">&#x6A;&#117;&#115;&#x74;&#105;&#110;&#64;&#107;&#x61;&#x72;&#x6E;&#101;&#x67;&#x65;&#x73;&#x2E;&#x63;&#111;&#109;</a>>, Psi project</li>
<li>2017-now, Sergey Ilinykh &lt;<a href="&#x6D;&#x61;i&#108;&#116;&#x6F;:r&#x69;o&#110;&#52;&#x69;&#107;&#64;&#x67;&#109;&#97;&#105;&#x6C;&#x2E;&#99;&#x6F;&#109;">r&#x69;o&#110;&#52;&#x69;&#107;&#64;&#x67;&#109;&#97;&#105;&#x6C;&#x2E;&#99;&#x6F;&#109;</a>>, Psi and Psi+ projects</li>
<li>2010-2017, Sergey Ilinykh &lt;<a href="&#x6D;&#x61;i&#108;&#116;&#x6F;:r&#x69;o&#110;&#52;&#x69;&#107;&#64;&#x67;&#109;&#97;&#105;&#x6C;&#x2E;&#99;&#x6F;&#109;">r&#x69;o&#110;&#52;&#x69;&#107;&#64;&#x67;&#109;&#97;&#105;&#x6C;&#x2E;&#99;&#x6F;&#109;</a>>, Psi+ project</li>
<li>2009-2010, <a href="https://jblog.andbit.net/">Justin Karneges</a> &lt;<a href="&#x6D;&#x61;i&#108;&#116;&#x6F;:j&#x75;s&#116;&#105;&#x6E;&#64;&#107;&#x61;&#114;&#110;&#101;&#x67;&#x65;&#115;&#x2E;&#99;&#x6F;&#x6D;">j&#x75;s&#116;&#105;&#x6E;&#64;&#107;&#x61;&#114;&#110;&#101;&#x67;&#x65;&#115;&#x2E;&#99;&#x6F;&#x6D;</a>>, Psi project</li>
<li>2004-2009, <a href="https://doomsong.co.uk/">Kevin Smith</a> &lt;<a href="&#x6D;&#x61;i&#108;&#116;&#x6F;:k&#x65;v&#105;&#110;&#64;&#107;&#105;&#x73;&#109;&#105;&#116;&#x68;&#x2E;&#99;&#x6F;&#46;&#x75;&#x6B;">k&#x65;v&#105;&#110;&#64;&#107;&#105;&#x73;&#109;&#105;&#116;&#x68;&#x2E;&#99;&#x6F;&#46;&#x75;&#x6B;</a>>, Psi project</li>
<li>2001-2004, <a href="https://jblog.andbit.net/">Justin Karneges</a> &lt;<a href="&#x6D;&#x61;i&#108;&#116;&#x6F;:j&#x75;s&#116;&#105;&#x6E;&#64;&#107;&#x61;&#114;&#110;&#101;&#x67;&#x65;&#115;&#x2E;&#99;&#x6F;&#x6D;">j&#x75;s&#116;&#105;&#x6E;&#64;&#107;&#x61;&#114;&#110;&#101;&#x67;&#x65;&#115;&#x2E;&#99;&#x6F;&#x6D;</a>>, Psi project</li>
</ul>

<h3>Other contributors</h3>
Expand All @@ -94,15 +94,15 @@ <h2>How you can help</h2>

<h3>Bug reports</h3>

<p>If you found a bug please report about it in our <a href="https://github.com/psi-im/psi/issues">Bug Tracker</a>. If you have doubts contact with us in <a href="https://chatlogs.jabber.ru/[email protected]">XMPP Conference</a> &lt;[email protected]&gt; (preferable) or in a <a href="https://groups.google.com/forum/#!forum/psi-users">Mailing List</a>.</p>
<p>If you found a bug please report about it in our <a href="https://github.com/psi-im/psi/issues">Bug Tracker</a>. If you have doubts contact with us in XMPP Conference <a href="xmpp:[email protected]?join">[email protected]</a> (preferable) or in a <a href="https://groups.google.com/forum/#!forum/psi-users">Mailing List</a>.</p>

<h3>Beta testing</h3>

<p>As we (intentionally) do not have nor beta versions of Psi, nor daily build builds for it, you are invited to use <a href="https://psi-plus.com/">Psi+ program</a> for suggesting and testing of new features, and for reporting about new bugs (if they happen).</p>

<h3>Comments and wishes</h3>

<p>We like constructive comments and wishes to functions of program. You may contact with us in <a href="https://chatlogs.jabber.ru/[email protected]">XMPP Conference</a> &lt;[email protected]&gt; for discussing of your ideas. Some of them will be drawn up as feature requests in our <a href="https://github.com/psi-im/psi/issues">Bug Tracker</a>.</p>
<p>We like constructive comments and wishes to functions of program. You may contact with us in XMPP Conference <a href="xmpp:[email protected]?join">[email protected]</a> for discussing of your ideas. Some of them will be drawn up as feature requests in our <a href="https://github.com/psi-im/psi/issues">Bug Tracker</a>.</p>

<h3>Translations</h3>

Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ This program is licensed under the GNU General Public License. See the [COPYING]

## Description

Psi is an XMPP client designed for experienced users. It is highly portable and runs on GNU/Linux, MS Windows, macOS, FreeBSD and Haiku.
Psi is an XMPP client designed for experienced users. It is highly portable and runs on GNU/Linux, MS Windows, macOS, FreeBSD, NetBSD and Haiku.

User interface of program is very flexible in customization. For example, there are "multi windows" and "all in one" modes, support of different iconsets and themes. Psi supports file sharing and audio/video calls. Security is also a major consideration, and Psi provides it for both client-to-server (TLS) and client-to-client (OpenPGP, OTR, OMEMO) via appropriate plugins.

Expand All @@ -30,7 +30,7 @@ See [CHANGELOG](https://github.com/psi-im/psi/blob/master/CHANGELOG) file.

For build from sources see [INSTALL](https://github.com/psi-im/psi/blob/master/INSTALL.md) file.

GNU/Linux and FreeBSD users may install [packages](https://github.com/psi-im/psi#packages-and-installers) from official and unofficial repositories, ports, etc.
GNU/Linux and *BSD users may install [packages](https://github.com/psi-im/psi#packages-and-installers) from official and unofficial repositories, ports, etc.

macOS users may install and update official builds using [Homebrew](https://brew.sh/) cask:

Expand Down Expand Up @@ -86,15 +86,15 @@ There are a lot of people who were involved into Psi and Psi+ development. Some

### Bug reports

If you found a bug please report about it in our [Bug Tracker](https://github.com/psi-im/psi/issues). If you have doubts contact with us in [XMPP Conference](https://chatlogs.jabber.ru/[email protected]) &lt;[email protected]&gt; (preferable) or in a [Mailing List](https://groups.google.com/forum/#!forum/psi-users).
If you found a bug please report about it in our [Bug Tracker](https://github.com/psi-im/psi/issues). If you have doubts contact with us in XMPP Conference [[email protected]](xmpp:[email protected]?join) (preferable) or in a [Mailing List](https://groups.google.com/forum/#!forum/psi-users).

### Beta testing

As we (intentionally) do not have nor beta versions of Psi, nor daily build builds for it, you are invited to use [Psi+ program](https://psi-plus.com/) for suggesting and testing of new features, and for reporting about new bugs (if they happen).

### Comments and wishes

We like constructive comments and wishes to functions of program. You may contact with us in [XMPP Conference](https://chatlogs.jabber.ru/[email protected]) &lt;[email protected]&gt; for discussing of your ideas. Some of them will be drawn up as feature requests in our [Bug Tracker](https://github.com/psi-im/psi/issues).
We like constructive comments and wishes to functions of program. You may contact with us in XMPP Conference [[email protected]](xmpp:[email protected]?join) for discussing of your ideas. Some of them will be drawn up as feature requests in our [Bug Tracker](https://github.com/psi-im/psi/issues).

### Translations

Expand Down
Loading

0 comments on commit 56f6c03

Please sign in to comment.