Skip to content
Snippets Groups Projects
Commit e187a6ec authored by Alkaid Cheng's avatar Alkaid Cheng
Browse files

Merge branch 'dev2' into 'master'

Dev2

See merge request !48
parents 1a41daf7 3bd30e40
No related branches found
No related tags found
1 merge request!48Dev2
Pipeline #4816741 passed
......@@ -16,3 +16,4 @@ deprecated
backup/
dev/
quickstats/macros/CMSSWCore/
quickstats/resources/workspace_extensions.json
__version__ = "0.6.5.7"
__version__ = "0.6.5.9"
......@@ -58,10 +58,7 @@ def get_root_version():
return root_version
def get_workspace_extensions():
resource_path = quickstats.resource_path
extension_config_file = os.path.join(resource_path, "workspace_extensions.json")
with open(extension_config_file, "r") as file:
extension_config = json.load(file)
extension_config = get_workspace_extension_config()
extensions = extension_config['required']
if not extension_config['strict']:
# deprecated extension
......@@ -69,6 +66,15 @@ def get_workspace_extensions():
extensions.remove('FlexibleInterpVarMkII')
return extensions
def get_workspace_extension_config():
resource_path = quickstats.resource_path
extension_config_file = os.path.join(resource_path, "workspace_extensions.json")
if not os.path.exists(extension_config_file):
extension_config_file = os.path.join(resource_path, "default_workspace_extensions.json")
with open(extension_config_file, "r") as file:
extension_config = json.load(file)
return extension_config
def add_macro(path:str, name:Optional[str]=None, copy_files:bool=True, workspace_extension:bool=True):
if not os.path.isdir(path):
raise ValueError("macro path must be a directory")
......@@ -94,8 +100,7 @@ def add_macro(path:str, name:Optional[str]=None, copy_files:bool=True, workspace
if workspace_extension:
resource_path = quickstats.resource_path
extension_config_file = os.path.join(resource_path, "workspace_extensions.json")
with open(extension_config_file, "r") as file:
extension_config = json.load(file)
extension_config = get_workspace_extension_config()
if name not in extension_config['required']:
extension_config['required'].append(name)
with open(extension_config_file, "w") as file:
......@@ -105,8 +110,7 @@ def add_macro(path:str, name:Optional[str]=None, copy_files:bool=True, workspace
def remove_macro(name:str, remove_files:bool=True):
resource_path = quickstats.resource_path
extension_config_file = os.path.join(resource_path, "workspace_extensions.json")
with open(extension_config_file, "r") as file:
extension_config = json.load(file)
extension_config = get_workspace_extension_config()
if (name not in extension_config):
quickstats.__PRINT__.info(f'WARNING: Extension "{name}" not found in the workspace extension list. Skipped.')
else:
......
......@@ -32,6 +32,7 @@ setup(
long_description_content_type="text/markdown",
packages=setuptools.find_packages(),
package_data={'quickstats':['macros/*/*.cxx', 'macros/*/*.h', 'stylesheets/*', 'resources/*']},
exclude_package_data={'quickstats':['macros/CMSSWCore/*', 'resources/workspace_extensions.json']},
classifiers=[
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
......
......@@ -30,11 +30,11 @@ then
export PYTHONPATH=${DIR}:${PYTHONPATH}
elif [[ "$EnvironmentName" = "dev" ]];
then
export PATH=/afs/cern.ch/work/c/chlcheng/local/miniconda/envs/ml-base/bin:$PATH
export PATH=/afs/cern.ch/work/c/chlcheng/local/miniconda/envs/root-latest/bin:$PATH
export PATH=${DIR}/bin:${PATH}
export PYTHONPATH=${DIR}:${PYTHONPATH}
elif [[ "$EnvironmentName" = "conda" ]];
then
echo Entering default conda environment
export PATH=/afs/cern.ch/work/c/chlcheng/local/miniconda/envs/ml-base/bin:$PATH
export PATH=/afs/cern.ch/work/c/chlcheng/local/miniconda/envs/root-latest/bin:$PATH
fi
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment