Check-in [331618853a]
Not logged in
Overview
Comment:More work on the package uploader client user interfaces for both Tk and Eagle.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 331618853ac666d2d613efe1a55eabb67d756fda
User & Date: mistachkin on 2016-12-20 03:39:48
Other Links: manifest | tags
Context
2016-12-20
04:35
Tweak several error messages. Stub in the submit button event handler. The end-to-end package submission process needs testing. This especially applies to the package file staging, commit, and repository metadata submission phases. check-in: 424822c8c7 user: mistachkin tags: trunk
03:39
More work on the package uploader client user interfaces for both Tk and Eagle. check-in: 331618853a user: mistachkin tags: trunk
2016-12-19
20:56
Initial work on creating the package uploader user interface using Tk. check-in: 3aee276ab2 user: mistachkin tags: trunk
Changes

Modified client/1.0/neutral/pkgr_upload.eagle from [cc369af556] to [d9d137e8fc].

901
902
903
904
905
906
907
908

























































909
910
911

912
913
914





915
916
917
918
919
920
921
922
923

924
925
926
927



928

929








930
931
932
933
934
935








936
937
938
939
940
941
942
943
944
945
946
947
948
949


950

951



952






























































































































































953
954
955
956
957
958
959
960
961
962
963
964
965



966
967
968


969
970
971
972
973


974
975


976
977
978
979
980


981
982


983
984
985
986
987


988
989


990
991
992
993
994


995
996


997
998
999
1000
1001


1002
1003


1004
1005
1006
1007
1008


1009
1010


1011
1012
1013
1014
1015






1016
1017
1018
1019


1020
1021
1022


