Jump to content

Trac

From Wikipedia, the free encyclopedia

Trac
Developer(s)Edgewall Software
Initial releaseFebruary 23, 2004; 20 years ago (2004-02-23)
Stable release1.6[1] Edit this on Wikidata (23 September 2023; 14 months ago (23 September 2023)) [±]
Repository
Written inPython
Operating systemWindows, OS X, Linux, BSD
Available in36 languages[2]
TypeProject management software, bug tracking system
License2005: BSD-3-Clause[a][3]
2004: GPL-2.0-or-later[b]
Websitetrac.edgewall.org

Trac is an open-source, web-based project management and bug tracking system. It has been adopted by a variety of organizations for use as a bug tracking system for both free and open-source software and proprietary projects and products.[4] Trac integrates with major version control systems including ("out of the box") Subversion and Git. Trac is used, among others, by Django,[5] FFmpeg,[6] WebKit,[7] 0 A.D.,[8] and WordPress.[9]

Trac is available on all major operating systems including Windows via Installer or Bitnami,[10] OS X via MacPorts or pkgsrc, Debian,[11] Ubuntu,[12] Arch Linux[13] or FreeBSD,[14] as well as on various cloud hosting services.

History

[edit]

Inspired by CVSTrac, Jonas Borgström and Daniel Lundin from Edgewall Software started writing svntrac in August 2003 using SQLite and Subversion.[15] In December 2003 they renamed it to Trac. In February 2004 the Trac version was changed first from 0.0.1 to 0.1 and then directly from 0.1 to 0.5. That release was followed in March 2004 by 0.6 and 0.7, and 0.8 in November 2004.

Edgewall Software is an umbrella organization for hosting edgewall.org for the community to collaborate on developing open source Python software.[16] It used to offer software development, consulting and support services. Some of the earliest community members to collaborate in the open source development of Trac were Rocky Burt in March 2004, Christopher Lenz and Francois Harvey in May 2004, Christian Boos and Otavio Salvador in December 2004 and Mark Rowe March 2005.[17]

In August 2005 the license was changed from GPL-2.0-or-later to BSD-3-Clause. The first release under this final license was Trac 0.9 in October 2005, which among other features introduced PostgreSQL database support.

Trac 0.10, released in September 2006, was an important release that first introduced the component system that to this day allows plugins to extend and add features to Trac's core. Trac itself since this point consists mainly of optional plugin components that can be disabled or replaced entirely. MySQL database support is added as one such core component. This release added support for version control systems other than Subversion by external plugins. Mercurial support was provided through a separate plugin due to its GPL license restrictions.[18] Trac 0.11, released in June 2008, changed the HTML template system from ClearSilver[19] to Genshi, breaking compatibility with many of the older plugins.

Trac 0.12 was released in June 2010 and became a stable long term release with the latest point release 0.12.7 from July 2015. It added internationalization and localization support using Babel, and allows using multiple version control repositories at once.

Trac 1.0 was released in September 2012,[20] the previous stable long term supported version with the latest point release 1.0.13 from September 2016. It included the previously external plugin for Git version control support.

Trac 1.1.1 from February 2013 through 1.1.6 from July 2015 are releases without long-term support and compatibility guarantees, that turned into Trac 1.2 from November 2016.[21]

Trac 1.4 from August 2019 was the last stable release running on Python 2.7. It uses the Jinja template system.

Trac 1.6 from September 2023 is the current stable release and works exclusively on Python3. Many of the plugins have also been rewritten to work on Python3 as well as Jinja.

Core features

[edit]

Trac offers a no-frills approach to project management by deeply integrating ticket tracking, version control (for which multiple repositories per environment are supported), and wiki. It allows hyperlinking information between these systems, include wiki content directly in a ticket or list tickets automatically on wiki pages.[22][23][24][25][26][27]

The ticket system can be used for tracking bugs, tasks, issues, incidents or any other kind of ticket. Customized reports can be generated from parametric stored SQL queries or using an interactive ticket query system. There is also an integrated search engine and a fine-grained permission system.

Additional project management features include grouping tickets into milestones and a roadmap where the milestones and their progress are listed and visualized. The recent activity is shown on a timeline page, and users are notified by email or can subscribe to RSS or iCalendar feeds.

Additional features

[edit]

Trac has a plugin system to add additional features and to integrate with external tools.[28] Besides the core SVN and Git support, Trac can connect via plugins to many other version control systems, including Bazaar, CVS, Darcs, Mercurial, Monotone, and Perforce.[citation needed] Features provided by plugins include Continuous integration, account management, tags, spam filtering, blogs and discussion fora, and connectors for XML-RPC and Pastebin.[non-primary source needed]

Apache Bloodhound

[edit]
Apache Bloodhound
Developer(s)Apache Software Foundation
Initial releaseAugust 23, 2013; 11 years ago (2013-08-23)[29]
Stable release
0.8 / December 11, 2014; 9 years ago (2014-12-11)[30]
RepositoryBloodhound Repository
Written inPython
LicenseApache License 2.0
Websitebloodhound.apache.org

