ViewVC logotype

Contents of /trunk/eweasel/CHANGES

Parent Directory Parent Directory | Revision Log Revision Log

Revision 100675 - (show annotations)
Sat Aug 26 07:47:21 2017 UTC (2 years, 5 months ago) by alexk
File size: 9651 byte(s)
Added notes about optional line numbers for expected validity errors.
2 --| Copyright (c) 1993-2017 University of Southern California, Eiffel Software and contributors.
3 --| All rights reserved.
4 --| Your use of this work is governed under the terms of the GNU General Public
5 --| License version 2.
7 1.1.0
8 =====
10 1. Supported optional line number for validity errors in eweasel scripts.
11 In addition to the old syntax for validity code
13 the new one is now supported:
14 VALIDITY_CODE:line_number
15 where line_number should be a positive integer corresponding to the
16 line number for which the violation is reported.
18 Bugs and deficiencies which have been fixed in EiffelWeasel release 1.0
19 =======================================================================
21 1. EiffelWeasel has been modified to compile with the 5.0 version
22 of the compiler. The compile_result instruction now allows
23 validity_warning as one of the possibilities. Syntax is the
24 same as for validity_error, but EiffelWeasel expects compilation
25 to finish if result is validity_warning in the test control file.
26 This was added to support Unused_local_warning. All existing
27 tests with unused locals have had their test control files
28 modified to use validity_warning.
30 2. EiffelWeasel should compile on Linux without any changes to the
31 C code. I assume your compiler on Linux defines the preprocessor
32 symbol __linux. If not, contact me and I'll fix it.
35 Bugs and deficiencies which have been fixed in EiffelWeasel release 0.9
36 =======================================================================
38 1. EiffelWeasel has been modified to compile with the 4.2 version
39 of the compiler. The OS interface has been reworked and should be
40 in better condition than before.
42 2. EiffelWeasel now works on both SunOS and Solaris. The C file unix_os.c,
43 which has code for externals used by the operating system interface
44 (class UNIX_OS), must be compiled with the symbol __SVR4 defined if
45 you are compiling EiffelWeasel for Solaris. If you use the
46 SPARCWorks C compiler `acc' this happens automatically. If you use
47 `gcc' you will probably need to include a "-D__SVR4" flag on the
48 command line to compile unix_os.c.
50 3. There are now several different init files in the control directory.
51 Each one corresponds to a specific platform and compiler version.
52 They are:
54 init_sunos_4.1
55 init_solaris_4.1
56 init_solaris_4.2
58 You shouldn't have to change them, but you will need to change the
59 following files to reflect the correct value for the EIFFEL4 variable:
61 solaris_rel4.1
62 solaris_rel4.2
63 sunos_rel4.1
64 sunos_rel4.2
68 Bugs and deficiencies which have been fixed in EiffelWeasel release 0.8
69 =======================================================================
71 1. EiffelWeasel has been modified to compile with the 3.3.7 version
72 of the compiler.
74 2. Previously, there were too many cases where a compile_result
75 of "unknown" was displayed. These cases occurred because EiffelWeasel
76 did not know about compiler exceptions. It now knows when
77 the compiler terminated due to an exception and it reports
78 the exception tag, such as "segmentation fault".
80 3. All tests in the test catalog now have either "pass" or "fail"
81 as their first keyword. This makes it easy to do regression testing
82 by including `-f "kw pass"' on the command line and to see what has
83 been fixed in a new release by including `-f "kw fail"'.
86 Bugs and deficiencies which have been fixed in EiffelWeasel release 0.7
87 =======================================================================
89 1. EiffelWeasel has been modified to compile with the 3.3 beta
90 of the compiler.
92 2. The current buglist has been included in the `doc' subdirectory.
93 That directory also contains (part of) an initial proposal for
94 changing command line options to EiffelWeasel.
97 Bugs and deficiencies which have been fixed in EiffelWeasel release 0.6
98 =======================================================================
100 1. EiffelWeasel has been modified to compile with the 3.2.3b version
101 of the compiler. There was one VAPE error, which the previous
102 compiler did not check. No real change to EiffelWeasel itself.
106 Bugs and deficiencies which have been fixed in EiffelWeasel release 0.5
107 =======================================================================
109 1. The syntax of the compile_result instruction has been extended to
110 allow specification of validity errors on multiple classes. Validity
111 error phrases may now be separated by semicolons. Extra semicolons
112 do not cause any problems. For example,
113 compile_result validity_error TEST VTCG; TEST1 VFFD(7);;; TEST3 VRXC
115 2. Eweasel is a lot smarter about the waiting needed to avoid problems
116 due to the fact the compiler only looks at the seconds of file time
117 of last modification. It now only waits when it really might be
118 necessary - that is, when all of the following conditions are met:
120 A) An Eiffel compilation has been started or resumed
121 AND B) The time when the last compilation started or resumed is the
122 same as the current time in seconds
123 AND C) No wait has already been done since the last compilation.
125 These modifications should eliminate all unecessary waiting.
128 Bugs and deficiencies which have been fixed in EiffelWeasel release 0.4
129 =======================================================================
131 1. All characters of a violated validity code are checked against the
132 validity code(s) specified in the test control files. This means
133 that you should now specify a validity compilation error as (for
134 example):
136 compile_result validity_error TEST VGCP(4) VLEL(2)
138 All test control files have been updated accordingly.
140 2. Two keywords are reserved in the test catalog and have special
141 meaning. Any test with the keyword `manual' will be skipped and
142 its status will be printed as "manual" instead of "passed" or
143 "failed. Any test with the keyword `skip' will be skipped and its
144 status will be printed as "skipped" instead of "passed" or "failed.
145 `Manual' is intended for tests which cannot be executed
146 automatically, either because they have not been automated (perhaps
147 they cannot be automated) or because they should not be executed
148 automatically (for example, if they cause loss of license and there
149 are a limited number of licenses).
152 Bugs and deficiencies which have been fixed in EiffelWeasel release 0.3
153 =======================================================================
155 1. Two new test instructions have been added. The `cleanup'
156 instruction deletes the EIFFELGEN subdirectory of the test
157 directory. The `abort_compile' instruction aborts a suspended
158 Eiffel compilation (awaiting resumption) and also does a `cleanup'.
159 See file "eweasel.doc" for details.
161 2. Includes cycles are now detected and reported as an include cycle
162 parsing error. Only cycles which use exactly the same file name
163 (after subsitution) as the test control file for a test or a
164 currently open include file are detected.
166 3. The `compile_result', `c_compile_result' and `execute_result'
167 instructions now fail if there is no pending Eiffel compilation, C
168 compilation or execution result (respectively) to be checked. They
169 also "use up" the result so that errors such as checking a
170 compilation result a second time without an intervening compilation
171 will be detected.
173 4. Suspended Eiffel compilations are now terminated gracefully via `q'
174 instead of being killed by a SIGKILL signal (9). This means that
175 EiffelWeasel can now be run without any problems when the license
176 daemon is running.
179 Bugs and deficiencies which have been fixed in EiffelWeasel release 0.2
180 =======================================================================
182 1. The copy_sub and copy_raw instructions now create the destination
183 directory if it does not exist.
185 2. The directory tree generated by each test is automatically deleted
186 (via /bin/rm -r) if the test passes and is retained if the test fails.
187 To always retain the output of each test regardless of pass/fail status,
188 use the -k option (keep) to eweasel.
190 3. The batch compiler does not always detect that a file has changed
191 if the change occurs less than one second after the previous
192 change. Due to this bug, I have modified eweasel to wait for one
193 second after each file copy. This slows it down considerably on my
194 machine, but ensures that incrementality tests give the correct
195 results.
197 4. Primitive facilities for selecting catalog tests have been added
198 via the -f command line option (for `filter'). The default filter
199 (used if no filter is specified) selects all tests in the catalog
200 for execution. The -f option provides simple filtering by test
201 name (-f 'test empty-export-feature-list') or by a single keyword
202 (-f 'kw syntax').
204 5. The test name in the catalog is always printed, but the test name
205 in the test control file is only printed (in brackets) if it does
206 not match the name in the catalog. The last component of the
207 source directory for the test is printed in parentheses. If a test
208 fails, its description is now displayed.
210 6. The c_compile instruction has been replaced by the two instructions
211 c_compile_work and c_compile_final. The execute instruction has
212 been replaced by the two instructions execute_work and
213 execute_final.
215 7. Approximately 150 new tests have been added. Some of these tests
216 are really new. Others check on bugs which have previously been
217 fixed (or are modifications of these bug scenarios).

  ViewVC Help
Powered by ViewVC 1.1.23