Skip to content

Latest commit

 

History

History
586 lines (318 loc) · 50 KB

CHANGELOG.md

File metadata and controls

586 lines (318 loc) · 50 KB

web-csv-toolbox

0.11.0

Minor Changes

Patch Changes

0.10.2

Patch Changes

0.10.1

Patch Changes

0.10.0

Minor Changes

Patch Changes

0.9.0

Minor Changes

Patch Changes

0.8.0

Minor Changes

Patch Changes

  • 4a0077c Thanks @kamiazya! - Add vitest benchmark test and codspeed intagration

0.7.5

Patch Changes

0.7.4

Patch Changes

0.7.3

Patch Changes

0.7.2

Patch Changes

0.7.1

Patch Changes

0.7.0

Minor Changes

  • #70 75642e9 Thanks @kamiazya! - Support parsing CSV by WASM build by Rust

    • New Features

      • Introduced WebAssembly support for high-performance CSV parsing in the CSV Toolbox, including new APIs and limitations.
      • Added a weekly update schedule for cargo package dependencies.
      • Implemented a Vite plugin for integrating WebAssembly modules into projects.
    • Enhancements

      • Added new configuration rule for Rust files, setting indent size to 4 spaces.
      • Enhanced continuous integration and deployment workflows with additional steps for Rust and WebAssembly setup.
      • Updated documentation to reflect WebAssembly features and usage in CSV parsing.
    • Chores

      • Introduced linting and formatting checks for JavaScript, TypeScript, JSON, and Rust files.

Patch Changes

0.6.1

Patch Changes

  • #66 73acb1b Thanks @kamiazya! - Migrates the project to use pnpm as the package manager and updates the build and dependency setup accordingly.

    • Chores
      • Switched package management from npm to pnpm to improve installation efficiency and reliability.
      • Updated continuous integration and deployment workflows to support pnpm.

0.6.0

Minor Changes

  • #62 9bd0ccc Thanks @kamiazya! - - New Features

    • Introduced a new build configuration for generating a UMD format of the web CSV toolbox library.

    • Updated export paths to enhance module accessibility.

    • Bug Fixes

      • Fixed import paths across various modules to ensure proper module resolution.
    • Refactor

      • Reorganized internal file structure for improved maintainability.
      • Renamed functions to better reflect their functionality.
      • Streamlined namespace declarations for consistency.
    • Style

      • Adjusted import statements to use consistent file extensions.
    • Documentation

      • None
    • Tests

      • Updated test import paths to align with the new directory structure.
    • Chores

      • Modified build settings for the library to optimize output.

Patch Changes

  • #56 781bc39 Thanks @dependabot! - build(deps-dev): bump typedoc-plugin-mdn-links from 3.1.11 to 3.1.12

  • #64 8b76ac2 Thanks @kamiazya! - Add file inclusion patterns to biome.json

  • #55 ca0ae5a Thanks @dependabot! - build(deps-dev): bump @vitest/browser from 1.1.3 to 1.2.0

  • #65 6329952 Thanks @kamiazya! - Add custom file naming for different formats in vite.config.ts

  • #57 144aff0 Thanks @dependabot! - build(deps-dev): bump vitest from 1.1.3 to 1.2.0

  • #60 1b6c9ca Thanks @kamiazya! - Fixes a test failure in the Lexer class and improves the escapeField function.

    Additionally, the escapeField function has been refactored to handle common options and improve performance.

    The occurrences utility has also been added to count the number of occurrences of a substring in a string. These changes address the issue #54 and improve the overall reliability and efficiency of the codebase.

    • New Features

      • Enhanced filtering capability with validation checks.
      • Improved field escaping logic for data processing.
    • Refactor

      • Optimized substring occurrence calculations with caching.
  • #58 8ae227b Thanks @dependabot! - build(deps-dev): bump webdriverio from 8.27.0 to 8.27.2

0.5.3

