Commit graph

27689 commits

Author SHA1 Message Date
Eidolon
53832edafc Move old data/profiles to .bak before writing
The hypothesis for this patch is that the operating system has not actually
finished writing the file to disk when moving the tmp file into place. The
move operation is atomic, but the write is not, even when flushed or using
unbuffered IO. So we reorder these operations, make the old save .bak
atomically and write the new save in place.

I doubt saving this backup will actually be useful given the frequency of
saves in the game, but at the very least it leaves _some_ backup in place in
the event of failure.
2024-05-19 12:03:12 -05:00
Eidolon
c44790749d Merge branch 'i-error-got-damn-it' into 'master'
Stop writing gamedata/config/profiles in I_Error

See merge request KartKrew/Kart!2379
2024-05-18 01:37:55 +00:00
Oni
aa616e20e7 Merge branch 'less-signal-handling-stuff' into 'master'
Do less in NEWSIGNALHANDLER handler

See merge request KartKrew/Kart!2372
2024-05-17 23:13:38 +00:00
Oni
6892614e7d Merge branch 'replay-ufo-smash' into 'master'
Fix Sealed Star GP replays after retrying

Closes #1388

See merge request KartKrew/Kart!2369
2024-05-17 23:07:07 +00:00
Oni
f39988b24a Merge branch 'planetary-mindelay' into 'master'
Titanic mindelay unfuck

Closes #1404

See merge request KartKrew/Kart!2384
2024-05-17 23:06:46 +00:00
Oni
86df8b7c54 Merge branch 'slower-cpu-shields' into 'master'
Add bot lshield/bshield prediction error

See merge request KartKrew/Kart!2386
2024-05-17 23:06:24 +00:00
Eidolon
6389f38a46 Make pipelines auto-interruptible by default
Fixes: KartKrew/Kart#1405
2024-05-17 16:16:01 -05:00
Eidolon
a10d18afdc Merge branch 'ci-improve' into 'master'
Gitlab CI improvements

See merge request KartKrew/Kart!2385
2024-05-16 23:41:31 +00:00
Eidolon
ae4e95777a Put the apt-cache in build/
Like with ccache, we want to make sure the git checkout is considered
clean during build.
2024-05-16 17:52:26 -05:00
Eidolon
8814bb5386 Put ccache dirs in build dir to avoid dirty worktree
Placing these directories at the root will make the git revision
detection consider the working directory to be dirty.
2024-05-16 17:32:33 -05:00
AJ Martinez
ac119e42ff Add bot lshield/bshield prediction error 2024-05-16 15:26:24 -07:00
Eidolon
e42b5c2cbf Always make debuglink .debug in CI 2024-05-16 15:42:04 -05:00
Eidolon
6b071e9512 Use gitlab cache for vcpkg
Instead of using the install baked in the image, let's clone vcpkg
and set up a separate binary cache that can survive being cleaned.
This allows us to reuse built artifacts from the vcpkg manifest
baseline very quickly.
2024-05-16 15:42:04 -05:00
Eidolon
939b42c8e3 Configure CCACHE launcher for Debian amd64 CI
Let's not rely on the CMakeLists.txt to automatically detect and
use ccache. It's better to just explicitly specify it.
2024-05-16 15:42:04 -05:00
Eidolon
bab86f0842 Set CI shallow clone depth to 20 2024-05-16 15:42:04 -05:00
Eidolon
abf1e02b14 Use default GIT_STRATEGY in CI
The "clone" strategy clones the entire repository, which takes
a significant amount of time. It's not needed, because the default
"fetch" strategy will reuse the executor's local clone and clean it
before the job scripts run.
2024-05-16 15:42:04 -05:00
Eidolon
344bc3094d Expire artifacts after 1 days by default
There's no need to let these artifacts pile up since the only ones that
will be relevant to non-programmers are the latest from any given ref.
2024-05-16 15:42:04 -05:00
Eidolon
afb965b114 Raise ccache limit to 300M
Ring Racers' object file output is considerably larger than SRB2.
50M is insufficient to hold even a single build.
2024-05-16 15:42:04 -05:00
Eidolon
80d1cc8262 Separate gitlab CI into multiple yaml documents
The singular .gitlab-ci.yml is pretty beefy. Splitting it into
smaller files by job and job template will make maintaining the
individual jobs easier.
2024-05-16 15:42:04 -05:00
toaster
f7fcffb9b3 Merge branch 'post-think-fix' into 'master'
PostThinkFrame during run only

