将节点版本升级到最新版本以获得更好的性能,并将React及其依赖版本升级,因为我们无法安装一些第三方库,因为Aim React版本较旧。例如React Flow。
mgdq6dx11#
@Sharathmk99,感谢你打开这个问题。我们在升级到React 18时遇到了一个瓶颈,这与Webpack 5和Comlink有关。这里是问题PR。我会检查是否可以继续进行升级,并会与你取得联系。
laawzig22#
非常感谢。请告诉我,如果有任何帮助,我是否可以提供。
cngwdvgl3#
关于升级的任何更新。此外,material-ui确实很旧,有任何计划升级到v5吗?谢谢
gpfsuwkq4#
将以下文本内容添加到3.18里程碑中。@KaroMourad正在处理这个问题。@sharathmk9,你的团队在这方面有任何进展吗?
yi0zb3m45#
你好,@Sharathmk99
该 UI 是通过 CRA(Create React App)创建的,这是一个官方支持的构建单页 React 应用程序的方法。它提供了一个无需配置的现代构建设置。然而,Create React App 在 2023 年初已被弃用,其包也变得过时。尝试更新 Node 或 React 版本会导致构建失败。[ CRA issues ]( https://github.com/facebook/create-react-app/issues )有两个解决方案来升级 Node 版本:
迁移到 Next.js 将需要相当长的时间,因为 Next.js 以不同的方式组织路由,实际上需要重写整个 UI 应用程序。迁移到 Vite 为解决此问题提供了更有效的方法。然而,在两次迁移迭代后,错误和问题仍然存在。这是因为 Aim 中使用了许多尚未适应这些重大更新的包。解决方案:
为了避免破坏整个 UI 应用程序,决定保持当前的 Node 版本 v16.20.1 [v16-17],而不是升级到 v20。重点将放在修复 MUI 问题 [替换过时的 MUI 包]上。
6za6bjd06#
你对这些建议的解决方案有什么看法?关于这个问题,你有没有取得具体的进展?
gz5pxeao7#
感谢@KaroMourad和@SGevorg关注这个问题。当我们计划升级节点版本时,我们确实面临了类似的挑战,因为CRA已被弃用。我们确实研究了Vite和NextJS,但没有对其进行任何PoC。解决方案是有道理的,但是一些第三方包不支持node版本1.16.x。例如,MUI v5需要react 17.x.x和node版本17.x.x。我们正在将Argo Workflow集成到编排训练作业中,并希望使用reactflow来可视化DAG。在node 16.x.x上遇到了一些问题,但通过遗留设置得以克服。关于Material UI包,是的,我们希望使用mui v5中Orchestration & Model Registry的许多预定义组件,但最终还是创建了自己的自定义组件。明年我们将抽出时间检查是否可以升级节点版本,但目前mui是唯一的痛点。一旦开始,我们会更新这里并分享结果。
7条答案
按热度按时间mgdq6dx11#
@Sharathmk99,感谢你打开这个问题。
我们在升级到React 18时遇到了一个瓶颈,这与Webpack 5和Comlink有关。这里是问题PR。
我会检查是否可以继续进行升级,并会与你取得联系。
laawzig22#
非常感谢。请告诉我,如果有任何帮助,我是否可以提供。
cngwdvgl3#
关于升级的任何更新。此外,material-ui确实很旧,有任何计划升级到v5吗?谢谢
gpfsuwkq4#
将以下文本内容添加到3.18里程碑中。@KaroMourad正在处理这个问题。
@sharathmk9,你的团队在这方面有任何进展吗?
yi0zb3m45#
你好,@Sharathmk99
升级 Node 和 React 版本
该 UI 是通过 CRA(Create React App)创建的,这是一个官方支持的构建单页 React 应用程序的方法。它提供了一个无需配置的现代构建设置。
然而,Create React App 在 2023 年初已被弃用,其包也变得过时。尝试更新 Node 或 React 版本会导致构建失败。[ CRA issues ]( https://github.com/facebook/create-react-app/issues )
有两个解决方案来升级 Node 版本:
Vite 是一个用于构建快速优化的 Web 应用程序的前端工具。它采用现代构建系统和快速开发服务器,提供简洁高效的开发体验。
Next.js 允许您创建全栈 Web 应用程序,利用最新的 React 功能并集成基于 Rust 的 JavaScript 工具以实现更快的构建。
迁移到 Next.js 将需要相当长的时间,因为 Next.js 以不同的方式组织路由,实际上需要重写整个 UI 应用程序。
迁移到 Vite 为解决此问题提供了更有效的方法。然而,在两次迁移迭代后,错误和问题仍然存在。这是因为 Aim 中使用了许多尚未适应这些重大更新的包。
解决方案:
为了避免破坏整个 UI 应用程序,决定保持当前的 Node 版本 v16.20.1 [v16-17],而不是升级到 v20。重点将放在修复 MUI 问题 [替换过时的 MUI 包]上。
6za6bjd06#
你对这些建议的解决方案有什么看法?
关于这个问题,你有没有取得具体的进展?
gz5pxeao7#
感谢@KaroMourad和@SGevorg关注这个问题。
当我们计划升级节点版本时,我们确实面临了类似的挑战,因为CRA已被弃用。我们确实研究了Vite和NextJS,但没有对其进行任何PoC。
解决方案是有道理的,但是一些第三方包不支持node版本1.16.x。例如,MUI v5需要react 17.x.x和node版本17.x.x。
我们正在将Argo Workflow集成到编排训练作业中,并希望使用reactflow来可视化DAG。在node 16.x.x上遇到了一些问题,但通过遗留设置得以克服。
关于Material UI包,是的,我们希望使用mui v5中Orchestration & Model Registry的许多预定义组件,但最终还是创建了自己的自定义组件。
明年我们将抽出时间检查是否可以升级节点版本,但目前mui是唯一的痛点。
一旦开始,我们会更新这里并分享结果。