LINUX.ORG.RU

Pijul 0.11

 , , ,


3

6

Вышла новая версия Pijul — свободной системы управления версиями, основанной на теории патчей и написанной на языке Rust.

Pijul развивает идеи Darcs — Pijul быстрее, лучше, в нём решена проблема экспоненциальной сложности слияния и поддерживаются ветки (для всех, кто спросил и еще спросит «чем оно лучше Git» - ссылка на FAQ)

Слово «Pijul» (произносится «пихуль») — это мексиканское названия Бороздчатоклювого ани, вида птиц семейства кукушковых, чьи особи совместно работают над строительством гнёзд.

Улучшения в версии 0.11:

  • Добавлено частичное клонирование подкаталогов: pijul clone --path и pijul pull --path. При этом скачиваются только те патчи, которые затрагивают указанный подкаталог.
  • Добавлен парсер ~/.ssh/config — теперь Pijul будет автоматически использовать настройки псевдонимов хостов, SSH-прокси, ключей и т. д.
  • Внутренняя архитектура переведена на использование библиотеки Tokio — де-факто стандарта для асинхронного программирования на языке Rust. Минус велосипеды, новичкам будет проще разобраться в коде Pijul.
  • Исправлено много мелких и две крупные ошибки. Одна из них приводила к падению производительности при использовании pijul record, другая в некоторых случаях приводила к изменении содержимого патчей и файлов после клонирования.

Для нужд Pijul автором также развиваются вспомогательные библиотеки:

  • Thrussh — реализация клиента и сервера SSH на языке Rust.
  • Pleingres — клиентская библиотека, реализующая сетевой протокол PostgreSQL на языке Rust.
  • Sanakirja — хранилище «ключ-значение» на языке Rust, основанное на B-деревьях и поддерживающее транзации (аналог LMDB). «Sanakirja» по-фински означает «словарь».

Автор также разрабатывает Pijul Nest — аналог GitHub на основе Pijul и Rust. К сожалению, Nest пока не является свободным проектом.

>>> Подробности



Проверено: Shaman007 ()
Последнее исправление: tailgunner (всего исправлений: 4)
Ответ на: комментарий от anonymous

гуй как раз требует отклик в реальном времени

Ты в аниме «Accel World» попал, где человеческое восприятие ускоряется в 1000 раз? Или прогрессбар копирования файлов в 59 fps причиняет тебе невыносимые муки?

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Ты в аниме

нет, скорей ты

anonymous
()
Ответ на: комментарий от RazrFalcon

Или прогрессбар копирования файлов в 59 fps причиняет тебе невыносимые муки?

Мне - да.

Теперь вопрос: прогресбар находится в отдельном потоке, а то и процессе. Что нужно сделать для того чтобы этот поток тормозил? На 12309 напороться? Так 12309 написан без сборщика мусора.

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Теперь вопрос: прогресбар находится в отдельном потоке, а то и процессе.

Если что, прогрессбар отражает прогресс. Сам прогрессбар может быть хоть на отдельной машине.

tailgunner ★★★★★
()
Ответ на: комментарий от NextGenenration

Теперь вопрос: прогресбар находится в отдельном потоке, а то и процессе.

Только в идеальном мире. Напоминаю, что веб в принципе однопоточный.

RazrFalcon ★★★★★
()
Ответ на: комментарий от tailgunner

Если что, прогрессбар отражает прогресс. Сам прогрессбар может быть хоть на отдельной машине.

И как это опровергает мои слова?

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Если ты не понял: отдельность потока/процесса/машины, на которой исполняется прогрессбар, не гарантирует тебе вообще ничего.

tailgunner ★★★★★
()
Ответ на: комментарий от RazrFalcon

Только в идеальном мире. Напоминаю, что веб в принципе однопоточный.

Значит отображение страницы с несколькими тысячами комментариев тормозит только из-за однопотока? И курсор в vs code жрёт процессор тоже по этой же причине?

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Значит отображение страницы с несколькими тысячами комментариев тормозит только из-за однопотока?

Не только. Но это одна из причин.

И курсор в vs code жрёт процессор тоже по этой же причине?

Нет. Это из-за убогости веба как архитектуры.

RazrFalcon ★★★★★
()
Ответ на: комментарий от tailgunner

Если ты не понял: отдельность потока/процесса/машины, на которой исполняется прогрессбар, не гарантирует тебе вообще ничего.

Каким образом медленное исполнение кода для которого рисуется прогресбар будет его тормозить? Или у тебя после замены hdd на ssd в файловом менеджере fps поднялся?

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Каким образом медленное исполнение кода для которого рисуется прогресбар будет его тормозить?

Не тупи. Оно будет тормозить отображение прогресса. Сам прогрессбар будет молниеносным, только отображаемый им прогресс будет дерганым.

tailgunner ★★★★★
()
Ответ на: комментарий от RazrFalcon

Не только. Но это одна из причин

И какие же остальные?

Нет. Это из-за убогости веба как архитектуры.

Один баг в хроме и сразу убогость веба

NextGenenration ★★
()
Ответ на: комментарий от tailgunner

Не тупи. Оно будет тормозить отображение прогресса. Сам прогрессбар будет молниеносным

Итог: что есть gc в gui, что нет - безразлично

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

Прикрути анимацию. Заодно разбей задачу на подщадачи и показывай их прогресс. Вместо того чтобы скакать с 0 на 50 а потом и на 100 % при копировании двух больших файлов отобрази на прогресбаре какой процент уже скопировался

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Не тупи. Оно будет тормозить отображение прогресса. Сам прогрессбар будет молниеносным

