[arvados] created: 2.7.0-6417-gaea34fe6d9

git repository hosting git at public.arvados.org
Fri Apr 12 13:14:34 UTC 2024


        at  aea34fe6d98be7e5084aad6d9e51c8730ecf8d79 (commit)


commit aea34fe6d98be7e5084aad6d9e51c8730ecf8d79
Author: Stephen Smith <stephen at curii.com>
Date:   Fri Apr 12 09:10:04 2024 -0400

    21691: Update tar to 6.2.1
    
    Arvados-DCO-1.1-Signed-off-by: Stephen Smith <stephen at curii.com>

diff --git a/services/workbench2/yarn.lock b/services/workbench2/yarn.lock
index b690f3bf67..de1da9a858 100644
--- a/services/workbench2/yarn.lock
+++ b/services/workbench2/yarn.lock
@@ -18381,8 +18381,8 @@ __metadata:
   linkType: hard
 
 "tar at npm:^6.0.2, tar at npm:^6.1.11, tar at npm:^6.1.2":
-  version: 6.2.0
-  resolution: "tar at npm:6.2.0"
+  version: 6.2.1
+  resolution: "tar at npm:6.2.1"
   dependencies:
     chownr: ^2.0.0
     fs-minipass: ^2.0.0
@@ -18390,7 +18390,7 @@ __metadata:
     minizlib: ^2.1.1
     mkdirp: ^1.0.3
     yallist: ^4.0.0
-  checksum: db4d9fe74a2082c3a5016630092c54c8375ff3b280186938cfd104f2e089c4fd9bad58688ef6be9cf186a889671bf355c7cda38f09bbf60604b281715ca57f5c
+  checksum: f1322768c9741a25356c11373bce918483f40fa9a25c69c59410c8a1247632487edef5fe76c5f12ac51a6356d2f1829e96d2bc34098668a2fc34d76050ac2b6c
   languageName: node
   linkType: hard
 

commit b85a809c724815c2a24f740bcb0e0d3f0bdeb761
Author: Stephen Smith <stephen at curii.com>
Date:   Thu Apr 11 20:30:42 2024 -0400

    21691: Add minor improvements to test reliability
    
    Arvados-DCO-1.1-Signed-off-by: Stephen Smith <stephen at curii.com>

diff --git a/services/workbench2/cypress/e2e/collection.cy.js b/services/workbench2/cypress/e2e/collection.cy.js
index 38a0c973fd..20ecf11c09 100644
--- a/services/workbench2/cypress/e2e/collection.cy.js
+++ b/services/workbench2/cypress/e2e/collection.cy.js
@@ -143,7 +143,7 @@ describe("Collection panel tests", function () {
                 cy.get("[data-cy=name-field]").within(() => {
                     cy.get("input").type(" renamed");
                 });
-                cy.get("[data-cy=form-submit-btn]").click();
+                cy.get("[data-cy=form-submit-btn]").click({timeout: 10000});
             });
         cy.get("[data-cy=form-dialog]").should("not.exist");
         // Attempt to rename the collection with the duplicate name
