[ARVADOS-WORKBENCH2] updated: 2.1.0-455-gc32095f0
Git user
git at public.arvados.org
Tue Jul 13 00:22:18 UTC 2021
Summary of changes:
docker/Dockerfile | 4 ++--
src/common/url.ts | 2 +-
src/components/tree/virtual-tree.tsx | 2 ++
src/lib/cwl-svg/graph/edge.ts | 8 ++++----
src/lib/cwl-svg/graph/workflow.ts | 10 ----------
src/lib/cwl-svg/plugins/deletion/deletion.ts | 2 +-
src/lib/cwl-svg/plugins/edge-hover/edge-hover.ts | 8 ++++----
src/lib/cwl-svg/plugins/port-drag/port-drag.ts | 2 +-
src/lib/cwl-svg/plugins/selection/selection.ts | 4 ++--
src/lib/cwl-svg/utils/dom-events.ts | 1 +
src/lib/cwl-svg/utils/geometry.ts | 2 +-
src/lib/cwl-svg/utils/html-utils.ts | 2 +-
.../collection-service/collection-service-files-response.ts | 2 +-
src/store/dialog/with-dialog.ts | 1 +
src/views/workbench/fed-login.tsx | 2 +-
src/views/workbench/workbench-loading-screen.tsx | 2 +-
16 files changed, 24 insertions(+), 30 deletions(-)
via c32095f06a2e2843386120bf21402974b0066954 (commit)
via 9a0c98ac8b60b5d3341f05eccc9a472810bc82b8 (commit)
via dbaac1c92b4bdf44f3b400cc7178f71b1f0582eb (commit)
from 43fff13af5aa7a07e6fe942e010bed62bd95bc08 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
commit c32095f06a2e2843386120bf21402974b0066954
Author: Lucas Di Pentima <lucas.dipentima at curii.com>
Date: Mon Jul 12 21:21:50 2021 -0300
17782: Removes the last linter warnings.
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <lucas.dipentima at curii.com>
diff --git a/src/common/url.ts b/src/common/url.ts
index 185737ca..6d66778a 100644
--- a/src/common/url.ts
+++ b/src/common/url.ts
@@ -3,7 +3,7 @@
// SPDX-License-Identifier: AGPL-3.0
export function getUrlParameter(search: string, name: string) {
- const safeName = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
+ const safeName = name.replace(/[[]/, '\\[').replace(/[\]]/, '\\]');
const regex = new RegExp('[\\?&]' + safeName + '=([^&#]*)');
const results = regex.exec(search);
return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
diff --git a/src/components/tree/virtual-tree.tsx b/src/components/tree/virtual-tree.tsx
index f353fd05..ca7cd40c 100644
--- a/src/components/tree/virtual-tree.tsx
+++ b/src/components/tree/virtual-tree.tsx
@@ -84,6 +84,7 @@ export interface VirtualTreeItem<T> extends TreeItem<T> {
// For some reason, on TSX files it isn't accepted just one generic param, so
// I'm using <T, _> as a workaround.
+// eslint-disable-next-line
export const Row = <T, _>(itemList: VirtualTreeItem<T>[], render: any, treeProps: TreeProps<T>) => withStyles(styles)(
(props: React.PropsWithChildren<ListChildComponentProps> & WithStyles<CssRules>) => {
const { index, style, classes } = props;
@@ -174,6 +175,7 @@ export const Row = <T, _>(itemList: VirtualTreeItem<T>[], render: any, treeProp
const itemSize = 30;
+// eslint-disable-next-line
export const VirtualList = <T, _>(height: number, width: number, items: VirtualTreeItem<T>[], render: any, treeProps: TreeProps<T>) =>
<FixedSizeList
height={height}
diff --git a/src/services/collection-service/collection-service-files-response.ts b/src/services/collection-service/collection-service-files-response.ts
index 36cb3dc6..b7e1f9c7 100644
--- a/src/services/collection-service/collection-service-files-response.ts
+++ b/src/services/collection-service/collection-service-files-response.ts
@@ -20,7 +20,7 @@ export const sortFilesTree = (tree: Tree<CollectionDirectory | CollectionFile>)
};
export const extractFilesData = (document: Document) => {
- const collectionUrlPrefix = /\/c=([^\/]*)/;
+ const collectionUrlPrefix = /\/c=([^/]*)/;
return Array
.from(document.getElementsByTagName('D:response'))
.slice(1) // omit first element which is collection itself
diff --git a/src/store/dialog/with-dialog.ts b/src/store/dialog/with-dialog.ts
index 78543fc9..ea96ca0d 100644
--- a/src/store/dialog/with-dialog.ts
+++ b/src/store/dialog/with-dialog.ts
@@ -20,6 +20,7 @@ export type WithDialogDispatchProps = {
export type WithDialogProps<T> = WithDialogStateProps<T> & WithDialogDispatchProps;
export const withDialog = (id: string) =>
// TODO: How to make compiler happy with & P instead of & any?
+ // eslint-disable-next-line
<T, P>(component: React.ComponentType<WithDialogProps<T> & any>) =>
connect(mapStateToProps(id), mapDispatchToProps(id))(component);
diff --git a/src/views/workbench/fed-login.tsx b/src/views/workbench/fed-login.tsx
index 14229519..595f136b 100644
--- a/src/views/workbench/fed-login.tsx
+++ b/src/views/workbench/fed-login.tsx
@@ -42,7 +42,7 @@ export const FedLogin = connect(mapStateToProps)(
}
const fedtoken = (remoteHostsConfig[k].loginCluster === localCluster)
? apiToken : getSaltedToken(k, apiToken);
- return <iframe key={k} src={`${remoteHostsConfig[k].workbench2Url}/fedtoken?api_token=${fedtoken}`} style={{
+ return <iframe key={k} title={k} src={`${remoteHostsConfig[k].workbench2Url}/fedtoken?api_token=${fedtoken}`} style={{
height: 0,
width: 0,
visibility: "hidden"
diff --git a/src/views/workbench/workbench-loading-screen.tsx b/src/views/workbench/workbench-loading-screen.tsx
index 584ba3ae..1b70ece6 100644
--- a/src/views/workbench/workbench-loading-screen.tsx
+++ b/src/views/workbench/workbench-loading-screen.tsx
@@ -26,7 +26,7 @@ const styles: StyleRulesCallback<CssRules> = (theme: ArvadosTheme) => ({
export const WorkbenchLoadingScreen = withStyles(styles)(({ classes }: WithStyles<CssRules>) =>
<Grid container direction="column" alignItems='center' justify='center' className={classes.root}>
- <img src='/arvados_logo.png' className={classes.img} />
+ <img src='/arvados_logo.png' alt='Arvados logo' className={classes.img} />
<CircularProgress data-cy='loading-spinner' />
</Grid>
);
commit 9a0c98ac8b60b5d3341f05eccc9a472810bc82b8
Author: Lucas Di Pentima <lucas.dipentima at curii.com>
Date: Mon Jul 12 21:08:04 2021 -0300
17782: removes linter warnings for cwl-svg code.
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <lucas.dipentima at curii.com>
diff --git a/src/lib/cwl-svg/graph/edge.ts b/src/lib/cwl-svg/graph/edge.ts
index 74fb0afc..334a5148 100644
--- a/src/lib/cwl-svg/graph/edge.ts
+++ b/src/lib/cwl-svg/graph/edge.ts
@@ -10,8 +10,8 @@ export class Edge {
return "";
}
- const [sourceSide, sourceStepId, sourcePort] = edge.source.id.split("/");
- const [destSide, destStepId, destPort] = edge.destination.id.split("/");
+ const [, sourceStepId, sourcePort] = edge.source.id.split("/");
+ const [, destStepId, destPort] = edge.destination.id.split("/");
const sourceVertex = containerNode.querySelector(`.node[data-id="${sourceStepId}"] .output-port[data-port-id="${sourcePort}"] .io-port`) as SVGGElement;
const destVertex = containerNode.querySelector(`.node[data-id="${destStepId}"] .input-port[data-port-id="${destPort}"] .io-port`) as SVGGElement;
@@ -65,8 +65,8 @@ export class Edge {
const ns = "http://www.w3.org/2000/svg";
const edge = document.createElementNS(ns, "g");
- const [sourceSide, sourceStepId, sourcePort] = (connectionIDs.source || "//").split("/");
- const [destSide, destStepId, destPort] = (connectionIDs.destination || "//").split("/");
+ const [, sourceStepId, sourcePort] = (connectionIDs.source || "//").split("/");
+ const [, destStepId, destPort] = (connectionIDs.destination || "//").split("/");
edge.classList.add("edge");
if (sourceStepId) {
diff --git a/src/lib/cwl-svg/graph/workflow.ts b/src/lib/cwl-svg/graph/workflow.ts
index cb6f2281..f0cd1c4e 100644
--- a/src/lib/cwl-svg/graph/workflow.ts
+++ b/src/lib/cwl-svg/graph/workflow.ts
@@ -181,21 +181,11 @@ export class Workflow {
* If there is a missing sbg:x or sbg:y property on any node model,
* graph should be arranged to avoid random placement.
*/
- let arrangeNecessary = false;
-
let nodeTemplate = "";
for (const node of nodes) {
const patched = GraphNode.patchModelPorts(node);
- const missingX = isNaN(parseInt(patched.customProps["sbg:x"], 10));
- const missingY = isNaN(parseInt(patched.customProps["sbg:y"], 10));
-
- if (missingX || missingY) {
- arrangeNecessary = true;
- }
-
nodeTemplate += GraphNode.makeTemplate(patched);
-
}
this.workflow.innerHTML += nodeTemplate;
diff --git a/src/lib/cwl-svg/plugins/deletion/deletion.ts b/src/lib/cwl-svg/plugins/deletion/deletion.ts
index f3e6498f..3af75434 100644
--- a/src/lib/cwl-svg/plugins/deletion/deletion.ts
+++ b/src/lib/cwl-svg/plugins/deletion/deletion.ts
@@ -29,7 +29,7 @@ export class DeletionPlugin extends PluginBase {
}
private onDelete(ev: KeyboardEvent) {
- if (ev.which !== 8 && ev.which !== 46 || !(ev.target instanceof SVGElement)) {
+ if ((ev.which !== 8 && ev.which !== 46) || !(ev.target instanceof SVGElement)) {
return;
}
diff --git a/src/lib/cwl-svg/plugins/edge-hover/edge-hover.ts b/src/lib/cwl-svg/plugins/edge-hover/edge-hover.ts
index 01f1ad54..9d3b423b 100644
--- a/src/lib/cwl-svg/plugins/edge-hover/edge-hover.ts
+++ b/src/lib/cwl-svg/plugins/edge-hover/edge-hover.ts
@@ -36,17 +36,17 @@ export class SVGEdgeHoverPlugin extends PluginBase {
const target = ev.target as SVGGElement;
let tipEl: SVGGElement;
- const onMouseMove = ((ev: MouseEvent) => {
+ const onMouseMove = (ev: MouseEvent) => {
const coords = this.workflow.transformScreenCTMtoCanvas(ev.clientX, ev.clientY);
tipEl.setAttribute("x", String(coords.x));
tipEl.setAttribute("y", String(coords.y - 16));
- }).bind(this);
+ };
- const onMouseLeave = ((ev: MouseEvent) => {
+ const onMouseLeave = (ev: MouseEvent) => {
tipEl.remove();
target.removeEventListener("mousemove", onMouseMove);
target.removeEventListener("mouseleave", onMouseLeave)
- }).bind(this);
+ };
this.modelListener = this.workflow.model.on("connection.remove", (source, destination) => {
if (!tipEl) return;
diff --git a/src/lib/cwl-svg/plugins/port-drag/port-drag.ts b/src/lib/cwl-svg/plugins/port-drag/port-drag.ts
index 10f30e07..e5d11e3a 100644
--- a/src/lib/cwl-svg/plugins/port-drag/port-drag.ts
+++ b/src/lib/cwl-svg/plugins/port-drag/port-drag.ts
@@ -265,7 +265,7 @@ export class SVGPortDragPlugin extends PluginBase {
private updateEdge(fromX: number, fromY: number, toX: number, toY: number): void {
const subEdges = this.edgeGroup!.children as HTMLCollectionOf<SVGPathElement>;
- for (let subEdge of <any>subEdges) {
+ for (let subEdge of subEdges as any) {
const path = Workflow.makeConnectionPath(
fromX,
diff --git a/src/lib/cwl-svg/plugins/selection/selection.ts b/src/lib/cwl-svg/plugins/selection/selection.ts
index a4e7a312..443e60ad 100644
--- a/src/lib/cwl-svg/plugins/selection/selection.ts
+++ b/src/lib/cwl-svg/plugins/selection/selection.ts
@@ -146,12 +146,12 @@ export class SelectionPlugin extends PluginBase {
let element: SVGElement | undefined;
- if (element = this.workflow.findParent(target, "node")) {
+ if ((element = this.workflow.findParent(target, "node"))) {
this.selectNode(element);
this.selection.set(element.getAttribute("data-connection-id")!, "node");
this.emitChange(element);
- } else if (element = this.workflow.findParent(target, "edge")) {
+ } else if ((element = this.workflow.findParent(target, "edge"))) {
this.selectEdge(element);
const cid = [
element.getAttribute("data-source-connection"),
diff --git a/src/lib/cwl-svg/utils/dom-events.ts b/src/lib/cwl-svg/utils/dom-events.ts
index 4f8132a0..d7ae43f1 100644
--- a/src/lib/cwl-svg/utils/dom-events.ts
+++ b/src/lib/cwl-svg/utils/dom-events.ts
@@ -31,6 +31,7 @@ export class DomEvents {
const selected = Array.from(this.root.querySelectorAll(selector));
target = ev.target as HTMLElement;
while (target) {
+ // eslint-disable-next-line
if (selected.find(el => el === target)) {
break;
}
diff --git a/src/lib/cwl-svg/utils/geometry.ts b/src/lib/cwl-svg/utils/geometry.ts
index 11b066d9..348a7e20 100644
--- a/src/lib/cwl-svg/utils/geometry.ts
+++ b/src/lib/cwl-svg/utils/geometry.ts
@@ -16,7 +16,7 @@ export class Geometry {
} else {
// node still has parent elements
const {e, f} = node.transform.baseVal.getItem(0).matrix;
- return getPosition(<SVGGElement>node.parentNode, e + addE, f + addF);
+ return getPosition(node.parentNode as SVGGElement, e + addE, f + addF);
}
};
diff --git a/src/lib/cwl-svg/utils/html-utils.ts b/src/lib/cwl-svg/utils/html-utils.ts
index 07b5405d..b7bad2b3 100644
--- a/src/lib/cwl-svg/utils/html-utils.ts
+++ b/src/lib/cwl-svg/utils/html-utils.ts
@@ -10,6 +10,6 @@ export class HtmlUtils {
};
public static escapeHTML(source: string): string {
- return String(source).replace(/[&<>"'\/]/g, s => HtmlUtils.entityMap[s]);
+ return String(source).replace(/[&<>"'/]/g, s => HtmlUtils.entityMap[s]);
}
}
commit dbaac1c92b4bdf44f3b400cc7178f71b1f0582eb
Author: Lucas Di Pentima <lucas.dipentima at curii.com>
Date: Mon Jul 12 20:36:07 2021 -0300
17782: Goes back to node docker image as it installs other needed deps.
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <lucas.dipentima at curii.com>
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 390e1efa..729d62c4 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -2,14 +2,14 @@
#
# SPDX-License-Identifier: AGPL-3.0
-FROM debian:buster
+FROM node:12.22.3-buster
LABEL maintainer="Arvados Package Maintainers <packaging at arvados.org>"
RUN echo deb http://deb.debian.org/debian buster-backports main >> /etc/apt/sources.list.d/backports.list
RUN apt-get update && \
apt-get -yq --no-install-recommends -o Acquire::Retries=6 install \
libsecret-1-0 libsecret-1-dev rpm ruby ruby-dev rubygems build-essential \
- libpam0g-dev libgbm1 && \
+ libpam0g-dev libgbm1 git && \
apt-get clean
RUN apt-get -yq --no-install-recommends -t buster-backports install golang-go && \
apt-get clean
-----------------------------------------------------------------------
hooks/post-receive
--
More information about the arvados-commits
mailing list