3 ms·
Still using CircleCI. I do not love YAML at all, in fact I hate it because it's basically a 1980s text preprocessor on steroids and with dependency management.
by ljm 9mo ago
Still using CircleCI. I do not love YAML at all, in fact I hate it because it's basically a 1980s text preprocessor on steroids and with dependency management. Too much logic applied to config that depends on implicit syntax and unintuitive significant whitespace.
I mean, I had an issue once where this broke the pipeline:
key:
- value 1
- value 2
But this was fine:
key:
- value 1
- value 2
Fuck that noise!
Otherwise it works just as good as it ever did and I don't miss Github Actions where every pipeline step is packaged into a dependency. I think Github has stagnated harder than CircleCI.
- woodruffw 9mo ago> I mean, I had an issue once where this broke the pipeline: It seems fair to dislike YAML (I dislike it too), but I don't understand how this broke for you unless CircleCI (or whoever) isn't actually using a legal YAML parser. irb(main):009:0> YAML.load <<EOD irb(main):010:0" key: irb(main):011:0" - value 1 irb(main):012:0" - value 2 irb(main):013:0" EOD => {"key"=>["value 1", "value 2"]} irb(main):014:0> YAML.load <<EOD irb(main):015:0" key: irb(main):016:0" - value 1 irb(main):017:0" - value 2 irb(main):018:0" EOD => {"key"=>["value 1", "value 2"]} (This works for any number of leading spaces, so long as the spacing is consistent.)
- jborean93 9mo agoThere shouldn't be any difference between those two values. I'm not saying you are wrong and it didn't break but it's definitely surprising a parser would choke on that vs YAML itself being the problem. Don't get me wrong I can empathise with whitespace formatting being annoying and having both forms be valid just adds confusion it's just surprising to see this was the problem.