|author||Nigel Tao <firstname.lastname@example.org>||Tue Jul 06 23:42:51 2021 +1000|
|committer||Nigel Tao <email@example.com>||Fri Sep 03 01:35:09 2021 +0000|
shiny/iconvg: add UpgradeToFileFormatVersion1 The iconvg Go implementation started at golang.org/x/exp/shiny/iconvg in 2016, speaking a file format retroactively named FFV0 (File Format Version 0). The github.com/google/iconvg/src/go/* packages were created more recently in 2021 and will speak a revised format, FFV1. The long term plan is for the github.com/... packages to *only* speak FFV1. The golang.org/... package (this package) will continue to speak FFV0 directly and will additionally delegate decoding FFV1 to the github.com/... packages. FFV0 will be considered a deprecated experiment (it was marked EXPERIMENTAL ever since its inception). See https://github.com/google/iconvg/issues/4 This commit, which decodes FFV0 and encodes FFV1, lives in the golang.org/... packages, since it involves FFV0. Testing it (beyond the basic consistency checks in upgrade_test.go) lives in the github.com/... packages, since that involves decoding FFV1. For example, some outputs of the UpgradeToFileFormatVersion1 function (added by this commit) were checked in as https://github.com/google/iconvg/commit/c98b08c Change-Id: Ib5861ae97928cf31faf207b915568532e2624f09 Reviewed-on: https://go-review.googlesource.com/c/exp/+/332989 Trust: Nigel Tao <firstname.lastname@example.org> Reviewed-by: Andrew Gerrand <email@example.com>
This subrepository holds experimental and deprecated (in the
old directory) packages.
The idea for this subrepository originated as the
pkg/exp directory of the main repository, but its presence there made it unavailable to users of the binary downloads of the Go installation. The subrepository has therefore been created to make it possible to
go get these packages.
Warning: Packages here are experimental and unreliable. Some may one day be promoted to the main repository or other subrepository, or they may be modified arbitrarily or even disappear altogether.
In short, code in this subrepository is not subject to the Go 1 compatibility promise. (No subrepo is, but the promise is even more likely to be violated by go.exp than the others.)