Make melted operational.
[melted] / docs / policies.txt
1 Open Source Development Policies and Procedures for MLT
2 by Dan Dennedy
3
4 Policies
5 --------
6
7 Any contribution to the "core" module must assign copyright to Ushodaya
8 Enterprises Limited because they need license control over that module.
9
10 The framework and valerie client libraries are covered under LGPL. Miracle,
11 inigo, albino, and humperdink applications are covered under GPL. Modules
12 should strive to be LGPL to make them available through the framework as LGPL.
13
14 Comments in the framework and valerie header files must be C-style, not C++.
15
16 Coding Style:
17 There are not a lot of rules, but we prefer brackets on their own line,
18 indents using tabs, liberal usage of spaces in statements and expressions, and
19 no hard line length. The code in src/framework serves as a good example.
20
21 Commit messages must be prefaced with the name of the changed files. This makes
22 the Subversion log more useful as a ChangeLog. For example,
23     docs/policies.txt: added policy about commit message
24
25 Increment the version number in ./configure AND mlt.h on the first commit after
26 a release as well as just prior to a new release. This way we can track if
27 someone is using an unreleased version from the source code repository.
28
29 Do not write messages to stdout. stdout is reserved for writing streams that
30 can be redirected: e.g. raw DV in consumer_libdv. I recommended to use the
31 mlt_log API. For something quick and dirty, use stderr.
32
33
34 Procedures
35 ----------
36
37 Update services.txt when you add or update a service.
38
39 Setting Copyright on Appropriated Code:
40 You do not want to be accused of copying someone's code and changing copyright
41 or license without permission. The license is straightforward: you must retain
42 the original author's license unless you receive explicit permission. There are
43 a few ways to approach the copyright declaration depending upon the
44 intermingling and changes. If you heavily comingle original and new code or
45 lightly modifiy the original code, you can retain the original's copyright
46 including the years, and then add your copyright for the current year. If you
47 can separate the MLT integration from the core subroutines, then you can put
48 the core subroutines into a separate file with the original copyright and just
49 copyright the MLT integration code as your own. However, if you have heavily
50 modified the original code beyond nearly all recognition, you can copyright it
51 as your own and attribute the original author as inspiration.
52
53 Bug Reporting:
54 First preference is to use the SourceForge tracker:
55 http://sourceforge.net/tracker/?group_id=96039&atid=613414
56 Second preference is in the mailing list:
57 mlt-devel@lists.sourceforge.net