-
Notifications
You must be signed in to change notification settings - Fork 8
/
CHANGES
1006 lines (929 loc) · 48.3 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
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
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
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
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
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
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
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
# ----------------------------------------------------------------------
# This file documents changes for versions 1.x and 2.x.
#
# For more releases in the 3.x series and beyond, please see CHANGES.md
# ----------------------------------------------------------------------
# Note: keep this file in wiki format for easy pasting to the proto-ch wiki
# Note: keep milestone bullets in ticket numerical order for easier
# reconciliation at release time
= GENI Portal Release Notes =
== 2.34 ==
* Fix redirects when project is successfully created. (#1434)
* Fix omni_invocation parsing to mark an error/failed if the aggregate
returns "Error" in return text but not in code (#1134, #1406).
* Clear RSpec selector (paste, file, url, menu) when Jacks delete all or
other jacks topology changes are made (#1246)
* Use only one version of jQuery (2.1.4), jQueryUI (1.11.4), and dataTables
(1.10.7) (#1327)
* Fix bug where new jQuery paths were undefined in tool-jfed (#1426)
* Warn and disable "Reserve resources" if RSpec is bound to unknown AM (#1346)
* Fix problem of exponential delete calls from Jacks delete (#1364)
* Fix get_urgency_color bug, now properly computes time interval for color of resource expiration. (#1387)
* Set max width of map to avoid 0,0 centering issue (#1390)
* Make welcome page responsive with screen width, scale properly on mobile
* Allow SSH to work on ExoSM-allocated resources (#1397)
* Add project lead request handling, user search, and slice search to the admin page.
* Make admin page show table of open lead requests with info about user and field for notes,
with buttons to approve or deny the request. Includes new DB table for the request tracking.
* Make user search tab allow for searching by email, username, or lastname, with links on
each result to contact user, disable user, or remove them from projects.
* Make slice search tab allow for search by owner email or slice urn, with information about
slice, slice lead, its project, which aggregates it has resources at, and its members.
* Addresses (#273, #404, #731, #964, #1059)
* Fix `portal/update-9.sql` to drop the new type first. Include changes in `schema.sql` (#1420)
* On duplicate lead request, clarify text to note profile was updated. (#1422)
* Profile should not say you have no lead requests; it doesn't know. (#1425)
* Add `isManifest` to Jacks app (#1419).
* Fix problem with jacks-app talking to racks rather than ExoSM
for ExoSM-allocated resources (#1401).
* Make ready resources green in Safari (#1436)
* Limit jacks app login polling to max time of 5 minutes (#1439)
== 2.33 ==
* Add dropdown to get logs for a given time period on homepage, slice page,
and project page. (#1318)
* Made CSS responsive to screen width, general CSS improvements (#768)
* Slices tables show next resource expiration for each slice
with color coding, or text indicating the slice has no resources. (#1354, #1384)
* Alerts for maintenance show up on every page (#1375)
* Remove member attributes for other members as the Portal on the
WiMAX page (as in when disabling their WiMAX account cause the
project is disabled). (#1380)
* Only refetch the manifest on details page once after
sliverstatus says ready. AMs with no resources or login
info therefore won't be constantly re-polled. (#1378)
* Be sure to handle status of 'no resources' as terminal.
* When showing resource details / manifests, show something
when no resources were found. And update the overall page status.
Additionally, close the PHP session earlier. (#1365)
* Migrate a few aggregates to the clearinghouse repository
* Do not verify iRODS server cert at all, as it fails on
newer versions of cURL. (#1386)
* Reference a couple pages with explicit '.php' ending.
* See 'Create slice' on project page.
== 2.32 ==
* Clear a session setting in the speaks-for path (#1335)
* Check for expired certificate in speaks-for path (#1336)
* Add a button linking to SAVI on the home page. (#1355)
* Log Omni stderr output in portal_error. (#1376)
* Remove ION aggregate (#1377)
== 2.31 ==
* Add capability to download PuTTY key from SSH profile page (#434)
* Fix search for portal UUID in portal certificate to handle proper cert format. (#1368)
* Change GENI Desktop URL (#1372)
* Add global node to bound sites using "Add Global Node" button on Jacks Editor App (#1351).
* Detect proxy errors when talking to Orbit. (#1373)
* Change wireless button text (#1374)
== 2.30.1 ==
* Restore ability to join a project; `require_once logging_client`. (#1366)
== 2.30 ==
* Migrate some scripts to chapi (see chapi CHANGES file for details)
* Clean up the default Jacks context in `jacks-editor-app.js`. (#1193)
* Refresh until get login info on joint manifest/status page (#1280)
* Rename stale-omni to geni-watch-omni and add man page (#1281)
* Decorate GRE/EGRE tunnels differently (specifically, paint them yellow in
CSS (#1299).
* Remove OBE `sliverstatus.php`. (#1333)
* Remember to remove it from installations.
* Catch errors parsing RSpec in
`jacks-lib:cleanSiteIDsInOutputRSpec`. (#1347)
* Fix typo in slice resource page. (#1348)
* Return genilib.json in omnibundle with user_urn and
member's project info (#1352)
* Change SSH keys on existing slivers when changing members
(only for IG/PG) (#1353)
* Handle case in tool-slices in which the project is expired but
slice is not. In this case, such slices are available through
the projects page (expired projects section) but not in the home
or slices page (#1357).
* Make bin/geni-ch-githash an optional file (#1358)
* Fix `update_user_certs` for PostgreSQL 9.3. (#1359)
* Change assert_email.sh to geni-assert-email, add man page (#1360)
* Add new OVS image to jacks context (#1361)
* Add GEE button to home page (#1363)
* Avoid double polling of sliver status in jacks-app (#1326)
== 2.29.2 ==
* Use `window.open` not `window.location.replace` to launch SSH from
Jacks App. (#1344)
== 2.29.1 ==
* Slice Map Details must close the session to allow AJAX calls in
parallel. (#1343)
== 2.29 ==
* Deprecate Flack (#1219)
* Make the Jacks Add Resources and Slice pages the default. (#1183)
* Add a `Restart` button. (#1044)
* Handle bound RSpecs. (#389)
* Allow (re) binding nodes. (#1100)
* Warn about illegal RSpecs. (#1101)
* Handle partially bound RSpecs. (#1088)
== 2.28.1 ==
* Initialize the certkey variable in tool-jfed to avoid
PHP warning for users with no private key for their outside cert. (#1331)
* Restore Renew function on slice page. (#1332)
* Rename the slice uid javascript variable as slice_uid to avoid conflicting
with jFed and restore setting it.
* Rename slice uid javascript variable for jFed as slice_urn.
* Make Geo View robust to an error getting the manifest from an AM. (#1334)
* On slice-jacks an empty manifest now looks like `<rspec/>`, and these too
should not be given to Jacks. (#1330)
* slice-jacks and slice pages must get only the values from the array
of unique AM IDs, so that javascript gets an actual array. (#1330)
* Ensure RSpecs from Jacks have newlines. (#1340)
== 2.28 ==
* Restrict AMs shown in Jacks editor to only compute aggregates (#1316).
* Remove excessive calls to validate rspec from Jacks editor (#1313).
* Remove duplicate Jacks loads from Jacks editor (#1312).
* Remove site tag when component_manager_id is set, so the true site name
is shown in Jacks (#1317).
* Remove 'Duplicate Node with Links' button (#1320).
* Make site names black not white in Jacks (#1321)
* Remove previous `<ip>` tags when doing
ip_auto_assignment in Jacks editor. (#1319)
* jacks-app-expanded (viewer) adds a 'Back' button (#1310).
* Update status (history and node color) even when manifests come in
after statuses start coming in in Jacks viewer (#1314)
* Prettify RSpecs. Details page, sliceresources
(both request and manifest). (#1252)
* Clean up jacks-add-resources-expand to aid debugging CSS/height
issue for some users. (#1311)
* Remove duplicate aggregates (-a arguments to Omni) for multiple nodes
on same aggregate (#1322).
* Fix Jacks app logic to handle retrying fetching status from AMs. (#1325)
* Update jFed launching to latest launcher code, including support for Java 8
and passing the URN of the current slice (if any). (#1210)
* Remove unused create-rspec.php (#1329)
* Try to remove unused site ID elements and change the ID of other sites to the name. (#1323)
== 2.27 ==
* Progress on #299 and #1120, remove dead code.
* Improve database password handling on map-related scripts (#1253)
* Remove interleaving of status and details in listresources (#1289).
* Fix a number of bugs on jacks views, footers, inconsistent table
formatting, expanded views (#1283).
* Add Duplicate Nodes/Links, Duplicate Nodes only, Auto IP buttons
to jacks editor (#1278).
* Refactor duplicate node javascript to avoid infinite loop over some structures. (#1296)
* Make attribute changes survive auto_ip and duplicate selection (#1309).
* Add Editor Ops buttons to Expanded Jacks editor (#1295)
* Make expanded Jacks editor take context from unexpanded
(and vice versa) (#1292).
* Remove race condition on Jacks editor page load (#1300).
* Highlight name changes in email (#1297)
* Time out calls to stitcher after 45 minutes using new `--timeout` option to stitcher. (#1234)
* Avoid looking at all aggregates when hitting Details button on Jacks
app when there are no aggregates with resources (#1302)
* Pass full context (not just most recent topology change) between
slice-add-resources-jacks and jacks-editor-app-expanded (#1301).
* Give sliverstatus indication on details page ("..refreshing..") (#1307).
* Remove warning on multiple queries on tool-slices/details (#1308).
* Proper indentation of Manifest rspecs on slice manifest page (#1290).
* Configure Omni to use the non-SSL SCS, given python2.6 60 second delay. (#1291)
* Edited the `agg_nick_cache.base`; redo this with each Omni update.
== 2.26 ==
* Handle multi-valued attributes from Shibboleth (#740)
* Add scroll bars and standard canvasOptions/constraints to popup rspec
editors (#1266)
* Add footer, and internal and expanded views for geo map. (#1264).
* Support 'expanded' (much higher, full-width) Jacks viewer and editor (#1233)
* Add missing scrollbar on 'View RSpec' in Jacks. (#1248)
* Support matching on sliver_id for exosm resources status in Jacks (#1231)
* Add CloudLab button to home page tools list (#1263)
* Remove warning about IdP has no affiliation for EPPN
(which is optional) (#1269).
* Add rspec viewer and node selection to rspec viewer in profile (#1237)
* Add aggregate category 'Federated'. (#1239)
* Combine status and details pages, eliminate status buttons (#1043)
* Remove per aggregate Jacks viewer on details page
* Show sliver expiration on combined status/details page (#1107)
* Show/hide raw status on combined status/details page (#1273).
* Align status text and status table header (#1276)
* Decouple showing status from details (make them siblings not
hierarchical) (#1275).
* Clear old status when fetching new status. (#1286)
* Allow leading/trailing whitespace in URL in
slice-add-resource-jacks.js (#1277)
* Check valid URL names and handle URL load errors in
jacks editor app (#1279).
* Limit max size of rspec loaded from URL to 8M (#1282).
* Restore Jacks viewer to sliceresource.php and give it an rspec
scrollbar (#1235)
* Add a Cloud Lab button on the home page. (#1267)
* Remove error_log warning about undefined
get_slice_credential_disable_buttons (#1288)
== 2.25 ==
* Allow for editing RSpecs in the Profile Manage RSpecs page using Jacks
editor. (#1143).
* Name downloaded request rspec with slice name (#1204)
* Add aggregate category 'Experimental'. (#1239)
* Support multiple nodes with same client_id from different AMs in SSH (#1257)
* Support multiple nodes with same client_id from different AMs
for AM API calls (#1258)
* Add a geographic map view of the resources in a given slice. See
the "Geo View" button on the Slice Jacks page. (#1260)
* Update copyrights to 2015. (#1261)
* Support Delete in Jacks App with multiple manifests
(singularly or as a group) (#1265)
== 2.24 ==
* Remove debug printouts in do-edit-slice-member. (#1242)
* Prepare to be runnable without access to emulab.net. (#1251)
* Host the Jacks router.svg locally
* Make the Jacks URL be a value from settings.php
* (Re) make the Flack URL be a value from settings.php
* Jacks Add Resources instructs you to draw or pick an RSpec. (#1249)
* Warn that you cannot reserve where you already have a reservation (static). (#1192)
== 2.23 ==
* Grab latest topology from Jacks before calling validateSubmit from ReserveResources (#1126)
* Restore highlighting of boxes on select (#1190)
* Fix AM table view on slice-jacks (#1187)
* Add view rspec button to jacks app (#1202)
* "Delete All" clears the Rspec and Reserve Resources button in Jacks Editor App (slice-add-resource-jacks) (#1191)
* Fix map view to remove nodes with no lat/long info (#1240)
* Fix handling of delete race-condition (delete returns before manifest
shows deletion) in jacks-app.js (#1241)
* Change tabs on slice-jacks to "Graphical View" and "Aggregate View". (#1238)
* Fix bug that incorrectly formats HTML and sets 'project_id' as a member_uid
in case of changing slice/project membershop (#1242)
* Fix bug that doesn't allow GRAM resources to turn green due to PHP fatal
error around GENI_PENDING scope. (#1243).
* Make the downloaded request and manifest rspec be named with the slice:
<slicename>_<rspec_type>_rspec.xml (#1205).
* On Jacks Add Resources, ensure topology changes are reflected in what is reserved. (#1226)
== 2.22 ==
* Include link to NYU Poly WITest wireless site. (#773)
* Show a proper error message or success message on updating SSH keys. (#973)
* Fix headers in email that your lead request was received. (#1197)
* Fix bug report to print list of aggregates correctly. (#1198)
* Change label for add resources URL entry (#1201)
* Use `email()` function to get user's address, not a `mail` attribute. (#1206)
* Move included files to lib from portal (#1207)
* Handle unknown AM URNs and URLs mroe gracefully. (#1212)
* Exclude users with no public SSH keys from the generated omni_config. (#1215)
* Update Jacks on allocation page (#1216)
* Put radio buttons on left on jacks add resources (#1217)
* Widen URL entry on Jacks add resources page (#1218)
* Handle 'pending' status from OpenGENI AMs. (#1221)
* Handle multiple 'services' tags in an RSpec. (#1222)
* Error check arguments to do-edit-slice-member. (#1224)
* Switch to Jacks stable (#1228)
== 2.21.4 ==
* Lowercase eppn before lookup in speaks-for flow (#1209)
== 2.21.3 ==
* New Jacks icons
== 2.21.2 ==
* Provide a simple Jacks context (#1194)
* Add an `index.php` that redirects to `home.php` to block directory
listing. (#1196)
* Change URL entrypoints for GENI Desktop (#1199)
== 2.21 ==
* Added support for distinguishing bound, unbound and partially bound rspecs. (#1126)
* Added "Jacks beta" buttons and versions of slices.php (slice-jacks.php) and
slice-add-resources.php (slice-add-resources-jacks.php) that handle all creation and management
of topologies by embedding Jacks viewer/editor in PHP portal pages. (#1126)
* When sending email, set charset to utf8 and transfer encoding to 8bit,
so that international characters are preserved correctly. (#1162)
* Extract sliver expiration at FOAM (so OESS), SFA, and GRAM AMs. (#1173)
* aggregates_in_slice only finds one aggregate (#1174)
* Verify the signer of a speaks-for credential before storing it. (#1175)
* getBrowser utility must handle not finding browser version. (#1176)
* Log, validate, and protect temp uploads (#1177)
* RSpec View button is non-responsive (#1181)
* JavaScript reference errors on RSpec viewer (#1182)
* Detect errors in loadXML parsing RSpecs. (#1179)
* Support multi-am RSpecs. Jacks page handles them fully,
main page requires you to pick an AM (a bug). (#1087)
* Correct log event message for allocations to print AM names nicer. (#1184)
== 2.20 ==
* Require unique name for rspecs (#784)
* Poll slice aggregates by default (#1147)
* Update to use Omni 2.7 (support any bound multi-am request,
clicking 'Ready' updates the AM list for 'This Slice'). (#1163)
* Set `useslicemembers=False` in the `omni_config`.
* Default browser named to 'Unknown' to avoid undefined var error. (#1166)
* Send the user's iRODS username to the WiMAX server when
creating an account, if available. (#1167)
* Rename WiMAX as Wireless. (#1168)
* Bug report sending fixes: (#1169)
* Fix spacing so mail readers see the attachment.
* Allow comma or semi-colon separated list of to addresses.
* Avoid polling all aggregates by default (#1171)
== 2.19 ==
* Allow parallel AJAX deletes and renews (#998)
* Use portal styling for OpenID trust page (#1007)
* Add privilege check when requesting to view private RSpecs (#1054)
* Comments and clearer logs when DB inconsistency gives WiMAX errors (#1058)
* Support unicode/international strings in portal (#1069)
* Add comments about new error messages in WiMAX (#1077)
* Handle error 20 (group exists) by treating attempt to create
the group as successful and adding the user to the group
if needed.
* Add a button for launching jFed on the Home, Slices and Slice pages. (#1092)
* Suppress error log when user running Chrome on Mac. (#1156)
* Update to new WiMAX method signatures, error messages (#1093)
* WiMAX user and group names now start with "geni-". (#1094)
* Added new project attribute for the `wimax_group_name`.
* If project/group leads differ and new lead
has no wimax account, add them to the group and make
them lead.
* Handle timeouts better.
* Add/remove of member attributes clears the member cache in ma_client.
* Fork omni/stitcher processes (#1106)
* omni/stitching calls from create_sliver run asynchronously
* Keep temporary files after creating slivers
* Add bug reporting feature
* Store request RSpecs (#164)
* Show request RSpec used in a slice (#165)
* Store manifest RSpecs (#225)
* New tabbed results page shows logs of allocations
* Go back to view previous allocation logs/results via link in
"Recent Messages"
* Per-node results show long-form name of AM for stitching requests
* User-friendly error message shows when an error occurs due to the
tool (#1131)
* omni invocation related files are referenced by constants (#1132)
* Results page shows aggregate managers' long form names
* Results page includes Jacks viewer of manifest RSpec
* Some support for SpeaksFor
* Bug/problem report page text updated via discussions with
experimenter support group
* If user in the project is disabled, remove them from the WiMAX group (#1124)
* View RSpecs using Jacks viewer on `Manage RSpecs` page. (#1127)
* Display project URN on project page (#1142)
* Ensure all `img` tags are properly closed. (#1145)
* Disallow WiMAX group lead from deleting their WiMAX
account while they still lead some other WiMAX group. (#1151)
* Correct error message on uploading an RSpec but not picking an AM,
and trying to reserve resources. (#1152)
* Fix renewal at many aggregates (#1155)
* Fix typo in user.php `getInsideKeys`: `INSICE` should be `INSIDE`. (#1157)
* Fix WiMAX auto-adding a new lead to their group, to use the real user
object if the new lead is the current user. (#1158)
* Add breadcrumbs to the Edit SSH Key page. (#1161)
== 2.18.1 ==
* When displaying a stitching RSpec, do not filter results by AM. (#1130)
* Show the text of any Omni or Stitching error coming
in stderr to the user to explain any failure. (#1131)
== 2.18 ==
* Add Resources: changing RSpec resets AM (#1108)
* Add Stitching Allocate Resources Interface (#581)
* Use stitcher to do all Omni calls, including adding a new
`stitcher_php` to invoke it.
* Refactor `slice-add-resources` to use a table for display
* Disable `Reserve Resources` until you pick an RSpec
* Include `Manage RSpecs` as a tab on the `Add Resources`
page. (#412)
* Add searching and sorting to `Manage RSpecs` (#228, #467)
* Warn that the Raw status link refetches status. (#764)
* Mention 'manifest' and 'xml' on Details page. (#475)
* Cleanly redirect to the referer on the KM activate page,
avoiding attempting to construct a relative URL from an
absolute URL. Additionally, check the path when constructing
a relative URL to make sure we construct something
relative. (#1110)
* Explain what RSpec name and description are. (#420)
* Link to the GENI Glossary to explain project and slice roles. (#558)
* Change subject on project join request email (fix grammar). (#1083)
* Warn on missing slice name to createslice. (#1028)
* Allow specifying the "site" for GENI Desktop (stable vs ....). (#1113)
* Add various DB constraints (not null, unique, foreign key, primary key)
so that the database enforces known relationships. (#943)
Additionally, index sa_slice_member(slice_id),
pa_project_member(project_id), pa_project_member(member_id)
as some queries that showed up as slow improve with these indices. (#1081)
* Rework `stale-omni` to search also for `stitcher_php`, and take `-m`
to change the # of minutes before it is stale, default 12. (#1114)
== 2.17.1 ==
* Allow the OpenID WiMAX username attribute to be wimax/wimax_username. (#1097)
== 2.17 ==
* Add indices on logging_entry, logging_entry_attribute,
ma_member_attribute, sa_slice_member (CHAPI #311)
* Automatically retrieve Ad RSpecs from AMs (#721)
* Handle expiration time properly from GRAM AM (#1061)
* Added scripts to support archiving db tables (#1071)
* Fix grammar and a typo in certificate renewal (#1072)
* Update LabWiki URL (#1073)
* Use pushstate history for profile tabs (#1074)
* Update to omni 2.6 (#1078)
* Renamed generated SSH keypair filename in omni bundle
if it would conflict with another file in the bundle. (#1063)
* Remove dependence on pg_manifest field of sliver status (#1084)
* Fix link on login-help page to point to new password reset page. (#1056)
== 2.16.7 ==
* Update the LabWiki URL (#1073)
== 2.16.6 ==
* Fix for slice page not defaulting to This Slice on Safari (#1067)
== 2.16.5 ==
* Band-aid for sliver status failure. Partial fix for (#1000)
== 2.16.4 ==
* Fix bug on slice page where the date picker would reset to the default date. (#1064)
== 2.16.3 ==
* Put up an Orbit logo on the WiMAX page for people to use their new WiMAX account. (#1062)
== 2.16.2 ===
* Fix a timeout bug by increasing buffer and decreasing sleep (#1060)
== 2.16.1 ===
* Enable the WiMAX page for all users. (#1015)
== 2.16 ==
* Allow editing RSpec properties (requires DB update). (#226)
* Revamped slice page with all new table of aggregates to act on and
action buttons only on that table. (#1038)
* Slice page: actions on selected aggregates only (#958)
* Support selecting aggregates where the slice has resources (#762)
* Implemented `Add` button per aggregate on slice page (#1042)
* Made a few fixes to the slice page (#1047)
* Added `Renew Slice and Known Resources` to slice page (#1048)
* Updated text under `Slice Members` on slice page (#1050)
* Fixed issue with table-level calendar showing under other elements (#1057)
* Fix insecure content warning on profile page (#1026)
* Added Hide option for `Raw Resource Specification` on listresources (#1030)
* Fixed php errors on listresources and slice pages (#1031)
* Remove problematic mail headers (#1039)
* Update dragon.maxgigapop SSL cert (again). (#1040)
* Change WiMAX base URL (#1045)
* Make project names and ids match on wimax enable page (#1049)
* Cleaned up Jacks Viewer implementation on listresources (#1051)
* Rename omni-bundle.zip to omni.bundle (#929)
* Fix variable name in WiMAX error messages. (#1053)
* Join a Project table must be sortable, searchable (#93)
== 2.15 ==
* Display OpenID URL on profile page (#290)
* Backend changes to support managing aggregates on slice page (#339)
* Ensure that operators and non-operators get the kmactivate page
when in maintenance mode and tool is deauthorized (#944)
* Assure cleanup of tempfiles from invoke_omni_function (#978)
* Ensure that new user registrations is not allowed during
maintenance (#965)
* Make default project match link on manual omni config page (#1005)
* Allow new users to activate via OpenID (#1029)
* Update dragon.maxgigapop SSL cert (#1033)
* Remove disabled users from geni-ops-report (#1037)
== 2.14 ==
* Use proc_open not popen to spawn omni calls, allowing us
to watch the output and timeout long running calls. Current timeout
set to 12 minutes. Be sure to propagate the 'failed' message back
to client calls when the call times out. (#863)
* Add a `New to GENI?` link on landing page (#994)
* Remove obsolete scripts (#999)
* Add Jacks viewer to details page (#1011)
* Update ION AM SSL certificate (#1012)
* Add beta Jacks RSpec editor for adding resources. (#1013)
* Use HTTPS URLs for map data to avoid mixed content warning (#1014)
* Avoid busy waits and failing to read all output from spawned Omni
calls. (#1016)
* Remove old non-AJAX listresources call from details page. Only call
it once. (#1017)
* Refactor listresources so that only one call is made and Jacks is
shown by defualt. (#1020)
* Remove PUBLIC_KEYs from DETAILS_PUBLIC (#1021)
* Incorporate xml-signer 0.7 (#1022)
* Update wording on join project page (#1023)
* Update wording on SSH keys page (#1024)
* Changed listresources page to allow multiple Jacks windows (#1025)
* Allow multiple Jacks canvases on the list resources page (#1027)
== 2.13 ==
* Provide UI for renewing certificates (#241)
* Remove slice expiration from sliver renewal entry (#1010)
== 2.12 ==
* Delete temporary km files (#979)
* Emails sent from portal on behalf of experimenter need
the from address quoted, specifically where the name of the
experimenter is an email address because no better name
is available. (#988)
* Show each GENI site on map (#995)
* Remove unused readyToLogin page (#996)
* Delete unused script geni-renew-slice (#997)
* Install new GENI Desktop certificate (#1001)
* Avoid errors generating Omni config for users with no project (#1002)
* Quote RSpec name/description in RSpec upload error messages (#1003)
== 2.11 ==
* Quiet debug output in KM (#981)
* Explicitly use the inside cert/key when launching Flack (#982)
* Update GENI citation policy on account activation (#983)
* Add GRAM aggregate (#984)
* Add expiration column to certificate tables (#985)
* Update to latest iRODS server cert (#986)
* Fix occasional flack loading errors (#987)
* Add 2nd GRAM aggregate (#989)
* Use an overlay to help speaks-for flow (#991)
== 2.10.1 ==
* Fix tool-omniconfigure for downloading just your Omni config
file to preserve the requested version number in the URL,
allowing you to get a config file for Omni 2.5. (#980)
== 2.10 ==
* Support service attributes in portal and database (#968)
* Pass the `--alap` option to omni calls
(requires Omni 2.5) (#969)
* Use explicit time zone in renew dates (#971)
* Pass a default MA to the xml-signer tool (#972)
* Use the chapi framework / interface from Omni 2.5. (#974)
* Use the gcf configured agg_nick_cache.base
(we should update it as needed)
* Hard codes the CH URL based on the authority name
* Fix the gcf logging config to allow debug logs to the log file
* Have omni-bundle.zip and omni_config include ability to use chapi (#975)
* Have Details page querying aggregates one at a time (#465)
== 2.9 ==
* Remove hardcoded URNs (#10)
* Add mailto link for help on error-text page (#921)
* Undo changes that caused a logout on insufficient attributes (#939)
* Allow anonymous RSpecs (#957)
* Support speaks-for in logging API (#966)
* Support Federation API v2 (#967)
== 2.8 ==
* Ensure max date in slice renew datepicker is by project
expiration not slice expiration. Also, make project expirations
with no time be end of day not beginning. (953)
* Use the new Flack loader to run Flack (955)
* On slice page, warn when acting on all aggregates (959)
* Update copyright in tool-aggwarning.php (960)
* Show project and slice names in proper case (961)
* Eliminate HTTP_HOST from map files by using relative URLs (962)
* Add confirm dialog when renewing resources on a slice (963)
== 2.7 ==
* Add text box to project bulk add page (#516)
* Add iRODS username and zone to OpenID data exchange (#937)
* Remove unnecessary reliance on a global variable (#917)
* Handle case where someone invites another person to join a project twice (#380)
* Update copyright notices to 2014 (#945)
* User is caller of log service in most cases, not portal (#568)
* Update to latest iRODS server cert (#947)
* Fix URN of ION AM in Service Registry (#948)
* Code cleanup in handle-project-request: (#926)
* Check requests are valid, user not already in project, no duplicate requests (#410)
* Support multiple requests on one page (#376)
* Add an Ignore option
* Add optional text for emails to added or rejected requests (#876)
* Change logging service calls to not pass the author account id. (#951)
* Cache the portal's UID and avoid looking up the member name for that UID
since that will fail. (#951)
* Optimize queries of the clearinghouse by consolidating redundant
calls and use some new custom calls. (#912)
* Requires an update to the CS database to simplify project/slice
permissions
* Use new more efficient queries for looking up member login
information and getting both public and identifying member
information at once.
* Simpler permission model means fewer permissions to look up
* Comment out debug error_log when querying empty list of UIDs (#954)
== 2.6.2 ==
* Calling CHAPI use cert and key straight from DB, without openssl conversion
that drops cert chain. (#931)
* Remind people to restart apache after changing privileges (#933)
* Label download whether the cert was portal generated (#840)
* Removed obsolete PHP files. Applying this upgrade requires running
tools/cleanphp.sh (#898)
* Enforce maintenance mode on all portal pages (#934)
* Say more when user logs out of portal about IdP sessions (#938)
* When the IdP doesn't provide EPPN and we redirect, also log the
user out from the portal so they can pick a different IdP. (#939)
* Move slice membership table above AM list (#819)
* Fix redirect to KM if portal is not authorized (#940)
* Set bulk headers in automated emails (#871)
* Avoid looking up null member IDs and do not redirect on error
looking up member names. (#935)
* Organize slices by whether I'm lead (#710)
* Don't impersonate user email (#879)
* Parametrize Flack URL (#941)
* Disable most buttons on an expired project (#897)
== 2.6.1 ==
* Fix displaying email address in handle project request (#915)
* Ensure scripts validate inputs, print something on success (#914)
* Fix OpenID server (#917)
* Clean up options in geni-enable-user and geni-disable-user (#918)
* Clean usage in scripts (#919)
* Add a missing copyright (#920)
* Add ION aggregate (#922)
* geni-foo-member-attribute scripts should use the MA API (#923)
* Ensure geni-* scripts are installed (#924)
* Add GPO lab dev server CA cert (#925)
* Handle error returns in geni-enable-user and disable-user (#927)
* Check if join project request is still pending before processing (#936)
== 2.6 ==
* Split out the clearinghouse implementation into the new `chapi`
repository. That new clearinghouse implements the
[http://groups.geni.net/geni/wiki/UniformClearinghouseAPI Uniform
Federation APIs] and uses XML-RPC over SSL instead of S/MIME, but
otherwise retains the funtionality of the previous clearinghouse
server. To support this change, the `*_client` library functions have
been re-written, but the portal UI pages remain largely
unchanged. From here on, this repository and release notes cover
only the portal client.
* Ensure WiMAX givenname is non empty (#885)
* Clean up the email on handling a project join request (#881)
* Check for valid project_id in do-handle-project-join-request (#886)
* Use convert_boolean when checking a boolean DB value (#888)
* Remove cruft line from kettering-ig-of cert (#890)
= GENI Portal and Clearinghouse Release Notes =
== 2.5.1 ==
* Send only current projects, not expired, to GEMINI (#887)
== 2.5 ==
* Improve error reporting in geni-revoke-member-privilege (#853)
* Quiet a debug printing rspecs (#858)
* In WiMAX, handle user swith no sn or givenName. Also fix a logic error
causing projects to seem not WiMAX enabled. (#859)
* Slice names are now unique only to the project, since ProtoGENI
made a fix (#433)
* Refer to scripts without the .py extension (#862)
* Undefined index when generating a cert from a bad CSR (#870)
* Add language to discourage people from randomly trying to join
unknown projects, and to discourage leads from adding them. (#875)
* Avoid double registration: do-register checks for existing account (#864)
* Sort projects on home page and projects page by name (#873)
* Add language to clarify who can be a project lead and what the
responsibilities are when requesting to be a lead. (#877)
== 2.4 ==
* Fix geni-revoke-member-privileges script (#716)
* Quiet some logging in printing rspecs (#836)
* Rearrange Profile tab (#812)
* Remove debug log message in OpenID server (#828)
* Remove "Manage RSpecs" button from profile tab and improve
headers and links on RSpecs page(#810)
* Clearing or extending project expiration now un-expires the
project if applicable. (#841)
* Fix revocation of operator privileges (#668)
* Make slice member names be mailto links on slice page (#538)
* Add project expiration time in the slice view (#838)
* Added SSL tab to Profile page with the ability to generate or
download your SSL certificate (#708)
* Limit slice renew request to project expiration time (#839)
* Remove account request pages (#837)
* iRODS Support: Enable iRODS page for all users.
Create an iRODS group for each new project. When
adding/removing a project member, add/remove them from the iRODS
group. When loading the iRODS page, ensure there is an iRODS group
for each non-expired project. If the group gets created, all
project members are added to the group. If the group existed and
this user just got an iRODS account, add them. Note that this adds
some delay in creating projects or adding/removing members from
projects. (#829, #830, #831, #832)
== 2.3 ==
* Remove note feature from projects and slices (#728)
* Add LabWiki buttons (#825)
* Add WiMAX OpenID support with new attribute
http://geni.net/wimax/username (#809)
* Clean up OpenID logging and sessions (#670)
* Pass slice and project info via OpenID attribute exchange (#813)
* Fix geni-remove-from-project script (#715)
* Fix creation/deletion timestamps in monitoring (#817)
* Fix up link selection when printing rspec (#818)
* Alphabetize member lists for project and slice (#811)
* Show one big "Login" box for exogeni consistent with instageni (#823)
* Add instructions for naming on create slice page (#821)
* Renew a slice for the end of the day. Slivers to not past the
(new) slice expiration, else end of the requested day. (#796)
* Support more integration with WiMAX: Use new URL (#771), allow
users to change the project they use with WiMAX (#774), handle
duplicate usernames (#776), support the agreed upon error codes
(#777), allow deleting group members - like when they are removed
from a project (#805), allow deleting groups (like when the
project is expired or the project lead no longer endorses using
WiMAX with the project (#806), allow project leads to enable
multiple projects for WiMAX (#807), and suport changing the lead
of a project (#808). For all these cases, the changes take effect
when a project member - preferably the new project lead - loads
the WiMAX page. Note that the WiMAX button remains limited
visibility.
* Make the 'Generate SSL cert' button open in a new tab (#822)
* Handle error getting openid AX request (#827)
== 2.2 ==
* Display fingerprints of SSH keys (#695)
* Added version information to GENI portal (#789)
* Comment out call to error log in MA causing PHP warning (#790)
* Change some mail links to [email protected] (#572)
* Find owning aggregate using sliver_id for manifest (#712)
* Project admins are made admins of newly created slices (#559)
* Email experimenters when they request to be a project lead (#760)
* Use code format for sample .irodsEnv file (#744)
* Be more careful checking XML when printing RSpec (#791)
* Put a refresh button the sliver status page (#451)
* Show something for ExoGENI hostnames in details page (#767)
* Remove 2 more uses of slice-member.php (#328)
* Clean up temp files (#383)
* Fix company name in copyright on footer (#793)
* Password hash in account requests is quoted more succinctly (#795)
* Fix "already a member" message to include member and project names instead of id numbers (#617)
* Check if slice is expired before querying for status (#675)
* Alphabetize slices in slice list (#788)
* Comment out a debug (#798)
* Log if the pretty RSpec printer is skipping a node as not for this AM (#803)
* Handle bulk upload file with 0 valid email addresses (#802)
* Use the word "Portal" on the portal landing page (#733)
* Reconcile the use of the phrase "omni-bundle" (#752)
* Rephrase Omni Configuration instructions (#753)
* Label private and public rspecs in list and alphabetize (#761)
* Add GENI usernames to header and make more prominent on Profile page (#797)
* Update gcf to 2.4 final (#794)
== 2.1 ==
* Revise handling of Google Analytics (#742)
* SSH public key from downloaded pair filename should end in .pub (#681)
* Mark uploaded RSpecs as private by default (#421)
* Handle malformed XML in RSpec upload (#720)
* Remove unnecessary host reference (#755)
* Output account request passwords in monospace font (#732)
* Show project page to members only (#727)
* Remove hardcoded hostnames in openid configuration (#287)
* Update the supported gcf release to 2.2.1-threaded-ticket313 (#746)
* Add new GPO development hosts to utility scripts (#745)
* Allow case-insensitive upload of member email addresses (#713)
* Fix sliver status page (resource status) (#429)
* Update portal to gcf 2.4 (#392)
* Remove custom pgch and use standard version from gcf (#347)
* Ensure that only leads and admins can edit slice membership (#533)
* Update member lookup by EPPN for new CH API (no ticket)
* Make order of aggregates consistent (#478)
* Fix redirect to InCommon Federated Error Handler (#778)
* Update aggregate location data for map (#780)
* Add additional validation checks to RSpec upload (#781)
* Add additional aggregates for internal testing (#779)
* Take out links to slice-member page which is not informative and
often forbidden (#538)
== 2.0 ==
* Fix Google Analytics string to be a global variable (#743)
* Remove obsolete settings file (#741)
* Add Resources page should include tool-showmessage (#738)
* Fix minor bugs in new portal CSS (#737)
* Don't install ad RSpecs and map.php (#736)
* Fix glossary to link to Trac wiki (#703)
* Fix copyright notice in map.php (#735)
* Add a script to check account existence (#700)
* Remove fake slice and project email addresses (#729)
* Create GENI resource map for monitor display (#734)
* Update the portal's CSS (#717)
* Add Google Analytics functionality (#718)
* Make button-like things be buttons (#175)
* Create interactive map of resources (#28)
* Fix Slice/Project Membership functionality according to feedback (#496)
* Enable VERIFYHOST in put_message (#660)
* Add script to add an arbitrary attribute to a user (#701)
* Change "Resource Specification" to RSpec on Profile and Add
Resources pages (#707)
== 1.9.6 ==
* Add ExoGENI FIU and UH racks to service registry (#714)
== 1.9.5 ==
* slice expiration shouldn't pick a date past project expiration (#614)
* Fix tracebacks in omni_php.py when creating a sliver fails (#649,#321)
* wimax-enable.php should not check for certificates (#689)
* Undefined variable in tool-expired-projects (#687)
* pgch logs something with each CH call (#697)
== 1.9.4 ==
* Log when someone tries to download their outside cert (#699)
== 1.9.3 ==
* Re-enable pgch threading with fixes (#690)
== 1.9.2 ==
* Disable pgch threading until it works (#690)
== 1.9.1 ==
* GMOC reporting fix (#688)
== 1.9 ==
* load balancing pgch (#650)
* WiMAX integration (#484)
* Extend default and max slice expiration (#636)
* Verify OpenID username (#289)
* Improve OpenID page flow (#288)
* Fix call(s) to modify_project_membership in pa_client.php (#665)
* Move cainfo.html (#642)
* Fix OpenID for GIMI (#661)
* Add pa_project_attribute table (#656)
* Allow for download public SSH key (#655)
* undefined variables in amstatus with am_id (#648)
* Login information is wrong in multi-user slices (#645)
* Save error Omni results (#444)
* Fix sa_url in tool-omniconfig.php (#643)
* Fix warnings in gemini.php (#641)
* Fix link to SignMeUp (#653)
* Include email address in account change request emails (#626)
* Check permissions and remove dead code in do-edit-project (#666)
* SA/PA merge including... (#540)
- Ensure SA/PA methods all have guards or we warn why not
- Hide Update Project button if user not permitted
* CS logs if it authorizes an action only cause you are an operator (#397)
* Apply guards to more SA and PA methods (requires CS update-5.sql) (#502)
* Remove a debug printout in rspec upload (#663)
* Warn about project lead policy (#630)
* Fix path bitrot in GMOC slice reporting (#669)
* Clean up bulk invite email (#529)
* Handle names with commas when sending email (#629)
* Handle various newlines in bulk add file (#584)
* Emails from experimenter bounce back to experimenter. (#409)
* Check user entered emails - both sanitize and validate them. Warn
experimenter about any that are skipped. See EG invite-to-project,
invite-to-geni, ask-for-project. (#409)
* Pages that take a bunch of emails clarify how to separate
addresses (space or newline or comma). (#405)
* Lookup existing users with case insensitive email in bulk add (#646)
* Allow creating / looking up an iRODS account based on your portal
username (#640,#673)
* Update InCommon privacy policy (#654)
* Only show nodes and links from current aggregate on Details (aka
manifest) page (#605)
* Change API methods for getting user keys (#644):
- Split lookup_ssh_keys into two calls: lookup_public_ssh_keys and
lookup_private_ssh_keys
- Make sure that only the current user can call
lookup_private_ssh_keys for themselves (not portal, not another
user). This is in addition to the protections done in the MA
itself.
- Fix a bug in sshkeyedit that didn't handle lists of keys
(assumed only one).
* Ensure Gemini page sends both private and public SSH keys (#674)
* Use the SA not the PA from pgch (#676)
* Restore missing valid_expiration method - could not set an expiration on a project (#677)
* Edit SSH key result message printing wrong (#678)
* Delete SSH key result message cleanup (#679)
* Suppress RSpec logging (#680)
* Show links for current AM on aggregate page (#682)
* Filter nodes and link for current AM on createsliver page (#683)
* Name 1st WiMAX SSH key sshpublickey (#684)
* Ensure success detected on WiMAX page (#685)
== 1.8.1 ==
* Modifications to KM tool and user to make sure EPPN's
are uniformly lower case (so that IDP's that provide mixed-case match)
== 1.8 ==
* Portal website refers to incorrect 'footer.php' file (#633)
* Use a tempfile for list of members on import db (#632)
* Handle no-key/no-cert case in update_user_certs (#631)
* Fix GEMINI ssh private key data (#628)
* Fix OpenID service registry error (#618)
* Conditionalize display of the generate ssh key button (#625)
* tools-admin.php is fake (#539)
* Update GEMINI integration (#623)
* gemini.php is issuing PHP warnings (#619)
* Modify the "Join the project" default email text (#616)
* Fix email bounces in do-handle-project-request.php (#611)
* Add login information for multiple users (#510)
== 1.7.1 ==
* Add `do-handle-project-request.php` to Makefile.am (#609)
* Month in expiration date should be incremented by one (#610)
== 1.7 ==
* Added an HTML index page for clearinghouse hosts (#595)
* Removed obsolete create_standard_services.sh script (#587)
* Add a "delete" ssh key button to Profile page (#542)
* Call setClientCert with an array instead of a string (#592)
* Add GEMINI button(s) to home page (#602)
* Add project info to GEMINI data (#585)
* Add ssh keys to GEMINI data (#604)
* Update OpenID for portal.geni.net (#594)
* List of project in download omni bundle should only include active projects (#554)
* On new project page, note showing that name of lead is public (#469)
* Have raw manifest appear in a separate window/tab/popup (#520)
* New project lead email had broken link (#593)
* New project lead email sometimes had blank for name (#521)
* Add timestamps to pgch logs (#398)
* Script to delete an outside cert (#601)
* Update user certs script dies if a user did not enable the portal (#606)
* Revamped Slice and Sliver renewal (#603, #126)
* Add a note that slice member keys/accounts will only be added via the native portal resource reservation mechanism (#596)
== 1.6.2 ==
* Handle EPPNs as case-insensitive strings (#597)
== 1.6.1 ==
* Import databascript was losing non member log messages (#589)
== 1.6 ==
* Add more bin scripts to install (#569)
* portal_enable_abac controls all use of ABAC - so all disabled now (#556)
* update_user_certs script updates the ma_outside_cert table for DB transition (#564)
* Add missing copyright (#576)
* Change member IDs when importing to new DB. And make a file of emails of people who had outside certs. (#577)
* Re-enable some functions in maintenance mode for operators (#579)
* Fix Accept Project Invite breadcrumbs (#582)
* Add cainfo.html (#578)
* Install 2 cs / lockdown sql files (#586)
== 1.5 ==
* Fix error return on renewslice error in pgch (for omni/Flack) (#555)
* Remove some hardcoded URNs (progress on #10)
* Clean up page to accept project invitations (#530)
* Sign experimenter data message to GEMINI (#560)
* Remove use of /bin/hostname in scripts & code (#354)
* Fix a DB authentication bug in geni-add-trusted-tool (#505)
* Clean up make install to avoid ~ and # files (#488)
* Install operator scripts in /usr/local/bin on portals (#499)
* Add `authority` field to omni-bundle and template omni_config (#551)
* Update certificate creation instructions to match omni-configure (#552)
* Make omni-bundle download be the same regardless of the number of projects (#566)
* Clarify wording on user cert generation page (#567)
* Implement 'sundown' mode that forces slices to expire by a
configured date (i.e. June 17, 2013) (#548)
* Implement 'lockdown' mode that makes most operations read-only, to
be enabled around June 5, 2013. (#547)
== 1.4 ==
* Check for valid arguments in more spots (#5)
* Ensure more methods have guards, and log on failed authorization (#501)
* Added sbin/renew-certs script to renew service certificates (#507)
* Add support for GetVersion in pgch (#492)
* Add a revoke privilege script (#549)
* Fix up revoking project lead and operator privileges (#550)
* Bug fix for changing project leads (#512)
* Fix Changing Slice leads (#537)
* Quiet debug printouts (#531)
* Enable preliminary support for data handoff to GEMINI (#503)
* GENI IdP login formats strange on GEC16 tutorial VM (#452)
* On portal login page, add link to GPO IdP account request form
(#487)
* Implement a maintenance mode to lock out users during maintenance (#485)
== 1.3.1 ==
* Add a missing copyright (#544)
== 1.3 ==
* Start a CHANGELOG (#489)
* Clearinghouse
* Clean up privilege table (#493)
* Portal