-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Description
大家好,我是 @chenjiandongx,pyecharts 的第一作者和维护者。pyecharts 于 2017-06-22 正式开源,在 2017-07-20 发布了第一个稳定版本,至今已有两年多了。
~/project/python/pyecharts 🐶 git summary
project : pyecharts
repo age : 2 years, 5 months
active : 356 days
commits : 1419
files : 205
authors :
559 chenjiandongx 39.4%
324 chfw 22.8%
280 陈键冬 19.7%
108 kinegratii 7.6%
59 jaska 4.2%
33 chenjiandong 2.3%
23 LeoSun 1.6%
....在这两年多的时间内,我们发布了 34 个版本,共有 21 位开发者对 pyecharts 贡献了代码,解决并关闭了 930+ 的 issue,处理了 350+ 的 PR。在 Github 上也获得了一些肯定。
https://pyecharts.org 官网及其相关二级域名每月也有 200w+ 的访问量。
我后来建立了同名的 pyecharts organization,并将 pyecharts 的周边项目全部转移进该 organization。实际上现在依旧可以访问 https://github.com/chenjiandongx/pyecharts 只不过会被重定向到 https://github.com/pyecharts/pyecharts 互联网也是有记忆的。
在这里,我要特别感谢几位开发者,是他们一直努力推动 pyecharts 项目的完善和发展,共同建立了一套规范的开发流程(Code review, CI, Git Workflow)。
为了方便大家交流互动,我也维护了几个 pyecharts 交流群,大概有 700+ 人吧。不过大家好像真的以为进群可以学到东西?进群难道不是为了平时无聊吹水吗?大家在群里还经常想搞群主 🐶,不过讨论的氛围倒是蛮不错的。
pyecharts 本来是我的一个课余项目,那时候是刚开始折腾 Python,所有 Python 的入门书籍或者教程肯定在实战的第一章就来一个爬虫,无一例外。当时也是爬取了一些网站的数据,但是,赤裸的数据是没有表现力的,优雅的爬虫需要有优雅的可视化工具。那时候就萌生了自己搞个小轮子的想法,pyecharts 就这么诞生了,后来项目代码越写越多,干脆就写完整一点开源算了,这就有了后面的故事了。
pyecharts 的开发历程上有一个里程碑,就是从 v0.5.x 到 v1.0。在 v0.5.x 迭代到 v0.5.11 的时候,我有半年的时间停止了开发,主要原因是旧版本的代码架构严重影响了项目的可扩展性,一直在上面打补丁也不是一个好办法,所以索性就不维护了。直到了一个夜深人静的夜晚,我他妈真的看不下去了,决定对 pyecharts 进行重构,彻彻底底的重构,不考虑任何的兼容性,这将会是一个船新版本的 pyecharts。详情参见 issue#892。我在 issue 中承诺我将会完成这件事情,开弓没有回头箭,写完该 issue 后的几天,我就开始后悔了,牛逼吹大了,重构起来太痛苦了哈哈哈想哭,hack 的代码一大堆,又没有写注释,自己都忘了当时为什么这么写。
后来事情发生了转机,那段时间我刚好在写 Golang,所以决定先搞个 go-echarts 来为重构 pyecharts 做一下实验。事实证明,我完成得还不错。
最终我还是开始了我的重构之旅,鲁迅先生曾经说过 动态一时爽,重构火葬场。Typehints 是真的香!重构真的是伤肝,熬了不少夜,毕竟白天还要上班,重构工作只能在晚上进行。终于在两个多月后发布了 v1.0 版本,详情见 issue#1033。总算是让 flag 没有倒下,🍻!后来又陆续迭代了几个版本,目前已经迭代至 v1.5.0,新增了不少新的 feature 当然可能也留下了些许新的 bug。
但是,敲黑板,重点来了。
我已经有很长时间没有使用过它解决我开发上遇到的问题了,它彻底地远离了我的日常工作,迭代的需求完全是来自于社区的使用者,Python 也不是我日常开发的主要语言了,不过它仍旧是我最喜欢的编程语言。个人的业余开发时间又是有限的,兴趣很多,时间很少,是时候权衡一下了,考虑 pyecharts 后面的发展了。实际上现在基本上每天都有人在问问题或者提新的需求,我也没有那么多的精力再去一一回复和满足需求了。
我已经给不了 pyecharts 使用者想要的期待了,所以我应该让大家知晓这件事。不过请大家不必担心,pyecharts 开发团队中的另外一位核心成员 @sunhailin-Leo 愿意承担起维护 pyecharts 的责任。在此,我宣布将 pyecharts 的所有权限转交给 @sunhailin-Leo 同学,由他负责领导 pyecharts 以后的日常开发工作,他是一个值得信赖的人。开源社区的魅力就在于你可以将手中的接力棒向后传递,pyecharts 是在社区中孵化成长的,它不属于任何人,它属于 Python 社区。感谢社区中所有为 pyecharts 做过贡献的开发者,如果有想为 pyecharts 添砖加瓦又不知道如何下手的同学,可以参考我的另外一个项目 cutecharts。
pyecharts 结束了一段旧旅程,并准备迎接一段新旅程。未知,但值得期待!
以上。



