From 9fdf326a5f6f7e10594dd6205cfc8e0425fb3e67 Mon Sep 17 00:00:00 2001
From: Kasper Timm Hansen <kaspth@gmail.com>
Date: Thu, 23 Feb 2017 18:47:23 +0100
Subject: Yank the intricate immediately-exiting editor recognition.

Most editors support a wait flag of some kind which prevents their
process from exiting until the file or window is closed.

Prefer people to assign that themselves than us mucking around
with File mtimes or other such things.

Example of an editor config:

```
export EDITOR="atom --wait"
```
---
 railties/lib/rails/commands/secrets/secrets_command.rb | 18 ++----------------
 1 file changed, 2 insertions(+), 16 deletions(-)

(limited to 'railties/lib')

diff --git a/railties/lib/rails/commands/secrets/secrets_command.rb b/railties/lib/rails/commands/secrets/secrets_command.rb
index 05e0c228e8..3ba8c0c85b 100644
--- a/railties/lib/rails/commands/secrets/secrets_command.rb
+++ b/railties/lib/rails/commands/secrets/secrets_command.rb
@@ -21,10 +21,8 @@ module Rails
         require_application_and_environment!
 
         Rails::Secrets.read_for_editing do |tmp_path|
-          watch tmp_path do
-            puts "Waiting for secrets file to be saved. Abort with Ctrl-C."
-            system("\$EDITOR #{tmp_path}")
-          end
+          puts "Waiting for secrets file to be saved. Abort with Ctrl-C."
+          system("\$EDITOR #{tmp_path}")
         end
 
         puts "New secrets encrypted and saved."
@@ -33,18 +31,6 @@ module Rails
       rescue Rails::Secrets::MissingKeyError => error
         say error.message
       end
-
-      private
-        def watch(tmp_path)
-          mtime, start_time = File.mtime(tmp_path), Time.now
-
-          yield
-
-          editor_exits_after_open = $?.success? && (Time.now - start_time) < 1
-          if editor_exits_after_open
-            sleep 0.250 until File.mtime(tmp_path) != mtime
-          end
-        end
     end
   end
 end
-- 
cgit v1.2.3