./math/py-libixion, General purpose formula parser & interpreter

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 0.19.0, Package name: py311-libixion-0.19.0, Maintainer: pkgsrc-users

Python bindings for Ixion.

Ixion is a general purpose formula parser & interpreter that can
calculate multiple named targets, or "cells".

The goal of this project is to create a library for calculating
the results of formula expressions stored in multiple named targets,
or "cells". The cells can be referenced from each other, and the
library takes care of resolving their dependencies automatically
upon calculation. The caller can run the calculation routine either
in a single-threaded mode, or a multi-threaded mode. The library
also supports re-calculations where the contents of one or more
cells have been modified since the last calculation, and a partial
calculation of only the affected cells need to be calculated.


Required to run:
[devel/boost-libs] [math/libixion] [lang/python37]

Required to build:
[devel/boost-headers] [devel/mdds] [pkgtools/cwrappers] [devel/spdlog]

Master sites:

Filesize: 523.965 KB

Version history: (Expand)


CVS history: (Expand)


   2024-02-10 01:44:53 by Ryo ONODERA | Files touched by this commit (1)
Log message:
py-libixion: Reset PKGREVISION
   2023-12-29 19:25:02 by Adam Ciarcinski | Files touched by this commit (254)
Log message:
revbump for boost-libs
   2023-10-15 09:08:09 by Ryo ONODERA | Files touched by this commit (6)
Log message:
libixion, py-libixion: Update to 0.18.1

Changelog:
0.81.1
* fixed a 32-bit Linux build issue as discovered on Debian, due to
  a clash on two 32-bit unsigned integer types being used with std::variant.

0.18.0
C++ API
* removed the formula_model_access interface from model_context, and
  switched to using model_context directly everywhere.
* revised formula_tokens_t type to remove use of std::unique_ptr for each
  formula_token instance. This should improve memory locality when iterating
  through an array of formula token values. A similar change has also been
  made to lexer_tokens_t and lexer_token types.

formula interpreter
* added the following 41 built-in functions:
    ABS
    AND
    COLUMN
    COLUMNS
    COUNT
    COUNTBLANK
    EXACT
    FALSE
    FIND
    ISBLANK
    ISERROR
    ISEVEN
    ISFORMULA
    ISLOGICAL
    ISNA
    ISNONTEXT
    ISNUMBER
    ISODD
    ISREF
    ISTEXT
    LEFT
    MEDIAN
    MID
    MODE
    N
    NA
    NOT
    OR
    REPLACE
    REPT
    RIGHT
    ROW
    ROWS
    SHEET
    SHEETS
    SUBSTITUTE
    T
    TEXTJOIN
    TRIM
    TRUE
    TYPE

* added support for multi-sheet references in Excel A1 and Excel R1C1
  grammers.
   2023-05-16 23:20:53 by Thomas Klausner | Files touched by this commit (38)
Log message:
*: PKGREVISION bump for fmtlib shlib major bump
   2023-04-23 16:26:33 by Adam Ciarcinski | Files touched by this commit (271)
Log message:
revbump for boost
   2023-01-22 17:28:39 by Ryo ONODERA | Files touched by this commit (271)
Log message:
*: Recursive revbump from Boost 1.81.0
   2022-02-05 05:28:11 by Ryo ONODERA | Files touched by this commit (6)
Log message:
{py-,}libixion: Update to 0.17.0

Changelog:
0.17.0:
C++ API
    set the baseline C++ version to 17.
    mdds has been internalized so that the public header no longer contains \ 
references to mdds. With this change, the users can use different API versions \ 
of mdds between the ixion build and run-time use.
    cleaned up public API to make use of std::string_view and std::variant where \ 
appropriate.
formula interpreter
    implemented built-in LEFT() function.
misc
    it is no longer required to set the size of void* at build time to ensure \ 
the binaries to be fully functional.
    fixed a bug where named expressions with names containing invalid characters \ 
were still allowed in.
   2022-01-10 02:46:47 by Ryo ONODERA | Files touched by this commit (273)
Log message:
*: Recursive revbump from boost 1.78.0