1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
Commit Graph

7995 Commits

Author SHA1 Message Date
Anthony Bilinski
5fc273da94
revert(chatlog): partially revert "prevent invalid history access"
This partially reverts commit e3e6e1d9c4.
2021-11-21 16:17:08 -08:00
Anthony Bilinski
e18725c966
revert(chatlog): "fix stick to bottom behavior"
This reverts commit f2fa601073.
2021-11-21 16:17:08 -08:00
Anthony Bilinski
3b3779c850
Merge pull request #6409
Maxim Biro (1):
      refactor(windows): simplify dll check logic
2021-11-07 17:33:47 -08:00
Maxim Biro
9c9d0f8623
refactor(windows): simplify dll check logic
Instead of checking every .exe separately, loop over all of them with
the same checks.
2021-10-30 19:56:11 -04:00
Anthony Bilinski
12ac833254
fix(appimage): Include additional needed glib for RH based distros
Add old glib to work with our old gnutls on redhat based systems.

Generally we would want to avoid providing our old libs that the distro's newer
libs that we use depend on, which would include harfbuzz in this case for glib,
but including harfbuzz breaks libfreetype on newer distros like arch.

Other libs that we use from the system with dependencies that we provide include
are libfreetype, libXdmcp, and libICE, but that is unchanged here.

Fix #6339
2021-10-27 18:55:58 -07:00
Anthony Bilinski
cb8a095fd2
fix(appimage): Patch manually copied libs to include rpath for local dir
linuxdeployqt already does this for its copied libs. Required for included libs to find libs inside the appimage that they depend on.
2021-10-27 17:54:29 -07:00
Anthony Bilinski
cb6fd88239
refactor(appimage): List manual libs and copy iteratively
Also preserve symlinks while copying with -P to avoid creating duplicate
files from symlinks on build env system.
2021-10-27 17:53:25 -07:00
Anthony Bilinski
1a44373ddd
chore(deps): Add missing deps to INSTALL.md, update minimum versions
Ubuntu 16.04 and Debian 8 are both EOL, update minimum versions accordingly.
2021-10-27 00:25:14 -07:00
Anthony Bilinski
8cf7f51c14
chore(deps): Update minimum cmake version to 3.7.2
This matches Debian 9 LTS version, and is lower than Ubuntu 18.04's
cmake which is the oldest Ubuntu version now supported.
2021-10-27 00:25:14 -07:00
Anthony Bilinski
0dae965a2d
chore(docker): Update Ubuntu docker to 18.04 from 16.04
16.04 is EOL and unused/unsupported by the project.
2021-10-27 00:24:30 -07:00
Anthony Bilinski
2dafd89052
Merge pull request #6394
Brandon Mosher (1):
      refactor: Provide a Virtual Method Anchor for Classes in Headers
2021-10-26 16:21:55 -07:00
Brandon Mosher
1438f8f766 refactor: Provide a Virtual Method Anchor for Classes in Headers
Define at least one virtual method in polymorphic class cpp files to
improve link efficiency. Do so by defining a defaulted destructor or
another overridden virtual method in the class cpp file.
Also add explicitly defaulted copy/move constructors and assignment
operators to follow the rule of five and to avoid compiler suppression
of these functions due to the addition of a user-provided destructor.
Where neccessary, create new cpp files and add them to CMakeLists and
Testing.cmake. Set the -Wweak-vtables by default when compiling with
clang to issue warnings for new classes that do not comply with this
pattern.

See http://llvm.org/docs/CodingStandards.html#provide-a-virtual-method-anchor-for-classes-in-headers.

Fixes #6036.
2021-10-26 16:47:40 +00:00
Anthony Bilinski
a9b7a24fe4
Merge pull request #6402
Mick Sayson (1):
      fix(toxext): Update toxext to fix memory corruption issues
2021-10-26 02:02:19 -07:00
Mick Sayson
761c2fb292 fix(toxext): Update toxext to fix memory corruption issues
* tox_extension_messages updated as well for compatibility
2021-10-25 23:20:51 -07:00
Anthony Bilinski
8af9d0905f
Merge pull request #6361
woxcab (1):
      fix(ui): reorder the window title
