You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: changes.md
+11-4
Original file line number
Diff line number
Diff line change
@@ -67,7 +67,7 @@ Clojure now includes [clojure.tools.deps.interop/invoke-tool](https://clojure.gi
67
67
68
68
`add-lib` functionality is built using `invoke-tool` but you can also use it to build or invoke your own tools for interactive use. Find more about the function execution protocol on the [CLI reference](https://clojure.org/reference/clojure_cli#function_protocol).
@@ -76,7 +76,7 @@ For a long time, we've had the `clojure.java.shell` namespace, but over time Jav
76
76
*[start](https://clojure.github.io/clojure/branch-master/clojure.java.process-api.html#clojure.java.process/start) - full control over streams with access to the underlying Java objects for advanced usage
77
77
*[exec](https://clojure.github.io/clojure/branch-master/clojure.java.process-api.html#clojure.java.process/exec) - covers the common case of executing an external process and returning its stdout on completion
@@ -102,7 +102,7 @@ Qualified method invocations with [param-tags](#26-param-tags-metadata) use only
102
102
103
103
Note: Static fields are values and should be referenced without parens unless they are intended as function calls, e.g `(System/out)` should be `System/out`. Future Clojure releases will treat the field's value as something invokable and invoke it.
@@ -130,7 +130,7 @@ Java programs define "functions" with Java functional interfaces (marked with th
130
130
131
131
Clojure developers can now invoke Java methods taking functional interfaces by passing functions with matching arity. The Clojure compiler implicitly converts Clojure functions to the required functional interface by constructing a lambda adapter. You can explicitly coerce a Clojure function to a functional interface by hinting the binding name in a `let` binding, e.g. to avoid repeated adapter construction in a loop, e.g. `(let [^java.util.function.Predicate p even?] ...)`.
*[CLJ-2726](https://clojure.atlassian.net/browse/CLJ-2726)`#uuid` data reader - Fix exception on invalid input so it flows through reader
183
183
*[CLJ-2813](https://clojure.atlassian.net/browse/CLJ-2813) anonymous function arg reader - no longer accepts invalid arg symbols
184
184
*[CLJ-2843](https://clojure.atlassian.net/browse/CLJ-2843) Reflective calls to Java methods that take primitive long or double now work when passed a narrower boxed number at runtime (Integer, Short, Byte, Float). Previously, these methods were not matched during reflection and an error was thrown.
185
+
*[CLJ-2145](https://clojure.atlassian.net/browse/CLJ-2145) - Fix clearing of closed overs in `^:once` fns
186
+
*[CLJ-2317](https://clojure.atlassian.net/browse/CLJ-2317) - `recur` to head of `:once` fn cancels once
*[CLJ-2552](https://clojure.atlassian.net/browse/CLJ-2552)`reify` - improve docstring and fix example
208
210
*[CLJ-1385](https://clojure.atlassian.net/browse/CLJ-1385)`transient` - include usage model from reference docs
209
211
212
+
# Changes to Clojure in Version 1.11.4
213
+
214
+
*[CLJ-2145](https://clojure.atlassian.net/browse/CLJ-2145) - Fix clearing of closed overs in `^:once` fns
215
+
*[CLJ-2317](https://clojure.atlassian.net/browse/CLJ-2317) - `recur` to head of `:once` fn cancels once
216
+
210
217
# Changes to Clojure in Version 1.11.3
211
218
212
219
*[CLJ-2843](https://clojure.atlassian.net/browse/CLJ-2843) - Reflective calls to Java methods that take primitive long or double now work when passed a narrower boxed number at runtime (Integer, Short, Byte, Float). Previously, these methods were not matched during reflection and an error was thrown.
0 commit comments