From: Igor Vlasenko <vlasenko@imath.kiev.ua> To: devel@lists.altlinux.org Subject: [devel] repocop 0.07 changes Date: Mon, 24 Mar 2008 21:05:36 +0200 Message-ID: <20080324190536.GA19045@dad.imath.kiev.ua> (raw) Уважаемые коллеги, В сизифе сейчас repocop 0.06, ориентированный на тесты без состояние. Хочу рассказать о направлении разработки repocop 0.07. repocop 0.07 полностью совместим и будет совместим c существующими тестами, но в нем будет одно важное улучшение. Больше всего в repocop 0.06 меня напрягала необходимость 2 часа прогонять через тест весь репозиторий, если в тесте хоть что-то меняется. Новая архитектура должна устранить этот недостаток. Многие тесты совместно используют одни и те же данные. Примером может служить база данных rpm.db, которая создается в процессе работы repocop 0.07. Для каждого пакета в ней содержатся список файлов, значения полей Group:, URL:, Requires:, Provides, скрипты %postun, и т. д., т.е. вся информация, которая содержится в заголовке rpm пакета. Кроме того, логика обработки данных меняется гораздо чаще, чем структура хранения данных. Чтобы повысить повторную используемость кода и не прогонять весь репозиторий через тесты каждый раз, когда в тесте меняется логика, в repocop 0.07 введена новая сущность - коллекторы (сборщики данных). Коллекторы устроены в точности как тесты, но не возвращают никаких результатов, а только собирают данные для своей базы. Собранные коллекторами данные могут использоваться в тестах при вызове скриптов <testname>/done. Это позволяет дорогие по машинному времени вызовы <testname>/test сосредоточить в коллекторах, а в тестах использовать дешевые вызовы <testname>/done. Рекомендуемый формат хранения собранных коллектором данных - файл SQLite. Архитектура repocop не запрещает альтернативные форматы хранения, но разнородные форматы данных могут затруднить обработку данных тестами. Например, данные из разных файлов SQLite можно обработать одним запросом SQLite, чего не скажешь о разнородных форматах. -- Dr. Igor Vlasenko -------------------- Topology Department Institute of Math Kiev, Ukraine
next reply other threads:[~2008-03-24 19:05 UTC|newest] Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top 2008-03-24 19:05 Igor Vlasenko [this message] 2008-03-24 19:18 ` Alexey Tourbin 2008-03-24 19:34 ` Igor Vlasenko 2008-03-28 20:28 ` Alexey Tourbin 2008-03-28 21:39 ` Igor Vlasenko
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20080324190536.GA19045@dad.imath.kiev.ua \ --to=vlasenko@imath.kiev.ua \ --cc=devel@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git