1023
1024
1025
1026
1027
1028
1029
      return false
    }

    return true
  }

  #
  # NOTE: This procedure is the command handler for the submit button.  It is

























































  #       used to start the package submission process.  The args argument is
  #       not used, it is a placeholder to make this procedure a more portable
  #       between Tcl and Eagle.  This procedure may raise script errors.

  #
  proc submitEventHandler { args } {
    variable argumentData






    puts stdout "SUBMIT CLICKED"
  }

  #
  # NOTE: This procedure is the command handler for the clear button.  It is
  #       used to clear the package submission data.  The args argument is
  #       not used, it is a placeholder to make this procedure a more portable
  #       between Tcl and Eagle.  This procedure may raise script errors.

  #
  proc clearEventHandler { args } {
    variable argumentData




    puts stdout "CLEAR CLICKED"










    set argumentData(apiKey) ""
    set argumentData(package) ""
    set argumentData(patchLevel) ""
    set argumentData(language) ""
    set argumentData(version) ""
    set argumentData(platform) ""








    set argumentData(fileNames) [list]
  }

  #
  # NOTE: This procedure creates the user interface for this tool using
  #       Eagle and WinForms.  Existing argument data, if any, will be
  #       used to populate it.  There are no arguments.
  #
  proc setupWinFormsUserInterface {} {
    variable argumentData
    variable widgets

    object load System.Windows.Forms



    #

    # TODO: Finish this.



    #






























































































































































  }

  #
  # NOTE: This procedure creates the user interface for this tool using Tcl
  #       and Tk.  Existing argument data, if any, will be used to populate
  #       it.  There are no arguments.
  #
  proc setupTkUserInterface {} {
    variable widgets

    package require Tk

    catch {wm withdraw .}; set toplevel [toplevel .uploader]




    set widgets(label,apiKey) [label [appendArgs \
        $toplevel .l_apiKey] -text "API Key"]



    set widgets(entry,apiKey) [entry [appendArgs \
        $toplevel .e_apiKey] -textvariable [appendArgs \
        [namespace current] ::argumentData(apiKey)]]



    set widgets(label,package) [label [appendArgs \
        $toplevel .l_package] -text "Package Name"]



    set widgets(entry,package) [entry [appendArgs \
        $toplevel .e_package] -textvariable [appendArgs \
        [namespace current] ::argumentData(package)]]



    set widgets(label,patchLevel) [label [appendArgs \
        $toplevel .l_patchLevel] -text "Package Patch Level"]



    set widgets(entry,patchLevel) [entry [appendArgs \
        $toplevel .e_patchLevel] -textvariable [appendArgs \
        [namespace current] ::argumentData(patchLevel)]]



    set widgets(label,language) [label [appendArgs \
        $toplevel .l_language] -text Language]



    set widgets(entry,language) [entry [appendArgs \
        $toplevel .e_language] -textvariable [appendArgs \
        [namespace current] ::argumentData(language)]]



    set widgets(label,version) [label [appendArgs \
        $toplevel .l_version] -text Version]



    set widgets(entry,version) [entry [appendArgs \
        $toplevel .e_version] -textvariable [appendArgs \
        [namespace current] ::argumentData(version)]]



    set widgets(label,platform) [label [appendArgs \
        $toplevel .l_platform] -text Platform]



    set widgets(entry,platform) [entry [appendArgs \
        $toplevel .e_platform] -textvariable [appendArgs \
        [namespace current] ::argumentData(platform)]]



    set widgets(label,fileNames) [label [appendArgs \
        $toplevel .l_fileNames] -text Files]



    set widgets(listbox,fileNames) [listbox [appendArgs \
        $toplevel .li_fileNames] -listvariable [appendArgs \
        [namespace current] ::argumentData(fileNames)]]







    set widgets(button,submit) [button \
        [appendArgs $toplevel .b_submit] -text Submit -command \
        [namespace code [list submitEventHandler]]]



    set widgets(button,clear) [button \
        [appendArgs $toplevel .b_clear] -text Clear -command \
        [namespace code [list clearEventHandler]]]



    pack $widgets(label,apiKey) $widgets(entry,apiKey) \
        $widgets(label,package) $widgets(entry,package) \
        $widgets(label,patchLevel) $widgets(entry,patchLevel) \
        $widgets(label,language) $widgets(entry,language) \
        $widgets(label,version) $widgets(entry,version) \
        $widgets(label,platform) $widgets(entry,platform) \







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



>
>
>
>
>





|
|
|
|
>




>
>
>
|
>

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




|
|
|





|

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




|
|







>
>
>



>
>





>
>


>
>





>
>


>
>





>
>


>
>





>
>


>
>





>
>


>
>





>
>


>
>





>
>
>
>
>
>




>
>



>
>







901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
      return false
    }

    return true
  }

  #
  # NOTE: This procedure is an event handler.  It handles the Changed event
  #       for a text box.  It is not used when the user interface was built
  #       with Tk.  The varName argument is the name of the scalar variable
  #       that must be updated with the contents of the text box.  The sender
  #       and e arguments are provided by the framework and represent the
  #       control involved in the event and any extra data that may be
  #       necessary to process the event.
  #
  proc textBoxEventHandler { varName sender e } {
    set $varName [$sender Text]
  }

  #
  # NOTE: This procedure is an event handler.  It handles double-clicking the
  #       list box in both Tk and Eagle.  The varName argument is the name of
  #       the scalar variable that must be updated with the list of items from
  #       the list box -OR- the list of items from an interactive file picker
  #       dialog.  The args argument, which is only used for Eagle, is a list
  #       containing two elements.  The first element is the control involved
  #       in the event.  The second element is any extra data that may be
  #       necessary to process the event.
  #
  proc listBoxEventHandler { varName args } {
    if {[isEagle]} then {
      set sender [lindex $args 0]
      set e [lindex $args 1]

      set dialog [object create -alias OpenFileDialog]

      $dialog RestoreDirectory true
      $dialog Multiselect true
      $dialog ShowDialog

      set fileNames [$dialog -create FileNames]

      $sender Items.Clear
      $sender Items.AddRange $fileNames

      set list [object create -alias StringList $fileNames]
      set $varName [$list ToString]
    } else {
      set $varName [tk_getOpenFile -multiple true]
    }
  }

  #
  # NOTE: This procedure is an event handler.  It handles the Closed event for
  #       a WinForms form.  It is not used when the user interface was built
  #       with Tk.  The sender and e arguments are provided by the framework
  #       and represent the control involved in the event and any extra data
  #       that may be necessary to process the event.
  #
  proc handleFormClosedEvent { sender e } {
    variable forever; set forever 1; # NOTE: Terminate the [vwait].
  }

  #
  # 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

    if {[isEagle]} then {
      set sender [lindex $args 0]; # NOTE: Disposal.
      set e [lindex $args 1]; # NOTE: Disposal.
    }

    puts stdout "SUBMIT CLICKED"
  }

  #
  # NOTE: This procedure is an event handler.  It handles the clear button in
  #       Tk and Eagle.  It is used to clear the package submission data.  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 clearEventHandler { args } {
    variable argumentData

    if {[isEagle]} then {
      set sender [lindex $args 0]; # NOTE: Disposal.
      set e [lindex $args 1]; # NOTE: Disposal.

      variable widgets

      $widgets(2) Text ""
      $widgets(4) Text ""
      $widgets(6) Text ""
      $widgets(8) Text ""
      $widgets(10) Text ""
      $widgets(12) Text ""
      $widgets(14) Items.Clear
    } else {
      set argumentData(apiKey) ""
      set argumentData(package) ""
      set argumentData(patchLevel) ""
      set argumentData(language) ""
      set argumentData(version) ""
      set argumentData(platform) ""
    }

    #
    # NOTE: This is done for Tk because it will also clear the on-screen
    #       widget itself.  For Eagle, this is necessary because there is
    #       no "listvariable" option and clearing the on-screen widget has
    #       no impact on the underyling list.
    #
    set argumentData(fileNames) [list]
  }

  #
  # 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

    ###########################################################################

    set widgets(1) [object create -alias Label]
    $widgets(1) Name lblApiKey
    $widgets(1) Text "API Key"

    ###########################################################################

    set widgets(2) [object create -alias TextBox]

    $widgets(2) Name txtApiKey
    $widgets(2) Text $argumentData(apiKey)

    $widgets(2) add_TextChanged [namespace code \
        [list textBoxEventHandler [appendArgs [namespace current] \
        ::argumentData(apiKey)]]]

    ###########################################################################

    set widgets(3) [object create -alias Label]
    $widgets(3) Name lblPackage
    $widgets(3) Text "Package Name"

    ###########################################################################

    set widgets(4) [object create -alias TextBox]

    $widgets(4) Name txtPackage
    $widgets(4) Text $argumentData(package)

    $widgets(4) add_TextChanged [namespace code \
        [list textBoxEventHandler [appendArgs [namespace current] \
        ::argumentData(package)]]]

    ###########################################################################

    set widgets(5) [object create -alias Label]
    $widgets(5) Name lblPatchLevel
    $widgets(5) Text "Package Patch Level"

    ###########################################################################

    set widgets(6) [object create -alias TextBox]

    $widgets(6) Name txtPatchLevel
    $widgets(6) Text $argumentData(patchLevel)

    $widgets(6) add_TextChanged [namespace code \
        [list textBoxEventHandler [appendArgs [namespace current] \
        ::argumentData(patchLevel)]]]

    ###########################################################################

    set widgets(7) [object create -alias Label]
    $widgets(7) Name lblLanguage
    $widgets(7) Text Language

    ###########################################################################

    set widgets(8) [object create -alias TextBox]

    $widgets(8) Name txtLanguage
    $widgets(8) Text $argumentData(language)

    $widgets(8) add_TextChanged [namespace code \
        [list textBoxEventHandler [appendArgs [namespace current] \
        ::argumentData(language)]]]

    ###########################################################################

    set widgets(9) [object create -alias Label]
    $widgets(9) Name lblVersion
    $widgets(9) Text Version

    ###########################################################################

    set widgets(10) [object create -alias TextBox]

    $widgets(10) Name txtVersion
    $widgets(10) Text $argumentData(version)

    $widgets(10) add_TextChanged [namespace code \
        [list textBoxEventHandler [appendArgs [namespace current] \
        ::argumentData(version)]]]

    ###########################################################################

    set widgets(11) [object create -alias Label]
    $widgets(11) Name lblPlatform
    $widgets(11) Text Platform

    ###########################################################################

    set widgets(12) [object create -alias TextBox]

    $widgets(12) Name txtPlatform
    $widgets(12) Text $argumentData(platform)

    $widgets(12) add_TextChanged [namespace code \
        [list textBoxEventHandler [appendArgs [namespace current] \
        ::argumentData(platform)]]]

    ###########################################################################

    set widgets(13) [object create -alias Label]
    $widgets(13) Name lblFileNames
    $widgets(13) Text Files

    ###########################################################################

    set widgets(14) [object create -alias ListBox]
    $widgets(14) Name lstFileNames

    $widgets(14) add_DoubleClick [namespace code \
        [list listBoxEventHandler [appendArgs [namespace current] \
        ::argumentData(fileNames)]]]

    ###########################################################################

    set widgets(15) [object create -alias Button]
    $widgets(15) Name btnSubmit
    $widgets(15) Text Submit
    $widgets(15) add_Click [namespace code [list submitEventHandler]]

    ###########################################################################

    set widgets(16) [object create -alias Button]
    $widgets(16) Name btnClear
    $widgets(16) Text Clear
    $widgets(16) add_Click [namespace code [list clearEventHandler]]

    ###########################################################################

    set horizontalMargin \
        [expr {([$form Width] - [$form ClientSize.Width]) / 2}]

    set verticalMargin \
        [expr {([$form Height] - [$form ClientSize.Height]) / 2}]

    ###########################################################################

    set top $verticalMargin

    foreach name [lsort -integer [array names widgets]] {
      if {$name eq "0"} then continue

      $widgets($name) Width [expr {
        [$form ClientSize.Width] - ($horizontalMargin * 2)
      }]

      $widgets($name) Left $horizontalMargin
      $widgets($name) Top $top
      $form Controls.Add $widgets($name)

      incr top [$widgets($name) Height]
      incr top $verticalMargin
    }

    $form add_Closed [namespace code [list handleFormClosedEvent]]
    $form MaximizeBox false
    $form AutoSize true
    $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.
  #
  proc setupTkUserInterface {} {
    variable widgets

    package require Tk

    catch {wm withdraw .}; set toplevel [toplevel .uploader]
    set widgets(toplevel) $toplevel

    ###########################################################################

    set widgets(label,apiKey) [label [appendArgs \
        $toplevel .l_apiKey] -text "API Key"]

    ###########################################################################

    set widgets(entry,apiKey) [entry [appendArgs \
        $toplevel .e_apiKey] -textvariable [appendArgs \
        [namespace current] ::argumentData(apiKey)]]

    ###########################################################################

    set widgets(label,package) [label [appendArgs \
        $toplevel .l_package] -text "Package Name"]

    ###########################################################################

    set widgets(entry,package) [entry [appendArgs \
        $toplevel .e_package] -textvariable [appendArgs \
        [namespace current] ::argumentData(package)]]

    ###########################################################################

    set widgets(label,patchLevel) [label [appendArgs \
        $toplevel .l_patchLevel] -text "Package Patch Level"]

    ###########################################################################

    set widgets(entry,patchLevel) [entry [appendArgs \
        $toplevel .e_patchLevel] -textvariable [appendArgs \
        [namespace current] ::argumentData(patchLevel)]]

    ###########################################################################

    set widgets(label,language) [label [appendArgs \
        $toplevel .l_language] -text Language]

    ###########################################################################

    set widgets(entry,language) [entry [appendArgs \
        $toplevel .e_language] -textvariable [appendArgs \
        [namespace current] ::argumentData(language)]]

    ###########################################################################

    set widgets(label,version) [label [appendArgs \
        $toplevel .l_version] -text Version]

    ###########################################################################

    set widgets(entry,version) [entry [appendArgs \
        $toplevel .e_version] -textvariable [appendArgs \
        [namespace current] ::argumentData(version)]]

    ###########################################################################

    set widgets(label,platform) [label [appendArgs \
        $toplevel .l_platform] -text Platform]

    ###########################################################################

    set widgets(entry,platform) [entry [appendArgs \
        $toplevel .e_platform] -textvariable [appendArgs \
        [namespace current] ::argumentData(platform)]]

    ###########################################################################

    set widgets(label,fileNames) [label [appendArgs \
        $toplevel .l_fileNames] -text Files]

    ###########################################################################

    set widgets(listbox,fileNames) [listbox [appendArgs \
        $toplevel .li_fileNames] -listvariable [appendArgs \
        [namespace current] ::argumentData(fileNames)]]

    bind $widgets(listbox,fileNames) <Double-Button-1> \
        [namespace code [list listBoxEventHandler [appendArgs \
        [namespace current] ::argumentData(fileNames)]]]

    ###########################################################################

    set widgets(button,submit) [button \
        [appendArgs $toplevel .b_submit] -text Submit -command \
        [namespace code [list submitEventHandler]]]

    ###########################################################################

    set widgets(button,clear) [button \
        [appendArgs $toplevel .b_clear] -text Clear -command \
        [namespace code [list clearEventHandler]]]

    ###########################################################################

    pack $widgets(label,apiKey) $widgets(entry,apiKey) \
        $widgets(label,package) $widgets(entry,package) \
        $widgets(label,patchLevel) $widgets(entry,patchLevel) \
        $widgets(label,language) $widgets(entry,language) \
        $widgets(label,version) $widgets(entry,version) \
        $widgets(label,platform) $widgets(entry,platform) \
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
    #
    if {[isEagle]} then {
      setupWinFormsUserInterface
    } else {
      setupTkUserInterface
    }

    vwait forever
  }
}








