• 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.

Item7633: Collection of core changes required for configure to run under the PSGI engine

Item Form Data

AppliesTo: Component: Priority: CurrentState: WaitingFor: TargetRelease ReleasedIn
Engine Configuration Enhancement Closed TWiki:Main.HaraldJoerg patch 6.1.0

Edit Form Data

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


The TWiki configure script tries to start with very few assumptions, yet for an PSGI environment they are invalid. Fixing all of that in the monolith in a compatible way is either too much effort or too much risk, therefore PSGI will get its own configure script, cloning the original and then modifying where necessary. PSGI configuration should, of course, use the lib/Configure infrastructure wherever possible. If this need changes which are with neglegible risk, they should go into the next release. This is the item to collect these changes:
  • The CSS elements and (one of two) JavaScript snippets in configure pages appear only for one request. Good enough for non-persistent CGI, but not good enough for persistent environments like PSGI. The reason is that they are directly returned from the <DATA> file handle, which has already reached eof for the second and all subsequent calls. The fix is trivial: read once and store in a static variable. The variables have already been declared, but haven't been used so far.
  • The tiny image warning.gif is served by re-entering the configure script again - with an assumption that the image can be found below the directory of "the current program". This assumption is invalid if the current program is a web server written in Perl. An easy solution is to inline the image.
    • There are two TWiki logos in this directory as well, but they are only accessed directly from configure itself. The performance overhead of compiling and running configure four times for one screen is irrelevant, but from an architectural point of view this is pretty insane. The PSGI variant of configure will have all the images inlined, and the module created for inlining warning.gif will provide URLs for all images.
    • Side note: It passed unnoticed for ten years that the smaller of the logos, advertised as T-logo34x26-t.gif, is actually a PNG image smile
-- TWiki:Main/HaraldJoerg - 2015-04-05

I missed a file in MANIFEST for the 6.0 branch. Therefore, unfortunately, PSGI doesn't work out of the box in 6.02 frown I'm adding it now, for the next patch.

-- TWiki:Main.HaraldJoerg - 2015-12-22

Summary Collection of core changes required for configure to run under the PSGI engine
ReportedBy TWiki:Main.HaraldJoerg
Codebase 6.0.1
SVN Range TWiki-6.0.1-trunk, Fri, 03 Apr 2015, build 28925
AppliesTo Engine
Component Configuration
Priority Enhancement
CurrentState Closed
WaitingFor TWiki:Main.HaraldJoerg
Checkins TWikirev:28961 TWikirev:28962 TWikirev:28963 TWikirev:29042 TWikirev:29705
TargetRelease patch
ReleasedIn 6.1.0
Edit | Attach | Watch | Print version | History: r10 < r9 < r8 < r7 < r6 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r10 - 2018-07-17 - PeterThoeny
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