Check-in [cdb1e4e5a3]
Not logged in
Overview
Comment:Fix multi-pass 'package unknown' integration in native Tcl.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: cdb1e4e5a3dd4d388546d62106ab5f762725e7c0
User & Date: mistachkin on 2016-08-17 19:32:06
Other Links: manifest | tags
Context
2016-08-17
20:06
Rename the package 'IfNeeded' piece of metadata to simply 'Script', since it may or may not actually be a real 'package ifneeded' script. check-in: b868c01046 user: mistachkin tags: trunk
19:32
Fix multi-pass 'package unknown' integration in native Tcl. check-in: cdb1e4e5a3 user: mistachkin tags: trunk
18:55
Add another diagnostic message. check-in: fa25d05785 user: mistachkin tags: trunk
Changes

Modified client/pkgr.eagle from [5288b4e92e] to [a4497bd3b4].

211
212
213
214
215
216
217








218
219
220
221
222
223
224
      package require http 2.0

      return [appendArgs \
          $baseUri ? [http::formatQuery raw 1 method lookup apiKey $apiKey \
          package $package version $version]]
    }
  }









  proc getLookupVersion { requirement } {
    if {[set index [string first - $requirement]] != -1} then {
      incr index -1; set requirement [string range $requirement 0 $index]
    }

    if {[set index [string first a $requirement]] != -1 || \







>
>
>
>
>
>
>
>







211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
      package require http 2.0

      return [appendArgs \
          $baseUri ? [http::formatQuery raw 1 method lookup apiKey $apiKey \
          package $package version $version]]
    }
  }

  proc getIfNeededVersion { package version } {
    if {[string length $version] > 0} then {
      return $version
    }

    return [lindex [package versions $package] 0]
  }

  proc getLookupVersion { requirement } {
    if {[set index [string first - $requirement]] != -1} then {
      incr index -1; set requirement [string range $requirement 0 $index]
    }

    if {[set index [string first a $requirement]] != -1 || \
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837





838


839















840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
    # NOTE: First, run our [package unknown] handler.
    #
    set code(1) [catch {main $package $version handler} result(1)]

    if {$verboseUnknownResult} then {
      pkgLog [appendArgs \
          "repository handler results for package \"" [formatPackageName \
          $package $version] "\", are " [formatResult $code(1) $result(1)]]
    }

    #
    # NOTE: Next, run the saved [package unknown] handler.
    #
    set code(2) [catch {
      runSavedPackageUnknownHandler $package $version
    } result(2)]

    if {$verboseUnknownResult} then {
      pkgLog [appendArgs \
          "saved handler results for package \"" [formatPackageName \
          $package $version] "\" are " [formatResult $code(2) $result(2)]]
    }

    #





    # NOTE: Finally, check if the package was actually loaded and then


    #       optionally record/log the results.















    #
    set command [list package present $package]
    if {[string length $version] > 0} then {lappend command $version}

    if {[catch $command] == 0} then {
      if {$verboseUnknownResult} then {
        pkgLog [appendArgs \
            "package \"" [formatPackageName $package $version] \
            "\" was loaded."]
      }
    } else {
      if {$verboseUnknownResult} then {
        pkgLog [appendArgs \
            "package \"" [formatPackageName $package $version] \
            "\" was not loaded."]
      }

      set result(3) [appendArgs \
          "can't find package " [formatPackageName $package $version]]

      error [array get result]
    }
  }

  proc maybeReadSettingsFile { script } {
    if {[string length $script] == 0 || \
        ![file exists $script] || ![file isfile $script]} then {
      return







|
















>
>
>
>
>
|
>
>
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
|
|

|
<



<
|
<




<
<
<
<
<







822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874

875
876
877

878

879
880
881
882





883
884
885
886
887
888
889
    # NOTE: First, run our [package unknown] handler.
    #
    set code(1) [catch {main $package $version handler} result(1)]

    if {$verboseUnknownResult} then {
      pkgLog [appendArgs \
          "repository handler results for package \"" [formatPackageName \
          $package $version] "\" are " [formatResult $code(1) $result(1)]]
    }

    #
    # NOTE: Next, run the saved [package unknown] handler.
    #
    set code(2) [catch {
      runSavedPackageUnknownHandler $package $version
    } result(2)]

    if {$verboseUnknownResult} then {
      pkgLog [appendArgs \
          "saved handler results for package \"" [formatPackageName \
          $package $version] "\" are " [formatResult $code(2) $result(2)]]
    }

    #
    # NOTE: Maybe check for the package and then optionally log results.
    #
    if {$verboseUnknownResult} then {
      set ifNeededVersion [getIfNeededVersion \
          $package [getLookupVersion $version]]

      if {[string length $ifNeededVersion] > 0} then {
        set command [list package ifneeded $package $ifNeededVersion]

        if {[catch $command result(3)] == 0 && \
            [string length $result(3)] > 0} then {
          pkgLog [appendArgs \
              "package script for \"" [formatPackageName $package \
              $ifNeededVersion] "\" was added: " [list $result(3)]]
        } else {
          pkgLog [appendArgs \
              "package script for \"" [formatPackageName $package \
              $ifNeededVersion] "\" was not added: " [list $result(3)]]
        }
      } else {
        pkgLog [appendArgs \
            "package script for \"" [formatPackageName $package \
            $ifNeededVersion] "\" was not added"]
      }

      set command [list package present $package]
      if {[string length $version] > 0} then {lappend command $version}

      if {[catch $command] == 0} then {

        pkgLog [appendArgs \
            "package \"" [formatPackageName $package $version] \
            "\" was loaded."]

      } else {

        pkgLog [appendArgs \
            "package \"" [formatPackageName $package $version] \
            "\" was not loaded."]
      }





    }
  }

  proc maybeReadSettingsFile { script } {
    if {[string length $script] == 0 || \
        ![file exists $script] || ![file isfile $script]} then {
      return

Modified client/pkgr.eagle.harpy from [cc5c756708] to [d677c7bdb3].

17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
    THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED.
-->
<Certificate xmlns="https://eagle.to/2011/harpy"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Protocol>None</Protocol>
  <Vendor>Mistachkin Systems</Vendor>
  <Id>d4434ce9-cf8f-4358-a28a-7adf0241b924</Id>
  <HashAlgorithm>SHA512</HashAlgorithm>
  <EntityType>Script</EntityType>
  <TimeStamp>2016-08-17T18:51:45.8435078Z</TimeStamp>
  <Duration>-1.00:00:00</Duration>
  <Key>0x2c322765603b5278</Key>
  <Signature>
    YKMRMG+Lh7mcdv/Y63ciQyABHef1IxeOpCNbBXAqc8eceP5YWRFam278gTCltapmo9iZlf6dOZdf
    Se2R5fkABixxHv1JVeujLbX+u8AyJe4kNhO56z+aNA0i98OLMXRVnl4rRxRmJ99BtCusabJmDh1O
    +outxW7hKIkKa3OKkz5SnH0Sa3daMIywCA2JE1gOyzEWfdFH3r3/2UO9Fty47iaWbD13odq/Yhx8
    srxjvv6IS2s2NiP2/0ynbou3CYQ65VH27tVex4tNiEWjuJM0/KrSf4yK+KgAjuJAAsJfgPDOb93c
    wZukdOt8z6H6YY7SFUEJFKM20o6U5Y4+frgSdpbP6D8x/eCYet+1hvJtUSYqn9Am9kIV4pkvSPvN
    ncdLwCtW0bSDkQ55wVuSK5aj/V3kSnXZeodSOYFvB+PEIDRGyBFjhL/44mQtWDnLJhQmKn1xw5Pe
    mAZBDW0uxbQ7T47PViDBlH8aosrxAvnJ1yLsA0Mbjly0Jda0skMg33tzORJXb7WkAsW1YGTk6b7y
    BNyhEJoW07x8McCh1HPI9ZY9NQ47Mo1Iw8lkrsu3qtlog8HlP4ueVECpFDxA/sdjGTy0fm4y0/kq
    jE5sEHpxgBFNWPyivDNF6PkmsT30NHXw8Rm4eTrhIzxJ75s+l8j+gFUTA210/5nM0N6qsEuhibnl
    fKizjhGHqwBBOkZllpD3oJdlEQ/IYjTY3miebCINeYayYxUmIqcnAyLVVurq4Uu9kYO56uFBj70W
    afLn502czfEIsFdBdt/tWOXjmISkS08mMKdnoTlVTbhOxXd5d6+R7MPK9BdomtxoOr/4jDF6IF4R
    6GH3gzYFRUcLUbS1CmxJPzTfTnqpg9rAJfyt53Z70iZwn31ZeFRdM68mBNPrAoAQC8brU4v6Zxh5
    Ao6OI5FhcP63JxDwwFH+FK0lOVaDZA12Rh9VwgsB2R4jbpPhK8cfbdEDGsSP4lvk9TEowX39CZ3O
    VW9Libv/HpjUvs15gxKIhGa7M1UMg2l2m80Z97scg1SgILIXoJ3jdShvTB5+1lkjGwmWhlbxfIn3
    twWCBYmZKtsEMU1N3j+G56MB/GrMAnnZ18G9q5e4/nUBy5WTnvIz2jcg9v10QO6ZG9EBUK/5aLM/
    If6v8nzPfwoXas5yf8nfh87jKld+FcCMtOHkbGw4cSU2j0GqyoAq67P9+QZnWhME4e/8RUDZlN4y
    1RtUM6vMdmnKO4Mtzz14YRppb+aZAe9o9APs4B2rxg0pocvlGNdSRd7WEEdgJS/dp/2WN9lJaj09
    Zl0pgvD0OLmfgjc8RckIdLiv3gA6ruNLk1KoqSGICwAA0NJaJjWmkC6PMhO54dJHJ/xK5Nvj6w==
  </Signature>
</Certificate>







|


|



|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|


17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
    THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED.
-->
<Certificate xmlns="https://eagle.to/2011/harpy"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Protocol>None</Protocol>
  <Vendor>Mistachkin Systems</Vendor>
  <Id>78255941-0cb7-4f55-8dd9-abe50e72170a</Id>
  <HashAlgorithm>SHA512</HashAlgorithm>
  <EntityType>Script</EntityType>
  <TimeStamp>2016-08-17T19:22:59.0896016Z</TimeStamp>
  <Duration>-1.00:00:00</Duration>
  <Key>0x2c322765603b5278</Key>
  <Signature>
    AO5Ui99nCZseAfy2JXw9WN3RIbruAfskm9wJGLYlCjDoqCrCVLh6MHEvpMaLgGPjEGxJkkTjD8EV
    XUtZrmVIGYClw0wwyUkFTMAAu+QHAe0UU0E1+QQ791zsb6jN0VX1ttLqlRWsP1BS+CerNd9HceAF
    tHQNphNrveIKvW4dZBQO1AYfYMUT6c5P/Zjixyckqjw0vQHyx5IzquxEG99FpBdv0BX5vulesTa5
    KQKxANctRzPRSLkFKvxuCq/6sKh9jR6SWBgpbh38ACQBveLgseksmfEHS4SrOYg1h3nfJ7NzWrAi
    plaZwwEpz11FkD3PlFgO3zzry6KjJK3FsunMYeGcfbySDwgMUomsW1rEtixtnAAaqhiBQpfCVy5j
    bLKKSaI8M2/givrUyaSzp8ki7Ubsui08rmWpbvIGSzbL6O78fZlOQ6ghNvMIVZyZE+2XDCUDUmnK
    Z8mGPZ0ZUf5M+LJF1M03dPGZnKZPirVLsGGApRssy7qpdi1ORTKnHDxGu7IQ0WliXe25tB6c0bI7
    /+XLpbFjqxozRQhdrtoFlrs1acqyBSuZDbl8A9r0IwX5UiUCmxc5imAJgN6/N0yHXoWgL4HqIDpQ
    ZqCzdW4QaJtIoInPdCXuS5GJ3HhHsueRR5UbEpAZdPF+NEpVtTPpvgg86TpctrEiC8bSrWmF95pH
    8WNLD6OgwK6GRhBbYngqvNKN9od9dD8qgImS/sxQ1X5Jf6PqOGwh/ouc1PEb10ePqOOxrRYQpWde
    NFU0R1p+1C4xhYkqLnwL7yH8VOldLPq5mHESCaqboLufQQ3k1Jy97G+wGSjC3VTSpSwyCG8Dyk5n
    rv0Grf4ia7IG6RwSBKYixjoElpTPyOMsnQnC+uNukgN4KLUME+6ACex6Yy/LO9/FatRPO//ldHIf
    xL6sXXHdfQP0evfvXm83Hey9DIcp+F6ykz4VAYLzcpeB1HRBz4EvdsFohTnZdFU3hDo2P1+v0DjW
    j86xKiZYOyaB/qDp5PAVC5GAOVriZ+Dox5Yu/PX9ES+A0HFZe714ISVJdLUyqGVH3LXqFi5Tpzxc
    6ZnOPQceKxMYtcDr8dkkfhKIxNoOUWgvoMPkl0P11X1pVy63qQHCyy/PmHUldae6vNxKUK++lWVL
    MTPg8iZPGI9V8hco2JGPHeEWA7/ogf+bK/DFYQGYb9LqJDemmVhcOpfC7h4nxAQom/TV10IVi3Zh
    d4sEEexTNVhKryUzKGbjlKAKJ9ZcydWQfYhOv5gyAxoSYNsqxZADjO7OhjfB7xVGtYjobvOTfM4P
    ri45EX2OhbC7ZtMK2p7NPODLT+UDtDvd+r2kuFfs+4UUaAJkyzW73lbX0+aXjNKaBcy6Gyd9Kw==
  </Signature>
</Certificate>

Modified client/pkgr.settings.eagle from [6b7ed98815] to [1984c373bb].

10
11
12
13
14
15
16

17
18
# See the file "license.terms" for information on usage and redistribution of
# this file, and for a DISCLAIMER OF ALL WARRANTIES.
#
# RCS: @(#) $Id: $
#
###############################################################################


variable verboseUnknownResult true
variable verboseUriDownload true







>


10
11
12
13
14
15
16
17
18
19
# See the file "license.terms" for information on usage and redistribution of
# this file, and for a DISCLAIMER OF ALL WARRANTIES.
#
# RCS: @(#) $Id: $
#
###############################################################################

variable strictUnknownLanguage false
variable verboseUnknownResult true
variable verboseUriDownload true

Modified client/pkgr.settings.eagle.harpy from [29090419cc] to [a9632ba307].

17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
    THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED.
-->
<Certificate xmlns="https://eagle.to/2011/harpy"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Protocol>None</Protocol>
  <Vendor>Mistachkin Systems</Vendor>
  <Id>61adb8fa-0662-443f-ada5-c89fe0ae1c8a</Id>
  <HashAlgorithm>SHA512</HashAlgorithm>
  <EntityType>Script</EntityType>
  <TimeStamp>2016-08-17T18:36:57.7106953Z</TimeStamp>
  <Duration>-1.00:00:00</Duration>
  <Key>0x2c322765603b5278</Key>
  <Signature>
    PdbkIPxxJMEz1x6hWXpV7ivR+jHi3c8gw4ITao/hdKalzRKdh/gEkWsrDvo1wBYH4eeVAeZmppKO
    73EKu24PTsrwn+T42o4iPBa9aif50tnDTjDgZzQCHGzBCflQ54dSUWOiBG5Y+HhrE7nYo90OWrB0
    23TNWIiMIeK/cz9rjGquXWl9gtSgsMvSrLZHUqqsJrooCiasrDuLzB/H2UaDhchvCbLFxVsAgWTv
    emkYe4GwBzvz3h0goR8Cj7VIYmaHdD1J7dEf44LatG6Z2p33t5qKUuMgmkial4Hb+GlU+fFhefoV
    LNtBOaTjTEaP7mT/QuQnuupxO5CELKDMEOwophCPnddoEjUU7xepTEcqo7bfIWwUMBl78ibM10k6
    utuFu8vbsa3oU/rz8wQAqI4keaDxnJNCPy/f2RfP+yGuInHFCAOTWwT9t+U/CeFsfcRdIUh95u62
    DA4E2hlX3f90W1xB8Phx/4cvA+ODp9L+RCfdYgus+1XJN18p9o/ZX07JY2qOwuECW8NhYjdaz7GH
    eA6wHsi3dVfGOcaWhCscofeF0b3KzR2Y4otS9dk1u9gF3aLZZ2d3GVEbXMl2ECe7CFKgCtDQaNMV
    WnUBKZzzx0lYHpzglJhqDTMg6xlHjdq1yZPwI6DdB5yqDHyk3VfmIPOvMHVbjQxKOie+cbw1lRez
    Cn5wDG/wXQJPojQWjoVIaXv2EBfHJuzb7w7KHS541x5FVyzRAvBQL+mxeLkdTv05UOxZupByAwld
    /RlE+Z51ilJpbaIb2s4QHZLhCpiCKb4DfpZoJ231+hVyS/Lrqd2qK2+yGSErChFbmsXJr8HCGSff
    9x1W3Q4iSiLmi8HBv/eM41guU6WPGCSef6ZYbUuMGlSHRk37A0eF8z20AbqopkrDE2vMD4iwsMTY
    zT8eHWfTFllyhl1C3MwVPusXeqw72CKDMCmiN3CZdWD+NfB9qFS6yKYDw9LORSgPlJy5odQFHEQ2
    baLm0lxYku7sGtlqv8bhaODHKVtrtxKno+NiRshkpbdgqR4MzaHCPq/UbGViiljuMPr8pYhrBQKJ
    EHaxSuSTAl84tOvjGGMUL+IR1qrEtZWZ2tGEJ/2rs9ALcHYQPYRtO0NTmYnMq2HjwHVzdDmHscl5
    kXa1lmaZUnZBkF6S4sslDgYMhFhnUXBZ+nwycy+MLxivFL6+0/jFeN3bdZMyuvHjZqRZ6sg7W+2i
    8Ha13XFLdydRUOKq4+Dzh5g7U0yOuLVYk/OYjSuTxbk/t5zlPAyNNvalcrqy3R0Gz1E7BccvQET/
    UG2M4TDU3dOIuP9Hb+WXi/Z14HLJVAniwn7oOA7siNbtu27ccCf7kOluJPu93zVY6pR70KMVCw==
  </Signature>
</Certificate>







|


|



|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|


17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
    THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED.
-->
<Certificate xmlns="https://eagle.to/2011/harpy"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Protocol>None</Protocol>
  <Vendor>Mistachkin Systems</Vendor>
  <Id>32fce62e-9899-4d81-b1d8-2fac61bb26fb</Id>
  <HashAlgorithm>SHA512</HashAlgorithm>
  <EntityType>Script</EntityType>
  <TimeStamp>2016-08-17T19:24:49.1950703Z</TimeStamp>
  <Duration>-1.00:00:00</Duration>
  <Key>0x2c322765603b5278</Key>
  <Signature>
    Y39+6r8dzwDCn6Ze2DrONO0bDIzV2h+QXR2QlUN7iA5UK0PvN3TjvvhHhJOSxcEAuxthZySu2dkP
    bieKV0gFN51x2Q9bJajyzKVJW1L79b8DdTE0jTX/Lr3R92w3DZVX6bi8nZreuKhN37PEJ1IkQhVw
    /2YqRDFOAH6vC5ig7ujOsL74jaUTiyA6dBz7WFuu4IUDcSnkMJxnf50DuH0U40/1BICc525HFrA+
    U6OhoYEthUl/fUzZ9xXBc76hfTkdkgF+r8C1JNPuX6Gz5EcBLu1SEWumszq7zTnN5Rk1/rf6KJb5
    3XXGyqncpOK8chlJdGW13ck929P/lJxzjM2GvwzTlSEQeKZXIET67P3al8U0yTLeQlgG/DGKz8WO
    06Iktkp4FQPvOIFB07Po6ADZw8MNK/A3sTei2md9RVVJzWrMY34S3BfMHYhDUQQUzGRF4OjLhuWU
    giyNTXIvqa0Kx+JBnQ4uQP0Z7lhoLM+0rI1yDYFVfpKERud+KDDfBqoxfTVMIdJw1NX9uVe23SLK
    vw0FPHRF+bDjM2AhLxF4APG3pmPW6fJAkTJaLoKq38JoAleVeKyGa4ygdSkMqmI+Q8PSlqlhxL87
    pB9g0N9Ffq/UuZbeXycdw3VeBEEhtAAgozm22Gxhjc0HIywnBLWyF+PhKOoNJFLw3L4BfaSQmnSu
    yWTXZhHWvUU6dyyWORLqpwwo94AHxGmMUqIZrp1EhC2Zmb4wouw0RUjEbbjBwkFYC38w0kikrzhZ
    i/+CG9XC6HoCQM0FUu+28zvm+CNP7W+b8YfxV/k8HH4HehY3w/xwYYWGC3uSwKhg4rofvct8tFmL
    PfMsWjRkefmi5YJMXaaUva/WyUmU6s3NbgcTxMgH2TwACHCLvhLTjufuUsoew3o6uYvsThOEam4Y
    YpZ3/ssOlwduavNYqhjfFVOtp531LGzikNOAwcnQ7tb8NbMmN0JD/GsAPUrpgQK+F3enWI/X9pmf
    LN4ZRseSiIMJA4DvQYQ1NAw2q/WrrVNWYCpRjEhfB3AsXJB9OXZvlvA2+UnA5SDuaTGyb9R7N1sg
    BRYfGccH2NcH6fjghLNlhXIgAQiHPHLw8xAMXaqxC5VL6D3srSiELztXcSN2yQoj1FURDGJcQ0Po
    NZINy+XLrHHeGY3GW7jZNEXk+lHIWJv1oiKGsvxSxeQ9dLPgn8NyVomlM7SOunUfTfNaCVMZJ1jH
    Z4dc17ubAEQfMR7B0wBuuTnbzgtc/3m21dqN9uXovD/bYPqszZGoye23q7ArhI0Axtz0yb+R7/7f
    AL1ypFUQG/JTxceySoL0j1RwxlBsbUuNk92yUkt5dymUATV7LkTHBIyyt/JIxbTTyJGJ4uving==
  </Signature>
</Certificate>