- main.go
- Removed static favicon serving from `ServeMux`.
- Removed import for `net/http`.
- pkg/version/version
- Updated version from v0.6.0 to v0.6.1.
- cmd/lerproxy/main.go
- Added embedded support for default favicon using `//go:embed`.
- Modified logic to serve favicon as an embedded resource or from file in the same directory as the nostr.json
- static/favicon.ico
- Deleted static favicon file.
- cmd/lerproxy/favicon.ico
- Added new file for embedded favicon resource.
- cmd/walletcli/mock-wallet-service/EXAMPLES.md
- Added detailed example commands for all supported mock wallet service methods.
- Included a complete example workflow for testing the service.
- Added notes on the mock service's behavior and limitations.
- pkg/protocol/nwc/wallet.go
- Implemented `WalletService` with method registration and request handling.
- Added default stub handlers for supported wallet methods.
- Included support for notifications with `SendNotification`.
- pkg/protocol/nwc/client-methods.go
- Added `Subscribe` function for handling client subscriptions.
- cmd/walletcli/mock-wallet-service/main.go
- Implemented a mock CLI tool for wallet service.
- Added command-line flags for relay connection and key management.
- Added handlers for various wallet service methods (e.g., `GetInfo`, `GetBalance`, etc.).
- pkg/protocol/nwc/types.go
- Added `GetWalletServiceInfo` to the list of wallet service capabilities.
- pkg/protocol/ws/client.go
- Added logging for received subscription events.
- Optimized subscription ID assignment.
- pkg/protocol/nwc/client.go
- Implemented `Subscribe` function to handle event subscriptions.
- cmd/walletcli/main.go
- Added support for `subscribe` command to handle notifications.
- Replaced `ctx` with `c` for context usage across all commands.
- pkg/crypto/p256k/helpers.go
- Removed unnecessary logging from `HexToBin` function.
- readme.adoc
- Added a new "Releases" section with a link to pre-built binaries.
- Included details about binaries built on Go 1.24 and Linux static builds.
- .github/workflows/go.yml
- Updated `CGO_ENABLED` to 1 for Linux builds (amd64 and arm64).
- pkg/version/version
- Updated version from v0.5.9 to v0.6.0.
- .github/workflows/go.yml
- Updated repository `permissions` from `contents: read` to `contents: write`.
- Fixed misaligned spaces in `go build` commands for release binaries.
- Corrected `go build` syntax for cmd executables.
- pkg/version/version
- Updated version from v0.5.7 to v0.5.8.
- .github/workflows/go.yml
- Added a new `release` job with steps to set up Go, install `libsecp256k1`, and build release binaries.
- pkg/version/version
- Updated version from v0.5.6 to v0.5.7.
- pkg/protocol/ws/pool_test.go
- Commented out the `TestPoolContextCancellation` test function.
- .github/workflows/go.yml
- Added detailed steps for the release process, including tagging and pushing.
- Included logic to build release binaries for multiple platforms.
- Configured process for checksum generation and GitHub release creation.
- pkg/version/version
- Updated version from v0.5.5 to v0.5.6.
- .github/workflows/go.yml
- Added a step to install `libsecp256k1` using `ubuntu_install_libsecp256k1.sh`.
- Updated steps to build and test with cgo enabled.
- Added a step to explicitly set `CGO_ENABLED=0` in the environment.
- pkg/version/version
- Updated version from v0.5.4 to v0.5.5.
- pkg/database/query-events.go
- Added `deletedEventIds` map to track specifically deleted event IDs.
- Improved logic for handling replaceable events with deletion statuses.
- Added checks for newer events when processing deletions by kind/pubkey.
- pkg/database/get-indexes-from-filter.go
- Fixed incorrect range end calculation by adjusting `Until` value usage.
- .github/workflows/test-and-release.yml
- Deleted the test-and-release GitHub Actions workflow entirely.
- .github/workflows/go.yml
- Added a new step to set `CGO_ENABLED=0` environment variable.
- .github/workflows/go.yml
- Updated `go-version` from 1.20 to 1.24.
- .github/workflows/test-and-release.yml
- Updated `go-version` from 1.22 to 1.24 in two workflow steps.
- pkg/version/version
- Updated version from v0.5.3 to v0.5.4
- .github/workflows/test-and-release.yml
- Added a new workflow for testing and releasing:
- Runs tests on `push` for version tags and `pull_request` on `main`
- Builds binaries for Linux, macOS, and Windows
- Creates GitHub releases upon valid version tags
- Uploads release assets
- pkg/protocol/nwc/methods.go
- Refactored `GetWalletServiceInfo` to improve context and error handling.
- Simplified tag extraction and processing for encryption and notification types.
- Optimized handling of WalletServiceInfo capabilities.
- pkg/protocol/nwc/types.go
- Added `HoldInvoiceAccepted` notification type.
- Introduced `NotificationTag` constant.
- pkg/encoders/kind/kind.go
- Renamed `NWCWalletInfo` to `NWCWalletServiceInfo`.
- Updated references and mappings to reflect the rename.
- pkg/encoders/kind/kind.go
- Reordered imports for better grouping of external and internal packages.
- Added new message types: `Seal` and `PrivateDirectMessage` to privileged.
- Adjusted event type constants:
- Changed `ReplaceableEnd` to 19999.
- Changed `EphemeralEnd` to 29999.
- Changed `ParameterizedReplaceableEnd` to 39999.
- Updated `WalletNotification` constant and added `WalletNotificationNip4`.
- Added new mappings for `WalletNotificationNip4` in the event map.
- pkg/version/version.go
- Updated `Description` to include the URL `https://orly.dev`.
- pkg/app/relay/handleRelayinfo.go
- Fixed indentation for `Nips`, `Software`, and `Version` fields in the relay info response structure.
- pkg/app/config/config.go
- Reordered imports to group and organize external and internal packages.
- Updated the default value of `AppName` from "orly" to "ORLY".
- .gitignore
- Added `.idea/.name` to ignore file.
- pkg/version/version
- Updated version from v0.5.1 to v0.5.2.
- pkg/app/relay/handleRelayinfo.go
- Enabled `relayinfo.ProtectedEvents` in the supported NIPs.
- pkg/app/relay/spider-fetch.go
- Added import for `orly.dev/pkg/utils/values`.
- Updated logic to set `l` using `values.ToUintPointer(512)`.
- cmd/walletcli/main.go
- Fixed usage message to correctly escape double quotes around the NWC connection URL.
- pkg/version/version
- Updated version from v0.5.0 to v0.5.1.
* Renamed `NWCClient` to `nwc.NewNWCClient(opts)` in `cmd/nwcclient/main.go`
* Added `RPCRaw` wrappers for NWC client methods in `pkg/protocol/nwc/methods.go`
**Updated walletcli main function**
* Updated the main function in `cmd/walletcli/main.go` to use new NWC client and RPCRaw wrappers
**Added new methods for walletcli**
* Added new methods for handling NWC client RPC calls, such as:
* `handleGetWalletServiceInfo`
* `handleMakeHoldInvoice`
* `handleSettleHoldInvoice`
* `handleCancelHoldInvoice`
**Code formatting and style changes**
* Formatted code according to Go standard
* Used consistent naming conventions and coding styles
**Other updates**
* Updated dependencies and imported packages accordingly
- cmd/lerproxy/app/bufpool.go
- Removed bufferPool-related code and `Pool` struct
- cmd/nwcclient/main.go
- Renamed `Method` to `Capability` for clarity in method handling
- pkg/utils/values/values.go
- Added utility functions to return pointers for various types
- pkg/utils/pointers/pointers.go
- Revised documentation to reference `utils/values` package for pointer utilities
- pkg/protocol/nwc/types.go
- Replaced redundant types and structures with simplified versions
- Introduced dedicated structs for `MakeInvoice`, `PayInvoice`, and related results
- Refactored `Transaction` and its fields for consistent type usage
- pkg/protocol/nwc/uri.go
- Added `ParseConnectionURI` function for URI parsing and validation
- pkg/protocol/nwc/client.go
- Refactored `Client` struct to improve key management and relay handling
- Introduced `Request` struct for generic method invocation payloads