Difference between revisions of "For Developers"

From Audacity Wiki
Jump to: navigation, search
(Tidy.)
(Unitary Project - issue tracking)
 
(40 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
 
__NOTOC__
 
__NOTOC__
 
__NOEDITSECTION__
 
__NOEDITSECTION__
 +
{{:Category:Participation}}
 +
----
 +
<div style="background-color:#DFEAF9; border: 1px #aaa solid;padding-top:20px;padding-left:1em;padding-right:1em;padding-bottom:1em">
 +
 +
{|
 +
 +
'''Code we Like!'''<br clear=all> <br clear=all>
 +
 +
 +
Audacity aims to be a '''simple to use''' but '''powerful audio editor'''.  We're open to exciting new features, bugfixes (yes please!) and new ideas, and at the same time, we need to do things a certain way.
 +
 +
* We want to avoid making Audacity over complex.  The majority of our users are newish to audio editing.  The simple things ought to be easy to do for them.  The more advanced things can be there, but should not 'get in the way'.  Many of our users do not [https://manual.audacityteam.org/ read the manual]. Follow our ''[[Design Topics|design guidelines]]'' to make the user interface consistent and more discoverable.
 +
* We don't know that you will stay around after you have contributed code, so new code should follow our ''[[CodingStandards|coding standards]]'' so that it is more maintainable by us.
 +
* To get the best from contributing to open source, you should become aware of the ''[[Community|community]]'' beyond the developers who support users, get feedback, test and document Audacity.  The experience they have can often help what you write be better, and save you time too.
 +
|}
  
<div style="background-color:#DFEAF9; border: 1px #aaa solid;padding-top:20px;padding-left:1em;padding-right:1em;padding-bottom:1em">
 
 
{|
 
{|
|[[File:Develop.png|x180px]]
+
| style="width:360px;text-align:right;" |
 +
[[File:Develop.png|x180px]]
 +
{{:The_Feature_Requests_Pipeline}}
 
| &nbsp; &nbsp;
 
| &nbsp; &nbsp;
|
+
| style="vertical-align:top;" |
* If you're a programmer, check out the '''''[[Developer_Guide|developer guide]]''''' and subscribe to the [http://lists.sourceforge.net/lists/listinfo/audacity-devel audacity-devel] mailing list
+
'''Guides and Connecting'''
* If you are already compiling Audacity, great.  If not tell us where our instructions for doing so suck.
 
<br clear="all">
 
  
'''We ''always'' need more developers!'''   
+
* Check out the ''[[Developer_Guide|developer guide]]'' and subscribe to the ''[http://lists.sourceforge.net/lists/listinfo/audacity-devel audacity-devel mailing list]''
 +
 
 +
Why subscribe?  We have found time and again that good programmers are overly reluctant to ask for actual help.  It is usually our fault, not yours, if you can't compile.  Our instructions and guides are not always good and up to date.  Especially if you have difficulty compiling Audacity, reach out to one of us on the mailing list, and talk us through how far you get. Together we can work to fix it, and to fix the compiling instructions, so that other people have an easier time in future.
  
* Join our [http://lists.sourceforge.net/lists/listinfo/audacity-devel developers' mailing list] and introduce yourself!
 
** then tell us if there's any bugs on the '''''[[Bug Lists|Bug List]]''''' you've solved or
 
** tell us about any [[:Category:Feature Planning|new or improved features]] you are working on.
 
 
|}
 
|}
 
 
<div id="links"></div>
 
<div id="links"></div>
 
<div style="background-color:#f9f9f9; border: 1px #aaa solid;margin-top:1em;padding-left:1em;padding-right:1em;padding-bottom:1em;">
 
<div style="background-color:#f9f9f9; border: 1px #aaa solid;margin-top:1em;padding-left:1em;padding-right:1em;padding-bottom:1em;">
Line 24: Line 35:
  
 
<div style="width:50%;float:left;">
 
<div style="width:50%;float:left;">
 +
===Building===
 +
*[https://github.com/audacity/audacity Our code on GitHub]
 +
*[[Building On Windows]]
 +
*[[Building On Linux]]
 +
*[[Building On Mac]]
 +
*[[CMake Options]]
 +
*[[Building On Cygwin]] (Deprecated/Not Maintained)
 +
*[[Building The Manual]]
 +
 
===Developer Documentation===
 
===Developer Documentation===
 
<!--
 
<!--
 
*[[Developer_Guide#Platform_Specific_Guides|Building Audacity from Source]]
 
*[[Developer_Guide#Platform_Specific_Guides|Building Audacity from Source]]
 
-->
 
-->
*[[ArchitecturalDesign|Audacity Architecture]]
 
 
*[[Developer Guide|Guide for New Audacity Developers]]
 
*[[Developer Guide|Guide for New Audacity Developers]]
**[[Design Topics]]
 
 
**[[Theming HowTo]]
 
**[[Theming HowTo]]
 
**[[Nyquist|Nyquist plug-ins HowTo]]
 
**[[Nyquist|Nyquist plug-ins HowTo]]
**[https://manual.audacityteam.org/o/man/scripting.html Scripting]
+
**[https://alphamanual.audacityteam.org/man/scripting Scripting]
 +
*[[Standards and Conventions]]
 +
*[[The Feature Requests Pipeline]]
 +
**[[Proposals]]
 +
**[[Feature Requests]]
 +
*[[ArchitecturalDesign|Audacity Architecture]]
 +
*[[Making Audacity Translatable|Xgettext &amp; Translation]]
 +
*[[Making Audacity Doxygenable|Doxygen &amp; Smart Comments]]
 +
**[https://doxy.audacityteam.org/annotated.html Doxygenated class list]
 
</div>
 
</div>
 
<div style="width:50%;float:left;">
 
<div style="width:50%;float:left;">
 +
===Development Activity===
 +
*[[Next Release]] that we are working on
 +
**[[Wording|Wording changes]] required in the app
 +
<!---**[[Wish-lists for 2.3.2]]--->
 +
*Active [[Development Projects]]
 +
** [[Macros discussion page]]
 
===Quality Assurance===
 
===Quality Assurance===
*[[Release Notes]]
+
*[[Unitary Project - issue tracking]]
 +
*[[CodingStandards|Coding Standards]]
 +
*[[Code Review Triage|Code Review]]
 +
*[[Using Bugzilla]]
 
*[[Bug Lists]]
 
*[[Bug Lists]]
*[[Nightly Builds]] for alpha testing
+
**[[Plug-ins that crash Audacity or fail to work properly in Audacity|Plug-ins that crash or fail in Audacity]]
*[[Wording]]
+
*[[Bug Counts]]
*[[Guidelines on capitalization in Audacity dialogs and messages|Consistency]]
+
*[https://bugzilla.audacityteam.org/ Bugzilla]
*[[Code Review Triage|Code Review]]
+
*[[Design Topics]]
*[[Testing]]
+
*[https://alphamanual.audacityteam.org/man/Consistency_in_wording_and_punctuation_in_Audacity '''Wording and punctuation guidelines''']
*[[Notes for Testers]]
+
**[[Guidelines on capitalization in Audacity dialogs and messages|Capitalization Guidelines]]
 +
*[[Website ToDo]]
 +
{{ednote|1=[[Builds for alpha testing]] not listed now}}
 
</div><br clear="both"/>
 
</div><br clear="both"/>
<div style="width:50%;float:left;">
 
===Development Activity===
 
*[[Next Release]] that we are working on.
 
*[[Feature Requests]] and [[Proposals]] which sometimes follow from them.
 
*Active [[Development Projects]]
 
 
</div>
 
 
<div style="clear:both"></div>
 
<div style="clear:both"></div>
  

Latest revision as of 14:39, 1 July 2020



Code we Like!

Audacity aims to be a simple to use but powerful audio editor. We're open to exciting new features, bugfixes (yes please!) and new ideas, and at the same time, we need to do things a certain way.
  • We want to avoid making Audacity over complex. The majority of our users are newish to audio editing. The simple things ought to be easy to do for them. The more advanced things can be there, but should not 'get in the way'. Many of our users do not read the manual. Follow our design guidelines to make the user interface consistent and more discoverable.
  • We don't know that you will stay around after you have contributed code, so new code should follow our coding standards so that it is more maintainable by us.
  • To get the best from contributing to open source, you should become aware of the community beyond the developers who support users, get feedback, test and document Audacity. The experience they have can often help what you write be better, and save you time too.

Develop.png

This is how we get from ideas to new releases of Audacity
Feature Requests   -->   Proposals   -->   Projects   -->   Releases
   

Guides and Connecting

Why subscribe? We have found time and again that good programmers are overly reluctant to ask for actual help. It is usually our fault, not yours, if you can't compile. Our instructions and guides are not always good and up to date. Especially if you have difficulty compiling Audacity, reach out to one of us on the mailing list, and talk us through how far you get. Together we can work to fix it, and to fix the compiling instructions, so that other people have an easier time in future.

Topics for Developers



Ideas? Want to Contact Us?

Didn't find what you were looking for? Here are various ways to contact us.