@@ -13,55 +13,62 @@ Graphtik Changelog
1313
1414 - [-] start-node/end-node to group inputs/outputs
1515 - [-] DROP sideffects
16- - [x ] Drop _Jetsam
17- - [x ] Simpler jetsam
18- - [x ] support *args 1-1 mapping in the jetsam() signature
19- - [x ] FIX(sideffects): DIFFER from regular DATA...
20- - [x ] FIX shared `executed` (no Solution class)
21- - [x ] typo(test): overridden-->overriDDen
16+ - [+ ] Drop _Jetsam
17+ - [+ ] Simpler jetsam
18+ - [+ ] support *args 1-1 mapping in the jetsam() signature
19+ - [+ ] FIX(sideffects): DIFFER from regular DATA...
20+ - [+ ] FIX shared `executed` (no Solution class)
21+ - [+ ] typo(test): overridden-->overriDDen
2222 - [ ] `graphop` in docs
2323
2424 Tasks
2525 =====
26- - [x ] jetsam tasks
27- - [x ] narrowed() --> withset()
28- - [x ] reset abort on new `netop.compute() `
29- - [x ] raise if rescheduled/endured ops
30- - [x ] define sideffects on target "sideffected" needs
31- - [x ] Operations behave like a regular decorator when fn given in 1st call.
26+ - [+ ] jetsam tasks
27+ - [+ ] narrowed() --> withset()
28+ - [+ ] reset abort on new `netop.compute() `
29+ - [+ ] raise if rescheduled/endured ops
30+ - [+ ] define sideffects on target "sideffected" needs
31+ - [+ ] Operations behave like a regular decorator when fn given in 1st call.
3232 Merge FuncOp+OpBuilder.
33+ - [+] modifiers inherit a single class (to allow combinations)
34+ - [+] Optional sideffected
35+ - [+] Delegate FuncOp.__call__() --> compute().
36+ - [ ] Rename NetOp -> pipeline; unify compose() -> Pipeline class
37+ - [ ] Function access executing Operation & Plan from its context.
38+ - [ ] Unify OpTask & FuncOp
39+ - [ ] function self-toggles `returns-dict ` amidst execution.
40+ - [ ] break cycles with dijkstra; weights
41+ - [ ] Merge tutorial (operations + composition)
42+ - [ ] Config DEBUG flags:
43+ - [ ] skip - evictions(drop config)
44+ - [ ] keep SFX in outputs
3345
3446 - plot:
3547
36- - [x] plot red partial outs/failures
37- - [x] plot graphs with Graphviz sphinx-extension
38- - [x] HTML-table op-nodes to allow decorations
39- - [x] plottable Operations
40- - [x] Op-node badges
41-
42- - [ ] sphinxext: derive filename early, to allow xrefs and links early
43- - [ ] Link to SVG image in a new window
44- - [ ] Merged operation clusters
48+ - [+] plot red partial outs/failures
49+ - [+] plot graphs with Graphviz sphinx-extension
50+ - [+] HTML-table op-nodes to allow decorations
51+ - [+] plottable Operations
52+ - [+] Op-node badges
53+ - [+] fix(sphinxext): deprecated sphinx.add_object()
54+
55+ - [+] sphinxext: derive filename early, to allow xrefs and links early
56+ - [+] Click on SVG to open it in a new window
57+ - [+] Merged operation clusters
58+ - [ ] Badges on Data
4559 - [ ] update legend (or generate it dynamically)
4660 - [ ] sphinxext: extend standard `doctest ` module (instead of sphinx-builder)
47- - [ ] fix(sphinxext): deprecated sphinx.add_object()
61+ - [ ] sphinx: autodoc Pipelines & Ops
4862
4963 - doc:
5064
51- - [x] explain rescheduled & endured in tutorial.
52- - [x] `aliases ` in tutorial & terms
53-
54- - [ ] Optional sol_sideffects
55- - [ ] Rename NetOp -> graphkit | pipeline
56- - [ ] modifiers inherit a single class (to allow combinations)
57- - [ ] sphinx: autodoc pipelines
58- - [ ] Allow for Optional `solution sideffect `
59- - [ ] break cycles with dijkstra; weights
60- - [ ] Merge tutorial (operations + composition)
61- - [ ] alias compose() <-- NetOp
65+ - [+] explain rescheduled & endured in tutorial.
66+ - [+] aliases in tutorial & terms
6267
6368 - Dropped:
6469
70+ - [-] Solution-retriever modifier;
71+ DROPPED: easier and more generic to access solution from Op-context.
6572 - [-] `solution.executed ` pre-populated with all operations
6673 - [-] parallel batches restart from last position in steps
6774 - [-] covert custom op classes & modifiers directly into mergeable networkx graphs;
@@ -79,17 +86,60 @@ Changelog
7986%%%%%%%%%
8087
8188
82- v7.1.0 (3 May 2020, @ankostis): Cancelable sideffects, theme-ize & expand everything
89+ v7.1.0 (4 May 2020, @ankostis): Cancelable sideffects, theme-ize & expand everything
8390====================================================================================
8491|v440-flowchart |
8592
86- + break(plot): rename graph/node/edge control attribute ``_no_plot --> no_plot ``.
87- + break(plot): pass verbatim any `nx-attrs ` starting with ``'graphviz.' `` into
93+ Should have been a MAJOR BUMP due to breaking renames, but just out of
94+ another 6.x --> 7.x major bump.
95+
96+ NET
97+ ---
98+ + FIX: rescheduled operations were not canceling all downstream deps & operations.
99+ + FEAT: Cancelable sideffects: a :term: `reschedule `\s operation may return
100+ a "falsy" sideffect to cancel downstream operations.
101+
102+ + ``NO_RESULT `` constant cancels also sideffects.
103+
104+ + ENH(OP): more intuitive API, ``compute() `` may be called with no args,
105+ or a single string as `outputs ` param. Operation's ``__call__ `` now delegates
106+ to ``compute() `` - to quickly experiment with function, access it from the
107+ operation's :attr: `.FunctionalOperation.fn ` attribute
108+
109+ MODIFIERS
110+ ---------
111+ + BREAK: renamed modifiers ``sol_sideffect --> sideffected ``, to reduce terminology
112+ mental load for the users.
113+ + ENH: support combinations of modifiers (e.g. optional sideffects).
114+ + REFACT: convert modifiers classes --> factory functions, producing :class: `._Modifier `
115+ instances (normally not managed by the user).
116+
117+ PLOT
118+ ----
119+ + ENH: Theme-ize all; expand callables (beyond Refs and templates).
120+ + BREAK: rename ``Theme.with_set() `` --> :meth: `.Theme.withset() `.
121+ + break: pass verbatim any `nx-attrs ` starting with ``'graphviz.' `` into
88122 plotting process (instead of passing everything but private attributes).
89- + break: raise ``TypeError `` instead of ``ValueError `` wherever it must.
90- + ENH(plot): expand callables (beyond Refs and templates).
123+ + break: rename graph/node/edge control attributes:
124+
125+ + ``_no_plot --> no_plot ``.
126+ + ``_alias_of --> alias_of ``.
127+
128+ + FEAT: draw combined pipelines as clusters
129+ + enh: corrected and richer styles for data nodes.
130+ + enh: unify op-badges on plot with diacritics in their string-representation.
91131+ ENH(sphinxext): clicking on an SVG opens the diagram in a new tab.
92- + fix(sphinxext): don't choke on duplicate ``:name: `` in :rst:dir: `graphtik` ` directives.
132+ + fix(sphinxext): don't choke on duplicate ``:name: `` in :rst:dir: `graphtik ` directives.
133+ + fix(sphinxext): fix deprecation of sphinx ``add_object() `` with ``note_object() ``.
134+
135+ Various
136+ -------
137+ + break: raise ``TypeError `` instead of ``ValueError `` wherever it must.
138+ + DOC(operations): heavily restructured chapter - now might stand alone.
139+ Started using the `pipeline ` name more often.
140+ + doc: use as sample diagram in the project opening an "endured" one (instead of
141+ an outdated plain simple on).
142+ + doc: renamed document: ``composition.py --> pipelines.py ``
93143
94144.. |v440-flowchart | raw :: html
95145 :file: docs/source/images/GraphtikFlowchart-v4.4.0.svg
@@ -122,7 +172,7 @@ v7.0.0 (28 Apr 2020, @ankostis): In-solution sideffects, unified OpBuilder, plot
122172
123173MODIFIERS:
124174----------
125- + BREAK: rename `arg --> mapping ``, which conveys the correct meaning.
175+ + BREAK: rename `arg --> mapped ``, which conveys the correct meaning.
126176
127177+ FEAT: Introduced :term`sideffected`\s , to allow for certain dependencies
128178 to be produced & consumed by function to apply "sideffects, without creating
0 commit comments