diff --git a/Lib/test/test_cmd_line.py b/Lib/test/test_cmd_line.py
index 75f7d00..7f95fcc 100644
--- a/Lib/test/test_cmd_line.py
+++ b/Lib/test/test_cmd_line.py
@@ -532,26 +532,26 @@
         out = self.run_xdev("-c", code)
         self.assertEqual(out,
                          "ignore::BytesWarning "
-                         "always::ResourceWarning "
+                         "default::ResourceWarning "
                          "default::Warning")
 
         out = self.run_xdev("-b", "-c", code)
         self.assertEqual(out,
                          "default::BytesWarning "
-                         "always::ResourceWarning "
+                         "default::ResourceWarning "
                          "default::Warning")
 
         out = self.run_xdev("-bb", "-c", code)
         self.assertEqual(out,
                          "error::BytesWarning "
-                         "always::ResourceWarning "
+                         "default::ResourceWarning "
                          "default::Warning")
 
         out = self.run_xdev("-Werror", "-c", code)
         self.assertEqual(out,
                          "error::Warning "
                          "ignore::BytesWarning "
-                         "always::ResourceWarning "
+                         "default::ResourceWarning "
                          "default::Warning")
 
         try:
@@ -573,19 +573,6 @@
             out = self.run_xdev("-c", code)
             self.assertEqual(out, "True")
 
-        # Make sure that ResourceWarning emitted twice at the same line number
-        # is logged twice
-        filename = support.TESTFN
-        self.addCleanup(support.unlink, filename)
-        with open(filename, "w", encoding="utf8") as fp:
-            print("def func(): open(__file__)", file=fp)
-            print("func()", file=fp)
-            print("func()", file=fp)
-            fp.flush()
-
-        out = self.run_xdev(filename)
-        self.assertEqual(out.count(':1: ResourceWarning: '), 2, out)
-
 
 class IgnoreEnvironmentTest(unittest.TestCase):
 
diff --git a/Lib/warnings.py b/Lib/warnings.py
index 5b62569..c4bb22e 100644
--- a/Lib/warnings.py
+++ b/Lib/warnings.py
@@ -540,7 +540,7 @@
 
     # resource usage warnings are enabled by default in pydebug mode
     if dev_mode or py_debug:
-        resource_action = "always"
+        resource_action = "default"
     else:
         resource_action = "ignore"
     simplefilter(resource_action, category=ResourceWarning, append=1)
diff --git a/Misc/NEWS.d/next/Library/2017-11-27-11-29-34.bpo-32089.6ydDYv.rst b/Misc/NEWS.d/next/Library/2017-11-27-11-29-34.bpo-32089.6ydDYv.rst
new file mode 100644
index 0000000..02d8753
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2017-11-27-11-29-34.bpo-32089.6ydDYv.rst
@@ -0,0 +1,3 @@
+warnings: In development (-X dev) and debug mode (pydebug build), use the
+"default" action for ResourceWarning, rather than the "always" action, in
+the default warnings filters.
diff --git a/Python/_warnings.c b/Python/_warnings.c
index 086a70d..27f5b81 100644
--- a/Python/_warnings.c
+++ b/Python/_warnings.c
@@ -13,7 +13,6 @@
 _Py_IDENTIFIER(stderr);
 _Py_IDENTIFIER(ignore);
 _Py_IDENTIFIER(error);
-_Py_IDENTIFIER(always);
 _Py_static_string(PyId_default, "default");
 
 static int
@@ -1208,9 +1207,9 @@
     _Py_Identifier *resource_action;
     /* resource usage warnings are enabled by default in pydebug mode */
 #ifdef Py_DEBUG
-    resource_action = &PyId_always;
+    resource_action = &PyId_default;
 #else
-    resource_action = (dev_mode ? &PyId_always : &PyId_ignore);
+    resource_action = (dev_mode ? &PyId_default: &PyId_ignore);
 #endif
     PyList_SET_ITEM(filters, pos++, create_filter(PyExc_ResourceWarning,
                     resource_action));
