Repository navigation
Release 4.4.81 — reduce verbose Sequelize logging; dependency bumps; stable publish
Overview
This release focuses on reducing verbose and potentially sensitive logging across the Sequelize-based library code paths, stabilizing the package metadata for a normal semver release, and updating several @fjell package versions. The logging changes remove large JSON payloads and repeated error-detail logs from hot code paths while preserving the existing error-throw behavior; dependency bumps update runtime and dev dependencies without code/API changes.
Breaking Changes
- None in code behavior or public APIs were introduced by these commits. Throws and error transformations remain in place; only logging was reduced. See commit 908cdf4 for the logging changes and commit 3afed15 for the version bump.
Improvements (Observability / Logging)
- Reduce verbose logging in Sequelize error handling and operations (commit 908cdf4)
- What changed: Removed numerous logger.error / logger.debug blocks that previously emitted large or highly detailed payloads from these files:
- src/errors/sequelizeErrorHandler.ts — removed detailed logs tied to unique-constraint handling, connection errors, and timeout errors; added a local LibLogger import and a logger instance (commit 908cdf4).
- src/ops/create.ts — removed the verbose logger.error block that logged invalid attributes and the full JSON item payload; simplified the thrown message construction (commit 908cdf4).
- src/ops/find.ts — removed detailed logging for “no finders” and “finder not found” cases and restored simpler throws (commit 908cdf4).
- src/ops/upsert.ts — removed detailed logger.error blocks around invalid keys and unexpected errors during the get phase (commit 908cdf4).
- src/processing/ReferenceBuilder.ts — removed libLogger.error calls that previously logged registry/missing-library and reference-load failures; the function still throws when the registry or referenced library is missing (commit 908cdf4).
- Why it matters: The removed logs previously included large serialized payloads (full itemData JSON) and low-level SQL/original error details. Reducing this verbosity lowers log noise, avoids writing potentially sensitive or very large objects into logs, and reduces the chance of flooding log storage with repeated structured dumps from hot code paths.
- Implications for developers:
- Behaviour: Errors are still thrown as before; the control flow and error types are unchanged. The change strictly affects emitted log records (see file list above and commit 908cdf4).
- Debugging: If workflows relied on those detailed logs to diagnose failures (for example, seeing the exact itemData JSON or original SQL messages in the logs), developers will need to capture that context at a higher level (e.g., by logging caller-side context, using a centralized error-capture hook, or re-enabling targeted logs during troubleshooting).
- Security/Privacy: Removing the inline dumps reduces the chance of leaking sensitive data through logs; follow-up instrumentation can centralize what is captured and when.
- What changed: Removed numerous logger.error / logger.debug blocks that previously emitted large or highly detailed payloads from these files:
Behavioral Details and Cross-file Pattern
- Consistent pattern of change: Each modified module keeps throwing the same errors but drops the heavy, contextual logger.error calls that included large JSON payloads, SQL original messages, and structured suggestion fields. This is an intentional, cross-cutting move (commit 908cdf4) to minimize noisy or high-volume logging in core CRUD and reference-loading flows while leaving functional behavior intact.
Package metadata and publishing
- Promote package to stable release (commit 3afed15)
- What changed: package.json version was adjusted to make the package a normal semver release rather than a dev/prerelease (commit 3afed15).
- Why it matters: npm pack/publish and dependency resolvers will treat this release as a stable 4.4.81 artifact instead of a -dev prerelease, which affects consumers that pin or prefer stable semver versions.
- Implication: CI and downstream consumers that rely on exact semver will now see this as a stable release; no runtime changes introduced by this commit.
Dependency updates
- Bump several @fjell package versions (commit 9c56d65)
- What changed (package.json updates per commit 9c56d65):
- Runtime dependencies:
- @fjell/core: ^4.4.70 → ^4.4.73
- @fjell/lib: ^4.4.81 → ^4.4.82
- @fjell/logging: ^4.4.62 → ^4.4.65
- @fjell/registry: ^4.4.79 → ^4.4.81
- Dev dependency:
- @fjell/common-config: ^1.1.31 → ^1.1.36
- Runtime dependencies:
- Why it matters: These are targeted version bumps intended to pull in upstream fixes or minor improvements from those packages while staying inside semver-compatible ranges. The commit message indicates there were no API or code changes in this repository tied to those bumps, so behavior should remain compatible (commit 9c56d65).
- Implication: Consumers should run their usual integration tests after upgrading; if any upstream package introduced behavioral changes, they will surface during integration. The dependency updates are explicit so reviewers can audit the upstream changes if needed.
- What changed (package.json updates per commit 9c56d65):
Developer guidance
- If you previously relied on the removed logs for diagnosing failures, consider one of the following:
- Capture context at the caller boundary or in a centralized error handling layer before the lower-level operation is invoked.
- Temporarily add scoped, diagnostic logging (preferably behind a debug/trace flag) that emits only the fields required for diagnosis, avoiding full JSON dumps.
- Use an error-reporting tool that captures structured context on demand rather than permanently logging full payloads.
Files touched (high-level)
- package.json — version bump to stable release and dependency updates (commits 3afed15, 9c56d65)
- src/errors/sequelizeErrorHandler.ts — add LibLogger import and logger instance; remove detailed per-case logging blocks (commit 908cdf4)
- src/ops/create.ts — remove verbose invalid-attribute logging and large JSON payloads in thrown messages (commit 908cdf4)
- src/ops/find.ts — remove detailed "no finders" / "finder not found" logs and restore simpler throws (commit 908cdf4)
- src/ops/upsert.ts — remove detailed upsert/get-phase error logging (commit 908cdf4)
- src/processing/ReferenceBuilder.ts — remove libLogger.error calls around missing registry/library and reference-load failures; throws preserved (commit 908cdf4)
Commits of interest
- Reduce verbose logging in Sequelize handlers and ops; add local logger in error handler — 908cdf4
- Bump several @fjell package dependency versions in package.json — 9c56d65
- Bump package.json version from pre-release to stable release — 3afed15
Closing notes
These changes are intentional trade-offs: the release reduces log verbosity and removes repeated, heavy payload logging from core database and reference paths while keeping existing throwing behavior intact. The dependency bumps and stable version tag prepare this release for normal consumption. If more verbose diagnostics are required during troubleshooting, prefer scoped or temporary diagnostic logging or capture context at higher levels rather than reintroducing broad JSON dumps in these hot paths.