create new tag
, view all tags

SID-00291: Unicodepath Error on New 4.3.1 Install

Status: Answered Answered TWiki version: 4.3.1 Perl version: 5.8.5
Category: CategoryInstallation Server OS: RHEL 4u7 Last update: 7 years ago

I had a working, fresh installation of TWiki 4.3.0. After yesterday's hotfix release, I tried to install the new 4.3.1 over it (I know this shouldn't be done normally, but this was a completely fresh installation). The configure worked fine, but viewing a topic failed with an error:

TWiki detected an internal error - please check your TWiki logs and webserver logs for more information.

Can't locate Unicodepath in @INC (@INC contains: path . path-linux-thread-multi path path-linux-thread-multi path-linux-thread-multi path-linux-thread-multi path-linux-thread-multi path-linux-thread-multi path-linux-thread-multi path path path path path path path path-linux-thread-multi path-linux-thread-multi path-linux-thread-multi path-linux-thread-multi path-linux-thread-multi path-linux-thread-multi path path path path path path path path path-linux-thread-multi path path)

I then tried deleting LocalSite.cfg, got a fresh configure, saved the new configuration, tried viewing a page, and got the same error. I then deleted the entire installation, started over with a brand-new 4.3.1 tarball, repeated the process, got through configuration ... and got the same error. What is going on? Why would 4.3.0 work fine, and 4.3.1 not?

By the way, in a remotely related note, I tried to join the IRC channel via Mibbit to ask questions and get help, but it seems that either I, or Mibbit users in general, are banned from the channel. Maybe these users have a reputation for doing stupid things, but by banning the lot, you're also banning legitimate users who may need help.

-- JohnDeStefano - 2009-04-30

Discussion and Answer

I have never seen a Unicodepath Perl module, and it is also nowhere referenced in TWiki. What is the exact output you get in your Apache error_log?

On Mibbit ban on #twiki IRC, we had pretty badly abuse for a few month. I removed the ban for now, but will restore if abuse continues.

-- PeterThoeny - 2009-04-30

Peter, I can't find another reference to this error anywhere, so it's a bit peculiar ...

Here's a sample error log entry: [Thu Apr 30 11:00:02 2009] [error] [client] Can't locate Unicode/String.pm in @INC (@INC contains: /var/www/twiki/lib . /usr/lib/perl5/5.8.5/i386-linux-thread-multi /usr/lib/perl5/5.8.5 /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl/5.8.4 /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.1 /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl/5.8.4 /usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/vendor_perl/5.8.2 /usr/lib/perl5/vendor_perl/5.8.1 /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl /var/www/twiki/lib/CPAN/lib//arch /var/www/twiki/lib/CPAN/lib//5.8.5/i386-linux-thread-multi /var/www/twiki/lib/CPAN/lib//5.8.5 /var/www/twiki/lib/CPAN/lib/) at /var/www/twiki/lib/TWiki/Render.pm line 15., referer: http://localhost/twiki/bin/configure?t=1241103593&expert=1

Note that this error only appears in a 4.3.1 install: if I wipe this install out and install 4.3.0 in the same location, the error no longer appears. Wipe that out, and install a new 4.3.1, and the error re-appears once again ....

-- JohnDeStefano - 2009-04-30

You need to install CPAN:Unicode::String. See HowToInstallCpanModules.

Note to myself: Review dependency at TWiki.TWikiSystemRequirements.

-- PeterThoeny - 2009-04-30

So upgrading from 4.3.0 --> 4.3.1 requires an additional CPAN package as a dependency? It seems odd to introduce a new dependency in a minor version release, especially as a hotfix.

Anyway, thanks for the info.

-- JohnDeStefano - 2009-04-30

Ah, I see, this is a recent dependency introduced by work in progress TWikibug:Item4074. Agree, this should not have gone into the patch release.

-- PeterThoeny - 2009-04-30

Also, this module is not mentioned in configure -> CGI Setup -> Perl Modules. The only Unicode module there is Unicode::MapUTF8, which doesn't seem to be required unless you need international chars. That would be a good place to give admins a clue that something is missing or gone wrong.

-- JohnDeStefano - 2009-04-30

Please give your feedback at TWikibug:Item4074 so that the developer can follow up.

-- PeterThoeny - 2009-04-30

Will do.

-- JohnDeStefano - 2009-04-30

I'm a newby at this particular game and I tried to install Twiki 4.3.1 today (following the instructions at TWikiOnMacOSXLeopard; I'm using 10.5.6). Got essentially the same error as JohnDeStefano describes.

