composer-php - 作曲家更新或不需要拉最新版本
问题描述
我的作曲家.json:
"require": {
"insenseanalytics/laravel-user-audit-trails": "^1.0"
}
作曲家诊断的输出:
Checking composer.json: WARNING
require.insenseanalytics/nova-impersonate-tool : unbound version constraints (*) should be avoided
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Checking pubkeys:
Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0 87719BA6 8F3BB723 4E5D42D0 84A14642
Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B 0C708369 153E328C AD90147D AFE50952
OK
Checking composer version: OK
Composer version: 1.7.2
PHP version: 7.1.18
PHP binary path: /usr/local/Cellar/php@7.1/7.1.18/bin/php
当我运行这个命令时:
composer update
Composer 引入 v1.0 而不是 v1.0.1。Packagist正确地将 v1.0.1 显示为最新版本,但不知何故它无法识别它。
当我运行这个命令时:
composer show insenseanalytics/laravel-user-audit-trails
它输出
name : insenseanalytics/laravel-user-audit-trails
descrip. : User audit trails for Laravel Eloquent.
keywords : Audit, audit trails, laravel, user trails
versions : * v1.0
type : library
license : MIT License (MIT) (OSI approved) https://spdx.org/licenses/MIT.html#licenseText
source : [git] https://github.com/insenseanalytics/laravel-user-audit-trails.git 09256e522240f29b7b214a9f15dc5f62bb8f02a7
dist : [zip] https://api.github.com/repos/insenseanalytics/laravel-user-audit-trails/zipball/09256e522240f29b7b214a9f15dc5f62bb8f02a7 09256e522240f29b7b214a9f15dc5f62bb8f02a7
names : insenseanalytics/laravel-user-audit-trails
autoload
psr-4
Insense\LaravelUserAuditTrails\ => src/
requires
illuminate/database ~5.5.0|~5.6.0
illuminate/support ~5.5.0|~5.6.0
requires (dev)
doctrine/dbal ~2.6
orchestra/testbench ~3.5.0|~3.6.0
phpunit/phpunit ^6.0|^7.0
但是上面的输出没有显示最新的标签 v1.0.1。我也是我试图拉入的包的作者,但我似乎不明白这里有什么问题?包 composer.json 没有版本条目
解决方案
似乎最新版本打破了向后兼容性。官方文档
插入符号版本范围 (^)#
^运算符的行为非常相似,但它更接近语义版本控制,并且始终允许不间断更新。例如 ^1.2.3 等价于 >=1.2.3 <2.0.0,因为 2.0 之前的任何版本都不会破坏向后兼容性。对于 1.0 之前的版本,它还考虑到安全性并将 ^0.3 视为 >=0.3.0 <0.4.0。
这是在编写库代码时推荐的最大互操作性运算符。
示例:^1.2.3
推荐阅读
- python - 质数检查器在 23 岁后无法正常工作
- arrays - PERCENTAGES 的值数组?
- deno - 如何更新当前已安装 Deno 的版本
- android - Android Admob:无法导入某些类
- c++ - Qt QML TableView Header 不显示
- python - 如何根据字典键合并字典列表?
- wordpress - 显示更新时间前 Wordpress
- azure - 对于前端的 React 应用程序和后端的 Express 应用程序,这是否是使用 Azure AD 对用户进行身份验证和授权的正确流程?
- blockchain - 如何在获得归档节点访问权限的情况下查询 polkadot.js 上的所有质押奖励
- azure-active-directory - Razor 页面通过 Azure AD 登录到 Azure SQL DB