NOTICE
Due to stupid spambots most of the tickets got messed up and where changed. :( It took me hours to go through em all and fix them! I have since made it so you have to Register and then Login to be able to submit a ticket or modify a ticket. I hope this will slow down or stop the spamming on Trac Tickets... DIE Spammers DIE!!!!!
Get the Code
We use Subversion for source revision control and code sharing.
You can browse Trax source code at:
The latest revision can be checked out with the following command:
svn co svn://svn.phpontrax.com/trax/trunk trax
For further instructions on how to use Subversion, see http://svnbook.red-bean.com/book.html The Subversion Book.
How do I run Edge Trax?
Trax will look for a local copy in the "vendor/trax" folder. So to run bleeding edge Trax, open a terminal window and cd to your app's "vendor" folder and run the below svn command:
cd vendor svn co svn://svn.phpontrax.com/trax/trunk/trax/vendor/trax trax
After you do this you can from the vendor folder run:
svn up
And it will pull down any new code from svn for you to stay upto date.
Creating a patch
Tickets are fine, but patches are great. If you want to change something in Trax or fix a bug you've run across, there's no faster way to make it happen than to do it yourself. Trax needs contributors, please do become one of them.
1. Get Trax ready for patching
- Check out the latest source: svn co svn://svn.phpontrax.com/trax_repository/trax/trunk
2. Share your well-tested change
- Sanity check the changes you've made: svn status
- Create a patch: svn diff > my_descriptively_named_patch.diff
- Create a new ticket with [PATCH] as the first word in the summary. Then edit your ticket and upload (not paste) your diff.
- Login to Trac or Register a new user.
- Create a new ticket with [PATCH] as the first word in the summary. Attach your patch file.
- Keep an eye on the ticket and address concerns that arise. Make your change hard not to commit.
3. Bask in the glory of being a Trax contributor!
Source style
- Four spaces, no tabs
- Class names: MyClass?
- Function names: my_method($my_arg1, $my_arg2 = null) -- not my_method( $my_arg, $my_arg2 = null ) or my_method ($my_arg)
- Variable names: $my_var
- Follow the conventions you see used in the source already
