Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't set project directory #275

Open
LukasEdl opened this issue Dec 10, 2022 · 10 comments
Open

Can't set project directory #275

LukasEdl opened this issue Dec 10, 2022 · 10 comments

Comments

@LukasEdl
Copy link

Hi everyone,

when i try to set the directory for the sandbox inside of the project tab, nothing happens and in the console i get an TypError. This works with the version 0.74.1 of the ide a breaks with version 0.74.2 and still breaks with the latest version (0.74.4).

Do you know how this can be fixed? Without it i cant use the different modules files of my project, since the IDE won't find the module files during the build.

@gfwilliams
Copy link
Member

Where are you having the problem with the IDE? As a Chrome Web App?

Google is switching off the Web Apps very soon now, so it doesn't make sense to maintain them - but I will at some soon point be adding some support to the Online IDE - now the Web APIs have moved on enough that it should all be possible from espruino.com/ide

In the mean time, you can:

  • Copy the modules to the board's local storage
  • Host the modules on GitHub or even a local HTTP server and reference them by URL

@LukasEdl
Copy link
Author

The problem occures in the Web App as well as in the online IDE.

If i use the http workaround, would i then import the modules like that require('http://localhost/module1') ?

@gfwilliams
Copy link
Member

The problem occures in the Web App as well as in the online IDE.

Yes, I'm not sure how that happened but the online IDE shouldn't really have had projects in it as that has never worked (the API isn't available on the web)

If i use the http workaround, would i then import the modules like that require('http://localhost/module1') ?

Yes, that should work - or potentially you may need to have a local https server

@Pringels
Copy link

Pringels commented Jun 4, 2023

This also happens to me on the web IDE. This is quite confusing at first given that the "project tour" button also does not work. I will take a look at porting the legacy chrome app functionality to the new Filesystem API.

@gfwilliams
Copy link
Member

Thanks! For now I've just removed the option from settings.

It'd be great if you could look at that though - but if I recall the projects code was a bit hard for me to understand :)

@Anonymous941
Copy link

Anonymous941 commented Jan 25, 2024

How did you open developer tools? (I can't tell if it's a bug or setting, which is why I haven't opened a separate issue yet) Also, how can I get a file in the IDE to be a module? Without this option, I can't think of any workarounds

@gfwilliams
Copy link
Member

Where are you running the IDE from? https://www.espruino.com/ide/ ? As above, that version (the recommended one) doesn't support the project plugin yet because all the APIs for file access have changed.

If you want to develop a module now, you have two options:

  • Save the module direct to the device - just have the module file open in the IDE, click the arrow next to the 'upload' button, choose Storage, then whatever you want to call your module eg mymodule as the filename. Now when you upload it'll upload that module. In your main file, just use require("mymodule") and you're sorted
  • host it on a local webserver (or GitHub) and link from there

Did you see in the documentation somewhere that suggested using the Project plugin? If so let me know and I can update it to be clearer

@Anonymous941
Copy link

@gfwilliams I'm trying to run it natively on Linux in order to use that feature, but can't use it or even open developer tools. I also tried to upload it to the emulator under that storage name, but regardless of it claiming it was in the emulator's storage, I can't import it.

@gfwilliams
Copy link
Member

Ahh - ok, it's been a while since anyone tried to run a native version so I don't think you'll have much success. And the 'projects' feature was specific to Chrome Apps (https://chromewebstore.google.com/detail/espruino-web-ide/bleoifhkdalbjfbobjackfdifdneehpo) which Google discontinued.

The IDE may come up with an orange warning about the module not being there when uploading the code, but the code itself will find it and work

@Anonymous941
Copy link

Thank you, that's working for me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants