diff options
| author | Claude Paroz <claude@2xlibre.net> | 2019-08-23 10:53:36 +0200 |
|---|---|---|
| committer | Carlton Gibson <carlton.gibson@noumenal.es> | 2019-08-23 10:53:36 +0200 |
| commit | 9386586f31b8a0bccf59a1bff647cd829d4e79aa (patch) | |
| tree | f28bf4c9b8b0a1431c1b6722f9d5bb613d78040f /django | |
| parent | 7bd963332017eace00be8caf7dc1b7b304da613a (diff) | |
Replaced subprocess commands by run() wherever possible.
Diffstat (limited to 'django')
| -rw-r--r-- | django/contrib/admin/bin/compress.py | 2 | ||||
| -rw-r--r-- | django/core/management/utils.py | 9 | ||||
| -rw-r--r-- | django/db/backends/mysql/client.py | 2 | ||||
| -rw-r--r-- | django/db/backends/oracle/client.py | 2 | ||||
| -rw-r--r-- | django/db/backends/sqlite3/client.py | 2 | ||||
| -rw-r--r-- | django/utils/autoreload.py | 6 | ||||
| -rw-r--r-- | django/utils/version.py | 4 |
7 files changed, 13 insertions, 14 deletions
diff --git a/django/contrib/admin/bin/compress.py b/django/contrib/admin/bin/compress.py index d8d840f2b2..1cadc71ed7 100644 --- a/django/contrib/admin/bin/compress.py +++ b/django/contrib/admin/bin/compress.py @@ -54,7 +54,7 @@ Compiler library and Java version 6 or later.""" ) if options.verbose: sys.stdout.write("Running: %s\n" % cmd) - subprocess.call(cmd.split()) + subprocess.run(cmd.split()) else: sys.stdout.write("File %s not found. Sure it exists?\n" % to_compress) diff --git a/django/core/management/utils.py b/django/core/management/utils.py index c201684c9c..43addf8bdd 100644 --- a/django/core/management/utils.py +++ b/django/core/management/utils.py @@ -1,7 +1,7 @@ import fnmatch import os from pathlib import Path -from subprocess import PIPE, Popen +from subprocess import PIPE, run from django.apps import apps as installed_apps from django.utils.crypto import get_random_string @@ -17,13 +17,12 @@ def popen_wrapper(args, stdout_encoding='utf-8'): Return stdout output, stderr output, and OS status code. """ try: - p = Popen(args, shell=False, stdout=PIPE, stderr=PIPE, close_fds=os.name != 'nt') + p = run(args, stdout=PIPE, stderr=PIPE, close_fds=os.name != 'nt') except OSError as err: raise CommandError('Error executing %s' % args[0]) from err - output, errors = p.communicate() return ( - output.decode(stdout_encoding), - errors.decode(DEFAULT_LOCALE_ENCODING, errors='replace'), + p.stdout.decode(stdout_encoding), + p.stderr.decode(DEFAULT_LOCALE_ENCODING, errors='replace'), p.returncode ) diff --git a/django/db/backends/mysql/client.py b/django/db/backends/mysql/client.py index 224bfc3dc6..a596a650b3 100644 --- a/django/db/backends/mysql/client.py +++ b/django/db/backends/mysql/client.py @@ -45,4 +45,4 @@ class DatabaseClient(BaseDatabaseClient): def runshell(self): args = DatabaseClient.settings_to_cmd_args(self.connection.settings_dict) - subprocess.check_call(args) + subprocess.run(args, check=True) diff --git a/django/db/backends/oracle/client.py b/django/db/backends/oracle/client.py index 4c5070a207..243c018d03 100644 --- a/django/db/backends/oracle/client.py +++ b/django/db/backends/oracle/client.py @@ -14,4 +14,4 @@ class DatabaseClient(BaseDatabaseClient): wrapper_path = shutil.which(self.wrapper_name) if wrapper_path: args = [wrapper_path, *args] - subprocess.check_call(args) + subprocess.run(args, check=True) diff --git a/django/db/backends/sqlite3/client.py b/django/db/backends/sqlite3/client.py index 0c490ea587..485d540188 100644 --- a/django/db/backends/sqlite3/client.py +++ b/django/db/backends/sqlite3/client.py @@ -9,4 +9,4 @@ class DatabaseClient(BaseDatabaseClient): def runshell(self): args = [self.executable_name, self.connection.settings_dict['NAME']] - subprocess.check_call(args) + subprocess.run(args, check=True) diff --git a/django/utils/autoreload.py b/django/utils/autoreload.py index f6215d4edf..d5445e5f3f 100644 --- a/django/utils/autoreload.py +++ b/django/utils/autoreload.py @@ -227,9 +227,9 @@ def restart_with_reloader(): new_environ = {**os.environ, DJANGO_AUTORELOAD_ENV: 'true'} args = get_child_arguments() while True: - exit_code = subprocess.call(args, env=new_environ, close_fds=False) - if exit_code != 3: - return exit_code + p = subprocess.run(args, env=new_environ, close_fds=False) + if p.returncode != 3: + return p.returncode class BaseReloader: diff --git a/django/utils/version.py b/django/utils/version.py index 7d17da318f..a6f667d2b1 100644 --- a/django/utils/version.py +++ b/django/utils/version.py @@ -77,12 +77,12 @@ def get_git_changeset(): so it's sufficient for generating the development version numbers. """ repo_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) - git_log = subprocess.Popen( + git_log = subprocess.run( 'git log --pretty=format:%ct --quiet -1 HEAD', stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True, cwd=repo_dir, universal_newlines=True, ) - timestamp = git_log.communicate()[0] + timestamp = git_log.stdout try: timestamp = datetime.datetime.utcfromtimestamp(int(timestamp)) except ValueError: |
