当前位置: 首页 > 后端技术 > PHP

关于Overtrue的拼音库overtrue-pinyintravis为什么报错

时间:2023-03-29 22:46:10 PHP

这是https://github.com/overtrue/p...主页README中的持续集成状态。之前有朋友问我,这个travisstate可以用error吗?肯定能用,我们看看travis上有什么问题:已经显示出来了,单元测试失败的是php5.5和php5.6。我们随便点一个看看,如果超过10m,没有收到输出,travis就认为构建有问题。其实确实有问题,困扰我很久了。没有收到输出的构建是tests/GeneratorFileDictLoaderTest.php。该测试类测试OvertruePinyinGeneratorFileDictLoader加载器。解释一下这个加载器,因为拼音库是基于词库的,而词库很大,很多场景不允许在内存中加载这么多数据。所以这个loader利用了php5.5+的Generator特性来生成数据,而生成数据的代价是需要大量的磁盘IO并且增加允许时间>90%。(在官方PHP文档中有解释)。Travis认为构建失败的原因:这个问题本身可能存在于PHP5.5&5.6的文件系统中(查看PHP变更日志,有变更),导致假死,travis本身的IO能力相对低的。因此,生成器在同时打开多个文件流后暂停了动画。怎么修啊~我是来搞笑的。...我不知道如何解决构建失败的问题。曾经fork过朝歌库的代码,但是没有找到很好的解决办法。最好删除这个“生成器”加载程序。其实特意发这篇文章让朝哥看看,通过开源代码仓库GitHub研究如何让build运行起来:https://github.com/slimkit/th...(点击star支付每天关注发展动态。)ThinkSNS官网:http://www.thinksns.com/内测报名方式提供个人/企业联系方式及证明信息(实名身份证/企业营业执照照片或扫描件)及申请说明,发送邮件至lihecong@zhishisoft.com获取内测资格,尽快申请。欢迎关注者通过邮件以图文形式反馈至官方邮箱lihecong@zhishisoft.com,并备注机型及系统版本。