|



1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
    #
    if {[isEagle]} then {
      setupWinFormsUserInterface
    } else {
      setupTkUserInterface
    }

    variable forever; vwait forever
  }
}


Modified client/1.0/neutral/pkgr_upload.eagle.asc from [5addd55eb8] to [30bded1728].

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

iQIcBAABCAAGBQJYWEkqAAoJEFAslq9JXcLZdYUP/jnr2z23xRXVlN3hNU/fy6Mw
5vsmuracSs2S7KdSCgMl0qRQWuh8i8VhNI/cp9xdfKbZowqV/R7RBSyT/gffXnRz
GAAbvgHH33hpd/IM7qzr5YF2a/skumy3FDNdjvbXsItii6tNNqiCgprSKCuty2a7
rRsxhGPO69jDduyHBGTuCHbKwIrSR4XLIR8U4iKcNTxuhndjuoijRuci+h8Mlr3b
SHpvpBrvLj+WMflzvd8iwj95kp4R8/C2yteYjMM9bPvH+fXlBSFXpjVkOrF/HLhD
ScrZWyaMN/zLYv3scxKYDJ9/t4ZHV43E23ShRdQ0Fmzu5wdvY/fe4But3M09SYkP
K/MVR4cCDF/wEeuZmk1Z1Kb+ZyaDhcTP835eBNzFwmU5sgaTPCGeClcxidzCqsqC
cgj8xrj+RzMw3aoSqI1P2PrryYqoWRmWN3t2ERjHAPrfe0/MsFWCFeUZHxiSfQZM
j606AXxhPhBQ7OuBe8vorQy1tPFkntsbQM4UalGS/Q0MVNsD7hb4+aWMOdw3BqrK
+hzyNal8i5hRdt8tE70cXSpR0E71gLVCZMjWnKIKG2lQyukLsIP02KWNk3UxM+eM
P/dWGeIBz1bsVBghsrvvMCIx/DG9SQRJcjHNQr3b//KCJmJtOMI+46wH8Y/G/2b/
xTFksgyC/vvYgJX3s3BO
=dXzZ
-----END PGP SIGNATURE-----




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

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

