Developer Notes
===============

Note that lib/HTML/TextToHTML.pm is generated from lib/HTML/TextToHTML.PL, so
don't waste time editing the .pm file. Likewise, edit the scripts/txt2html.PL
file if you want to change the script.

Changing the version
--------------------

1. Edit the version.txt file to increment the version
2. "moddevaid VERSION" (this changes the version in all the needed files)
3. "Build distclean"
4. "perl Build.PL"
5. "Build"
6. "Build test"

You need to rebuild the Build file because Module::Build sets the version
information when the Build file is built, rather than it being dynamic.

Adding Options
--------------

All new options need to be added in five places:
- lib/HTML/TextToHTML.PL init_our_args(), to initialize the default
- lib/HTML/TextToHTML.PL args() in the parse-the-array-ref part, unless
  it is a simple option-with-a-value.  If it is a boolean option,
  it also needs to be added in its "no" form.
- lib/HTML/TextToHTML.PL OPTIONS documentation
- scripts/txt2html.PL Getopt call, including its type and possible shortnames
- scripts/txt2html.PL OPTIONS documentation

Changing the System Link Dictionary
-----------------------------------

If you want to change the location of the default system link
dictionary, it needs to be changed in the Build.PL file, as
that is where the location is calculated, and where the *.PL
files gets it from in order to generate the script and .pm files.
(Note that this is only for changing the default location; the location
obeys the install_base option of Build.PL when that's called.)

If you want to change the *name* of the default system link dictionary,
it needs to be changed in:
- Build.PL
- lib/HTML/TextToHTML.PL init_our_args()
- lib/HTML/TextToHTML.PL OPTIONS documentation
- txt2html OPTIONS documentation

Release Notes
=============

Before releasing, don't forget to run

	./Build
	./Build test
	./Build dist

(and usually "Build install" as well)

This bundle is released in three different external places:
- CPAN
- Sourceforge
- FreshMeat

CPAN Release
------------

Log in to PAUSE, and browser-upload the .tar.gz file.  Simple, huh?

Sourceforge Release
-------------------

Do a CVS commit if you haven't already.

Go to the Admin/Files section and follow the instructions.
You will need to ftp upload the .tar.gz file to upload.sourceforge.net
/incoming directory before doing certain steps.

One also needs to update the web-page.  Cd to txt2html_web/htdocs on
your home machine, and edit index.html to update the version number.
Then do
	make del_cpfiles
	make cpfiles
	make
	cvs commit

Then log in to txt2html.sourceforge.net, cd to the
/home/groups/.../txt2html directory, and run "getweb" and this
will update the website from CVS.

One should also post a message to the mailing list.

FreshMeat Release
-----------------

Log in to freshmeat.net, and follow the instructions for new releases.
The "changes this release" will need to be a summary of the changes.
Since the file is on sourceforge, you won't need to alter the download
URL.
