mill.pythonlib

package mill.pythonlib

Members list

Type members

Classlikes

@Scaladoc(value = "/**\n * Code coverage via Python\'s [coverage](https://coverage.readthedocs.io/)\n * package.\n *\n * ** Note that this is a helper trait, and you are unlikely to use this\n * directly. If you\'re looking for including coverage across tests in your\n * project, please use [[CoverageTests]] instead! **\n *\n * If you do want to use this module directly, please be aware that analyzing\n * code coverage introduces \"non-linear\" changes to the execution task flow, and\n * you will need to respect the following contract:\n *\n * 1. This trait defines a location where coverage data must be saved.\n *\n * 2. You need to define a `coverageTask` which is responsible for creating\n * coverage data in the before mentioned location. How this is done is up to\n * you. As an example, the [[CoverageTests]] module modifies `pythonOptions`\n * to prepend a `-m coverage` command line argument.\n *\n * 3. This trait defines methods that will a) invoke the coverage task b) assume\n * report data exists in the predefined location c) use that data to generate\n * coverage reports.\n */")

Code coverage via Python's coverage package.

Code coverage via Python's coverage package.

** Note that this is a helper trait, and you are unlikely to use this directly. If you're looking for including coverage across tests in your project, please use CoverageTests instead! **

If you do want to use this module directly, please be aware that analyzing code coverage introduces "non-linear" changes to the execution task flow, and you will need to respect the following contract:

  1. This trait defines a location where coverage data must be saved.

  2. You need to define a coverageTask which is responsible for creating coverage data in the before mentioned location. How this is done is up to you. As an example, the CoverageTests module modifies pythonOptions to prepend a -m coverage command line argument.

  3. This trait defines methods that will a) invoke the coverage task b) assume report data exists in the predefined location c) use that data to generate coverage reports.

Attributes

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
Known subtypes
@Scaladoc(value = "/** Analyze code coverage, starting from tests. */")

Analyze code coverage, starting from tests.

Analyze code coverage, starting from tests.

Attributes

Supertypes
trait TestModule
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 * Basic tasks for preparing a python interpreter in a venv with required\n * dependencies installed.\n */")
trait PipModule extends Module

Basic tasks for preparing a python interpreter in a venv with required dependencies installed.

Basic tasks for preparing a python interpreter in a venv with required dependencies installed.

Attributes

Companion
object
Supertypes
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PythonModule
trait PythonTests
trait RuffModule
object RuffModule
trait Pytest
trait Unittest
Show all
object PipModule

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
PipModule.type
@Scaladoc(value = "/**\n * A python module which also defines how to build and publish source distributions and wheels.\n */")
trait PublishModule extends PythonModule

A python module which also defines how to build and publish source distributions and wheels.

A python module which also defines how to build and publish source distributions and wheels.

Attributes

Companion
object
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
object PublishModule

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait PythonModule extends PipModule, TaskModule

Attributes

Companion
object
Supertypes
trait TaskModule
trait PipModule
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes
trait PythonTests
trait RuffModule
object RuffModule
trait Pytest
trait Unittest
Show all
Self type
object PythonModule

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
@Scaladoc(value = "/**\n * Linting and formatting functionality provided by [ruff](https://docs.astral.sh/ruff/).\n */")
trait RuffModule extends PythonModule

Linting and formatting functionality provided by ruff.

Linting and formatting functionality provided by ruff.

Attributes

Companion
object
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
Known subtypes
object RuffModule
object RuffModule extends ExternalModule, RuffModule, TaskModule

Attributes

Companion
trait
Supertypes
trait RuffModule
trait PythonModule
trait TaskModule
trait PipModule
class ExternalModule
class BaseModule
trait BaseModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Self type
RuffModule.type
trait TestModule extends TaskModule

Attributes

Companion
object
Supertypes
trait TaskModule
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes
trait Pytest
trait Unittest
object TestModule

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
TestModule.type

Types

type License = License

Value members

Concrete fields

val Developer: Developer.type
val License: License.type