Release Checklist

From Mudlet
Revision as of 07:14, 15 March 2017 by Vadi (talk | contribs)
Jump to navigation Jump to search

3.0 release checklist

  1. ☑ sort out windows installer for 3.0 (https://github.com/Mudlet/Mudlet/pull/401)
  2. ☑ sort out mac installer for 3.0
  3. ☑ sort out linux generic installer for 3.0
  4. sort out ubuntu ppa
  5. ☑ update Mudlet/mudlet-lua with latest from vadi2/mudlet-lua (https://github.com/Mudlet/Mudlet/pull/399)
  6. go through every single commit and ensure all new functionality is documented
    1. ☑ documented geyser flyout labels
  7. ☑ update http://www.mudlet.org/geyser/files/index.html
  8. ☑ update built-in packages and scripts (https://github.com/Mudlet/Mudlet/pull/400)
  9. go through every single commit and write up a newspost with the latest highlights
    1. check wiki documentation while doing this to ensure everything is documented
    2. document if not
  10. tag in git (release process starts here)
  11. make windows installer
    1. sign windows installer
  12. make macos installer
  13. make linux installer
  14. update Ubuntu PPA
  15. regenerate geyser docs
  16. post news on mudlet.org
  17. make a proper github release
  18. post thread on forums.mudlet.org
  19. post update on achaea, lusternia, imperian, dsl-mud.org forums (any others?)
  20. post update on twitter
  21. post update on facebook
  22. update Linux distro maintainers
  23. update 'fix commited' bugs on https://bugs.launchpad.net/mudlet (release process ends here)

Post 3.0 checklist

  1. merge release_30 into development and remove the branch (see https://github.com/Mudlet/Mudlet/pull/367 for some discussion)
  2. migrate the project from launchpad.net to github.com (help wanted)
  3. upgrade mudlet.org linode image (help wanted)
  4. add vadi2/mudlet-lua as a submodule to main tree
  5. merge release_31 into development and remove the branch
  6. apply clang-format to all files
  7. enforce clang-format on commit & pr acceptance
  8. in general, 4.0 is about i18n support - but as always, feel free to work on whatever interests you
  9. (From SlySven): unify exit "directions" into single QPair<quint8,QString> item {Existing DirCodeNumber + 13 for special exits, QString() for normal/QString("special exit name") for special exits} - makes it possible to streamline TRoom class and helps for I18n as we can drop NLS {Native Language Support} strings in for directions 1-12 if needed...!
  10. (From SlySven): Revamp 2D mapper:
    • use "stub" out to 0.5x inter-room distance for all actual orthogonal/diagonal exits and draw exit lines from end of there to corresponding opposite exit in destination room (if present)/reverse exit in destination room (otherwise)/center of exit room (fallback). Choosing to call this "Z" exits to reflect east exit from one room going to west exit in second room where the first room is north of the second.
    • add drawing support for doors on stub exits/custom lines
    • add stub special exits (for those odd exits which you do no yet know where they go) together with room indications for (at least) one of such things being present and also indication of a special exit without a custom exit line representation (again to show presence of such a thing).
  11. (From SlySven): Revamp 3D mapper:
    • port away from deprecated QGLWidget usage (it'll cause us less issues on mac too)
    • rewrite code to use modern (indirect) OpenGL 3.0+ - would be needed to port to OpenGLES (e.g. Raspberry Pi) platforms anyway.
    • generally clean up the 3D paintGL() code - it is rather messy at present with redundant/ineffective calls.

Individual contributor TODOs

https://gist.github.com/keneanung/0d8def8454c912f28842d3749ad65f00 https://gist.github.com/vadi2/1fb249c48dead71b9641f840622e8495