Skip to main content

Limitations

This page summarizes the limitations that apply when using the e Builder (extensions).

Creating and Managing Projects (Core)​

  • One window handles only one project. If you have several folders open, the first folder is the target.
  • Only one command can run at a time. If you try to start another command while one is running, a warning tells you to wait for it to finish.
  • Tenant environment setup and sample data setup can only be run all at once. To choose individual configuration files, use Accel CLI in interactive mode.
  • Browser builds of VSCode (such as vscode.dev) are not supported. Use the desktop build.
  • The extension does not work in an untrusted folder. This is because it runs build scripts. For details, see Trusting the Folder.

Debugging (Debug)​

  • Function breakpoints (stopping by specifying a function name) are unavailable. Set a breakpoint on the line where you want to stop.
  • Data breakpoints (stopping when a variable's value changes) are unavailable. Set a breakpoint on the line where you want to stop and inspect the variable's value.
  • Setting a logpoint does not print a message to the debug console. Execution stops at that line, just like a regular breakpoint.
  • The debugger; statement is unavailable. Execution does stop, but the stop position shown may differ from the actual one. Use breakpoints.
  • Hovering over a value may not show it. A variable named directly in the currently paused scope is shown, but expressions that include a function call, for example, are not evaluated and therefore not shown. When nothing appears, check the "Variables" section or the "Watch" section.
  • Only one client can connect at a time. If another machine has already connected, your connection fails. When you use a shared development server, coordinate within your team.
  • The connection does not reconnect automatically when it drops. Connect again.
  • While Debugger.protocol=dap is set, you cannot debug with the Eclipse-based e Builder (IDE). This setting is enabled by default in Docker environments. For how to switch, see Debugging with e Builder (IDE).

Running Tests (Debug)​

  • Tests cannot run concurrently. If you try to start another test while one is running, a warning appears.
  • Tests written with it.each are shown as a single entry. You cannot run individual rows.
  • If you write several tests on the same line, the second and later ones do not appear in the list. Write one test per line.
  • Errors are shown on the first line of the test, not at the point of failure.
  • Running a test right after editing a file may show no result. Wait a moment and run it again.

You can write test code with a Jest-compatible API, but because it runs on the same JavaScript engine as server-side scripts (Rhino), it is not exactly the same as Jest (Writing Tests with a Jest-Compatible API).

  • async / await and Promises (.resolves / .rejects) are unavailable. To test asynchronous processing, use the done callback.
  • require() is unavailable. To load another file, use load().
  • Snapshot testing (toMatchSnapshot()) is unavailable. Compare with matchers such as toEqual().

Reading Test Files (Debug)​

The test list is built by parsing the contents of test files. In the following cases, parsing fails and none of that file's tests appear.

  • The file has a syntax error. A missing closing bracket while you are still editing is one such case.
  • The file contains notation that is not standard JavaScript. Notation used in older server-side scripts, such as E4X (writing XML directly inside JavaScript), cannot be parsed.

If a test is missing from the list, first check how that file is written.

Note also that tests registered by loading another file appear grouped directly under the file, because their position cannot be determined (they do not appear in the describe hierarchy).