Итог: что есть gc в gui, что нет - безразлично

Окей, тупи дальше.

tailgunner ★★★★★
()
Ответ на: комментарий от NextGenenration

Харэ уже троллить тупостью. Непредсказуемые лаги из-за сборки мусора юзеру не нужны (даже юзеру блокнота, не говоря о более важных системах), вот и весь сказ.

anonymous
()
Ответ на: комментарий от anonymous

Харэ уже троллить тупостью. Непредсказуемые лаги из-за сборки мусора юзеру не нужны (даже юзеру блокнота, не говоря о более важных системах), вот и весь сказ.

Почитай про современные gc. Ты уже не в 80, где си является значительным достижением

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

И какие же остальные?

А там было что-то хорошее?

Один баг в хроме и сразу убогость веба

Баг не в хроме, а в архитектуре html/css, ибо компу приходится очень сильно пыхтеть, чтобы просто поменять цвет одного элемента.

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

ибо компу приходится очень сильно пыхтеть, чтобы просто поменять цвет одного элемента.

Это тебе кажется что нужно отрендерить только курсор. А вот забагованному хрому кажется что нужно отрендерить всё остальное. И так 60 раз в секунду. Вот по этой причине vs code так себя и вёл.

NextGenenration ★★
()
Ответ на: комментарий от RazrFalcon

А IDEA всё также тупит.

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

NextGenenration ★★
()
Ответ на: комментарий от O02eg

VimScript тоже интерпретатор с GC.

Вот и получается что сложная программа на си/крестах несёт в себе половину лиспа, только хуже.

Вимеры пытались отказаться от VimScript в пользу какого-то другого встраиваемого языка?

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Вимеры пытались отказаться от VimScript в пользу какого-то другого встраиваемого языка?

А какой другой встраиваемый язык не болеет GC?

O02eg ★★★★★
()
Ответ на: комментарий от NextGenenration

Оно тормозит даже там, где тормозить не должно. Sublime Text на данный момент является эталоном отзывчивости.

RazrFalcon ★★★★★
()
Ответ на: комментарий от O02eg

А какой другой встраиваемый язык не болеет GC?

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

Не любой случайный код можно сразу, открыв документацию по языку переписать на другой. То есть то что написано к примеру на ruby может не взлететь на php.

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

NextGenenration ★★
()
Ответ на: комментарий от RazrFalcon

И виной тут невозможность тонкого контроля содержимого в html+css.

Его не осилили профессионалы крестовики. Сразу не осилили. Через несколько версий хрома эту багу поправят.

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Емакс например тупит только при запуске. Потом из него вполне норм ИДЕ, даже на слабых машинах.

q0tw4 ★★★★
()
Ответ на: комментарий от NextGenenration

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

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

Оно тормозит даже там, где тормозить не должно.

И где это место, где тормозить не должно? Вся мощь интегрированной среды разработки никуда не девается, даже если ты хочешь открыть всего-навсего один маленький текстовой файл

Sublime Text на данный момент является эталоном отзывчивости.

С каких пор текстовой редактор записан в раряд ide?

NextGenenration ★★
()
Ответ на: комментарий от q0tw4

Емакс например тупит только при запуске. Потом из него вполне норм ИДЕ, даже на слабых машинах.

В нём реализована хотя-бы половина тех фич из idea?

NextGenenration ★★
()
Ответ на: комментарий от RazrFalcon

В тех же настройках.

Подключение к базе данных и в софте 2007 года от microsoft тормозит. Точнее не тормозит, а выполняетя не мгновенно. Вроде как тогда ещё не слишком microsoft писал на c#. И потом, это именно gc тормозит или же синхронный код запрашивающий какую-то долгую операцию?

NextGenenration ★★
()
Ответ на: комментарий от q0tw4

Смотря какой язык и какой выбрать плагин

Вот по этому и работает быстро. Правда тут возникает вопрос в том что лучше - пытаться работать в emacs при слабой поддержке языка и необходимости учиться элементарным вещам типа открытия файла или же поставить к примеру vs code и получить примерно такую же слабую поддержку языка.

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Хватит спорить с голосами в голове. Я ни про какую базу не говорил. Банальная установка/снятие галок. Ввод значений в поля. Всё лагает космически.

При этом у QtC всё отлично. Как же так?

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

Хватит спорить с голосами в голове. Я ни про какую базу не говорил. Банальная установка/снятие галок. Ввод значений в поля. Всё лагает космически.

При этом у QtC всё отлично. Как же так?

Открой в gedit дамп базы данных, мегабайт на 20. А теперь попробуй в поле поиска по одной букве, а не копипастом начать вводить текст. А теперь повтори в vs code. А теперь подумай, что написано на электроне, а что нет.

NextGenenration ★★
()
Ответ на: комментарий от NextGenenration

Ничего что vscode использует ripgrep, написанный на расте, для поиска.

Ну и речь была про html+css. При чём тут поиск текста - не ясно.

RazrFalcon ★★★★★
()
Ответ на: комментарий от RazrFalcon

Ничего что vscode использует ripgrep, написанный на расте, для поиска.

Наглядная демонстрация того что даже на самых производительных языках можно писать говнокод.

Ну и речь была про html+css

Только вот по какой-то причине баги хрома распространяют на весь веб.

При чём тут поиск текста - не ясно.

При том что навигация не тормозит, ввод не тормозит.

NextGenenration ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.