The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз языка программирования Perl 5.26.0

31.05.2017 07:41

После года разработки состоялся релиз новой стабильной ветки языка программирования Perl - 5.26. При подготовке нового выпуска было изменено около 360 тыс. строк кода, изменения затронули 2600 файлов, в разработке приняли участие 86 разработчиков.

Ветка 5.26 выпущена в соответствии с утверждённым пять лет назад фиксированным графиком разработки, подразумевающим выпуск новых стабильных веток раз в год и корректирующих релизов - раз в три месяца. Примерно через месяц планируется выпустить первый корректирующий релиз Perl 5.26.1, в котором будут исправлены наиболее значительные ошибки, выявленные в процессе внедрения Perl 5.26.0. Одновременно с выходом Perl 5.26 прекращена поддержка ветки 5.22, для которой в будущем могут быть выпущены обновления только в случае выявления критических проблем с безопасностью. Также начался процесс разработки экспериментальной ветки 5.27, на базе которой в апреле или мае 2018 года будет сформирован стабильный релиз Perl 5.28.

Новый выпуск включает в себя три существенных изменения, на которые следует обратить внимание в первую очередь:

  • Из соображении безопасности текущая директория "." по умолчанию больше не дополняется в виде последнего элемента в @INC. Такое поведение в отношении @INC теперь аналогично тому как если бы ранее был активирован режим "Taint" (ключ запуска "-T"). Данная схема может создать проблемы при сборке, тестировании, установке модулей и исполнении скриптов. Существует несколько простых способов вернуть прежнее поведение perl:
    • Схема отключения реализована через включение по умолчанию опции "-Udefault_inc_excludes_dot" для Configure. Поэтому если можно аннулировать значение "-Udefault_inc_excludes_dot" для Configure и пересобрать perl;
    • Perl проверяет переменную окружения PERL_USE_UNSAFE_INC в момент запуска и если переменная определена, то в @INC будет добавлен "." как прежде (как пример: alias perl="env PERL_USE_UNSAFE_INC=1 perl");
    • Если допустимо добавление "." первым элементом в @INC, то можно использовать схему perl -I. (например alias perl="perl -I." в рабочей сессии окружения)
  • Оператор "do" теперь выдает предупреждения на попытку загрузки файла который не нашелся в @INC без ".", но обнаружился в текущей директории. Файл может быть загружен путем явного указания пути: 'do "./file.pl"'. Выполнение с "-I." и использование PERL_USE_UNSAFE_INC не приводит к предупреждениям при использовании do.
  • В регулярных выражениях открывающая фигурная скобка "{" должна быть экранирована или заключена в определитель класса "[{]". Данное нововведение дает возможность для реализации новых конструкции в регулярных выражениях в будущем. В perldiag в секции "Unescaped left brace in regex is deprecated here" можно найти детали, например, о случаях когда "{" может не экранироваться.


Ключевые изменения:

  • С процедур лексической области видимости введенных в 5.18 снят статус экспериментальной возможности. Попытка определить лексическую процедуру больше не приведет к ошибкам и предупреждению. Изменения введены таким образом, что сохранена обратная совместимость с ранее использованными схемами через использование "experimental::lexical_subs" и "lexical_subs" из "feature". Включение "lexical_subs" через "feature" не прервет выполнение программы, так как сохранилось в виде бездействующей заглушки и лексические процедуры теперь доступны всегда в областях видимости без их явного включения;
  • Введена поддержка выравнивания встроенных документов (here-documents). Новый модификатор "~", добавленный в синтаксис объявления here-документов, дает понять синтаксическому анализатору, что в коде встроенный документ будет выровнен на величину пробельного символа (символы из группы whitespace). Это позволяет определить в программе следующую конструкцию которая выглядит без нарушения вложенности:
    
       if (1) {
         print <<~EOF;
           Hello there
           EOF
       }
    

    Обратите внимание на то, что лексический анализатор в процессе поиска лексем будет, во-первых, проверять выравнивание строк, и, во-вторых, удалять с начала строки here-документа такую же подстроку которая предшествует закрывающему элементу here-документа. То есть если в нашем примере перед EOF стоит "\t", то перед 'Hello there' будет попытка удалить "\t". Анализатор сообщит об ошибке выравнивания here-документов если перед "Hello there" не будет "\t". Если будет два или более "\t" перед "Hello there", то удалится только один;

  • Новый модификатор регулярного выражения "/xx" который является своего рода "усиленной формой /x". Работает также как и "/x" с той лишь разницей, что с модификатором "/xx" в регулярном выражении игнорируются неэкранированные символы пробела и табуляции в определителе класса символов "[]".
    Пример: выражение " q"=~/^[^1 2]q/x не даст результат того, что кроме 1 и 2 определен пробел в [^1 2]
    а выражение " q"=~/^[^1 2]q/xx даст результат, так как пробел в [^1 2] игнорируется и снова выражение " q"!~/^[^1\ 2]q/xx дает результат;
  • Новые переменные "@{^CAPTURE}", "%{^CAPTURE}" и "%{^CAPTURE_ALL}" для захвата результата работы регулярного выражения:
    • "@{^CAPTURE}" - массив включающий в себя $1, $2 и т.д. по порядку; пример: "asdf"=~/a(s)d(f)/o даст 's' и 'f' в массив;
    • "%{^CAPTURE}" - эквивалент "%+", использующийся для именованного захвата;
    • "%{^CAPTURE_ALL}" эквивалент для "%-", использующийся для всех именованных захватов (от автора: мне не удалось установить соответствие "%{^CAPTURE_ALL}" и "%-", похоже, что "%{^CAPTURE}" и "%{^CAPTURE_ALL}" синонимы; не исключено, что это ошибка, требуется перепроверка).
  • Новая экспериментальная конструкция: объявление ссылок на переменную. В Perl 5.22.0 была введена экспериментальная конструкция присваивания к ссылке ("use feature 'refaliasing'"), которая позволяет определить псевдоним. Как логическое продолжение данной идеи теперь реализована возможность объявления ссылки на переменную в виде "my \$x" (эквивалент "\my $x"). Данная возможность включается через "use feature 'declared_refs'" и позволяет использовать схему "my ($foo, \@bar, \%baz)" - эквивалентен записи my $foo, \my(@bar, %baz). Обе схемы работают с my(), state(), our() и local();
  • Поддержана спецификация Unicode 9.0. Поддержка модулями из core Perl реализована через приведение нормализатора форм Unicode::Normalize к соответствию стандарту Unicode 9.0;
  • На платформах которые поддерживают UTF-8 по умолчанию для сопоставления данных теперь используется кодировка UTF-8. Для портируемости рекомендуется использовать Unicode::Collate. Подробности в разделе "Category LC_COLLATE: Collation: Text Comparisons and Sorting" в perllocale;
  • Возможность косвенного вызова функций интерпретатора perl для массивов и хэшей. Функции обработки массивов и хешей (keys, each, values, push, pop, shift, unshift и splice) пространства имен CORE могут быть вызваны как через форму с префиксом "&" (&CORE::keys(\%hash)), так и косвенным вызовом (my $k = \&CORE::keys; $k->(\%hash)). До 5.26.0 эти формы приводили к ошибке выполнения;
  • Новый алгоритм хэширования для 64-битных сборок. Для лучшей производительности реализована схема гибридного хэширования: для коротких ключей до 16 бит включительно используется оптимизированный вариант алгоритма "One At A Time Hard", для длинных ключей используется "Siphash 1-3". Данная схема показала значительный прирост в производительности для очень длинных ключей и умеренный прирост для остальных случаев.


