Skip to content

Releases: KSPModdingLibs/KSPBuildTools

1.0.0-alpha.3

14 Nov 07:56

Choose a tag to compare

Msbuild

  • Renamed global msbuild properties to have the KSPBT_ prefix to avoid namespace collisions with other frameworks
    • KSPRoot is now KSPBT_GameRoot. It should no longer be referenced within a .csproj file
    • RepoRootPath is now KSPBT_ModRoot, and should now point to the mod folder within GameData rather than the
      root of a git repo
    • BinariesOutputRelativePath is now KSPBT_ModPluginFolder
    • GenerateKSPAssemblyAttribute is now KSPBT_GenerateAssemblyAttribute and defaults to true
    • GenerateKSPAssemblyDependencyAttributes is now KSPBT_GenerateDependencyAttributes and defaults to true
    • ReferenceUnityAssemblies is now KSPBT_ReferenceUnityAssemblies
    • ReferenceKSPAssemblies is now KSPBT_ReferenceGameAssemblies
  • Added the KSPBT_ReferenceSystemAssemblies property to control referencing the mono system DLLs within the KSP
    managed folder. Setting this property to false will load the implicit framework DLLs instead.
  • Mod dependencies should now be declared with
    ModReference items. This avoids the need for the KSP install path to be known at evaluation time.
  • Only include Log.cs (or anything else in include/unity) when KSPBT_ReferenceUnityAssemblies is true (#61)
  • Fix KSP_VERSION_MAX getting mangled when using an existing version file (#64)
  • Fix incorrect behavior when building without a solution (#50)

Actions

  • KSPBT actions used in reusable workflows are now pinned with each tag, instead of using actions from main. All calls to reusable workflows should be pinned to a tag to ensure the correct actions are being used. (#21)
  • compile action: Use dotnet restore instead of nuget restore by default, allowing the action to work on any Ubuntu runner image. Added the use-nuget-restore option to restore the previous behavior for projects that use packages.config for dependencies. (#68)
  • compile action: Removed call toactions/setup-dotnet. Setting up .NET should be done as a separate step. (#65)
  • setup-ckan action: Sped up execution by skipping recommended packages and man-db updates
  • setup-ckan action: Add ckan-install-method option for installation method. Currently supports 'apt' for installation on Debian/Ubuntu, or 'skip' to skip installation for runners that already have CKAN installed.
  • assemble-release action: outputs.artifact-path now includes the .zip extension (#51)

1.0.0-alpha.2

07 Nov 05:47
2fa2a86

Choose a tag to compare

1.0.0-alpha.2 Pre-release
Pre-release

Msbuild

  • Renamed global msbuild properties to have the KSPBT_ prefix to avoid namespace collisions with other frameworks
    • KSPRoot is now KSPBT_GameRoot. It should no longer be referenced within a .csproj file
    • RepoRootPath is now KSPBT_ModRoot, and should now point to the mod folder within GameData rather than the
      root of a git repo
    • BinariesOutputRelativePath is now KSPBT_ModPluginFolder
    • GenerateKSPAssemblyAttribute is now KSPBT_GenerateAssemblyAttribute and defaults to true
    • GenerateKSPAssemblyDependencyAttributes is now KSPBT_GenerateDependencyAttributes and defaults to true
    • ReferenceUnityAssemblies is now KSPBT_ReferenceUnityAssemblies
    • ReferenceKSPAssemblies is now KSPBT_ReferenceGameAssemblies
  • Added the KSPBT_ReferenceSystemAssemblies property to control referencing the mono system DLLs within the KSP
    managed folder. Setting this property to false will load the implicit framework DLLs instead.
  • Mod dependencies should now be declared with
    ModReference items. This avoids the need for the KSP install path to be known at evaluation time.
  • Only include Log.cs (or anything else in include/unity) when KSPBT_ReferenceUnityAssemblies is true (#61)
  • Fix KSP_VERSION_MAX getting mangled when using an existing version file (#64)
  • Fix incorrect behavior when building without a solution (#50)

Docs

  • Fixed git submodule example to work even for tagged releases (#49)

Actions

  • KSPBT actions used in reusable workflows are now pinned with each tag, instead of using actions from main. All calls to reusable workflows should be pinned to a tag to ensure the correct actions are being used. (#21)
  • compile action: Use dotnet restore instead of nuget restore by default, allowing the action to work on any Ubuntu runner image. Added the use-nuget-restore option to restore the previous behavior for projects that use packages.config for dependencies. (#68)
  • compile action: Removed call toactions/setup-dotnet. Setting up .NET should be done as a separate step. (#65)
  • setup-ckan action: Sped up execution by skipping recommended packages and man-db updates
  • assemble-release action: outputs.artifact-path now includes the .zip extension (#51)

0.0.5

07 Nov 07:41

Choose a tag to compare

Several non-breaking bugfixes backported from the next development version

Docs

  • Fixed git submodule example to work even for tagged releases (#49)

Build

  • BACKPORT: Fix KSP_VERSION_MAX getting mangled when using an existing version file (#64)

Actions

  • BACKPORT: KSPBT actions used in reusable workflows are now pinned with each tag, instead of using actions from main. All calls to reusable workflows should be pinned to a tag to ensure the correct actions are being used. (#21)

1.0.0-alpha.1

31 Oct 06:58

Choose a tag to compare

1.0.0-alpha.1 Pre-release
Pre-release

Msbuild

  • Renamed global msbuild properties to have the KSPBT_ prefix to avoid namespace collisions with other frameworks
    • KSPRoot is now KSPBT_GameRoot. It should no longer be referenced within a .csproj file
    • RepoRootPath is now KSPBT_ModRoot, and should now point to the mod folder within GameData rather than the
      root of a git repo
    • BinariesOutputRelativePath is now KSPBT_ModPluginFolder
    • GenerateKSPAssemblyAttribute is now KSPBT_GenerateAssemblyAttribute and defaults to true
    • GenerateKSPAssemblyDependencyAttributes is now KSPBT_GenerateDependencyAttributes and defaults to true
    • ReferenceUnityAssemblies is now KSPBT_ReferenceUnityAssemblies
    • ReferenceKSPAssemblies is now KSPBT_ReferenceGameAssemblies
  • Added the KSPBT_ReferenceSystemAssemblies property to control referencing the mono system DLLs within the KSP
    managed folder. Setting this property to false will load the implicit framework DLLs instead.
  • Mod dependencies should now be declared with
    ModReference items. This avoids the need for the KSP install path to be known at evaluation time.
  • Only include Log.cs (or anything else in include/unity) when KSPBT_ReferenceUnityAssemblies is true (#61)
  • Fix KSP_VERSION_MAX getting mangled when using an existing version file (#64)
  • Fix incorrect behavior when building without a solution (#50)

Docs

  • Fixed git submodule example to work even for tagged releases (#49)

Actions

  • KSPBT actions used in reusable workflows are now pinned with each tag, instead of using actions from main. All calls to reusable workflows should be pinned to a tag to ensure the correct actions are being used. (#21)
  • compile action: Use dotnet restore instead of nuget restore by default, allowing the action to work on any Ubuntu runner image. Added the use-nuget-restore option to restore the previous behavior for projects that use packages.config for dependencies. (#68)
  • compile action: Removed call toactions/setup-dotnet. Setting up .NET should be done as a separate step. (#65)
  • setup-ckan action: Sped up execution by skipping recommended packages and man-db updates
  • assemble-release action: outputs.artifact-path now includes the .zip extension (#51)

0.0.4

30 Oct 06:03
07ea5e6

Choose a tag to compare

Library

  • Added a logging utility for use by mods

Actions

  • compile now uses dotnet msbuild to build the project
  • Dotnet compiler version can be specified in the compile options

Build

  • Fixed several places in KSPCommon.targets that didn't check for empty values properly
  • Support all forms of version numbers
    • KSPAssembly and KSPAssemblyDependency may optionally be major.minor (omitting patch)
    • KSPVersionFile.Version now defaults to $(FileVersion) if not set, which should support any number of elements
  • ProjectReference may now include which will generate a KSPAssemblyDependency attribute
  • Added ReferenceUnityAssemblies and ReferenceKSPAssemblies for disabling the automatic inclusion of Unity and KSP assembly references
  • Prevented automatic inclusion of mscorlib from nuget on some compiler versions

0.1.0-alpha.1

06 Aug 06:18

Choose a tag to compare

0.1.0-alpha.1 Pre-release
Pre-release

Msbuild

  • Renamed global msbuild properties to have the KSPBT_ prefix to avoid namespace collisions with other frameworks
    • KSPRoot is now KSPBT_GameRoot. It should no longer be referenced within a .csproj file
    • RepoRootPath is now KSPBT_ModRoot, and should now point to the mod folder within GameData rather than the
      root of a git repo
    • BinariesOutputRelativePath is now KSPBT_ModPluginFolder
    • GenerateKSPAssemblyAttribute is now KSPBT_GenerateAssemblyAttribute and defaults to true
    • GenerateKSPAssemblyDependencyAttributes is now KSPBT_GenerateDependencyAttributes and defaults to true
    • ReferenceUnityAssemblies is now KSPBT_ReferenceUnityAssemblies
    • ReferenceKSPAssemblies is now KSPBT_ReferenceGameAssemblies
  • Added the KSPBT_ReferenceSystemAssemblies property to control referencing the mono system DLLs within the KSP
    managed folder. Setting this property to false will load the implicit framework DLLs instead.
  • Mod dependencies should now be declared with
    ModReference items. This avoids the need for the KSP install path to be known at evaluation time.

0.0.3-alpha.4

19 Feb 22:07
87c4c79

Choose a tag to compare

0.0.3-alpha.4 Pre-release
Pre-release
  • Added a logging utility for use by mods
  • Fixed several places in KSPCommon.targets that didn't check for empty values properly
  • Support all forms of version numbers
    • KSPAssembly and KSPAssemblyDependency may optionally be major.minor (omitting patch)
    • KSPVersionFile.Version now defaults to $(FileVersion) if not set, which should support any number of elements
  • ProjectReference may now include which will generate a KSPAssemblyDependency attribute
  • Added ReferenceUnityAssemblies and ReferenceKSPAssemblies for disabling the automatic inclusion of Unity and KSP assembly references

0.0.3-alpha.3

07 Feb 20:49

Choose a tag to compare

  • Added a logging utility for use by mods
  • Fixed several places in KSPCommon.targets that didn't check for empty values properly
  • Support all forms of version numbers
    • KSPAssembly and KSPAssemblyDependency may optionally be major.minor (omitting patch)
    • KSPVersionFile.Version now defaults to $(FileVersion) if not set, which should support any number of elements
  • ProjectReference may now include which will generate a KSPAssemblyDependency attribute

0.0.3-alpha.2

07 Feb 18:22

Choose a tag to compare

Actions

  • Made compile step of create-release conditional based on the use-msbuild input

Build

  • Fixed directories not being copied to output (#38)
  • Fixed error when GenerateKSPAssemblyAttribute is unset

0.0.3

16 Dec 09:35

Choose a tag to compare

Actions

  • Made compile step of create-release conditional based on the use-msbuild input

Build

  • Fixed directories not being copied to output (#38)
  • Fixed error when GenerateKSPAssemblyAttribute is unset