gb-asm-tutorial icon indicating copy to clipboard operation
gb-asm-tutorial copied to clipboard

Make Unbricked into a submodule

Open ISSOtm opened this issue 6 months ago • 0 comments

Pulling specific versions of its files via git2.

Fixes #110 (by keeping the variable even after outliving its usefulness, so maybe not a real fix) Paves the way for #117, since each lesson can now link to a commit in a repo, and possibly #17 also.

Motivation

  • The lessons were not always kept consistent between themselves, and it is particularly tedious to perform a “rebase” when something needs to be corrected in an earlier lesson.
  • #117 forms the second half of the motivation, and tbh it's a big one.
  • As a bonus, the .asm files are now served “inline”, instead of via GitHub. (This is not strictly necessary, but I think it makes more sense.)

Drawbacks

  • Since unbricked is now a submodule, the associated submodule issues (git clone --recursive, git archive no longer working...) are brought in.
  • This is even more work added onto the preprocessor; I am not super fond of the code I've written, but I'm not sure there's an elegant way to go about it either.
  • Contributing to unbricked now requires PRing two separate repos (first the submodule, then this repo to update the commit being pointed at); and the former is not really a PR, since we need to keep one commit per lesson. OTOH it should reduce QA back-and-forth on PRs made to it.

Notes

I expect that the unbricked repo would be moved to the gbdev org before actually merging this.

I also expect to perform the same modifications to Galactic Armada afterwards, if this is accepted.

ISSOtm avatar May 15 '25 08:05 ISSOtm