[rt-users] Problem RTIR Installation -- CPAN's GnuPG::Interface tests failing

Behzad Mahini mahini at apple.com
Tue Sep 22 16:50:27 EDT 2009


Here are the results of the manual install associated to "prove -lv t/ 
anythiing_that_fails"  for all of the failing tests ('perl  
Makefile.PL' & 'make test' steps resulted in the same output as I had  
already reported in my earlier email):


====
$ sudo prove -lv t/encrypt.t
t/encrypt.t ..
1..3
Can't locate auto/GnuPG/Interface/autosplit.ix in @INC (@INC  
contains: ./t /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib / 
Library/Perl/Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/ 
Updates/5.8.8 /System/Library/Perl/5.8.8/darwin-thread-multi-2level / 
System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread- 
multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/ 
5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/ 
Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread- 
multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 / 
Library/Perl/5.8.1 .) at /System/Library/Perl/5.8.8/AutoLoader.pm line  
160.
  at /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib/GnuPG/ 
Interface.pm line 22
Can't locate auto/GnuPG/Interface/encrypt.al in @INC (@INC contains: ./ 
t /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib /Library/Perl/ 
Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/Updates/5.8.8 / 
System/Library/Perl/5.8.8/darwin-thread-multi-2level /System/Library/ 
Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread-multi-2level /Library/ 
Perl/5.8.8 /Library/Perl /Network/Library/Perl/5.8.8/darwin-thread- 
multi-2level /Network/Library/Perl/5.8.8 /Network/Library/Perl /System/ 
Library/Perl/Extras/5.8.8/darwin-thread-multi-2level /System/Library/ 
Perl/Extras/5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 .) at t/ 
encrypt.t line 21
Dubious, test returned 2 (wstat 512, 0x200)
Failed 3/3 subtests

Test Summary Report
-------------------
t/encrypt.t (Wstat: 512 Tests: 0 Failed: 0)
   Non-zero exit status: 2
   Parse errors: Bad plan.  You planned 3 tests but ran 0.
Files=1, Tests=0,  0 wallclock secs ( 0.02 usr  0.00 sys +  0.05 cusr   
0.00 csys =  0.07 CPU)
Result: FAIL
====


====
$ sudo prove -lv t/get_public_keys.t
t/get_public_keys.t ..
1..3
Can't locate auto/GnuPG/Interface/autosplit.ix in @INC (@INC  
contains: ./t /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib / 
Library/Perl/Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/ 
Updates/5.8.8 /System/Library/Perl/5.8.8/darwin-thread-multi-2level / 
System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread- 
multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/ 
5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/ 
Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread- 
multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 / 
Library/Perl/5.8.1 .) at /System/Library/Perl/5.8.8/AutoLoader.pm line  
160.
  at /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib/GnuPG/ 
Interface.pm line 22
Can't locate auto/GnuPG/Interface/get_public_.al in @INC (@INC  
contains: ./t /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib / 
Library/Perl/Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/ 
Updates/5.8.8 /System/Library/Perl/5.8.8/darwin-thread-multi-2level / 
System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread- 
multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/ 
5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/ 
Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread- 
multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 / 
Library/Perl/5.8.1 .) at t/get_public_keys.t line 22
Dubious, test returned 2 (wstat 512, 0x200)
Failed 3/3 subtests

Test Summary Report
-------------------
t/get_public_keys.t (Wstat: 512 Tests: 0 Failed: 0)
   Non-zero exit status: 2
   Parse errors: Bad plan.  You planned 3 tests but ran 0.
Files=1, Tests=0,  0 wallclock secs ( 0.02 usr  0.00 sys +  0.05 cusr   
0.01 csys =  0.08 CPU)
Result: FAIL
====


====
$ sudo prove -lv t/get_secret_keys.t
t/get_secret_keys.t ..
1..2
Can't locate auto/GnuPG/Interface/autosplit.ix in @INC (@INC  
contains: ./t /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib / 
Library/Perl/Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/ 
Updates/5.8.8 /System/Library/Perl/5.8.8/darwin-thread-multi-2level / 
System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread- 
multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/ 
5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/ 
Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread- 
multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 / 
Library/Perl/5.8.1 .) at /System/Library/Perl/5.8.8/AutoLoader.pm line  
160.
  at /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib/GnuPG/ 
