[interchange-cvs] interchange - jon modified 11 files

interchange-cvs at icdevgroup.org interchange-cvs at icdevgroup.org
Wed Nov 12 04:15:22 UTC 2008


User:      jon
Date:      2008-11-12 04:15:22 GMT
Modified:  .        Makefile.PL README UPGRADE WHATSNEW-5.7
Modified:  dist/src cpan_local_install mod_perl_tlink.pl tlink.pl
Modified:           vlink.pl
Modified:  extensions Interchange.pm
Modified:  scripts  interchange.PL
Added:     eg       pg83-implicit-casts.sql
Log:
Require Perl 5.8.5 or newer, and remove logic for various older versions.

Include Peter Eisentraut's script to re-add implicit casts to PostgreSQL 8.3,
as his Planet PostgreSQL blog is no longer available.

Revision  Changes    Path
2.69                 interchange/Makefile.PL


rev 2.69, prev_rev 2.68
Index: Makefile.PL
===================================================================
RCS file: /var/cvs/interchange/Makefile.PL,v
retrieving revision 2.68
retrieving revision 2.69
diff -u -u -r2.68 -r2.69
--- Makefile.PL	20 Oct 2008 15:05:15 -0000	2.68
+++ Makefile.PL	12 Nov 2008 04:15:22 -0000	2.69
@@ -16,7 +16,7 @@
 use File::Find;
 use Data::Dumper;
 use Cwd;
-require 5.008;
+require 5.008_005;
 
 use strict;
 
