@@ -1948,7 +1948,7 @@ message Compressor {
1948
1948
// not need to advertise it.
1949
1949
IDENTITY = 0 ;
1950
1950
1951
- // Zstandard compression.
1951
+ // Zstandard compression without dictionary .
1952
1952
ZSTD = 1 ;
1953
1953
1954
1954
// RFC 1951 Deflate. This format is identical to what is used by ZIP
@@ -1961,9 +1961,28 @@ message Compressor {
1961
1961
1962
1962
// Brotli compression.
1963
1963
BROTLI = 3 ;
1964
+
1965
+ // Zstandard compression with dictionary. When is is used, the
1966
+ // server MUST advertise the dictionaries by including
1967
+ // [ZstdDictionaryRegistry][build.bazel.remote.execution.v2.ZstdDictionaryRegistry]
1968
+ // digest in CacheCapabilities.
1969
+ ZSTD_DICT = 4 ;
1964
1970
}
1965
1971
}
1966
1972
1973
+ message ZstdDictionaryRegistry {
1974
+ // Each file respresent a single Zstandard dictionary
1975
+ // with name being the `dictId` that was added to the header
1976
+ // of the compressed file.
1977
+ //
1978
+ // A special file with name `default` is used to represent the
1979
+ // default dictionary that is used when no `dictId` is specified.
1980
+ // Clients SHOULD prefer to use the default dictionary when possible.
1981
+ //
1982
+ // The `default` dictionary MUST be present.
1983
+ repeated FileNode dictionaries = 1 ;
1984
+ }
1985
+
1967
1986
// Capabilities of the remote cache system.
1968
1987
message CacheCapabilities {
1969
1988
// All the digest functions supported by the remote cache.
@@ -1997,6 +2016,11 @@ message CacheCapabilities {
1997
2016
// [BatchUpdateBlobs][build.bazel.remote.execution.v2.ContentAddressableStorage.BatchUpdateBlobs]
1998
2017
// requests.
1999
2018
repeated Compressor.Value supported_batch_update_compressors = 7 ;
2019
+
2020
+ // The digest of the
2021
+ // [ZstdDictionaryRegistry][build.bazel.remote.execution.v2.ZstdDictionaryRegistry]
2022
+ // that contains all the dictionaries supported by the remote cache.
2023
+ Digest zstd_dictionary_registry = 8 ;
2000
2024
}
2001
2025
2002
2026
// Capabilities of the remote execution system.
0 commit comments