Closed Incapamentum closed 1 year ago
Speaking about versioning: find out how to version the project via the solution or project file.
A doc that establishes the versioning system being used (in this case, semantic versioning) along with some guidelines was just written (71538d0dc47902a2c2d04e9e05e1f4ec82094dfa).
I think a good next step before closing out this issue is to go ahead and include an AssemblyInfo.cs
file, and see if the bot can print out the version it's on when it first goes online.
Managed to figure out a method of versioning the bot through the .csproj
file. A VersionPrefix
is responsible for the major.minor.patch
versioning, while a VersionSuffix
denotes the build. A conditional is included to determine whether this is a local build, or a build done for deployment.
Should be good to merge.
So I don't believe the way how I'm running the conditionals for the VersionSuffix
is working as intended, but for now it's not the most pressing issue.
For the sake of always striving to improve: it may end up being best to simply pass on VersionPrefix
as an argument for dotnet build
, i.e. dotnet build --version-suffix <VERSION_SUFFIX>
.
This may end up requiring the modification of the build workflow. There are a couple of different solutions, but this one is probably one of the better ones in terms of being informative.
Considering that, with the possibility of different target frameworks breaking code from a prior one (i.e. such as .NET 5.0 to .NET 6.0), it'll perhaps be necessary to come up with a versioning standard.
This could probably be written in the
docs/
directory from root, as with other major pieces.