10880 block limit exceeded - compiler error DX execution failed

No warnings or errors

A lot of extentions. But the problem is appearing as soon as the total number of blocks is exceding 10880 and i dont think that the problem is connected with extensions

We usually say "you have too much of something", it may appear obvious that it is the blocks, and it probably is, but it does seem you have "excessed" elsewhere too.

Does it all have to be in one app? Could you split it into two apps and link them together with activityStarter?

I get the jitters if my block count goes anywhere near 4000, and even that is a rare thing...., or if I have more than three extensions....these things tell me I need to revisit my approach and do things differently.

I counted now - there are 23 extensions! And it's not easy to break the functionality into a few apps.
Surely 11000 blocks is too much for the AI.
Thanks a lot in any case.
I'll try my best to reduce the number of blocks and maybe rewrite parts of the largest procedures in java scripts or creating an extension.

You've exceeded even the code server's capacity.

I recommend exporting individual images of procedures and events, using the Ai2Helper browser extension from

You will get a finer grain of backup that way, since the downloaded blocks images can be dragged into new projects' blocks editor workspaces.

The operation can be done in bulk, into a single .zip archive.

If you post the largest item in that .zip archive, it might spur discussion of ways to reduce block count.

Regarding the build errors, here is my collection of collections of build error types:

This online Unchive tool can post summaries of uploaded .aia files.

Unchive

You can also download .AIV summaries for others to study without giving away the .aia export.

Try compiling the project on the server:

https://code.appinventor.mit.edu/

The dx error might be from an individual block of code that breaks a stack limit during build.

Where is your longest if/then/elseif chain?

Or your deepest nested code?

Thank you ABG. I used to use unchive and it's really very useful, but unfortunately doesn't solve the problem.
The DX problem is disappearing as soon as I delete blocks in ANY procedure. It's important only not to reach the limit of 10880 blocks.
It means that this problem is not connected with a partucular procedure/block.
Thank you for Ai2Helper browser extension - I'll try to use it

I did. But the problem persist

possible to move some functions to another screen?

1 Like

Not having seen any of the 10800 blocks, I have to rummage around for techniques of block reduction to recommend.

This online book helped me to simplify my code through abstraction:

One of its authors, Hal Abelson, is a father of AI2.

You can share your Aia project for testing.

With 10800 blocks, I would also take any bet that these can be significantly reduced (without sacrificing functionality).

When my hard drive is full, I use a utility (SpaceMonger) that maps the drive space by directory.


It readily shows where I spent my hard drive space.
Iy would be informative to apply that to an AI2Helper .zip download of your blocks.

Thank you Kevinkun.
It's surely possible. Instead of multiple screens I used to use arrangements.
I'll try to substitute 1+2 arrangements with screens

Surely Anke, the optimisation is always possible, and it's exactly what I'm doing.
But the problem is not in the way of how to reduce the number of blocks. The problem is in the limit of those blocks. How to avoid/bypass/increase this limit?
Do you know the solution?

Again, by reducing the number of blocks. As soon as you realize that you are approaching 10,000 blocks, you should ask yourself whether the blocks can be significantly reduced. And the answer to that is regularly: yes.

Thanks ABG - I know very well how to reduce the number of blocks and I'm doing it.
But my question is not about blocks reduction. My question is about the maximum number of those blocks. How to increase or bypass it. I don't want to have this limit over my head all the time! And if this limitation exists and can't be bypassed - the only solution for me for developing my next app - will be another compiler. The next app must have even more features than the current one (which I haven't finished yet).

But I will try to follow Kevinkun's recommendation - moving 1-2 arrangements with related procedures to another screen - maybe it could be the solution