Releases: BitcreditProtocol/Bitcredit-Core
Releases · BitcreditProtocol/Bitcredit-Core
v0.3.14
- Minting
- Added notifications and offers
- Added timestamps for status
- Call mint endpoint for cancelling
- Use mint nostr relays from network and fall back to identity ones
- Add endpoints to accept, or reject an offer from a mint
- Add logic to check keyset info, mint and create proofs
- Add logic to recover proofs if something goes wrong
- Add logic to check if proofs were spent
Version: v0.3.14
v0.3.13
- Minting
- Add default mint configuration options
default_mint_urldefault_mint_node_id
- Implement
request_to_mint - Add minting status flag to bill
- Add endpoint to fetch minting status for a bill
- Add logic for checking mint request status on the mint
- Add cronjob to check mint requests
- Add endpoint to cancel mint requests
- Add default mint configuration options
- Change bitcoin addresses and descriptor to p2wpkh
- Suppress logging from crates we don't control
Version: v0.3.13
v0.3.12
- impl Default for BillParticipant and BillAnonParticipant
- Expose Receiver type for the PushApi trait
- Fix SurrealDB Memory leak for WASM
Version: v0.3.12
v0.3.11
- Add LICENSE to crates
- Remove the
bcr-ebill-webcrate - Use a list of Nostr relays everywhere, instead of a single one, including in the config
- Add Blank Endorse Bill data model implementation
- Rename
IdentityPublicDatatoBillIdentParticipant- same for
LightIdentityPublicData
- same for
- Introduce the concept of
BillParticipant, with the variantsIdentandAnonAnonincludes aBillAnonParticipantIdentincludes aBillIdentParticipant
- Use
BillParticipantin parts of the bill where a participant can be anonymous
- Rename
- Add the possibility to add anonymous contacts
- They only have Node Id, Name and E-Mail as fields
- E-Mail is optional
- This changes the data model for contacts,
emailandpostal_addressare now optional- Additional validation rules ensure the fields can only be set for non-anon contacts
- Adds an endpoint
Api.contact().deanonymize()to de-anonymize a contact by adding all necessary fields for a personal, or company contact- It takes the same payload as creating a contact and fails for non-anon contacts
- Add the possibility to add an anonymous identity
- They only have Node Id, (nick)name and E-Mail as fields
- E-Mail is optional
- Adds an endpoint
Api.identity().deanonymize()to de-anonymize an identity by adding all necessary fields for a personal identity- It takes the same payload as creating an identity and fails for a non-anon identity
- Anon identity can't issue bills, or create a company
- Add the possibility to issue and endorse blank
- New
Api.bill()methods for blank endorsementsissue_blankoffer_to_sell_blankendorse_bill_blankmint_bill_blank
- Can issue (non-self-drafted) blank bills (payee is anon)
- Can endorse/mint/offer to sell to anon endorsee/mint/buyer
- If caller of a bill action is anonymous in the bill, any action they take stay anonymous (e.g. endorse)
- New
- Add endpoint to check payment for singular bill
Api.bill().check_payment_for_bill(id)
- Fix TS type for identity detail
- Return identity on
createanddeanonymizeidentity for consistency
Version: v0.3.11
v0.3.10
- Change default testnet block explorer to
https://esplora.minibill.tech - Add LICENSE to npm package
- Reduce size of the WASM binary
- Fix a small issue, where bills were recalculated instead of taken from cache, once their payment/sell/recourse/accept requests expired
- Change behaviour of request to pay
- it's now possible to req to pay before the maturity date
- The actual payment expiry still only happens 2 workdays after the end of the maturity date,
or end of the req to pay end of day if that was after the maturity date - the
request_to_pay_timed_outflag is set after payment expired, not after the req to pay expired - The waiting state for payment is only active during the req to pay (while it's blocked)
- Afterwards, the bill is not blocked anymore, can still be rejected to pay and paid
- But recourse is only possible after the payment expired (after maturity date)
- An expired req to pay, which expired before the maturity date does not show up in
past_payments
Version: v0.3.10
v0.3.9
- Add possibility to use a local regtest esplora setup for payment
Version: v0.3.9
v0.3.8
- Add
esplora_base_urlas config parameter to be able to use a custom esplora based block explorer - Add
node_idsfilter tolistnotifications endpoint - Fixed an issue where events weren't propagated if no one was subscribed to the push notifications
- Run payment checks on startup
Version: v0.3.8
v0.3.7
- Fix request recourse to accept validation - does not require a request to accept anymore
Version: v0.3.7
v0.3.6
- Add validation for maturity date
- Add docs for testing
- Fix reject to accept not showing correctly without req to accept
- Add endpoint
clear_bill_cacheto clear the bill cache
Version: v0.3.6
v0.3.5
- Properly propagate and log errors when getting a file (e.g. an avatar)
- Several fixes to recourse bill action validation
- Add in-depth tests for bill validation
- Fix not checking contact for company files
Version: v0.3.5