Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add CylcTree and use Deltas #458

Merged
merged 46 commits into from
Aug 4, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
2dca620
Add CylcTree data structure to handle update/remove/add nodes to a tr…
kinow May 1, 2020
80e3878
Update tree using the CylcTree in Vuex and other components
kinow May 1, 2020
451a37e
Set tree state in the workflows module
kinow May 3, 2020
838f969
Use beforeRouteLeave instead of beforeDestroy (views are not always d…
kinow May 3, 2020
2bb1d85
Create one subscription in the view with a query with fragments, load…
kinow May 13, 2020
fc70082
Create family node from familyProxy.firstParent if not already in the…
kinow May 14, 2020
9987d9c
Update unit tests (require firstParent in job, already in GraphQL query)
kinow May 15, 2020
8b41136
Add note to vue configuration file about debugging with IDEs
kinow May 15, 2020
dfdb5d5
Use new deltas.shutdown to clear tree data
kinow May 17, 2020
d5a37a3
Fix bug when parent family is root or undefined (already removed)
kinow May 17, 2020
aa0bfd6
Fix bug computing the cycle point states (need to tally after everyth…
kinow May 17, 2020
6720aa1
Fix bug when switching routes. Needs to re-initialize view state, and…
kinow May 18, 2020
67ae2eb
Ignore console.error in Tree.vue view
kinow May 18, 2020
39c5186
Removing non-delta related changes from the branch
kinow May 21, 2020
fef890e
Add methods to clear tree, and check whether it is empty or not. Acce…
kinow May 21, 2020
3903a74
Handle cases where a TaskProxy has no jobs, and where a TaskProxy is …
kinow May 25, 2020
f92e4fd
Use deltas for OFFLINE mode
kinow May 28, 2020
fd892b3
Making sure subscriptions are correctly refreshed or stopped when use…
kinow May 28, 2020
c92bcd8
Add changelog
kinow May 28, 2020
e972b46
Add new unit tests for tree/index, but also remove unused function an…
kinow May 28, 2020
1821a76
Add tests for the Workflow view and component/widget
kinow May 29, 2020
2e01a8d
Add unit tests for CylcTree (missing TaskProxy and Job)
kinow May 29, 2020
e478184
Reduce branches in the code (review feedback)
Jun 8, 2020
5dfdac7
Add unit tests for task proxies, and fix bug in nodes removal code (u…
Jun 8, 2020
d6d3c72
Add unit tests for jobs
Jun 9, 2020
9de3d46
Fix JSDocs, remove unnecessary sort when removing cyclepoints (sorted…
Jun 9, 2020
5e9c10d
Ignore mock js files
kinow Jun 9, 2020
9379a38
Add back copyright header
kinow Jun 9, 2020
92334b9
Test the route update and route leave for the Tree view
kinow Jun 9, 2020
301af00
Use a date formatter in tests to have consistent results. Otherwise u…
Jun 9, 2020
7c530f5
Add unit tests for deltas, and adjust the defensive-programming to pr…
Jun 10, 2020
9fe3836
Prevent browser console errors when a task has no jobs
Jun 10, 2020
e03d8e2
Fix runtime errors due to nodes whose parent node is not in the tree …
Jun 10, 2020
cc92f1f
Prevent runtime error due to missing parent in the family (manual tests)
Jun 10, 2020
514b1d4
Prevent runtime error if the parent of a job has been already removed
Jun 11, 2020
ce9d9cf
Fix pruning family proxies, and update tests to assert when cycle poi…
Jun 11, 2020
ae54603
Add code and tests to capture and log exceptions that happened when a…
Jun 12, 2020
207c1e6
Use a mixin for code in tree view and in the workflow view.
kinow Jun 17, 2020
bc03de4
Add note about why the family proxy state was missing
kinow Jul 1, 2020
4b38b8a
Last changes, update the changelog to match the latest change, and re…
kinow Jul 1, 2020
c06f956
Rename treeview mixing to datatree to avoid confusion with Tree View
kinow Jul 1, 2020
425ae06
Remove checks for null/undefined
kinow Jul 1, 2020
8d58958
Keep 1 susbcription with deltas only, no matter number of tree widget…
kinow Jul 2, 2020
7018a3d
Rename src/components/cylc/tree/tree.js to src/components/cylc/tree/c…
kinow Jul 31, 2020
ca68fa4
Update offline mock service, no need to use a Promise
Aug 2, 2020
e589acb
Update change log (now 0.3, not in 0.2 any longer)
kinow Aug 3, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,32 @@ all changes see the [closed
milestones](https://github.com/cylc/cylc-ui/milestones?state=closed) for each
release.

-------------------------------------------------------------------------------
## __cylc-ui-0.3 (2020-??-??)__

Release 0.3 of Cylc UI.

### Backward incompatible changes

None or N/A.

### Enhancements

[#458](https://github.com/cylc/cylc-ui/pull/458) - Add CylcTree and
use deltas for the Tree view and component.

### Fixes

None.

### Documentation

None.

### Security issues

None.

-------------------------------------------------------------------------------
## __cylc-ui-0.2 (2020-07-14)__

Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
"test:unit": "vue-cli-service test:unit"
},
"dependencies": {
"@lumino/algorithm": "^1.3.2",
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have now a function that closes all widgets, so that when you switch workflows in /workflow/:id route, we can clear the Lumino component and re-create the tree only.

To iterate widgets, we need @lumino/algorithm's each and iter. So declaring the dependency here instead of relying on transitive dependency.

"@lumino/datagrid": "^0.3.1",
"@lumino/default-theme": "^0.1.8",
"@lumino/widgets": "^1.9.3",
Expand Down
7 changes: 5 additions & 2 deletions src/components/cylc/Toolbar.vue
Original file line number Diff line number Diff line change
Expand Up @@ -78,20 +78,23 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
<v-list-item
class="py-0 px-8 ma-0"
@click="onClickAddTreeView"
id="toolbar-add-tree-view"
>
<v-list-item-title><v-icon>mdi-file-tree</v-icon> Tree</v-list-item-title>
</v-list-item>
</v-list>
<v-list class="pa-0">
<v-list-item
class="py-0 px-8 ma-0"
@click="onClickAddGraphView"
class="py-0 px-8 ma-0"
@click="onClickAddGraphView"
id="toolbar-add-graph-view"
>
<v-list-item-title><v-icon>mdi-graph</v-icon> Graph</v-list-item-title>
</v-list-item>
<v-list-item
class="py-0 px-8 ma-0"
@click="onClickAddMutationsView"
id="toolbar-add-mutations-view"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes in this file are cosmetic (indentation) and for tests (id's)

>
<v-list-item-title><v-icon>mdi-apple-keyboard-command</v-icon> Mutations</v-list-item-title>
</v-list-item>
Expand Down
Loading