Commit graph

894 commits

Author SHA1 Message Date
Michiel Borkent
ba582d14a2 process: pprinting 2022-03-27 12:06:34 +02:00
Michiel Borkent
cd013227d5 Revert "Support sun.misc.Signal handlers (#1221)"
Shutdown code should be handled with a shutdown hook

This reverts commit 81a1fd4c86.
2022-03-27 12:04:50 +02:00
Michiel Borkent
81a1fd4c86
Support sun.misc.Signal handlers (#1221) 2022-03-26 22:45:49 +01:00
Michiel Borkent
72ae663842 fix #1220: add reflection on java.util.concurrent.Future 2022-03-25 12:07:30 +01:00
Michiel Borkent
1ad93077c1 fix #1216: fix core.async alts example with polyfill 2022-03-23 23:49:09 +01:00
Wes Morgan
e602286799
feat #863: Load pods from bb.edn (#1205)
Co-authored-by: Michiel Borkent <michielborkent@gmail.com>
2022-03-23 17:08:59 +01:00
Michiel Borkent
6305f7450d
Add compatibility with GraalVM 22.1 (#1215)
* do not init java net http classes at build time
2022-03-22 16:41:26 +01:00
Michiel Borkent
25a57b483c
meander: interop on Iterator 2022-03-19 11:34:20 +01:00
Michiel Borkent
fc0bb83ca2 meander interop 2022-03-19 11:04:37 +01:00
Michiel Borkent
b395084d47 meander: nth interop 2022-03-19 10:27:45 +01:00
Michiel Borkent
ad8982d0c6 meander: unchecked-dec + disjoin interop 2022-03-19 10:14:01 +01:00
Michiel Borkent
152234937c meander interop 2022-03-19 00:25:59 +01:00
Michiel Borkent
dd6ca6e623 Fix and add reflections for vectors and maps 2022-03-19 00:02:08 +01:00
Michiel Borkent
c09ff9e61c Allow .indexOf on vector 2022-03-18 23:49:17 +01:00
Michiel Borkent
701c719c78 Expose clojure.lang.PersistentHashMap/EMPTY 2022-03-13 16:16:03 +01:00
Michiel Borkent
569f62c928 Add *compile-files* var 2022-03-13 13:15:50 +01:00
Michiel Borkent
158082e87e Support method of super 2022-03-13 13:09:23 +01:00
Joshua Davey
5f4c6e52d0
Add Deflater and DeflaterOutputStream (#1209)
Deflater allows one to control, for example, the level of compression
used. The DeflaterOutputStream is the parent of GZIPOutputStream
class, and allows raw zlib compressed stream (i.e. no gzip header/footer).
2022-03-12 23:12:01 +01:00
Michiel Borkent
3624de4a92 CHANGELOGS 2022-03-12 13:37:26 +01:00
Michiel Borkent
3759d14baf
Add clojure.data.priority-map as built-in, support aysylu/loom lib (#1207) 2022-03-11 12:23:31 +01:00
mknoszlig
f9451f5de0
feat #1204: add babashka.config property 2022-03-11 11:03:42 +01:00
Michiel Borkent
7c81443ae7 Add missing classes to support specter 2022-03-08 16:21:20 +01:00
Michiel Borkent
56c7bcd777
Add part of clojure.tools.reader.reader-types to support hugsql (#1201) 2022-03-07 16:55:14 +01:00
Michiel Borkent
3f49ad3b89
fix #1199: print-method impls on records (#1200) 2022-03-05 17:11:11 +01:00
Michiel Borkent
dc5d756394
pprint: add get-pretty-writer (#1198)
Closes #1197
2022-03-04 12:42:27 +01:00
Michiel Borkent
f4cd6c2bf1
feat: compatibility with at-at 2022-03-03 11:24:52 +01:00
Michiel Borkent
76accde8da
Add clojure.instant/parse-timestamp 2022-03-01 20:33:49 +01:00
Michiel Borkent
61e47555f9 feat #1187: Add :result key to (current-task) map that can be used in :leave task hook 2022-02-27 12:10:33 +01:00
Michiel Borkent
141881376d
fix #1190: task dependencies resolve as core.async channels (#1191) 2022-02-27 11:49:40 +01:00
Michiel Borkent
83c610ca0f fix #1180: limit bb tasks output to first line of docstring 2022-02-24 12:28:54 +01:00
Gabriel Horner
7126112cc3
Add latest datascript (#1185)
* Update datascript config

Add db ns, loads latest datascript and can load datascript-transit
library. All tests for pull.cljc and query.cljc pass except for queries
with fns as inputs

* Add datalog-parser to projects.md per #1171 comment
2022-02-22 14:17:58 +01:00
Michiel Borkent
cd285b9a19
SCI: refactored to protocols (#1183) 2022-02-20 12:02:08 +01:00
Michiel Borkent
19e87a545d
fix #1181: clojure.test report does not respect *test-out* correctly (#1182) 2022-02-18 22:54:10 +01:00
Michiel Borkent
14a8c0e0ec Add method to satisfy tests 2022-02-14 15:52:27 +01:00
Michiel Borkent
b461925981
SCI: use mutable arrays for bindings (#1177) 2022-02-14 11:52:32 +01:00
Michiel Borkent
5226d9cc0f Upgrade to clojure 11 beta1 2022-02-02 22:49:55 +01:00
Michiel Borkent
2cc7e36ec3 Add java.lang.reflect.Array#newInstance 2022-02-01 11:30:12 +01:00
Michiel Borkent
fe42f1e436 Add java.io.Data classes 2022-02-01 11:24:20 +01:00
Michiel Borkent
e95c4dd37d More clojure 11 vars 2022-01-25 11:02:03 +01:00
Michiel Borkent
c7cc5663cb
feat #1158: add clojure.math namespace (#1159) 2022-01-25 10:30:22 +01:00
Michiel Borkent
8a15a82f44
Add compatibility with algo.monad (#1151) 2022-01-23 11:09:52 +01:00
Michael Glaesemann
ca59f3890e
fix #1143: allow optional (ignored) -- when using using --main (#1147)
Permits previously-accepted behavior broken in 19415f6363
2022-01-20 14:53:54 +01:00
Michiel Borkent
da31e9c61c
fix #1144: cannot create multidimensional arrays (#1145) 2022-01-16 12:42:10 +01:00
Michiel Borkent
34f9997df4 [#1123, #1124] Do not require java for bb tasks without deps 2021-12-30 16:32:15 +01:00
Michiel Borkent
ddf03c50ae [#1116] Missing error message when exception happens in REPL print 2021-12-29 16:10:30 +01:00
Michiel Borkent
53eb64e67d [#1119] Add equals method of java.util.Arrays 2021-12-27 22:03:30 +01:00
Michiel Borkent
1912b921df Fixes for issue reported by @thiagokokada 2021-12-27 21:31:13 +01:00
Michiel Borkent
fb7f984389
[#1110] Load tasks and deps from other bb.edn file (#1117)
Co-authored-by: Bob <highpressurecarsalesman@gmail.com>
2021-12-26 17:26:35 +01:00
Michiel Borkent
93fb4379ff
[#584, #1037] Uberscript in bb (#1115) 2021-12-23 21:23:11 +01:00
Michiel Borkent
86c67af49c
[#1105] Include native elements in printed stacktrace (#1113) 2021-12-22 13:04:29 +01:00
Michiel Borkent
823bc8ca22 0.7.0 2021-12-10 11:19:19 +01:00
Michiel Borkent
73d466e7d6
Fix SCI#649 aget reflection (#1100)
Fix issue with aget reported in babashka/sci#649 by @MrEbbinghaus
2021-12-09 22:38:38 +01:00
Michiel Borkent
806517c2ba graal config 2021-12-09 17:52:51 +01:00
Michiel Borkent
efacc16e3b graal config 2021-12-09 17:50:41 +01:00
Michiel Borkent
b67d539ab0 fields 2021-12-09 17:42:55 +01:00
Michiel Borkent
713358dca8 SCI: instance field access // MultiFn interop 2021-12-09 17:28:04 +01:00
Michiel Borkent
b32b7d7de9 sci bump, memfn 2021-12-09 13:05:45 +01:00
Michiel Borkent
19ad756261 Support applyTo interop for clojure.spec 2021-12-08 22:42:26 +01:00
Michiel Borkent
f754578075 Add coax tests 2021-12-08 21:31:58 +01:00
Michiel Borkent
6d14ed61f1 Add better-cond to CI tests 2021-12-08 18:46:53 +01:00
Michiel Borkent
54cd1fa85f Add core specs warning 2021-12-08 18:08:02 +01:00
Michiel Borkent
f5fd11fd78 Don't remove core specs when they are in deps map 2021-12-08 17:20:05 +01:00
Michiel Borkent
8b3e89fbcc Don't remove core specs 2021-12-08 17:11:29 +01:00
Michiel Borkent
76c9d633ff Warn on clojure.spec.alpha 2021-12-08 16:04:32 +01:00
Michiel Borkent
ef8e4f48b9 add StackTraceElement->vec 2021-12-08 15:00:24 +01:00
Michiel Borkent
e466f832b8
inst-ms + clojure.instant ns (#1098) 2021-12-08 13:51:31 +01:00
Michiel Borkent
e703669c79
Add java.util.StringTokenizer (#1092) 2021-12-06 11:31:30 +01:00
Michiel Borkent
f761d84312 Add new functions from clojure 1.11 except clojure.java.math 2021-12-02 20:47:09 +01:00
Michiel Borkent
2079f0a554 Add print-deps test 2021-11-29 23:42:36 +01:00
Michiel Borkent
99262e7ce8 Add babashka.core 2021-11-28 15:56:26 +01:00
Michiel Borkent
2a2d4befe5 Add babashka.core 2021-11-28 15:56:17 +01:00
Nik
080c60c08e
[#1081] make next.jdbc's result-set namespace accessible from babashka (#1082) 2021-11-28 09:36:42 +01:00
Nik
f06a749249
Add support for SQLite via a BABASHKA_FEATURE_SQLITE feature flag (#1079)
* implement native sqlite support as a feature flag following [1]

([1] is mentioned as a checklist of sorts as to how to add a new 
feature flag in [2])

[1] 13f65f05ae
[2] https://github.com/babashka/babashka/blob/master/doc/build.md

* bump to latest sqlite-jdbc, remove some no longer needed config+libs

based on feedback from borkdude here [1], bump xerial/sqlite-jdbc
3.36.0.3, which includes the graalvm classes and resource config
previously implemented via ericdallo/sqlite-jni-graal-fix and a `-H`
flag in `script/compile`

[1]: https://github.com/babashka/babashka/pull/1079#issuecomment-980533178
2021-11-28 09:34:54 +01:00
Michiel Borkent
4566905a5c
Add compatibility with hato and clj-http-lite insecure feature (#1080)
Added classes:

- java.net.CookiePolicy
- java.net.http.HttpTimeoutException
- javax.net.ssl.HostnameVerifier
- javax.net.ssl.HttpsURLConnection
- javax.net.ssl.KeyManagerFactory
- javax.net.ssl.SSLSession
- javax.net.ssl.TrustManagerFactory
- java.security.KeyStore
- java.util.zip.Inflater
- java.util.zip.ZipException
2021-11-27 15:58:24 +01:00
Michiel Borkent
e419c569a8
Support satisfies? on protocol values (#1076) 2021-11-24 17:38:38 +01:00
Michiel Borkent
a95c51998f
limit space of InetAddress4/6 2021-11-23 11:34:30 +01:00
Michiel Borkent
29b693181c Merge branch 'master' into reader-resolver 2021-11-22 22:02:02 +01:00
Michiel Borkent
369ee94c90
Add java.net.Inet4Address and java.net.Inet6Address (#1072) 2021-11-22 10:42:50 +01:00
Michiel Borkent
d897baff28 reader-resolver 2021-11-21 23:51:21 +01:00
Michiel Borkent
8ae4fc5128 sci: default-reader-fn 2021-11-21 21:19:52 +01:00
Michiel Borkent
d04e897ef4 clojure.core/read improvements: support :eof + :read-cond 2021-11-21 14:37:14 +01:00
Michiel Borkent
0428d983d9 update to newest sci 2021-11-19 21:46:16 +01:00
Michiel Borkent
1ebe142655 use sci/copy-ns 2021-11-19 18:43:18 +01:00
Michiel Borkent
44e8ea36fd Update with fs/with-temp-dir 2021-11-19 18:43:18 +01:00
Michael Glaesemann
5940b95cd2
Add javax.crypto classes necessary for calculating hmac shas. (#1066)
* Add javax.crypto classes necessary for calculating hmac shas.

* Add hmac-256-sha test for javax.crypto.
2021-11-18 08:49:59 +01:00
Michiel Borkent
52f9dc8f28
Add various tools.build related classes (#1062)
Co-authored-by: Hugo Duncan <hugo@hugoduncan.org>
2021-11-13 11:11:42 +01:00
Michiel Borkent
948c38c035 Add support for BasicFileAttributes 2021-11-13 11:05:21 +01:00
Michiel Borkent
aaaab5f6eb [#1061] Calling close on DirectoryStream fails 2021-11-13 10:44:16 +01:00
Michiel Borkent
321c47297d [#1061] Calling close on DirectoryStream fails 2021-11-13 10:38:21 +01:00
Bob
fb1a1cfbfb
[#1046] add PGProperty fields to reflection config 2021-11-07 21:44:10 +01:00
Michiel Borkent
2bb7499fd5 [#1055] Segfault when reifying FileVisitor with visitFileFailed 2021-11-07 12:05:16 +01:00
Michiel Borkent
7c7053119a Expose babashka.deps/clojure 2021-11-06 13:01:35 +01:00
Michiel Borkent
19415f6363 Fix remaining args when invoking -m 2021-11-02 13:46:51 +01:00
Karol Wójcik
147e12f041
Add clojure.lang.IPersistentList (#1048) 2021-11-01 13:58:53 +01:00
Michiel Borkent
e819cd1fb5 Update babashka.fs 2021-10-20 21:31:34 +02:00
Bob
5a80e1603e
- correct --init to be a global option (#1036)
- test --init before subcommands and task names
2021-10-18 15:39:08 +02:00
Bob
bf3b6d2dca
add support for --init as a file to be loaded before evaluation actions (#1033) 2021-10-17 10:44:31 +02:00
Michiel Borkent
83f2441bfd [#1030] Add fs/unzip 2021-10-12 17:23:09 +02:00
Michiel Borkent
405c34b668
Add java.security.Provider and java.security.Security (#1028)
This adds about 80k to the binary.
2021-10-11 17:28:12 +02:00
Michiel Borkent
bc63da1612
babashka fs: add unzip function (#1027) 2021-10-07 12:39:33 +02:00
Bob
d4ac7365e0
[#1015] print locals only when debug option is enabled (#1021) 2021-09-29 09:24:51 +02:00
Michiel Borkent
7063021f19
SCI: use public stacktrace logic (#1017) 2021-09-26 23:48:36 +02:00
Bob
7df81f1273
make core.async and rewrite-clj integral (#1014)
* make core.async integral (not a feature)

tasks (in particular, parallel tasks) require core.async

* make rewrite_clj integral (not a feature)

* cleanup mistakes
2021-09-23 18:15:01 +02:00
Michael Glaesemann
7cb972fdec
Include java.util.stream.BaseStream in classes. (#1013) 2021-09-23 16:01:42 +02:00
Bob
407bd74a00
[#1004] XML edn reading and populating *data-readers* for feature deps (#1012)
* add XML edn reading and make *data-readers* closer to Clojure

- initial value of *data-readers*: empty map
- add XML readers to feature-flagged edn-readers for parsing *input*
- add edn-readers to *data-readers* to emulate data_readers.clj handling

* add YAML round-trip testing

* set root val of *data-readers* at top level
2021-09-20 18:31:57 +02:00
Kimmo Koskinen
89d07602e8
Add ZipFile (#1010) 2021-09-15 14:34:58 +02:00
Michiel Borkent
11f0e1a566 Get rid of single segment namespace 2021-09-12 12:39:58 +02:00
Michiel Borkent
a43e75ffd6
Add PipedInput/OutputStream (#1001) 2021-09-07 11:30:52 +02:00
Michiel Borkent
23ba52a813
[#979] More java net http tests and tweaks (#996) 2021-09-01 11:36:24 +02:00
Michael Glaesemann
125e227976
Java http insecure context (#994)
* Add support for creating insecure context.

* Add BABASHKA_FEATURE_JAVA_NET_HTTP flag.

* Clean up java.net.http tests
2021-08-31 17:37:11 +02:00
Michiel Borkent
b71278cc68
[#979] JDK 11 Http Client
Co-authored-by: Michael Glaesemann <grzm@seespotcode.net>
2021-08-31 11:13:11 +02:00
Bob
242c3d442f
Logging feature flag and tools.logging.readable (#981) (#987)
* put tools.logging behind a feature flag

* add tools.logging.readable

- move logging namespace to feature folder
- add logging.readable namespace
- add tests for logging.readable

* cleanup logging changes

- add logging env var to compile script
- remove unconditional require of logging namespace

* move old-config capture to before alter

* remove feature check from logging tests
2021-08-29 23:43:53 +02:00
Bob
4ee84947c9
use tagged-literal for unknown EDN tags when creating *input* (#975) (#976)
* use tagged-literal as default for unknown tags when using -I (or --stream without -i)

* use tagged-literal as default for unknown tags
2021-08-25 17:57:17 +02:00
Bob
a85d593767
make the REPL requires available to command-line scripts (#972) 2021-08-22 23:20:41 +02:00
Eric Dallo
72d3afa698
Migrate GraalVM configuration to jar (#973) 2021-08-22 23:19:28 +02:00
Michiel Borkent
d4f5e57866 [#959] Add *print-readably* and *flush-on-newline* 2021-08-16 22:57:59 +02:00
Michiel Borkent
f1fa47837a
[#969] Add java.lang.reflect.Method (getName only) (#970) 2021-08-13 11:25:00 +02:00
Bob
116d73f0b0
- add :ns meta to more vars (#966)
- add a couple more tests for Coercions
2021-08-08 15:38:56 +02:00
Bob
05e963bb6f
varify some core dynamic vars (#957) (#965)
* refer clojure core ns from sci.impl.vars instead
of sci.impl.namespaces

* add :ns meta to dynamic vars in b.i.clojure.core
2021-08-06 13:11:10 +02:00
Michiel Borkent
ff8ad66350 CHANGELOGS [skip ci] 2021-08-02 23:41:15 +02:00
Michiel Borkent
be29d791a8 [#733] print-deps tests 2021-08-02 23:34:38 +02:00
Michiel Borkent
3f72507f77
[#957] Repair ns meta 2021-07-31 14:44:26 +02:00
Michiel Borkent
84430c60f8
[#720, #733] print-deps (#958) 2021-07-27 11:29:00 +02:00
Michiel Borkent
25390103fd [#953] Support full reflection on printwriter 2021-07-23 10:59:28 +02:00
Michiel Borkent
7e0b19ad43 Update babashka.fs 2021-07-22 20:17:46 +02:00
Michiel Borkent
7fac0f1eb9
[#947] Vault tests, part 1 (#949) 2021-07-21 12:35:38 +02:00
Michiel Borkent
9c338c9b7f Add timbre/merge-config! 2021-07-18 11:19:47 +02:00
Eugen Stan
d25dd17510
Added InterruptedExcpetion to bb (#943) 2021-07-16 09:52:08 +02:00
Eugen Stan
c1eb47a262
Added IllegalStateException to automatic imports (#942) 2021-07-16 09:48:13 +02:00
Eugen Stan
95a6bc0d54
Added IllegalStateException to bb (#941) 2021-07-15 22:16:25 +02:00
Michiel Borkent
f058463685 Thanks @justone for the better name [skip ci] 2021-07-15 10:36:07 +02:00
Michiel Borkent
2c7e559351 0.5.0 but with trace 2021-07-14 22:51:18 +02:00
Michiel Borkent
cdc4a4987d FIX THE BLOAT 2021-07-14 22:06:19 +02:00
Michiel Borkent
3d45f62dd2 [#935] Add logging tests 2021-07-14 12:43:12 +02:00
Michiel Borkent
588cda9eac [#934] Environment variables not picked up by tools.deps 2021-07-13 11:31:36 +02:00
Michiel Borkent
e996351dc9 Add clojure.tools.logging + timbre 2021-07-12 22:59:07 +02:00
Michiel Borkent
28f986e201 [#934] pick up env vars from :extra-env in deps step 2021-07-12 16:59:10 +02:00
Michiel Borkent
0832b0a480 Fully support PushbackReader 2021-07-10 11:40:19 +02:00
Michiel Borkent
d47290e996
[#922,#927] pprint/formatter-out + cl-format with-out-str support (#930) 2021-07-10 11:32:21 +02:00
Michiel Borkent
46892580c2
[#921, #922] clojure.data.json support, first steps 2021-07-07 21:17:57 +02:00
Michiel Borkent
1efed2c3c7 minor help edit [skip ci] 2021-07-04 20:41:09 +02:00
Michiel Borkent
3cf3a83c49 [#914] clojure with :dir option doesn't resolve deps in :dir (2) 2021-07-04 12:16:16 +02:00
Bob
47bcb4be5e
add heap size and 'expert' flags to help text (#908) 2021-06-30 18:21:35 +02:00
Michiel Borkent
e47e77c3d6 Add java.io.FileInputStream 2021-06-21 19:42:04 +02:00
Michiel Borkent
d90f4e7bac
sci: pull apart bindings in eval (#900) 2021-06-21 12:00:53 +02:00
Michiel Borkent
e143eb1cb1 [#899] Fix JVM test 2021-06-20 14:26:40 +02:00
Michiel Borkent
af754d013f [#899] (read-line) is buggy in REPL 2021-06-20 13:32:33 +02:00
Michiel Borkent
af036f9d3a
Passing form on Windows with question mark breaks evaluation #889 2021-06-16 21:18:31 +02:00
Michiel Borkent
732d2b5a8b
Allow .notify / .wait interop call #879 2021-06-10 12:04:23 +02:00
Michiel Borkent
12d6afc885 STM: add commute 2021-06-09 22:47:17 +02:00
Michiel Borkent
9385805423
STM (#882) 2021-06-09 15:47:34 +02:00
Michiel Borkent
15e54ef0a1
Add support for slingshot #675 (#881)
* Add java.util.Arrays/copyOfRange for slingshot

* add exception for tests

* Add slingshot tests
2021-06-09 10:39:43 +02:00
Michiel Borkent
9af436a0d4
Add java.net.InetSocketAddress (#878) 2021-06-07 20:20:28 +02:00
Michiel Borkent
3764b52f3a Implement custom deref outside of sci 2021-06-03 00:25:57 +02:00
Michiel Borkent
beb7d8a9a8
Add java.lang.StackTraceElement 2021-06-01 11:45:12 +02:00
Michiel Borkent
42bf790068
[#872] Add java.lang.ProcessHandle$Info (#873)
And java.util.Optional
2021-05-31 00:06:21 +02:00
Michiel Borkent
82625b57dd Tasks: fix edge case 2021-05-30 12:30:06 +02:00
Michiel Borkent
ac576bd6e7 [#865] Stable namespace 2021-05-30 11:36:30 +02:00
Michiel Borkent
94fc8298e6 [#865] Use print-meta when emitting tasks 2021-05-30 11:27:11 +02:00
Michiel Borkent
3eafacac2b sci: set! for CLJS 2021-05-25 15:44:56 +02:00
rng-dynamics
512a6f2220
feat: print data of uncaught ExceptionInfo to output (#854)
* feat: print data of uncaught ExceptionInfo to output

* println -> prn, add tests
2021-05-20 22:49:58 +02:00
Michiel Borkent
ae9eaa4bc4 Pods: transit fns 2021-05-19 21:32:25 +02:00
Michiel Borkent
a942befc65
Add more agent vars (#857) 2021-05-19 14:00:48 +02:00
Andrea Richiardi
7e3b1f58d5
Use sequential? for identifying if the script output needs splitting (#853) 2021-05-19 00:07:39 +02:00
Michiel Borkent
9f48048472 [#847] Better error handling for parallel tasks (2) 2021-05-18 13:19:09 +02:00
Michiel Borkent
e18f4302a8
[#847] Better error handling for parallel tasks 2021-05-18 12:39:21 +02:00
Michiel Borkent
5ce7f2d67d babashka.pods: transit read+write handlers 2021-05-17 11:45:11 +02:00
Michiel Borkent
a832b85ab5 browse-url: Use open in macOS without specifying location 2021-05-15 23:22:02 +02:00
Thiago Kenji Okada
69e58440ab
Improve clojure.java.browse (#846)
* Remove xdg-open hardcoded path in impl.clojure.java.browse

Binaries in Linux are not guarantee to be located on /usr/bin.

For example, NixOS the binaries are located in
/run/current-system/sw/bin/xdg-open (that is actually just a symlink to
/nix/store). The distro may also not have xdg-open installed at /,
instead the user may put it somewhere else like $HOME/bin.

This commit fixes this by using not hardcoding the PATH of xdg-open,
instead relying on shell path to search it.

* Implement clojure.java.browse/*open-url-script*

This allows usage of a custom URL script, like:

```clojure
(binding [*open-url-script* (atom "my-browse-url-script")]
  (browse-url "https://google.com"))
```

*open-url-script* is an atom just to keep compatibility with Clojure.

Described here: https://clojuredocs.org/clojure.java.browse/*open-url-script*
2021-05-15 22:10:52 +02:00
Michiel Borkent
6aca41a48a
[#829] Allow thread-first in combination with shell 2021-05-13 13:10:56 +02:00
Michiel Borkent
7462d86afd [#837] Add babashka.task System property 2021-05-13 11:53:28 +02:00
Michiel Borkent
5014012bd6 [#836] Add :error-fn option to shell 2021-05-13 11:45:27 +02:00
Michiel Borkent
5554619a9d Selmer: util/set-missing-value-formatter! 2021-05-11 22:13:50 +02:00
Michiel Borkent
4ffd08f360 [#835] Expose escaping functions from selmer.util 2021-05-11 13:19:31 +02:00
Michiel Borkent
c18be0a157 Import NullPointerException 2021-05-11 10:15:42 +02:00
Thiago Kenji Okada
14e053e0a3
Add BABASHKA_MUSL build variable (#834)
This allows building a Babashka binary using musl C libraries instead,
instead of hardcoding this accordingly to the CPU arch.
2021-05-11 00:10:11 +02:00
Michiel Borkent
43ba26e11a musl workaround 2021-05-10 23:31:08 +02:00
Michiel Borkent
6edc26c834
[#831] Workaround for musl stack size issues 2021-05-10 18:29:26 +02:00
Michiel Borkent
36e50e0f0d Add help for tasks and run 2021-05-08 23:51:15 +02:00
Michiel Borkent
fe9370e04b Tasks: inherit parallel option 2021-05-08 16:21:54 +02:00
Michiel Borkent
f3a441ee3c minor 2021-05-08 11:06:34 +02:00
Michiel Borkent
9a8bf7d0c3 [#825] Handle uneval-ed expressions in bb tasks 2021-05-08 11:02:05 +02:00
Dirk Wetzel
69ee221eda
Add class java.util.zip.ZipOutputStream (#824) 2021-05-07 16:17:09 +02:00
Michiel Borkent
d52ad92cb4 Add java.text.ParseException 2021-05-07 11:26:38 +02:00
Michiel Borkent
59cbfe43e0 Add java.text.ParserException 2021-05-07 11:22:37 +02:00
Michiel Borkent
bf6f19dc97 Tasks: don't print context on shell error 2021-05-06 13:58:49 +02:00
Michiel Borkent
f49178786c [#818] Tasks: don't call System/exit 2021-05-06 13:28:24 +02:00
Michiel Borkent
cbd8a2d07d
[#821] Include Selmer 2021-05-06 12:53:59 +02:00
Michiel Borkent
3e74aac4a5 Add NullPointerException class 2021-05-04 12:00:03 +02:00
Michiel Borkent
042934cc3c Ignore :min-bb-version when resolving deps 2021-05-04 11:11:55 +02:00
Michiel Borkent
e0e3aa422e [#770] Add test 2021-05-03 11:06:32 +02:00
Michiel Borkent
cf570cd913 Tasks: get rid of res local 2021-05-02 23:12:48 +02:00
Michiel Borkent
d0d18f9837 Tasks: integrate in doc subcommand 2021-05-02 20:48:40 +02:00
Michiel Borkent
76a6760516 Add some classes 2021-05-02 20:14:19 +02:00
Michiel Borkent
70e0566647 Tasks: detect cycles 2021-05-02 15:04:07 +02:00
Michiel Borkent
12c29eb308 Tasks: detect cycles 2021-05-02 14:51:51 +02:00
Michiel Borkent
fb3d24b23c Tasks: better error msg for unresolved task 2021-05-02 14:31:57 +02:00
Michiel Borkent
87b9d93911
[#622] with-precision 2021-05-02 11:41:57 +02:00
Michiel Borkent
6d540e2f06 Rename --verbose to --debug 2021-05-02 11:16:00 +02:00
Michiel Borkent
d1bbf844de Add --verbose to global opts 2021-05-02 11:00:44 +02:00
Michiel Borkent
3bcc392760 Tasks: add explicit run function 2021-04-30 11:55:24 +02:00
Michiel Borkent
f0adfb450e Tasks: remove log-level 2021-04-30 11:17:48 +02:00
Michiel Borkent
06be620d71
[#805] Support :enter and :leave hooks + current-task fn (#813) 2021-04-30 11:11:12 +02:00
Michiel Borkent
e26f26c1ba [#811] Fix --classpath when no additional args are passed 2021-04-28 20:14:39 +02:00
Michiel Borkent
66867e1ddb [#807] Ignore local and global deps.edn 2021-04-28 12:09:05 +02:00
Michiel Borkent
514fc84cde [#810] Support :extra-paths and :extra-deps in tasks 2021-04-27 23:32:37 +02:00
Michiel Borkent
7ab0ccd19e minor [skip ci] 2021-04-27 11:13:57 +02:00
Michiel Borkent
d7075ffad0 Tasks: fix listing of tasks 2021-04-26 10:59:05 +02:00
Michiel Borkent
386cbd4ad6 Tasks: add clojure to logging 2021-04-25 23:47:42 +02:00
Michiel Borkent
6da8fc99b8 Tasks: sort by occurence 2021-04-25 23:10:48 +02:00
Michiel Borkent
c5d61996d4 Tasks: support :continue in shell fn 2021-04-25 13:34:26 +02:00
Michiel Borkent
21bb768e9f Tasks: fix execution of fully qualified symbol 2021-04-25 11:42:11 +02:00
Michiel Borkent
647ef40250 Tasks: accept alias in fully qualified namespace 2021-04-25 11:27:34 +02:00
Michiel Borkent
f7e881479b Tasks: support :continue in shell 2021-04-25 00:24:33 +02:00
Michiel Borkent
a2f7bb835e Tasks: default log level = :error 2021-04-24 23:48:42 +02:00
Michiel Borkent
4f0795f522 Tasks: logging 2021-04-24 23:35:03 +02:00
Michiel Borkent
12cb5d637c [#802] Support resolving docstring from function 2021-04-24 23:19:37 +02:00
Michiel Borkent
bd08635793 Default log level :info 2021-04-24 18:10:31 +02:00
Michiel Borkent
ea62c99853 default log level 2021-04-24 17:47:28 +02:00
Michiel Borkent
4c5e7cc86d Tasks: simplify logging 2021-04-24 17:35:41 +02:00
Michiel Borkent
b71b5d2c50 Tasks: logging 2021-04-24 17:16:59 +02:00
Michiel Borkent
cb07196de9 Tasks: add :log option 2021-04-24 14:47:03 +02:00
Michiel Borkent
5ff9d8328a [#796] Support map literal in task 2021-04-24 13:05:27 +02:00
Michiel Borkent
3e9ddc55bb [#663] :min-bb-version 2021-04-24 12:54:41 +02:00
Michiel Borkent
6806398722 [#800] Fix task priority 2021-04-24 11:51:03 +02:00
Michiel Borkent
657a88c348 [#780] Ignore empty classpath entries 2021-04-22 12:33:17 +02:00
Michiel Borkent
15e71b0807
[#780] Fix uberjar CLI parsing and throw when no classpath is provided 2021-04-22 11:56:13 +02:00
Michiel Borkent
0014840506 Tasks: don't tokenize when string refers to file 2021-04-19 23:18:00 +02:00
Michiel Borkent
db8e839de1 Remove set support in tasks 2021-04-16 16:14:01 +02:00
Michiel Borkent
337096cde7 Tasks: set means parallel 2021-04-15 12:22:31 +02:00
Michiel Borkent
f3630d2fb3
[#790] Add java.security.SecureRandom 2021-04-15 00:04:19 +02:00
Michiel Borkent
e0b1c1b01e
[#784] Support binf.cljc library by adding ByteBuffer and Charset-related classes (#789) 2021-04-14 23:27:31 +02:00
Michiel Borkent
0ecee5bf94 [#785] :requires option 2021-04-12 22:55:10 +02:00
Michiel Borkent
478dd780b7 Add shutdown-tree 2021-04-12 17:37:29 +02:00
Michiel Borkent
80a06a62f9 Tasks: fix parallel 2021-04-12 11:55:56 +02:00
Michiel Borkent
e86aac02f9 Use pr-str in tasks 2021-04-12 10:35:41 +02:00
Michiel Borkent
00b33dab4d CHANGELOG 2021-04-12 09:47:28 +02:00
Michiel Borkent
ac307708ba parallel 2021-04-12 00:02:52 +02:00
Michiel Borkent
f18ec3feeb Fix parallel tasks 2021-04-11 23:20:27 +02:00
Michiel Borkent
e1cfdc6e23 Fix parallel 2021-04-11 23:07:48 +02:00
Michiel Borkent
2b2e602eac bb tasks: support parallel via future 2021-04-11 21:25:15 +02:00
Michiel Borkent
bd0495f88b tasks output test 2021-04-11 12:49:42 +02:00
Michiel Borkent
45109685e1 Get rid of :when for now 2021-04-10 16:50:20 +02:00
Michiel Borkent
36abd4152a List tasks test 2021-04-10 16:07:06 +02:00
Michiel Borkent
0ae56e7098 Fix bug in topological sorting 2021-04-10 15:57:03 +02:00
Michiel Borkent
1020a8c335
[#788] First cut of bb tasks 2021-04-10 14:42:58 +02:00
Andrea Richiardi
a0ace650f1
[#776] Use get-classpath when build an uberjar
It was previously using the classpath coming from the parameters/env. We need to use
cp/get-classpath for taking into consideration the classpath coming from bb.edn.
2021-04-07 10:21:09 +02:00
Michiel Borkent
1870e2729e
[#769] rewrite-clj support 2021-04-04 16:22:45 +02:00
Michiel Borkent
2aa8c88822 fix help text [skip ci] 2021-04-02 18:10:29 +02:00
Michiel Borkent
6a7baf2a90 v0.3.1 2021-03-30 18:06:56 +02:00