Skip to content

Undocument All Non-End-User Features #457

Description

@popescu-v

Description

Currently, the core.internals module is documented on the official Khiops web site. Also, in the tools module, the various entry points (which are a technical detail) kh_samples_entry_point, kh_status_entry_point and kh_download_datasets_entry_point are documented.

Questions/Ideas

  • The goal of this issue is to:
    • Unpublish the documentation of the internals module
    • Remove all the three entry points and the associated kh-* commands.
    • Remove the _called_from_shell keyword argument of the tools.download_datasets function, which is currently a leaking abstraction and would be made irrelevant by the removal of the kh-download-datasets command;
    • remove the target_directory from tools.download_datasets as api.get_runner_dir() can now be used;
    • Expose an api.get_status() function which would do what the KhiopsRunner.print_status() does, except for the printing itself, which ca be done by the user from Python.
    • Unpublish documentation for the KHIOPS_SAMPLES_DIR environment variable, which should not be needed anymore, and remove it.
    • For CI purposes, replace the kh- commands with Python scripts (included in the scripts/ repository folder), which are not packaged, but contained in the repository; they can call into the Python Core API / tools as needed, while setting e.g. the samples directory via a custom argument;
    • Update the CI workflows {api-docs,conda,pip}.yml to use the new Python scripts instead of the current kh-* commands.
  • The rationale for these changes is twofold:
    • the user-facing documentation should only contain documentation that is relevant to end-users (the docstrings of the objects in the internals module would be kept for perusal by power users though);
    • as this is a Python library, all features of the commands are / should be exposed as Python functions: thus, they can integrate the runner state as modified e.g. by the api.set_samples_dir() function (see issue Simplify Samples Directory Management #456 ); the kh-* commands cannot.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Priority/1-MediumTo do after P0Size/DaysSome days of workStatus/ReadyForDevThe issue is ready to be developed or to be investigated deeply

    Fields

    No fields configured for Documentation.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions