[英]Nuget/SemVer - How should I increment my version number when adding a new dependency but not changing the public API?
[英]In Dart with Pub, when should I use the “any” version constraint for a dependency?
在制作软件包时,我常常困惑于是否应该使用any
约束。
我知道这是因为:
库软件包 , 我应该指定明确的版本约束,以便我的库用户知道我的传递依赖项的版本,
应用程序包 , 我应该使用any
并签入pubspec.lock
文件,以便其他人可以运行我的应用程序,
但是有一个灰色区域:
打算扩展的应用程序 ,例如代码实验室,教程,模板,示例等。
还具有可重用库的应用程序 ; 也就是说,软件包具有lib
目录以提供通用功能,而这些功能通常放在单独的软件包中,而没有web
目录用于完整的应用程序。
问题:什么时候应该确切地使用any
版本约束,什么时候应该为Pub软件包完全指定版本约束?
打算扩展的应用程序 ,例如代码实验室,教程,模板,示例等。
由于这些通常将被复制粘贴为普通应用程序包的基础,因此,我将使用any
约束并签入一个锁定文件以树立一个好榜样。
还具有可重用库的应用程序 ; 也就是说,软件包具有
lib
目录以提供通用功能,而这些功能通常放在单独的软件包中,而没有web
目录用于完整的应用程序。
所有应用程序都应将其代码放在lib
目录中。 web
目录应仅包含入口点。 因此,这只是一个标准的应用程序包,应使用any
约束并检入锁定文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.