Gustavo
Gustavo2y ago

PHP support

Mostly curious, are there plans for it?
7 Replies
Gustavo
Gustavo2y ago
Use case: there’s one specific library in PHP that I’d like to use, and being able to use it in a Windmill script without worrying about setting up the environment and hosting would be great.
rubenf
rubenf2y ago
We have no plans yet at the moment. Probably the hardest part of supporting a new language is handling of the dependencies and i'm not sure what it would entails for php But php and ruby are likely the most requested languages
Gustavo
Gustavo2y ago
Alright, thanks for the answer
Oytun @ MotaWord
i'm interested in this, i took a look at other engines, seems...not too easy to implement a new engine for php, but it may be worth it. @rubenf if you could guide me a little bit, i can try bringing php engine. this would open up a huge library for enterprises to use their existing business logic (that's what i'm gonna do, open up our core business library, no need to make http calls etc) if dependencies are the hardest part, maybe we can play around it somehow my case does NOT have to be a generic php handler, i am happy with a restricted environment where only my library and its somehow predefined dependencies are running
rubenf
rubenf9mo ago
It's a good idea, rust, ruby and php are likely our next targets Dependencies handling are the hardest part indeed
Oytun @ MotaWord
1) we need a new parser for params and signatures: https://github.com/windmill-labs/windmill/tree/main/backend/parsers 2) a new executor: https://github.com/windmill-labs/windmill/tree/main/backend/windmill-worker/src 3) something here: https://github.com/windmill-labs/windmill/blob/main/backend/windmill-common/src/scripts.rs oh well, and all kinds of places in TypeScript files apparently yeah, adding a new lang might be a bit too much for an outsider
rubenf
rubenf9mo ago
The typescript part is very easy The dependency handling and parsing part is the hardest, the rest is a few hours of work