iQIcBAABCAAGBQJYWKfkAAoJEFAslq9JXcLZRrUQAMM4co00dvSOk9elI0rDESzR
v+vhj8vQaQe9Ec9MyYydh7ffz+gay3EgjWYNFsQddN+Y12zB2ASJ6ITLefMwyN0G
CP2oeQCkANYyTTdZpncXQV2o3TlS3rNT8p918O2orIsvLGJqfvyUY4Sd28YefJHm
0OYqWiF568/cXlvRhymfD1y6T9VeqxpVcVhQh5jFqYSnSYGITVlImMG6tEAtDH9r
cYRlcbhzqca91KlviOaLCS8kSxMNoueOUEZuCkz8aotroLQpTE2mE38j6e/bFpCW
r5bbebwkxI+gzAyyIw/UcWKp+yF1hqPyZpSVe5FEF4fULpxLK7C5tUFpoXngOG+a
DG4iXoHDS+nG6q4ePyA3GcpbmQzgDQRJrzr6CdnRekqegEvuPlqmQbiFMk3q3jnz
OtlpHdg1gBVAbC6NjJPoYZ3dk9XRsfdL3topnFb9qpNJ4Y0PK4Pqd51vZ5OYAH+u
BbZfhkmkDYAmli5u1xRqQndtQisx6hwJp/VA56slmX/tr0crCHtqrzYa58zKYdeZ
tuulEWPc4+fS1ZyZkoGs975tvr0ZqyR5zmL9l4ro9LB/qJI2p4NOLPoMw2v/jvgA
bIiqqqSPyXvbZZ6z0Ih5kt81gjlgUXfla7Vx2FZZrf90p0ax5PxVPALxCJr87q7x
IefY5AS+gmge1ndLJup7
=U8ox
-----END PGP SIGNATURE-----