Interface.pm line 22
Can't locate auto/GnuPG/Interface/get_secret_.al in @INC (@INC  
contains: ./t /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib / 
Library/Perl/Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/ 
Updates/5.8.8 /System/Library/Perl/5.8.8/darwin-thread-multi-2level / 
System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread- 
multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/ 
5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/ 
Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread- 
multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 / 
Library/Perl/5.8.1 .) at t/get_secret_keys.t line 21
Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/2 subtests

Test Summary Report
-------------------
t/get_secret_keys.t (Wstat: 512 Tests: 0 Failed: 0)
   Non-zero exit status: 2
   Parse errors: Bad plan.  You planned 2 tests but ran 0.
Files=1, Tests=0,  0 wallclock secs ( 0.02 usr  0.00 sys +  0.05 cusr   
0.00 csys =  0.07 CPU)
Result: FAIL
====


====
$ sudo prove -lv t/passphrase_handling.t
t/passphrase_handling.t ..
1..3
Can't locate auto/GnuPG/Interface/autosplit.ix in @INC (@INC  
contains: ./t /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib / 
Library/Perl/Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/ 
Updates/5.8.8 /System/Library/Perl/5.8.8/darwin-thread-multi-2level / 
System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread- 
multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/ 
5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/ 
Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread- 
multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 / 
Library/Perl/5.8.1 .) at /System/Library/Perl/5.8.8/AutoLoader.pm line  
160.
  at /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib/GnuPG/ 
Interface.pm line 22
Can't locate auto/GnuPG/Interface/test_defaul.al in @INC (@INC  
contains: ./t /usr/local/.cpan/build/GnuPG-Interface-0.36-04tjP6/lib / 
Library/Perl/Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/ 
Updates/5.8.8 /System/Library/Perl/5.8.8/darwin-thread-multi-2level / 
System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread- 
multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/ 
5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/ 
Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread- 
multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 / 
Library/Perl/5.8.1 .) at t/passphrase_handling.t line 18
Dubious, test returned 2 (wstat 512, 0x200)
Failed 3/3 subtests

Test Summary Report
-------------------
t/passphrase_handling.t (Wstat: 512 Tests: 0 Failed: 0)
   Non-zero exit status: 2
   Parse errors: Bad plan.  You planned 3 tests but ran 0.
Files=1, Tests=0,  0 wallclock secs ( 0.02 usr  0.00 sys +  0.04 cusr   
0.00 csys =  0.06 CPU)
Result: FAIL
====


-Behzad

On Sep 22, 2009, at 12:19 PM, Kevin Falcone wrote:

