Files
smarts3/changelog.md

6.8 KiB

Changelog

2025-11-21 - 3.0.2 - fix(smarts3)

Prepare patch release 3.0.2 — no code changes detected

  • No source changes in the diff
  • Bump patch version from 3.0.1 to 3.0.2 for maintenance/release bookkeeping

2025-11-21 - 3.0.1 - fix(readme)

Add Issue Reporting and Security section to README

  • Add guidance to report bugs, issues, and security vulnerabilities via community.foss.global
  • Inform developers how to sign a contribution agreement and get a code.foss.global account to submit pull requests

2025-11-21 - 3.0.0 - BREAKING CHANGE(Smarts3)

Remove legacy s3rver backend, simplify Smarts3 server API, and bump dependencies

  • Remove legacy s3rver backend: s3rver and its types were removed from dependencies and are no longer exported from plugins.
  • Simplify Smarts3 API: removed useCustomServer option; Smarts3 now always uses the built-in Smarts3Server (s3Instance is Smarts3Server) and stop() always calls Smarts3Server.stop().
  • Update README to remove legacy s3rver compatibility mention.
  • Dependency updates: bumped @push.rocks/smartbucket to ^4.3.0 and @push.rocks/smartxml to ^2.0.0 (major upgrades), removed s3rver/@types/s3rver, bumped @aws-sdk/client-s3 to ^3.937.0 and @git.zone/tstest to ^3.1.0.

2025-11-21 - 2.3.0 - feat(smarts3-server)

Introduce native custom S3 server implementation (Smarts3Server) with routing, middleware, context, filesystem store, controllers and XML utilities; add SmartXml and AWS SDK test; keep optional legacy s3rver backend.

  • Add Smarts3Server: native, Node.js http-based S3-compatible server (ts/classes/smarts3-server.ts)
  • New routing and middleware system: S3Router and MiddlewareStack for pattern matching and middleware composition (ts/classes/router.ts, ts/classes/middleware-stack.ts)
  • Introduce request context and helpers: S3Context for parsing requests, sending responses and XML (ts/classes/context.ts)
  • Filesystem-backed storage: FilesystemStore with bucket/object operations, streaming uploads, MD5 handling and Windows-safe key encoding (ts/classes/filesystem-store.ts)
  • S3 error handling: S3Error class that maps S3 error codes and produces XML error responses (ts/classes/s3-error.ts)
  • Controllers for service, bucket and object operations with S3-compatible XML responses and copy/range support (ts/controllers/*.ts)
  • XML utilities and SmartXml integration for consistent XML generation/parsing (ts/utils/xml.utils.ts, ts/plugins.ts)
  • Expose native plugins (http, crypto, url, fs) and SmartXml via plugins.ts
  • ts/index.ts: add useCustomServer option, default to custom server, export Smarts3Server and handle start/stop for both custom and legacy backends
  • Add AWS SDK v3 integration test (test/test.aws-sdk.node.ts) to validate compatibility
  • package.json: add @aws-sdk/client-s3 devDependency and @push.rocks/smartxml dependency
  • Documentation: readme.md updated to describe native custom server and legacy s3rver compatibility

2025-11-20 - 2.2.7 - fix(core)

Update dependencies, code style and project config; add pnpm overrides and ignore AI folders

  • Bump devDependencies and runtime dependencies (@git.zone/, @push.rocks/, @tsclass/tsclass, s3rver) to newer compatible versions
  • Add pnpm.overrides entry to package.json and normalize repository URL format
  • Code style and formatting fixes in TypeScript sources (ts/index.ts, ts/00_commitinfo_data.ts): whitespace, trailing commas, parameter formatting and minor API-return typing preserved
  • tsconfig.json: simplify compiler options and compact exclude list
  • Update .gitignore to add AI-related folders (.claude/, .serena/) to avoid accidental commits
  • Documentation and changelog formatting tweaks (readme.md, changelog.md, npmextra.json) — whitespace/newline cleanups and expanded changelog entries

2025-08-16 - 2.2.6 - fix(Smarts3)

Allow overriding S3 descriptor; update dependencies, test config and documentation

  • ts/index.ts: getS3Descriptor now accepts an optional Partial to override defaults (backwards compatible)
  • package.json: updated devDependencies and runtime dependency versions (tstest, smartpath, tsclass, s3rver, etc.) and added packageManager field
  • package.json: expanded test script to run tstest with --web --verbose --logfile --timeout 60
  • test/test.ts: test instance port changed to 3333
  • readme.md: major rewrite and expansion of usage examples, API reference and guides
  • added project config files: .claude/settings.local.json and .serena/project.yml

2024-11-06 - 2.2.5 - fix(ci)

Corrected docker image URLs in Gitea workflows to match the correct domain format.

  • Updated IMAGE environment variable in .gitea/workflows/default_nottags.yaml
  • Updated IMAGE environment variable in .gitea/workflows/default_tags.yaml

2024-11-06 - 2.2.4 - fix(core)

Improve code style and update dependencies

  • Updated @push.rocks/tapbundle to version ^5.4.3 in package.json.
  • Fixed markdown formatting in readme.md.
  • Improved code consistency in ts/00_commitinfo_data.ts, ts/plugins.ts, and test/test.ts.

2024-11-06 - 2.2.3 - fix(core)

Fix endpoint address from 'localhost' to '127.0.0.1' for better compatibility in Smarts3.getS3Descriptor

  • Corrected the endpoint address in Smarts3.getS3Descriptor to ensure proper functioning across different environments.

2024-11-06 - 2.2.2 - fix(core)

Fixed function call for fastPut in the test suite to ensure proper file upload handling.

  • Updated dependencies in package.json to newer versions.
  • Corrected the function call in test suite for file upload.

2024-10-26 - 2.2.1 - fix(core)

Fix import and typings for improved compatibility

  • Corrected the type signature for getS3Descriptor to return IS3Descriptor.
  • Fixed import structure and updated dependencies for consistent namespace usage across plugins.

2024-10-26 - 2.2.0 - feat(ci)

Migrate CI/CD workflow from GitLab CI to Gitea CI

  • Added new Gitea CI workflows for both non-tag and tag-based pushes
  • Removed existing GitLab CI configuration

2024-05-29 - 2.1.1 - Updates and minor changes

Updates and changes based on minor configuration improvements and organizational shifts.

  • Updated description file.
  • Updated tsconfig settings.
  • Updated npmextra.json with new githost configuration.
  • Shifted to new organizational scheme.

2022-07-30 - 2.1.0 - Core improvements and fixes

Minor improvements and important core changes.

  • Removed tslint from the core setup.

2022-07-30 - 2.0.2 - Bucket creation improvement

Enhanced file structure management.

  • Improved bucket creation to store locally within the .nogit directory.

2022-04-14 - 2.0.0 to 2.0.1 - Structural updates and fixes

This release focused on core updates and structural changes.

  • Reformatted the project structure.
  • Core updates with minor fixes.

2021-12-20 - 1.0.10 - ESM Transition

Breaking changes and minor fixes, transitioning to ES Modules.

  • BREAKING CHANGE: Transitioned core setup to ESM.