2021-10-25 00:16:53 -07:00
woxcab
d621d74511
fix(ui): reorder the window title 2021-10-24 23:30:30 -07:00
Anthony Bilinski
26f021e8bd
Merge pull request #6388
bodwok (1):
      fix(ui): contact list optimization
2021-10-24 22:29:14 -07:00
Anthony Bilinski
bb67d48e6e
Merge pull request #6175
Mick Sayson (1):
      feat(chatlog): Add image preview on paste
2021-10-24 22:09:22 -07:00
Mick Sayson
7c218b389d
feat(chatlog): Add image preview on paste
Reuse code from the file transfer widget to provide an image preview
on paste/grab. This prevents users from accidentally sending images they
did not mean to when their clipboard is not in the state they thought it
was.

Implementation exposes the genericchatlog vbox to the child classes and
chatform injects the imagepreview into it.
2021-10-24 22:06:58 -07:00
Anthony Bilinski
8462207a58
Merge pull request #6387
Jimi Huotari (2):
      fix(build): don't connect UpdateCheck when -DUPDATE_CHECK=OFF
      fix(UI): hide update related elements when -DUPDATE_CHECK=OFF
2021-10-24 20:45:52 -07:00
Anthony Bilinski
552cb0dc74
Merge pull request #6391
Mick Sayson (1):
      fix(toxext): Protect use of toxext modifying functions
2021-10-24 19:45:09 -07:00
Anthony Bilinski
69cd33b733
fix(chatform): Scroll to bottom on load, broken on refactor
Fix #6314
2021-10-24 16:42:46 -07:00
Anthony Bilinski
057f921ace
fix(build): Add std threading support in Windows build
Use posix versions of mingw toolchains, which say:
> This package contains the C++ compiler, supporting cross-compiling to
64-bit MinGW-w64 targets, using the POSIX threading model.

Fix build failure saying that std::mutex was not declared
2021-10-24 15:55:52 -07:00
Anthony Bilinski
aee189d46d
fix(appimage): Handle no TRAVIS_TAG or TRAVIS_COMMIT in AppImage build
With set u, bash aborts when either is not defined. Also neither is set when
building locally.
2021-10-24 14:17:00 -07:00
Anthony Bilinski
9fa7f2e4b6
chore(CI): Split Win deps into their own job
Previously, the four matrix Windows jobs would run in parallel and each
build deps, which is redundant since both debug and release qTox use the
same deps.

Now, the win-deps job builds only the needed two versions of deps, and
the four windows builds wait for it to complete before running in
parallel.
2021-10-24 14:16:34 -07:00
Anthony Bilinski
ade6e38003
chore(CI): Run tests on pushed commits
So that each commit in repo is tested, including merge commits that
aren't present in PRs. Also prepares for running releases only on push
but not on PRs.

Workflows have a global runs-on, so commit format check needs to be
split out from the shared PR and push workflow to since checking all
commit messages on pushes always fails due to very old commits not
following the proper format.
2021-10-24 14:16:11 -07:00
Anthony Bilinski
d7347773f8
chore: Disable bootstrap daemon for toxcore in docker builds
It's disabled for other toxcore builds in qTox since it's unused by
qTox. It also requires libconfig as a dep which is missing here.
2021-10-24 06:12:11 -07:00
Anthony Bilinski
b0083e7d38
chore: Set DEBIAN_FRONTEND=noninteractive in docker builds
Found in #6396.

Not needed yet, but will be in later versions of apt-get, so might as
well add it now so we don't forget.
2021-10-24 06:12:11 -07:00
Anthony Bilinski
db5081d3dc
Merge pull request #6390
Maxim Biro (8):
      chore(windows): use Debian Bullseye for Windows cross-compilation
      chore(windows): update OpenSSL to 1.1.1l
      chore(windows): update Qt to 5.12.11
      chore(windows): update Exif to 0.6.23
      chore(windows): update Expat to 2.4.1
      chore(windows): update GDB to 11.1, add GMP
      chore(windows): fix Wine prefix issue
      chore(windows): update copyright year
2021-10-24 06:10:54 -07:00
Anthony Bilinski
06195c0caf
Merge pull request #6311
Mick Sayson (1):
      feat(history): Save/load system messages to history
