看我明白了。您正在发布一个新包...走出去,不确定该库是否需要更改。所以你说,“也许我应该现在发布 v0,等准备好后再发布 v1”。本文将尝试说服您从一开始就发布 v1。
发布 v1 有几个原因:
- SemVer 0.x 版本不同
- 要有信心并认真对待
- 项目实力
对我来说,v0 的各种原因似乎可以归结为:
- 不确定性
- 懒惰
- 缺乏理解/技能问题
...
但是在阅读了 semver 存储库上这个有趣的问题后:https://github.com/semver/semver/issues/221 我的观点正在改变。使用版本 0.x 表示不稳定,这是事实,但现实是某些库不稳定。
不稳定是什么意思?这并不是库发生了变化(因为这些更改可以计划并由主要版本号表示)。不稳定与错误的普遍存在有关。
错误可能是:
- 常规软件错误,或
- 在次要版本或补丁版本中发布的重大更改。
旁注:这两者之间几乎没有什么区别。很多错误只是 API 之间的不匹配或不兼容。
那么 --- 您的库对消费者来说崩溃的可能性有多大?只有库维护人员才能回答这个问题,并且它通常来自于消费者长期以来提出的问题的经验。
但是在发布库之前你怎么知道它会有多不稳定呢?也许在 0.x 中呆一段时间是个好主意。
但是这个库会摆脱 0.x 吗?因为惯性是真实存在的。你有时间吗?委员会会通过吗?这是有风险的。
另一方面,发布1.0.0的风险是消费者如果频繁升级会出现不稳定的情况。但对此有一些缓解措施。首先,使用锁定文件,升级软件包是一个手动操作。除非升级,否则消费者不会受到问题的影响。他们可以干脆不升级,或者推迟升级。
新消费者可能会遇到有缺陷的版本,这是事实,但在 0.x 系统中也会出现这种情况。
像storybook这样的库在版本之间不是很稳定(根据我的经验),但它们仍然没有使用0.x。对于它的价值。
然后是传递依赖的区域。如果您的包是另一个包的依赖项,那么另一个包需要决定使用什么 semver 范围。您的稳定性会影响该软件包的稳定性,因此风险更高。
该软件包要么固定您的库,要么使用更广泛的 semver 范围。在第一种情况下,它会导致重复,这对性能不利。在第二种情况下,存在不稳定的风险。我敢打赌,第一个选择是行不通的,不稳定总是存在风险。
我在这里没有答案,但要点是,如果你的库被其他库使用,那么风险会更高,你应该确保你的库是稳定的。
所以你应该尝试编写一个稳定的库,但如果它不稳定,那么继续使用 0.x 直到它稳定为止。但如果可以的话,请使用 1.x。
以上是以 semver `.0` 开头的详细内容。更多信息请关注PHP中文网其他相关文章!

Python和JavaScript的主要区别在于类型系统和应用场景。1.Python使用动态类型,适合科学计算和数据分析。2.JavaScript采用弱类型,广泛用于前端和全栈开发。两者在异步编程和性能优化上各有优势,选择时应根据项目需求决定。

选择Python还是JavaScript取决于项目类型:1)数据科学和自动化任务选择Python;2)前端和全栈开发选择JavaScript。Python因其在数据处理和自动化方面的强大库而备受青睐,而JavaScript则因其在网页交互和全栈开发中的优势而不可或缺。

Python和JavaScript各有优势,选择取决于项目需求和个人偏好。1.Python易学,语法简洁,适用于数据科学和后端开发,但执行速度较慢。2.JavaScript在前端开发中无处不在,异步编程能力强,Node.js使其适用于全栈开发,但语法可能复杂且易出错。

javascriptisnotbuiltoncorc; saninterpretedlanguagethatrunsonenginesoftenwritteninc.1)javascriptwasdesignedAsalightweight,解释edganguageforwebbrowsers.2)Enginesevolvedfromsimpleterterterpretpreterterterpretertestojitcompilerers,典型地提示。

JavaScript可用于前端和后端开发。前端通过DOM操作增强用户体验,后端通过Node.js处理服务器任务。1.前端示例:改变网页文本内容。2.后端示例:创建Node.js服务器。

选择Python还是JavaScript应基于职业发展、学习曲线和生态系统:1)职业发展:Python适合数据科学和后端开发,JavaScript适合前端和全栈开发。2)学习曲线:Python语法简洁,适合初学者;JavaScript语法灵活。3)生态系统:Python有丰富的科学计算库,JavaScript有强大的前端框架。

JavaScript框架的强大之处在于简化开发、提升用户体验和应用性能。选择框架时应考虑:1.项目规模和复杂度,2.团队经验,3.生态系统和社区支持。

引言我知道你可能会觉得奇怪,JavaScript、C 和浏览器之间到底有什么关系?它们之间看似毫无关联,但实际上,它们在现代网络开发中扮演着非常重要的角色。今天我们就来深入探讨一下这三者之间的紧密联系。通过这篇文章,你将了解到JavaScript如何在浏览器中运行,C 在浏览器引擎中的作用,以及它们如何共同推动网页的渲染和交互。JavaScript与浏览器的关系我们都知道,JavaScript是前端开发的核心语言,它直接在浏览器中运行,让网页变得生动有趣。你是否曾经想过,为什么JavaScr


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

SublimeText3 Linux新版
SublimeText3 Linux最新版

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

Dreamweaver Mac版
视觉化网页开发工具