Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Apr 2021 15:09:43 GMT
From:      Pietro Cerutti <gahr@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: df43fbea904a - main - lang/seed7: update to 05_20210322
Message-ID:  <202104221509.13MF9hS6008222@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by gahr:

URL: https://cgit.FreeBSD.org/ports/commit/?id=df43fbea904a3050675f258bd8225e05f8aaaf94

commit df43fbea904a3050675f258bd8225e05f8aaaf94
Author:     Pietro Cerutti <gahr@FreeBSD.org>
AuthorDate: 2021-04-22 15:03:35 +0000
Commit:     Pietro Cerutti <gahr@FreeBSD.org>
CommitDate: 2021-04-22 15:07:11 +0000

    lang/seed7: update to 05_20210322
    
    Changes:
    
    20210322:
    - Some missleading tests have been removed from chkflt.sd7. Many
      thanks go to Zachary Menzies for pointing out problems with the
      tests for trunc() and round().
    - The new library gif.s7i has been added. This library supports the
      GIF image file format.
    - The new library bmp.s7i has been added. This library supports the
      BMP image file format. The functions readBmp() and str(BMP) have
      been moved from draw.s7i to the new library bmp.s7i. The performance
      and functionality of readBmp() has been improved. The deprecated
      function read_bmp() has been removed (the function readBmp() can be
      used instead).
    - In bitdata.s7i the performance of getBitsLsb() and getBitsMsb() has
      been improved.
    - The functions peekBitsLsb(), skipBitsLsb(), peekBitsMsb() and
      skipBitsMsb() have been added to bitdata.s7i.
    - The functions lzwCompressLsb(), lzwDecompressLsb(),
      lzwCompressMsb(), lzwDecompressMsb(), lzwCompressMsbEarlyChange()
      and lzwDecompressMsbEarlyChange() have been added to lzw.s7i.
      The functions lzwEncodeMsb() and lzwDecodeMsb() have been
      deprecated (use lzwCompressMsbEarlyChange() respectively
      lzwDecompressMsbEarlyChange() instead).
    - Tests for INDEX_ERROR have been added to chkarr.sd7.
    - Tests for peekBitsLsb() and peekBitsMsb() have been added to
      chkbitdata.sd7.
    - Tests for << (shift left) have been added to chkint.sd7.
    - Tests for string concatenations where the second parameter is a
      string of length 1 (created by str(aChar)) have been added to
      chkstr.sd7.
    - The function getStriUpToChar() has been added to bytedata.s7i.
    - The experimental function seekable() has been added to file.s7i,
      null_file.s7i, clib_file.s7i, external_file.s7i, strifile.s7i,
      subfile.s7i, utf16.s7i, iobuffer.s7i, gzip.s7i, lzma.s7i, xz.s7i and
      zstd.s7i.
    - Several optimizations have been done in the compiler (s7c.sd7):
      - In comp/arr_act.s7i the index check for the action ARR_IDX has
        been improved.
      - In comp/int_act.s7i the overflow check for the actions
        INT_ADD_ASSIGN and INT_SBTR_ASSIGN has been improved.
      - In comp/intrange.s7i the function getIntRange() has been improved
        to get a range for the action INT_LSHIFT and to get a better range
        for the action INT_MOD.
      - In comp/str_act.s7i the function optimize_str_cat has been
        improved to generate a call of strConcatChar() or
        strConcatCharTemp(), if applicable.
      - In comp/chr_act.s7i the generation of the macro chrStrMacro()
        has been improved to avoid #line directives in macro parameters.
    - In drw_win.c the performance of the function drwImage() has been
      improved. Instead of calling SetPixel() for every pixel it now does
      one call of CreateBitmap().
    - In runerr.c in the function write_curr_position() the check for
      the current action object has been improved.
    - The functions strConcatChar() and strConcatCharTemp() have been
      added str_rtl.c.
    - The function filSeekable() has been added to fil_rtl.c.
    - The function determineLseekFunction() has been added to chkccomp.c.
    
    20210223:
    - Spelling corrections have been done in several files. Many thanks go
      to Jens Schleusener, for sending a source code misspelling report
      from Fossies.
    - The new library png.s7i has been added. This library supports the
      PNG image file format.
    - Seed7 has been improved to compile under Android with termux. This
      is described in src/read_me.txt.
    - A chapter about Unicode characters has been added to the manual.
    - The make7.sd7 example program has been improved. The processing of
      makefiles in make.s7i has been improved to process every rule just
      once. The handling of the option -n (don't execute commands) has
      been improved to work in the same way as in other make tools.
    - The test program chkbin.sd7 has been improved to to allow two
      possible NaN values as result of 0.0 / 0.0.
    - The test program chkflt.sd7 has been improved to allow that for some
      test cases trunc() and round() either return the correct value
      (integer.last) or raise RANGE_ERROR.
    - Tests for array bitset have been added to chkarr.sd7.
    - Tests for conversion and cardinality have been added to chkset.sd7.
    - The functions XChangeProperty() and XMapWindow() have been added to
      fwd_x11.c and x11_x.h.
    - The makefile mk_clang.mak has been improved to allow the replacement
      of system headers (x11_x.h and fwd_term.h). This way compilation
      works also without the original headers.
    - The warning box created by warn.c had too much width to be readable
      in termux. So this width has been reduced.
    - In drw_win.c the functions drwXPos() and drwYPos() have been fixed
      to return coordinates relative to the parent window.
    - The checks for the C compiler option -ftrapv in chkccomp.c have
      been improved. Now it is recognized, if integer overflow raises the
      signal SIGTRAP. Clang at the ARM processor uses SIGTRAP.
    - Changes have been done in sigutl.c to handle SIGTRAP and to raise
      OVERFLOW_ERROR in the signal handler (if chkccomp.c has recognized
      that an integer overflow raises SIGTRAP).
    - Changes have been done in chkccomp.c to support PostgreSQL version
      13. Additionally the logic to search for PostgreSQL dlls has been
      improved. Now it searches also for the libraries libcrypto and
      libssl. Now POSTGRESQL_DLL can be specified, with an absolute path
      of libpq.dll, in the makefile (which should echo it to chkccomp.h).
    - In the compiler (s7c.sd7) the handling of actual parameters for
      formal inout parameters has been improved. Now a struct element can
      be used as actual parameter for a formal inout parameter.
    - The compiler has been improved to reduce range checks for the
      expressions char(number), chr(number) and card(bitset(number)).
    - Interpreter and compiler have been improved to support the action
      REF_ISTEMP. The function isTemp() has been added to progs.s7i.
    - In comp/intrange.s7i the function getIntRange() has been improved
      to determine result ranges for INT_ADD and integer constants.
    - The compiler has been improved to assure that sigsetjmp() is not
      called with a value other than 0 or 1 for the second parameter
      (savesigs). According to the specification of sigsetjmp() all
      integer values are allowed for the second parameter (savesigs)
      and a non-zero value triggers a save of the current signal mask.
      ARM / Android / termux decided that just 0 and 1 are valid values
      and that any other value triggers a termination of the program
      (with SIGABRT).
    - The function drwCapture() in drw_win.c has been improved to work
      correct, if the screen has been scaled.
    - In drw_win.c the functions drwPut() and drwSetTransparentColor()
      have been improved such that images with a transparent color work.
    - The runtime of drwRgbColor() in drw_x11.c has been reduced by 31%
      (measured with gcc and valgrind, when reading a PNG image). This
      takes effect if a true color display is used.
    - The runtime of drwRtlImage in drw_rtl.c has been reduced by 63%
      (measured with gcc and valgrind, when reading a PNG image). The
      function memcpy_pixel() uses loop unrolling inspired by Duff's
      device.
    - The program chkccomp.c has been improved to determing the macro
      rgbToPixel() (if X11 graphics is used).
    - In exec.c the function exec_expr() has been improved to clear
      the TEMP flag for all results.
    - The makefiles have been improved to write the name of the make
      utility and the name of the makefile to version.h.
    
    20210130:
    - The parser (used by interpreter and compiler to read a program) has
      been improved to work correct, if seed7_05.s7i is not included.
      Many thanks go to Domingo Alvarez Duarte for pointing out that a
      missing seed7_05.s7i include statement causes a parser error.
    - The example program mirror.sd7 has been added. This program mirrors
      a rectangular screen area in a window.
    - The function capturePixmap has been added to graph.s7i. This
      function can be used to capture rectangular areas from the screen.
    - In the library graph.s7i the function openSubWindow() has been
      improved to allow top level windows without window decorations.
      This can be done by using the empty window as parent window.
    - Chapters about pragmas and compilation errors have been added to the
      manual.
    - The parser has been improved to work reliable in out of memory
      situations. Now the fatal parser error "Out of heap space" does not
      terminate the program.
    - The minor versions of interpreter and compiler have been increased.
      Now interpreter and compiler share the same revision level. Every
      compilation of the Seed7 interpreter increases the revision level.
    - A definition of VERSION_REVISION_LEVEL has been added to
      cc_conf.s7i. This is used in confval.sd7 and s7c.sd7.
    - Interpreter and compiler have been improved to support the new
      action DRW_CAPTURE.
    - In analyze.c the function analyzeProg() has been improved to
      catch the "Out of heap space" error and to clean up memory in out
      of memory situations. Now the old values of the global variables
      prog, interpreter_exception curr_exec_object, curr_argument_list and
      trace are restored, when the function is left.
    - In analyze.c the functions analyzeFile() and analyzeString() have
      been improved to work without setting interpreter_exception. Now
      these functions work the same in interpreted and compiled programs.
    - In atom.c the function read_atom() has been improved to keep the
      data structure consistent in out of memory situations.
    - The functions pop_owner() and close_current_stack() have been added
      to name.c.
    - In name.c the functions free_params(), get_object() and push_name()
      have been improved to have an additional 'currentProg' parameter.
    - In name.c the function get_object() has been improved to reverse its
      changes in case of an error.
    - In name.c the handling of errors has been improved in push_name(),
      eval_name_list(), inst_list(), inst_object_expr(), find_name(),
      search_name(), dollar_parameter() and dollar_inst_list(). In error
      situations changes are reversed, memory is freed and stack growing
      and shrinking is now done in a consistent way.
    - In entutl.c the function copy_params() has been improved to allocate
      the parameters first in a list and to assign them later.
    - The new functions pop_name_list() and get_entity_node() have been
      added to entutl.c.
    - In entutl.c the function get_entity() has been improved to handle
      error situations (out of memory).
    - In entutl.c in the function init_entity() dereferencing NULL is
      avoided now, if the memory allocation fails.
    - In blnlib.c the function bln_ternary() has been improved to work
      correct, if evaluate() returns NULL. This happens if an exception
      is triggered inside evaluate().
    - Implementations of drwBorder() and drwSetPos() have been added to
      drw_emc.c. The functions drwXPos() and drwYPos() have been improved.
    - The function drwCapture() has been added to drw_x11.c and drw_win.c.
    - The function drwOpenSubWindow() has been improved in drw_x11.c and
      drw_win.c to support the creation of unmanaged top level windows
      without window decorations (if the parent window is empty).
    - The function omitWindowDecorationsAndTaskbarEntry() has been added
      to drw_x11.c.
    - In flt_rtl.c the function setMantissaAndExponent has been improved
      to work without division by DOUBLE_MANTISSA_FACTOR.
    - The program chkccomp.c has been improved to write an error message,
      if executing a test program fails.
    - In error.c the functions read_ustri8_line(), read_and_print_line()
      and ustri8_buffer_to_stri() have been improved to work reliable in
      out of memory situations.
    - In fatal.c the function no_memory() has been improved to do a long
      jump to analyzeProg().
    - In listutl.c the function append_element_to_list() has been improved
      to keep the list_insert_place unchanged in out of memory situations.
    - In sctlib.c in the function sct_cat() the code to handle an error
      has been improved, to avoid using a pointer that might be invalid
      because of a previous realloc(). The function sct_elem() has been
      improved to consider that grow_stack() might fail.
    - In typeutl.c the function get_varfunc_type() has been improved to
      work correct, if new_type() returns NULL. This can happen in out of
      memory situations.
    - In findid.c the functions clean_idents() and write_idents() have
      been refactored to use a progType parameter and to allow NULL
      values in the ident tables.
    - In flistutl.c the function heap_chunk() has been improved to never
      do a realloc() on a memory chunk and to explain why this is done.
    - In flistutl.h the macros HEAP_OBJ(), HEAP_L_E(), HEAP_NODE() and
      HEAP_FILE() have been fixed to return FALSE in out of memory
      situations.
    - In hshlib.c the macro isit_not_null() has been added to several
      functions to assert that function references and compare results are
      not NULL.
    - In prclib.c the functions prc_begin(), prc_local(), prc_res_begin(),
      prc_res_local(), prc_return(), prc_return2(), prc_varfunc() and
      prc_varfunc2() have been improved to handle error situations (out of
      memory).
    - In prclib.c the macro isit_not_null() has been added to prc_case(),
      prc_case_def(), prc_case_hashset() and prc_case_hashset_def(). This
      macro checks that the sets after the keyword 'when' are not NULL.
    - In identutl.c the function init_idents() has been changed to leave
      a failed initialisation as is (this is cleaned up later).
    - In prg_comp.c the function prgDestr() has been improved to allow
      NULL for elements of the program structure. The function interpret()
      has been improved to restore the global variable
      interpreter_exception.
    - In exec.c the functions getErrInfoFromFailValue() and do_exec_call()
      have been added. The function exec_expr() has been improved to
      restore the global variable interpreter_exception.
    - In executl.c the functions do_destroy(), create_return_object(),
      create_local_object(), destroy_local_object() and
      destroy_local_init_value() have been improved to handle error
      situations (out of memory).
    - In match.c the function match_subexpr() has been improved to
      handle out of memory situations.
    - In runerr.c the functions write_position_info() and
      write_call_stack_element() have been improved to recognize valid
      data better.
    - In runerr.c the functions run_error(), empty_value() and
      var_required() have been improved to write the error message only,
      if exception tracing is switched on. Now these functions raise
      ACTION_ERROR instead of RANGE_ERROR.
    - The function freeOptions() has been added to s7.c. The function
      raise_error2() has been improved to handle an out of memory
      situation.
    - In symbol.c the function close_symbol() has been improved to allow
      NULL for symbol.name and symbol.striValue.
    - In syvarutl.c the function init_sysvar() has been improved to
      define a dummy value for SYS_EXPR_TYPE (EXPR_TYPE). This avoids an
      error, if the source has no include directive.
    - The function printLocObj() has been added to traceutl.c. The
      functions prot_list_limited() and trace1() have been improved to
      recognize corrupt category fields.
    - In cmd_rtl.c code has been moved from cmdReadlink(), cmdFileTypeSL()
      and cmdGetcwd() to the new functions doReadLink(), getFileTypeSL()
      and doGetCwd() respectively. The new functions use err_info to
      report errors instead of raising an exception. The old functions
      have been refactored to call the new functions.
    - In cmd_rtl.c the function followLink() has been refactored to call
      getFileTypeSL() and doReadLink().
    - The program levelup.c has been added. This program is called by the
      makefile to increase the revision level of interpreter and compiler.
    - In comp/expr_utl.s7i the function prepare_win_result() has been
      fixed to use drwDestr() instead of winDestr().
    - The system declaration for "type" hase been removed from syntax.s7i.
    - The makefiles have been adjusted to increase the revision level
      (stored in level.h) before the interpreter is compiled. This way
      interpreter and compiler get the same revision level.
    - Documentation comments have been improved in array.s7i, graph.s7i,
      leb128.s7i, analyze.c, cmd_rtl.c, drw_emc.c, drw_win.c, drw_x11.c,
      entutl.c, error.c and exec.c.
---
 lang/seed7/Makefile  | 2 +-
 lang/seed7/distinfo  | 6 +++---
 lang/seed7/pkg-plist | 3 +++
 3 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/lang/seed7/Makefile b/lang/seed7/Makefile
index 87e71c8871d7..723913357f9a 100644
--- a/lang/seed7/Makefile
+++ b/lang/seed7/Makefile
@@ -1,7 +1,7 @@
 # Created by: gahr
 
 PORTNAME=	seed7
-DISTVERSION=	05_20210106
+DISTVERSION=	05_20210322
 PORTREVISION=	0
 CATEGORIES=	lang
 MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/${DISTNAME}/
diff --git a/lang/seed7/distinfo b/lang/seed7/distinfo
index b76660d84b2d..dc31549aae8e 100644
--- a/lang/seed7/distinfo
+++ b/lang/seed7/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1610360904
-SHA256 (seed7_05_20210106.tgz) = 8b1b200937c134fc30d90b2ed90185b0fb5ad7c9a6d3f28a46ca47a93836f9d3
-SIZE (seed7_05_20210106.tgz) = 3468435
+TIMESTAMP = 1619099643
+SHA256 (seed7_05_20210322.tgz) = 210a3f2c31e97c4f7626672150013b9f27b64015245fb7d283a44c44953364ea
+SIZE (seed7_05_20210322.tgz) = 3522216
diff --git a/lang/seed7/pkg-plist b/lang/seed7/pkg-plist
index c689c78a503c..4a7e9ac83acc 100644
--- a/lang/seed7/pkg-plist
+++ b/lang/seed7/pkg-plist
@@ -20,6 +20,7 @@ lib/seed7/lib/bitmapfont.s7i
 lib/seed7/lib/bitset.s7i
 lib/seed7/lib/bitsetof.s7i
 lib/seed7/lib/blowfish.s7i
+lib/seed7/lib/bmp.s7i
 lib/seed7/lib/boolean.s7i
 lib/seed7/lib/browser.s7i
 lib/seed7/lib/bstring.s7i
@@ -120,6 +121,7 @@ lib/seed7/lib/ftpserv.s7i
 lib/seed7/lib/getf.s7i
 lib/seed7/lib/gethttp.s7i
 lib/seed7/lib/gethttps.s7i
+lib/seed7/lib/gif.s7i
 lib/seed7/lib/graph_file.s7i
 lib/seed7/lib/graph.s7i
 lib/seed7/lib/gtkserver.s7i
@@ -165,6 +167,7 @@ lib/seed7/lib/pic32.s7i
 lib/seed7/lib/pixmap_file.s7i
 lib/seed7/lib/pixmapfont.s7i
 lib/seed7/lib/pkcs1.s7i
+lib/seed7/lib/png.s7i
 lib/seed7/lib/poll.s7i
 lib/seed7/lib/process.s7i
 lib/seed7/lib/progs.s7i



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202104221509.13MF9hS6008222>