scikit-base 0.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
docs/source/conf.py ADDED
@@ -0,0 +1,299 @@
1
+ #!/usr/bin/env python3
2
+ # -*- coding: utf-8 -*-
3
+ # copyright: skbase developers, BSD-3-Clause License (see LICENSE file)
4
+ """Configure skbase Sphinx documentation."""
5
+
6
+ # -- Path setup --------------------------------------------------------------
7
+
8
+ # If extensions (or modules to document with autodoc) are in another directory,
9
+ # add these directories to sys.path here. If the directory is relative to the
10
+ # documentation root, use os.path.abspath to make it absolute, like shown here.
11
+
12
+ import datetime
13
+ import inspect
14
+ import os
15
+ import sys
16
+
17
+ import skbase
18
+
19
+ # -- Path setup --------------------------------------------------------------
20
+
21
+ # When we build the docs on readthedocs, we build the package and want to
22
+ # use the built files in order for sphinx to be able to properly read the
23
+ # Cython files. Hence, we do not add the source code path to the system path.
24
+ env_rtd = os.environ.get("READTHEDOCS")
25
+ # Check if on Read the docs
26
+ if not env_rtd == "True":
27
+ print("Not on ReadTheDocs")
28
+ sys.path.insert(0, os.path.abspath("../.."))
29
+
30
+ # -- Project information -----------------------------------------------------
31
+
32
+ current_year = datetime.datetime.now().year
33
+ project = "skbase"
34
+ copyright = f"{current_year} (BSD-3-Clause License)"
35
+ author = "skbase Developers"
36
+
37
+
38
+ # The full version, including alpha/beta/rc tags
39
+ release = skbase.__version__
40
+
41
+ # -- General configuration ---------------------------------------------------
42
+
43
+ # Add any Sphinx extension module names here, as strings. They can be
44
+ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
45
+ # ones.
46
+ extensions = [
47
+ "sphinx.ext.autodoc",
48
+ "sphinx.ext.autosummary",
49
+ "numpydoc",
50
+ "sphinx.ext.intersphinx",
51
+ "sphinx.ext.linkcode", # link to GitHub source code via linkcode_resolve()
52
+ "nbsphinx", # integrates example notebooks
53
+ "sphinx_gallery.load_style",
54
+ "myst_parser",
55
+ "sphinx_panels",
56
+ "sphinx_issues",
57
+ "sphinx_design",
58
+ ]
59
+
60
+ myst_enable_extensions = ["colon_fence"]
61
+
62
+ # -- Internationalization ------------------------------------------------
63
+ # specifying the natural language populates some key tags
64
+ language = "en"
65
+
66
+ # Use bootstrap CSS from theme.
67
+ panels_add_bootstrap_css = False
68
+
69
+ # Add any paths that contain templates here, relative to this directory.
70
+ templates_path = ["_templates"]
71
+
72
+ # The suffix(es) of source filenames.
73
+ # You can specify multiple suffix as a list of string:
74
+ source_suffix = {
75
+ ".rst": "restructuredtext",
76
+ ".md": "markdown",
77
+ }
78
+
79
+ # The main toctree document.
80
+ master_doc = "index"
81
+
82
+ # List of patterns, relative to source directory, that match files and
83
+ # directories to ignore when looking for source files.
84
+ # This pattern also affects html_static_path and html_extra_path.
85
+ exclude_patterns = ["_build", "Thumbs.db", ".DS_Store", "**.ipynb_checkpoints"]
86
+
87
+ # add_module_names = False
88
+
89
+ # The name of the Pygments (syntax highlighting) style to use.
90
+ pygments_style = "sphinx"
91
+
92
+ # Members and inherited-members default to showing methods and attributes from
93
+ # a class or those inherited.
94
+ # Member-order orders the documentation in the order of how the members are
95
+ # defined in the source code.
96
+ autodoc_default_options = {
97
+ "members": True,
98
+ "inherited-members": True,
99
+ "member-order": "bysource",
100
+ }
101
+
102
+ # If true, '()' will be appended to :func: etc. cross-reference text.
103
+ add_function_parentheses = False
104
+
105
+ # Link to GitHub repo for github_issues extension
106
+ issues_github_path = "sktime/skbase"
107
+
108
+
109
+ def linkcode_resolve(domain, info):
110
+ """Return URL to source code corresponding.
111
+
112
+ Parameters
113
+ ----------
114
+ domain : str
115
+ info : dict
116
+
117
+ Returns
118
+ -------
119
+ url : str
120
+ """
121
+
122
+ def find_source():
123
+ # try to find the file and line number, based on code from numpy:
124
+ # https://github.com/numpy/numpy/blob/main/doc/source/conf.py#L286
125
+ obj = sys.modules[info["module"]]
126
+ for part in info["fullname"].split("."):
127
+ obj = getattr(obj, part)
128
+
129
+ fn = inspect.getsourcefile(obj)
130
+ fn = os.path.relpath(fn, start=os.path.dirname(skbase.__file__))
131
+ source, lineno = inspect.getsourcelines(obj)
132
+ return fn, lineno, lineno + len(source) - 1
133
+
134
+ if domain != "py" or not info["module"]:
135
+ return None
136
+ try:
137
+ filename = "skbase/%s#L%d-L%d" % find_source()
138
+ except Exception:
139
+ filename = info["module"].replace(".", "/") + ".py"
140
+ return f"https://github.com/sktime/skbase/blob/{version_match}/{filename}"
141
+
142
+
143
+ # -- Options for HTML output -------------------------------------------------
144
+
145
+ # The theme to use for HTML and HTML Help pages. See the documentation for
146
+ # a list of builtin themes.
147
+
148
+ html_theme = "pydata_sphinx_theme"
149
+
150
+ # Define the json_url for our version switcher.
151
+ json_url = "https://skbase.readthedocs.io/en/latest/_static/switcher.json"
152
+
153
+ # This uses code from the py-data-sphinx theme's own conf.py
154
+ # Define the version we use for matching in the version switcher.
155
+ version_match = os.environ.get("READTHEDOCS_VERSION")
156
+
157
+ # If READTHEDOCS_VERSION doesn't exist, we're not on RTD
158
+ # If it is an integer, we're in a PR build and the version isn't correct.
159
+ if not version_match or version_match.isdigit():
160
+ # For local development, infer the version to match from the package.
161
+ if "dev" in release or "rc" in release:
162
+ version_match = "latest"
163
+ # We want to keep the relative reference if we are in dev mode
164
+ # but we want the whole url if we are effectively in a released version
165
+ json_url = "_static/switcher.json"
166
+ else:
167
+ version_match = "v" + release
168
+
169
+ html_theme_options = {
170
+ "logo": {
171
+ "text": "skbase",
172
+ "alt_text": "skbase",
173
+ },
174
+ "icon_links": [
175
+ {
176
+ "name": "GitHub",
177
+ "url": "https://github.com/sktime/skbase",
178
+ "icon": "fab fa-github",
179
+ },
180
+ {
181
+ "name": "Slack",
182
+ "url": "https://join.slack.com/t/sktime-group/shared_invite/zt-1cghagwee-sqLJ~eHWGYgzWbqUX937ig", # noqa: E501
183
+ "icon": "fab fa-slack",
184
+ },
185
+ {
186
+ "name": "PyPI",
187
+ "url": "https://pypi.org/project/skbase",
188
+ "icon": "fa-solid fa-box",
189
+ },
190
+ ],
191
+ "icon_links_label": "Quick Links",
192
+ "show_nav_level": 1,
193
+ "show_prev_next": False,
194
+ "use_edit_page_button": False,
195
+ "navbar_start": ["navbar-logo", "version-switcher"],
196
+ "navbar_center": ["navbar-nav"],
197
+ "switcher": {
198
+ "json_url": json_url,
199
+ "version_match": version_match,
200
+ },
201
+ "header_links_before_dropdown": 6,
202
+ }
203
+
204
+ html_context = {
205
+ "github_user": "sktime",
206
+ "github_repo": "skbase",
207
+ "github_version": "main",
208
+ "doc_path": "docs/source/",
209
+ "default_mode": "light",
210
+ }
211
+ html_sidebars = {"**": ["sidebar-nav-bs.html", "sidebar-ethical-ads.html"]}
212
+
213
+ # Add any paths that contain custom static files (such as style sheets) here,
214
+ # relative to this directory. They are copied after the builtin static files,
215
+ # so a file named "default.css" will overwrite the builtin "default.css".
216
+ html_static_path = ["_static"]
217
+
218
+ # -- Options for HTMLHelp output ---------------------------------------------
219
+ # Output file base name for HTML help builder.
220
+ htmlhelp_basename = "skbasedoc"
221
+
222
+
223
+ # -- Options for LaTeX output ------------------------------------------------
224
+ # latex_elements = {
225
+ # The paper size ('letterpaper' or 'a4paper').
226
+ # 'papersize': 'letterpaper',
227
+ # The font size ('10pt', '11pt' or '12pt').
228
+ # 'pointsize': '10pt',
229
+ # Additional stuff for the LaTeX preamble.
230
+ # 'preamble': '',
231
+ # Latex figure (float) alignment
232
+ # 'figure_align': 'htbp',
233
+ # }
234
+
235
+ # Grouping the document tree into LaTeX files. List of tuples
236
+ # (source start file, target name, title,
237
+ # author, documentclass [howto, manual, or own class]).
238
+ latex_documents = [
239
+ (
240
+ master_doc,
241
+ "skbase.tex",
242
+ "skbase Documentation",
243
+ "skbase developers",
244
+ "manual",
245
+ ),
246
+ ]
247
+
248
+ # -- Extension configuration -------------------------------------------------
249
+
250
+ # -- Options for numpydoc extension ------------------------------------------
251
+ # see http://stackoverflow.com/q/12206334/562769
252
+ numpydoc_show_class_members = True
253
+ # this is needed for some reason...
254
+ # see https://github.com/numpy/numpydoc/issues/69
255
+ numpydoc_class_members_toctree = False
256
+
257
+ numpydoc_validation_checks = {"all", "GL01", "SA01", "EX01"}
258
+
259
+ # -- Options for sphinx-copybutton extension----------------------------------
260
+ copybutton_prompt_text = r">>> |\.\.\. |\$ |In \[\d*\]: | {2,5}\.\.\.: | {5,8}: "
261
+ copybutton_prompt_is_regexp = True
262
+
263
+ # -- Options for nbsphinx extension ------------------------------------------
264
+ nbsphinx_execute = "never" # always # whether to run notebooks
265
+ nbsphinx_allow_errors = False # False
266
+ nbsphinx_timeout = 600 # seconds, set to -1 to disable timeout
267
+
268
+ # add Binder launch buttom at the top
269
+ current_file = "{{ env.doc2path( env.docname, base=None) }}"
270
+
271
+ # make sure Binder points to latest stable release, not main
272
+ binder_base = "https://mybinder.org/v2/gh//skbase/"
273
+ binder_url = binder_base + f"{version_match}?filepath={current_file}"
274
+ nbsphinx_prolog = f"""
275
+ .. |binder| image:: https://mybinder.org/badge_logo.svg
276
+ .. _Binder: {binder_url}
277
+
278
+ |Binder|_
279
+ """
280
+
281
+ # add link to original notebook at the bottom
282
+ notebook_url = f"https://github.com/sktime/skbase/tree/{version_match}/{current_file}"
283
+ nbsphinx_epilog = f"""
284
+ ----
285
+
286
+ Generated using nbsphinx_. The Jupyter notebook can be found here_.
287
+
288
+ .. _here: {notebook_url}
289
+ .. _nbsphinx: https://nbsphinx.readthedocs.io/
290
+ """
291
+
292
+ # -- Options for intersphinx extension ---------------------------------------
293
+
294
+ # Example configuration for intersphinx: refer to the Python standard library.
295
+ intersphinx_mapping = {
296
+ "python": ("https://docs.python.org/{.major}".format(sys.version_info), None),
297
+ "scikit-learn": ("https://scikit-learn.org/stable/", None),
298
+ "sktime": ("https://www.sktime.org/en/stable/", None),
299
+ }
@@ -0,0 +1,29 @@
1
+ BSD 3-Clause License
2
+
3
+ Copyright (c) 2022, skbase Developers
4
+ All rights reserved.
5
+
6
+ Redistribution and use in source and binary forms, with or without
7
+ modification, are permitted provided that the following conditions are met:
8
+
9
+ 1. Redistributions of source code must retain the above copyright notice, this
10
+ list of conditions and the following disclaimer.
11
+
12
+ 2. Redistributions in binary form must reproduce the above copyright notice,
13
+ this list of conditions and the following disclaimer in the documentation
14
+ and/or other materials provided with the distribution.
15
+
16
+ 3. Neither the name of the copyright holder nor the names of its
17
+ contributors may be used to endorse or promote products derived from
18
+ this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,157 @@
1
+ Metadata-Version: 2.1
2
+ Name: scikit-base
3
+ Version: 0.3.0
4
+ Summary: Base classes for sklearn-like parametric objects
5
+ Author: Franz Király, Markus Löning, Ryan Kuhns
6
+ Maintainer-email: Franz Kiraly <f.kiraly@ucl.ac.uk>, Ryan Kuhns <rk.skbase@gmail.com>
7
+ License: BSD 3-Clause License
8
+
9
+ Copyright (c) 2022, skbase Developers
10
+ All rights reserved.
11
+
12
+ Redistribution and use in source and binary forms, with or without
13
+ modification, are permitted provided that the following conditions are met:
14
+
15
+ 1. Redistributions of source code must retain the above copyright notice, this
16
+ list of conditions and the following disclaimer.
17
+
18
+ 2. Redistributions in binary form must reproduce the above copyright notice,
19
+ this list of conditions and the following disclaimer in the documentation
20
+ and/or other materials provided with the distribution.
21
+
22
+ 3. Neither the name of the copyright holder nor the names of its
23
+ contributors may be used to endorse or promote products derived from
24
+ this software without specific prior written permission.
25
+
26
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
27
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
29
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
30
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
31
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
32
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
33
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
34
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
35
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36
+
37
+ Project-URL: homepage, https://github.com/sktime/skbase
38
+ Project-URL: repository, https://github.com/sktime/skbase
39
+ Project-URL: documentation, https://github.com/sktime/skbase
40
+ Project-URL: download, https://pypi.org/project/skbase/#files
41
+ Keywords: data-science,machine-learning,scikit-learn
42
+ Classifier: Intended Audience :: Science/Research
43
+ Classifier: Intended Audience :: Developers
44
+ Classifier: License :: OSI Approved :: BSD License
45
+ Classifier: Programming Language :: Python
46
+ Classifier: Topic :: Software Development
47
+ Classifier: Topic :: Scientific/Engineering
48
+ Classifier: Operating System :: Microsoft :: Windows
49
+ Classifier: Operating System :: POSIX
50
+ Classifier: Operating System :: Unix
51
+ Classifier: Operating System :: MacOS
52
+ Classifier: Programming Language :: Python :: 3.7
53
+ Classifier: Programming Language :: Python :: 3.8
54
+ Classifier: Programming Language :: Python :: 3.9
55
+ Classifier: Programming Language :: Python :: 3.10
56
+ Classifier: Programming Language :: Python :: 3.11
57
+ Requires-Python: <3.12,>=3.7
58
+ Description-Content-Type: text/markdown
59
+ License-File: LICENSE
60
+ Requires-Dist: scikit-learn (<1.3.0,>=0.24.0)
61
+ Requires-Dist: typing-extensions
62
+ Requires-Dist: pytest
63
+ Provides-Extra: all_extras
64
+ Requires-Dist: pandas ; extra == 'all_extras'
65
+ Provides-Extra: binder
66
+ Requires-Dist: jupyter ; extra == 'binder'
67
+ Provides-Extra: dev
68
+ Requires-Dist: pre-commit ; extra == 'dev'
69
+ Requires-Dist: pytest ; extra == 'dev'
70
+ Requires-Dist: pytest-cov ; extra == 'dev'
71
+ Provides-Extra: docs
72
+ Requires-Dist: jupyter ; extra == 'docs'
73
+ Requires-Dist: myst-parser ; extra == 'docs'
74
+ Requires-Dist: nbsphinx (>=0.8.6) ; extra == 'docs'
75
+ Requires-Dist: numpydoc ; extra == 'docs'
76
+ Requires-Dist: pydata-sphinx-theme ; extra == 'docs'
77
+ Requires-Dist: sphinx-copybutton ; extra == 'docs'
78
+ Requires-Dist: sphinx-issues ; extra == 'docs'
79
+ Requires-Dist: sphinx-gallery ; extra == 'docs'
80
+ Requires-Dist: sphinx-panels ; extra == 'docs'
81
+ Requires-Dist: sphinx-design ; extra == 'docs'
82
+ Requires-Dist: sphinx ; extra == 'docs'
83
+ Provides-Extra: linters
84
+ Requires-Dist: mypy ; extra == 'linters'
85
+ Requires-Dist: isort ; extra == 'linters'
86
+ Requires-Dist: flake8 ; extra == 'linters'
87
+ Requires-Dist: black ; extra == 'linters'
88
+ Requires-Dist: pydocstyle ; extra == 'linters'
89
+ Requires-Dist: nbqa ; extra == 'linters'
90
+ Requires-Dist: flake8-bugbear ; extra == 'linters'
91
+ Requires-Dist: flake8-builtins ; extra == 'linters'
92
+ Requires-Dist: flake8-quotes ; extra == 'linters'
93
+ Requires-Dist: flake8-comprehensions ; extra == 'linters'
94
+ Requires-Dist: pandas-vet ; extra == 'linters'
95
+ Requires-Dist: flake8-print ; extra == 'linters'
96
+ Requires-Dist: pep8-naming ; extra == 'linters'
97
+ Requires-Dist: doc8 ; extra == 'linters'
98
+ Provides-Extra: test
99
+ Requires-Dist: pytest ; extra == 'test'
100
+ Requires-Dist: coverage ; extra == 'test'
101
+ Requires-Dist: pytest-cov ; extra == 'test'
102
+ Requires-Dist: safety ; extra == 'test'
103
+ Requires-Dist: numpy ; extra == 'test'
104
+ Requires-Dist: scipy ; extra == 'test'
105
+ Requires-Dist: pandas ; extra == 'test'
106
+
107
+
108
+ # Welcome to skbase
109
+
110
+ > A base class for scikit-learn-like and sktime-like parametric objects
111
+
112
+ `skbase` provides base classes for creating scikit-learn-like parametric objects,
113
+ along with tools to make it easier to build your own packages that follow these
114
+ design patterns.
115
+
116
+ :rocket: Version 0.3.0 is now available. Checkout our
117
+ [release notes](https://skbase.readthedocs.io/en/latest/changelog.html).
118
+
119
+ | Overview | |
120
+ |---|---|
121
+ | **CI/CD** | [![Tests](https://github.com/sktime/skbase/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/sktime/skbase/actions/workflows/test.yml) [![codecov](https://codecov.io/gh/sktime/skbase/branch/main/graph/badge.svg?token=2J424NLO82)](https://codecov.io/gh/sktime/skbase) [![Documentation Status](https://readthedocs.org/projects/skbase/badge/?version=latest)](https://skbase.readthedocs.io/en/latest/?badge=latest) [![pre-commit.ci status](https://results.pre-commit.ci/badge/github/sktime/skbase/main.svg)](https://results.pre-commit.ci/latest/github/sktime/skbase/main) |
122
+ | **Code** | [![!pypi](https://img.shields.io/pypi/v/skbase?color=orange)](https://pypi.org/project/skbase/) [![!python-versions](https://img.shields.io/pypi/pyversions/skbase)](https://www.python.org/) [![!black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![security: bandit](https://img.shields.io/badge/security-bandit-yellow.svg)](https://github.com/PyCQA/bandit) |
123
+ | **Downloads**| [![Downloads](https://static.pepy.tech/personalized-badge/skbase?period=week&units=international_system&left_color=grey&right_color=blue&left_text=weekly%20(pypi))](https://pepy.tech/project/skbase) [![Downloads](https://static.pepy.tech/personalized-badge/skbase?period=month&units=international_system&left_color=grey&right_color=blue&left_text=monthly%20(pypi))](https://pepy.tech/project/skbase) [![Downloads](https://static.pepy.tech/personalized-badge/skbase?period=total&units=international_system&left_color=grey&right_color=blue&left_text=cumulative%20(pypi))](https://pepy.tech/project/skbase) |
124
+
125
+ <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
126
+ [![All Contributors](https://img.shields.io/badge/all_contributors-13-orange.svg?style=flat-square)](#contributors)
127
+ <!-- ALL-CONTRIBUTORS-BADGE:END -->
128
+
129
+ ## Documentation
130
+
131
+ To learn more about the package checkout our [documentation](https://skbase.readthedocs.io/en/latest/).
132
+
133
+ ## :hourglass_flowing_sand: Install skbase
134
+ For trouble shooting or more information, see our
135
+ [detailed installation instructions](https://skbase.readthedocs.io/en/latest/user_documentation/installation.html).
136
+
137
+ - **Operating system**: macOS X · Linux · Windows 8.1 or higher
138
+ - **Python version**: Python 3.7, 3.8, 3.9, 3.10 and 3.11
139
+ - **Package managers**: [pip]
140
+
141
+ [pip]: https://pip.pypa.io/en/stable/
142
+
143
+ ### pip
144
+ skbase releases are available as source packages and binary wheels via PyPI
145
+ and can be installed using pip. Checkout the full list of pre-compiled [wheels on PyPi](https://pypi.org/simple/skbase/).
146
+
147
+ To install the core package use:
148
+
149
+ ```bash
150
+ pip install skbase
151
+ ```
152
+
153
+ or, if you want to install with the maximum set of dependencies, use:
154
+
155
+ ```bash
156
+ pip install skbase[all_extras]
157
+ ```
@@ -0,0 +1,37 @@
1
+ docs/source/conf.py,sha256=6ZyTamT1QfYsGcWlpND9dD6WIfaFxeVcrnZ2sVgN-Y4,10150
2
+ skbase/__init__.py,sha256=TwBqxSKQKHHG1LOGvJ0UVU7uWIvYwCX1_VBG_qrY6WA,468
3
+ skbase/_exceptions.py,sha256=-4XlbdV2BZm5-pDiytml-qLbc0keLwMyJ9I99jCqqgY,1144
4
+ skbase/base/__init__.py,sha256=nAOL8rlg1Te654kwvLuovU3vlqyrVDep0CcSQ8GBg78,610
5
+ skbase/base/_base.py,sha256=D8HuHSot2nr9tq61NYpaiYGRc5x0JKAlSQv3LvAKrSA,36286
6
+ skbase/base/_meta.py,sha256=fynBdqpmukxd7lThYH40tBfHIvgYmZyaWy-BiUtrzlk,24551
7
+ skbase/lookup/__init__.py,sha256=X6gqsMDn90uZ6KU9uGsaW-imy4W-7o-MBU7j-VOxEhU,1120
8
+ skbase/lookup/_lookup.py,sha256=ltO3CgPIyqN4eQ2PbGpxwn_iCmOmmhlyXgsgMUETh9w,39804
9
+ skbase/lookup/tests/__init__.py,sha256=U1FJByDkMRlLE1l_aZQzMIwKqUqfK0VKH-Rg7uJxibM,70
10
+ skbase/lookup/tests/test_lookup.py,sha256=C0N7HoupxKLHVyl6hFqRy5tDEB5QIXBDwRWz78RsRbw,37960
11
+ skbase/testing/__init__.py,sha256=pZLBInjq1rmw0zH5iyVXjg7JiYAAIM63_VHGRCOMmZM,363
12
+ skbase/testing/test_all_objects.py,sha256=5_FZB9vRd0gsZ_GBmvA1h9FMA4Ti3336HBVj0TQywPw,34320
13
+ skbase/testing/utils/__init__.py,sha256=-E0UI0om6zg-YqSt9r8Et7sYsYPCa2RUrpAuR0ak7YQ,118
14
+ skbase/testing/utils/_conditional_fixtures.py,sha256=m8PP0SCrizLr0H5bZLOqkIo8MGEJB4XyuQ6tnHffxmM,9944
15
+ skbase/testing/utils/_dependencies.py,sha256=7idp_ro_-K1KZaODyvI0ZVaWlQj_e9_N5e5n8sHLXKU,10545
16
+ skbase/testing/utils/deep_equals.py,sha256=k0Y1BllA4TdSRwdccwKhXbqx_X5Xdh_4VtObwVbCry0,11159
17
+ skbase/testing/utils/inspect.py,sha256=TEcnAPAKE8WGSXqqGi5g-70WfH0TXoGd9RJcPwpIkv4,771
18
+ skbase/testing/utils/tests/__init__.py,sha256=XvxK2FkKa--uAoPFRcjMetNePtkk43iTsKrfOimUEr0,73
19
+ skbase/testing/utils/tests/test_check_dependencies.py,sha256=vajap4Ij5OSlWcNpGAFEbHSAZIxTYyzZb8WxusnqTyk,2282
20
+ skbase/testing/utils/tests/test_deep_equals.py,sha256=iVGyOHBVIB2TstN0bkTy8RsSpptPZSKYSqQZzTbYh1I,1746
21
+ skbase/tests/__init__.py,sha256=_G_N2Ciuy4OGeYThRjK_UBYogvKvb_0PP0mnRUjk7BA,39
22
+ skbase/tests/conftest.py,sha256=ouVYPmmGZu737o1Jmtm7D9xlyo45iLbEjKFlR8F4k3s,5598
23
+ skbase/tests/test_base.py,sha256=TSrn9XC13qZotC6Q8wblCscwA-u-M3fFicPb7o5yvMQ,38547
24
+ skbase/tests/test_baseestimator.py,sha256=8ECq5WzorulIdYfYExf4t_iZPJkSQlp9b8_-lkuZnSc,4620
25
+ skbase/tests/test_exceptions.py,sha256=3_8TZvVtCAdtRze5Gc9wh7_icEgXGQAsjOE9D1K44MQ,652
26
+ skbase/tests/mock_package/__init__.py,sha256=gdxk-nkGZZiIy85IZydH4GourkJypMJHczxEyTG03IA,140
27
+ skbase/tests/mock_package/test_mock_package.py,sha256=8QMVqMmV58ZVn7KvSgr9v3yJ49yZ2URF0gTAiJb0Ekc,2095
28
+ skbase/utils/__init__.py,sha256=kVG-pOnBqMt3yJfxkaH_1X8qPo1b6qS7wxEy2gk9GN8,397
29
+ skbase/utils/_nested_iter.py,sha256=KGWwRQxPWB57pAbePknyFbMrFG0D68Bh0LtEo2VRqEA,2505
30
+ skbase/validate/__init__.py,sha256=NBQZPcJ3uDc0_Qb9VBe_liIdiNNBAcXuLxZIRIJoxcg,311
31
+ skbase/validate/_types.py,sha256=8rV_mGytar1KRc3aZIss3PHJNHdqDC314sxnX1fuaQQ,3304
32
+ scikit_base-0.3.0.dist-info/LICENSE,sha256=PTCDdo2gJRanyF1geMw1Dmu_h1NRUGO8yu9uv-rf-ns,1554
33
+ scikit_base-0.3.0.dist-info/METADATA,sha256=m6oDKRvOvXOTDlEHoNDMgS5_5eDULZAkmSoSwiu0mMU,8368
34
+ scikit_base-0.3.0.dist-info/WHEEL,sha256=pkctZYzUS4AYVn6dJ-7367OJZivF2e8RA9b_ZBjif18,92
35
+ scikit_base-0.3.0.dist-info/top_level.txt,sha256=w1qkyDz4E8oZRVj4F3LoNBpYJIOGh_gAHSFWGxoiieY,12
36
+ scikit_base-0.3.0.dist-info/zip-safe,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
37
+ scikit_base-0.3.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: bdist_wheel (0.40.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ docs
2
+ skbase
@@ -0,0 +1 @@
1
+
skbase/__init__.py ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env python3 -u
2
+ # -*- coding: utf-8 -*-
3
+ # copyright: skbase developers, BSD-3-Clause License (see LICENSE file)
4
+ """:mod:`skbase` contains tools for creating and working with parametric objects.
5
+
6
+ The included functionality makes it easy to re-use scikit-learn and
7
+ sktime design principles in your project.
8
+ """
9
+ from typing import List
10
+
11
+ __version__: str = "0.3.0"
12
+
13
+ __author__: List[str] = ["mloning", "RNKuhns", "fkiraly"]
14
+ __all__: List[str] = []
skbase/_exceptions.py ADDED
@@ -0,0 +1,31 @@
1
+ # -*- coding: utf-8 -*-
2
+ # copyright: skbase developers, BSD-3-Clause License (see LICENSE file)
3
+ # NotFittedError re-use code developed in scikit-learn. These elements
4
+ # are copyrighted by the scikit-learn developers, BSD-3-Clause License. For
5
+ # conditions see https://github.com/scikit-learn/scikit-learn/blob/main/COPYING
6
+ """Custom exceptions used in ``skbase``."""
7
+ from typing import List
8
+
9
+ __author__: List[str] = ["fkiraly", "mloning", "rnkuhns"]
10
+ __all__: List[str] = ["FixtureGenerationError", "NotFittedError"]
11
+
12
+
13
+ class FixtureGenerationError(Exception):
14
+ """Raised when a fixture fails to generate."""
15
+
16
+ def __init__(self, fixture_name="", err=None):
17
+ self.fixture_name = fixture_name
18
+ super().__init__(f"fixture {fixture_name} failed to generate. {err}")
19
+
20
+
21
+ class NotFittedError(ValueError, AttributeError):
22
+ """Exception class to raise if estimator is used before fitting.
23
+
24
+ This class inherits from both ValueError and AttributeError to help with
25
+ exception handling.
26
+
27
+ References
28
+ ----------
29
+ [1] scikit-learn's NotFittedError
30
+ [2] sktime's NotFittedError
31
+ """
@@ -0,0 +1,19 @@
1
+ #!/usr/bin/env python3 -u
2
+ # -*- coding: utf-8 -*-
3
+ # copyright: skbase developers, BSD-3-Clause License (see LICENSE file)
4
+ """:mod:`skbase.base` contains base classes for creating parametric objects.
5
+
6
+ The included functionality makes it easy to re-use scikit-learn and
7
+ sktime design principles in your project.
8
+ """
9
+ from typing import List
10
+
11
+ from skbase.base._base import BaseEstimator, BaseObject
12
+ from skbase.base._meta import BaseMetaEstimator
13
+
14
+ __author__: List[str] = ["mloning", "RNKuhns", "fkiraly"]
15
+ __all__: List[str] = [
16
+ "BaseObject",
17
+ "BaseEstimator",
18
+ "BaseMetaEstimator",
19
+ ]