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

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


Branch: CURRENT, Version: 0.17.0nb1, Package name: py310-libixion-0.17.0nb1, 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: 488.121 KB

Version history: (Expand)


CVS history: (Expand)


   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
   2021-09-29 21:01:31 by Adam Ciarcinski | Files touched by this commit (872)
Log message:
revbump for boost-libs
   2021-04-21 15:25:34 by Adam Ciarcinski | Files touched by this commit (864)
Log message:
revbump for boost-libs
   2021-02-06 07:23:22 by Ryo ONODERA | Files touched by this commit (10)
Log message:
libixion, py-libixion: Update to 0.16.1

Changelog:
0.16.1
    fixed a build issue on 32-bit linux platforms, caused by slicing
    of integer string ID values.

    worked around floating point rounding errors which prevented
    two theoretically-equal numeric values from being evaluated as
    equal in test code.

0.16.0
    documentation
	added quickstart sections for using model_context and
	document classes.

	added code example for cell_access class.

    C++ API
	added new function to allow printing of single formula
	tokens.

	added method for setting cached results on formula cells
	in model_context.

	changed the model_context design to ensure that all sheets
	are of the same size.

	added an accessor method to formula_model_access interface
	(and implicitly in model_context) that directly returns a
	string value from cell.

	added cell_access class for querying of cell states without
	knowing its type ahead of time.

	added document class which provides a layer on top of
	model_context, to abstract away the handling of formula
	calculations.

	deprecated model_context::erase_cell() in favor of
	empty_cell().

    formula parser / interpreter
	added support for 3D references - references that contain
	multiple sheets.

	added support for the exponent (^) and concatenation (&)
	operators.

	fixed incorrect handling of range references containing
	whole columns such as A:A.

	added support for unordered range references - range
	references whose start row or column is greater than their
	end position counterparts, such as A3:A1.

	fixed a bug that prevented nested formula functions from
	working properly.

	implemented Calc A1 style reference resolver.

    misc
	formula results now directly store the string values when
	the results are of string type. They previously stored
	string ID values after interning the original strings.

	removed build-time dependency on spdlog.
   2021-01-01 09:24:59 by Ryo ONODERA | Files touched by this commit (266)
Log message:
*: Recursive revbump from boost-1.75.0