28-Jun-2019 IGNITION v0.33.0

  Bug Fixes:

    - Fix regression where Ignition would panic if the guestinfo.* keys were
      missing on vmware

  Changes:

    - Create /dev aliases under /run/ignition instead of /

15-Apr-2019 IGNITION v0.32.0

  Features:

    - Add support for http(s) proxies in config v2.4.0-experimental
    - Add `metal` provider with a no-op config fetcher
    - Ignition supports using the kernel command line option
      `ignition.config.url` in addition to `coreos.config.url`

  Bug Fixes:

    - Relabel /etc/sub{uid,gid} when adding users with SELinux enabled
    - Add Append() function back to config/vX_Y/ packages

20-Feb-2019 IGNITION v0.31.0

  Security Fixes:

    - Log hashes of fetched configs instead of the full configs

  Bug Fixes:

    - Fix uid/gid lookup by name when creating files, directories, and links on
      filesystems that are not the root filesystem

  Test Changes:

    - Fix concurrency panic when running blackbox tests

14-Dec-2018 IGNITION v0.30.0

  Features:

    - Parallelize filesystem creation

  Changes:

    - Increase default config fetch timeout to 2 minutes

  Test Changes:

    - Add -list option to list blackbox tests
    - Skip backward compatibility tests with -test.short

06-Dec-2018 IGNITION v0.29.1

  Bug Fixes:

    - When writing files, directories, or links, do not follow symlinks if they
      are the last path element

30-Nov-2018 IGNITION v0.29.0

  Features:

    - Add support for ?versionId on s3:// URLs

  Changes:

    - Mark the 2.3.0 config spec as stable
    - No longer accept configs with version 2.3.0-experimental
    - Create new 2.4.0-experimental config spec from 2.3.0

  Bug Fixes:

    - Don't allow HTTPS connections to block on system entropy pool
    - Relabel /var/home and /var/roothome when SELinux is enabled
    - Fix race where files were relabeled after systemd-sysctl.service
    - Do not run udevadm settle after the disks stage if the disks stage did
      nothing
    - Allow writing relative symlinks
    - Resolve absolute symlinks relative to specified filesystem instead of the
      initramfs root
    - Report status to Packet as "running" instead of "succeeded"

  Test Changes:

    - Fix race with umount when running blackbox tests

22-Aug-2018 IGNITION v0.28.0

  Features:

    - Refactor blackbox tests to allow testing disks with 4k sectors

  Bug Fixes:

    - Correctly detect disks with 4k sectors when scanning existing partitions
    - Fix race between HTTP backoff tests
    - Set the minimum config versions in tests to the actual minimum required
    - Relabel /root when SELinux relabeling is enabled

09-Aug-2018 IGNITION v0.27.0

  Features:

    - Ignition is now built as a Position Independent Executable (PIE)
    - Blackbox tests now run against all spec versions (within the same major
      version) greater than their minimum version
    - Ignition now reports its status when running on Packet
    - Add a compile-time flag to enable SELinux file relabeling after boot

  Bug Fixes:

    - Directories specified in both base and appended configs are always
      created with the permissions specified in the appended config
    - Call `chdir()` after `chroot()` to silence static checkers

11-June-2018 IGNITION v0.26.0

  Features:

    - Support partition matching, specifying that a partition should not 
      exist, and recreating existing partitions
    - Fail blackbox tests when Ignition encounters critical-level logs

  Bug Fixes:

    - Fix an issue in timeout logic causing http(s) requests to sometimes fail
    - Do not log non-critical errors with CRITICAL log level

22-May-2018 IGNITION v0.25.1

  Bug Fixes:

    - Fix an issue in timeout logic causing http(s) requests to sometimes fail

22-May-2018 IGNITION v0.24.1

  Bug Fixes:

    - Fix an issue in timeout logic causing http(s) requests to sometimes fail

17-May-2018 IGNITION v0.25.0

  Features:

     - Blackbox tests can now be run in parallel

  Changes:

     - Remove Oracle Cloud Infrastructure support

  Bug Fixes:

     - No longer leave a stray file when appending to an existing file
     - Fix multiple blackbox test validation errors
     - Fix v1 config parsing to return ErrUnknownVersion if version is
       unrecognized

06-Mar-2018 IGNITION v0.24.0

  Features

    - Warn when adding and enabling a systemd unit and there is no "Install"
      section in the unit contents
    - Add highlights to reports generated by "Validate" functions on config
      structs

  Changes

    - Move a helper validation function to the "config/validate" package
    - Move unit validation helpers to "config/shared/validations"
    - Add common error types to "config/shared/errors", refactor "config/v*" to
      use these errors

