|
|
(One intermediate revision by the same user not shown) |
Line 1: |
Line 1: |
− | This details the release process of pioneer, written for the developer team, as the process tends
| + | Page moved to: https://dev.pioneerspacesim.net/contribute/making-a-release |
− | to only be an annual one, and the knowledge of how it's best done is distributed over many | |
− | individuals, which can be a [https://github.com/pioneerspacesim/pioneer/issues/4496 show stopper].
| |
− | (It's based upon [https://github.com/pioneerspacesim/pioneer/issues/4788 #4788])
| |
− | | |
− | (For players, we recommend those who are able to [https://pioneerwiki.com/wiki/FAQ#Build_from_source compile the game]
| |
− | from master, to get and try the latest features, and help report bugs.)
| |
− | | |
− | == Make a release ==
| |
− | | |
− | Pioneer is in continuous development, and technically, has never had any hardened "stable" releases.
| |
− | However, we aim to make a periodic release that bundles many new features and that has undergone a
| |
− | feature-freeze to find bugs, prior its release.
| |
− | | |
− | Due to tradition, we try to not let it be more than one year between each official release.
| |
− | [https://github.com/pioneerspacesim/pioneer/issues/4496#issuecomment-459761900 Happenstance] has
| |
− | made that date be February 3rd each year. (Possibly, [https://en.wikipedia.org/wiki/Pi_Day pi-day]
| |
− | would be more suited?)
| |
− | | |
− |
| |
− | === Prepare ===
| |
− | | |
− | * In the weeks leading up the release date, finish up pull requests, merge them and then focus on ironing out bugs from these, and other.
| |
− | | |
− | * Announce to translators on [https://www.transifex.com/pioneer/pioneer/announcements/ Transifex] that we have a release incoming, and deadline for getting new translations included with it. (Possibly also tweet it). (devs with transifex-access: impaktor, robn, jpab, ecraven).
| |
− | | |
− | * Start a [https://github.com/pioneerspacesim/pioneer/releases draft release], summarize the major changes since last build from [https://github.com/pioneerspacesim/pioneer/blob/master/Changelog.txt Changelog.txt], from player's perspective, and noticeable bug-fixes.
| |
− | | |
− | === Publish Release ===
| |
− | | |
− | * Make sure your master is in sync with upstream:
| |
− | | |
− | git fetch --all -p
| |
− | git rebase upstream/master
| |
− | | |
− | * Create a tag (format: YYYYMMDD) to latest commit, and push it:
| |
− | | |
− | git tag YYYYMMDD
| |
− | git push upstream YYYYMMDD
| |
− | | |
− | (avoid "git push --tags", as it will push all tags)
| |
− | | |
− | * Link the draft release to the newly pushed tag
| |
− | * Publish draft. Github will now:
| |
− | ** Attach the source code of that tag, both as zip and tar.gz
| |
− | ** (after some time) attach a windows build artifact and a linux one. Rename them to:
| |
− | | |
− | pioneer-YYYYMMDD-linuz.tar.gz
| |
− | pioneer-YYYYMMDD-win.exe
| |
− | | |
− | Once this is done, share the link to the github release page.
| |
− | | |
− | == After Release ==
| |
− | | |
− | === Spread the word ===
| |
− | | |
− | Link the github release from:
| |
− | * [https://pioneerspacesim.net/page/download/ pioneerspacesim.net] (ecraven, (robn))
| |
− | * [https://twitter.com/pioneerspacesim/status/1224399814483480576 tweet] it (impaktor and robn)
| |
− | * [https://www.reddit.com/r/pioneerspacesim reddit] it (Nozmajner)
| |
− | * [https://discord.gg/RQQe3A7 discord] (sturnclaw, Nozmajner, wkfo)
| |
− | * [http://spacesimcentral.com/community/pioneer/ SSC] (anyone)
| |
− | * [https://www.youtube.com/channel/UCbFD5Oxc1C9zxqnF4OitGjQ Youtube] community post (Nozmajner, sturnclaw, Gliese852, fluffyfreak, wkfo)
| |
− | | |
− | === Upload to ===
| |
− | Beside linking, we also need to build/repackage for:
| |
− | | |
− | * [https://github.com/flathub/net.pioneerspacesim.Pioneer/ flatpak] (pcercuei)
| |
− | ** Update the [https://github.com/flathub/net.pioneerspacesim.Pioneer/blob/master/net.pioneerspacesim.Pioneer.json recipe] like [https://github.com/flathub/net.pioneerspacesim.Pioneer/pull/4 so].
| |
− | ** Web download to [https://flathub.org/apps/details/net.pioneerspacesim.Pioneer Install] for 32-bit or 64-bit x86 (Linux?) system.
| |
− | ** Direct [https://flathub.org/repo/appstream/net.pioneerspacesim.Pioneer.flatpakref download-link] to share
| |
− | * [https://pioneerspacesim.itch.io/pioneer itch] it (wkfo, Nozmajner, FluffyFreak, [https://github.com/pioneerspacesim/pioneer/issues/4733 ElonSatoshi])
| |
− | * [https://sourceforge.net/projects/pioneerspacesim/files/ sourceforge] (fluffyfreak)
| |
− | ** For a long time, this was our main/only host for builds, (we're still getting some downloads from here)
| |
− | | |
− | === Future ===
| |
− | Below are things we're currently not doing, but would perhaps be good to do (again):
| |
− | * debian package? ([https://www.internalpointers.com/post/build-binary-deb-package-practical-guide guide]) (laarmen)
| |
− | * [https://www.moddb.com/games/pioneer/downloads moddb]? ([https://spacesimcentral.com/community/profile/geraldine/ geraldine] / [https://www.moddb.com/members/miggy4000 miggy4000] )
| |
− | * OSX build ([https://github.com/salborrelli salborrelli] and/or [https://github.com/Philbywhizz Philbywhizz]), however, currently, pioneer's code base doesn't support OSX, due to lack of developers for that system.
| |
− | | |
− | === Monitor downloads ===
| |
− | Are people downloading it?
| |
− | * Itch tracs its own downloads
| |
− | * Sourceforge has public download stats
| |
− | * Github downloads are available from the [https://api.github.com/repos/pioneerspacesim/pioneer/releases API]:
| |
− | curl -s https://api.github.com/repos/pioneerspacesim/pioneer/releases | egrep '"name"|"download_count"'
| |
− | | |
− | == TODO ==
| |
− | Stuff left to masterfully weav into this wiki:
| |
− | | |
− | * What's the status of [https://ci.appveyor.com/project/pioneerspacesim/pioneer Appveyor]? pcercuei and fluffyfreak (and impaktor?) are main responsible for it. Is this still how we get our windows
| |
− | builds?
| |
− | * say something about github build [https://github.com/pioneerspacesim/pioneer/tree/master/.github/workflows pipeline] configuration?
| |
− | * Something about our [https://github.com/pioneerspacesim/pioneer/tree/master/scripts scripts]?
| |
− | * what's [https://github.com/pioneerspacesim/pioneer/tree/master/CI/appveyor this?]
| |