diff --git a/doc/cmd-run.rst b/doc/cmd-run.rst index f6293ce9..b6159704 100644 --- a/doc/cmd-run.rst +++ b/doc/cmd-run.rst @@ -42,17 +42,29 @@ dodo file ---------- By default all commands are relative to ``dodo.py`` in the current folder. -You can specify a different *dodo* file containing task with the flag ``-f``. +You can specify a different *dodo* file containing tasks with the ``-f`` flag. This flag is valid for all sub-commands. +.. option:: -f FILE, --file FILE + + Specify the dodo file (default: ``dodo.py``) + .. code-block:: console $ doit -f release.py -*doit* can seek for the ``dodo.py`` file on parent folders if the option -``--seek-file`` is specified. +*doit* can seek for the ``dodo.py`` file in parent folders if the +``--seek-file`` option is specified. + +.. option:: --seek-file + + Seek for dodo file in parent directories + +.. note:: + The ``--seek-file`` option can also be set via the :envvar:`DOIT_SEEK_FILE` + environment variable. as an executable file diff --git a/doc/configuration.rst b/doc/configuration.rst index 1a2f3b14..f8ac6737 100644 --- a/doc/configuration.rst +++ b/doc/configuration.rst @@ -108,6 +108,8 @@ the task name under `tool.doit.tasks`: duration = 12 +.. _doit.cfg: + doit.cfg -------- @@ -115,7 +117,7 @@ doit.cfg (see `configparser `_). Note: key/value entries can be separated only by the equal sign `=`. -If a file name `doit.cfg` is present in the current working directory, +If a file name :file:`doit.cfg` is present in the current working directory, it is processed. It supports 4 kind of sections: - a `GLOBAL` section diff --git a/doc/dependencies.rst b/doc/dependencies.rst index 6d28f88b..235cba51 100644 --- a/doc/dependencies.rst +++ b/doc/dependencies.rst @@ -397,6 +397,12 @@ the calculation of dependencies to another task. The task calculating dependencies must have a python-action returning a dictionary with `file_dep`, `task_dep`, `uptodate` or another `calc_dep`. +.. warning:: + The returned values must be JSON-encodable since `doit` uses + :ref:`saved values ` to pass the result of the calculation task. + For example, returning ``pathlib.Path`` objects in ``file_dep`` will cause failures. + Convert such objects to strings before returning them. + .. note:: An alternative way (and often easier) to have task attributes that rely on other tasks execution is to use :ref:`delayed tasks `. diff --git a/doc/related.rst b/doc/related.rst index 2a006595..c6ba487d 100644 --- a/doc/related.rst +++ b/doc/related.rst @@ -8,7 +8,24 @@ Related Projects ================ -Build tools & task runners: +doit extensions & plugins +-------------------------- + +Backend & Reporting Extensions +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + + - `doit-redis `_ - Redis backend for doit + - `doit-report `_ - Custom reporters for doit + +Task Creation Helpers +^^^^^^^^^^^^^^^^^^^^^ + + - `doit-api `_ - Explicit API with IDE autocompletion and documentation for easier task creation + - `letsdoit `_ - Custom task definition framework + + +Build tools & task runners +--------------------------- - `make `_ - `just `_ - command runner (no dependency tracking) diff --git a/doc/task-creation.rst b/doc/task-creation.rst index 971ca692..795ef917 100644 --- a/doc/task-creation.rst +++ b/doc/task-creation.rst @@ -117,8 +117,9 @@ callable from any object that contains this attribute. .. literalinclude:: samples/custom_task_def.py -The `project letsdoit `_ -has some real-world implementations. +The projects `letsdoit `_ +and `doit-api `_ +have some real-world implementations. For simple examples to help you create your own check this `blog post `_.