Skip to content

Releases: Tiny-Essentials/PuddySQL

1.0.0-beta-4

29 Nov 21:33

Choose a tag to compare

What's New

1. Added warning for missing table elements in escapeValuesFix ⚠️

A new error-style warning message has been introduced to alert developers when escapeValuesFix encounters a column that does not exist in the target table.
This helps prevent silent failures and makes debugging incorrect schemas much easier.

2. Added important notice to set() 🧩

The set() method now includes an explicit warning informing developers about primary key requirements for upsert operations:

⚠️ Important: The table must have both id and subId configured as a composite PRIMARY KEY
(or as a UNIQUE constraint) for the upsert operation to work correctly with conflict resolution.

This ensures users are aware of the necessary constraints for stable and predictable behavior.

Full Changelog: 1.0.0-beta-3...1.0.0-beta-4

1.0.0-beta-3

12 Oct 22:39

Choose a tag to compare

🚀 What’s New

  • ✨ New parseWhereFlat() implementation
    A new SQL WHERE clause builder for flat tag tables — where each row stores a single tag.

  • ⚙️ SQL Boosts with Array Support
    The internal boosting system (used to prioritize or weight query results) now fully supports arrays 🎯
    This means boost parameters can now be provided as arrays, making multi-value weighting more flexible and intuitive.

Full Changelog: 1.0.0-beta-2...1.0.0-beta-3

1.0.0-beta-2

03 Sep 15:51

Choose a tag to compare

⚙️ Improvements & Changes

  • License changed from previous version to LGPL-3.0, ensuring better open-source compatibility.

Full Changelog: 1.0.0-beta...1.0.0-beta-2

1.0.0-beta

03 Jul 15:43

Choose a tag to compare

🚀 v1.0.0-beta · First public beta release

This is the first public beta release of PuddySQL 🎉 — a fully customizable SQL engine for Node.js, designed to simplify advanced search, tag filters, and structured queries.

Below is a summary of the key changes and features in commit-style format:


✨ Features

  • 🎮 PuddySql.Instance class for PostgreSQL and SQLite3 engines
  • 🏷️ Built-in Tag System with support for AND, OR, NOT, boosts, and wildcards
  • 📦 Powerful .search() and .find() methods with advanced filtering and pagination
  • 🛠️ Custom JOIN parser supporting raw strings, objects, or arrays
  • 📑 Select generator supporting arrays, strings, objects, and boost logic
  • 📁 initTable() utility to create and manage structured table definitions
  • 📚 Built-in getAll, getAmount, set, delete, advancedDelete, and more
  • 🔍 Nested QueryGroup logic with AND/OR groupings and condition trees
  • 🔐 Input sanitization and placeholder binding for secure queries
  • 🧩 Utility modules (Utils, Events, etc.) to support extensions and debugging

🧪 Testing

  • ✅ Full playground demo included at /test/index.mjs
  • 🏷️ Extensive tag filter scenarios tested: inclusion, exclusion, boost, pagination
  • 🧹 Clean and reset logic verified across SQLite3 and PostgreSQL

🛠️ This is a beta release — APIs may change before 1.0.0 stable.
Issues and feedback are welcome! 💬

Full Changelog: https://github.com/JasminDreasond/PuddySQL/commits/1.0.0-beta