ReleaseNotes092

From Erights

(Difference between revisions)
Jump to: navigation, search
(Release notes on the upcoming 0.9.2 release of E-on-Java)
 
(4 intermediate revisions not shown)
Line 1: Line 1:
-
= Release notes on the upcoming 0.9.2 release of E-on-Java =
+
= Release notes on 0.9.2 release of E-on-Java =
-
== Release process notes ==
+
See [http://erights.org/download/0-9-2/index.html E download page] and [[Release process notes]].
-
 
+
-
Here I will jot down notes on the process of performing the E 0.9.2 release, as a guide to others who may do future releases. This information is descriptive; not prescriptive.
+
-
 
+
-
At Kevin's suggestion, I did a
+
-
 
+
-
  <code>$ svn log -r321:HEAD svn://svn.synchrona.org/erights/e/trunk</code>
+
-
 
+
-
to gather all the log entries since the last release.
+
== Highlights ==
== Highlights ==
-
Causeway now processes the language neutral [http://waterken.sourceforge.net/debug/ trace file format] defined by Tyler Close and generated from the Waterken server. [http://erights.org/elang/tools/causeway/cw-paper09.pdf Many other functionality and usability improvements]. Thanks Terry Stanley and Tyler Close.
+
Causeway now processes the language neutral [http://waterken.sourceforge.net/debug/ trace file format] defined by Tyler Close and generated from the Waterken server. [http://www.hpl.hp.com/techreports/2009/HPL-2009-78.html Many other functionality and usability improvements]. Thanks Terry Stanley and Tyler Close.
Switched from SWT v2135 to v3.3.1.1. E now works with SWT on Mac OS X 10.5. Thanks Kevin Reid.
Switched from SWT v2135 to v3.3.1.1. E now works with SWT on Mac OS X 10.5. Thanks Kevin Reid.
-
Kevin's new makeProxy design.
+
Kevin's new [[Proxy]] design is implemented; [[EProxyResolver]] is deprecated in favor of it.
-
The E parser has been updated to accept the new [[Guard-based_auditing]] friendly E syntax. Thanks Kevin Reid.
+
The E parser has been updated to accept the new [[guard-based auditing]]-friendly E syntax, but guard-based auditing itself is not yet implemented. Thanks Kevin Reid.
== Features ==
== Features ==
-
[http://www.eros-os.org/pipermail/e-lang/2007-February/011870.html Lamport slots with PBC] thanks to Martin Scheffler
+
[http://www.eros-os.org/pipermail/e-lang/2007-February/011870.html Lamport slots are now pass-by-construction Unums] thanks to Martin Scheffler.
-
[http://www.eros-os.org/pipermail/cap-talk/2007-March/007602.html Made SealedBox final] thanks Tyler Close
+
[http://www.eros-os.org/pipermail/cap-talk/2007-March/007602.html Made SealedBox final] thanks to Tyler Close.
-
[http://www.eros-os.org/pipermail/e-lang/2007-March/011951.html experimental Joule-like multichannels] thanks Mark Miller (and Dean Tribble for the multichannel semantics)
+
[http://www.eros-os.org/pipermail/e-lang/2007-March/011951.html We have experimental Joule-like multichannels] thanks to Mark Miller (and Dean Tribble for the multichannel semantics)
Added a command line option to webServerSocket80.e to tell it to use a different port.
Added a command line option to webServerSocket80.e to tell it to use a different port.
-
ReadOnlyFile#copyTo/2, File#makeParentDirs/1.
+
ReadOnlyFile now supports the copyTo/2 method of its underlying File.
 +
 
 +
File now has a makeParentDirs/1 method, which will (attempt to) make as many parent directories as necessary.
Term tree matching is still much less powerful than regular expressions, but is at least not so naively greedy. Matches like  
Term tree matching is still much less powerful than regular expressions, but is at least not so naively greedy. Matches like  
Line 39: Line 33:
== Bug fixes ==
== Bug fixes ==
-
[https://sourceforge.net/tracker/index.php?func=detail&aid=1635331&group_id=75274&atid=551529 A sent <import> needs to arrive as the local one] thanks Martin Scheffler
+
Fixed [https://sourceforge.net/tracker/index.php?func=detail&aid=1635331&group_id=75274&atid=551529 A sent <import> needs to arrive as the local one] thanks to Martin Scheffler.
 +
 
 +
Fixed [https://sourceforge.net/tracker2/index.php?func=detail&aid=1664778&group_id=75274&atid=551529 File(File, String) is unsafe and must be suppressed] thanks to Adrian Mettler.
 +
 
 +
Fixed [https://sourceforge.net/tracker/index.php?func=detail&aid=1670310&group_id=75274&atid=551529 Updoc timing quirk] thanks to Kevin Reid.
 +
 
 +
Fixed [https://sourceforge.net/tracker2/index.php?func=detail&aid=1687704&group_id=75274&atid=551529  Masking of parser warning] thanks to Kevin Reid.
-
[https://sourceforge.net/tracker2/index.php?func=detail&aid=1664778&group_id=75274&atid=551529 File(File, String) is unsafe and must be suppressed] thanks Adrian Mettler
+
Fixed [https://sourceforge.net/tracker2/index.php?func=detail&aid=1689377&group_id=75274&atid=551529 escape optimization invalid] thanks to Kevin Reid.
-
[https://sourceforge.net/tracker/index.php?func=detail&aid=1670310&group_id=75274&atid=551529 Updoc timing quirk] thanks Kevin Reid
+
Fixed [http://www.eros-os.org/pipermail/e-lang/2007-March/011964.html makeMembrane fixed] thanks to Martin Scheffler.
-
[https://sourceforge.net/tracker2/index.php?func=detail&aid=1687704&group_id=75274&atid=551529  Masking of parser warning] thanks Kevin Reid
+
Typed verbs, i.e., verbs that look like Java signatures such as "__conformTo(Guard)" that are normally used to disambiguate Java overloads, are now suppressed for sugar method including Miranda methods. Thanks to Kevin Reid.
-
[https://sourceforge.net/tracker2/index.php?func=detail&aid=1689377&group_id=75274&atid=551529 escape optimization invalid] thanks Kevin Reid
+
Fixed [https://sourceforge.net/tracker2/index.php?func=detail&aid=1605810&group_id=75274&atid=551529 TraversalKey bug] thanks to Kevin Reid.
-
[http://www.eros-os.org/pipermail/e-lang/2007-March/011964.html makeMembrane fixed] thanks Martin Scheffler
+
Fixed [http://www.eros-os.org/pipermail/e-lang/2007-April/012010.html bug in swtGrid quasiParser] (though the bug itself may be post 9.1b) thanks to Martin Scheffler.
-
Typed verbs, i.e., verbs that look like Java signatures such as "__conformTo(Guard)" that are normally used to disambiguate Java overloads, are now suppressed for sugar method including Miranda methods. Thanks Kevin Reid.
+
Fixed [http://www.eros-os.org/pipermail/e-lang/2007-November/012365.html emacs e-mode indentation] thanks to Pierre Radermecker. It had worked for me. But this e-mode in my Emacs 22.2.50.1 Carbon version on Mac OS X 10.5.6 has again the original symptom: when I hit tab, I get "Wrong type argument: stringp, nil". I'm not an elisp hacker, so I don't know what the problem is.
-
[https://sourceforge.net/tracker2/index.php?func=detail&aid=1605810&group_id=75274&atid=551529 TraversalKey bug] thanks Kevin Reid.
+
Fixed [http://www.eros-os.org/pipermail/e-lang/2007-December/012388.html Ordered region comparison bug] thanks to Allen Short.
-
[http://www.eros-os.org/pipermail/e-lang/2007-April/012010.html bug in swtGrid quasiParser] (though the bug itself may be post 9.1b) thanks Martin Scheffler.
+
Fixed [http://www.eros-os.org/pipermail/e-lang/2008-March/012635.html javax.swing.ActionEvent.getActionCommand() unsuppressed] thanks to Kevin Reid.
-
[http://www.eros-os.org/pipermail/e-lang/2007-November/012365.html A fix for emacs e-mode indentation] by Pierre Radermecker. It had worked for me. But this e-mode in my Emacs 22.2.50.1 Carbon version on Mac OS X 10.5.6 has again the original symptom: when I hit tab, I get "Wrong type argument: stringp, nil". I'm not an elisp hacker, so I don't know what the problem is.
+
The taming of JFileChooser#APPROVE_SELECTION, JFileChooser#CANCEL_SELECTION, java.awt.event.MouseEvent#getButton/0 now lists these as unsuppressed.
-
[http://www.eros-os.org/pipermail/e-lang/2007-December/012388.html Ordered region comparison bug] thanks Allen Short.
+
BaseLexer now accepts "\/" as synonymous with "/". TermL, inheriting this rule, is now a superset of JSON. Thanks to Kevin Reid.
-
[http://www.eros-os.org/pipermail/e-lang/2008-March/012635.html javax.swing.ActionEvent.getActionCommand() unsuppressed] thanks Kevin Reid.
+
Fixed reflection operations that broke the sameness guarantee (if a == b then they are indistinguishable): The implementation class of integer objects is no longer revealed by __getAllegedType(), and the Help object avoids revealing implementation classes. <!-- r468, r469 -->
-
JFileChooser#APPROVE_SELECTION, JFileChooser#CANCEL_SELECTION, java.awt.event.MouseEvent#getButton/0 unsuppressed.
+
== Other changes ==
-
BaseLexer now accepts "\/" as synonymous with "/". TermL, inheriting this rule, is now a superset of JSON. Thanks Kevin Reid.
+
Unresolved proxies no longer print as "<Remote Promise>". Rationale: There is no way a program can (without making assumptions about English) make this same distinction; it was arguably a bug that the printing subsystem could in order to print them differently.

Latest revision as of 23:44, 12 May 2009

Contents

Release notes on 0.9.2 release of E-on-Java

See E download page and Release process notes.

Highlights

Causeway now processes the language neutral trace file format defined by Tyler Close and generated from the Waterken server. Many other functionality and usability improvements. Thanks Terry Stanley and Tyler Close.

Switched from SWT v2135 to v3.3.1.1. E now works with SWT on Mac OS X 10.5. Thanks Kevin Reid.

Kevin's new Proxy design is implemented; EProxyResolver is deprecated in favor of it.

The E parser has been updated to accept the new guard-based auditing-friendly E syntax, but guard-based auditing itself is not yet implemented. Thanks Kevin Reid.

Features

Lamport slots are now pass-by-construction Unums thanks to Martin Scheffler.

Made SealedBox final thanks to Tyler Close.

We have experimental Joule-like multichannels thanks to Mark Miller (and Dean Tribble for the multichannel semantics)

Added a command line option to webServerSocket80.e to tell it to use a different port.

ReadOnlyFile now supports the copyTo/2 method of its underlying File.

File now has a makeParentDirs/1 method, which will (attempt to) make as many parent directories as necessary.

Term tree matching is still much less powerful than regular expressions, but is at least not so naively greedy. Matches like

  def term`[@x*, @y, @z]` := term`[4,5,6,7,8]`

used to fail because @x* would consume everything, leaving nothing for @y and @z. See lessgreedy.updoc for more examples.

Bug fixes

Fixed A sent <import> needs to arrive as the local one thanks to Martin Scheffler.

Fixed File(File, String) is unsafe and must be suppressed thanks to Adrian Mettler.

Fixed Updoc timing quirk thanks to Kevin Reid.

Fixed Masking of parser warning thanks to Kevin Reid.

Fixed escape optimization invalid thanks to Kevin Reid.

Fixed makeMembrane fixed thanks to Martin Scheffler.

Typed verbs, i.e., verbs that look like Java signatures such as "__conformTo(Guard)" that are normally used to disambiguate Java overloads, are now suppressed for sugar method including Miranda methods. Thanks to Kevin Reid.

Fixed TraversalKey bug thanks to Kevin Reid.

Fixed bug in swtGrid quasiParser (though the bug itself may be post 9.1b) thanks to Martin Scheffler.

Fixed emacs e-mode indentation thanks to Pierre Radermecker. It had worked for me. But this e-mode in my Emacs 22.2.50.1 Carbon version on Mac OS X 10.5.6 has again the original symptom: when I hit tab, I get "Wrong type argument: stringp, nil". I'm not an elisp hacker, so I don't know what the problem is.

Fixed Ordered region comparison bug thanks to Allen Short.

Fixed javax.swing.ActionEvent.getActionCommand() unsuppressed thanks to Kevin Reid.

The taming of JFileChooser#APPROVE_SELECTION, JFileChooser#CANCEL_SELECTION, java.awt.event.MouseEvent#getButton/0 now lists these as unsuppressed.

BaseLexer now accepts "\/" as synonymous with "/". TermL, inheriting this rule, is now a superset of JSON. Thanks to Kevin Reid.

Fixed reflection operations that broke the sameness guarantee (if a == b then they are indistinguishable): The implementation class of integer objects is no longer revealed by __getAllegedType(), and the Help object avoids revealing implementation classes.

Other changes

Unresolved proxies no longer print as "<Remote Promise>". Rationale: There is no way a program can (without making assumptions about English) make this same distinction; it was arguably a bug that the printing subsystem could in order to print them differently.

Personal tools
more tools