Изменения, нарушающие совместимость:

  • Конструкция scalar(%hash) теперь возвращает количество использованных ключей аналогично 0+keys(%hash). Информация об использованных и выделенных блоках теперь доступна через Hash::Util::bucket_ratio() (функция работает аналогично конструкции scalar(%hash) до версии 5.26);
  • Запрещено изменение значения возвращаемого функцией keys из lvalue-программы в контексте списка (bug #128187);
  • Удалена объявленная ранее устаревшей переменная "${^ENCODING}" и прекращена поддержка режима "use encoding ['ENCNAME']" в пользу использования UTF-8 по умолчанию. В случаях когда требуется использовать исходный код который представлен в кодировке отличной от UTF-8 рекомендуется использовать source-фильтры как Filter::Encoding из CPAN, либо использовать опцию Filter модуля encoding;
  • Удалена реализация небезопасной функции POSIX::tmpnam(), объявленной устаревшей в версии 5.22. Теперь она выдает ошибку с рекомендацией по использованию модуля File::Temp;
  • Запрещено использование модулей, начинающихся с двух двоеточий. Схема "require ::Foo::Bar" ранее приводила к попытке чтения модуля /Foo/Bar.pm. Схема загрузки по require "/Foo/Bar.pm" осталась без изменении;
  • Запрещено использование управляющих литералов в именах переменных в исходном коде (bug #119123), так как это приводит к непоправимым ошибкам в исходном коде и создает код, непереносимый на другие платформы.
  • В именах символов "\N{...}" больше не разрешается использовать неразрывный (NBSP) пробел. Такое использование было объявлено устаревшим в версии 5.22;


Оптимизации производительности:

  • Выражение с хэшем в булевом контексте иногда может вычислиться быстрее "if (!%h) {...}";
  • Гибридная хэш-функция для 64-битных сборок (детали описаны выше по тексту);
  • Функции для чтения файла по строкам "readline()" и "<>" улучшена за счет ускорения кода поиска вхождения следующего символа новой строки;
  • Присваивание ссылок "$ref1 = $ref2" оптимизировано для некоторых случаев;
  • Удалены некоторые исключения для создания COW-строк, поскольку алгоритм наращивания буфера был значительно переработан, что существенно снизило вероятность невозможности создания COW-строк при котором происходит вынужденное копирование;
  • Оптимизация присваивания массивов и хешей; пример кода который оказался втрое быстрее, чем реализация в версии 5.24:
    
        my @a;
        for my $i (1..10_000_000) {
          @a = (1,2,3);
          @a = ();
        }
    
  • Значительно ускорена конвертация односимвольной строки состоящей из цифры в число;
  • Функция split теперь быстрее в следующих случаях:
    
        my    @a = split ...;
        local @a = split ...;
    


Важные изменения в CORE-модулях:

  • attributes => 0.29; атрибуты ":unique" и ":locked" будут удалены в выпуске Perl 5.28.
  • Data::Dumper => 2.167; в XS-реализации появилась поддержка Deparse.
  • Errno => 1.248; указано, что использование "%!" приводит к автоматической загрузке модуля Errno.
  • File::Glob => 1.28; выдает предупреждение о том, что использование File::Glob::glob() является устаревшим.
  • HTTP::Tiny => 0.070; каскад ошибок с кодом 599 теперь включает историю редиректов.
  • Net::Ping => 2.55; реализована поддержка IPv6-адресов и AF_INET6-сокетов.
  • POSIX => 1.76; интерфейс POSIX::tmpnam() удален. Кроме этого удалён ряд функций: POSIX::isalnum, POSIX::isalpha, POSIX::iscntrl, POSIX::isdigit, POSIX::isgraph, POSIX::islower, POSIX::isprint, POSIX::ispunct, POSIX::isspace, POSIX::isupper, POSIX::isxdigit, POSIX::tolower, POSIX::toupper. Попытка импорта этих функции выдаст ошибку компиляции а не исполнения.
  • re => 0.34; добавлена поддержка модификатора "/xx" (описано выше); режим strict модуля 're' объявлен экспериментальным.
  • Thread::Semaphore => 2.13; добавлен метод down_timed (попытка выполнить операцию декремента на счетчике семафора за определенное время).
  • Time::HiRes => 1.9741; теперь собирается на системах с компиляторами, соответствующим стандарту C++11 (G++ 6 and Clang++ 3.9). Задействовано использование clockid_t.
  • XSLoader => 0.27; обновление безопасности, закрывающее уязвимость, которая позволяла загрузить двоичные образы за пределами @INC.


Прочие изменения:

  • Новый раздел документации perldeprecation, который содержит всю информацию о конструкциях, объявленных устаревшими.
  • Утилиты c2ph и pstruct удалены из дистрибутива, так как давно были замененными утилитой h2xs.
  • Perl может быть скомпилирован и запущен в порте NetBSD для платформы VAX, но с некоторыми ограничениями из-за особенностей платформы. Сборка показывает 98% успешных тестов.
  • Реализована возможность сборки Perl компилятором Visual C++ 14.0 из состава пакета Microsoft Visual Studio 2015.
  • На платформе Linux перестал поддерживаться устаревший формат a.out, так как формат elf используется в Linux уже более 20 лет.


  1. Главная ссылка к новости (http://www.nntp.perl.org/group...)
  2. OpenNews: Первый выпуск компилятора Perl 5 в JVM от проекта Perlito
  3. OpenNews: Выпуск Rakudo Star 2017.04, дистрибутива Perl 6
  4. OpenNews: Релиз языка программирования Perl 5.24.0
  5. OpenNews: Состоялся рождественский релиз Perl 6
  6. OpenNews: Релиз языка программирования Perl 5.22.0
Автор новости: Аноним
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/46628-perl
Ключевые слова: perl
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (137) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 09:37, 31/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +13 +/
    Ура, товарищи!
     
  • 1.2, Аноним (-), 09:57, 31/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Традиция не ходить на работу на следующий день после релиза Perl. Как всегда чертовски интересно разбирать perldelta.
    Всех еще раз поздравляю с релизом Perl 5.25!!!

    PS: давайте проверять поведение %{^CAPTURE_ALL}, а мне надо поспать :)

     
     
  • 2.3, ПерлухаБратуха (?), 10:07, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Всех еще раз поздравляю с релизом Perl 5.25!!!

    Шта?

     
     
  • 3.4, Аноним (-), 10:10, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Ну переутомился человек, чего непонятного.
     
     
  • 4.49, Аноним (-), 18:16, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да, я просто опечатался. Я весь день активно в коде копался, разобрался только к ночи. Приехал домой очень поздно а тут Perl релизнулся. Я просто не мог пройти мимо perldelta. Только к утру разобрался и опробовал все интересности Perl.
     
  • 3.14, Andrey Mitrofanov (?), 11:14, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >> Всех еще раз поздравляю с релизом Perl 5.25!!!
    >  Шта?

    Так 25ый он уже проверил и обобряет. А этот за одну ночь не успел.%))

     
  • 3.47, Аноним (-), 18:08, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Очевидно же что Perl 5.25 релизнулся в Perl 5.26 :)
     

  • 1.6, Michael Shigorin (ok), 10:26, 31/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Эк рванул старик ;-)
     
  • 1.7, istepan (ok), 10:35, 31/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Где сейчас Perl используется?
     
     
  • 2.11, Аноним (-), 11:07, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +12 +/
    Везде по чуть-чуть. Ровно по столько, чтобы было необходимо ставить перл на любую систему.
     
     
  • 3.51, _ (??), 19:12, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • –7 +/
    >Ровно по столько, чтобы было необходимо ставить перл на любую систему.

    Его даже в линуксах по дефолту нет ... о чём ты болезный?!? :-\
    Оно там появляется если какой-нить не-модный и не-молодёжный софт его по зависимостям втянет ... :(

    А так - желаю ветерану успехов и долгой жизни!
    Если звёзды зажигают - значит это кому то нужно!(С)

     
     
  • 4.52, Michael Shigorin (ok), 19:13, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Его даже в линуксах по дефолту нет ...

    Можно список?

     
  • 4.67, rshadow (ok), 19:52, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    LOL

    http://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Languages/LSB-Languages/boo

     
  • 3.156, Аноним (-), 10:48, 06/06/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Везде по чуть-чуть. Ровно по столько, чтобы было необходимо ставить перл на любую систему.

    В общем, жуткий паразит.
    И то что надо чтобы усложнить верификацию кода *NIX осей,
    даже не считая такого же паразита - GCC.
    Верифицировать исходники которого проблемней чем даже kernel-a, всех билиотек и затем всех настроечных файлов все в мире форков ОС-ей - в целом.

     
  • 2.13, Labbit (?), 11:09, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Booking.com, Yandex, Rambler, Amazon
     
     
  • 3.33, cono (?), 13:26, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ticketmaster.com
     
  • 3.69, sorrymak (ok), 19:59, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    reg.ru
     
  • 2.17, iZEN (ok), 11:45, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Где сейчас Perl используется?

    От Perl зависит функционирование GNU-декстопа с графическим пользовательским интерфейсом на основе библиотек тулкитов Gtk2/3, Qt4/5, *box и т.д.

     
  • 2.28, Аноним (-), 13:05, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    git
     
  • 2.35, fi (ok), 13:46, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    «ты не поверишь!» ©
    вот сейчас пишу приложение. Настолько простой и понятный язык! Большенство мало-мальки полезный фичь загнаны в модули. Что еще нужно для жизни?
     
  • 2.43, angra (ok), 16:35, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > Где сейчас Perl используется?

    Попробуй удалить его из своего дистра и менеджер пакетов тебе расскажет.

     
     
  • 3.146, Аноним (-), 17:40, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Ну мне emerge лишь скажет meh~~~ и продолжит собирать всякое. Правда в 50% случаев при следующей сборке чего либо perl вернётся на законное место.

    Вообще не понимаю этих модников. Им не нравится перл, потому что они не могут осилить контексты, зато им нравится питон, потому что у него НЕТКОЙКАКВСЕСИНТАКСИС.

     
  • 2.44, Аноним (-), 17:31, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    https://github.com/solvespace/website
     
  • 2.70, sorrymak (ok), 20:01, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, в Mageia контроль-панелька и инсталлятор написаны на Perl, и прочие мелкие вещи (а также пакетный менеджер urpm, но это наследие Мандривы).
     
     
  • 3.71, Michael Shigorin (ok), 20:11, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Кстати, в Mageia контроль-панелька и инсталлятор написаны на Perl, и прочие мелкие
    > вещи (а также пакетный менеджер urpm, но это наследие Мандривы).

    Так там, поди, и drakx такое же наследие, как и urpmi? :)

     
  • 2.75, Аноним (-), 21:13, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Например в автоматическом тестировании программного обеспечения. Обычно тесты занимают не менее 50% времени разработки и автоматические тесты сильно помогают в этом. Perl в этом лучше всех, т.к. на нем очень легко и быстро наколбасить тестовый сценарии. Писать тесты на любом другом языке - это затратно и неоправдано.
     
     
  • 3.95, iZEN (ok), 15:48, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Например в автоматическом тестировании программного обеспечения. Обычно тесты занимают
    > не менее 50% времени разработки и автоматические тесты сильно помогают в
    > этом. Perl в этом лучше всех, т.к. на нем очень легко
    > и быстро наколбасить тестовый сценарии. Писать тесты на любом другом языке
    > - это затратно и неоправдано.

    Бред. Кто придумал xUnit, знаешь?


     
     
  • 4.97, Аноним (-), 16:53, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Бред.

    Бред потому что ты не знаешь как мы работаем или бред потому что тебе захотелось назвать это бредом? Вот если бы ты знал как эффективно использовать, то наверняка не писал бы такое.

    > Кто придумал xUnit, знаешь?

    Это аргументация к твоему заключению "Бред" ?. Это у тебя какой-то бред.

     

  • 1.9, Аноним (-), 11:03, 31/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Интересно, где его применение оправдано? Что вообще на нем пишут?
     
     
  • 2.10, Аноним (-), 11:07, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Just for fun
     
  • 2.12, A.Stahl (ok), 11:07, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +19 +/
    Да брось ты. Некоторые даже на ЯваСкрипте пишут. Или на Питоне. Добровольно! Уж Перлу-то место найдётся.
     
  • 2.22, Аноним (-), 12:28, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Там, где нужно обрабатывать много текста. Да и как скриптовый язык общего назначения он далеко не так плох, как его малюют.
     
     
  • 3.92, Аноним (-), 13:54, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    К сожалению парсер CSV у python быстрее.
     
     
  • 4.147, Аноним (-), 17:42, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Зато while медленне, чем for.
     
  • 2.26, Аноним (-), 12:50, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Оправдано? Часто оправдываешься за выбор языка?

     
  • 2.29, Аноним (-), 13:06, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    много легаси кода.
    который врятли будет переписан ближайшие 100 лет
     
     
  • 3.31, Аноним (-), 13:23, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > врятли

    вряд ли

     
  • 2.76, Аноним (-), 21:22, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Пост: #2.75 (выше). Если даже заказчику нужна система на Java, у нас тесты все-равно пишутся на perl. Это очень просто и быстро.
     
  • 2.152, Аноним (-), 14:59, 04/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    веб морды на cgi для данных из sql
     

  • 1.15, iZEN (ok), 11:42, 31/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Только позавчера пересобрал все ~600 установленных портов на FreeBSD. Теперь снова придётся тратить 10 часов машинного времени. :(
     
     
  • 2.66, Pse (?), 19:46, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Открой для себя ccache.
     
     
  • 3.99, iZEN (ok), 17:11, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Зачем?
    Количество пакетов, зависимых от Perl, всего:
    % pkg info -r perl5 | wc -l
          35
     
     
  • 4.113, Аноним (-), 21:39, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Зачем?
    > Количество пакетов, зависимых от Perl, всего:
    > % pkg info -r perl5 | wc -l
    >       35

    Угу, а пакеты p5-* А.С. (который Пушкин, а не Stahl), считать будет?

     
     
  • 5.116, iZEN (ok), 22:10, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> Зачем?
    >> Количество пакетов, зависимых от Perl, всего:
    >> % pkg info -r perl5 | wc -l
    >>       35
    > Угу, а пакеты p5-* А.С. (который Пушкин, а не Stahl), считать будет?

    Прикалываетесь?

    % pkg info -r perl5 | grep p5 | wc -l
          11

     
     
  • 6.121, Аноним (-), 00:02, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Прикалываетесь?
    > % pkg info -r perl5 | grep p5 | wc -l
    >       11




    % pkg query "%#r" perl5
    86
    % pkg rquery "%#r" perl5                                                        
    6398



     

  • 1.16, Аноним (-), 11:44, 31/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Никогда не любил Perl. Замусоренный синтаксис, некоторые вещи приходилось делать в каком-то извращённом виде. Python был как глоток свежего воздуха - эффективный и элегантный. Я когда с Python только познакомился, то столько кода и идей реализовал за год, сколько на перле и за пять лет не написал. Разница в скорости реализации и написания кода просто колоссальная.

    Пожалуй, Perl сейчас только истые фанаты используют.

     
     
  • 2.20, A.Stahl (ok), 12:11, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +11 +/
    >Python ... - эффективный и элегантный.

    Я вижу два варианта: либо Перл совсем плох либо у тебя что-то не так с ... ну... с пониманием концепций эффективности и элегантности.

     
     
  • 3.56, _ (??), 19:21, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да не обязательно.
    Вот тебе какие девушки нравятся? Не факт что такие же, как ему :) И ничего - все понимают что это естественно ...
    Мне вот Перл тоже не нравится, но вещь качественная, сделанная старыми мастерами :) и в _некоторых_ случаях _наилучший_ вариант. "A necessary evil" (C) Как говорят в Сывтыкваре :)
    Но вот писать на нём _всё_ ... нафик-нафик!
     
     
  • 4.62, Аноним (-), 19:32, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Писать на perl нужно уметь, т.к. он дает столько свободы что на нем очень легко наго#нокодить. Если внутри тебя программист так и не смог, и ты не можешь самостоятельно строить нормальную структуру, то лучше не надо ни в perl, ни в си.
     
     
  • 5.77, Аноним (-), 22:20, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Да и в питон не надо тогда. Есть куча интересных и полезных профессий.
     
  • 2.21, Аноним (-), 12:24, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Тонко, молодец )
     
     
  • 3.25, Аноним (-), 12:38, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сам себя похвалил?
     
  • 2.24, Аноним (-), 12:36, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Перл -- язык для сильных программистов. Ты к их числу похоже не принадлежишь.

    >столько кода и идей реализовал за год

    Код покажи.

     
  • 2.42, angra (ok), 16:28, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Ну разве что, если под написанием программ понимать копипастинг кода с сети. Тогда да, Python позволяет легче понять чужой код и адаптировать под свои нужды. А для написания своего кода Perl значительно приятней.
     
     
  • 3.46, Аноним (-), 17:54, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Ну разве что, если под написанием программ понимать копипастинг кода с сети.

    И что, отступы совсем не мешают?
    > angra
    > Копипаста, мессенджеры и веб это очень даже хорошие инструменты для задачи удобного и
    > быстрого обмена кусочками кода. Но только не в случае с ЯП, чувствительных к отступам.

    и
    > Экспертус опеннетус очередноус
    > > А чем отступы хуже любого другого разделителя?
    > Например тем, что легко теряются при копипасти из, например, веба или кучи мессенджеров
    > (а также в куче идешек). И, что при этом главное, никаких синтаксических ошибок - проблему
    > можно будет словить (и то, если повезет) только в рантайме.

     
  • 3.58, _ (??), 19:24, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • –3 +/
    >А для написания своего кода Perl значительно приятней.

    А для чтения? Чужого? То-то!(С)

     
     
  • 4.63, Аноним (-), 19:36, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Нормально написанный код читается легко. А хреновый код зачем читать? Его переписывать надо.
     
  • 3.82, Аноним (-), 01:08, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > копипастинг кода с сети
    > Python

    Ахаха. Как раз в случае питона копипастинг корёжит логику из-за его уродского синтаксиса. Коварный план гвидо раскрыт!

     
     
  • 4.83, Led (ok), 01:55, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Коварный план гвидо раскрыт!

    Не наговаривай на Гвидо: у него не план был, а грибы.

     
  • 4.102, Аноним (-), 17:42, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> копипастинг кода с сети
    >> Python
    > Ахаха. Как раз в случае питона копипастинг корёжит логику из-за его уродского
    > синтаксиса. Коварный план гвидо раскрыт!

    Это такой фильтр для отсеивания совсем уж тупых опеннетч^W погроммистов, которые даже cкопипастить толком не могут. Судя по регулярному батхерту экспертов опеннета по всевозможным дисциплинам, неплохая задумка.

     
  • 2.55, Michael Shigorin (ok), 19:17, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Python был как глоток свежего воздуха - эффективный и элегантный.

    Мне кажется, перл лично Вам просто "не пошёл" и до богатейшего CPAN попросту не добрались (интересно, много ли из созданного за тот год было изобретением велика в плохом виде?).

    Как может показаться "эффективным" и тем более "элегантным" питон -- теряюсь в догадках по сей день, а заподозрил неладное ещё году в 2001, попытавшись это недоразумение применить там, где по всем внешним показателям егойные привязки вроде должно были быть лучше сишной библиотеки.

     
     
  • 3.79, Аноним (-), 00:42, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > перл лично Вам просто "не пошёл"

    Я использовал этот язык около 10 лет (предположу, что горазо больше, чем некоторые местные апологеты Perl'a). Что значит он "не пошёл"? С Perl я попрощался сразу же как понял Python. С Python я гораздо мобильнее. Код эффектный, краткий, элегантный. Python всецело оправдывает свою философию - "Писать код со скоростью мысли". Я на Python сейчас пишу всё - от системных утилит (резервирование, парсинг, тестирование) до сетеввых.

    Ладно, это пустой спор. Почапал я. Действительно, может быть я слабый программист? Может быть... Пойду-ка я к своим Python, Си и асму, а Perl оставлю элите...

     
     
  • 4.81, Аноним (-), 01:08, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Пойду-ка я к Си и асму

    Человек который может в Си и асм не смог в Perl??

     
     
  • 5.127, Аноним (-), 01:08, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >Человек который может в Си и асм не смог в Perl??

    Страннее всего, что человеку, который может в сишку зачем-то понадобился Perl, Python и прочий ширпотреб. А! Я знаю, потому что на них пишется всякое фуфло.

    Больше всего улыбнуло "сетевые приложения на Питоне"... На кой нужны такие приложения, если рантайм Питона в дефолте жрет больше памяти, чем сами данные, гоняемые по сети... А уж про скорость обработки самих данных даже заикаться не буду. Походу очередные веб-кравлеры пишет.

     
  • 2.87, Snelius (?), 07:51, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Да да, питон рулит! Больше пробелов богу пробелов!
     

  • 1.23, Аноним (-), 12:33, 31/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Рекомендую обратить внимание на проект stableperl.

    http://blog.schmorp.de/2015-06-06-a-stable-perl.html

     
     
  • 2.32, Crazy Alex (ok), 13:24, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    По-моему - бред.
     
     
  • 3.36, Andrey Mitrofanov (?), 13:57, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > По-моему - бред.

    Не! Это  ж  perl LTS.  Это именно то, чего мечтал iZEN там наверху.

     
     
  • 4.37, Crazy Alex (ok), 14:17, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну вот эта фигня с @INC - первое, что я могу припомнить, реально угрожающее совместимости. Перловоды весьма аккуратны в этом плане.
     
     
  • 5.159, Michael Shigorin (ok), 12:26, 27/09/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Ну вот эта фигня с @INC - первое, что я могу припомнить,
    > реально угрожающее совместимости.

    Кстати, в 5.26.1 случайно не передумали?

     
  • 4.38, tmpuser (?), 14:22, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Полностью согласен. Обычно Perl воспринимается как синоним совершенной стабильности. И рвать "устои" здесь не принято, это "противоречит духу" перловодов. Дать возможности, кучу вариантов для выбора - было бы правильнее.

    Поэтому, посмотрим на этот стабильный Perl - но идея в нужном направлении. Ну и автор молодец, его послужный список вполне себе нормальный:  http://software.schmorp.de/

     
     
  • 5.39, Andrey Mitrofanov (?), 14:43, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Полностью согласен.

    Вы слишком льстите тонкости моего сарказма. Прошу, не надо! Или я был убит удвоением моего собственного в ответ? Ну, да, ладно -- хоть руки не порезал......................................................................


     
  • 2.48, Аноним (-), 18:13, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вы почитайте из-за чего этот проект был создан. Чуть позже как в вопросе разобрались и поломку Coro уладили, в этом проекте смысла не стало и он больше не развивается.
     
     
  • 3.104, Аноним (-), 19:15, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Нет это вы почитайте на странице проекта, почему он был создан.
    Портить перл в каждой новой версии никто не прекращал.
    Увижу комментарий от создателя проекта о том, что он более не актуален - перестану использовать stableperl. Да, я его использую, как и перл вообще. А вы?
    >он больше не развивается

    Таки вам нужно, чтобы 50 мартышек прыгали и каждые две недели выдавали новый релиз? Фокус проекта на обеспечении стабильности. Чтобы все работало. Понимаете?

     
     
  • 4.107, Аноним (-), 19:54, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Я еще помню содержание переписки до создания проекта Я stableperl не использую ... большой текст свёрнут, показать
     
     
  • 5.110, Аноним (-), 21:13, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Вы так распинаетесь, что становитесь похожи на одну из сторон той переписки.
    Вы поделитесь подноготной, полегчает может.
    А то я Марку собираюсь написать, спросить какие у него планы на 5.26.

    Лучше скажите, на 5.26 коро работать будет?

     
     
  • 6.112, Аноним (-), 21:25, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Вы так распинаетесь, что становитесь похожи на одну из сторон той переписки.

    Я стараюсь объяснить так чтобы меня поняли сразу. А то понимаете ли в последнее время на форумах очень много глупеньких и недалеких, которые не могут сами додумать то казалось бы очевидным.

    > Вы поделитесь подноготной, полегчает может.

    mail-archive вам в помощь

    > А то я Марку собираюсь написать, спросить какие у него планы на 5.26.

    У меня есть опыт переписки с Марком :-) Надеюсь вы поделитесь содержанием ответа, а то 2 года stableperl без актуализации это как-то не обнадеживает.

    > Лучше скажите, на 5.26 коро работать будет?

    perlbrew вам в помощь, там уже 5.27.0 доступен.

     
     
  • 7.117, Аноним (-), 22:42, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Глупенькие и недалёкие все давно на питон перешли.

    >в помощь
    >в помощь

    Только вы не в помощь. За слова не отвечаете, все время на что-то ссылаетесь. С таким видом, как-будто вы эти вещи изобрели. Не в тп хостинга работаете, случайно?

    Если вы так уверены, что stableperl не нужен, аргументируйте конкретно: скажите, работает ли коро на 5.26. Без этого вы только захламляете обсуждение.

     
     
  • 8.120, Аноним (-), 23:10, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Вы вдруг решили что я буду за вас решать вопросы которые вам интересны На вашем... большой текст свёрнут, показать
     
     
  • 9.124, Аноним (-), 00:45, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Марк давным давно всех послал Для всех версий перла выше 5 20 он запилил для св... текст свёрнут, показать
     
     
  • 10.128, Аноним (-), 03:05, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Ну это как бы опенсорс, и тут вы вообще все и всегда на свой страх и риск Я дум... текст свёрнут, показать
     
     
  • 11.134, Аноним (-), 19:58, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Ничего ты не знаешь, Анон Речь была о том, что вот если бы ты нашел якобы б... текст свёрнут, показать
     
     
  • 12.137, Аноним (-), 21:08, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Как будето я не правил модули авторы которых забыли или забили на него Сразу шл... большой текст свёрнут, показать
     
     
  • 13.141, Аноним (-), 00:18, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    С чего ты взял, что он все понял Птичка была запилина не просто так Если _бы_ ... текст свёрнут, показать
     
     
  • 14.142, Аноним (-), 00:26, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Не обязательно, это во-первых инструмент Так опенсорс же То что он развивает... текст свёрнут, показать
     
  • 7.125, Аноним (-), 00:47, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > perlbrew вам в помощь, там уже 5.27.0 доступен.

    Лучше не лезьте со своими глупыми советами. Unstable-ветки для профи, а не для всех подряд. Кроме того, никакой поддержки на нестабильных версиях вам Марк не окажет, потому что вы ССЗБ.

     
     
  • 8.129, Аноним (-), 03:08, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Лучше не лезьте со своими глупыми ответами Я употребил слово уже в предложени... текст свёрнут, показать
     
     
  • 9.136, Аноним (-), 20:14, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    И чем переход на 5 27 0 поможет Мне, действительно интересно ... текст свёрнут, показать
     
     
  • 10.138, Аноним (-), 21:10, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    А я предлагал переход на 5 27 ... текст свёрнут, показать
     
  • 5.126, Аноним (-), 00:54, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не профи Профи, такие как Марк патчат свой перл под себя В том числе и бэкп... большой текст свёрнут, показать
     
     
  • 6.130, Аноним (-), 03:25, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Что-то я не пойму что тебе от меня надо Всли вы более-менее дружите с головой, ... большой текст свёрнут, показать
     
     
  • 7.133, Аноним (-), 19:54, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >Странный ты какой-то.

    Странно, что развелось слишком много анонов :) Вобщем, если ты ныл про stableperl, то я все объяснил и описано в модулях Марка (пердупреждалка). Если это был не ты, то звиняй.

     
     
  • 8.139, Аноним (-), 21:12, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    У тебя вроблемы с восприятием Я совсем не ныл, а трезво описал сиуацию которая ... текст свёрнут, показать
     

     ....большая нить свёрнута, показать (27)

  • 1.30, Crazy Alex (ok), 13:21, 31/05/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не, безопасность - это понятно, конечно, но менять дефолтный @INC - всё же перебор
     
     
  • 2.40, Клыкастый (ok), 15:21, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    но теперь благодаря опеннету все предупреждены.
     
  • 2.50, Аноним (-), 19:02, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Я тоже так думал, но разобрался и понял что все правильно.
     
     
  • 3.54, Аноним (-), 19:16, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Главное для perl - это данные пользователя, поэтому этот шаг сделан потому что является движением в направлении усилениях безопасности данных.
    Вспомним о существовании механизма меченых данных (-T) который направлен чтобы обеспечить возможность безопасной работы в небезопасном окружении. Механизм сразу приводил к исключению "." так как будет работа в директории в которую скорее всего будет разрешена запись (например в /tmp).
     
     
  • 4.57, Аноним (-), 19:22, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Поэтому поиск модулей в "." по умолчанию может быть причиной вредного модуля, а это прямой доступ к данным. Поэтому мысль пришла к тому что по умолчанию желательно исключить ".". Получается что сейчас на серверах "." включен если специально не позаботились о его исключении, или perl работает не в режиме меченых данных. Если вам нужно включить - используйте штатный механизм perl -I  (PERL_USE_UNSAFE_INC - временное решение и скорее всего будет удален в будущем).


     
     
  • 5.59, Аноним (-), 19:25, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Пришлось разорвать сообщения и долго пришло редактировать, т.к. тут на сайте фильтр реагирует на какие-то вполне обычные слова и, что интересно, выдает следующее предупреждение:

    "ОШИБКА: Попытка анонимной публикации с заблокированного IP-адреса.
    С используемого вами IP-адреса ранее было совершена вредоносная активность.
    Публикация комментариев с данного IP-адреса разрешена только для зарегистрированных пользователей"

    Почините пожалуйста, а то сильно надоедает. Постоянная проблема.

     
     
  • 6.61, Michael Shigorin (ok), 19:30, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > "ОШИБКА: Попытка анонимной публикации с заблокированного IP-адреса.
    > С используемого вами IP-адреса ранее было совершена вредоносная активность.
    > Публикация комментариев с данного IP-адреса разрешена только для зарегистрированных
    > пользователей"

    tor?

    http://www.opennet.dev/openforum/vsluhforumID3/110971.html#78

     
     
  • 7.65, Аноним (-), 19:41, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Дело не в этом, а в том что реагирует на какое-то вполне штатное слово или выражение. Я не пытался материться, ругаться или оскорблять кого-то, просто писал более развернутый ответ о perl, режмие taunt и об опасности загрузки злоевредного кода.
     
  • 6.89, Maxim Chirkov (ok), 09:07, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > "ОШИБКА: Попытка анонимной публикации с заблокированного IP-адреса.

    Убрал эту проверку, ошибка срабатывала при входе с Tor, совпадении с черным списком недавних нарушений и определении ряда признаков (в вашем случае смешивание латинских и русских символов в одном слове и упоминание сайта reg.ru).

     
     
  • 7.90, Michael Shigorin (ok), 12:33, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >> "ОШИБКА: Попытка анонимной публикации с заблокированного IP-адреса.
    > Убрал эту проверку, ошибка срабатывала при входе с Tor, совпадении с черным
    > списком недавних нарушений и определении ряда признаков (в вашем случае смешивание
    > латинских и русских символов в одном слове и упоминание сайта reg.ru).

    Вообще список признаков вполне разумный -- возможно, стоит вернуть, но добавить пояснение насчёт Tor явным образом.

     
  • 7.100, Аноним (-), 17:13, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо! Отличная новость.
    Смешение русских и латинских бывает местами.
     
  • 5.78, Аноним (-), 23:01, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не в теме Вопрос в том, где эта указана Если в конце, то все ок Если в... большой текст свёрнут, показать
     
     
  • 6.80, Аноним (-), 00:57, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Жутко бесит что снова не могу ответить номально. Та же самая ошибка:

    "ОШИБКА: Попытка анонимной публикации с заблокированного IP-адреса.
    С используемого вами IP-адреса ранее было совершена вредоносная активность.
    Публикация комментариев с данного IP-адреса разрешена только для зарегистрированных пользователей"


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

     
     
  • 7.123, Аноним (-), 00:36, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Жутко бесит что снова не могу ответить номально.
    > Могу только сказать тебе анон: думай тщательнее прежде чем лепить горячку. Ты
    > не прав, все верно сделано.

    Вот именно. Тебе удалось запостить это сообщение, только без информативного содержания. Ты прав, а кругом д'Артатьяны. Старая песня...

     
     
  • 8.131, Аноним (-), 03:27, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Глаза подними повыше на сообщение 6 89 от Maxim Chirkov ... текст свёрнут, показать
     
  • 6.103, Аноним (-), 18:46, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Не нужно было трогать @INC, т.к. если имеется возможность что-то записать в
    > директорию со скриптом, то можно с такой же легкостью и заменить
    > сам скрипт и сделать гадость без всякого @INC. Это предложение выдвигалось,
    > но CVE-же!

    Причем тут директория со скриптом? Скрипт может лежать где угодно, т. е. CWD может не совпадать с директорией, в которой лежит скрипт.

     
     
  • 7.122, Аноним (-), 00:34, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >Причем тут директория со скриптом? Скрипт может лежать где угодно, т. е. CWD может не совпадать с директорией, в которой лежит скрипт.

    При том, что выставлять cwd забота программиста приложения, а не ЯП. Давайте патч, который сразу в chroot уходит, где вообще ничего нет. И все! Проблем нет!

     
     
  • 8.132, Аноним (-), 03:32, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    И что не так Программист приложения, а не ЯП как вы уточнили, позаботился и выс... текст свёрнут, показать
     
     
  • 9.135, Аноним (-), 20:01, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да Вот сделаю я cwd и что дальше Как INC навредит со своей Только н... текст свёрнут, показать
     
     
  • 10.140, Аноним (-), 21:22, 02/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да, это не тот случай когда в INC может создать проблемы, но есть возможные... текст свёрнут, показать
     
     
  • 11.143, Аноним (-), 00:41, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это что за такие случаи Т е если говорит по делу, неприлигированный пользовате... большой текст свёрнут, показать
     
     
  • 12.144, Аноним (-), 06:27, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сам придумал кривые случаи и сам поудивлялся Аншлаг Ты не то придумал, как ра... большой текст свёрнут, показать
     
     
  • 13.145, Аноним (-), 10:04, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Вот поэтому и запилил фикс Никто толком не знает про потенциальные ситуации, ... большой текст свёрнут, показать
     
     
  • 14.148, Аноним (-), 18:53, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    У тебя странное стремление навесить ярлыки за счет однобокобого понимания ситуац... большой текст свёрнут, показать
     
     
  • 15.149, Аноним (-), 22:06, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Ты их не дал, потому что их нет Дело как раз в них И конечно же этого мы никог... большой текст свёрнут, показать
     
     
  • 16.150, Аноним (-), 23:09, 03/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Верно я их не дал и у тебя их нет Но это не значит что у меня их нет У меня е... большой текст свёрнут, показать
     
     
  • 17.151, Аноним (-), 00:31, 04/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Я дал примеры, а ты нет Как жаль, что ты анон, так бы занес тебя в свою тетрадь... текст свёрнут, показать
     
     
  • 18.158, Аноним (-), 22:30, 07/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    В процессе общения расхотелось тебе сообщать Научись разговаривать с людьми ... текст свёрнут, показать
     
  • 4.64, Аноним (-), 19:39, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > поэтому этот шаг сделан потому
    > что является движением

    вмемориз

     
     
  • 5.84, Аноним (-), 02:42, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Сдаётся мне, джентельмены, что это был Кличко.
     
     
  • 6.106, Аноним (-), 19:24, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Школьники != джентельмены. dic.academic.ru вам в помощь
     
  • 5.105, Аноним (-), 19:23, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    "ниасилил"?
     
  • 4.72, Crazy Alex (ok), 20:15, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Если оно включается через "use v5.26;" - кто б спорил, нормальное решение. Если нет... 99% работающего перл-кода - легаси, нравится это кому-то или нет. Делать для него подобные ломающие изменения - нехорошо. А кто беспокоится - для того есть -T, как вы правильно заметили.
     
     
  • 5.73, Crazy Alex (ok), 20:19, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • –2 +/
    И по ходу они это дело под use v5.26 не отправили. Маразм.
     
     
  • 6.74, Аноним (-), 21:04, 31/05/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Как бы все серьезно. Если что, вот посмотрите: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-1238

    Вы же понимаете что безопасность и удобство - это вещи взаимоисключающие. Шаг был сделан в сторону безопасности данных и я вам попытался объяснить почему. Чтобы переход на 5.26 был не таким болезненным предусмотрительно ввели обоработку переменной PERL_USE_UNSAFE_INC. Я думаю все-таки по умолчанию на поставка должна быть рассчетом на безопасность по умолчанию. Прежний механизм сохраняется - можете сбросить -Udefault_inc_excludes_dot и пересборать perl. Но вы же понимаете что по умолчанию для боевых систем такой поставки быть не должно, риск сохраняется. Попробуйте меня услышать и понять.

     
     
  • 7.85, Crazy Alex (ok), 03:57, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    да хрен с ним, с удобством. Очередной минор не должен ломать десятилетиями писаный код, когда такого кода - абсолютное большинство. Ну очевидная же вещь. В таких случаях надо костылить изо всех сил, любой ценой держа совместимость. Например - врубить эту механику в самом CPAN для ноаых версий модулей. Врубитъ для use v5.26 - было бы нормально. Наверняка ещ! что-то можнл было придумать. Но никак не дефолтом.
     
     
  • 8.94, iZEN (ok), 15:47, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    На FreeBSD в порте perl5 26 сделали опцию DOT_INC off Add to INC unsafe ... текст свёрнут, показать
     
  • 8.101, Аноним (-), 17:20, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Но тут не просто механика и обновление Дело в том что при штатных возможностях ... текст свёрнут, показать
     
  • 8.109, Ordu (ok), 20:45, 01/06/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Угу Они должны были инкрементировать мажорную версию ради изменения дефолтов Ч... текст свёрнут, показать
     

     ....большая нить свёрнута, показать (38)

  • 1.93, Аноним (-), 14:00, 01/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Похоже кто-то поменял в тексте новости все символы «меньше» на фигурную скобку, а комментаторы даже не заметили :-)
     
  • 1.153, Аноним (-), 06:33, 05/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Протестировал скорость выполнения вызовов в разных версиях perl. Тестировал тщательно, результаты в пределах погрешности разнес в две группы.

    v5.10.1 - v5.22.3
    a) 623193.25 65.58%
    b) 2305539.25 62.30%

    v5.24.1, v5.26.0
    a) 950320.75 100%
    b) 3700615.5 100%

    ПРОФИТ! Есть смысл использовать новые версии perl.
    В reg,ru все плохо.

     
     
  • 2.154, Аноним (-), 08:14, 05/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >ПРОФИТ! Есть смысл использовать новые версии perl.

    Знаешь, в чем правда? Быстрее сишки и асма ничего нет. И дяди, которые делают веб-фуфло это отлично понимают. Им не нужен быстрый перл, им не нужна даже сишка. Все, что нужно это читабельный, качественный код.

    Именно по этой причине "взлетел" Mojo, тормозной кусок мамомнта. Именно по этой причине "любят" тормозной кусок мамонта "Moo" и его 100500 клонов. Так что, ты не сорвал покрывала, просто ща у тебя разорвет шаблон и бомбанет :)

     
  • 2.155, Аноним (-), 10:08, 05/06/2017 [^] [^^] [^^^] [ответить]  
  • +/
    чё те там плохо? на ул, ак. Павлова? или в Вертикале? уж забыл где который регистратор.
    Или ты про либы для партнёров? в руцентре на моей памяти было пожосче
     

  • 1.157, Аноним (-), 10:55, 06/06/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    "изменения затронули 2600 файлов" сколько же они уже тогда вобще г0внокода наваялили?!...

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру