Changelog

Changelog #4

Our changelog keeps you up-to-date with product changes on a regular basis.

Highlights

  • We've focused the last two weeks in supporting our first users and contributors. Getting folks to start trying out Namespace has been inspiring and we've devoted most of our energy to them. Thank you!
  • namespace.so was updated with details of some of our key features.
  • ns: Simplified syntax, enabled more composition, and many improvements!
  • We've also revamped our login system, ahead of a couple features which we'll announce early in 2023, and will be coming early to our Discord.

We need your help! Follow us on Twitter and star us on Github. Join the team on Discord; we engage with the community everyday.

Platform

We're now up to ns 0.0.114 (from 0.0.103 in the last Changelog). A major thank you to Ferenc who contribute two of the features below.

Upcoming

  • We're half-way through with two major refactors which will make both the ingress provider and secret provider pluggable. Let us know on Discord which implementations you'd like to be able to use.

New features

  • Added support for Kubernetes DaemonSets.
  • Added ability to customize the Postgres version and data volume size (via instantiation of separate servers).
  • Added ability to use a remote k3s installation via SSH.
  • Added a few experimental features: ability to mount a host path, setup privileged containers, use Kubernetes' downwards field API, and more.
  • Enabled the use of CUE imports.
  • Added experimental support to declare a service as having a public LoadBalancer ingress (i.e. L4 vs L7 ingress).
  • Resource model: providers can now specify an intent that is unique to that provider, and separate from the resource class. Resource class intents are now optional.

Improvements

  • .dockerignore is now respected in Docker builds.
  • Improved filesystem change tracking on builds to not require maintaining a full snapshot in memory.
  • Added a "ns kubectl" shortcut (shorter than "ns tools kubectl")
  • Simplified image reference parsing, no more initializedWith: imageFrom: binary: foo, just use initializedWith: foo.
  • Refactored Postgres resource to provide a fully formed connection URI, for simplicity of use.
  • Improved the robustness of deploying the orchestrator, and reduced how long it takes.
  • Fixed Postgres' trust policy to not trust 127.0.0.1 by default (Postgres docker image default).
  • Consolidated nsboot and ns -- they are one and the same now.
  • Updated buildkit to 0.11.0-rc1.
  • Moved all provisioning tool invocations to use Buildkit (instead of Docker), which has improved performance.
  • When building production images, use the target cluster's platform list as the default list of platforms to build for.
  • Improved execution scheduling, we now observe deployment progress as soon as possible.
  • Enabled short-term AWS credential propagation in the orchestrator. We rely on the longer term AWS credentials available in your workstation, to generate short-term credentials that the orchestrator uses for deployment.
  • We now only generate startup tests for servers with readiness probes (without probes we aren't testing much).
  • cmd/build now does not trigger a full planning phase, and thus doesn't require secrets etc.

Fixes

  • Fixed a few scenarios where package loading was not triggered during resource parsing.
  • Fixed a few cases where arguments and environment were not respected during resource provider invocation.
  • Consolidated the location of ns' cache location in MacOSX (a different location was used during installation).

Learning

If you’d like to check out what Namespace has to offer, schedule a demo! We use these sessions to learn about your pain points, and are happy to provide advice based on what our expertise and infrastructure in the market.