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

Add makefile for generate codes #81

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from

Conversation

liut
Copy link

@liut liut commented Mar 10, 2022

为了方便尽快依据文档定义生成相应的模型,建立一个Makefile,提供两个生成指令

make errcodegen
make sdkcodegen
make sdkcodegen MDs=apis.md
make sdkcodegen MDs='apis.md oa.md'

@xen0n
Copy link
Owner

xen0n commented Mar 10, 2022

hmmmm go generate 就够了?

@xen0n
Copy link
Owner

xen0n commented Mar 10, 2022

这个事情我觉得可能改下 README 在最底下加个二次开发相关说明就好了。。因为我前两年维护不力,导致大量人适配了自己场景不往上游(此处)推,这个虽然别人也可能没时间做“合理”、“正确”设计,不能怪别人,但提供帮助我认为是合适的。提不提交上游毕竟是他们的事。

@liut
Copy link
Author

liut commented Mar 11, 2022

hmmmm go generate 就够了?

真是尴尬,才发现有个 dummy_for_generate.go 🤪。
那除了README里需要提到之外,是不是有必要加个 make generate?

@liut
Copy link
Author

liut commented Mar 11, 2022

这个事情我觉得可能改下 README 在最底下加个二次开发相关说明就好了。。因为我前两年维护不力,导致大量人适配了自己场景不往上游(此处)推,这个虽然别人也可能没时间做“合理”、“正确”设计,不能怪别人,但提供帮助我认为是合适的。提不提交上游毕竟是他们的事。

我不太了解这个库的历史,早年我也有写过零散的一些企业微信以及其他一些类似接口(tencent, lark 都不是很完整,凑合着用)。但你这个由markdown倒推model是个非常棒的思路,我以为应该继续维护。

@liut
Copy link
Author

liut commented Mar 11, 2022

go generate 是无条件运行生成代码,但是这样用makefile生成指令有两个好处

  1. GOMOD允许临时打开或关闭GO111MODULE (make cmd GOMOD=on|off),以及变更不同的go版本(make cmd GO=/usr/local/go1.18rc1/bin/go);
  2. 只处理一个或几个指定的文件(make sdkcodegen MDs=apis.md
    还有个额外的好处,errorcode和model区分开

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants