Skip to content

Link error messages to current version of Angular docs #44650

@dgp1130

Description

@dgp1130

Which @angular/* package(s) are relevant/releated to the feature request?

compiler-cli

Description

Error messages frequently link to angular.io for additional context. This is great for users, however the content on these pages change over time, so error message links could easily fall out of date and stop working (or continue to work but no longer give the context needed by the error).

I'm marking this as a compiler issue, though the same issue applies to the runtime and we should do the same there.

/cc @JoostK

Proposed solution

We already have archived versions of docs at v*.angular.io, we should link to those versions where appropriate. Ideally, an error message should always link to the same version of Angular they are currently using. So even a user on an LTS (or older) version will link to the correct version of the doc intended by the error message.

This does mean that users might not get the most up to date information, but archived docs already include a banner and link to the latest version, so I think historical accuracy is more important and maintainable than recency of information.

Alternatives considered

The current solution is to always link to the latest version of the docs (see #44649 (review)). If docs change, we just update the error message to match (or vice versa). This technically means that we shouldn't remove docs content from the latest AIO version until the Angular versions it's relevant to fall out of LTS (which is a two-year gap I think). It's also easy to forget that an old version linked to particular doc and hard to audit / verify. We also can't change older versions of Angular after their published, so our only remediation mechanism is to update AIO directly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3An issue that is relevant to core functions, but does not impede progress. Important, but not urgentarea: compilerIssues related to `ngc`, Angular's template compilerarea: coreIssues related to the framework runtime

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions