updates 17.5.8 → 17.5.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +4 -4
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{cwd as e,env as t,exit as n,platform as r,stderr as i,stdout as a,versions as o}from"node:process";import{basename as s,dirname as c,join as l,resolve as u}from"node:path";import{pathToFileURL as d}from"node:url";import{accessSync as f,globSync as p,lstatSync as m,readFileSync as h,statSync as g,truncateSync as _,writeFileSync as v}from"node:fs";import{execFile as y}from"node:child_process";import{parseArgs as b,promisify as ee,stripVTControlCharacters as te,styleText as x}from"node:util";import S from"node:dns";var ne=Object.defineProperty,C=(e,t)=>()=>(e&&(t=e(e=0)),t),re=(e,t)=>{let n={};for(var r in e)ne(n,r,{get:e[r],enumerable:!0});return t||ne(n,Symbol.toStringTag,{value:`Module`}),n};async function ie(e,t,{concurrency:n=1/0,stopOnError:r=!0,signal:i}={}){return new Promise((a,o)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!=`function`)throw TypeError(`Mapper function is required`);if(!(Number.isSafeInteger(n)&&n>=1||n===1/0))throw TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${n}\` (${typeof n})`);let s=[],c=[],l=new Map,u=!1,d=!1,f=!1,p=0,m=0,h=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),g=()=>{y(i.reason)},_=()=>{i?.removeEventListener(`abort`,g)},v=e=>{a(e),_()},y=e=>{u=!0,d=!0,o(e),_()};i&&(i.aborted&&y(i.reason),i.addEventListener(`abort`,g,{once:!0}));let b=async()=>{if(d)return;let e=await h.next(),n=m;if(m++,e.done){if(f=!0,p===0&&!d){if(!r&&c.length>0){y(AggregateError(c));return}if(d=!0,l.size===0){v(s);return}let e=[];for(let[t,n]of s.entries())l.get(t)!==ae&&e.push(n);v(e)}return}p++,(async()=>{try{let r=await e.value;if(d)return;let i=await t(r,n);i===ae&&l.set(n,i),s[n]=i,p--,await b()}catch(e){if(r)y(e);else{c.push(e),p--;try{await b()}catch(e){y(e)}}}})()};(async()=>{for(let e=0;e<n;e++){try{await b()}catch(e){y(e);break}if(f||u)break}})()})}const ae=Symbol(`skip`);var oe=`17.5.8`;const se=/^v?(\d+)\.(\d+)\.(\d+)(?:-([a-zA-Z0-9._-]+(?:\.[a-zA-Z0-9._-]+)*))?(?:\+[a-zA-Z0-9._-]+)?$/,ce=new Map;function w(e){if(typeof e!=`string`)return null;let t=ce.get(e);if(t!==void 0)return t;let n=se.exec(e.trim());if(!n)return ce.set(e,null),null;let r=Number(n[1]),i=Number(n[2]),a=Number(n[3]),o=n[4]?n[4].split(`.`).map(e=>/^\d+$/.test(e)?Number(e):e):[],s={major:r,minor:i,patch:a,prerelease:o,version:`${r}.${i}.${a}${o.length?`-${o.join(`.`)}`:``}`};return ce.set(e,s),s}function le(e,t){let n=typeof e==`number`,r=typeof t==`number`;return n&&r?e-t:n?-1:r?1:e<t?-1:e>t?1:0}function ue(e,t){return e.major-t.major||e.minor-t.minor||e.patch-t.patch}function T(e,t){let n=ue(e,t);if(n!==0)return n;if(!e.prerelease.length&&!t.prerelease.length)return 0;if(e.prerelease.length&&!t.prerelease.length)return-1;if(!e.prerelease.length&&t.prerelease.length)return 1;let r=Math.max(e.prerelease.length,t.prerelease.length);for(let n=0;n<r;n++){if(e.prerelease[n]===void 0)return-1;if(t.prerelease[n]===void 0)return 1;let r=le(e.prerelease[n],t.prerelease[n]);if(r!==0)return r}return 0}function E(e){return w(e)?.version??null}function de(e){return w(e)}const fe=new Map,pe=/(?:^|[^.\d])(\d+)(?:\.(\d+))?(?:\.(\d+))?/;function me(e){if(typeof e!=`string`)return null;let t=fe.get(e);if(t!==void 0)return t;let n=pe.exec(e);if(!n)return fe.set(e,null),null;let r={version:`${n[1]||`0`}.${n[2]||`0`}.${n[3]||`0`}`};return fe.set(e,r),r}function D(e,t){let n=w(e),r=w(t);if(!n||!r||n.version===r.version)return null;let i=T(n,r),a=i>0?n:r,o=i>0?r:n,s=a.prerelease.length>0;if(o.prerelease.length>0&&!s){if(!o.patch&&!o.minor)return`major`;if(ue(o,a)===0)return o.minor&&!o.patch?`minor`:`patch`}let c=s?`pre`:``;return n.major===r.major?n.minor===r.minor?n.patch===r.patch?`prerelease`:`${c}patch`:`${c}minor`:`${c}major`}function he(e,t){let n=w(e),r=w(t);return!n||!r?!1:T(n,r)>0}function ge(e,t){let n=w(e),r=w(t);return!n||!r?!1:T(n,r)>=0}function _e(e,t){let n=w(e),r=w(t);return!n||!r?!1:T(n,r)<0}function ve(e,t){let n=w(e),r=w(t);return!n||!r?!0:T(n,r)!==0}function ye(e){let t=/^(>=|<=|>|<|=)?\s*v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+(?:\.[a-zA-Z0-9._-]+)*)?)$/.exec(e.trim());if(!t)return null;let n=t[2],r=w(`${n}.${t[3]??`0`}.${t[4]??`0`}${t[5]||``}`);return r?{op:t[1]||`=`,semver:r}:null}function be(e,t){let n=T(e,t.semver);switch(t.op){case`>=`:return n>=0;case`<=`:return n<=0;case`>`:return n>0;case`<`:return n<0;case`=`:return n===0;default:return n===0}}function O(e,t,n){return`${e}.${t}.${n}-0`}function xe(e){return e.replace(/~\s*v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+)?)/g,(e,t,n,r,i)=>{let a=Number(t);if(n===void 0)return`>=${a}.0.0 <${O(a+1,0,0)}`;let o=Number(n);return`>=${a}.${o}.${r===void 0?0:Number(r)}${i||``} <${O(a,o+1,0)}`})}function Se(e){return e.replace(/\^\s*v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+)?)/g,(e,t,n,r,i)=>{let a=Number(t),o=i||``;if(n===void 0)return`>=${a}.0.0 <${O(a+1,0,0)}`;let s=Number(n);if(r===void 0)return a===0?`>=${a}.${s}.0 <${O(a,s+1,0)}`:`>=${a}.${s}.0 <${O(a+1,0,0)}`;let c=Number(r);return a===0?s===0?`>=${a}.${s}.${c}${o} <${O(a,s,c+1)}`:`>=${a}.${s}.${c}${o} <${O(a,s+1,0)}`:`>=${a}.${s}.${c}${o} <${O(a+1,0,0)}`})}function Ce(e){return e.replace(/v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+)?)\s+-\s+v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+)?)/g,(e,t,n,r,i,a,o,s,c)=>{let l=Number(t),u=n===void 0?0:Number(n),d=r===void 0?0:Number(r),f=i||``,p=Number(a),m;return m=s===void 0?o===void 0?`<${O(p+1,0,0)}`:`<${O(p,Number(o)+1,0)}`:`<=${p}.${Number(o)}.${Number(s)}${c||``}`,`>=${l}.${u}.${d}${f} ${m}`})}function we(e){return/^\s*[*xX]\s*$/.test(e)?`>=0.0.0`:(e=e.replace(/v?(\d+)\.[xX*](?:\.[xX*])?/g,(e,t)=>{let n=Number(t);return`>=${n}.0.0 <${O(n+1,0,0)}`}),e=e.replace(/v?(\d+)\.(\d+)\.[xX*]/g,(e,t,n)=>{let r=Number(t),i=Number(n);return`>=${r}.${i}.0 <${O(r,i+1,0)}`}),e=e.replace(/(^|[\s|])(\d+)\.(\d+)(?=\s|$)/g,(t,n,r,i,a)=>{let o=e.substring(0,a).trimEnd();if(/[<>=]$/.test(o))return t;let s=Number(r),c=Number(i);return`${n}>=${s}.${c}.0 <${O(s,c+1,0)}`}),e=e.replace(/(^|[\s|])(\d+)(?=\s|$)/g,(t,n,r,i)=>{let a=e.substring(0,i).trimEnd();if(/[<>=]$/.test(a))return t;let o=Number(r);return`${n}>=${o}.0.0 <${O(o+1,0,0)}`}),e)}const k=new Map;function Te(e){let t=k.get(e);if(t!==void 0)return t;let n=e.split(`||`).map(e=>e.trim()),r=[];for(let t of n){if(!t){r.push([]);continue}t=Ce(t),t=Se(t),t=xe(t),t=we(t),t=t.replace(/(^|[\s])v?(\d+\.\d+\.\d+(?:-[a-zA-Z0-9._-]+(?:\.[a-zA-Z0-9._-]+)*)?)\b/g,(e,t)=>/[<>=]/.test(t)?e:`${t}=${e.trim()}`),t=t.replace(/(>=|<=|>|<|=)\s+/g,`$1`);let n=t.split(/\s+/).filter(Boolean),i=[];for(let t of n){let n=ye(t);if(!n)return k.set(e,null),null;i.push(n)}if(i.length===0)return k.set(e,null),null;r.push(i)}let i=r.length?r:null;return k.set(e,i),i}function Ee(e,t){for(let n of t)if(!be(e,n))return!1;if(e.prerelease.length>0){for(let n of t)if(n.semver.prerelease.length>0&&n.semver.major===e.major&&n.semver.minor===e.minor&&n.semver.patch===e.patch)return!0;return!1}return!0}function De(e,t){let n=w(e);if(!n)return!1;let r=Te(t);if(!r)return!1;for(let e of r)if(e.length===0||Ee(n,e))return!0;return!1}function Oe(e){if(typeof e!=`string`)return null;try{return Te(e)?e:null}catch{return null}}const ke=[[1e3,6e4,`sec`],[6e4,36e5,`min`],[36e5,864e5,`hour`],[864e5,6048e5,`day`],[6048e5,2628e6,`week`],[2628e6,31536e6,`month`],[31536e6,1/0,`year`]],Ae={"1 day ago":`yesterday`,"1 week ago":`last week`,"1 month ago":`last month`,"1 year ago":`last year`,"in 1 day":`tomorrow`,"in 1 week":`next week`,"in 1 month":`next month`,"in 1 year":`next year`},je={sec:`second`,min:`minute`};function Me(e){return e instanceof Date?e.getTime():typeof e==`string`?Date.parse(e):e}function Ne(e,{now:t,noAffix:n=!1,times:r=ke,nowThreshold:i=2e3,nowString:a=`now`,unknownString:o=``,aliases:s=!1,aliasesMap:c=Ae,longUnits:l=!1}={}){let u=Me(e);if(t=t===void 0?Date.now():Me(t),Number.isNaN(u))return o||String(e);let d=!1,f=t-u;if(f<0&&(d=!0,f=Math.abs(f)),f<i)return a;let p=0,m=``;for(let e=0,t=r.length;e<t;e++){let t=r[e];if(!(f>=t[1])){p=Math.floor(f/t[0]),m=(l&&je[t[2]]||t[2])+(p>1?`s`:``);break}}let h=`${d&&!n?`in `:``}${p} ${m}${!d&&!n?` ago`:``}`;return s?c[h]??h:h}function Pe(e){let t=[];for(let n of e){let[e,r]=n.replaceAll(/\s+/g,``).split(/[<>=~]+/);e&&/^[0-9.a-z]+$/.test(r)&&t.push({name:e,version:r})}return t}const Fe=[`dependencies`,`devDependencies`,`peerDependencies`,`optionalDependencies`,`resolutions`,`packageManager`],Ie=[`node`,`deno`,`bun`],Le=[`tool.poetry.dependencies`,`tool.poetry.dev-dependencies`,`tool.poetry.test-dependencies`,`tool.poetry.group.dev.dependencies`,`tool.poetry.group.test.dependencies`],Re=[`project.dependencies`,`project.optional-dependencies`,`dependency-groups.dev`,`dependency-groups.lint`,`dependency-groups.test`],ze=[`deps`];function Be(){let e=new Map,t=new Map,n=S.lookup;S.lookup=function(r,...i){let a={},o;typeof i[0]==`function`?o=i[0]:(a=typeof i[0]==`number`?{family:i[0]}:i[0]||{},o=i[1]);let s=e.get(r);if(s){a.all?o(null,s):o(null,s[0].address,s[0].family);return}if(t.has(r)){t.get(r).push({options:a,callback:o});return}t.set(r,[{options:a,callback:o}]),n.call(S,r,{all:!0},(n,i)=>{let a=t.get(r);t.delete(r),!n&&i?.length&&e.set(r,i);for(let{options:e,callback:t}of a)n?t(n):e.all?t(null,i):t(null,i[0].address,i[0].family)})}}function Ve(e){if(/^\s*\{/.test(e))return JSON.parse(e);let t={};for(let n of e.split(/\r?\n/)){let e=n.trim();if(!e||e.startsWith(`#`)||e.startsWith(`;`))continue;let r=e.indexOf(`=`);if(r===-1)continue;let i=e.slice(r+1).trim();i.length>=2&&(i.startsWith(`"`)&&i.endsWith(`"`)||i.startsWith(`'`)&&i.endsWith(`'`))&&(i=i.slice(1,-1)),t[e.slice(0,r).trim()]=i}return t}function He(e){try{return Ve(h(e,`utf-8`))}catch{return}}function Ue(t){let n=e();for(;;){let e=l(n,t);try{return g(e),e}catch{}let r=c(n);if(r===n)break;n=r}}function We(e){let n={},r=e.toLowerCase();for(let[i,a]of Object.entries(t))if(i.toLowerCase().startsWith(r)){let t=i.substring(e.length).split(`__`).filter(Boolean);if(t.length===0)continue;let r=n;for(let e=0;e<t.length;e++){let n=t[e];if(e===t.length-1)r[n]=a;else if(r[n]===void 0&&(r[n]={}),typeof r[n]==`object`)r=r[n];else break}}return n}function Ge(e,n={}){let i=r===`win32`,a=i?t.USERPROFILE:t.HOME,o=[{...n}],s=[];function c(e){if(!e||s.includes(e))return;let t=He(e);t&&(o.push(t),s.push(e))}i||(c(l(`/etc`,e,`config`)),c(l(`/etc`,`${e}rc`))),a&&(c(l(a,`.config`,e,`config`)),c(l(a,`.config`,e)),c(l(a,`.${e}`,`config`)),c(l(a,`.${e}rc`))),c(Ue(`.${e}rc`));let u=We(`${e}_`);return u.config&&c(u.config),Object.assign({},...o,u,s.length?{configs:s,config:s[s.length-1]}:void 0)}function Ke(e,t){let n=e.slice(0,t).split(/\r\n|\n|\r/g);return[n.length,n.pop().length+1]}function qe(e,t,n){let r=e.split(/\r\n|\n|\r/g),i=``,a=(Math.log10(t+1)|0)+1;for(let e=t-1;e<=t+1;e++){let o=r[e-1];o&&(i+=e.toString().padEnd(a,` `),i+=`: `,i+=o,i+=`
|
|
2
|
+
import{cwd as e,env as t,exit as n,platform as r,stderr as i,stdout as a,versions as o}from"node:process";import{basename as s,dirname as c,join as l,resolve as u}from"node:path";import{pathToFileURL as d}from"node:url";import{accessSync as f,globSync as p,lstatSync as m,readFileSync as h,statSync as g,truncateSync as _,writeFileSync as v}from"node:fs";import{execFile as y}from"node:child_process";import{parseArgs as b,promisify as ee,stripVTControlCharacters as te,styleText as x}from"node:util";import S from"node:dns";var ne=Object.defineProperty,C=(e,t)=>()=>(e&&(t=e(e=0)),t),re=(e,t)=>{let n={};for(var r in e)ne(n,r,{get:e[r],enumerable:!0});return t||ne(n,Symbol.toStringTag,{value:`Module`}),n};async function ie(e,t,{concurrency:n=1/0,stopOnError:r=!0,signal:i}={}){return new Promise((a,o)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof t!=`function`)throw TypeError(`Mapper function is required`);if(!(Number.isSafeInteger(n)&&n>=1||n===1/0))throw TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${n}\` (${typeof n})`);let s=[],c=[],l=new Map,u=!1,d=!1,f=!1,p=0,m=0,h=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),g=()=>{y(i.reason)},_=()=>{i?.removeEventListener(`abort`,g)},v=e=>{a(e),_()},y=e=>{u=!0,d=!0,o(e),_()};i&&(i.aborted&&y(i.reason),i.addEventListener(`abort`,g,{once:!0}));let b=async()=>{if(d)return;let e=await h.next(),n=m;if(m++,e.done){if(f=!0,p===0&&!d){if(!r&&c.length>0){y(AggregateError(c));return}if(d=!0,l.size===0){v(s);return}let e=[];for(let[t,n]of s.entries())l.get(t)!==ae&&e.push(n);v(e)}return}p++,(async()=>{try{let r=await e.value;if(d)return;let i=await t(r,n);i===ae&&l.set(n,i),s[n]=i,p--,await b()}catch(e){if(r)y(e);else{c.push(e),p--;try{await b()}catch(e){y(e)}}}})()};(async()=>{for(let e=0;e<n;e++){try{await b()}catch(e){y(e);break}if(f||u)break}})()})}const ae=Symbol(`skip`);var oe=`17.5.10`;const se=/^v?(\d+)\.(\d+)\.(\d+)(?:-([a-zA-Z0-9._-]+(?:\.[a-zA-Z0-9._-]+)*))?(?:\+[a-zA-Z0-9._-]+)?$/,ce=new Map;function w(e){if(typeof e!=`string`)return null;let t=ce.get(e);if(t!==void 0)return t;let n=se.exec(e.trim());if(!n)return ce.set(e,null),null;let r=Number(n[1]),i=Number(n[2]),a=Number(n[3]),o=n[4]?n[4].split(`.`).map(e=>/^\d+$/.test(e)?Number(e):e):[],s={major:r,minor:i,patch:a,prerelease:o,version:`${r}.${i}.${a}${o.length?`-${o.join(`.`)}`:``}`};return ce.set(e,s),s}function le(e,t){let n=typeof e==`number`,r=typeof t==`number`;return n&&r?e-t:n?-1:r?1:e<t?-1:e>t?1:0}function ue(e,t){return e.major-t.major||e.minor-t.minor||e.patch-t.patch}function T(e,t){let n=ue(e,t);if(n!==0)return n;if(!e.prerelease.length&&!t.prerelease.length)return 0;if(e.prerelease.length&&!t.prerelease.length)return-1;if(!e.prerelease.length&&t.prerelease.length)return 1;let r=Math.max(e.prerelease.length,t.prerelease.length);for(let n=0;n<r;n++){if(e.prerelease[n]===void 0)return-1;if(t.prerelease[n]===void 0)return 1;let r=le(e.prerelease[n],t.prerelease[n]);if(r!==0)return r}return 0}function E(e){return w(e)?.version??null}function de(e){return w(e)}const fe=new Map,pe=/(?:^|[^.\d])(\d+)(?:\.(\d+))?(?:\.(\d+))?/;function me(e){if(typeof e!=`string`)return null;let t=fe.get(e);if(t!==void 0)return t;let n=pe.exec(e);if(!n)return fe.set(e,null),null;let r={version:`${n[1]||`0`}.${n[2]||`0`}.${n[3]||`0`}`};return fe.set(e,r),r}function D(e,t){let n=w(e),r=w(t);if(!n||!r||n.version===r.version)return null;let i=T(n,r),a=i>0?n:r,o=i>0?r:n,s=a.prerelease.length>0;if(o.prerelease.length>0&&!s){if(!o.patch&&!o.minor)return`major`;if(ue(o,a)===0)return o.minor&&!o.patch?`minor`:`patch`}let c=s?`pre`:``;return n.major===r.major?n.minor===r.minor?n.patch===r.patch?`prerelease`:`${c}patch`:`${c}minor`:`${c}major`}function he(e,t){let n=w(e),r=w(t);return!n||!r?!1:T(n,r)>0}function ge(e,t){let n=w(e),r=w(t);return!n||!r?!1:T(n,r)>=0}function _e(e,t){let n=w(e),r=w(t);return!n||!r?!1:T(n,r)<0}function ve(e,t){let n=w(e),r=w(t);return!n||!r?!0:T(n,r)!==0}function ye(e){let t=/^(>=|<=|>|<|=)?\s*v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+(?:\.[a-zA-Z0-9._-]+)*)?)$/.exec(e.trim());if(!t)return null;let n=t[2],r=w(`${n}.${t[3]??`0`}.${t[4]??`0`}${t[5]||``}`);return r?{op:t[1]||`=`,semver:r}:null}function be(e,t){let n=T(e,t.semver);switch(t.op){case`>=`:return n>=0;case`<=`:return n<=0;case`>`:return n>0;case`<`:return n<0;case`=`:return n===0;default:return n===0}}function O(e,t,n){return`${e}.${t}.${n}-0`}function xe(e){return e.replace(/~\s*v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+)?)/g,(e,t,n,r,i)=>{let a=Number(t);if(n===void 0)return`>=${a}.0.0 <${O(a+1,0,0)}`;let o=Number(n);return`>=${a}.${o}.${r===void 0?0:Number(r)}${i||``} <${O(a,o+1,0)}`})}function Se(e){return e.replace(/\^\s*v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+)?)/g,(e,t,n,r,i)=>{let a=Number(t),o=i||``;if(n===void 0)return`>=${a}.0.0 <${O(a+1,0,0)}`;let s=Number(n);if(r===void 0)return a===0?`>=${a}.${s}.0 <${O(a,s+1,0)}`:`>=${a}.${s}.0 <${O(a+1,0,0)}`;let c=Number(r);return a===0?s===0?`>=${a}.${s}.${c}${o} <${O(a,s,c+1)}`:`>=${a}.${s}.${c}${o} <${O(a,s+1,0)}`:`>=${a}.${s}.${c}${o} <${O(a+1,0,0)}`})}function Ce(e){return e.replace(/v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+)?)\s+-\s+v?(\d+)(?:\.(\d+))?(?:\.(\d+))?((?:-[a-zA-Z0-9._-]+)?)/g,(e,t,n,r,i,a,o,s,c)=>{let l=Number(t),u=n===void 0?0:Number(n),d=r===void 0?0:Number(r),f=i||``,p=Number(a),m;return m=s===void 0?o===void 0?`<${O(p+1,0,0)}`:`<${O(p,Number(o)+1,0)}`:`<=${p}.${Number(o)}.${Number(s)}${c||``}`,`>=${l}.${u}.${d}${f} ${m}`})}function we(e){return/^\s*[*xX]\s*$/.test(e)?`>=0.0.0`:(e=e.replace(/v?(\d+)\.[xX*](?:\.[xX*])?/g,(e,t)=>{let n=Number(t);return`>=${n}.0.0 <${O(n+1,0,0)}`}),e=e.replace(/v?(\d+)\.(\d+)\.[xX*]/g,(e,t,n)=>{let r=Number(t),i=Number(n);return`>=${r}.${i}.0 <${O(r,i+1,0)}`}),e=e.replace(/(^|[\s|])(\d+)\.(\d+)(?=\s|$)/g,(t,n,r,i,a)=>{let o=e.substring(0,a).trimEnd();if(/[<>=]$/.test(o))return t;let s=Number(r),c=Number(i);return`${n}>=${s}.${c}.0 <${O(s,c+1,0)}`}),e=e.replace(/(^|[\s|])(\d+)(?=\s|$)/g,(t,n,r,i)=>{let a=e.substring(0,i).trimEnd();if(/[<>=]$/.test(a))return t;let o=Number(r);return`${n}>=${o}.0.0 <${O(o+1,0,0)}`}),e)}const k=new Map;function Te(e){let t=k.get(e);if(t!==void 0)return t;let n=e.split(`||`).map(e=>e.trim()),r=[];for(let t of n){if(!t){r.push([]);continue}t=Ce(t),t=Se(t),t=xe(t),t=we(t),t=t.replace(/(^|[\s])v?(\d+\.\d+\.\d+(?:-[a-zA-Z0-9._-]+(?:\.[a-zA-Z0-9._-]+)*)?)\b/g,(e,t)=>/[<>=]/.test(t)?e:`${t}=${e.trim()}`),t=t.replace(/(>=|<=|>|<|=)\s+/g,`$1`);let n=t.split(/\s+/).filter(Boolean),i=[];for(let t of n){let n=ye(t);if(!n)return k.set(e,null),null;i.push(n)}if(i.length===0)return k.set(e,null),null;r.push(i)}let i=r.length?r:null;return k.set(e,i),i}function Ee(e,t){for(let n of t)if(!be(e,n))return!1;if(e.prerelease.length>0){for(let n of t)if(n.semver.prerelease.length>0&&n.semver.major===e.major&&n.semver.minor===e.minor&&n.semver.patch===e.patch)return!0;return!1}return!0}function De(e,t){let n=w(e);if(!n)return!1;let r=Te(t);if(!r)return!1;for(let e of r)if(e.length===0||Ee(n,e))return!0;return!1}function Oe(e){if(typeof e!=`string`)return null;try{return Te(e)?e:null}catch{return null}}const ke=[[1e3,6e4,`sec`],[6e4,36e5,`min`],[36e5,864e5,`hour`],[864e5,6048e5,`day`],[6048e5,2628e6,`week`],[2628e6,31536e6,`month`],[31536e6,1/0,`year`]],Ae={"1 day ago":`yesterday`,"1 week ago":`last week`,"1 month ago":`last month`,"1 year ago":`last year`,"in 1 day":`tomorrow`,"in 1 week":`next week`,"in 1 month":`next month`,"in 1 year":`next year`},je={sec:`second`,min:`minute`};function Me(e){return e instanceof Date?e.getTime():typeof e==`string`?Date.parse(e):e}function Ne(e,{now:t,noAffix:n=!1,times:r=ke,nowThreshold:i=2e3,nowString:a=`now`,unknownString:o=``,aliases:s=!1,aliasesMap:c=Ae,longUnits:l=!1}={}){let u=Me(e);if(t=t===void 0?Date.now():Me(t),Number.isNaN(u))return o||String(e);let d=!1,f=t-u;if(f<0&&(d=!0,f=Math.abs(f)),f<i)return a;let p=0,m=``;for(let e=0,t=r.length;e<t;e++){let t=r[e];if(!(f>=t[1])){p=Math.floor(f/t[0]),m=(l&&je[t[2]]||t[2])+(p>1?`s`:``);break}}let h=`${d&&!n?`in `:``}${p} ${m}${!d&&!n?` ago`:``}`;return s?c[h]??h:h}function Pe(e){let t=[];for(let n of e){let[e,r]=n.replaceAll(/\s+/g,``).split(/[<>=~]+/);e&&/^[0-9.a-z]+$/.test(r)&&t.push({name:e,version:r})}return t}const Fe=[`dependencies`,`devDependencies`,`peerDependencies`,`optionalDependencies`,`resolutions`,`packageManager`],Ie=[`node`,`deno`,`bun`],Le=[`tool.poetry.dependencies`,`tool.poetry.dev-dependencies`,`tool.poetry.test-dependencies`,`tool.poetry.group.dev.dependencies`,`tool.poetry.group.test.dependencies`],Re=[`project.dependencies`,`project.optional-dependencies`,`dependency-groups.dev`,`dependency-groups.lint`,`dependency-groups.test`],ze=[`deps`];function Be(){let e=new Map,t=new Map,n=S.lookup;S.lookup=function(r,...i){let a={},o;typeof i[0]==`function`?o=i[0]:(a=typeof i[0]==`number`?{family:i[0]}:i[0]||{},o=i[1]);let s=e.get(r);if(s){a.all?o(null,s):o(null,s[0].address,s[0].family);return}if(t.has(r)){t.get(r).push({options:a,callback:o});return}t.set(r,[{options:a,callback:o}]),n.call(S,r,{all:!0},(n,i)=>{let a=t.get(r);t.delete(r),!n&&i?.length&&e.set(r,i);for(let{options:e,callback:t}of a)n?t(n):e.all?t(null,i):t(null,i[0].address,i[0].family)})}}function Ve(e){if(/^\s*\{/.test(e))return JSON.parse(e);let t={};for(let n of e.split(/\r?\n/)){let e=n.trim();if(!e||e.startsWith(`#`)||e.startsWith(`;`))continue;let r=e.indexOf(`=`);if(r===-1)continue;let i=e.slice(r+1).trim();i.length>=2&&(i.startsWith(`"`)&&i.endsWith(`"`)||i.startsWith(`'`)&&i.endsWith(`'`))&&(i=i.slice(1,-1)),t[e.slice(0,r).trim()]=i}return t}function He(e){try{return Ve(h(e,`utf-8`))}catch{return}}function Ue(t){let n=e();for(;;){let e=l(n,t);try{return g(e),e}catch{}let r=c(n);if(r===n)break;n=r}}function We(e){let n={},r=e.toLowerCase();for(let[i,a]of Object.entries(t))if(i.toLowerCase().startsWith(r)){let t=i.substring(e.length).split(`__`).filter(Boolean);if(t.length===0)continue;let r=n;for(let e=0;e<t.length;e++){let n=t[e];if(e===t.length-1)r[n]=a;else if(r[n]===void 0&&(r[n]={}),typeof r[n]==`object`)r=r[n];else break}}return n}function Ge(e,n={}){let i=r===`win32`,a=i?t.USERPROFILE:t.HOME,o=[{...n}],s=[];function c(e){if(!e||s.includes(e))return;let t=He(e);t&&(o.push(t),s.push(e))}i||(c(l(`/etc`,e,`config`)),c(l(`/etc`,`${e}rc`))),a&&(c(l(a,`.config`,e,`config`)),c(l(a,`.config`,e)),c(l(a,`.${e}`,`config`)),c(l(a,`.${e}rc`))),c(Ue(`.${e}rc`));let u=We(`${e}_`);return u.config&&c(u.config),Object.assign({},...o,u,s.length?{configs:s,config:s[s.length-1]}:void 0)}function Ke(e,t){let n=e.slice(0,t).split(/\r\n|\n|\r/g);return[n.length,n.pop().length+1]}function qe(e,t,n){let r=e.split(/\r\n|\n|\r/g),i=``,a=(Math.log10(t+1)|0)+1;for(let e=t-1;e<=t+1;e++){let o=r[e-1];o&&(i+=e.toString().padEnd(a,` `),i+=`: `,i+=o,i+=`
|
|
3
3
|
`,e===t&&(i+=` `.repeat(a+n+2),i+=`^
|
|
4
4
|
`))}return i}var A,j=C((()=>{A=class extends Error{line;column;codeblock;constructor(e,t){let[n,r]=Ke(t.toml,t.ptr),i=qe(t.toml,n,r);super(`Invalid TOML document: ${e}\n\n${i}`,t),this.line=n,this.column=r,this.codeblock=i}}}));function Je(e,t){let n=0;for(;e[t-++n]===`\\`;);return--n&&n%2}function Ye(e,t=0,n=e.length){let r=e.indexOf(`
|
|
5
5
|
`,t);return e[r-1]===`\r`&&r--,r<=n?r:-1}function Xe(e,t){for(let n=t;n<e.length;n++){let r=e[n];if(r===`
|
|
@@ -24,8 +24,8 @@ import{cwd as e,env as t,exit as n,platform as r,stderr as i,stdout as a,version
|
|
|
24
24
|
`)+Ot(e,t[c],e,r-1,i)}else a+=s,a+=` = `,a+=wt(t[c],e,r,i),a+=`
|
|
25
25
|
`}}return e&&(a||!o)&&(a=a?`[${e}]\n${a}`:`[${e}]`),a&&o?`${a}\n${o}`:a||o}function kt(e,{maxDepth:t=1e3,numbersAsFloat:n=!1}={}){if(N(e)!==`object`)throw TypeError(`stringify can only be called with an object`);let r=Ot(0,e,``,t,n);return r[r.length-1]===`
|
|
26
26
|
`?r:r+`
|
|
27
|
-
`}var At,jt=C((()=>{At=/^[a-z0-9-_]+$/i})),Mt=re({TomlDate:()=>tt,TomlError:()=>A,default:()=>Nt,parse:()=>bt,stringify:()=>kt}),Nt,Pt=C((()=>{xt(),jt(),nt(),j(),Nt={parse:bt,stringify:kt,TomlDate:tt,TomlError:A}}));const Ft=ee(y),It=/^.*?:\/\/(.*?@)?(github\.com[:/])/i,Lt=/^([^/]+)\/([^/#]+)?.*?\/([0-9a-f]+|v?[0-9]+\.[0-9]+\.[0-9]+)$/i,Rt=/^[0-9a-f]{7,}$/i,zt=/[0-9]+(\.[0-9]+)?(\.[0-9]+)?/g,Bt=/[0-9]+\.[0-9]+\.[0-9]+(-.+)?/g,P=e=>e.replace(/[|\\{}()[\]^$+*?.-]/g,`\\$&`),F=e=>e.endsWith(`/`)?e.substring(0,e.length-1):e,Vt=oe,Ht={"package.json":`npm`,"pyproject.toml":`pypi`,"go.mod":`go`},Ut={"allow-downgrade":{short:`d`,type:`string`,multiple:!0},"error-on-outdated":{short:`E`,type:`boolean`},"error-on-unchanged":{short:`U`,type:`boolean`},exclude:{short:`e`,type:`string`,multiple:!0},file:{short:`f`,type:`string`,multiple:!0},forgeapi:{type:`string`},goproxy:{type:`string`},greatest:{short:`g`,type:`string`,multiple:!0},help:{short:`h`,type:`boolean`},include:{short:`i`,type:`string`,multiple:!0},json:{short:`j`,type:`boolean`},jsrapi:{type:`string`},cooldown:{short:`C`,type:`string`},minor:{short:`m`,type:`string`,multiple:!0},modes:{short:`M`,type:`string`,multiple:!0},color:{short:`c`,type:`boolean`},"no-color":{short:`n`,type:`boolean`},patch:{short:`P`,type:`string`,multiple:!0},pin:{short:`l`,type:`string`,multiple:!0},prerelease:{short:`p`,type:`string`,multiple:!0},pypiapi:{type:`string`},registry:{short:`r`,type:`string`},release:{short:`R`,type:`string`,multiple:!0},sockets:{short:`s`,type:`string`},types:{short:`t`,type:`string`,multiple:!0},update:{short:`u`,type:`boolean`},verbose:{short:`V`,type:`boolean`},version:{short:`v`,type:`boolean`}};function I(e){return Array.isArray(e)&&e.every(e=>e===!0)?!0:Array.isArray(e)?new Set(e.flatMap(e=>typeof e==`string`?dn(e):``).filter(Boolean)):typeof e==`string`?new Set([e]):typeof e==`boolean`?e:!1}function Wt(e){for(let[t,{short:n}]of Object.entries(Ut))if(t===e||n===e)return t;return``}const L=b({strict:!1,allowPositionals:!0,tokens:!0,options:Ut}),R=L.values;for(let[e,t]of L.tokens.entries())if(t.kind===`option`&&t.value?.startsWith(`-`)){let n=Wt(t.value.substring(1)),r=L.tokens[e+1];R[t.name]=[!0],R[n]||(R[n]=[]),r.kind===`positional`&&r.value?R[n].push(r.value):R[n].push(!0)}const z=L.values,[Gt,B,Kt]=[`magenta`,`red`,`green`].map(e=>z[`no-color`]?String:t=>x(e,String(t))),V=Q(I(z.greatest)),qt=Q(I(z.prerelease)),Jt=Q(I(z.release)),Yt=Q(I(z.patch)),Xt=Q(I(z.minor)),Zt=Q(I(z[`allow-downgrade`])),Qt=I(z.modes)||new Set([`npm`,`pypi`,`go`]),$t=typeof z.forgeapi==`string`?F(z.forgeapi):`https://api.github.com`,en=typeof z.pypiapi==`string`?F(z.pypiapi):`https://pypi.org`,tn=typeof z.jsrapi==`string`?F(z.jsrapi):`https://jsr.io`,nn=typeof z.goproxy==`string`?F(z.goproxy):on(),rn=sn(),H=5e3,an=2500;function on(){let e=t.GOPROXY||`https://proxy.golang.org,direct`;for(let t of e.split(/[,|]/)){let e=t.trim();if(e&&e!==`direct`&&e!==`off`)return F(e)}return`https://proxy.golang.org`}function sn(){return(t.GONOPROXY||t.GOPRIVATE||``).split(`,`).map(e=>e.trim()).filter(Boolean)}function cn(e){return rn.some(t=>e===t||e.startsWith(`${t}/`))}const U=e=>e.replace(/^v/,``);function W(e,t){for(let n of t instanceof Set?t:[])if(n.test(e))return!0;return!1}function ln(e,t){let n=t[`${e}:registry`]||t.registry;return n.endsWith(`/`)?n:`${n}/`}function un(e,t){return t.split(`.`).reduce((e,t)=>e?.[t]??null,e)}function dn(e){return e.split(`,`).filter(Boolean)}function fn(e){let t={};if(Array.isArray(e)){for(let n of e)if(typeof n==`string`){let[e,r]=n.split(`=`,2);e&&r&&Oe(r)&&(t[e]=r)}}else if(typeof e==`string`){let[n,r]=e.split(`=`,2);n&&r&&Oe(r)&&(t[n]=r)}return t}function pn(e,t){let n=l(t,e);try{return f(n),n}catch{}let r=c(t);return r===t?null:pn(e,r)}const mn=`https://registry.npmjs.org`;let G=null;const hn=new Map;function gn(){return G||Ge(`npm`,{registry:mn})}function _n(e){return e.replace(/^\$\{?([^}]*)\}?$/,(e,n)=>t[n]||``)}function vn(e,t){let n=t[`${e}:_authToken`]||t[`${e}/:_authToken`];if(n)return{token:_n(n),type:`Bearer`};let r=t[`${e}:username`]||t[`${e}/:username`],i=t[`${e}:_password`]||t[`${e}/:_password`];if(r&&i){let e=Buffer.from(_n(i),`base64`).toString(`utf8`);return{token:Buffer.from(`${r}:${e}`).toString(`base64`),type:`Basic`,username:r,password:e}}let a=t[`${e}:_auth`]||t[`${e}/:_auth`];if(a)return{token:_n(a),type:`Basic`}}function K(e,t){let n=new URL(e.startsWith(`//`)?`http:${e}`:e),r;for(;r!==`/`&&n.pathname!==r;){r=n.pathname||`/`;let e=vn(`//${n.host}${r.replace(/\/$/,``)}`,t);if(e)return e;let i=r.endsWith(`/`)?r:`${r}/`;n.pathname=new URL(`..`,new URL(i,`http://x`)).pathname}let i=t._auth;if(i)return{token:_n(i),type:`Basic`}}function yn(e,t){G||=gn();let n=e.startsWith(`@`)?(/@[a-z0-9][\w-.]+/.exec(e)||[``])[0]:``,r=`${n}:${t}`,i=hn.get(r);if(i)return i;let a;if(!e.startsWith(`@`))a={auth:K(t,G),registry:t};else{let e=F(ln(n,G));if(e!==t)try{let n=K(e,G);a=n?.token?{auth:n,registry:e}:{auth:K(t,G),registry:t}}catch{a={auth:K(t,G),registry:t}}else a={auth:K(t,G),registry:t}}return hn.set(r,a),a}function bn(e,t){return{headers:{"user-agent":`updates/${Vt}`,"accept-encoding":`gzip, deflate, br`,...t&&{Authorization:`${e} ${t}`}}}}function xn(){let e=new Date;return[e.getFullYear(),`-`,String(e.getMonth()+1).padStart(2,`0`),`-`,String(e.getDate()).padStart(2,`0`),` `,String(e.getHours()).padStart(2,`0`),`:`,String(e.getMinutes()).padStart(2,`0`),`:`,String(e.getSeconds()).padStart(2,`0`)].join(``)}function Sn(e){console.error(`${xn()} ${e}`)}async function q(e,t){z.verbose&&Sn(`${Gt(`fetch`)} ${e}`);let n=await fetch(e,t);return z.verbose&&Sn(`${n.ok?Kt(n.status):B(n.status)} ${e}`),n}async function Cn(e,t,n){G||=gn();let{auth:r,registry:i}=yn(e,F((typeof z.registry==`string`?z.registry:!1)||n.registry||G.registry||mn)),a=`${i}/${(t===`resolutions`?s(e):e).replace(/\//g,`%2f`)}`,o=await q(a,{signal:AbortSignal.timeout(H),...bn(r?.type,r?.token)});if(o?.ok)return[await o.json(),t,i,e];throw o?.status&&o?.statusText?Error(`Received ${o.status} ${o.statusText} from ${a}`):Error(`Unable to fetch ${e} from ${i}`)}async function wn(e,t){let n=`${en}/pypi/${e}/json`,r=await q(n,{signal:AbortSignal.timeout(H),headers:{"accept-encoding":`gzip, deflate, br`}});if(r?.ok)return[await r.json(),t,null,e];throw r?.status&&r?.statusText?Error(`Received ${r.status} ${r.statusText} from ${n}`):Error(`Unable to fetch ${e} from ${en}`)}function J(e){return e.startsWith(`npm:@jsr/`)||e.startsWith(`jsr:`)}function Tn(e,t){if(e.startsWith(`npm:@jsr/`)){let t=/^npm:@jsr\/([^_]+)__([^@]+)@(.+)$/.exec(e);if(t)return{scope:t[1],name:t[2],version:t[3]}}else if(e.startsWith(`jsr:@`)){let t=/^jsr:@([^/]+)\/([^@]+)@(.+)$/.exec(e);if(t)return{scope:t[1],name:t[2],version:t[3]}}else if(e.startsWith(`jsr:`)){let n=e.substring(4);if(t?.startsWith(`@`)){let e=/^@([^/]+)\/(.+)$/.exec(t);if(e)return{scope:e[1],name:e[2],version:n}}}return{scope:null,name:null,version:``}}async function En(e,t){let n=/^@([^/]+)\/(.+)$/.exec(e);if(!n)throw Error(`Invalid JSR package name: ${e}`);let[,r,i]=n,a=`${tn}/@${r}/${i}/meta.json`,o=await q(a,{signal:AbortSignal.timeout(H),headers:{"accept-encoding":`gzip, deflate, br`}});if(o?.ok){let n=await o.json(),r={},i={};for(let[e,t]of Object.entries(n.versions))r[e]={version:e,time:t.createdAt},i[e]=t.createdAt;return[{name:e,"dist-tags":{latest:n.latest},versions:r,time:i},t,tn,e]}else if(o?.status&&o?.statusText)throw Error(`Received ${o.status} ${o.statusText} from ${a}`);else throw Error(`Unable to fetch ${e} from JSR`)}function Dn(e){return e.replace(/[A-Z]/g,e=>`!${e.toLowerCase()}`)}function On(e){let t=/\/v(\d+)$/.exec(e);return t?parseInt(t[1]):1}function Y(e,t){return t<=1?e.replace(/\/v\d+$/,``):`${e.replace(/\/v\d+$/,``)}/v${t}`}function kn(e){return/\d{14}-[0-9a-f]{12}$/.test(e)}function An(e){let t={},n=e.split(/\r?\n/),r=!1;for(let e of n){let n=e.trim();if(/^require\s*\(/.test(n)){r=!0;continue}if(n===`)`){r=!1;continue}if(n.includes(`// indirect`))continue;let i=r?/^(\S+)\s+(v\S+)/.exec(n):/^require\s+(\S+)\s+(v\S+)/.exec(n);i&&(t[i[1]]=i[2])}return t}async function jn(e,n,r,i){let a=[{old:r,new:r},n,null,e],o=On(e),s=async(e,n)=>{try{let{stdout:r}=await Ft(`go`,[`list`,`-m`,`-json`,`${e}@latest`],{timeout:n,cwd:i,env:t}),a=JSON.parse(r);return{Version:a.Version,Time:a.Time||``,path:e}}catch{return null}},[c,l]=await Promise.all([s(e,H),s(Y(e,o+1),an)]);if(!c)return a;let u=c.Version,d=c.Time,f=u,p=d,m=e,h=e=>{f=e.Version,p=e.Time,m=e.path};if(l){h(l);let t=await s(Y(e,o+2),an);if(t){h(t);for(let t=o+3;t<=o+100;t+=20){let n=Math.min(t+20,o+101),r=Array.from({length:n-t},(n,r)=>s(Y(e,t+r),an)),i=await Promise.all(r),a=!1;for(let e of i){if(!e)break;h(e),a=!0}if(!a||i.some(e=>!e))break}}}return[{old:r,new:U(f),Time:p,...m===e?{}:{newPath:m},sameMajorNew:U(u),sameMajorTime:d},n,null,e]}async function Mn(e,t,n,r){let i=[{old:n,new:n},t,null,e];if(cn(e))return jn(e,t,n,r);let a=Dn(e),o=On(e),s=async t=>{let n=Y(e,t);return q(`${nn}/${Dn(n)}/@latest`,{signal:AbortSignal.timeout(an)}).then(async e=>e.ok?{...await e.json(),path:n}:null).catch(()=>null)},[c,l]=await Promise.all([q(`${nn}/${a}/@latest`,{signal:AbortSignal.timeout(H)}),s(o+1)]);if(!c.ok)return i;let u,d;try{let e=await c.json();u=e.Version,d=e.Time}catch{return i}let f=u,p=d,m=e,h=e=>{f=e.Version,p=e.Time,m=e.path};if(l){h(l);let e=await s(o+2);if(e){h(e);for(let e=o+3;e<=o+100;e+=20){let t=Math.min(e+20,o+101),n=Array.from({length:t-e},(t,n)=>({result:s(e+n)})),r=await Promise.all(n.map(e=>e.result)),i=!1;for(let e of r){if(!e)break;h(e),i=!0}if(!i||r.some(e=>!e))break}}}return[{old:n,new:U(f),Time:p,...m===e?{}:{newPath:m},sameMajorNew:U(u),sameMajorTime:d},t,null,e]}function Nn(e){return e=e.replace(`git@`,``).replace(/.+?\/\//,`https://`).replace(/\.git$/,``),/^[a-z]+:[a-z0-9-]\/[a-z0-9-]$/.test(e)?e.replace(/^(.+?):/,(e,t)=>`https://${t}.com/`):/^[a-z0-9-]\/[a-z0-9-]$/.test(e)?`https://github.com/${e}`:e}function Pn(e){return e.startsWith(`https://bitbucket.org`)?`src/HEAD`:`tree/HEAD`}function Fn({repository:e,homepage:t,info:n},r,i){n&&(e=n.project_urls.repository||n.project_urls.Repository||n.project_urls.repo||n.project_urls.Repo||n.project_urls.source||n.project_urls.Source||n.project_urls[`source code`]||n.project_urls[`Source code`]||n.project_urls[`Source Code`]||n.project_urls.homepage||n.project_urls.Homepage||`https://pypi.org/project/${i}/`);let a=``;return r===`https://npm.pkg.github.com`?`https://github.com/${i.replace(/^@/,``)}`:(e&&(a=Nn(typeof e==`string`?e:e.url),a&&typeof e!=`string`&&e.directory&&(a=`${a}/${Pn(a)}/${e.directory}`)),a||t||``)}function In(e){let t=`https://${Un(e)}`,n=new URL(t),r=n.pathname.split(`/`);if(r.length>3){let[e,i,a,...o]=r;return n.pathname=`/${i}/${a}/${Pn(t)}/${o.join(`/`)}`,n.toString()}else return t}async function Ln(e){console.info(z.json?JSON.stringify({message:e}):e),await X()}async function X(e,t){if(e){let t=e.stack??e.message,n=e.cause;z.json?console.info(JSON.stringify({error:t,cause:n})):(console.info(B(t)),n&&console.info(B(`Caused by: ${String(n)}`)))}r===`win32`&&Number(o?.node?.split(`.`)[0])>=23&&await new Promise(e=>setTimeout(e,50)),n(t||e?1:0)}function Rn(e={}){for(let t of Object.keys(e))for(let n of Object.values(e[t]))typeof n.oldPrint==`string`&&(n.old=n.oldPrint),typeof n.newPrint==`string`&&(n.new=n.newPrint),typeof n.oldOrig==`string`&&!J(n.oldOrig)&&(n.old=n.oldOrig),delete n.oldPrint,delete n.newPrint,delete n.oldOrig,delete n.date;let t=0;for(let n of Object.keys(e))t+=Object.keys(e[n]).length;if(z.json){let t={results:{}};for(let n of Object.keys(e))for(let[r,i]of Object.entries(e[n])){let[e,a]=r.split(`\0`);t.results[n]||(t.results[n]={}),t.results[n][e]||(t.results[n][e]={}),t.results[n][e][a]=i}console.info(JSON.stringify(t))}else t&&console.info(Wn(e));return z[`error-on-outdated`]?t?2:0:z[`error-on-unchanged`]?t?0:2:0}function zn(e,t){r===`win32`&&_(e,0),v(e,t,r===`win32`?{flag:`r+`}:void 0)}function Bn(e,t,n){if(e===t)return e;let r=e.split(/\./),i=t.split(/\./),a=/^[0-9a-zA-Z-.]+$/,o=``;for(let e=0;e<r.length;e++)if(r[e]!==i[e]){a.test(r[e])?o+=n(r.slice(e).join(`.`)):o+=r[e].split(``).map(e=>a.test(e)?n(e):e).join(``)+n(`.${r.slice(e+1).join(`.`)}`.replace(/\.$/,``));break}else o+=`${r[e]}.`;return o.replace(/\.$/,``)}const Vn=e=>te(e).length;function Hn(e,t=` `){let n=``,r=Array(e[0].length).fill(0);for(let t of e)for(let[e,n]of t.entries()){let t=Vn(n);t>r[e]&&(r[e]=t)}for(let[i,a]of e.entries()){for(let[e,i]of a.entries()){e>0&&(n+=t);let o=` `.repeat(r[e]-Vn(i));n+=i+(e===a.length-1?``:o)}i<e.length-1&&(n+=`
|
|
28
|
-
`)}return n}function Un(e){return/\/v[0-9]$/.test(e)?c(e):e}function Wn(e){let t=Object.keys(e).filter(t=>Object.keys(e[t]).length>0),n=t.length>1,r=[n?[`NAME`,`MODE`,`OLD`,`NEW`,`AGE`,`INFO`]:[`NAME`,`OLD`,`NEW`,`AGE`,`INFO`]],i=new Set;for(let a of t)for(let[t,o]of Object.entries(e[a])){let[e,s]=t.split(`\0`),c=`${a}|${s}`;if(i.has(c))continue;i.add(c);let l=[];l.push(a===`go`?Un(s):s),n&&l.push(a),l.push(Bn(o.old,o.new,B)),l.push(Bn(o.new,o.old,Kt)),l.push(o.age||``),l.push(o.info||``),r.push(l)}return Hn(r)}function Gn(e,t){let n=e;for(let[e,{old:r,oldOrig:i}]of Object.entries(t)){let[a,o]=e.split(`\0`),s=i||r;if(a===`packageManager`){let r=RegExp(`"${P(a)}": *"${o}@${P(s)}"`,`g`);n=n.replace(r,`"${a}": "${o}@${t[e].new}"`)}else{let r=RegExp(`"${P(o)}": *"${P(s)}"`,`g`);n=n.replace(r,`"${o}": "${t[e].new}"`)}}return n}function Kn(e,t){let n=e;for(let[e,{old:r,oldOrig:i}]of Object.entries(t)){let[a,o]=e.split(`\0`),s=i||r;n=n.replace(RegExp(`${P(o)} *= *"${P(s)}"`,`g`),`${o} = "${t[e].new}"`),n=n.replace(RegExp(`("${P(o)} *[<>=~]+ *)${P(s)}(")`,`g`),(n,r,i)=>`${r}${t[e].new}${i}`)}return n}function qn(e,t){let n=e,r={};for(let[e,{old:i,oldOrig:a}]of Object.entries(t)){let[o,s]=e.split(`\0`),c=a||i,l=t[e].new,u=On(s),d=parseInt(l.split(`.`)[0]);if(u!==d&&d>1){let e=Y(s,d);n=n.replace(RegExp(`${P(s)} +v${P(c)}`,`g`),`${e} v${l}`),r[s]=e}else n=n.replace(RegExp(`(${P(s)}) +v${P(c)}`,`g`),`$1 v${l}`)}return[n,r]}function
|
|
27
|
+
`}var At,jt=C((()=>{At=/^[a-z0-9-_]+$/i})),Mt=re({TomlDate:()=>tt,TomlError:()=>A,default:()=>Nt,parse:()=>bt,stringify:()=>kt}),Nt,Pt=C((()=>{xt(),jt(),nt(),j(),Nt={parse:bt,stringify:kt,TomlDate:tt,TomlError:A}}));const Ft=ee(y),It=/^.*?:\/\/(.*?@)?(github\.com[:/])/i,Lt=/^([^/]+)\/([^/#]+)?.*?\/([0-9a-f]+|v?[0-9]+\.[0-9]+\.[0-9]+)$/i,Rt=/^[0-9a-f]{7,}$/i,zt=/[0-9]+(\.[0-9]+)?(\.[0-9]+)?/g,Bt=/[0-9]+\.[0-9]+\.[0-9]+(-.+)?/g,P=e=>e.replace(/[|\\{}()[\]^$+*?.-]/g,`\\$&`),F=e=>e.endsWith(`/`)?e.substring(0,e.length-1):e,Vt=oe,Ht={"package.json":`npm`,"pyproject.toml":`pypi`,"go.mod":`go`},Ut={"allow-downgrade":{short:`d`,type:`string`,multiple:!0},"error-on-outdated":{short:`E`,type:`boolean`},"error-on-unchanged":{short:`U`,type:`boolean`},exclude:{short:`e`,type:`string`,multiple:!0},file:{short:`f`,type:`string`,multiple:!0},forgeapi:{type:`string`},goproxy:{type:`string`},greatest:{short:`g`,type:`string`,multiple:!0},help:{short:`h`,type:`boolean`},include:{short:`i`,type:`string`,multiple:!0},json:{short:`j`,type:`boolean`},jsrapi:{type:`string`},cooldown:{short:`C`,type:`string`},minor:{short:`m`,type:`string`,multiple:!0},modes:{short:`M`,type:`string`,multiple:!0},color:{short:`c`,type:`boolean`},"no-color":{short:`n`,type:`boolean`},patch:{short:`P`,type:`string`,multiple:!0},pin:{short:`l`,type:`string`,multiple:!0},prerelease:{short:`p`,type:`string`,multiple:!0},pypiapi:{type:`string`},registry:{short:`r`,type:`string`},release:{short:`R`,type:`string`,multiple:!0},sockets:{short:`s`,type:`string`},types:{short:`t`,type:`string`,multiple:!0},update:{short:`u`,type:`boolean`},verbose:{short:`V`,type:`boolean`},version:{short:`v`,type:`boolean`}};function I(e){return Array.isArray(e)&&e.every(e=>e===!0)?!0:Array.isArray(e)?new Set(e.flatMap(e=>typeof e==`string`?dn(e):``).filter(Boolean)):typeof e==`string`?new Set([e]):typeof e==`boolean`?e:!1}function Wt(e){for(let[t,{short:n}]of Object.entries(Ut))if(t===e||n===e)return t;return``}const L=b({strict:!1,allowPositionals:!0,tokens:!0,options:Ut}),R=L.values;for(let[e,t]of L.tokens.entries())if(t.kind===`option`&&t.value?.startsWith(`-`)){let n=Wt(t.value.substring(1)),r=L.tokens[e+1];R[t.name]=[!0],R[n]||(R[n]=[]),r.kind===`positional`&&r.value?R[n].push(r.value):R[n].push(!0)}const z=L.values,[Gt,B,Kt]=[`magenta`,`red`,`green`].map(e=>z[`no-color`]?String:t=>x(e,String(t))),V=Q(I(z.greatest)),qt=Q(I(z.prerelease)),Jt=Q(I(z.release)),Yt=Q(I(z.patch)),Xt=Q(I(z.minor)),Zt=Q(I(z[`allow-downgrade`])),Qt=I(z.modes)||new Set([`npm`,`pypi`,`go`]),$t=typeof z.forgeapi==`string`?F(z.forgeapi):`https://api.github.com`,en=typeof z.pypiapi==`string`?F(z.pypiapi):`https://pypi.org`,tn=typeof z.jsrapi==`string`?F(z.jsrapi):`https://jsr.io`,nn=typeof z.goproxy==`string`?F(z.goproxy):on(),rn=sn(),H=5e3,an=2500;function on(){let e=t.GOPROXY||`https://proxy.golang.org,direct`;for(let t of e.split(/[,|]/)){let e=t.trim();if(e&&e!==`direct`&&e!==`off`)return F(e)}return`https://proxy.golang.org`}function sn(){return(t.GONOPROXY||t.GOPRIVATE||``).split(`,`).map(e=>e.trim()).filter(Boolean)}function cn(e){return rn.some(t=>e===t||e.startsWith(`${t}/`))}const U=e=>e.replace(/^v/,``);function W(e,t){for(let n of t instanceof Set?t:[])if(n.test(e))return!0;return!1}function ln(e,t){let n=t[`${e}:registry`]||t.registry;return n.endsWith(`/`)?n:`${n}/`}function un(e,t){return t.split(`.`).reduce((e,t)=>e?.[t]??null,e)}function dn(e){return e.split(`,`).filter(Boolean)}function fn(e){let t={};if(Array.isArray(e)){for(let n of e)if(typeof n==`string`){let[e,r]=n.split(`=`,2);e&&r&&Oe(r)&&(t[e]=r)}}else if(typeof e==`string`){let[n,r]=e.split(`=`,2);n&&r&&Oe(r)&&(t[n]=r)}return t}function pn(e,t){let n=l(t,e);try{return f(n),n}catch{}let r=c(t);return r===t?null:pn(e,r)}const mn=`https://registry.npmjs.org`;let G=null;const hn=new Map;function gn(){return G||Ge(`npm`,{registry:mn})}function _n(e){return e.replace(/^\$\{?([^}]*)\}?$/,(e,n)=>t[n]||``)}function vn(e,t){let n=t[`${e}:_authToken`]||t[`${e}/:_authToken`];if(n)return{token:_n(n),type:`Bearer`};let r=t[`${e}:username`]||t[`${e}/:username`],i=t[`${e}:_password`]||t[`${e}/:_password`];if(r&&i){let e=Buffer.from(_n(i),`base64`).toString(`utf8`);return{token:Buffer.from(`${r}:${e}`).toString(`base64`),type:`Basic`,username:r,password:e}}let a=t[`${e}:_auth`]||t[`${e}/:_auth`];if(a)return{token:_n(a),type:`Basic`}}function K(e,t){let n=new URL(e.startsWith(`//`)?`http:${e}`:e),r;for(;r!==`/`&&n.pathname!==r;){r=n.pathname||`/`;let e=vn(`//${n.host}${r.replace(/\/$/,``)}`,t);if(e)return e;let i=r.endsWith(`/`)?r:`${r}/`;n.pathname=new URL(`..`,new URL(i,`http://x`)).pathname}let i=t._auth;if(i)return{token:_n(i),type:`Basic`}}function yn(e,t){G||=gn();let n=e.startsWith(`@`)?(/@[a-z0-9][\w-.]+/.exec(e)||[``])[0]:``,r=`${n}:${t}`,i=hn.get(r);if(i)return i;let a;if(!e.startsWith(`@`))a={auth:K(t,G),registry:t};else{let e=F(ln(n,G));if(e!==t)try{let n=K(e,G);a=n?.token?{auth:n,registry:e}:{auth:K(t,G),registry:t}}catch{a={auth:K(t,G),registry:t}}else a={auth:K(t,G),registry:t}}return hn.set(r,a),a}function bn(e,t){return{headers:{"user-agent":`updates/${Vt}`,"accept-encoding":`gzip, deflate, br`,...t&&{Authorization:`${e} ${t}`}}}}function xn(){let e=new Date;return[e.getFullYear(),`-`,String(e.getMonth()+1).padStart(2,`0`),`-`,String(e.getDate()).padStart(2,`0`),` `,String(e.getHours()).padStart(2,`0`),`:`,String(e.getMinutes()).padStart(2,`0`),`:`,String(e.getSeconds()).padStart(2,`0`)].join(``)}function Sn(e){console.error(`${xn()} ${e}`)}async function q(e,t){z.verbose&&Sn(`${Gt(`fetch`)} ${e}`);let n=await fetch(e,t);return z.verbose&&Sn(`${n.ok?Kt(n.status):B(n.status)} ${e}`),n}async function Cn(e,t,n){G||=gn();let{auth:r,registry:i}=yn(e,F((typeof z.registry==`string`?z.registry:!1)||n.registry||G.registry||mn)),a=`${i}/${(t===`resolutions`?s(e):e).replace(/\//g,`%2f`)}`,o=await q(a,{signal:AbortSignal.timeout(H),...bn(r?.type,r?.token)});if(o?.ok)return[await o.json(),t,i,e];throw o?.status&&o?.statusText?Error(`Received ${o.status} ${o.statusText} from ${a}`):Error(`Unable to fetch ${e} from ${i}`)}async function wn(e,t){let n=`${en}/pypi/${e}/json`,r=await q(n,{signal:AbortSignal.timeout(H),headers:{"accept-encoding":`gzip, deflate, br`}});if(r?.ok)return[await r.json(),t,null,e];throw r?.status&&r?.statusText?Error(`Received ${r.status} ${r.statusText} from ${n}`):Error(`Unable to fetch ${e} from ${en}`)}function J(e){return e.startsWith(`npm:@jsr/`)||e.startsWith(`jsr:`)}function Tn(e,t){if(e.startsWith(`npm:@jsr/`)){let t=/^npm:@jsr\/([^_]+)__([^@]+)@(.+)$/.exec(e);if(t)return{scope:t[1],name:t[2],version:t[3]}}else if(e.startsWith(`jsr:@`)){let t=/^jsr:@([^/]+)\/([^@]+)@(.+)$/.exec(e);if(t)return{scope:t[1],name:t[2],version:t[3]}}else if(e.startsWith(`jsr:`)){let n=e.substring(4);if(t?.startsWith(`@`)){let e=/^@([^/]+)\/(.+)$/.exec(t);if(e)return{scope:e[1],name:e[2],version:n}}}return{scope:null,name:null,version:``}}async function En(e,t){let n=/^@([^/]+)\/(.+)$/.exec(e);if(!n)throw Error(`Invalid JSR package name: ${e}`);let[,r,i]=n,a=`${tn}/@${r}/${i}/meta.json`,o=await q(a,{signal:AbortSignal.timeout(H),headers:{"accept-encoding":`gzip, deflate, br`}});if(o?.ok){let n=await o.json(),r={},i={};for(let[e,t]of Object.entries(n.versions))r[e]={version:e,time:t.createdAt},i[e]=t.createdAt;return[{name:e,"dist-tags":{latest:n.latest},versions:r,time:i},t,tn,e]}else if(o?.status&&o?.statusText)throw Error(`Received ${o.status} ${o.statusText} from ${a}`);else throw Error(`Unable to fetch ${e} from JSR`)}function Dn(e){return e.replace(/[A-Z]/g,e=>`!${e.toLowerCase()}`)}function On(e){let t=/\/v(\d+)$/.exec(e);return t?parseInt(t[1]):1}function Y(e,t){return t<=1?e.replace(/\/v\d+$/,``):`${e.replace(/\/v\d+$/,``)}/v${t}`}function kn(e){return/\d{14}-[0-9a-f]{12}$/.test(e)}function An(e){let t={},n=e.split(/\r?\n/),r=!1;for(let e of n){let n=e.trim();if(/^require\s*\(/.test(n)){r=!0;continue}if(n===`)`){r=!1;continue}if(n.includes(`// indirect`))continue;let i=r?/^(\S+)\s+(v\S+)/.exec(n):/^require\s+(\S+)\s+(v\S+)/.exec(n);i&&(t[i[1]]=i[2])}return t}async function jn(e,n,r,i){let a=[{name:e,old:r,new:r},n,null,e],o=On(e),s=async(e,n)=>{try{let{stdout:r}=await Ft(`go`,[`list`,`-m`,`-json`,`${e}@latest`],{timeout:n,cwd:i,env:t}),a=JSON.parse(r);return{Version:a.Version,Time:a.Time||``,path:e}}catch{return null}},[c,l]=await Promise.all([s(e,H),s(Y(e,o+1),an)]);if(!c)return a;let u=c.Version,d=c.Time,f=u,p=d,m=e,h=e=>{f=e.Version,p=e.Time,m=e.path};if(l){h(l);let t=await s(Y(e,o+2),an);if(t){h(t);for(let t=o+3;t<=o+100;t+=20){let n=Math.min(t+20,o+101),r=Array.from({length:n-t},(n,r)=>s(Y(e,t+r),an)),i=await Promise.all(r),a=!1;for(let e of i){if(!e)break;h(e),a=!0}if(!a||i.some(e=>!e))break}}}return[{name:e,old:r,new:U(f),Time:p,...m===e?{}:{newPath:m},sameMajorNew:U(u),sameMajorTime:d},n,null,e]}async function Mn(e,t,n,r){let i=[{name:e,old:n,new:n},t,null,e];if(cn(e))return jn(e,t,n,r);let a=Dn(e),o=On(e),s=async t=>{let n=Y(e,t);return q(`${nn}/${Dn(n)}/@latest`,{signal:AbortSignal.timeout(an)}).then(async e=>e.ok?{...await e.json(),path:n}:null).catch(()=>null)},[c,l]=await Promise.all([q(`${nn}/${a}/@latest`,{signal:AbortSignal.timeout(H)}),s(o+1)]);if(!c.ok)return i;let u,d;try{let e=await c.json();u=e.Version,d=e.Time}catch{return i}let f=u,p=d,m=e,h=e=>{f=e.Version,p=e.Time,m=e.path};if(l){h(l);let e=await s(o+2);if(e){h(e);for(let e=o+3;e<=o+100;e+=20){let t=Math.min(e+20,o+101),n=Array.from({length:t-e},(t,n)=>({result:s(e+n)})),r=await Promise.all(n.map(e=>e.result)),i=!1;for(let e of r){if(!e)break;h(e),i=!0}if(!i||r.some(e=>!e))break}}}return[{name:e,old:n,new:U(f),Time:p,...m===e?{}:{newPath:m},sameMajorNew:U(u),sameMajorTime:d},t,null,e]}function Nn(e){return e=e.replace(`git@`,``).replace(/.+?\/\//,`https://`).replace(/\.git$/,``),/^[a-z]+:[a-z0-9-]\/[a-z0-9-]$/.test(e)?e.replace(/^(.+?):/,(e,t)=>`https://${t}.com/`):/^[a-z0-9-]\/[a-z0-9-]$/.test(e)?`https://github.com/${e}`:e}function Pn(e){return e.startsWith(`https://bitbucket.org`)?`src/HEAD`:`tree/HEAD`}function Fn({repository:e,homepage:t,info:n},r,i){n&&(e=n.project_urls.repository||n.project_urls.Repository||n.project_urls.repo||n.project_urls.Repo||n.project_urls.source||n.project_urls.Source||n.project_urls[`source code`]||n.project_urls[`Source code`]||n.project_urls[`Source Code`]||n.project_urls.homepage||n.project_urls.Homepage||`https://pypi.org/project/${i}/`);let a=``;return r===`https://npm.pkg.github.com`?`https://github.com/${i.replace(/^@/,``)}`:(e&&(a=Nn(typeof e==`string`?e:e.url),a&&typeof e!=`string`&&e.directory&&(a=`${a}/${Pn(a)}/${e.directory}`)),a||t||``)}function In(e){let t=`https://${Un(e)}`,n=new URL(t),r=n.pathname.split(`/`);if(r.length>3){let[e,i,a,...o]=r;return n.pathname=`/${i}/${a}/${Pn(t)}/${o.join(`/`)}`,n.toString()}else return t}async function Ln(e){console.info(z.json?JSON.stringify({message:e}):e),await X()}async function X(e,t){if(e){let t=e.stack??e.message,n=e.cause;z.json?console.info(JSON.stringify({error:t,cause:n})):(console.info(B(t)),n&&console.info(B(`Caused by: ${String(n)}`)))}r===`win32`&&Number(o?.node?.split(`.`)[0])>=23&&await new Promise(e=>setTimeout(e,50)),n(t||e?1:0)}function Rn(e={}){for(let t of Object.keys(e))for(let n of Object.values(e[t]))typeof n.oldPrint==`string`&&(n.old=n.oldPrint),typeof n.newPrint==`string`&&(n.new=n.newPrint),typeof n.oldOrig==`string`&&!J(n.oldOrig)&&(n.old=n.oldOrig),delete n.oldPrint,delete n.newPrint,delete n.oldOrig,delete n.date;let t=0;for(let n of Object.keys(e))t+=Object.keys(e[n]).length;if(z.json){let t={results:{}};for(let n of Object.keys(e))for(let[r,i]of Object.entries(e[n])){let[e,a]=r.split(`\0`);t.results[n]||(t.results[n]={}),t.results[n][e]||(t.results[n][e]={}),t.results[n][e][a]=i}console.info(JSON.stringify(t))}else t&&console.info(Wn(e));return z[`error-on-outdated`]?t?2:0:z[`error-on-unchanged`]?t?0:2:0}function zn(e,t){r===`win32`&&_(e,0),v(e,t,r===`win32`?{flag:`r+`}:void 0)}function Bn(e,t,n){if(e===t)return e;let r=e.split(/\./),i=t.split(/\./),a=/^[0-9a-zA-Z-.]+$/,o=``;for(let e=0;e<r.length;e++)if(r[e]!==i[e]){a.test(r[e])?o+=n(r.slice(e).join(`.`)):o+=r[e].split(``).map(e=>a.test(e)?n(e):e).join(``)+n(`.${r.slice(e+1).join(`.`)}`.replace(/\.$/,``));break}else o+=`${r[e]}.`;return o.replace(/\.$/,``)}const Vn=e=>te(e).length;function Hn(e,t=` `){let n=``,r=Array(e[0].length).fill(0);for(let t of e)for(let[e,n]of t.entries()){let t=Vn(n);t>r[e]&&(r[e]=t)}for(let[i,a]of e.entries()){for(let[e,i]of a.entries()){e>0&&(n+=t);let o=` `.repeat(r[e]-Vn(i));n+=i+(e===a.length-1?``:o)}i<e.length-1&&(n+=`
|
|
28
|
+
`)}return n}function Un(e){return/\/v[0-9]$/.test(e)?c(e):e}function Wn(e){let t=Object.keys(e).filter(t=>Object.keys(e[t]).length>0),n=t.length>1,r=[n?[`NAME`,`MODE`,`OLD`,`NEW`,`AGE`,`INFO`]:[`NAME`,`OLD`,`NEW`,`AGE`,`INFO`]],i=new Set;for(let a of t)for(let[t,o]of Object.entries(e[a])){let[e,s]=t.split(`\0`),c=`${a}|${s}`;if(i.has(c))continue;i.add(c);let l=[];l.push(a===`go`?Un(s):s),n&&l.push(a),l.push(Bn(o.old,o.new,B)),l.push(Bn(o.new,o.old,Kt)),l.push(o.age||``),l.push(o.info||``),r.push(l)}return Hn(r)}function Gn(e,t){let n=e;for(let[e,{old:r,oldOrig:i}]of Object.entries(t)){let[a,o]=e.split(`\0`),s=i||r;if(a===`packageManager`){let r=RegExp(`"${P(a)}": *"${o}@${P(s)}"`,`g`);n=n.replace(r,`"${a}": "${o}@${t[e].new}"`)}else{let r=RegExp(`"${P(o)}": *"${P(s)}"`,`g`);n=n.replace(r,`"${o}": "${t[e].new}"`)}}return n}function Kn(e,t){let n=e;for(let[e,{old:r,oldOrig:i}]of Object.entries(t)){let[a,o]=e.split(`\0`),s=i||r;n=n.replace(RegExp(`${P(o)} *= *"${P(s)}"`,`g`),`${o} = "${t[e].new}"`),n=n.replace(RegExp(`("${P(o)} *[<>=~]+ *)${P(s)}(")`,`g`),(n,r,i)=>`${r}${t[e].new}${i}`)}return n}function qn(e,t){let n=P(t);return e=e.replace(RegExp(`^replace\\s+${n}(\\s+v\\S+)?\\s+=>\\s+\\S+(\\s+v\\S+)?\\s*\\n`,`gm`),``),e=e.replace(RegExp(`^\\s+${n}(\\s+v\\S+)?\\s+=>\\s+\\S+(\\s+v\\S+)?\\s*\\n`,`gm`),``),e=e.replace(/^replace\s*\(\s*\)\s*\n/gm,``),e}function Jn(e,t){let n=e,r={};for(let[e,{old:i,oldOrig:a}]of Object.entries(t)){let[o,s]=e.split(`\0`),c=a||i,l=t[e].new,u=On(s),d=parseInt(l.split(`.`)[0]);if(u!==d&&d>1){let e=Y(s,d);n=n.replace(RegExp(`${P(s)} +v${P(c)}`,`g`),`${e} v${l}`),r[s]=e}else n=n.replace(RegExp(`(${P(s)}) +v${P(c)}`,`g`),`$1 v${l}`);n=qn(n,s)}return[n,r]}function Yn(e,t){if(!Object.keys(t).length)return;let n=p(`**/*.go`,{cwd:e});for(let r of n){let n=l(e,r),i=h(n,`utf8`),a=!1;for(let[e,n]of Object.entries(t)){let t=RegExp(`"${P(e)}(/|")`,`g`),r=i.replace(t,`"${n}$1`);r!==i&&(i=r,a=!0)}a&&zn(n,i)}}function Xn(e,t,n){let r=e.replace(Bt,t);if(n&&n!==e&&/^[\^~]/.test(r)){let e=n.substring(1).split(`.`),t=r.substring(1).split(`.`);e.length!==t.length&&(r=`${r[0]}${t.slice(0,e.length).join(`.`)}`)}if(n&&n!==e&&r.startsWith(`>=`)){let e=/^>=\s/.test(n)?`>= `:`>=`,t=n.replace(/^>=\s*/,``),i=r.replace(/^>=\s*/,``),a=t.split(`.`),o=i.split(`.`);a.length!==o.length&&(r=`${e}${o.slice(0,a.length).join(`.`)}`)}return r}function Zn(e){let t=de(e);return t?!!t.prerelease.length:!1}function Qn(e){return/[0-9]+\.[0-9]+\.[0-9]+-.+/.test(e)}function Z(e){try{return me(e)?.version??``}catch{return``}}function $n(e,t,{range:n,semvers:r,usePre:i,useRel:a,useGreatest:o,pinnedRange:s}){let c=Z(n);if(!c)return c;i=Qn(n)||i,i&&(r.add(`prerelease`),r.has(`patch`)&&r.add(`prepatch`),r.has(`minor`)&&r.add(`preminor`),r.has(`major`)&&r.add(`premajor`));let l=0,u=c;for(let n of t){let t=de(n);if(!t?.version||t.prerelease.length&&(!i||a))continue;let c=t.version;if(s&&!De(c,s))continue;let d=D(u,c);if(!(!d||!r.has(d)))if(o||!(`time`in e))ge(Z(c),u)&&(u=c);else{let t=Date.parse(e.time[n]);t>=0&&t>l&&(u=c,l=t)}}return u||null}function er(e,{mode:t,range:n,useGreatest:r,useRel:i,usePre:a,semvers:o,pinnedRange:s}){if(n===`*`||n.includes(`||`))return null;let c=[];if(t===`pypi`)c=Object.keys(e.releases).filter(e=>E(e));else if(t===`npm`)c=Object.keys(e.versions).filter(e=>E(e));else if(t===`go`){let t=Z(n);if(!t)return null;let r=a||Qn(n),s=e=>Zn(e)&&(!r||i),c=Z(e.new);if(c&&!kn(e.new)&&!s(e.new)){let n=D(t,c);if(n&&o.has(n))return e.new}let l=Z(e.sameMajorNew);if(l&&!kn(e.sameMajorNew)&&!s(e.sameMajorNew)){let n=D(t,l);if(n&&o.has(n))return e.Time=e.sameMajorTime,delete e.newPath,e.sameMajorNew}return null}let l=$n(e,c,{range:n,semvers:o,usePre:a,useRel:i,useGreatest:r,pinnedRange:s});if(!l)return null;if(r)return l;{let r=``,c=``;t===`pypi`?(c=e.info.version,r=Z(e.info.version)):r=e[`dist-tags`].latest;let u=Z(n),d=Qn(n),f=Zn(l),p=Zn(r),m=he(l,u);if(!i&&a||d&&f||i&&!m&&d&&!f||d&&!f&&m)return l;if(d&&!f&&!m)return null;let h=D(u,r);return h&&h!==`prerelease`&&!o.has(h.replace(/^pre/,``))||i&&Zn(r)?l:_e(r,u)&&!p?Zt===!0||W(e.name,Zt)?r:null:!d&&p&&!a||s&&!De(r,s)?l:c||r}}function tr(e){let n={signal:AbortSignal.timeout(H),headers:{"accept-encoding":`gzip, deflate, br`}},r=t.UPDATES_GITHUB_API_TOKEN||t.GITHUB_API_TOKEN||t.GH_TOKEN||t.GITHUB_TOKEN||t.HOMEBREW_GITHUB_API_TOKEN;return r&&(n.headers={...n.headers,Authorization:`Bearer ${r}`}),q(e,n)}async function nr(e,t){let n=await tr(`${$t}/repos/${e}/${t}/commits`);if(!n?.ok)return{hash:``,commit:{}};let{sha:r,commit:i}=(await n.json())[0];return{hash:r,commit:i}}async function rr(e,t){let n=await tr(`${$t}/repos/${e}/${t}/git/refs/tags`);return n?.ok?(await n.json()).map(e=>e.ref.replace(/^refs\/tags\//,``)):[]}function ir(e,t,n){let r=U(t);if(!E(r))return null;if(n){let n=t,i=U(t);for(let t of e){let e=U(t);E(e)&&(!n||he(e,i))&&(n=t,i=e)}if(ve(r,i))return n}else{let t=e.at(-1);if(!t)return null;let n=U(t);if(!E(n))return null;if(ve(r,n))return t}return null}async function ar(e,t,n){let r=t.old.replace(It,``),[i,a,o,s]=Lt.exec(r)||[];if(!a||!o||!s)return null;if(Rt.test(s)){let{hash:n,commit:r}=await nr(a,o);if(!n)return null;let i=r?.committer?.date??r?.author?.date,c=n.substring(0,s.length);if(s!==c)return{key:e,newRange:t.old.replace(s,c),user:a,repo:o,oldRef:s,newRef:c,newDate:i}}else{let t=ir(await rr(a,o),s,n);if(t)return{key:e,newRange:t,user:a,repo:o,oldRef:s,newRef:t}}return null}function or(e){return e.replace(/-.*/,``)}function sr(e){let t=e.match(zt);return t?.length===1?e.replace(zt,Z(t[0])):e}function cr(e,t){return RegExp(`^${P(e).replaceAll(`\\*`,`.*`)}$`,t?`i`:``)}function lr(e,t,n){return t&&typeof e==`string`?/^\/.+\/$/.test(e)?new RegExp(e.slice(1,-1)):cr(e,n):e instanceof RegExp?e:cr(e,n)}function Q(e){if(e instanceof Set){let t=new Set;for(let n of e)t.add(lr(n,!0,!1));return t}return e}function ur(e,t){let n=new Set;for(let t of e||[])n.add(lr(t,!0,!0));for(let e of t||[])n.add(lr(e,!1,!0));return n}function $(e,t,n,r,i){if(i===`engines`&&Ie.includes(e)||t===`pypi`&&e===`python`)return!1;if(!n.size&&!r.size)return!0;let a=t===`go`?e.replace(/\/v\d+$/,``):e;for(let t of r)if(t.test(e)||t.test(a))return!1;for(let t of n)if(t.test(e)||t.test(a))return!0;return!n.size}function dr(e,t,n){return!e||!t?!0:(n-Date.parse(e))/(24*3600*1e3)>=t}function fr(t){let n=new Set,r=new Set;if(t)for(let e of t){let t;try{t=m(e)}catch(t){throw Error(`Unable to open ${e}: ${t.message}`)}if(t?.isFile()){let t=u(e);n.add(t),r.add(t)}else if(t?.isDirectory())for(let t of Object.keys(Ht)){let r=l(e,t),i=null;try{i=m(r)}catch{}i?.isFile()&&n.add(u(r))}else throw Error(`${e} is neither a file nor directory`)}else for(let t of Object.keys(Ht)){let r=pn(t,e());r&&n.add(u(r))}return[n,r]}async function pr(e){let t=[];for(let e of[`js`,`ts`,`mjs`,`mts`])t.push(`updates.config.${e}`);let n={};try{({default:n}=await Promise.any(t.map(async t=>{let n=l(e,...t.split(`/`)),r=d(n);try{f(n)}catch{throw Error(`File not found: ${t}`)}try{return await import(r.href)}catch(e){throw Error(`Unable to parse config file ${t}: ${e.message}`)}})))}catch(e){if(e instanceof AggregateError){let t=e.errors.filter(e=>e.message.startsWith(`Unable to parse`));if(t.length>0)throw t[0]}}return n}async function mr(){for(let e of[a,i])e?._handle?.setBlocking?.(!0);Be();let e=typeof z.sockets==`number`?z.sockets:96,{help:t,version:n,file:r,types:o,update:l}=z;t&&(a.write(`usage: updates [options]
|
|
29
29
|
|
|
30
30
|
Options:
|
|
31
31
|
-u, --update Update versions and write package file
|
|
@@ -62,4 +62,4 @@ import{cwd as e,env as t,exit as n,platform as r,stderr as i,stdout as a,version
|
|
|
62
62
|
$ updates -f pyproject.toml
|
|
63
63
|
$ updates -f go.mod
|
|
64
64
|
$ updates -l typescript=^5.0.0
|
|
65
|
-
`),await X()),n&&(console.info(Vt),await X());let d={},f={},p={},m={},g=Date.now(),_=0,[v,y]=
|
|
65
|
+
`),await X()),n&&(console.info(Vt),await X());let d={},f={},p={},m={},g=Date.now(),_=0,[v,y]=fr(I(r));for(let t of v){let n=Ht[s(t)];if(!Qt.has(n)&&!y.has(t))continue;m[n]=t,d[n]||(d[n]={});let r=c(u(t)),i=await pr(r),a=[],l=[];Array.isArray(z.include)&&(a=z.include.filter(e=>typeof e==`string`).flatMap(e=>dn(e))),Array.isArray(z.exclude)&&(l=z.exclude.filter(e=>typeof e==`string`).flatMap(e=>dn(e)));let v=ur(a,i?.include??[]),b=ur(l,i?.exclude??[]),ee=fn(z.pin),te={...i?.pin,...ee},x=[];Array.isArray(o)?x=o.filter(e=>typeof e==`string`):`types`in i&&Array.isArray(i.types)?x=i.types:n===`npm`?x=Fe:n===`pypi`?x=[...Re,...Le]:n===`go`&&(x=Array.from(ze));let S={};try{p[n]=h(t,`utf8`)}catch(e){throw Error(`Unable to open ${t}: ${e.message}`)}try{if(n===`npm`)S=JSON.parse(p[n]);else if(n===`pypi`){let{parse:e}=await Promise.resolve().then(()=>(Pt(),Mt));S=e(p[n])}else S.deps=An(p[n])}catch(e){throw Error(`Error parsing ${t}: ${e.message}`)}for(let e of x){let t;if(t=n===`npm`||n===`go`?S[e]||{}:un(S,e)||{},Array.isArray(t)&&n===`pypi`)for(let{name:r,version:i}of Pe(t))$(r,n,v,b,e)&&(d[n][`${e}${r}`]={old:sr(i),oldOrig:i});else if(typeof t==`string`){let[r,i]=t.split(`@`);$(r,n,v,b,e)&&(d[n][`${e}${r}`]={old:sr(i),oldOrig:i})}else for(let[r,i]of Object.entries(t))if(n===`npm`&&J(i)&&$(r,n,v,b,e)){let t=Tn(i,r);d[n][`${e}${r}`]={old:t.version,oldOrig:i}}else n!==`go`&&Oe(i)&&$(r,n,v,b,e)?d[n][`${e}${r}`]={old:sr(i),oldOrig:i}:n===`npm`&&!J(i)&&$(r,n,v,b,e)?f[`${e}${r}`]={old:i}:n===`go`&&$(r,n,v,b,e)&&(d[n][`${e}${r}`]={old:or(i),oldOrig:U(i)})}if(_+=Object.keys(d[n]).length+Object.keys(f).length,!_)continue;let ne=[];ne=await ie(Object.keys(d[n]),async e=>{let[t,a]=e.split(`\0`);if(n===`npm`){let{oldOrig:r}=d[n][e];return r&&J(r)?En(a,t):Cn(a,t,i)}else if(n===`go`)return Mn(a,t,d[n][e].oldOrig||d[n][e].old,r);else return wn(a,t)},{concurrency:e});for(let[e,t,r,i]of ne){if(e?.error)throw Error(e.error);let a=typeof V==`boolean`?V:W(e.name,V),o=typeof qt==`boolean`?qt:W(e.name,qt),s=typeof Jt==`boolean`?Jt:W(e.name,Jt),c;c=Yt===!0||W(e.name,Yt)?new Set([`patch`]):Xt===!0||W(e.name,Xt)?new Set([`patch`,`minor`]):new Set([`patch`,`minor`,`major`]);let l=`${t}${i}`,u=d[n][l].old,f=d[n][l].oldOrig,p=te[i],m=er(e,{usePre:o,useRel:s,useGreatest:a,semvers:c,range:u,mode:n,pinnedRange:p}),h=``;if([`go`,`pypi`].includes(n)&&m)h=m;else if(m)if(f&&J(f))if(f.startsWith(`npm:@jsr/`)){let e=/^(npm:@jsr\/[^@]+@)(.+)$/.exec(f);e&&(h=`${e[1]}${m}`)}else if(f.startsWith(`jsr:@`)){let e=/^(jsr:@[^@]+@)(.+)$/.exec(f);e&&(h=`${e[1]}${m}`)}else f.startsWith(`jsr:`)&&(h=`jsr:${m}`);else h=Xn(u,m,f);if(!m||f&&f===h){delete d[n][l];continue}let g=``;if(n===`npm`&&e.time?.[m]?g=e.time[m]:n===`pypi`&&e.releases?.[m]?.[0]?.upload_time_iso_8601?g=e.releases[m][0].upload_time_iso_8601:n===`go`&&e.Time&&(g=e.Time),d[n][l].new=h,f&&J(f)&&(d[n][l].newPrint=m),n===`npm`)d[n][l].info=Fn(e?.versions?.[m],r,e.name);else if(n===`pypi`)d[n][l].info=Fn(e,r,e.info.name);else if(n===`go`){let t=e.newPath||i;d[n][l].info=In(t)}g&&(d[n][l].date=g,d[n][l].age=Ne(g,{noAffix:!0}))}if(Object.keys(f).length){let t=(await ie(Object.entries(f),([e,t])=>{let n=e.split(`\0`)[1];return ar(e,t,typeof V==`boolean`?V:W(n,V))},{concurrency:e})).filter(e=>e!==null);for(let e of t){let{key:t,newRange:r,user:i,repo:a,oldRef:o,newRef:s,newDate:c}=e;d[n][t]={old:f[t].old,new:r,oldPrint:Rt.test(o)?o.substring(0,7):o,newPrint:Rt.test(s)?s.substring(0,7):s,info:`https://github.com/${i}/${a}`,...c?{age:Ne(c,{noAffix:!0})}:{}}}}let C=z.cooldown??i.cooldown;if(C){for(let e of Object.keys(d))for(let[t,{date:n}]of Object.entries(d[e]))if(!dr(n,Number(C),g)){delete d[e][t];continue}}}if(_===0)return Ln(`No dependencies found, nothing to do.`);let b=0;for(let e of Object.keys(d))b+=Object.keys(d[e]).length;if(!b)return Ln(`All dependencies are up to date.`);let ee=Rn(d);if(l){for(let e of Object.keys(d))if(Object.keys(d[e]).length){try{let t=p[e];if(e===`go`){let[n,r]=Jn(t,d[e]);zn(m[e],n),Yn(c(u(m[e])),r)}else{let n=e===`npm`?Gn:Kn;zn(m[e],n(t,d[e]))}}catch(t){throw Error(`Error writing ${s(m[e])}: ${t.message}`)}console.info(Kt(`✨ ${s(m[e])} updated`))}}await X(void 0,ee)}try{await mr()}catch(e){await X(e)}export{};
|