Topazdocs
Основы

История

Продуктовые этапы и контрольные патчи, из которых вырос текущий Topaz.

Topaz развивается через публичные минорные выпуски и патчи контрольного качества. Минорный выпуск задаёт продукт, который устанавливает пользователь, а патчи фиксируют конкретную работу, подготовившую следующий рубеж.

Этапы продукта

ВерсияОсновное изменение
5.0Задано направление языка: выражения, явный Result и полноценные Unicode-идентификаторы.
5.1Добавлены структурные циклы и уточнены компоновка, операторы, сопоставление с образцом, конкурентность и шаблоны.
5.2Закреплена модель модулей import/export и собран первый единый публичный набор инструментов.
5.3Расширены стандартная библиотека и поддержка реальных программ без расхождения семантики между каналами поставки.
5.4Стандартизованы платформенные бинарные файлы и установка; начата генерация Python.
5.5Python стал поддерживаемым бэкендом; расширено согласование интерпретатора, Rust и Python.
5.6Объединены зрелый язык, среда выполнения, пакеты, WASM Playground и поверхности поставки.
5.7Опубликован устанавливаемый автономный цикл Web-приложения с Data Lens и Markdown Live.
5.8Импорт и экспорт локального текста и ограниченное состояние пакета объединены в цикл приложения с локальными данными.
5.9Опубликован цикл ограниченного HTTP-сервиса с явными входящими полномочиями, конечными лимитами, структурированными операциями и автономными артефактами.
5.10Опубликован штатный цикл двоично-медийного ядра с объяснимым выбором нативной генерации, точными байтовыми операциями, детерминированными кодеками и поддерживаемыми свидетельствами CodeImage.

Контрольные патчи

Каждый закрытый патч получает строку в истории независимо от того, был ли он опубликован напрямую или накоплен в develop для следующего минорного выпуска. Предыдущие линии свёрнуты, чтобы сохранить обозримой общую траекторию продукта.

