aboutsummaryrefslogtreecommitdiffstats
path: root/Hacking
blob: 2063884fd559ea8c0d000fe1a0b2746511fe88ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Some notices for you who would like to hack the source in order to
improve powwow, fix bugs or just have fun:

* Try not to run large chunks of existing code through your C
  beautifier if the indentation style doesn't please you. This will
  only greatly confuse the original author (if he can't recognize and
  maintain his own code, who can?). If you write any new functions,
  ok, use your own style as long as it's clear and consistent.

* Document your changes! A brief report of changes in the Changelog file is
  absolutely necessary. So is updating the doc files (powwow.doc, powwow_help
  and README) Also, sending an e-mail to the code author/mantainer documenting
  your changes will be appreciated.
  
Report from cancan's "Hacking":

*******************************************************************************
  Remember, that although I (Yorick) am the original author, I don't dictate
  the code; it is explicitly in the public domain. I am merely trying to keep
  some kind of order; if versions are permitted to diverge, they are very
  painful to merge later. Also, different version branches are very confusing,
  and makes it hard to define the "latest and best" version. Please try to
  synchronize your hacks into one  - the latest - version!
*******************************************************************************

Well, Yorick refused to merge Powwow and Cancan, so now they both exist
indipendently... Now I (Cosmos) say exactly the same thing Yorick said
('do not let version diverge'), but I fear this will happen again :(
Only difference is that powwow is now GPL-ed and not Public Domain.
I hope this will help a little.

* Rather than you just distributing your hacked version, I _really_ prefer you
  to send back to me your changes, so that I can put them into the following
  release. You lose nothing doing so, since even in case I refuse to include
  your changes you can still distribute your version if you absolutely want :)

  Even if you decide to distribute such a modified version, please
  make it clear that it is not the original version, use a version number
  which can't be confused with an original version, and put your name
  in Changelog and in POWWOW_VERSION.

* I've tried to make the code obey the following rules for modularity:
	- All exported things from one .c file is declared in its .h file.
	- Conversely, symbols are imported by #including .h files,
	  not by local extern declarations.
	- Everything that can be static should be (this is not quite true yet)

  Please obey these rules (or improve them).