Apache Bloodhound is a web-based project management and bug tracking system built on top of Trac.[31] The Bloodhound project was initially submitted to the Apache Incubator by WANdisco.[32] Bloodhound became a top-level Apache project in 2013.[33][34][35] Bloodhound added multi-project support to Trac. According to the Bloodhound webpage, this project has been now been retired (August 2024).

See also

[edit]

Notes

[edit]
  1. ^ BSD-3-Clause since 2005-08-25.
  2. ^ GPL-2.0-or-later from 2003-08-10 until 2005-08-25.

References

[edit]
  1. ^ "Trac 1.6 Released". September 23, 2023. Retrieved November 11, 2023.
  2. ^ "Trac localization". Retrieved November 6, 2023.
  3. ^ "TracLicense - The Trac Project". Edgewall Trac. Retrieved March 6, 2007.
  4. ^ "Who uses Trac?". Edgewall Trac. September 9, 2016. Retrieved September 18, 2016.
  5. ^ "Django's bug tracker and wiki". Retrieved September 18, 2016.
  6. ^ "FFmpeg". Retrieved September 18, 2016.
  7. ^ "WebKit". Retrieved September 18, 2016.
  8. ^ "0 A.D." Retrieved June 23, 2018.
  9. ^ "Making WordPress.org". Retrieved September 18, 2016.
  10. ^ "Bitnami Trac". Retrieved September 21, 2016.
  11. ^ "Debian - Details of package trac". Retrieved September 21, 2016.
  12. ^ "Ubuntu - Details of package trac". Retrieved September 21, 2016.
  13. ^ "Arch Linux - trac". Retrieved September 21, 2016.
  14. ^ "FreeBSD Ports trac-". Retrieved September 21, 2016.
  15. ^ "TracHistory - The Trac Project". Edgewall Trac. March 1, 2004. Retrieved September 17, 2016.
  16. ^ "EdgewallSoftware - The Trac Project". Edgewall Trac. May 17, 2010. Retrieved September 17, 2016.
  17. ^ "TracTeam - The Trac Project". Edgewall Trac. July 21, 2016. Retrieved September 17, 2016.
  18. ^ Blank, Remy (May 6, 2010). "[Trac] The future of RepositoryHookSystem plugin". trac-users (Mailing list). Retrieved September 17, 2016.
  19. ^ "ClearSilver - The Trac Project". Edgewall Trac. January 27, 2007. Retrieved February 6, 2007.
  20. ^ Boos, Christian (September 9, 2012). "Trac 1.0 released". trac-dev (Mailing list). Retrieved September 17, 2016.
  21. ^ Ollos, Ryan (November 5, 2016). "Trac 1.2 Released". trac-announce (Mailing list). Retrieved December 27, 2016.
  22. ^ John Ferguson Smart (March 14, 2007). "What issue tracking system is best for you?". JavaWorld. Retrieved April 1, 2016.
  23. ^ Baxter, R.; Hong, N.C. (July 2011). "Tracking community intelligence with Trac". Philosophical Transactions of the Royal Society A. 369 (1949): 3372–3383. Bibcode:2011RSPTA.369.3372B. doi:10.1098/rsta.2011.0141. PMID 21768145.
  24. ^ Smart, John Ferguson (May 13, 2008). "Chapter 28: Trac". Java Power Tools. O'Reilly Media. pp. 769–804. ISBN 978-0596527938.
  25. ^ Fogel, Karl (October 7, 2005). "Appendix B: Free Bug Trackers". Producing Open Source Software: How to Run a Successful Free Software Project (1 ed.). O'Reilly Media. p. 258. ISBN 978-0596007591.
  26. ^ Nagel, William A. (May 6, 2005). "Chapter 13.3: Tying Revisions to Issue Tracking". Subversion Version Control: Using the Subversion Version Control System in Development Projects. Prentice Hall Professional Technical Reference. p. 248. ISBN 978-0131855182.
  27. ^ Forcier, Jeff; Bissex, Paul; Chun, Wesley J. (October 24, 2008). "Appendix C: Tools for Practical Django Development". Python Web Development with Django. Addison-Wesley Professional. ISBN 978-0132356138.
  28. ^ "15 Useful Project Management Tools". Smashing Magazine. November 13, 2008. Retrieved September 20, 2016.
  29. ^ "[ANNOUNCE] Apache Bloodhound 0.1.0 incubating Released". Retrieved April 2, 2013.
  30. ^ "[ANNOUNCE] Apache Bloodhound 0.8 Released". Retrieved July 5, 2019.
  31. ^ "Apache Bloodhound Leads Open Source Trac Forward". Internetnews.com. April 2, 2013.
  32. ^ "[PROPOSAL] Apache Bloodhound". Apache Software Foundation Incubator General mailing list. Retrieved April 2, 2013.
  33. ^ Gold, Jon (April 4, 2013). "Apache Foundation promotes development framework Bloodhound to the top". Network World. Network World, Inc. Archived from the original on June 20, 2015. Retrieved October 23, 2014.
  34. ^ "Apache Bloodhound sniffs out top level project status". H-online.com. April 2, 2013. Archived from the original on April 3, 2013.
  35. ^ "Apache Bloodhound wird offizielles Apache-Projekt" (in German). Pro-Linux. April 3, 2013.
[edit]