Diff
Not logged in

Differences From Artifact [2ae07ec8f6]:

To Artifact [3b1b700ac5]:


1530
1531
1532
1533
1534
1535





1536
1537
1538
1539
1540
1530
1531
1532
1533
1534

1535
1536
1537
1538
1539
1540
1541
1542
1543
1544





-
+
+
+
+
+





 
    return $result 
  } 
 
  # 
  # NOTE: TBD 
  # NOTE: This procedure creates a new interpreter, which may be "safe", and 
  #       places a reference to it in a variable in the context of the caller 
  #       identified by the varName argument.  The created interpreter has a 
  #       fully functioning [package] command ensemble; all other commands do 
  #       nothing and return nothing.  This procedure may raise script errors. 
  # 
  proc createInterp { varName } { 
    upvar 1 $varName interp 
 
    set interp [interp create -safe] 
1555
1556
1557
1558
1559
1560








1561
1562
1563
1564
1565
1559
1560
1561
1562
1563

1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576





-
+
+
+
+
+
+
+
+





    interp eval $interp [list proc proc args ""]; # NOP 
    return "" 
  } 
 
  # 
  # NOTE: TBD 
  # NOTE: This procedure evaluates a script file and attempts to determine the 
  #       list of new [package ifneeded] scripts added by it.  When successful 
  #       it returns a list-of-lists.  Each element of the outer list contains 
  #       a package name and the list of its versions in descending order; in 
  #       the event of failure, empty lists may be returned for the outer list 
  #       or for a list of versions.  The interp argument is the interp to use 
  #       when evaluating the file specified by the fileName argument.  This 
  #       procedure may raise script errors. 
  # 
  proc getIfNeededVersions { interp fileName } { 
    set result [list] 
 
    set oldPackageNames [interp eval $interp [list package names]]