|
| 1 | +diff --git a/.yarn/plugins/@yarnpkg/plugin-backstage.cjs b/.yarn/plugins/@yarnpkg/plugin-backstage.cjs |
| 2 | +index 77fafe5d..d71dd8cc 100644 |
| 3 | +--- a/.yarn/plugins/@yarnpkg/plugin-backstage.cjs |
| 4 | ++++ b/.yarn/plugins/@yarnpkg/plugin-backstage.cjs |
| 5 | +@@ -5,3 +5,3 @@ name: "@yarnpkg/plugin-backstage", |
| 6 | + factory: function (require) { |
| 7 | +-"use strict";var plugin=(()=>{var V=Object.create;var w=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var M=Object.getPrototypeOf,F=Object.prototype.hasOwnProperty;var c=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+e+'" is not supported')});var W=(e,t)=>{for(var r in t)w(e,r,{get:t[r],enumerable:!0})},$=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of C(t))!F.call(e,o)&&o!==r&&w(e,o,{get:()=>t[o],enumerable:!(n=A(t,o))||n.enumerable});return e};var B=(e,t,r)=>(r=e!=null?V(M(e)):{},$(t||!e||!e.__esModule?w(r,"default",{value:e,enumerable:!0}):r,e)),G=e=>$(w({},"__esModule",{value:!0}),e);var ee={};W(ee,{default:()=>Z});var y=c("@yarnpkg/core");var d=c("@yarnpkg/core");var m=c("@yarnpkg/core");var _="https://versions.backstage.io",I="https://raw.githubusercontent.com/backstage/versions/main";function N(e,t){return new Promise((r,n)=>{let o=setTimeout(()=>{t.aborted||r()},e);t.addEventListener("abort",()=>{clearTimeout(o),n(new Error("Aborted"))})})}async function J(e,t,r){let n=new AbortController,o=new AbortController,a=e(n.signal).then(s=>(o.abort(),s)),i=N(r,o.signal).then(()=>t(o.signal)).then(s=>(n.abort(),s));return Promise.any([a,i]).catch(()=>a)}async function v(e){let t=encodeURIComponent(e.version),r=e.fetch??fetch,n=await J(o=>r(`${_}/v1/releases/${t}/manifest.json`,{signal:o}),o=>r(`${I}/v1/releases/${t}/manifest.json`,{signal:o}),500);if(n.status===404)throw new Error(`No release found for ${e.version} version`);if(n.status!==200)throw new Error(`Unexpected response status ${n.status} when fetching release from ${n.url}.`);return n.json()}var f="backstage:";var S=B(c("assert")),j=c("semver"),k=c("@yarnpkg/fslib");var l=B(c("fs")),p=c("path");function E(e,t){let r=e;for(let n=0;n<1e3;n++){let o=(0,p.resolve)(r,"package.json");if(l.default.existsSync(o)&&t(o))return r;let i=(0,p.dirname)(r);if(i===r)return;r=i}throw new Error(`Iteration limit reached when searching for root package.json at ${e}`)}function H(e){let t=E(e,()=>!0);if(!t)throw new Error(`No package.json found while searching for package root of ${e}`);return t}function z(e){if(!l.default.existsSync((0,p.resolve)(e,"src")))throw new Error("Tried to access monorepo package root dir outside of Backstage repository");return(0,p.resolve)(e,"../..")}function R(e){let t=H(e),r=l.default.realpathSync(process.cwd()).replace(/^[a-z]:/,s=>s.toLocaleUpperCase("en-US")),n="",o=()=>(n||(n=z(t)),n),a="",i=()=>(a||(a=E(r,s=>{try{let g=l.default.readFileSync(s,"utf8"),U=JSON.parse(g);return Boolean(U.workspaces)}catch(g){throw new Error(`Failed to parse package.json file while searching for root, ${g}`)}})??r),a);return{ownDir:t,get ownRoot(){return o()},targetDir:r,get targetRoot(){return i()},resolveOwn:(...s)=>(0,p.resolve)(t,...s),resolveOwnRoot:(...s)=>(0,p.resolve)(o(),...s),resolveTarget:(...s)=>(0,p.resolve)(r,...s),resolveTargetRoot:(...s)=>(0,p.resolve)(i(),...s)}}var P="backstage.json";var T=e=>{let t=!1,r;return()=>(t||(r=e(),t=!0),r)};var u=c("@yarnpkg/fslib");var D=()=>u.npath.toPortablePath(R(u.npath.fromPortablePath(u.ppath.cwd())).targetRoot);var L=T(()=>{let e=k.ppath.join(D(),P),t=null;try{t=(0,j.valid)(k.xfs.readJsonSync(e).version),(0,S.default)(t!==null)}catch{throw new Error("Valid version string not found in backstage.json")}return t});var h=async(e,t)=>{let r=m.structUtils.stringifyIdent(e),n=m.structUtils.parseRange(e.range);if(n.protocol!==f)throw new Error(`Unsupported version protocol in version range "${e.range}" for package ${r}`);if(n.selector!=="^")throw new Error(`Unexpected version selector "${n.selector}" for package ${r}`);let o=L(),i=(await v({version:o,fetch:async s=>{let g=await m.httpUtils.get(s,{configuration:t,jsonResponse:!0});return{status:200,url:s,json:()=>g}}})).packages.find(s=>s.name===r);if(!i)throw new Error(`Package ${r} not found in manifest for Backstage v${o}. This means the specified package is not included in this Backstage release. This may imply the package has been replaced with an alternative - please review the documentation for the package. If you need to continue using this package, it will be necessary to switch to manually managing its version.`);return i.version};var K=e=>d.structUtils.parseRange(e).protocol===f,Y=(e,t,r)=>e!=="dependencies"?e:r.manifest.ensureDependencyMeta(d.structUtils.makeDescriptor(t,"unknown")).optional?"optionalDependencies":e,x=async(e,t)=>{for(let r of["dependencies","devDependencies"]){let n=Array.from(e.manifest.getForScope(r).values()).filter(o=>o.range.startsWith(f));for(let o of n){let a=d.structUtils.stringifyIdent(o);if(d.structUtils.parseRange(o.range).selector!=="^")throw new Error(`Unexpected version range "${o.range}" for dependency on "${a}"`);let s=Y(r,o,e);t[s][a]=`^${await h(o,e.project.configuration)}`}}if(["dependencies","devDependencies","optionalDependencies"].some(r=>Object.values(t[r]??{}).some(K)))throw new Error(`Failed to replace all "backstage:" ranges in manifest for ${t.name}`)};var b=c("@yarnpkg/core");var O=async(e,t)=>b.structUtils.parseRange(e.range).protocol===f?b.structUtils.makeDescriptor(e,`npm:^${await h(e,t.configuration)}`):e;var q="\x1B[31;1m",Q="\x1B[0m";y.semverUtils.satisfiesWithPrereleases(y.YarnVersion,"^4.1.1")||(console.error(),console.error(`${q}Unsupported yarn version${Q}: The Backstage yarn plugin only works with yarn ^4.1.1. Please upgrade yarn, or remove this plugin with "yarn plugin remove @yarnpkg/plugin-backstage".`),console.error());var X={hooks:{reduceDependency:O,beforeWorkspacePacking:x}},Z=X;return G(ee);})(); |
| 8 | ++"use strict";var plugin=(()=>{var j=Object.create;var R=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var F=Object.getOwnPropertyNames;var W=Object.getPrototypeOf,N=Object.prototype.hasOwnProperty;var c=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(r,t)=>(typeof require<"u"?require:r)[t]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var G=(e,r)=>{for(var t in r)R(e,t,{get:r[t],enumerable:!0})},T=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of F(r))!N.call(e,o)&&o!==t&&R(e,o,{get:()=>r[o],enumerable:!(n=M(r,o))||n.enumerable});return e};var S=(e,r,t)=>(t=e!=null?j(W(e)):{},T(r||!e||!e.__esModule?R(t,"default",{value:e,enumerable:!0}):t,e)),I=e=>T(R({},"__esModule",{value:!0}),e);var te={};G(te,{default:()=>re});var P=c("@yarnpkg/core");var w=c("@yarnpkg/core");var U=S(c("assert")),A=c("semver"),y=c("@yarnpkg/fslib");var m=S(c("fs")),p=c("path");function L(e,r){let t=e;for(let n=0;n<1e3;n++){let o=(0,p.resolve)(t,"package.json");if(m.default.existsSync(o)&&r(o))return t;let i=(0,p.dirname)(t);if(i===t)return;t=i}throw new Error(`Iteration limit reached when searching for root package.json at ${e}`)}function _(e){let r=L(e,()=>!0);if(!r)throw new Error(`No package.json found while searching for package root of ${e}`);return r}function J(e){if(!m.default.existsSync((0,p.resolve)(e,"src")))throw new Error("Tried to access monorepo package root dir outside of Backstage repository");return(0,p.resolve)(e,"../..")}function b(e){let r=_(e),t=m.default.realpathSync(process.cwd()).replace(/^[a-z]:/,s=>s.toLocaleUpperCase("en-US")),n="",o=()=>(n||(n=J(r)),n),a="",i=()=>(a||(a=L(t,s=>{try{let f=m.default.readFileSync(s,"utf8");return!!JSON.parse(f).workspaces}catch(f){throw new Error(`Failed to parse package.json file while searching for root, ${f}`)}})??t),a);return{ownDir:r,get ownRoot(){return o()},targetDir:t,get targetRoot(){return i()},resolveOwn:(...s)=>(0,p.resolve)(r,...s),resolveOwnRoot:(...s)=>(0,p.resolve)(o(),...s),resolveTarget:(...s)=>(0,p.resolve)(t,...s),resolveTargetRoot:(...s)=>(0,p.resolve)(i(),...s)}}var x="backstage.json";var V=e=>{let r=!1,t;return()=>(r||(t=e(),r=!0),t)};var u=c("@yarnpkg/fslib");var C=()=>u.npath.toPortablePath(b(u.npath.fromPortablePath(u.ppath.cwd())).targetRoot);var h=V(()=>{let e=y.ppath.join(C(),x),r=null;try{r=(0,A.valid)(y.xfs.readJsonSync(e).version),(0,U.default)(r!==null)}catch{throw new Error("Valid version string not found in backstage.json")}return r});var d=c("@yarnpkg/core");var H="https://versions.backstage.io",z="https://raw.githubusercontent.com/backstage/versions/main";function K(e,r){return new Promise((t,n)=>{let o=setTimeout(()=>{r.aborted||t()},e);r.addEventListener("abort",()=>{clearTimeout(o),n(new Error("Aborted"))})})}async function Y(e,r,t){let n=new AbortController,o=new AbortController,a=e(n.signal).then(s=>(o.abort(),s)),i=K(t,o.signal).then(()=>r(o.signal)).then(s=>(n.abort(),s));return Promise.any([a,i]).catch(()=>a)}async function D(e){let r=encodeURIComponent(e.version),t=e.fetch??fetch,n=await Y(o=>t(`${H}/v1/releases/${r}/manifest.json`,{signal:o}),o=>t(`${z}/v1/releases/${r}/manifest.json`,{signal:o}),500);if(n.status===404)throw new Error(`No release found for ${e.version} version`);if(n.status!==200)throw new Error(`Unexpected response status ${n.status} when fetching release from ${n.url}.`);return n.json()}var g="backstage:";var k=async(e,r)=>{let t=d.structUtils.stringifyIdent(e),n=d.structUtils.parseRange(e.range);if(n.protocol!==g)throw new Error(`Unsupported version protocol in version range "${e.range}" for package ${t}`);if(n.selector!=="^")throw new Error(`Unexpected version selector "${n.selector}" for package ${t}`);let o=h(),i=(await D({version:o,fetch:async s=>{let f=await d.httpUtils.get(s,{configuration:r,jsonResponse:!0});return{status:200,url:s,json:()=>f}}})).packages.find(s=>s.name===t);if(!i)throw new Error(`Package ${t} not found in manifest for Backstage v${o}. This means the specified package is not included in this Backstage release. This may imply the package has been replaced with an alternative - please review the documentation for the package. If you need to continue using this package, it will be necessary to switch to manually managing its version.`);return i.version};var q=e=>w.structUtils.parseRange(e).protocol===g,Q=(e,r,t)=>e!=="dependencies"?e:t.manifest.ensureDependencyMeta(w.structUtils.makeDescriptor(r,"unknown")).optional?"optionalDependencies":e,O=async(e,r)=>{for(let t of["dependencies","devDependencies"]){let n=Array.from(e.manifest.getForScope(t).values()).filter(o=>o.range.startsWith(g));for(let o of n){let a=w.structUtils.stringifyIdent(o);if(w.structUtils.parseRange(o.range).selector!=="^")throw new Error(`Unexpected version range "${o.range}" for dependency on "${a}"`);let s=Q(t,o,e);r[s][a]=`^${await k(o,e.project.configuration)}`}}if(["dependencies","devDependencies","optionalDependencies"].some(t=>Object.values(r[t]??{}).some(q)))throw new Error(`Failed to replace all "backstage:" ranges in manifest for ${r.name}`)};var $=c("@yarnpkg/core");var B=async(e,r)=>{let t=$.structUtils.parseRange(e.range);if(t.protocol!==g)return e;if(t.selector!=="^")throw new Error(`Invalid backstage: version range found: ${e.range}`);return $.structUtils.bindDescriptor(e,{backstage:h(),npm:await k(e,r.configuration)})};var l=c("@yarnpkg/core"),E=c("@yarnpkg/plugin-npm");var v=class e{static protocol=g;supportsDescriptor=r=>r.range.startsWith(e.protocol);async getCandidates(r,t,n){let o=l.structUtils.parseRange(r.range).params?.npm;if(!o||Array.isArray(o))throw new Error(`Missing npm parameter on backstage: range "${r.range}"`);return new E.NpmSemverResolver().getCandidates(l.structUtils.makeDescriptor(r,`npm:^${o}`),t,n)}getResolutionDependencies(r){let t=l.structUtils.parseRange(r.range).params?.npm;if(!t)throw new Error(`Missing npm parameter on backstage: range "${r.range}".`);return{[l.structUtils.stringifyIdent(r)]:l.structUtils.makeDescriptor(r,`npm:^${t}`)}}async getSatisfying(r,t,n,o){let a=r,i=l.structUtils.parseRange(a.range);if(i.protocol===g){let s=i.params?.npm;a=l.structUtils.makeDescriptor(r,`npm:^${s}`)}return new E.NpmSemverResolver().getSatisfying(a,t,n,o)}bindDescriptor=r=>r;supportsLocator=()=>!1;shouldPersistResolution=()=>{throw new Error("Unreachable: BackstageNpmResolver should never persist resolution as it uses npm: protocol")};resolve=async()=>{throw new Error("Unreachable: BackstageNpmResolver should never resolve as it uses npm: protocol")}};var X="\x1B[31;1m",Z="\x1B[0m";P.semverUtils.satisfiesWithPrereleases(P.YarnVersion,"^4.1.1")||(console.error(),console.error(`${X}Unsupported yarn version${Z}: The Backstage yarn plugin only works with yarn ^4.1.1. Please upgrade yarn, or remove this plugin with "yarn plugin remove @yarnpkg/plugin-backstage".`),console.error());var ee={hooks:{reduceDependency:B,beforeWorkspacePacking:O},resolvers:[v]},re=ee;return I(te);})(); |
| 9 | + return plugin; |
| 10 | +diff --git a/.yarnrc.yml b/.yarnrc.yml |
| 11 | +index 735fb0af..aa531e62 100644 |
| 12 | +--- a/.yarnrc.yml |
| 13 | ++++ b/.yarnrc.yml |
| 14 | +@@ -3,5 +3,5 @@ nodeLinker: node-modules |
| 15 | + plugins: |
| 16 | +- - checksum: 254c816a15098e2a0b414345caf9144409fbf6a63da7ec8ec8d3454aa1d2edfbbc32cd264d8c464b7ec4aca7809c690848a7c1191b5f8167dec81dbdf6107b01 |
| 17 | ++ - checksum: 2eda215600fa289952383d999f87e6fa46a333fd737a8a221a1e2326d4c95a2d694510b5e6aa5a3ef5b8927b48ce7ea1d5783efc4be18d5f87cf57d5fa16b966 |
| 18 | + path: .yarn/plugins/@yarnpkg/plugin-backstage.cjs |
| 19 | +- spec: "https://versions.backstage.io/v1/releases/1.38.0-next.2/yarn-plugin" |
| 20 | ++ spec: "https://versions.backstage.io/v1/releases/1.39.0-next.1/yarn-plugin" |
| 21 | + |
| 22 | +diff --git a/backstage.json b/backstage.json |
| 23 | +index 21c44687..ad1bd609 100644 |
| 24 | +--- a/backstage.json |
| 25 | ++++ b/backstage.json |
| 26 | +@@ -1,3 +1,3 @@ |
| 27 | + { |
| 28 | +- "version": "1.38.0-next.2" |
| 29 | ++ "version": "1.39.0-next.1" |
| 30 | + } |
| 31 | +diff --git a/examples/template/template.yaml b/examples/template/template.yaml |
| 32 | +index 33f262b4..cfba98e8 100644 |
| 33 | +--- a/examples/template/template.yaml |
| 34 | ++++ b/examples/template/template.yaml |
| 35 | +@@ -50,2 +50,4 @@ spec: |
| 36 | + # This step publishes the contents of the working directory to GitHub. |
| 37 | ++ # If you or your organization prefer another default branch name over 'main' |
| 38 | ++ # you can change that here. |
| 39 | + - id: publish |
| 40 | +@@ -57,2 +59,3 @@ spec: |
| 41 | + repoUrl: ${{ parameters.repoUrl }} |
| 42 | ++ defaultBranch: 'main' |
| 43 | + |
0 commit comments