Версия | Дата выпуска | Ссылки | Изменения |
---|
5.40.0 | 9 июня 2024 г. | Полные примечания к выпуску | - Новое ключевое слово `__CLASS__`
- Добавлен атрибут `:reader` для переменных поля.
- Добавлены встроенные функции inf и nan (экспериментально).
- Новый логический оператор `^^` xor среднего приоритета
- Функция try/catch больше не является экспериментальной.
- Исправления безопасности
|
---|
5.38.2 | 29 ноября 2023 г. | Полные примечания к выпуску | - Исправления безопасности
- Примечание. Версия 5.38.1 была отозвана из-за неработающей версии.
|
---|
5.38.0 | 3 июля 2023 г. | Полные примечания к выпуску | - Новая класса функция
- Юникод 15
- Предупреждения об устаревании теперь имеют отдельные подкатегории.
- API-хуки
- Возможность установить последовательное случайное начальное число
- Выражения по умолчанию «определенное или» и «логическое-или» в сигнатурах подпрограмм.
- Предел кванторов регулярных выражений увеличен до I32_MAX.
- Использование одинарных кавычек в качестве разделителя пакетов устарело.
- Улучшения производительности
- Улучшения управления потоком
defer и finally блоки - Switch и Smart Match, добавленные в версии 5.10, устарели.
|
---|
5.36.3 | 29 ноября 2023 г. | Полные примечания к выпуску | - Исправления безопасности
- Примечание. Версия 5.36.2 была отозвана из-за неработающей версии.
|
---|
5.36.1 | 23 апреля 2023 г. | Полные примечания к выпуску | |
---|
5.36.0 | 28 мая 2022 г. | Полные примечания к выпуску | isa оператор больше не считается экспериментальным - Юникод 14
- Наборы регулярных выражений больше не считаются экспериментальными.
- Просмотр переменной длины в регулярных выражениях больше не считается экспериментальным.
- Логическое отслеживание
- Новые встроенные функции
- Сигнатуры подпрограмм больше не считаются экспериментальными.
- Добавлены блоки `defer`.
- Экспериментальный
try/catch с finally блоки - Экспериментально
for итераторы
|
---|
5.34.3 | 29 ноября 2023 г. | Полные примечания к выпуску | - Исправления безопасности
- Примечание. Версия 5.34.2 была отозвана из-за неработающей версии.
|
---|
5.34.1 | 13 марта 2022 г. | Полные примечания к выпуску | |
---|
5.34.0 | 20 мая 2021 г. | Полные примечания к выпуску | - Экспериментальный
try/catch синтаксис - Пустая нижняя граница в кванторах регулярных выражений (
qr/{,n}/ ) - Новый восьмеричный синтаксис с
0o префиксы (например, 0o123_456 )
|
---|
5.32.1 | 23 января 2021 г. | Полные примечания к выпуску | - Новая документация perlgov и perlsecpolicy.
|
---|
5.32.0 | 20 июня 2020 г. | Полные примечания к выпуску | - Экспериментальный
isa оператор - Цепные сравнения (например,
1 <= $x <= 10 ) - Юникод 13.0 поддерживается
- Числовые переменные не могут иметь префикс 0 .
|
---|
5.30.3 | 1 июня 2020 г. | Полные примечания к выпуску | |
---|
5.30.2 | 14 марта 2020 г. | Полные примечания к выпуску | - Исправления ошибок и обновления модулей
|
---|
5.30.1 | 10 ноября 2019 г. | Полные примечания к выпуску | - Исправления ошибок и обновления модулей
|
---|
5.30.0 | 22 мая 2019 г. | Полные примечания к выпуску | - Поддержка Юникод 12.1
- Просмотр переменной длины в шаблонах регулярных выражений
|
---|
5.28.0 | 22 июня 2018 г. | Полные примечания к выпуску | - Юникод 10.0 поддерживается
- удалить фрагменты хеша ключ/значение
- алфавитные синонимы для некоторых утверждений регулярных выражений (экспериментально)
- Смешанные сценарии Юникода теперь можно обнаружить.
- Редактирование на месте с помощью perl -i теперь безопаснее
- Инициализация совокупных переменных состояния
- Полноразмерные номера индексных дескрипторов
- The
sprintf %j модификатор размера формата теперь доступен в компиляторах до C99. - Флаг закрытия при выполнении устанавливается атомарно
- Побитовые операции, специфичные для строк и чисел, больше не являются экспериментальными.
- Локали теперь потокобезопасны в системах, которые их поддерживают.
- Новая предопределенная переменная, доступная только для чтения.
${^SAFE_LOCALES} - Исправления безопасности
- Порядок атрибутов и подписей подпрограмм изменен на исходный порядок из версии 5.20.
- Алгоритм сортировки больше нельзя изменить.
sort прагма невозможна.
|
---|
5.26.0 | 30 мая 2017 г. | Полные примечания к выпуску | - По соображениям безопасности текущий каталог (".") больше не включается по умолчанию в конец пути поиска модуля (@INC).
- Лексические подпрограммы больше не являются экспериментальными.
- Отступы здесь-документы
- Новые модификаторы регулярных выражений и группы захвата.
- Юникод 9.0. Теперь поддерживается
- Perl теперь может выполнять сопоставление по умолчанию в локалях UTF-8 на платформах, которые его поддерживают.
|
---|
5.24.0 | 8 мая 2016 г. | Полные примечания к выпуску | - Юникод 8.0. Теперь поддерживается
- Новая граница разрыва строки в регулярных выражениях
- Расширенные классы символов в квадратных скобках работают в локалях UTF-8.
- Более явные определения целочисленного сдвига
- Переупорядочены аргументы точности для printf и sprintf.
- Для обратного вызова sigaction предоставлено больше полей
- Экспериментальная функция автоопределения была удалена.
- Разыменование Postfix больше не является экспериментальным.
|
---|
5.22.0 | 1 июня 2015 г. | Полные примечания к выпуску | - Юникод 7.0. Теперь поддерживается
- Исторические модули CGI.pm и Module::Build были удалены из основного дистрибутива.
- Оператор двойного ромба
- Побитовые операторы с устранением неоднозначности (как экспериментальная функция)
- Псевдонимы переменных (в качестве экспериментальной функции)
- Порядок атрибутов и подписей подпрограммы был изменен, но в версии 5.28 это было изменено обратно.
|
---|
5.20.0 | 27 мая 2014 г. | Полные примечания к выпуску | - Сигнатуры подпрограмм (как экспериментальная функция)
- Разыменование Postfix (как экспериментальная функция)
- Синтаксис среза ключ/значение
|
---|
5.18.0 | 18 мая 2013 г. | Полные примечания к выпуску | - операции с наборами символов регулярных выражений (в качестве экспериментальной функции)
- лексические подпрограммы (как экспериментальная функция)
|
---|
5.16.0 | 20 мая 2012 г. | Полные примечания к выпуску | __SUB__ для выполняющейся в данный момент подпрограммы - оценка с устранением неоднозначности кодировки
fc складывания корпуса функция
|
---|
5.14.0 | 14 мая 2011 г. | Полные примечания к выпуску | - Юникод 6.0 поддерживается
- Семантика Юникода применяется ко всем строкам
- Неразрушающая замена (s///r)
- Добавлены модификаторы регулярных выражений /d, /l, /u и /a.
- Реентерабельные регулярные выражения
- Автоматическое разыменование (autoderef) встроенными модулями (экспериментальная функция, удалена в версии 5.24)
|
---|
5.12.0 | 12 апреля 2010 г. | Полные примечания к выпуску | - Юникод 5.2 поддерживается
- Новый
package NAME VERSION синтаксис - The
... добавлен оператор - Неявные ограничения с
use 5.12.0 (или более поздняя версия) - Соответствие 2038 году
|
---|
5.10.1 | 23 августа 2009 г. [1] | Полные примечания к выпуску | - Несовместимые изменения в операторах диапазона и определенных или в логическом контексте, которые влияют на новые
switch особенность - Несовместимые изменения в операторе умного сопоставления
- Юникод 5.1.0 поддерживается.
- Новый интерфейс для подключаемых порядков разрешения методов.
- новый
overloading прагма - Параллельные тесты
- DTrace Поддержка
- Исправления ошибок и обновления модулей
setuidperl устарел
|
---|
5.10.0 | 18 декабря 2007 г. [1] | Полные примечания к выпуску | - Юникод 5.0 поддерживается
- Новый
feature прагма - Новый оператор «определенное ИЛИ» (
// ) - Новый
switch функция и связанный с ней оператор интеллектуального сопоставления [ нужны разъяснения ] ( ~~ ) - Многочисленные новые функции регулярных выражений
- Новый
say встроенный (через функцию say ) - Возможность объявлять статические переменные с помощью
state
|
---|
5.8.1 | 25 сентября 2003 г. [1] | Примечания к выпуску Perl 5.8.1 | - Улучшена рандомизация порядка хеширования по соображениям безопасности.
- Юникод не включен по умолчанию в зависимости от настроек локали.
- Строки версий слева от жирной запятой рассматриваются как строковые литералы.
- Небезопасные сигналы были повторно добавлены.
- Улучшенные связанные массивы с отрицательными индексами.
- Поддерживает Юникод 4.0.0.
- Псевдохеши устарели.
- Темы старого стиля устарели.
- Различные обновления модулей.
- Прагма `strict` проверяет параметры.
- Улучшения документации.
- Исправления ошибок.
|
---|
5.8.0 | 18 июля 2002 г. [1] | Объявление о выпуске Perl 5.8.0 | - Поддерживает Юникод 3.2.0.
- Регулярные выражения теперь работают с Unicode.
- Поддержка нелатинских кодировок через модуль Encode.
- Введение потоков интерпретатора
- Новая реализация PerlIO
- Скаляры можно использовать в качестве дескрипторов файлов.
- Повышенная числовая точность преобразования строковых чисел с помощью встроенной процедуры.
- Завершена поддержка 64-битных версий.
- Новый
sort прагма для изменения алгоритма сортировки. (Это было отключено в версии 5.28.) - Новые модули: Digest::MD5, File::Temp, Filter::Simple, libnet, List::Util, Memoize, MIME::Base64, Scalar::Util, Storable, Switch, Test::More, Test::Simple , Text::Balanced, Tie::File и т. д.
- Несовместимости:
- Perl 5.8 не совместим на двоичном уровне с более ранними версиями Perl.
- 64-битные версии больше не используют Perl malloc.
- порядок хеширования изменен
- Команда dump() устарела.
- Потоки 5.005 устарели.
- видимая пользователю реализация псевдохешей устарела и запланирована к удалению
- Использование испорченных данных в exec LIST и system LIST приводит к предупреждению и станет фатальной ошибкой в будущем выпуске.
- Для tr///C, tr///U вместо этого можно использовать пакет("C0", ...) и пакет("U0", ...).
|
---|
5.6.0 | 22 марта 2000 г. [1] | Выпущен Perl v5.6.0 | - Нумерация версий изменена на формат «revision.version.subversion».
- Внутреннее представление строк изменено на UTF-8, поддержка EBCDIC прекращена.
- Улучшенная поддержка параллельного выполнения интерпретаторов.
- Строковые литералы могут быть записаны с использованием порядковых номеров символов.
- Новый синтаксис атрибутов подпрограмм. (Прагма attrs теперь устарела.)
- Поддержка больших файлов, где это возможно.
- Поддержка двоичных чисел.
- Дистрибутив JPL («Java Perl Lingo») поставляется в комплекте с Perl.
- Было добавлено много новой документации в виде руководств и справочной информации.
- Экспериментальные возможности:
- Поддержка Юникод
- Поддержка многопоточности и эмуляции fork() в Windows.
- Поддержка 64-бит.
- Lvalue подпрограммы.
- Слабые ссылки.
- Тип данных псевдохеш.
|
---|
5.005 | 22 июля 1998 г. [1] | Выпущена версия 5.005 (с техническим обновлением 01) | - Версия 5.005 не двоично совместима с предыдущими выпусками.
- Исходный код теперь в формате ANSI C.
- Новые поддерживаемые платформы включают BeOS, DOS, MPE/ix.
- Поддерживается синтаксис EXPR foreach EXPR.
- Экспериментальные возможности:
- Абстракция объектов C++ Perl поддерживается в Win32.
- Предварительно скомпилированные регулярные выражения.
- Расширенная поддержка 64-бит.
- Надежные сигналы, когда потоковая обработка включена.
- Расширенная поддержка обработки исключений.
- Компиляторы EGCS/GCC теперь поддерживаются в Win32.
|
---|
5.004 | 15 мая 1997 г. | perl5004delta — что нового в perl5.004 | |
---|
5.003_1 | 31 июля 1996 г. | Полные примечания к выпуску | |
---|
5.003 | 25 июня 1996 г. | Полные примечания к выпуску | - Исправления безопасности
- Исправления ошибок
|
---|
5.002_1 | 25 марта 1996 г. | Полные примечания к выпуску | - Изменения пространства имен EMBED теперь используются по умолчанию.
- Исправлено несколько ошибок в ядре
- Добавлены две новые магические переменные: $^E и $^O.
- Был добавлен механизм, позволяющий перечислять локально применяемые исправления в
perl -v выход - В документацию внесены различные мелкие исправления и обновления.
- Обширные обновления портов OS/2 и VMS.
- Прочие изменения и исправления ошибок.
|
---|
5.002 | 29 февраля 1996 г. | Полные примечания к выпуску | - Добавлена новая функция: Прототипы.
- Обширные обновления почти всех модулей Perl.
- Массивные изменения как в системе настройки, так и в системе сборки.
- Исправления ошибок
|
---|
5.001 | 13 марта 1995 г. | Полные примечания к выпуску | - Добавлены два новых хука: $SIG{__WARN__} и $SIG{__DIE__}.
- Добавлены замыкания
- Теперь импортированные процедуры считаются «определенными» для предупреждений о переопределении.
- Исправления ошибок
|
---|
5.000 | 17 октября 1994 г. | Полные примечания к выпуску | |
---|
4.000 | 21 марта 1991 г. | | |
---|
3.000 | 18 октября 1989 г. | | |
---|
2.000 | 5 июня 1988 г. | | |
---|
1.000 | 18 декабря 1987 г. | | |
---|