These are chat archives for Ruhrpottpatriot/GW2.NET

25th
Jan 2016
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 14:12
  1. Could you do that?
  2. I fixed Appveyor. For some reason the nuget restore line was missing from the build script. Of course the build itself will fail that way.
Steven Liekens
@StevenLiekens
Jan 25 2016 18:32
no that's not it
well kind of
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 18:32
strange, after I put it back in, it compiled the same commit without problems
Steven Liekens
@StevenLiekens
Jan 25 2016 18:32
you changed it in the GUI?
the master branch build was fine because it's driven by appveyor.yml
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 18:33
I couldn't check if we have an appveyor.yml
ah
Steven Liekens
@StevenLiekens
Jan 25 2016 18:33
my pull request was for the maintenance branch
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 18:33
ah
Steven Liekens
@StevenLiekens
Jan 25 2016 18:33
so yeah you did fix it
for all branches without appveyor.yml
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 18:37
ah good
Steven Liekens
@StevenLiekens
Jan 25 2016 18:39
I made something at work that we can use to build our nuget packages
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 19:48
hm?
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 19:58
So, you got an idea about this:
I have an object, which overloads the equality operators. Checking for equality is done via a static IComparer instance.
Now I want to be able to change the comparer instance later on and not rely entirely onto the current comparer.
You know how to do this?
Steven Liekens
@StevenLiekens
Jan 25 2016 20:20
I don't believe complex type should have any type of equality checking other than reference equality
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 20:20
It's my implementation of Semantic Versioning
so i need those
but would Factory pattern work?
Steven Liekens
@StevenLiekens
Jan 25 2016 20:21
is there more than one way to compare semvers?
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 20:21
This message was deleted
Basically there are two ways:
  1. use the equality as per standard
  2. do the same, but factor in the build component
the second is rare, but in some occasions it could be used
Steven Liekens
@StevenLiekens
Jan 25 2016 20:23
the spec declares that you MUST use their rules for comparison
The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC 2119.
Precedence for two pre-release versions with the same major, minor, and patch version MUST be determined by comparing each dot separated identifier from left to right until a difference is found as follows: identifiers consisting of only digits are compared numerically and identifiers with letters or hyphens are compared lexically in ASCII sort order. Numeric identifiers always have lower precedence than non-numeric identifiers. A larger set of pre-release fields has a higher precedence than a smaller set, if all of the preceding identifiers are equal.
I think it's dangerous to allow other rules for comparison
even though not everyone uses the standard
*cough nuget
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 20:25
xD
Steven Liekens
@StevenLiekens
Jan 25 2016 20:27
I would hardcode the rules from the standard, then maybe provide an optional NuGetVersionComparer as a separate download
haha
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 20:28
could be an option
Steven Liekens
@StevenLiekens
Jan 25 2016 20:30
appveyor can be such a hassle
I made that for csproj projects to mimic how visual studio builds nuget packages for xproj projects
Steven Liekens
@StevenLiekens
Jan 25 2016 20:56
it's loosely based on the nuget targets that ship with older versions of visual studio (https://gist.github.com/StevenLiekens/3b679c713d4edaf0966d)
but it supports way more options
Robert Logiewa
@Ruhrpottpatriot
Jan 25 2016 21:13
ah
Steven Liekens
@StevenLiekens
Jan 25 2016 22:03
oh man
I have to set up appveyor to build my project with devenv.exe
Steven Liekens
@StevenLiekens
Jan 25 2016 22:56
okay nvm that didn't even work at all
for future reference, this is how you configure appveyor for DNX projects https://github.com/StevenLiekens/TextFx/blob/master/appveyor.yml