## Workflow v2.3.0 -> v2.4.0

### Builder v2.3.0 -> v2.4.0

#### Features

- [`e292969`](https://github.com/deis/builder/commit/e2929696cb46cb49099b666709f2f8bb92179404) *: switch to using controller-sdk-go for controller interactions (#402)

#### Fixes

- [`d340772`](https://github.com/deis/builder/commit/d340772453bcb38b7e5241818b4e7a10a7bde308) pod: log pod error status and message instead of pod struct
- [`0690f89`](https://github.com/deis/builder/commit/0690f89f5e0c3d35817610336cc1e26b878cbe77) _tests: remove out of date functional tests (#406)
- [`e791c1d`](https://github.com/deis/builder/commit/e791c1d3f066597afc5cb0370bdaf9a30107a844) gitreceive: change target name to Workflow


### Controller v2.3.1 -> v2.4.0

#### Features
- [`a7cff7e`](https://github.com/deis/controller/commit/a7cff7e92c8ad0c158708c24db66babc68d1fcb8) models: add routable flag to Config (#934)
- [`cebd736`](https://github.com/deis/controller/commit/cebd7364c929f920a6414f6d1629c9877309bdea) scheduler: add scheduler tests that do not go through normal api tests (#965)
- [`2a41942`](https://github.com/deis/controller/commit/2a41942f211849fb57b7e5e15723a2b2c97a46a4) healthcheck: Add support to create healthcheck per proctype Requires workflow-cli#160
- [`3e988ea`](https://github.com/deis/controller/commit/3e988ea55ff43c25ea6165431120affddaf7ec43) model: Add new model to store settings

#### Fixes
- [`54f0f75`](https://github.com/deis/controller/commit/54f0f75eb6f43a42aaa6f9afc2191039b22961e3) app: adjust async for better usage and to account for asyncio bug
- [`855bb59`](https://github.com/deis/controller/commit/855bb59db379dcf5b673c2b2d596662cc2d34fa9) scheduler: create application config (env secrets) outside of deploy / scale to reduce k8s thrasing
- [`996be37`](https://github.com/deis/controller/commit/996be37e07d78b2295cca2e3ba8944f31e006f15) mock: mock scheduler could not gracefully handle the concurrent deploy / scale
- [`7da5212`](https://github.com/deis/controller/commit/7da521242908154ffdc28a40655fde1b03e60fd5) run: return a 400 if command is empty (#952)
- [`c91f361`](https://github.com/deis/controller/commit/c91f361d4842a0c2964ce85a999cf781219cd3ce) passwd: raise 400 when password is not a parameter (#850)
- [`544f492`](https://github.com/deis/controller/commit/544f4925241f48b0f08fe9b5b087bfa511d67993) scheduler: in scheduler::run check if pod state is an object or a string before acing on it (#957)
- [`a4ee5a8`](https://github.com/deis/controller/commit/a4ee5a8019efa13e1e27ebe892f49ff7fbc8ec6e) health: Add healthchecks only for routable apps or proctypes
- [`37ea65c`](https://github.com/deis/controller/commit/37ea65cba01e07361ba2a45924662a5c455d9f38) Makefile: add deis namespace to make deploy (#969)
- [`7f19c48`](https://github.com/deis/controller/commit/7f19c48a9bfd6e4a00fb7dd124d89d235763a1f8) scheduler: make app un-routable (#974)
- [`6cfeba0`](https://github.com/deis/controller/commit/6cfeba03855795e08f488d3f5b08567be1c96131) scheduler: when user asks for limits beyond their allowance then error out faster (#975)
- [`7a152a6`](https://github.com/deis/controller/commit/7a152a6f3fbe2359d2a391c2ab7476e4def6a9e1) scheduler: allow Deployment "in progress" to be bypassed in case of errors or timeout (#978)
- [`bf82529`](https://github.com/deis/controller/commit/bf8252925a5f5f6864d8884f8726e466c9ba608f) registry: retry pull/push/tag 3 times - should help with slow networks and slow registries (#979)

#### Documentation
- [`cc6617e`](https://github.com/deis/controller/commit/cc6617ed52262e22f377a7e2a37ed419811a2393) README.md: add postgresql prereq

#### Maintenance
- [`e0a3f02`](https://github.com/deis/controller/commit/e0a3f027d1a6a217eb1138a89ceaf73d91171a24) requirements: Django REST Framework 3.4.3
- [`77dbf94`](https://github.com/deis/controller/commit/77dbf94c454bf44f6c5fd3d9785eaf8d394e67aa) travis: cache pip in travis runs (#944)
- [`b66948d`](https://github.com/deis/controller/commit/b66948d5dfbcfdb6adbf9da2e4ad0e4739ba4e9f) requirements: requests update to 2.11.0 (#962)
- [`6e6d257`](https://github.com/deis/controller/commit/6e6d25744f5ea3c58919c47a67d4a561b2c2fe5b) requirements: update to django-guardian 1.4.5 (#964)
- [`87a92f6`](https://github.com/deis/controller/commit/87a92f694bfa32fd1ca20be07b5b160aeab173b3) requirements: update backoff 1.3.1 (#963)
- [`c6e3eb3`](https://github.com/deis/controller/commit/c6e3eb30987b39a7584596a0f13d2cf52587cc43) migrations: create a migration for various alterations that do not touch schema (#967)
- [`a16aa8c`](https://github.com/deis/controller/commit/a16aa8c7790aea3676f392e9b4ca5d973912c7f0) requirements: Update Django REST Framework to 3.4.4 (#976)


### Database v2.2.1 -> v2.2.2

#### Maintenance
- [`022f2c5`](https://github.com/deis/postgres/commit/022f2c5496fb9488df4f5c5f782140ab136d0e30) Update the postgres version


### Dockerbuilder v2.3.0 -> v2.3.1

#### Maintenance
- [`31065a3`](https://github.com/deis/dockerbuilder/commit/31065a39ba84ddffbadaef97f52e7c8511e599f4) Dockerfile: update deis/base to 0.3.0


### Monitoring v2.2.0 -> v2.3.0

#### Features
- [`527d4dd`](https://github.com/deis/monitor/commit/527d4dd91b25332315d8601862d363b54a1a6605) dashboards: create dashboards for all deis components

#### Fixes
- [`3b15224`](https://github.com/deis/monitor/commit/3b15224c6136ceb00496afbe4fe583b8e4582ad8) ini: a stray quote was causing INI parsing to break
- [`a21e7e4`](https://github.com/deis/monitor/commit/a21e7e49f5f6db1326f5d7a2674b1610bba8bd21) start-grafana: Create dashboard directory when starting grafana

#### Documentation
- [`2548941`](https://github.com/deis/monitor/commit/2548941c3bc11526aa6c09096186b08edc6d1860) readme: Provide a configuration section in grafana readme


### Router v2.3.0 -> v2.4.0

#### Features
- [`01cf487`](https://github.com/deis/router/commit/01cf487346a0e120d18e21ecc301284e8449163f) *: Update nginx to 1.11.2
- [`571dfea`](https://github.com/deis/router/commit/571dfeacb2fbd1ee21645a1de42d18c103288ad3) router: Get the annotations from the deployment object instead of RC
- [`59e753c`](https://github.com/deis/router/commit/59e753cbafed64a2e39b40f426457cfe95331def) maintenance: Add support for maintenance mode for apps

#### Fixes
- [`1769d2d`](https://github.com/deis/router/commit/1769d2dcbe6a51ad735484cea1b9164b373725dc) model: Improve regex for SSL ciphers
- [`e085023`](https://github.com/deis/router/commit/e0850238d814eedc8f33baa383b8a6a17e9f5a79) routable: Use correct label key for routable
- [`c00da10`](https://github.com/deis/router/commit/c00da102576463a1a40b4e02b1a72d3fd57f9a5f) model: Specify a default ssl cipher list

#### Documentation
- [`7cbf93e`](https://github.com/deis/router/commit/7cbf93ea9e3593a811a0101042a74436c1f607b9) readme: Clarify that routable services must expose port 80

#### Maintenance
- [`541b19b`](https://github.com/deis/router/commit/541b19bbcfded5d8cce970c209533474baff994e) .gitignore: Update to ignore deis-router-deployment.tmp.yaml


### Slugbuilder v2.3.0 -> v2.3.1

#### Maintenance
- [`815d0a7`](https://github.com/deis/slugbuilder/commit/815d0a792be0c296f6d524145687bf86f3166b46) buildpacks: update heroku-buildpack-go to v44
- [`7b34cb5`](https://github.com/deis/slugbuilder/commit/7b34cb58e9e43011d52cd27517b1704fdabab923) buildpacks: update heroku-buildpack-scala to v72
- [`f647afe`](https://github.com/deis/slugbuilder/commit/f647afe86d1c9ec70129073613b692d4abb72d08) buildpacks: update php buildpack


### Workflow CLI v2.3.0 -> v2.4.0

#### Features
- [`f37432b`](https://github.com/deis/workflow-cli/commit/f37432bb3b7422bc9db510fa785fdd04fadcc26c) Jenkinsfile: send COMPONENT_REPO param to e2e job
- [`dfe19e0`](https://github.com/deis/workflow-cli/commit/dfe19e0f03fd726d9e5ef2022d562826ff0ee72c) logging: extract logging to its own package and write tests (#166)
- [`7b4c48d`](https://github.com/deis/workflow-cli/commit/7b4c48de2d63b9661c3af552661c0efe9dd39718) cmd: add deis routing
- [`37cdb52`](https://github.com/deis/workflow-cli/commit/37cdb52576f78692030d11f4357b038766763251) healthcheck: Add support for healthcheck per proctype
- [`4df89d2`](https://github.com/deis/workflow-cli/commit/4df89d2e6a36926beca68f2cc20b6a9ca4de94d7) maintenance: Add support for maintenance mode for apps
- [`7a9ebf4`](https://github.com/deis/workflow-cli/commit/7a9ebf48ab8f139e864c3e5cacab5f885e709c7d) Jenkinsfile: wipe vendor dir if bootstrap fails
- [`47def28`](https://github.com/deis/workflow-cli/commit/47def285be17a4fe8b8ffd6b758e82a9bd948e0a) Makefile: add git branch and sha information to the uploaded blob
- [`2103657`](https://github.com/deis/workflow-cli/commit/2103657bde803f2d03011d5f0b0c3497da5e2b42) *: allow configuration flag (#169)

#### Fixes
- [`6745e75`](https://github.com/deis/workflow-cli/commit/6745e755148aeba5ddc464b0a2b7cecc65e44af0) version: move all version logic to git (#167)
- [`4f2d342`](https://github.com/deis/workflow-cli/commit/4f2d34227541dd8dcec5144192320ced65ba905c) healthcheck: Don't fail if there is no healthcheck for a proctype
- [`ba9d5d7`](https://github.com/deis/workflow-cli/commit/ba9d5d70396581636cf930a7b1d3eb4e330cf731) CI: don't cache latest binaries (#175)
- [`36df5d4`](https://github.com/deis/workflow-cli/commit/36df5d45b87b7c1c4c92abad5355bfbad57f8961) CI: delete artifacts when cleaning up (#179)


### Workflow Documentation v2.3.0 -> v2.4.0

#### Features
- [`af7cf12`](https://github.com/deis/workflow/commit/af7cf12cc5765e638dc3ee0ce02523e42abf21b0) healthcheck: Add docs for applying healthchecks per proctype
- [`d84c0a1`](https://github.com/deis/workflow/commit/d84c0a1f45afd886cb760bf913c0608cc62cef1e) troubleshooting: add troubleshooting applications
- [`7477ae7`](https://github.com/deis/workflow/commit/7477ae7526760deff9ec36b19d2a633a94356a25) docs: add documentation for limits
- [`4ea0719`](https://github.com/deis/workflow/commit/4ea07191debf5f8af1a2823d33ff9de7835c11b7) CLI: document new behavior of  variable (#440)
- [`c41f71e`](https://github.com/deis/workflow/commit/c41f71e0b2765a2bfa185edc08987db7c1c0a5d6) maintenance: Add docs for maintenance mode support

#### Fixes
- [`fde9a81`](https://github.com/deis/workflow/commit/fde9a810c58b4483583a743e0a701238209bcb3e) installing: Add configuring registry docs to doc tree
- [`4480831`](https://github.com/deis/workflow/commit/4480831fdeb19fa70e6280c55507154973fa2d3c) applications: use admonition styling
- [`d097233`](https://github.com/deis/workflow/commit/d0972339c7145ed4d6fbfa205288e77c051b82eb) user: supply a kubectl patch function to simplify registration mode setting

#### Documentation
- [`fb9db75`](https://github.com/deis/workflow/commit/fb9db752259ead7414f537c8dcc78dc81bb020eb) applications: add deis routing docs
- [`12fd1d7`](https://github.com/deis/workflow/commit/12fd1d72392166cfaa0e37dce647d0a3582b285e) registration: update registration for 2.3 behavior (#448)
- [`8d271ca`](https://github.com/deis/workflow/commit/8d271caf9a7c1ada468c9f0f0b970cbd68e1f8b1) upgrading: expand and clarify workflow upgrade instructions (#447)
- [`5fdf2da`](https://github.com/deis/workflow/commit/5fdf2daa225c49331e1a42655ab2e4808439d6ab) storage: cleanup storage docs (#454)

#### Maintenance
- [`88167c5`](https://github.com/deis/workflow/commit/88167c5ffae37764c513795a9cfe73949fdf1c02) roadmap: update roadmap for 2.x (#417)
- [`8befc2a`](https://github.com/deis/workflow/commit/8befc2a4691dd19e9528c3b3df96e7e916792547) docs: update docs to reflect fixed issue (#455)


### Workflow E2E Tests v2.3.0 -> v2.4.0

#### Features
- [`6f76da5`](https://github.com/deis/workflow-e2e/commit/6f76da5232ade274ab6ebfb570e96b477ccc718a) procfile: create a build with a procfile
- [`94a884a`](https://github.com/deis/workflow-e2e/commit/94a884a9ed4c7350f24d69fb3f128fe74fd4538e) skip: make procfile test pending
- [`09c1c33`](https://github.com/deis/workflow-e2e/commit/09c1c3306a1f7668bb378891f3669a4ca0c75b89) tests: add deis routing e2e tests (#304)

#### Fixes
- [`7e0d1cc`](https://github.com/deis/workflow-e2e/commit/7e0d1ccabe7a1734f9b3abba07a6bace88b67f98) CLI: log cli version after installing to check revision (#284)
- [`47a6907`](https://github.com/deis/workflow-e2e/commit/47a6907ae1da37b9ec30f6e54a5b6f9d71be1b6d) deployments: proc type regex changed due to Deployments
- [`b22274e`](https://github.com/deis/workflow-e2e/commit/b22274e29b7019f7a0414d1b9ded52657f161d7b) limits: ask for 500m instead of 1024 cores in the limits CPU test
- [`2cd045a`](https://github.com/deis/workflow-e2e/commit/2cd045a20b0644031a84436e2d793d0283150675) Makefile: add retrying to workflow CLI download
- [`a56611c`](https://github.com/deis/workflow-e2e/commit/a56611c1c8e51f8e67a976fd7b84937bdf369de6) docker-test-integration: show curl errors (#311)
- [`807d110`](https://github.com/deis/workflow-e2e/commit/807d1109c58f47cfbe255f20157db6d85aab4e80) auth: update to new missing config error message (#301)

#### Maintenance
- [`ce08b1c`](https://github.com/deis/workflow-e2e/commit/ce08b1cf179ed3bf241d613192e09a0f319dd416) travis: Remove .travis.yml


### Workflow Manager v2.3.1 -> v2.4.0

#### Fixes
- [`7d859f5`](https://github.com/deis/workflow-manager/commit/7d859f582e4f0d3c049072352902638e58133157) feature(data): add deployments, daemonsets to cluster data (#95)
- [`31fe3bc`](https://github.com/deis/workflow-manager/commit/31fe3bccbdde134a185752e53380330d16053f7f) cluster_id is vulnerable to race condition when called concurrently (#94)
- [`2582640`](https://github.com/deis/workflow-manager/commit/2582640c2c13c5f5f9b860d62d2b7c3bc7f4826b) bug(k8s): unintentional variable shadowing (#92)
