]>
git.bitcoin.ninja Git - ldk-java/log
Matt Corallo [Wed, 27 Jul 2022 18:14:02 +0000 (18:14 +0000)]
[TS] Update auto-generated TS bindings to LDK 0.0.110
Matt Corallo [Wed, 27 Jul 2022 17:16:16 +0000 (17:16 +0000)]
[Java] Update auto-generated Java bindings to LDK 0.0.110
Matt Corallo [Wed, 27 Jul 2022 18:12:37 +0000 (18:12 +0000)]
[Java] Update tests to latest upstream API
Matt Corallo [Wed, 27 Jul 2022 17:14:24 +0000 (17:14 +0000)]
Update CI references to LDK 0.0.110
Matt Corallo [Sat, 23 Jul 2022 03:51:17 +0000 (03:51 +0000)]
Merge pull request #107 from TheBlueMatt/main
[TS] Properly export unitary enums such that they're in *.d.mjs
Matt Corallo [Tue, 5 Jul 2022 18:27:11 +0000 (18:27 +0000)]
[TS] Update auto-generated TS bindings
Matt Corallo [Fri, 22 Jul 2022 21:13:22 +0000 (21:13 +0000)]
[TS] Add a socket handling implementation that uses Node.JS's `net`
Matt Corallo [Fri, 22 Jul 2022 21:55:44 +0000 (21:55 +0000)]
[TS] Add additional node API interface bits for net
Matt Corallo [Fri, 22 Jul 2022 18:08:49 +0000 (18:08 +0000)]
[TS] Add missing space in array length error string
Matt Corallo [Tue, 5 Jul 2022 18:18:54 +0000 (18:18 +0000)]
[TS] Properly export unitary enums such that they're in *.d.mjs
Because the `ts/enums/*` files simply re-export from `bindings.mts`
rather than defining the enum from scratch, we have to include docs
and cannot use /* @internal */ on the `bindings.mts` unitary enums.
Matt Corallo [Tue, 12 Jul 2022 18:49:17 +0000 (18:49 +0000)]
[Java] Strip Java binaries when compiling, not just wasm
Matt Corallo [Fri, 15 Jul 2022 20:00:05 +0000 (20:00 +0000)]
Merge pull request #109 from dunxen/patch-1
Specify Node version for Wasm BigInt support
Duncan Dean [Wed, 13 Jul 2022 13:36:27 +0000 (15:36 +0200)]
Specify Node version for Wasm BigInt support
From Node v15.0, Wasm BigInt support is no longer experimental
See: https://github.com/nodejs/node/commit/
ca8f3ef2e5
Matt Corallo [Fri, 1 Jul 2022 23:46:33 +0000 (16:46 -0700)]
Merge pull request #106 from TheBlueMatt/main
0.0.109.0
Matt Corallo [Fri, 1 Jul 2022 22:07:38 +0000 (22:07 +0000)]
Update CI branches to 0.0.109
Matt Corallo [Fri, 1 Jul 2022 22:05:45 +0000 (22:05 +0000)]
[TS] Update auto-generated TS bindings
Matt Corallo [Fri, 1 Jul 2022 21:55:48 +0000 (21:55 +0000)]
[Java] Update auto-generated Java bindings
Matt Corallo [Fri, 1 Jul 2022 21:57:19 +0000 (21:57 +0000)]
[Java] Update tests to match 0.0.109 API
Matt Corallo [Thu, 30 Jun 2022 21:34:00 +0000 (14:34 -0700)]
Merge pull request #104 from TheBlueMatt/main
Fix TS u64 call semantics (and test it)
Matt Corallo [Thu, 30 Jun 2022 19:59:20 +0000 (19:59 +0000)]
[TS] Explicitly include `index.d.mts` (and `.mjs`) in package
As apparently npm doesn't include it just because its listed in
`types`.
Matt Corallo [Thu, 30 Jun 2022 19:55:19 +0000 (19:55 +0000)]
[TS] Auto-update version in package.json in genbindings.sh
Matt Corallo [Thu, 30 Jun 2022 04:18:40 +0000 (04:18 +0000)]
[TS] Update auto-generated typescript bindings
Matt Corallo [Thu, 30 Jun 2022 04:22:48 +0000 (04:22 +0000)]
[TS] Add a test that uses `PeerManager` to exchange channel open
Matt Corallo [Thu, 30 Jun 2022 17:09:52 +0000 (17:09 +0000)]
[TS] Fix typo in inconsistent-versions error message
Matt Corallo [Thu, 30 Jun 2022 19:00:08 +0000 (19:00 +0000)]
[TS] Free arrays passed as slices from TS -> C -> Rust
Matt Corallo [Thu, 30 Jun 2022 04:19:13 +0000 (04:19 +0000)]
[TS] Split C -> JS function calls based on u32/u64 parameters/return
We were calling all C -> JS functions with u32 parameters and
return types. This is fine for all of our pointers, as well as any
smaller types - u32 always gets mapped to a JavaScript `number`, so
its all consistent.
However, for u64 parameters/returns, we map the values to
JavaScript `bigint`s, which are not compatible with `numbers`, and
the correct type is checked at the FFI when returning or when users
ultimately try to use a passed `bigint` as if it were a `number`.
Thus, we have to split the `js_invoke_function` family by the
parameters and return values, using `u` for u32s and `b` for u64s
to do so.
Matt Corallo [Wed, 29 Jun 2022 21:03:39 +0000 (14:03 -0700)]
Merge pull request #103 from TheBlueMatt/main
0.0.108.0
Matt Corallo [Wed, 29 Jun 2022 04:20:20 +0000 (04:20 +0000)]
Update CI install to match latest debian bookworm state
Matt Corallo [Tue, 28 Jun 2022 22:43:47 +0000 (22:43 +0000)]
Update CI MacOS clang version to 14.0.5
Matt Corallo [Tue, 28 Jun 2022 22:05:12 +0000 (22:05 +0000)]
Update CI cbindgen install script to work with MSRV
Matt Corallo [Mon, 27 Jun 2022 19:33:43 +0000 (19:33 +0000)]
Update CI bindings branches and tags to 0.0.108
Matt Corallo [Tue, 28 Jun 2022 21:51:14 +0000 (21:51 +0000)]
[TS] Update auto-generated typescript bindings
Matt Corallo [Tue, 28 Jun 2022 21:56:53 +0000 (21:56 +0000)]
[TS] Update tests to new upstream API changes in 0.0.108
Matt Corallo [Tue, 28 Jun 2022 21:55:27 +0000 (21:55 +0000)]
[TS] Link wasm32-wasi libc as rustc no longer does by default
Matt Corallo [Mon, 27 Jun 2022 19:34:24 +0000 (19:34 +0000)]
[Java] Update auto-generated Java bindings for 0.0.108
Matt Corallo [Mon, 27 Jun 2022 20:09:23 +0000 (20:09 +0000)]
[Java] Handle different ldk lib paths in the ar in genbindings.sh
Matt Corallo [Wed, 29 Jun 2022 18:46:05 +0000 (18:46 +0000)]
[Java] Use public channels and test Access interface in tests
Matt Corallo [Mon, 27 Jun 2022 19:36:44 +0000 (19:36 +0000)]
[Java] Update batteries and tests to 0.0.108
This is mostly pretty obvious changes to keep up with the latest
API, though it also includes a change to make `PeerTest` work
correctly in a world where `PeerManager` supports multithreaded
parallel access.
Matt Corallo [Mon, 27 Jun 2022 19:32:01 +0000 (19:32 +0000)]
[Java] Do not put a org.ldk.structs prefix for usize types
Matt Corallo [Wed, 29 Jun 2022 15:41:06 +0000 (15:41 +0000)]
[Java] Map `LDKReadOnly*` the same as `LDKLocked*` ie via `AutoClosable`
Matt Corallo [Tue, 28 Jun 2022 17:21:37 +0000 (17:21 +0000)]
Pass unnamed enum field comments through to field processing
Matt Corallo [Mon, 27 Jun 2022 18:28:59 +0000 (18:28 +0000)]
Add handling for the new WitnessVersion type, similar to u5 but 4-bits
Matt Corallo [Mon, 27 Jun 2022 18:20:45 +0000 (18:20 +0000)]
Use fully-qualified types more often in conversions
This ensures to-human conversions still work correctly inside
enums where there is an enum variant named identically to the type
which is being converted to (eg in the new `GraphSyncError` enum).
Matt Corallo [Thu, 26 May 2022 22:42:22 +0000 (15:42 -0700)]
Merge pull request #100 from TheBlueMatt/main
Add note about garbage collection of the chan man constructor
Matt Corallo [Thu, 26 May 2022 21:42:56 +0000 (21:42 +0000)]
Add note about garbage collection of the chan man constructor
Matt Corallo [Fri, 20 May 2022 18:26:24 +0000 (18:26 +0000)]
Merge pull request #98 from tnull/2022-05-fix-genbindings-aarch64
Some fixes for aarch64 macos
Elias Rohrer [Fri, 20 May 2022 13:45:12 +0000 (15:45 +0200)]
Some fixes for aarch64 macos
Matt Corallo [Fri, 13 May 2022 15:38:26 +0000 (15:38 +0000)]
Merge pull request #97 from TheBlueMatt/main
[Java] Fix PATH order to use upstream clang in OSX CI
Matt Corallo [Thu, 12 May 2022 20:08:29 +0000 (20:08 +0000)]
[Java] Fix PATH order to use upstream clang in OSX CI
Thanks to @tnull for spotting this one.
Matt Corallo [Thu, 12 May 2022 20:10:51 +0000 (20:10 +0000)]
Merge pull request #96 from TheBlueMatt/main
[Java] Correct trivial race condition in HumanObjectPeerTest
Matt Corallo [Fri, 15 Apr 2022 20:22:55 +0000 (20:22 +0000)]
Update ts bindings version to 0.0.106.0beta1
Matt Corallo [Fri, 15 Apr 2022 18:50:15 +0000 (18:50 +0000)]
[Java] Correct trivial race condition in HumanObjectPeerTest
On my (very slow) old armv7 device, HumanObjectPeerTest can fail as
`maybe_exchange_peer_messages` will set `ran = false` *after* a
message is added to the runqueue, but before it runs, then when we
call `process_events` there will be no events to process, then
before we get into the `runqueue` `synchronized` block the message
will be delivered, causing us to think we're done, even though
there are now events pending. Because going around the loop twice
is free, we should just not set `ran` to false at the top of
`maybe_exchange_peer_messages`.
Matt Corallo [Fri, 15 Apr 2022 17:21:43 +0000 (17:21 +0000)]
Merge pull request #95 from TheBlueMatt/main
Convert primitives before passing to host language
Matt Corallo [Fri, 15 Apr 2022 16:30:06 +0000 (16:30 +0000)]
Update OSX CI clang to 14.0.1
Matt Corallo [Fri, 15 Apr 2022 16:17:28 +0000 (16:17 +0000)]
[TS] Update auto-generated bindings
Matt Corallo [Fri, 15 Apr 2022 16:14:52 +0000 (16:14 +0000)]
[Java] Update auto-generated bindings
Matt Corallo [Fri, 15 Apr 2022 16:11:46 +0000 (16:11 +0000)]
Convert primitives before passing to host language
This resolves an issue where we map unsigned primitives to their
signed variants, and occasionally pass the unsigned variant (which
is outside the bounds of the signed variant) to the host language.
In Java this can cause a panic as the VM sees an int outside the
range of a short (for example with network ports).
Matt Corallo [Fri, 15 Apr 2022 02:50:03 +0000 (02:50 +0000)]
Merge pull request #94 from TheBlueMatt/main
Matt Corallo [Thu, 14 Apr 2022 03:22:11 +0000 (03:22 +0000)]
Fix spurious inclusion of the OSX leaktracking bins in the release jar
Matt Corallo [Thu, 14 Apr 2022 02:50:16 +0000 (02:50 +0000)]
Upload OSX CI builds for analysis to debug nondeterminism
Matt Corallo [Thu, 14 Apr 2022 01:59:54 +0000 (01:59 +0000)]
Update clang to 14.0.0 (sadly 14.0.1 darwin binaries are not yet up)
Matt Corallo [Thu, 14 Apr 2022 01:53:56 +0000 (01:53 +0000)]
Update CI branch to 0.0.106
Matt Corallo [Thu, 14 Apr 2022 00:55:21 +0000 (00:55 +0000)]
Pin cbindgen in CI as 0.21 broke the MSRV
Matt Corallo [Fri, 15 Apr 2022 01:48:12 +0000 (01:48 +0000)]
[TS] Remove checked-in WASM binary - it should be in ldk-java-bins
Matt Corallo [Thu, 14 Apr 2022 14:43:11 +0000 (14:43 +0000)]
[TS] Update tests to latest upstream API
Matt Corallo [Thu, 14 Apr 2022 00:22:26 +0000 (00:22 +0000)]
[TS] Update auto-generated bindings
Matt Corallo [Fri, 15 Apr 2022 01:25:56 +0000 (01:25 +0000)]
[TS] Implement trait_struct_inc_refcnt properly (identical to java)
Matt Corallo [Wed, 13 Apr 2022 17:07:02 +0000 (17:07 +0000)]
[Java] Update auto-generated bindings
Matt Corallo [Wed, 13 Apr 2022 17:06:39 +0000 (17:06 +0000)]
[Java] Update LDK batteries to latest upstream API
Matt Corallo [Tue, 5 Apr 2022 18:08:36 +0000 (18:08 +0000)]
[Java] Update tests to latest upstream API
Matt Corallo [Tue, 5 Apr 2022 18:07:12 +0000 (18:07 +0000)]
Add a new manual type - UnqualifiedError/LDKError
Matt Corallo [Tue, 5 Apr 2022 18:05:11 +0000 (18:05 +0000)]
Fully-Qualify Paths in some contexts instead of assuming enums
Instead of assuming enum variants that have a name the same as a
field's type, actually build a (simple) qualified-name method and
start using it.
Matt Corallo [Thu, 24 Mar 2022 02:22:14 +0000 (02:22 +0000)]
Merge pull request #91 from TheBlueMatt/main
[Java] Correct the checked-in bindings to match generated ones
Matt Corallo [Thu, 24 Mar 2022 01:17:20 +0000 (01:17 +0000)]
[Java] Correct the checked-in bindings to match generated ones
Matt Corallo [Thu, 24 Mar 2022 00:18:32 +0000 (00:18 +0000)]
Merge pull request #90 from TheBlueMatt/main
Expose ProbabilisticScorer
Matt Corallo [Wed, 23 Mar 2022 22:22:33 +0000 (22:22 +0000)]
[Java] Link libmath for `log10` (REVERT FOR 0.0.106)
Matt Corallo [Wed, 23 Mar 2022 21:36:26 +0000 (21:36 +0000)]
[TS/CI] Update dependent package list
Matt Corallo [Wed, 23 Mar 2022 03:08:15 +0000 (03:08 +0000)]
[TS] Update auto-generated bindings
Matt Corallo [Wed, 23 Mar 2022 02:36:43 +0000 (02:36 +0000)]
[Java] Update auto-generated bindings to include ProbabilisticScorer
Matt Corallo [Wed, 23 Mar 2022 03:08:51 +0000 (03:08 +0000)]
[Java] Use ProbabilisticScorer in HumanObjectPeerTest
Matt Corallo [Wed, 23 Mar 2022 18:44:04 +0000 (18:44 +0000)]
Don't assume from-var conversion in opaque ret conv
When we do a ret-conv of an opaque struct, don't assume that the
variable as-parsed exists, instead use the variable that's being
created in the ret-conv string if we need to clone.
Matt Corallo [Fri, 4 Mar 2022 17:41:34 +0000 (17:41 +0000)]
[Java] Make HumanObjectPeerTest status print a callback
...to make it easier to improve the Android LDKTester app
Matt Corallo [Fri, 4 Mar 2022 18:34:09 +0000 (18:34 +0000)]
Merge pull request #88 from TheBlueMatt/main
Fix 32-bit Java builds
Matt Corallo [Fri, 4 Mar 2022 17:31:57 +0000 (17:31 +0000)]
[TS] Update auto-generated C bindings with latest changes
Matt Corallo [Fri, 4 Mar 2022 06:47:46 +0000 (06:47 +0000)]
[Java] Update auto-generated bindings with latest changes
Matt Corallo [Thu, 3 Mar 2022 21:03:29 +0000 (21:03 +0000)]
Make pointer integer type language-dependent, instead of intptr_t
This is more consistent as we already did this in some places and
resolves issues on 32-bit Java platforms (ie Android ARMv7)
introduced in
b0ba503b308bcdcbf1b7609876705c12408e44e6 and
071b5fa40465132896ffca3c8ad29d0374e983d2 .
Matt Corallo [Fri, 4 Mar 2022 06:17:56 +0000 (06:17 +0000)]
[Android] Drop i686 as a build target
I don't believe i686 phones ever existed, and emulators should
prefer x86_64 instead.
Matt Corallo [Thu, 3 Mar 2022 19:48:26 +0000 (19:48 +0000)]
Merge pull request #86 from TheBlueMatt/main
Update to 0.0.105.0
Matt Corallo [Thu, 3 Mar 2022 06:52:20 +0000 (06:52 +0000)]
Update CI to the ldk-c-bindings 0.0.105 branch
Matt Corallo [Tue, 15 Feb 2022 21:19:31 +0000 (21:19 +0000)]
Bump clang to 13.0.1 on OSX in CI
Matt Corallo [Thu, 3 Mar 2022 04:06:04 +0000 (04:06 +0000)]
[TS] Update auto-generated bindings for 0.0.105.0
Matt Corallo [Thu, 3 Mar 2022 04:29:29 +0000 (04:29 +0000)]
[TS] Handle UInt5s and arrays of UInt5s
Matt Corallo [Thu, 3 Mar 2022 04:06:25 +0000 (04:06 +0000)]
[Java] Update HumanObjectPeerTest to test Scorer serialization
This doesn't appear to change much, but it seems nicer to.
As of this commit, the total leaks during a full Java test run are
25 allocations remained for
1115532 bytes.
Matt Corallo [Thu, 3 Mar 2022 02:40:37 +0000 (02:40 +0000)]
[Java] Update auto-generated bindings to 0.0.105.0
Matt Corallo [Thu, 3 Mar 2022 02:32:15 +0000 (02:32 +0000)]
[Java] Add a reachabilityFence on underlying trait impl calls
Because the implementation instance is implicitly held as a
reference in the `held` field, it seems unlikely this could ever
matter, hwoever, in the simplified implementation in `PeerTest`
(where there is no Human instance to hold a reference to the
underlying bindings instance), we do see the implementation being
free'd while its still in use. Thus, to ensure we can't hit any
such issue in the future, we add one in normal human objects as
well.
Matt Corallo [Thu, 3 Mar 2022 02:31:52 +0000 (02:31 +0000)]
[Java] Update tests + batteries to latest upstream API
Matt Corallo [Thu, 3 Mar 2022 02:29:17 +0000 (02:29 +0000)]
[Java] Handle UInt5 array conversion
Matt Corallo [Wed, 2 Mar 2022 21:23:50 +0000 (21:23 +0000)]
Correct handling of arrays of 32-byte-array equivalents (Payment*)
Matt Corallo [Wed, 2 Mar 2022 21:23:26 +0000 (21:23 +0000)]
Properly match warning comments, not structs with "Warning"
Matt Corallo [Wed, 2 Feb 2022 20:32:01 +0000 (20:32 +0000)]
Merge pull request #82 from TheBlueMatt/main
TypeScript Package cleanups and Java socket closure