Project

General

Profile

Actions

Bug #21461

closed

Undesirable scrollbars appearing in log view

Added by Peter Amstutz 3 months ago. Updated about 2 months ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
Workbench2
Story points:
-
Release relationship:
Auto

Description

This is happening at least on Chrome & Safari


Files

scrollbars.png (760 KB) scrollbars.png Lucas Di Pentima, 02/07/2024 06:51 PM
Screenshot_20240227_093947.png (254 KB) Screenshot_20240227_093947.png Stephen Smith, 02/27/2024 03:10 PM
Screenshot_20240227_093805.png (270 KB) Screenshot_20240227_093805.png Stephen Smith, 02/27/2024 03:10 PM

Subtasks 1 (0 open1 closed)

Task #21520: Review 21461-excessive-scrollbars-fixResolvedStephen Smith03/11/2024Actions
Actions #1

Updated by Lucas Di Pentima 3 months ago

Actions #2

Updated by Peter Amstutz 3 months ago

  • Release set to 69
Actions #3

Updated by Lucas Di Pentima 3 months ago

  • Assigned To deleted (Lucas Di Pentima)
Actions #4

Updated by Peter Amstutz 3 months ago

  • Target version changed from Development 2024-02-14 sprint to Development 2024-02-28 sprint
Actions #5

Updated by Peter Amstutz 3 months ago

  • Target version changed from Development 2024-02-28 sprint to Development 2024-03-13 sprint
Actions #6

Updated by Peter Amstutz 3 months ago

  • Target version changed from Development 2024-03-13 sprint to Development 2024-02-28 sprint
  • Assigned To set to Lucas Di Pentima
Actions #7

Updated by Lucas Di Pentima 3 months ago

  • Status changed from New to In Progress
Actions #8

Updated by Lucas Di Pentima 3 months ago

Updates at commit:f7e69d6 - branch 21461-excessive-scrollbars-fix
Test run: developer-run-tests-services-workbench2-lucas: #3

Even though the fix took me 15 minutes, this story derailed the second I tried to run the integration tests on my new ARM-based laptop.

I figured that just as we build arm64 packages, it would be also nice to have a working dev environment for this architecture, so this is what I did:

  • Updated arvados-server install code to use whatever arch is running on to install the golang compiler, nodejs, and other goodies.
  • Updated Cypress to the latest version (13.x) to be able to run it on arm64. This is a good improvement for the team, as we were using version 6.x so I'm guessing we'll be able to take advantage of many new features.
  • Also updated nodejs to version 14.x, to be able to run the newer Cypress.
  • Updated WB2's Dockerfile to be able to run tests in docker with the current code tree, instead of downloading whatever is in main.
  • Updated WB2's Makefile to be able run individual tests in docker.
  • Fixed failing tests, some of them were relying on previous state and the newer Cypress run every test in isolation by default (as they always suggested in their docs, now it's enforced).
  • Added test for the log viewer, confirming that there're no horizontal scrollbars when really long log lines are displayed.

In addition to the above changes in the arvados repository, I've also made some changes on arvados-dev:

  • Updated several things on the jenkins wb2 image, that we don't really need as we now run those test using the normal test runner image (didn't realize this until it was too late) -- maybe we should just remove all those files to avoid further confusion?
  • Updated the arvados test packer files & pipeline to be able to specify an arvados commit hash. This is needed to do testing before merging to main.
  • Created the new arvados test image with the improvements explained above, its ID is: jenkins-image-arvados-tests-20240221225354
  • Created a temporary pipeline to test the new arvados-tests image to confirm Workbench2 tests run with the newer Cypress: (https://ci.arvados.org/view/Developer/job/developer-run-tests-services-workbench2-lucas/) -- once the branch is merged, we can update the official pipeline to use the new image and remove this one.
Actions #9

Updated by Lucas Di Pentima 3 months ago

Just as an additional note, one of the processes showing scrollbars is: tordo-xvhdp-2fktut90mk8pu2u

Actions #10

Updated by Stephen Smith 2 months ago

The scrollbar fix looks good - it seems though that the cypress change causes some changed behaviors with the firefox runner when running locally

  • It would be nice to have experimentalRunAllSpecs: true, in the e2e section of cypress.config.ts since the run all tests functionality was changed to experimental in cypress 10 apparently
  • A few of the tests I'm having trouble passing locally now
    • In collection spec the file upload cancel all files test fails for me because one of the files completes uploading before it can click the cancel button
    • In project spec it fails very consistently on adding Animal: Dog with the error tag key/value is an alias, must be provided as x
    • The copy to clipboard tests in project and search spec fail in the firefox runner, copying to clipboard now seems to open a browser dialog which pauses the tests and it doesn't seem to be able to use win.navigator.clipboard.readText() anymore - the clipboard might need to be simulated to get around this
Actions #11

Updated by Peter Amstutz 2 months ago

  • Target version changed from Development 2024-02-28 sprint to Development 2024-03-13 sprint
Actions #12

Updated by Lucas Di Pentima 2 months ago

Updates at 78ba2ad
Test run: developer-run-tests-services-workbench2-lucas: #5

  • Added experimentalRunAllSpecs: true as requested.
  • Updated again Cypress to latest.
  • Updated caniuse-lite just in case.
  • Improved success rate on Firefox on the failing test from the project spec by calling blur() after input entry. Not sure why, but in my tests, instead of failing 1 every 2 times, went to failing 1 every 6 or 7 times. Worth mentioning that running the same set of tests on Chromium or Electron didn't fail at all.
  • Added memory management related config options on Cypress that on my local tests significantly improved Electron crashes (that happened always when running the collection spec in interactive mode) and Firefox failures on file upload tests.
  • Configured the clipboard related tests to run only when using electron, as the permissions are automatically set by Cypress. I couldn't find a way to automatically set the permissions on Chromium or Firefox even though there're many documented cases on the internet.

I would say, if tests keep failing on Firefox on your local runs, please try Electron to see if now it's usable.

If the result doesn't work for you, I made another simplified branch 21461-scrollbars-fix-old-cypress that just includes the fix and test.

Test run: developer-run-tests-services-workbench2: #526

Actions #13

Updated by Stephen Smith about 2 months ago

This works great LGTM! Everything passes in FF and now the electron runner actually works for me without crashing.

Actions #14

Updated by Lucas Di Pentima about 2 months ago

  • Status changed from In Progress to Resolved
Actions

Also available in: Atom PDF