RustWebDigest #3: Authentication, Rust and Rest and more learning
Posted by ben :The biggest news since the last RustWebDigest is without question the alpha release of Servo – the web rendering engine entirely written in Rust by Mozilla. It's a big effing deal and if you haven't downloaded it yet, I highly recommend doing so. While its still in alpha stage, it is very impressive what the team has delivered and keeps delivering with their nightly builds 👏.
The second most widely spread news Armin Ronacher's – you know, the person behind Flask – blog post about doing nice API development for Rest-APIs with Rust that he encountered while implementing the Sentry Rust Client. Similarly big waves only received Dropbox for their all rust brotli implementation, claiming to bring pied piper to life, but weirdly only implementing de compression so far. But both of sources of big credit showing strengths of Rust in very public posts, increasing the visibility and viability of Rust as decent web development environment.
Authentication, remote logging
After due consideration we've decided to rename the prior OAuth topic to a broader "Authentication/Authorization" topic as suggested by Marcel Müller. Thanks, Marcel, good idea!
Making that topic more broad also allowed us to add more libraries to that area. Go check it out.
The second big change on the website is around logging: We've added slog (a structured logging facility) and a few remote logging implementations (sentry, airbrake) – very important tooling for every web developer!
More Learning
Disclaimer: the author is co-organiser of RustFest.
Connecting RustFest and View Source
More of a side note the RustFest team announced their collaboration with Mozilla sponsored "View Source", a conference dedicated to the open web. Within that side note, they announced to be hosting a discussion area about rust at View Source – reaching out to the web developer folks on their own turf. Despite not having announced any web-related talks at that conference, that's an important sign. I highly recommend to get in touch if you are interested making that discussion awesome.
More blogs
We've also seen a few more interesting blog posts about rust for web development and updates the main website accordingly:
- Rust and Rest (as previously mentioned)
- REST in Rust
- Connecting a webservice to a database in Rust
arewewebyet/web development talk at Berlin Rust User Group
And finally, you have the chance to see me on stage this week at Berlin Rust User Group, trying to convince the folks in front of me to do web development with rust by implementing a tiny microservice with the help of arewewebyet. Come by and say hi!
Crate updates:
Added to index:
The following have been added to our tracking index (and the website where appropriate)
- airbrake (0.1.0)
- brotli (1.0.6)
- catapult (0.1.2)
- frank_jwt (2.2.1)
- horrorshow (0.5.6)
- macaroons (0.2.1)
- otpauth (0.2.5)
- slog (0.6.0)
- sentry (0.1.4)
- zstd (0.1.11)
Updates recorded:
Further more we recorded new releases to the following crates
- backtrace (0.2.1 => 0.2.3)
- base64 (0.1.1 => 0.2.0)
- bodyparser (0.3.0 => 0.4.0)
- cassandra (0.6.10 => 0.7.2)
- clap (2.5.1 => 2.9.3)
- cookie (0.2.4 => 0.2.5)
- crust (0.14.0 => 0.16.1)
- curl (0.2.19 => 0.3.1)
- dbmigrate (0.2.3 => 0.2.4)
- discord (0.5.0 => 0.6.0)
- docopt (0.6.80 => 0.6.81)
- ease (0.4.2 => 0.5.0)
- env_logger (0.3.3 => 0.3.4)
- etcd (0.5.3 => 0.5.4)
- feedreader was renamed to feed (1.2.3)
- fnv (1.0.2 => 1.0.3)
- formdata (0.8.2 => 0.9.0)
- ftp (0.0.7 => 0.0.8)
- googl (0.0.3 => 0.0.4)
- handlebars-iron (0.15.2 => 0.15.3)
- handlebars (0.16.1 => 0.19.0)
- hubcaps (0.2.1 => 0.2.2)
- hyper (0.9.6 => 0.9.10)
- imap (0.0.5 => 0.0.6)
- influent (0.2.2 => 0.3.0)
- iron (0.3.0 => 0.4.0)
- iron_vhosts (0.1.0 => 0.2.0)
- json (0.8.4 => 0.10.0)
- json_macros (0.3.0 => 0.3.2)
- jsonrpc (0.7.4 => 0.7.6)
- kafka (0.3.1 => 0.4.1)
- libsodium-sys (0.0.10 => 0.0.12)
- liquid (0.8.0 => 0.8.4)
- log4rs (0.4.4 => 0.4.8)
- maud (0.8.1 => 0.9.0)
- mongo_driver (0.2.4 => 0.3.0)
- mount (0.1.0 => 0.2.0)
- mysql (5.0.0 => 5.2.2)
- openssl (0.7.13 => 0.7.14)
- pencil (0.2.0 => 0.2.1)
- persistent (0.1.0 => 0.2.0)
- pop3 (0.0.5 => 0.0.6)
- postgres (0.11.7 => 0.11.9)
- random (0.10.0 => 0.12.1)
- redis (0.5.3 => 0.7.0)
- regex (0.1.71 => 0.1.73)
- requests (0.0.10 => 0.0.22)
- rocksdb (0.3.5 => 0.4.1)
- rs-es (0.3.4 => 0.4.6)
- rusoto (0.13.1 => 0.15.3)
- rusqlite (0.7.2 => 0.7.3)
- rustache (0.0.1 => 0.0.2)
- rustful (0.8.0 => 0.9.0)
- rustorm (0.4.3 => 0.5.4)
- serde (0.7.5 => 0.8.0-rc3)
- serde_json (0.7.0 => 0.7.4)
- syndication (0.1.1 => 0.2.0)
- syslog (3.1.0 => 3.2.0)
- tar (0.4.5 => 0.4.7)
- tempfile (2.1.3 => 2.1.4)
- tera (0.1.1 => 0.1.2)
- tiny-http (0.5.1 => 0.5.2)
- url (1.1.0 => 1.1.1)
- urlencoded (0.3.0 => 0.4.0)
- ws (0.4.7 => 0.5.1)
- yup-oauth2 (0.6.1 => 0.6.2)
Anything we missed? Let us know!