From 4f5c441aff06e9499f190a630f918f2f345c0c86 Mon Sep 17 00:00:00 2001 From: dgp Date: Thu, 9 Aug 2001 01:00:56 +0000 Subject: Add package dependency checks. Upgrade packages bundled with Tcl 8.3.x: http 2.3.2, msgcat 1.1.1, opt 0.4.3, tcltest 1.0.1. FossilOrigin-Name: b6aa9b01039c3ba9805ea24a6b93594f0cf1fb10 --- ChangeLog | 17 +++++++++++++++++ library/dde1.1/pkgIndex.tcl | 1 + library/http/http.tcl | 11 +++++------ library/http/pkgIndex.tcl | 3 ++- library/msgcat/msgcat.tcl | 16 ++++++++++------ library/msgcat/pkgIndex.tcl | 3 ++- library/opt/optparse.tcl | 5 +++-- library/opt/pkgIndex.tcl | 3 ++- library/reg1.0/pkgIndex.tcl | 1 + library/tcltest1.0/pkgIndex.tcl | 3 ++- library/tcltest1.0/tcltest.tcl | 5 +++-- 11 files changed, 48 insertions(+), 20 deletions(-) diff --git a/ChangeLog b/ChangeLog index ea8614b..de84b81 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,20 @@ +2001-08-98 Don Porter + + * library/dde1.1/pkgIndex.tcl: + * library/reg1.0/pkgIndex.tcl: Package dependencies. [Patch 448931] + + * library/http/http.tcl: + * library/http/pkgIndex.tcl: Upgrade to http 2.3.2. + + * library/msgcat/msgcat.tcl: + * library/msgcat/pkgIndex.tcl: Upgrade to msgcat 1.1.1. + + * library/opt/optparse.tcl: + * library/opt/pkgIndex.tcl: Upgrade to opt 0.4.3. + + * library/tcltest/tcltest.tcl: + * library/tcltest/pkgIndex.tcl: Upgrade to tcltest 1.0.1. + 2001-08-07 Miguel Sofer * generic/tclExecute.c: Avoid panic when there are extra items in diff --git a/library/dde1.1/pkgIndex.tcl b/library/dde1.1/pkgIndex.tcl index f818736..7e7a5a2 100644 --- a/library/dde1.1/pkgIndex.tcl +++ b/library/dde1.1/pkgIndex.tcl @@ -1,3 +1,4 @@ +if {![package vsatisfies [package provide Tcl] 8]} {return} if {[info exists tcl_platform(debug)]} { package ifneeded dde 1.1 [list load [file join $dir tcldde83d.dll] dde] } else { diff --git a/library/http/http.tcl b/library/http/http.tcl index 29e857a..0eb5260 100644 --- a/library/http/http.tcl +++ b/library/http/http.tcl @@ -9,7 +9,7 @@ # See the file "license.terms" for information on usage and # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. # -# RCS: @(#) $Id: http.tcl,v 1.32.2.1 2000/05/31 01:28:57 sandeep Exp $ +# RCS: @(#) $Id: http.tcl,v 1.32.2.2 2001/08/09 01:00:56 dgp Exp $ # Rough version history: # 1.0 Old http_get interface @@ -20,7 +20,8 @@ # This version also cleans up error cases and eliminates the # "ioerror" status in favor of raising an error -package provide http 2.3 +package require Tcl 8.2 +package provide http 2.3.2 namespace eval http { variable http @@ -28,7 +29,7 @@ namespace eval http { -accept */* -proxyhost {} -proxyport {} - -useragent {Tcl http client package 2.3} + -useragent {Tcl http client package 2.3.2} -proxyfilter http::ProxyRequired } @@ -853,10 +854,8 @@ proc http::formatQuery {args} { set alphanumeric a-zA-Z0-9 regsub -all \[^$alphanumeric\] $string {$formMap(&)} string - regsub -all \n $string {\\n} string - regsub -all \t $string {\\t} string regsub -all {[][{})\\]\)} $string {\\&} string - return [subst $string] + return [subst -nocommand $string] } # http::ProxyRequired -- diff --git a/library/http/pkgIndex.tcl b/library/http/pkgIndex.tcl index 32b17c7..4186a43 100644 --- a/library/http/pkgIndex.tcl +++ b/library/http/pkgIndex.tcl @@ -8,4 +8,5 @@ # script is sourced, the variable $dir must contain the # full path name of this file's directory. -package ifneeded http 2.3 [list tclPkgSetup $dir http 2.3 {{http.tcl source {::http::config ::http::formatQuery ::http::geturl ::http::reset ::http::wait ::http::register ::http::unregister}}}] +if {![package vsatisfies [package provide Tcl] 8.2]} {return} +package ifneeded http 2.3.2 [list tclPkgSetup $dir http 2.3.2 {{http.tcl source {::http::config ::http::formatQuery ::http::geturl ::http::reset ::http::wait ::http::register ::http::unregister}}}] diff --git a/library/msgcat/msgcat.tcl b/library/msgcat/msgcat.tcl index 9935bf0..4d1d941 100644 --- a/library/msgcat/msgcat.tcl +++ b/library/msgcat/msgcat.tcl @@ -10,9 +10,10 @@ # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. # -# RCS: @(#) $Id: msgcat.tcl,v 1.4.2.3 2000/08/08 17:53:42 hobbs Exp $ +# RCS: @(#) $Id: msgcat.tcl,v 1.4.2.4 2001/08/09 01:00:56 dgp Exp $ -package provide msgcat 1.1 +package require Tcl 8.2 +package provide msgcat 1.1.1 namespace eval msgcat { namespace export mc mcset mclocale mcpreferences mcunknown @@ -49,7 +50,7 @@ proc msgcat::mc {src args} { # Check for the src in each namespace starting from the local and # ending in the global. - set ns [uplevel {namespace current}] + set ns [uplevel 1 [list ::namespace current]] while {$ns != ""} { foreach loc $::msgcat::loclist { @@ -66,7 +67,7 @@ proc msgcat::mc {src args} { set ns [namespace parent $ns] } # we have not found the translation - return [uplevel 1 [list [namespace origin mcunknown] \ + return [uplevel 1 [list [::namespace origin mcunknown] \ $::msgcat::locale $src] $args] } @@ -134,7 +135,10 @@ proc msgcat::mcload {langdir} { set langfile [file join $langdir $p.msg] if {[file exists $langfile]} { incr x - uplevel [list source $langfile] + set fid [open $langfile "r"] + fconfigure $fid -encoding utf-8 + uplevel 1 [read $fid] + close $fid } } return $x @@ -158,7 +162,7 @@ proc msgcat::mcset {locale src {dest ""}} { set dest $src } - set ns [uplevel {namespace current}] + set ns [uplevel 1 [list ::namespace current]] set ::msgcat::msgs([string tolower $locale],$ns,$src) $dest return $dest diff --git a/library/msgcat/pkgIndex.tcl b/library/msgcat/pkgIndex.tcl index 7bee508..d3ffd45 100644 --- a/library/msgcat/pkgIndex.tcl +++ b/library/msgcat/pkgIndex.tcl @@ -1 +1,2 @@ -package ifneeded msgcat 1.1 [list source [file join $dir msgcat.tcl]] +if {![package vsatisfies [package provide Tcl] 8.2]} {return} +package ifneeded msgcat 1.1.1 [list source [file join $dir msgcat.tcl]] diff --git a/library/opt/optparse.tcl b/library/opt/optparse.tcl index d552297..3a1a7fb 100644 --- a/library/opt/optparse.tcl +++ b/library/opt/optparse.tcl @@ -8,9 +8,10 @@ # on it. If your code does rely on this package you # may directly incorporate this code into your application. # -# RCS: @(#) $Id: optparse.tcl,v 1.2.12.2 2001/04/03 22:54:38 hobbs Exp $ +# RCS: @(#) $Id: optparse.tcl,v 1.2.12.3 2001/08/09 01:00:56 dgp Exp $ -package provide opt 0.4.2 +package require Tcl 8 +package provide opt 0.4.3 namespace eval ::tcl { diff --git a/library/opt/pkgIndex.tcl b/library/opt/pkgIndex.tcl index 2de9531..02c289c 100644 --- a/library/opt/pkgIndex.tcl +++ b/library/opt/pkgIndex.tcl @@ -8,4 +8,5 @@ # script is sourced, the variable $dir must contain the # full path name of this file's directory. -package ifneeded opt 0.4.2 [list source [file join $dir optparse.tcl]] +if {![package vsatisfies [package provide Tcl] 8]} {return} +package ifneeded opt 0.4.3 [list source [file join $dir optparse.tcl]] diff --git a/library/reg1.0/pkgIndex.tcl b/library/reg1.0/pkgIndex.tcl index d3e39dd..4a8fdee 100755 --- a/library/reg1.0/pkgIndex.tcl +++ b/library/reg1.0/pkgIndex.tcl @@ -1,3 +1,4 @@ +if {![package vsatisfies [package provide Tcl] 8]} {return} if {[info exists tcl_platform(debug)]} { package ifneeded registry 1.0 \ [list load [file join $dir tclreg83d.dll] registry] diff --git a/library/tcltest1.0/pkgIndex.tcl b/library/tcltest1.0/pkgIndex.tcl index 7a58882..e5fc1bd 100644 --- a/library/tcltest1.0/pkgIndex.tcl +++ b/library/tcltest1.0/pkgIndex.tcl @@ -8,7 +8,8 @@ # script is sourced, the variable $dir must contain the # full path name of this file's directory. -package ifneeded tcltest 1.0 [list tclPkgSetup $dir tcltest 1.0 \ +if {![package vsatisfies [package provide Tcl] 8.2]} {return} +package ifneeded tcltest 1.0.1 [list tclPkgSetup $dir tcltest 1.0.1 \ {{tcltest.tcl source {::tcltest::bytestring ::tcltest::cleanupTests \ ::tcltest::makeDirectory ::tcltest::makeFile ::tcltest::normalizeMsg \ ::tcltest::removeDirectory ::tcltest::removeFile \ diff --git a/library/tcltest1.0/tcltest.tcl b/library/tcltest1.0/tcltest.tcl index 5898cf6..2e5dc59 100644 --- a/library/tcltest1.0/tcltest.tcl +++ b/library/tcltest1.0/tcltest.tcl @@ -12,9 +12,10 @@ # Copyright (c) 1998-1999 by Scriptics Corporation. # All rights reserved. # -# RCS: @(#) $Id: tcltest.tcl,v 1.24 2000/04/11 01:04:19 welch Exp $ +# RCS: @(#) $Id: tcltest.tcl,v 1.24.2.1 2001/08/09 01:00:57 dgp Exp $ -package provide tcltest 1.0 +package require Tcl 8.2 +package provide tcltest 1.0.1 # create the "tcltest" namespace for all testing variables and procedures -- cgit v0.12