Слияние кода завершено, страница обновится автоматически
Size
для поддержки удобных единиц измерения размераencrypt_test
Path
.init-env.sh
, чтобы исправить проблему с размером буферного окна UDPssh_key
. Теперь можно конфигурировать информацию аутентификации SFTP через новые параметры в командных аргументах source
и dest
.copy_link
и copy_unsafe_link
для управления синхронизацией мягких ссылок в режиме локального диска.scripts/build-release.sh
, добавлены выпуски для Linux arm64 и macOS arm64.CBool
и проведена рефакторизация кода.minio.statDirEntry
и sftp.statDirEntry
на fs.FileInfoToDirEntry
.build-release.sh
и build-docker.sh
, сделав их более универсальными.install-minio.sh
, теперь он использует командный аргумент -q
для отключения вывода журнала прогресса.NewDecryptReader
в newDecryptReader
.SFTP
.go1.21
.go1.19
.symlink
.FileInfo
добавлено поле LinkTo
.fs.IsSymlink
.Driver
добавлены методы Symlink
, Lstat
и ReadLink
.dry_run
, чтобы поддерживать запуск gofs без выполнения реальной синхронизацииparseRedisConnection
теперь имеет тип intLoader
добавлены новые методы сохраненияgrpcServer
task_client_max_workers
, ограничивающая максимальное количество параллельных задач клиентаboltdb
conf.ToString
и тесты для негоparseFlags
в отдельный пакет flag
testEncrypt
signal.Notify
Daemon
conf.Parse
на genericsconf.ParseContent
bytes.TrimSuffix
для упрощения кодаsyscall.SIGKILL
github.com/minio/minio-go/v7
v7.0.50 => v7.0.52github.com/quic-go/quic-go
v0.33.0 => v0.34.0golang.org/x/crypto
v0.7.0 => v0.8.0-max_tran_rate
для поддержки ограничения максимальной скорости передачи как на клиентской, так и на серверной сторонеcore.FlagSet
, чтобы избежать использования глобального объекта flag.CommandLine
hashutil
, server
, httputil
, ignore
, daemon
, conf
и report
Config.ToArgs
, чтобы избежать использования глобальных членов os.Args
в daemon.Daemon
alpine:3.15.4
до alpine:latest
version
и about
перемещены внутрь пакета internal
resource.go
перемещен внутрь пакета server
yamlutil
scripts/clear-release.sh
для очистки файлов, созданных процессом выпускаscripts/build-release.sh
для поддержки выпуска macOSgithub.com/minio/minio-go/v7
с версии v7.0.48
до v7.0.50
github.com/schollz/progressbar/v3
с версии v3.12.2
до v3.13.1
golang.org/x/crypto
с версии v0.6.0
до v0.7.0
SFTP pull client
Err
в типе os.SyscallError
-http3
для поддержки HTTP3 сервера и клиентаprint
и некоторых тестовinclude
и некоторых тестов, позволяющей использовать другие конфигурационные файлы внутри файла конфигурацийsync
, перемещение некоторых функций в пакет hashutil
и добавление тестовWait
в методе WaitDone
runtime
для получения информации о версии используемого Go, удаление файла version/go_version
и связанных скриптов и кодаCBool
с использованием типа atomic.Bool
clist
и toplist
Mutex
на RWMutex
в структуре CList
encrypt
go.work
и .run/
fsctl
session_mode
, теперь используется параметр session_connection
для идентификации соответствующего режима сессииhostname
PrintVersion
поддерживает указание имени программыName
для отображения названий командwriteMap
путём указания её размераcommand
, поддерживающий выполнение последовательности команд на основе команд из конфигурационного файла.runWithConfig
.WaitDone
на Done
для ограничения поведения вызывающего кода.NotifySignal
, который отправляет сигнал и поддерживает таймаут.signal.Notify
для поддержки отправки сигнала пользователем для триггеринга завершения работы.NewHash
, поддерживающий возврат конкретной реализации алгоритма хэширования, а также обновлены методы HashFromFile
, HashFromFileName
, Hash
, HashFromString
для поддержки пользовательских алгоритмов хэширования.RunWithConfigFile
в пакет cmd.Done
.Monitor
.session_mode
и session_connection
.Write
, когда в некоторых окружениях Windows переименовывается директорияHostKeyCallback
путём добавления параметра командной строки ssh_key
Conn
tcpServer
для поля closed
fs.IsSub
и тесты для негоencrypt
, encrypt_path
, encrypt_secret
, decrypt
, decrypt_path
, decrypt_secret
и decrypt_out
для поддержки шифрования и расшифровкиprogress
для отображения прогресса синхронизацииsync_workers
для установки количества рабочих процессов для синхронизации файловlog_split_date
для разделения лог-файлов по дате и обновление соответствующего READMEerrNilTranConn
, а errNilConn
переименована в errNilNetConn
tran.Conn
на поле-композициюSync
используется Option
для передачи параметровminIOClient
в minIODriver
, заменён тип вложенного minIODriver
на поле-композициюsftpClient
в sftpDriver
, заменён тип вложенного sftpDriver
на поле-композициюsecure
со значением по умолчаниюwriteMap
util/httputil
tran
codeql.yml
GO-2022-0969
syscall.Timespec
в платформе linux 386
— int32
commit
, current_time
, start_time
, up_time
Driver
, добавлен метод Write
, обновлен метод Create
Driver
добавлен метод DriverName
sftpClientSync
в sftpPushClientSync
driverPullClientMonitor
, driverPullClientSync
, driverPushClientSync
Time.Sub
и тесты для негоchan bool
на chan struct{}
при использовании канала только для получения уведомленийfs.GetFileTime
в файл fs/fs.go
и добавлены прототипы некоторых методовGinHandler
и обновлены зависимостиioutil.ReadAll
на io.ReadAll
retry_*
для управления автоматическим восстановлением соединения с SFTP-сервером.CGO_ENABLED=0
, чтобы отключить динамическую загрузку библиотек при запуске контейнеров.build-release.sh
удалён параметр компиляции -tags netgo
, используемый для выпуска версий.[filepath]
и [regexp]
для управления парсером правил игнорирования файлов; по умолчанию используется [filepath]
.RunWithArgs
, который позволяет запустить программу gofs с указанными аргументами командной строки, начинающимися с имени программы.VFS.Addr
, который возвращает адрес сервера.fs.toDeletedPath
./favicon.ico
.log_format
для настройки формата вывода логов; поддерживаются значения text
и json
; значение по умолчанию — text
.build-docker.sh
для удаления образов с конкретными метками и очистки независимых слоёв после успешного построения.tls_insecure_skip_verify
, чтобы контролировать, выполняется ли проверка сертификата цепочки и имени хоста клиентомhttputil.NewTLSConfig
, чтобы снизить количество повторяющегося кодаWORKDIR
, а также используется переменная окружения GOFS_SERVER_ADDR
в качестве имени хоста для генерации сертификатовsession_mode
и session_connection
, чтобы поддерживать переключение различных режимов хранения сессий; поддерживаются режимы memory[1]
и redis[2]
, значение по умолчанию — memory[1]
Run
, чтобы сделать основную функцию main
более чистойchecksum_algorithm
для установки значения по умолчанию для алгоритма хэшированияabout
Docker
и несколько примеров скриптов Dockerbuild-release.sh
, который строит файлы выпуска для систем Linux и Windowsv
для вывода информации о версии Gosync_delay_flag
, sync_delay_events
и sync_delay_time
для поддержки задержки синхронизации и обновление READMElog_sample_rate
для установки частоты выборки в регистраторе логов; значение может принимать значения от 0 до 1, по умолчанию равно 1force_checksum
: если размер файла источника и время последнего изменения совпадают с размером и временем последнего изменения целевого файла, а force_checksum
установлен как false
, то текущий файл будет проигнорированdependabot.yml
go1.18
, удаление поддержки go1.17
.report
для включения маршрута отчетного интерфейса и начала сбора данных отчетов, обязательна активация параметра командной строки manage
.interface{}
на any
.TopList
и тестов для хранения некоторого количества элементов с указанным размером, старейшие элементы будут удаляться при превышении этого размера.Time
и тестов в пакет util/timeutil
.event
вместе со всеми её полями, добавление нового поля Time
.hashutil
и перемещение теста TestHashValues
в файл hash_value_test.go
.checkpoint_count
для использования файловых контрольных точек для снижения передачи незменённых блоков файлов, а также обновление соответствующего README файла.need_checkpoint
для файлового запросного интерфейса для поддержки возврата контрольных точек файлов, а также обновление соответствующего файла server/README.md
.github.com/no-src/log v0.1.1 -> v0.1.2
.httputil.HttpPostFileWithCookie
.no_server
, прекращение поддержки удаления сервера файлов.hashutil.
CheckpointsMD5FromFileName` и тестов для вычисления контрольных сумм всего файла, первого блока файла и некоторых контрольных точекhashutil.CompareHashValuesWithFileName
и тестов для вычисления контрольной суммы файла и возврата последнего непрерывного совпадения HashValue
checksum
для вычисления и вывода контрольной суммы файла source
go1.18
MD5FromFileChunk
, который вычисляет хэш блока файла, а также тесты для негоIsEOF
и IsNonEOF
вместе с тестами для нихutil/*.go
в соответствующий пакет *util
и добавлены тесты для них+build
vfsValue.Get
break
в конструкции switch
MD5
в MD5FromString
fs
используется мок для имитации операций с дискомserver/README.md
: исправлены таблицы и обновлены документы по интерфейсу отправки файлов на серверWriter
методом EventLog
DoWithContext
Done
или DoneWithError
.golint
pprof
в manage
pprof_private
в manage_private
conf
, поддерживающий загрузку конфигурационных данных из файла конфигурации вместо использования аргументов командной строки; поддерживается формат yaml
и json
core.Duration
для замены типа time.Duration
с целью реализации пользовательского поведения сериализацииyaml
или json
awesome
chunk_size
, а также способами использования конфигурационных файловserver/README.md
) с добавлением раздела о методах отправки файлов на серверgoroutines
, что приводило к переполнениюchunk_size
для поддержки загрузки больших файлов по частям