BB surface inventory¶
This report is generated from Babashka 1.12.218 at 0fb349c414e717800be775ba9cb77c95a9eb700d. The complete machine-readable ledger contains 1022 uniquely identified compatibility items.
Discovery does not imply support. Gobb marks an item supported or partial only when the ledger names concrete test or implementation evidence.
Inventory summary¶
| Surface | Items | Supported | Partial | Planned | Other |
|---|---|---|---|---|---|
| built-in-library | 38 | 0 | 11 | 27 | 0 |
| built-in-namespace | 104 | 6 | 19 | 79 | 0 |
| capability | 41 | 12 | 20 | 0 | 9 |
| cli | 36 | 8 | 1 | 24 | 3 |
| compatible-library | 98 | 0 | 1 | 97 | 0 |
| java-class | 583 | 35 | 1 | 524 | 23 |
| project-config | 13 | 10 | 3 | 0 | 0 |
| representative-program | 37 | 0 | 4 | 33 | 0 |
| task-config | 9 | 9 | 0 | 0 | 0 |
| upstream-test | 63 | 0 | 4 | 59 | 0 |
Evidence-backed current surface¶
| Item | Surface | State | Evidence |
|---|---|---|---|
built-in-library/babashka/babashka.curl |
built-in-library | partial | src/gobb/curl.clj test/curl |
built-in-library/babashka/fs |
built-in-library | partial | src/gobb/fs.clj test/fs |
built-in-library/cheshire/cheshire |
built-in-library | partial | src/cheshire/core.clj https://github.com/dakrone/cheshire test/cheshire |
built-in-library/clj-commons/clj-yaml |
built-in-library | partial | src/clj_yaml/core.clj https://github.com/clj-commons/clj-yaml test/clj-yaml |
built-in-library/com.cognitect/transit-clj |
built-in-library | partial | src/cognitect/transit.clj https://github.com/cognitect/transit-clj test/transit |
built-in-library/com.taoensso/timbre |
built-in-library | partial | src/taoensso/timbre.clj src/taoensso/timbre/appenders/core.clj https://github.com/taoensso/timbre test/logging |
built-in-library/hiccup/hiccup |
built-in-library | partial | src/hiccup/render.clj src/hiccup/core.clj src/hiccup2/core.clj https://github.com/weavejester/hiccup test/hiccup |
built-in-library/org.babashka/cli |
built-in-library | partial | https://github.com/babashka/cli util/stage-sources test/babashka-cli |
built-in-library/org.babashka/http-client |
built-in-library | partial | src/gobb/http_client.clj test/http-client |
built-in-library/org.clojure/data.csv |
built-in-library | partial | src/clojure/data/csv.clj https://github.com/clojure/data.csv test/data-csv |
built-in-library/org.clojure/tools.logging |
built-in-library | partial | src/clojure/tools/logging.clj src/clojure/tools/logging/impl.clj https://github.com/clojure/tools.logging test/logging |
capability/browser-filesystem |
capability | platform-limited | www/docs/implementation.md |
capability/browser-network |
capability | platform-limited | test/capabilities |
capability/browser-repl |
capability | partial | test/gobb www/docs/javascripts/repl.js |
capability/browser-subprocess |
capability | platform-limited | www/docs/implementation.md |
capability/browser-wasm |
capability | partial | Makefile |
capability/clock |
capability | supported | test/capabilities |
capability/compiled-program |
capability | supported | :compiled/main test/projects |
capability/environment |
capability | supported | test/capabilities |
capability/filesystem |
capability | partial | test/fs test/capabilities |
capability/gobb-reader-feature |
capability | intentional-difference | :reader/gobb-feature |
capability/http-server |
capability | partial | test/interactive-services |
capability/jvm-bytecode |
capability | not-applicable | www/docs/implementation.md |
capability/native-freebsd-amd64 |
capability | partial | util/release-dist |
capability/native-freebsd-arm64 |
capability | partial | util/release-dist |
capability/native-linux-amd64 |
capability | supported | test/gobb util/release-dist |
capability/native-linux-arm64 |
capability | partial | util/release-dist |
capability/native-macos-amd64 |
capability | partial | util/release-dist |
capability/native-macos-arm64 |
capability | partial | util/release-dist |
capability/native-netbsd-amd64 |
capability | partial | util/release-dist |
capability/native-netbsd-arm64 |
capability | partial | util/release-dist |
capability/native-openbsd-amd64 |
capability | partial | util/release-dist |
capability/native-openbsd-arm64 |
capability | partial | util/release-dist |
capability/native-repl |
capability | supported | test/gobb src/gobb/cli.clj |
capability/native-windows-amd64 |
capability | partial | util/release-dist |
capability/network-client |
capability | partial | test/curl test/http-client test/capabilities |
capability/nrepl-server |
capability | supported | test/interactive-services |
capability/platform-contract |
capability | supported | test/capabilities |
capability/pods |
capability | partial | test/interactive-services |
capability/process |
capability | supported | test/tasks src/gobb/tasks.clj |
capability/process-pipeline |
capability | supported | test/tasks |
capability/random |
capability | supported | test/capabilities |
capability/runtime-require |
capability | supported | :loading/require |
capability/sci-runtime |
capability | not-applicable | test/gobb |
capability/signals |
capability | partial | test/gobb |
capability/socket-repl |
capability | supported | test/interactive-services |
capability/standard-streams |
capability | partial | test/capabilities |
capability/wasi-filesystem |
capability | platform-limited | test/capabilities |
capability/wasi-network |
capability | platform-limited | test/capabilities |
capability/wasi-process |
capability | platform-limited | test/capabilities |
capability/wasi-wasm |
capability | partial | Makefile |
capability/working-directory |
capability | partial | test/capabilities |
class/[B |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/[I |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/[Ljava.lang.Double; |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/[Ljava.lang.Object; |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/[Ljava.time.temporal.TemporalField; |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/[Ljava.time.temporal.TemporalQuery; |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/babashka.impl.proxy.proxy$clojure.lang.APersistentMap$IMeta$IObj$ICustomType$2e362593 |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/babashka.impl.proxy.proxy$java.lang.Object$HostnameVerifier$6fa58e1c |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/babashka.impl.proxy.proxy$java.lang.Object$ff19274a |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/babashka.impl.proxy.proxy$java.lang.ThreadLocal$ff19274a |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/babashka.impl.proxy.proxy$java.net.Authenticator$ff19274a |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/babashka.impl.proxy.proxy$java.net.ProxySelector$ff19274a |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/borkdude.graal.LockFix |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/java.io.BufferedInputStream |
java-class | supported | test/java-lang |
class/java.io.BufferedOutputStream |
java-class | supported | test/java-lang |
class/java.io.ByteArrayInputStream |
java-class | supported | test/java-lang |
class/java.io.ByteArrayOutputStream |
java-class | supported | test/java-lang |
class/java.io.File |
java-class | supported | test/java-lang |
class/java.io.FileInputStream |
java-class | supported | test/java-lang |
class/java.io.FileOutputStream |
java-class | supported | test/java-lang |
class/java.io.InputStream |
java-class | supported | test/java-lang |
class/java.io.OutputStream |
java-class | supported | test/java-lang |
class/java.io.Reader |
java-class | supported | test/java-lang |
class/java.io.StringReader |
java-class | supported | test/java-lang |
class/java.io.StringWriter |
java-class | supported | test/java-lang |
class/java.io.Writer |
java-class | supported | test/java-lang |
class/java.lang.Boolean |
java-class | supported | test/java-lang |
class/java.lang.Character |
java-class | supported | test/java-lang |
class/java.lang.Double |
java-class | supported | test/java-lang |
class/java.lang.Exception |
java-class | supported | test/java-lang |
class/java.lang.IllegalArgumentException |
java-class | supported | test/java-lang |
class/java.lang.IllegalStateException |
java-class | supported | test/java-lang |
class/java.lang.Integer |
java-class | supported | test/java-lang |
class/java.lang.Long |
java-class | supported | test/java-lang |
class/java.lang.Math |
java-class | supported | test/java-lang |
class/java.lang.RuntimeException |
java-class | supported | test/java-lang |
class/java.lang.String |
java-class | supported | test/java-lang |
class/java.lang.StringBuilder |
java-class | supported | test/java-lang |
class/java.lang.System |
java-class | supported | test/java-lang |
class/java.lang.Thread |
java-class | partial | test/java-compat |
class/java.lang.Throwable |
java-class | supported | test/java-lang |
class/java.lang.UnsupportedOperationException |
java-class | supported | test/java-lang |
class/java.nio.file.Files |
java-class | supported | test/java-lang |
class/java.nio.file.Path |
java-class | supported | test/java-lang |
class/java.nio.file.Paths |
java-class | supported | test/java-lang |
class/java.time.Instant |
java-class | supported | test/java-lang |
class/java.util.UUID |
java-class | supported | test/java-lang |
class/java.util.regex.Matcher |
java-class | supported | test/java-lang |
class/java.util.regex.Pattern |
java-class | supported | test/java-lang |
class/jdk.internal.net.http.HttpClientBuilderImpl |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/jdk.internal.net.http.HttpClientFacade |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/jdk.internal.net.http.HttpRequestBuilderImpl |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/jdk.internal.net.http.HttpResponseImpl |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/jdk.internal.net.http.common.MinimalFuture |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/jdk.internal.net.http.websocket.BuilderImpl |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/jdk.internal.net.http.websocket.WebSocketImpl |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/org.graalvm.nativeimage.ProcessProperties |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/sun.misc.Signal |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
class/sun.misc.SignalHandler |
java-class | intentional-difference | Class depends on JVM internals, generated bytecode, or GraalVM |
cli/--init |
cli | supported | :loading/init |
cli/-D<property>=<value> |
cli | not-applicable | www/docs/implementation.md |
cli/-XX:PrintFlags= |
cli | not-applicable | www/docs/implementation.md |
cli/-Xmx<size>[g|G|m|M|k|K] |
cli | not-applicable | www/docs/implementation.md |
cli/-cp |
cli | supported | test/gobb |
cli/-e |
cli | supported | :cli/expression |
cli/-f |
cli | supported | test/gobb |
cli/-m |
cli | supported | :invocation/main |
cli/-x |
cli | supported | :invocation/exec |
cli/nrepl-server |
cli | supported | test/interactive-services |
cli/repl |
cli | partial | test/gobb |
cli/socket-repl |
cli | supported | test/interactive-services |
compatible-library/babashka/babashka.curl |
compatible-library | partial | src/gobb/curl.clj test/curl |
namespace/babashka.classpath |
built-in-namespace | supported | src/babashka/classpath.clj test/gobb |
namespace/babashka.cli |
built-in-namespace | partial | util/stage-sources test/babashka-cli |
namespace/babashka.core |
built-in-namespace | supported | src/babashka/core.clj test/gobb |
namespace/babashka.curl |
built-in-namespace | partial | src/gobb/curl.clj test/curl |
namespace/babashka.fs |
built-in-namespace | partial | src/gobb/fs.clj test/fs |
namespace/babashka.http-client |
built-in-namespace | partial | src/gobb/http_client.clj test/http-client |
namespace/babashka.nrepl.server |
built-in-namespace | supported | src/babashka/nrepl/server.clj test/interactive-services |
namespace/babashka.pods |
built-in-namespace | partial | src/babashka/pods.clj test/interactive-services |
namespace/babashka.process |
built-in-namespace | partial | src/gobb/process.clj test/process |
namespace/cheshire.core |
built-in-namespace | partial | src/cheshire/core.clj test/cheshire |
namespace/clj-yaml.core |
built-in-namespace | partial | src/clj_yaml/core.clj test/clj-yaml |
namespace/clojure.core.server |
built-in-namespace | partial | src/clojure/core/server.clj test/interactive-services |
namespace/clojure.data.csv |
built-in-namespace | partial | src/clojure/data/csv.clj test/data-csv |
namespace/clojure.java.io |
built-in-namespace | partial | src/clojure/java/io.clj test/java-io :loading/resource |
namespace/clojure.test |
built-in-namespace | supported | src/gobb/host.clj test/gobb |
namespace/clojure.tools.logging |
built-in-namespace | partial | src/clojure/tools/logging.clj test/logging |
namespace/clojure.tools.logging.impl |
built-in-namespace | partial | src/clojure/tools/logging/impl.clj test/logging |
namespace/clojure.tools.logging.readable |
built-in-namespace | supported | src/clojure/tools/logging/readable.clj test/logging |
namespace/clojure.zip |
built-in-namespace | supported | https://github.com/clojure/clojure util/stage-sources test/clojure-zip |
namespace/cognitect.transit |
built-in-namespace | partial | src/cognitect/transit.clj test/transit |
namespace/hiccup.core |
built-in-namespace | partial | src/hiccup/core.clj test/hiccup |
namespace/hiccup2.core |
built-in-namespace | partial | src/hiccup2/core.clj test/hiccup |
namespace/org.httpkit.server |
built-in-namespace | partial | src/org/httpkit/server.clj test/interactive-services |
namespace/taoensso.timbre |
built-in-namespace | partial | src/taoensso/timbre.clj test/logging |
namespace/taoensso.timbre.appenders.core |
built-in-namespace | partial | src/taoensso/timbre/appenders/core.clj test/logging |
project/aliases |
project-config | supported | test/projects |
project/bb-edn-discovery |
project-config | supported | test/projects |
project/classpath-cache |
project-config | supported | test/projects |
project/deps |
project-config | supported | test/projects |
project/deps-root |
project-config | supported | test/projects |
project/git-coordinates |
project-config | supported | test/projects |
project/local-coordinates |
project-config | supported | test/projects |
project/min-bb-version |
project-config | supported | test/projects |
project/mvn-coordinates |
project-config | partial | test/projects src/gobb/project.clj |
project/paths |
project-config | supported | test/projects |
project/pods |
project-config | partial | test/interactive-services |
project/preloads |
project-config | supported | :loading/preloads |
project/print-deps |
project-config | partial | test/projects |
representative-program/examples/fzf.clj |
representative-program | partial | test/tasks |
representative-program/examples/process_builder.clj |
representative-program | partial | test/tasks |
representative-program/examples/pst.clj |
representative-program | partial | test/tasks |
representative-program/examples/which.clj |
representative-program | partial | test/tasks |
tasks/depends |
task-config | supported | test/tasks |
tasks/doc |
task-config | supported | test/tasks |
tasks/enter-leave |
task-config | supported | test/tasks |
tasks/init |
task-config | supported | test/tasks |
tasks/parallel |
task-config | supported | test/tasks |
tasks/private |
task-config | supported | test/tasks |
tasks/requires |
task-config | supported | test/tasks |
tasks/run |
task-config | supported | test/tasks |
tasks/task-map |
task-config | supported | test/tasks |
upstream-test/test/babashka/bb_edn_test.clj |
upstream-test | partial | test/projects |
upstream-test/test/babashka/deps_test.clj |
upstream-test | partial | test/projects |
upstream-test/test/babashka/impl/tasks_test.clj |
upstream-test | partial | test/tasks |
upstream-test/test/babashka/print_deps_test.clj |
upstream-test | partial | test/projects |
Planned queue¶
| Milestone | Planned items |
|---|---|
| 11 | 6 |
| 12 | 2 |
| 14 | 98 |
| 15 | 32 |
| 16 | 705 |
Authoritative inputs¶
bb --helpfor commands and optionssrc/babashka/main.cljfor built-in namespacesdeps.ednfor bundled dependenciesdoc/libraries.csvfor BB-compatible librariesbabashka.classes/all-classesfor the exposed Java class surfacetest/andexamples/for upstream tests and representative programscompat/capabilities.ednfor native, WASI, and browser dispositionscompat/inventory.ednfor Gobb states, milestones, rationales, and evidence
The full ledger is tracked as compat/ledger.edn.
Regenerate and validate both files with: