mirror of
https://github.com/renovatebot/renovate.git
synced 2025-01-12 06:56:24 +00:00
fix(manager/conan): allow ref with user only (#26516)
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
This commit is contained in:
parent
c6e52bf656
commit
5a511732c0
3 changed files with 12 additions and 2 deletions
|
@ -3,7 +3,7 @@ from conans import ConanFile
|
|||
class Pkg(ConanFile):
|
||||
python_requires = "pyreq/0.1@user/channel" # recipe to reuse code from
|
||||
build_requires = "tool_a/0.2@user/testing", "tool_b/0.2@user/testing"
|
||||
requires = "req_a/1.0", "req_l/2.1@otheruser/testing"
|
||||
requires = "req_a/1.0", "req_l/2.1@otheruser/testing", "req_x/6.1@useronly"
|
||||
|
||||
requires = [("req_b/0.1@user/testing"),
|
||||
("req_d/0.2@dummy/stable", "override"),
|
||||
|
|
|
@ -152,6 +152,13 @@ describe('modules/manager/conan/extract', () => {
|
|||
packageName: 'req_l/2.1@otheruser/testing',
|
||||
replaceString: 'req_l/2.1@otheruser/testing',
|
||||
},
|
||||
{
|
||||
currentValue: '6.1',
|
||||
depName: 'req_x',
|
||||
depType: 'requires',
|
||||
packageName: 'req_x/6.1@useronly/_',
|
||||
replaceString: 'req_x/6.1@useronly',
|
||||
},
|
||||
{
|
||||
currentValue: '0.1',
|
||||
depName: 'req_b',
|
||||
|
|
|
@ -4,7 +4,7 @@ import type { PackageDependency, PackageFileContent } from '../types';
|
|||
import { isComment } from './common';
|
||||
|
||||
const regex = regEx(
|
||||
`(?<name>[-_a-z0-9]+)/(?<version>[^@\n{*"']+)(?<userChannel>@[-_a-zA-Z0-9]+/[^#\n.{*"' ]+)?#?(?<revision>[-_a-f0-9]+[^\n{*"'])?`,
|
||||
`(?<name>[-_a-z0-9]+)/(?<version>[^@\n{*"']+)(?<userChannel>@[-_a-zA-Z0-9]+(?:/[^#\n.{*"' ]+|))?#?(?<revision>[-_a-f0-9]+[^\n{*"'])?`,
|
||||
);
|
||||
|
||||
function setDepType(content: string, originalType: string): string {
|
||||
|
@ -52,6 +52,9 @@ export function extractPackageFile(content: string): PackageFileContent | null {
|
|||
if (matches.groups.userChannel) {
|
||||
userAndChannel = matches.groups.userChannel;
|
||||
replaceString = `${depName}/${currentValue}${userAndChannel}`;
|
||||
if (!userAndChannel.includes('/')) {
|
||||
userAndChannel = `${userAndChannel}/_`;
|
||||
}
|
||||
}
|
||||
const packageName = `${depName}/${currentValue}${userAndChannel}`;
|
||||
|
||||
|
|
Loading…
Reference in a new issue