Stellar Dev Digest: Issue #16

Rob Durst
Stellar Community
Published in
5 min readSep 27, 2019

Hey y’all! It’s about that time of the week again. Welcome to another issue of the Stellar Dev Digest, a weekly recap of all things related to the development of the Stellar Network.

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

  • Denelle Dixon and Jed McCaleb discuss SDF updates and more in a Reddit AMA earlier this week — Full AMA
  • Now that you’re on Keybase, check out all the cool bots — All The Bots
  • StellarBeat added a new Halting Analysis feature — Check It Out
  • Stellar Vanity Address Generator releases 0.5.0 which comes with a new concurrent search feature (thanks charlie-wasp) — See Crate
  • Are you an anchor? Have you checked out SDF’s anchor server reference implementation? — Github Repo

Application of the Week

This week’s featured project is the dashboard developed by SDF.

The dashboard is a really nice way to get a quick, visual look into the current state of the Stellar network (both public and testnet). It includes live fee stats, ledger close times, ledger-by-ledger successful and failed transaction counts, and much, much more. It’s the kind of thing you might throw up on a spare monitor and watch run all day, just to feel more hardcore. I have personally used this during my development to experiment with spamming transactions on the test network, to investigate why a transaction was not executing as fast as I would have expected (often due to surge pricing), and to get an idea of the current network traffic.

Interested in promoting your own project, or another exciting project in the ecosystem? If so, please make a submission 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.

CAP-0026 [Draft]: In this CAP, OrbitLens proposes disabling the current inflation mechanism, and argues that users’ increasing tendency to join inflation pools prevents inflation from supporting important ecosystem projects. Furthermore, he claims, these large weekly payment distributions may cause more unforeseen complexities than benefits, causing edge cases to arise in smart contracts and an unnecessary burden on validating nodes.

As of this week, CAP-0026’s design for disabling inflation became much simpler. Instead of OrbitLens’ somewhat more complex first approach, the CAP now details simply deprecating the inflation operation, by returning a OpNotSupported message from core nodes.

All-in-all, two pull requests were merged in the last week.

Updates to Stellar Core

This week the core team was rocking and rolling, inching closer to the 0.12.0 finish line. First off, we had another release candidate, 0.12.0rc2. This release candidate comes with release notes (not present in the release candidate from last week). Since we are still more than a week out until the final release, or even the final release candidate for that matter, I will forgo a deep dive here for the time being.

Most of what was merged this week includes small nits, big fixes, and documentation/comment improvements. My personal favorite from this week was PR #2027 by graydon. This PR added a substantial comment about offers and the order book, especially helpful because, as someone who has done a little bit of work there, this code is tough. Furthermore, for those who are less familiar with the core codebase, gems like this are actually quite frequent, helping newcomers (and old comers alike) grok what exactly is going on!

Overall, eight pull requests were merged in the last week.

Calls for Participation

Looking to get your hands dirty and not sure where to begin? The Stellar ecosystem is full of open source projects looking for help. The following projects are interested in some help and are very likely willing to offer mentorship in exchange:

Stellar Vanity Wallet Generator (Rust): generate Stellar vanity wallets

js-stellar-sdk (JavaScript): Stellar’s main Stellar client library for Javascript

scala-stellar-sdk (Scala): Scala Sdk for the Stellar network

astrocore (Rust): Stellar-core implementation in rust

State of the Developer Ecosystem

Besides the Stellar-core release candidate discussed above, we also have a first release candidate for Horizon 0.21.0 and two SDK updates, Python and Qt.

Horizon 0.21.0 (remember this is a release candidate and not production read) brings a lot of new cool features:

  • support for CAP-0024 (PathPayment2)
  • experimental support for an offers endpoint
  • numerous fixes for the new experimental ingestion system
  • dropped support for go 1.10 and 1.11

Below are quick synopses of this week’s SDK updates:

  • Python: in what may be seen as a classic Python move, there are now two officially developed and supported versions of this SDK, the 1.x.x branch and the 2.x.x branch. This week saw the release of 1.3.2, which brings SEP-0010 support.
  • Qt: for its first update since July, version 0.1.9.1 brings SEP-0010 support as well. Awesome! I believe this means most of the major SDKs now are SEP-0010 compliant.

Jobs

Looking to work on Stellar full-time?!? Check out the list of job openings below:

  • SDF Frontend Engineer (New York) Apply
  • SDF Senior Platform Engineer (San Francisco) Apply
  • SDF Senior Core Engineer (San Francisco) Apply
  • SDF Senior Platform Engineer (New York) Apply
  • SDF Software Integration Engineer (San Francisco) Apply

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?

Darn, I knew it! If you found that something from this issue is missing or inaccurate, please open an issue here or message me (r_durst) on Keybase and I will get around to it ASAP. Thanks!

--

--