Compose NewsBits: MySQL 8.0, Angular 2, Swift 3, Vim 8 and more

Compose NewsBits: MySQL 8.0 is now official and there's a MySQL vulnerability about, Angular 2 and Swift 3 are finalised, PostGIS 2.3 goes beta, Vim's back with version 8.0 and we look at a database that's a quine and a Tiny Lisp computer.

NewsBits is the new name for Compose's Little Bits, which was pretty newsy so we thought we'd change the name so people have a better idea what they are getting. Database news, developer news, cloud news and some curiosities from the IT world. On with the NewsBits!

Database Bits

MySQL 8.0

We suspected it was coming and here it is, the next version of MySQL has been announced as MySQL 8.0. This release is a development milestone release, not production but it sets the tone, in terms of features, for future MySQL releases.

And it's adding lots, with a real data dictionary, SQL Roles, better UTF8 support, invisible indexes, bitwise operations, UUID to binary functions, persistent global variables and auto-increment counters, a performance schema, the refactored parser we heard about and we're only scratching the surface.

Lots of legacy code is going away too so this is lining up to be a very important release in the MySQL world. Bonus - here's some first impressions of the MySQL 8.0 release.

MySQL vulnerability

While MySQL 8.0 was debuting, a vulnerability in MySQL and most offshoots of it was revealed as CVE-2016-6662. Technically, it's a privilege escalation allowing a user to get rights and access to the database they don't have and that requires then being an authenticated user. But, as Little Bobby Tables reminds us, SQL Injection happens and that means it's still a vulnerability which can be used to stage larger attacks. Check out this article for more details about mitigating the problem. MySQL 5.7.15 addresses at least two of the vulnerabilty's components as does updated versions of MariaDB.

PostGIS 2.3 beta

With PostgreSQL 9.6 now in release candidate phase, what better time for an update of PostGIS to go into beta. The now feature complete PostGIS 2.3 beta has lots of new functions and enhancements, support for BRIN indexes and 9.6's parallel queries and an up to date TIGER geocoder.

Developing Bits

Swift 3.0

Apple have released the final version of Swift 3.0, their open sourced language that will most likely replace Objective C. It's a big jump in the language breaking source compatibility in places as it is now developing across platforms - the Linux port of Swift has had some big improvements too. There's also a new Swift Package Manager because it's 2016 and you can't not care about packaging any more and there's an updated version of The Swift Programming Language available in iBooks or as an ePub.

Vim 8.0

The editor that everyone knows, Vim, has just had its first major update in ten years and the Vim 8.0 announcement just touches on those changes. The real details are in the release notes where you find there's now built in interprocess communications with JSON support so you can make Vim work with other languages and applications. There's also support for job control, timers, packaging for plugins, line wrapping without losing indenting and GTK3+ support. If you do use Vim and like it, remember donations to Vim go not to Vim's developers but to a children's centre in Uganda which is what motivates Bram, Vim's author.

Angular 2

The Angular framework has completed it's move from Angular 1 with the release of Angular 2. Angular 1 had quite a following so when the developers announced they were going to completely rework the platform, breaking source compatibility but aiming for a much better framework, there was a fuss. It took two and a half years but now, with Angular 2 released, the TypeScript-based framework is now ready to do business with JavaScript, TypeScript and Dart developers. There's already lots of Angular 2 resources to check out.

Debugger.html

Mozilla have released Debugger.html, "a modern JavaScript debugger". It's a React and Redux debugger that connects to Firefox over RDP (remote debug protocol) built as a potential replacement for Firefox's current debugger. The interesting part is that it should work as a standalone debugger.

Odd Bits

QuineDB

A quine is a program that can reproduce its own source. QuineDB is an exercise in making a key value database which is a quine that reproduces itself and its data. Useful, no, fascinating, yes.

Tiny Lisp

How small can you make a Lisp machine? Technoblogy went for Tiny literally with this Tiny Lisp Computer that uses an Atmel ATmega328 microcontroller, a tiny OLED screen and a good old PS2 keyboard. Oh and an LED for pin 13 and it runs uLisp which can run on the Arduino Uno or other boards. Your weekend project awaits....

That's it for this week's NewsBits. We'll be here every Friday with the database and developer news.