Patch Changes

  • #50 1956d13 Thanks @kamiazya! - Update GitHub workflows and package.json

  • #53 9ceb572 Thanks @kamiazya! - This pull request integrates Deno, Node.js, and Browsers CI workflows as CI and adds Release and Prerelease workflows as CD. It also includes the integration of the doc workflow to the CD workflow. These changes aim to improve the development and deployment processes by automating the testing, building, and releasing of the software.

    • New Features
      • Introduced Continuous Deployment (CD) workflow for automated build and release processes.
      • Automated package deployment to npm.
      • Automated pre-release publishing.
      • Automated deployment of documentation to GitHub Pages.
    • Refactor
      • Improved Continuous Integration (CI) workflow to include building and testing across different environments and platforms.
    • Chores
      • Updated workflow names for better clarity.

0.5.2

Patch Changes

0.5.1

Patch Changes

0.5.0

Minor Changes

  • c9c5d8b Thanks @kamiazya! - Refactoring

    • New Features

      • Introduced Lexer, RecordAssembler, and LexerTransformer classes to enhance CSV parsing capabilities.
      • Added new methods (toArraySync, toIterableIterator, toStream) across various modules for flexible data processing.
      • Expanded parseArrayBuffer, parseResponse, parseString, and parseUint8Array with additional output formats.
    • Bug Fixes

      • Corrected typos in several modules, changing quate to quote and demiliter to delimiter.
      • Allowed undefined values in CSVRecord type to improve data handling.
    • Refactor

      • Simplified constructors and updated logic in LexerTransformer and RecordAssemblerTransformer.
      • Enhanced type safety with refactored token types in common types module.
    • Tests

      • Added and refactored test cases for Lexer, RecordAssembler, LexerTransformer, and escapeField to ensure reliability.
    • Documentation

      • Updated descriptions and examples for new methods in various modules to assist users in understanding their usage.

Patch Changes

0.4.0

Minor Changes

  • #30 9f9117b Thanks @kamiazya! - - New Features

    • Introduced support for Uint8Array and ArrayBuffer input parameters for CSV parsing.

    • Added new parsing functions for Uint8Array and ArrayBuffer inputs.

    • Enhanced parsing capabilities to handle various CSV data representations.

    • Documentation

      • Updated README to reflect support for new input types and parsing functions.
    • Tests

      • Added test suites for parseArrayBuffer, parseUint8Array, and parseUint8ArrayStream functions.
    • Refactor

      • Renamed parseBinaryStream to parseUint8ArrayStream.
      • Updated exported symbols and namespaces to align with the new functionality.
      • Modified existing parsing functions to accommodate new CSV data types.
    • Style

      • Adjusted enumerable and read-only property definitions using Object.defineProperty for consistency across namespaces.

0.3.2

Patch Changes

  • 9ef79d2 Thanks @kamiazya! - Enhanced the extractQuotedString method in text processing to handle specific conditions more accurately.

  • #27 196d562 Thanks @dependabot! - Some devDependencies updates.

0.3.1

Patch Changes

0.3.0

Minor Changes

Patch Changes

0.2.0

Minor Changes

  • #14 8f2590e Thanks @kamiazya! - - Add more detailed documents.
    • Fixed a naming conventions problem in the documentation.
      • Changed streamingParse to parseString.

0.1.0

Minor Changes

Patch Changes

0.0.2

Patch Changes

  • 4be404f: ci: add build step before release

0.0.1

Patch Changes

  • 5402d6a: Initial Release for web-csv-toolbox, what is A CSV Toolbox utilizing Web Standard APIs.

    Key concepts

    • Web Standards first.
    • TypeScript friendly & User friendly.
      • Fully typed and documented.
    • Zero dependencies.
      • Using only Web Standards APIs.
    • Property-based testing.
    • To Be Tested Cross platform.
      • Works on browsers and Node.js, Deno
        • Only web standard APIs are used, so it should work with these Runtimes.

    Key features

    • Parses CSV files using the WHATWG Streams API.
    • Supports parsing CSV files from strings, ReadableStreams, and Response objects.
    • Supports parsing CSV files with different delimiters and quotation characters.
      • Defaults to , and " respectively.
      • Supports parsing TSV files by setting delimiter to \t.
      • Supports parsing with multi-character/multi-byte delimiters and quotation characters.
    • Supports parsing binary CSV files.