Commit Graph

8034 Commits (0cb222c0567698d70d4115321def32794a874136)

Author SHA1 Message Date
Anthony Bilinski 0cb222c056
feat(i18n): Handle English plural forms in translations
Special case that only needs plurals translated.
2022-02-23 21:12:16 -08:00
Anthony Bilinski b05c069dfe
fix(appimage): Patch snore to enable notifications in AppImage
Patch for other builds as well since the patch is harmless and it simplifies
the build script.

Fix #6411
2022-02-23 21:11:42 -08:00
Anthony Bilinski f81c9bca29
chore(CI): Don't overwrite nightly release name and description
Allows maintainers to write a user friendly message rather than just having the
last commit desription.
2022-02-23 21:11:02 -08:00
Anthony Bilinski b24610fc62
chore(CI): Revert nightly AppImage name to "nightly"
Changed in 41a555def9, I think by accident.
Causes our release uploader to no longer replace the old version, instead
adding a new version each time it runs.

Keeping named overwrite instead of removing release artifacts and
uploading new ones, since removing old artifacts would require a new job
that all other jobs depend on to avoid re-removing, and would also
create a gap while CI is running run where no artifact is available.

We could upload artifacts using actions/upload-artifact in each job then
download them at the end and update the release at that point too, if we
really want to keep sha name in the nightly release artifacts. I don't
see much value of having the sha in the filename though.
2022-02-23 21:11:02 -08:00
Anthony Bilinski d3995bc87e
fix(doxygen): Re-enable deploying of doxygen to qtox.github.io
Hasn't been run since the travis days.

Now managed through a deploy key rather than an access token to limit scope to
a single repo. Private key is stored in qTox/qTox as a repository secret, and
the public portion is saved to qTox/doxygen as a deploy key.
2022-02-23 21:10:32 -08:00
Anthony Bilinski e5d138f79c
chore(CI): Move gitstats and docs to ubuntu-latest
They're not platform dependent and the rest of our jobs run on ubuntu-latest.
Might as well move this one over so we don't have to remember to update it.

gitstats is not available in repo any longer, so install manually.
2022-02-23 21:10:03 -08:00
Anthony Bilinski a1f19f44e2
chore(CI): Fix deploy-gitsats directory and target URI 2022-02-23 21:10:03 -08:00
Anthony Bilinski 0df98ce64f
fix(group): Change join leave message setting default to false
Matches the similar status change notification for 1:1 chats, and was the
original plan for this feature.
2022-02-23 04:48:19 -08:00
Anthony Bilinski 6f9123705a
fix(core): Fix logic error retrieving TCP port
Introduced in e7e30ada8c
2022-02-21 05:19:03 -08:00
Anthony Bilinski 4f798e9742
chore(docs): Update translation workflow
Weblate settings are changed to rebase commits onto our master continuously. All
that's needed to pull in translations now is to pull, rather than locking, using
a custom script, and resetting the Weblate repo.

Committing translatable strings is now done on every commit and checked on PR,
so that is no longer part of the import process.

