Currently, when a package installation detects that the same package is already being installed, and a certain timeout not yet exceeded, the API call returns early with the list of assets that are currently installed for that package. That list may even be empty, or it may contain all package assets, depending on how far the concurrent package installation had already proceeded. The caller has no way of knowing from the returned list if it comes from a real installation, or from an early return. This was implemented in #84190 .
The reason we decided for this behaviour is that a concurrent package installation is a transient situation that is not an error, and callers should not have to worry about handling this case. Also, not introducing a new error case or different return format kept the changes in #84190 small.
This issue is to discuss if we want to change this behavior and
- return a different status when the installation was not attempted because a concurrent installation was detected
- react accordingly in the UI to notify the user that the package installation might have had a problem.
Currently, when a package installation detects that the same package is already being installed, and a certain timeout not yet exceeded, the API call returns early with the list of assets that are currently installed for that package. That list may even be empty, or it may contain all package assets, depending on how far the concurrent package installation had already proceeded. The caller has no way of knowing from the returned list if it comes from a real installation, or from an early return. This was implemented in #84190 .
The reason we decided for this behaviour is that a concurrent package installation is a transient situation that is not an error, and callers should not have to worry about handling this case. Also, not introducing a new error case or different return format kept the changes in #84190 small.
This issue is to discuss if we want to change this behavior and