Skip to main content

Simple Entry Point PipeLines (seppl). Python library for parsing pipeline components with their own options.

seppl takes a very light-weight approach to avoid encroaching too much on your code. If you want to, you can add some compatibility checks between the pipeline components with some additional mixins. However, the execution of the pipeline (and potentially moving data between components) is left to you and your code.

Usage and examples can be found here:

https://github.com/waikato-datamining/seppl

Changelog

0.1.2 (2024-02-22)

  • added methods escape_args and unescape_args (and corresponding command-line tools seppl-escape and seppl-unescape) for escaping/unescaping unicode characters in command-lines to make them copyable across ssh sessions

0.1.1 (2024-02-07)

  • check_compatibility method now also checks whether generated class is subclass of accepted classes, to allow for broader accepts() methods

  • gcd method now creates a copy of the integer ratio list before processing it

0.1.0 (2024-02-05)

  • added basic support for meta-data: MetaDataHandler, get_metadata, add_metadata

  • added support for splitting sequences using supplied (int) split ratios

  • added session support: Session, SessionHandler

  • added I/O super classes: Reader, Writer, StreamWriter, BatchWriter, Filter, MultiFilter

  • added support for executing I/O pipelines: Reader, [Filter…], [Writer]

0.0.11 (2023-11-27)

  • the DEFAULT placeholder in the environment variable listing the modules now gets expanded to the default modules, making it easier to specify modules in derived projects

  • added excluded_modules and excluded_env_modules to Registry class initializer to allow user to specify modules (explicit list or list from env variable) to be excluded from being registered; useful when outputting help for derived modules that shouldn’t output all the base plugins as well.

0.0.10 (2023-11-15)

  • the registry now inspects modules when environment modules are present even when it already found plugins (eg default ones)

0.0.9 (2023-11-15)

  • the registry now inspects modules when custom modules were supplied even when it already found plugins (eg default ones)

0.0.8 (2023-11-10)

  • suppressing help output for unknown args now

0.0.7 (2023-11-09)

  • Plugin.parse_args now returns any unparsed arguments that were found

  • the args_to_objects method now raises an Exception by default when unknown arguments are encountered for a plugin (can be controlled with the allow_unknown_args parameter)

0.0.6 (2023-10-11)

  • enforcement of uniqueness is now checking whether the class names differ before raising an exception.

0.0.5 (2023-10-10)

  • added OutputProducer and InputConsumer mixins that can be use for checking the compatibility between pipeline components using the check_compatibility function.

0.0.4 (2023-10-09)

  • added support for dynamic mode which only requires listing the superclass of a plugin and the module in which to look for these plugins (slower, but more convenient)

0.0.3 (2023-10-05)

  • added generate_entry_points helper method to easily generate the entry_points section for plugins, rather than manually maintaining it

  • added generate_help and generate_plugin_usage methods for generating documentation for plugins

0.0.2 (2023-10-04)

0.0.1 (2023-09-28)

  • initial release

Release files for seppl 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for seppl 0.1.2
File Size Uploaded
seppl-0.1.2.tar.gz 22.1 kB Details

Release files / seppl-0.1.2.tar.gz

Download URL seppl-0.1.2.tar.gz
Size 22.1 kB
Tags Source
SHA-256 checksum
How to use checksums
c037d26df8173f52376001524c8842a5024ae42a9b932bb64acf20abcbb5b9d9
BLAKE2b-256 checksum
How to use checksums
11d1fec938c6ba2e3281141ab43ef43047cb926676b34dca9eba3da34aa578b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.10

Release history Release notifications | RSS feed

0.3.1

1 release file

0.3.0

1 release file

0.2.21

1 release file

0.2.20

1 release file

0.2.19

1 release file

0.2.18

1 release file

0.2.17

1 release file

0.2.16

1 release file

0.2.15

1 release file

0.2.14

1 release file

0.2.13

1 release file

0.2.12

1 release file

0.2.11

1 release file

0.2.10

1 release file

0.2.9

1 release file

0.2.8

1 release file

0.2.7

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.3

1 release file

This release

0.1.2 This release

1 release file

0.1.1

1 release file

0.1.0

1 release file

0.0.11

1 release file

0.0.10

1 release file

0.0.9

1 release file

0.0.8

1 release file

0.0.7

1 release file

0.0.6

1 release file

0.0.5

1 release file

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page