Overview of relocated functions, classes and constants in EasyBuild v4.0

This page provides an alphabetical overview of relocated functions, classes and constants in EasyBuild version 4.0; see Backwards-incompatible changes in EasyBuild v4.0 for motivation and high-level information.

basestring type

Rather than using the basestring type from the Python 2 standard library directly (for example in an isinstance expression), the string_type type from the easybuild.tools.py2vs3 package should be used instead, to ensure that the code is compatible with both Python 2 and 3.

See also Compatibility with Python 2 and Python 3.

configparser module

The configparser module that is part of the Python 2 standard library (via ConfigParser) must now be imported from the easybuild.tools.py2vs3 package, to ensure that the code is compatible with both Python 2 and 3.

See also Compatibility with Python 2 and Python 3.

DEVEL_MODULE_SUFFIX constant

The DEVEL_MODULE_SUFFIX constant was relocated from easybuild.tools.module_naming_scheme to easybuild.tools.module_naming_scheme.mns.

DUMMY_TOOLCHAIN_NAME and DUMMY_TOOLCHAIN_VERSION constants

The DUMMY_TOOLCHAIN_NAME and DUMMY_TOOLCHAIN_VERSION constants were relocated from easybuild.tools.toolchain to easybuild.tools.toolchain.toolchain.

Note

Since the dummy toolchain has been deprecated and is replaced by the system toolchain (see System toolchain), you should use the is_system_toolchain function or Toolchain.is_system_toolchain method to check whether a toolchain is a dummy or system toolchain, rather than using these constants directly (or using the SYSTEM_TOOLCHAIN-* equivalents).

FrozenDictKnownKeys class

The FrozenDictKnownKeys class from vsc.utils.missing is now available from easybuild.base.frozendict.

GENERAL_CLASS constant

The GENERAL_CLASS constant was relocated from easybuild.tools.module_naming_scheme to easybuild.tools.config.

get_class_for function

The get_class_for function from vsc.utils.missing is now available from easybuild.tools.utilities.

get_subclasses function

The get_subclasses function from vsc.utils.missing is now available from easybuild.tools.utilities.

INDENT_4SPACES constant

The INDENT_4SPACES constants was relocated from easybuild.framework.easyconfig.format.format to easybuild.tools.utilities.

mk_rst_table function

The mk_rst_table function from vsc.utils.docs is now available from easybuild.tools.docs.

ModuleNamingScheme class

The ModuleNamingScheme class was relocated from easybuild.tools.module_naming_scheme to easybuild.tools.module_naming_scheme.mns.

nub function

The nub function from vsc.utils.missing is now available from easybuild.tools.utilities.

OrderedDict class

The OrderedDict class that is part of the Python 2 standard library (via collections) must now be imported from the easybuild.tools.py2vs3 package, to ensure that the code is compatible with both Python 2 and 3.

See also Compatibility with Python 2 and Python 3.

reload function

The reload function that is a built-in function of the Python 2 standard library must now be imported from the easybuild.tools.py2vs3 package, to ensure that the code is compatible with both Python 2 and 3.

See also Compatibility with Python 2 and Python 3.

shell_quote function

The shell_quote function from vsc.utils.missing is now available from easybuild.tools.utilities.

sched_getaffinity function

The sched_getaffinity function from vsc.utils.affinity is now available from easybuild.tools.systemtools.

Singleton class

The Singleton class from vsc.utils.patterns is now available from easybuild.tools.config.

StringIO class

Rather than importing the StringIO class from the StringIO module of the Python 2 standard library, it should be imported from the easybuild.tools.py2vs3 package instead, to ensure that the code is compatible with both Python 2 and 3.

See also Compatibility with Python 2 and Python 3.

subprocess.Popen function

Rather than using the subprocess.Popen function directly, the subprocess_popen_text function from the easybuild.tools.py2vs3 package should be used instead, to ensure that the code is compatible with both Python 2 and 3.

See also Compatibility with Python 2 and Python 3.

urlencode function

Rather than importing the urlencode function from the urllib module of the Python 2 standard library, it should be imported from the easybuild.tools.py2vs3 package instead, to ensure that the code is compatible with both Python 2 and 3.

See also Compatibility with Python 2 and Python 3.

urllib module

Rather than using the urllib module from the Python 2 standard library directly, the std_urllib module from the easybuild.tools.py2vs3 package should be used instead, to ensure that the code is compatible with both Python 2 and 3.

See also Compatibility with Python 2 and Python 3.

urllib2 module

Functions that were imported from the urllib2 package that is part of the Python 2 standard library must now be imported from the easybuild.tools.py2vs3 package, to ensure that the code is compatible with both Python 2 and 3.

See also Compatibility with Python 2 and Python 3.

vsc.utils.* modules

The functionality from the following vsc.utils.* modules required by EasyBuild has been ingested in the corresponding easybuild.base.* module:

  • vsc.utils.exceptions
  • vsc.utils.fancylogger
  • vsc.utils.generaloption
  • vsc.utils.optcomplete
  • vsc.utils.rest
  • vsc.utils.testing
  • vsc.utils.wrapper

See also No more required Python packages.