<NME> FEATURES.md
<BEF> ## About Features

Please read the [Feature Flag Guide](https://guides.emberjs.com/release/configuring-ember/feature-flags/)
for a detailed explanation.

## Feature Flags

* `ember-libraries-isregistered`

  Add `isRegistered` to `Ember.libraries`. This convenience method checks whether
  a library is registered with Ember or not.

* `ember-improved-instrumentation`

  Adds additional instrumentation to Ember:

  - `interaction.<event-name>` for events handled by a component.
  - `interaction.ember-action` for closure actions.
  - `interaction.link-to` for link-to execution.

* `ember-testing-resume-test`

  Introduces the `resumeTest` testing helper to complement the `pauseTest` helper.

  Added in [#4760](https://github.com/emberjs/ember.js/pull/4760)

* `ember-routing-consistent-resources`

  Adds `.index`, `.loading`, and `.error` sub-routes for resources created
  even if no callback was provided.

  For example:

  ```javascript
    App.Router.map(function() {
      this.resource("home");
    });
  ```

  Prior to this feature `home.index` route would not be created for the above resource.

  Added in [#4251](https://github.com/emberjs/ember.js/pull/4251)

* `ember-metal-is-present`

  Adds `Ember.isPresent` as the inverse of `Ember.isBlank`. This convenience

<MSG> [FEATURE ember-routing-consistent-resources] Revert feature.

As discussed in the Core Team F2F (2014-07-20).

<DFF> @@ -59,23 +59,6 @@ for a detailed explanation.
 
   Added in [#4760](https://github.com/emberjs/ember.js/pull/4760)
 
-* `ember-routing-consistent-resources`
-
-  Adds `.index`, `.loading`, and `.error` sub-routes for resources created
-  even if no callback was provided.
-
-  For example:
-
-  ```javascript
-    App.Router.map(function() {
-      this.resource("home");
-    });
-  ```
-
-  Prior to this feature `home.index` route would not be created for the above resource.
-
-  Added in [#4251](https://github.com/emberjs/ember.js/pull/4251)
-
 * `ember-metal-is-present`
 
   Adds `Ember.isPresent` as the inverse of `Ember.isBlank`. This convenience

{'commit': 'diff --git a/FEATURES.md b/FEATURES.md\nindex 6f5d41bbd..4cceaa2e5 100644\n--- a/FEATURES.md\n+++ b/FEATURES.md\n@@ -59,23 +59,6 @@ for a detailed explanation.\n \n   Added in [#4760](https://github.com/emberjs/ember.js/pull/4760)\n \n-* `ember-routing-consistent-resources`\n-\n-  Adds `.index`, `.loading`, and `.error` sub-routes for resources created\n-  even if no callback was provided.\n-\n-  For example:\n-\n-  ```javascript\n-    App.Router.map(function() {\n-      this.resource("home");\n-    });\n-  ```\n-\n-  Prior to this feature `home.index` route would not be created for the above resource.\n-\n-  Added in [#4251](https://github.com/emberjs/ember.js/pull/4251)\n-\n * `ember-metal-is-present`\n \n   Adds `Ember.isPresent` as the inverse of `Ember.isBlank`. This convenience\ndiff --git a/features.json b/features.json\nindex cc25b8285..c66ef2e6e 100644\n--- a/features.json\n+++ b/features.json\n@@ -7,7 +7,6 @@\n     "ember-routing-add-model-option": true,\n     "ember-routing-linkto-target-attribute": null,\n     "ember-routing-will-change-hooks": null,\n-    "ember-routing-consistent-resources": true,\n     "ember-routing-multi-current-when": null,\n     "ember-routing-auto-location-uses-replace-state-for-history": null,\n     "event-dispatcher-can-disable-event-manager": null,\ndiff --git a/packages/ember-application/tests/system/logging_test.js b/packages/ember-application/tests/system/logging_test.js\nindex b9a382c19..7b3ac2b23 100644\n--- a/packages/ember-application/tests/system/logging_test.js\n+++ b/packages/ember-application/tests/system/logging_test.js\n@@ -86,11 +86,7 @@ test("log class generation if logging enabled", function() {\n   run(App, \'advanceReadiness\');\n \n   visit(\'/posts\').then(function() {\n-    if (Ember.FEATURES.isEnabled(\'ember-routing-consistent-resources\')) {\n-      equal(Ember.keys(logs).length, 8, \'expected logs\');\n-    } else {\n-      equal(Ember.keys(logs).length, 6, \'expected logs\');\n-    }\n+    equal(Ember.keys(logs).length, 6, \'expected logs\');\n   });\n });\n \ndiff --git a/packages/ember-routing/lib/system/dsl.js b/packages/ember-routing/lib/system/dsl.js\nindex 2074d0676..7a93000ab 100644\n--- a/packages/ember-routing/lib/system/dsl.js\n+++ b/packages/ember-routing/lib/system/dsl.js\n@@ -28,14 +28,7 @@ DSL.prototype = {\n       options.path = "/" + name;\n     }\n \n-    var createSubRoutes = false;\n-    if (Ember.FEATURES.isEnabled(\'ember-routing-consistent-resources\')) {\n-      createSubRoutes = true;\n-    } else {\n-      if (callback) { createSubRoutes = true; }\n-    }\n-\n-    if (createSubRoutes) {\n+    if (callback) {\n       var dsl = new DSL(name);\n       route(dsl, \'loading\');\n       route(dsl, \'error\', { path: "/_unused_dummy_error_path_route_" + name + "/:error" });\ndiff --git a/packages/ember/tests/routing/basic_test.js b/packages/ember/tests/routing/basic_test.js\nindex 17249e08e..ef9527cde 100644\n--- a/packages/ember/tests/routing/basic_test.js\n+++ b/packages/ember/tests/routing/basic_test.js\n@@ -1107,12 +1107,7 @@ asyncTest("Nested callbacks are not exited when moving to siblings", function()\n       equal(rootModel, 1, "The root model was called again");\n \n       deepEqual(router.location.path, \'/specials/1\');\n-\n-      if (Ember.FEATURES.isEnabled(\'ember-routing-consistent-resources\')) {\n-        equal(currentPath, \'root.special.index\');\n-      } else {\n-        equal(currentPath, \'root.special\');\n-      }\n+      equal(currentPath, \'root.special\');\n \n       QUnit.start();\n     });\n@@ -3217,29 +3212,6 @@ if (Ember.FEATURES.isEnabled("ember-routing-will-change-hooks")) {\n   });\n }\n \n-if (Ember.FEATURES.isEnabled(\'ember-routing-consistent-resources\')) {\n-  test("specifying no callback to `this.resources` still generates ", function() {\n-    expect(1);\n-\n-    Router.map(function() {\n-      this.resource("home");\n-    });\n-\n-    var currentPath;\n-\n-    App.ApplicationController = Ember.Controller.extend({\n-      currentPathDidChange: Ember.observer(\'currentPath\', function() {\n-        currentPath = get(this, \'currentPath\');\n-      })\n-    });\n-\n-    bootApplication();\n-\n-    Ember.run(router, \'transitionTo\', \'home\');\n-    equal(currentPath, \'home.index\');\n-  });\n-}\n-\n test("Errors in transitionTo within redirect hook are logged", function() {\n   expect(2);\n   var actual = [];\n', 'commit_subject': '[FEATURE ember-routing-consistent-resources] Revert feature.', 'repo_name': 'emberjs/ember.js', 'committer': {'name': 'Robert Jackson', 'email': '4737d94bfb8b7940843864fc531cf5f068ebec04@me.com', 'time_sec': '1405910457', 'tz_offset': '-240', 'date': {'seconds': '1405910457'}}, 'commit_tree': '371dd44f2350d08403c589cc9f5d0024ff68cad6', 'commit_message': '[FEATURE ember-routing-consistent-resources] Revert feature.\n\nAs discussed in the Core Team F2F (2014-07-20).\n', 'language_name': 'TypeScript', 'license': 'mit', 'hunks': '@@ -59,23 +59,6 @@ for a detailed explanation.\n \n   Added in [#4760](https://github.com/emberjs/ember.js/pull/4760)\n \n-* `ember-routing-consistent-resources`\n-\n-  Adds `.index`, `.loading`, and `.error` sub-routes for resources created\n-  even if no callback was provided.\n-\n-  For example:\n-\n-  ```javascript\n-    App.Router.map(function() {\n-      this.resource("home");\n-    });\n-  ```\n-\n-  Prior to this feature `home.index` route would not be created for the above resource.\n-\n-  Added in [#4251](https://github.com/emberjs/ember.js/pull/4251)\n-\n * `ember-metal-is-present`\n \n   Adds `Ember.isPresent` as the inverse of `Ember.isBlank`. This convenience\n', 'addition_count': 0, 'deletion_count': 17, 'src_file': 'a/FEATURES.md', 'tgt_file': 'b/FEATURES.md', 'file_extension': '.md', 'before_file': '## About Features\n\nPlease read the [Feature Flag Guide](https://guides.emberjs.com/release/configuring-ember/feature-flags/)\nfor a detailed explanation.\n\n## Feature Flags\n\n* `ember-libraries-isregistered`\n\n  Add `isRegistered` to `Ember.libraries`. This convenience method checks whether\n  a library is registered with Ember or not.\n\n* `ember-improved-instrumentation`\n\n  Adds additional instrumentation to Ember:\n\n  - `interaction.<event-name>` for events handled by a component.\n  - `interaction.ember-action` for closure actions.\n  - `interaction.link-to` for link-to execution.\n\n* `ember-testing-resume-test`\n\n  Introduces the `resumeTest` testing helper to complement the `pauseTest` helper.\n\n  Added in [#4760](https://github.com/emberjs/ember.js/pull/4760)\n\n* `ember-routing-consistent-resources`\n\n  Adds `.index`, `.loading`, and `.error` sub-routes for resources created\n  even if no callback was provided.\n\n  For example:\n\n  ```javascript\n    App.Router.map(function() {\n      this.resource("home");\n    });\n  ```\n\n  Prior to this feature `home.index` route would not be created for the above resource.\n\n  Added in [#4251](https://github.com/emberjs/ember.js/pull/4251)\n\n* `ember-metal-is-present`\n\n  Adds `Ember.isPresent` as the inverse of `Ember.isBlank`. This convenience\n', 'message': '[FEATURE ember-routing-consistent-resources] Revert feature.\n\nAs discussed in the Core Team F2F (2014-07-20).\n', 'author_name': 'Robert Jackson', 'lang': 'md'}