Size: 1680
Comment: +initializers and error handling in C code posting by mpm
|
Size: 2140
Comment: fix grammar
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
== General == | #pragma section-numbers 2 <<Include(A:dev)>> |
Line 3: | Line 4: |
* The [:RoadMap] * Tips for [:ContributingChanges] * [:ManagingBugs] - how to work with the BTS * [:CompatibilityRules] - how we keep our existing users from crying * [:OptionNaming] - the conventions used to name command-line options * [:BasicCodingStyle] - how to keep [:mpm] from being grumpy with your code * [:WritingTests] - how to add tests to the test suite * [:DeveloperRepos] - where to find various public repositories of Mercurial work * [:NewFeatureDiscussions] - A page of links to discussions about new features. * [:NewIdeas] - Suggestions for features/extensions that would make someone happy * A list of [:Presentations] and other related events. * [:MacOSXTools] - Installing the tool chain on Mac OS X. * [:SummerOfCode] * [:ProductName] for the rules on using the name "Mercurial" |
= Developer Info = |
Line 18: | Line 6: |
=== Modules in C === * [http://selenic.com/pipermail/mercurial-devel/2008-September/007985.html September 2008 posting by Matt] about how to do initializers and error handling in C modules. |
Information on working on the Mercurial code base. |
Line 21: | Line 8: |
== Mercurial Internals == | <<TableOfContents>> |
Line 23: | Line 10: |
* [:DeveloperBasics] - some basic code examples * [:MercurialApi] - The public API for Mercurial * [:Design] - Mercurial's data structures and how it uses them. * [:WhatGoesWhere] - the project architecture * [:WireProtocol] - the push/pull changegroup protocol * [:DebuggingFeatures] - how to poke around in Mercurial's internals * [:Theming] - how to create new styles for Mercurial's web interface * [:WritingExtensions] - how to write Mercurial extensions |
== Start hacking == * [[http://selenic.com/hg|Main repository]] - browse or clone the source (see [[DeveloperRepos]] for other repositories) * [[WritingExtensions]] - how to write Mercurial extensions * [[Theming]] - how to create new styles for Mercurial's web interface * [[DeveloperBasics]] - some basic code examples * [[MercurialApi]] - The internal API for Mercurial * [[TranslatingMercurial]] - how to translate Mercurial into your own language |
Line 32: | Line 18: |
== Old Stuff == | == Contributing code == * [[ContributingChanges|Contributing changes]] - how to send us your changes * [[UIGuideline]] - how to make consistent UI choices * [[CodingStyle|Coding style]] - how to make your code pretty * [[WritingTests]] - how to add tests to the test suite * [[HelpStyleGuide]] - how to write nice help * [[CompatibilityRules]] - how we keep our existing users from crying * [[ReviewProcess]] - how you can help getting patches in |
Line 34: | Line 27: |
* First Mercurial [:UserSurvey]. * The old ToDo list and [:MissingFeatures] |
== Internals == * [[Design]] - Mercurial's data structures and how it uses them * [[FileFormats]] - list of Mercurial's disk file formats * [[WhatGoesWhere]] - the project architecture * [[WireProtocol]] - the push/pull changegroup protocol * [[DebuggingFeatures]] - how to poke around in Mercurial's internals == Working with the community == * [[MailingLists]] * [[ManagingBugs]] - how to work with the [[BugTracker|bug tracker]] * [[TimeBasedReleasePlan]] * [[DeveloperRepos]] - where to find various public repositories of Mercurial work * [[IRC]] - where most of the developers hang out * [[CategoryMeetings]] - When we get the community together (about every 6 months) == Feature proposals == * [[CategoryNewFeatures]] - All page discussing new features. == Developer tips == * [[MacOSXTools]] - Installing the tool chain on Mac OS X. * Using [[MercurialUnderWine|Wine]] to test Windows support under Linux * Easy way of starting Mercurial hacking on Windows with [[HackableMercurial]] |
Line 38: | Line 52: |
CategoryContributing | CategoryDeveloper |
Note:
This page is primarily intended for developers of Mercurial.
Developer Info
Information on working on the Mercurial code base.
Contents
1. Start hacking
Main repository - browse or clone the source (see DeveloperRepos for other repositories)
WritingExtensions - how to write Mercurial extensions
Theming - how to create new styles for Mercurial's web interface
DeveloperBasics - some basic code examples
MercurialApi - The internal API for Mercurial
TranslatingMercurial - how to translate Mercurial into your own language
2. Contributing code
Contributing changes - how to send us your changes
UIGuideline - how to make consistent UI choices
Coding style - how to make your code pretty
WritingTests - how to add tests to the test suite
HelpStyleGuide - how to write nice help
CompatibilityRules - how we keep our existing users from crying
ReviewProcess - how you can help getting patches in
3. Internals
Design - Mercurial's data structures and how it uses them
FileFormats - list of Mercurial's disk file formats
WhatGoesWhere - the project architecture
WireProtocol - the push/pull changegroup protocol
DebuggingFeatures - how to poke around in Mercurial's internals
4. Working with the community
ManagingBugs - how to work with the bug tracker
DeveloperRepos - where to find various public repositories of Mercurial work
IRC - where most of the developers hang out
CategoryMeetings - When we get the community together (about every 6 months)
5. Feature proposals
CategoryNewFeatures - All page discussing new features.
6. Developer tips
MacOSXTools - Installing the tool chain on Mac OS X.
Using Wine to test Windows support under Linux
Easy way of starting Mercurial hacking on Windows with HackableMercurial