Announcing platter v0.9.1
Alex Pearson
Platter CTOWe're proud to release v0.9.1
of the platter
CLI, featuring expanded support for non-Node environments through a platter.json
stand-alone configuration file and file-specific subcommands.
Also included in this release are more helpful error messages and CLI-specific sessions that can now be revoked from the dashboard.
#
Getting StartedTo get started with Platter's branching Postgres databases for the first time, take a look at the Quick Start.
To update an existing installation to v0.9.1
, follow the installation instructions for your preferred platform.
#
About This ReleaseBuilding on the work done in the 0.9.0
release to better support non-Node projects, 0.9.1
focuses on completely disentangling instance use and creation from the Node.js ecosystem and package.json
. This means first-class support for projects that use direct connections across a variety of languages, frameworks, and ORMs, from Rails to Django to TypeORM to SQLAlchemy. That support includes a dedicated project configuration file, JSON and dotenv-style configuration file branch URL injection, and platter watch
support for client-less development workflows.
platter.json
#
Configuration with Instance creation can be done without configuring those instances within a project, but it makes the most sense to configure branch connection methods in a project-scoped configuration file. For Node.js projects, that configuration file is package.json
. In Node projects, platter
has included instance configurations in package.json
by default. While this is convenient for JavaScript users, the majority of software projects do not have a package.json
.
Rather than finding and supporting the package.json
equivalent of every language and framework combination, 0.9.1
extracts that configuration to a separate platter.json
file. This file is exactly the same as the platter
entry in package.json
. Node users will still use package.json
by default, but now other users will have an automatically-generated platter.json
to use whenever they use platter postgres client configure
or platter postgres file configure
.
Speaking of platter postgres file configure
...
file
subcommands#
To go along with the client
subcommands from the previous release, this release includes subcommands for injecting branch URLs into JSON and dotenv-style files. Branch URLs are injected into these files at a key of your choosing (e.g. YOUR_INSTANCE_URL
).
Dedicated file
subcommands are configure
, which will add a file configuration entry to a project's package.json
or platter.json
, and generate
, which will create or modify files that have already been configured. The --file
argument passed to create
during instance creation effectively calls file configure
and file generate
on your behalf, if using these subcommands individually is too cumbersome.
In addition, these files are handled by the watch
command. This means that all of the auto-branching and hot-reloading of the client
-based workflow now works across ecosystems! Keep your eyes on this blog and the documentation for more tutorials on how to leverage existing file watchers, process restarters, and hot-reloaders built into popular frameworks and ORMs.
#
Improved Error MessagesMost of Platter is built using the Rust programming language. One of the reasons we chose Rust was because of its helpful compiler error messages. In the spirit of helpful compilers everywhere, platter
error messages have been overhauled to offer clearer hierarchies of source errors as well as helpful suggestions.
#
CLI Log OutAfter explicitly logging in with this release, you will notice that you will have the option to log out of all active CLI sessions in the web dashboard.
#
Support and FeedbackThanks for giving this release a try! If you have any questions or feedback, please let us know in the #kitchen
Slack channel or by emailing us at [email protected]
.