Skip to content

Commit cdc9920

Browse files
committed
Merge branch 'master' into experimental
2 parents f4face9 + 9856b13 commit cdc9920

19 files changed

+1437
-22
lines changed

MANIFEST.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
include README.rst
22
include README.txt
33
include setup.py
4-
recursive-include src\tarantool\ *.py
4+
recursive-include src/tarantool/ *.py

README.rst

Lines changed: 64 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,69 @@
1-
=================
2-
trantool-python
3-
=================
1+
Python client library for Tarantool Database
2+
============================================
43

5-
`Tarantool`_ is a damn fast key/value data store originally designed by `Mail.Ru`_ and released under the terms of `BSD license`_.
4+
This package is a pure-python client library for `Tarantool Database`_.
65

7-
`Tarantool`_ is production-ready and actively used at `Mail.Ru`_, one of the leading Russian web content providers.
6+
`Documentation`_ | `Downloads`_ | `PyPI`_ | `GitHub`_ | `Issue tracker`_
87

9-
.. _`Tarantool`: http://tarantool.org
8+
.. _`Documentation`: http://packages.python.org/tarantool
9+
.. _`Downloads`: http://pypi.python.org/pypi/tarantool#downloads
10+
.. _`PyPI`: http://pypi.python.org/pypi/tarantool
11+
.. _`GitHub`: https://github.com/mailru/tarantool-python
12+
.. _`Issue tracker`: https://github.com/coxx/tarantool-python/issues
13+
14+
15+
Download and Install
16+
--------------------
17+
18+
The recommended way to install ``tarantool`` package::
19+
20+
$ pip install tarantool
21+
22+
You can also download zip archive, unpack it and run::
23+
24+
$ python setup.py install
25+
26+
To install development version of the package use pip::
27+
28+
$ pip install git+https://github.com/mailru/tarantool-python
29+
30+
31+
--------------------------------------------------------------------------------
32+
33+
34+
What is Tarantool?
35+
------------------
36+
37+
`Tarantool`_ is a damn fast key/value data store originally designed by
38+
`Mail.Ru`_ and released under the terms of `BSD license`_. `Tarantool`_ is
39+
production-ready and actively used at `Mail.Ru`_ - one of the leading
40+
Russian web content providers.
41+
42+
* NoSQL database
43+
* In-memory storage
44+
* Data is protected by on-disk write-ahead-log and snapshots
45+
* Key-value data model: each record is a tuple of multiple values,
46+
identified by primary key
47+
* Records can be accessed using secondary indexes
48+
* Secondary indexes can be non-unique and composite (include multiple fields)
49+
* Server-side stored procedures in Lua
50+
* Very fast binary client-server protocol
51+
52+
53+
See More
54+
^^^^^^^^
55+
56+
* `Tarantool Homepage`_
57+
* `Tarantool at Github`_
58+
* `Tarantool User Guide`_
59+
* `Client-server Protocol Specification`_
60+
61+
62+
.. _`Tarantool`:
63+
.. _`Tarantool Database`:
64+
.. _`Tarantool Homepage`: http://tarantool.org
65+
.. _`Tarantool at Github`: https://github.com/mailru/tarantool
66+
.. _`Tarantool User Guide`: http://tarantool.org/tarantool_user_guide.html
67+
.. _`Client-server protocol specification`: https://raw.github.com/mailru/tarantool/master/doc/box-protocol.txt
1068
.. _`Mail.Ru`: http://mail.ru
1169
.. _`BSD license`: http://www.gnu.org/licenses/license-list.html#ModifiedBSD

doc/_static/tarantool.css

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
@import url("default.css");
2+
3+
cite, code, tt {
4+
font-family: 'Consolas', 'Deja Vu Sans Mono',
5+
'Bitstream Vera Sans Mono', monospace;
6+
}
7+
8+
dl.attribute, dl.class, dl.method {
9+
margin-top: 2em;
10+
margin-bottom: 2em;
11+
}
12+
13+
tt {
14+
font-size: 100%;
15+
}
16+
17+
th {
18+
background-color: #fff;
19+
}

doc/api/class-connection.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
2+
.. currentmodule:: tarantool.connection
3+
4+
class :class:`Connection`
5+
-------------------------
6+
7+
.. autoclass:: Connection
8+
:members: close, ping, space
9+
10+
.. automethod:: call(func_name, *args [, field_types [, return_tuple]])

doc/api/class-response.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
2+
.. currentmodule:: tarantool.response
3+
4+
class :class:`Response`
5+
-------------------------
6+
7+
.. autoclass:: Response
8+
:members:
9+
:undoc-members:

doc/api/class-space.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
2+
.. currentmodule:: tarantool.space
3+
4+
class :class:`Space`
5+
--------------------
6+
7+
.. autoclass:: tarantool.space.Space
8+
:members:
9+
:undoc-members:

doc/api/module-tarantool.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
module :py:mod:`tarantool`
2+
==========================
3+
4+
.. automodule:: tarantool
5+
:members:
6+
:undoc-members:

doc/conf.py

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

0 commit comments

Comments
 (0)