PythonTests

mill.pythonlib.PythonModule.PythonTests
trait PythonTests extends PythonModule

Attributes

Graph
Supertypes
trait PythonModule
trait TaskModule
trait PipModule
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited classlikes

trait PythonTests extends PythonModule

Attributes

Inherited from:
PythonModule
Supertypes
trait PythonModule
trait TaskModule
trait PipModule
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
@Scaladoc(value = "/**\n * Miscellaneous machinery around traversing & querying the build hierarchy,\n * that should not be needed by normal users of Mill\n */")
object moduleInternal extends Internal

Miscellaneous machinery around traversing & querying the build hierarchy, that should not be needed by normal users of Mill

Miscellaneous machinery around traversing & querying the build hierarchy, that should not be needed by normal users of Mill

Attributes

Inherited from:
Module
Supertypes
class Internal
class Object
trait Matchable
class Any

Value members

Concrete methods

override def moduleDeps: Seq[PythonModule]

The direct dependencies of this module. This is meant to be overridden to add dependencies.

The direct dependencies of this module. This is meant to be overridden to add dependencies.

Attributes

Definition Classes

Inherited methods

@Scaladoc(value = "/** Bundles the project into a single PEX executable(bundle.pex). */")
def bundle: Target[PathRef]

Bundles the project into a single PEX executable(bundle.pex).

Bundles the project into a single PEX executable(bundle.pex).

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Command-line options to pass as bundle configuration defined by the user.\n */")
def bundleOptions: Target[Seq[String]]

Command-line options to pass as bundle configuration defined by the user.

Command-line options to pass as bundle configuration defined by the user.

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Opens up a Python console with your module and all dependencies present,\n * for you to test and operate your code interactively.\n */")
def console(): Command[Unit]

Opens up a Python console with your module and all dependencies present, for you to test and operate your code interactively.

Opens up a Python console with your module and all dependencies present, for you to test and operate your code interactively.

Attributes

Inherited from:
PythonModule
override def defaultCommandName(): String

The name of the default command, which will be automatically executed if the module name is provided at the Mill command line.

The name of the default command, which will be automatically executed if the module name is provided at the Mill command line.

Attributes

Definition Classes
PythonModule -> TaskModule
Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Any environment variables you want to pass to the forked Env\n */")
def forkEnv: Target[Map[String, String]]

Any environment variables you want to pass to the forked Env

Any environment variables you want to pass to the forked Env

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Folders containing source files that are generated rather than\n * handwritten; these files can be generated in this target itself,\n * or can refer to files generated from other targets\n */")
def generatedSources: Target[Seq[PathRef]]

Folders containing source files that are generated rather than handwritten; these files can be generated in this target itself, or can refer to files generated from other targets

Folders containing source files that are generated rather than handwritten; these files can be generated in this target itself, or can refer to files generated from other targets

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Python interpreter found on the host system. This will be used to create a\n * new virtual environment, which will be used by all tasks in this module.\n *\n * If you\'d like to use a specific python version, override this task to\n * point to a specific python executable.\n *\n * Examples:\n *\n * ```\n * // use whatever python version is installed on the host system (default)\n * def hostPythonCommand = T{ \"python3\" }\n *\n * // use a specific minor release\n * def hostPythonCommand = T{ \"python3.12\" }\n *\n * // use a specific executable file\n * def hostPythonCommand = T{ \"/usr/bin/python3\" }\n * ```\n */")
def hostPythonCommand: Target[String]

Python interpreter found on the host system. This will be used to create a new virtual environment, which will be used by all tasks in this module.

Python interpreter found on the host system. This will be used to create a new virtual environment, which will be used by all tasks in this module.

If you'd like to use a specific python version, override this task to point to a specific python executable.

Examples:

// use whatever python version is installed on the host system (default)
def hostPythonCommand = T{ "python3" }

// use a specific minor release
def hostPythonCommand = T{ "python3.12" }

// use a specific executable file
def hostPythonCommand = T{ "/usr/bin/python3" }

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Base URLs of the Python Package Indexes to search for packages. Defaults to\n * https://pypi.org/simple.\n *\n * These should point to repositories compliant with PEP 503 (the simple\n * repository API) or local directories laid out in the same format.\n */")
def indexes: Target[Seq[String]]

Base URLs of the Python Package Indexes to search for packages. Defaults to https://pypi.org/simple.

Base URLs of the Python Package Indexes to search for packages. Defaults to https://pypi.org/simple.

These should point to repositories compliant with PEP 503 (the simple repository API) or local directories laid out in the same format.

