[CF-Devel] CVS access/commiters note
dnh
dnh at hawthorn.csse.monash.edu.au
Sat May 12 21:16:47 CDT 2001
Cmpletely agree and accept this email,
dnh
On Sat, 12 May 2001, Mark Wedel wrote:
>
>
With the upcoming release of 1.0, and the fact that currently the
>
following rules are not always being followed, I decided to write a more
>
formal description for doing CVS checkins.
>
>
If you have additions or other notes, feel free to followup.
>
>
1) Log messages should include the following:
>
a) what changed
>
b) why it changed
>
c) name of person doing the checkin, and date done.
>
>
It is not necessary to go into a long exposition, and pasting the actual
>
changes is not generally useful. But this log message should be useful for
>
someone looking over the logs at a future point to see what did change.
>
Havinga log like 'various skill stuff' isn't very useful. A log message like
>
'prevent abuse with the literacy skill, and increase chance of singing' is
>
much more useful, and not a lot more words.
>
>
One of the main uses of the log entries is when bugs are reported where
>
behaviour changed between version X and Y to be able to look at the log
>
entries and get an idea of what specific revision may have caused that
>
change.
>
>
If doing a commit of several different files at each time, and the commits
>
are different in nature, do try to at least mention what is changing in
>
each file.
>
>
Do not refer to other files or other log messages. Saying 'see changes
>
file' is not useful, nor is a message like 'continuing with last set
>
of commits'. Such messages are not useful when trying to look back through
>
the logs at a future point.
>
>
There is no excuse for not having a good log entry. Worst case, cut and
>
past from the CHANGES file or those prior commits. My typical method
>
of doing commits is filling out the CHANGES file, and then
>
copying/pasting from that when I do the commit.
>
>
2) All checkins should go through at least minimum testing:
>
For source code, this means it compiles and at least a basic test has
>
been done (for example, if it is a new spell, have you tried casting
>
the spell?) This basic testing implies the code at least compiles
>
also. I realize it is very difficult to do 100% testing of code, but
>
at least a basic test should be done.
>
>
All source code should also be ANSI & POSIX compliant. Don't use // for
>
comments. Be careful of new library calls that are not being used
>
elsewhere in the source - there may be a reason they are not being used.
>
"it compiles on my system" is not justification for writing code that does
>
not work elsewhere. It is understandable that you may not know that the
>
code written is non portable, but once this is learned, it should be
>
corrected.
>
>
For archetypes, this testing should involve rebuilding the arch file and
>
running with the new file. There should be no errors in the loading
>
of the archetype files.
>
>
For maps, this means that the map should load, and the exits should lead
>
back and forth. Note that maps in the unlinked directory are more
>
work in progress so can be checked in a more experimental state.
>
>
3) Style & Balance: Your changes may work, but do they fit in with the
>
rest of the game. This basically means following the files guides
>
that already existing, eg doc/programming_guide, doc/mapguide
>
>
There really is no arch guide, but take common sense. Does the
>
object fit in with the game (ie, a blaster rifle would not), is this
>
arch very unbalancing, etc.
>
>
4) Before starting a big project, send a note to the mailing list asking
>
for opinions. While it is not possible to prevent someone working on
>
whatever they may want, if the general consensus is that it is a bad idea,
>
you may want to find that out before spending a lot of work on it only
>
to find out that your idea will not get added to the game.
>
>
Mark Wedel
>
May 12, 2001
>
_______________________________________________
>
crossfire-devel mailing list
>
crossfire-devel at lists.real-time.com
>
https://mailman.real-time.com/mailman/listinfo/crossfire-devel
>
More information about the crossfire
mailing list