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

Purge inherited workflows, utilities and build files #2213

Merged
merged 17 commits into from
Dec 12, 2022

Conversation

olanti-p
Copy link
Contributor

@olanti-p olanti-p commented Nov 28, 2022

Summary

SUMMARY: Infrastructure "Purge inherited workflows, utilities and build files"

Purpose of change

We have inherited many files that are being used (or were used at some point in the past) by DDA, but have no meaning for BN, or are not correct for BN, or are simply obsolete. This PR aims to get rid of the most visible ones.
Closes #2086

Describe the solution

Removed the following files and workflows:

  1. AppVeyor workflow
    It used to be used for Visual Studio builds, but now we have msvc builds in Github Actions.
  2. LGTM workflow
    DDA uses it for code analysis, but we don't use it in any capacity.
  3. flatpak definition
    It needs to be updated for BN, and maybe updated overall, before it becomes useful. Also, shouldn't we need to register on flathub first?
  4. snapcraft definition
    Needs BN-ification, didn't test whether it works.
  5. Sublime Text project
    Needs BN-ification, didn't test whether it works.
  6. Jenkins PR validation
    We don't use Jenkins, and most likely never will. DDA moved PR validation workflow to GA, so if we'll need it we could port it.
  7. Code::Blocks project
    It's reportedly been dead for years, didn't test whether it works.
  8. Travis workflow and related features
    We've moved away from Travis to GA and most likely won't be coming back. Travis parts in the workflow are just dead code by this point.
  9. Debian dockerfile
    This seems to be a one-off experiment not documented anywhere and not updated since it's creation; I tried building it and it fails.
  10. doc/HOW_YOU_CAN_HELP.md
    It describes issue labels used by DDA repo, we don't use these.
  11. xdg desktop files
    Need to be BN-ified, also may be outdated (they received some maintenance updates in DDA over the last couple years).
  12. man pages
    They've been without maintenance for years, and as far as I can tell are not mentioned in documentation, so the only way you'll use them is if you luckily stumble on them in game files. We have a handy --help command line argument that provides an up-to-date info on arguments, and README.md that gives up-to-date introduction and feedback info.
  13. tools/generate_changelog.py
    We don't use Jenkins, and we don't enforce (or validate) PR summaries, so it's kinda useless without these. Right now the stable changelog is done by hand, and experimental changelog is done by GA.
  14. CODEOWNERS file
    This is for alerting DDA team members about changes in DDA code, neither part has anything to do with BN.
  15. stalebot config
    We don't use stalebot, and there are no plans for it (yet?)
  16. tools/flagdoc/* for generating json flag documentation
    It's not mentioned in docs, so I'm not sure whether anyone has ever used it for BN (or whether it even works). Either way, many flags don't have "context" field specified properly for it to work, and that JSON file is quite clean and readable, so I'm not sure whether it needs a separate documenting mechanism.
  17. tools/json_tools/cddaUpdateJsonVolume.js
    From discussion in Change all instances of "volume" in JSONs to be a metric string CleverRaven/Cataclysm-DDA#33367, it seems to be redundant to tools/json_tools/adjust_values.py. I'd rather keep the python script, as most of our script tooling is in python.

Describe alternatives you've considered

Some of this stuff could be BN-ified and brought back into working order, sure, but it's been 2 years and noone cared enough (or felt the urgency) to deal with the bitrot. If someone volunteers to fix it, it could be left in, or, better, be removed now and then un-removed in the PR that would also have the relevant fixes.

Testing

Travis removals are pretty close to working parts of GA workflow, I've run clang-tidy-on-PR and experimental release actions on a fork and it didn't break, that should be enough.

@github-actions github-actions bot added the JSON related to game datas in JSON format. label Nov 28, 2022
@olanti-p olanti-p changed the title Purge inherited worflows, utilities and build files Purge inherited workflows, utilities and build files Nov 29, 2022
@Coolthulhu Coolthulhu self-assigned this Dec 11, 2022
@Coolthulhu
Copy link
Member

Has conflict with the MXE update. It seems non-trivial, so I'll leave it for now.

@Coolthulhu Coolthulhu removed their assignment Dec 11, 2022
@olanti-p
Copy link
Contributor Author

Resolved.

@Coolthulhu Coolthulhu self-assigned this Dec 12, 2022
@Coolthulhu Coolthulhu merged commit 5bebfbb into cataclysmbnteam:upload Dec 12, 2022
@olanti-p olanti-p deleted the remove-unused branch December 17, 2022 22:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JSON related to game datas in JSON format.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants