Ideas for features missing and bugs
===================================

All bug reports should be logged to this file.

Number = number of the feature Fxxxx or the bug Bxxxx
Date = the date of the founding
From = the person from who the idea came
Module = the module or modules, wildcards are allowed (src/* = all modules)


New features needed
===================

Number	Date	 From 	Module
---------------------------------------------------------------------------
F0001	15071998 VP	pf
	Debugging information should be taken out of the main software
	using CORBA and event service. It can be then presented using
	a graphical user interface.

F0011	03081998 VP	pf
	Timestamp for the log events is needed.
	03081998 TK	pf
	Implemented. User can use the new feature through debugTime macro.

F0016	22091998 VP	sf/pf
	Sf need virtual debug mode and real excecution mode. In real
	excecution mode time goes as normally. In virtual debug mode
	when the thread of excecution comes out of the sf, all timers
	are stopped. When the thread of excecution goes back to sf,
	all timers are adjusted so that only specified time has gone
	while excecution the protocol code. For example we could specify
	that running of one Act method in any state machine takes 1 ms
	of time. Then timer expiration time is added the time it took
	to run the Act method (possibly stopped in a breakpoint) minus
	1 ms of time.

F0017	22091998 VP	sf/pf
	The previous feature gives an ability to check if any Act
	method exceeds give time limit for Act methods.

F0019	29091998 VP	pf
	Intelligent memory management for pfFrameContainer instances
	(should not use new/delete every time a container is created
	or destroyed).

F0020	09011999 VP	pf
	Coverage analysis using messengers and transporters, the incoming
	transporter can find out the current state and the incoming
	messenger and can give this information to the coverage analysis
	module.

F0021	11011999 VP	src/pf
	Conduit accept method and transporter should be synchronous.
	MsgTransporter and the handling of protocol message
	can be asynchronous. This simplifies the transporter
	handling.

F0022	02101999 MM	*
	Optimizations could be done in many ways.


Bugs
====

B0003	13051998 VP	src/*
	Infinite loops and assert/exit in the code.

B0008	14051998 TP	pf
	pfFrame (pfByte *data_, pfUlong length_, pfUlong dataSize_ = 0);
	Condstructor makes zero length frame if the third parameter
	is missing. Should make defaultSize or enough length frame.

B0013	09061998 VP	pf
	pfStorage::getStorage returns an object and not a reference.

B0015	09071998 VP	pf
	The semantics of copy constructor in pfTimers is missing.

B0016	09071998 VP	pf
	pfProtocol::getName type method is wrong, pfDebug::getProtocolName
	is better.
	Fixed 03081998 VP
	Removed pfProtocol::getName method using pfDebug::getProtocolName
	instead.

B0017	09071998 VP	*
	make idl is not run when necessary.

B0019	10071998 VP	*
	userDebug/perror should be changed to strerror/stringDebug.

B0027	20071998 VP	pf
	Timer messengers need not to be copied. Just adding a reference
	count should be enough.

B0034	03081998 VP	src/pf
	PROTOCOL CREATED can only show pfProtocol as the name of the
	object class just created. This could be implemented in the
	base class, but then that would be needed in every derived
	class too. The provision of the correct derived class name
	should be automatic.

B0039	27091998 VP	pf
	Copy constructors are mainly public and assignment operators
	are not implemented.

B0040	28091998 VP	pf
	There is no means to unregister devices, timers, etc., which
	are registered using pfSystem.

B0050	25111998 VP	src/pf
	pfFrame can handle data only up to 4096 octects.
	Temporarily fixed to handle 16384 octets.

B0055	03121998 VP	src/pf
	const strings should be used instead of strings where possible.

B0056	09121998 VP	src/pf
	Get methods in storage do not check if the variable has given value.

B0057	09121998 VP	src/pf
	Print method in storage does not check if the printed variable has
	a value.

	###

B0059	24011999 SR	src/pf/debug
	Relative time should be enabled

B0060	22021999 SR	src/pf/mux
	connectToB(conduit, key)-method should be installOnSideB(conduit, key)
	for similarity

********

B0063	16091999 MM	Makefiles
	Makefiles are too complex.

B0065   28101999 MM	sf/exception.*
	Some fine tuning is needed here (with printInfo() mainly).
