LambdaHack icon indicating copy to clipboard operation
LambdaHack copied to clipboard

Release checklist

Open Mikolaj opened this issue 11 years ago • 0 comments

Last minute optional breaking changes:

  • [ ] respond to Debian bug on Allure/freetype and create and old release with a workaround, for Allure and LH if possible
  • [ ] profile and optimize any surprise regressions; detect any memory leaks via a -h heap profile of a many-hour run
  • [ ] meld main LH and Allure content to make sure both are updated
  • [ ] meld LH and Allure GameDefinition/Client/UI/Content content
  • [ ] meld GameDefinition/ code and config.ui files
  • [ ] check and release assert-failure (includes restrictive upper bounds checking)
  • [ ] check and release minimorph
  • [ ] check and release miniutter
  • [ ] check and release sdl2-ttf
  • [ ] check and release enummapset
  • [ ] hlint (M-x haskell-check | hlint . | C-x `)

Last minute optional checks and tweaks:

  • [ ] check that all ~/.LambdaHack files and dirs are created correctly in sdl Linux, Windows and browser and that old version files are moved away correctly
  • [ ] check the convention about module hierarchies
  • [ ] update keybindings and their descriptions in-game, in content, PLAYING and InGameHelp.txt
  • [ ] update, meld, spellcheck .cabal
  • [ ] update LH's README and Allure's PLAYING
  • [later] spellcheck the above docs
  • [later] meld the above docs and separately try all links
  • [later] spellcheck content in LH
  • [later] spellcheck content in Allure
  • [later] spellcheck all remaining files and major texts in code
  • [ ] and/or spellcheck the resulting binary using lintian -I --pedantic (before updating the Debian package or after: https://lintian.debian.org/sources/haskell-lambdahack.html)
  • [ ] check that the screen reader friendly ANSI frontend works fine and cursor is visible

Testing:

  • [ ] rebuild with -fwith_expensive_assertions
  • [ ] run make expose-lore and check map and item generation; run make fastCrawl to completion and check item and actor counts
  • [ ] run the same with and without --fontset 16x16xw and check main menu submenus, lore, item menu, help and game over lists
  • [ ] run make dig-lore and make short-caves a few times and check place lore for rooms that are too uncommon
  • [ ] check Allure with weeder
  • [later] test naively, like a newbie
  • [ ] test crawl to see if stealth still important (e.g., enough foes sleep long enough) and initial loot amount is just right
  • [ ] play all other normal game modes once in Allure
  • [later] test all fontsets defined in config.ui
  • [later] try each set of movement keys
  • [ ] make sure the game is playable on a monochrome display (--frontendTeletype in small terminal)
  • [later] try mouse-only gameplay
  • [later] try each UI command key
  • [later] try each challenge
  • [later] try each non-default Main Menu setting once
  • [later] test each major config.ui setting once
  • [later] play each normal game mode once in LH
  • [ ] review the output of CI tests for LH and Allure
  • [ ] run each make frontend* once in LH
  • [ ] run each make frontend* once in Allure
  • [later] scan HPC data, catch borked boolean conditions and extend tests
  • [later] run make nodeBench
  • [later] test locally lambdahack.github.io
  • [later] test locally allureofthestars.github.io/play
  • [later] update with RC version and test lambdahack.github.io, in particular the minified js and fonts
  • [later] the same with allureofthestars.github.io/play
  • [later] test evilly so as to crash the game, based on release changelog
  • [ ] generate history.txt and check for any obvious problems

Package:

  • [ ] create new screenshots if needed
  • [ ] update screenshots and blurbs at www.allureofthestars.com
  • [ ] check that haddocks get generated and fix any warnings
  • [ ] update changelog, add release codename, if any
  • [ ] verify the main version number and the Allure dep on LH in .cabal are correct
  • [ ] verify no dependencies are too strict
  • [ ] cabal check; cabal sdist
  • [ ] upload hackage candidates
  • [ ] create a draft of the github release
  • [ ] flesh out the github release, copy the changelog
  • [ ] build, test and upload amd64 Ubuntu binaries
  • [ ] build, test and upload i386 and amd64 Wingdows binaries
  • [ ] build, test and upload Android, iOS and other binaries
  • [later] update with final version and test lambdahack.github.io
  • [later] the same with allureofthestars.github.io/play
  • [ ] publish the github release, which also creates a tag
  • [ ] publish hackage candidates as the official releases
  • [ ] update https://github.com/Homebrew/homebrew-core if needed

Announce (and sometimes upload screenshots or packages or update their links):

  • [ ] www.roguebasin.com --- New Roguelike Releases
  • [ ] www.roguebasin.com/index.php?title=Recently_Updated_Roguelikes
  • [ ] www.roguebasin.com/index.php?title=LambdaHack
  • [ ] www.roguebasin.com/index.php?title=Allure_of_the_Stars
  • [ ] https://man-of-letters.itch.io/lambdahack
  • [ ] https://man-of-letters.itch.io/allureofthestars
  • [ ] https://itch.io/board/10022/release-announcements or the devlog
  • [ ] https://libregamewiki.org/LambdaHack
  • [ ] https://libregamewiki.org/Allure_of_the_Stars
  • [ ] http://www.indiedb.com/engines/lambdahack
  • [ ] http://www.indiedb.com/games/allureofthestars
  • [ ] @AllureRoguelike twitter account
  • [ ] possibly post a screenshot or video (not a link) with #screenshotsaturday hashtag on Twitter
  • [ ] post on reddit (roguelikedev and/or haskellgamedev) and Discord/Matrix

Supervise:

  • [ ] if the haddocs don't build, upload them
  • [ ] https://matrix.hackage.haskell.org/package/LambdaHack
  • [ ] https://matrix.hackage.haskell.org/package/Allure
  • [ ] https://formulae.brew.sh/formula/allureofthestars
  • [ ] http://hydra.nixos.org/search?query=LambdaHack
  • [ ] http://hydra.nixos.org/search?query=Allure
  • [ ] https://tracker.debian.org/pkg/haskell-lambdahack
  • [ ] https://tracker.debian.org/pkg/allure
  • [ ] https://blends.debian.org/games/tasks/rogue

Cool down:

  • [ ] bump version for development
  • [ ] review and close github issues, open new standalone tasks
  • [ ] update the github wikis at leisure

Mikolaj avatar Aug 08 '14 20:08 Mikolaj