diff --git a/services/workbench2/cypress/e2e/sharing.cy.js b/services/workbench2/cypress/e2e/sharing.cy.js
index 05a7d470bf..4cb7e48785 100644
--- a/services/workbench2/cypress/e2e/sharing.cy.js
+++ b/services/workbench2/cypress/e2e/sharing.cy.js
@@ -31,7 +31,7 @@ describe('Sharing tests', function () {
 
             cy.get('main').contains(sharedCollection.name).rightclick();
             cy.get('[data-cy=context-menu]').within(() => {
-                cy.contains('Share').click();
+                cy.contains('Share').click({ waitForAnimations: false });
             });
             cy.get('.sharing-dialog').within(() => {
                 cy.contains('Sharing URLs').click();
@@ -63,7 +63,7 @@ describe('Sharing tests', function () {
             cy.contains('Refresh').click();
             cy.get('main').contains(mySharedWritableProject.name).rightclick();
             cy.get('[data-cy=context-menu]').within(() => {
-                cy.contains('Share').click();
+                cy.contains('Share').click({ waitForAnimations: false });
             });
             cy.get('[id="select-permissions"]').as('selectPermissions');
             cy.get('@selectPermissions').click();
@@ -73,7 +73,7 @@ describe('Sharing tests', function () {
             cy.get('[role=tooltip]').click();
             cy.get('@sharingDialog').within(() => {
                 cy.get('[data-cy=add-invited-people]').click();
-                cy.contains('Close').click();
+                cy.contains('Close').click({ waitForAnimations: false });
             });
         });
 
@@ -84,14 +84,14 @@ describe('Sharing tests', function () {
             cy.contains('Refresh').click();
             cy.get('main').contains(mySharedReadonlyProject.name).rightclick();
             cy.get('[data-cy=context-menu]').within(() => {
-                cy.contains('Share').click();
+                cy.contains('Share').click({ waitForAnimations: false });
             });
             cy.get('.sharing-dialog').as('sharingDialog');
             cy.get('[data-cy=invite-people-field]').find('input').type(activeUser.user.email);
             cy.get('[role=tooltip]').click();
             cy.get('@sharingDialog').within(() => {
                 cy.get('[data-cy=add-invited-people]').click();
-                cy.contains('Close').click();
+                cy.contains('Close').click({ waitForAnimations: false });
             });
         });
 
@@ -117,7 +117,7 @@ describe('Sharing tests', function () {
                 // Test move to trash
                 cy.get('main').contains(mySharedWritableProject.name).rightclick();
                 cy.get('[data-cy=context-menu]').should('contain', 'Move to trash');
-                cy.get('[data-cy=context-menu]').contains('Move to trash').click();
+                cy.get('[data-cy=context-menu]').contains('Move to trash').click({ waitForAnimations: false });
 
                 // GUARD: Let's wait for the above removed project to disappear
                 // before continuing, to avoid intermittent failures.
@@ -161,7 +161,7 @@ describe('Sharing tests', function () {
             .then(function ([]) {
                 cy.loginAs(adminUser);
                 cy.get('[data-cy=project-panel]').contains(collName).rightclick();
-                cy.get('[data-cy=context-menu]').contains('Share').click();
+                cy.get('[data-cy=context-menu]').contains('Share').click({ waitForAnimations: false });
                 cy.get('button').get('[data-cy=add-invited-people]').should('be.disabled');
                 cy.get('[data-cy=invite-people-field] input').type('Anonymous');
                 cy.get('div[role=tooltip]').contains('anonymous').click();

commit 3de055c028a3e761de60d955f450b06ccee21380
Author: Stephen Smith <stephen at curii.com>
Date:   Thu Apr 11 20:29:04 2024 -0400

    21691: Add types to replace files methods for differing parameter/result types
    
    Arvados-DCO-1.1-Signed-off-by: Stephen Smith <stephen at curii.com>

diff --git a/services/workbench2/src/services/collection-service/collection-service.ts b/services/workbench2/src/services/collection-service/collection-service.ts
index e50e5ed350..12d31d1678 100644
--- a/services/workbench2/src/services/collection-service/collection-service.ts
+++ b/services/workbench2/src/services/collection-service/collection-service.ts
@@ -3,7 +3,7 @@
 // SPDX-License-Identifier: AGPL-3.0
 
 import { CollectionResource, defaultCollectionSelectedFields } from "models/collection";
-import { AxiosInstance } from "axios";
+import { AxiosInstance, AxiosResponse } from "axios";
 import { CollectionFile, CollectionDirectory } from "models/collection-file";
 import { WebDAV } from "common/webdav";
 import { AuthService } from "../auth-service/auth-service";
@@ -20,6 +20,11 @@ type CollectionPartialUpdateOrCreate =
     | (Partial<CollectionResource> & Pick<CollectionResource, "uuid">)
     | (Partial<CollectionResource> & Pick<CollectionResource, "ownerUuid">);
 
+type ReplaceFilesPayload = {
+    collection: Partial<CollectionResource>;
+    replace_files: {[key: string]: string};
+}
+
 export const emptyCollectionPdh = "d41d8cd98f00b204e9800998ecf8427e+0";
 export const SOURCE_DESTINATION_EQUAL_ERROR_MESSAGE = "Source and destination cannot be the same";
 
@@ -78,7 +83,7 @@ export class CollectionService extends TrashableResourceService<CollectionResour
     }
 
     private replaceFiles(data: CollectionPartialUpdateOrCreate, fileMap: {}, showErrors?: boolean) {
-        const payload = {
+        const payload: ReplaceFilesPayload = {
             collection: {
                 preserve_version: true,
                 ...CommonService.mapKeys(snakeCase)(data),
@@ -89,14 +94,14 @@ export class CollectionService extends TrashableResourceService<CollectionResour
         };
         if (data.uuid) {
             return CommonService.defaultResponse(
-                this.serverApi.put<CollectionResource>(`/${this.resourceType}/${data.uuid}`, payload),
+                this.serverApi.put<ReplaceFilesPayload, AxiosResponse<CollectionResource>>(`/${this.resourceType}/${data.uuid}`, payload),
                 this.actions,
                 true, // mapKeys
                 showErrors
             );
         } else {
             return CommonService.defaultResponse(
-                this.serverApi.post<CollectionResource>(`/${this.resourceType}`, payload),
+                this.serverApi.post<ReplaceFilesPayload, AxiosResponse<CollectionResource>>(`/${this.resourceType}`, payload),
                 this.actions,
                 true, // mapKeys
                 showErrors

commit f03a846bbc12694af40944855196b2136660b843
Author: Stephen Smith <stephen at curii.com>
Date:   Thu Apr 11 20:27:50 2024 -0400

    21691: Add type to login method to satisfy result type
    
    Arvados-DCO-1.1-Signed-off-by: Stephen Smith <stephen at curii.com>

diff --git a/services/workbench2/src/views-components/login-form/login-form.tsx b/services/workbench2/src/views-components/login-form/login-form.tsx
index 6c5902653b..7d71078c31 100644
--- a/services/workbench2/src/views-components/login-form/login-form.tsx
+++ b/services/workbench2/src/views-components/login-form/login-form.tsx
@@ -13,6 +13,7 @@ import { DispatchProp } from 'react-redux';
 import { saveApiToken } from 'store/auth/auth-action';
 import { navigateToRootProject } from 'store/navigation/navigation-action';
 import { replace } from 'react-router-redux';
+import { PasswordLoginResponse } from 'views/login-panel/login-panel';
 
 type CssRules = 'root' | 'loginBtn' | 'card' | 'wrapper' | 'progress';
 
@@ -46,7 +47,7 @@ const styles: StyleRulesCallback<CssRules> = theme => ({
 });
 
 type LoginFormProps = DispatchProp<any> & WithStyles<CssRules> & {
-    handleSubmit: (username: string, password: string) => AxiosPromise;
+    handleSubmit: (username: string, password: string) => AxiosPromise<PasswordLoginResponse>;
     loginLabel?: string,
 };
 
diff --git a/services/workbench2/src/views/login-panel/login-panel.tsx b/services/workbench2/src/views/login-panel/login-panel.tsx
index f834b3b6df..452a66672a 100644
--- a/services/workbench2/src/views/login-panel/login-panel.tsx
+++ b/services/workbench2/src/views/login-panel/login-panel.tsx
@@ -10,7 +10,7 @@ import { login, authActions } from 'store/auth/auth-action';
 import { ArvadosTheme } from 'common/custom-theme';
 import { RootState } from 'store/store';
 import { LoginForm } from 'views-components/login-form/login-form';
-import Axios from 'axios';
+import Axios, { AxiosResponse } from 'axios';
 import { Config } from 'common/config';
 import { sanitizeHTML } from 'common/html-sanitize';
 
@@ -51,11 +51,17 @@ const styles: StyleRulesCallback<CssRules> = (theme: ArvadosTheme) => ({
     }
 });
 
+export type PasswordLoginResponse = {
+    uuid?: string;
+    api_token?: string;
+    message?: string;
+};
+
 const doPasswordLogin = (url: string) => (username: string, password: string) => {
     const formData: string[] = [];
     formData.push('username='+encodeURIComponent(username));
     formData.push('password='+encodeURIComponent(password));
-    return Axios.post(`${url}/arvados/v1/users/authenticate`, formData.join('&'), {
+    return Axios.post<string, AxiosResponse<PasswordLoginResponse>>(`${url}/arvados/v1/users/authenticate`, formData.join('&'), {
         headers: {
             'Content-Type': 'application/x-www-form-urlencoded'
         },

commit d6225ffd9c44b5e8b7e4d6f6c78201ecb7056480
Author: Stephen Smith <stephen at curii.com>
Date:   Thu Apr 11 20:27:01 2024 -0400

    21691: Avoid error by changing method of clearing token
    
    Arvados-DCO-1.1-Signed-off-by: Stephen Smith <stephen at curii.com>

diff --git a/services/workbench2/src/services/services.ts b/services/workbench2/src/services/services.ts
index 48cd931127..12938e82d6 100644
--- a/services/workbench2/src/services/services.ts
+++ b/services/workbench2/src/services/services.ts
@@ -44,7 +44,8 @@ export function setAuthorizationHeader(services: ServiceRepository, token: strin
 }
 
 export function removeAuthorizationHeader(services: ServiceRepository) {
-    delete services.apiClient.defaults.headers.common;
+    services.apiClient.defaults.headers.common = {};
+
     services.keepWebdavClient.setAuthorization(undefined);
     services.apiWebdavClient.setAuthorization(undefined);
 }

commit 0f2720f0aa2bc8399fdea5a647584bd90aca7547
Author: Stephen Smith <stephen at curii.com>
Date:   Thu Apr 11 20:26:15 2024 -0400

    21691: Update axios to 0.28.1
    
    Arvados-DCO-1.1-Signed-off-by: Stephen Smith <stephen at curii.com>

diff --git a/services/workbench2/package.json b/services/workbench2/package.json
index 94e35029c4..71dc4d7cee 100644
--- a/services/workbench2/package.json
+++ b/services/workbench2/package.json
@@ -28,7 +28,7 @@
     "@types/react-window": "1.8.2",
     "@types/redux-form": "7.4.12",
     "@types/shell-escape": "^0.2.0",
-    "axios": "^0.21.1",
+    "axios": "^0.28.1",
     "bootstrap": "^5.3.2",
     "caniuse-lite": "1.0.30001606",
     "classnames": "2.2.6",
diff --git a/services/workbench2/yarn.lock b/services/workbench2/yarn.lock
index 21fcc817c5..b690f3bf67 100644
--- a/services/workbench2/yarn.lock
+++ b/services/workbench2/yarn.lock
@@ -4162,7 +4162,7 @@ __metadata:
     "@types/shell-escape": ^0.2.0
     "@types/sinon": 7.5
     "@types/uuid": 3.4.4
-    axios: ^0.21.1
+    axios: ^0.28.1
     axios-mock-adapter: 1.17.0
     bootstrap: ^5.3.2
     caniuse-lite: 1.0.30001606
@@ -4439,12 +4439,14 @@ __metadata:
   languageName: node
   linkType: hard
 
-"axios at npm:^0.21.1":
-  version: 0.21.4
-  resolution: "axios at npm:0.21.4"
+"axios at npm:^0.28.1":
+  version: 0.28.1
+  resolution: "axios at npm:0.28.1"
   dependencies:
-    follow-redirects: ^1.14.0
-  checksum: 44245f24ac971e7458f3120c92f9d66d1fc695e8b97019139de5b0cc65d9b8104647db01e5f46917728edfc0cfd88eb30fc4c55e6053eef4ace76768ce95ff3c
+    follow-redirects: ^1.15.0
+    form-data: ^4.0.0
+    proxy-from-env: ^1.1.0
+  checksum: 5115a38d79064d07437c5a28f15841e3607634040e3120ec06a2c4367a7d07cf213b16496eab53b6f58ebc5fb377a440ba9ed4782529b14449a1e285734bfb54
   languageName: node
   linkType: hard
 
@@ -5851,7 +5853,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"combined-stream at npm:^1.0.6, combined-stream at npm:~1.0.6":
+"combined-stream at npm:^1.0.6, combined-stream at npm:^1.0.8, combined-stream at npm:~1.0.6":
   version: 1.0.8
   resolution: "combined-stream at npm:1.0.8"
   dependencies:
@@ -8712,7 +8714,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"follow-redirects at npm:^1.0.0, follow-redirects at npm:^1.14.0":
+"follow-redirects at npm:^1.0.0, follow-redirects at npm:^1.15.0":
   version: 1.15.6
   resolution: "follow-redirects at npm:1.15.6"
   peerDependenciesMeta:
@@ -8777,6 +8779,17 @@ __metadata:
   languageName: node
   linkType: hard
 
+"form-data at npm:^4.0.0":
+  version: 4.0.0
+  resolution: "form-data at npm:4.0.0"
+  dependencies:
+    asynckit: ^0.4.0
+    combined-stream: ^1.0.8
+    mime-types: ^2.1.12
+  checksum: 01135bf8675f9d5c61ff18e2e2932f719ca4de964e3be90ef4c36aacfc7b9cb2fceb5eca0b7e0190e3383fe51c5b37f4cb80b62ca06a99aaabfcfd6ac7c9328c
+  languageName: node
+  linkType: hard
+
 "form-data at npm:~2.3.2":
   version: 2.3.3
   resolution: "form-data at npm:2.3.3"
@@ -15335,6 +15348,13 @@ __metadata:
   languageName: node
   linkType: hard
 
+"proxy-from-env at npm:^1.1.0":
+  version: 1.1.0
+  resolution: "proxy-from-env at npm:1.1.0"
+  checksum: ed7fcc2ba0a33404958e34d95d18638249a68c430e30fcb6c478497d72739ba64ce9810a24f53a7d921d0c065e5b78e3822759800698167256b04659366ca4d4
+  languageName: node
+  linkType: hard
+
 "prr at npm:~1.0.1":
   version: 1.0.1
   resolution: "prr at npm:1.0.1"

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list