Removing Prybar from the Run Button

Hello Replit users,

Replit is updating the default run button behavior for Python and Node.js Repls. Python Repls will now use the python3 executable to execute your code and Node.js Repls will use the node executable.

Wait, it didn’t do that before?

An artifact of Replit’s origins, Python 3 and Node.js Repls’ run button has been configured to use prybar - which in turn delegates execution to the python3 and nodejs interpreters. prybar is a multi-language REPL (that’s read-evaluate-print-loop - Repls running REPLs :exploding_head:) built at Replit. It has enabled the Replit Console to evaluate inputs as if you were in a shell, allowing you to continue to input Python or Node.js code following the execution of your main program.

Originally - this was the only way to run code on Replit! Today, Replit has a world-class editor experience, and using prybar for “Run” has undesirable consequences. Primarily, prybar has some subtle differences in behavior, resulting in applications failing under certain circumstances. Finally, this will bring the development experience in Repls parallel to Deployments - where the interpreter for your Repl will be the same as for your Deployment.

Starting this week, the default run configuration for Repls will be the official executable: python3 in the case of Python and node in the case of Node.js. The Console will continue to be used for viewing program output and entering inputs as prompted by the program.

9 Likes

Can anyone explain what this will mean please?

1 Like

You used to be able to execute code in the console window but no more

1 Like

Bruh that was actually one feature I liked about the console.

Will inputs still work?

2 Likes

Yes inputs will still work. And thats the defaults so it sounds like if you modify the .replit or the replit.nix file you can still get it.

1 Like

I mean you still can, just run python3 or node or whatever lang

1 Like

what’s the point of the shell now?

To install packages since you can’t do it in the console. And mabey some other stuff. Just tested it and this is what I got

npm should be run outside of the Node.js REPL, in your normal shell.
2 Likes

I didn’t even know installing package through the console was possible. I always used Shell :upside_down_face:

3 Likes

Its not. I got an error (shown above) when I tried.

2 Likes

Technically, you could if you did something like:

__import__("os").system("poetry add xyz")
#Or for a full shell:
__import__("os").system("bash")

But that’s kinda a hacky workaround.

4 Likes