Commits on Weblate are squashed using the "squash git commits" addon. It is
configurable to squash all commits into one and add co-author commit messages,
like we do now. Instead I've set it to just squash commits from a single author
for clearer attribution.
2022-02-21 03:32:48 -08:00
Anthony Bilinski 7aa8d7178e
refactor(bootstrap): Store public key as ToxPk rather than QString 2022-02-21 02:51:41 -08:00
Anthony Bilinski e7e30ada8c
fix(core): Use node's TCP ports when connecting to TCP relay
Allows connecting to TCP relays that aren't acting as bootstrap nodes, and
connecting to TCP relays that have different or additional TCP ports compared
to UDP ports.
2022-02-21 02:51:34 -08:00
Anthony Bilinski 3d36cf47e8
refactor(bootstrap): Rename UDP port from port to udpPort 2022-02-21 02:49:23 -08:00
Anthony Bilinski 2f92a5f2f0
fix(CI): Remove "setup" from Windows zip file name
Matches previous behaviour, and the zips don't do any installation.
2022-02-20 18:15:52 -08:00
Anthony Bilinski c726b9ce23
fix(CI): Don't upload Windows setup exe to nightly release
Matches previous behaviour from travis. Avoids spreading a possibly buggy
nightly around a tester's system.
2022-02-20 18:15:49 -08:00
Anthony Bilinski de924cfdc7
feat(chatlog): Disable join and leave system messages based on setting 2022-02-20 18:15:00 -08:00
Anthony Bilinski 069ab92fd0
feat(UI): Add UI For controlling group join and leave system messages setting 2022-02-20 18:14:55 -08:00
Anthony Bilinski 1be5b99d17
feat(Settings): Add setting for hiding group join and leave system messages
Messages can become spammy is long lasting quiet groups, drowning out real user
messages
2022-02-20 17:32:23 -08:00
Anthony Bilinski e5df648e1a
refactor(settings): Use IGroupSettings in GroupChatForm
Move interface signals from Settings to be declared by the interface itself
2022-02-20 17:32:23 -08:00
Anthony Bilinski 0adf4a00f3
refactor(chatform): Remove useless static cast 2022-02-20 17:32:23 -08:00
Anthony Bilinski 18643da271
refactor(chatform): Pass Settings to GroupChatForm instead of calling getInstance()
One small step away from propagating singleton use
2022-02-20 17:32:22 -08:00
Anthony Bilinski 939bf6a2c1
chore(CI): Re-remove GH action if-no-files found conditions
Was accidentally reintroduced in c85e24e7db after
being removed in 5fcf86b521
2022-02-20 17:30:19 -08:00
Anthony Bilinski 3180d23ee2
fix(core): Don't apply Windows file transfer rename on other platforms
Filename cleaning was originally introduced for Windows
https://github.com/qTox/qTox/issues/1304. It's unneeded on other platforms, so
leave file names as they're sent there.

Fix #5242
2022-02-20 17:14:10 -08:00
Anthony Bilinski 11450afa81
feat(i18n): Check for new translatable strings on every PR
We've only been updating translatable strings for Weblate rarely based on
MAINTAINING.md#translations-from-weblate. Since Weblate pulls in commits live
from qTox, we should generate the translatable strings as soon as they're
introduced so that translators can not waste time translating deleted strings,
and can spend time translating new strings.

We can't auto-commit the changes in CI due to our requirement of signed
commits, so just fail CI if any new strings are found.

Move it into its own job, it doesn't depend on docker or the build, and doesn't need to run for debug/release/full/minimal
2022-02-20 17:04:05 -08:00
Anthony Bilinski 5f8704cf0f
chore(i18n): Update translation files for Weblate
For some reason, re-running update-translation-files.sh right on
1031b315b9 which it generates more new changes.
Rerunning further doesn't generate yet more changes.
2022-02-20 17:04:05 -08:00
Anthony Bilinski 345e33b531
chore(docs): Remove generic git instructions from docs
General version control, git, or github instructions can be found in abundance
elsewhere. Keep qTox docs more focused on qTox.
2022-02-20 16:29:40 -08:00
Anthony Bilinski 9ac44ee09c
fix(history): Replace invalid Tox ID saved in peers table with Tox public key
Due to an old bug that has since be fixed, old history dbs can contain both a
Tox ID version and Tox public key version of the same friend, and always
themselves. They could have n more duplicates if they've updated their nospam.

Tox ID is an invalid length to be stored in strongly typed ToxPk, and in
general having multiple entries belonging to the same user effectively violates
our UNIQUE constraint on public_key.

Introduced in 7168d2b858

Fix #6485
2022-02-20 14:27:33 -08:00
Anthony Bilinski 80a0a4ae62
fix(CI): Correct Wine lib path for winehq manual install
Install path changed in 79feb19d7d,
but paths were not updated to match.

Fix #6481
2022-02-20 14:24:08 -08:00
Anthony Bilinski e9f74bb50a
chore(deps): Add msgpack to archlinux dockerfile
Missed in last update since it's not covered in CI.
2022-02-19 21:25:00 -08:00
Anthony Bilinski 2fca383e70
chore(deps): Update c-toxcore to v0.2.16 2022-02-19 06:32:51 -08:00
Anthony Bilinski e076d4b7a7
chore(deps): Add support for msgpack dependency 2022-02-19 06:32:46 -08:00
Anthony Bilinski 56eed63fde
fix(core): Fix missed ToxId to ToxPk constructions 2022-02-19 05:37:01 -08:00
Anthony Bilinski 11f7f6193a
fix(CI): Build in current dir in build-qtox-linux.sh
Matches Windows and AppImage build script behaviour.

Irrelevant for CI runs, but since the build dir is inside the user's mounted
qTox dir, this stops manual runs from deleting a possibly existing directory,
and allows the user to chose the build dir.

