Skip to content

Releases: verri/jules

CMake support and some improvements

31 Aug 17:03
f97a883

Choose a tag to compare

What's new?

  • CMake support
  • jules::drop
  • jules::index_view

Fixes

Some small fixes

(Almost)-complete Array module.

11 Oct 15:35

Choose a tag to compare

🎉 Celebrating 4K lines of code!

What's new?

In this release, all the basic and fundamental functionalities of the Array module have been implemented.
They are not still documented, but I do not intend to implement major changes for at least 5 years.

Many small utilities have been implemented and the test coverage has increased a lot.

Changes

The major change in this release is that the operator() of arrays has been removed.
Instead, an operator[] is used for each dimension. Such change brings not only a more familiar
syntax, but also many performance improvements.

New utilities for arrays and Range TS changes.

23 Mar 14:54

Choose a tag to compare

In this patch, some math and numeric utilities for arrays were added and some changes
were made to comply with the newest Range TS.

Bug fixes

  • Complying with the newest Range TS.
  • Fixed normal distribution p.d.f. formula.

New features

  • Added sqrt, log, var, sd, mean, freq, which.

Coercion improvements and more stable Array module

27 Jan 23:05

Choose a tag to compare

Bug fixes

  • Jules now compiles with -pedantic.
  • When using BLAS-optimized operation, the maximum number of rows and columns is checked.
  • Fixed virtual destructor for column_model.
  • Fixed some narrowing integer conversions in internal code.
  • Fixed critical bug while checking slicing bounds.
  • Removed useless slice::iterator::operator->.
  • Preventing view of temporary columns.
  • Fixed several bugs in empty columns.
  • More documentation.

New "stable" features/changes

  • Added operations for contiguous_array.
  • Better defer utilities (using macros, though).
  • Added uninitialized constructor for base_array.
  • base_array is value-initialized by default instead of default-initialized.

New "experimental" features/changes

  • Calling column::data does not coerce the column type.
  • Added to_matrix for dataframes.
  • to_view now performs automatic coercion in columns.
  • Added index_t, int and unsigned coercion rules.
  • Learned coercions must be explicitly defined by the user.
  • Improved column_model to support partial cloning and resizing.
  • Added initial dataframe action support, with head implementation.

Initial Dataframe support

13 Jan 19:49

Choose a tag to compare

New features

  • Initial dataframe and column support.
  • Added jules::meta utilities.
    • It reduces range-v3 dependencies.
  • Added jules::contiguous_array for non-owning contiguous storage.
    • Used in column views.

Improved features

  • jules::debug supports throwing handlers.
    • Useful for code coverage and checks in the Dataframe module.
  • Bug fixes on Numeric module.
  • New utilities in the Numeric module (incomplete, but working great).

Initial Random support

20 Dec 23:26

Choose a tag to compare

This version includes some fixes on the Array module and the initial support for Base/Random module.

v0.1

15 Dec 22:09

Choose a tag to compare

Special thanks to @jimmyskull for hunting bugs.

Changes since v0.1-rc:

  • Deprecated slice::dimensions;
  • as_vector for arrays of higher order;
  • Iterators do not inherit std::iterator anymore;
  • array::fill for fast filling;
  • Initial BLAS support;
  • Faster indirect slicing.

v0.1-rc

07 Dec 21:40

Choose a tag to compare

v0.1-rc Pre-release
Pre-release
  • Only the array module is working at the moment (along with fundamental functionalities of modules base and core).
  • The files under directories other than array, base and core shouldn't be included.
  • No new features will be incorporated into array classes before v0.2 series.
  • Features in array, base, core are guaranteed not to be removed before v0.3 series.
    • If necessary, they will be marked [[deprecated]] in v0.2 series.
  • Algorithms and utilities included in base/numeric and array/numeric are not considered documented features yet, and thus, they can change during v0.1 series.
    • as_vector, to_vector, and seq are exceptions to this rule and will not change in the v0.1 series.