![]() | 1 jasonyang9 2018-04-16 11:58:17 +08:00 >I sincerely hope this is a joke. |
![]() | 2 aristotll 2018-04-16 12:17:49 +08:00 > Waaaaay too much work -- calibre has half a MILLION lines of python and python extension code 迁移成本太大了 https://bugs.launchpad.net/calibre/+bug/1456642 作者肯定不想改的 |
![]() | 3 shansing 2018-04-16 12:48:17 +08:00 好奇标题里是怎么加的 doge 头。 |
4 SuperMild 2018-04-16 12:52:06 +08:00 所谓维护,并不是维护整个 python2 的全部代码,等有涉及 calibre 的 bug 爆出来他再处理一下,的确比迁移省事。 |
5 fork 2018-04-16 12:54:19 +08:00 好想给 kovid 按个赞,可惜 lauchpad 不支持这种围观。。。。。 |
![]() | 6 wizardforcel 2018-04-16 12:55:22 +08:00 via Android mdzz |
![]() | 8 locktionc 2018-04-16 13:10:51 +08:00 如果他是认真的,那么这种人就是抵制时代的守旧老人,是会被订在历史的耻辱柱上的人。 |
![]() | 9 XIVN1987 2018-04-16 13:12:56 +08:00 ![]() |
![]() | 11 xuboying 2018-04-16 13:21:46 +08:00 ![]() 听着就不怎么靠谱 要么作者 python 用法不对,要么 python 基金会的 2-3 过渡做的不好,要么就是 python 的这种桌面软件的开发框架的问题 就 python 的使用量来看 八成是作者自己的问题 |
13 xpresslink 2018-04-16 13:32:42 +08:00 @locktionc 你的思维和价值观才有问题。人家又没有阻碍 python3 发展。 你要是有大量实际运维经验,就不会说这种屁话了。 |
![]() | 14 wizardforcel 2018-04-16 13:37:24 +08:00 via Android @hxndg 数学的确能拟合一切,但不是理论数学。 |
![]() | 15 hxndg 2018-04-16 13:39:43 +08:00 @wizardforcel 冷战那批更确切的叫做运筹学等一大堆理论数学了,ps 拟合的代价你来出? |
![]() | 16 noNOno 2018-04-16 13:52:08 +08:00 跨年度笑话?-v- |
![]() | 17 noNOno 2018-04-16 13:55:23 +08:00 ![]() 为什么不迁移到 python3 ? 迁移是不可能迁移的,这辈子不可能迁移的。重构代码又不会做,只有自己维护 python2,才能维持得了生活这样子. |
18 fork3rt 2018-04-16 14:08:26 +08:00 :doge Python3 谁用谁知道,真爽~ |
19 timonwong 2018-04-16 14:09:41 +08:00 作者题外话就是「你行你上啊,要么打我钱」 |
![]() | 21 dorentus 2018-04-16 14:12:25 +08:00 |
![]() | 24 dumbass 2018-04-16 14:19:45 +08:00 ![]() |
![]() | 25 quickma 2018-04-16 14:22:42 +08:00 ![]() @locktionc @xuboying @kmahyyg @noNOno 1) Waaaaay too much work -- calibre has half a MILLION lines of python and python extension code 2) calibre has lots and lots of code that deals with bytes -- network protocols, binary file formats, etc. Python 3 is simply worse than python 2 for this use case. It has a crippled bytes type among other unfelicities. 3) calibre has lots and lots of native code that interfaces with external native code. On windows, all this code uses UTF-16 encoded strings. All that interface code would need to be re-written and would also become less efficient since in python 2 string are stored internall in UTF-16 whereas in python 3 they would need to be cross-converted. 4) There is absolutely nothing in python 3 that makes it worth the effort. If python 3 ever grows something that makes it worth the effort, I will simply backport it to python 2. I already maintain my own python 2 fork for windows (see my github repos). The only case in which I will accept patches for python 3 is if they have: a) negligible runtime cost b) minimal code complexity/maintainability cost c) Low probability of breakage -- either the patches are dead simply or they come with lots of tests |
![]() | 26 quickma 2018-04-16 14:23:10 +08:00 ![]() 有理有据,你们看过? |
![]() | 27 blaxmirror 2018-04-16 14:23:41 +08:00 @bojackhorseman 哈哈哈哈,没毛病 |
28 youxiachai 2018-04-16 14:24:33 +08:00 说那么多干嘛... 看不惯作者的.. 打钱..或者帮忙移植啊... |
![]() | 29 wizardforcel 2018-04-16 14:30:18 +08:00 via Android |
![]() | 30 est OP @bojackhorseman 亮了。。。 |
![]() | 31 xuboying 2018-04-16 14:39:47 +08:00 @x7395759 #25 打嘴跑没意义,谁让作者用 utf16 的,留下了如此麻烦的后遗症。py 党自己去争吧。看不惯的大牛自己用 py3 写一个好了。编码问题肯定是没了。 其实最终用户也不关心是什么版本,或者是不是 python |
![]() | 32 YvesX 2018-04-16 14:39:57 +08:00 我的想法就是别人作者爱用啥用啥,能维护好就 WOW 一下,不是很懂有啥“抵制时代”和“耻辱”的。且不说 Python2 顶多是不值得再去新学,没有什么特别古旧的缺点,就算是上古代码,别人能维护得 works well 不比拿新技术对着文档写 hello world 厉害多了? |
![]() | 33 zhicheng 2018-04-16 15:45:11 +08:00 Python 官方实现太守旧了,用的竟然是 C,而且还是 C99 不是 C11,天呐这个标准都快 20 年了,一群守旧的老顽固。他们应该用 Go 或者 Rust 重写一遍 Python 官方实现,哪怕不用 Go/Rust 也应该用 C++/Java 重写。 而 Linus 应该被烧死,因为 Linux 还在用 C89。 |
![]() | 35 goodryb 2018-04-16 15:59:29 +08:00 calibre 收费吗,如果不收费,凭什么 BB |
![]() | 36 cnbobolee 2018-04-16 17:20:11 +08:00 2 到 3 迁移成本太大,况且代码那么多,而且 2->3 过渡本来就做的不好,3 几乎不兼容 2。 |
![]() | 37 zyqf 2018-04-16 17:26:45 +08:00 via Android |
![]() | 38 Antidictator 2018-04-16 17:29:17 +08:00 |
![]() | 40 sunzhenyucn 2018-04-16 18:41:04 +08:00 via Android @zhicheng 高级黑 23333 |
![]() | 41 Shura 2018-04-16 19:34:39 +08:00 作者自己选择编程语言的权利还是有的吧?看不下去的欢迎 fork 然后转成 python3: https://github.com/kovidgoyal/calibre |
![]() | 42 hxndg 2018-04-16 20:06:39 +08:00 via Android @wizardforcel 嗯,我记错了,回去又翻了一下战略一部历史,发现是管理学 |
![]() | 43 monsterxx03 2018-04-16 20:33:57 +08:00 via iPhone 说 2 到 3 好迁的,都没维护过多大的 codebase |
44 lihongjie0209 2018-04-16 20:57:00 +08:00 @locktionc #8 图样图森破 |
45 mephistophilis 2018-04-16 23:39:43 +08:00 via iPhone @zhicheng 用新版本也能用出优越感? |
![]() | 46 msg7086 2018-04-16 23:58:14 +08:00 @mephistophilis 连讽刺都看不出来? ![]() |
![]() | 47 dalieba 2018-04-17 00:22:06 +08:00 via Android 这样的话应该开个 git 分支,专门在那做 Py3 移植。 |
49 billlee 2018-04-17 01:34:42 +08:00 主要还是 C 扩展不好迁吧 |
![]() | 50 Gandum 2018-04-17 01:47:21 +08:00 ![]() 我倒是觉得 calibre 实在是太臃肿了,所以有些积重难返。 应该设计成核心功能+外围功能的模式,核心功能就两个,ebook-convert 和 calibredb,别的一律不要。 外围功能里面才应该有 rss,smtp,calibre-server,ebook-viewer,ebook-edit 等等等等这些,现在你又要当服务器,又要当编辑器,又要当浏览器,又要能智能分析,又要能发邮件,又要能抓 rss,又要能添加各种插件,还要适配各种屏幕各种设备。一般人根本玩不懂的,而且说实话,用力太过分散导致很多组件质量确实不太理想。我用 calibre 就只用 ebook-convert 这一个功能,而且从来不打开它那个很慢而且操作很麻烦的 GUI,其他的排版之类的功能比 calibre 好用的软件很多,平心而论,calibre 自带的编辑器我想用过的人都知道,很难用的。 很多开源软件都是这种设计思路嘛,比如视频播放器 mpv,功能很简单,就是解码播放视频,至于衍生功能就交给其他软件,围绕 mpv 的衍生软件多到有专门的 wiki 表单,几十种可以让你自由选择。再比如说 vim,原本功能也是很单纯也很专业,但是衍生功能多的不得了,都是类似的思路。 |
![]() | 52 xiaket 2018-04-17 07:40:51 +08:00 完全同意 @Gandum 的意见,calibre 一开始从设计上就不合理,一味堆功能,到头来代码难以维护,也没有新鲜血液进入社区贡献代码。从功能的角度而言,calibre 也许是成功的,但从社区成熟度的角度来看,calibre 是不太成功的。 |
53 fffonion 2018-04-17 08:18:40 +08:00 ![]() 这 |
54 Forbidden 2018-04-17 09:25:45 +08:00 想起一个事 基于 COBOL 的系统,不要说迁移了,就连维护都成问题 现在主要靠银行、证券、保险公司支撑…… |
![]() | 55 doubleflower 2018-04-17 09:45:43 +08:00 这么多代码迁移肯定是不现实的 2 转到 3 太不容易了,相当于 30%重写量 |
![]() | 56 cedoo 2018-04-17 09:51:46 +08:00 去年的新闻了 |
![]() | 59 Battle 2018-04-17 10:46:44 +08:00 双击 666 |
![]() | 60 glasslion 2018-04-17 11:24:50 +08:00 作者的理由: 1. 迁移工作量太大, 好处又没多少 2. 作者本身不反对其他人提交 Python3 的 patch(要同时兼容 Python2/3) 3. Python3 在处理二进制是, 比 Python2 还难用 没什么大问题啊 |
![]() | 61 orangeade 2018-04-17 11:54:27 +08:00 via Android @Gandum 有什么支持格式和排版和 calibre 的 eBook viewer 相似的电子书阅读器么,calibre 阅读电子书功能和排版都还好,就是太慢了 |
62 tempdban 2018-04-17 12:31:59 +08:00 via Android 楼上的说不合理的不要打嘴炮帮忙改啊 |
![]() | 64 DT27 2018-04-17 12:51:14 +08:00 围观伸手党 |
![]() | 65 shijingshijing 2018-04-17 13:06:23 +08:00 via iPhone @locktionc 米蒂的劾武裤里还有一堆电脑跑 windows 3.x, windows 95 呢,还有一堆用软盘加载的呢。就这种玩意儿还得撑十年二十年才能逐步 phase out 呢 有本事你给人家去部署一把 win 10,去把当时开发编译用的 TI 的整套 IDE 工具链都给升级一把,还有底层驱动和 firnware 也重写一把,忘记说了,好多控制器都是 8 位的,你也给升级一下到 64 位处理器。 话说高可靠性领域,还没有哪家出来吹牛逼说转移到全套 64 位方案上面去的吧。位处理器都用的好好的。现在天上刚上去的都在用 386 处理器呢 |
![]() | 67 fish267 2018-04-17 14:21:23 +08:00 |
![]() | &nbs; 68 Mavious 2018-04-23 08:54:13 +08:00 好几个老牌工具都不支持 3,很烦啊。 不仅仅是 calibre,还有 cali 下面一大堆工具,deDRM 也是这辈子死在 2 了。 adobe 的工具包,吊在 2 上不放手。 我不想研究同装 2 个版本的 py 问题。。 so,如果都这么死抱着 2,那就不用呗。。。 |