Meteor-Community-Packages / meteor-desktop

Build a Meteor's desktop client with hot code push.
MIT License
38 stars 12 forks source link

Meteor 3 & v4 #41

Open StorytellerCZ opened 2 months ago

StorytellerCZ commented 2 months ago

Now that Meteor 3 is out and replacement for this package is still in the discussion phase, I think it might be worth it for interested people to start discussion and work on meteor-desktop v4 that would start with migration to Meteor 3, upgrade of electron to the latest compatible version with Node 20 and probably should not miss #15 (took a dig at it in #40).

Thoughts? Volunteers?

github-actions[bot] commented 2 months ago

Thank you for submitting this issue!

We, the Members of Meteor Community Packages take every issue seriously. Our goal is to provide long-term lifecycles for packages and keep up with the newest changes in Meteor and the overall NodeJs/JavaScript ecosystem.

However, we contribute to these packages mostly in our free time. Therefore, we can't guarantee your issues to be solved within certain time.

If you think this issue is trivial to solve, don't hesitate to submit a pull request, too! We will accompany you in the process with reviews and hints on how to get development set up.

Please also consider sponsoring the maintainers of the package. If you don't know who is currently maintaining this package, just leave a comment and we'll let you know

a4xrbj1 commented 2 months ago

Sorry, only saw this now (I brought this up in the TypeScript issue).

I think this is a great plan to go ahead and I’m happy to test any RC/Beta version on my end (once it’s Meteor 3.x compatible).

But yes, we need to catch up to the many versions that ElectronJS is ahead.

awatson1978 commented 1 month ago

Hi.... I'm probably going to take a stab at this, as I have a new project that has desktop support as a requirement. Not going to be able to get to it until October. But I've gotten the hang of refactoring from Fibers to ES6 async/await, and this isn't looking too terribly difficult.

/me volunteers

awatson1978 commented 1 month ago

Disclaimer: No promises on Typescript support or Node 20 though.

Maybe let's think about meteor-desktop@3.1.0 that just replaces Fibers with ES6 async/await?

awatson1978 commented 1 month ago

Okay, refactoring the to async/await syntax was actually pretty straight forward. The dilemma is that the command line utility is trying to force the communitypackages:meteor-desktop-watcher and communitypackages:meteor-desktop-bundler packages at a specific version. So we need to publish the atmosphere packages, then update the command line utility, then publish a new version of meteor-desktop.

Todo

awatson1978 commented 1 month ago
Screenshot 2024-09-14 at 1 16 30 PM
StorytellerCZ commented 1 month ago

Awesome! I'll get around on publishing this now and then we can proceed on other things. Right now just the Fibers removal, no Meteor 3 support or anything else. One step at a time.

StorytellerCZ commented 1 month ago

@awatson1978 got this warning when publishing. Not an issue now, but needs to be fixed before moving to Meteor 3. image

StorytellerCZ commented 1 month ago

@awatson1978 everything seems to be working now. How would you like to proceed now?

a4xrbj1 commented 1 month ago

@awatson1978 everything seems to be working now. How would you like to proceed now?

Is there a RC out that I can try out, @StorytellerCZ ? Will probably have to build and deploy a new version of our app in the next 6h or so.

StorytellerCZ commented 1 month ago

The latest version has all the changes.

awatson1978 commented 1 month ago

Hi! I'll try to give it a test later today!

awatson1978 commented 1 month ago

Hmmm... I'm still getting dependency version errors. I've been trying to trace where the version packages are specified, but haven't been able to track it down yet.

Screenshot 2024-09-17 at 9 50 18 PM
msavin commented 1 month ago

I just set up a new Meteor 3 / Blaze app and followed the set up steps... got this error:

=> App running at: http://localhost:3000/
=> Errors prevented startup:                  

   While loading plugin `meteor-desktop-bundler` from package `communitypackages:meteor-desktop-bundler`:
   packages/modules-runtime.js:222:12: Cannot find module 'fibers'
   at makeMissingError (packages/modules-runtime.js:222:12)
   at Module.require (packages/modules-runtime.js:241:17)
   at require (packages/modules-runtime.js:258:21)
   at module (packages/promise.js:40:3)
   at fileEvaluate (packages/modules-runtime.js:336:7)
   at Module.require (packages/modules-runtime.js:238:14)
   at require (packages/modules-runtime.js:258:21)
   at packages/promise.js:147:15
   at packages/promise.js:154:3

=> Your application has errors. Waiting for file change.
awatson1978 commented 6 days ago

Gave it a try again, and am no longer getting my previous error, but am now getting the same error as Max. Image