-
Notifications
You must be signed in to change notification settings - Fork 88
/
CHANGES
1321 lines (1263 loc) · 65.1 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
See document FEATURES for canonical list of features.
From 2.5 to 2.6
...............
o Inline JPEGs are supported.
o mailto URLs are supported.
o Improved Usenet support, including threaded newsgroup listings and article
posting.
o Common Client Interface now supports POST to server, SEND
BROWSERVIEW and QUIT browser protocol functionality.
o PostScript printing and saving optionally includes URL and page number as
page header.
o Minimal group annotation support. Set the annotationServer resource
to the URL of your CGI annotation server.
o The URL text field is now editable. Pressing Enter within the text field
causes Mosaic to open the displayed URL.
o Load to local disk can now be activated on a one-time basis by holding down
the shift key while clicking on a hyperlink.
o HTTP header Referer now contains a document's parent URL (for hyperlinks
that are clicked-on with the mouse pointer, only). NCSA httpd 1.4 can log
the Referer field.
o HTTP header User-Agent now uses a slightly different format, for
consistency with other platforms:
User-Agent: NCSA_Mosaic/2.6 (X11; SunOS 4.1.3 sun4m) libwww/2.12 modified
o resource *maxNumCCIConnect added to restrict number of cci clients
communicating with the browser.
o comment card for user survey introduced in this version.
o Added additional entity support
o On reload, added support for a cache proxy. If resource
reloadPragmaNoCache is set, Mosaic will send an additional header notifying
proxy not to use cache.
o Added support for older NNTP servers.
o Code has been Saber tested.
From 2.4 to 2.5
...............
o Added Common Client Interface (CCI) support.
o Added X resource cciPort and command-line flag -cciPort.
o Mosaic creates the file $HOME/.mosaiccciport listing the active
CCI hostname and port number in the form host:port.
o Added nested hotlists, with Copy, Insert, Up, Save, and Load options.
(thanks to Gilles Bourhis).
o Hotlists are now stored in HTML as nested unordered lists.
o Binaries are now linked with the latest, greatest, HDF (Hierarchical
Data Format) library.
o Added -kiosk command-line flag and Boolean X resource, kiosk.
o Also added -kioskNoExit command-line flag and Boolean X
resource kioskNoExit for kiosk mode without the close button.
o Added defaultFontChoice X resource.
o Added experimental editor hook to File menu.
o Added editCommandUseXterm resource.
o Added child signal handler.
o For security reasons, changed /bin/rm system calls to unlink().
o Added limited HTML table support.
o Added support for HTML <SUP>superscript</SUP> and <SUB>subscript
</SUB> tags, allong with supSubFont X resource.
o Forms may now have multiple submit buttons by including a NAME
attribute in INPUT elements of type SUBMIT.
o Fixed comment parsing, so that HTML mark-up can exist inside
comments. Comments should begin with <!-- and end with -->
o Mosaic no longer displays text inside the <HEAD> section of an
HTML document.
o Added <U>underline</U> support.
o Fixed case-sensitivity forms bug.
o Fixed some forms core dumps
o More verbose error messages
From 2.3 to 2.4
...............
o Fixed really embarassingly dumb bug that made widgets names appear
next to toggle buttons on forms.
From 2.2 to 2.3
...............
o Fixed security bug in telnet URLs.
o Fixed bug with dithered images inverting on some displays.
o Fixed bug with non-direct-WAIS clients core dumping on WAIS URLs.
o Fixed bug with uninitialized gatewayed for proxy gateways.
o Fixed memory overrun in PEM_AUTH code.
o Fixed loss of small messages in PEM_AUTH code.
o Fixed improper defaults for VerticalScrollOnRight.
o Fixed more GIF decoding core dumps.
o Fixed mispelling of XtSpecificationRelease in gui.c
o Fixed 24bit handling bug that caused some displays to switch red and blue.
o Added names to child widgets in forms.
o Added autoconfiguration of MOTIF1_2 based on XmVERSION and XmREVISION.
o Made dialogs rise to the top when selected a second time.
o Added 24bit DirectColor support.
o Added 16bit TrueColor support.
o Changed dithering to Floyd-Steinberg dithering.
o 2 color images go to black & white on monochrome, instead of dithering.
o FORM now uses ENCTYPE and ENCENTITY to submit encrypted if PEM_AUTH
defined.
o New menu under "Options" to always request enrypted if PEM_AUTH defined.
From 2.1 to 2.2
...............
o Fixed bug in unrecognized URLs that have whitespace at the beginning.
o Fixed bug with transparent color GIF89 images.
o Fixed more inlined image parsing code dumps.
o Fixed odd extra flashing in documents accessed after form documents.
o Fixed socket leak in interrupted I/O.
o Fixed bug in whitespace terminated entity '&' escapes.
o Added Frans Van Hoesel's latest postscript changes.
o Added Frans Van Hoesel's extra font support.
o Speedups in GIF decoding, thanks to David Koblas.
o Improved handling of monochrome displays. Detect mono without needing
the -mono option, and dither inlined images.
o Added <OPTION VALUE=val> support so you can have the value returned
different than the string displayed.
o Added <INPUT TYPE=hidden> to allow invisible constant name/value pairs
to be added to submitted forms.
o Made resource verticalScrollOnRight user settable.
o Added hooks for PEM and PGP decoding by external application(s).
o Added support for proxy gateways, specifiable on a per access method basis.
From 2.0 to 2.1
...............
o Remote control users and script writers take note: control filename
changed from /tmp/xmosaic.pid to /tmp/Mosaic.pid. This
is the final such change, forever.
o Transparent uncompression over HTTP/1.0 is working -- Plexus
3.0i-beta is known to handle the server-side aspects, and the first
release of NCSA httpd after 1.0a5 will. Only content encodings
"x-compress" and "x-gzip" are currently handled.
o Transparent uncompression for local files is now working.
o Mail sending from within Mosaic is redone. Notably:
o mailCommand resource is now totally obsolete.
o sendmailCommand resource is now expected to point to
your system's sendmail binary; default is
/usr/lib/sendmail. Assumption is made that this
program accepts command-line arguments specifying
addresses to which message should be mailed, and accepts other
headers and message text from stdin.
o Mailed messages are now MIME-compliant, including use of
proper content-types.
o Additional header X-URL is used to indicate the URL of a
mailed document to the recipient.
o A BASE directive is added to mailed HTML documents to
allow inlined images and relative hyperlinks to work on the
other end.
o Mosaic 1.2's multiline FTP response fixes (courtesy John
Ockerbloom) merged in, and tweaks made.
o Added support for freeWAIS 0.202's URL type in native WAIS code.
o Added support for "204 NoResponse" responses in HTTP/1.0. When
such a response is received, Mosaic will not go to a new document or
an error message but will completely disregard the results of the
connection.
o Status line now displays "xx of yy bytes" when talking to an HTTP/1.0
server that tells it content-length. (For small transfers this may not
happen, which is to be expected, as header and entire data block
transfer will be very close together.)
o Worked around BadWindow crash under Ultrix with Edit Hotlist
window.
o Worked around BadWindow crash under Ultrix with ISINDEX forms
and text entry areas.
o Glitch with formatting long lines in some cases fixed.
o Fixed rare coredump opportunity in SELECT/OPTION handling.
o Fixed rare uninitialized memory read in widget selection code.
o Fixed another coredump opportunity in inlined image loading.
o Fixed coredump opportunity in client-side authentication code with
long (>48 character) realm names.
o Mosaic no longer tries to pick up final reply from FTP servers, to
thwart those servers that don't seem to be responding to the final reply
read. Also should make FTP performance a little better. This may be
an evil thing to do (since Mosaic may now tear down the socket before
the FTP server has finished writing to it); I'm not sure.
o Rob says: "It appears on first glance that Mosaic 2.0 is ignoring
anchors in redirected URLs." He was right, and it's now fixed.
o Made a few fixes in PostScript printing code: corrected header
generation, and fixed width handling (thanks to Gustaf Neumann).
o Tweaked reloading code to avoid strange error message.
o Mosaic now assumes that text documents beginning with string
"<BASE" or "<base" are HTML -- this makes it easy to use Mosaic
as a metamail viewer for HTML documents mailed from this version
of Mosaic.
o Merged in donated fixes for 6-bit and 16-bit displays. These aren't
guaranteed to work as we have no way to test them.
o Fixed missing closing ADDRESS tag in news articles.
o Fixed condition in WAIS source parser that caused it to lose track of
its state if escapted characters were inside quotes (thanks to Larry
Masinter).
o Fixed FTP code to allow ftp://username:password@host/
URLs (thanks to Larry Masinter).
o This version of Mosaic supports the GIF89 transparent color
extension. You can create GIFs with a transparent background color
with the latest beta of netpbm and its ppmtogif filter (you can
FTP that from ftp.cs.ubc.ca in /ftp/archive/netpbm if
you're desperate).
o Merged in SOCKS modifications from Ying-Da Lee
([email protected]); for the version of SOCKS needed to compile
with SOCKS support enabled, see here; note that SOCKS and the SOCKS
code now in Mosaic are NOT supported by NCSA.
o Fixed memory problem with trackFullURLs set to false (that
option still doesn't work in all cases, but at least it does something
reasonable now).
o Tweaks for compilation on various platforms.
From 2.0 prerelease 8 to 2.0
............................
o Fixed intermittent bug in loading files to disk (would inaccurately
complain about insufficient temporary disk space).
o Extension map files can now have tabs as whitespace.
o Fixed more minor glitches in image caching, multiple windows, fun
things like that.
o Never retry HTTP/1.0 POST operation as HTTP0 operation (makes no
sense to do so).
o Removed really horrible compatibility hack for broken HTTP0 servers
introduced in pre7 -- no longer useful, since ANU Bioinformatics has
upgraded to HTTP/1.0.
o Tweaked remote control a little (fixed redisplay bugs on some servers).
o Tweaked HTTP/1.0 status messages.
o Tweaked bcopy/bzero macros for System V/Solaris.
From 2.0 prerelease 7 to 2.0 prerelease 8
.........................................
o Renamed executable 'Mosaic' and application class name 'Mosaic'. User
X resources and system app defaults files should be updated as necessary.
o Implemented FORM METHOD="POST" with optional
ENCTYPE="application/x-www-form-urlencoded".
o Implemented TEXTAREA as described in the current (11/2) HTML+ spec.
o Fixed bugs with image caching (particularly with very small image cache
sizes) and multiple open windows.
o Scrolled lists with nothing selected now return nothing.
o Fixed coredump opportunity in GUI part of authentication code (Marc's
fault, not Ari's).
o Fixed glitch with spinning icon and deferred image loading.
o Quotes (") in OPTIONs now work.
o Radio buttons no longer allowed to be "none of many" (document writers
should make one of the buttons checked by default -- if you think you
want to allow "none of many" behavior, just throw in a "none of the
above" radio button).
o Image input elements whose images are deferred no longer have a
hyperlink available in the deferred image icon.
o Fixed glitch with exploding Gopher/FTP icons in some cases.
o Force allowShellResize to false on Mosaic shell windows to avoid some
stupid window manager bugs.
o "I have noticed that Mosaic 2.0pre6 does not properly scroll horizontally
when a preformatted <PRE> declared document is wider than the
window." Also gopher://gopher.ora.com/00/ordering/online.ordering.
Fixed!
o Fixed coredump opportunity when temporary directory (TMPDIR) is
unusable.
o Fixed coredump opportunities when interrupting NNTP connects and
reads and when including inlined images in news articles (yikes).
o Fixed bad PostScript output of documents with titles with embedded
newlines.
o Fixed problems in PostScript code on DEC Alphas (hopefully).
o Fixed another coredump opportunity in GIF reading code.
o Fixed glitch in simplying URLs like 'http://blargh.blah.:8001/'.
o Password entry fields in forms now obey the MAXLENGTH attribute.
o Changed default DEC Ultrix and Alpha audio player to "aplay" (c.f.
AudioFile).
o Tried to make handling of HTTP network writes more elegant, in case
some HTTP0 server really confuses things.
o Additional performance optimizations in HTML widget.
o New colorful spinning globe icon.
o Final interface tweaks, according to the advice of our user interface and
visual design expert.
o Fixed compilation glitches on a couple different platforms.
o A few miscellaneous minor cleanups.
From 2.0 prerelease 6 to 2.0 prerelease 7
.........................................
o Smart inlined image caching. Resource imageCacheSize can be
set to the maximum image cache size of your choice (in kbytes;
default 2048) -- command line option -ics also does this.
o All of the images in a given document will be (temporarily)
cached while on that page regardless of the value of
imageCacheSize. (This is a feature :-).
o Cache flushes "least recently viewed".
o Added TYPE="image" to forms support (see testcase).
o Added interruptible reads. All data loads should now be completely
interruptible (from end of DNS lookup to beginning of in-widget
document formatting), except for certain stages of a direct WAIS
query.
o Added "mosaic-internal-present" magic viewer to cause arbitrary
MIME types to be presented to the user using Mosaic's normal
plaintext display mechanism. Added many default mappings for
things like troff and TeX documents to this magic viewer.
o Made additional fixes to HTTP code for very small inlined images
-- testcases here and here.
o Transparent uncompression is back (but not recommended, for
cross-platform compatibility).
o X resources uncompressCommand and
gunzipCommand still control uncompression commands.
o You should upgrade to gzip version 1.2.4 if you're not already
there, as the new default for X resource gunzipCommand is
"gunzip -n -f", which requires a recent version of gzip.
o Mosaic will not transparently uncompress anything coming
across a HTTP/1.0 connection, under any circumstances, yet.
o Mosaic will not transparently uncompress anything
transferred in binary transfer mode, but will transparently
uncompress files typed such that they get saved directly to
disk (e.g. application/octet-stream, and any
MIME type mapped to magic viewer
"mosaic-internal-dump").
o Partially removed smart FTP interface -- will be restored at some
point in the future when I have more time to work on it. In the
meantime, it caused too many problems with too many servers.
o Added "Reload Images" menu option to explicitly flush images on
current page and reload the entire thing.
o Added horrible hack to allow (slow, but working) transactions with
way-old HTTP0 servers.
o Made handling of screwed-up HTTP/1.0 MIME header sets more
robust.
o Proper password entry dialog for authentication support.
o Added last resolved host info caching to help performance with slow,
confused, or misconfigured DNS servers.
o Most temporary files weren't going into specified TMPDIR -- fixed.
o Fixed bug in handling of Gopher titles with 8-bit characters (testcase
here -- this image).
o Fixed bugs in issuing Gopher queries -- punctuation in queries, etc.
should work now.
o Better handling if temporary disk space runs out (still not a good
thing to allow to happen, though).
o Better socket handling (sockets should always be closed by the time
an external viewer is started now, so they don't leak until the viewer
exits).
o Fixed bug in handling HTTP/1.0 redirection for inlined images and
reloading.
o Fixed bug in following symlinks to absolutely specified files on FTP
servers.
o Fixed minor and intermittent scrollbar management bug.
o Fixed another coredump opportunity in GIF reading code.
o Fixed another coredump opportunity in FTP icon code (testcase
file://ftp.uwp.edu/pub/music/lyrics/b/beatles -- can't read it because
the FTP server is highly nonstandard, but at least now it doesn't dump
core).
o Fixed coredump opportunity in mailcap-parsing code.
o Fixed handling of some Gopher directories (e.g.
gopher://calypso.oit.unc.edu/11/sunsite.d).
o Fixed coredump when using HREF instead of SRC with IMG.
o Color stuff -- start at http://nearnet.gnn.com/mkt/mkt.intro.html
with correct colors and middle-button the resource directory, close
new window, repeat as necessary, occasionally pressing 'R' (refresh)
in the original window -- you'll see the colors in the newly opened
window look incorrect (in 1.2 also). Fixed!
o Fixed interruptible I/O weirdness on some System V systems.
o Cleaned up generation of Gopher titles.
o Changed default player for all audio files from showaudio to sfplay
for SGIs to avoid various problems.
o Problem in SELECT's coming over Gopher -- %0D's at end of lines
don't get clipped out -- testcase
gopher://gopher.saintjoe.edu/0/search/archieplex.html -- fixed.
o Fixed glitch with PostScript code.
o Made small change to FTP code to cooperate with various FTP
servers better (testcase here).
o Fixed coredump when pressing Reset button in form with password
entry field.
o Fixed socket leaking problems in FTP, WAIS, and beyond -- sockets
should never again be leaked by Mosaic; if you can confirm this is
happening, please let us know (and provide evidence, testcase
sequences, and netstat readouts).
o Added recognition of Gopher+ image, sound, and movie types --
still no guarantee they'll be handled properly, as Gopher+ does typing
a little differently and we don't provide full support for Gopher+
anyway.
o Fixed problem if temporary local copy of HDF file goes away
unexpectedly. Also better handling of temporary local files --
however, beware that if you use Mosaic's HDF viewing support, you
should clean up your temporary directory space on a fairly regular
basis, as Mosaic does not always know when to clean it up for you
(for various reasons -- Mosaic should always clean up local copies of
other types of data files though).
o Fixed longstanding security glitch in Gopher support (Marc VH will
recognize this).
o News support tweaked.
o More performance enhancements -- go Quantify!
o Added some portability fixes.
o Lots of little cleanups and fixes.
From 2.0 prerelease 5 to 2.0 prerelease 6
.........................................
o Added CERN authentication code with GUI support (see CERN docs and
testcases).
o Added/revised scrolled lists, option menus, multiline text areas support in
fill-out forms; see docs.
o Added local directory icons and enhanced FTP icons (thanks to Charles
Henrich).
o New toggle button for selecting delayed image loading on the fly.
o New "Load Images In Current" menu option to load all (delayed) images
in current document.
o Improved handling of wide range of HTTP/1.0 response codes (see BSDI
testcases).
o Fixed really stupid problem with networking -- numeric addresses were
being handled incorrectly.
o Fixed coredump when reloading initial document that had been interrupted
first time it was being loaded; also added internal fixes to make doing
things with no document loaded at least not crash the program.
o Fixed bug when retrieving ftp://mailbase.ac.uk/pub/lists-k-o/nir (it's not
accessible but a spurious bug report was getting dumped to stderr).
o Made FTP directory handling more flexible/accurate (testcase here --
should see "lists" directory).
o Handle HTTP0/HTTP1 socket-level protocol clash a little better (e.g.
http://sunsite.unc.edu:8988/expo/nobeamup_map.html?49,51 -- might not
be a valid testcase anymore).
o Binary transfer bug fixed -- it works right now.
o Transparent uncompression still doesn't work (sorry), but the mutant
compressed filename munging code that was alive in pre5 is disabled now,
and compressed files are treated as binary.
o Worked around strange Motif bug causing crashes on some platforms with
message about accelerators.
o Now properly recognize comments ('#' first character in line) in extension
maps.
o Fixed problem with encoding of 8-bit characters in fill-out forms and
elsewhere.
o Made MIME type handling case insensitive in HTTP and WAIS code.
o Enhanced URL canonicalization (safe handling of trailing period in fully
qualified hostnames, plus lowercasing of all hostnames).
o Cleaned up some big direct WAIS and other memory leaks.
o Improved handling of Gopher errors.
o Improved handling of binary transfer mode (now "Load To Local Disk")
-- local tmp file properly removed when cancel button is hit, and dialog
box is now modal to prevent problems.
o Fixed bug in delayed inlined image icon handling with multiple delayed
inlined images on the same line.
o Gopher/FTP icons are now part of anchors, so they can be clicked on (even
though they're normal color -- trust us on this one).
o Fixed memory corruption problem with remote control newwin
directive.
o Changed FTP client code to always pass fully qualified machine name in
anonymous password whenever possible (actual username is already being
passed).
o Cleaned up menubar.
o Lots of little cleanups, performance tweaks, and portability fixes.
From 2.0 prerelease 4 to 2.0 prerelease 5
.........................................
o Added INPUT elements of type RADIO for fill-out forms as per
HTML+ spec.
o Added INPUT elements of type PASSWORD for fill-out forms as per
HTML+ spec.
o Added INPUT elements of type OPTION for option menus in fill-out
forms (not in HTML+ spec yet).
o Added resource twirlingTransferIcon, default true, can be set to false to
turn off twirling NCSA logo on transfers (interruption is still possible).
o Added resource twirlIncrement, default 4096, to indicate how many bytes
(minimum) are transferred between icon twirls in interface for normal
(FTP, Gopher, HTTP) transfers, if twirlingTransferIcon is on.
o FTP interface now has icons, byte counts (courtesy Charles Henrich).
o Gopher icons are back.
o Gopher type handling is back up to par, including support for
tweakGopherTypes.
o Brought default mailcap and extension mapping stuff up to speed;
enumerated previously wildcarded types (image/*, audio/*) for
debatably broken CERN server.
o External viewers need not have "%s" as part of their names anymore; if
they don't, then the data will be piped through stdin when they are
executed.
o Added "Reload Config Files" menubar entry, to cause mailcaps and
extension maps to be reloaded on the fly.
o Multiformat WAIS support is now working; testcase here; sample query.
o MIME types returned from WAIS servers are now handled correctly.
o Telnet/rlogin/tn3270 works again.
o Upon startup, now writes own pid into ~/.mosaicpid.
o Clip anchor ("#...") off of current URL, if present, before doing search,
for both forms and isindex.
o Widget creation now deferred as long as possible, to eliminate ugliness of
index field, etc. showing up too early.
o It should now be impossible to do anything interface-wise during a
transfer except click on the interrupt button for the current window.
o Fixed memory problem introduced in pre4 triggered when opening a new
window with middle mouse click.
o Fixed HTML widget crash condition that hit HP-UX.
o Fixed problem jumping to anchors in the same document (jump to "#a" in
a document, the "#b", then go back and you were still at "#b" instead of
"#a"). Also nailed down jumping back and forth between anchors in
general. Performance maybe could be better.
o Handle 403 return codes better ("Forbidden").
o Fixed problem with icon not righting itself after reloading inlined images
(testcase).
o Fixed problem with invalid content-type returned as part of HTTP/1.0
reply (was causing bad memory corruption; now unrecognized
content-types default to HTML). Testcase -- click on "Help".
o Fixed problem introduced in pre4 with confused history mechanism and
internal anchors.
o Fixed minor problem with news formatting.
o Ignore SIGPIPE; error EPIPE is also considered to be a sign of the
HTTP1/0 protocol incompatibility problem.
o Fixed problem with -dil and images that aren't accessible at all.
o Merged in useful fixes from 2.11, including ignoring of ":80" for HTTP
URLs and ":70" for Gopher URLs in URL parsing for improved history
tracking.
o Killed use of const structs in HTML-PSformat.c to make compilation
under Ultrix easier.
o Added patches for Esix 4.0.4 and Solaris x86 2.1.
o Reported bug: "Found a bug with the maxlength parm, if you set a size to
something other than the specified maxlength, it will allow data of any
length to be entered" fixed.
o Cleaned up communication notification mechanisms.
From 2.0 prerelease 3 to 2.0 prerelease 4
.........................................
o Prerelease startup page is now hardwired to a warning page about the
hazards of prereleases, to keep users from having the slightest thought
that a prerelease is the same thing as a stable release and should be
given to small children, normal users, or people without senses of
humor.
o Basic interruptible I/O.
o You can interrupt in the middle of a connect or between reads
of chunks of data during HTTP, Gopher, direct WAIS, and FTP
connections.
o Existing problems: can't interrupt DNS (hostname) lookups,
can't interrupt in the middle of reads.
o Added support for NCSA httpd 1.0 style extension/content-type config
files (extension maps).
o Resource useDefaultExtensionMap, default true, can be
set to false to keep Mosaic from having any default extension
mappings. We strongly recommend that this resource be left
true; simply override as necessary.
o Resource globalExtensionMap, default
"/usr/local/lib/mosaic/mime.types", can be set to the location of
the system-wide extension map config file of your choice.
o Resource personalExtensionMap, default
".mime.types", can be set to the location of the personal
extension map config file of your choice -- the value of the
environment variable HOME is prepended to this.
o Extension matching is now case insensitive (e.g., .txt and
.TXT are always treated the same).
o Added support for RFC 1343-style mailcap files to map MIME types
to external viewers. Together with the extension map support (above),
this provides complete customizability of viewers, supported types, and
extensions in a manner smoothly compatible with multimedia mail.
o Resource useDefaultTypeMap, default true, can be set to
false to keep Mosaic from having any default type mappings.
We strongly recommend that this resource be left true; simply
override as necessary.
o Resource globalTypeMap, default
"/usr/local/lib/mosaic/mailcap", can be set to the location of the
system-wide mailcap (type map config) file of your choice.
o Resource personalTypeMap, default ".mailcap", can be set
to the location of the personal mailcap file of your choice --
the value of the environment variable HOME is prepended to
this.
o In this prerelease, we are not RFC 1343-compliant in a couple
respects: a "%s" must be included in the viewer specification; if
it is not, Mosaic will not currently feed the data to the viewer
via stdin. Also, "%t" and "%{" are not recognized. Also, things
like copiousoutput, test, and needsterminal aren't
recognized either. We don't know if these things are important
or not (needsterminal probably is but the others probably
aren't).
o There are two "magic viewers" that can be associated with
particular MIME types:
o mosaic-internal-dump is used to tell Mosaic to
dump files of the corresponding type to disk (providing
the user with a dialog box to specify a filename).
Normally this "magic viewer" applies to all
unrecognized types (including, by default,
application/octet-stream).
o mosaic-internal-reference is used to tell
Mosaic that it has native handling capabilities for this
datatype. This should only be used for HDF and
netCDF data files, and only with versions of Mosaic
that have native HDF support compiled in. By default
this "magic viewer" applies to types
application/x-hdf,
application/x-netcdf, application/hdf,
and application/netcdf (the latter two aren't
valid MIME types at the moment, but should be
someday).
o Added better WAIS type support. In particular, given an arbitrary
WAIS type (e.g. "TEXT", "WSRC", "GIF"), the following occurs:
1 If a MIME type of the same name is found, then that is the type.
(This is looking forward to the days when WAIS servers will
return MIME types -- "image/gif" instead of "GIF", etc.)
2 Otherwise, a dummy filename "foo.type" is constructed (e.g.
"foo.GIF") and run through the normal extension mapping code
to try to do a MIME type match. This means that you can
expand the WAIS types Mosaic handles simply by adding
entries to your extension map (and, if necessary, your mailcap).
3 If this fails, we assume plaintext.
o Fixed "bad docid" problem with direct WAIS queries to some WAIS
servers (including White House Papers). (I'm still not sure this is
bulletproof -- please send bug reports regarding bad or missing docids
or documents, inconsistent results, etc.)
o Added support for 300-level HTTP/1.0 replies (301 and 302 --
redirection or forwarding of URLs).
In conjunction with NCSA httpd 1.0a2 and later, this means graphical
overviews of distributed information spaces are now easily doable (a
single image map can essentially point to lots of URLs scattered all
across the Web). An example is here.
o Added support for <BASE HREF="whatever"> to allow
specification of a "real" URL inside an HTML document. (This is a
convenient way to have WAIS server access not screw up URLs of
documents that normally exist in a hypermedia hierarchy, or in any
other instance where the same document, especially when containing
relative links, is served off of more than one server.)
An example is here -- the document is physically located at
"http://wintermute.ncsa.uiuc.edu:8080/foobar.html" but the "real" URL
is specified in the document source. Inlined links specified with
relative URLs, and relative hyperlinks, work.
o Deferred inline image loading -- resource delayImageLoads can
be set to true (or command-line flag -dil) to cause inlined images to
not be loaded by default.
o Instead, a little icon is inlined that can be clicked on to have the
image loaded and expanded in place.
o Images serving as anchors get a little arrow icon on top of the
little image icon that can be clicked on to follow the anchor.
o Only problem remaining: how to handle ISMAP images
reasonably in this context.
o Reworked HTML widget layout to support consistent baselines --
typography is much improved. This also means:
o <IMG ALIGN=MIDDLE> is now supported.
o Input elements in fill-out forms are now better aligned with
their surroundings -- baseline of text in text widget is aligned
with baseline of surrounding text line; toggle buttons are placed
correctly.
o Papered over basic incompatibility between HTTP0 and HTTP/1.0
protocols -- sockets can get confused when sending a HTTP/1.0
request to a HTTP0 server; we now detect when this happens and
reissue the request as HTTP0. This is not a really good fix, as there is a
performance hit if it must be done frequently and it's ugly besides, but
it does mean that data should never be lost when talking to a HTTP0
server.
o Fixed compatibility problem with X11R5/Motif 1.2 (the binaries we
distribute are still linked with X11R4/Motif 1.1 but you should be able
to compile and run with X11R5/Motif 1.2 now).
o New and improved inlined XPM3 support.
o Fixed fairly large memory problem dealing with external data elements
in HTFWriter.c, which often instantiated itself in coredumps in the
GIF reading/decompressing code.
o Fixed really stupid problem interpreting binary data over HTTP/1.0
connections.
o Fixed coredump on File->Mail To with no specified subject.
o Fixed coredump on "Save As" under some circumstances with new
HTML widget.
o Fixed coredump on getting back NULL text on first connection or on
reload.
o Fixed stupid bug-like feature in HDF code regarding display of only
value of a single-value vdata.
o Now sends DTM disconnect message when closing application, if
DTM connection is active.
o Took out extra space after periods bug-like feature.
o Fixed bug with new widget: document sometimes getting shoved off
top of window and no scrollbar appearing.
o Binary transfer mode is back, and unknown types are handled as with
binary transfer mode.
o Fixed problem with trailing slash on FTP directory (old problem, once
fixed, reintroduced in 2.0).
o Fixed lots of memory leaks (thanks to Purify).
o Changed default documentsMenuSpecfile to
/usr/local/lib/mosaic/documents.menu.
From 2.0 prerelease 2 to 2.0 prerelease 3
.........................................
o Libwww2 merged in (based on libwww-2.09a; heavily modified).
o Basic HTTP/1.0 support, including MIME format
comprehension. (See libwww-2.09/HTInit.c; no run-time
customization is in place yet.)
o Direct WAIS support.
o Link to freeWAIS 0.1 client libraries.
o Handle plaintext, html, binary formats (!) cleanly.
o Even access HDF/netCDF files out of a WAIS database
and have them be handled properly by Mosaic (parsed and
displayed with inlined images, hyperlinks, and the works
as usual).
o New resource maxWaisResponses controls maximum
number of matches you get from a WAIS server; default
is 200.
o FTP and file interfaces now alphabetize filenames.
o Local file interface inlines README file in directory listing, if
one exists.
o "ftp" URL always forces FTP link -- never tries local directory.
"file" URL still first tries local directory then tries FTP link.
o Search suffix now cropped from URL before determining file
type by extension.
o Lots of new bugs, and lots of previously fixed bugs from Mosaic
1.x reincarnated as new bugs.
o New and improved HTML widget.
o No more document pages or large virtual windows -- everything
is managed by the widget itself (including scrollbars).
o Preformatted text sections wider than window do not force all
text to be formatted to full width of window; text will be
formatted to width of visible window and horizontal scrollbar
will allow viewing remainder of the pre sections.
o Jumping to anchor in document in new window (e.g. using
middle button) now works.
o Performance performance performance! (Really!)
o Scrolling up or down by pages now gives you a leftover line
from the previous page.
o Added <br> and <hr> tags (linebreak and horizontal rule,
respectively); also now support <strike> for strikeout effect.
o Initial fill-out form support. This is a partial implementation of
HTML+'s fill-out form spec, with a few minor changes.
o For information on what's supported, how it works, and
examples, see here.
o A partially or fully filled out form will retain its state if
you move to another document and then back.
o ISINDEX is now handled via an inlined fill-out form
(which means searchIndexInDialog resource is no longer
useful).
o New directives and features for remote control:
o "pagedown", "pageup", "scrolldown", and "scrollup" directives
for remote control of scrollbar.
o Audio, video, and other external datatypes can now be accessed
without the window going out to lunch.
o Status area of document view window now gives byte count during
network transfer, etc. (This isn't complete yet.)
o New resource trackFullURLs, if set to False, enables prototypical smart
display of "where you're going" during mouse tracking, including format
divination. This is still in progress...
o Unflagged command-line arg specifies startup document, which is now
different from home document.
o Normal ISINDEX queries are now escaped properly.
o ACTION attribute now accepted for ISINDEX tag; allows specification
of alternate search engine.
o New File->Refresh menu entry (to cause image colors to be restored,
etc. without requiring network transfer) -- keyboard hotkey capital-R.
o Capital-H is now hotkey for calling up hotlist window.
o Fixed bug -- http://386bsd.cc.purdue.edu:8001/ was getting the machine
name interpreted as numeric address.
o Nuked future list in history window.
o Nuked SIGINT interrupt hack.
o Nuked prototype group annotation support.
From 2.0 prerelease 1 to 2.0 prerelease 2
.........................................
o Added searchIndexInDialog resource. If false (default), Search Index
field (from 1.2) pops up on searchable pages and pops down on
non-searchable pages. If true, Search Index button (from 2.0
prerelease 0/1) allows user to call up dialog box.
o The "Reload" option now clears out cached image data for the current
document before reloading the document, thus causing the images to
be reloaded also, if resource reloadReloadsImages is set to true
(default is false).
o The "Clear Image Cache" menu option wipes out all cached images
(reclaiming memory).
o "Clear Global History" also clears the image cache now.
o Fixed bug with internal bitmaps used in Gopher menus failing on
non-8-bit displays.
o Ripped out Window Per Document option (middle button still causes
new window to be opened on anchor activation).
o Toplevel Makefile (configure one file, type 'make', and you're done),
as well as Makefile.sun, Makefile.ibm, Makefile.dec, Makefile.alpha
for common configurations.
o Configurable Documents menu. By default there isn't one. Places to
look in order of preference at program startup are the value of the
resource documentsMenuSpecfile (by default
/usr/local/mosaic/documents.menu), the value of the environment
variable MOSAIC_DOCUMENTS_MENU_SPECFILE, and the
value of the compile-time #define
DOCUMENTS_MENU_SPECFILE (by default
/usr/local/mosaic/documents.menu).
The specfile itself consists of alternating lines of title and URL; a
single line starting with two dashes ("--") between any two title/URL
pairs counts as a separator. By default up to 80 things (title/URL pairs
+ separators) can be in a specfile; this can be increased in
src/gui-menubar.c if you're crazy. An example specfile is distributed
with the source code (but is not intended to be a default).
The developer who implemented this feature disagrees with its
presence in the program; the contents of such a customizable menubar
ought to be in a hypermedia page (so you can actually format, lay out,
and explain the various hyperlinks) that in turn ought to be served to
the network (so others can benefit from your organization of
information).
o Added simpleInterface resource to allow menubar and bottom button
configuration to be considerably pared down (default is false).
Comments on what should and shouldn't be in the simple user
interface should be sent to [email protected].
o Added "Network Starting Points" document pointer in Navigate menu
(to make up for disappearance of Documents & Manuals menu); the
URL is customizable at compile time (see src/mosaic.h).
o trackPointerMotion can now be set to false to inhibit pointer/URL
tracking.
o Fixed yet another libwww bug -- coredump on malformed URL
gopher//mother.cs.bham.ac.uk:2070/.
From 2.0 prerelease 0 to 2.0 prerelease 1
.........................................
o Fixes for PostScript printing on non-SGI's and in general.
o Moved "Search Index" button to left side of window.
o Fixed problems keeping img.c from compiling without HDF support.
o Ripped out Documents, Manuals.
o Better Gopher icons (thanks, Kevin Hughes).
o Removed hardcoding of location of help documents. Here's how things
work now: By default, the www.ncsa.uiuc.edu location is used. This can be
overridden in src/Makefile by setting the DOCS_DIRECTORY_DEFAULT
define. This can in turn be overridden by the environment variable
MOSAIC_DOCS_DIRECTORY environment variable, which can in turn be
overridden by the XMosaic*DocsDirectory X resource (which by default is
NULL). How's that?
o Home page is now customizable at compile time by setting
-DHOME_PAGE_DEFAULT to any URL.
o Other things that are customizable at compile time (see src/mosaic.h):
o WHATSNEW_PAGE_DEFAULT
o DEMO_PAGE_DEFAULT
o HTMLPRIMER_PAGE_DEFAULT
o URLPRIMER_PAGE_DEFAULT
o Removed native DMF support.
o Reading a .HDF file that's not an HDF/netCDF file no longer exits on
"ncopen: Not a netcdf file".
From 1.2 to 2.0 prerelease 0
............................
o Native HDF browsing support, and resources to support it.
o Search keyword is now in a dialog box.
o Mouse tracking, including display of target URL.
o Bitmaps in Gopher interface.
o History list now tracks jumps to internal anchors.
o New and improved PostScript printing (courtesy Ameet Raval and Frans Von
Hoesel); see below.
o Usenet news reading problems and other bugs fixed.
o DTM support updated to Collage 1.2-alpha equivalent.
From 1.1 to 1.2
...............
o Binary transfer mode, when on, now forces all files to be treated as
binary, whether or not their extensions are recognized. (Due to
overwhelming popular request.)
o Gopher file types are now picked up on the basis of file extension, if a
file extension exists, with the default being the normally assumed
type. This means that "foo.ps" returned as type '0' (text) is interpreted
as PostScript, etc. Resource tweakGopherTypes (default True) can be
set to False to turn this off and interpret Gopher documents stricly by
the Gopher typing system.
o Resource postscriptViewerCommand is now "dump" by default. This
is because ghostview (the previous default), as currently shipped, runs
ghostscript in unsafe mode and a malicious PostScript file could cause
damage to your filesystem as a result.
o Added fullHostname resource to allow explicit setting of the fully
qualified hostname (machine.domain). We recommend you don't use
this resource (allow Mosaic to determine your full hostname on the
fly) unless your system chokes on gethostbyname().
o Fixed problem with annotationServer resource set and annotation
server not available or network down.
o Fixed problem with missing title (or author) in annotation.
o Fixed occasional coredump in File->Reload.
o Fixed occasional crash with inlined images after windows have been
closed.
o Made failure of gethostbyname() robust (coredumps actually inside
gethostbyname() must still be dealt with by the gethostbynameIsEvil
resource).
o Fixed coredump when checking for editable annotation property when
document contains no text.
o Fixed coredump when closing window if hotkey is hit while window
is still open but in the process of being destroyed.
o Local files should now always be automatically canonicalized into a
full URL of form file://hostname/full/path/filename -- this applies to
command-line arguments and to filenames passed through
File->Open.
o Now recognize file://localhost/ scheme for expressly accessing local
files.
o Fixed problem with multiline FTP server responses (courtesy John
Ockerbloom).
o Fixed problem with ".." in FTP directory resulting in slash falling off
of toplevel URL and subsequent jumps failing.
o Fixed problem with trailing slashes in FTP directory specifications
that were causing part of the directory name to be used twice.
o Changed sgimoviePlayerCommand default to movieplayer, which
actually exists on some SGI systems.
o Made a few changes to menubar Documents and Help menus.
o Cleaned up lots of typecasting warnings in Xmx code.
o Fixed problem with Motif 1.2 and file insertions in annotate window.
o Fixed problem with double quotes in titles of group annotations.
o Added resource reverseInlinedBitmapColors to allow reversal of
foreground and background colors in inlined XBM bitmaps.
o Fixed problem with group annotations on URL's containing pound
signs (normally this never happens, but it will happen for HDF files in
Mosaic 2.0).
o Added confirmation box for deleting annotations from the menubar;
added resource confirmDeleteAnnotation, defaults to true.
o Correctly recognizes mis-suffixed HTML files starting with <head>,
<html>, and <HTML> tags also now.
o XPM3-format inlined image support fixed.
From 1.0 to 1.1
...............
o Hotkeys in document view windows.
o Color leaks and glitches in inlined image support fixed.
o Support for TMPDIR environment variable, as well as resource
tmpDirectory and command-line flag -tmpdir, for specifying
location of tmp directory for transient data files.
o Added GUI-supported modification of hotlist entry titles.
o Added ISMAP tag support to IMG tag (courtesy Tony Sanders).
o CSO phonebook support (courtesy Lou Montulli).
o Added printing/saving straight to PostScript (courtesy Ameet A. Raval).
No support for images yet, though.
o Fixed typo in Motif 1.2 support in HTML widget.
o Fixed typo (nothing was broken, just caused it to be a little slow
sometimes) in document page handling.
o Two spaces between sentences in pretty selections now.
o SGML comments are now ignored.
o Updated copyright notice.
o Documentation hyperlinks point straight to new NCSA server.
o Mosaic can now be remotely controlled via signals by a parent process;
e.g., to allow use as a browser for context-sensitive help from another
application. More information coming...
o Default rgbViewerCommand is now 'xv' on non-SGI platforms, since xv
3.0 now handles SGI RGB files.
o New WAIS interface document, pointing to NCSA gateway.
o URL of document is now sent in 'Mail To...' messages.
o <cite> now supported.
o <blockquote> now supported.
o <var> now uses italics.
o Fixed rare parsing/layout coredumps.
o Fixed rare pretty selection coredumps.
o Fixed stupid memory and file-handling glitches; made hotlist and other
config file-handling much more robust.
o Properly handle (nuke) newlines in titles and URL's now.
o Fixed rare stupid coredumps in Motif lists.
o No more coredump when saving/printing/mailing empty file.
o Mosaic now has no default geometry resource value. Initial window
placement and toplevel dialog placement will be entirely according to
your window manager's settings.
o Added resource percentVerticalSpace to allow customization of the space
between paragraphs, between headers and paragraphs, etc. in the HTML
widget.
o Fixed coredump when starting Mosaic with home page a directory with
no slashes in the specification.
o Added recognition of '.gz' for gzip'd files, as per GNU change.
o Fixed glitch with X bitmaps served by Gopher servers as inlined images.
o Added editres support.
o Added Motif 1.2 tearoff menu support.
o Better DEC Alpha OSF/1 support.
o Better Dell SVR4 support.
o A few more source cleanups for NeXT support.
o Reorganized Documents menu and added new options to Help menu.
o Added support for group annotation server (not yet available).
o Cleaned up src/Makefile (some).
o Suffixes .dump and .saveme are now recognized and trigger binary
file dump to local disk.
o Busy cursor now shows up more often, like it should.
o HDF files are now recognized and passed to Collage via Collage's -load
option, which isn't yet in a released version.
o Miscellaneous bug fixes and cleanups.
From 0.13 to 1.0
................
o Added new resource, gethostbynameIsEvil, for Sun's that
coredump when gethostbyname() is called to try to find out what
their own names are. (Command-line flag is -ghbnie.)
o Explicitly pop down all dialog boxes when document view
window is closed, for window managers too dull to do so
themselves.
o Better visited anchor color for non-SGI's.
o Added .hqx and .uu to list of file extensions handled like .tar files.
o Added 'Clear' button to Open box, to allow more convenient
cut-n-paste entries of URL's.
o New resource 'autoPlaceWindows'; if set to False, new document
view windows will not be automatically positioned by the
program itself (but it's still up to your window manager just how
they're placed).
o Command-line flags -i and -iconic now have desired effect (new
resource initialWindowIconic can also be used).
o Gif-reading code is a little more bulletproof.
o Obscure infinite loop triggered by extra space in IMG tag fixed.
o Eliminated nonintuitive error message when image can't be read
(inlined NCSA bitmap is indication enough that something's not
right for authors, and readers can't do anything about bad images
in any case).
o Obscure parsing bug (for constructs like <ADDRESS><A
HREF=...>text<A></ADDRESS>) fixed.
o Fixed mysterious stupid coredump that only hits Suns.
o Fixed stupid coredump on URL's like '://cbl.leeds.ac.uk/'.
o Fixed buglet in handling rlogin URL's.
o New support for Solaris/SYSVR4 (courtesy
o Better support for HP-UX 8.x and 9.x (courtesy
o Better support for NeXT (courtesy [email protected]).
o Some miscellaneous portability fixes (courtesy
o Miscellaneous bug fixes and cleanups.
From 0.12 to 0.13
.................
o Fixed occasional mysterious coredump in startup routines.
o Fixed occasional stupid coredump in freeing document text.
o Fixed silly coredump on accessing malformed URLs like
ftp:/tcp/xxx.yyy.zzz.www.
o Fixed URL parsing choke on accessing URL 'test.html#foobar' as
an initial program argument.
o Added system() call error reporting.
o Changed default anchor representations: blue and single solid