Attributes

Inherited from:
PipModule
@Scaladoc(value = "/**\n * The directories used to construct the PYTHONPATH for this module, used for\n * execution, excluding upstream modules.\n *\n * This includes source directories, resources and other unmanaged\n * directories.\n */")
def localPythonPath: Target[Seq[PathRef]]

The directories used to construct the PYTHONPATH for this module, used for execution, excluding upstream modules.

The directories used to construct the PYTHONPATH for this module, used for execution, excluding upstream modules.

This includes source directories, resources and other unmanaged directories.

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * The python script to run. This file may not exist if this module is only a library.\n */")
def mainScript: Target[PathRef]

The python script to run. This file may not exist if this module is only a library.

The python script to run. This file may not exist if this module is only a library.

Attributes

Inherited from:
PythonModule
def moduleCtx: ModuleCtx

Attributes

Inherited from:
BaseClass
def moduleDir: Path

Attributes

Inherited from:
Module
def moduleDirJava: Path

Attributes

Inherited from:
Module
def moduleDirectChildren: Seq[Module]

Attributes

Inherited from:
Module
def moduleSegments: Segments

Attributes

Inherited from:
Module
@Scaladoc(value = "/**\n * Arguments to be passed to `pip install` when preparing the environment.\n *\n * This task is called by `pythonExe`. It serves as an escape hatch, should\n * you need to override it for some reason. Normally, you should not need to\n * edit this task directly. Instead, prefer editing the other tasks of this\n * module which influence how the arguments are created.\n *\n * @see [[indexes]]\n * @see [[pythonDeps]]\n * @see [[unmanagedWheels]]\n * @see [[pythonToolDeps]]\n */")

Arguments to be passed to pip install when preparing the environment.

Arguments to be passed to pip install when preparing the environment.

This task is called by pythonExe. It serves as an escape hatch, should you need to override it for some reason. Normally, you should not need to edit this task directly. Instead, prefer editing the other tasks of this module which influence how the arguments are created.

Attributes

See also
Inherited from:
PipModule
@Scaladoc(value = "/**\n * Any python dependencies you want to add to this module. The format of each\n * dependency should be the same as used with `pip install`, or as you would\n * find in a `requirements.txt` file. E.g. `def pythonDeps =\n * Seq(\"numpy==2.1.3\")`.\n *\n * Dependencies declared here will also be required when installing this module.\n */")
def pythonDeps: Target[Seq[String]]

Any python dependencies you want to add to this module. The format of each dependency should be the same as used with pip install, or as you would find in a requirements.txt file. E.g. def pythonDeps = Seq("numpy==2.1.3").

Any python dependencies you want to add to this module. The format of each dependency should be the same as used with pip install, or as you would find in a requirements.txt file. E.g. def pythonDeps = Seq("numpy==2.1.3").

Dependencies declared here will also be required when installing this module.

Attributes

Inherited from:
PipModule
@Scaladoc(value = "/**\n * An executable python interpreter. This interpreter is set up to run in a\n * virtual environment which has been initialized to contain all libraries and\n * tools needed by this module and its dependencies.\n */")
def pythonExe: Target[PathRef]

An executable python interpreter. This interpreter is set up to run in a virtual environment which has been initialized to contain all libraries and tools needed by this module and its dependencies.

An executable python interpreter. This interpreter is set up to run in a virtual environment which has been initialized to contain all libraries and tools needed by this module and its dependencies.

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Command-line options to pass to the Python Interpreter defined by the user.\n */")
def pythonOptions: Target[Seq[String]]

Command-line options to pass to the Python Interpreter defined by the user.

Command-line options to pass to the Python Interpreter defined by the user.

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Python dependencies declared in `requirements.txt` files. This is similar\n * to `pythonDeps`, but reads dependencies from a text file, allowing you to\n * reuse requirements files from existing projects.\n *\n * @see [[pythonDeps]]\n */")
def pythonRequirementFiles: Target[Seq[PathRef]]

Python dependencies declared in requirements.txt files. This is similar to pythonDeps, but reads dependencies from a text file, allowing you to reuse requirements files from existing projects.

Python dependencies declared in requirements.txt files. This is similar to pythonDeps, but reads dependencies from a text file, allowing you to reuse requirements files from existing projects.

Attributes

See also
Inherited from:
PipModule
override def pythonToolDeps: Target[Seq[String]]

Any python dependencies for development tools you want to add to this module.

Any python dependencies for development tools you want to add to this module.

