标签: semantic-versioning

获取 maxSatisfying 版本,包括带有节点 semver 的预发布版本

我如何使用node/semver从一系列版本中获取最新版本(包括预发行版)。

例如:

var semver = require("semver");
var versions = ["1.0.0-rc.10","1.0.0-rc.11"];
console.log(semver.maxSatisfying(versions, "*"));
Run Code Online (Sandbox Code Playgroud)

返回 null,但我想找回 1.0.0-rc.11。

亲切的问候,祝你有美好的一天!

node.js semantic-versioning

1
推荐指数
1
解决办法
2141
查看次数

添加Swift枚举大小写是否需要对主要semver版本进行更新?

与许多语言不同,Swift语言switch必须详尽无遗,所以如果我有:

enum Enumeration
{
    case A
    case B
}
Run Code Online (Sandbox Code Playgroud)

然后此代码无效:

switch enumeration
{
case .A:
    break
}
Run Code Online (Sandbox Code Playgroud)

但是,这些是有效的:

switch enumeration
{
case .A:
    break
case .B:
    break
}

switch enumeration
{
case .A:
    break
default:
    break
}
Run Code Online (Sandbox Code Playgroud)

如果稍后添加case CEnumeration,则第一个有效代码现在将产生编译器错误。第二个有效,因为它使用default:,它将捕获.C

如果我符合semver的支持carthage(或Swift Package Manager)支持,我是否必须为此增加主版本?

对此的扩展适用于Objective-C(并隐含C)。由于Swift像Swift枚举一样支持C枚举,因此这也适用于打算在Swift中使用的Objective-C或C框架。我不确定如何解决这个问题,因为这些语言没有这种限制(如果您的编译器很好,则只是警告)。

semantic-versioning swift

1
推荐指数
1
解决办法
289
查看次数

NPM 版本会在每次重大更改时更新主要版本号?

假设我的 1.0.0 npm 包公开公开了一个函数,foo供用户在许多其他函数和特性中使用。

然后,我删除了该foo功能,该功能将对所有使用该功能的用户造成破坏。

NPM 说:

破坏向后兼容性的更改:主要版本,增加第一个数字,例如 2.0.0

我很困惑这到底意味着什么。如果我们破坏了用户的更改,即使只是一个很小的更改(例如删除功能),是否应该始终更新主版本号?

目前,每当我可能破坏公开暴露的功能时,我都会更新主要编号。我看到 npm 软件包的主要版本较小,并认为我这样做是不正确的,因为我正在非常快地更新我自己的软件包主要版本号。

node.js npm semantic-versioning

1
推荐指数
1
解决办法
1004
查看次数

npm - Semver 版本控制 - 使用插入符号“^”更新包

我的 package.json 文件中有一个 npm 包

 "clean-webpack-plugin": "^0.1.18"
Run Code Online (Sandbox Code Playgroud)

现在当我将鼠标悬停在包上时,我可以看到有一个更新的版本

"clean-webpack-plugin": "^0.1.19"
Run Code Online (Sandbox Code Playgroud)

现在,据我npm update所知,例如,我可以更新所有遵守 semver 规则的包或仅更新 package npm update clean-webpack-plugin

所以插入^符号应该意味着,0.9.9如果可用,您可以将包更新到版本,对吗?

npm update 没有效果,这就是我问的原因。

npm semantic-versioning npm-update

1
推荐指数
1
解决办法
1048
查看次数

错误:调用 jhipster -version 时找不到模块“semver”

当我尝试运行 JHipster 时jhipster --version出现以下错误。我知道它与 node js 有关,但我无法解决它。请你的建议。

internal/modules/cjs/loader.js:573
    throw err;
    ^

Error: Cannot find module 'semver'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:571:15)
    at Function.Module._load (internal/modules/cjs/loader.js:497:25)
    at Module.require (internal/modules/cjs/loader.js:626:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at Object.<anonymous> (/usr/bin/jhipster:20:16)
    at Module._compile (internal/modules/cjs/loader.js:678:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:689:10)
    at Module.load (internal/modules/cjs/loader.js:589:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:528:12)
    at Function.Module._load (internal/modules/cjs/loader.js:520:3)
Run Code Online (Sandbox Code Playgroud)

npm semantic-versioning jhipster

1
推荐指数
1
解决办法
6428
查看次数

长生不老药版本背后的理性是什么?

我是灵丹妙药的新手。我想知道版本的组织方式以及如何知道哪个版本是最新的?我的机器中有 elixir 1.2 版,但我听说过 1.9 和 1.7 版,尽管它们似乎比 1.2 版早。

elixir semantic-versioning

1
推荐指数
1
解决办法
62
查看次数

我应该继续测试代码还是实现更多功能?

我有一个我喜欢编码的辅助项目,我尽可能花时间,因为我还在完成大学学业.当我开始它时,我几乎不知道好的编程实践和TDD等等,我只是为了好玩而编码.

之后的几次迭代,重构,改进和积累的知识使我在实现新功能之前编写单元测试和集成测试.但是,我仍然没有足够的时间来进行所有测试以获得可接受的代码覆盖率......尽管软件运行良好.

因此,当我有时间花在这个项目上时,我想实现新的功能(这次是,并行进行单元测试)没有做很多测试,不得不说非常无聊,而且很多很难因为嘲弄和东西......

我应该继续添加功能还是应该先完成所有测试?

我确定软件应该是测试版,直到达到合理的代码覆盖率.这时它是版本0.9-beta.

如果我添加新功能,我应该遵循保留测试版的语义版本吗?例如,作为下一次迭代0.10-beta,0.11-beta依此类推,直到测试完成,最后它将转向非beta版本.

如果你想检查我的项目,请点击链接: octaviospain.github.io/Musicott

testing unit-testing semantic-versioning

0
推荐指数
1
解决办法
66
查看次数