Я хочу внести некоторые изменения в стандартную библиотеку Go crypto/tls.
Является ли создание копии crypto/tls в папке поставщика хорошим способом сделать это?
Это почти работает, кажется, что поставщик - это копия, используемая при компиляции приложения (веб-сервер Caddy). Кроме одной ошибки я получаю:
go/src/github.com/user/caddy/caddytls/httphandler.go:40: нельзя использовать литерал "vendor/crypto/tls".Config (тип *"vendor/crypto/tls".Config) как тип *"crypto /tls".Конфигурация в значении поля
Есть ли способ приведения, чтобы обойти эту ошибку? Хотя мне это не кажется хорошей практикой.
Я бы подумал, что вендорная копия всегда будет использоваться, но, похоже, что-то все еще использует стандартную библиотеку crypto/tls? (Я думаю, что «net/http». Должен ли я продавать это тоже?)
crypto/tls
, потому что с точки зрения Go это другой пакет. Это может сработать, если вы также продаете тележку. Если вам действительно нужно изменитьcrypto/tls
(я также надеюсь, что вы этого не сделаете), я думаю, было бы проще справиться с этим, например. сборка контейнера с пропатченной версией go (думаю, это можно назвать продавцом стандартной библиотеки?) - person nothingmuch   schedule 17.05.2017