]>
git.bitcoin.ninja Git - ldk-java/log
Matt Corallo [Thu, 7 Mar 2024 14:38:01 +0000 (14:38 +0000)]
Merge pull request #148 from TheBlueMatt/main
Build macOS binaries in the CI-built release C# Nupkg
Matt Corallo [Thu, 7 Mar 2024 14:33:39 +0000 (14:33 +0000)]
Merge pull request #147 from TheBlueMatt/main
Various C# build fixes
Matt Corallo [Tue, 5 Mar 2024 15:04:10 +0000 (15:04 +0000)]
Build macOS binaries in the CI-built release C# Nupkg
Matt Corallo [Sat, 2 Mar 2024 13:20:59 +0000 (13:20 +0000)]
Always use -march on x86, even when targeting MacOS.
Matt Corallo [Sat, 2 Mar 2024 03:22:40 +0000 (03:22 +0000)]
Fix `$IS_MAC` usage in c_sharp generation
Matt Corallo [Fri, 1 Mar 2024 20:29:03 +0000 (20:29 +0000)]
Pass -isysroot to $CC when targeting MacOS with MACOS_SDK set
Matt Corallo [Thu, 1 Feb 2024 21:53:16 +0000 (21:53 +0000)]
Strip LLVM BC from resulting binaries
Matt Corallo [Thu, 1 Feb 2024 19:33:08 +0000 (19:33 +0000)]
[C#] Use new X-Lang LTO for C# Windows builds
Matt Corallo [Thu, 1 Feb 2024 19:22:57 +0000 (19:22 +0000)]
Pass --target/-mcpu/-march/-mtune to all $CC calls
Matt Corallo [Thu, 1 Feb 2024 17:31:45 +0000 (17:31 +0000)]
[C#] Use `Heap{Alloc,Free}` rather than `malloc`/`free` on Windows
We generally expect to allocate pointers in C which Rust will free,
and vice versa. On Windows, this requires that we use the same
allocation path as Rust's stdlib does, which is actually
`Heap{Alloc,Free}`, not `malloc`/`free`. Here, we swap the heap
allocation functions we call, fixing heap corruption issues on
Windows.
Matt Corallo [Mon, 29 Jan 2024 19:32:20 +0000 (19:32 +0000)]
Merge pull request #146 from TheBlueMatt/main
Update to LDK 0.0.121
Matt Corallo [Sat, 27 Jan 2024 00:29:44 +0000 (00:29 +0000)]
Restore android builds to Debian bullseye
There was never a reason to upgrade, and while it doesn't matter,
I'm not upgrading locally yet.
Matt Corallo [Fri, 26 Jan 2024 21:36:03 +0000 (21:36 +0000)]
Fix Java CI determinism validation to ignore C# output
Matt Corallo [Fri, 26 Jan 2024 19:59:57 +0000 (19:59 +0000)]
Upload CI-built release artifacts to enable better debugging
Matt Corallo [Tue, 23 Jan 2024 23:58:35 +0000 (23:58 +0000)]
Update CI references to LDK 0.0.121 branches
Matt Corallo [Wed, 24 Jan 2024 03:10:52 +0000 (03:10 +0000)]
[C#] Update tests to LDK 0.0.121 API
Matt Corallo [Wed, 24 Jan 2024 03:32:37 +0000 (03:32 +0000)]
[C#] Update auto-generated C# bindings
Matt Corallo [Wed, 24 Jan 2024 01:40:31 +0000 (01:40 +0000)]
[TS] Update tests for LDK 0.0.121 API
Matt Corallo [Wed, 24 Jan 2024 00:20:52 +0000 (00:20 +0000)]
[TS] Update auto-generated bindings
Matt Corallo [Tue, 23 Jan 2024 23:54:08 +0000 (23:54 +0000)]
[Java] Update batteries and tests to LDK 0.0.121
Matt Corallo [Tue, 23 Jan 2024 23:53:18 +0000 (23:53 +0000)]
[Java] Update auto-generated Java bindings to LDK 0.0.121
Matt Corallo [Tue, 23 Jan 2024 23:52:11 +0000 (23:52 +0000)]
Drop old manual implementations of the `Tx{In,Out}` getters
...as these are now provided directly upstream.
Matt Corallo [Tue, 23 Jan 2024 23:51:51 +0000 (23:51 +0000)]
Add manual implementation of the new `WitnessVersion` struct
Matt Corallo [Wed, 24 Jan 2024 01:31:39 +0000 (01:31 +0000)]
[TS] Add one additional call function semantic
Matt Corallo [Wed, 24 Jan 2024 03:17:10 +0000 (03:17 +0000)]
[C#] Free array buffers passed to C# after we've decoded them
Matt Corallo [Tue, 23 Jan 2024 21:19:51 +0000 (21:19 +0000)]
[C#] Use an instance of the callback delegate, not the fn itself
When passing the callback delegate to C from C# during static init,
it appears (but only on Windows) this actually creates a C# class
instance for the delegate and passes that. However, that class
instance is eventually GC'd and our callbacks will start failing.
Instead, we create a static instance of of the delegate and pass
that to C.
Matt Corallo [Tue, 23 Jan 2024 21:17:20 +0000 (21:17 +0000)]
[C#] Check int lengths at compile time
...cause I was using the wrong headers trying to do debug builds
and it took much too long to debug.
Matt Corallo [Mon, 29 Jan 2024 05:24:51 +0000 (05:24 +0000)]
[Java] Fix libcode.version argument to not reference C#
This caused the generated shared library to export no symbols.
Matt Corallo [Mon, 20 Nov 2023 23:05:58 +0000 (23:05 +0000)]
[Java] Re-introduce glibc versioning checks, but only up to 2.34
Matt Corallo [Fri, 17 Nov 2023 01:56:29 +0000 (01:56 +0000)]
Merge pull request #145 from TheBlueMatt/main
Switch C# builds to use `dotnet` on Fedora
Matt Corallo [Thu, 16 Nov 2023 20:10:34 +0000 (20:10 +0000)]
[C#] Upload the release zip as a CI artifact
Matt Corallo [Thu, 16 Nov 2023 04:33:04 +0000 (04:33 +0000)]
Treat Fedora like Linux...because they think they're so special 🙄
Matt Corallo [Thu, 16 Nov 2023 19:23:34 +0000 (19:23 +0000)]
[C#] Update auto-generated bindings
Matt Corallo [Thu, 16 Nov 2023 04:22:00 +0000 (04:22 +0000)]
[C#] Add -lntdll to windows builds as rustc relies on it
Matt Corallo [Thu, 16 Nov 2023 04:21:13 +0000 (04:21 +0000)]
[C#] Fix compile warnings which have become errors in newer clang
Matt Corallo [Thu, 16 Nov 2023 23:42:34 +0000 (23:42 +0000)]
[C#] Switch to net6.0 for the "target", though unclear if it does much
Matt Corallo [Thu, 16 Nov 2023 03:41:09 +0000 (03:41 +0000)]
[C#] Switch to `dotnet` for releases
Apparently some tooling doesn't like mono-compiled libraries, so
we just use `dotnet` for releases instead.
Matt Corallo [Thu, 16 Nov 2023 22:21:36 +0000 (22:21 +0000)]
[C#] Set the "build id" to a dummy value to improve determinism
Matt Corallo [Thu, 16 Nov 2023 21:36:10 +0000 (21:36 +0000)]
[C#] Use faketime explicitly when compiling
As targeting windows has a timestamp in the resulting dll, which we
need to be deterministic.
Matt Corallo [Sat, 11 Nov 2023 03:48:18 +0000 (03:48 +0000)]
Merge pull request #144 from TheBlueMatt/main
Update README to remove stale build instructions, mention C#
Matt Corallo [Sat, 11 Nov 2023 03:47:39 +0000 (03:47 +0000)]
Update README to remove stale build instructions, mention C#
Matt Corallo [Sat, 11 Nov 2023 03:41:31 +0000 (03:41 +0000)]
Merge pull request #143 from TheBlueMatt/main
[C#] Set license URL to the deprecated marker, fix file path
Matt Corallo [Sat, 11 Nov 2023 03:27:57 +0000 (03:27 +0000)]
[C#] Set license URL to the deprecated marker, fix file path
Apparently this is required when using a LICENSE file for nuget.org
Matt Corallo [Sat, 11 Nov 2023 03:24:39 +0000 (03:24 +0000)]
Merge pull request #142 from TheBlueMatt/main
Initial 0.0.118.0-alpha0 C# Release
Matt Corallo [Fri, 10 Nov 2023 01:30:32 +0000 (01:30 +0000)]
[C#] Add CI testing for C#
Matt Corallo [Thu, 9 Nov 2023 21:34:19 +0000 (21:34 +0000)]
[C#] Update build commands to match Java, add win and release bins
Also fixes a mono-csc argument error
Matt Corallo [Thu, 9 Nov 2023 17:53:23 +0000 (17:53 +0000)]
[C#] Add packaging artifacts to build a .nuget zip
Matt Corallo [Tue, 7 Nov 2023 23:26:33 +0000 (23:26 +0000)]
[C#] Add some initial C# tests
Matt Corallo [Tue, 7 Nov 2023 23:33:37 +0000 (23:33 +0000)]
[C#] Update auto-generated C# bindings
Matt Corallo [Thu, 9 Nov 2023 23:25:27 +0000 (23:25 +0000)]
[C#] Drop reference to `assert` which makes building on Win hard
Matt Corallo [Thu, 9 Nov 2023 21:06:30 +0000 (21:06 +0000)]
[C#] Remove version file which should not have been checked in
Matt Corallo [Tue, 7 Nov 2023 23:27:38 +0000 (23:27 +0000)]
[C#] Add `-unsafe` to mono-csc and build C library
Matt Corallo [Tue, 7 Nov 2023 23:25:37 +0000 (23:25 +0000)]
[C#] Drop marshalling generation
Given we now do array/string conversion using the TypeScript logic
we no longer need to use the C# marshalling nonsense, which we
remove the remnants of here.
Matt Corallo [Tue, 7 Nov 2023 23:22:44 +0000 (23:22 +0000)]
[C#] Move C# side to a TypeScript-based array/string conversion
Using the marshallers properly will be a ton of additional work,
and its not clear we can do it in the C -> C# direction anyway.
Instead, we can trivially just use the TypeScript conversion logic
which converts everything through pointers anyway.
We'd previously done this on the C side of things, but here we do
it on the C# side as well.
Matt Corallo [Tue, 7 Nov 2023 18:30:10 +0000 (18:30 +0000)]
[C#] Rewrite trait impl based on typescript, not Java
C# doesn't let us pass arbitrary C# objects over the FFI as a
pointer, at least not easily, so instead we need something that
looks much more like what we do for TypeScript.
Here we rewrite the trait handling in C# based on the TypeScript
code and instead store weak pointers so we can reference trait
implementation instances by a single `long`.
Matt Corallo [Mon, 6 Nov 2023 22:34:46 +0000 (22:34 +0000)]
[C#] Move dont-use-reserved-words handling to a util method
Matt Corallo [Mon, 6 Nov 2023 22:34:29 +0000 (22:34 +0000)]
[C#] Correct a few things after converting C array handling to the TS one
Matt Corallo [Mon, 30 Oct 2023 23:22:13 +0000 (23:22 +0000)]
Merge pull request #141 from TheBlueMatt/main
LDK 0.0.118
Matt Corallo [Mon, 30 Oct 2023 17:04:11 +0000 (17:04 +0000)]
[Java] Check determinism of the leaktracking Linux bin as well
Matt Corallo [Sat, 28 Oct 2023 16:29:11 +0000 (16:29 +0000)]
[Java] Give up on javadoc entirely as we just cannot require HTML
Matt Corallo [Fri, 27 Oct 2023 16:19:37 +0000 (16:19 +0000)]
[Java] Drop legacy glibc support in release builds
Matt Corallo [Tue, 24 Oct 2023 21:05:54 +0000 (21:05 +0000)]
Update CI references to LDK 0.0.118
Matt Corallo [Tue, 24 Oct 2023 21:04:51 +0000 (21:04 +0000)]
[TS] Update tests to LDK 0.0.118
Matt Corallo [Tue, 24 Oct 2023 21:04:32 +0000 (21:04 +0000)]
[TS] Update auto-generated bindings to LDK 0.0.118
Matt Corallo [Tue, 24 Oct 2023 17:48:45 +0000 (17:48 +0000)]
[Java] Update tests to LDK 0.0.118
Matt Corallo [Tue, 24 Oct 2023 17:43:01 +0000 (17:43 +0000)]
[Java] Build an `OnionMessenger` in CMC, connect ChanMan for offers
Matt Corallo [Tue, 24 Oct 2023 17:41:55 +0000 (17:41 +0000)]
[Java] Update auto-generated bindings to LDK 0.0.118
Matt Corallo [Mon, 16 Oct 2023 02:46:09 +0000 (02:46 +0000)]
[TS + C#] Correct indentation in enum variant-fetching C code
Matt Corallo [Mon, 16 Oct 2023 02:40:00 +0000 (02:40 +0000)]
Correct unitary enum C type variable name
Matt Corallo [Tue, 10 Oct 2023 03:59:46 +0000 (03:59 +0000)]
Merge pull request #140 from TheBlueMatt/main
Add missing cargo env load for CI
Matt Corallo [Tue, 10 Oct 2023 03:57:42 +0000 (03:57 +0000)]
Add missing cargo env load for CI
The 0.0.117 release determinism tests ended up using a version
different from what was merged by a CI update, which is re-added
here.
Matt Corallo [Tue, 10 Oct 2023 03:56:58 +0000 (03:56 +0000)]
Merge pull request #139 from TheBlueMatt/main
LDK 0.0.117
Matt Corallo [Fri, 6 Oct 2023 23:14:44 +0000 (23:14 +0000)]
Pin memchr to meet MSRVs during builds
Matt Corallo [Fri, 6 Oct 2023 00:36:19 +0000 (00:36 +0000)]
Simplify and make less scary the current status listing
Fixes #137.
Matt Corallo [Wed, 4 Oct 2023 03:11:14 +0000 (03:11 +0000)]
Update CI references to 0.0.117
Matt Corallo [Fri, 6 Oct 2023 17:55:17 +0000 (17:55 +0000)]
[TS] Update tests and node-net for new LDK 0.0.117 API
Matt Corallo [Wed, 4 Oct 2023 03:07:07 +0000 (03:07 +0000)]
[TS] Update auto-generated bindings to 0.0.117
Matt Corallo [Fri, 6 Oct 2023 17:54:22 +0000 (17:54 +0000)]
[TS] Correct trait construction with multiple supertraits
Matt Corallo [Fri, 6 Oct 2023 17:53:30 +0000 (17:53 +0000)]
[TS] Handle from-hu string array conversions
Matt Corallo [Fri, 6 Oct 2023 17:52:57 +0000 (17:52 +0000)]
[TS] Don't null-check array conversions that aren't nullable
These can generate a warning in calling methods that actually don't
allow null.
Matt Corallo [Mon, 2 Oct 2023 17:25:41 +0000 (17:25 +0000)]
[Java] Test random strings in invoice description to tests strings
Matt Corallo [Sun, 1 Oct 2023 22:35:16 +0000 (22:35 +0000)]
[Java] Add a new HOPT form with a one level keys wrapper
We had a user report this was broken, but it appears to be working
fine in this case here.
Matt Corallo [Sun, 1 Oct 2023 18:44:55 +0000 (18:44 +0000)]
[Java] Update batteries and tests to LDK 0.0.117
Matt Corallo [Sun, 1 Oct 2023 18:43:50 +0000 (18:43 +0000)]
[Java] Update auto-generated bindings to 0.0.117
Matt Corallo [Mon, 2 Oct 2023 16:43:48 +0000 (16:43 +0000)]
[Java] Properly convert strings to/from Modified UTF-8
Fixes #136
Matt Corallo [Sun, 1 Oct 2023 18:44:24 +0000 (18:44 +0000)]
Update TransactionOutputs type aliasing rules in genbindings.sh
Matt Corallo [Sun, 1 Oct 2023 18:41:49 +0000 (18:41 +0000)]
Update type listing for LDK 0.0.117 bindings and support doubles
Matt Corallo [Thu, 7 Sep 2023 16:20:54 +0000 (16:20 +0000)]
[C#] Drop java-specific crap and upgrade mono to something sane
Matt Corallo [Thu, 7 Sep 2023 16:20:31 +0000 (16:20 +0000)]
[C#] Make check_arr_len generic across array types
Matt Corallo [Thu, 7 Sep 2023 16:20:15 +0000 (16:20 +0000)]
[C#] Update auto-generated files
Matt Corallo [Tue, 5 Sep 2023 03:17:09 +0000 (03:17 +0000)]
[C#] Add marshaling logic for array C# -> C conversion
Matt Corallo [Tue, 5 Sep 2023 03:00:37 +0000 (03:00 +0000)]
[C#] Use TypeScript Array/String layouts
C# doesn't have a way to pass arrays with a length, so we simply
re-use the TypeScript Array/String passing, which will be usable
with a CustomMarshaler on the C# side.
Matt Corallo [Tue, 5 Sep 2023 00:14:36 +0000 (00:14 +0000)]
[C#] Add support for TxIn, int64_t, and int16_t[]
These were added at various points upstream and were never added to
C#
Matt Corallo [Tue, 5 Sep 2023 00:13:34 +0000 (00:13 +0000)]
[C#] Add missing handling of traits with supertraits of supertraits
In
831ad69f1f65d26c224fe18003f1694806effa5a support was added for
handling traits with supertraits of supertraits, but the full patch
was not applied to the C# bindings, which is finished here.
Matt Corallo [Mon, 31 Jul 2023 23:46:10 +0000 (23:46 +0000)]
Merge pull request #135 from TheBlueMatt/main
0.0.116
Matt Corallo [Mon, 31 Jul 2023 18:02:20 +0000 (18:02 +0000)]
Switch to playwright nightly to fix FF on Debian 12
It appears when playwright officially added support for Debian 12
(https://github.com/microsoft/playwright/issues/23532) they also
started throwing an error when trying to run unsupported browsers
on it (which Firefox was in the latest release). This broke our CI
(even though Firefox ran just fine on Debian 12 for the past year).
Here we simply switch to playwright nightly, which we'll just stick
with for a while.
Matt Corallo [Mon, 31 Jul 2023 16:38:15 +0000 (16:38 +0000)]
Pin quote and proc-macro2 in bindings builds in CI to meet MSRV
Matt Corallo [Sun, 30 Jul 2023 04:51:49 +0000 (04:51 +0000)]
Update CI references to 0.0.116
Matt Corallo [Sun, 30 Jul 2023 04:48:17 +0000 (04:48 +0000)]
[TS] Update tests to 0.0.116 API
Matt Corallo [Fri, 28 Jul 2023 06:33:04 +0000 (06:33 +0000)]
[TS] Update auto-generated bindings to 0.0.116