• Do not register here on develop.twiki.org, login with your twiki.org account.
• Use View topic Item7848 for generic doc work for TWiki-6.1.1. Use View topic Item7851 for doc work on extensions that are not part of a release. More... Close
• Anything you create or change in standard webs (Main, TWiki, Sandbox etc) will be automatically reverted on every SVN update.
Does this site look broken?. Use the LitterTray web for test cases.

Item3741: Add thead and tfoot to TWiki tables

Item Form Data

AppliesTo: Component: Priority: CurrentState: WaitingFor: TargetRelease ReleasedIn
Engine   Enhancement Closed   minor 4.2.0

Edit Form Data

Reported By:
Applies To:
Current State:
Waiting For:
Target Release:
Released In:


See TWiki:Codev/AddTHeadAndTFootToTWikiTables

-- TWiki:Main/SvenDowideit - 08 Mar 2007

initial version commited. It would help considerably if twikitable processing was not quite so line by line.

-- SvenDowideit - 26 Mar 2007

The unit tests fail because the "actual" URL for sorting in table headers contains something like /../bin/TestRunner.pl. The construction of "expected" URLs for sorting columns has nothing between the host and the path, so this needs to be enforced for the URL construction in TWiki::Plugins::TablePlugin::Core, too. The easiest way is to define $ENV{SCRIPT_NAME} in the test cases' set_up routine (which I'm going to commit).

-- TWiki:Main.HaraldJoerg - 03 Apr 2007

Done (r13249) -- TWiki:Main.HaraldJoerg - 03 Apr 2007

I have this feeling that you did a different fix to what i was looking at

i was looking at this this morning, and noticed that the test succeeds if you run the TableRendeing.pm test by itself, but if you run TWikiSuite.pm it fails.

ie, there is probably a big issue wrt sessions persisting after teardown.

-- TWiki:Main.SvenDowideit - 03 Apr 2007

Nope, that has nothing to do with session teardown. In my install the test fails for plain TableRenderingTests.pm as well, though with a different "actual" value. When running from the command line, many of the variables in %ENV on which CGI.pm relies are not initialized, so results are more or less random depending on the value of variables in the caller's environment. Either the test cases must mimick a CGI environment, or the code needs to take care for special cases when called from the command line.

-- TWiki:Main.HaraldJoerg - 03 Apr 2007

fixed it properly - if you want to match a variable, why not use that variable... smile one fewer failing unit test

-- SvenDowideit - 24 Apr 2007

Was waiting for release.

I'm re-opening this, for the reasons given in TWiki:Codev/AddTHeadAndTFootToTWikiTables. The current scheme makes life too difficult for any JS component that expects a reasonable construction for tables.


This change has

  • Broken the EditTablePlugin totally.
  • Broken many unit test cases
  • Still half implemented and abandoned for more than a month.

If noone is going to finish this then please remove the changes already made so we can get back to working code. The bugs introduced by this prevents finishing the testing and fixing of other changes made in EditTablePlugin.

-- TWiki:Main.KennethLavrsen - 27 May 2007

I have modified the code as described above. All relevant testcases pass.

I have no idea what "Broken the EditTablePlugin totally" means, so I can't test that case, though it appears to work correctly for me.


"Broken the EditTablePlugin totally" is a 99 % accurate description.

You need the last 1%.

Make sure the table you test with has a header and several rows and columns.

Like this one

Conversion Specifier Description Before Description After
%a The abbreviated weekday name according to the current locale. Keep as is
%A The full weekday name according to the current locale. Keep as is
%b The abbddreviated month name according to the current locale. Delayed
%B The full month name according to the current locale. Keep as is
%c The preferred date and time representation for the current locale. Replacement candidate
%C The century number (year/100) as a 2-digit integer. Replacement candidate
%d The day of the month as a decimal number (range 01 to 31). Keep as is
%D Equivalent to the %m/%d/%y. (Yecch - for Americans only. Americans should note that in other countries %d/%m/%y is rather common. This means that in international context this format is ambiguous and should not be used.) diffs (number of pixeljhyuys detected as motion)
%e Like %dd, the day of the month as a decimal number, but a leading zero is replaced by a space. Replacement Candidate
%E Modifier: use alternative format, see below. Keep as is yes
g fdsafdsaf dsaffds


And if you cannot see the "totally broken" - then you need glasses.

I have spent hours on this problem and have confirmed that it was this new feature that broke the plugin. And your latest changes did not fix the problem. Testing to me means trying to both view and edit a table and not just a table with one row and one cell but a complex one with several of the features combined. Unit tests do not reveal this kind of errors.

See also Item4029 which is the actual error covering this bug. But you cannot claim this bug item ready for release when it has created Item4029. There is for sure some part of this that needs to get recoded - and tested

-- TWiki:Main.KennethLavrsen - 28 May 2007

Let's get practical here; THEAD and TFOOT are standard HTML. They are required for a lot of the more advanced javascript features, such as those in the google and yahoo UIs. We can disable heads and foots, but only at the cost of compatibility with those UIs. On the flip side we have the EditTablePlugin, and a new and relatively untried feature for moving rows around, that barfs at THEAD and TFOOT (standard table construction). The functionality of this feature is also available from the EditRowPlugin, which does handle thead and tfoot correctly, so it's perfectly reasonable to expect the EditTablePlugin javascript to function correctly with standard HTML tables.

On balance I believe that the core change is correct, and that the plugin needs to be fixed to correctly handle standard HTML tables. Hence this bug is "waiting for release" and Item4029 is open and urgent.


I reopen this because there are test cases that fails because of this.

The following tests are broken in the TestCases web. At least these 3 are not updated.

-- KennethLavrsen - 28 May 2007

Lets get practical: Any feature that breaks another feature is incomplete. If this bug cannot be solved for the TWiki 4.2 release we ned to revert Item4029.

This is an example of not using our resources carefully enough, we are stretched too thin. We have now two complex plugins that do almost exacly the same, but not quite the same: EditRowPlugin and EditTablePlugin. I strongly suggest to drop one. Crawford does not seem to like the codebase of EditTablePlugin (which is fine), so once EditRowPlugin covers 100% of the EditTablePlugin feature set we can replace the codebase of EditTablePlugin with the one of the EditRowPlugin.

-- TWiki:Main.PeterThoeny - 04 Jun 2007

I have said it several times in the last 2 weeks

the current unit test failures have absolutily NOTHING to do with this change.

if you bother to read the errors, you will see that someone (Arthur tells me it was Micha) made changes to the css output of the table system.

Peter is right, jumping up and down with out even analysing to make sure you are right, and then ignoring every time someone tells you are wrong, is a waste of resources.

-- TWiki:Main.SvenDowideit - 06 Jun 2007

closing - open a new bug if you find anything new

-- SvenDowideit - 19 Jul 2007

Summary Add thead and tfoot to TWiki tables
ReportedBy TWiki:Main.SvenDowideit
Codebase ~twiki4
SVN Range TWiki-4.1.2, Sat, 03 Mar 2007, build 13043
AppliesTo Engine

Priority Enhancement
CurrentState Closed

Checkins TWikirev:13225 TWikirev:13226 TWikirev:13249 TWikirev:13515 TWikirev:13961
TargetRelease minor
ReleasedIn 4.2.0
Edit | Attach | Watch | Print version | History: r25 < r24 < r23 < r22 < r21 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r25 - 2007-07-19 - TWikiUserMapping_SvenDowideit
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback