Some of my clients are claiming that the chrome-extesion I provided works on Intel Macs but not on Silicon Macs. But I don't understand this. It was because there was no such issue in the v8 engine.
Assuming the chrome version is the same, Excluding external factors such as thrid-party API integration not related to Chrome, Can chrome-extesnion work differently for different systems (or architectures)?
For example, In the same chrome extension source code, it works on Intel Mac, but does not work on Apple silicon MacBook.
I tried searching with keywords such as v8 architecture issue, but I couldn't find anything. I'd like to find a true or false proof of the problem.
You're not providing enough detail for a solid response. "My code doesn't work" is not a useful problem description. You'll need to show some actual code that exhibits the behavior, and precisely describe the way in which it's failing (e.g., does it produce any particular error message?).
Generally speaking, part of the point of the Web is that the client device doesn't matter: things should work everywhere. That applies to Chrome extensions as well.
That said, there are some cases where code can learn something about the device it's running on, and intentionally or accidentally behave differently. A common example is to show different UI depending on available screen resolution. So in particular if you're interacting with someone else's website, it may be that that website itself is different on some systems.
The most obvious way to create an Intel/Apple silicon Mac difference would be to look at the user agent string, but as far as I can tell that appears to be the same for both kinds of CPU. But I'm sure there are other ways for code to tell which hardware it's running on, e.g. the
chrome.system.cpuAPI, or the relative performance difference of certain operations.It is also possible, but rather unlikely, that you've discovered a Chrome bug. If you can identify a particular extension API (or code pattern) that isn't working correctly on arm64 Macs, then it would be useful to file a bug at crbug.com/new -- but that would have to include a specific repro case, not just "I wrote some code and that code isn't working, please fix".
As another very general (and hopefully obvious) statement: when you offer some software (whether it's a Chrome extension or anything else), and your users report that "it works on devices of type X but doesn't work on devices of type Y", then it's your responsibility to investigate the problem, which may well require getting your hands on a device of type Y, at least temporarily. It may be tempting to hide behind some defense like "someone on the internet said this isn't possible" or "must be a Chrome bug", but chances are that it is indeed your code that isn't robust enough.