0.1.0 / 2017-06-09
* Initial release
0.3.0 / 2017-06-17
* Implementation of ruleset, accept raw json and compile to rule predicates
0.3.1 / 2017-06-17
* Fix bug in testproc rule that caused it to fire when `test_proc` was not present on the config item/group
0.3.2 / 2017-06-17
* Fix bug TraverseSearcher and fix an issue where Monitor predicate not registered
0.4.0 / 2017-06-17
* Update rule definition schema, rewrite rules to match
* Update rule messaging descriptions and examples
0.5.0 / 2017-07-11
* Update rule definition schema and compilation to use a typed object, rewrite rules to match
0.6.0 / 2017-08-11
* Incorporate json schema for validation
* (breaking) `linter.lint()` now takes a `LinterOpts` object instead of positional params
* `linter.lint(yaml, linter.rules.all)` should change to `linter.lint(yaml, {rules: linter.rules.all})`
* Add `linter.lintDefault()` which will lint with the recommended schema and rules
* Tweaks to `replicated-lint` bin command in package.json
0.6.1 / 2017-08-14
* Port config item `type` validation https:
* Port config item `when` validation https:
* Remove `received` field from linter results.
0.6.2 / 2017-08-14
* Port custom monitor `target` validation https:
0.6.3 / 2017-08-14
* Port host requirements docker version validation https://github.com/replicatedhq/libyaml/blob/master/validate.go
0.6.4 / 2017-08-14
* Validate `kubernetes.requirements.server_version` is a valid semver range
* Validate `host_requirements.replicated_version` is a valid semver range
0.6.5 / 2017-08-14
* Validate `admin_commands.component` and `admin_commands.container` match a valid component/container
* Fix a bug in `monitors.cpuacct` and `monitors.memory` validation where the linter would fail with no components, even if both `cpuacct` and `memacct` are empty
0.6.6 / 2017-08-15
* Allow `support.timeout` to be either a `number` or `string`
* Add a path to schema error messaging
0.6.7 / 2017-08-18
* Messaging tweak for `test_proc` rule
* Schema support for inline component/container in `admin_commands` and `support`
* Skip validating container references in non-native scheduler sources in `admin_commands` and `support`
0.6.8 / 2017-08-18
* Validate that `components.*.containers.*.publish_events.*.subscriptions` all reference valid component/containers
0.6.9 / 2017-08-18
* Validate that a component's cluster `strategy` is one of `autoscale` or `random`
0.6.10 / 2017-08-18
* Ensure no conflicting volume options are specified
0.6.11 / 2017-08-18
* Ensure host_path and container_path are absolute paths
* Validate custom monitor colors
0.6.12 / 2017-08-21
* Ensure `graphite.port` and `statsd.port` are valid tcp ports
* Ensure `custom_metrics.*.retention` is a valid graphite retention specification
0.6.13 / 2017-08-21
* Ensure `custom_metrics.*.aggregation` is a valid graphite aggregation specification
0.6.14 / 2017-08-21
* Ensure `components.*.cluster` is either a boolean or a `{{repl ... }}` template
0.6.15 / 2017-08-21
* Ensure `monitors.custom.*.display.label_scale` is a valid label scale expression
0.6.16 / 2017-08-21
* Ensure `components.*.containers.*.content_trust.public_key_fingerprint` is a valid RFC4716 fingerprint
* Ensure `images.*.content_trust.public_key_fingerprint` is a valid RFC4716 fingerprint
0.6.17 / 2017-08-21
* Ensure `admin_commands.*.alias` is a valid shell alias
* Ensure `properties.shell_alias` is a valid shell alias
* Ensure `properties.logo_url` is a http or https url
* Ensure a container's `volumes_from` section references existing containers
* Ensure `name` entries are unique across all containers
0.6.18 / 2017-08-21
* Schema fixes for swarm-specific options
* Fix regex for config item type field
0.6.19 / 2017-08-21
* Fix schema definition to allow boolean literals for
`components.*.containers.*.volumes.*.is_ephemeral` and `.is_excluded_from_backup`
0.6.20 / 2017-08-29
* Fix a bug that would allow URLs with spaces in the hostname
0.6.21 / 2017-08-29
* Add new `test_proc` command `ldap_config_validate`
0.6.22 / 2017-09-05
* Fix an issue where `when` clauses on config groups weren't being validated
0.6.23 / 2017-09-15
* Tweak `mesg-yaml-empty` description, update docs generation.
0.6.24 / 2017-09-19
* Ensure minimum Replicated API version of 2.8.0 when specifying a public port
* Ensure swarm secrets have a name and value and that any labels have keys that are not the empty string
0.6.25 /2017-09-19
* Schema fix for backup.hidden, now can be boolean or string. Formerly could only be string.
0.6.26 /2017-09-20
* components.cluster_host_count and components.containers.cluster_instance_count uint properties are now checked to make sure they are actually uints
* Schema fix for cluster_instance_count and cluster_host_count, all of their uint properties can now be strings or numbers
0.6.27 /2017-09-19
* Check for swarm secrets label keys not "" now checks within an object, not an array
0.6.28 /2017-09-19
* Schema fix so that ports[].public_port and ports[].private_port can be ints or strings, instead of only strings
0.6.29 /2017-09-19
* Check that custom_requirements have unique ids
0.6.30 /2017-09-20
* Validate `volumes_from` usage
0.6.31 /2017-09-21
* Validate storage and memory sizes in host_requirements and kubernetes
0.6.32 /2017-09-25
* Accept and validate a greater variety of admin command formats
* Added a new predicate, `Not`
0.6.33 /2017-09-25
* Verifies that if a public port is set, only one instance can run per cluster host
0.6.34 /2017-09-25
* Added value checking to `components.*.containers.*.volumes.*.is_ephemeral` and `.is_excluded_from_backup`
* Now can only be booleans literals, boolean strings, or templates
0.6.35 /2017-09-29
* Fix `volumes_from` subscription validation
0.6.36 /2017-10-04
* Ensure swarm configs have a name and value and that any labels have keys that are not the empty string
0.6.37 /2017-10-05
* Deprecating `components.*.containers.*.env_vars.*.static_val` in favor of `value`
0.6.38 /2017-10-12
* Add packaging for replicated-lint npm-installable executable
0.7.0 /2017-10-12
* Fix some bugs with npm executable packaging
* Add support for extra rulesets in CLI
0.7.1 /2017-10-12
* Updates and cleanup for package.json
0.7.2 /2017-10-12
* Add command line flags to filter by issue type, default is to only expose `error` issues
0.7.3 /2017-10-12
* Fix a bug in log-level filtering,
0.8.0 /2017-10-16
* Add flag `--reporter` to control CLI output type
* add `junit` and `console` to available reporters
* Refactor schema testing and docs generation
0.8.1 /2017-10-16
* Add extra_hosts to schema defintion
0.8.2 /2017-10-16
* Allow `container.version` to be specified as either `number` or `string`, previously was only `string`
0.8.3 /2017-10-28
* Add option `--excludeDefaults`, `-x` to exclude the default rules+schema and only use rulesets specificed in `--extraRules`
* Don't process.exit in reporters
* Some minor refactoring around `validate` command and reporters
0.8.4 /2017-10-30
* Add `schema` and a few extra utility functions to package exports
0.9.0 /2017-11-16
* Allow `--extraRules` to be passed as YAML (JSON rule sets will work the same)
* Add `replicated-lint verify-rules` command to verify the examples in custom rule sets
* Update `replicated-lint docs gen` to allow generating documentation for custom rule sets via `--extraRules` and `--excludeDefaults`
* Add projects/ folder, which will be a home for rule definitions for validation of non-replicated YAML documents
* Add a minimal projects/kubernetes/ example
0.9.1 /2017-12-14
* Add `container.shm_size`, a string
0.9.2 /2017-12-14
* `container.shm_size` should be an unsigned integer
0.9.3 /2017-12-14
* Added `container.shm_size` tests and docs
0.9.4 /2018-01-15
* CLI allows passing `--schema` to set the path to an alternate JSONSchema document for validation
* Add `projects/replicated-entitlements` with a passing and failing example
0.9.5 /2018-01-15
* Fix bug in interface definition for `Test`
0.9.6 /2018-01-15
* Add projects/replicated-supportbundle
0.10.0 /2018-01-22
* Fix a bug where objects with a `.` in property paths would not have `positions` returned when errors were found
* Expand Support bundle schema with examples and full property set
0.10.1 /2018-01-30
* Finalize support bundle schema
0.10.2 /2018-01-30
* Changes to Support Bundle custom rules
0.10.3 /2018-02-02
* Allow default monitors on swarm scheduler
0.10.4 /2018-02-21
* `components.*.containers.*.env_vars.*.is_excluded_from_support` can now be a boolean or a string
0.10.5 /2018-02-21
* Add `swarm/volumes` to `backup`
0.10.6 /2018-02-21
* `components.*.containers.*.env_vars.*.is_excluded_from_support` must be a boolean literal, boolean string, or template
0.10.7 /2018-04-05
* Add `lifecycle.generate.use_defaults` to Support Bundle custom rules
0.10.8 /2018-04-06
* Update .ts files to use updated Support Bundle rules
0.11.0 /2018-05-01
* Add project for Replicated Ship product
* Add `AllOf` predicate to default registry
0.11.1 /2018-05-01
* Fix bug in `spec-require-render` rule `projects/replicated-ship`
0.11.2 /2018-05-01
* Import fix from `0.11.1`
0.11.3 /2018-05-01
* Export `replicated-ship` project in module
0.11.4 /2018-05-16
* Add info rule with additional help info for support sections
0.11.5 /2018-05-21
* Add support for github in `replicated-ship` project
0.11.6 /2018-05-23
* Fix Ship `spec-require-*-script` rules to enforce folder path structure
0.11.7 /2018-05-24
* Add support for new include_empty shared spec in support bundle project
0.11.8 /2018-05-31
* Add support for docker cp from containers identified by labels in support bundle project
0.11.9 /2018-06-06
* Add labels property to component.container
0.11.10 /2018-06-07
* Add kubernetes.logs to supportbundle schema
0.11.11 /2018-06-15
* Add strategies property to backup
0.11.12 /2018-06-15
* Add `helm` and `dockerlayer` assets to replicated-ship project
0.11.13 /2018-06-20
* Fixed `validate_json` test proc name
0.11.14 /2018-06-21
* Add label filter for stack service logs and stack service logs to support bundle schema
0.11.15 /2018-06-25
* Add Github asset validation to replicated-ship rules
* Regenerate replicated-supportbundle schema
0.12.0 /2018-06-27
* Type schema property in linter constructor to JSONSchema
* Add types to base schema
* Add typings to generated code
* Add newlines to generated files
0.12.1 /2018-07-03
* Add support for `assets.v1.helm.github` to `projects/replicated-ship`
0.12.2 /2018-07-05
* Fix bug in `assets.v1.helm.github` schema in `projects/replicated-ship`
0.12.3 /2018-07-05
* Add `kubernetes.container-cp` schema in `projects/replicated-supportbundle`
0.12.4 /2018-07-09
* Add `kubernetes.api-versions`, `kubernetes.cluster-info`, `kubernetes.resource-list` and `kubernetes.version` schemas in `projects/replicated-supportbundle`
0.12.5 /2018-07-09
* Add `assets.v1.web` schemas in `projects/replicated-ship`
0.12.6 /2018-07-09
* Remove `include_empty` examples from specs in `projects/replicated-supportbundle`
0.12.7 /2018-07-11
* Change default behavior for omitted namespace param in kubernetes specs within `projects/replicated-supportbundle`
0.12.8 /2018-07-17
* Add `lifecycle.notes` to enter note as part of upload
0.12.9 /2018-07-18
* Update `assets.v1.web` schemas in `projects/replicated-ship`
0.12.10 /2018-07-17
* Add `assets.v1.terraform` and `lifecycle.v1.terraform` to `projects/replicated-ship`
0.12.11 2018-07-18
* Core: Add `source` and `image_name` as required fields for `components.*.containers`
0.12.12 2018-07-25
* Core: Add `restore_script` property to backup and backup strategies
0.13.0 2018-07-25
* Added analyze spec to replicated-supportbundle schema
* replicated-supportbundle specs is now an alias of collect.v1
* replicated-supportbundle collect.v1.meta.labels added patternProperties
0.13.1 2018-07-25
* Analyze v1 spec
0.13.2 2018-07-31
* Add Amazon EKS asset to Ship schema
* Add 'path' property to Terraform lifecycle step in Ship schema
0.13.3 2018-08-01
* Fix bug in `rbac` pattern rule in `projects/replicated-rbac`
0.13.4 2018-08-02
* replicated-supportbundle kubernetes.resource-list allows for additional resources in Kubernetes v1.11
* replicated-supportbundle kubernetes.resource-list optional group_version argument
0.13.5 2018-08-07
* replicated-ship's amazon_elastic_kubernetes_service asset has been renamed to amazon_eks
* replicated-ship 'kubectl_apply' lifecycle step added
0.13.6 2018-08-10
* replicated-ship now supports `lifecycle.v1.config`
* replicated-ship now supports `lifecycle.v1.*.{id,requires,invalidates,description}`
0.13.7 2018-08-20
* Add `host_requirements.docker_space` and validate that it is a valid byte size
0.13.8 2018-08-21
* replicated-ship now supports the `helm_fetch` method for `helm` assets
0.13.9 2018-08-23
replicated-supportbundle selinux.notenforcing, docker.version, and raw analyzers have been added
0.13.10 2018-08-30
* replicated-ship now supports `google_gke` assets
* replicated-ship's `amazon_eks` asset has had the autoscaling_groups.group_size property changed from an int to a string, allowing templating
0.13.11 2018-08-30
* Add terms to Replicated schema defintion
0.13.12 2018-08-31
* replicated-ship's `kustomize` lifecycle step now enforces requirements for `base_path` and `dest`
0.13.13 2018-09-06
* replicated-ship's `github` asset adds two new parameters `mode` and `strip_path`
0.13.14 2018-09-06
* replicated-ship now supports `azure_aks` assets
0.13.15 2018-09-21
* identity provisioners now support `filter` parameter
0.13.16 2018-09-28
* update replicated-ship property names "kubectlApply" and "azure_aks.resource_group_name"
0.13.17 2018-09-28
* remove replicate-ship config.filters and config.test_proc properties
0.13.18 2018-10-03
* Add `stop_timeout` property to containers
0.13.19 2018-10-24
* Add `kustomizeIntro` property to `replicated-ship`
0.13.20 2018-10-24
* Add `--project` flag to `replicated-lint validate` command to pull schema+rules from another project
0.13.21 2018-10-25
* Add support for test procedure custom commands
0.13.22 2018-10-26
* Add write_once property to config item
0.14.0 2018-11-2
* update CLI `replicated-lint validate` to read in multidoc YAML. It will lint the first doc by default, but now supports a flag `--multidocIndex` to select out any document in the stream
0.14.1 2018-11-6
* Support using labels to identify containers for the docker exec command in support bundle project
0.14.2 2018-11-6
* Updates for [vulnerable dependencies](https://github.com/replicatedhq/replicated-lint/pull/158)
0.14.3 2018-11-6
* Updates for [vulnerable dependencies](https://github.com/replicatedhq/replicated-lint/pull/166)
0.14.4 2018-11-6
* Updated missing generated files.
0.14.5 2018-11-19
* Remove `test.sh` and `install.sh` recommendations for `replicated-ship` project
0.14.6 2018-11-20
* Add proxy key to ship github assets to replace source key
0.14.7 2018-12-5
* Add `when` property to `test_proc` config items
* Add `when` property to container volumes
0.14.8 2018-12-7
* Fix proxy key in ship GitHub and Helm assets
0.14.9 2018-12-14
* Handle errors that are out of range
0.14.10 2019-01-10
* Add `when` property to `terraform` lifecycle steps
0.14.11 2019-01-11
* Config group `test_proc` missing `when` property
0.14.12 2019-01-11
* Add kubernetes shared filesystem config
0.14.13 2019-01-14
* Add kubernetes shared filesystem config
0.14.14 2019-01-28
* Added test procs: cert, random, echo, publicip, tcp_port_accept, http_status_code, system
0.14.15 2019-02-01
* Linter now allows templates in the `components.containers.cluster_instance_count` sub-keys
0.14.16 2019-02-01
* Allow `enabled` flags under `identity` be boolean
0.14.17 2019-02-01
* Add 'meta.redact' to replicated-supportbundle schema
0.14.18 2019-03-13
* Add support for `lifecycle.v1.helmValues` to ship schema
* Add support for `lifecycle.v1.kustomizeIntro` to ship schema
* Add support for `lifecycle.v1.render.assets.v1` to ship schema
0.14.19 2019-03-21
* Add scheduler to be passed as a command line argument or constructor param
0.14.20 2019-04-16
* components.cluster_host_count and components.containers.cluster_instance_count uint properties now accept templates
0.15.0 2019-05-07
* Analyze v1 spec final
0.15.1 2019-05-13
* Added platform `identity.enable_reset_request` to enable the reset request feature of the provisioning api.
0.16.0 2019-06-07
* Separate analyze spec linting as a separate replicated-analyze project.
0.16.1 2019-06-07
* Revert linter import change for backwards compatibility.
0.17.0 2019-07-09
* Support bundle `lifecycle` now includes v1 prefix
0.18.0 2019-09-05
* Add kubernetes shared filesystem mount paths
0.18.1 2020-01-13
* `container.shm_size` should be an unsigned integer string
0.18.2 2020-03-09
* No longer enforce `container.cluster_instance_count.initial == 1` when `container.public_port` set
0.18.3 2020-04-22
* `host_requirements.memory` and `kubernetes.requirements.total_memory` can now be expressed in binary formats
0.18.4 2020-04-22
* Update to support-bundle schema 0.29.0
0.18.5 2020-05-05
* Added ports[].public_port_initial property for specifying a port range when cluster_instance_count > 1
0.18.6 2020-05-06
* No longer require replicated_api_version minimum for ports[].public_port and ports[].public_port_initial
0.18.7 2020-09-10
* Added `container.disable_publish_all_ports` a boolean or string
* Added `container.oom_kill_disable` a boolean or string
0.18.8 2021-01-05
* Added `container.network` a string
* Added `container.network_aliases` an array of strings
* Added `container.links` an array of strings
* Added `container.ipv4_address` an array of strings
* Added `container.ipv6_address` an array of strings
0.18.9 2021-05-18
* Added `component.log_config` and `container.log_config`
0.19.0 2022-06-03
* Upgraded Node 8 to 17, TypeScript 2 to 4.
* Upgraded dependencies to resolve known CVEs.
0.19.1 2022-06-06
* Upgraded junit-report-builder to 3.0.0.
0.19.2 2023-03-13
* Added `container.user` a string
* Added `container.readonly_rootfs` a boolean or string
0.19.3 2023-03-23
* Added `cmds.readonly_rootfs` a boolean
* Added `state.ready.readonly_rootfs` a boolean or string