Size: a a a

2020 February 26

AS

Alexey Shumkin in Delphi & Lazarus
Alexey Kulakov
Как справедливо заметил Алексей, "Поскольку есть нежелание менять что-то в файле, который меняет IDE (часто самым дурацким образом;" приходится брать в расчёт ИДЕ, а это лишняя морока. Кстати, я так понимаю, LazBuild выступает более простым аналогом MsBuild'а. И там тоже не всегда *.lpi собирается без небольшого шаманства. Но обычно это из-за мультиплатформенности.
Да, с lazbuild-ом свои шаманства... Я делал для автосборки отдельный конфиг (с названием CI) в котором можно задать выходной каталог...
источник

ДП

Дмитрий Плясунов in Delphi & Lazarus
Вот первый вопрос - мы сами формируем на сервере сборки dpr-файл со всеми файлами, которые нашли в папка проекта, связано с тем, что разработчики не всегда следят за локальным dpr, и он не всегда в VCS актуальный (просто не хватает файлов в проекте). Как эту проблему решить через dproj?
источник

AA

Anvar Arov in Delphi & Lazarus
Dmitry Belkevich
procedure TForm1.StringGrid1SelectCell(Sender: TObject; aCol, aRow: Integer;
 var CanSelect: Boolean);
begin
  sleep(1);
end;

procedure TForm1.StringGrid1AfterSelection(Sender: TObject; aCol, aRow: Integer
 );
begin
 sleep(1);
end;

procedure TForm1.StringGrid1BeforeSelection(Sender: TObject; aCol, aRow: Integer
 );
begin
 sleep(1);
end;
Спасибо
источник

ГМ

Геннадий Малинин in Delphi & Lazarus
Alexey Shumkin
И, похоже, один участник пришёл к нам после этого :)
Чел в комментах написал как раз мой способ сборки)
https://habr.com/ru/post/489960/#comment_21322436
источник

DB

Dmitry Belkevich in Delphi & Lazarus
прочитал статью, нового ничего в общем не увидел, у нас примерно так всё и собирается, только что dproj не ручками колупаю, ProjectMagician делает всю грязную работу
источник

DB

Dmitry Belkevich in Delphi & Lazarus
msbuild у меня в путях всегда был, я как-то им даже не заморачивался - он просто работает если вызвать в cmd, ему пачку ключей + poject magican правит как нужно drpoj
источник

ГМ

Геннадий Малинин in Delphi & Lazarus
Dmitry Belkevich
msbuild у меня в путях всегда был, я как-то им даже не заморачивался - он просто работает если вызвать в cmd, ему пачку ключей + poject magican правит как нужно drpoj
++
источник

AS

Alexey Shumkin in Delphi & Lazarus
Дмитрий Плясунов
Вот первый вопрос - мы сами формируем на сервере сборки dpr-файл со всеми файлами, которые нашли в папка проекта, связано с тем, что разработчики не всегда следят за локальным dpr, и он не всегда в VCS актуальный (просто не хватает файлов в проекте). Как эту проблему решить через dproj?
Это не техническая проблема, а организационная. По мне, вы придумали костыль, который как-то позволяет закрыть глаза на ошибки, совершаемые разработчиками ... (На самом деле, мне очень хочется крепко выругаться в адрес таких разработчиков.. но я пока сдержался)
Решать это надо организационными методами... А не техническими... Технически тут только контроль: строка на сервере.. если она упала, значит, налажали , и надо починить...

Вот представь, я новый разработчик в команде. Я клонирую проект, и....? Он не компилится у меня? А на сервере компилится? WTF?! Что я сделал не так? Ах,не я?! WTF?!
Мой принцип (да и вообще best practice) - clone , build , [test, deploy... ]Всё.. без плясок, без бубнов, без сакральных знаний...
источник

AS

Alexey Shumkin in Delphi & Lazarus
Dmitry Belkevich
прочитал статью, нового ничего в общем не увидел, у нас примерно так всё и собирается, только что dproj не ручками колупаю, ProjectMagician делает всю грязную работу
Я искренне рад, что я кому-то всё же не открыл Америку :)
источник

DB

