Go 1.9 work-in-progress release notes

The next version of Go will improve performance, compilation, and scalability
26 June 2017   670

an open source project developed by a team at Google and many contributors from the open source community

Go 1.9 is planned to be released in August.

There won't be any radical changes; creators of Go 1.9 are focused on maintaining compatibility in this latest release, so no compatibility issues are expected.

New features:

  • Garbage collector's performance improved and core library is optimized; it will make programs run better;
  • The math/bits package offers optimized implementations to manipulate bits. Functions in this package are treated by the compiler as intrinsics to boost performance.
  • The Go 1.9 compiler supports parallel compilation of functions in a package, leveraging multiple processor cores. Go 1.9 retains the previous versions’ go command’s support for parallel compilation of separate packages. Parallel compilation is on by default but can be disabled. 
  • Type-alias declaration for code repair is now added to Go 1.9 in order to increase scalability. A change to the Go language, type aliases support gradual code repair while moving a type between packages.
  • Transparent monotonic time now supported. This will make computing durations between two "Time" values a safe operation in the presence of wall-clock adjustments.
  • Test helper capabilities improved.
  • New type added. It serves as a concurrent map with amortized-constant-time loads, stores, and deletes.

Official work-in-progress release notes.

Brigade launched

Event-driven scripting tool for Kubernetes released by Microsoft
31 October 2017   447

Microsoft has unveiled its new Open Source development for the needs of DevOps, a Brigade utility designed to run scripts that are executed on a Kubernetes cluster on an event.

The Brigade utility was created by former employees of Deis, a company that Microsoft bought earlier this year. Deis was working on Kubernetes, Helm and Draft. The purpose of Brigade is to "script simple and complex workflows using JavaScript." The solution allows to associate containers by running them sequentially or in parallel and invoking scripts based on time, events in GitHub (also supported by "DockerHub and other popular web services"), push operations in Docker or other triggers. Readme of the project describes it as "a tool for creating pipelines for Kubernetes".

Brigade architecture
Brigade architecture 

Brigade is written in Go and TypeScript / JavaScript, it functions as a service inside Kubernetes. The job (task) in Brigade is a JavaScript script that is interpreted by the product service, which leads to the creation of the necessary resources in Kubernetes. Next, Brigade expects events and performs the corresponding task trigger. It is assumed that the new solution is well suited for the tasks of continuous integration and delivery of applications (CI / CD), tk. simplifies automated testing, assembly of artifacts and releases, management of software deployment.

Check GitHub for more information.