> On Tue, Sep 22, 2009 at 11:06:57AM -0700, Behzad Mahini wrote:
>> I can't finalize my RTIR installation, as I can't do a successful
>> installation of the last of the RTIR prerequisites due to a bunch of
>> the tests failing for CPAN module GnuPG::Interface. Before posting, I
>> did consult all the RTIR documentations, and GnuPG website, and CPAN,
>> etc., and could not find anything addressing the failing test
>> results...I also note that CPAN's site claims a 68% success rate  
>> (Perl
>> 5.8.8) for tests associated to GnuPG::Interface module.  Details are
>> listed below.
>
> Diagnosing your failure is difficult without more information about
> why it is failing.
>
> Download the module and do the install manually,
> perl Makefile.PL
> make test
> prove -lv t/anything_that_fails
>
> -kevin
>
>>
>> My Setup:
>> =======
>> RT 3.8.4
>> RTFM -2.4.2
>> Mac OS X 10.5.8
>> MySQL 5.1.37
>> Apache/2.2.13 (Unix) mod_perl/2.0.4 Perl/v5.8.8 configured
>>
>>
>> My Installed Prerequisites (for RTIR):
>> ==========================
>> GnuPG 2.0.13	............(I am planning to use S/MIME, and Gnu's site
>> recommended version 2.x as opposed to 1.x of GnuPG)
>>
>>
>> Concerns:
>> ===========
>> As I am about to use RTIR for secure purposes, the obvious concern of
>> mine in the event I do a CPAN '"force install GnuPG::Interface", is  
>> to
>> get blind-sided with things that I should have not overlooked as a
>> result of the failing tests.
>>
>>
>> Misc.
>> =====
>> I also attempted to do a CPAN installation of module GnuPG (different
>> than module GnuPG::Interface)...and of its 25 tests, every single one
>> failed. For now I am assuming that I don't need to worry about this
>> module as a pre-requisite for a successful installation of RTIR (as
>> GnuPG::Interface should suffice).
>>
>>
>> Here are the output of my (failing) installation of CPAN module
>> GnuPG::Interface:
>> ===============================================================
>>
>> cpan[3]> install GnuPG::Interface
>> Running install for module 'GnuPG::Interface'
>> Running make for J/JE/JESSE/GnuPG-Interface-0.36.tar.gz
>> CPAN: Digest::SHA loaded ok (v5.47)
>> CPAN: Compress::Zlib loaded ok (v2.02)
>> Checksum for /usr/local/.cpan/sources/authors/id/J/JE/JESSE/GnuPG-
>> Interface-0.36.tar.gz ok
>> Scanning cache /usr/local/.cpan/build for sizes
>> ............................................................................DONE
>> CPAN: Archive::Tar loaded ok (v1.52)
>> GnuPG-Interface-0.36/
>> GnuPG-Interface-0.36/ChangeLog
>> GnuPG-Interface-0.36/COPYING
>> GnuPG-Interface-0.36/lib/
>> GnuPG-Interface-0.36/lib/GnuPG/
>> GnuPG-Interface-0.36/lib/GnuPG/Fingerprint.pm
>> GnuPG-Interface-0.36/lib/GnuPG/Handles.pm
>> GnuPG-Interface-0.36/lib/GnuPG/Interface.pm
>> GnuPG-Interface-0.36/lib/GnuPG/Key.pm
>> GnuPG-Interface-0.36/lib/GnuPG/Options.pm
>> GnuPG-Interface-0.36/lib/GnuPG/PrimaryKey.pm
>> GnuPG-Interface-0.36/lib/GnuPG/PublicKey.pm
>> GnuPG-Interface-0.36/lib/GnuPG/SecretKey.pm
>> GnuPG-Interface-0.36/lib/GnuPG/Signature.pm
>> GnuPG-Interface-0.36/lib/GnuPG/SubKey.pm
>> GnuPG-Interface-0.36/lib/GnuPG/UserId.pm
>> GnuPG-Interface-0.36/Makefile.PL
>> GnuPG-Interface-0.36/MANIFEST
>> GnuPG-Interface-0.36/META.yml
>> GnuPG-Interface-0.36/NEWS
>> GnuPG-Interface-0.36/README
>> GnuPG-Interface-0.36/SIGNATURE
>> GnuPG-Interface-0.36/t/
>> GnuPG-Interface-0.36/t/clearsign.t
>> GnuPG-Interface-0.36/t/decrypt.t
>> GnuPG-Interface-0.36/t/detach_sign.t
>> GnuPG-Interface-0.36/t/encrypt.t
>> GnuPG-Interface-0.36/t/encrypt_symmetrically.t
>> GnuPG-Interface-0.36/t/export_keys.t
>> GnuPG-Interface-0.36/t/Fingerprint.t
>> GnuPG-Interface-0.36/t/get_public_keys.t
>> GnuPG-Interface-0.36/t/get_secret_keys.t
>> GnuPG-Interface-0.36/t/GnuPG/
>> GnuPG-Interface-0.36/t/GnuPG/ComparableFingerprint.pm
>> GnuPG-Interface-0.36/t/GnuPG/ComparableKey.pm
>> GnuPG-Interface-0.36/t/GnuPG/ComparablePrimaryKey.pm
>> GnuPG-Interface-0.36/t/GnuPG/ComparablePublicKey.pm
>> GnuPG-Interface-0.36/t/GnuPG/ComparableSecretKey.pm
>> GnuPG-Interface-0.36/t/GnuPG/ComparableSignature.pm
>> GnuPG-Interface-0.36/t/GnuPG/ComparableSubKey.pm
>> GnuPG-Interface-0.36/t/GnuPG/ComparableUserId.pm
>> GnuPG-Interface-0.36/t/import_keys.t
>> GnuPG-Interface-0.36/t/Interface.t
>> GnuPG-Interface-0.36/t/list_public_keys.t
>> GnuPG-Interface-0.36/t/list_secret_keys.t
>> GnuPG-Interface-0.36/t/list_sigs.t
>> GnuPG-Interface-0.36/t/MyTest.pm
>> GnuPG-Interface-0.36/t/MyTestSpecific.pm
>> GnuPG-Interface-0.36/t/passphrase_handling.t
>> GnuPG-Interface-0.36/t/sign.t
>> GnuPG-Interface-0.36/t/sign_and_encrypt.t
>> GnuPG-Interface-0.36/t/UserId.t
>> GnuPG-Interface-0.36/t/verify.t
>> GnuPG-Interface-0.36/t/wrap_call.t
>> GnuPG-Interface-0.36/test/
>> GnuPG-Interface-0.36/test/encrypted.1.gpg
>> GnuPG-Interface-0.36/test/key.1.asc
>> GnuPG-Interface-0.36/test/options
>> GnuPG-Interface-0.36/test/passphrase
>> GnuPG-Interface-0.36/test/plain.1.txt
>> GnuPG-Interface-0.36/test/public-keys/
>> GnuPG-Interface-0.36/test/public-keys/1.0.test
>> GnuPG-Interface-0.36/test/public-keys/1.1.test
>> GnuPG-Interface-0.36/test/public-keys/2.0.test
>> GnuPG-Interface-0.36/test/public-keys/2.1.test
>> GnuPG-Interface-0.36/test/public-keys-sigs/
>> GnuPG-Interface-0.36/test/public-keys-sigs/1.0.test
>> GnuPG-Interface-0.36/test/public-keys-sigs/1.1.test
>> GnuPG-Interface-0.36/test/public-keys-sigs/2.0.test
>> GnuPG-Interface-0.36/test/public-keys-sigs/2.1.test
>> GnuPG-Interface-0.36/test/pubring.gpg
>> GnuPG-Interface-0.36/test/secret-keys/
>> GnuPG-Interface-0.36/test/secret-keys/1.0.test
>> GnuPG-Interface-0.36/test/secret-keys/2.0.test
>> GnuPG-Interface-0.36/test/secring.gpg
>> GnuPG-Interface-0.36/test/signed.1.asc
>> GnuPG-Interface-0.36/THANKS
>> CPAN: File::Temp loaded ok (v0.22)
>> CPAN: YAML loaded ok (v0.70)
>>
>>   CPAN.pm: Going to build J/JE/JESSE/GnuPG-Interface-0.36.tar.gz
>>
>> which gpg ... /usr/local/bin/gpg
>> Checking if your kit is complete...
>> Looks good
>> Writing Makefile for GnuPG::Interface
>> cp lib/GnuPG/Signature.pm blib/lib/GnuPG/Signature.pm
>> cp lib/GnuPG/Interface.pm blib/lib/GnuPG/Interface.pm
>> AutoSplitting blib/lib/GnuPG/Interface.pm (blib/lib/auto/GnuPG/
>> Interface)
>> blib/lib/GnuPG/Interface.pm: some names are not unique when truncated
>> to 8 characters:
>>  directory blib/lib/auto/GnuPG/Interface:
>>   get_public_keys.al, get_public_keys_with_sigs.al truncate to  
>> get_publ
>> cp lib/GnuPG/SubKey.pm blib/lib/GnuPG/SubKey.pm
>> cp lib/GnuPG/PrimaryKey.pm blib/lib/GnuPG/PrimaryKey.pm
>> cp lib/GnuPG/Handles.pm blib/lib/GnuPG/Handles.pm
>> cp lib/GnuPG/SecretKey.pm blib/lib/GnuPG/SecretKey.pm
>> cp lib/GnuPG/Key.pm blib/lib/GnuPG/Key.pm
>> cp lib/GnuPG/UserId.pm blib/lib/GnuPG/UserId.pm
>> cp lib/GnuPG/Fingerprint.pm blib/lib/GnuPG/Fingerprint.pm
>> cp lib/GnuPG/Options.pm blib/lib/GnuPG/Options.pm
>> cp lib/GnuPG/PublicKey.pm blib/lib/GnuPG/PublicKey.pm
>> Manifying blib/man3/GnuPG::Signature.3pm
>> Manifying blib/man3/GnuPG::Interface.3pm
>> Manifying blib/man3/GnuPG::PrimaryKey.3pm
>> Manifying blib/man3/GnuPG::SubKey.3pm
>> Manifying blib/man3/GnuPG::Handles.3pm
>> Manifying blib/man3/GnuPG::Key.3pm
>> Manifying blib/man3/GnuPG::SecretKey.3pm
>> Manifying blib/man3/GnuPG::Fingerprint.3pm
>> Manifying blib/man3/GnuPG::UserId.3pm
>> Manifying blib/man3/GnuPG::PublicKey.3pm
>> Manifying blib/man3/GnuPG::Options.3pm
>>   JESSE/GnuPG-Interface-0.36.tar.gz
>>   /usr/bin/make -- OK
>> Running make test
>> PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
>> "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
>> t/clearsign.t .............. ok
>> t/decrypt.t ................ ok
>> t/detach_sign.t ............ ok
>> t/encrypt.t ................ 1/3 gpg: WARNING: unsafe permissions on
>> homedir `test'
>> t/encrypt.t ................ ok
>> t/encrypt_symmetrically.t .. ok
>> t/export_keys.t ............ ok
>> t/Fingerprint.t ............ ok
>> t/get_public_keys.t ........ gpg: WARNING: unsafe permissions on
>> homedir `test'
>> t/get_public_keys.t ........ 1/3 subkeys fail comparison; this is a
>> known issue with GnuPG 1.0.1 at t/get_public_keys.t line 92.
>> t/get_public_keys.t ........ Failed 3/3 subtests
>> t/get_secret_keys.t ........ gpg: WARNING: unsafe permissions on
>> homedir `test'
>> t/get_secret_keys.t ........ Failed 2/2 subtests
>> t/import_keys.t ............ ok
>> t/Interface.t .............. ok
>> t/list_public_keys.t ....... ok
>> t/list_secret_keys.t ....... ok
>> t/list_sigs.t .............. ok
>> t/passphrase_handling.t .... 1/3 gpg: WARNING: unsafe permissions on
>> homedir `test'
>> t/passphrase_handling.t .... ok
>> t/sign.t ................... ok
>> t/sign_and_encrypt.t ....... ok
>> t/UserId.t ................. ok
>> t/verify.t ................. ok
>> t/wrap_call.t .............. ok
>>
>> Test Summary Report
>> -------------------
>> t/get_public_keys.t      (Wstat: 0 Tests: 3 Failed: 3)
>>   Failed tests:  1-3
>> t/get_secret_keys.t      (Wstat: 0 Tests: 2 Failed: 2)
>>   Failed tests:  1-2
>> Files=20, Tests=51,  2 wallclock secs ( 0.07 usr  0.06 sys +  1.27
>> cusr  0.39 csys =  1.79 CPU)
>> Result: FAIL
>> Failed 2/20 test programs. 5/51 subtests failed.
>> make: *** [test_dynamic] Error 255
>>   JESSE/GnuPG-Interface-0.36.tar.gz
>>   /usr/bin/make test -- NOT OK
>> //hint// to see the cpan-testers results for installing this module,
>> try:
>>   reports JESSE/GnuPG-Interface-0.36.tar.gz
>> Running make install
>>   make test had returned bad status, won't install without force
>> Failed during this command:
>>  JESSE/GnuPG-Interface-0.36.tar.gz            : make_test NO
>>
>> =======
>>
>>
>>
>> Thanks,
>> Behzad
>> _______________________________________________
>> http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
>>
>> Community help: http://wiki.bestpractical.com
>> Commercial support: sales at bestpractical.com
>>
>>
>> Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
>> Buy a copy at http://rtbook.bestpractical.com
>>
> _______________________________________________
> http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
>
> Community help: http://wiki.bestpractical.com
> Commercial support: sales at bestpractical.com
>
>
> Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
> Buy a copy at http://rtbook.bestpractical.com




More information about the rt-users mailing list