These dependencies are similar to pythonDeps, but will not be required to install this module, only to work on it. For example, type checkers, linters, and bundlers should be declared here.

Attributes

See also
Definition Classes
Inherited from:
PythonModule
@Scaladoc(value = "/**\n * The folders where the resource files for this module live.\n */")
def resources: Target[Seq[PathRef]]

The folders where the resource files for this module live.

The folders where the resource files for this module live.

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Run the main python script of this module.\n *\n * @see [[mainScript]]\n */")
def run(args: Args): Command[Unit]

Run the main python script of this module.

Run the main python script of this module.

Attributes

See also
Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Run the main python script of this module.\n *\n * @see [[mainScript]]\n */")
def runBackground(args: Args): Command[Unit]

Run the main python script of this module.

Run the main python script of this module.

Attributes

See also
Inherited from:
PythonModule
def runner: Task[Runner]

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * The folders where the source files for this mill module live.\n *\n * Python modules will be defined relative to these directories.\n */")
def sources: Target[Seq[PathRef]]

The folders where the source files for this mill module live.

The folders where the source files for this mill module live.

Python modules will be defined relative to these directories.

Attributes

Inherited from:
PythonModule
override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Module -> Any
Inherited from:
Module
@Scaladoc(value = "/**\n * Python dependencies of this module, and all other modules that this module\n * depends on, recursively.\n */")
def transitivePythonDeps: Target[Seq[String]]

Python dependencies of this module, and all other modules that this module depends on, recursively.

Python dependencies of this module, and all other modules that this module depends on, recursively.

Attributes

Inherited from:
PipModule
@Scaladoc(value = "/**\n * The transitive version of [[localPythonPath]]: this includes the\n * directories of all upstream modules as well.\n */")
def transitivePythonPath: Target[Seq[PathRef]]

The transitive version of localPythonPath: this includes the directories of all upstream modules as well.

The transitive version of localPythonPath: this includes the directories of all upstream modules as well.

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * requirements.txt of this module, and all other modules that this module\n * depends on, recursively.\n *\n * @see [[pythonRequirementFiles]]\n */")
def transitivePythonRequirementFiles: Target[Seq[PathRef]]

requirements.txt of this module, and all other modules that this module depends on, recursively.

requirements.txt of this module, and all other modules that this module depends on, recursively.

Attributes

See also
Inherited from:
PipModule
@Scaladoc(value = "/**\n * Any python wheels to install directly, for this module and all upstream modules, recursively.\n *\n * @see [[unmanagedWheels]]\n */")
def transitiveUnmanagedWheels: Target[Seq[PathRef]]

Any python wheels to install directly, for this module and all upstream modules, recursively.

Any python wheels to install directly, for this module and all upstream modules, recursively.

Attributes

See also
Inherited from:
PipModule
@Scaladoc(value = "/**\n * Run a typechecker on this module.\n */")
def typeCheck: Target[Unit]

Run a typechecker on this module.

Run a typechecker on this module.

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Additional directories to include in the PYTHONPATH directly. These paths\n * are \"unmanaged\": they\'ll be included as they are on disk.\n */")
def unmanagedPythonPath: Target[Seq[PathRef]]

Additional directories to include in the PYTHONPATH directly. These paths are "unmanaged": they'll be included as they are on disk.

Additional directories to include in the PYTHONPATH directly. These paths are "unmanaged": they'll be included as they are on disk.

Attributes

Inherited from:
PythonModule
@Scaladoc(value = "/**\n * Any python wheels to install directly.\n *\n * Note: you can also include wheels by using [direct\n * references](https://peps.python.org/pep-0440/#direct-references) in [[pythonRequirementFiles]], for\n * example `\"pip @ file:///localbuilds/pip-1.3.1-py33-none-any.whl\"`. However, if you do that then\n * changes to these files won\'t get picked up and you are on the hook for cache invalidation.\n * Therefore, if you have any wheels that you wish to install directly, it is recommended to add\n * them here.\n */")
def unmanagedWheels: Target[Seq[PathRef]]

Any python wheels to install directly.

Any python wheels to install directly.

Note: you can also include wheels by using direct references in pythonRequirementFiles, for example "pip @ file:///localbuilds/pip-1.3.1-py33-none-any.whl". However, if you do that then changes to these files won't get picked up and you are on the hook for cache invalidation. Therefore, if you have any wheels that you wish to install directly, it is recommended to add them here.

Attributes

Inherited from:
PipModule

Implicits

Inherited implicits

implicit def moduleNestedCtx: Nested

Attributes

Inherited from:
Module