bitpay/wallet

What is the correct version of node necessary to build this

BitLox opened this issue · 0 comments

Describe the bug
No documentation is given as to what the build environment should be set at
Could the devs PLEASE take 5 minutes of their time to relay to us what they used to build the releases?

To Reproduce
Try building from the instructions on the main page.
Invariably, some sort of error. Farthest I ever got was getting to npm run start and then it died in a flurry of TypeScript errors.
Here, built with node 10.16.2 as in the CI file:

npm i
npm run apply:bitpay
npm run start

Then we get this:

[00:22:38]  ionic-app-scripts 3.2.3 
[00:22:38]  watch started ... 
[00:22:38]  build dev started ... 
[00:22:38]  clean started ... 
[00:22:38]  clean finished in 3 ms 
[00:22:38]  copy started ... 
[00:22:38]  deeplinks started ... 
[00:22:39]  deeplinks finished in 874 ms 
[00:22:39]  transpile started ... 
Typescript Error
')' expected.
node_modules/@types/keyv/index.d.ts
*/
set(key: string, value: TValue, ttl?: number): Promise<true>;
/**
Typescript Error
'=' expected.
node_modules/@types/keyv/index.d.ts
set(key: string, value: TValue, ttl?: number): Promise<true>;
/**
* Deletes an entry.
Typescript Error
Unexpected token. A constructor, method, accessor, or property was expected.
node_modules/@types/keyv/index.d.ts
/**
* Deletes an entry.
*
Typescript Error
';' expected.
node_modules/@types/keyv/index.d.ts
/**
* Deletes an entry.
*
Typescript Error
'(' expected.
node_modules/@types/keyv/index.d.ts
/**
* Deletes an entry.
*
Typescript Error
Unexpected token. A constructor, method, accessor, or property was expected.
node_modules/@types/keyv/index.d.ts
/**
* Deletes an entry.
*
Typescript Error
Expression expected.
node_modules/@types/keyv/index.d.ts
/**
* Deletes an entry.
*
Typescript Error
',' expected.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
',' expected.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
Expression expected.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
';' expected.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
'(' expected.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
')' expected.
node_modules/@types/keyv/index.d.ts
/** Namespace for the current instance. */
namespace?: string | undefined;
/** A custom serialization function. */
Typescript Error
';' expected.
node_modules/@types/keyv/index.d.ts
/** Namespace for the current instance. */
namespace?: string | undefined;
/** A custom serialization function. */
Typescript Error
Declaration or statement expected.
node_modules/@types/keyv/index.d.ts
/** Namespace for the current instance. */
namespace?: string | undefined;
/** A custom serialization function. */
Typescript Error
'(' expected.
node_modules/@types/keyv/index.d.ts
/** Namespace for the current instance. */
namespace?: string | undefined;
/** A custom serialization function. */
Typescript Error
';' expected.
node_modules/@types/keyv/index.d.ts
/** A custom serialization function. */
serialize?: ((data: DeserializedData<TValue>) => string) | undefined;
/** A custom deserialization function. */
Typescript Error
'(' expected.
node_modules/@types/keyv/index.d.ts
/** A custom serialization function. */
serialize?: ((data: DeserializedData<TValue>) => string) | undefined;
/** A custom deserialization function. */
Typescript Error
Declaration or statement expected.
node_modules/@types/keyv/index.d.ts
serialize?: ((data: DeserializedData<TValue>) => string) | undefined;
/** A custom deserialization function. */
deserialize?: ((data: string) => DeserializedData<TValue> | undefined) | undefined;
Typescript Error
Cannot find name 'Required'.
node_modules/@types/keyv/index.d.ts
*/
opts: WithRequiredProperties<
Keyv.Options<TValue>,
Typescript Error
'TValue' only refers to a type, but is being used as a value here.
node_modules/@types/keyv/index.d.ts
set(key: string, value: TValue, ttl?: number): Promise<true>;
/**
* Deletes an entry.
Typescript Error
Object is possibly 'undefined'.
node_modules/@types/keyv/index.d.ts
/**
* Deletes an entry.
*
Typescript Error
The right-hand side of an arithmetic operation must be of type 'any', 'number' or an enum type.
node_modules/@types/keyv/index.d.ts
/**
* Deletes an entry.
*
Typescript Error
Cannot find name 'set'. Did you mean 'Set'?
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
Cannot find name 'key'. Did you mean 'Keyv'?
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
'string' only refers to a type, but is being used as a value here.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
Cannot find name 'value'.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
Cannot find name 'TValue'.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
Cannot find name 'ttl'.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
'number' only refers to a type, but is being used as a value here.
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
Value of type 'PromiseConstructor' is not callable. Did you mean to include 'new'?
node_modules/@types/keyv/index.d.ts
/** Delete all entries in the current namespace. */
clear(): Promise<void>;
}
Typescript Error
Cannot find name 'key'. Did you mean 'Keyv'?
node_modules/@types/keyv/index.d.ts
/** Namespace for the current instance. */
namespace?: string | undefined;
/** A custom serialization function. */
Typescript Error
The operand of a delete operator must be a property reference.
node_modules/@types/keyv/index.d.ts
/** Namespace for the current instance. */
namespace?: string | undefined;
/** A custom serialization function. */
Typescript Error
'string' only refers to a type, but is being used as a value here.
node_modules/@types/keyv/index.d.ts
/** Namespace for the current instance. */
namespace?: string | undefined;
/** A custom serialization function. */
Typescript Error
Value of type 'PromiseConstructor' is not callable. Did you mean to include 'new'?
node_modules/@types/keyv/index.d.ts
/** Namespace for the current instance. */
namespace?: string | undefined;
/** A custom serialization function. */
Typescript Error
Cannot find name 'clear'.
node_modules/@types/keyv/index.d.ts
/** A custom serialization function. */
serialize?: ((data: DeserializedData<TValue>) => string) | undefined;
/** A custom deserialization function. */
Typescript Error
Value of type 'PromiseConstructor' is not callable. Did you mean to include 'new'?
node_modules/@types/keyv/index.d.ts
/** A custom serialization function. */
serialize?: ((data: DeserializedData<TValue>) => string) | undefined;
/** A custom deserialization function. */
Typescript Error
Duplicate identifier 'BigNumber'.
node_modules/bignumber.js/bignumber.d.ts
*/
ROUNDING_MODE?: BigNumber.RoundingMode;
Typescript Error
Duplicate identifier 'BigNumber'.
node_modules/bignumber.js/bignumber.d.ts
* new BigNumber('123412421.234324', 5) // '607236.557696'
* ```
*
Typescript Error
Duplicate identifier 'BigNumber'.
node_modules/bignumber.js/bignumber.d.ts
undefined
undefined

Expected behavior
Project should build as described.

Desktop (please complete the following information):

  • OS: macOS 13.1 (22C65)
  • Browser: Safari
  • node: 6,7,8,9,10,11,12,13,14,16,19

Smartphone (please complete the following information):
Never got to this phase

Additional context
I based a previous project off this code and it has performed well.
Sadly, now that I want to update the project it seems this is verging on abandonware.

Are there ANY combinations of OS / Environment that are verified building?

I'd really like to contribute but am very frustrated with this.

I would be happy to contribute an extensively documented guide to building this but just need some info please.
(Yes I saw the circleci specifies 10.16.2 - it still does not work)