@@ -305,8 +305,9 @@
 
 	if($Global::TryingThreads and $] < 5.008_008 and ! -f '_allow_threads') {
 		print <<EOF;
-It is not recommended that you run Interchange with a thread-enabled perl,
-which you have called this installer with. Either rerun with 
+It is not recommended that you run Interchange with a thread-enabled
+perl older than version 5.8.8, which you have called this installer with.
+Either rerun with 
 
 	/path/to/non-threaded/perl Makefile.PL
 



2.41                 interchange/README


rev 2.41, prev_rev 2.40
Index: README
===================================================================
RCS file: /var/cvs/interchange/README,v
retrieving revision 2.40
retrieving revision 2.41
diff -u -u -r2.40 -r2.41
--- README	20 Oct 2008 15:04:46 -0000	2.40
+++ README	12 Nov 2008 04:15:22 -0000	2.41
@@ -29,7 +29,7 @@
   * reporting
   * possibility of web-based administration
 
-Interchange requires Perl 5.8.0 or later, on a Unix-like operating system.
+Interchange requires Perl 5.8.5 or later, on a Unix-like operating system.
 
 Interchange also requires some non-standard Perl modules to be installed on
 your system. Unless you are installing from distribution-specific packages



2.32                 interchange/UPGRADE


rev 2.32, prev_rev 2.31
Index: UPGRADE
===================================================================
RCS file: /var/cvs/interchange/UPGRADE,v
retrieving revision 2.31
retrieving revision 2.32
diff -u -u -r2.31 -r2.32
--- UPGRADE	21 May 2008 03:05:20 -0000	2.31
+++ UPGRADE	12 Nov 2008 04:15:22 -0000	2.32
@@ -7,8 +7,7 @@
 Briefly summarized, here's what you can expect when upgrading from the
 following versions:
 
- 5.6.x -- There are no known compatibility issues when upgrading from
-          Interchange 5.6.x.
+ 5.6.x -- Perl 5.8.5 or newer is now required to run Interchange.
 
  5.4.x -- A number of incompatible changes were made. Most of them will be
           simple to deal with, but please consult the list below in the
@@ -77,6 +76,11 @@
                          K N O W N   I S S U E S
 
 
+KNOWN ISSUES UPGRADING FROM 5.6
+
+Perl 5.8.5 or newer is now required.
+
+
 PROBLEM WORKAROUND FOR POSTGRESQL 8.3 USERS
 
 In PostgreSQL 8.3 many implicit casts were removed, some of which Interchange
@@ -84,13 +88,9 @@
 not work with PostgreSQL 8.3.
 
 We expect to work around this in a future version of Interchange, but at the
-moment the easiest way to get things working is to manually put back the
-removed casts, as Peter Eisentraut describes here:
-
-    http://people.planetpostgresql.org/peter/index.php?/archives/18-Readding-implicit-casts-in-PostgreSQL-8.3.html
-
-Running his pg83-implicit-casts.sql script fixes the known problems with the
-Standard demo.
+moment the easiest way to get things working is to manually put back any
+removed casts that you need. The included eg/pg83-implicit-casts.sql script
+fixes the known problems with the Standard demo.
 
 This issue does not affect earlier versions of PostgreSQL.
 



2.18                 interchange/WHATSNEW-5.7


rev 2.18, prev_rev 2.17
Index: WHATSNEW-5.7
===================================================================
RCS file: /var/cvs/interchange/WHATSNEW-5.7,v
retrieving revision 2.17
retrieving revision 2.18
diff -u -u -r2.17 -r2.18
--- WHATSNEW-5.7	10 Nov 2008 06:39:19 -0000	2.17
+++ WHATSNEW-5.7	12 Nov 2008 04:15:22 -0000	2.18
@@ -8,11 +8,13 @@
 See UPGRADE document for a list of incompatible changes.
 
 
-Interchange 5.7.1 released 2008-11-10.
+Interchange 5.7.1 released 2008-11-13.
 
 Core
 ----
 
+* Perl 5.8.5 or newer is now required.
+
 * Fixed regression in Vend::Table::DBI::set_slice for the following usage
   pattern (RT #200):
 



2.1                  interchange/dist/src/cpan_local_install


rev 2.1, prev_rev 2.0
Index: cpan_local_install
===================================================================
RCS file: /var/cvs/interchange/dist/src/cpan_local_install,v
retrieving revision 2.0
retrieving revision 2.1
diff -u -u -r2.0 -r2.1
--- cpan_local_install	18 Jul 2001 02:22:20 -0000	2.0
+++ cpan_local_install	12 Nov 2008 04:15:22 -0000	2.1
@@ -1,8 +1,5 @@
 #!/usr/bin/perl
 
-## This is here because Perl 5.005 installations may try to re-install
-## a whole perl if you run this! If you want to try it, then
-
 use lib './lib';
 use lib '../lib';
 use lib "$ENV{HOME}/.cpan";
@@ -10,11 +7,9 @@
 
 getopts('cfd:h');
 
-eval {
-	require 5.6.0;
-};
+require 5.008_005;
 
-use vars qw/$opt_c $opt_f $opt_d $opt_h $VERSION/;
+use vars qw/$opt_c $opt_d $opt_h $VERSION/;
 
 $VERSION = q{$Id};
 
@@ -22,13 +17,12 @@
 $prog =~ s:.*/::;
 
 $::USAGE = <<EOF;
-usage: $prog [-f] [-d interchange_root] [module1 module2 module_n]
+usage: $prog [-d interchange_root] [module1 module2 module_n]
 
 [module] defaults to Bundle::Interchange.
 
 OPTIONS:
 
-    -f    Force install for Perl 5.005
     -d    Set interchange root directory (default current)
 
 EOF
@@ -38,27 +32,12 @@
 	exit 2;
 }
 
-if($@) {
-
-	require 5.005;
-	if(! $opt_f) {
-		my $args = join " ", @ARGV;
-		print <<EOF;
-Perl 5.005 installations may try to re-install a whole perl if you run this! If
-you want to try it, then rerun with a -f flag, i.e.
-
-	$0 -f $args
-
-EOF
-	}
-}
-
 use Cwd;
 use File::Spec;
 
 use strict;
 
-my $libdir = $opt_d || $opt_d || '';
+my $libdir = $opt_d || '';
 
 my @mods_to_get = @ARGV;
 
@@ -86,13 +65,13 @@
 
 use CPAN;
 
-eval {  
-                require CPAN::MyConfig
+eval {
+    require CPAN::MyConfig
 };
 if($@) {
-        eval {
-                require CPAN::Config;
-        };
+    eval {
+        require CPAN::Config;
+    };
 };
 
 if($@) {
@@ -107,17 +86,13 @@
 		ncftp (a nice FTP program)
 		lynx  (the text-based web browser)
 
-In case you were wondering, CPAN is a worldwide network of
-over 100 FTP sites which maintain the latest Perl software.
-If you don't know a URL to use, you can try:
-
-	ftp://ftp.freesoftware.com/pub/perl/CPAN
-	ftp://ftp.funet.fi/pub/languages/perl/CPAN
+CPAN is a worldwide network of over 100 FTP sites which maintain
+the latest Perl software.
 
 You will be asked quite a few questions during the process. It is
-almost always right to accept the default by hitting ENTER. (There
-may be a couple of module tests that require you to hit 'q' to terminate
-them.)
+almost always right to accept the default by hitting ENTER.
+(There may be a couple of module tests that require you to hit 'q'
+to terminate them.)
 
 If you have errors during the process, don't worry. We will try
 real, real, hard to get all of the modules installed. If
@@ -141,7 +116,7 @@
 
 # See if we have the CPAN module
 eval { 	
-		die "Don't try this at home with Windows.\n" if $^O =~ /win32/i;
+	die "Don't try this at home with Windows.\n" if $^O =~ /win32/i;
 };
 
 if($@) {



2.5                  interchange/dist/src/mod_perl_tlink.pl


rev 2.5, prev_rev 2.4
Index: mod_perl_tlink.pl
===================================================================
RCS file: /var/cvs/interchange/dist/src/mod_perl_tlink.pl,v
retrieving revision 2.4
retrieving revision 2.5
diff -u -u -r2.4 -r2.5
--- mod_perl_tlink.pl	9 Aug 2007 13:40:52 -0000	2.4
+++ mod_perl_tlink.pl	12 Nov 2008 04:15:22 -0000	2.5
@@ -2,9 +2,9 @@
 
 # tlink.pl: runs as a cgi program and passes request to Interchange server
 #
-# $Id: mod_perl_tlink.pl,v 2.4 2007-08-09 13:40:52 pajamian Exp $
+# $Id: mod_perl_tlink.pl,v 2.5 2008-11-12 04:15:22 jon Exp $
 #
-# Copyright (C) 2002-2007 Interchange Development Group
+# Copyright (C) 2002-2008 Interchange Development Group
 # Copyright (C) 1996-2002 Red Hat, Inc.
 #
 # This program is free software; you can redistribute it and/or
@@ -21,7 +21,7 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-require 5.005;
+require 5.008_005;
 use strict;
 use Apache::Registry;
 use Socket;



2.6                  interchange/dist/src/tlink.pl


rev 2.6, prev_rev 2.5
Index: tlink.pl
===================================================================
RCS file: /var/cvs/interchange/dist/src/tlink.pl,v
retrieving revision 2.5
retrieving revision 2.6
diff -u -u -r2.5 -r2.6
--- tlink.pl	9 Aug 2007 13:40:52 -0000	2.5
+++ tlink.pl	12 Nov 2008 04:15:22 -0000	2.6
@@ -3,10 +3,9 @@
 # tlink.pl: runs as a cgi program and passes request to Interchange server
 #           via a TCP socket
 #
-# $Id: tlink.pl,v 2.5 2007-08-09 13:40:52 pajamian Exp $
+# $Id: tlink.pl,v 2.6 2008-11-12 04:15:22 jon Exp $
 #
-# Copyright (C) 2005-2007 Interchange Development Group,
-# http://www.icdevgroup.org/
+# Copyright (C) 2005-2008 Interchange Development Group, http://www.icdevgroup.org/
 # Copyright (C) 1996-2002 Red Hat, Inc.
 #
 # This program is free software; you can redistribute it and/or
@@ -24,7 +23,7 @@
 # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
 # MA  02110-1301  USA.
 
-require 5.002;
+require 5.008_005;
 use strict;
 use Socket;
 my $LINK_TIMEOUT = 30;



2.6                  interchange/dist/src/vlink.pl


rev 2.6, prev_rev 2.5
Index: vlink.pl
===================================================================
RCS file: /var/cvs/interchange/dist/src/vlink.pl,v
retrieving revision 2.5
retrieving revision 2.6
diff -u -u -r2.5 -r2.6
--- vlink.pl	9 Aug 2007 13:40:52 -0000	2.5
+++ vlink.pl	12 Nov 2008 04:15:22 -0000	2.6
@@ -3,10 +3,9 @@
 # vlink.pl: runs as a cgi program and passes request to Interchange server
 #           via a UNIX socket
 
-# $Id: vlink.pl,v 2.5 2007-08-09 13:40:52 pajamian Exp $
+# $Id: vlink.pl,v 2.6 2008-11-12 04:15:22 jon Exp $
 #
-# Copyright (C) 2005-2007 Interchange Development Group,
-# http://www.icdevgroup.org/
+# Copyright (C) 2005-2008 Interchange Development Group, http://www.icdevgroup.org/
 # Copyright (C) 1996-2002 Red Hat, Inc.
 #
 # This program is free software; you can redistribute it and/or
@@ -24,7 +23,7 @@
 # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
 # MA  02110-1301  USA.
 
-require 5.002;
+require 5.008_005;
 use strict;
 use Socket;
 my $LINK_FILE    = '~@~INSTALLARCHLIB~@~/etc/socket';



1.1                  interchange/eg/pg83-implicit-casts.sql


rev 1.1, prev_rev 1.0
Index: pg83-implicit-casts.sql
===================================================================
-- It is best to apply these as needed, rather than just throw them all in.
-- The first one (int to text) solves 99% of 8.3 app compatibility problems

-- by Peter Eisentraut, originally referenced at http://people.planetpostgresql.org/peter/index.php?/archives/18-Readding-implicit-casts-in-PostgreSQL-8.3.html

CREATE FUNCTION pg_catalog.text(integer) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(int4out($1));';
CREATE CAST (integer AS text) WITH FUNCTION pg_catalog.text(integer) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(smallint) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(int2out($1));';
CREATE CAST (smallint AS text) WITH FUNCTION pg_catalog.text(smallint) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(oid) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(oidout($1));';
CREATE CAST (oid AS text) WITH FUNCTION pg_catalog.text(oid) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(date) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(date_out($1));';
CREATE CAST (date AS text) WITH FUNCTION pg_catalog.text(date) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(double precision) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(float8out($1));';
CREATE CAST (double precision AS text) WITH FUNCTION pg_catalog.text(double precision) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(real) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(float4out($1));';
CREATE CAST (real AS text) WITH FUNCTION pg_catalog.text(real) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(time with time zone) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(timetz_out($1));';
CREATE CAST (time with time zone AS text) WITH FUNCTION pg_catalog.text(time with time zone) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(time without time zone) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(time_out($1));';
CREATE CAST (time without time zone AS text) WITH FUNCTION pg_catalog.text(time without time zone) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(timestamp with time zone) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(timestamptz_out($1));';
CREATE CAST (timestamp with time zone AS text) WITH FUNCTION pg_catalog.text(timestamp with time zone) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(interval) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(interval_out($1));';
CREATE CAST (interval AS text) WITH FUNCTION pg_catalog.text(interval) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(bigint) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(int8out($1));';
CREATE CAST (bigint AS text) WITH FUNCTION pg_catalog.text(bigint) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(numeric) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(numeric_out($1));';
CREATE CAST (numeric AS text) WITH FUNCTION pg_catalog.text(numeric) AS IMPLICIT;
CREATE FUNCTION pg_catalog.text(timestamp without time zone) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(timestamp_out($1));';
CREATE CAST (timestamp without time zone AS text) WITH FUNCTION pg_catalog.text(timestamp without time zone) AS IMPLICIT;



1.6                  interchange/extensions/Interchange.pm


rev 1.6, prev_rev 1.5
Index: Interchange.pm
===================================================================
RCS file: /var/cvs/interchange/extensions/Interchange.pm,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -u -r1.5 -r1.6
--- Interchange.pm	9 Aug 2007 13:40:53 -0000	1.5
+++ Interchange.pm	12 Nov 2008 04:15:22 -0000	1.6
@@ -1,8 +1,8 @@
 # Interchange.pm - Interchange access for Perl scripts
 #
-# $Id: Interchange.pm,v 1.5 2007-08-09 13:40:53 pajamian Exp $
+# $Id: Interchange.pm,v 1.6 2008-11-12 04:15:22 jon Exp $
 # 
-# Copyright (C) 2002-2007 Interchange Development Group
+# Copyright (C) 2002-2008 Interchange Development Group
 # Copyright (C) 1996-2002 Red Hat, Inc.
 #
 # This program is free software; you can redistribute it and/or modify
@@ -31,10 +31,10 @@
 use strict;
 use Fcntl;
 use vars qw($VERSION @EXPORT @EXPORT_OK);
-$VERSION = substr(q$Revision: 1.5 $, 10);
+$VERSION = substr(q$Revision: 1.6 $, 10);
 
 BEGIN {
-	require 5.005;
+	require 5.008_005;
 	($Global::VendRoot = $ENV{INTERCHANGE_ROOT})
 		if defined $ENV{INTERCHANGE_ROOT};
 	($Global::CatRoot = $ENV{INTERCHANGE_CATDIR})



2.110                interchange/scripts/interchange.PL


rev 2.110, prev_rev 2.109
Index: interchange.PL
===================================================================
RCS file: /var/cvs/interchange/scripts/interchange.PL,v
retrieving revision 2.109
retrieving revision 2.110
diff -u -u -r2.109 -r2.110
--- interchange.PL	20 Oct 2008 15:05:15 -0000	2.109
+++ interchange.PL	12 Nov 2008 04:15:22 -0000	2.110
@@ -3,7 +3,7 @@
 #
 # Interchange version 5.7.1
 #
-# $Id: interchange.PL,v 2.109 2008-10-20 15:05:15 jon Exp $
+# $Id: interchange.PL,v 2.110 2008-11-12 04:15:22 jon Exp $
 #
 # Copyright (C) 2002-2008 Interchange Development Group
 # Copyright (C) 1996-2002 Red Hat, Inc.
@@ -53,7 +53,7 @@
 no Config;
 
 BEGIN {
-	require 5.008;
+	require 5.008_005;
 
 	$ENV{PERL_SIGNALS} ||= 'unsafe';
 
@@ -76,10 +76,6 @@
 		$Global::TryingThreads = 1;
 	}
 
-	if( $Global::TryingThreads and $] < 5.008_005 ) {
-		die "Interchange will not work with a thread-enabled perl older than Perl 5.8.5.\n";
-	}
-
 	if(-f "$Global::VendRoot/interchange.cfg") {
 		$Global::ExeName = 'interchange';
 		$Global::ConfigFile = 'interchange.cfg';
@@ -376,7 +372,7 @@
 
 		http://www.icdevgroup.org/
 
-Interchange requires Perl 5.8.0 or higher; more information on Perl can
+Interchange requires Perl 5.8.5 or higher; more information on Perl can
 be seen at:
 
 		http://www.perl.com/
@@ -846,12 +842,6 @@
 	logGlobal( "Interchange V$VERSION");
 
 	SIGNALCHECK: {
-		my $high_enough;
-		eval {
-			require 5.8.2;
-			$high_enough = 1;
-		};
-		last SIGNALCHECK unless $high_enough;
 		if($ENV{PERL_SIGNALS} and $ENV{PERL_SIGNALS} eq 'unsafe') {
 			logGlobal("Running with old signals.");
 		}
@@ -873,8 +863,9 @@
 ***************************************************************
 ***************************************************************
 ****                                                       ****
-****  You are running a Perl with threads enabled -- this  ****
-****  is not recommended for a production environment.     ****
+****  You are running a Perl older than 5.8.8 with         ****
+****  threads enabled -- this is not recommended for a     ****
+****  production environment.                              ****
 ****                                                       ****
 ****  If the Interchange daemon does not start, add this   ****
 ****  line to interchange.cfg:                             ****







More information about the interchange-cvs mailing list