Write a migration document covering all breaking changes in the 6.0.0 release. The document should:
This guide should be published alongside the 6.0.0 release (e.g., in CHANGELOG.md or a dedicated MIGRATION.md). A major version with multiple breaking changes across error types, public structs, function signatures, and feature flags needs clear upgrade documentation to avoid trial-and-error migrations. The guide should be written as changes land (not retroactively) so nothing is missed. Suggested for the syntect 6.0.0 milestone.
Write a migration document covering all breaking changes in the 6.0.0 release. The document should:
nonewlinesremoval (Abandonnonewlinesfor v6.0.0 #394) with the recommended replacement pattern.SyntaxReference.variableschange (refactor: Movevariablesinto compressed contexts #540/Consider compressingSyntaxReference'svariables#482) and how to access variable data in the new API.dep:feature flag changes (Usedep:prefix for feature dependencies #588) and whichCargo.tomlfeature entries need updating.HighlightLines::new()signature change (Don't Panic! #564) and how to constructHighlightOptions.MatchOperation::Embedvariant andPattern::IncludeWithPrototype.ScopeSelector/ScopeSelectorsstruct layout.once_cell#575 is included in 6.0.0, document theSCOPE_REPOremoval or type change.This guide should be published alongside the 6.0.0 release (e.g., in
CHANGELOG.mdor a dedicatedMIGRATION.md). A major version with multiple breaking changes across error types, public structs, function signatures, and feature flags needs clear upgrade documentation to avoid trial-and-error migrations. The guide should be written as changes land (not retroactively) so nothing is missed. Suggested for the syntect 6.0.0 milestone.