Организация Software Freedom Conservancy (http://sfconservancy.org/) анонсировала (http://sfconservancy.org/news/2014/jul/04/kallithea-joins/) систему управления репозиториями Kallithea (http://kallithea-scm.org/), которая по решаемым задачам напоминает GitHub, но кроме Git поддерживает и систему контроля версий Mercurial. Код проекта распространяется (https://kallithea-scm.org/repos/kallithea/) под лицензией GPLv3.В качестве основы Kallithea выступает исходный код, выпущенный компанией RhodeCode GmbH под лицензией GPLv3. Изначально RhodeCode являлся свободным проектом, но в прошлом году был преобразован в коммерческий продукт с частично открытым кодом. Группа энтузиастов, заинтересованных в продолжении существования свободного варианта RhodeCode, взяла на себя работу по доведению открытой кодовой базы RhodeCode по функциональности до проприетарной версии, развивая свободные аналоги для функций, доступных в проприетарной версии RhodeCode, и предлагая собственные новшества. В настоящее время не вся запланированная функциональность реализована - форк произведён всего несколько дней назад, но проект развивается достаточно активно.
Как и Git, Kallithea будет развиваться под покровительством организации Software Freedom Conservancy (SFC), что позволит гарантировать дальнейший свободный характер разработки и снять с разработчиков решение юридических и финансовых вопросов, дав возможность сконцентрироваться на процессе разработки. В частности, SFC берет на себя функции по сбору пожертвований, становится владельцем активов проекта и избавляет разработчиков от личной ответственности в случае судебных разбирательств. Так как SFC подпадает под льготную категорию налогообложения, проведение средств на развитие Kallithea через эту организацию позволит организовать налоговый вычет при переводе пожертвований. К числу проектов, развиваемых при поддержке SFC, относятся Amarok, Wine, Samba, Mercurial, OpenChange, Git, BusyBox, Inkscape, uCLibc и еще около десятка свободных проектов.
Kallithea представляет собой веб-интерфейс к системам контроля версий Mercurial и Git, позволяющий развернуть на своих мощностях полностью подконтрольную платформу управления разработкой, похожую на GitHub и Bitbucket. Код проекта написан на языке Python. Для работы с репозиториями задействована библиотека vcs, мета-данные о проектах хранятся в БД на основе SQLite. Программа позволяет через Web управлять репозиториями, разделять права доступа, рецензировать код, отслеживать активность других участников, делать форки проектов, отправлять пулл-реквесты или изменять код на месте, через простой редактор. Поддерживается интеграция с централизованной базой пользователей предприятия, основанной на LDAP или ActiveDirectory. Поддерживается создание групп репозиториев и групп разработчиков с унификацией управления членами группы.
Платформа является многопоточной, что позволяет одновременно обслуживать несколько pull/push-запросов. Для увеличения производительности в системе активно используется кэширование и выполнение действий в асинхронном режиме. В систему также интегрированы средства резервного копирования, позволяющие периодически архивировать и сохранять через scp копию всех данных. Для отслеживания активности в репозиториях поддерживается специальная прослойка, ведущая журнал всех обращений и позволяющая аутентифицировать каждый запрос. В системе рецензирования изменений поддерживается обсуждение изменений и отправка уведомлений. Внешний вид интерфейса может легко быть изменён через систему шаблонов. Поддерживается наглядное представление активности в виде графиков.
URL: http://sfconservancy.org/news/2014/jul/04/kallithea-joins/
Новость: http://www.opennet.me/opennews/art.shtml?num=40141
похоже лишена проблем gitlab
Ждём данные о прожорстве этой системы.
> написан на языке PythonНу вы поняли...
Интересно, всё ли написанное на Python такое страшное???.....
> Интересно, всё ли написанное на Python такое страшное???.....Это риторический вопрос
Уважаемый аноним. Вы чудовищно смешны :)
> Уважаемый аноним. Вы чудовищно смешны :)Ты "чудовищно" себе льстишь - нифига ты не смешной.
Нужно, актуально. А то сижу в bitbucket, а АНБ крадет мою "интиликтуальнаю собствинасть"...
> Нужно, актуально. А то сижу в bitbucket, а АНБ крадет мою "интиликтуальнаю собствинасть"...Мне кажется, вы себя несколько переоцениваете.
Хочется сказать "Ненужно, есть gitlab", но пусть будет. Интересно было бы посмотреть сравнение по фичам.
Если считать что это форк последнего GPL'ного RhodeCode 1.7.2 - то по фичам должно быть всё хорошо, см. http://yourcmc.ru/wiki/Git_веб-интерфейсы - я там сравнение всего этого добра держу...
хорошее сравнение, спасибо
По поводу сравнения. А вы изучали возможности заскриптовать кастомный workflow в них? Ну там создание промежуточных репозиториев, автоматический коммит в них и прочее.
Эм... Честно говоря даже не совсем понял, что имеется ввиду, не то что не сравнивал =)Что есть "промежуточные репозитории"?
самое странное то что разработка идет на bitbucket.org ...
в общем ему до гитлаба еще далеко
gitlab медленный из за руби, питон намного стабильнее.
> gitlab медленный из за руби, питон намного стабильнее./0
Что не так? Ruby медленней и менее стабильный.
> gitlab медленный из за руби, питон намного стабильнее.Вот как-то так питонисты и пишут свои программы. Теперь я понимаю почему они такие глючные - там логика и не ночевала.
>> gitlab медленный из за руби, питон намного стабильнее.
> Вот как-то так питонисты и пишут свои программы. Теперь я понимаю почему
> они такие глючные - там логика и не ночевала.Ну так обоснуй.
> gitlab медленный из за руби, питон намного стабильнее.Я даже не знаю, с одной стороны плюс за поливание руби, с другой стороны минус и за питон...
На битбакете только issues и пулл-реквесты. Issues — потому что своих ещё не запилили, а пулл-реквесты — чтобы сообществу удобнее было (cross-site пулл-реквестов пока ещё не бывает) :)
> похоже лишена проблем gitlabа можно по подробней, что за проблема такая?
странно> Software Freedom Conservancy, Inc. is a 501(c)(3) not-for-profit organization incorporated in New York.
а назвали в честь города Греции
назвали бы тогда Калита Иван =D
> странно
>> Software Freedom Conservancy, Inc. is a 501(c)(3) not-for-profit organization incorporated in New York.
> а назвали в честь города Греции
> назвали бы тогда Калита Иван =DФорк проекта названного в честь острова Родос.
База на SQLite?! Это же даже не смешно. Оно же ляжет при 50 активных пользователях…
SQLite — это база по умолчанию, а вообще поддерживаются постгрес, мускул и прочее, т.к. используется SQLAlchemy.А вообще, SQLite не так плох, как некоторые думают. И с производительностью у него достаточно неплохо.
> SQLite — это база по умолчанию, а вообще поддерживаются постгрес, мускул и
> прочее, т.к. используется SQLAlchemy.
> А вообще, SQLite не так плох, как некоторые думают. И с производительностью
> у него достаточно неплохо.Я ничего не имею против SQLite, скорее наоборот. Просто в определённый момент у её наступает лок.
> у её наступает лок.У нее может быть только 1 активный writer в единицу времени. Но наступить на ситуацию когда это будет существенной проблемой - еще суметь надо.
Все зависит как всегда от кода. Например, SQLite выдерживает на слабом железе всего 7 транзакций с записью в секунду, но при этом может за ту же секунду записать сотню тысяч записей в пределах одной транзакции. Может за доли секунды сделать выборку из миллионов записей при использовании в запросе всего одного индекса, но затормозить на базе в 100к записей, если запросу нужно два и более индекса, вплоть до того, что запрос с вложенным select будет быстрее запроса с одним select и двумя условиями в where.
Вот у погромистов akonadi руки из жопы и поэтому sqlite у них тормозит на адресной книге в пару сотен записей. А у других он спокойно обслуживает БД с миллионами записей. В данном же проекте поводов для оптимизма нет, так как в случае с SQLAlchemy и прочими ORM вариант тормозов весьма вероятен.
>> SQLite — это база по умолчанию, а вообще поддерживаются постгрес, мускул и
>> прочее, т.к. используется SQLAlchemy.
>> А вообще, SQLite не так плох, как некоторые думают. И с производительностью
>> у него достаточно неплохо.
> Я ничего не имею против SQLite, скорее наоборот. Просто в определённый момент
> у её наступает лок.Это ж сколько тысяч push'ев в секунду нужно, чтобы настал лок.
А как они сделали многопоточность на питоне? Или они какой-нибудь Jython юзают и стороннюю виртуальную машину?
Как вариант https://github.com/dropbox/pyston
Я подозреваю что многопоточность там ровно такая же как и в любом PHP ))
> А как они сделали многопоточность на питоне? Или они какой-нибудь Jython юзают
> и стороннюю виртуальную машину?Оставлю єто здесь
https://docs.python.org/3/library/threading.html
http://www.tutorialspoint.com/python/python_multithreading.htm
https://www.google.com.ua/search?q=python+multitreding&oq=py...
> А как они сделали многопоточность на питоне? Или они какой-нибудь Jython юзают
> и стороннюю виртуальную машину?Это всё что ты знаешь о python?
Если вдруг кому интересно, как уставить это чудо и потестить:
https://gist.github.com/UnderGreen/bb4800baa48ce7b1340c
> Если вдруг кому интересно, как уставить это чудо и потестить:
> https://gist.github.com/UnderGreen/bb4800baa48ce7b1340cСпасибо.