We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
伪代码逻辑:
package xxxPlugin import ( "fmt" "github.com/seasonjs/espack/pkg/api/plugin" ) func init() { plugin.Register("espack_plugin_corejs", NewPlugin) } func NewPlugin(opt interface{}) *interface{} { fmt.Println("plugin is regist in espack") return nil }
{ "entry": { "main": "index.jsx" }, "output": "dist", "plugins": [ { "name": "espack_plugin_corejs", "option": { "xxx": "xxx", "others": "this is others option" } } ] }
调研npm代替方案 js.mod -> go mod like?
调研npm元数据api获取
调研unpack方式获取,不大可行,es module 太少(可能会成未来的答案,但是现在我选npm)
调研go解压tgz格式文件
调研go.mod 解析生成原理
获取元数据
解决循环依赖
根据js.mod依赖生成js.sum
根据package.json 生成js.mod
根据解析好的数据下载tarball
处理espack install 命令逻辑
处理单个包下载命令逻辑
增加更多go mod like && npm like && yarn like 命令
完全摆脱对node_model的依赖优先考虑 统一保存,为了兼容性需要增加一个转译的cache,将下载的非esm模块提前转义为esm
调研Import maps vs js.mod的可能性
调研 其他多包其他 vs js.work的可能性
迁移之后,没有了冗余的以下依赖,应用程序大小缩小了5M~~
github.com/gin-contrib/sse v0.1.0 github.com/go-playground/validator/v10 v10.9.0 github.com/goccy/go-json v0.7.8 github.com/json-iterator/go v1.1.12 github.com/mattn/go-isatty v0.0.14 github.com/stretchr/testify v1.7.0 github.com/ugorji/go/codec v1.2.6 google.golang.org/protobuf v1.27.1 gopkg.in/yaml.v2 v2.4.0
https://go.googlesource.com/proposal/+/master/design/45713-workspace.md 1.现在的go的ast结构还是不让人满意 2.现在的项目层级太深了
https://github.com/anacrolix/torrent
The text was updated successfully, but these errors were encountered:
No branches or pull requests
路线图
重要的第一步
考察插件
伪代码逻辑:
调研npm替代方案
调研npm代替方案 js.mod -> go mod like?
调研npm元数据api获取
调研unpack方式获取,不大可行,es module 太少(可能会成未来的答案,但是现在我选npm)
调研go解压tgz格式文件
调研go.mod 解析生成原理
获取元数据
解决循环依赖
根据js.mod依赖生成js.sum
根据package.json 生成js.mod
根据解析好的数据下载tarball
处理espack install 命令逻辑
处理单个包下载命令逻辑
增加更多go mod like && npm like && yarn like 命令
完全摆脱对node_model的依赖优先考虑 统一保存,为了兼容性需要增加一个转译的cache,将下载的非esm模块提前转义为esm
调研Import maps vs js.mod的可能性
调研 其他多包其他 vs js.work的可能性
调研esbuild ast语法析出方案
需要消灭的问题
移除gin框架,它build之后过于大了->切换到liteS(gin lite)
迁移之后,没有了冗余的以下依赖,应用程序大小缩小了5M~~
调研go 18的泛型和monorepo
https://go.googlesource.com/proposal/+/master/design/45713-workspace.md
1.现在的go的ast结构还是不让人满意
2.现在的项目层级太深了
支持p2p 发布与下载包功能
https://github.com/anacrolix/torrent
ts 语言特性兼容
css 特性
assest资源处理
eslint特性支持
The text was updated successfully, but these errors were encountered: