Releases: th3hero/express-storage
V3.0.0
V2.0.1
Release Notes - express-storage v2.0.1
Release Date: January 25, 2026
Overview
This is a patch release focused on improving compatibility and addressing security vulnerabilities.
What's Changed
Security Fixes
- Fixed high severity vulnerability in
fast-xml-parser(CVE: GHSA-37qj-frw5-hhjh)- RangeError DoS bug with numeric entities has been patched
- Added override to enforce
fast-xml-parser@^5.3.4
Dependency Updates
Peer Dependencies (More Flexible)
express: Broadened from>=4.21.0to^4.18.0 || ^5.0.0- supports Express 4.x (from 4.18) and Express 5.xmulter: Moved from direct dependency to optional peer dependency (^1.4.5-lts.1 || ^2.0.0)
Production Dependencies (More Stable)
| Package | Previous | New |
|---|---|---|
@aws-sdk/client-s3 |
^3.982.0 |
^3.600.0 |
@aws-sdk/lib-storage |
^3.982.0 |
^3.600.0 |
@aws-sdk/s3-request-presigner |
^3.982.0 |
^3.600.0 |
@azure/identity |
^4.13.0 |
^4.0.0 |
@azure/storage-blob |
^12.30.0 |
^12.17.0 |
@google-cloud/storage |
^7.18.0 |
^7.7.0 |
dotenv |
^17.2.3 |
^16.3.0 |
tslib |
^2.8.1 |
^2.6.0 |
Engine Requirements
- Node.js:
>=18.0.0(updated from>=16.0.0)
Bug Fixes
- Resolved peer dependency conflicts when installing
express-storagein projects with different versions of Express or Multer
Upgrade Guide
npm install express-storage@2.0.1
Full Changelog: v2.0.0...v2.0.1
V2.0.3
Release Notes - express-storage v2.0.3
Release Date: January 25, 2026
Overview
This release adds dual CommonJS/ES Module support, enabling seamless integration with both modern ESM projects and legacy CommonJS projects without warnings or compatibility issues.
What's Changed
New: Dual CJS/ESM Build Support
The package now ships with both CommonJS and ES Module builds, automatically selected based on your project's module system:
- ES Module projects (
import): Usesdist/esm/index.js - CommonJS projects (
require): Usesdist/cjs/index.js
This eliminates the experimental warning that previously appeared when using express-storage in CommonJS projects:
Full Changelog: V2.0.2...V2.0.3
V2.0.2
Full Changelog: v2.0.1...V2.0.2
v2.0.0
Express Storage v2.0.0 Release Notes
Secure, unified file uploads for Express.js — one API for all cloud providers.
Highlights
Express Storage is a TypeScript-native library that provides a single, secure interface for file uploads across AWS S3, Google Cloud Storage, Azure Blob Storage, and local disk. Switch providers by changing one environment variable — no code changes required.
Features
Multi-Cloud Storage Support
- AWS S3 — Full support including IAM roles and explicit credentials
- Google Cloud Storage — Service account and Application Default Credentials
- Azure Blob Storage — Connection string, account key, and Managed Identity
- Local Disk — Perfect for development and small-scale deployments
Unified API
Write your upload code once, deploy anywhere:
import { StorageManager } from 'express-storage';
const storage = new StorageManager(); // Reads from environment
const result = await storage.uploadFile(req.file);
What's Changed
Full Changelog: V1.1.4...v2.0.0
V1.1.4
Full Changelog: V1.1.3...V1.1.4
V1.1.3
Full Changelog: V1.1.2...V1.1.3
V1.1.2
Full Changelog: V1.1.1...V1.1.2
Full Changelog: V1.1.1...V1.1.2
V1.1.1
Full Changelog: V1.1.0...V1.1.1
V1.1.0
Release Notes
v1.1.0
What's New
Unified Cloud Configuration
BUCKET_NAMEis now the single environment variable for all cloud drivers (S3, GCS, Azure)- Azure container name is automatically read from
BUCKET_NAME, no separateAZURE_CONTAINER_NAMEneeded - Programmatic overrides still supported via
azureContainerNamein credentials
Comprehensive Test Suite
- Added 413 unit tests covering utilities, drivers, security, and regression scenarios
- Test coverage for core modules exceeds 90%
- Vitest as the test runner with coverage reporting
CI/CD Pipeline
- Added GitHub Actions workflow for automated testing on push/PR
- Tests run on Node.js 20.x and 22.x
- Automated version bumping from release tags
Documentation Updates
- Updated README with unified configuration examples
- Clarified Azure setup instructions
- Added programmatic override examples
Bug Fixes
- Fixed Azure driver error message to reference correct environment variable
- Improved configuration validation for cloud drivers
Breaking Changes
None. Existing configurations continue to work. AZURE_CONTAINER_NAME is deprecated but still supported via programmatic override.
v1.0.0
Initial release with support for:
- Local filesystem storage
- AWS S3 (direct and presigned uploads)
- Google Cloud Storage (direct and presigned uploads)
- Azure Blob Storage (direct and presigned uploads)
- File validation (size, MIME type, extension)
- Security features (path traversal prevention, filename sanitization)
- TypeScript support
New Contributors
Full Changelog: https://github.com/th3hero/express-storage/commits/V1.1.0