This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2024-01-05
Channels
- # announcements (2)
- # babashka (23)
- # beginners (67)
- # biff (4)
- # calva (19)
- # cider (6)
- # clj-kondo (40)
- # clj-yaml (14)
- # clojure (3)
- # clojure-austin (13)
- # clojure-europe (18)
- # clojure-nl (1)
- # clojure-norway (26)
- # clojure-uk (5)
- # clojurescript (42)
- # datascript (2)
- # datomic (6)
- # emacs (32)
- # graalvm (8)
- # humbleui (12)
- # hyperfiddle (13)
- # jobs (5)
- # lambdaisland (1)
- # lsp (18)
- # malli (15)
- # off-topic (20)
- # overtone (1)
- # pathom (5)
- # pedestal (15)
- # portal (3)
- # reitit (13)
- # releases (1)
- # remote-jobs (1)
- # yamlscript (4)
I noticed that clj-yaml uses snakeyaml rather than snakeyaml-engine. Is this something we can change?
engine is YAML 1.2 (rather than 1.1) and also the most maintained (I think)
I think this has been discussed before (at least here: https://github.com/clj-commons/clj-yaml/discussions/52) changing this would incur breaking changes on current users right? then I don't think we can easily change this
I have a YAML framework in the works that will eclipse the snakes anyway.
One thing to be aware though is that snakeyaml could itself introduce breaking changes. It does poorly against the yaml test suite https://matrix.yaml.info/, therefore bug "fixes" could become breaking changes in clj-yaml.
The 1.2 spec changes are mostly just removing 3 small things that prevent JSON from being a strict subset of YAML.
It also removes the annoying things that turn no
into a boolean and 12:34:56
into an integer.
Other than that nothing much changed.
But I agree, probably best to not do much for clj-yaml and just concentrate on a better YAML solution for Clojure.
I think most people are better off to adhering to a subset of yaml and not bother with yaml too much
the issue with adding yet another lib to bb is that it would occupy additional megabytes, I would have liked snakeyaml to grow incrementally such that it supports 1.1 and 1.2 and you can configure this via a flag
I wonder if we can support 1.2 through the existing clj-yaml library (and as an option), e.g. by preserving "no" , etc?