Changelog

Follow along with updates and improvements made to Doppler.

Filter
February 26, 2020
Product Launches
February 2020 Updates

February 2020 Updates

All Clients are End of Life

…except for the new Doppler CLI. The legacy Node CLI and Node, Python, and Ruby clients will continue to work with our v1 APIs, but will NOT receive any security updates, bug fixes, or new features.

The new Doppler CLI is written in Go to ensure it remains lightweight, incredibly fast, and compatible on any OS without dependencies. Plus, it ensures your secrets are always encrypted.

UI Improvements

We've rolled out a bunch of UI improvements and paper cut fixes this month. Here are a few of the things the team has released so far:

  • Improvement: Count the number of secrets currently displayed
  • Improvement: Alert when adding a secret with a name that already exists
  • Improvement: API Reference for creating service tokens
  • Fix: Scrollbars no longer block secrets in config logs on certain browsers
  • Fix: Don't show 2FA flow when logging in with Google Auth
  • Fix: Feedback form now looks consistent across all pages
  • Fix: Changes page has bullet points and support for code snippets
  • Fix: Slack community link is working again

The Fastest Doppler Ever

We've reduced our total page size by ~98% and load time by ~35%. To accomplish this, we now cache all static, public assets for up to 1 year. Assets are also cached by our globally-distributed CDN, meaning assets will always be served from a location near you.

We content-address all of our static assets. This is a method of naming the asset based on its content, typically using a hash function. Content-addressing ensures immutability by guaranteeing that the asset's name changes whenever its content does. For example, instead of loading doppler-logo.png, we load something like doppler-logo-a24a706d.png.

This funky naming enables us to crank caching up to the max. We specify a cache policy of public, max-age=31536000, immutable, must-revalidate. Let's break down what this means:

  • public allows the asset to be cached by your browser and by our CDN
  • max-age=31536000 indicates the asset can be cached for 1 year
  • immutable asserts that the content really doesn't need to be rechecked if unexpired (why we need this)
  • must-revalidate ensures that the asset is re-requested once it expires

Evangelizing Two-Factor Auth

Our users trust Doppler with their secrets. In return, Doppler trusts users to take account security seriously. After all, the most secure systems are still only as secure as their weakest link.

To help improve account security for all users, we'll now prompt you to set up 2FA on your next login. We'll also do so after performing a password reset.

This helps ensure your secrets are shielded from poor password hygiene, which is an ongoing goal of ours.

Compare Secrets

Ever wanted to compare your database url or any other secret across development to production? With the Compare Secret feature, you can!

Activity Logs Diffs

See the changes your team makes whenever an Enclave config is updated! View the config log to go deeper into which values were modified.

CLI v2.0

This major release is packed with features for local development.

Here's one: doppler run now automatically keeps a local, encrypted backup of your secrets. If the Doppler API or your internet connection ever goes down, you'll still be able to boot your app.

Remember, the CLI only takes 3 steps to set up locally:

  1. brew install dopplerhq/cli/doppler / scoop / docker / other
  2. doppler login && doppler enclave setup
  3. doppler run -- node server.js <- or whatever your app is!

For a full list of new features and breaking changes, check out the release notes.

(Ok, we cheated on step 2 with the &&. But we also included the installation, which we could've left out, just to show you how easy that is too!)