The Simple Development Library bug database
Criticality | Number |
Critical | 0 |
Urgent | 0 |
Routine | 1 |
Total | 1 |
Number | 1 |
Title | Incorrect error message when giving more arguments than expected to an extended procedure |
Description | When giving more arguments to an extended procedure than expected, the raised error reads called "foo-%AFTER-FLAGS% with too many arguments instead of called "foo" with too many arguments |
Location | SimpleProc 0.1 |
Criticality | Routine |
Solution | Errors in the call to the "after flags" procedure are now catched. As the only error this call may throw is the "too many arguments" one, the -%AFTER-FLAGS% string is deleted from the error message and the error is rethrown |
Status | Closed in SimpleProc 0.2 |
Number | 2 |
Title | Deleting a namespace does not delete its extended procedures |
Description | When a namespace is deleted, the extended procedures therein are not fully deleted. |
Location | SimpleProc 0.1 |
Criticality | Urgent |
Solution | The bug was due to the fact that the state of the extended procedures was stored in arrays in the ::Simple::ExtProc namespace instead of in the procedure namespace. Now all the extended procedures state is stored in one array per namespace named %ExtProcs% so that both the procedure and its state vanish when the namespace is deleted. This same approach is used by other Simple Development Library elements, as the errors of the SimpleError package and the extended variables of the SimpleVariable package |
Status | Closed in SimpleProc 0.2 |
Number | 3 |
Title | Undeclaring a package forgets that package other versions |
Description | When a declared package is undeclared via ::Simple::Package::undeclare , the ifneeded script of other versions of the same package are forgotten |
Location | SimplePackage 0.2 |
Criticality | Routine |
Solution | ::Simple::Package::Priv::available-or-unknown used package forget $package $version , but this command only accepts a package name, not a version; due to a bug in Tcl itself, no error is raised when supplying two arguments. That procedure now accepts a package name only; it saves the ifneeded scripts of that package versions, restoring them after package forget\ $package |
Test-case | SimplePackage / undeclare-4 |
Status | Closed in SimpleProc 0.3 |
Number | 4 |
Title | The greatest matching version is not used if requisite specifies version when declaring a package |
Description | When a package is declared via ::Simple::Package::declare and the requisites list specifies a version for a package, the greatest available version of that package matching the requisite should be used, but that was not the case |
Location | SimplePackage 0.2 |
Criticality | Critical |
Open date | 02-jun-2000 |
Solution | A package requisites (such as '-exact foo 2.2' or 'bar 1') and a package required packages (such as 'foo 2.2' or 'bar 1.2') are two different things but they were mixed before |
Test-case | SimplePackage / declare-13 |
Status | Closed in SimpleProc 0.3 |
Date | 17-jun-2000 |
Number | 5 |
Title | Bad handling of arguments in after flags procedures |
Description | Some argument values, such as "{", confuse the "after flags" procedures sometimes created by ::Simple::Proc::create |
Location | SimpleProc 0.4.4 |
Criticality | Urgent |
Open date | 14-nov-2002 |
Solution | The creation of the "after flags" procedure didn't properly quote the procedure arguments |
Test-case | SimpleProc / create-58 |
Date | 16-nov-2002 |
Number | 6 |
Title | Bad handling of 'package A loads package B which requires package A' situation |
Description | In the situation when a package A loads package B upon being required, (not because it requires it) which in turn requires package A, SimplePackage throws a "namespace owned" error |
Location | SimplePackage 0.4.1 |
Criticality | Routine |
Open date | 16-nov-2002 |
Solution | Handle that situation in ::Simple::Package::Priv::add-namespaces-info |
Status | Closed in SimplePackage 0.4.2 |
Date | 02-dec-2002 |
Number | 7 |
Title | ::Simple::List::enumerate returns braced string with one-element list containing spaces |
Description | ::Simple::List::enumerate with a single argument as [list {foo bar}] returns {foo bar} , but should return foo bar |
Location | SimpleError 0.5.2 |
Criticality | Routine |
Open date | 07-sep-2004 |
Solution | Handle that situation in ::Simple::List::enumerate |
Test-case | SimpleError / enumerate-1 |
Status | Closed in SimpleError 0.5.3 |
Date | 07-sep-2004 |
Number | 8 |
Title | Bad handling of invalid command name errors within subcommands |
Description | When a subcommand throws an invalid command name error the ::Simple::Subcommand::Priv::subcommand-error procedure handles it as an invalid call to the base command, so that a bad option ...: must be ... is thrown |
Location | SimpleSubcommand 0.5.1 |
Criticality | Urgent |
Open date | 24-oct-2004 |
Solution | Correct the identification of an invalid call to the base command in ::Simple::Subcommand::Priv::subcommand-error |
Test-case | SimpleSubcommand / proc-sub-12 |
Status | Closed in SimpleSubcommand 0.5.2 |
Date | 24-oct-2004 |
Number | 9 |
Title | Bad handling of errors while compiling subcommands |
Description | When a subcommand has an error which is catched by the bytecode compiler, the ::Simple::Subcommand::Priv::subcommand-error procedure handles it as any other run-time errora and so could be missinterpreted. For example, an wrong # of args; should be .. was interpreted as an invalid call to the actual subcommand procedure |
Location | SimpleSubcommand 0.5.3 |
Criticality | Urgent |
Open date | 10-feb-2005 |
Solution | Correct the identification of an error while compiling in ::Simple::Subcommand::Priv::subcommand-error and and simplyt rethrow it |
Test-case | SimpleSubcommand / proc-sub-13 |
Status | Closed in SimpleSubcommand 0.5.4 |
Date | 10-feb-2005 |
Number | 10 |
Title | Can not have two classes using each one the class type of the other |
Description | It is currently not possible to declare a package with class A , class type (-classtype) typea and with a method with an argument of type typeb and, at the same time, another class B , class type typeb and with a method with one argument of type typea |
Location | SimpleDevLib 1.0 |
Criticality | Routine |
Open date | 10-feb-2005 |
Solution | This is a workaround, the SPR remains open: define a regular type (-type within the package declaration, instead of -classtype within the class declaration) named typeb with -matchingscript equal to return [$value isa B] and omit class B class type |
Test-case | --- |
Status | Open |
Date | 10-mar-2005 |
Number | 11 |
Title | Bad handling of errors within submethods with "after flags" method |
Description | The title says it all |
Location | SimpleProc 0.5.3 |
Criticality | Routine |
Open date | 11-may-2005 |
Solution | Protect with list the "after flags" command name upon eval uation |
Test-case | SimpleClass / declare-class-58 |
Status | Closed |
Date | 11-may-2005 |