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

Unify scripts for dashboard and GUI. #10668

Closed
Tracked by #10145
farmaazon opened this issue Jul 25, 2024 · 11 comments · Fixed by #11287
Closed
Tracked by #10145

Unify scripts for dashboard and GUI. #10668

farmaazon opened this issue Jul 25, 2024 · 11 comments · Fixed by #11287
Assignees
Labels
-gui d-hard Difficulty: significant prior knowledge required g-dashboard g-electron GUI: electron application specific p-medium Should be completed in the next few sprints x-refactor Changes that should not be visible to the end-user

Comments

@farmaazon
Copy link
Contributor

farmaazon commented Jul 25, 2024

Now we have two vite configurations and thus two ways of building dev server (and everything else). This task is to unify the configuration (both vite.config and package.json) and stay with a single dev server, run in browser.

In this task also the relation between dashboard and GUI should be simplified: the dashboard should just have GUI as a dependency, and GUI part should not maintain any entry point invoking dashboard.

To consider: having both dashboard and current GUI in a single app subdir (ide-desktop being purely electron).

@farmaazon farmaazon added d-hard Difficulty: significant prior knowledge required p-medium Should be completed in the next few sprints g-electron GUI: electron application specific g-dashboard -gui x-refactor Changes that should not be visible to the end-user labels Jul 25, 2024
@farmaazon farmaazon added this to the 2024-08 Release milestone Jul 25, 2024
@somebody1234
Copy link
Contributor

having both dashboard and current GUI in a single app subdir

not sure whether this makes sense - the codebases are still significantly different (different frameworks, different architecture an the like) - and idk if there's any advantage in having a more nested structure in this case (two directories in app/ vs one directory isn't a huge ifference IMO)

@somebody1234
Copy link
Contributor

other things to note:

  • GUI's vite script is more comprehensive, the dashboard one doesn't include the GUI
    • nor does it include HMR for vue, whereas GUI's vite script includes React HMR
  • we still want two ways to run the code - one for simulating the Electron app with local backend support, another for simulating cloud.enso.org with no local backend support

@farmaazon
Copy link
Contributor Author

not sure whether this makes sense - the codebases are still significantly different (different frameworks, different architecture an the like) - and idk if there's any advantage in having a more nested structure in this case (two directories in app/ vs one directory isn't a huge ifference IMO)

The advantage is that it's more intuitively reflects the relation between different components. Also, we said about "having a single vite config" and for me it's more natural that vite config handler all things in its subdir.

@farmaazon
Copy link
Contributor Author

Refinement notes:

  • on this occasion, consider renaming app to packages - we want to put there also everything from lib

@farmaazon farmaazon moved this from ❓New to 📤 Backlog in Issues Board Sep 5, 2024
@farmaazon
Copy link
Contributor Author

Refinement notes:

  • lib/js/runner - to be removed.
  • eslint config also is to be unified: apply dashboard rules to GUI's code and see what rules are violated.
  • Renames:
    • gui2 -> project-view.
    • the main entry point: gui

@farmaazon farmaazon moved this from 📤 Backlog to 🔧 Implementation in Issues Board Oct 3, 2024
@enso-bot
Copy link

enso-bot bot commented Oct 4, 2024

Adam Obuchowicz reports a new STANDUP for yesterday (2024-10-03):

Progress: Started merging directories. Created new structure and merged package.json configurations (and some others). It should be finished by 2024-10-14.

Next Day: Next day I will be working on the same task. Continue fixing issues: with packaging, dev server, lint...

@enso-bot
Copy link

enso-bot bot commented Oct 4, 2024

Adam Obuchowicz reports a new STANDUP for today (2024-10-04):

Progress: Tried to fix eslint config, with moderate success (we skipped GUI config for vue). Fixed dev server and package building - it works now! started merging playwright configs for tests. It should be finished by 2024-10-14.

Next Day: Next day I will be working on the same task. finish playwright and discuss eslint config.

@enso-bot
Copy link

enso-bot bot commented Oct 9, 2024

Adam Obuchowicz reports a new STANDUP for the provided date (2024-10-07):

Progress: Fixed playwright configuration. It recognizes now all tests, but the dashboard's are mostly failing. Also moved sligthtly the column reordering. It should be finished by 2024-10-14.

Next Day: Next day I will be working on the same task. Fix dashboard tests and start fixing linter configuration.

@farmaazon farmaazon mentioned this issue Oct 9, 2024
4 tasks
@farmaazon farmaazon moved this from 🔧 Implementation to 👁️ Code review in Issues Board Oct 10, 2024
@enso-bot
Copy link

enso-bot bot commented Oct 11, 2024

Adam Obuchowicz reports a new STANDUP for the last Wednesday (2024-10-09):

Progress: Fixed most of the issues with linter - some checks are disabled because fixing them would take too long time. It should be finished by 2024-10-14.

Next Day: Next day I will be working on the same task. When testing CI jobs, discovered some problems with typecheck in ide-desktop/client package.

@enso-bot
Copy link

enso-bot bot commented Oct 11, 2024

Adam Obuchowicz reports a new STANDUP for yesterday (2024-10-10):

Progress: Fixed the problem in ide-desktop/client. It had a dependency to gui (as formerly it had to dashboard), but it caused problem with project-view codebase. Discovered that it used only one type, so I moved this type to common package. Re-run all checks again, and discovered a regression in E2E tests. It should be finished by 2024-10-14.

Next Day: Next day I will be working on the same task. When E-Hern fix e2e tests, I think only last touches remain.

@enso-bot
Copy link

enso-bot bot commented Oct 11, 2024

Adam Obuchowicz reports a new STANDUP for today (2024-10-11):

Progress: Last touches. Debugged another package failure (caught by integration tests!) and then stabilize e2e tests (again) - they failed in CI. Also, the flacky test in GUI became very flaky, so I investigated the problem there. The PR is waiting for merge It should be finished by 2024-10-14.

Next Day: Next day I will be working on the #10759 task. Go back to reordering columns in Table Input; investigate the issue.

@mergify mergify bot closed this as completed in #11287 Oct 11, 2024
@mergify mergify bot closed this as completed in 4a24968 Oct 11, 2024
@github-project-automation github-project-automation bot moved this from 👁️ Code review to 🟢 Accepted in Issues Board Oct 11, 2024
@farmaazon farmaazon moved this from 🟢 Accepted to 🗄️ Archived in Issues Board Oct 15, 2024
@enso-bot enso-bot bot mentioned this issue Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-gui d-hard Difficulty: significant prior knowledge required g-dashboard g-electron GUI: electron application specific p-medium Should be completed in the next few sprints x-refactor Changes that should not be visible to the end-user
Projects
Status: 🗄️ Archived
Development

Successfully merging a pull request may close this issue.

3 participants