github.com/goern/docker@v1.9.0-rc1/api/types/versions/README.md (about) 1 ## Legacy API type versions 2 3 This package includes types for legacy API versions. The stable version of the API types live in `api/types/*.go`. 4 5 Consider moving a type here when you need to keep backwards compatibility in the API. This legacy types are organized by the latest API version they appear in. For instance, types in the `v1p19` package are valid for API versions below or equal `1.19`. Types in the `v1p20` package are valid for the API version `1.20`, since the versions below that will use the legacy types in `v1p19`. 6 7 ### Package name conventions 8 9 The package name convention is to use `v` as a prefix for the version number and `p`(patch) as a separator. We use this nomenclature due to a few restrictions in the Go package name convention: 10 11 1. We cannot use `.` because it's interpreted by the language, think of `v1.20.CallFunction`. 12 2. We cannot use `_` because golint complains abount it. The code is actually valid, but it looks probably more weird: `v1_20.CallFunction`. 13 14 For instance, if you want to modify a type that was available in the version `1.21` of the API but it will have different fields in the version `1.22`, you want to create a new package under `api/types/versions/v1p21`.