Stellar Dev Digest: Issue #24
Horizon v0.24.0 Release, SatoshiPay Launch Party, the Math Behind Stellar, New Stellar Core Release.
Hey everyone! Welcome to another issue of the Stellar Dev Digest, a weekly recap of all things related to the development of the Stellar Network.
We skipped last week’s digest because it was a holiday in the States, so this issue has two weeks worth of news.
What is Stellar? Stellar is a platform that connects banks, payments systems, and people. Integrate to move money quickly, reliably, and at almost no cost.
Featured Developer Posts and News from the Week
- SatoshiPay had a big launch party, and a big week in general! Highlights included a Stellar operated snack dispenser, and an announcement of their new bank to bank payment solution.
- 📚 André Gaul from the SatoshiPay research team released a paper in collaboration with Ismail Khoffi, Jörg Liesen, and Torsten Stüber covering the math and algorithms behind Stellar in crazy detail. — Mathematical Analysis and Algorithms for Federated Byzantine Agreement Systems
- Kapilendo, a banking platform for SMEs, issued its first blockchain-based digital bond on Stellar. — Read the full press release.
- Previous app of the week, Ilmatic, was featured on TechCrunch top picks. — Watch the full video.
- The results are in for the community run Stellar Content Battle. — See the winners.
- 👩💻 Women Who Code is accepting lumen donations via Lumenthropy.
- 🏆 Reminder: If you’re interested in participating in the Stellar Community Fund Round 3 make sure to submit your project by December 14 @ 12:00PM PST. SCF supports independent developers by awarding lumen grants to projects based on a community vote. This round, 3 million lumens will be split proportionally among 8 winners — find the submission guidelines here.
This week I’m featuring Settle!
Borderless tech & infrastructure that bridges the gap between traditional and digital finance.
Settle’s goal is to use Stellar to provide programmatic interoperability between traditional and digital assets.
How do they do it? By providing fiat on/off ramps, liquidity for local and cross-border payments, identity verification for KYC and AML, and a wallet OS.
Sam Connor and I sat down for an interview with Nic, co-founder of Settle, at Meridian. You can watch the interview here.
Updates to Stellar Protocol (CAPs) and Ecosystem (SEPs)
Core Advancement Proposals (CAP) and Stellar Ecosystem Proposals (SEP) are a formal way of documenting proposed standards to improve various aspects of the Stellar Network. These function similar to EIPs and BIPs from the Ethereum and Bitcoin communities respectively. CAPs and SEPs represent the culmination of many discussions that often take place on the Stellar Developer Google Group.
Active Discussions
Before SEPs are adopted, there’s a period of discussion when authors look for feedback. Two new SEPs that are currently in that phase: SEP-0026 and SEP-0027.
SEP-0026: Non-interactive Anchor/Wallet Asset Transfer — this SEP defines the standard way for wallets to interact with anchors, improving user experience by allowing wallets to interact with anchors without needing the leave the wallet application. It is based on and backwards compatible with SEP-0006. Read the full proposal here.
SEP-0027: Asset Information Server — this SEP provides an additional solution for serving asset information from anchors, on-ramps, and other ecosystem members. It suggests that anchors or issuers provide an info_server
endpoint to supplement stellar.toml files. Read the full proposal here.
A hot topic on the mailing list over the past few days has been a discussion around Delegated Transaction Signing — you can find that here.
In the last issue, I mentioned a proposal for Multliplexed Accounts, the discussion for this topic is still ongoing.
If these types of conversations interest you, consider joining the Stellar Developer mailing list!
Merged PRs
Over the past two weeks 8 PR’s have been merged on the SEP front:
- SEP-0010: Remove the jti as a required token field 15 hours ago
- SEP-0010: Fix grammar and typos 22 hours ago
- fixed some typos 2 days ago
- SEP-0026 proposal for Non-interactive Anchor/Wallet Asset Transfer 3 days ago
- SEP27: Asset Information 3 days ago
- Fix broken JWT link in SEP-10 4 days ago
- [SEP24] Remove the 403 forbidden stuff from the interactive endpoint 14 days ago
- SEP-0010: Clarify best practices about JWTs and URIs 14 days ago
Only one CAP PR was merged:
- Update CAP-0015 again 3 days ago
Calls for Participation
Want to contribute to Stellar but don’t know where to start? The repositories below have a handful of beginner friendly PRs for you to take on!
- Kelp (Go: 9 Open Issues): a free and open-source trading bot for the Stellar universal marketplace.
- Account Viewer (JavaScript: 5 Open Issues): a simple tool to view an account on the Stellar network and make transactions from it.
- JavaScript SDK (JavaScript: 8 Open Issues): a Javascript library for communicating with a Stellar Horizon server. It is used for building Stellar apps either on Node.js or in the browser.
- Js-Stellar-Base (JavaScript: 2 Open Issues): the lowest-level stellar helper library. It consists of classes to read, write, hash, and sign the xdr structures that are used in stellar-core. This is an implementation in JavaScript that can be used on either Node.js or web browsers.
- Go MonoRepo (Go: 12 Open Issues): the home for all of the public go code produced by SDF. In addition to various tools and services, this repository is the SDK from which you may develop your own applications that integrate with the stellar network.
- Laboratory (JavaScript: 2 Open Issues): a suite of tools to help you learn about exploring the Stellar network.
- Vanity Address Generator (Rust: 3 Open Issues): a simple CLI tool to generate Stellar vanity addresses.
On Nov. 26, a Stellar-core v12.2.0 was released! It included a couple of stability improvements and new features along with one breaking change. The breaking change is the result of a new meta format being introduced. This new meta format allows missing information from TransactionMeta to be fixed in older protocol versions.
Horizon v0.24.0 was released today. A couple of the changes include:
- Add
fee_charged
andmax_fee
objects to/fee_stats
endpoint (#1964). - Rename
OperationFeeStats
toFeeStats
(#1950).
There are also quite a few breaking changes scheduled for the next Horizon, v0.25.0, which is due out in January. All *_accepted_fee
fields in /fee_stats
endpoint will be deprecated.
Additional breaking changes include:
- The following operation type names have been deprecated:
path_payment
,manage_offer
andcreate_passive_offer
. The names will be changed to:path_payment_strict_receive
,manage_sell_offer
andcreate_passive_sell_offer
in 0.25.0. This has been previously scheduled for 0.22.0 release. fee_paid
field on Transaction resource has been deprecated and will be removed in 0.25.0 (previously scheduled for 0.22.0). Please use new fields added in 0.18.0:max_fee
that defines the maximum fee the source account is willing to pay andfee_charged
that defines the fee that was actually paid for a transaction. See CAP-0005 for more information.- The type for the following attributes will be changed from
int64
tostring
in 0.25.0 (previously scheduled for 0.22.0): - Attribute
offer_id
in manage buy offer and manage sell offer operations. - Attribute
offer_id
inTrade
effect. - Attribute
id
in Offer resource. - Attribute
timestamp
andtrade_count
in Trade Aggregation resource.
The Stellar Python SDK also had a big release and is officially on Version 2.0.0 as of Nov. 29 🥳 Version 2 is not compatible with versions 1.x but versions 1.x will still be maintained. You can find the new documentation here.
Looking to work on Stellar full-time? Check out the list of job openings below:
Not Yet Signed Up?
Want to get the Stellar Dev Digest and other developer updates directly to your inbox? Sign up for the developer newsletter today!
Did I Miss Something?
If you found that something from this issue is missing or inaccurate reach out to me (kolten) on Keybase and I’ll make sure to fix it 👍