Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrap TGS bridge requests so they cannot block reboots forever #1825

Closed
wants to merge 4 commits into from

Conversation

Kapu1178
Copy link

@Kapu1178 Kapu1178 commented Jul 7, 2024

world.Export() can just never return, which can cause Reboot() to not finish without an admin manually rebooting the server
again.

UNTESTED: I don't have the means to test this myself.
🆑 DreamMaker API
Added protection against bridge requests hanging indefinitely.
/🆑

Fixes #1681

@Kapu1178 Kapu1178 requested a review from Cyberboss as a code owner July 7, 2024 01:21
Copy link

github-actions bot commented Jul 7, 2024

Thank you for contributing to tgstation-server! The workflow 'CI Pipeline' requires repository secrets and will not run without approval. Maintainers can add the CI Cleared label to allow it to run. Please note that any changes to the workflow file will not be reflected in the run.

@github-actions github-actions bot added CI Approval Required CI Pipeline execution blocked. Maintainers, apply the "CI Cleared" label to allow execution and removed CI Approval Required CI Pipeline execution blocked. Maintainers, apply the "CI Cleared" label to allow execution labels Jul 7, 2024
@ZephyrTFA ZephyrTFA added the CI Cleared Apply this to a pull request from a fork to allow it to run the CI suite label Jul 7, 2024
@Cyberboss Cyberboss added this to the v6.7.0 milestone Jul 7, 2024
ZephyrTFA
ZephyrTFA previously approved these changes Jul 7, 2024
Copy link
Contributor

@ZephyrTFA ZephyrTFA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good thing lists are pass by ref

@Cyberboss Cyberboss added Area: DMAPI Communication between TGS and DM Fix Fixes incorrect functionality CI Cleared Apply this to a pull request from a fork to allow it to run the CI suite and removed CI Cleared Apply this to a pull request from a fork to allow it to run the CI suite labels Jul 7, 2024
@github-actions github-actions bot added CI Approval Required CI Pipeline execution blocked. Maintainers, apply the "CI Cleared" label to allow execution and removed CI Cleared Apply this to a pull request from a fork to allow it to run the CI suite CI Approval Required CI Pipeline execution blocked. Maintainers, apply the "CI Cleared" label to allow execution labels Jul 7, 2024
@Cyberboss Cyberboss added the CI Cleared Apply this to a pull request from a fork to allow it to run the CI suite label Jul 7, 2024
Copy link
Member

@Cyberboss Cyberboss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't compile.

Also bump the DMAPI patch version in src/DMAPI/tgs.dm and build/Version.props

@Cyberboss Cyberboss marked this pull request as draft July 12, 2024 18:06
@Cyberboss Cyberboss removed this from the v6.7.0 milestone Jul 24, 2024
@Cyberboss Cyberboss self-assigned this Jul 26, 2024
@github-actions github-actions bot added CI Approval Required CI Pipeline execution blocked. Maintainers, apply the "CI Cleared" label to allow execution and removed CI Cleared Apply this to a pull request from a fork to allow it to run the CI suite labels Aug 5, 2024
@Cyberboss Cyberboss added this to the v6.9.0 milestone Aug 5, 2024
@Cyberboss Cyberboss added the CI Cleared Apply this to a pull request from a fork to allow it to run the CI suite label Aug 5, 2024
@github-actions github-actions bot removed the CI Approval Required CI Pipeline execution blocked. Maintainers, apply the "CI Cleared" label to allow execution label Aug 5, 2024
src/DMAPI/tgs/v5/bridge.dm Show resolved Hide resolved
src/DMAPI/tgs/v5/bridge.dm Show resolved Hide resolved
src/DMAPI/tgs/v5/bridge.dm Show resolved Hide resolved
@AffectedArc07 AffectedArc07 dismissed their stale review August 5, 2024 18:40

not being done lol

Copy link

codecov bot commented Aug 6, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 95.95%. Comparing base (43ff4b7) to head (430c25a).
Report is 115 commits behind head on dev.

Additional details and impacted files
@@            Coverage Diff             @@
##              dev    #1825      +/-   ##
==========================================
+ Coverage   95.89%   95.95%   +0.05%     
==========================================
  Files         703      713      +10     
  Lines      158988   163391    +4403     
  Branches     3209     3226      +17     
==========================================
+ Hits       152462   156779    +4317     
- Misses       6040     6123      +83     
- Partials      486      489       +3     

@Kapu1178 Kapu1178 marked this pull request as ready for review August 6, 2024 17:18
@Cyberboss Cyberboss mentioned this pull request Aug 9, 2024
@Cyberboss Cyberboss removed this from the v6.9.0 milestone Aug 10, 2024
@Kapu1178 Kapu1178 deleted the wrapbridge branch August 10, 2024 17:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: DMAPI Communication between TGS and DM CI Cleared Apply this to a pull request from a fork to allow it to run the CI suite Fix Fixes incorrect functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

BYOND sometimes lies about the result of world.Export()
4 participants