169 похожих чатов

Господа, разрешите полюбопытствовать. Есть проект на перле, который я загнал

в гитлаб. Так вот анализатор говорит, что проект состоит на 94% из Perl и на 4% Raku. Насколько я понял, Raku - это Perl 6. И стало интересно, каким образом гитлаб определяет, что часть кода написана на Perl 6 и с чего он вообще считает, что это 6 перл? Файлов с расширением raku в проекте нет, только pl и pm

14 ответов

66 просмотров

По тексту, который внутри :) find . -name '*.p[lm]' -exec head -1 {} +

Николай-Ласточкин Автор вопроса
Sergei Zhmylove
По тексту, который внутри :) find . -name '*.p[lm...

Это понятно, но почему считает, что это perl6?) В начале файла у всех файлов прописано package Название, не более того)

Николай-Ласточкин Автор вопроса
Sergei Zhmylove
Ну вот

То есть, конструкция package Info::Utils::Probackup; считается теперь конструкцией языка Perl6?

Николай Ласточкин
То есть, конструкция package Info::Utils::Probacku...

Я думаю, он не только одну строку анализирует, а совокупность выражений в файле, в котором нет шабанга

Николай Ласточкин
Это понятно, но почему считает, что это perl6?) В ...

возможно, некоторые файлы достаточно короткие, чтобы анализатор успел составить чёткое представление

В интернетах пишут что точной инфы нет, но вероятно что gitlab использует вот эту штуку для определения языков — https://github.com/github-linguist/linguist (пишут вот тут https://stackoverflow.com/questions/60282750/how-exactly-does-gitlab-detect-languages-in-a-project ) Так что можно поднять linguist , натравить его на исходник, посмотреть на результат и если он действительно неправильно определяет perl как raku можно покопать почему он это делать (и, вомзожно, зарепоритить issue или даже почнить)

Sergei Zhmylove
А он не нужен

да что же это делается 😱

а у тебя везде есть use strict? вот тут пишут что добавление этого, вроде как, должно решить эту проблему https://github.com/github-linguist/linguist/discussions/6263#discussioncomment-4775835 (ну и вообще, user strict везде совать очень неплохая идея на мой взгляд)

Николай-Ласточкин Автор вопроса
Ivan Bessarabov
а у тебя везде есть use strict? вот тут пишут что...

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

Alex Bush
Может у него use Modern::Perl; :-)

Или любой другой такой-же аналог

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта