- Get C# runtime of version 4.0 or higher.
- Create a virtual drive pointing to KSP installation:
subst q: <path to KSP root>
. I.e. ifKSP.exe
lives inS:\Steam\Kerbal Space Program\
then this is the root.- If you choose not to do that or the drive letter is different then you also need
to change
EasyVesselSwitch.csproj
project file to correct references and post-build actions.
- If you choose not to do that or the drive letter is different then you also need
to change
- Clone Github repository.
- Python 2.7 or greater.
- Owner or collaborator permissions in Github repository.
- Owner or maintainer permissions on Curseforge project.
- Author permissions on Specedock project.
You may work with the project from the following IDEs:
- SharpDevelop. It will pickup existing project settings just fine but at the same time can add some new changes. Please, don't submit them into the trunk until they are really needed to build the project.
- Visual Studio Express. It should work but was not tested.
Version number consists of three numbers - X.Y.Z:
- X - MAJOR. A really huge change is required to affect this number. Like releasing a first version: it's always a huge change.
- Y - MINOR. Adding a new functionality or removing an old one (highly discouraged) is that kind of changes.
- Z - PATCH. Bugfixes, small feature requests, and internal cleanup changes.
- Review file
Tools\make_binary.cmd
and ensure the path toMSBuild
is right. - Run
Tools\make_binary.cmd
having folderTools
as current. - Given there were no compile errors the new DLL file can be found in
.\Source\bin\Release\
.
- Verify that file
EasyVesselSwitch\Source\Properties\AssemblyInfo.cs
has correct version number. This will be the release number! - Run building script from the
Tools
folder to create a release archive:$ KspReleaseBuilder.py -Jp
- Check if file
EasyVesselSwitch\Source\CHANGES.md
has an up to date section at the top of the file. The block of lines till the first empty line will be extracted and used as the release description. - Update the publishing arg files (
publish_<project>_args.txt
) to refer the newest release archive. - Check-in all modified files into Github repository, including the release scripts.
- IMPORTANT! Do not commit the secrets, used in the publishing scripts!
- Publish the new release:
- Run
publish_github.cmd
to publish onGitHub
. The release will be created as draft. Sync all local changes to the repository, then go to GitHub releases and publish the draft. - Run
publish_spacedock.cmd
to publish onSpacedock
. The release becomes active immediately. - Run
publish_curseforge.cmd
to publish onCurseForge
. Once the release is verified and approved, it will become availabe for downloading. Within 24 hours the new archive should also show up in CKAN.
- Run