Closed wh1t3cAt1k closed 1 year ago
The problem is not observable on Mac or Excel Web.
Workaround:
I managed to fix the file by unzipping the xlsx, deleting the webextensions
folder and zipping it up again.
This means the root cause lies somewhere in that folder.
Another important consideration is that our add-in uses the XLL compatibility mode with our legacy COM-based add-in, which might be important for the repro, see manifest.zip.
Obviously we cannot require these crazy steps from the customers, so I beg you guys to get to the bottom of this!
Just had another crash on a Mac. I feel like this is really severe.
It may be our personal data point, but after so many years of development, I still often find the framework not as good as the COM-based solution; maybe it's the combination of various delivery modes (AppSource/admin delivery/development insertion) and Office.js that doesn't work out well, maybe it's the XLL compatibility mode that causes issues, I don't know, and I hope the experience is different for everyone else.
We, however, have clients dropping off to legacy COM solution and cancelling subscriptions because the amount of troubles is insane - crashes, double-loading of taskpane.html, random errors upon frequent Excel.run invocation, busy errors, weird glitches on large workbooks with >10000 complex custom functions. We might be slightly unusual in the complexity of our architecture and the amount/method of interactions we do with Excel in our reports, but it's really worrying.
This framework deserves much more attention and testing effort from Microsoft than I feel it is getting...
I am willing to work more closely together to smooth everything out - our business success depends on it too, please reach out to me if you want to hear out more about the issues, do joint troubleshooting, or otherwise.
================================
The file is crashing, it was also displaying this issue in the personality menu:
This file was working fine on Monday, we only delivered a small JS bundle update to the server (without changing the manifest in the meanwhile), but I don't think it affected anything?
The file itself is sensitive, but again, the workaround was to remove the Velixo add-in, unzip the document, remove the xl/webextensions folder, open it again and install the add-in from the store again.
The webextension1.xml in the crashing file and in the non-crashing file differs:
First, the store types are different EXCatalog in the crashing file and OMEX in the working one:
Second, "containsCustomFunctions" element is present in the crashing file but not in the fixed file:
I vaguely recall that at some point we had the add-in distributed as Admin managed in the Office 365 admin center, then we removed it from auto-distribution and had everyone install from the store manually, might it have something to do with the bug?
If this is the cause, at least it should recognize that this is the same add-in and not crash!
Thanks for reporting this issue. It has been put on our backlog<Bug#6463394> for internal track. We will keep track of this issue and let you know if there are any updates.
@JinghuiMS is there any update on this? The issue is pretty bad in our opinion and has produced support requests already.
We'd really like the add-in to be recognized as the same instead of registering multiple times in the workbook.
In addition, we would like clear product rules around the priority of such recognition.
For example, if the user has a sideloaded dev add-in registered in his machine, this version would be preferred to the store / admin managed version from the document.
And vice versa, if someone with a sideloaded dev add-in opens the document with a production add-in, we want the exec team not to see pesky notifications about "this development add-in is no longer available", we want people's sideloaded dev add-ins not to spoil the document for everyone else including our clients.
@wh1t3cAt1k Sorry we can't repro it after downloaded and opened crash-demo.xlsx. It will show the below after clicked the trust add-in. Do you know whether Velixo has any updates? or can you repro it in your side now? If you can repro it, it's better to provide us the way to repro locally. Thanks.
@JinghuiMS it is definitely reproducing for me. Please see the attached videos.
https://www.loom.com/share/047d20d5e3bc428e88fe8f6ad84be51b
‼️‼️ Note that as per my steps above, the file I mentioned has two add-ins registered in it somehow.
The first time I saw it there was also a message about the (missing) development add-in with a retry button, which I clicked ("Retry").
Now I don't receive this message anymore, so it's not on the video - but the file crashes every time I open it.
@wh1t3cAt1k I saw your reply on https://github.com/OfficeDev/office-js/issues/2878 thread. I would like to know your provided file(crash-demo.xlsx) installed 2 same add-ins(Velixo), one is from store, another one is from side-load manifest? is there anything else special?
@JinghuiMS this is correct. There was nothing special except the fact that we frequently provide an update to our assets on our server (JS, CSS, HTML) without resubmitting the manifest to the store. Unlikely that this can be at play here, but on the off chance it does, it's worth mentioning.
@wh1t3cAt1k We have checked in the fix for this crash issue and the Integration (Fix) Build will be 16.0.16302.10000, you can have a try with the build ≥ 16.0.16302 when this build is released. Any problem please feel free to ping me.
I can confirm on the Beta Channel (16307) that the issue is gone. This can be closed. Thank you very much for the fix.
Your Environment
Processor 12th Gen Intel(R) Core(TM) i9-12900F, 2400 Mhz, 16 Core(s), 24 Logical Processor(s) Edition Windows 11 Pro Version 21H2 Installed on 12/05/2022 OS build 22000.856 Experience Windows Feature Experience Pack 1000.22000.856.0
Expected behavior
File does not crash
Current behavior
File crashes
Steps to reproduce
Provide additional details
crash-demo.xlsx
It might or might not be important: we have delivered an update to the JS bundle with our application recently, as well as updated the custom functions metadata JSON (including some function signatures). The file was created with the previous version of the add-in.