Overview
| Comment: | A bit of code cleanup in the package uploader. |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
3cfc75a37d9102d6d01ba4f434294d81 |
| User & Date: | mistachkin on 2016-12-23 23:46:45 |
| Other Links: | manifest | tags |
Context
|
2016-12-26
| ||
| 00:46 | Improve messages for the package uploader client errors related to its initial setup. check-in: 036720066a user: mistachkin tags: trunk | |
|
2016-12-23
| ||
| 23:46 | A bit of code cleanup in the package uploader. check-in: 3cfc75a37d user: mistachkin tags: trunk | |
| 23:14 | Make sure closing the Tk window exits the vwait. Refactor uploader client into package script and a tool script. check-in: 2def651bb5 user: mistachkin tags: trunk | |
Changes
Modified client/1.0/neutral/pkgu.eagle from [e3d6d4761a] to [3209afd0c1].
| ︙ | ︙ | |||
389 390 391 392 393 394 395 | # platform argument must be an empty string -OR- one of the literal # strings "neutral", "win32-arm", "win32-x86", "win64-arm64", # "win64-ia64", or "win64-x64". The fileNames argument is the list of # (fully?) qualified file names to be downloaded when the associated # package is being provided. The options argument is reserved for # future use, it should be an empty list. # | < | 389 390 391 392 393 394 395 396 397 398 399 400 401 402 |
# platform argument must be an empty string -OR- one of the literal
# strings "neutral", "win32-arm", "win32-x86", "win64-arm64",
# "win64-ia64", or "win64-x64". The fileNames argument is the list of
# (fully?) qualified file names to be downloaded when the associated
# package is being provided. The options argument is reserved for
# future use, it should be an empty list.
#
proc createRepositoryScript {
serverId versionId language version platform fileNames options } {
::PackageDownloader::verifyServerId $serverId
::PackageDownloader::verifyVersionId $versionId
::PackageDownloader::verifyLanguageAndVersion $language $version isClient
set prologue ""
|
| ︙ | ︙ | |||
506 507 508 509 510 511 512 | # patch level being submitted. The language argument must be an empty # string, "Tcl", or "Eagle". If it is an empty string, the current # language will be assumed. The script argument is the script to be # evaluated when the package needs to be provided. The certificate # argument is the certificate associated with the script, which may be # an OpenPGP signature or a Harpy script certificate. # | < | 505 506 507 508 509 510 511 512 513 514 515 516 517 518 |
# patch level being submitted. The language argument must be an empty
# string, "Tcl", or "Eagle". If it is an empty string, the current
# language will be assumed. The script argument is the script to be
# evaluated when the package needs to be provided. The certificate
# argument is the certificate associated with the script, which may be
# an OpenPGP signature or a Harpy script certificate.
#
proc submitPackageMetadata {
apiKey package patchLevel language script certificate } {
variable verboseMetadataSubmit
#
# NOTE: Fetch the submission URI for the package repository server. If
# it is not available for some reason, raise a script error.
|
| ︙ | ︙ | |||
896 897 898 899 900 901 902 | } # # NOTE: This procedure attempts to stage the specified package files using # Fossil. The fileNames argument is a list of (fully?) qualified # local file names to stage. # | < | 894 895 896 897 898 899 900 901 902 903 904 905 906 907 |
}
#
# NOTE: This procedure attempts to stage the specified package files using
# Fossil. The fileNames argument is a list of (fully?) qualified
# local file names to stage.
#
proc stagePackageFiles { language version platform fileNames } {
variable checkoutDirectory
variable fossilAddCommand
verifyCheckoutDirectory
if {![verifyThereAreNoChanges]} then {
|
| ︙ | ︙ | |||
950 951 952 953 954 955 956 | # # NOTE: This procedure attempts to commit the staged package files to the # remote package file repository using Fossil. The varName argument # is the name of a scalar variable in the context of the immediate # caller that will receive the resulting Fossil check-in identifier. # | < | 947 948 949 950 951 952 953 954 955 956 957 958 959 960 |
#
# NOTE: This procedure attempts to commit the staged package files to the
# remote package file repository using Fossil. The varName argument
# is the name of a scalar variable in the context of the immediate
# caller that will receive the resulting Fossil check-in identifier.
#
proc commitPackageFiles { package patchLevel language version varName } {
variable checkoutDirectory
variable fossilCommitCommand
variable fossilCommitPattern
fossilMustBeInstalled
verifyCheckoutDirectory
|
| ︙ | ︙ | |||
1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 |
}
#
# NOTE: This procedure initializes the array containing data derived from
# the command line arguments, if any. The argv argument should be
# the list of command line arguments.
#
proc setupArgumentData { argv } {
variable argumentData
if {![info exists argumentData(apiKey)]} then {
set argumentData(apiKey) ""
}
| > | 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 |
}
#
# NOTE: This procedure initializes the array containing data derived from
# the command line arguments, if any. The argv argument should be
# the list of command line arguments.
#
# <internal>
proc setupArgumentData { argv } {
variable argumentData
if {![info exists argumentData(apiKey)]} then {
set argumentData(apiKey) ""
}
|
| ︙ | ︙ | |||
1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 |
#
# NOTE: This procedure is used to determine if all the package submission
# data is available. There are no arguments. Non-zero is returned
# if all the package submission data is available. This procedure
# should not raise script errors.
#
proc haveArgumentData {} {
variable argumentData
if {![info exists argumentData(apiKey)]} then {
return false
}
| > | 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 |
#
# NOTE: This procedure is used to determine if all the package submission
# data is available. There are no arguments. Non-zero is returned
# if all the package submission data is available. This procedure
# should not raise script errors.
#
# <internal>
proc haveArgumentData {} {
variable argumentData
if {![info exists argumentData(apiKey)]} then {
return false
}
|
| ︙ | ︙ | |||
1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 |
#
# NOTE: This procedure is an event handler. It handles the submit button in
# both Tk and Eagle. It starts the package submission process. The
# args argument is not really used, it is a placeholder to make this
# procedure more portable between Tcl and Eagle. This procedure may
# raise script errors.
#
proc submitEventHandler { args } {
variable argumentData
set batchMode [lindex $args 0]
if {[isEagle]} then {
set sender [lindex $args 1]; # NOTE: Disposal.
| > | 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 |
#
# NOTE: This procedure is an event handler. It handles the submit button in
# both Tk and Eagle. It starts the package submission process. The
# args argument is not really used, it is a placeholder to make this
# procedure more portable between Tcl and Eagle. This procedure may
# raise script errors.
#
# <internal>
proc submitEventHandler { args } {
variable argumentData
set batchMode [lindex $args 0]
if {[isEagle]} then {
set sender [lindex $args 1]; # NOTE: Disposal.
|
| ︙ | ︙ | |||
1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 |
}
#
# NOTE: This procedure creates the user interface for this tool using Eagle
# and WinForms. The existing argument data, if any, will be used to
# populate it. There are no arguments.
#
proc setupWinFormsUserInterface {} {
variable argumentData
variable widgets
object load -import System.Windows.Forms
set form [object create -alias Form]
set widgets(0) $form
$form Text "Package Uploader Client"
###########################################################################
set widgets(1) [object create -alias Label]
$widgets(1) Name lblApiKey
$widgets(1) Text "API Key"
| > > > > | 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 |
}
#
# NOTE: This procedure creates the user interface for this tool using Eagle
# and WinForms. The existing argument data, if any, will be used to
# populate it. There are no arguments.
#
# <internal>
proc setupWinFormsUserInterface {} {
variable argumentData
variable widgets
object load -import System.Windows.Forms
set form [object create -alias Form]
set widgets(0) $form
$form Text "Package Uploader Client"
$form MaximizeBox false
$form AutoSize true
$form add_Closed [namespace code [list handleFormClosedEvent]]
###########################################################################
set widgets(1) [object create -alias Label]
$widgets(1) Name lblApiKey
$widgets(1) Text "API Key"
|
| ︙ | ︙ | |||
1517 1518 1519 1520 1521 1522 1523 |
$widgets($name) Top $top
$form Controls.Add $widgets($name)
incr top [$widgets($name) Height]
incr top $verticalMargin
}
| < < < > | 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 |
$widgets($name) Top $top
$form Controls.Add $widgets($name)
incr top [$widgets($name) Height]
incr top $verticalMargin
}
$form Show
after 0 [list nop]; # NOTE: Needed for the [vwait].
}
#
# NOTE: This procedure creates the user interface for this tool using Tcl
# and Tk. The existing argument data, if any, will be used to
# populate it. There are no arguments.
#
# <internal>
proc setupTkUserInterface {} {
variable widgets
package require Tk
catch {console show}
catch {wm withdraw .}; set toplevel [toplevel .uploader]
|
| ︙ | ︙ |
Modified client/1.0/neutral/pkgu.eagle.asc from [4f01bb03b8] to [b6a3faffdc].
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 iQIcBAABCAAGBQJYXbdYAAoJEFAslq9JXcLZHgkQAK62MY2Dsu6dEALVP2gpsbIC mhRj39TzflavS/Joub1NAKBbkMP2u0MBIe3Gp8xknNmmZvGTlmP7GoSAWcmW2dZn aN3II5Bv4ex7YwNzDp0V7cTiwb+lf0T29rzHABD5aOoHfxJKHM/fzETGzjwe/vxP nJKECIxQ5TqQbWP1VaNT3qCw9FRxEZZHhzy3y6gj73Szvaz9xh9yAD4RIf0WehVV 1cYna8c9ZX9ce+StoSfOpPTuXvkpP1fCiwbRuZ/enDjpP3Zd6QupLyx1R32zeJ8k D8x6kdrZxSKaPhXtZijRn7PDHK+xsb2etBbTkMfCov2lMI9r2NJ1I6SpZBDw0VoD 66I4MpAccY7B98BIAOWNuiWXI4PSIou2UTeFvHG1H96rDjQkLVxvLlv88mYFUZOf 3oGgIDNjctdcNLrI0chFlGH7N2NyG34iDHU6qcjDMXUIDI9IwPge90199cTc2w6X yFf2BeYCDTXdi5RWgpamt9DY60fA6MG/jGzrykY6eMKiW4/vWO1rv2NR3lYZH1lG qxSRxyA06gI3plHkhR+JlZxhqRHr5FKCuCQyIfTmMJEE7LoxYX+K8LNMoscfhWCH d5JImKEQVSNQo4L2/i654uymOBMumIdaVTAT5ojNNv6WlTwE8D952fncszVFI40w +yx3oA5/YVAVD7DP5x/T =BVJm -----END PGP SIGNATURE----- |
Modified client/1.0/neutral/pkgu.eagle.harpy from [db24832c17] to [fabb3f5717].
| ︙ | ︙ | |||
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>9e727675-d3e4-40f6-b818-9e2a344b4c2d</Id>
<HashAlgorithm>SHA512</HashAlgorithm>
<EntityType>Script</EntityType>
<TimeStamp>2016-12-23T23:46:06.0214843Z</TimeStamp>
<Duration>-1.00:00:00</Duration>
<Key>0x9559f6017247e3e2</Key>
<Signature>
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
</Signature>
</Certificate>
|
Modified client/1.0/neutral/pkgu.eagle.harpy.asc from [c112a17590] to [bfb29efb4e].
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 iQIcBAABCAAGBQJYXbdZAAoJEFAslq9JXcLZ2VYQAI5W3dy17KPDmYB3OM6Jncqz lbiZLJZbJwL0lqVeQY0TukNNs9+9aaRiqBml4nX1hqRzLh1vOzqI+4TdYC3Va5X/ Ajwc+D5HSRxWMIrz23fq+gSWEOFuy8fFwI2AgK72dgp3pAPDehW2+DbPqMskT3zu PwNWJPcOPtgIv6CbSR6VqggSJ4j2H8Ssw9kVcwgqgoxrdX8JspJq2qMPz7HKelMa ybGV4Gb5zX1JgI35h+5/gUD50A9NtJK8IV75aexNXvcnPjCNs1+rzhNBnvmhBItj GegbLmJo3zQrlW1aayB06uIs4iMEoIdeDVN1EF/RJvBWpdKrLstHsNC7pTdtIH9c txPX46mWvfQBcS/xhxjB91FpJhmbj/11wNmCpY0giAgV/Uut6mYUPzQZTa17yE07 YQZfW009B4BNj+WyFnDsZz9wVwRiJtkYrx5BTmDr0wAg/ddm2gr6X9ufbr5dyKFA rO4/NeUDyJEPZe5iige1DLMPP5LDj2QhuiUqeWg7Fogk6jpzg1L0h4ZmTFPpC7wz ssn8NiZILne9ziKxMcs2UCRECz4i5hK1QH3f+NZzHQvDAg2DU6GDOJPR1SeE6C3C CfEQCnn2/9aa9HL48pWC0fOG2YxVbOrPlrrSL/Kev7ztY7XEq7yR8uNf8Sgv07qe mkU318WyRa7VKEo/qtsI =a/RZ -----END PGP SIGNATURE----- |