Comments (7)
@Sharathmk99, thank you for opening the issue.
We encountered a bottleneck while upgrading to React 18, which is related to Webpack 5 and Comlink. Here is the issue PR.
I'll check if it's possible to proceed with the upgrade and will get in touch with you.
from aim.
Thank you so much. Let me know if I can help in anyway.
from aim.
Thank you @KaroMourad and @SGevorg for looking into this issue.
When we planned to upgrade the node version, we did face similar challenges as CRA was deprecated. We did looked into Vite and NextJS, but didn't conducted any PoC on it.
The solution makes sense, but some third party packages doesn't support node version 1.16.x. Example MUI v5 needs react 17.x.x and also node version 17.x.x.
We were integrating Argo Workflow as part of Orchestrating training jobs and we wanted to use reactflow to visualise the DAG. Did face some issue with node 16.x.x, but was able to overcome with legacy settings.
Regarding Material UI package, yes we wanted to use many predefined components part of Orchestration & Model Registry from mui v5, but ended up creating our own custom components.
Next year we will dedicated sometime to check if we can upgrade the node version, but for now mui is the only pain point.
We will update here once we start and share the outcome as well.
from aim.
Any update on upgrade. Also material-ui is really old, any plan to upgrade to v5? Thanks
from aim.
Adding this to the 3.18 Milestone. @KaroMourad is working on it.
@sharathmk9 has your team had any progress on it?
from aim.
Hi, @Sharathmk99
Upgrading Node and React Versions
The UI was created using CRA (Create React App), an officially supported method for building single-page React applications. It provides a modern build setup without the need for configuration.
However, Create React App was deprecated in early 2023, and its packages became outdated. Attempting to update Node or React versions resulted in build failures. [CRA issues](https://github.com/facebook/create-react-app/issues)
There are two solutions to upgrade Node versions:
- Replace CRA with Vite ([recommended by CRA's creator](reactjs/react.dev#5487 (comment)), Dan Abraamov)
Vite is a frontend tool used for building fast and optimized web applications. It employs a modern build system and a fast development server, offering a streamlined and efficient development experience. - Replace CRA with Next.js
Next.js allows you to create full-stack web applications, leveraging the latest React features and integrating powerful Rust-based JavaScript tooling for faster builds.
Migrating to Next.js will require considerable time as Next.js organizes routing differently, essentially requiring a rewrite of the entire UI app.
Migrating to Vite offers a more efficient way to resolve this issue. However, after two migration iterations, bugs and issues persisted. This is due to many packages used in Aim not yet being adapted to these significant updates.
Solution:
To avoid breaking the entire UI app, the decision was made to maintain the current Node version, which is v16.20.1 [v16-17], instead of upgrading to v20. The focus will be on fixing the MUI issues [replace outdated MUI packages].
from aim.
@sharathmk9 what do you think about the proposed solutions?
Have you had specific progress on your end wrt this issue?
from aim.
Related Issues (20)
- Configure axes to automatically share the same data-defined axis length HOT 2
- Revamp the design of app cards
- Passing a bearer token
- aim v4.0 offline support HOT 2
- No module named 'aim._sdk.run_status_watcher'
- Failed to run Aim Tracking Server HOT 1
- could we start UI from a remote repo: aim://host:port?
- How can I display `hash` column at the first in aim-v4.x?
- `aim up` hangs forever after a server crash HOT 5
- Random run initialization error HOT 3
- Run merging and aggregation
- server-client connection error HOT 2
- LOG.old files HOT 2
- Can't edit or see existing tags on the Tags page HOT 4
- Having problems using with fairseq HOT 4
- Potential security issue HOT 5
- When aim server is killed, the client use run.close() will be hang
- cannot import aimstack without aimos package HOT 1
- SQLAlchemy support for MySQL HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aim.