Skip to content

Commit c169450

Browse files
author
Michael Panchenko
committed
Added initial version of build, documentation and cicd
1 parent e19f672 commit c169450

19 files changed

+420
-1
lines changed

.github/workflows/publish.yaml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: Upload Python Package
2+
3+
on:
4+
release:
5+
types: [created]
6+
7+
jobs:
8+
deploy:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v2
12+
- name: Set up Python
13+
uses: actions/setup-python@v1
14+
with:
15+
python-version: '3.7'
16+
- name: Install dependencies
17+
run: |
18+
python -m pip install --upgrade pip
19+
pip install setuptools wheel twine
20+
- name: Build and publish
21+
env:
22+
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
23+
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
24+
run: |
25+
python setup.py sdist bdist_wheel
26+
twine upload dist/*

.github/workflows/tox.yaml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Python package
2+
3+
on:
4+
pull_request:
5+
branches: [master]
6+
types: [opened]
7+
8+
jobs:
9+
build:
10+
11+
runs-on: ubuntu-latest
12+
strategy:
13+
matrix:
14+
python: [3.6, 3.7, 3.8]
15+
16+
steps:
17+
- uses: actions/checkout@v2
18+
with:
19+
fetch-depth: ''
20+
- name: Merge master into current branch
21+
run: |
22+
git fetch origin master:master
23+
git merge master
24+
- name: Setup Python
25+
uses: actions/setup-python@v1
26+
with:
27+
python-version: ${{ matrix.python }}
28+
- name: Install Tox and any other packages
29+
run: pip install tox
30+
- name: Run Tox
31+
run: tox -e py # Run tox using the version of Python in `PATH`

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
/.idea
2-
basic_models.iml
2+
*.iml
33
*.pyc
44
*.pyc.*
55
*.bak
66
*.old
77
*.orig
8+
.tox
9+
docs/_build
810
/sync.py
11+
dist

MANIFEST.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
include requirements.*

docs/conf.py

Lines changed: 236 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,236 @@
1+
# -*- coding: utf-8 -*-
2+
#
3+
# signal_analysis documentation build configuration file, created by
4+
# sphinx-quickstart.
5+
#
6+
# This file is execfile()d with the current directory set to its containing dir.
7+
#
8+
# Note that not all possible configuration values are present in this
9+
# autogenerated file.
10+
#
11+
# All configuration values have a default; values that are commented out
12+
# serve to show the default.
13+
14+
import os
15+
import sys
16+
17+
# If extensions (or modules to document with autodoc) are in another directory,
18+
# add these directories to sys.path here. If the directory is relative to the
19+
# documentation root, use os.path.abspath to make it absolute, like shown here.
20+
sys.path.insert(0, os.path.abspath('../src'))
21+
print(sys.path)
22+
23+
# -- General configuration -----------------------------------------------------
24+
25+
# If your documentation needs a minimal Sphinx version, state it here.
26+
# needs_sphinx = '1.0'
27+
28+
# Add any Sphinx extension module names here, as strings. They can be extensions
29+
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
30+
extensions = ['sphinx.ext.napoleon', 'sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx_rtd_theme']
31+
32+
# Add any paths that contain templates here, relative to this directory.
33+
templates_path = ['_templates']
34+
35+
# The suffix of source filenames.
36+
source_suffix = '.rst'
37+
38+
# The encoding of source files.
39+
# source_encoding = 'utf-8-sig'
40+
41+
# The master toctree document.
42+
master_doc = 'index'
43+
44+
# General information about the project.
45+
project = u'sensAI'
46+
47+
# The version info for the project you're documenting, acts as replacement for
48+
# |version| and |release|, also used in various other places throughout the
49+
# built documents.
50+
#
51+
# The short X.Y version.
52+
version = '0.0'
53+
# The full version, including alpha/beta/rc tags.
54+
release = '0.0.1'
55+
56+
# The language for content autogenerated by Sphinx. Refer to documentation
57+
# for a list of supported languages.
58+
# language = None
59+
60+
# There are two options for replacing |today|: either, you set today to some
61+
# non-false value, then it is used:
62+
# today = ''
63+
# Else, today_fmt is used as the format for a strftime call.
64+
# today_fmt = '%B %d, %Y'
65+
66+
# List of patterns, relative to source directory, that match files and
67+
# directories to ignore when looking for source files.
68+
exclude_patterns = ['_build']
69+
70+
# The reST default role (used for this markup: `text`) to use for all documents.
71+
# default_role = None
72+
73+
# If true, '()' will be appended to :func: etc. cross-reference text.
74+
# add_function_parentheses = True
75+
76+
# If true, the current module name will be prepended to all description
77+
# unit titles (such as .. function::).
78+
# add_module_names = True
79+
80+
# If true, sectionauthor and moduleauthor directives will be shown in the
81+
# output. They are ignored by default.
82+
# show_authors = False
83+
84+
# The name of the Pygments (syntax highlighting) style to use.
85+
pygments_style = 'sphinx'
86+
87+
# A list of ignored prefixes for module index sorting.
88+
# modindex_common_prefix = []
89+
90+
91+
# -- Options for HTML output ---------------------------------------------------
92+
93+
# The theme to use for HTML and HTML Help pages. See the documentation for
94+
# a list of builtin themes.
95+
html_theme = 'sphinx_rtd_theme'
96+
97+
# Theme options are theme-specific and customize the look and feel of a theme
98+
# further. For a list of options available for each theme, see the
99+
# documentation.
100+
# html_theme_options = {}
101+
102+
# Add any paths that contain custom themes here, relative to this directory.
103+
# html_theme_path = []
104+
105+
# The name for this set of Sphinx documents. If None, it defaults to
106+
# "<project> v<release> documentation".
107+
# html_title = None
108+
109+
# A shorter title for the navigation bar. Default is the same as html_title.
110+
# html_short_title = None
111+
112+
# The name of an image file (relative to this directory) to place at the top
113+
# of the sidebar.
114+
# html_logo = None
115+
116+
# The name of an image file (within the static path) to use as favicon of the
117+
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
118+
# pixels large.
119+
# html_favicon = None
120+
121+
# Add any paths that contain custom static files (such as style sheets) here,
122+
# relative to this directory. They are copied after the builtin static files,
123+
# so a file named "default.css" will overwrite the builtin "default.css".
124+
html_static_path = ['_static']
125+
126+
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
127+
# using the given strftime format.
128+
# html_last_updated_fmt = '%b %d, %Y'
129+
130+
# If true, SmartyPants will be used to convert quotes and dashes to
131+
# typographically correct entities.
132+
# html_use_smartypants = True
133+
134+
# Custom sidebar templates, maps document names to template names.
135+
# html_sidebars = {}
136+
137+
# Additional templates that should be rendered to pages, maps page names to
138+
# template names.
139+
# html_additional_pages = {}
140+
141+
# If false, no module index is generated.
142+
# html_domain_indices = True
143+
144+
# If false, no index is generated.
145+
# html_use_index = True
146+
147+
# If true, the index is split into individual pages for each letter.
148+
# html_split_index = False
149+
150+
# If true, links to the reST sources are added to the pages.
151+
# html_show_sourcelink = True
152+
153+
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
154+
# html_show_sphinx = True
155+
156+
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
157+
# html_show_copyright = True
158+
159+
# If true, an OpenSearch description file will be output, and all pages will
160+
# contain a <link> tag referring to it. The value of this option must be the
161+
# base URL from which the finished HTML is served.
162+
# html_use_opensearch = ''
163+
164+
# This is the file name suffix for HTML files (e.g. ".xhtml").
165+
# html_file_suffix = None
166+
167+
# Output file base name for HTML help builder.
168+
htmlhelp_basename = 'sensAI_doc'
169+
170+
171+
# -- Options for LaTeX output --------------------------------------------------
172+
173+
latex_elements = {
174+
# The paper size ('letterpaper' or 'a4paper').
175+
# 'papersize': 'letterpaper',
176+
177+
# The font size ('10pt', '11pt' or '12pt').
178+
# 'pointsize': '10pt',
179+
180+
# Additional stuff for the LaTeX preamble.
181+
# 'preamble': '',
182+
}
183+
184+
# Grouping the document tree into LaTeX files. List of tuples
185+
# (source start file, target name, title, author, documentclass [howto/manual]).
186+
# latex_documents = []
187+
188+
# The name of an image file (relative to this directory) to place at the top of
189+
# the title page.
190+
# latex_logo = None
191+
192+
# For "manual" documents, if this is true, then toplevel headings are parts,
193+
# not chapters.
194+
# latex_use_parts = False
195+
196+
# If true, show page references after internal links.
197+
# latex_show_pagerefs = False
198+
199+
# If true, show URL addresses after external links.
200+
# latex_show_urls = False
201+
202+
# Documents to append as an appendix to all manuals.
203+
# latex_appendices = []
204+
205+
# If false, no module index is generated.
206+
# latex_domain_indices = True
207+
208+
209+
# -- Options for manual page output --------------------------------------------
210+
211+
# One entry per manual page. List of tuples
212+
# (source start file, name, description, authors, manual section).
213+
man_pages = [
214+
('index', 'sensAI', '',
215+
["jambit"], 1)
216+
]
217+
218+
# If true, show URL addresses after external links.
219+
# man_show_urls = False
220+
221+
222+
# -- Options for Texinfo output ------------------------------------------------
223+
224+
# Grouping the document tree into Texinfo files. List of tuples
225+
# (source start file, target name, title, author,
226+
# dir menu entry, description, category)
227+
# texinfo_documents = []
228+
229+
# Documents to append as an appendix to all manuals.
230+
# texinfo_appendices = []
231+
232+
# If false, no module index is generated.
233+
# texinfo_domain_indices = True
234+
235+
# How to display URL addresses: 'footnote', 'no', or 'inline'.
236+
# texinfo_show_urls = 'footnote'

docs/featuregen.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Feature Generators
2+
==================
3+
4+
.. automodule:: sensai.featuregen
5+
:members:

docs/getting-started.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
Getting started
2+
===============
3+
4+
This library works with python>=3.7. Install it by executing \n
5+
``python setup.py install`` \n
6+
from the root directory.
7+
8+
For developing the usage of tox is encouraged. Run ``tox`` from the root directory in order to build the package,
9+
these docs and perform several tests. You should not merge to master without tox having executed successfully!

docs/index.rst

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
sensAI - sensible AI for you and me
2+
====================================
3+
4+
.. toctree::
5+
:caption: Contents:
6+
:glob:
7+
:titlesonly:
8+
9+
getting-started
10+
*
11+
util/index
12+
13+
14+
15+
16+
Indices and tables
17+
==================
18+
19+
* :ref:`genindex`
20+
* :ref:`modindex`
21+
* :ref:`search`

docs/util/cache.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Caching mechanisms
2+
==================
3+
4+
.. automodule:: sensai.util.cache
5+
:members:

docs/util/index.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
The utils package
2+
=================
3+
4+
.. toctree::
5+
:glob:
6+
7+
*

0 commit comments

Comments
 (0)