AnyOldName3
0214e70333
Save binary log for MSBuild
...
this should let us inspect things in more detail, and hopefully explain why things are being rebuilt.
2026-01-04 18:37:38 +00:00
AnyOldName3
dd11db2228
Give up, use CMD's rd
...
The prune command fails due to the error mentioned in the previous commit message.
Using PowerShell's Remove-Item is slow due to needing to create a .NET representation for each file before processing it.
Using [System.IO.Directory]::Delete throws an exception and gives up if any file can't be deleted.
Even though docker seems to be thoroughly killed, we don't have access to delete some of its files most of the time, which might be related to the original error that blocks the prune command.
CMD's rd should be as fast as anything else (except for the smallish overhead from creating a subprocess), and at least for Aussiemon, it seems to work.
2026-01-04 18:35:14 +00:00
AnyOldName3
530ee75857
Stop docker before stealing its files
2026-01-04 18:35:03 +00:00
AnyOldName3
c1087c7a13
Use more reliable Docker deleter
...
This should avoid this error:
error during connect: In the default daemon configuration on Windows, the docker client must be run with elevated privileges to connect.: Post "http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/containers/prune ": open //./pipe/docker_engine: The system cannot find the file specified.
We've mentioned that to GitLab here: https://gitlab.com/gitlab-org/ci-cd/shared-runners/images/gcp/windows-containers/-/issues/63#note_2982154702
2026-01-04 18:34:50 +00:00
AnyOldName3
a208125906
Re-enable TrackFileAccess
...
Incremental builds don't work at all without it, which means every TU needs recompiling for every project.
This will break cleaning unless ccache data is within %APPDATA% or %TEMP%.
2026-01-03 16:31:39 +00:00
AnyOldName3
f17c8a23da
Actually read variable
...
this path isn't taken, so didn't kill CI, but is intended to work if someone uses it.
2026-01-02 23:34:02 +00:00
AnyOldName3
d4da848f4b
Don't set /MP when using ccache
...
This *should* make no difference as we already do things that mean ccache only gets told about one TU at once (e.g. using Ninja, or enabling UseMultiToolTask), but at the minimum, it's misleading to have this enabled when we know we're not using it.
2026-01-02 19:02:42 +00:00
AnyOldName3
fc4e288742
don't prompt for confirmation
2026-01-02 04:16:25 +00:00
AnyOldName3
f11b2a3d7d
See how much space an aggressive Docker prune gets us
...
Hopefully it's lots.
2026-01-02 02:17:45 +00:00
AnyOldName3
fef5f60828
Set ccache size limits per group
...
A successful run for the Ninja jobs showed that 1G and 2G were fine for groups one and two.
I'm leaving some leeway for the MSBuild jobs as they've not succeeded yet and there might be some kind of madness that means they need more.
We won't be able to see until at least one build gets far enough.
2026-01-02 02:14:09 +00:00
AnyOldName3
580a10ef73
Add PCH sloppiness for Ninja build
2026-01-01 23:22:26 +00:00
AnyOldName3
777ac2aaa6
Make MSBuild the default again
...
The ccache branches only made Ninja the default when ccache couldn't work with MSBuild.
2026-01-01 19:07:08 +00:00
AnyOldName3
3e016709b4
Adapt to split jobs
2026-01-01 18:59:56 +00:00
AnyOldName3
618d221f37
CMAKE_AUTOGEN_PARALLEL=1
2026-01-01 18:45:53 +00:00
AnyOldName3
240e2486ed
CCache with MSBuild
2026-01-01 18:45:53 +00:00
AnyOldName3
39ec9f32a1
Don't use CCACHE_BASEDIR with MSVC
...
The build directory path is consistent within a fork anyway, and we can't share cache outside that scope.
2026-01-01 18:44:34 +00:00
AnyOldName3
fb6ad44ca8
Extra anti-WSL protection
...
On a machine with Windows Subsystem for Linux installed, the first bash in the path will typically be the WSL launcher that gives Linux bash.
We must therefore ensure we recursively call into the MSYS2 shell we're already using.
2026-01-01 18:44:34 +00:00
AnyOldName3
dda54c1154
Precompiled headers are fine with ccache in 2025
2026-01-01 18:44:33 +00:00
AnyOldName3
f7c015d5dd
One value per varibles key
2026-01-01 18:44:33 +00:00
AnyOldName3
d65e76e855
Try quoting
2026-01-01 18:43:37 +00:00
AnyOldName3
51c30cd4e3
Try inode cache now ccache 4.10 is out
2026-01-01 18:43:37 +00:00
AnyOldName3
c8b52581e3
Try ignoring dependency headers
2026-01-01 18:43:37 +00:00
AnyOldName3
39c69dfbcd
Try disabling preprocessed cache lookup
2026-01-01 18:43:37 +00:00
AnyOldName3
d094de5fc5
Quote string
...
YAML doesn't like the double colon
2026-01-01 18:43:37 +00:00
AnyOldName3
a1e5cec437
Print time and percentage for Ninja builds
2026-01-01 18:42:54 +00:00
AnyOldName3
4ffe94d3ec
Reset CCache stats, set cache size
2026-01-01 18:41:56 +00:00
AnyOldName3
3f49e8db8a
And the dot
2026-01-01 18:41:56 +00:00
AnyOldName3
f8496e4f67
Re-enable MSBuild job when things might have killed it
2026-01-01 18:41:55 +00:00
AnyOldName3
795bb0bb98
Switch from MSBuild to Ninja for default Windows job
...
It should be way faster now CCache is working
2026-01-01 18:41:55 +00:00
AnyOldName3
3c66c2cbd3
Continue running master and release branch pipelines when we do back-to-back merges
2026-01-01 18:41:55 +00:00
Alexei Kotov
a207b45101
Merge branch 'splitting-headache' into 'master'
...
Split the Windows build into two, like it was when the time limit was an hour before mid 2022
See merge request OpenMW/openmw!5070
2026-01-01 18:43:16 +03:00
Alexei Kotov
9efef817dc
Merge branch 'navmeshtool_worldspaces' into 'master'
...
Somewhat reduce navmeshtool peak memory usage
See merge request OpenMW/openmw!5076
2025-12-31 00:37:51 +03:00
AnyOldName3
25543090af
Get rid of TODO that doesn't need doing
2025-12-30 17:44:44 +00:00
Alexei Kotov
48ee222cac
Merge branch 'FixPlayerQuestName' into 'master'
...
Fix bad document keyword
See merge request OpenMW/openmw!5077
2025-12-29 00:00:22 +03:00
elsid
dff8fa1cd1
Detect disconnected tile groups and report cell refs from there
...
Cell refs placed at cooridnates far from the rest are potential content
issues.
2025-12-28 13:10:42 +01:00
Daisyhasacat
b3bdb3b620
Add change to core
2025-12-27 21:14:43 +00:00
Daisyhasacat
9212b3ddbb
Fix bad word
2025-12-27 20:49:00 +00:00
Alexei Kotov
efbdd0cd5e
Merge branch 'vfs_normalized_path_26' into 'master'
...
Use normalized path in SoundManager (#8138 )
See merge request OpenMW/openmw!5048
2025-12-27 23:18:02 +03:00
Evil Eye
48b0d48e9a
Merge branch 'string_ref_id_count' into 'master'
...
Report number of StringRefIds to osg stats
See merge request OpenMW/openmw!5072
2025-12-27 16:50:30 +00:00
elsid
1763928548
Use tile coordinates from TileCachedRecastMeshManager to schedule tile generation by navmeshtool
...
Using a 2D range may consume a lot of memory if there is an object far
from the rest.
2025-12-27 16:18:01 +01:00
elsid
e9468267fc
Process worldspaces sequentially by navmeshtool
...
Gathering all cells data for all worldspaces may consume a lot memory if
interior cells processing is enabled.
2025-12-27 16:18:01 +01:00
elsid
adcec8fded
Add flag to filter worldspaces processed by navmeshtool
2025-12-26 13:46:46 +01:00
Alexei Kotov
88e15e7246
Merge branch 'fix-lod-bugs' into 'master'
...
Fix lod bugs
Closes #8884
See merge request OpenMW/openmw!5071
2025-12-26 13:41:41 +03:00
psi29a
666f8de08a
Merge branch 'rotationesmtool' into 'master'
...
Print cell reference rotation and destination rotation in esmtool (#8874 )
Closes #8874
See merge request OpenMW/openmw!5060
2025-12-26 09:21:34 +00:00
elsid
07621574d0
Report number of StringRefIds
2025-12-25 13:26:23 +01:00
elsid
fc297f741a
Remove redundant includes
2025-12-25 13:05:16 +01:00
elsid
64c24800c6
Simplify initialization
2025-12-25 13:04:45 +01:00
Cédric Mocquillon
3f630e397f
Proactively copy the range mode, even though we only use the default one at the moment
2025-12-25 10:34:15 +01:00
Cédric Mocquillon
b14057506a
Do not forget the settings of the original lod node
2025-12-25 10:32:53 +01:00
AnyOldName3
a783431df7
Balance build times between jobs
...
Before this, there was a difference of about nineteen minutes.
All the things that aren't the engine (except its dependencies) that were in group one take less than nineteen minutes to build in total, so moving everything isn't enough to give total balance.
openmw-tests depends on openmw-lib, so you have to build basically the whole engine to build it, so it should stay in the same group.
2025-12-25 00:50:49 +00:00