See merge request KartKrew/Kart!2383
2024-05-16 12:03:31 +00:00
AJ Martinez
0647791c32 Mindelay fixes
- Don't apply mindelay to clients that are already slower than their mindelay, WTF
- Don't double apply mindelay to hosts to compensate for the above, WTF
2024-05-15 22:31:26 -07:00
Sally Coolatta
80ac9210c5 PostThinkFrame during run only
It's scary that it wasn't doing this before!
2024-05-15 18:46:59 -04:00
Eidolon
798d653c5b Substitute some unsafe chars for revision name
This ensures that the build system won't output something like
ringracers_rr/master.exe, among other potential issues.
2024-05-14 19:32:05 -05:00
Sally Coolatta
caf6231fed Stop writing gamedata/config/profiles in I_Error 2024-05-12 14:51:47 -04:00
Eidolon
75b749dda8 Do less in NEWSIGNALHANDLER handler
Since there are less crashes than ever before, and there are risks
with trying to do anything inside a signal handler beyond the most
basic recovery stuff, we should avoid doing *anything* in here.
2024-05-12 00:39:16 -05:00
James R.
df28169031 Merge branch 'remove-libvpx-overlay' into 'master'
Update vcpkg baseline, remove libvpx overlay

See merge request KartKrew/Kart!2324
2024-05-12 01:42:44 +00:00
James R.
de05576294 Merge branch 'use-rapidjson-master' into 'master'
Use rapidjson master in discord-rpc

See merge request KartKrew/Kart!2376
2024-05-12 01:39:37 +00:00
Eidolon
a44bbca27d Use rapidjson master in discord-rpc
The last stable version of rapidjson was in 2016, and it is
unlikely that neither rapidjson nor discord-rpc will receive a
stable release ever again. However, rapidjson has a lot of fixes
merged in their tree, so in order to fix gcc 14 compilation issues,
let's pull in that tree.
2024-05-11 15:13:38 -05:00
Eidolon
c84ea60417 Update vcpkg baseline, remove libvpx overlay
The upstream changes for libvpx on Windows were merged and so this
overlay is no longer needed.

Updating the baseline requires everyone to update their vcpkg repo
locally (git pull). It also upgrades all dependencies used.
2024-05-11 15:03:37 -05:00
Logan Aerl Arias
a6ae49b7bc Update vcpkg during CI run 2024-05-11 15:02:11 -05:00
toaster
3170d8b90a Fix Sealed Star GP replays after retrying
- Increment DEMOVERSION
- Always write specialDamage
- Only read specialDamage if DEMOVERSION >= this

Needs testing, I am going to go eat a big lunch
2024-05-06 14:54:28 +01:00
James R
8326292a3f Fix staffghost loading for old demo version 2024-05-05 20:48:30 -07:00
Eidolon
caec64192d Update hashes 2024-05-05 21:51:02 -05:00
AJ Martinez
3244c755dc Never add messages for bot takeover players 2024-05-05 19:23:44 -07:00
Eidolon
f2d6010d90 Update asset hashes 2024-05-05 20:25:20 -05:00
AJ Martinez
90926cfdfd Fix default difficulty override 2024-05-05 18:19:45 -07:00
AJ Martinez
f1158918cf Fix gardentop deny crashing monitors 2024-05-05 17:53:21 -07:00
James R
4485436eed InitSpecialUFO: fix -Wsign-compare 2024-05-05 17:43:42 -07:00
toaster
2dab274e17 Update asset hashes 2024-05-06 00:48:30 +01:00
toaster
6d9d9b2c2f Add "Technical Kart Racer" to goner title screen drawer 2024-05-06 00:43:44 +01:00
Eidolon
02c8ecbe0a Merge branch 'garden-top-too-hard' into 'master'
Don't allow auto-roulette to get challenging items

See merge request KartKrew/Kart!2367
2024-05-05 23:09:59 +00:00
Eidolon
c937886c1c Merge branch 'maxconnections-local' into 'master'
Only apply maxconnections to bots in netgame contexts

See merge request KartKrew/Kart!2366
2024-05-05 23:09:33 +00:00
Oni
e323a8b939 Merge branch 'shorter-void-time' into 'master'
Shorten fault void time by about 1 second for position pitfalls

See merge request KartKrew/Kart!2362
2024-05-05 22:42:39 +00:00
Oni
6b5eceda95 Merge branch 'better-voltage-release' into 'master'
Allow better steering from trick MT release

See merge request KartKrew/Kart!2352
2024-05-05 22:36:51 +00:00
Gunla
97f3475ca4 Merge branch 'correctly-defer-encore' into 'master'
G_GetNextMap: More ironclad behaviour for encore update deferral

See merge request KartKrew/Kart!2334
2024-05-05 22:22:29 +00:00
Sally Coolatta
e01234285b Don't allow auto-roulette to get challenging items 2024-05-05 18:22:04 -04:00
AJ Martinez
693ffe12d0 Revert buubbledash changes 2024-05-05 15:20:33 -07:00
Gunla
642c04c250 Merge branch 'gp-naming' into 'master'
GP naming

See merge request KartKrew/Kart!2365
2024-05-05 22:20:08 +00:00
Gunla
254cdc795f Merge branch 'claw-determination' into 'master'
UFO determination

See merge request KartKrew/Kart!2355
2024-05-05 22:14:03 +00:00
AJ Martinez
cee99e6565 Merge branch 'burger' into 'master'
Burger deflection

See merge request KartKrew/Kart!2364
2024-05-05 21:38:25 +00:00