Error: Cannot find module 'fibers'

PS C:\Users\[username]\fullstack> meteor create test2
C:\Users\[username]\AppData\Local\.meteor\packages\meteor-tool\1.6.1_1\mt-os.windows.x86_64\dev_bundle\lib\node_modules\meteor-promise\promise_server.js:218
      throw error;
      ^

Error: Error: Could not install npm dependencies for test-packages: Command failed: C:\WINDOWS\system32\cmd.exe /c C:\Users\[username]\AppData\Local\.meteor\packages\meteor-tool\1.6.1_1\mt-os.windows.x86_64\dev_bundle\bin\npm.cmd install --production=false
npm ERR! Cannot read property 'match' of undefined

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\[username]\AppData\Roaming\npm-cache\_logs\2018-05-16T01_31_23_763Z-debug.log
npm ERR! Cannot read property 'match' of undefined

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\[username]\AppData\Roaming\npm-cache\_logs\2018-05-16T01_31_23_763Z-debug.log

    at Object.error (C:\tools\utils\buildmessage.js:430:11)
    at C:\tools\cli\default-npm-deps.js:36:20
    at C:\tools\utils\buildmessage.js:334:18
    at exports.EnvironmentVariable.withValue (C:\tools\utils\fiber-helpers.js:89:14)
    at C:\tools\utils\buildmessage.js:333:36
    at exports.EnvironmentVariable.withValue (C:\tools\utils\fiber-helpers.js:89:14)
    at Object.enterJob (C:\tools\utils\buildmessage.js:324:26)
    at Object.install (C:\tools\cli\default-npm-deps.js:27:27)
    at Command.func (C:\tools\cli\commands.js:801:36)
    at C:\tools\cli\main.js:1523:15
PS C:\Users\[username]\fullstack>

Whatā€™s happening here? did a reinstall and still see the error

This fix has been merged into the 1.7 branch, but is not in the latest release build (rc.11). Any idea when we will see either a new RC or a final release of 1.7? Iā€™m unable to run on Windows any longer after the April update of Windows 10. For political reasons Iā€™m unable to install WSL as a work-around.

1 Like

No idea sorry.

On the 1.7 pull request it looks like it was added 4 days ago so Iā€™m surprised itā€™s not in the latest release candidate

Maybe ask the devs on that thread? https://github.com/meteor/meteor/pull/9826

1 Like

you are spot on, this fixes it, which is great. BUT its not exactly a good build process - its like a fix to a (broken) build process that shouldnā€™t really exist - though I note meteorā€™s own build notes include the same necessary step. Any ideas how can this ā€˜fixā€™ step be avoided for a build pipeline ?

So Iā€™ve just been running Meteor --production for the last while and getting far simpler results lol.

Might not be the best way, but so far I donā€™t see why not.

I have a script that pulls github version, kills the meteor instance, swaps new files and restarts meteor --production.

Thoughts?

So. I bit the bullet. I upgraded from Meteor 1.8 ā†’ Meteor 3.0-RC-4 and at the same time built a docker image for thisā€¦ What a crazy nightmare.

The installer scripts dont actually allow you to install Meteor 3, it forces Meteor 2.16 even if you specify the release.

So, build from source on GitHubā€¦

Anyway, It was a big chore, mostly:

  • Replace Fibers with Promises
  • Replace server side findOne with findOneAsync
  • couple other database related problems
  • SUPER out dated packages, removing those was insane.
  • Iron:Router doesnt work with Meteor 3, so I had to switch to FlowRouter and rebuilding like 50 routes for my huge ass app.

If you have a HUGE appā€¦ gross.

But its done, and now I have a Meteor 3 RC 4 Docker image running on kubernetes!

Iā€™m at www.ScalarSites.com btw :0

1 Like

Itā€™s been 12 days since my last post, I have been working TIRELESSLY to fix my massive codebase, but its finally there.

Honestly, I preferred the fibers. But its old and dead, so what can ya do.

Just documenting incase any other poor soul finds themselves wondering how long it will take.

A LONG TIME depending on your app size. I have like 1000 functions in my software.

1 Like

hi! iā€™m running into the fibers/future not found error while trying to upgrade from 2.16 to 3.0-rc-10

can you elaborate on what you meant by replacing fibers with promises?

i had already gone through that article. turns out my issue was aldeed:collections needed updating. i removed all my meteor packages and added them back in one by one. still working through getting my app working on meteor 3 but iā€™m past the fibers/future error at least!

Hey all, I have finally successfully upgrade to the latest version of Meteor. A LOT of packages had to be cut out. Thatā€™s fine, there are other replacements. Had to change some code but hey, all good. I havenā€™t updated Meteor core in like 6 years!

FIBERS ā€“ What the heck is this?

Quite simply put, doing things like:

let myPages = Pages.find({ }); // find all pages

MUST now become:

let myPages = await Pages.find({ }); // find all pages

Then, you can start writing functions like this:

async function update_all_pages() {
    try {
            // Do your function stuff here
    } catch (error) {
        console.error("Error updating this function:", error);
    } 
}

See the difference in how code is written? Now you code has actual timing. Which is actually REALLY awesome.

You can do things like:

wget a page and wait for the results to come back. But you can also branch that off and make it run in the background. Itā€™s weird. But its cool.

For this reason, Fibers is replaced with ā€œout of the box Promisesā€.

So, upgrade Meteor, delete Fibers, and start ripping your code apart. Good luck.

I was able to train ChatGPT and fairily easily replace functionsā€¦ but it took 2 months with my code base.

Code_ooOkRt89sT
Iā€™m receiving this error when updating to meteor 3.0.1
is this related to the package itself universe:18 or its my code base needs to be converted to async/await?

You should try universe:i18n@3.0.0 ā†’ it is working perfectly with METEOR@3.0.2-beta.4

1 Like

Looks like your code is still trying to use Fibers, and is not related to the package in question.