12-Mar-2018 IGNITION v0.23.0

  Changes

    - Latest experimental package has been moved from config/types to
      config/v2_3_experimental.
    - Each config package's Parse function will now transparently handle any
      configs of a lesser version than itself (e.g. config/v2_2 will handle a
      2.0.0 config).
    - Validation in config/v1 reworked to use config/validate.
    - Common error types from the config package moved to config/errors.

09-Feb-2018 IGNITION v0.22.0

  Changes

    - Mark the 2.2.0 config spec as stable
    - No longer accept configs with version 2.2.0-experimental
    - Create new 2.3.0-experimental config spec from 2.2.0

26-Jan-2018 IGNITION v0.21.0

  Features

    - Add support for networkd drop-ins
    - Add new program, ignition-validate, for validating Ignition configs
    - Add "overwrite" field to "files", "directories", and "links" sections for
      deleting preexisting items at the node's path
    - Add "options" field to "raid" section for specifying arbitrary mdadm
      options
    - Add "append" field to "files" section for appending to preexisting files
    - Add support for specifying additional certificate authorities to use when
      fetching objects over HTTPS

  Changes

    - Validate that partition labels don't contain colons, as sgdisk will
      silently truncate the label
    - Remove "-validate" flag from Ignition that was introduced in v0.20.0
    - Warn when the mode for a file or directory is unset
    - Log retries of HTTP fetches at info loglevel so messages appear on console

  Bug Fixes

    - Fix issue where unspecified fields in an appended config could "unset"
      fields specified in a config earlier in the chain
    - Use timeouts specified in a config when fetching other configs referenced
      by it

12-Jan-2018 IGNITION v0.20.1

  Changes

    - Add support for fetching S3 objects from non-default AWS partitions when
      running in one such partition

13-Dec-2017 IGNITION v0.20.0

  Features

    - Add validate flag for validating Ignition configs without running any
      stages
    - Add support for reading user configs from initramfs

  Changes

    - Move update-ssh-keys from dependency into internal library
    - Move constants such as paths for invoked binaries into dedicated package
      to allow for easy overriding at link time
    - Read base and default configs from initramfs instead of hardcoding them
    - Use the golang DNS resolver instead of the default glibc DNS resolver

22-Sep-2017 IGNITION v0.19.0

  Features

    - Add support for CloudStack network metadata
    - Add blackbox tests for TFTP URLs
    - Remove dependency on kpartx for blackbox tests

  Changes

    - Stop adding extra quotes around GECOS field when creating users

  Bug Fixes

    - Fix regression in validation logic causing inaccurate line and column
      reporting
    - Fix regression in validation logic where JSON syntax errors were not
      reported correctly
    - Add warning if a non-existent filesystem is specified when creating links
      and directories
    - Fix udev race causing systemd units depending on the Ignition disks stage and 
      a device unit to fail when no filesystems are created
    - Fix udev race where symlinks are deleted before Ignition can create its own
      copy

08-Sep-2017 IGNITION v0.18.0

  Features

    - On VMWare allow guest variables to override values specified in the OVF
      environment
    - Add partial support for CloudStack
    - Add blackbox tests
    - Add support for Oracle OCI provider

  Changes

    - Chmod pre-existing directories to match defined permissions in config
    - Chown pre-existing links to match defined owner in config
    - Add "--homehost any" arguments to mdadm raid creation to ensure consistent
      device name under /dev/md
    - On GCE, don't bind-mount docker binary into Google Cloud SDK container
    - On GCE, remove gcutil alias

  Bug Fixes

    - Properly error out when a user or group set by name in the config cannot
      be resolved to an id
    - Fix typo in gcloud alias preventing connection to the docker daemon in
      some cases
    - Fix partition number validation where multiple partitions on a disk were
      unable to specify 0 for the next available partition number

28-Jul-2017 IGNITION v0.17.2

  Bug Fixes

    - Fix failure to create files/directories/links on correct filesystem
    - Fix failure to force filesystem creation when legacy force flag was set
    - Prevent VFAT filesystem creation from unconditionally overwriting existing
      filesystem
    - Fix deprecation warning on enable field in OEM systemd units
    - Fix failure where hard link targets would be on incorrect filesystem,
      causing creation to fail
    - Fix incorrect filesystem UUID check when deciding whether to reuse
      existing filesystem, causing Ignition to fail

05-Jul-2017 IGNITION v0.17.1

  Bug Fixes

    - Fix failure when user data was not provided on EC2 and GCE
    - Fix failure to fetch user data on packet.net

