Fix #1692: expose ordered-set
This commit is contained in:
parent
6d4737ce77
commit
fa0be7ecbf
5 changed files with 14 additions and 3 deletions
|
|
@ -10,6 +10,7 @@ A preview of the next release can be installed from
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
- Fix [#1688](https://github.com/babashka/babashka/issues/1688): use-fixtures should add metadata to `*ns*`
|
- Fix [#1688](https://github.com/babashka/babashka/issues/1688): use-fixtures should add metadata to `*ns*`
|
||||||
|
- Fix [#1692](https://github.com/babashka/babashka/issues/1692): Add support for ITransientSet and org.flatland/ordered-set
|
||||||
|
|
||||||
## 1.3.190 (2024-04-17)
|
## 1.3.190 (2024-04-17)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,14 @@
|
||||||
(ns babashka.impl.ordered
|
(ns babashka.impl.ordered
|
||||||
{:no-doc true}
|
{:no-doc true}
|
||||||
(:require [flatland.ordered.map :as omap]
|
(:require [flatland.ordered.map :as omap]
|
||||||
|
[flatland.ordered.set :as oset]
|
||||||
[sci.core :as sci]))
|
[sci.core :as sci]))
|
||||||
|
|
||||||
(def omap-ns (sci/create-ns 'flatland.ordered.map nil))
|
(def omap-ns (sci/create-ns 'flatland.ordered.map nil))
|
||||||
|
(def oset-ns (sci/create-ns 'flatland.ordered.set nil))
|
||||||
|
|
||||||
(def ordered-map-ns
|
(def ordered-map-ns
|
||||||
{'ordered-map (sci/copy-var omap/ordered-map omap-ns)})
|
{'ordered-map (sci/copy-var omap/ordered-map omap-ns)})
|
||||||
|
|
||||||
|
(def ordered-set-ns
|
||||||
|
{'ordered-set (sci/copy-var oset/ordered-set oset-ns)})
|
||||||
|
|
|
||||||
|
|
@ -600,6 +600,7 @@
|
||||||
clojure.lang.IRef
|
clojure.lang.IRef
|
||||||
clojure.lang.ISeq
|
clojure.lang.ISeq
|
||||||
clojure.lang.IPersistentVector
|
clojure.lang.IPersistentVector
|
||||||
|
clojure.lang.ITransientSet
|
||||||
clojure.lang.ITransientVector
|
clojure.lang.ITransientVector
|
||||||
clojure.lang.Iterate
|
clojure.lang.Iterate
|
||||||
clojure.lang.LispReader$Resolver
|
clojure.lang.LispReader$Resolver
|
||||||
|
|
|
||||||
|
|
@ -427,7 +427,8 @@ Use bb run --help to show this help output.
|
||||||
'clojure.data.xml.event @(resolve 'babashka.impl.xml/xml-event-namespace)
|
'clojure.data.xml.event @(resolve 'babashka.impl.xml/xml-event-namespace)
|
||||||
'clojure.data.xml.tree @(resolve 'babashka.impl.xml/xml-tree-namespace))
|
'clojure.data.xml.tree @(resolve 'babashka.impl.xml/xml-tree-namespace))
|
||||||
features/yaml? (assoc 'clj-yaml.core @(resolve 'babashka.impl.yaml/yaml-namespace)
|
features/yaml? (assoc 'clj-yaml.core @(resolve 'babashka.impl.yaml/yaml-namespace)
|
||||||
'flatland.ordered.map @(resolve 'babashka.impl.ordered/ordered-map-ns))
|
'flatland.ordered.map @(resolve 'babashka.impl.ordered/ordered-map-ns)
|
||||||
|
'flatland.ordered.set @(resolve 'babashka.impl.ordered/ordered-set-ns))
|
||||||
features/jdbc? (assoc 'next.jdbc @(resolve 'babashka.impl.jdbc/njdbc-namespace)
|
features/jdbc? (assoc 'next.jdbc @(resolve 'babashka.impl.jdbc/njdbc-namespace)
|
||||||
'next.jdbc.sql @(resolve 'babashka.impl.jdbc/next-sql-namespace)
|
'next.jdbc.sql @(resolve 'babashka.impl.jdbc/next-sql-namespace)
|
||||||
'next.jdbc.result-set @(resolve 'babashka.impl.jdbc/result-set-namespace))
|
'next.jdbc.result-set @(resolve 'babashka.impl.jdbc/result-set-namespace))
|
||||||
|
|
@ -487,7 +488,8 @@ Use bb run --help to show this help output.
|
||||||
|
|
||||||
(def edn-readers (cond-> {}
|
(def edn-readers (cond-> {}
|
||||||
features/yaml?
|
features/yaml?
|
||||||
(assoc 'ordered/map @(resolve 'flatland.ordered.map/ordered-map))
|
(assoc 'ordered/map @(resolve 'flatland.ordered.map/ordered-map)
|
||||||
|
'ordered/set @(resolve 'flatland.ordered.set/ordered-set))
|
||||||
features/xml?
|
features/xml?
|
||||||
(assoc 'xml/ns @(resolve 'clojure.data.xml.name/uri-symbol)
|
(assoc 'xml/ns @(resolve 'clojure.data.xml.name/uri-symbol)
|
||||||
'xml/element @(resolve 'clojure.data.xml.node/tagged-element))))
|
'xml/element @(resolve 'clojure.data.xml.node/tagged-element))))
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@
|
||||||
[clojure.string :as str]
|
[clojure.string :as str]
|
||||||
[clojure.test :as test :refer [deftest is testing]]
|
[clojure.test :as test :refer [deftest is testing]]
|
||||||
[flatland.ordered.map :refer [ordered-map]]
|
[flatland.ordered.map :refer [ordered-map]]
|
||||||
|
[flatland.ordered.set :refer [ordered-set]]
|
||||||
[sci.core :as sci]))
|
[sci.core :as sci]))
|
||||||
|
|
||||||
(defn bb [input & args]
|
(defn bb [input & args]
|
||||||
|
|
@ -632,7 +633,8 @@
|
||||||
(is (= 2 (bb nil "(set! *data-readers* {'t/tag inc}) #t/tag 1"))))
|
(is (= 2 (bb nil "(set! *data-readers* {'t/tag inc}) #t/tag 1"))))
|
||||||
|
|
||||||
(deftest ordered-test
|
(deftest ordered-test
|
||||||
(is (= (ordered-map :a 1 :b 2) (bb nil "(flatland.ordered.map/ordered-map :a 1 :b 2)"))))
|
(is (= (ordered-map :a 1 :b 2) (bb nil "(flatland.ordered.map/ordered-map :a 1 :b 2)")))
|
||||||
|
(is (= (ordered-set :a 1 :b 2) (bb nil "(flatland.ordered.set/ordered-set :a 1 :b 2)"))))
|
||||||
|
|
||||||
(deftest data-diff-test
|
(deftest data-diff-test
|
||||||
(is (= [[nil 1] [nil 2] [1 nil 2]] (bb nil "(require '[clojure.data :as d]) (d/diff [1 1 2] [1 2 2])"))))
|
(is (= [[nil 1] [nil 2] [1 nil 2]] (bb nil "(require '[clojure.data :as d]) (d/diff [1 1 2] [1 2 2])"))))
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue