Commit Graph

352 Commits

Author SHA1 Message Date
da80fedbc1 Release: 0.6.1 2018-01-14 17:09:54 +01:00
ca9d5a19fc Merge branch 'master' into develop 2018-01-10 08:39:37 +01:00
a161e9d8d7 [django] Adds ability to create a get_graph() command method as a generator for multiple, synchronous jobs execution in django command. 2018-01-10 08:36:45 +01:00
8900c567d9 [core] Fixes bug in graph.add_chain output that would ignore the first node when its index is 0. 2018-01-10 08:33:12 +01:00
93195aa79f Merge remote-tracking branch 'upstream/develop' 2018-01-08 07:43:10 +01:00
870db69150 Release: 0.6.0 2018-01-01 22:19:20 +01:00
7d4fb1dff0 Release: 0.6.0b1 2017-12-30 15:20:56 +01:00
99a9efa0a6 Release: 0.6.0a4 2017-12-27 14:22:47 +01:00
464d08a4a2 Generalize tuplize decorator to cast(...) decorator. 2017-12-27 14:21:50 +01:00
f64e6e3c76 Release: 0.6.0a3 2017-12-27 11:33:31 +01:00
46a8fd192e Refactoring API, writing docs. 2017-12-27 11:32:47 +01:00
603d917712 Release: 0.6.0a2 2017-12-13 09:29:33 +01:00
5363a5b004 Django: fix create_or_update with no defaults. 2017-12-13 09:27:45 +01:00
99c4745b4e Work in progress on documentation for 0.6 2017-12-04 08:31:24 +01:00
a1f883e3c6 Release: 0.6.0a1 2017-12-03 10:00:47 +01:00
02d6f4923e Removes dead snippet. 2017-12-03 06:54:54 +01:00
47f3897847 Example datasets are now stored by bonobo minor version. 2017-12-02 16:19:27 +01:00
7a25774b0f Removing datasets from the repository. 2017-12-02 15:57:14 +01:00
47c676a068 Adds an OrderFields transformation factory, update examples. 2017-12-02 14:18:24 +01:00
9e0834b061 Check partially configured transformations that are function based (aka transformation factories) on execution context setup.
wip: make sure all api is exported, raise an error when a function based transformation factory is (incorrectly) used as a transformation.
2017-12-01 07:43:14 +01:00
db54ff41ef Fix PrettyPrinter, output verbosity is now slightly more discreete. 2017-12-01 07:42:23 +01:00
d8c0dfe11a Inheritance of bags and better jupyter output for pretty printer. 2017-11-28 21:58:01 +01:00
686d1c81b3 Simple "examples" command that just show examples for now. 2017-11-28 21:57:08 +01:00
5e0b6567cd Rewritting Bags from scratch using a namedtuple approach, along with other (less major) updates.
New bag implementation improves a lot how bonobo works, even if this is
highly backward incompatible (sorry, that's needed, and better sooner
than later).

* New implementation uses the same approach as python's namedtuple,
  by dynamically creating the python type's code. This has drawbacks, as
  it feels like not the right way, but also a lot of benefits that
  cannot be achieved using a regular approach, especially the
  constructor parameter order, hardcoded.
* Memory usage is now much more efficient. The "keys" memory space will
  be used only once per "io type", being spent in the underlying type
  definition instead of in the actual instances.
* Transformations now needs to use tuples as output, which will be bound
  to its "output type". The output type can be infered from the tuple
  length, or explicitely set by the user using either
  `context.set_output_type(...)` or `context.set_output_fields(...)` (to
  build a bag type from a list of field names).

Jupyter/Graphviz integration is more tight, allowing to easily display
graphs in a notebook, or displaying the live transformation status in an
html table instead of a simple <div>.

For now, context processors were hacked to stay working as before but
the current API is not satisfactory, and should be replaced. This new
big change being unreasonable without some time to work on it properly,
it is postponed for next versions (0.7, 0.8, ...). Maybe the best idea
is to have some kind of "local services", that would use the same
dependency injection mechanism as the execution-wide services.

Services are now passed by keywoerd arguments only, to avoid confusion
with data-arguments.
2017-11-27 00:04:51 +01:00
52ea29afcb Merge remote-tracking branch 'origin/dev_rollback_kwargs' into develop 2017-11-17 17:13:15 +01:00
9b0a51e647 Fix another typo in run 2017-11-13 16:38:53 +01:00
72ae354810 Fix two typos in the ContextProcessor documentation 2017-11-13 16:31:00 +01:00
c87775f090 Core: refactoring contexts with more logical responsibilities, stopping to rely on kargs ordering for compat with python3.5 2017-11-12 16:36:11 +01:00
739a64d8f4 Simplification of node execution context, handle_result is now in step() as it is the only logical place where this will actually be called. 2017-11-12 11:16:52 +01:00
0b3694142b Less strict CSV processing, to allow dirty input. 2017-11-12 10:36:07 +01:00
c2f17296f6 [stdlib] Adds Update(...) and FixedWindow(...) the the standard nodes provided with bonobo. 2017-11-12 10:06:15 +01:00
d1481fbfe8 Moves jupyter extension to both bonobo.contrib.jupyter (for the jupyter widget) and to bonobo.plugins (for the executor-side plugin). 2017-11-12 09:08:05 +01:00
4bea3f7dad Fix examples with new module paths. 2017-11-12 06:24:29 +01:00
f6093e308d IOFormats: if no kwargs, then try with one positional argument. 2017-11-12 06:23:19 +01:00
96fd4533e1 Adds a __getattr__ dunder to ValueHolder to enable getting attributes, and especially method calls, on contained objects. 2017-11-12 06:22:28 +01:00
780199551c Moves ODS extension to contrib module. 2017-11-12 06:21:28 +01:00
a4d49a0f32 Moves google extension to contrib module. 2017-11-12 06:21:05 +01:00
40be9c71da Moves django extension to contrib module. 2017-11-12 06:20:46 +01:00
7f34737c3a wip documentation 2017-11-07 11:52:26 +01:00
1d2916480a Adds argument parser support to django extension. 2017-11-07 08:00:59 +01:00
8f3c4252b4 Working on the new version of the tutorial. Only Step1 implemented. 2017-11-05 19:41:27 +01:00
eb393331cd Adds a "bare" template, containing the very minimum you want to have in 90% of cases. 2017-11-05 14:59:25 +01:00
56c26ea26c Fix default logging level, adds options to default template. 2017-11-05 14:54:01 +01:00
8439a535fe Moves timer to statistics utilities. 2017-11-04 15:01:04 +01:00
0b969d31e0 Adds basic test for convert command. 2017-11-04 14:55:08 +01:00
83fc1743fc Small changes in events, and associated tests. 2017-11-04 13:20:53 +01:00
28884231b3 [core] Moves bonobo.execution context related package to new bonobo.execution.contexts package, also moves bonobo.strategies to new bonobo.execution.strategies package, so everything related to execution is now contained under the bonobo.execution package. 2017-11-04 13:13:47 +01:00
2c9729c4ca Remove the sleep() in tick() that causes a minimum execution time of 2*PERIOD, more explicit status display and a small test case for console plugin. 2017-11-04 13:01:43 +01:00
017bb4a9a6 Adds a test for default file init command. 2017-11-04 12:24:30 +01:00
6bd1130e34 [core] Refactoring to use an event dispatcher in the main thread.
Plugins now run in the main thread, instead of their own threads, and
the API changed to use an event dispatcher approach instead of a static
class interface.
2017-11-04 12:05:04 +01:00