30-Jun-2017 IGNITION v0.17.0

  Features

    - Add support for S3 fetching and IAM role credential use in EC2
    - Add enabled flag to services to allow disabling services
    - Add new vagrant-virtualbox oem

  Changes

    - Mark 2.1.0 as stable
    - No longer accept 2.1.0-experimental configs
    - Create new 2.2.0-experimental spec from 2.1.0

  Bug Fixes

    - Mask user-configdrive.service and user-configvirtfs.service on brightbox
      and openstack to prevent cloudinit from running a second time
    - Use value given in root flag everywhere, instead of hard coding /sysroot

16-Jun-2017 IGNITION v0.16.0

  Experimental (2.1.0-experimental)

    - Fix TFTP URL validation
    - Fix nil pointer dereference when uid or gid for a file is unspecified
    - Add support for VFAT filesystem creation
    - Fix raid device validation

  Changes

    - Validate length of filesystem labels
    - Remove all OEM etcd v0 drop-in units
    - Remove xendom0 OEM

  Features

    - Add support for VMware's OVF environment
    - Add support for VirtualBox OEM

23-May-2017 IGNITION v0.15.0

  Experimental (2.1.0-experimental)

    - Define the Ignition Config schema in a JSON Schema file. Generate golang
      structs from this file
    - Add partition GUID to the filesystem object, create or modify the
      partition as appropriate
    - Add support for swap filesystems
    - Add support for links, both symbolic and hard
    - Deprecate the user level create object, add relevant fields directly to
      the user object
    - Add support for referencing users and groups by name when creating files,
      directories, and links
    - Deprecate the filesystem level create object, add relevant fields directly
      to the filesystem object
    - Add support for reusing existing filesystems, toggled via the new
      `wipeFilesystem` field in the filesystem object
    - Add filesystem UUID and label to the filesystem object
    - Correctly handle timeouts, instead of ignoring timeout settings in the
      Ignition config

  Bug Fixes

    - Fix file path validation on Windows
    - On Brightbox correctly fetch the config, instead of failing with a noop
    - Fix a race with udev events which could cause filesystem creation to fail

  Changes

    - Modify existing users, instead of attempting to create them

  Features

    - Support for TFTP URLs

13-Mar-2017 IGNITION v0.14.0

  Changes

    - Update the services for the Azure OEM
    - Update the services for the BrightBox OEM
    - Update the services for the EC2 OEM
    - Update the services for the OpenStack OEM
    - Update the services for the Packet OEM
    - Update the services for the VMware OEM

01-Mar-2017 IGNITION v0.13.0

  Bug Fixes

    - Read from both the config-drive and metadata service when using the
      OpenStack provider
    - Properly reports errors encountered while creating files
    - Fix GCE gcloud alias to properly invoke the container

  Features

    - Add support for experimental features via a newer config spec
    - Allow file provider's config path to be overridden
    - Perform basic syntactic validation on the contents of systemd units

  Experimental (2.1.0-experimental)

    - Add ability to explicitly create directories
    - Add configuration for HTTP-related timeouts

14-Dec-2016 IGNITION v0.12.1

  Bug Fixes

    - Enable coreos-metadata-sshkeys on Packet
    - Assert validity of data URLs during config validation

29-Nov-2016 IGNITION v0.12.0

  Features

    - Allow kernel command-line parameter to override OEM config

07-Oct-2016 IGNITION v0.11.2

  Bug Fixes

    - Correctly set the partition typecode

  Changes

    - Update the services for the GCE OEM

20-Sep-2016 IGNITION v0.11.1

  Bug Fixes

    - Fix potential deadlock when waiting for multiple disks

07-Sep-2016 IGNITION v0.11.0

  Features

    - Add support for DigitalOcean
    - Add experimental support for OpenStack

26-Aug-2016 IGNITION v0.10.1

  Bug Fixes

    - Fix handling of oem:// URLs
    - Use stable symlinks when operating on devices
    - Retry failed requests when fetching Packet userdata
    - Log the raw configurations instead of the parsed result

23-Aug-2016 IGNITION v0.10.0

  Features

    - Add support for QEMU Firmware Configuration Device

15-Aug-2016 IGNITION v0.9.2

  Bug Fixes

    - Do not retry HTTP requests that result in non-5xx status codes

11-Aug-2016 IGNITION v0.9.1

  Bug Fixes

    - Properly validate data URLs

11-Aug-2016 IGNITION v0.9.0

  Features

    - Add detailed configuration validation

  Bug Fixes

    - Add retry to all HTTP requests
    - Fix potential panic when parsing certain URLs

26-Jul-2016 IGNITION v0.8.0

  Features

    - Add support for Packet

13-Jul-2016 IGNITION v0.7.1

  Bug Fixes

    - Interpret files without a URL to be empty instead of invalid
    - HTTP fetches time out while waiting for response header instead of body
    - Stream remote assets to disk instead of loading them into memory

  Changes

    - Improve configuration validation

