* Move static function variables from core to be class member variables,
allowing two Core instances to run at once
* Replace deprecated QLatin1Literal with QLatin1String
* qvariant_cast slot argument to ToxPk, rather than trying to convert variant
to bytes directly which is invalid
* Fix "wait for both to come online" accidentally waiting for Bob twice
* Move all sleeps to QTRY_VERIFY_WITH_TIMEOUT to speed up test
* Update settings* -> settings& based on Core API change
* Update Mock to match API change of IBootstrapListGenerator
* Register metatype of ToxPk, uint32_t, Status::Status
* Correct Alice's spy looking for Bob's pk
The installer is only built on release builds. We used to ignore failure to
upload prior to 5fcf86b521. We stopped ignoring
because a07ab89cc8 tried to make our upload
targetted, but it only resolved the issue for the zip, not the installer.
Keep disabled for jobs that produce artifacts to not affect user performance.
Keep disabled for other distros that don't produce artifacts as well since other versions of Qt fail themselves in e.g. TestSmileyPack's QGuiApplication usage.
Don't enable thread sanitizer yet due to many Qt internal errors.
This should still give us a significant increase in qTox coverage, even if we have low platform coverage.
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.
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.
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.
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.
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.
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
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
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.
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 7168d2b858Fix#6485
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.
* 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.