FSNOTIFY_DEBUG
для вывода событий в stderr ([#619]).windows: исправлено поведение WatchList()
([#610]).
kqueue: игнорируются события с Ident=0 ([#590]).
kqueue: установлен параметр O_CLOEXEC для предотвращения передачи файловых дескрипторов дочерним процессам ([#617]).
kqueue: события при наблюдении за символической ссылкой выводятся как «/path/dir/file» вместо «path/link/file» ([#625]).
inotify: не отправляется событие IN_DELETE_SELF, если также отслеживается родительский каталог ([#620]).
fen: разрешено отслеживание подкаталогов отслеживаемых каталогов ([#621]).
Для этой версии fsnotify требуется Go 1.17.
illumos: добавлен бэкенд FEN для поддержки illumos и Solaris (#371).
all: добавлена функция NewBufferedWatcher()
, которая позволяет использовать буферизованный канал, что может быть полезно в случаях, когда невозможно контролировать буфер ядра и получать большое количество событий пакетами (#550, #572).
all: добавлена функция AddWith()
, идентичная функции Add()
, но позволяющая передавать параметры (#521).
windows: добавлена возможность установки размера буфера ReadDirectoryChangesW()
с помощью fsnotify.WithBufferSize()
; по умолчанию используется значение 64 КБ, которое является максимальным значением, работающим на всех платформах, и достаточным для большинства целей, но в некоторых случаях требуется больший буфер (#521).
inotify: удаляется наблюдатель, если отслеживаемый путь переименован (#518). После переименования сообщаемое имя не обновлялось или даже было пустой строкой. Inotify не предоставляет хороших средств для его обновления, поэтому просто удалите наблюдателя. Так уже работало на kqueue и FEN. На Windows это работает и остаётся рабочим.
windows: не отслеживаются изменения атрибутов файлов (#520).
Изменения атрибута файла отправляются как FILE_ACTION_MODIFIED
через Windows API без возможности определить, являются ли они записью файла или изменением атрибута, поэтому будут отображаться как событие fsnotify.Write. Это никогда не бывает полезным и может привести к появлению множества ложных событий записи.
windows: возвращается ошибка ErrEventOverflow
, если буфер заполнен (#525).
Раньше возвращалась только ошибка «короткое чтение», что затрудняло обнаружение этой ошибки.
kqueue: обеспечивается правильная доставка событий для всех файлов при удалении отслеживаемого каталога (#526). Ранее они отправлялись с пустой строкой (""), или точкой (".") в качестве имени пути.
kqueue: не создаются ложные события создания для символических ссылок (#524). Ссылка будет разрешена, но kqueue «забудет», что он уже видел саму ссылку, что приведёт к событию Create для каждого события Write для каталога.
all: возвращается ошибка ErrClosed
при вызове Add()
, когда наблюдатель закрыт (#516).
other: добавлены Watcher.Errors
и Watcher.Events
к недействующему Watcher
в backend_other.go
, что упрощает использование на неподдерживаемых платформах, таких как WASM, AIX и т. д. (#528).
other: используется файл backend_other.go
без операций, если установлен тег сборки appengine
; Google AppEngine запрещает использование небезопасного пакета, поэтому бэкэнд inotify там не компилируется.
Эта версия fsnotify... Вот перевод текста на русский язык:
kqueue: исправить логику для CREATE после REMOVE #111 (спасибо @bep)
kqueue: исправить состояние гонки в Close #105 (спасибо @djui за сообщение об ошибке и @ppknap за написание неудачного теста)
inotify: исправить ошибку в тесте
включить режим гонки ### Дев / 2014-05-23
[API] Удалить текущую реализацию WatchFlags.
code.google.com/p/go.exp/fsnotify
в рамках подготовки к включению в стандартную библиотеку Go.DELETE_SELF
(запрошено @taralx);IN_IGNORED
;Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )