Opened 4 months ago

Closed 4 months ago

#4903 closed enhancement (fixed)

bc-5.0.0

Reported by: Bruce Dubbs Owned by: lfs-book
Priority: normal Milestone: 11.0
Component: Book Version: git
Severity: normal Keywords:
Cc:

Description

New major version.

Change History (2)

comment:1 by Bruce Dubbs, 4 months ago

# 5.0.0

This is a major production release with several changes:

  • Added support for OpenBSD's pledge() and unveil().
  • Fixed print bug where a backslash newline combo was printed even if only one digit was left, something I blindly copied from GNU bc, like a fool.
  • Fixed bugs in the manuals.
  • Fixed a possible multiplication overflow in power.
  • Temporary numbers are garbage collected if allocation fails, and the allocation is retried. This is to make bc and dc more resilient to running out of memory.
  • Limited the number of temporary numbers and made the space for them static so that allocating more space for them cannot fail.
  • Allowed integers with non-zero scale to be used with power, places, and shift operators.
  • Added greatest common divisor and least common multiple to lib2.bc.
  • Added SIGQUIT handling to history.
  • Added a command to dc (y) to get the length of register stacks.
  • Fixed multi-digit bugs in lib2.bc.
  • Removed the no prompt build option.
  • Created settings that builders can set defaults for and users can set their preferences for. This includes the bc banner, resetting on SIGINT, TTY mode, and prompt.
  • Added history support to Windows.
  • Fixed bugs with the handling of register names in dc.
  • Fixed bugs with multi-line comments and strings in both calculators.
  • Added a new error type and message for dc when register stacks don't have enough items.
  • Optimized string allocation.
  • Made bc and dc UTF-8 capable.
  • Fixed a bug with void functions.
  • Fixed a misspelled symbol in bcl. This is technically a breaking change, which requires this to be 5.0.0.
  • Added the ability for users to get the copyright banner back.
  • Added the ability for users to have bc and dc quit on SIGINT.
  • Added the ability for users to disable prompt and TTY mode by environment variables.
  • Added the ability for users to redefine keywords. This is another reason this is 5.0.0.
  • Added dc's modular exponentiation and divmod to bc.
  • Added the ability to assign strings to variables and array elements and pass them to functions in bc.
  • Added dc's asciify command and stream printing to bc.
  • Added a command to dc (Y) to get the length of an array.
  • Added a command to dc (,) to get the depth of the execution stack.
  • Added bitwise and, or, xor, left shift, right shift, reverse, left rotate, right rotate, and mod functions to lib2.bc.
  • Added the functions s2u(x) and s2un(x,n), to lib2.bc.

comment:2 by Bruce Dubbs, 4 months ago

Resolution: fixed
Status: newclosed

Fixed at commit fb8aee80518b711435f55b6aa6fb765cfd98d506

Package updates and a patch.
    Update to linux-5.13.10.
    Update to bc-5.0.0.
    Update to vim-8.2.3337.
    Add binutils-2.37 upstream patch.
Note: See TracTickets for help on using tickets.