2021-10-24 05:37:44 -07:00
Anthony Bilinski
0d3be5aab3
Merge pull request #6310
Mick Sayson (1):
      feat(chatlog): Add SystemMessages to SessionChatLog
2021-10-24 05:35:22 -07:00
Mick Sayson
18109b2f7f feat(history): Save/load system messages to history 2021-10-16 14:29:57 -07:00
Mick Sayson
916834fb9c feat(chatlog): Add SystemMessages to SessionChatLog
* Rendering of system messages consolidated into single place
* API added to ichatlog to insert a system message at current location
* System messages are now used as type + args which will fit nicely with
  the work in #6221
2021-10-16 14:29:57 -07:00
Mick Sayson
5ddb8caa97 fix(toxext): Protect use of toxext modifying functions
When running with -DASAN on and a mod to send 10k messages in quick
succession I was seeing memory corruption within toxext. This was caused
by a race between toxext_iterate and toxext_send being called from
different threads.

Protect the use of functions coming from different threads with a mutex
2021-10-10 15:16:22 -07:00
Maxim Biro
b2215454e3
chore(windows): update copyright year 2021-10-10 17:16:24 -04:00
Maxim Biro
b11896100c
chore(windows): fix Wine prefix issue 2021-10-10 17:12:14 -04:00
Maxim Biro
66c2a0807b
chore(windows): update GDB to 11.1, add GMP
GDB 11 gained GMP as a required dependency.
2021-10-08 12:09:32 -04:00
Maxim Biro
8e856dfbfd
chore(windows): update Expat to 2.4.1 2021-10-08 12:03:01 -04:00
Maxim Biro
1209ba7b9c
chore(windows): update Exif to 0.6.23 2021-10-08 12:01:39 -04:00
Maxim Biro
936e9c05cf
chore(windows): update Qt to 5.12.11
We are staying on 5.12 instead of 5.15 because 5.12 is supported for
longer. There should be one more release in H2 2021.

Ideally we would switch to 6.2, but qTox doesn't seem to be Qt6-ready
yet.
2021-10-08 12:00:54 -04:00
Maxim Biro
678b864037
chore(windows): update OpenSSL to 1.1.1l 2021-10-08 12:00:06 -04:00
bodwok
45b69519c4
fix(ui): contact list optimization 2021-10-05 01:04:06 +03:00
Jimi Huotari
db8af0561d fix(UI): hide update related elements when -DUPDATE_CHECK=OFF 2021-10-03 02:25:06 +03:00
Jimi Huotari
50063f76ab fix(build): don't connect UpdateCheck when -DUPDATE_CHECK=OFF 2021-10-03 02:24:48 +03:00
Maxim Biro
57ae8a3e6a
chore(windows): use Debian Bullseye for Windows cross-compilation
bsdtar has moved to libarchive-tools package.

Something has changed in the newer gcc or mingw that makes Opus and
Sodium fail to build with:

  undefined reference to `__memcpy_chk'

The solution is to use -lssp or -fstack-protector, but while -lssp
worked for Opus, it was breaking Sodium's `make install` as it prevented
the .def file from being generated during the build time for some
reason:

  /usr/bin/install: cannot stat './libsodium-24.def': No such file or directory

while -fstack-protector worked just fine, so -fstack-protector was used
for both. This adds a new library dependency on libssp-0.dll.
2021-10-01 13:30:50 -04:00
Anthony Bilinski
da5c165f41
fix(appimage): Use external binary path when enabling autorun from appimage
Fix #6241
2021-09-23 21:05:27 -07:00
Anthony Bilinski
5852d61914
docs(INSTALL): Fix clone path, update Debian build dependencies 2021-09-23 20:46:50 -07:00
Anthony Bilinski
a6e3947a46
docs(INSTALL): Add repo install instructions for Debian and Ubuntu 2021-09-23 20:46:50 -07:00
Anthony Bilinski
4894ddd0e4
docs(INSTALL): add PKG_CONFIG_PATH to bootstrap.sh instructions 2021-09-22 04:11:27 -07:00
Anthony Bilinski
9d53e71dea
docs(INSTALL): Add ToxExt dirs to bootstrap.sh remove dirs function 2021-09-22 04:11:27 -07:00