further cosmetic fixes

This commit is contained in:
Daniel Kochmański 2016-12-19 11:25:00 +01:00
parent 8095aeb33b
commit 0476bca326

146
CHANGELOG
View file

@ -51,7 +51,7 @@ Best regards,
ECL Development Team
** API changes
- Added better interface for package-locks
- Added better interface for package-locks.
Introduced functions:
=ext:package-locked-p package=
@ -72,37 +72,30 @@ ECL Development Team
(defpackage foo (:lock t))
#+END_SRC
- mp:holding-lock-p: introduce new function for multiprocessing.
- =mp:holding-lock-p=: introduce new function for multiprocessing. Function
verifies if lock is hold by the thread which calls the function. Usage:
=(mp:holding-lock-p my-lock)=.
Function verifies if lock is hold by the thread which calls the
function. Usage: =(mp:holding-lock-p my-lock)=.
- make-random-state: fix problem with simple-vectors
The correct initialization types for =make-random-state= are:
=(OR RANDOM-STATE FIXNUM (MEMBER T NIL))=.
- =make-random-state=: fix problem with simple-vectors. The correct
initialization types for =make-random-state= are: =(OR RANDOM-STATE
FIXNUM (MEMBER T NIL))=.
Initializing a random state with an appropriate array (element type and
arity dependent on platform) is also possible.
- ext:random-state-array: new extension for random-states. Usage:
- =ext:random-state-array=: new extension for random-states. Usage:
=(ext:random-state-array random-state)=.
- ext:terminate-process: new extension for external processes. Usage:
=(ext:terminate-process process)= with a second, optional boolean argument
whenever termination should be forced or not.
- =ext:terminate-process=: new extension for external processes. Usage:
=(ext:terminate-process process)= with a second, optional boolean
argument whenever termination should be forced or not.
** Enhancements
- Implemented CDR-7
- Implemented =CDR-7=.
https://common-lisp.net/project/cdr/document/7/index.html
- Implemented CDRs: CDR-1, CDR-5, CDR-14
Both CDR-1 and CDR-5 were already implemented, CDR-14 made us to list
them in =*features*=
- implemented CDRs: =CDR-1=, =CDR-5=, =CDR-14=. Both =CDR-1= and =CDR-5=
were already implemented, CDR-14 made us to list them in =*features*=
(https://common-lisp.net/project/cdr/document/14/index.html).
- if ECL is build with =--with-cxx= option, =:CXX-CORE= is present in
@ -116,48 +109,37 @@ ECL Development Team
- ASDF has been upgraded to version 3.1.7.26 (with a few patches scheduled
for 3.2.0).
- Bundled CLX has been purged
- bundled CLX has been purged. Lately I've fixed ECL support on portable
CLX maintained by sharplispers on https://github.com/sharplispers/clx
(available via QuickLisp).
Lately I've fixed ECL support on portable CLX maintained by sharplispers
on https://github.com/sharplispers/clx (available via QuickLisp).
- initial port for the Haiku platform. The port is done by Kacper Kasper's
work, one of Haiku developers. Threads are not supported yet.
- Initial port for the Haiku platform
- refactored ECL internal tests framework. Tests in =src/tests= are now
asdf-loadable (with =load-source-op=) and divided into test suites. =make
check= target runs all regression and feature tests which aren't supposed
to fail.
The port is done by Kacper Kasper's work, one of Haiku
developers. Threads are not supported yet.
- removed 15000 lines of obsolete code. Files not included in the
buildsystem but lingering in the codebase or options failing to
build. All info is added in the new documentation in the section "Removed
interfaces".
- Refactored ECL internal tests framework
- improved man page and help output. Man page now contains up-to-date list
of flags, as well as explanation of flag's behavior.
Tests in =src/tests= are now asdf-loadable (with =load-source-op=) and
divided into test suites. =make check= target runs all regression and
feature tests which aren't supposed to fail.
- deprecated long flags with one dash, added two-dash version. Flags that
aren't one-character, but start with one dash (e.g. =-eval=) are now
deprecated; long version =--eval= was added instead.
- Removed 15000 lines of obsolete code
- indented C/C++ code to follow emacs's gnu C style. This is a first step
towards coding standards in the documentation. Additionally all in the
src/c/ directory are listed in the appropraite documentation section
(new-doc).
Files not included in the buildsystem but lingering in the codebase or
options failing to build. All info is added in the new documentation in the
section "Removed interfaces".
- Improved man page and help output.
Man page now contains up-to-date list of flags, as well as explanation of
flag's behavior.
- Deprecated long flags with one dash, added two-dash version
Flags that aren't one-character, but start with one dash (e.g. =-eval=)
are now deprecated; long version =--eval= was added instead.
- Indented C/C++ code to follow emacs's gnu C style
This is a first step towards coding standards in the
documentation. Additionally all in the src/c/ directory are listed in the
appropraite documentation section (new-doc).
- Refactored =list_current_directory in unixfsys.d=
Function was obfuscated with ifdefs with non-even pairs of =#\{= and
=#\}=.
- refactored =list_current_directory in unixfsys.d=. Function was
obfuscated with ifdefs with non-even pairs of =#\{= and =#\}=.
** Issues fixed
- ECL signals floating point exceptions in top-level console.
@ -165,50 +147,40 @@ ECL Development Team
- =mp:rwlock= is treated as built-in class (previously process crashed if
=class-of= was called on such object).
- ECL builds now succesfully with `--with-ieee-fp=no' option
- ECL builds now succesfully with =--with-ieee-fp=no= option.
- ext:file-stream-fd
- =ext:file-stream-fd=: doesn't cause an internal-error if called with
something not being a =file-stream= (signals a =SIMPLE-TYPE-ERROR=
condtition).
Doesn't cause an internal-error if fed with not a file-stream (signals a
=SIMPLE-TYPE-ERROR= condtition).
- =stable-sort=: bugfix and improvement in speed. Adapted from SBCL by
Diogo Franco.
- stable-sort bugfix and improvement in speed
- typep: accept =*= type specifier as abbreviation of =T= as described in
=2.4.3 Type Specifiers= of the specification.
Adapted from SBCL by Diogo Franco.
- MOP: fix problemes when redefining non-standard and anonymous
classes. Bugs identified and fixed by Pascal Costanza.
- typep: accept * type specifier as abbreviation of t as described in
'2.4.3 Type Specifiers' of the specification.
- =getcwd=: fix issue with too long pathname. This fixes the regression,
which crashed ECL at start when pathname exceeded 128 characters limit.
- MOP: fix problemes when redefining non-standard and anonymous classes
- =make-random-state=: fix a problem with simple-vectors. Until now =#$=
reader macro accepted simple vectors as an argument, what lead to bugs if
vector didn't match specific requirements like the element type or the
arity. Now we sanitize this.
Bugs identified and fixed by Pascal Costanza.
- getcwd: fix issue with too long pathname
This fixes the regression, which crashed ECL at start when pathname
exceeded 128 characters limit.
- make-random-state: fix problem with simple-vectors
Until now #$ reader macro accepted simple vectors as an argument, what
lead to bugs if vector didn't match specific requirements like the
element type or the arity. Now we sanitize this.
- make-load-form: provide implementation for random-state objects
- =make-load-form=: provide implementation for random-state objects.
- thread fix on msvc: on windows importing thread was closing the thread
handler so the thread wakeup wasn't working because the handler is not
more valid.
- import thread wasn't set upping a proper environment: on some case
- import thread wasn't set upping a proper environment: on some case the
thread was mistakenly thinking that the thread was already registered.
the thread was mistakenly thinking that the thread was already
registered.
- =ECL_HANDLER_CASE= and =ECL_RESTART_CASE= didn't work as expected
Bug identified and fixed by Vadim Penzin.
- =ECL_HANDLER_CASE= and =ECL_RESTART_CASE= didn't work as expected. Bug
identified and fixed by Vadim Penzin.
* 16.1.2 changes since 16.0.0