Модули
Отслеживается модулей: 115.
mormot.app
mormot.core
mormot.core.base56
- AArch64 получает нативную арифметику больших целых для RSA
- Delphi 2010 избегает небезопасного inline в core paths
- Доступ к заголовкам строк упрощён без изменения поведения
- Очистка выравнивания временно делает mormot.core.base некомпилируемым
- Новые ARM asm selectors также исправляют сломанную core declaration
- Delphi POSIX снова получает helper широкого умножения
mormot.core.base.asmarm5
- AArch64 получает нативную арифметику больших целых для RSA
- ARMv7 atomics получают нативные реализации с корректными barriers
- ARMv8 получает развёрнутую wide-integer арифметику для ECC
- AArch64 получает отдельную процедуру редукции простого P-256
- Сравнение широких целых специализировано для x86-64 и AArch64
mormot.core.base.asmx649
- Числовые границы проверяются напрямую по 53 битам
- Numeric parsers переведены за выбираемые entry points Pascal и SSSE3
- Build switch может принудительно включить SSSE3 parsing JSON-чисел
- Короткие числа с экспонентой обходят общий путь reduction SSSE3
- Numeric benchmarks охватывают больше форм tokens и оба parser API
- MIN_INT64 с дробным суффиксом разбирается правильно
mormot.core.base.asmx861
mormot.core.buffers2
mormot.core.data1
mormot.core.datetime24
- Unix timestamps получили formatter ISO date-time фиксированного размера
- Блокировки GlobalTime выровнены на Delphi AArch64
- AArch64 alignment и Tunnel cleanup получают follow-up fixes
- TSynSystemTime получил parser текстовых значений TimeSpan
- Microsoft TimeSpan text можно преобразовать обратно в ticks
- TimeSpan parsing корректно останавливается на обычных разделителях данных
mormot.core.fmt9
- HTML escaping может заполнять short string вызывающего
- Общая byte-indexed cardinal table заменяет локальные aliases
- XML Save/Restore сохраняют допустимость DOCTYPE
- TXmlParser по умолчанию принимает простые DOCTYPE
- Сканирование DOCTYPE упрощено без расширения допустимого markup
- Абсолютный XML lookup намеренно перемещает parser
mormot.core.fpcx64mm15
- Win64 allocator assembly переносит сохранение состояния в FPC-managed locals
- Оставшиеся вызовы Win64 allocator больше не сохраняют регистры через push/pop
- core: new FPCMM_MEDIUMTOLARGE conditional
- core: add opt-in full small-block sharding
- core: read Win64 thread ID directly from the TEB
- core: #563 code cleanup
mormot.core.interfaces5
- SOA-методы могут возвращать JSON без binary magic prefixes
- Delphi Android ARMv7 получает рабочие interface calls и packed JSON
- Delphi Android и iOS получают статические AArch64 interface stubs
- AArch64 follow-up меняет только стиль и inline
- Interface calls FPC POSIX возвращают Currency из правильного регистра
mormot.core.json8
- Удаление JSON magic переписано как быстрый copy-on-write scan
- Префиксы magic у JSON BLOB теперь можно удалить из сериализованного текста
- JSON-тесты и разбор HTTP-строк получили нефункциональную очистку
- JSON length guard переписан без изменения результата
- JSON escaping больше не читает за пределами buffer
- Delphi Android ARMv7 получает рабочие interface calls и packed JSON
mormot.core.log57
- Очистка выравнивания временно делает mormot.core.base некомпилируемым
- Ошибки тестов получили exception-aware helper
- Exception logs допускают неизвестный instruction address
- Delphi exception interception включается по реальной доступности RTL
- mTLS test workers надёжно ловят и классифицируют network exceptions
- Logging serialization и SChannel accept снова компилируются после новых flags
mormot.core.mustache1
mormot.core.mvc3
mormot.core.os76
- Переменные окружения сохраняют пустые значения и восстанавливают отсутствие
- Неизвестные аргументы командной строки называют правильный token
- Delphi 2010 избегает небезопасного inline в core paths
- POSIX RunRedirect возвращается сразу после закрытия pipe дочерним процессом
- WinHTTP включает TLS 1.3 на поддерживаемых версиях Windows
- Очистка выравнивания временно делает mormot.core.base некомпилируемым
mormot.core.os.delphi2
mormot.core.os.posix22
- Переменные окружения сохраняют пустые значения и восстанавливают отсутствие
- POSIX RunRedirect возвращается сразу после закрытия pipe дочерним процессом
- Кэш системной информации больше не использует общую OS-блокировку
- Delphi Darwin линкует Mach process API из clib
- AppendSysInfo переиспользует секундные binary/text snapshots
- После platform merge сходятся пути сборки BSD, FPC и Android
mormot.core.os.security13
- Низкоуровневые HTTP.sys helpers меняют выходные контракты
- Общая byte-indexed cardinal table заменяет локальные aliases
- Windows wrapper декодирует PEM и Base64 certificate text
- Windows certificate stores предоставляют CNG-backed identities
- RSA envelope header получил единое определение
- Layouts certificate records исправлены после расширения Crypt32
mormot.core.os.windows8
- Переменные окружения сохраняют пустые значения и восстанавливают отсутствие
- KEEP_STACKFRAMES сохраняет project stack-frame settings
- Исключения FPC Windows сохраняют call stack, захваченный RTL
- AppendSysInfo переиспользует секундные binary/text snapshots
- Wine получил отдельный флаг ненадёжного http.sys
- Стартовые nonce больше не входят рекурсивно в основной Random128
mormot.core.perf1
mormot.core.rtti1
mormot.core.search3
mormot.core.test8
- Test cases получили helpers общего запуска и завершения tasks
- Общие test tasks получили default timeout и адаптированное число workers
- Конкурентные тесты queue учитывают число workers в PRISM
- Ошибки тестов получили exception-aware helper
- Regression tests сообщают неожиданные исключения структурированно
- TSynTests сериализует multithread console updates
mormot.core.text47
- Cookies __Secure- после пробела разбираются под логическим именем
- Форматирование Double на ARM читает правильное слово нормализации
- Очистка выравнивания временно делает mormot.core.base некомпилируемым
- DoubleToAscii использует нативное широкое умножение на ARM
- X.509 lookup принимает human-formatted thumbprints
- FormatAdder больше не пишет через пустое состояние formatter
mormot.core.threads33
- Остановка timer ждёт запрошенное число секунд
- Фоновые timers отмечают обработку до обновления счётчиков
- Гонка пробуждения thread pool могла оставить работу в очереди
- Счётчики завершения thread pool больше не гоняются с dispatch и wake-up
- Чтение pipe точного размера возвращает EOF вместо нового ожидания
- Thread-task pool может напрямую выполнять callback TNotifyEvent
mormot.core.unicode10
- Общая byte-indexed cardinal table заменяет локальные aliases
- UniqueRawUtf8ZeroToTilde теперь возвращает ограниченный очищенный текст
- Управляющие символы можно заменить in-place
- UTF-8 buffers получают прямую проверку управляющих символов
- Mapped-text и log readers используют один локальный указатель строки
- TCachedValues ищет с comparator, которым отсортирован cache
mormot.core.variants23
- Delphi Android ARMv7 получает рабочие interface calls и packed JSON
- DispInvoke понимает varargs Delphi AArch64
- AArch64 follow-up меняет только стиль и inline
- Дублирующий feature flag cpuSSSE3 удалён
- SSSE3 становится JSON numeric parser по умолчанию на подходящих x86-64 целях
- Числовые границы проверяются напрямую по 53 битам
mormot.crypt
mormot.crypt.core29
- AES-GCM проверяет порядок streaming и сохраняет pending state
- AES-GCM Reset очищает длину оставшегося partial block
- AVX AES-GCM поддерживает частичные и усечённые chunks
- Криптографическое ядро реорганизовано без изменения поведения
- Кадры TTunnelLocal получают authenticated encryption и directional keys
- AES-GCM получает public helper инкремента 96-bit nonce
mormot.crypt.core.asmx644
mormot.crypt.core.asmx864
mormot.crypt.ecc6
- ECC loaders отвергают повреждённые ключи и ключи неверного типа
- ARM atomic wrappers централизуют исправление барьеров
- Внутренние atomic increments используют единый pointer-based helper
- Проверка цепочки устраняет deadlock, но требует сериализации вызывающим кодом
- Бинарный экспорт сертификатов теперь исключает параллельную запись
- core: new Random128(var Value: RawByteString) overload
mormot.crypt.ecc256r16
- Delphi 7/2007 сохраняют совместимый fallback редукции P-256
- Delphi POSIX снова получает helper широкого умножения
- Редукция простого P-256 переносится в архитектурный Intel asm
- AArch64 получает отдельную процедуру редукции простого P-256
- Редукция скаляров P-256 переходит на алгоритм Barrett
- Модульная инверсия P-256 выполняет меньше широких сравнений
mormot.crypt.openssl2
mormot.crypt.other1
mormot.crypt.pkcs1115
- PKCS#11 locking перенесён из low-level engine в catalog
- Неподдерживаемые certificate factories возвращают nil без разыменования
- PKCS#11 shutdown ждёт background discovery
- PKCS#11 import возвращает сохранённый сертификат и откатывает ошибки
- PKCS#11 RSA-PSS signing передаёт обязательные параметры
- PKCS#11 public keys восстанавливаются из algorithm-specific attributes
mormot.crypt.rsa23
- Тесты простоты RSA переходят с L'Ecuyer на NIST DRBG
- RSA serialization и проверка подписей требуют канонической ширины
- Свидетели Miller-Rabin теперь выбираются по FIPS 186-5
- Исправлены раунды простоты RSA и проверка PKCS padding
- AArch64 получает нативную арифметику больших целых для RSA
- Barrett reduction вычисляет только нужные младшие limbs
mormot.crypt.secure14
- ECC loaders отвергают повреждённые ключи и ключи неверного типа
- Переменные окружения сохраняют пустые значения и восстанавливают отсутствие
- Уничтожение binary cookie освобождает managed state контекста
- Разбор REST connection definition больше не зацикливается
- Неподдерживаемые certificate factories возвращают nil без разыменования
- Ed25519 PKCS#8 private keys следуют вложенности RFC 8410
mormot.crypt.win16
- Агрегирующий Lazarus package теперь включает Windows cryptography
- Неподдерживаемые certificate factories возвращают nil без разыменования
- Временные CNG certificates больше не разыменовывают отсутствующий owner
- PKCS#11 signing передаёт data при size query и всегда закрывает session
- GenerateFromCsr делегирует созданному сертификату вместо рекурсии
- Классы Windows CryptoAPI AES перенесены в отдельный unit
mormot.db
mormot.db.core1
mormot.db.nosql.bson1
mormot.db.proxy4
mormot.db.raw.odbc1
mormot.db.raw.oracle1
mormot.db.raw.sqlite34
mormot.db.sql6
- Thread-safe SQL pools удаляют все выделенные соединения
- Массивы PostgreSQL больше не создают неверные literals и не теряют конечные quotes
- SQL-логи сохраняют placeholders после лимита размера
- Финальная правка не даёт старому результату кэша перезаписать новый
- Сканирование устаревших соединений выполняется один раз за интервал
- Реестры классов базы данных и REST используют массивы указателей
mormot.db.sql.odbc2
mormot.defines
mormot.defines17
- AArch64 получает нативную арифметику больших целых для RSA
- Сборки Delphi Intel снова используют assembler crypto paths
- Delphi 2010 избегает небезопасного inline в core paths
- Новые ARM asm selectors также исправляют сломанную core declaration
- HTTP servers получают единый virtual hook idle maintenance
- ARMv7 atomics получают нативные реализации с корректными barriers
mormot.lib
mormot.lib.gssapi6
- POSIX keytab handling получает lock, UTF-8 и возвращаемый результат
- Регистрация keytab повторяется после per-thread ошибки GSSAPI
- Прямой keytab-метод HTTP-аутентификации удалён
- Единый Kerberos HTTP helper теперь работает на Windows и POSIX
- Кроссплатформенный Negotiate parsing вынесен из HTTP server
- Обновление Kerberos keytab сериализовано без блокировки на время загрузки
mormot.lib.openssl1152
- SChannel продолжает handshake при TLS 1.3 key update
- OpenSSL wrapper предоставляет TLS 1.3 key update
- Классические HTTP servers сохраняют полную TLS client-auth policy на соединение
- OpenSSL servers теперь вызывают final peer-validation callback
- TLS callback и Windows decoding helpers консолидированы
- Объявления OpenSSL C long используют платформенные Pascal-типы
mormot.lib.openssl11.full2
mormot.lib.pkcs1110
- PKCS#11 locking перенесён из low-level engine в catalog
- PKCS#11 RSA-PSS signing передаёт обязательные параметры
- PKCS#11 object enumeration всегда finalizes поиск
- PKCS#11 UnLoad finalizes только инициализированные libraries
- PKCS#11 signing передаёт data при size query и всегда закрывает session
- PKCS#11 GetObject возвращает единственный matching record
mormot.lib.quickjs2
mormot.lib.sspi32
- Прямой keytab-метод HTTP-аутентификации удалён
- Единый Kerberos HTTP helper теперь работает на Windows и POSIX
- Кроссплатформенный Negotiate parsing вынесен из HTTP server
- SChannel явно сообщает об отсутствии client credentials и trust failures
- Декларации SChannel предоставляют Windows certificate-chain engines
- TLS callback и Windows decoding helpers консолидированы
mormot.lib.static2
mormot.lib.winhttp12
- WinHTTP включает TLS 1.3 на поддерживаемых версиях Windows
- Состояние WebSocket на запрос заменяет общий last connection
- Низкоуровневые HTTP.sys helpers меняют выходные контракты
- Completion websocket.dll обрабатывается как void
- Получение тела HTTP.sys соответствует контракту Windows API
- Обнаружение proxy через WinHTTP применяет системный bypass list
mormot.misc
mormot.misc.iso1
mormot.net
mormot.net.acme3
mormot.net.async54
- HTTP servers получают единый virtual hook idle maintenance
- ARM atomic wrappers централизуют исправление барьеров
- Async networking получает нефункциональную очистку
- Уничтожение async connection явно прерывает незавершённые записи
- Redirects и 100-Continue теперь корректно обрабатывают тело
- OPTIONS может содержать данные; только HEAD подавляет response body
mormot.net.client57
- WinHTTP соблюдает число redirects и блокирует downgrade с HTTPS
- libcurl не следует большему числу redirects, чем разрешает RedirectMax
- WinHTTP включает TLS 1.3 на поддерживаемых версиях Windows
- Настройка redirects WinHTTP очищена, а объединённый regression test удалён
- libcurl теперь возвращает только headers конечного ответа
- Windows request headers получают стабильное Unicode-хранилище и чистые имена
mormot.net.dhcp9
- Перенесённая static reservation отклоняет старый адрес из запроса client
- Malformed DHCP address options больше не считаются значениями IPv4
- DHCP REQUEST к другому server теперь игнорируется
- Обновление DHCP scope больше не обращается к перемещённому хранилищу
- Внутренние имена и объявления очищены без изменения поведения
- DHCP scope теперь отправляет настроенное доменное имя
mormot.net.dns16
- DNS-ответ теперь должен совпадать с resolver, port и исходным вопросом
- DNS decompression отвергает циклические pointer chains и длинные имена
- Исправлены EDNS fallback и позиционирование записей
- Разбор DNS-записей начинается с вопроса, возвращённого сервером
- DnsQuery включает EDNS 1232 байта и исправляет DNS port по умолчанию
- Запись resolver может содержать собственный port
mormot.net.http15
- Delphi 2010 избегает небезопасного inline в core paths
- Обработка HTTP.sys становится объектом на запрос
- Повреждённый сжатый HTTP-контент больше не выбрасывает исключение
- Текст системной ошибки можно записать прямо в RawUtf8
- JSON-тесты и разбор HTTP-строк получили нефункциональную очистку
- Неоднозначный helper bodyless-method помечен deprecated
mormot.net.ldap11
- Разбор LDAP URI различает default и custom ports
- LDAP сохраняет явно заданный порт до подключения
- Доступ к заголовкам строк упрощён без изменения поведения
- Windows basic Kerberos authentication использует полный server context
- Комментарии LDAP и WebSocket уточнены без runtime changes
- Прерванный LDAP-поиск освобождает состояние range перед возвратом
mormot.net.relay2
mormot.net.rtsphttp2
mormot.net.server50
- Ошибки HTTP.sys response и WebSocket teardown становятся видимыми и ограниченными
- HTTP.sys WebSocket send закрывается при ошибке и продолжает drain очереди
- HTTP.sys servers возвращают периодический logging, telemetry и OnIdle
- Закрытие HTTP.sys WebSocket и учёт ping объединены в один путь
- WebSocket buffers и action queues корректно переживают сбои callback
- HTTP servers получают единый virtual hook idle maintenance
mormot.net.sock76
- GetProxyForUri теперь требует разобранный TUri
- Redirect выполняет reconnect при изменении эффективного proxy route
- Reconnect сохраняет socket layer, а redirects отклоняют не-HTTP schemes
- Повреждённые URI authority отклоняются, а proxy ports сравниваются согласованно
- Повторное использование proxy учитывает credentials и возвращает WebSocket errors
- Обнаружение socket proxy теперь учитывает NO_PROXY на Windows и POSIX
mormot.net.sock.posix18
- Повторы POSIX poll учитывают реальный timeout и временные ошибки
- POSIX receive wait распознаёт неверные descriptors и повторяет раннее пробуждение
- Тесты peer-cache ждут привязки HTTP listener
- После platform merge сходятся пути сборки BSD, FPC и Android
- UNIX socket addresses используют нативный размер FreeBSD
- POSIX host records соответствуют нативному типу C
mormot.net.sock.windows50
- WinHTTP включает TLS 1.3 на поддерживаемых версиях Windows
- SChannel продолжает handshake при TLS 1.3 key update
- Закрытие SChannel socket сообщается без shutdown exceptions
- Корректное закрытие SChannel при send теперь возвращает nrClosed
- SChannel mTLS получил совместимость с Windows 7 и более строгие chain checks
- Финальные исправления SChannel устраняют конфликт типов и блокирующую загрузку chain
mormot.net.tftp.client2
mormot.net.tftp.server2
mormot.net.tunnel46
- AES-GCM проверяет порядок streaming и сохраняет pending state
- Кадры TTunnelLocal получают authenticated encryption и directional keys
- Ошибки аутентификации tunnel очищают plaintext и handshake secrets
- Tunnel metadata проверяются до parsing и затем очищаются
- Длина metadata tunnel handshake больше не вызывает underflow указателя
- Tunnel tests сообщают состояние соединений и текст flags
mormot.net.ws.async5
- WebSocket broadcast использует безопасные snapshots для обоих timeout modes
- WebSocket broadcast освобождает connection read lock до записи
- Async HTTP initialization публикует состояние до выполнения
- WebSocket heartbeat timing переведён на HeartbeatDelay
- WebSocket-кадры без задержки сразу будят async-сервер
mormot.net.ws.client7
- Legacy WebSocket factories теперь сохраняют запрошенный производный класс клиента
- Повторное использование proxy учитывает credentials и возвращает WebSocket errors
- WebSocket-клиенты получили factories с поддержкой URI и options
- WebSocket setup перенесён в общий socket initialization hook
- WebSocket callback waits следуют effective receive timeout
- WebSocket clients и local tunnels безопасно публикуют shutdown state
mormot.net.ws.core7
- Логирование кадров WebSocket больше не сбрасывает состояние remote log без необходимости
- nil в настройках WebSocket больше не отключает шифрование
- Стартовые nonce больше не входят рекурсивно в основной Random128
- Выбор WebSocket subprotocol разделяет распознавание и настройку экземпляра
- net: new NetRandom32 function - lighter than plain shared Random32 on thread contention (non blocking sequence) - used e.g. for DHCP XID or WebSockets masking
- net: optimized TWebSocketFrameList.Pop
mormot.net.ws.server1
mormot.orm
mormot.orm.base7
- X.509 lookup принимает human-formatted thumbprints
- Туннельные потоки BSD теперь инициализируют системную блокировку
- TOSLightLock uses WaitOnAddress on Windows 8+
- Updated TOSLightLock usage comments
- TOrmTable variant getters shed a redundant clear at the call site
- ORM temp variants switch to TSynVarData and standard VarClear
mormot.orm.core1
mormot.orm.rest2
mormot.orm.server2
mormot.orm.sql3
mormot.orm.sqlite31
mormot.rest
mormot.rest.client3
mormot.rest.core5
- REST- и ORM-хуки потоков теперь требуют TThreadAbstract
- Финальная правка не даёт старому результату кэша перезаписать новый
- Кэш времени REST получил атомарное обновление и чтение под блокировкой
- Реестры классов базы данных и REST используют массивы указателей
- all: refactoring since TLightLock is now 32-bit
mormot.rest.http.client8
- REST socket-клиенты теперь сохраняют явно заданные proxy settings
- Разбор REST connection definition больше не зацикливается
- REST HTTP clients переходят на consolidated timeout record
- REST HTTP clients хранят proxy только в extended options
- REST socket clients согласованно применяют таймауты фаз
- REST clients устанавливают timeout policy до подключения
mormot.rest.http.server5
mormot.rest.server8
- REST SSPI-аутентификация может выбрать POSIX keytab
- Signed URI sessions корректно переживают tick rollover
- REST session expiry больше не теряет точность
- REST- и ORM-хуки потоков теперь требуют TThreadAbstract
- Финальная правка не даёт старому результату кэша перезаписать новый
- Конкурентные REST-запросы больше не вызывают OnIdle одновременно
mormot.script
mormot.soa
mormot.soa.client2
mormot.soa.core1
mormot.soa.server4
- SOA-методы могут возвращать JSON без binary magic prefixes
- Delphi exception interception включается по реальной доступности RTL
- Очистка блокировок сохраняет поведение времени выполнения
- soa: fixed awful missing ReadOnlyUnLock call - during TServiceFactoryServer.RetrieveInstance - would appear on FPC Linux but not on FPC Windows because of HASFASTTRYFINALLY
mormot.tools
mormot.tools.logview5
mormot.tools.logview.remote1
mormot.ui
mormot.ui.controls1
mormot.ui.pdf1
mormot2
recommended-patterns documentation
recommended-patterns example
recommended-patterns example1
test.core
test.core.base6
- Тесты методов теперь покрывают конкретные predicates HTTP-кода
- Покрытие queue перенесено в модуль тестов threads
- AVX-512 detection проверяет управляемое OS состояние ZMM
- Коды Windows CNG получают читаемые имена ошибок
- Числовой benchmark проверяет выход generator за буфер до копирования
- Исправление cache получает прямые тесты add, lookup и reset
test.core.crypt2
test.core.data7
- JSON-тесты и разбор HTTP-строк получили нефункциональную очистку
- Удаление JSON magic покрыто тестами copy-on-write и повреждённого ввода
- Тест 7-Zip с неверным паролем больше не логирует ожидаемое исключение
- Общая byte-indexed cardinal table заменяет локальные aliases
- ZIP reader в памяти извлекает последнюю data-descriptor запись
- Покрытие queue перенесено в модуль тестов threads
test.net
test.net.proto29
- Повреждённые URI authority отклоняются, а proxy ports сравниваются согласованно
- Повторное использование proxy учитывает credentials и возвращает WebSocket errors
- Сопоставление доменов и IP для NO_PROXY стало публичным helper
- Tunnel tests сообщают состояние соединений и текст flags
- Имена URI scheme и порты по умолчанию стали публичными константами
- Async WebSocket broadcast tests синхронизируются с завершённым upgrade