Dmitry Belkevich in Delphi & Lazarus
вообще то, что статью запушил - это круто, без вариантов :) вот и народ подался в чаты и вообще хорошо - делфи жив и всё такое ) странно что первым же сообщением не спросили про это )
источник

ДП

Дмитрий Плясунов in Delphi & Lazarus
Alexey Shumkin
Это не техническая проблема, а организационная. По мне, вы придумали костыль, который как-то позволяет закрыть глаза на ошибки, совершаемые разработчиками ... (На самом деле, мне очень хочется крепко выругаться в адрес таких разработчиков.. но я пока сдержался)
Решать это надо организационными методами... А не техническими... Технически тут только контроль: строка на сервере.. если она упала, значит, налажали , и надо починить...

Вот представь, я новый разработчик в команде. Я клонирую проект, и....? Он не компилится у меня? А на сервере компилится? WTF?! Что я сделал не так? Ах,не я?! WTF?!
Мой принцип (да и вообще best practice) - clone , build , [test, deploy... ]Всё.. без плясок, без бубнов, без сакральных знаний...
С одной стороны все так
источник

ДП

Дмитрий Плясунов in Delphi & Lazarus
но проект легко компилится без любых форм, главное платформа
источник

ГМ

Геннадий Малинин in Delphi & Lazarus
Alexey Shumkin
Это не техническая проблема, а организационная. По мне, вы придумали костыль, который как-то позволяет закрыть глаза на ошибки, совершаемые разработчиками ... (На самом деле, мне очень хочется крепко выругаться в адрес таких разработчиков.. но я пока сдержался)
Решать это надо организационными методами... А не техническими... Технически тут только контроль: строка на сервере.. если она упала, значит, налажали , и надо починить...

Вот представь, я новый разработчик в команде. Я клонирую проект, и....? Он не компилится у меня? А на сервере компилится? WTF?! Что я сделал не так? Ах,не я?! WTF?!
Мой принцип (да и вообще best practice) - clone , build , [test, deploy... ]Всё.. без плясок, без бубнов, без сакральных знаний...
Ага, тоже хотел написать это, но почему-то промолчал. У нас в команде была такая практика:
Стянул проект в новый каталог (каждый раз по новой)
Поделал
Закоммитил
Запушил
Стягиваешь в релизный каталог себе же (но с флагом полной перезаписи)
Собираешь
Релизишь

По итогу, ты точно уверен, что проект в будущем соберётся у всех
источник

ДП

Дмитрий Плясунов in Delphi & Lazarus
но разработчик при мерже dpr тупит, svn и git не всегда его сливают правильно, в итоге приходится править его руками
источник

AS

Alexey Shumkin in Delphi & Lazarus
Дмитрий Плясунов
Вот первый вопрос - мы сами формируем на сервере сборки dpr-файл со всеми файлами, которые нашли в папка проекта, связано с тем, что разработчики не всегда следят за локальным dpr, и он не всегда в VCS актуальный (просто не хватает файлов в проекте). Как эту проблему решить через dproj?
Ну, и, подозреваю, что вы добавляете ВСЕ файлы в uses в .dpr.
Я так не делаю, я добавляю каталог с ними в Search Path проекта (а они как раз в .dproj  хранятся, что можно расценивать как решение проблемы через .dproj 😁)
источник

ДП

Дмитрий Плясунов in Delphi & Lazarus
Alexey Shumkin
Ну, и, подозреваю, что вы добавляете ВСЕ файлы в uses в .dpr.
Я так не делаю, я добавляю каталог с ними в Search Path проекта (а они как раз в .dproj  хранятся, что можно расценивать как решение проблемы через .dproj 😁)
нет, только проектные
источник

ДП

Дмитрий Плясунов in Delphi & Lazarus
добавлять нужно именно проектные, через searchpath нельзя
источник

ДП

Дмитрий Плясунов in Delphi & Lazarus
там регистрация класса форм в контейнере идет
источник

ДП

Дмитрий Плясунов in Delphi & Lazarus
и вот разработчик смерджил файл, у него все компилится, он пушит на сервак, все ок
источник

ДП

Дмитрий Плясунов in Delphi & Lazarus
но не хватает одной-двух форм в проекте - он их не делал, забыл, не знал
источник