Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to v0.2.0-beta.1 #87

Merged
merged 113 commits into from
Oct 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
113 commits
Select commit Hold shift + click to select a range
3cadbd8
make GitHub workflows work with dev branch instead of develop
May 28, 2023
c45a271
add code examples
Aug 3, 2023
21154e2
fix model constructor to public; wallet scope public
Aug 3, 2023
156ddaa
add changes to changelog
Aug 3, 2023
765e5b2
add changes to changelog
Aug 3, 2023
5582ad1
run tests on pull requests to the dev branch
Aug 9, 2023
26a7f81
add AsyncWebsocketClient
Aug 14, 2023
c9b1b07
add AsyncWebsocketClient example
Aug 14, 2023
d88b0b1
add AsyncWebsocketClient tests
Aug 14, 2023
8c8e667
add networking dependencies/update dependencies
Aug 14, 2023
33e85ef
adjust git workflow
Aug 14, 2023
f6b9a02
add changes to changelog
Aug 14, 2023
9dea852
try fix git worklow error
Aug 14, 2023
ba99853
remove async_json_rpc_client module
Aug 14, 2023
aa4edfd
resolve unwraps
Aug 15, 2023
f3dbcef
improve features
Aug 18, 2023
6c36a64
improve features
Aug 18, 2023
625708b
remove unneeded ToString
Aug 18, 2023
2fdfc8d
resolve git workflow error
Aug 18, 2023
a8b4031
resolve git workflow error
Aug 18, 2023
9dea91b
handle unwraps
Aug 23, 2023
edc5602
fix examples
Aug 26, 2023
acc641a
fix deprecation warnings
Aug 26, 2023
0ae81ea
handle test unwraps
Aug 26, 2023
7a3293e
add embedded-websocket documentation
Aug 26, 2023
fe9ab92
use String instead of Cow<'a, str> for structs using serde_with_tag m…
Sep 18, 2023
b74af28
utilize Cow for models
Sep 18, 2023
738e2e1
utilize Cow for models
Sep 18, 2023
49a2efe
cargo fmt
Sep 18, 2023
8c1855b
add devcontainer
LimpidCrypto Jan 8, 2024
259c857
fix async client tests
LimpidCrypto Jan 14, 2024
9d9ce07
fix github workflow
LimpidCrypto Jan 14, 2024
613a64c
fix tests with --all-features
LimpidCrypto Jan 15, 2024
b975c46
fix --no-default-features tests with embedded-ws
LimpidCrypto Jan 15, 2024
788c528
try fix colliding embebedded-websocket feature with dep: syntax
LimpidCrypto Jan 28, 2024
e889d31
fix ambiguous name error
LimpidCrypto Jan 28, 2024
b8698cb
Revise Models (#74)
LimpidCrypto Feb 7, 2024
e18673c
revise dependencies
LimpidCrypto Jun 8, 2024
fb85862
remove old clients
LimpidCrypto Jun 8, 2024
4ab8dfc
add new clients
LimpidCrypto Jun 8, 2024
a676991
add codec for std embedded websocket
LimpidCrypto Jun 8, 2024
16252c8
move websocket exceptions
LimpidCrypto Jun 8, 2024
ff9342b
add WebsocketBase
LimpidCrypto Jun 8, 2024
289fc4c
add Client and AsyncClient traits
LimpidCrypto Jun 8, 2024
d631691
add XRPLWebsocketIO as standardized trait
LimpidCrypto Jun 8, 2024
df60e5a
adjust clients mod
LimpidCrypto Jun 8, 2024
a731d4a
add XRPLResponse
LimpidCrypto Jun 8, 2024
e838975
revise the Request trait to have methods to get a resut models common…
LimpidCrypto Jun 8, 2024
7e8984f
cargo fmt
LimpidCrypto Jun 8, 2024
1fb4489
add get_random_id utility function
LimpidCrypto Jun 8, 2024
7c64058
add xrpl testnet uri
LimpidCrypto Jun 8, 2024
0862109
revise the tests to work with the changes
LimpidCrypto Jun 8, 2024
c18f77a
error handling
LimpidCrypto Jun 9, 2024
c8a50c1
improve testing
LimpidCrypto Jun 9, 2024
e607e4c
implement websocket client request
LimpidCrypto Jun 11, 2024
0f2a1e0
implement websocket client request for embedded websocket
LimpidCrypto Jun 11, 2024
856fc1c
update rand trying to get rid of cargo check: OsRng: rand_core::RngCo…
LimpidCrypto Jun 11, 2024
d40648a
fix github workflow build and tests
LimpidCrypto Jun 11, 2024
5e3159b
fix github workflow build and tests
LimpidCrypto Jun 11, 2024
30f11e3
run linters
LimpidCrypto Jun 11, 2024
6070296
add json rpc client
LimpidCrypto Jun 12, 2024
c271336
add json rpc for std and tests
LimpidCrypto Jun 13, 2024
65d9b21
cargo fmt
LimpidCrypto Jun 13, 2024
e27479e
add pre-commit test with json-rpc-std
LimpidCrypto Jun 13, 2024
7f9284f
cargo fmt
LimpidCrypto Jun 15, 2024
d20d011
cargo fix
LimpidCrypto Jun 15, 2024
9e573f6
improve client code
LimpidCrypto Jun 28, 2024
a7105e7
refactor features
LimpidCrypto Jul 16, 2024
0c87335
fix tungstenite example
LimpidCrypto Jul 19, 2024
ce9aeb6
fix clients
LimpidCrypto Jul 19, 2024
15395b9
fix client tests
LimpidCrypto Jul 19, 2024
bbc2066
fix tests
LimpidCrypto Jul 19, 2024
3dc8cf0
rename features in github workflow
LimpidCrypto Jul 19, 2024
4dfcc10
update dependencies; add no_std websocket client example; fix some fe…
LimpidCrypto Aug 9, 2024
5241758
fix default features
LimpidCrypto Aug 9, 2024
571495b
add transaction auto filling as in #76 (#80)
LimpidCrypto Aug 10, 2024
abc1fc4
fix testing
LimpidCrypto Aug 15, 2024
5573dbe
fix testing
LimpidCrypto Aug 15, 2024
f41da81
Transaction signing (#71)
LimpidCrypto Aug 31, 2024
95aab63
Account helpers (#81)
LimpidCrypto Sep 1, 2024
f17ee24
add get_latest_open_ledger_sequence
LimpidCrypto Sep 1, 2024
f677789
add submit_and_wait
LimpidCrypto Sep 4, 2024
a7fba6a
try fix tests
LimpidCrypto Sep 6, 2024
4759b00
try fix tests
LimpidCrypto Sep 6, 2024
d2773e0
try fix tests
LimpidCrypto Sep 6, 2024
43d2c8a
try fix tests
LimpidCrypto Sep 6, 2024
32bd350
add faucet wallet generation
LimpidCrypto Sep 6, 2024
f4abba1
add submit_and_wait
LimpidCrypto Sep 4, 2024
23a0c26
try fix tests
LimpidCrypto Sep 6, 2024
a509811
try fix tests
LimpidCrypto Sep 6, 2024
aa689d0
try fix tests
LimpidCrypto Sep 6, 2024
bb3a44f
finalize
LimpidCrypto Sep 6, 2024
c178c61
fix github tests
LimpidCrypto Sep 7, 2024
2a17e0c
fix github tests
LimpidCrypto Sep 7, 2024
5069263
fix github tests
LimpidCrypto Sep 7, 2024
e23a72c
refactoring
LimpidCrypto Sep 8, 2024
8ec4ef4
cargo fmt
LimpidCrypto Sep 8, 2024
d7829e0
clippy fix
LimpidCrypto Sep 8, 2024
60568cf
add sync clients and helpers; add examples; fix clippy warnings
LimpidCrypto Sep 9, 2024
f5929ec
fix gh tests
LimpidCrypto Sep 9, 2024
a7838e6
fix gh tests
LimpidCrypto Sep 9, 2024
6ac9ed4
fix gh tests
LimpidCrypto Sep 9, 2024
51d1bf7
add sign_and_submit example
LimpidCrypto Sep 10, 2024
4cb5a74
always serialize flags
LimpidCrypto Sep 11, 2024
81d5d2a
set version for embedded-websocket
LimpidCrypto Sep 12, 2024
a19e0f9
validate before submitting
LimpidCrypto Sep 12, 2024
6c480ac
update package
LimpidCrypto Sep 12, 2024
537e7bc
fix tests by adding rt-multi-thread feature for tokio
LimpidCrypto Sep 12, 2024
55db1df
fix tests by enabling time feature for tokio
LimpidCrypto Sep 12, 2024
cb7a80c
use embedded-websocket-embedded-io instead of embedded-websocket
LimpidCrypto Sep 12, 2024
3119872
change version back to 0.2.0
LimpidCrypto Sep 13, 2024
3506bc5
only include src and Cargo.toml in build
LimpidCrypto Sep 13, 2024
25a07e1
update changelog
LimpidCrypto Sep 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .cargo-husky/hooks/pre-commit
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ set -e

echo 'Running all pre-commit checks:'
cargo fmt
cargo test --no-default-features --features core,models,utils
cargo test --all-features
cargo test --release
cargo test --release --no-default-features --features embassy-rt,core,wallet,models,helpers,websocket,json-rpc
cargo clippy --fix --allow-staged
cargo doc --no-deps
#cargo audit
cargo audit
5 changes: 5 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
FROM mcr.microsoft.com/devcontainers/rust:1.0-1-bullseye

# [Optional] Uncomment this section to install additional OS packages.
# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
# && apt-get -y install --no-install-recommends <your-package-list-here>
42 changes: 42 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/rust
{
"name": "xrpl-rust",
"dockerComposeFile": "docker-compose.yml",
"service": "app",
"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",
// Use 'mounts' to make the cargo cache persistent in a Docker Volume.
// "mounts": [
// {
// "source": "devcontainer-cargo-cache-${devcontainerId}",
// "target": "/usr/local/cargo",
// "type": "volume"
// }
// ]
// Use 'postCreateCommand' to run commands after the container is created.
"postStartCommand": "rustup --version && rustup component add rustfmt && rustup component add clippy",
// Configure tool-specific properties.
"customizations": {
"vscode": {
"extensions": [
"Gydunhn.vsc-essentials",
"GitHub.copilot",
"swellaby.rust-pack",
"panicbit.cargo",
"vadimcn.vscode-lldb",
"tamasfe.even-better-toml",
"Swellaby.vscode-rust-test-adapter"
],
"settings": {
"files.autoSave": "onFocusChange",
"files.eol": "\n",
"[rust]": {
"editor.defaultFormatter": "rust-lang.rust-analyzer",
"editor.formatOnSave": true
}
}
}
}
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}
10 changes: 10 additions & 0 deletions .devcontainer/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
version: "3"

services:
app:
build:
context: .
dockerfile: Dockerfile
command: sleep infinity
volumes:
- ../..:/workspaces:cached
2 changes: 1 addition & 1 deletion .github/workflows/audit_test.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
on:
push:
branches:
- develop
- dev
pull_request:
branches:
- main
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/quality_test.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
on:
push:
branches:
- develop
- dev
pull_request:
branches:
- main
Expand Down
50 changes: 45 additions & 5 deletions .github/workflows/unit_test.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
on:
push:
branches:
- develop
- dev
pull_request:
branches:
- main
- dev

name: Unit

Expand All @@ -18,18 +19,57 @@ jobs:
with:
toolchain: stable
- uses: actions-rs/cargo@v1
name: Build with default features
with:
command: build
args: --release --all-features
args: --release
- uses: actions-rs/cargo@v1
name: Build with no default features
with:
command: build
args: --release --no-default-features --features core,models
args: --release --no-default-features
- uses: actions-rs/cargo@v1
name: Build for no_std
with:
command: build
args: --release --no-default-features --features embassy-rt,core,wallet,models,helpers,websocket,json-rpc
- uses: actions-rs/cargo@v1
name: Build only core
with:
command: build
args: --release --no-default-features --features core
- uses: actions-rs/cargo@v1
name: Build only wallet
with:
command: build
args: --release --no-default-features --features wallet
- uses: actions-rs/cargo@v1
name: Build only models
with:
command: build
args: --release --no-default-features --features models
- uses: actions-rs/cargo@v1
name: Build only helpers
with:
command: build
args: --release --no-default-features --features websocket,json-rpc,helpers,tokio-rt
- uses: actions-rs/cargo@v1
name: Build only websocket
with:
command: build
args: --release --no-default-features --features websocket
- uses: actions-rs/cargo@v1
name: Build only core
with:
command: build
args: --release --no-default-features --features json-rpc
- uses: actions-rs/cargo@v1
name: Test with default features
with:
command: test
args: --all-features
args: --release
- uses: actions-rs/cargo@v1
name: Test for no_std
with:
command: test
args: --no-default-features --features core,models
args: --release --no-default-features --features embassy-rt,core,wallet,models,helpers,websocket,json-rpc
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,7 @@ Cargo.lock

# Additional
src/main.rs

**/.DS_Store

rustc-ice*
32 changes: 29 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,23 +6,44 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [[Incomplete]]
- JSONRPC
- Websockets

- Models
- Integration Tests
- Performance Benchmarks

## [[Unreleased]]

## [[v0.2.0-beta.1]]

- Examples
- Wallet from seed
- New wallet generation
- Client requests
- make `new` methods of models public
- add `AsyncWebSocketClient` and `WebSocketClient`
- add `AsyncJsonRpcClient` and `JsonRpcClient`
- update dependencies
- add devcontainer
- add transaction helpers and signing
- add account helpers
- add ledger helpers
- add wallet helpers

---

## [[v0.2.0-beta]]

### Added

- Request models
- Transaction models
- Ledger models
- Utilize `anyhow` and `thiserror` for models
- Utilities regarding `serde` crate
- Utilities regarding `anyhow` crate

### Changed

- Use `serde_with` to reduce repetitive serialization skip attribute tags
- Use `strum_macros::Display` instead of manual `core::fmt::Display`
- Use `strum_macros::Display` for `CryptoAlgorithm` enum
Expand All @@ -33,13 +54,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- crypto-bigint
- serde_with
- criterion

### Fixed

- Broken documentation link
- Flatten hex exceptions missed from previous pass

---

## [v0.1.1] - 2021-10-28

Initial core release.
### Added

### Added

- All Core functionality working with unit tests
1 change: 1 addition & 0 deletions CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
* @sephynox
* @LimpidCrypto
Loading
Loading