Overview
Comment: | Add support for using multiple API keys in one server request. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
4f3cbf49bf89e4bc628453a6b909538f |
User & Date: | mistachkin on 2016-10-17 21:28:33 |
Other Links: | manifest | tags |
Context
2016-10-17
| ||
22:48 | Add more (optional) verbosity to the URI downloading procedure. check-in: dbe5f9fb75 user: mistachkin tags: trunk | |
21:28 | Add support for using multiple API keys in one server request. check-in: 4f3cbf49bf user: mistachkin tags: trunk | |
2016-10-16
| ||
08:33 | Add 'manifest' Fossil settings file. check-in: df6fd4a8eb user: mistachkin tags: trunk | |
Changes
Modified client/1.0/pkgr.eagle from [d8bb8d2052] to [34c15c37b8].
︙ | ︙ | |||
441 442 443 444 445 446 447 | } return https://urn.to/r/pkg; # NOTE: System default. } # # NOTE: This procedure returns the full URI to use when looking up a | | | | | | | | > | > > > | > > > > > | | | > > | | > > > > > | > > | 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 | } return https://urn.to/r/pkg; # NOTE: System default. } # # NOTE: This procedure returns the full URI to use when looking up a # specific package via the package repository server. The apiKeys # argument is the list of API keys to use -OR- an empty list if a # public package is being looked up. The package argument is the # name of the package being looked up, it cannot be an empty # string. The version argument is the specific version being # looked up -OR- an empty string for any available version. There # are no HTTP requests issued by this procedure; it simply returns # the URI to use. # proc getLookupUri { apiKeys package version } { set baseUri [getLookupBaseUri] if {[string length $baseUri] == 0} then { return "" } # # NOTE: Build the HTTP request URI using the specified query parameter # values, escaping them as necessary. Also, include the standard # query parameters with constant values for this request type. # set anonymousApiKey "" if {[isEagle]} then { if {[llength $apiKeys] > 0} then { return [appendArgs \ $baseUri ?raw=1&method=lookup&apiKeys= [uri escape uri \ [join $apiKeys ,]] &package= [uri escape uri $package] \ &version= [uri escape uri $version]] } else { return [appendArgs \ $baseUri ?raw=1&method=lookup&apiKey= [uri escape uri \ $anonymousApiKey] &package= [uri escape uri $package] \ &version= [uri escape uri $version]] } } else { package require http 2.0 if {[llength $apiKeys] > 0} then { return [appendArgs \ $baseUri ? [::http::formatQuery raw 1 method lookup \ apiKeys [join $apiKeys ,] package $package version \ $version]] } else { return [appendArgs \ $baseUri ? [::http::formatQuery raw 1 method lookup \ apiKey $anonymousApiKey package $package version \ $version]] } } } # # NOTE: This procedure returns the version of the package that should be # used to lookup the associated [package ifneeded] script -OR- an # empty string if no such version exists. The package argument is |
︙ | ︙ | |||
522 523 524 525 526 527 528 | return $result } # # NOTE: This procedure issues an HTTP request that should return metadata # that can be used to load and/or provide the specified package. | | | | | | | | | | | 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 | return $result } # # NOTE: This procedure issues an HTTP request that should return metadata # that can be used to load and/or provide the specified package. # The apiKeys argument is the list of API keys to use -OR- an empty # list if a public package is being looked up. The package argument # is the name of the package, it cannot be an empty string. The # version argument is the specific version being looked up -OR- an # empty string for any available version. This procedure may raise # script errors. All line-endings are normalized to Unix-style; # therefore, all script signatures must assume this. # proc getLookupData { apiKeys package version } { variable verboseUriDownload set uri [getLookupUri $apiKeys $package $version] if {[string length $uri] == 0} then { return "" } if {$verboseUriDownload} then { pkgLog [appendArgs \ |
︙ | ︙ | |||
1634 1635 1636 1637 1638 1639 1640 | # # <public> proc getPackageFromRepository { package version caller } { # # NOTE: Get the list of API keys and try each one, in order, until # the package is found. # | | < | | > | | | | > | | | | < | | > > | > > | > > > > > | 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 | # # <public> proc getPackageFromRepository { package version caller } { # # NOTE: Get the list of API keys and try each one, in order, until # the package is found. # set apiKeys [getApiKeys] # # NOTE: Issue the non-anonymous lookup request to the remote # package repository. # set data [getLookupData $apiKeys $package $version] # # NOTE: Attempt to grab the lookup code from the non-anonymous # response data. # set code [getLookupCodeFromData $data] # # NOTE: If necessary, fallback with to an anonymous request. # if {![isLookupCodeOk $code]} then { # # NOTE: Issue the anonymous lookup request to the remote # package repository. # set data [getLookupData [list] $package $version] # # NOTE: Attempt to grab the lookup code from the anonymous # response data. # set code [getLookupCodeFromData $data] } # # NOTE: Attempt to grab the lookup data from the response data. # Upon failure, this should contain the error message. # set result [getLookupResultFromData $data] |
︙ | ︙ |
Modified client/1.0/pkgr.eagle.asc from [2908426844] to [878b5c2c87].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJYBT/8AAoJEFAslq9JXcLZWGoQAIA/IPYRK0t30qWVe2eQIR1M vbXGy5XyQaQQHmTHDY61y5kFbnlJoSrwJRX46uTttkp3u0FnfxtLEYQSvIVBWkYx IonkPHcgRQpfJXSDqV/z6bdMApTwkoU9iOAtK9rH4qq1CfYoi4WGpG2n/KPqfXtm 4Cs6WUVywhNu4ZKZABDqpIDezxWsR6SujBGRKZwfbTLGdnpXJKT5BZS+GGKwp7ep noWRpOctG2PBhs4YWnD9awcsb8+QYI8GvAbQNVL4NqFqtOUMGLcJof6Lp+/F+KQc J4gMnrbN+u/k/Sy4oOHryz19m9+Qrnc3WzYh+NpYQeDUmmP1bSUNNZ/x5UAKjpyb 45ndI/Jjtq6VcQt/j16VmBN89ybVe3SE5xuyFoLi6tgpjdO2DO59WxU3lIQ1NQoT CKz5H/RrYX1is2BqcB1NY2D3XvPI5tuf2bylOufCsuad9B7WQOt4hwyJmLqG+57+ eoX2nZVFfdiZEAvQv0x644C96pC3pTAdeHq3YS+M1JpOKoi1vVx2Vxj+XJMo9dR7 IW+K1Q1fM9RBJOiw7M5k9ZSQ6JCJaWXb76EY4FA4YKb8VqwapvoUpu5+ff67O0px 66qbVL5oUxLW2hU9SkYPN0eM/wBj8+aFWPcc2QgoUUP/M2TlXPJgdT6kv4WRcrL3 vO6v4yswIT4zc1eq4Tvx =crRO -----END PGP SIGNATURE----- |
Modified client/1.0/pkgr.eagle.harpy from [0f6a5160ce] to [6f9feb1467].
︙ | ︙ | |||
17 18 19 20 21 22 23 | 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> | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | 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>30bda9cc-69bd-4688-8b96-96e4e82a982b</Id> <HashAlgorithm>SHA512</HashAlgorithm> <EntityType>Script</EntityType> <TimeStamp>2016-10-17T21:17:25.9542266Z</TimeStamp> <Duration>-1.00:00:00</Duration> <Key>0x9559f6017247e3e2</Key> <Signature> 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 </Signature> </Certificate> |
Modified client/1.0/pkgr.eagle.harpy.asc from [4f4f352cb7] to [bbbdef1e6e].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJYBT/+AAoJEFAslq9JXcLZr3EQAK21y4o0OA6UEZNVnkE0lMRH HIycdG/mXLuL8ulshgP7U7nKHBu3kbglDvd9+uQDyzryVBIBKxXoeNZJ15jB0lPi ZjTLuMtKk7nnwwMu280Kmo2d7iVNl2GX1BhjloGvsNelb/Hzcc6YEt4aqlGU0qVB dQAeI5KKnDKGbT/aede4qO80kcY1MPGWeE0sc6m/pJNWzPgt4bhlKqqhE/FxjgQ+ Ius/Bc1OM2NFFFoBQ3Xb6zg48UtOCJfqBvTG18p73Q0mUlfwLZBv3PW56jYa6c7/ PViAPUddridOrs4D5iR4CpnUtGgNxiXLiH91ucfhC+Cc3IIduXn8I2Kuwd7DZ8R5 M6QzwrPxpHs7eBfL3Nw4a3hQKnNQX2ljXCdOyQTYu5Ijcx9tua/HgAn/bwuYpfJc EJAUYYs42u71AYdRl+99CG++OQ2730vauQUwpQxHwymKssQOz5IawTKa2L06O1dh QQAc+3YM8j5HD5x3BjoQa0mMq2AJzR6AmgHoWEOWWiks4DS4DM8Hb6wEulGX5Sba H4f2LJuNVIrYOllUd0TZDIoDPyTpzsvOnkwkTsX4X7JApXp9p8tiSfYjl+1hqNfH fXMEvBdnBxSwn0/d6tOejK7n/NiqCcLz1Wpny2QFqJ4IlEs10p+5xAJm/9h1Hm76 Ao/TX4b8851HTKKS7n7d =MsgF -----END PGP SIGNATURE----- |