Roundup (sledování problémů) - Roundup (issue tracker)
Původní autoři | Ka-Ping Yee |
---|---|
Vývojáři | Richard Jones, Roundup Initiative |
První vydání | 18. srpna 2001 |
Stabilní uvolnění | 2.0.0[1] / 13. července 2020 |
Úložiště | ![]() |
Napsáno | Krajta |
Operační systém | Cross-platform |
Typ | Systém sledování problémů |
Licence | Licence MIT[2] |
webová stránka | Roundup-tracker |
Zátah je open-source problém nebo systém sledování chyb představovat příkazový řádek, web a e-mailem rozhraní. Je napsán v Krajta a jsou navrženy tak, aby byly vysoce přizpůsobitelné.[3] Roundup navrhl Ka-Ping Yee pro projekt Software Carpentry a byl vyvinut v letech 2001–2016 pod vedením Richarda Jonese. Od té doby jej vyvinula komunita Roundup. V současné době je to nástroj pro sledování problémů samotného programovacího jazyka Python.[4] Kdysi to bylo popsáno jako „jako Bugzilla - bez šesti let školení nebo - RT bez toho nudného MySQL odpadky."[5]
Funkce
Standardní konfigurace funkcí Roundup:
- webové rozhraní pro prohlížení, úpravy a vyhledávání problémů
- A Pošta brána umožňující vytváření a změnu problémů[6]
- A vrstva abstrakce databáze, v současné době podporuje (mimo jiné) Krajta integrovaný modul "anydbm", PostgreSQL, MySQL a SQLite
- "nosy listy" specifické pro vydání, používané pro e-mailová upozornění a konverzace (každý problém se ve skutečnosti stává mini-mailovým seznamem) [7]
- autorizační systém,[8] na základě rolí (uživatelů), tříd a objektů
- interaktivní prostředí pro úlohy zálohování a obnovy a pro manipulaci s objekty
Roundup podporuje několik webových backendů.[9] Může být spuštěn samostatně, jako pozadí démon proces, jako a CGI skript[10] nebo jako WSGI aplikace.
Koncepty
Roundup je přizpůsoben změnou obsahu adresáře instance trackeru:
Schéma databáze
Schéma databáze je definováno v Krajta soubor v kořenovém adresáři instance sledovače; přečte se znovu při každém novém spuštění serveru. Když jsou nalezeny změny (např. Nové atributy), tabulky podkladového RDBS jsou odpovídajícím způsobem změněny.
Šablony stránek
Roundup používá Jazyk atributu šablony (TAL) k vytvoření HTML nebo XHTML výstup. Verze 1.5.0 přidává experimentální podporu pro alternativní šablony motorů, jako je Jinja2.[11]
Šablony jsou pojmenovány po třídách v databázi. Roundup automaticky vybere šablonu na základě názvu třídy požadovaného z adresy URL. Některé šablony se používají pro několik tříd, např. _generic.index.html, který umožňuje (autorizovaným) uživatelům měnit objekty všech tříd, kterým chybí vlastní šablona indexu.
Je-li požadováno číslo „issue123“, toto designér je rozdělena na problém třída a ID „123“.[12] Ve výchozím nastavení je vybrána šablona „položka“: Nejprve je hledán soubor šablony issue.item.html; pokud jej nelze najít, použije se jako záložní možnost _generic.item.html. Pokud chybí stejně, dojde k chybě.
Detektory
Mnoho funkcí Roundup, včetně některých standardních funkcí, je implementováno pomocí tzv detektory,[13] které se nacházejí v podadresáři „detektory“ instance sledovače. Jsou to Python podprogramy které mají přístup k objektu, který se má změnit (pokud již byl vytvořen) a požadované změny atributů.
Detektory se rozlišují mezi auditoři a reaktory. Auditoři se používají především k několika automatickým změnám (ve standardní konfiguraci je přiřazen uživatel je automaticky přidán do nosný seznam vydání) a odmítnout nepovolené změny; reaktory jsou následně provedeny a použity např. pro funkci upozornění e-mailem zasílání upozornění e-mailem všem uživatelům, kteří se zajímají o určitý problém, když je k němu přidán komentář.
Detektory se aktivují při každé z akcí
- vytvořit
- set (změna atributů)
- odejít
- obnovit
je požadováno. Lze je použít k vytvoření propracovaného vlastního pracovního toku.
Rozšíření
Podadresář instance „přípony“ může obsahovat další soubory, které jsou potřebné pro rozšířené funkce, které nelze (pohodlně) provést TAL; jsou možné i zcela nové akce.
Pythonové moduly, které používají detektory i rozšíření, lze umístit do podadresáře "lib"
Viz také
Reference
- ^ https://sourceforge.net/p/roundup/mailman/message/37060144/
- ^ Licence - Dokumentace Roundup 1.5
- ^ Primárním uživatelským rozhraním je webové rozhraní. Tzv
klasický
Šablona sledování je distribuována jako standardní šablona a sada datové struktury, ale lze ji použít jako výchozí bod pro přizpůsobení - ^ Sledovač chyb v Pythonu
- ^ NTKnow 2002/07/05 - SLEDOVÁNÍ
- ^ Uživatelské rozhraní e-mailu, Popis návrhu Roundup
- ^ Návrh nosných seznamů
- ^ Řízení přístupu, Popis návrhu Roundup
- ^ http://roundup.sourceforge.net/docs/installation.html#configure-a-web-interface
- ^ využití prostřednictvím CGI je vzácný a nedoporučuje se z důvodů výkonu
- ^ https://pypi.python.org/pypi/roundup/1.5.0
- ^ identifikátory a označení, Popis návrhu Roundup
- ^ rozhraní detektoru, Popis návrhu Roundup