Modified client/1.0/neutral/pkgr_upload.eagle.harpy from [539b350fad] to [684b46b7de].

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>95474505-5cf4-4572-b593-a1cdfd6f50e0</Id>
  <HashAlgorithm>SHA512</HashAlgorithm>
  <EntityType>Script</EntityType>
  <TimeStamp>2016-12-19T20:54:43.5341796Z</TimeStamp>
  <Duration>-1.00:00:00</Duration>
  <Key>0x9559f6017247e3e2</Key>
  <Signature>
    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
  </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
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>f1058aa3-4aee-4a6e-8e77-c02427c8201d</Id>
  <HashAlgorithm>SHA512</HashAlgorithm>
  <EntityType>Script</EntityType>
  <TimeStamp>2016-12-20T03:37:46.3251953Z</TimeStamp>
  <Duration>-1.00:00:00</Duration>
  <Key>0x9559f6017247e3e2</Key>
  <Signature>
    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
  </Signature>
</Certificate>

Modified client/1.0/neutral/pkgr_upload.eagle.harpy.asc from [252ff7c776] to [2f34616f4d].

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

iQIcBAABCAAGBQJYWEkrAAoJEFAslq9JXcLZZ5wQAKoI23Hcm50cNiH0J8KY0Ggr
jADQPnG/Uo4x/1Y+ZX0rmSSuguphn513YxiVomKRbfwwUP3hdkwSQFt3tJtbz8Gw
Fpf6af1x/dKDFxDoN4ZGeB0tSeijcCSvFoOAz8bPhAxM6yyTehZ34/u4Lzw5QgKH
a5Hovs8vH8ZNlFZwai2oU34WDSwDnR+h3wMm2cws/OH/ltZUG7NaaA4QbnCcFd1/
6AU1adeGpI0wyRmXH7TcR/0huU2wwjw7JvCU7LF4bS/sUACjKqsR23MpgRI9qwK1
bbBBgvFVujFhHGpwHMQs8xJ7PGFTRyqhpfAAwVBRmZzF8jyJ+lnUHKiUlhkHjbaC
at6OOjOc91q7+pRvKVR6ClNgMOAwDRJFz/dXSQDFofN+DxHJzfZNYVG6rJT6+ThV
Non1nCOB6fESTbv31xbZexlfBmcVpzVC62HfNIP4gvZm9A7qgZMFAYaqkHQYHKNe
1aLR87EzTH7RhWuPVrv4+aCzVj5shy/PJydJtbTHVA9/RJ8SXc+d2A2QEi3KOUOe
LJOs6rfh8f4vRIjJG1Hsi1hc2uaSwqVd5hlWo00LpRXrwq7tDvBKntRQEyCyymot
UI2Cdhuy3/9Xgh7G3x5QbsOqmnNK1239s9tAasYxNLi+3eKgyD1IaYTfmWP/U40y
AAjR3fhJf/gjc29XL6Vm
=KYLK
-----END PGP SIGNATURE-----




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

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

