Browse Source

Centralize `user_config_dir()` decision making (#4755)

modifyDataloader
Glenn Jocher GitHub 3 years ago
parent
commit
cd810c8286
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 7 deletions
  1. +9
    -5
      utils/general.py
  2. +1
    -2
      utils/plots.py

+ 9
- 5
utils/general.py View File

return max(last_list, key=os.path.getctime) if last_list else '' return max(last_list, key=os.path.getctime) if last_list else ''




def user_config_dir(dir='Ultralytics'):
# Return path of user configuration directory (make if necessary)
cfg = {'Windows': 'AppData/Roaming', 'Linux': '.config', 'Darwin': 'Library/Application Support'} # 3 config dirs
path = Path.home() / cfg.get(platform.system(), '') # OS-specific config dir
path = (path if is_writeable(path) else Path('/tmp')) / dir # GCP and AWS lambda fix, only /tmp is writeable
def user_config_dir(dir='Ultralytics', env_var='YOLOV5_CONFIG_DIR'):
# Return path of user configuration directory. Prefer environment variable if exists. Make dir if required.
env = os.getenv(env_var)
if env:
path = Path(env) # use environment variable
else:
cfg = {'Windows': 'AppData/Roaming', 'Linux': '.config', 'Darwin': 'Library/Application Support'} # 3 OS dirs
path = Path.home() / cfg.get(platform.system(), '') # OS-specific config dir
path = (path if is_writeable(path) else Path('/tmp')) / dir # GCP and AWS lambda fix, only /tmp is writeable
path.mkdir(exist_ok=True) # make if required path.mkdir(exist_ok=True) # make if required
return path return path



+ 1
- 2
utils/plots.py View File

""" """


import math import math
import os
from copy import copy from copy import copy
from pathlib import Path from pathlib import Path


from utils.metrics import fitness from utils.metrics import fitness


# Settings # Settings
CONFIG_DIR = Path(os.getenv('YOLOV5_CONFIG_DIR') or user_config_dir()) # Ultralytics settings dir
CONFIG_DIR = user_config_dir() # Ultralytics settings dir
matplotlib.rc('font', **{'size': 11}) matplotlib.rc('font', **{'size': 11})
matplotlib.use('Agg') # for writing to files only matplotlib.use('Agg') # for writing to files only



Loading…
Cancel
Save