Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Updated docs and copyright notices.

  • Loading branch information...
commit 4f634850840cb577a47806407151e3e9c20a0f7c 1 parent 7ec67a2
@BasicWolf authored
View
11 CHANGELOG
@@ -1,16 +1,19 @@
Changelog
=========
-v0.3 (15.05.13)
+
+v0.3 (2013.06.15)
+-----------------
* New Kaylee environment and project management scripts.
* New built-in debug server.
* New native Werkzeug framework support.
-* Demo projects are now in a separate repository.
+* New demo projects repository.
* Updated unit tests.
+* Massive code improvements.
-v0.2 (23.12.12)
-----------------
+v0.2 (2012.12.23)
+----------------
* New Sessions Data Managers API and implementation.
* New "Human OCR" demo project (demonstrates Sessions API).
* New localbuild script to build demo applications from repository code.
View
2  LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2012 by Zaur Nasibov and contributors. See AUTHORS for more
+Copyright (c) 2013 by Zaur Nasibov and contributors. See AUTHORS for more
details.
Some rights reserved.
View
5 doc/src/index.rst
@@ -8,6 +8,11 @@ Welcome to Kaylee
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
+Kaylee is a Python and JavaScript framework for developing in-browser
+distributed and volunteer computing applications that allows programmers
+to concentrate on business logic by leaving all the computational nodes
+handling to Kaylee.
+
User's Guide
------------
View
8 doc/src/installation.rst
@@ -91,6 +91,13 @@ You can install the supported front-end(s) as well::
$ pip install flask django
+Demo projects
+-------------
+
+All Kaylee demo projects as well as instructions to setup and run
+the demo environment are available in the following Github repository:
+http://github.com/BasicWolf/kaylee-demo-projects
+
|
Continue with :ref:`basics`.
@@ -99,4 +106,3 @@ Continue with :ref:`basics`.
.. _Flask: http://flask.pocoo.org
.. _Django: http://djangoproject.com
.. _virtualenv: http://www.virtualenv.org
-.. _`demo archive`: _static/kaylee_dev_demo.zip
View
2  kaylee/__init__.py
@@ -14,7 +14,7 @@
:license: MIT, see LICENSE for more details.
"""
-__version__ = '0.3a7'
+__version__ = '0.3'
from . import loader
kl = loader.LazyKaylee()
View
1  kaylee/contrib/__init__.py
@@ -1,3 +1,4 @@
+# -*- coding: utf-8 -*-
"""
kaylee.contrib
~~~~~~~~~~~~~~
View
9 kaylee/contrib/controllers.py
@@ -1,4 +1,13 @@
# -*- coding: utf-8 -*-
+"""
+ kaylee.contrib.controllers
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ The module provides basic Kaylee controller implementations.
+
+ :copyright: (c) 2013 by Zaur Nasibov.
+ :license: MIT, see LICENSE for more details.
+"""
from kaylee.controller import Controller, NO_SOLUTION, NOT_SOLVED
from kaylee.errors import (ApplicationCompletedError,
NodeRequestRejectedError,
View
10 kaylee/contrib/frontends/__init__.py
@@ -0,0 +1,10 @@
+# -*- coding: utf-8 -*-
+"""
+ kaylee.contrib.frontends
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+
+ The sub-package contains various frond-ends integration code.
+
+ :copyright: (c) 2013 by Zaur Nasibov.
+ :license: MIT, see LICENSE for more details.
+"""
View
10 kaylee/contrib/registries.py
@@ -1,4 +1,14 @@
# -*- coding: utf-8 -*-
+"""
+ kaylee.contrib.registries
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ The module provides basic Kaylee Node registry implementation(s).
+
+ :copyright: (c) 2013 by Zaur Nasibov.
+ :license: MIT, see LICENSE for more details.
+"""
+
from datetime import datetime
from kaylee.node import NodesRegistry, NodeID, extract_node_id
View
14 kaylee/contrib/storages.py
@@ -1,5 +1,15 @@
# -*- coding: utf-8 -*-
+"""
+ kaylee.contrib.storages
+ ~~~~~~~~~~~~~~~~~~~~~~~
+
+ The module provides basic Kaylee storages' implementations.
+
+ :copyright: (c) 2013 by Zaur Nasibov.
+ :license: MIT, see LICENSE for more details.
+"""
#pylint: disable-msg=W0231
+
from kaylee.storage import TemporalStorage, PermanentStorage
from kaylee.node import NodeID
@@ -30,8 +40,8 @@ def clear(self):
self._total_count = 0
def __getitem__(self, task_id):
- nr_dict = self._d.get(task_id, {})
- return {NodeID(n): r for n, r in nr_dict.iteritems()}
+ nr_dict = self._d[task_id]
+ return ((NodeID(n), r) for n, r in nr_dict.iteritems())
def contains(self, task_id, node_id=None, result=None):
try:
View
2  kaylee/node.py
@@ -211,6 +211,8 @@ def _generate(self, remote_host):
nid += struct.pack(">i", NodeID._inc)[2:4]
NodeID._inc = (NodeID._inc + 1) % 0xFFFF
# 4 bytes host
+ #pylint: disable-msg=E1101
+ #E1101: Instance of 'md5' has no 'update' member
host_hash = hashlib.md5()
host_hash.update(remote_host)
nid += host_hash.digest()[0:4]
View
4 kaylee/storage.py
@@ -44,8 +44,8 @@ def clear(self):
def __getitem__(self, task_id):
"""Returns the task results.
- :rtype: ``{node_id1: result1, ... }`` dict, where
- ``node_idx`` is an instance of :class:`NodeID`.
+ :rtype: ``(node_id : result)`` ... iterator, where
+ ``node_id`` is an instance of :class:`NodeID`.
"""
@abstractmethod
View
4 kaylee/testsuite/storage_tests.py
@@ -111,9 +111,9 @@ def test_remove_and_del(self):
self._fill_storage(ts, self.SOME, node_id=node_id)
self.assertEqual(len(ts), self.SOME)
for i in range(0, self.SOME):
- tid = ts[_tgen(i)]
+ tid_res = ts[_tgen(i)]
del ts[_tgen(i)]
- self.assertRaises(KeyError, ts.__getitem__, tid)
+ self.assertRaises(KeyError, ts.__getitem__, list(tid_res)[0])
self.assertEqual(len(ts), 0)
def test_clear(self):
Please sign in to comment.
Something went wrong with that request. Please try again.