Requires removing of the check for committed generated cmake files, but I can't
imagine those making it past review anyway.
2022-02-19 03:34:34 -08:00
Anthony Bilinski 41a555def9
chore(CI): Remove knowledge of build context from AppImage build script
* Since nightlies are now published under qTox/qTox, different update
  info is not needed for the zsync file.
* The github action yaml already handles naming files correctly
  otherwise.
2022-02-19 03:31:49 -08:00
Anthony Bilinski a764aebaf9
chore(CI): Remove unused CI environment variables
Not used since CI docker refactor.
2022-02-19 03:31:49 -08:00
Anthony Bilinski 933c1e7e96
chore(CI): Remove build-windows.sh
Windows build is handled in the GH action yaml directly since refactor.
2022-02-19 03:31:49 -08:00
Anthony Bilinski 85b0f233e7
chore(CI): Remove travis CI workaround from build-gitstats 2022-02-19 03:31:49 -08:00
Anthony Bilinski 5bcfd21760
chore(CI): Deep clone for gitstatus initially instead of recloning 2022-02-19 03:31:48 -08:00
Anthony Bilinski 5d459d2fda
chore(docs): Remove mentions of travis from docs 2022-02-19 03:31:48 -08:00
Anthony Bilinski 6fd79c65e7
chore(CI): Remove travis config and directory
Move all CI scripts to generic .ci-scripts dir
2022-02-19 03:31:48 -08:00
Anthony Bilinski 3f2d953473
chore(CI): Revert 8a72928ad1
"chore(travis): don't fail generating docs when there's no git version"

No longer a concern on GH actions which allows deep clones.
2022-02-19 03:31:16 -08:00
Anthony Bilinski 17c4ad4ba7
chore(CI): Revert 40989e54d8
Workaround was only due to a travis limitation that's no longer present on GH actions.
2022-02-19 03:31:16 -08:00
Anthony Bilinski 75648d04b9
fix(appImage): Bundle libpangocairo which was incompatible on Arch
No systematic fix to the constant flakiness of AppImage. Although we could
upload the artifact in a job and download in on another job's platform,
minimal docker images aren't analogous to user desktop systems. AppImage
and linuxdeployqt specifically make assumptions about what libs should
exist, so our testing should be more real-world.

Will continue manually testing in full desktop VMs before release and
relying on user reports.

Fix #6454
2022-02-19 03:30:01 -08:00
Anthony Bilinski ddebf6ee7a
fix(crash): Handle nightly tag name in update check
We didn't use to have a nightly tag, so git describe would include the
verison of the last release even for nightly or dev builds. Now that the
nightly tag exists, which is required for github release craeation, it
breaks out git describe parsing, and there's no way for us to tell if a
user is behind the next release or not.

Instead just don't check update status if the user isn't on a release
tagged version.
2022-02-19 03:28:21 -08:00
Anthony Bilinski 1031b315b9
chore(i18n): update translation files for Weblate 2022-02-19 03:26:11 -08:00
Anthony Bilinski 4b3f50a0c0
chore(l10n): Fix ordering of languages in code 2022-02-19 03:26:11 -08:00
Anthony Bilinski 188fe340f2
feat(l10n): Add Urdu and Icelandic translations 2022-02-19 03:26:11 -08:00
Anthony Bilinski 3fcbfd63bc
chore(l10n): update translations from Weblate
109247019824 (2):
      feat(l10n): update Bulgarian translation from Weblate
      feat(l10n): update Bulgarian translation from Weblate

Abu Sarim Hindi (2):
      feat(l10n): add Urdu translation using Weblate
      feat(l10n): update Urdu translation from Weblate

Alexander-David Beck (3):
      feat(l10n): update German translation from Weblate
      feat(l10n): update German translation from Weblate
      feat(l10n): update German translation from Weblate

Anthony Bilinski (2):
      feat(l10n): add English (United States) translation using Weblate
      Deleted translation using Weblate (English (United States))

Artem (1):
      feat(l10n): update Russian translation from Weblate

Atrate (1):
      feat(l10n): update Polish translation from Weblate

Claes-Göran Nydahl (1):
      feat(l10n): update Swedish translation from Weblate

Eric (3):
      feat(l10n): update Chinese (Simplified) translation from Weblate
      feat(l10n): update Chinese (Simplified) translation from Weblate
      feat(l10n): update Chinese (Simplified) translation from Weblate

