Release Notes - v0.12.x

What’s new?

  • Go Modules adapted fully
  • Console Module
  • Cache Manager with pluggable cache store
  • Diagnosis & Profiling
  • Improved routing implementation

A new app "THUMBAI - Go Mod Repository, Go Vanity" from author of aah

Changelog

Features

  • Console Module - Ability to add CLI commands into aah application easily #198, documentation
  • Cache Manager - Pluggable cache datastores. OOTB - In-memory, Redis, Memcache supported #203, documentation
  • Diagnosis & Profiling - provides on-demand profiling feature #216, documentation
  • View Engine - added partials support for template include anywhere under <app-base-dir>/views/** #217, documentation

Enhancements

  • Go Modules - aah framework fully adapted to Go modules and supports as default package management #200
    • Enhanced command aah migrate logic and grammar to do incremental code migration to current version aah
    • Enhanced command aah list to work with Go modules and aah applications
    • Enhanced command aah new and quick start application template with Go Modules support
    • Removed command aah update and aah switch in-favor of Go modules
    • Removed .v0 version strategies in-favor of Go Modules
    • Removed --importpath argument from CLI commands
    • Introduced new face of import path name aahframe.work
  • Enhanced in-home routing implementation using Radix-tree algorithm - One of the notable feature is “Coexistence of static path segment and path parameter segment”. #160, documentation
  • Configurable Signal for Hot-Reload on non-dev environment profiles and publishes Application event OnConfigHotReload #218, documentation
  • Added optional catch-all route support in the router, disabled by default #212, documentation
  • Organized the auto-generated files under directory <app-base-dir>/app/generated #199
  • Improved HTML minify library - now does inline CSS and JS minify too aahframe.work/minify/html
  • Overall code, performance and documentation improvements along with Go Modules capability

Bug Fixes

  • Fixed - Access log: static files get logged always (twice) #219
  • Fixed - Hot reload does not detect changes #215

Migration Guide

aah aims to make the process of upgrading application to the latest release version as easy & convenient as possible. It just few steps away-

Note: Since v0.12.0 aah requires >= go1.11.

Step 1: Install latest aah CLI

$ curl https://aahframework.org/install-cli | bash
#	OR
$ wget -qO- https://aahframework.org/install-cli | bash

Step 2: Run migration command

Basically it does the migration of application codebase and view files. Go to aah application base directory and run-

# *nix systems and Windows (Cygwin, Cmder and ConEmu)
$ env GO111MODULE=on aah migrate code

# Windows
$ set GO111MODULE=on
$ aah migrate code

Step 3: Learn how to use latest aah binary

In v0.12.x aah binary become more CLI friendly and POSIX flags support, refer to Application Binary