@turbo/workspaces 1.8.7 → 1.8.8
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/cli.js +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -45,7 +45,7 @@ GFS4: `),console.error(h)}),r[o]||(f=global[o]||[],p(r,f),r.close=function(h){fu
|
|
|
45
45
|
`:`
|
|
46
46
|
`.charCodeAt(),i=typeof r=="string"?"\r":"\r".charCodeAt();return r[r.length-1]===n&&(r=r.slice(0,r.length-1)),r[r.length-1]===i&&(r=r.slice(0,r.length-1)),r}}),Hs=R((t,e)=>{"use strict";B();var r=W("path"),n=Sn(),i=s=>{s={cwd:process.cwd(),path:process.env[n()],execPath:process.execPath,...s};let u,o=r.resolve(s.cwd),a=[];for(;u!==o;)a.push(r.join(o,"node_modules/.bin")),u=o,o=r.resolve(o,"..");let c=r.resolve(s.cwd,s.execPath,"..");return a.push(c),a.concat(s.path).join(r.delimiter)};e.exports=i,e.exports.default=i,e.exports.env=s=>{s={env:process.env,...s};let u={...s.env},o=n({env:u});return s.path=u[o],u[o]=e.exports(s),u}}),Gs=R((t,e)=>{"use strict";B();var r=(n,i)=>{for(let s of Reflect.ownKeys(i))Object.defineProperty(n,s,Object.getOwnPropertyDescriptor(i,s));return n};e.exports=r,e.exports.default=r}),Ws=R((t,e)=>{"use strict";B();var r=Gs(),n=new WeakMap,i=(s,u={})=>{if(typeof s!="function")throw new TypeError("Expected a function");let o,a=0,c=s.displayName||s.name||"<anonymous>",p=function(...l){if(n.set(p,++a),a===1)o=s.apply(this,l),s=null;else if(u.throw===!0)throw new Error(`Function \`${c}\` can only be called once`);return o};return r(p,s),n.set(p,a),p};e.exports=i,e.exports.default=i,e.exports.callCount=s=>{if(!n.has(s))throw new Error(`The given function \`${s.name}\` is not wrapped by the \`onetime\` package`);return n.get(s)}}),Us=R(t=>{"use strict";B(),Object.defineProperty(t,"__esModule",{value:!0}),t.SIGNALS=void 0;var e=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];t.SIGNALS=e}),bn=R(t=>{"use strict";B(),Object.defineProperty(t,"__esModule",{value:!0}),t.SIGRTMAX=t.getRealtimeSignals=void 0;var e=function(){let s=i-n+1;return Array.from({length:s},r)};t.getRealtimeSignals=e;var r=function(s,u){return{name:`SIGRT${u+1}`,number:n+u,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}},n=34,i=64;t.SIGRTMAX=i}),qs=R(t=>{"use strict";B(),Object.defineProperty(t,"__esModule",{value:!0}),t.getSignals=void 0;var e=W("os"),r=Us(),n=bn(),i=function(){let u=(0,n.getRealtimeSignals)();return[...r.SIGNALS,...u].map(s)};t.getSignals=i;var s=function({name:u,number:o,description:a,action:c,forced:p=!1,standard:l}){let{signals:{[u]:f}}=e.constants,d=f!==void 0;return{name:u,number:d?f:o,description:a,supported:d,action:c,forced:p,standard:l}}}),Ks=R(t=>{"use strict";B(),Object.defineProperty(t,"__esModule",{value:!0}),t.signalsByNumber=t.signalsByName=void 0;var e=W("os"),r=qs(),n=bn(),i=function(){return(0,r.getSignals)().reduce(s,{})},s=function(l,{name:f,number:d,description:m,supported:D,action:v,forced:E,standard:h}){return{...l,[f]:{name:f,number:d,description:m,supported:D,action:v,forced:E,standard:h}}},u=i();t.signalsByName=u;var o=function(){let l=(0,r.getSignals)(),f=n.SIGRTMAX+1,d=Array.from({length:f},(m,D)=>a(D,l));return Object.assign({},...d)},a=function(l,f){let d=c(l,f);if(d===void 0)return{};let{name:m,description:D,supported:v,action:E,forced:h,standard:y}=d;return{[l]:{name:m,number:l,description:D,supported:v,action:E,forced:h,standard:y}}},c=function(l,f){let d=f.find(({name:m})=>e.constants.signals[m]===l);return d!==void 0?d:f.find(m=>m.number===l)},p=o();t.signalsByNumber=p}),Js=R((t,e)=>{"use strict";B();var{signalsByName:r}=Ks(),n=({timedOut:s,timeout:u,errorCode:o,signal:a,signalDescription:c,exitCode:p,isCanceled:l})=>s?`timed out after ${u} milliseconds`:l?"was canceled":o!==void 0?`failed with ${o}`:a!==void 0?`was killed with ${a} (${c})`:p!==void 0?`failed with exit code ${p}`:"failed",i=({stdout:s,stderr:u,all:o,error:a,signal:c,exitCode:p,command:l,escapedCommand:f,timedOut:d,isCanceled:m,killed:D,parsed:{options:{timeout:v}}})=>{p=p===null?void 0:p,c=c===null?void 0:c;let E=c===void 0?void 0:r[c].description,h=a&&a.code,y=`Command ${n({timedOut:d,timeout:v,errorCode:h,signal:c,signalDescription:E,exitCode:p,isCanceled:m})}: ${l}`,S=Object.prototype.toString.call(a)==="[object Error]",g=S?`${y}
|
|
47
47
|
${a.message}`:y,A=[g,u,s].filter(Boolean).join(`
|
|
48
|
-
`);return S?(a.originalMessage=a.message,a.message=A):a=new Error(A),a.shortMessage=g,a.command=l,a.escapedCommand=f,a.exitCode=p,a.signal=c,a.signalDescription=E,a.stdout=s,a.stderr=u,o!==void 0&&(a.all=o),"bufferedData"in a&&delete a.bufferedData,a.failed=!0,a.timedOut=Boolean(d),a.isCanceled=m,a.killed=D&&!d,a};e.exports=i}),Vs=R((t,e)=>{"use strict";B();var r=["stdin","stdout","stderr"],n=s=>r.some(u=>s[u]!==void 0),i=s=>{if(!s)return;let{stdio:u}=s;if(u===void 0)return r.map(a=>s[a]);if(n(s))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${r.map(a=>`\`${a}\``).join(", ")}`);if(typeof u=="string")return u;if(!Array.isArray(u))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof u}\``);let o=Math.max(u.length,r.length);return Array.from({length:o},(a,c)=>u[c])};e.exports=i,e.exports.node=s=>{let u=i(s);return u==="ipc"?"ipc":u===void 0||typeof u=="string"?[u,u,u,"ipc"]:u.includes("ipc")?u:[...u,"ipc"]}}),Ys=R((t,e)=>{B(),e.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],process.platform!=="win32"&&e.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),process.platform==="linux"&&e.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")}),Qs=R((t,e)=>{B();var r=global.process,n=function(h){return h&&typeof h=="object"&&typeof h.removeListener=="function"&&typeof h.emit=="function"&&typeof h.reallyExit=="function"&&typeof h.listeners=="function"&&typeof h.kill=="function"&&typeof h.pid=="number"&&typeof h.on=="function"};n(r)?(i=W("assert"),s=Ys(),u=/^win/i.test(r.platform),o=W("events"),typeof o!="function"&&(o=o.EventEmitter),r.__signal_exit_emitter__?a=r.__signal_exit_emitter__:(a=r.__signal_exit_emitter__=new o,a.count=0,a.emitted={}),a.infinite||(a.setMaxListeners(1/0),a.infinite=!0),e.exports=function(h,y){if(!n(global.process))return function(){};i.equal(typeof h,"function","a callback must be provided for exit handler"),f===!1&&d();var S="exit";y&&y.alwaysLast&&(S="afterexit");var g=function(){a.removeListener(S,h),a.listeners("exit").length===0&&a.listeners("afterexit").length===0&&c()};return a.on(S,h),g},c=function(){!f||!n(global.process)||(f=!1,s.forEach(function(h){try{r.removeListener(h,l[h])}catch{}}),r.emit=v,r.reallyExit=m,a.count-=1)},e.exports.unload=c,p=function(h,y,S){a.emitted[h]||(a.emitted[h]=!0,a.emit(h,y,S))},l={},s.forEach(function(h){l[h]=function(){if(n(global.process)){var y=r.listeners(h);y.length===a.count&&(c(),p("exit",null,h),p("afterexit",null,h),u&&h==="SIGHUP"&&(h="SIGINT"),r.kill(r.pid,h))}}}),e.exports.signals=function(){return s},f=!1,d=function(){f||!n(global.process)||(f=!0,a.count+=1,s=s.filter(function(h){try{return r.on(h,l[h]),!0}catch{return!1}}),r.emit=E,r.reallyExit=D)},e.exports.load=d,m=r.reallyExit,D=function(h){!n(global.process)||(r.exitCode=h||0,p("exit",r.exitCode,null),p("afterexit",r.exitCode,null),m.call(r,r.exitCode))},v=r.emit,E=function(h,y){if(h==="exit"&&n(global.process)){y!==void 0&&(r.exitCode=y);var S=v.apply(this,arguments);return p("exit",r.exitCode,null),p("afterexit",r.exitCode,null),S}else return v.apply(this,arguments)}):e.exports=function(){return function(){}};var i,s,u,o,a,c,p,l,f,d,m,D,v,E}),Xs=R((t,e)=>{"use strict";B();var r=W("os"),n=Qs(),i=1e3*5,s=(D,v="SIGTERM",E={})=>{let h=D(v);return u(D,v,E,h),h},u=(D,v,E,h)=>{if(!o(v,E,h))return;let y=c(E),S=setTimeout(()=>{D("SIGKILL")},y);S.unref&&S.unref()},o=(D,{forceKillAfterTimeout:v},E)=>a(D)&&v!==!1&&E,a=D=>D===r.constants.signals.SIGTERM||typeof D=="string"&&D.toUpperCase()==="SIGTERM",c=({forceKillAfterTimeout:D=!0})=>{if(D===!0)return i;if(!Number.isFinite(D)||D<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${D}\` (${typeof D})`);return D},p=(D,v)=>{D.kill()&&(v.isCanceled=!0)},l=(D,v,E)=>{D.kill(v),E(Object.assign(new Error("Timed out"),{timedOut:!0,signal:v}))},f=(D,{timeout:v,killSignal:E="SIGTERM"},h)=>{if(v===0||v===void 0)return h;let y,S=new Promise((A,C)=>{y=setTimeout(()=>{l(D,E,C)},v)}),g=h.finally(()=>{clearTimeout(y)});return Promise.race([S,g])},d=({timeout:D})=>{if(D!==void 0&&(!Number.isFinite(D)||D<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${D}\` (${typeof D})`)},m=async(D,{cleanup:v,detached:E},h)=>{if(!v||E)return h;let y=n(()=>{D.kill()});return h.finally(()=>{y()})};e.exports={spawnedKill:s,spawnedCancel:p,setupTimeout:f,validateTimeout:d,setExitHandler:m}}),Zs=R((t,e)=>{"use strict";B();var r=n=>n!==null&&typeof n=="object"&&typeof n.pipe=="function";r.writable=n=>r(n)&&n.writable!==!1&&typeof n._write=="function"&&typeof n._writableState=="object",r.readable=n=>r(n)&&n.readable!==!1&&typeof n._read=="function"&&typeof n._readableState=="object",r.duplex=n=>r.writable(n)&&r.readable(n),r.transform=n=>r.duplex(n)&&typeof n._transform=="function",e.exports=r}),zs=R((t,e)=>{"use strict";B();var{PassThrough:r}=W("stream");e.exports=n=>{n={...n};let{array:i}=n,{encoding:s}=n,u=s==="buffer",o=!1;i?o=!(s||u):s=s||"utf8",u&&(s=null);let a=new r({objectMode:o});s&&a.setEncoding(s);let c=0,p=[];return a.on("data",l=>{p.push(l),o?c=p.length:c+=l.length}),a.getBufferedValue=()=>i?p:u?Buffer.concat(p,c):p.join(""),a.getBufferedLength=()=>c,a}}),tc=R((t,e)=>{"use strict";B();var{constants:r}=W("buffer"),n=W("stream"),{promisify:i}=W("util"),s=zs(),u=i(n.pipeline),o=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function a(c,p){if(!c)throw new Error("Expected a stream");p={maxBuffer:1/0,...p};let{maxBuffer:l}=p,f=s(p);return await new Promise((d,m)=>{let D=v=>{v&&f.getBufferedLength()<=r.MAX_LENGTH&&(v.bufferedData=f.getBufferedValue()),m(v)};(async()=>{try{await u(c,f),d()}catch(v){D(v)}})(),f.on("data",()=>{f.getBufferedLength()>l&&D(new o)})}),f.getBufferedValue()}e.exports=a,e.exports.buffer=(c,p)=>a(c,{...p,encoding:"buffer"}),e.exports.array=(c,p)=>a(c,{...p,array:!0}),e.exports.MaxBufferError=o}),ec=R((t,e)=>{"use strict";B();var{PassThrough:r}=W("stream");e.exports=function(){var n=[],i=new r({objectMode:!0});return i.setMaxListeners(0),i.add=s,i.isEmpty=u,i.on("unpipe",o),Array.prototype.slice.call(arguments).forEach(s),i;function s(a){return Array.isArray(a)?(a.forEach(s),this):(n.push(a),a.once("end",o.bind(null,a)),a.once("error",i.emit.bind(i,"error")),a.pipe(i,{end:!1}),this)}function u(){return n.length==0}function o(a){n=n.filter(function(c){return c!==a}),!n.length&&i.readable&&i.end()}}}),rc=R((t,e)=>{"use strict";B();var r=Zs(),n=tc(),i=ec(),s=(l,f)=>{f===void 0||l.stdin===void 0||(r(f)?f.pipe(l.stdin):l.stdin.end(f))},u=(l,{all:f})=>{if(!f||!l.stdout&&!l.stderr)return;let d=i();return l.stdout&&d.add(l.stdout),l.stderr&&d.add(l.stderr),d},o=async(l,f)=>{if(l){l.destroy();try{return await f}catch(d){return d.bufferedData}}},a=(l,{encoding:f,buffer:d,maxBuffer:m})=>{if(!(!l||!d))return f?n(l,{encoding:f,maxBuffer:m}):n.buffer(l,{maxBuffer:m})},c=async({stdout:l,stderr:f,all:d},{encoding:m,buffer:D,maxBuffer:v},E)=>{let h=a(l,{encoding:m,buffer:D,maxBuffer:v}),y=a(f,{encoding:m,buffer:D,maxBuffer:v}),S=a(d,{encoding:m,buffer:D,maxBuffer:v*2});try{return await Promise.all([E,h,y,S])}catch(g){return Promise.all([{error:g,signal:g.signal,timedOut:g.timedOut},o(l,h),o(f,y),o(d,S)])}},p=({input:l})=>{if(r(l))throw new TypeError("The `input` option cannot be a stream in sync mode")};e.exports={handleInput:s,makeAllStream:u,getSpawnedResult:c,validateInputSync:p}}),nc=R((t,e)=>{"use strict";B();var r=(async()=>{})().constructor.prototype,n=["then","catch","finally"].map(u=>[u,Reflect.getOwnPropertyDescriptor(r,u)]),i=(u,o)=>{for(let[a,c]of n){let p=typeof o=="function"?(...l)=>Reflect.apply(c.value,o(),l):c.value.bind(o);Reflect.defineProperty(u,a,{...c,value:p})}return u},s=u=>new Promise((o,a)=>{u.on("exit",(c,p)=>{o({exitCode:c,signal:p})}),u.on("error",c=>{a(c)}),u.stdin&&u.stdin.on("error",c=>{a(c)})});e.exports={mergePromise:i,getSpawnedPromise:s}}),ic=R((t,e)=>{"use strict";B();var r=(p,l=[])=>Array.isArray(l)?[p,...l]:[p],n=/^[\w.-]+$/,i=/"/g,s=p=>typeof p!="string"||n.test(p)?p:`"${p.replace(i,'\\"')}"`,u=(p,l)=>r(p,l).join(" "),o=(p,l)=>r(p,l).map(f=>s(f)).join(" "),a=/ +/g,c=p=>{let l=[];for(let f of p.trim().split(a)){let d=l[l.length-1];d&&d.endsWith("\\")?l[l.length-1]=`${d.slice(0,-1)} ${f}`:l.push(f)}return l};e.exports={joinCommand:u,getEscapedCommand:o,parseCommand:c}}),oc=R((t,e)=>{"use strict";B();var r=W("path"),n=W("child_process"),i=Ns(),s=$s(),u=Hs(),o=Ws(),a=Js(),c=Vs(),{spawnedKill:p,spawnedCancel:l,setupTimeout:f,validateTimeout:d,setExitHandler:m}=Xs(),{handleInput:D,getSpawnedResult:v,makeAllStream:E,validateInputSync:h}=rc(),{mergePromise:y,getSpawnedPromise:S}=nc(),{joinCommand:g,parseCommand:A,getEscapedCommand:C}=ic(),_=1e3*1e3*100,w=({env:I,extendEnv:F,preferLocal:b,localDir:N,execPath:T})=>{let $=F?{...process.env,...I}:I;return b?u.env({env:$,cwd:N,execPath:T}):$},x=(I,F,b={})=>{let N=i._parse(I,F,b);return I=N.command,F=N.args,b=N.options,b={maxBuffer:_,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:b.cwd||process.cwd(),execPath:process.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,...b},b.env=w(b),b.stdio=c(b),process.platform==="win32"&&r.basename(I,".exe")==="cmd"&&F.unshift("/q"),{file:I,args:F,options:b,parsed:N}},k=(I,F,b)=>typeof F!="string"&&!Buffer.isBuffer(F)?b===void 0?void 0:"":I.stripFinalNewline?s(F):F,P=(I,F,b)=>{let N=x(I,F,b),T=g(I,F),$=C(I,F);d(N.options);let j;try{j=n.spawn(N.file,N.args,N.options)}catch(ot){let ut=new n.ChildProcess,O=Promise.reject(a({error:ot,stdout:"",stderr:"",all:"",command:T,escapedCommand:$,parsed:N,timedOut:!1,isCanceled:!1,killed:!1}));return y(ut,O)}let q=S(j),V=f(j,N.options,q),Z=m(j,N.options,V),M={isCanceled:!1};j.kill=p.bind(null,j.kill.bind(j)),j.cancel=l.bind(null,j,M);let nt=o(async()=>{let[{error:ot,exitCode:ut,signal:O,timedOut:L},G,K,it]=await v(j,N.options,Z),et=k(N.options,G),Q=k(N.options,K),X=k(N.options,it);if(ot||ut!==0||O!==null){let rt=a({error:ot,exitCode:ut,signal:O,stdout:et,stderr:Q,all:X,command:T,escapedCommand:$,parsed:N,timedOut:L,isCanceled:M.isCanceled,killed:j.killed});if(!N.options.reject)return rt;throw rt}return{command:T,escapedCommand:$,exitCode:0,stdout:et,stderr:Q,all:X,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return D(j,N.options.input),j.all=E(j,N.options),y(j,nt)};e.exports=P,e.exports.sync=(I,F,b)=>{let N=x(I,F,b),T=g(I,F),$=C(I,F);h(N.options);let j;try{j=n.spawnSync(N.file,N.args,N.options)}catch(Z){throw a({error:Z,stdout:"",stderr:"",all:"",command:T,escapedCommand:$,parsed:N,timedOut:!1,isCanceled:!1,killed:!1})}let q=k(N.options,j.stdout,j.error),V=k(N.options,j.stderr,j.error);if(j.error||j.status!==0||j.signal!==null){let Z=a({stdout:q,stderr:V,error:j.error,signal:j.signal,exitCode:j.status,command:T,escapedCommand:$,parsed:N,timedOut:j.error&&j.error.code==="ETIMEDOUT",isCanceled:!1,killed:j.signal!==null});if(!N.options.reject)return Z;throw Z}return{command:T,escapedCommand:$,exitCode:0,stdout:q,stderr:V,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}},e.exports.command=(I,F)=>{let[b,...N]=A(I);return P(b,N,F)},e.exports.commandSync=(I,F)=>{let[b,...N]=A(I);return P.sync(b,N,F)},e.exports.node=(I,F,b={})=>{F&&!Array.isArray(F)&&typeof F=="object"&&(b=F,F=[]);let N=c.node(b),T=process.execArgv.filter(q=>!q.startsWith("--inspect")),{nodePath:$=process.execPath,nodeOptions:j=T}=b;return P($,[...j,I,...Array.isArray(F)?F:[]],{...b,stdin:void 0,stdout:void 0,stderr:void 0,stdio:N,shell:!1})}});B();var ac=Nt(oc());async function rr(t){let e={cwd:wn.default.tmpdir(),env:{COREPACK_ENABLE_STRICT:"0"}};try{let r=await(0,ac.default)(t,["--version"],e);return{available:!0,version:r.stdout.trim()}}catch{return{available:!1}}}async function nr(){let[t,e,r]=await Promise.all([rr("yarnpkg"),rr("npm"),rr("pnpm")]);return{yarn:t,pnpm:e,npm:r}}B();var Bn=st(require("chalk"));var _n=st(require("execa")),kn=st(require("ora")),xn=require("semver");var Fn={npm:[{name:"npm",template:"npm",command:"npm",installArgs:["install"],version:"latest",executable:"npx",semver:"*",default:!0}],pnpm:[{name:"pnpm6",template:"pnpm",command:"pnpm",installArgs:["install"],version:"latest-6",executable:"pnpx",semver:"6.x"},{name:"pnpm",template:"pnpm",command:"pnpm",installArgs:["install"],version:"latest",executable:"pnpm dlx",semver:">=7",default:!0}],yarn:[{name:"yarn",template:"yarn",command:"yarn",installArgs:["install"],version:"1.x",executable:"npx",semver:"<2",default:!0},{name:"berry",template:"berry",command:"yarn",installArgs:["install","--no-immutable"],version:"stable",executable:"yarn dlx",semver:">=2"}]};function uc(t){let{version:e,name:r}=t;return e?Fn[r].find(n=>(0,xn.satisfies)(e,n.semver)):Fn[r].find(n=>n.default)}async function ir(t){let{to:e,logger:r,options:n}=t,i=r!=null?r:new Tt(n),s=uc(e);if(!s)throw new ct("Unsupported package manager version.",{type:"package_manager-unsupported_version"});if(i.subStep(`running "${s.command} ${s.installArgs}"`),!(n!=null&&n.dry)){let u;i!=null&&i.interactive&&(u=(0,kn.default)({text:"installing dependencies...",spinner:{frames:i.installerFrames()}}).start());try{await(0,_n.default)(s.command,s.installArgs,{cwd:t.project.paths.root}),u&&u.stop(),i.subStep("dependencies installed")}catch(o){throw i.subStepFailure("failed to install dependencies"),o}}}async function On({project:t,to:e,logger:r,options:n}){if(r.header(`Converting project from ${t.packageManager} to ${e.name}.`),t.packageManager==e.name)throw new ct("You are already using this package manager",{type:"package_manager-already_in_use"});await Ut[t.packageManager].remove({project:t,to:e,logger:r,options:n}),await Ut[e.name].create({project:t,to:e,logger:r,options:n}),r.mainStep("Installing dependencies"),n!=null&&n.skipInstall?r.subStep(Bn.default.yellow("Skipping install")):(await Ut[e.name].convertLock({project:t,logger:r,options:n}),await ir({project:t,to:e,logger:r,options:n})),r.mainStep(`Cleaning up ${t.packageManager} workspaces`),await Ut[t.packageManager].clean({project:t,logger:r})}function sc({packageManager:t,currentWorkspaceManger:e,availablePackageManagers:r}){return e===t?"already in use":r[t].available?!1:"not installed"}async function ke(t,e,r){let n=new Tt(r);n.hero(),n.header("Welcome, let's convert your project."),n.blankLine();let i=await or.default.prompt({type:"input",name:"directoryInput",message:"Where is the root of your repo?",when:!t,default:".",validate:f=>{let{exists:d,absolute:m}=Lt({directory:f});return d?!0:`Directory ${ar.default.dim(`(${m})`)} does not exist`},filter:f=>f.trim()}),{directoryInput:s=t}=i,{exists:u,absolute:o}=Lt({directory:s});if(!u)return console.error(`Directory ${ar.default.dim(`(${o})`)} does not exist`),process.exit(1);let[a,c]=await Promise.all([ae({root:o}),nr()]),p=await or.default.prompt({name:"packageManagerInput",type:"list",message:`Convert from ${a.packageManager} workspaces to:`,when:!e||!Object.keys(c).includes(e),choices:["npm","pnpm","yarn"].map(f=>({name:`${f} workspaces`,value:f,disabled:sc({packageManager:f,currentWorkspaceManger:a.packageManager,availablePackageManagers:c})}))}),{packageManagerInput:l=e}=p;await On({project:a,to:{name:l,version:c[l].version},logger:n,options:r})}var Rn={name:"@turbo/workspaces",version:"1.8.7",description:"Tools for working with package managers",homepage:"https://turbo.build/repo",license:"MPL-2.0",repository:{type:"git",url:"https://github.com/vercel/turbo",directory:"packages/turbo-workspaces"},bugs:{url:"https://github.com/vercel/turbo/issues"},bin:"dist/cli.js",main:"dist/index.js",types:"dist/index.d.ts",scripts:{build:"tsup",dev:"tsup --watch",test:"jest",lint:"eslint src/**/*.ts","check-types":"tsc --noEmit"},dependencies:{chalk:"2.4.2",commander:"^10.0.0",execa:"5.1.1","fast-glob":"^3.2.12","fs-extra":"^10.1.0","gradient-string":"^2.0.0",inquirer:"^8.0.0","js-yaml":"^4.1.0",ora:"4.1.1",rimraf:"^3.0.2",semver:"^7.3.5","update-check":"^1.5.4"},devDependencies:{"@types/chalk-animation":"^1.6.0","@types/fs-extra":"^9.0.13","@types/gradient-string":"^1.1.2","@types/inquirer":"^7.3.1","@types/jest":"^27.4.0","@types/js-yaml":"^4.0.5","@types/node":"^16.11.12","@types/rimraf":"^3.0.2","@types/semver":"^7.3.9",eslint:"^7.23.0",jest:"^27.4.3",semver:"^7.3.5","strip-ansi":"^6.0.1","ts-jest":"^27.1.1",tsconfig:"workspace:*",tsup:"^5.10.3","turbo-test-utils":"workspace:*","turbo-utils":"workspace:*",typescript:"^4.5.5"},files:["dist"],publishConfig:{access:"public"}};var xe=new Pn.Command;xe.name("@turbo/workspaces").description("Tools for working with package manager workspaces").version(Rn.version,"-v, --version","output the current version");xe.command("convert").description("Convert project between workspace managers").argument("[path]","Project root").argument("[package-manager]","Package manager to convert to").option("--skip-install","Do not run a package manager install after conversion",!1).option("--dry","Dry run (no changes are made to files)",!1).option("--force","Bypass Git safety checks and forcibly run conversion",!1).action(ke);xe.command("summary").description("Display a summary of the specified project").argument("[path]","Project root").action(me);xe.parseAsync().catch(t=>{console.log(),t instanceof ct?console.log(ur.default.red(t.message)):(console.log(ur.default.red("Unexpected error. Please report it as a bug:")),console.log(t.message)),console.log(),process.exit(1)});
|
|
48
|
+
`);return S?(a.originalMessage=a.message,a.message=A):a=new Error(A),a.shortMessage=g,a.command=l,a.escapedCommand=f,a.exitCode=p,a.signal=c,a.signalDescription=E,a.stdout=s,a.stderr=u,o!==void 0&&(a.all=o),"bufferedData"in a&&delete a.bufferedData,a.failed=!0,a.timedOut=Boolean(d),a.isCanceled=m,a.killed=D&&!d,a};e.exports=i}),Vs=R((t,e)=>{"use strict";B();var r=["stdin","stdout","stderr"],n=s=>r.some(u=>s[u]!==void 0),i=s=>{if(!s)return;let{stdio:u}=s;if(u===void 0)return r.map(a=>s[a]);if(n(s))throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${r.map(a=>`\`${a}\``).join(", ")}`);if(typeof u=="string")return u;if(!Array.isArray(u))throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof u}\``);let o=Math.max(u.length,r.length);return Array.from({length:o},(a,c)=>u[c])};e.exports=i,e.exports.node=s=>{let u=i(s);return u==="ipc"?"ipc":u===void 0||typeof u=="string"?[u,u,u,"ipc"]:u.includes("ipc")?u:[...u,"ipc"]}}),Ys=R((t,e)=>{B(),e.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"],process.platform!=="win32"&&e.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT"),process.platform==="linux"&&e.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")}),Qs=R((t,e)=>{B();var r=global.process,n=function(h){return h&&typeof h=="object"&&typeof h.removeListener=="function"&&typeof h.emit=="function"&&typeof h.reallyExit=="function"&&typeof h.listeners=="function"&&typeof h.kill=="function"&&typeof h.pid=="number"&&typeof h.on=="function"};n(r)?(i=W("assert"),s=Ys(),u=/^win/i.test(r.platform),o=W("events"),typeof o!="function"&&(o=o.EventEmitter),r.__signal_exit_emitter__?a=r.__signal_exit_emitter__:(a=r.__signal_exit_emitter__=new o,a.count=0,a.emitted={}),a.infinite||(a.setMaxListeners(1/0),a.infinite=!0),e.exports=function(h,y){if(!n(global.process))return function(){};i.equal(typeof h,"function","a callback must be provided for exit handler"),f===!1&&d();var S="exit";y&&y.alwaysLast&&(S="afterexit");var g=function(){a.removeListener(S,h),a.listeners("exit").length===0&&a.listeners("afterexit").length===0&&c()};return a.on(S,h),g},c=function(){!f||!n(global.process)||(f=!1,s.forEach(function(h){try{r.removeListener(h,l[h])}catch{}}),r.emit=v,r.reallyExit=m,a.count-=1)},e.exports.unload=c,p=function(h,y,S){a.emitted[h]||(a.emitted[h]=!0,a.emit(h,y,S))},l={},s.forEach(function(h){l[h]=function(){if(n(global.process)){var y=r.listeners(h);y.length===a.count&&(c(),p("exit",null,h),p("afterexit",null,h),u&&h==="SIGHUP"&&(h="SIGINT"),r.kill(r.pid,h))}}}),e.exports.signals=function(){return s},f=!1,d=function(){f||!n(global.process)||(f=!0,a.count+=1,s=s.filter(function(h){try{return r.on(h,l[h]),!0}catch{return!1}}),r.emit=E,r.reallyExit=D)},e.exports.load=d,m=r.reallyExit,D=function(h){!n(global.process)||(r.exitCode=h||0,p("exit",r.exitCode,null),p("afterexit",r.exitCode,null),m.call(r,r.exitCode))},v=r.emit,E=function(h,y){if(h==="exit"&&n(global.process)){y!==void 0&&(r.exitCode=y);var S=v.apply(this,arguments);return p("exit",r.exitCode,null),p("afterexit",r.exitCode,null),S}else return v.apply(this,arguments)}):e.exports=function(){return function(){}};var i,s,u,o,a,c,p,l,f,d,m,D,v,E}),Xs=R((t,e)=>{"use strict";B();var r=W("os"),n=Qs(),i=1e3*5,s=(D,v="SIGTERM",E={})=>{let h=D(v);return u(D,v,E,h),h},u=(D,v,E,h)=>{if(!o(v,E,h))return;let y=c(E),S=setTimeout(()=>{D("SIGKILL")},y);S.unref&&S.unref()},o=(D,{forceKillAfterTimeout:v},E)=>a(D)&&v!==!1&&E,a=D=>D===r.constants.signals.SIGTERM||typeof D=="string"&&D.toUpperCase()==="SIGTERM",c=({forceKillAfterTimeout:D=!0})=>{if(D===!0)return i;if(!Number.isFinite(D)||D<0)throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${D}\` (${typeof D})`);return D},p=(D,v)=>{D.kill()&&(v.isCanceled=!0)},l=(D,v,E)=>{D.kill(v),E(Object.assign(new Error("Timed out"),{timedOut:!0,signal:v}))},f=(D,{timeout:v,killSignal:E="SIGTERM"},h)=>{if(v===0||v===void 0)return h;let y,S=new Promise((A,C)=>{y=setTimeout(()=>{l(D,E,C)},v)}),g=h.finally(()=>{clearTimeout(y)});return Promise.race([S,g])},d=({timeout:D})=>{if(D!==void 0&&(!Number.isFinite(D)||D<0))throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${D}\` (${typeof D})`)},m=async(D,{cleanup:v,detached:E},h)=>{if(!v||E)return h;let y=n(()=>{D.kill()});return h.finally(()=>{y()})};e.exports={spawnedKill:s,spawnedCancel:p,setupTimeout:f,validateTimeout:d,setExitHandler:m}}),Zs=R((t,e)=>{"use strict";B();var r=n=>n!==null&&typeof n=="object"&&typeof n.pipe=="function";r.writable=n=>r(n)&&n.writable!==!1&&typeof n._write=="function"&&typeof n._writableState=="object",r.readable=n=>r(n)&&n.readable!==!1&&typeof n._read=="function"&&typeof n._readableState=="object",r.duplex=n=>r.writable(n)&&r.readable(n),r.transform=n=>r.duplex(n)&&typeof n._transform=="function",e.exports=r}),zs=R((t,e)=>{"use strict";B();var{PassThrough:r}=W("stream");e.exports=n=>{n={...n};let{array:i}=n,{encoding:s}=n,u=s==="buffer",o=!1;i?o=!(s||u):s=s||"utf8",u&&(s=null);let a=new r({objectMode:o});s&&a.setEncoding(s);let c=0,p=[];return a.on("data",l=>{p.push(l),o?c=p.length:c+=l.length}),a.getBufferedValue=()=>i?p:u?Buffer.concat(p,c):p.join(""),a.getBufferedLength=()=>c,a}}),tc=R((t,e)=>{"use strict";B();var{constants:r}=W("buffer"),n=W("stream"),{promisify:i}=W("util"),s=zs(),u=i(n.pipeline),o=class extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}};async function a(c,p){if(!c)throw new Error("Expected a stream");p={maxBuffer:1/0,...p};let{maxBuffer:l}=p,f=s(p);return await new Promise((d,m)=>{let D=v=>{v&&f.getBufferedLength()<=r.MAX_LENGTH&&(v.bufferedData=f.getBufferedValue()),m(v)};(async()=>{try{await u(c,f),d()}catch(v){D(v)}})(),f.on("data",()=>{f.getBufferedLength()>l&&D(new o)})}),f.getBufferedValue()}e.exports=a,e.exports.buffer=(c,p)=>a(c,{...p,encoding:"buffer"}),e.exports.array=(c,p)=>a(c,{...p,array:!0}),e.exports.MaxBufferError=o}),ec=R((t,e)=>{"use strict";B();var{PassThrough:r}=W("stream");e.exports=function(){var n=[],i=new r({objectMode:!0});return i.setMaxListeners(0),i.add=s,i.isEmpty=u,i.on("unpipe",o),Array.prototype.slice.call(arguments).forEach(s),i;function s(a){return Array.isArray(a)?(a.forEach(s),this):(n.push(a),a.once("end",o.bind(null,a)),a.once("error",i.emit.bind(i,"error")),a.pipe(i,{end:!1}),this)}function u(){return n.length==0}function o(a){n=n.filter(function(c){return c!==a}),!n.length&&i.readable&&i.end()}}}),rc=R((t,e)=>{"use strict";B();var r=Zs(),n=tc(),i=ec(),s=(l,f)=>{f===void 0||l.stdin===void 0||(r(f)?f.pipe(l.stdin):l.stdin.end(f))},u=(l,{all:f})=>{if(!f||!l.stdout&&!l.stderr)return;let d=i();return l.stdout&&d.add(l.stdout),l.stderr&&d.add(l.stderr),d},o=async(l,f)=>{if(l){l.destroy();try{return await f}catch(d){return d.bufferedData}}},a=(l,{encoding:f,buffer:d,maxBuffer:m})=>{if(!(!l||!d))return f?n(l,{encoding:f,maxBuffer:m}):n.buffer(l,{maxBuffer:m})},c=async({stdout:l,stderr:f,all:d},{encoding:m,buffer:D,maxBuffer:v},E)=>{let h=a(l,{encoding:m,buffer:D,maxBuffer:v}),y=a(f,{encoding:m,buffer:D,maxBuffer:v}),S=a(d,{encoding:m,buffer:D,maxBuffer:v*2});try{return await Promise.all([E,h,y,S])}catch(g){return Promise.all([{error:g,signal:g.signal,timedOut:g.timedOut},o(l,h),o(f,y),o(d,S)])}},p=({input:l})=>{if(r(l))throw new TypeError("The `input` option cannot be a stream in sync mode")};e.exports={handleInput:s,makeAllStream:u,getSpawnedResult:c,validateInputSync:p}}),nc=R((t,e)=>{"use strict";B();var r=(async()=>{})().constructor.prototype,n=["then","catch","finally"].map(u=>[u,Reflect.getOwnPropertyDescriptor(r,u)]),i=(u,o)=>{for(let[a,c]of n){let p=typeof o=="function"?(...l)=>Reflect.apply(c.value,o(),l):c.value.bind(o);Reflect.defineProperty(u,a,{...c,value:p})}return u},s=u=>new Promise((o,a)=>{u.on("exit",(c,p)=>{o({exitCode:c,signal:p})}),u.on("error",c=>{a(c)}),u.stdin&&u.stdin.on("error",c=>{a(c)})});e.exports={mergePromise:i,getSpawnedPromise:s}}),ic=R((t,e)=>{"use strict";B();var r=(p,l=[])=>Array.isArray(l)?[p,...l]:[p],n=/^[\w.-]+$/,i=/"/g,s=p=>typeof p!="string"||n.test(p)?p:`"${p.replace(i,'\\"')}"`,u=(p,l)=>r(p,l).join(" "),o=(p,l)=>r(p,l).map(f=>s(f)).join(" "),a=/ +/g,c=p=>{let l=[];for(let f of p.trim().split(a)){let d=l[l.length-1];d&&d.endsWith("\\")?l[l.length-1]=`${d.slice(0,-1)} ${f}`:l.push(f)}return l};e.exports={joinCommand:u,getEscapedCommand:o,parseCommand:c}}),oc=R((t,e)=>{"use strict";B();var r=W("path"),n=W("child_process"),i=Ns(),s=$s(),u=Hs(),o=Ws(),a=Js(),c=Vs(),{spawnedKill:p,spawnedCancel:l,setupTimeout:f,validateTimeout:d,setExitHandler:m}=Xs(),{handleInput:D,getSpawnedResult:v,makeAllStream:E,validateInputSync:h}=rc(),{mergePromise:y,getSpawnedPromise:S}=nc(),{joinCommand:g,parseCommand:A,getEscapedCommand:C}=ic(),_=1e3*1e3*100,w=({env:I,extendEnv:F,preferLocal:b,localDir:N,execPath:T})=>{let $=F?{...process.env,...I}:I;return b?u.env({env:$,cwd:N,execPath:T}):$},x=(I,F,b={})=>{let N=i._parse(I,F,b);return I=N.command,F=N.args,b=N.options,b={maxBuffer:_,buffer:!0,stripFinalNewline:!0,extendEnv:!0,preferLocal:!1,localDir:b.cwd||process.cwd(),execPath:process.execPath,encoding:"utf8",reject:!0,cleanup:!0,all:!1,windowsHide:!0,...b},b.env=w(b),b.stdio=c(b),process.platform==="win32"&&r.basename(I,".exe")==="cmd"&&F.unshift("/q"),{file:I,args:F,options:b,parsed:N}},k=(I,F,b)=>typeof F!="string"&&!Buffer.isBuffer(F)?b===void 0?void 0:"":I.stripFinalNewline?s(F):F,P=(I,F,b)=>{let N=x(I,F,b),T=g(I,F),$=C(I,F);d(N.options);let j;try{j=n.spawn(N.file,N.args,N.options)}catch(ot){let ut=new n.ChildProcess,O=Promise.reject(a({error:ot,stdout:"",stderr:"",all:"",command:T,escapedCommand:$,parsed:N,timedOut:!1,isCanceled:!1,killed:!1}));return y(ut,O)}let q=S(j),V=f(j,N.options,q),Z=m(j,N.options,V),M={isCanceled:!1};j.kill=p.bind(null,j.kill.bind(j)),j.cancel=l.bind(null,j,M);let nt=o(async()=>{let[{error:ot,exitCode:ut,signal:O,timedOut:L},G,K,it]=await v(j,N.options,Z),et=k(N.options,G),Q=k(N.options,K),X=k(N.options,it);if(ot||ut!==0||O!==null){let rt=a({error:ot,exitCode:ut,signal:O,stdout:et,stderr:Q,all:X,command:T,escapedCommand:$,parsed:N,timedOut:L,isCanceled:M.isCanceled,killed:j.killed});if(!N.options.reject)return rt;throw rt}return{command:T,escapedCommand:$,exitCode:0,stdout:et,stderr:Q,all:X,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}});return D(j,N.options.input),j.all=E(j,N.options),y(j,nt)};e.exports=P,e.exports.sync=(I,F,b)=>{let N=x(I,F,b),T=g(I,F),$=C(I,F);h(N.options);let j;try{j=n.spawnSync(N.file,N.args,N.options)}catch(Z){throw a({error:Z,stdout:"",stderr:"",all:"",command:T,escapedCommand:$,parsed:N,timedOut:!1,isCanceled:!1,killed:!1})}let q=k(N.options,j.stdout,j.error),V=k(N.options,j.stderr,j.error);if(j.error||j.status!==0||j.signal!==null){let Z=a({stdout:q,stderr:V,error:j.error,signal:j.signal,exitCode:j.status,command:T,escapedCommand:$,parsed:N,timedOut:j.error&&j.error.code==="ETIMEDOUT",isCanceled:!1,killed:j.signal!==null});if(!N.options.reject)return Z;throw Z}return{command:T,escapedCommand:$,exitCode:0,stdout:q,stderr:V,failed:!1,timedOut:!1,isCanceled:!1,killed:!1}},e.exports.command=(I,F)=>{let[b,...N]=A(I);return P(b,N,F)},e.exports.commandSync=(I,F)=>{let[b,...N]=A(I);return P.sync(b,N,F)},e.exports.node=(I,F,b={})=>{F&&!Array.isArray(F)&&typeof F=="object"&&(b=F,F=[]);let N=c.node(b),T=process.execArgv.filter(q=>!q.startsWith("--inspect")),{nodePath:$=process.execPath,nodeOptions:j=T}=b;return P($,[...j,I,...Array.isArray(F)?F:[]],{...b,stdin:void 0,stdout:void 0,stderr:void 0,stdio:N,shell:!1})}});B();var ac=Nt(oc());async function rr(t){let e={cwd:wn.default.tmpdir(),env:{COREPACK_ENABLE_STRICT:"0"}};try{let r=await(0,ac.default)(t,["--version"],e);return{available:!0,version:r.stdout.trim()}}catch{return{available:!1}}}async function nr(){let[t,e,r]=await Promise.all([rr("yarnpkg"),rr("npm"),rr("pnpm")]);return{yarn:t,pnpm:e,npm:r}}B();var Bn=st(require("chalk"));var _n=st(require("execa")),kn=st(require("ora")),xn=require("semver");var Fn={npm:[{name:"npm",template:"npm",command:"npm",installArgs:["install"],version:"latest",executable:"npx",semver:"*",default:!0}],pnpm:[{name:"pnpm6",template:"pnpm",command:"pnpm",installArgs:["install"],version:"latest-6",executable:"pnpx",semver:"6.x"},{name:"pnpm",template:"pnpm",command:"pnpm",installArgs:["install"],version:"latest",executable:"pnpm dlx",semver:">=7",default:!0}],yarn:[{name:"yarn",template:"yarn",command:"yarn",installArgs:["install"],version:"1.x",executable:"npx",semver:"<2",default:!0},{name:"berry",template:"berry",command:"yarn",installArgs:["install","--no-immutable"],version:"stable",executable:"yarn dlx",semver:">=2"}]};function uc(t){let{version:e,name:r}=t;return e?Fn[r].find(n=>(0,xn.satisfies)(e,n.semver)):Fn[r].find(n=>n.default)}async function ir(t){let{to:e,logger:r,options:n}=t,i=r!=null?r:new Tt(n),s=uc(e);if(!s)throw new ct("Unsupported package manager version.",{type:"package_manager-unsupported_version"});if(i.subStep(`running "${s.command} ${s.installArgs}"`),!(n!=null&&n.dry)){let u;i!=null&&i.interactive&&(u=(0,kn.default)({text:"installing dependencies...",spinner:{frames:i.installerFrames()}}).start());try{await(0,_n.default)(s.command,s.installArgs,{cwd:t.project.paths.root}),u&&u.stop(),i.subStep("dependencies installed")}catch(o){throw i.subStepFailure("failed to install dependencies"),o}}}async function On({project:t,to:e,logger:r,options:n}){if(r.header(`Converting project from ${t.packageManager} to ${e.name}.`),t.packageManager==e.name)throw new ct("You are already using this package manager",{type:"package_manager-already_in_use"});await Ut[t.packageManager].remove({project:t,to:e,logger:r,options:n}),await Ut[e.name].create({project:t,to:e,logger:r,options:n}),r.mainStep("Installing dependencies"),n!=null&&n.skipInstall?r.subStep(Bn.default.yellow("Skipping install")):(await Ut[e.name].convertLock({project:t,logger:r,options:n}),await ir({project:t,to:e,logger:r,options:n})),r.mainStep(`Cleaning up ${t.packageManager} workspaces`),await Ut[t.packageManager].clean({project:t,logger:r})}function sc({packageManager:t,currentWorkspaceManger:e,availablePackageManagers:r}){return e===t?"already in use":r[t].available?!1:"not installed"}async function ke(t,e,r){let n=new Tt(r);n.hero(),n.header("Welcome, let's convert your project."),n.blankLine();let i=await or.default.prompt({type:"input",name:"directoryInput",message:"Where is the root of your repo?",when:!t,default:".",validate:f=>{let{exists:d,absolute:m}=Lt({directory:f});return d?!0:`Directory ${ar.default.dim(`(${m})`)} does not exist`},filter:f=>f.trim()}),{directoryInput:s=t}=i,{exists:u,absolute:o}=Lt({directory:s});if(!u)return console.error(`Directory ${ar.default.dim(`(${o})`)} does not exist`),process.exit(1);let[a,c]=await Promise.all([ae({root:o}),nr()]),p=await or.default.prompt({name:"packageManagerInput",type:"list",message:`Convert from ${a.packageManager} workspaces to:`,when:!e||!Object.keys(c).includes(e),choices:["npm","pnpm","yarn"].map(f=>({name:`${f} workspaces`,value:f,disabled:sc({packageManager:f,currentWorkspaceManger:a.packageManager,availablePackageManagers:c})}))}),{packageManagerInput:l=e}=p;await On({project:a,to:{name:l,version:c[l].version},logger:n,options:r})}var Rn={name:"@turbo/workspaces",version:"1.8.8",description:"Tools for working with package managers",homepage:"https://turbo.build/repo",license:"MPL-2.0",repository:{type:"git",url:"https://github.com/vercel/turbo",directory:"packages/turbo-workspaces"},bugs:{url:"https://github.com/vercel/turbo/issues"},bin:"dist/cli.js",main:"dist/index.js",types:"dist/index.d.ts",scripts:{build:"tsup",dev:"tsup --watch",test:"jest",lint:"eslint src/**/*.ts","check-types":"tsc --noEmit"},dependencies:{chalk:"2.4.2",commander:"^10.0.0",execa:"5.1.1","fast-glob":"^3.2.12","fs-extra":"^10.1.0","gradient-string":"^2.0.0",inquirer:"^8.0.0","js-yaml":"^4.1.0",ora:"4.1.1",rimraf:"^3.0.2",semver:"^7.3.5","update-check":"^1.5.4"},devDependencies:{"@types/chalk-animation":"^1.6.0","@types/fs-extra":"^9.0.13","@types/gradient-string":"^1.1.2","@types/inquirer":"^7.3.1","@types/jest":"^27.4.0","@types/js-yaml":"^4.0.5","@types/node":"^16.11.12","@types/rimraf":"^3.0.2","@types/semver":"^7.3.9",eslint:"^7.23.0",jest:"^27.4.3",semver:"^7.3.5","strip-ansi":"^6.0.1","ts-jest":"^27.1.1",tsconfig:"workspace:*",tsup:"^5.10.3","turbo-test-utils":"workspace:*","turbo-utils":"workspace:*",typescript:"^4.5.5"},files:["dist"],publishConfig:{access:"public"}};var xe=new Pn.Command;xe.name("@turbo/workspaces").description("Tools for working with package manager workspaces").version(Rn.version,"-v, --version","output the current version");xe.command("convert").description("Convert project between workspace managers").argument("[path]","Project root").argument("[package-manager]","Package manager to convert to").option("--skip-install","Do not run a package manager install after conversion",!1).option("--dry","Dry run (no changes are made to files)",!1).option("--force","Bypass Git safety checks and forcibly run conversion",!1).action(ke);xe.command("summary").description("Display a summary of the specified project").argument("[path]","Project root").action(me);xe.parseAsync().catch(t=>{console.log(),t instanceof ct?console.log(ur.default.red(t.message)):(console.log(ur.default.red("Unexpected error. Please report it as a bug:")),console.log(t.message)),console.log(),process.exit(1)});
|
|
49
49
|
/*!
|
|
50
50
|
* fill-range <https://github.com/jonschlinkert/fill-range>
|
|
51
51
|
*
|