Skip to content

Latest commit

 

History

History
46 lines (33 loc) · 2.76 KB

faq.md

File metadata and controls

46 lines (33 loc) · 2.76 KB

Troubleshooting

Changes to JS code aren't registering in the browser?

  • make sure you are watching the directory

  • make sure you did |commit %home (the )

  • use Cmd-Shift-R (Mac) or Ctrl-Shift-R (PC/Linux) in Chrome/Brave to force a reload. Safari uses Cmd-Option-R.

  • Gall keeps running an old version of my app!

    • if there's a compile error, it will run an old version until a new version successfully compiles.
    • Gall will not throw the same compile error twice in a row. This can be confusing if you don't get an error message, but still see that you're running the same version

Helper Core Note

If you have a helper core, you'll generally declare it inside your agent like so:

+*  hc    ~(. +> bowl)

If you have an arm inside the helper core like write-file, remember to access it inside your agent as write-file:hc, and not just write-file. Your agent would find the write-file arm in the subject, but it wouldn't have its sample set to the current bowl--it would just have the default bowl sample. This can cause some weird errors and unexpected behavior.

If you are referring to a helper core arm from another helper core arm, then the bowl sample will already be replaced, and so you should just refer to write-arm (or whatever the arm's name is).

scry errors

scry failed for
ford: %hood failed for /~zod/home/0/app/...

Solution: run |commit %home

mint-lost: Handle All State Cases

Usually caused by adding a new state, but not having a ?- case to handle it.

Reloading an App

As soon as you execute |start %yourapp, the app is started forever. It doesn't matter whether it had errors upon loading. The only way to "remove" an app and have Gall stop monitoring it is to create a new ship and load the code in there.

My App Compiled, but then I Got an Error Right After

Most likely you changed your state variable's structure without giving an on-load transition. If this is a development app, just delete your ship and set it up again. If not, then write the proper transition in on-load.

I Don't See an Error, but My App Doesn't Work

Doesn't Throw Same Error Twice

Once Gall throws an error in compilation, it won't throw the same error again. This means that even if your app still has problems, you won't see an error after '|commit'.

Because of this, I usually leave an on-load print debug in while developing. If I see the 'on-load' message print, it means that my app compiled successfully. If not, it means that I need to keep debugging the prior error.

Needs to Reload a Dependency

Sometimes dependencies, like a recently updated types file in /sur, don't get recognized. In these cases, just run :goad %force, and the dependencies will reload, throwing any new errors that may arise.