Roundup (sledování problémů) - Roundup (issue tracker)

Zátah
Původní autořiKa-Ping Yee
VývojářiRichard Jones, Roundup Initiative
První vydání18. srpna 2001; Před 19 lety (2001-08-18)
Stabilní uvolnění
2.0.0[1] / 13. července 2020; Před 4 měsíci (2020-07-13)
Úložiště Upravte to na Wikidata
NapsánoKrajta
Operační systémCross-platform
TypSystém sledování problémů
LicenceLicence MIT[2]
webová stránkaRoundup-tracker.org

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

  1. ^ https://sourceforge.net/p/roundup/mailman/message/37060144/
  2. ^ Licence - Dokumentace Roundup 1.5
  3. ^ 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í
  4. ^ Sledovač chyb v Pythonu
  5. ^ NTKnow 2002/07/05 - SLEDOVÁNÍ
  6. ^ Uživatelské rozhraní e-mailu, Popis návrhu Roundup
  7. ^ Návrh nosných seznamů
  8. ^ Řízení přístupu, Popis návrhu Roundup
  9. ^ http://roundup.sourceforge.net/docs/installation.html#configure-a-web-interface
  10. ^ využití prostřednictvím CGI je vzácný a nedoporučuje se z důvodů výkonu
  11. ^ https://pypi.python.org/pypi/roundup/1.5.0
  12. ^ identifikátory a označení, Popis návrhu Roundup
  13. ^ rozhraní detektoru, Popis návrhu Roundup

externí odkazy