Skip to content

Commit ca40a6b

Browse files
committed
fix for release tests failing to catch certain failures...to be tested
1 parent 6a1f789 commit ca40a6b

File tree

3 files changed

+45
-153
lines changed

3 files changed

+45
-153
lines changed

ChangeLog

Lines changed: 4 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,72 +1,11 @@
11
For the latest news, visit the SparForte web site.
22

3-
Objective: Shell modernization and reducing technical debt.
3+
Objective: TBD
44

5-
CHANGES SINCE 2.5
5+
CHANGES SINCE 2.6
66

7-
1. New: --session option to store history and local profiles under alternate names.
7+
1. Fix: --without-sound now builds successfully.
88

9-
2. New: System.Session_Name to read the name from --session.
9+
2. Fix: --without-readline now builds successfully.
1010

11-
3. New: pragma prompt_idle_script and prompt_idle_speed.
12-
13-
4. New: New examples rock.sp, user_input.sp, primes_asc.sp.
14-
15-
5. New: case in is now case procedure.
16-
17-
6. Fix: GCC-style error messages no longer contains coloured text with --colour/--color.
18-
19-
7. Fix: non-limited volatiles, which cannot be used in expressions, no longer have an error for not being declared limited.
20-
21-
8. Fix: usable parameters in null subprograms no longer report an error if they are not used or are not referenced.
22-
23-
9. Refactor: end-of-line CR/LF definitions are now in the os_binding files.
24-
25-
10. Fix: --gcc-errors no longer hides error messages at an interactive prompt.
26-
27-
11. Fix: with APQ, Makeincl no longer aborts a make clean because this generated file was removed in a previous make clean.
28-
29-
12. Refactor: error reporting functions have been redesigned for better security and support for European characters. Also, highlighted keywords in source lines in error messages.
30-
31-
13. Fix: libc group_member() missing from some Ubuntu Linux where __USE_GNU is not set. Occurred on a recent Ubuntu update. Added workaround based on BSD hack.
32-
33-
14. Fix: if an error occurs while parsing a pragma template, do not enable templates and get an internal error when rendering the HTTP header.
34-
35-
15. Fix: template error messages are now consistently written to standard error as a single line for logging purposes.
36-
37-
16. New: basic TOML/INI template support.
38-
39-
17. New: error messages include the percentage of distance through the script where the error occurred.
40-
41-
18. Fix: extended ASCII characters render correctly in log package messages.
42-
43-
19. Change: normal errors (not GCC format) show the line before the error line as well as the error line, for more context.
44-
45-
20. Change: replaced "let" commands in shell scripts with $((..)) to make them compatible with feature-poor dash shell.
46-
47-
21. New: configure --jobs option.
48-
49-
22. Refactor: standardized numeric values in the language to a dedicated type instead of using long_float's.
50-
51-
23. Fix: directories with spaces now tab complete correctly.
52-
53-
24. Fix: type errors are now caught again in templates.
54-
55-
25. Fix: built-in functions with out parameters no longer require the out variable to be declared first.
56-
57-
26. New: pragma restriction( no_prompt_history ) to disable saving interactive prompt history when SparForte is shutting down.
58-
59-
27. Change: the SIGQUIT signal is now ignored, as in the BASH shell.
60-
61-
28. Change: the SIGTERM signal is handled for interfactive sessions, as in the BASH shell.
62-
63-
29. Change: the provision script supports "without" options. A full install of all software dependencies is no longer required.
64-
65-
30. Change: replaced some text_io functions within the language to deal with interrupted system calls based device_error exceptions.
66-
67-
31. New: Bourne shell expansions: ${X||} for absolute value, ${X|} for rounded value, ${X|^} for ceiling value, ${X|,} for floor value.
68-
69-
32. New: provision.sh updates for Red Hat Linux 9, but SDL 1.2 is not fully included and it must be built --without-sdl.
70-
71-
33. Change: l10n changed to support Red Hat Linux 9 which disables GNU extensions.
7211

ChangeLog.last

Lines changed: 35 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -1,125 +1,72 @@
11
For the latest news, visit the SparForte web site.
22

3-
Objective: Bug fixes following 2.4 and reducing technical debt.
3+
Objective: Shell modernization and reducing technical debt.
44

5-
CHANGES SINCE 2.4
5+
CHANGES SINCE 2.5
66

7-
1. New: doubly_linked_lists.parcel.
7+
1. New: --session option to store history and local profiles under alternate names.
88

9-
2. Fix: fixed "positive value is less than zero" error for a zero.
9+
2. New: System.Session_Name to read the name from --session.
1010

11-
3. New: renaming a generic type.
11+
3. New: pragma prompt_idle_script and prompt_idle_speed.
1212

