annotate NEWS @ 6021:60f9ced8ab53 ss-2-9-9

[project @ 2006-10-02 20:02:20 by jwe]
author jwe
date Mon, 02 Oct 2006 20:02:21 +0000
parents 9223672bd578
children 1d4b4312f782
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5913
e915287e3ef9 [project @ 2006-07-28 17:06:14 by jwe]
jwe
parents: 5814
diff changeset
1 Summary of important user-visible changes for version 3.0:
e915287e3ef9 [project @ 2006-07-28 17:06:14 by jwe]
jwe
parents: 5814
diff changeset
2 ---------------------------------------------------------
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
3
5814
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
4 ** The way Octave handles search paths has changed. Instead of
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
5 setting the built-in variable LOADPATH, you must use addpath,
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
6 rmpath, or path to manipulate the function search path. These
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
7 functions will maintain "." at the head of the path, for
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
8 compatibility with Matlab.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
9
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
10 Leading, trailing or doubled colons are no longer special.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
11 Now, all elements of the search path are explicitly included in
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
12 the path when Octave starts. To display the path, use the path
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
13 function.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
14
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
15 Path elements that end in // are no longer searched recursively.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
16 Instead, you may use addpath and the genpath function to add an
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
17 entire directory tree to the path. For example,
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
18
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
19 addpath (genpath ("~/octave"));
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
20
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
21 will add ~/octave and all directories below it to the head of the
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
22 path.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
23
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
24
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
25 ** Previous versions of Octave had a number of built-in variables to
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
26 control warnings (for example, warn_divide_by_zero). These
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
27 variables have been replaced by warning identifiers that are used
5794
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
28 with the warning function to control the state of warnings.
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
29
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
30 For example, instead of writing
2511
9b0dd36714eb [project @ 1996-11-14 02:57:33 by jwe]
jwe
parents: 2496
diff changeset
31
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
32 warn_divide_by_zero = false;
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
33
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
34 to disable divide-by-zero warnings, you should write
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
35
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
36 warning ("off", "Octave:divide-by-zero");
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
37
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
38 You may use the same technique in your own code to control
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
39 warnings. For example, you can use
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
40
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
41 warning ("My-package:phase-of-the-moon",
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
42 "the phase of the moon could cause trouble today");
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
43
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
44 to allow users to control this warning using the
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
45 "My-package:phase-of-the-moon" warning identifier.
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
46
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
47 You may also enable or disable all warnings, or turn them into
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
48 errors:
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
49
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
50 warning ("on", "all");
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
51 warning ("off", "all");
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
52 warning ("error", "Octave:divide-by-zero");
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
53 warning ("error", "all");
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
54
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
55 You can query the state of current warnings using
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
56
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
57 warning ("query", ID)
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
58 warning ("query")
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
59
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
60 (only those warning IDs which have been explicitly set are
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
61 returned).
2459
0a2cd53db5f9 [project @ 1996-11-03 03:36:01 by jwe]
jwe
parents: 2458
diff changeset
62
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
63 A partial list and description of warning identifiers is available
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
64 using
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
65
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
66 help warning_ids
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
67
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
68
5814
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
69 ** All built-in variables have been converted to functions. This
5794
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
70 change simplifies the interpreter and allows a consistent
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
71 interface to internal variables for user-defined packages and the
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
72 core functions distributed with Octave. In most cases, code that
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
73 simply accesses internal variables does not need to change. Code
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
74 that sets internal variables will change. For example, instead of
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
75 writing
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
76
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
77 PS1 = ">> ";
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
78
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
79 you will need to write
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
80
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
81 PS1 (">> ");
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
82
5798
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
83 If you need write code that will run in both old and new versions
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
84 of Octave, you can use something like
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
85
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
86 if (exist ("OCTAVE_VERSION") == 5)
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
87 ## New:
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
88 PS1 (">> ");
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
89 else
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
90 ## Old:
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
91 PS1 = ">> ";
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
92 endif
5794
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
93
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
94
5995
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
95 ** For compatibility with Matlab, the output order of Octave's
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
96 "system" function has changed from
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
97
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
98 [output, status] = system (cmd);
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
99
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
100 to
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
101
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
102 [status, output] = system (cmd);
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
103
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
104
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
105 See NEWS.2 for old news.