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.
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
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.
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
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.
* Fix compile error on macOS by marking GroupWidget::widgetIsVisible as
override
* Mark mock functions override for consistency
* Change QWARN to QVERIFY since logs will be missed in CI
* Uncomment add of offline and online friends in testSortByActivity
* Add out-of-line method definition to anchor vtable
Old windows/cross-compile/build.sh copied OPENAL_PREFIX_DIR/bin/*.dll to be
included, but the current Dockerfile.windows_builder copies libs one by one
and misses OpenAL. qTox fails to start on launch with due to missing
OpenAL32.dll on Windows because of this.
Add a special check for OpenAL, since the generic missing dll check doesn't
cover it.
By default our organization on GH only grants a more restricted read
permission to actions for content APIs, which include both writing to
repo for nightly tag creation, and writing to releases for nightly and
tag release creation or updates.
When ToxFile is constructed with a file size of 0, it cancels the transfer as
soon as the first chunk is received due to the received size being
larger than expected.
It hasn't had a text update since being introduced over 3 years ago despite our
English INSTALL.md having significant changes in that time.
Users requiring translation would be better off auto-translating our English
INSTALL.md.
std::atomic disallows copy construction and the default constructor disables
the parameterized constructor.
Additionally the case where paths aren't writable isn't handled and would just
segfault in Settings previously, so no safety is lost.
Paths must be aware of the "makeToxPortable" state to so that on shutdown,
saving saves to the new location.
This reverts to old behaviour which was broken in
5d56a3c039Fix#6443
Newer version of avformat_open_input, av_find_input_format,
avcodec_find_decoder previously used non-const pointers that are now
const. Support both version for compatibiltiy with other platforms.
Release will be created as a draft, remaining private until manually published.
All generated artifacts will be uploaded, but will still need to be signed, and
the code archives still need to be created following
MAINTAINING.md#after-tagging
Fix#6345
* Tag is required to create a release, so tag "nightly" is moved to
latest commit on each run.
* Each time the tag is moved, the existing "nightly" release is updated
automatically by github to point to the new tag and bundle the new
commit's source code.
* Artifacts are uploaded with intentionally conflicting names to replace
last commit's version of artifacts, rather than deleting the whole
release and making a new one.
* This has two benefits, it doesn't notify of a new release on each
commit, and it doesn't leave a gap where there's no nightly release
available.