Skip to content

Releases: devsgnr/breadroll

0.5.1

28 Jul 14:29
cfd867b
Compare
Choose a tag to compare

What's Changed

Fixed the issue of breadroll being shipped to npm without type declaration files.


0.5.0

11 Jul 22:07
fe3a046
Compare
Choose a tag to compare

breadroll is now in public beta. We are super excited to see breadroll in the wild and even more excited to see contribution from the future breadroll community. So many thing are packed into the new breadroll. We have leveraged TypeScript's static typing to prevent data-related runtime errors, improved developer experience, improved API design, and added a few more powerful methods.

  • A brand new parser experience utilizing mafintosh/csv-parser via sindresorhus/neat-csv see the former for the default behavior of the parser.

  • Now breadroll Dataframes have types; assign types by using the .open methods like so; Breadroll.open.local<T>() or directly like so; new Dataframe<T>()

  • We added more methods to the Dataframe class

    • .concat
    • .merge
    • .shape
    • .tail
    • .toNumber
  • We modified the Breadroll.open methods to have a dedicated seperator or delimiter function parameter, this way we reduce the number of instances need to open multiple file with different formats; eg. Breadroll.open.local<T>("./path/to/file.csv", ",").

    This simply means we've moved the delimiter from Breadroll.DataframeReadOptions to each individual method.

  • breadroll being in public beta means you get to build the future of breadroll, want to fix a bug, request a feature, improve testing; now is the time - take a quick glance on how to get started with contributing to breadroll

  • 67 🌠 stars on GitHub, thank you so much for the support - help breadroll rise even higher, drop a star.

  • Closed first issue raised by @itsyoboieltr

v0.4.0

17 Feb 17:21
7ebad85
Compare
Choose a tag to compare
v0.4.0 Pre-release
Pre-release

In breadroll's new version 0.4.0 a lot of new shiny features are introduced, Here are the cool new features

  • Improvements to the Breadroll and the Dataframe API
  • Introduction of a new remote data source
  • Changed filter keywords in favor of symbols over length words
  • A snazzy new way to perform data transformation
  • Introuducing NumericConstants - a collection of mathematical and physical constants
  • breadroll hit 35 🌠 stars on GitHub - help breadroll rise higher, drop a ⭐ star.

API Improvements

The Breadroll & Dataframe APIs got a little face lift, with two major addition to the Breadroll API and a few more others to the Dataframe API. We can now opt out of parsing numbers, retrieve files from Supabase Storage, now headers (labels) maintain case-sensitivity, and we can now perform data transformation on a specified column of the dataframe

Symbol-based Filter Keywords

The use of symbols as keyword ensures less verbosity; most of the filter keywords have been replaced with symbols; "eqauls" is now "==".

Numeric Constants

In addition to having the ability to perform data transformation, the numeric constant object provides mathematical (math) and physical (physical) constants. These two can be nicely paired to make cool data transformation, most especially with scientific datasets. These values are double-precision 64-bit binary format IEEE 754 value, which have ±15 decimal digits of precision. The physical constant are provided in their standard SI units.

0.3.7-alpha

31 Jan 16:46
4106cd8
Compare
Choose a tag to compare
0.3.7-alpha Pre-release
Pre-release

What's Changed


In breadroll's new version 0.3.7-alpha two new features are introduced, Here are the cool new features

  • Regex filter using "matches" keyword
  • Integer-based indexing / selection

Regex filter

Introducing Regex filter with the keyword "matches" for performing complex queries like matching certain patterns in a String, this uses the matches keyword and takes in a RegExp. We recommend using this filter when a trade off on time is acceptable, see here for a more detailed explanation.

Integer-based indexing / selection

  • Dataframe.rows({start?: number, end?: number}: Indexer): Dataframe Returns a specific number of rows of the dataframe
  • Dataframe.cols({start?: number, end?: number}: Indexer): Dataframe Returns specific columns of the dataframe strictly using interger based indexing similar to panda's iloc

Full Changelog: https://devsgnr.github.io/breadroll/changelog/breadroll-v0.3.7/

v0.3.6-alpha

25 Jan 20:27
40607bc
Compare
Choose a tag to compare
v0.3.6-alpha Pre-release
Pre-release

What's Changed

Added - Breadroll.open.https(...) - @devsgnr

This function fetches and return a file via a URL over https, with a default GET method, with optional provision for custom headers

Parameters

url: string - the remote location of the file
header?: Headers - add custom headers to the HTTP request

const df: Dataframe = await csv.open.https("https://raw.githubusercontent.com/devsgnr/breadroll/.../ds_salaries.csv");
const selected: Dataframe = df.select(["job_title", "salary", "salary_currency", "salary_in_usd"]);
  • Fixed Documentation and added documentation for Breadroll.open.https(...) - @devsgnr
  • Setting up automated testing - @devsgnr
  • Setting up automated documentation deployment - @devsgnr

Full Changelog: https://devsgnr.github.io/breadroll/changelog/#january-25th-2024-v036-alpha