@currents/cmd 1.9.6 → 1.9.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/bin/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #! /usr/bin/env node
2
- "use strict";var Ei=Object.create;var re=Object.defineProperty;var Ri=Object.getOwnPropertyDescriptor;var Ii=Object.getOwnPropertyNames;var _i=Object.getPrototypeOf,Ti=Object.prototype.hasOwnProperty;var yi=(t,e)=>{for(var r in e)re(t,r,{get:e[r],enumerable:!0})},Oi=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Ii(e))!Ti.call(t,n)&&n!==r&&re(t,n,{get:()=>e[n],enumerable:!(o=Ri(e,n))||o.enumerable});return t};var l=(t,e,r)=>(r=t!=null?Ei(_i(t)):{},Oi(e||!t||!t.__esModule?re(r,"default",{value:t,enumerable:!0}):r,t));var aC=require("source-map-support/register");var gi=require("@commander-js/extra-typings");var We={name:"@currents/cmd",version:"1.9.6",main:"./dist/index.js",author:{name:"Currents Software Inc",email:"hello@currents.dev"},license:"MIT",repository:{type:"git",url:"https://github.com/currents-dev/currents-reporter"},description:"Currents CLI tools",scripts:{test:"vitest",rm:"rimraf dist",lint:'TIMING=1 eslint "**/*.ts*"',types:"tsc --noEmit",build:"tsup-node --minify --dts",dev:"tsup-node --watch --dts",release:"release-it","publish:npm":"npm run rm && npm run build && ./publish.js"},devDependencies:{"@jest/reporters":"^29.7.0","@jest/types":"^29.6.3","@release-it/conventional-changelog":"^10.0.1","release-it":"^19.2.4","@types/archiver":"^6.0.3","@types/async-retry":"^1.4.9","@types/debug":"^4.1.12","@types/fs-extra":"^11.0.4","@types/getos":"^3.0.4","@types/lodash":"^4.17.16","@types/node":"^22.13.14","@types/proxy-from-env":"^1.0.4","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@types/unzipper":"^0.10.11","@types/uuid":"^10.0.0","@types/xml2js":"^0.4.14","@types/xxhashjs":"^0.2.4",jest:"^29.7.0",rimraf:"^6.0.1",tsup:"^8.3.5",typescript:"^5.9.3",vitest:"^2.1.9"},dependencies:{"@commander-js/extra-typings":"^12.1.0","@currents/commit-info":"1.0.1-beta.0",archiver:"^7.0.1","async-retry":"^1.3.3",axios:"^1.13.6","axios-retry":"^4.5.0",chalk:"^4.1.2",commander:"^13.1.0",debug:"^4.4.0",dotenv:"^17.2.3",execa:"^9.5.1","fs-extra":"^11.3.4",getos:"^3.2.1",globby:"^11.1.0","https-proxy-agent":"^7.0.4","jest-cli":"^30.2.0","jest-config":"^29.7.0",lodash:"^4.17.23",nanoid:"^3.3.8","pretty-ms":"^7.0.1","proxy-from-env":"^1.1.0",semver:"^7.7.1","source-map-support":"^0.5.21",tmp:"^0.2.5","tmp-promise":"^3.0.3","ts-pattern":"^5.8.0",unzipper:"^0.12.3",uuid:"^13.0.0",xml2js:"^0.6.2",xxhashjs:"^0.2.2"},bin:{currents:"./dist/bin/index.js","currents-cli":"./dist/bin/index.js"},files:["dist","!**/*.map","!**/*/*.map"],keywords:["cloud test dashboard","test reporter","test results","currents","currents dashboard","ci"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js",types:"./dist/index.d.ts"},"./discovery/jest":{import:"./dist/services/upload/discovery/jest/reporter.js",require:"./dist/services/upload/discovery/jest/reporter.js",types:"./dist/services/upload/discovery/jest/reporter.d.ts"},"./package.json":"./package.json"},"release-it":{npm:{publish:!1},github:{release:!0,releaseName:"${npm.name} v${version}"},plugins:{"@release-it/conventional-changelog":{preset:"angular",header:"# Changelog",ignoreVersion:!0,infile:"./CHANGELOG.md"}},git:{commitMessage:"chore: release ${npm.name} v${version}",tagName:"${npm.name}-v${version}"}}};var at=We.version;var Be=require("@commander-js/extra-typings");var Pi=[];function oe(t){Pi.push(t)}var w=l(require("chalk")),H=l(require("util"));var ne=require("debug"),bi=l(require("fs-extra")),s=(0,ne.debug)("currents"),xi=null;function Ye(){ne.debug.enable("currents,currents:*")}function ze(t){xi=t}var Qe=[],Xe=[];var yt=(...t)=>{let e=H.default.format(...t);oe(e),console.log(e)},Ai=(...t)=>{let e=H.default.format(...t);oe(e),console.error(e)},P=yt,g=(...t)=>{let e=H.default.format(...t);return Xe.push(e),s("WARNING: ",e),yt(w.default.bgYellow.black(" WARNING "),e)},Z=(...t)=>{let e=H.default.format(...Ze(t));return s("WARNING: ",H.default.format(...t)),yt(w.default.bgYellow.black(" WARNING "),e)},Ot=(...t)=>yt(w.default.green.bold(H.default.format(...t))),C=(...t)=>{let e=H.default.format(...Ze(t));return Qe.push(e),s("ERROR: ",H.default.format(...t)),Ai(w.default.bgRed.white(" ERROR "),e)};var Ze=t=>t.map(e=>e instanceof Error?e.message:e),wt=(t=2)=>console.log(Array(t).fill("").join(`
2
+ "use strict";var Ei=Object.create;var re=Object.defineProperty;var Ri=Object.getOwnPropertyDescriptor;var Ii=Object.getOwnPropertyNames;var _i=Object.getPrototypeOf,Ti=Object.prototype.hasOwnProperty;var yi=(t,e)=>{for(var r in e)re(t,r,{get:e[r],enumerable:!0})},Oi=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Ii(e))!Ti.call(t,n)&&n!==r&&re(t,n,{get:()=>e[n],enumerable:!(o=Ri(e,n))||o.enumerable});return t};var l=(t,e,r)=>(r=t!=null?Ei(_i(t)):{},Oi(e||!t||!t.__esModule?re(r,"default",{value:t,enumerable:!0}):r,t));var aC=require("source-map-support/register");var gi=require("@commander-js/extra-typings");var We={name:"@currents/cmd",version:"1.9.8",main:"./dist/index.js",author:{name:"Currents Software Inc",email:"hello@currents.dev"},license:"MIT",repository:{type:"git",url:"https://github.com/currents-dev/currents-reporter"},description:"Currents CLI tools",scripts:{test:"vitest",rm:"rimraf dist",lint:'TIMING=1 eslint "**/*.ts*"',types:"tsc --noEmit",build:"tsup-node --minify --dts",dev:"tsup-node --watch --dts",release:"release-it","publish:npm":"npm run rm && npm run build && ./publish.js"},devDependencies:{"@jest/reporters":"^29.7.0","@jest/types":"^29.6.3","@release-it/conventional-changelog":"^10.0.1","release-it":"^19.2.4","@types/archiver":"^6.0.3","@types/async-retry":"^1.4.9","@types/debug":"^4.1.12","@types/fs-extra":"^11.0.4","@types/getos":"^3.0.4","@types/lodash":"^4.17.16","@types/node":"^22.13.14","@types/proxy-from-env":"^1.0.4","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@types/unzipper":"^0.10.11","@types/uuid":"^10.0.0","@types/xml2js":"^0.4.14","@types/xxhashjs":"^0.2.4",jest:"^29.7.0",rimraf:"^6.0.1",tsup:"^8.3.5",typescript:"^5.9.3",vitest:"^2.1.9"},dependencies:{"@commander-js/extra-typings":"^13.1.0","@currents/commit-info":"1.0.1-beta.0",archiver:"^7.0.1","async-retry":"^1.3.3",axios:"1.13.6","axios-retry":"4.5.0",chalk:"^4.1.2",commander:"^13.1.0",debug:"^4.4.0",dotenv:"^17.2.3",execa:"^9.5.1","fs-extra":"^11.3.4",getos:"^3.2.1",globby:"^11.1.0","https-proxy-agent":"^7.0.4","jest-cli":"^30.2.0","jest-config":"^30.3.0",lodash:"^4.17.23",nanoid:"^3.3.8","pretty-ms":"^7.0.1","proxy-from-env":"^1.1.0",semver:"^7.7.1","source-map-support":"^0.5.21",tmp:"^0.2.5","tmp-promise":"^3.0.3","ts-pattern":"^5.8.0",unzipper:"^0.12.3",uuid:"11.1.0",xml2js:"^0.6.2",xxhashjs:"^0.2.2"},bin:{currents:"./dist/bin/index.js","currents-cli":"./dist/bin/index.js"},files:["dist","!**/*.map","!**/*/*.map"],keywords:["cloud test dashboard","test reporter","test results","currents","currents dashboard","ci"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js",types:"./dist/index.d.ts"},"./discovery/jest":{import:"./dist/services/upload/discovery/jest/reporter.js",require:"./dist/services/upload/discovery/jest/reporter.js",types:"./dist/services/upload/discovery/jest/reporter.d.ts"},"./package.json":"./package.json"},"release-it":{npm:{publish:!1},github:{release:!0,releaseName:"${npm.name} v${version}"},plugins:{"@release-it/conventional-changelog":{preset:"angular",header:"# Changelog",ignoreVersion:!0,infile:"./CHANGELOG.md"}},git:{commitMessage:"chore: release ${npm.name} v${version}",tagName:"${npm.name}-v${version}"}}};var at=We.version;var Be=require("@commander-js/extra-typings");var Pi=[];function oe(t){Pi.push(t)}var w=l(require("chalk")),H=l(require("util"));var ne=require("debug"),bi=l(require("fs-extra")),s=(0,ne.debug)("currents"),xi=null;function Ye(){ne.debug.enable("currents,currents:*")}function ze(t){xi=t}var Qe=[],Xe=[];var yt=(...t)=>{let e=H.default.format(...t);oe(e),console.log(e)},Ai=(...t)=>{let e=H.default.format(...t);oe(e),console.error(e)},P=yt,g=(...t)=>{let e=H.default.format(...t);return Xe.push(e),s("WARNING: ",e),yt(w.default.bgYellow.black(" WARNING "),e)},Z=(...t)=>{let e=H.default.format(...Ze(t));return s("WARNING: ",H.default.format(...t)),yt(w.default.bgYellow.black(" WARNING "),e)},Ot=(...t)=>yt(w.default.green.bold(H.default.format(...t))),C=(...t)=>{let e=H.default.format(...Ze(t));return Qe.push(e),s("ERROR: ",H.default.format(...t)),Ai(w.default.bgRed.white(" ERROR "),e)};var Ze=t=>t.map(e=>e instanceof Error?e.message:e),wt=(t=2)=>console.log(Array(t).fill("").join(`
3
3
  `)),Bs=w.default.cyan,ks=w.default.blueBright,Fs=w.default.red,Gs=w.default.yellow,Hs=w.default.green,js=w.default.gray,Ks=w.default.white,$s=w.default.black,Vs=w.default.magenta,h=w.default.dim,Js=w.default.bold;var En=l(require("chalk"));function tr(t,e){if(!t)return t;let r={...t};return e.forEach(o=>{r.hasOwnProperty(o)&&(r[o]="*****")}),r}function Pt(t){return tr(t,["apiKey"])}function T(t){return tr(t,["recordKey","key"])}var st=class extends Error{};var k=l(require("fs-extra")),gt=require("path"),er=require("uuid");async function tt(t){try{return await k.default.readJson(t)}catch(e){throw C("Error while reading JSON file: %s",t,e),C}}async function et(t,e){try{return await k.default.writeFile(t,e,"utf8"),t}catch(r){throw C(`Error writing file at ${t}:`,r),r}}async function Ct(t,e){try{try{return await k.default.access(t),t}catch{return await k.default.writeFile(t,e,"utf8"),t}}catch(r){throw C(`Error writing file at ${t}:`,r),r}}async function rr(t,e){if(e){await k.default.ensureDir(t);return}let r=(0,gt.dirname)(t);await k.default.ensureDir(r)}function Ui(){let t=new Date().toISOString().replace(/[:.]/g,"-"),e=(0,er.v4)();return`${t}-${e}`}async function or(t,e){let r=Ui(),o=(0,gt.join)(t,e,r);return ht(o)}async function ht(t){try{return await k.default.ensureDir(t),s("Folder created",t),t}catch(e){throw C(`Failed to create folder at ${t}:`,e),e}}async function nr(t,e){try{return await k.default.ensureDir((0,gt.dirname)(e)),await k.default.copy(t,e),s("File copied from %s to %s",t,e),e}catch(r){throw C(`Failed to copy file from ${t} to ${e}:`,r),r}}var ir=l(require("crypto"));function rt(t){return ir.createHash("sha256").update(t).digest("base64").slice(0,8).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}var bt={};yi(bt,{getNanoid:()=>vi,userFacingNanoid:()=>ae});var ie=require("nanoid"),ar="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",vi=(t=16)=>(0,ie.customAlphabet)(ar,t)(),ae=(0,ie.customAlphabet)(ar,12);function sr(t){return Object.entries(t??{}).reduce((e,[r,o])=>o===void 0?e:{...e,[r]:o},{})}function y(t,e){return"env"in t[e]&&t[e].env?t[e].env:""}function Di(t,e){return t[e].cli}function Ni(t,e){return t[e].name}function j(t,e,r,o,n){let a={...sr(o),...sr(r())};return e.forEach(c=>{if(!a[c])throw C(`${Ni(t,c)} is required for Currents Reporter. Use the following methods to set the value:
4
4
  - as environment variable: ${h(y(t,c))}
5
5
  - as CLI flag of the command: ${h(Di(t,c))}`),new st("Missing required config variable")}),typeof n=="function"&&n(a),a}var Mi={apiKey:{name:"Api Key",env:"CURRENTS_API_KEY",cli:"--api-key"},debug:{name:"Debug",env:"CURRENTS_DEBUG",cli:"--debug"}},Li={branch:{name:"Run Branch",cli:"--branch"},output:{name:"Output Path",env:"CURRENTS_OUTPUT",cli:"--output"},ciBuildId:{name:"CI Build ID",cli:"--ci-build-id"},projectId:{name:"Project ID",env:"CURRENTS_PROJECT_ID",cli:"--project-id"},tag:{name:"Run Tag",cli:"--tag"}},K={...Mi,...Li};function cr(){return{apiKey:process.env[K.apiKey.env],debug:!!process.env[K.debug.env]}}var Bi=s.extend("config"),ki=["apiKey","projectId"],Fi=t=>{let{ciBuildId:e,tag:r,branch:o}=t;if(!([e,r,o].filter(Boolean).length===1||r&&o&&!e))throw C('"ciBuildId", "tag", "branch" or a combination of "tag" and "branch" are expected to be provided'),new st("Missing or invalid parameters")},se=null;function pr(t){se=j(K,ki,cr,t,Fi),Bi("Resolved config: %o",Pt(se))}function xt(){return se}var kr=require("fs/promises");var br=l(require("lodash"));var hr=l(require("axios")),Er=l(require("axios-retry")),Rr=l(require("lodash"));var mr=()=>process.env.CURRENTS_API_URL??"https://cy.currents.dev",ur=()=>process.env.CURRENTS_REST_API_URL??"https://api.currents.dev",dr=()=>3e4;var ce=require("axios"),pe=l(require("pretty-ms"));var lr=s.extend("http"),At=t=>[3*1e3,15*1e3,30*1e3][t-1],fr=t=>(lr("isRetriableError: %o",{message:t.message,code:"code"in t?t.code:void 0,status:"response"in t?t.response?.status:void 0,headers:"response"in t?t.response?.headers:void 0,data:"response"in t?t.response?.data:void 0,isAxiosError:(0,ce.isAxiosError)(t)}),"code"in t&&t.code&&["ECONNABORTED","ECONNREFUSED","ECONNRESET","ETIMEDOUT","ENETRESET"].includes(t.code)?!0:(0,ce.isAxiosError)(t)?[429,502,503,504].includes(t.response?.status??0):!1),St=()=>3;function gr(t,e,r){lr("Network request '%s' failed: '%s'. Next attempt is in %s (%d/%d).",`${r.method?.toUpperCase()} ${r.url}`,e.message,(0,pe.default)(At(t)),t,St()),g("Network request '%s' failed: '%s'. Next attempt is in %s (%d/%d).",`${r.method?.toUpperCase()} ${r.url}`,e.message,(0,pe.default)(At(t)),t,St())}var me=s.extend("http");var ue={api:null,restApi:null};function Gi(t){let e=t==="api"?mr():ur();me("client base url: %s",e);let r=hr.default.create({baseURL:e,timeout:dr(),transitional:{clarifyTimeoutError:!0}});return r.interceptors.request.use(o=>{let n=o["axios-retry"]?.retryCount??0;o.headers.set({"x-cmd-version":at}),o.headers.get("Content-Type")||o.headers.set("Content-Type","application/json");let a={...Rr.default.pick(o,"method","url","headers"),baseURL:e,data:Buffer.isBuffer(o.data)?"buffer":o.data,params:o.params};return n?me("network request retry: %o",Cr({...a,baseURL:e,isRetry:!0})):me("network request: %o",Cr(a)),o}),(0,Er.default)(r,{retries:St(),retryCondition:fr,retryDelay:At,shouldResetTimeout:!0,onRetry:gr}),r}function Ir(t){return ue[t]===null&&(ue[t]=Gi(t)),ue[t]}function Cr(t){return{method:t.method,baseURL:t.baseURL,url:t.url,data:t.isRetry?"<retry>":Hi(t.data),params:t.isRetry?"<retry>":t.params,headers:{...t.headers,Authorization:"Bearer ***","x-currents-key":"***"}}}function Hi(t){return t?.results?.raw?{...t,results:{...t.results,raw:"***"}}:t}var yr=require("axios"),Or=l(require("lodash")),b=require("ts-pattern");function wr(t){(0,b.match)(t).when(yr.isAxiosError,ji).otherwise(()=>{g("Unexpected error while sending network request: %s",t)})}function ji(t){return(0,b.match)(t).with({code:"ECONNABORTED"},()=>{g("Network connection aborted")}).with({code:"ECONNREFUSED"},()=>{g("Network connection aborted")}).with({code:"ECONNRESET"},()=>{g("Network connection reset")}).with({code:"ETIMEDOUT"},()=>{g("Network connection timeout")}).with({response:b.P.not(b.P.nullish)},e=>{Ki(e,{status:e.response.status,data:e.response.data})}).otherwise(e=>{g(`[currents] Unexpected network error: %s
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";var vr=Object.create;var M=Object.defineProperty;var Mr=Object.getOwnPropertyDescriptor;var wr=Object.getOwnPropertyNames;var Fr=Object.getPrototypeOf,kr=Object.prototype.hasOwnProperty;var fe=(e,r)=>{for(var t in r)M(e,t,{get:r[t],enumerable:!0})},Re=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of wr(r))!kr.call(e,n)&&n!==t&&M(e,n,{get:()=>r[n],enumerable:!(o=Mr(r,n))||o.enumerable});return e};var c=(e,r,t)=>(t=e!=null?vr(Fr(e)):{},Re(r||!e||!e.__esModule?M(t,"default",{value:e,enumerable:!0}):t,e)),Hr=e=>Re(M({},"__esModule",{value:!0}),e);var Vt={};fe(Vt,{handleCurrentsReport:()=>br});module.exports=Hr(Vt);var _e=require("debug"),Gr=c(require("fs-extra")),i=(0,_e.debug)("currents"),jr=null;function Ie(e){jr=e}var w={};fe(w,{getNanoid:()=>Vr,userFacingNanoid:()=>te});var re=require("nanoid"),Ce="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Vr=(e=16)=>(0,re.customAlphabet)(Ce,e)(),te=(0,re.customAlphabet)(Ce,12);var m=require("lodash");var F=i.extend("ci"),Kr=(e,...r)=>(0,m.chain)(r).compact().join(e).value(),Jr=(e,r)=>(0,m.set)(e,(0,m.camelCase)(r),process.env[r]),u=e=>(0,m.transform)(e,Jr,{}),$r=()=>process.env.TF_BUILD&&process.env.TF_BUILD_BUILDNUMBER,Yr=()=>process.env.TF_BUILD&&process.env.AZURE_HTTP_USER_AGENT,qr=()=>(0,m.some)(process.env,(e,r)=>/^CODEBUILD_/.test(r)),Qr=()=>process.env.bamboo_buildNumber,Wr=()=>process.env.CI_NAME&&process.env.CI_NAME==="codeship"&&process.env.CODESHIP,zr=()=>process.env.CI_NAME&&process.env.CI_NAME==="codeship"&&!process.env.CODESHIP,Xr=()=>(0,m.some)(process.env,(e,r)=>/^CONCOURSE_/.test(r)),Zr=()=>process.env.GITLAB_CI||process.env.CI_SERVER_NAME&&/^GitLab/.test(process.env.CI_SERVER_NAME),et=()=>process.env.GCP_PROJECT||process.env.GCLOUD_PROJECT||process.env.GOOGLE_CLOUD_PROJECT,rt=()=>process.env.JENKINS_URL||process.env.JENKINS_HOME||process.env.JENKINS_VERSION||process.env.HUDSON_URL||process.env.HUDSON_HOME,tt=()=>process.env.WERCKER||process.env.WERCKER_MAIN_PIPELINE_STARTED,ot={appveyor:"APPVEYOR",azure:Yr,awsCodeBuild:qr,bamboo:Qr,bitbucket:"BITBUCKET_BUILD_NUMBER",buildkite:"BUILDKITE",circle:"CIRCLECI",codeshipBasic:Wr,codeshipPro:zr,concourse:Xr,codeFresh:"CF_BUILD_ID",drone:"DRONE",githubActions:"GITHUB_ACTIONS",gitlab:Zr,goCD:"GO_JOB_NAME",googleCloud:et,jenkins:rt,semaphore:"SEMAPHORE",shippable:"SHIPPABLE",teamcity:"TEAMCITY_VERSION",teamfoundation:$r,travis:"TRAVIS",wercker:tt,netlify:"NETLIFY",layerci:"LAYERCI"};function nt(){let{env:e}=process;return(0,m.findKey)(ot,r=>{if((0,m.isString)(r))return e[r];if((0,m.isFunction)(r))return r()})}var Te=()=>({appveyor:u(["APPVEYOR_JOB_ID","APPVEYOR_ACCOUNT_NAME","APPVEYOR_PROJECT_SLUG","APPVEYOR_BUILD_NUMBER","APPVEYOR_BUILD_VERSION","APPVEYOR_PULL_REQUEST_NUMBER","APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH"]),azure:u(["BUILD_BUILDID","BUILD_BUILDNUMBER","BUILD_CONTAINERID","BUILD_REPOSITORY_URI","SYSTEM_TEAMPROJECT","SYSTEM_COLLECTIONURI"]),awsCodeBuild:u(["CODEBUILD_BUILD_ID","CODEBUILD_BUILD_NUMBER","CODEBUILD_RESOLVED_SOURCE_VERSION","CODEBUILD_SOURCE_REPO_URL","CODEBUILD_SOURCE_VERSION"]),bamboo:u(["bamboo_buildNumber","bamboo_buildResultsUrl","bamboo_planRepository_repositoryUrl","bamboo_buildKey"]),bitbucket:u(["BITBUCKET_REPO_SLUG","BITBUCKET_REPO_OWNER","BITBUCKET_BUILD_NUMBER","BITBUCKET_PARALLEL_STEP","BITBUCKET_STEP_RUN_NUMBER","BITBUCKET_PR_ID","BITBUCKET_PR_DESTINATION_BRANCH","BITBUCKET_PR_DESTINATION_COMMIT"]),buildkite:u(["BUILDKITE_REPO","BUILDKITE_SOURCE","BUILDKITE_JOB_ID","BUILDKITE_BUILD_ID","BUILDKITE_BUILD_URL","BUILDKITE_BUILD_NUMBER","BUILDKITE_PULL_REQUEST","BUILDKITE_PULL_REQUEST_REPO","BUILDKITE_PULL_REQUEST_BASE_BRANCH"]),circle:u(["CIRCLE_JOB","CIRCLE_BUILD_NUM","CIRCLE_BUILD_URL","CIRCLE_PR_NUMBER","CIRCLE_PR_REPONAME","CIRCLE_PR_USERNAME","CIRCLE_COMPARE_URL","CIRCLE_WORKFLOW_ID","CIRCLE_WORKFLOW_WORKSPACE_ID","CIRCLE_PULL_REQUEST","CIRCLE_REPOSITORY_URL","CI_PULL_REQUEST","CIRCLE_NODE_INDEX","CIRCLE_NODE_TOTAL"]),codeshipBasic:u(["CI_BUILD_ID","CI_REPO_NAME","CI_BUILD_URL","CI_PROJECT_ID","CI_BUILD_NUMBER","CI_PULL_REQUEST"]),codeshipPro:u(["CI_BUILD_ID","CI_REPO_NAME","CI_PROJECT_ID"]),concourse:u(["BUILD_ID","BUILD_NAME","BUILD_JOB_NAME","BUILD_PIPELINE_NAME","BUILD_TEAM_NAME","ATC_EXTERNAL_URL"]),codeFresh:u(["CF_BUILD_ID","CF_BUILD_URL","CF_CURRENT_ATTEMPT","CF_STEP_NAME","CF_PIPELINE_NAME","CF_PIPELINE_TRIGGER_ID","CF_PULL_REQUEST_ID","CF_PULL_REQUEST_IS_FORK","CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_TARGET"]),drone:u(["DRONE_JOB_NUMBER","DRONE_BUILD_LINK","DRONE_BUILD_NUMBER","DRONE_PULL_REQUEST"]),githubActions:u(["GITHUB_WORKFLOW","GITHUB_ACTION","GITHUB_EVENT_NAME","GITHUB_RUN_ID","GITHUB_RUN_ATTEMPT","GITHUB_REPOSITORY"]),gitlab:u(["CI_PIPELINE_ID","CI_PIPELINE_URL","CI_BUILD_ID","CI_JOB_ID","CI_JOB_URL","CI_JOB_NAME","CI_NODE_INDEX","CI_NODE_TOTAL","GITLAB_HOST","CI_PROJECT_ID","CI_PROJECT_URL","CI_REPOSITORY_URL","CI_ENVIRONMENT_URL","CI_DEFAULT_BRANCH","RUN_ATTEMPT"]),goCD:u(["GO_SERVER_URL","GO_ENVIRONMENT_NAME","GO_PIPELINE_NAME","GO_PIPELINE_COUNTER","GO_PIPELINE_LABEL","GO_STAGE_NAME","GO_STAGE_COUNTER","GO_JOB_NAME","GO_TRIGGER_USER","GO_REVISION","GO_TO_REVISION","GO_FROM_REVISION","GO_MATERIAL_HAS_CHANGED"]),googleCloud:u(["BUILD_ID","PROJECT_ID","REPO_NAME","BRANCH_NAME","TAG_NAME","COMMIT_SHA","SHORT_SHA"]),jenkins:u(["BUILD_ID","BUILD_URL","BUILD_NUMBER","ghprbPullId"]),semaphore:u(["SEMAPHORE_BRANCH_ID","SEMAPHORE_BUILD_NUMBER","SEMAPHORE_CURRENT_JOB","SEMAPHORE_CURRENT_THREAD","SEMAPHORE_EXECUTABLE_UUID","SEMAPHORE_GIT_BRANCH","SEMAPHORE_GIT_DIR","SEMAPHORE_GIT_REF","SEMAPHORE_GIT_REF_TYPE","SEMAPHORE_GIT_REPO_SLUG","SEMAPHORE_GIT_SHA","SEMAPHORE_GIT_URL","SEMAPHORE_JOB_COUNT","SEMAPHORE_JOB_ID","SEMAPHORE_JOB_NAME","SEMAPHORE_JOB_UUID","SEMAPHORE_PIPELINE_ID","SEMAPHORE_PLATFORM","SEMAPHORE_PROJECT_DIR","SEMAPHORE_PROJECT_HASH_ID","SEMAPHORE_PROJECT_ID","SEMAPHORE_PROJECT_NAME","SEMAPHORE_PROJECT_UUID","SEMAPHORE_REPO_SLUG","SEMAPHORE_TRIGGER_SOURCE","SEMAPHORE_WORKFLOW_ID","PULL_REQUEST_NUMBER"]),shippable:u(["SHIPPABLE_BUILD_ID","SHIPPABLE_BUILD_NUMBER","SHIPPABLE_COMMIT_RANGE","SHIPPABLE_CONTAINER_NAME","SHIPPABLE_JOB_ID","SHIPPABLE_JOB_NUMBER","SHIPPABLE_REPO_SLUG","IS_FORK","IS_GIT_TAG","IS_PRERELEASE","IS_RELEASE","REPOSITORY_URL","REPO_FULL_NAME","REPO_NAME","BUILD_URL","BASE_BRANCH","HEAD_BRANCH","IS_PULL_REQUEST","PULL_REQUEST","PULL_REQUEST_BASE_BRANCH","PULL_REQUEST_REPO_FULL_NAME"]),teamcity:null,teamfoundation:u(["BUILD_BUILDID","BUILD_BUILDNUMBER","BUILD_CONTAINERID"]),travis:u(["TRAVIS_JOB_ID","TRAVIS_BUILD_ID","TRAVIS_BUILD_WEB_URL","TRAVIS_REPO_SLUG","TRAVIS_JOB_NUMBER","TRAVIS_EVENT_TYPE","TRAVIS_COMMIT_RANGE","TRAVIS_BUILD_NUMBER","TRAVIS_PULL_REQUEST","TRAVIS_PULL_REQUEST_BRANCH","TRAVIS_PULL_REQUEST_SHA"]),wercker:null,netlify:u(["BUILD_ID","CONTEXT","URL","DEPLOY_URL","DEPLOY_PRIME_URL","DEPLOY_ID"]),layerci:u(["LAYERCI_JOB_ID","LAYERCI_RUNNER_ID","RETRY_INDEX","LAYERCI_PULL_REQUEST","LAYERCI_REPO_NAME","LAYERCI_REPO_OWNER","LAYERCI_BRANCH","GIT_TAG"])}),st=()=>{let{env:e}=process;return{appveyor:{sha:e.APPVEYOR_REPO_COMMIT,branch:e.APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH||e.APPVEYOR_REPO_BRANCH,message:Kr(`
2
- `,e.APPVEYOR_REPO_COMMIT_MESSAGE,e.APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED),authorName:e.APPVEYOR_REPO_COMMIT_AUTHOR,authorEmail:e.APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL},awsCodeBuild:{sha:e.CODEBUILD_RESOLVED_SOURCE_VERSION,remoteOrigin:e.CODEBUILD_SOURCE_REPO_URL},azure:{sha:e.BUILD_SOURCEVERSION,branch:e.BUILD_SOURCEBRANCHNAME,message:e.BUILD_SOURCEVERSIONMESSAGE,authorName:e.BUILD_SOURCEVERSIONAUTHOR,authorEmail:e.BUILD_REQUESTEDFOREMAIL},bamboo:{sha:e.bamboo_planRepository_revision,branch:e.bamboo_planRepository_branch,authorName:e.bamboo_planRepository_username,remoteOrigin:e.bamboo_planRepository_repositoryURL},bitbucket:{sha:e.BITBUCKET_COMMIT,branch:e.BITBUCKET_BRANCH},buildkite:{sha:e.BUILDKITE_COMMIT,branch:e.BUILDKITE_BRANCH,message:e.BUILDKITE_MESSAGE,authorName:e.BUILDKITE_BUILD_CREATOR,authorEmail:e.BUILDKITE_BUILD_CREATOR_EMAIL,remoteOrigin:e.BUILDKITE_REPO,defaultBranch:e.BUILDKITE_PIPELINE_DEFAULT_BRANCH},circle:{sha:e.CIRCLE_SHA1,branch:e.CIRCLE_BRANCH,authorName:e.CIRCLE_USERNAME,remoteOrigin:e.CIRCLE_REPOSITORY_URL},codeshipBasic:{sha:e.CI_COMMIT_ID,branch:e.CI_BRANCH,message:e.CI_COMMIT_MESSAGE,authorName:e.CI_COMMITTER_NAME,authorEmail:e.CI_COMMITTER_EMAIL},codeshipPro:{sha:e.CI_COMMIT_ID,branch:e.CI_BRANCH,message:e.CI_COMMIT_MESSAGE,authorName:e.CI_COMMITTER_NAME,authorEmail:e.CI_COMMITTER_EMAIL},codeFresh:{sha:e.CF_REVISION,branch:e.CF_BRANCH,message:e.CF_COMMIT_MESSAGE,authorName:e.CF_COMMIT_AUTHOR},drone:{sha:e.DRONE_COMMIT_SHA,branch:e.DRONE_SOURCE_BRANCH,message:e.DRONE_COMMIT_MESSAGE,authorName:e.DRONE_COMMIT_AUTHOR,authorEmail:e.DRONE_COMMIT_AUTHOR_EMAIL,remoteOrigin:e.DRONE_GIT_HTTP_URL,defaultBranch:e.DRONE_REPO_BRANCH},githubActions:{sha:e.GITHUB_SHA,branch:e.GH_BRANCH||e.GITHUB_REF,defaultBranch:e.GITHUB_BASE_REF,remoteBranch:e.GITHUB_HEAD_REF,runAttempt:e.GITHUB_RUN_ATTEMPT},gitlab:{sha:e.CI_COMMIT_SHA,branch:e.CI_COMMIT_REF_NAME,message:e.CI_COMMIT_MESSAGE,authorName:e.GITLAB_USER_NAME,authorEmail:e.GITLAB_USER_EMAIL,remoteOrigin:e.CI_REPOSITORY_URL,defaultBranch:e.CI_DEFAULT_BRANCH},googleCloud:{sha:e.COMMIT_SHA,branch:e.BRANCH_NAME},jenkins:{sha:e.GIT_COMMIT,branch:e.GIT_BRANCH},semaphore:{sha:e.SEMAPHORE_GIT_SHA,branch:e.SEMAPHORE_GIT_BRANCH,remoteOrigin:e.SEMAPHORE_GIT_REPO_SLUG},shippable:{sha:e.COMMIT,branch:e.BRANCH,message:e.COMMIT_MESSAGE,authorName:e.COMMITTER},snap:null,teamcity:null,teamfoundation:{sha:e.BUILD_SOURCEVERSION,branch:e.BUILD_SOURCEBRANCHNAME,message:e.BUILD_SOURCEVERSIONMESSAGE,authorName:e.BUILD_SOURCEVERSIONAUTHOR},travis:{sha:e.TRAVIS_PULL_REQUEST_SHA||e.TRAVIS_COMMIT,branch:e.TRAVIS_PULL_REQUEST_BRANCH||e.TRAVIS_BRANCH,message:e.TRAVIS_COMMIT_MESSAGE},wercker:null,netlify:{sha:e.COMMIT_REF,branch:e.BRANCH,remoteOrigin:e.REPOSITORY_URL},layerci:{sha:e.GIT_COMMIT,branch:e.LAYERCI_BRANCH,message:e.GIT_COMMIT_TITLE}}},he=e=>{let r=Ue();return r?(0,m.chain)(e()).get(r).value():{}};function it(){return(0,m.chain)(Te()).omitBy(m.isNull).keys().value()}function at(e){return e&&it().includes(e)}function Ue(){let e=nt();return F("detected CI provider name: %s",e),e||null}function ct(){return he(Te)}function Oe(){return he(st)}function Pe(e){let r=ct(),t=Ue(),o=ut(e,t);return F("detected CI provider: %s",t),F("detected CI params: %O",r),F("detected CI build ID: %o",o),{params:r,provider:t,ciBuildId:o}}function ut(e,r){return e?{source:"user",value:e}:at(r)?{source:"server",value:null}:{source:"random",value:`auto:${te()}`}}var Se=require("@currents/commit-info"),ye=require("lodash");var k=require("lodash");var oe=i.extend("ci-git");function Ae(e){oe("git commit existing info: %O",e);let r=Oe();oe("commit info from provider environment variables: %O",r);let t=(0,k.transform)(e,(o,n,a)=>{let p=n||(r?r[a]:null);return o[a]=(0,k.defaultTo)(p,null)});return oe("combined git and environment variables from provider: %O",t),t}var pt=async()=>{let e=await(0,Se.commitInfo)();return Ae({branch:e.branch,remoteOrigin:e.remote,authorEmail:e.email,authorName:e.author,message:e.message,sha:e.sha,ghaEventData:e.ghaEventData})},De=(0,ye.memoize)(pt);var Le=c(require("getos")),Ne=require("lodash"),C=require("os"),Be=require("util"),mt=async()=>{if((0,C.platform)()==="linux")try{let e=await(0,Be.promisify)(Le.default)();return"dist"in e&&"release"in e?[e.dist,e.release].join(" - "):(0,C.release)()}catch{return(0,C.release)()}return(0,C.release)()},lt=async()=>{let e=await mt();return{osName:(0,C.platform)(),osVersion:e,osCpus:[],osMemory:{free:(0,C.freemem)(),total:(0,C.totalmem)()}}},be=(0,Ne.memoize)(lt);var xe={name:"@currents/cmd",version:"1.9.6",main:"./dist/index.js",author:{name:"Currents Software Inc",email:"hello@currents.dev"},license:"MIT",repository:{type:"git",url:"https://github.com/currents-dev/currents-reporter"},description:"Currents CLI tools",scripts:{test:"vitest",rm:"rimraf dist",lint:'TIMING=1 eslint "**/*.ts*"',types:"tsc --noEmit",build:"tsup-node --minify --dts",dev:"tsup-node --watch --dts",release:"release-it","publish:npm":"npm run rm && npm run build && ./publish.js"},devDependencies:{"@jest/reporters":"^29.7.0","@jest/types":"^29.6.3","@release-it/conventional-changelog":"^10.0.1","release-it":"^19.2.4","@types/archiver":"^6.0.3","@types/async-retry":"^1.4.9","@types/debug":"^4.1.12","@types/fs-extra":"^11.0.4","@types/getos":"^3.0.4","@types/lodash":"^4.17.16","@types/node":"^22.13.14","@types/proxy-from-env":"^1.0.4","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@types/unzipper":"^0.10.11","@types/uuid":"^10.0.0","@types/xml2js":"^0.4.14","@types/xxhashjs":"^0.2.4",jest:"^29.7.0",rimraf:"^6.0.1",tsup:"^8.3.5",typescript:"^5.9.3",vitest:"^2.1.9"},dependencies:{"@commander-js/extra-typings":"^12.1.0","@currents/commit-info":"1.0.1-beta.0",archiver:"^7.0.1","async-retry":"^1.3.3",axios:"^1.13.6","axios-retry":"^4.5.0",chalk:"^4.1.2",commander:"^13.1.0",debug:"^4.4.0",dotenv:"^17.2.3",execa:"^9.5.1","fs-extra":"^11.3.4",getos:"^3.2.1",globby:"^11.1.0","https-proxy-agent":"^7.0.4","jest-cli":"^30.2.0","jest-config":"^29.7.0",lodash:"^4.17.23",nanoid:"^3.3.8","pretty-ms":"^7.0.1","proxy-from-env":"^1.1.0",semver:"^7.7.1","source-map-support":"^0.5.21",tmp:"^0.2.5","tmp-promise":"^3.0.3","ts-pattern":"^5.8.0",unzipper:"^0.12.3",uuid:"^13.0.0",xml2js:"^0.6.2",xxhashjs:"^0.2.2"},bin:{currents:"./dist/bin/index.js","currents-cli":"./dist/bin/index.js"},files:["dist","!**/*.map","!**/*/*.map"],keywords:["cloud test dashboard","test reporter","test results","currents","currents dashboard","ci"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js",types:"./dist/index.d.ts"},"./discovery/jest":{import:"./dist/services/upload/discovery/jest/reporter.js",require:"./dist/services/upload/discovery/jest/reporter.js",types:"./dist/services/upload/discovery/jest/reporter.d.ts"},"./package.json":"./package.json"},"release-it":{npm:{publish:!1},github:{release:!0,releaseName:"${npm.name} v${version}"},plugins:{"@release-it/conventional-changelog":{preset:"angular",header:"# Changelog",ignoreVersion:!0,infile:"./CHANGELOG.md"}},git:{commitMessage:"chore: release ${npm.name} v${version}",tagName:"${npm.name}-v${version}"}}};var H=xe.version;function dt(e,r){if(!e)return e;let t={...e};return r.forEach(o=>{t.hasOwnProperty(o)&&(t[o]="*****")}),t}function x(e){return dt(e,["recordKey","key"])}var Et=[];function ne(e){Et.push(e)}var f=c(require("chalk")),L=c(require("util"));var ve=[],Me=[];var we=(...e)=>{let r=L.default.format(...e);ne(r),console.log(r)},ft=(...e)=>{let r=L.default.format(...e);ne(r),console.error(r)},se=we,l=(...e)=>{let r=L.default.format(...e);return Me.push(r),i("WARNING: ",r),we(f.default.bgYellow.black(" WARNING "),r)};var d=(...e)=>{let r=L.default.format(...Rt(e));return ve.push(r),i("ERROR: ",L.default.format(...e)),ft(f.default.bgRed.white(" ERROR "),r)};var Rt=e=>e.map(r=>r instanceof Error?r.message:r),G=(e=2)=>console.log(Array(e).fill("").join(`
2
+ `,e.APPVEYOR_REPO_COMMIT_MESSAGE,e.APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED),authorName:e.APPVEYOR_REPO_COMMIT_AUTHOR,authorEmail:e.APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL},awsCodeBuild:{sha:e.CODEBUILD_RESOLVED_SOURCE_VERSION,remoteOrigin:e.CODEBUILD_SOURCE_REPO_URL},azure:{sha:e.BUILD_SOURCEVERSION,branch:e.BUILD_SOURCEBRANCHNAME,message:e.BUILD_SOURCEVERSIONMESSAGE,authorName:e.BUILD_SOURCEVERSIONAUTHOR,authorEmail:e.BUILD_REQUESTEDFOREMAIL},bamboo:{sha:e.bamboo_planRepository_revision,branch:e.bamboo_planRepository_branch,authorName:e.bamboo_planRepository_username,remoteOrigin:e.bamboo_planRepository_repositoryURL},bitbucket:{sha:e.BITBUCKET_COMMIT,branch:e.BITBUCKET_BRANCH},buildkite:{sha:e.BUILDKITE_COMMIT,branch:e.BUILDKITE_BRANCH,message:e.BUILDKITE_MESSAGE,authorName:e.BUILDKITE_BUILD_CREATOR,authorEmail:e.BUILDKITE_BUILD_CREATOR_EMAIL,remoteOrigin:e.BUILDKITE_REPO,defaultBranch:e.BUILDKITE_PIPELINE_DEFAULT_BRANCH},circle:{sha:e.CIRCLE_SHA1,branch:e.CIRCLE_BRANCH,authorName:e.CIRCLE_USERNAME,remoteOrigin:e.CIRCLE_REPOSITORY_URL},codeshipBasic:{sha:e.CI_COMMIT_ID,branch:e.CI_BRANCH,message:e.CI_COMMIT_MESSAGE,authorName:e.CI_COMMITTER_NAME,authorEmail:e.CI_COMMITTER_EMAIL},codeshipPro:{sha:e.CI_COMMIT_ID,branch:e.CI_BRANCH,message:e.CI_COMMIT_MESSAGE,authorName:e.CI_COMMITTER_NAME,authorEmail:e.CI_COMMITTER_EMAIL},codeFresh:{sha:e.CF_REVISION,branch:e.CF_BRANCH,message:e.CF_COMMIT_MESSAGE,authorName:e.CF_COMMIT_AUTHOR},drone:{sha:e.DRONE_COMMIT_SHA,branch:e.DRONE_SOURCE_BRANCH,message:e.DRONE_COMMIT_MESSAGE,authorName:e.DRONE_COMMIT_AUTHOR,authorEmail:e.DRONE_COMMIT_AUTHOR_EMAIL,remoteOrigin:e.DRONE_GIT_HTTP_URL,defaultBranch:e.DRONE_REPO_BRANCH},githubActions:{sha:e.GITHUB_SHA,branch:e.GH_BRANCH||e.GITHUB_REF,defaultBranch:e.GITHUB_BASE_REF,remoteBranch:e.GITHUB_HEAD_REF,runAttempt:e.GITHUB_RUN_ATTEMPT},gitlab:{sha:e.CI_COMMIT_SHA,branch:e.CI_COMMIT_REF_NAME,message:e.CI_COMMIT_MESSAGE,authorName:e.GITLAB_USER_NAME,authorEmail:e.GITLAB_USER_EMAIL,remoteOrigin:e.CI_REPOSITORY_URL,defaultBranch:e.CI_DEFAULT_BRANCH},googleCloud:{sha:e.COMMIT_SHA,branch:e.BRANCH_NAME},jenkins:{sha:e.GIT_COMMIT,branch:e.GIT_BRANCH},semaphore:{sha:e.SEMAPHORE_GIT_SHA,branch:e.SEMAPHORE_GIT_BRANCH,remoteOrigin:e.SEMAPHORE_GIT_REPO_SLUG},shippable:{sha:e.COMMIT,branch:e.BRANCH,message:e.COMMIT_MESSAGE,authorName:e.COMMITTER},snap:null,teamcity:null,teamfoundation:{sha:e.BUILD_SOURCEVERSION,branch:e.BUILD_SOURCEBRANCHNAME,message:e.BUILD_SOURCEVERSIONMESSAGE,authorName:e.BUILD_SOURCEVERSIONAUTHOR},travis:{sha:e.TRAVIS_PULL_REQUEST_SHA||e.TRAVIS_COMMIT,branch:e.TRAVIS_PULL_REQUEST_BRANCH||e.TRAVIS_BRANCH,message:e.TRAVIS_COMMIT_MESSAGE},wercker:null,netlify:{sha:e.COMMIT_REF,branch:e.BRANCH,remoteOrigin:e.REPOSITORY_URL},layerci:{sha:e.GIT_COMMIT,branch:e.LAYERCI_BRANCH,message:e.GIT_COMMIT_TITLE}}},he=e=>{let r=Ue();return r?(0,m.chain)(e()).get(r).value():{}};function it(){return(0,m.chain)(Te()).omitBy(m.isNull).keys().value()}function at(e){return e&&it().includes(e)}function Ue(){let e=nt();return F("detected CI provider name: %s",e),e||null}function ct(){return he(Te)}function Oe(){return he(st)}function Pe(e){let r=ct(),t=Ue(),o=ut(e,t);return F("detected CI provider: %s",t),F("detected CI params: %O",r),F("detected CI build ID: %o",o),{params:r,provider:t,ciBuildId:o}}function ut(e,r){return e?{source:"user",value:e}:at(r)?{source:"server",value:null}:{source:"random",value:`auto:${te()}`}}var Se=require("@currents/commit-info"),ye=require("lodash");var k=require("lodash");var oe=i.extend("ci-git");function Ae(e){oe("git commit existing info: %O",e);let r=Oe();oe("commit info from provider environment variables: %O",r);let t=(0,k.transform)(e,(o,n,a)=>{let p=n||(r?r[a]:null);return o[a]=(0,k.defaultTo)(p,null)});return oe("combined git and environment variables from provider: %O",t),t}var pt=async()=>{let e=await(0,Se.commitInfo)();return Ae({branch:e.branch,remoteOrigin:e.remote,authorEmail:e.email,authorName:e.author,message:e.message,sha:e.sha,ghaEventData:e.ghaEventData})},De=(0,ye.memoize)(pt);var Le=c(require("getos")),Ne=require("lodash"),C=require("os"),Be=require("util"),mt=async()=>{if((0,C.platform)()==="linux")try{let e=await(0,Be.promisify)(Le.default)();return"dist"in e&&"release"in e?[e.dist,e.release].join(" - "):(0,C.release)()}catch{return(0,C.release)()}return(0,C.release)()},lt=async()=>{let e=await mt();return{osName:(0,C.platform)(),osVersion:e,osCpus:[],osMemory:{free:(0,C.freemem)(),total:(0,C.totalmem)()}}},be=(0,Ne.memoize)(lt);var xe={name:"@currents/cmd",version:"1.9.8",main:"./dist/index.js",author:{name:"Currents Software Inc",email:"hello@currents.dev"},license:"MIT",repository:{type:"git",url:"https://github.com/currents-dev/currents-reporter"},description:"Currents CLI tools",scripts:{test:"vitest",rm:"rimraf dist",lint:'TIMING=1 eslint "**/*.ts*"',types:"tsc --noEmit",build:"tsup-node --minify --dts",dev:"tsup-node --watch --dts",release:"release-it","publish:npm":"npm run rm && npm run build && ./publish.js"},devDependencies:{"@jest/reporters":"^29.7.0","@jest/types":"^29.6.3","@release-it/conventional-changelog":"^10.0.1","release-it":"^19.2.4","@types/archiver":"^6.0.3","@types/async-retry":"^1.4.9","@types/debug":"^4.1.12","@types/fs-extra":"^11.0.4","@types/getos":"^3.0.4","@types/lodash":"^4.17.16","@types/node":"^22.13.14","@types/proxy-from-env":"^1.0.4","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@types/unzipper":"^0.10.11","@types/uuid":"^10.0.0","@types/xml2js":"^0.4.14","@types/xxhashjs":"^0.2.4",jest:"^29.7.0",rimraf:"^6.0.1",tsup:"^8.3.5",typescript:"^5.9.3",vitest:"^2.1.9"},dependencies:{"@commander-js/extra-typings":"^13.1.0","@currents/commit-info":"1.0.1-beta.0",archiver:"^7.0.1","async-retry":"^1.3.3",axios:"1.13.6","axios-retry":"4.5.0",chalk:"^4.1.2",commander:"^13.1.0",debug:"^4.4.0",dotenv:"^17.2.3",execa:"^9.5.1","fs-extra":"^11.3.4",getos:"^3.2.1",globby:"^11.1.0","https-proxy-agent":"^7.0.4","jest-cli":"^30.2.0","jest-config":"^30.3.0",lodash:"^4.17.23",nanoid:"^3.3.8","pretty-ms":"^7.0.1","proxy-from-env":"^1.1.0",semver:"^7.7.1","source-map-support":"^0.5.21",tmp:"^0.2.5","tmp-promise":"^3.0.3","ts-pattern":"^5.8.0",unzipper:"^0.12.3",uuid:"11.1.0",xml2js:"^0.6.2",xxhashjs:"^0.2.2"},bin:{currents:"./dist/bin/index.js","currents-cli":"./dist/bin/index.js"},files:["dist","!**/*.map","!**/*/*.map"],keywords:["cloud test dashboard","test reporter","test results","currents","currents dashboard","ci"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js",types:"./dist/index.d.ts"},"./discovery/jest":{import:"./dist/services/upload/discovery/jest/reporter.js",require:"./dist/services/upload/discovery/jest/reporter.js",types:"./dist/services/upload/discovery/jest/reporter.d.ts"},"./package.json":"./package.json"},"release-it":{npm:{publish:!1},github:{release:!0,releaseName:"${npm.name} v${version}"},plugins:{"@release-it/conventional-changelog":{preset:"angular",header:"# Changelog",ignoreVersion:!0,infile:"./CHANGELOG.md"}},git:{commitMessage:"chore: release ${npm.name} v${version}",tagName:"${npm.name}-v${version}"}}};var H=xe.version;function dt(e,r){if(!e)return e;let t={...e};return r.forEach(o=>{t.hasOwnProperty(o)&&(t[o]="*****")}),t}function x(e){return dt(e,["recordKey","key"])}var Et=[];function ne(e){Et.push(e)}var f=c(require("chalk")),L=c(require("util"));var ve=[],Me=[];var we=(...e)=>{let r=L.default.format(...e);ne(r),console.log(r)},ft=(...e)=>{let r=L.default.format(...e);ne(r),console.error(r)},se=we,l=(...e)=>{let r=L.default.format(...e);return Me.push(r),i("WARNING: ",r),we(f.default.bgYellow.black(" WARNING "),r)};var d=(...e)=>{let r=L.default.format(...Rt(e));return ve.push(r),i("ERROR: ",L.default.format(...e)),ft(f.default.bgRed.white(" ERROR "),r)};var Rt=e=>e.map(r=>r instanceof Error?r.message:r),G=(e=2)=>console.log(Array(e).fill("").join(`
3
3
  `)),Ao=f.default.cyan,So=f.default.blueBright,yo=f.default.red,Do=f.default.yellow,Lo=f.default.green,No=f.default.gray,Bo=f.default.white,bo=f.default.black,xo=f.default.magenta,N=f.default.dim,vo=f.default.bold;var ie=c(require("fs-extra")),Fe=require("path"),It=require("uuid");async function S(e){try{return await ie.default.readJson(e)}catch(r){throw d("Error while reading JSON file: %s",e,r),d}}async function ae(e,r){try{return await ie.default.writeFile(e,r,"utf8"),e}catch(t){throw d(`Error writing file at ${e}:`,t),t}}var Ct=c(require("crypto"));var Nr=c(require("axios")),de=c(require("fs-extra")),z=c(require("path")),Br=c(require("semver"));var tr=c(require("lodash"));var $e=c(require("axios")),Ye=c(require("axios-retry")),qe=c(require("lodash"));var ke=()=>process.env.CURRENTS_API_URL??"https://cy.currents.dev",He=()=>process.env.CURRENTS_REST_API_URL??"https://api.currents.dev",Ge=()=>3e4;var ce=require("axios"),ue=c(require("pretty-ms"));var je=i.extend("http"),j=e=>[3*1e3,15*1e3,30*1e3][e-1],Ve=e=>(je("isRetriableError: %o",{message:e.message,code:"code"in e?e.code:void 0,status:"response"in e?e.response?.status:void 0,headers:"response"in e?e.response?.headers:void 0,data:"response"in e?e.response?.data:void 0,isAxiosError:(0,ce.isAxiosError)(e)}),"code"in e&&e.code&&["ECONNABORTED","ECONNREFUSED","ECONNRESET","ETIMEDOUT","ENETRESET"].includes(e.code)?!0:(0,ce.isAxiosError)(e)?[429,502,503,504].includes(e.response?.status??0):!1),V=()=>3;function Ke(e,r,t){je("Network request '%s' failed: '%s'. Next attempt is in %s (%d/%d).",`${t.method?.toUpperCase()} ${t.url}`,r.message,(0,ue.default)(j(e)),e,V()),l("Network request '%s' failed: '%s'. Next attempt is in %s (%d/%d).",`${t.method?.toUpperCase()} ${t.url}`,r.message,(0,ue.default)(j(e)),e,V())}var pe=i.extend("http");var me={api:null,restApi:null};function Tt(e){let r=e==="api"?ke():He();pe("client base url: %s",r);let t=$e.default.create({baseURL:r,timeout:Ge(),transitional:{clarifyTimeoutError:!0}});return t.interceptors.request.use(o=>{let n=o["axios-retry"]?.retryCount??0;o.headers.set({"x-cmd-version":H}),o.headers.get("Content-Type")||o.headers.set("Content-Type","application/json");let a={...qe.default.pick(o,"method","url","headers"),baseURL:r,data:Buffer.isBuffer(o.data)?"buffer":o.data,params:o.params};return n?pe("network request retry: %o",Je({...a,baseURL:r,isRetry:!0})):pe("network request: %o",Je(a)),o}),(0,Ye.default)(t,{retries:V(),retryCondition:Ve,retryDelay:j,shouldResetTimeout:!0,onRetry:Ke}),t}function Qe(e){return me[e]===null&&(me[e]=Tt(e)),me[e]}function Je(e){return{method:e.method,baseURL:e.baseURL,url:e.url,data:e.isRetry?"<retry>":ht(e.data),params:e.isRetry?"<retry>":e.params,headers:{...e.headers,Authorization:"Bearer ***","x-currents-key":"***"}}}function ht(e){return e?.results?.raw?{...e,results:{...e.results,raw:"***"}}:e}var Xe=require("axios"),Ze=c(require("lodash")),E=require("ts-pattern");function er(e){(0,E.match)(e).when(Xe.isAxiosError,Ut).otherwise(()=>{l("Unexpected error while sending network request: %s",e)})}function Ut(e){return(0,E.match)(e).with({code:"ECONNABORTED"},()=>{l("Network connection aborted")}).with({code:"ECONNREFUSED"},()=>{l("Network connection aborted")}).with({code:"ECONNRESET"},()=>{l("Network connection reset")}).with({code:"ETIMEDOUT"},()=>{l("Network connection timeout")}).with({response:E.P.not(E.P.nullish)},r=>{Ot(r,{status:r.response.status,data:r.response.data})}).otherwise(r=>{l(`[currents] Unexpected network error: %s
4
4
  %O`,e.message,{method:e.response?.config.method,url:e.response?.config.url,status:e.response?.status,payload:e.response?.config.data})})}function Ot(e,{status:r,data:t}){(0,E.match)(r).with(401,()=>{l(`[currents] ${e.response?.config.method} ${e.response?.config.url}} - 401 Unauthorized Request from cloud service`)}).with(400,()=>{l(`[currents] ${e.response?.config.method} ${e.response?.config.url} - 400 Bad Request from cloud service:
5
5
  %o`,t)}).with(404,()=>{l(`[currents] ${e.response?.config.method} ${e.response?.config.url} - 404 Not Found from cloud service`)}).with(429,()=>{l(`[currents] ${e.response?.config.method} ${e.response?.config.url} - 429 Too Many Requests from cloud service`)}).with(422,()=>{Pt(e,t)}).otherwise(()=>{l(`[currents] Unexpected network response: %s
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@currents/cmd",
3
- "version": "1.9.6",
3
+ "version": "1.9.8",
4
4
  "main": "./dist/index.js",
5
5
  "author": {
6
6
  "name": "Currents Software Inc",
@@ -48,12 +48,12 @@
48
48
  "vitest": "^2.1.9"
49
49
  },
50
50
  "dependencies": {
51
- "@commander-js/extra-typings": "^12.1.0",
51
+ "@commander-js/extra-typings": "^13.1.0",
52
52
  "@currents/commit-info": "1.0.1-beta.0",
53
53
  "archiver": "^7.0.1",
54
54
  "async-retry": "^1.3.3",
55
- "axios": "^1.13.6",
56
- "axios-retry": "^4.5.0",
55
+ "axios": "1.13.6",
56
+ "axios-retry": "4.5.0",
57
57
  "chalk": "^4.1.2",
58
58
  "commander": "^13.1.0",
59
59
  "debug": "^4.4.0",
@@ -64,7 +64,7 @@
64
64
  "globby": "^11.1.0",
65
65
  "https-proxy-agent": "^7.0.4",
66
66
  "jest-cli": "^30.2.0",
67
- "jest-config": "^29.7.0",
67
+ "jest-config": "^30.3.0",
68
68
  "lodash": "^4.17.23",
69
69
  "nanoid": "^3.3.8",
70
70
  "pretty-ms": "^7.0.1",
@@ -75,7 +75,7 @@
75
75
  "tmp-promise": "^3.0.3",
76
76
  "ts-pattern": "^5.8.0",
77
77
  "unzipper": "^0.12.3",
78
- "uuid": "^13.0.0",
78
+ "uuid": "11.1.0",
79
79
  "xml2js": "^0.6.2",
80
80
  "xxhashjs": "^0.2.2"
81
81
  },