Next I tried to install CPAN:Unicode::String as suggested above. The process seems to work down to this point, where writing the makefile fails:

Checking if your kit is complete... Looks good Writing Makefile for Unicode::String -- NOT OK Running make test Can't test without successful make Running make install make had returned bad status, install seems impossible

Same kind of thing happens if I try to update CPAN. Tried this while logged in as my usual admin self (with "sudo" in front of the commands), and also fully logged in as Root.

What am I missing? I have Perl 5.8.8. CPAN v1.7602. I probably don't have the dev tools installed from the OS X CD-ROM since I got the 50+ RCS errors when configuring Twiki and fixed it by switching to RCSLite.

-- GrahamCollins - 2009-05-12

Instead of fighting CPAN install you can manually patch the twiki/lib/TWiki/Render.pm file:

1. Remove this line:

use Unicode::String qw(utf8 latin1 utf16be);

2. Replace the following two lines:

    my $utf8AnchorName = Unicode::String->new($anchorName);
    $anchorName = $utf8AnchorName->substr(0, 32);
with this line:
    $anchorName =~ s/^(.{32})(.*)$/$1/; # limit to 32 chars

-- PeterThoeny - 2009-05-13

Thanks -- that has fixed it.

On the CPAN troubles, I'm now pretty sure I need to install the relevant dev tools. For instance, I don't have "make" anywhere. But dealing with that can wait for another day.

-- GrahamCollins - 2009-05-13

Additional Info:

I encountered the same error on a fresh 431 install onto an ubuntu box. Peter's fix for Render.pm above worked just fine to eliminate the problem.

Thanks! -pbr

-- PaulReiber - 2009-05-14

On Debian or Ubuntu, apt-get libunicode-string-perl fixes this issue

-- TomaszGrzegurzko - 2009-05-22

Sorry, the previous command should be

apt-get install libunicode-string-perl

-- TomaszGrzegurzko - 2009-05-22

I entountered same issue, after patching Peter's codes I got the wiki site like this:


Any clue on this?

-- CoriaXu - 2009-05-31

This is unrelated. Please open a new support question with details.

-- PeterThoeny - 2009-06-01

I had the same problem as the original poster with 4.3.2 (naturally) however I had Unicode::String installed. I upgraded Unicode::String to 2.09 which solved the problem. So, those of us with older servers to take care of (CentOS 4.4) simply need to upgrade this module.

-- JuliusBrendalaen - 2009-09-11

I used the Manual patch. The top of the Unicode-String-2.09 README files states:

"These are experimental modules to handle various Unicode issues. They were made before perl included native UTF8 support."

I don't know much about perl UTF8 support, but if it is included in perl, shouldn't that be used before an experimental module?

-- GregNeugebauer - 2009-09-11

Native UTF8 support is available since Perl 5.8+. TWiki requires 5.6.1 or higher, 5.8.4 or higher recommended. So unless we raise the required version we can't depend on native UTF8 support. If interested, I invite you to participate in related InternationalisationEnhancements topics.

-- PeterThoeny - 2009-09-11

Generally Unicode::String should not be required, as pointed out - the TWiki I18N code's limited UTF8 support (for URLs, in EncodeURLsWithUTF8) uses other Unicode:* modules for Perl 5.6 only, or the Encode module that's built into Perl 5.8.

-- RichardDonkin - 2009-09-22

This needs to be fixed for TWiki 5.0. I raised urgent TWikibug:Item6439 to track this.

-- PeterThoeny - 2010-04-27

For Fedora core 13 this bug can be fixed for Twiki 4.3.2 by installing perl-Unicode-String

-- SteveEcob - 2010-06-29

      Change status to:
ALERT! If you answer a question - or someone answered one of your questions - please remember to edit the page and set the status to answered. The status selector is below the edit box.
Status Answered
Title Unicodepath Error on New 4.3.1 Install
SupportCategory CategoryInstallation
TWiki version 4.3.1
Server OS RHEL 4u7
Web server Apache 2.0.52
Perl version 5.8.5
Edit | Attach | Watch | Print version | History: r22 < r21 < r20 < r19 < r18 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r22 - 2010-06-29 - SteveEcob
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.