Skip to content

Conversation

@myk002
Copy link
Member

@myk002 myk002 commented Dec 21, 2024

so we can retrieve them when debugging player-reported crashes on Windows

Fixes: #4991

This PR also adds a link to the online debug symbols to stderr.log and a new dfhack-status.dat file in the savegame directory.

example contents of the status file:

DF version:  v0.50.15 linux64 STEAM
DFHack version: 50.15-r1.2 (409f60f)
Tagged release: yes
Pre-release:    no
Build url: https://github.com/DFHack/dfhack/actions/runs/12475090213

We normally ask the player for their stderr.log when debugging crashes, so the link will be available even if the player does not have a savegame to share.

Example contents of stderr.log:

DFHack build: 50.15-r1.2-65-g409f60f
Build url: https://github.com/DFHack/dfhack/actions/runs/12475090213
Starting with working directory: /home/myk/.local/share/Steam/steamapps/common/Dwarf Fortress
Binding to SDL.
Identifying DF version.
Loading hack/symbols.xml ... OK
...

The link takes you to the GitHub workflow run results, where you can download the PDBs:
image

@lethosor
Copy link
Member

where are these going to live?

@myk002
Copy link
Member Author

myk002 commented Dec 22, 2024

The idea I had going into this was to package them as an artifact that could be downloaded from GitHub. I was testing to be sure the build worked before I made changes to the workflow files. However, if we have to choose between ccache and pdb files for Windows builds, there needs to be a more serious discussion about cost/benefit of this change.

@myk002 myk002 marked this pull request as draft December 22, 2024 02:04
@myk002 myk002 requested a review from ab9rf December 23, 2024 21:27
@myk002 myk002 marked this pull request as ready for review December 23, 2024 21:27
@myk002
Copy link
Member Author

myk002 commented Dec 24, 2024

So the resulting workflow would be:

  1. Get player-supplied crash and stderr.log OR the player savegame and repro instructions
  2. go to the link in stderr.log or the dfhack-status.dat file in the savegame dir
  3. download PDBs at the link
  4. debug

@myk002
Copy link
Member Author

myk002 commented Dec 24, 2024

Merging so we can test PDB generation for Steam deployments. We can address further comments in follow-up PRs

@myk002 myk002 merged commit dab30e6 into DFHack:develop Dec 24, 2024
14 checks passed
@myk002 myk002 deleted the myk_pdb branch December 24, 2024 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

No open projects
Status: Done

Development

Successfully merging this pull request may close these issues.

Add PDBs to windows distribution

2 participants