snobu / destreamer

Save Microsoft Stream videos for offline enjoyment.
MIT License
2.36k stars 442 forks source link

Build failed on M1 Mac #476

Open AliZe198 opened 1 year ago

AliZe198 commented 1 year ago

Hi, I was following the instructions and steps from https://github.com/snobu/destreamer/issues/355. However, after this step https://github.com/snobu/destreamer/issues/355#issuecomment-813587363, I still get these errors.

OS: M1 Mac

Launch command used: npm i; npm run build

Transpiling TypeScript to JavaScript...
node_modules/puppeteer-core/lib/types.d.ts:1428:22 - error TS2589: Type instantiation is excessively deep and possibly infinite.

1428 export declare class ElementHandle<ElementType extends Node = Element> extends JSHandle<ElementType> {
                          ~~~~~~~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:1477:146 - error TS2304: Cannot find name 'Awaited'.

1477     ]> = EvaluateFunc<[ElementHandle<NodeFor<Selector>>, ...Params]>>(selector: Selector, pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                                                                                                      ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:1514:138 - error TS2304: Cannot find name 'Awaited'.

1514     ]> = EvaluateFunc<[Array<NodeFor<Selector>>, ...Params]>>(selector: Selector, pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                                                                                              ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:2148:169 - error TS2304: Cannot find name 'Awaited'.

2148     evaluateHandle<Params extends unknown[], Func extends EvaluateFunc<Params> = EvaluateFunc<Params>>(pageFunction: Func | string, ...args: Params): Promise<HandleFor<Awaited<ReturnType<Func>>>>;
                                                                                                                                                                             ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:2155:153 - error TS2304: Cannot find name 'Awaited'.

2155     evaluate<Params extends unknown[], Func extends EvaluateFunc<Params> = EvaluateFunc<Params>>(pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                                                                                                             ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:2195:146 - error TS2304: Cannot find name 'Awaited'.

2195     ]> = EvaluateFunc<[ElementHandle<NodeFor<Selector>>, ...Params]>>(selector: Selector, pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                                                                                                      ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:2219:138 - error TS2304: Cannot find name 'Awaited'.

2219     ]> = EvaluateFunc<[Array<NodeFor<Selector>>, ...Params]>>(selector: Selector, pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                                                                                              ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:2323:209 - error TS2304: Cannot find name 'Awaited'.

2323     waitForFunction<Params extends unknown[], Func extends EvaluateFunc<Params> = EvaluateFunc<Params>>(pageFunction: Func | string, options?: FrameWaitForFunctionOptions, ...args: Params): Promise<HandleFor<Awaited<ReturnType<Func>>>>;
                                                                                                                                                                                                                     ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:3133:68 - error TS2304: Cannot find name 'Awaited'.

3133         ]>>(pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                        ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:3142:78 - error TS2304: Cannot find name 'Awaited'.

3142         ]>>(pageFunction: Func | string, ...args: Params): Promise<HandleFor<Awaited<ReturnType<Func>>>>;
                                                                                  ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:4085:173 - error TS2304: Cannot find name 'Awaited'.

4085         evaluateHandle<Params extends unknown[], Func extends EvaluateFunc<Params> = EvaluateFunc<Params>>(pageFunction: Func | string, ...args: Params): Promise<HandleFor<Awaited<ReturnType<Func>>>>;
                                                                                                                                                                                 ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:4175:150 - error TS2304: Cannot find name 'Awaited'.

4175         ]> = EvaluateFunc<[ElementHandle<NodeFor<Selector>>, ...Params]>>(selector: Selector, pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                                                                                                          ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:4241:142 - error TS2304: Cannot find name 'Awaited'.

4241         ]> = EvaluateFunc<[Array<NodeFor<Selector>>, ...Params]>>(selector: Selector, pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                                                                                                  ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:5031:157 - error TS2304: Cannot find name 'Awaited'.

5031         evaluate<Params extends unknown[], Func extends EvaluateFunc<Params> = EvaluateFunc<Params>>(pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                                                                                                                 ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:5467:213 - error TS2304: Cannot find name 'Awaited'.

5467         waitForFunction<Params extends unknown[], Func extends EvaluateFunc<Params> = EvaluateFunc<Params>>(pageFunction: Func | string, options?: FrameWaitForFunctionOptions, ...args: Params): Promise<HandleFor<Awaited<ReturnType<Func>>>>;
                                                                                                                                                                                                                         ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:6799:162 - error TS2304: Cannot find name 'Awaited'.

6799              evaluate<Params extends unknown[], Func extends EvaluateFunc<Params> = EvaluateFunc<Params>>(pageFunction: Func | string, ...args: Params): Promise<Awaited<ReturnType<Func>>>;
                                                                                                                                                                      ~~~~~~~

node_modules/puppeteer-core/lib/types.d.ts:6812:178 - error TS2304: Cannot find name 'Awaited'.

6812              evaluateHandle<Params extends unknown[], Func extends EvaluateFunc<Params> = EvaluateFunc<Params>>(pageFunction: Func | string, ...args: Params): Promise<HandleFor<Awaited<ReturnType<Func>>>>;
                                                                                                                                                                                      ~~~~~~~

src/destreamer.ts:50:20 - error TS2503: Cannot find namespace 'puppeteer'.

50     const browser: puppeteer.Browser = await puppeteer.launch({
                      ~~~~~~~~~

src/destreamer.ts:60:17 - error TS2503: Cannot find namespace 'puppeteer'.

60     const page: puppeteer.Page = (await browser.pages())[0];
                   ~~~~~~~~~

src/destreamer.ts:83:42 - error TS2503: Cannot find namespace 'puppeteer'.

83     await browser.waitForTarget((target: puppeteer.Target) => target.url().endsWith('microsoftstream.com/'), { timeout: 150000 });
                                            ~~~~~~~~~

src/TokenCache.ts:60:20 - error TS2503: Cannot find namespace 'puppeteer'.

60     const browser: puppeteer.Browser = await puppeteer.launch({
                      ~~~~~~~~~

src/TokenCache.ts:71:17 - error TS2503: Cannot find namespace 'puppeteer'.

71     const page: puppeteer.Page = (await browser.pages())[0];
                   ~~~~~~~~~

src/TokenCache.ts:74:42 - error TS2503: Cannot find namespace 'puppeteer'.

74     await browser.waitForTarget((target: puppeteer.Target) => target.url().includes(videoId), { timeout: 30000 });
                                            ~~~~~~~~~

Found 23 errors.
eighteentee commented 1 year ago

Regardless of what Chromium-based browser you explicitly specify, the install still fails.

hakt0-r commented 1 year ago

This has been fixed in a pull request #490, comments can be found in #489.