JuliaPOMDP / POMDPs.jl

MDPs and POMDPs in Julia - An interface for defining, solving, and simulating fully and partially observable Markov decision processes on discrete and continuous spaces.
http://juliapomdp.github.io/POMDPs.jl/latest/
Other
657 stars 100 forks source link

Bring MacOS/Windows back into CI #486

Closed WhiffleFish closed 1 year ago

zsunberg commented 1 year ago

*sigh* now we have to make all of our gh actions scripts windows-proof. Yet another man-hour of humanity's time that Microsoft has wasted.

zsunberg commented 1 year ago

@WhiffleFish this is amazing. Can you add a comment to the yml file explaining that the conversion of symbols to strings is to maintain OS compatibility?

lassepe commented 1 year ago

I understand why we need joinpath but I don't understand why we need to convert Symbols to string instead of using literal strings directly? For example, isn't string(:lib) === "lib" irrespective of the OS?

mykelk commented 1 year ago

Maybe because it is in a quoted shell command?

zsunberg commented 1 year ago

I assume that it has to do with the way windows handles various quotes, so you can't use the trick where ' are used to create arguments with " in them. Thus, we have to avoid using " anywhere in the command.

@WhiffleFish is this correct? Can you add the comment requested above so that I can merge this?

WhiffleFish commented 1 year ago

Yep, that is entirely correct. I figured there'd be a way to escape the quotes (\") in a way that would work across operating systems, but haven't been able to find a way to do so.

zsunberg commented 1 year ago

@WhiffleFish thanks! It seems like there should be a recommended way that is more straightforward, but this is great for now.