Merge branch 'master' into nextjournal-markdown

This commit is contained in:
Michiel Borkent 2025-05-13 21:14:14 +02:00
commit b7a3688717
5 changed files with 26 additions and 4 deletions

View file

@ -9,10 +9,13 @@ A preview of the next release can be installed from
## Unreleased ## Unreleased
- [#1815](https://github.com/babashka/babashka/issues/1815): Make install-script wget-compatible - [#1818](https://github.com/babashka/babashka/issues/1818): wrong argument order in `clojure.java.io/resource` implementation
- Add `java.text.BreakIterator`
- Bump `fs` to `0.5.25` - Bump `fs` to `0.5.25`
- Bump `jsoup` to `1.20.1` - Bump `jsoup` to `1.20.1`
- Bump `edamame` to `1.4.30` - Bump `edamame` to `1.4.30`
- [#1815](https://github.com/babashka/babashka/issues/1815): Make install-script wget-compatible ([@eval](https://github.com/eval))
## 1.12.200 (2025-04-26) ## 1.12.200 (2025-04-26)

View file

@ -435,6 +435,7 @@
java.text.ParsePosition java.text.ParsePosition
;; adds about 200kb, same functionality provided by java.time: ;; adds about 200kb, same functionality provided by java.time:
java.text.SimpleDateFormat java.text.SimpleDateFormat
java.text.BreakIterator
~@(when features/java-time? ~@(when features/java-time?
`[java.time.format.DateTimeFormatter `[java.time.format.DateTimeFormatter
java.time.Clock java.time.Clock
@ -824,6 +825,8 @@
(and thread-builder (and thread-builder
(instance? thread-builder v)) (instance? thread-builder v))
thread-builder thread-builder
(instance? java.text.BreakIterator v)
java.text.BreakIterator
;; keep commas for merge friendliness ;; keep commas for merge friendliness
,)] ,)]
;; (prn :res res) ;; (prn :res res)

View file

@ -84,8 +84,8 @@
cp))) cp)))
(defn resource (defn resource
(^URL [path] (resource @the-url-loader path)) (^URL [path] (resource path @the-url-loader))
(^URL [loader path] (^URL [path loader]
(if (str/starts-with? path "/") nil ;; non-relative paths always return nil (if (str/starts-with? path "/") nil ;; non-relative paths always return nil
(getResource loader [path] true)))) (getResource loader [path] true))))

View file

@ -1193,7 +1193,7 @@ Use bb run --help to show this help output.
(println "[babashka] WARNING: config file does not exist:" config)) (println "[babashka] WARNING: config file does not exist:" config))
nil)) nil))
jar (let [jar (resolve-symbolic-link jar)] jar (let [jar (resolve-symbolic-link jar)]
(some-> [jar] cp/new-loader (cp/resource "META-INF/bb.edn") .toString)) (some->> [jar] cp/new-loader (cp/resource "META-INF/bb.edn") .toString))
:else (if (and file (fs/exists? file)) :else (if (and file (fs/exists? file))
;; file relative to bb.edn ;; file relative to bb.edn
(let [file (abs-path file) ;; follow symlink (let [file (abs-path file) ;; follow symlink

View file

@ -250,3 +250,19 @@
(is (nil? (bb nil "(import '(java.util.concurrent Executors ExecutorService)) (is (nil? (bb nil "(import '(java.util.concurrent Executors ExecutorService))
(let [fut (.submit ^ExecutorService (Executors/newCachedThreadPool) ^Runnable (fn [] 3))] (let [fut (.submit ^ExecutorService (Executors/newCachedThreadPool) ^Runnable (fn [] 3))]
(.get fut))")))) (.get fut))"))))
(deftest break-iterator-test
(is (= 1 (bb nil "(ns dude
(:import [java.text BreakIterator]))
(defn count-characters
[^String text]
(let [it (BreakIterator/getCharacterInstance)]
(.setText it text)
(loop [count 0]
(if (= (.next it) BreakIterator/DONE)
count
(recur (inc count))))))
(prn
(count-characters \"🇨🇦\"))"))))