iQIcBAABCAAGBQJYWKflAAoJEFAslq9JXcLZCDIP/1HAupsHCOwmt8+u2yEuc0fI
fZ4uoUWCWyH5rTEA0/jqSVmEm5mbIDv2zegCxu5QwTMBMTBttV/bldl+8DNbOXib
Jmu3kt258qZudTYyKIJvJHf5P5Hgoc2phhkzrIPgwhW5GVAISZnBl2TrZzqgMIfj
0XqmV84158/2MQGLWzbNmtZXzZU5vMiwC51pzTz9pJI5xg6p+N7gozffgJ5Y5N+2
nCeBywpUlHdsMUaJN2QdoxTAPBJId6I0MON/tGt0NY1mfeAO6INs6DLRLC8wS/XE
yB8AYVjClL+6Lth2KlP9/ujws0q2rc4OCuU76XSjLy1d6zYdxhF0PCl7IvnifcMM
ky6EiRnT+8W2/FcZ+wx8kr5D5VOvH9HpdUu/5KrrYtDk1wFOTWX0ZVYtZ/WHWEyY
DJ2IotRGt0NY3xCa+EYjmy29VkxS3tAM4Sbxuoz2P5pdgJqYW+QerCGPfkoRL8Bm
uUFkSxN2YsJm5t1iP6SeRvuGHy6moHS9+Jqq6f8lfEicqavoNS9wXYYKq2KyMtQ0
R4/v9y2NDSN7Oxl1Kx/ew9nidC0mliEW6fIbQnkAWwBCTZVNSxT0wE4HK1Kasd8M
5iiYOYrul7LIsebYYd7U4SWMgpo9Q8dK/UetRWgFbQgIherE7DKPDMVlqvyAdllG
pgzAr2+dpmZsA4NCUim8
=3gG9
-----END PGP SIGNATURE-----