13-
4. Fix: missing filename at end-of-line for >, 2>, < no longer produce an exception.
13+
4. New: New examples rock.sp, user_input.sp, primes_asc.sp.
1414

15-
5. Change: forgetting a "when" in a case statement with strings, which looks
16-
like a shell command, is now an error, detected by the presence of the big arrow
17-
(=>).
15+
5. New: case in is now case procedure.
1816

19-
6. Fix: out mode formal parameters that are not written to will have a
20-
"declared but not written to" error.
17+
6. Fix: GCC-style error messages no longer contains coloured text with --colour/--color.
2118

22-
7. Fix: . and .. directories ignored on file completions ending with a /.
19+
7. Fix: non-limited volatiles, which cannot be used in expressions, no longer have an error for not being declared limited.
2320

24-
8. New: strings.to_hexadecimal_digits
21+
8. Fix: usable parameters in null subprograms no longer report an error if they are not used or are not referenced.
2522

26-
9. Fix: added policy and configuration to built-in help.
23+
9. Refactor: end-of-line CR/LF definitions are now in the os_binding files.
2724

28-
10. Fix: strings package csv_field, csv_replace, field, is_slashed_date, is_typo_of, mktemp, split, to_base64, to_escaped, to_hexadecimal_digits, to_json are now not allowed with pragma ada_95. I don't remember if there was a reason there were allowed previously.
25+
10. Fix: --gcc-errors no longer hides error messages at an interactive prompt.
2926

30-
11. Fix: structured scripts no longer auto-declare variables. unstructured scripts will still auto-declare variables.
27+
11. Fix: with APQ, Makeincl no longer aborts a make clean because this generated file was removed in a previous make clean.
3128

32-
12. New: tilde works with tab completions on files and commands..
29+
12. Refactor: error reporting functions have been redesigned for better security and support for European characters. Also, highlighted keywords in source lines in error messages.
3330

34-
13. Fix: tab completion of a single directory now works correctly.
31+
13. Fix: libc group_member() missing from some Ubuntu Linux where __USE_GNU is not set. Occurred on a recent Ubuntu update. Added workaround based on BSD hack.
3532

36-
14. New: basic sudo tab completion handling.
33+
14. Fix: if an error occurs while parsing a pragma template, do not enable templates and get an internal error when rendering the HTTP header.
3734

38-
15. Fix: tab completion of a command no longer adds "./" where there is none.
35+
15. Fix: template error messages are now consistently written to standard error as a single line for logging purposes.
3936

40-
16. Change: homonymn checking no longer applies to unstructured scripts.
37+
16. New: basic TOML/INI template support.
4138

42-
CHANGES SINCE 2.4.1
39+
17. New: error messages include the percentage of distance through the script where the error occurred.
4340

44-
17. New: umask built-in command (not octal values).
41+
18. Fix: extended ASCII characters render correctly in log package messages.
4542

46-
18. Fix: issue with the number "2" in shell words treated as a number fixed.
43+
19. Change: normal errors (not GCC format) show the line before the error line as well as the error line, for more context.
4744

48-
19. Fix: "return" no longer produces an error with pragma annotate.
45+
20. Change: replaced "let" commands in shell scripts with $((..)) to make them compatible with feature-poor dash shell.
4946

50-
20. Change: style issues no longer enforced for unstructured scripts. Double-quoted shell word check no longer treated as a style issue.
47+
21. New: configure --jobs option.
5148

52-
21. New: btree_io.recover, hash_io.recover.
49+
22. Refactor: standardized numeric values in the language to a dedicated type instead of using long_float's.
5350

54-
22. New: pragma volatile can have a timeout duration in seconds.
51+
23. Fix: directories with spaces now tab complete correctly.
5552

56-
23. New: opengl_third, opengl_fourth examples.
53+
24. Fix: type errors are now caught again in templates.
5754

58-
24. New: strings.levenshtein, strings.soundex, strings.replace_all, strings.starts, strings.ends, strings.word_count, strings.compare, strings.index_set.
55+
25. Fix: built-in functions with out parameters no longer require the out variable to be declared first.
5956

60-
25. Fix: to_hexadecimal_digits no longer allowed with pragma ada_95.
57+
26. New: pragma restriction( no_prompt_history ) to disable saving interactive prompt history when SparForte is shutting down.
6158

62-
26. New: l10n package.
59+
27. Change: the SIGQUIT signal is now ignored, as in the BASH shell.
6360

64-
27. New: hashed_maps package.
61+
28. Change: the SIGTERM signal is handled for interfactive sessions, as in the BASH shell.
6562

66-
28. New: vectors package.
63+
29. Change: the provision script supports "without" options. A full install of all software dependencies is no longer required.
6764