Frankie McEyes (1):
      feat(l10n): update Italian translation from Weblate

Gediminas Murauskas (6):
      feat(l10n): update Lithuanian translation from Weblate
      feat(l10n): update Lithuanian translation from Weblate
      feat(l10n): update Lithuanian translation from Weblate
      feat(l10n): update Lithuanian translation from Weblate
      feat(l10n): update Lithuanian translation from Weblate
      feat(l10n): update Lithuanian translation from Weblate

Ivan (1):
      feat(l10n): update Russian translation from Weblate

Jonatan Nyberg (1):
      feat(l10n): update Swedish translation from Weblate

Kaantaja (1):
      feat(l10n): update Finnish translation from Weblate

Karl Tammik (4):
      feat(l10n): update Finnish translation from Weblate
      feat(l10n): update Estonian translation from Weblate
      feat(l10n): update Estonian translation from Weblate
      feat(l10n): update Estonian translation from Weblate

Kristjan Räts (2):
      feat(l10n): update Estonian translation from Weblate
      feat(l10n): update Estonian translation from Weblate

Matej Golian (1):
      feat(l10n): update Slovak translation from Weblate

Oğuz Ersen (2):
      feat(l10n): update Turkish translation from Weblate
      feat(l10n): update Turkish translation from Weblate

Plamen Nazarov (1):
      feat(l10n): update Bulgarian translation from Weblate

Rafael Nadal (2):
      feat(l10n): update Czech translation from Weblate
      feat(l10n): update Czech translation from Weblate

S3aBreeze (3):
      feat(l10n): update Russian translation from Weblate
      feat(l10n): update Russian translation from Weblate
      feat(l10n): update Russian translation from Weblate

SC (1):
      feat(l10n): update Portuguese translation from Weblate

Sparkwave (1):
      feat(l10n): update Polish translation from Weblate

The Cats (14):
      feat(l10n): update Portuguese (Brazil) translation from Weblate
      feat(l10n): update Spanish translation from Weblate
      feat(l10n): update French translation from Weblate
      feat(l10n): update Spanish translation from Weblate
      feat(l10n): update French translation from Weblate
      feat(l10n): update Portuguese (Brazil) translation from Weblate
      feat(l10n): update French translation from Weblate
      feat(l10n): update Italian translation from Weblate
      feat(l10n): update German translation from Weblate
      feat(l10n): update Italian translation from Weblate
      feat(l10n): update German translation from Weblate
      feat(l10n): update German translation from Weblate
      feat(l10n): update Italian translation from Weblate
      feat(l10n): update Hebrew translation from Weblate

Tomi P (1):
      feat(l10n): update Finnish translation from Weblate

Trendyne (2):
      feat(l10n): add Icelandic translation using Weblate
      feat(l10n): update Icelandic translation from Weblate

Tymofii Lytvynenko (1):
      feat(l10n): update Ukrainian translation from Weblate

coronabond (1):
      feat(l10n): update Italian translation from Weblate

litavycia (1):
      feat(l10n): update Ukrainian translation from Weblate

mati (1):
      feat(l10n): update Polish translation from Weblate

nue (2):
      feat(l10n): update Latvian translation from Weblate
      feat(l10n): update Latvian translation from Weblate

redtide (1):
      feat(l10n): update Italian translation from Weblate

remussatala (2):
      feat(l10n): update Romanian translation from Weblate
      feat(l10n): update Romanian translation from Weblate

ssantos (2):
      feat(l10n): update Portuguese translation from Weblate
      feat(l10n): update Portuguese translation from Weblate

t4llkr (1):
      feat(l10n): update Russian translation from Weblate

wang (1):
      feat(l10n): update Chinese (Simplified) translation from Weblate

曹恩逢 (1):
      feat(l10n): update Chinese (Traditional) translation from Weblate
2022-02-19 03:26:11 -08:00
Anthony Bilinski 5a77a18fc0
fix(gitstats): Re-enable deploying of gitstats to qtox.github.io
Hasn't been run since the travis days.

Now managed through a deploy key rather than an access token to limit scope to
a single repo. Private key is stored in qTox/qTox as a repository secret, and
the public portion is saved to qTox/gitstats as a deploy key.
2022-02-19 03:15:41 -08:00
Anthony Bilinski 9cd9da4a53
fix(CI): Fix memory leak in core_test
Causes false positives when running tests with ASAN
2022-02-17 20:10:38 -08:00