Good morning Roberts! This is such a conversation full of bright fame :-D --> Robert is an old German name that means “bright fame*.” *Just needed to celebrate somehow this coincidence.
This week I am on a business travel. But I can prepare something next week and document it as well. I'll send you an update. Best, Robert Am Sa., 7. Sept. 2024 um 18:55 Uhr schrieb Robert Burke <rob...@frantil.com >: > Hello Robert, Robert. > > Since we don't have a great deal of experience with Typescript any > assistance in documenting (or pointing to standard typescript > documentation) on how to hook up a development module to a separate project > that uses the module would be valuable. > > Aside, I should also do the same for the Go side, where the standard is a " > go.work" file that allows the development repo to overlay the modules > usage in a different project. > > Robert > > On Sat, Sep 7, 2024, 12:34 AM Robert Weber <mister.robert.we...@gmail.com> > wrote: > >> I investigated a bit more on the typescript patch compilation topic. It >> seems that the ttypescript module is not well maintained anymore. The last >> version is more than 2 years old. An alternative is ts-patch. This one >> seems to be maintained and working with typescript version >5.0.0. Hence, I >> suggest a migration to ts-patch. >> ts-patch migration steps: >> >> 1. install ts-patch >> 2. use tspc instead of ttsc to compile during build (build.sh) >> [image: image.png] >> 3. uninstall ttypescript >> >> I think we don't need to adapt the transformer plugins in tsconfig.json, >> since, the plugin options are the same as for ttypescript. Hope this works! >> >> I definitely need to setup my own dev environment. So I can build and >> link apache-beam to the starter project locally and test it on my own. I >> will do this as my next step :-). >> >> Am Fr., 6. Sept. 2024 um 18:24 Uhr schrieb Robert Bradshaw via dev < >> dev@beam.apache.org>: >> >>> On Fri, Sep 6, 2024 at 4:41 AM Robert Weber >>> <mister.robert.we...@gmail.com> wrote: >>> > >>> > Hi everyone, >>> > >>> > I am very interested in apache beam and watched a video on youtube >>> about the typescript SDK and that you might need some community support. >>> >>> Yes, definitely. >>> >>> > That's why I am reaching out. >>> >>> That'd be great! >>> >>> > I have a proven experience of 10 years in data engineering and data >>> analytics, as well as python and javascript/typescript experience. I am >>> interested to support from time to time. Is this still relevant? >>> > >>> > First of all I tested the starter project for typescript. >>> Unfortunately, it is broken. I'd like to fix it ( >>> https://beam.apache.org/get-started/quickstart/typescript/). So far I >>> have some findings regarding the beam-starter-typescript: >>> > >>> > The long module is breaking the build: >>> > >>> > >>> node_modules/google-gax/node_modules/@grpc/grpc-js/node_modules/long/umd/index.d.ts:1:18 >>> - error TS1479: The current file is a CommonJS module whose imports will >>> produce 'require' calls; however, the referenced file is an ECMAScript >>> module and cannot be imported with 'require'. Consider writing a dynamic >>> 'import("../index.js")' call instead. >>> > >>> > 1 import Long from "../index.js"; >>> > >>> > To fix this you can either set skibLibCheck to true in tsconfig.json, >>> which is rather a dirty one, or make sure that an already existing fix ( >>> https://github.com/dcodeIO/long.js/pull/1https://github.com/dcodeIO/long.js/pull/124 >>> 24) is implemented in all dependecies. Therefore, we can simply upgrade all >>> dependecies. >>> > >>> > After upgrading to typescript to a higher version then >5.0.0, e.g. >>> version 5.5.4 the ttypescript module is breaking the build: >>> > >>> > $ npm run build >>> > >>> > > apache-beam-starter-project@0.1.0 build >>> > > ttsc >>> > >>> > >>> /home/webnuke/Desktop/Projects/beam-starter-typescript/node_modules/ttypescript/lib/patchCreateProgram.js:84 >>> > tsm.createProgram = createProgram; >>> > ^ >>> > >>> > TypeError: Cannot set property createProgram of #<Object> which has >>> only a getter >>> > at patchCreateProgram >>> (/home/webnuke/Desktop/Projects/beam-starter-typescript/node_modules/ttypescript/lib/patchCreateProgram.js:84:23) >>> > at loadTypeScript >>> (/home/webnuke/Desktop/Projects/beam-starter-typescript/node_modules/ttypescript/lib/loadTypescript.js:21:56) >>> > at Object.<anonymous> >>> (/home/webnuke/Desktop/Projects/beam-starter-typescript/node_modules/ttypescript/lib/tsc.js:8:46) >>> > at Module._compile (node:internal/modules/cjs/loader:1364:14) >>> > at Module._extensions..js >>> (node:internal/modules/cjs/loader:1422:10) >>> > at Module.load (node:internal/modules/cjs/loader:1203:32) >>> > at Module._load (node:internal/modules/cjs/loader:1019:12) >>> > at Module.require (node:internal/modules/cjs/loader:1231:19) >>> > at require (node:internal/modules/helpers:177:18) >>> > at Object.<anonymous> >>> (/home/webnuke/Desktop/Projects/beam-starter-typescript/node_modules/ttypescript/bin/tsc:2:1) >>> > >>> > There is already a fix available. Thus, when we would move to >>> ttypescript version 1.1.15 it should be fixed. >>> > https://github.com/nonara/ts-patch/issues/93#issuecomment-1500795063 >>> > >>> > I just checked the version on github. In version 2.60-Snapshot the >>> ttypescript module is already on version 1.1.15. Could you just release a >>> new npm package. >>> >>> I tried upgrading typescript to 5.5.4, >>> >>> https://github.com/apache/beam/pull/32405/files >>> >>> Despite ttypescript being 1.1.15, I'm stiil getting the error above >>> when trying to build. >>> >>> I'll admit this is the area that I am the least comfortable with, >>> difficulties with packaging and versioning (and the various kinds of >>> modules) is what prevented me from releasing new mpms in the first >>> place (and then I got busy with other stuff and never got back to >>> this). Would greatly appreciate any help here! >>> >>> > Currently, the newest version on npm is 2.49. Afterwards we can adapt >>> the apache-beam version in the starter project. I assume then the starter >>> project would work again. >>> > >>> > I am looking forward to hearing from you! >>> > >>> > Best, >>> > Robert >>> > >>> >>