68-
29. New: case in statement can have multiple test variables and return expressions.
65+
30. Change: replaced some text_io functions within the language to deal with interrupted system calls based device_error exceptions.
6966

70-
30. New: case with multiple variables (like rust, python, and some other languages).
67+
31. New: Bourne shell expansions: ${X||} for absolute value, ${X|} for rounded value, ${X|^} for ceiling value, ${X|,} for floor value.
7168

72-
31. New: box <> allowed in case when conditions.
69+
32. New: provision.sh updates for Red Hat Linux 9, but SDL 1.2 is not fully included and it must be built --without-sdl.
7370

74-
32. New: demonstration examples contracts, design_examples, scheduler, side_effects.
75-
76-
33. Fix: parent contracts which raise an exception now propogate the exception.
77-
78-
34. Change: Improved some error messages for context and ease of understanding.
79-
80-
35. Fix: restored a unreachable code by raise test that was removed when raise..when was added.
81-
82-
36. Fix: [Blady] various OS/X changes.
83-
84-
37. Fix: [Zhu] Slackware / GCC 11 fix.
85-
86-
38. New: Support for Raspian / Debian 11.1 (Bullseye) on Raspberry Pi.
87-
88-
39. New: Support for YAML substitutions.
89-
90-
40. Change: [Beader] identifiers must differ by more than underscores in formal scripts.
91-
92-
41. Change: Changes to configure and provision scripts to support building in Ubuntu Docker container. Changes not yet made for other O/S. Example Dockerfile included with source code.
93-
94-
42. Fix: use of constant on record fields vs variable fixed. Fixed subsequent issues with affirm clauses. Fixed impacted example programs.
95-
96-
43. Fix: test cases in pragma test are now syntax checked.
97-
98-
44. Fix: written variable test for out parameters only applies if the variable is not auto-declared.
99-
100-
45: New: ${X^^}, ${X^}, ${X,,} for uppercase, lowercase, proper case.
101-
102-
46: Change: default for makefile is to build with 4 threads.
103-
104-
47: Fix: doubly linked lists parameters should work correctly.
105-
106-
48: Fix: recursion no longer confused by new parameters being created in some circumstances.
107-
108-
49: New: more examples: luhn.sp, hanoi.sp, ipv4.sp.
109-
110-
50: New: -q / --quiet for brief error messages. The default is detailed error messages.
111-
112-
51: Fix: function return values expressions now type checked and type casted where necessary.
113-
114-
52. Fix: certain user functions not allowing return values fixed.
115-
116-
53. Fix: contract failures in subprogram parameters no longer hidden or raised later.
117-
118-
54: New: new logs procedures for simple metrics: logs.metrics, logs.checkpoint
119-
120-
55: Fix: a blank line at the start of a with separate file no longer raises an exception.
121-
122-
56: Fix: provision.sh script updated and fixed for SuSE Linux.
123-
124-
57: Change: Updates for FreeBSD 13. Build successful without BDB support (FreeBSD BDB is very old). Tests not passing, perhaps GCC Ada is too old on FreeBSD.
71+
33. Change: l10n changed to support Red Hat Linux 9 which disables GNU extensions.
12572

src/testsuite/build_tests.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ make distclean
109109
make all
110110
if [ $? -ne 0 ] ; then
111111
echo "without-readline failed"
112+
exit 192
112113
fi
113114
# TODO: readline not checked by running spar. an easy way??
114115

@@ -120,6 +121,7 @@ make distclean
120121
make all
121122
if [ $? -ne 0 ] ; then
122123
echo "without-sound failed"
124+
exit 192
123125
fi
124126
# TODO: sound not checked by running spar.
125127

@@ -131,6 +133,7 @@ make distclean
131133
make all
132134
if [ $? -ne 0 ] ; then
133135
echo "without-opengl failed"
136+
exit 192
134137
fi
135138
# TODO: opengl not checked by running spar.
136139

@@ -142,6 +145,7 @@ make distclean
142145
make all
143146
if [ $? -ne 0 ] ; then
144147
echo "without-sdl failed"
148+
exit 192
145149
fi
146150
# TODO: pcre not checked by running spar.
147151

@@ -153,6 +157,7 @@ make distclean
153157
make all
154158
if [ $? -ne 0 ] ; then
155159
echo "without-pcre failed"
160+
exit 192
156161
fi
157162
# TODO: pcre not checked by running spar.
158163

@@ -164,6 +169,7 @@ make distclean
164169
make all
165170
if [ $? -ne 0 ] ; then
166171
echo "without-pcre failed"
172+
exit 192
167173
fi
168174
# TODO: pcre not checked by running spar.
169175

0 commit comments

Comments
 (0)