5.4.x — начало генерации Python
ПатчДоступностьРезультат для пользователя
5.4.1ПубличныйДобавлен первый экспериментальный путь генерации Python рядом с интерпретатором и выводом Rust.
5.5.x — завершение бэкенда Python
ПатчДоступностьРезультат для пользователя
5.5.1ВнутреннийДля создаваемых массивов Python добавлены сравнение однотипных Bytes и стабильная естественная сортировка.
5.5.2ВнутреннийИтоговые значения верхнеуровневых if и match согласованы между интерпретатором, создаваемыми Rust и Python.
5.5.3ВнутреннийВсе бэкенды стали одинаково отклонять верхнеуровневые ветви return, сохраняя поддержку return внутри функций.
5.5.4ПубличныйПоведение очистки и ошибок выполнения в Python согласовано так, чтобы отложенная работа не выполнялась после невосстановимого сбоя.
5.5.5ПубличныйДобавлена ограниченная серверная граница JSON и точное совпадение чисел, экранирования, повторных ключей и ошибок между бэкендами.
5.5.6ПубличныйНеподдерживаемые формы Python стали завершаться полной диагностикой с привязкой к исходному коду вместо неполного вывода.
5.5.7ПубличныйЗакрыты расхождения Option, Result, единичных значений и операций высшего порядка в создаваемом Python.
5.5.8ПубличныйСогласованы идентичность чисел с плавающей точкой и поведение ключей в Map, Set и связанных операциях с контейнерами.
5.6.x — устанавливаемые продукты и Web-основа
ПатчДоступностьРезультат для пользователя
5.6.1ПубличныйСборки перенесены во временное хранилище, рост кэша Python ограничен, добавлены идентичность артефактов, лицензии и пакетные гарантии.
5.6.2ПубличныйДокументация и представление npm обновлены без изменения поведения.
5.6.3ПубличныйАдрес закрытого репозитория удалён из публичных метаданных npm.
5.6.4ПубличныйДобавлены основа устанавливаемого многомодульного цикла приложения, автономные нативные сборки и сборки Python, а также машиночитаемая проверка agent-pack.
5.6.5ПубличныйЗавершены устанавливаемый цикл приложения, fmt --check, локализованные руководства, прямая публикация npm и ограниченная полевая проверка.
5.6.6ВнутреннийДобавлен изменяемый ByteBuffer фиксированной длины и исправлено владение Web-памятью для крупных бинарных продуктов.
5.6.7ВнутреннийДобавлены проверяемый жизненный цикл Web-приложения, безопасная браузерная среда, каркас приложения, локальная разработка и полный управляемый статический комплект.
5.6.8ВнутреннийЗавершены поддерживаемые тестовые продукты Data Lens и Markdown Live, исправлены воспроизведённые проблемы проверки и среды, подготовлен атомарный рубеж 5.7.
5.7.x — цикл приложения с локальными данными
ПатчДоступностьРезультат для пользователя
5.7.1ВнутреннийДобавлены ограниченное правами открытие локальных файлов UTF-8 и детерминированная загрузка текста, проверенные на реальных CSV и JSON в Data Lens.
5.7.2ВнутреннийДобавлены ограниченное строковое состояние пакета, явные результаты загрузки, сохранения и удаления, а также восстановление после перезагрузки.
5.7.3ВнутреннийData Lens и Markdown Live усилены многоязычными файлами, повторными операциями, точным экспортом, восстановлением фокуса и исправлением скорости отрисовки.
5.7.4ВнутреннийГотовый набор функций заморожен, подготовлены следующая спецификация языка и поверхности версий, проверена репетиция атомарной активации без записи.
5.8.x — цикл приложения с ограниченным HTTP-сервисом
ПатчДоступностьРезультат для пользователя
5.8.1ВнутреннийДобавлены управляемая ограниченная цель HTTP/1.1, отмена и лимиты на запрос, автономный артефакт и сервис Data Lens с общим проверенным ядром браузерного продукта.
5.8.2ВнутреннийУкреплены медленные, некорректные, прерванные, чрезмерные, перегруженные, аварийные и незавершающиеся запросы; проверены изоляция и восстановление мощности.
5.8.3ВнутреннийДобавлены просмотр итоговой конфигурации, версионированные структурированные журналы, события штатного завершения, проверка перезапуска и параллельные многоязычные сценарии.
5.8.4ВнутреннийДоказано, что браузерный и сервисный Data Lens используют одно проверенное ядро; усилены реалистичные многоязычные сценарии и подготовлены следующая спецификация и граница репетиции активации без записи.
5.9.x — наблюдаемые нативные ядра приложений
ПатчДоступностьРезультат для пользователя
5.9.1ВнутреннийДобавлены детерминированный отчёт о нативном понижении и закрытый при сомнении гибридный путь: он специализирует подходящие скалярные функции верхнего уровня, сохраняя упакованное приложение.
5.9.2ВнутреннийДобавлены точные нативные быстрые пути для Bytes и ByteBuffer, включая доказанные проверяющим прямые поля record; сохранены упакованный fallback, ошибки границ, снимки и атомарность записи.
5.9.3ВнутреннийДобавлен детерминированный raw DEFLATE с фиксированным Хаффманом для двоичных медиа: точные байты Rust/Web, ограниченные поиск и память и явный отказ цели Python.
5.9.4ВнутреннийДобавлена детерминированная систематическая защита RS(255,223): точные многоблочные байты, ограниченный вход, общая реализация Rust/Web и явный отказ цели Python.
5.9.5ВнутреннийДобавлена беззнаковая CRC-32/ISO-HDLC для некриптографической проверки целостности с одинаковым результатом в интерпретаторе, Rust, Python, Web, Worker и Playground.
5.9.6ВнутреннийДобавлен один детерминированный поток RFC 1950 zlib вокруг точных байтов DEFLATE с фиксированным Хаффманом, ограниченным входом и явным отказом цели Python.
5.9.7ВнутреннийШтатный путь бинарных медиа укреплён стабильными проверками renderer и proof worker CodeImage, запуском без исходников и репетицией неактивной границы 5.10 без записи.

Текущая основа

Это руководство всегда описывает текущий продукт Topaz. Точную версию установки смотрите в Состоянии инструментария, а миграцию старого синтаксиса используйте только для действительно старых форм исходного кода.

Внутренние свидетельства LIT

Внутренние свидетельства охватывают один исходник Lispex-in-Topaz для интерпретатора, создаваемого Rust, создаваемого Python и Web на ограниченной поверхности из четырёх сред выполнения. Они не меняют язык или публичную границу продукта и не доказывают независимость исходников либо эквивалентность всего языка. LIT не является публичным бэкендом.

Связанная документация