15-Jun-2016 IGNITION v0.7.0

  Features

    - Allow HTTPS URLs

  Bug Fixes

    - Don't overwrite existing data when formatting ext4 unless force is set
    - Ensure service unit in /etc doesn't exist before masking
    - Capture and log stdout of subprocesses

  Changes

    - Drop YAML tags from the config package

18-May-2016 IGNITION v0.6.0

  Features

    - All URL schemes (currently http, oem, and data) are now supported
      everywhere a URL can be provided
    - Add base OEM and default user configurations for GCE

04-May-2016 IGNITION v0.5.0

  Features

    - Add support for GCE

  Bug Fixes

    - Write files after users and home directories are created

  Changes

    - Strip support for EC2 SSH keys (these are handled by coreos-metadata now)
    - Add OEM-specific base configs and execute even if user config is empty

05-Apr-2016 IGNITION v0.4.0

  Features

    - Update the config spec to v2.0.0 (see the migration guide for more info)
      - v1 configs will be automatically translated to v2.0.0
    - Add HTTP "User-Agent" and "Accept" headers to all requests

  Changes

    - Use Go's vendor directory for all dependencies
    - Split source into a public "config" package and "internal"

25-Mar-2016 IGNITION v0.3.3

  Bug Fixes

    - Fix compilation errors when building for ARM
    - Properly fetch configs from EC2

17-Mar-2016 IGNITION v0.3.2

  Bug Fixes

    - Properly decode VMware guest variables before parsing config

  Changes

    - Move config structures from config package to config/types

02-Mar-2016 IGNITION v0.3.1

  Bug Fixes

    - Allow building on non-AMD64 architectures

  Changes

    - Major refactoring of the internal processing of OEMs and providers

24-Feb-2016 IGNITION v0.3.0

  Features

    - Add support for VMware

13-Jan-2016 IGNITION v0.2.6

  Features

    - Improve validation of storage.filesystems options

  Bug Fixes

    - Properly zap GPT tables when they are partially valid

06-Jan-2016 IGNITION v0.2.5

  Bug Fixes

    - Recognize and ignore gzipped cloud-configs

19-Nov-2015 IGNITION v0.2.4

  Bug Fixes

    - Correctly escape device unit names

17-Nov-2015 IGNITION v0.2.3

  Features

    - Provide logging to pinpoint JSON errors in invalid configs

  Bug Fixes

    - Ensure that /mnt/oem exists before mounting
    - Remove /sysroot/ prefix from alternate config path

20-Oct-2015 IGNITION v0.2.2

  Bug Fixes

    - Mount the oem partition for oem:// schemes when needed

15-Oct-2015 IGNITION v0.2.1

  Bug Fixes

    - Allow empty CustomData on Azure

29-Sep-2015 IGNITION v0.2.0

  Features

    - Added support for Azure
    - Added support for formatting partitions as xfs

  Bug Fixes

    - Removed online timeout for EC2

09-Sep-2015 IGNITION v0.1.6

  Features

    - --fetchtimeout becomes --online-timeout
    - --online-timeout of 0 now represents infinity
    - Added recognition of "interoute" OEM

  Documentation

    - Examples have been removed and supported platforms added
    - Various minor cleanups

  Bug Fixes

    - Ensure added SSH keys are newline terminated

  Build System Changes

    - Fix gofmt invocation from test script to fail when appropriate

28-Aug-2015 IGNITION v0.1.5

  Bug Fixes

    - Disable EC2 provider for now

27-Aug-2015 IGNITION v0.1.4

  Features

    - Add support for oem:// scheme config urls

  Documentation

    - Added guides
    - Updated config specification

  Bug Fixes

    - Add DefaultDependencies=false to WaitOnDevices() transient unit
    - Updated JSON configuration keys to match style

  Build System Changes

    - Added script for tagging releases

11-Aug-2015 IGNITION v0.1.3

  Features

    - Add support for ssh keys on EC2
    - Log version at runtime

  Bug Fixes

    - Log ssh keys as they are added
    - Various small cleanups

  Build System Changes

    - Derive version from git describe at build time
    - Use bash build and test scripts instead of make

22-Jul-2015 IGNITION v0.1.2

  Bug Fixes

    - Fix validation of drop-in names
    - Properly handle a lack of userdata on EC2

22-Jul-2015 IGNITION v0.1.1

  Bug Fixes

    - Ignore empty configs
    - Ignore unsupported CoreOS OEMs
    - Panic on incorrect OEM flag configurations

14-Jul-2015 IGNITION v0.1.0

  Features

    - Initial release of Ignition!
    - Support for disk partitioning, partition formatting, writing files,
      RAID, systemd units, networkd units, users, and groups.
    - Supports reading the config from a remote URL (via
      config.coreos.url) or from the Amazon EC2 metadata service.
