Skip to content

Releases: BigThunderSR/adt-pulse-mqtt

v5.1.3

13 Mar 03:52
51b2bfa

Choose a tag to compare

What's Changed

🛠️ Bug Fix

📦 Dependencies

  • chore(deps-dev): bump globals from 17.3.0 to 17.4.0 in /adt-pulse-mqtt by @dependabot[bot] in #463
  • chore(deps): bump axios from 1.13.5 to 1.13.6 in /adt-pulse-mqtt by @dependabot[bot] in #462
  • chore(deps): bump docker/login-action from 3 to 4 by @dependabot[bot] in #468
  • chore(deps): bump docker/setup-qemu-action from 3 to 4 by @dependabot[bot] in #469
  • chore(deps): bump docker/setup-buildx-action from 3 to 4 by @dependabot[bot] in #471
  • chore(deps): bump docker/metadata-action from 5 to 6 by @dependabot[bot] in #472
  • chore(deps): bump docker/build-push-action from 6 to 7 by @dependabot[bot] in #473
  • chore(deps-dev): bump eslint from 10.0.2 to 10.0.3 in /adt-pulse-mqtt by @dependabot[bot] in #476
  • fix(deps): update dependency axios to ^1.13.6 by @renovate[bot] in #464
  • chore(deps): update dependency globals to ^17.4.0 by @renovate[bot] in #465
  • chore(deps): update dependency eslint to ^10.0.3 by @renovate[bot] in #477

v5.1.2

27 Feb 22:56
c5d023b

Choose a tag to compare

What's Changed

📦 Dependencies

  • chore: migrate from balenalib to official Alpine base images (v5.1.2) by @BigThunderSR in #460

v5.1.1

27 Feb 02:58
85ca55d

Choose a tag to compare

What's Changed

🛠️ Bug Fix

v5.1.0

27 Feb 02:07
85704d6

Choose a tag to compare

What's Changed

📦 Dependencies

  • chore(deps-dev): bump eslint from 10.0.0 to 10.0.2 in /adt-pulse-mqtt by @dependabot[bot] in #450
  • chore(deps): bump home-assistant/builder from 2025.11.0 to 2026.02.1 by @dependabot[bot] in #452
  • chore(deps-dev): bump c8 from 10.1.3 to 11.0.0 in /adt-pulse-mqtt by @dependabot[bot] in #453
  • chore(deps): update dependency eslint to ^10.0.2 by @renovate[bot] in #449
  • chore(deps): update dependency c8 to v11 by @renovate[bot] in #454
  • chore(deps): update home-assistant/builder action to v2026 by @renovate[bot] in #451
  • Release 5.1.0 - Upgrade Alpine 3.20 to 3.21 (Node.js 20 to 22 LTS) by @BigThunderSR in #457

v5.0.2

16 Feb 04:13
30af0b0

Choose a tag to compare

What's Changed

🛠️ Bug Fix

  • fix: Auto re-authenticate and retry on stale session during alarm state change by @BigThunderSR in #447

📦 Dependencies

  • chore(deps): update dependency prettier to ^3.8.0 by @renovate[bot] in #405
  • chore(deps-dev): bump @eslint/js from 9.39.1 to 9.39.2 in /adt-pulse-mqtt by @dependabot[bot] in #409
  • chore(deps-dev): bump eslint from 9.39.1 to 9.39.2 in /adt-pulse-mqtt by @dependabot[bot] in #410
  • chore(deps): update eslint monorepo to ^9.39.2 by @renovate[bot] in #411
  • chore(deps-dev): bump globals from 16.5.0 to 17.0.0 in /adt-pulse-mqtt by @dependabot[bot] in #412
  • chore(deps): bump the npm_and_yarn group across 2 directories with 1 update by @dependabot[bot] in #417
  • chore(deps-dev): bump prettier from 3.8.0 to 3.8.1 in /adt-pulse-mqtt by @dependabot[bot] in #415
  • chore(deps): bump lodash from 4.17.21 to 4.17.23 in /adt-pulse-mqtt by @dependabot[bot] in #416
  • chore(deps-dev): bump globals from 17.0.0 to 17.1.0 in /adt-pulse-mqtt by @dependabot[bot] in #420
  • chore(deps): update dependency prettier to ^3.8.1 by @renovate[bot] in #419
  • chore(deps): bump axios from 1.13.2 to 1.13.3 in /adt-pulse-mqtt by @dependabot[bot] in #421
  • chore(deps): update dependency globals to v17 by @renovate[bot] in #413
  • chore(deps): bump axios from 1.13.3 to 1.13.4 in /adt-pulse-mqtt by @dependabot[bot] in #425
  • chore(deps-dev): bump globals from 17.1.0 to 17.2.0 in /adt-pulse-mqtt by @dependabot[bot] in #424
  • fix(deps): update dependency axios to ^1.13.4 by @renovate[bot] in #426
  • chore(deps): update dependency globals to ^17.2.0 by @renovate[bot] in #427
  • chore(deps-dev): bump globals from 17.2.0 to 17.3.0 in /adt-pulse-mqtt by @dependabot[bot] in #428
  • chore(deps): bump mqtt from 5.14.1 to 5.15.0 in /adt-pulse-mqtt by @dependabot[bot] in #429
  • chore(deps): bump axios from 1.13.4 to 1.13.5 in /adt-pulse-mqtt by @dependabot[bot] in #433
  • chore(deps): bump undici from 7.16.0 to 7.22.0 in /adt-pulse-mqtt in the npm_and_yarn group across 1 directory by @dependabot[bot] in #442
  • chore(deps): bump dotenv from 17.2.3 to 17.3.1 in /adt-pulse-mqtt by @dependabot[bot] in #439
  • chore(deps-dev): bump nock from 14.0.10 to 14.0.11 in /adt-pulse-mqtt by @dependabot[bot] in #436
  • chore(deps): update dependency axios to v1.13.5 [security] by @renovate[bot] in #438
  • fix(deps): update dependency mqtt to ^5.15.0 by @renovate[bot] in #431
  • chore(deps): update dependency globals to ^17.3.0 by @renovate[bot] in #430
  • fix(deps): update dependency axios to ^1.13.5 by @renovate[bot] in #444
  • chore(deps): update dependency nock to ^14.0.11 by @renovate[bot] in #443
  • chore(deps): bump cheerio from 1.1.2 to 1.2.0 in /adt-pulse-mqtt by @dependabot[bot] in #422
  • chore(deps-dev): bump eslint from 9.39.2 to 10.0.0 in /adt-pulse-mqtt by @dependabot[bot] in #434
  • chore(deps-dev): bump @eslint/js from 9.39.2 to 10.0.1 in /adt-pulse-mqtt by @dependabot[bot] in #435
  • fix(deps): update dependency dotenv to ^17.3.1 by @renovate[bot] in #445
  • fix(deps): update dependency cheerio to ^1.2.0 by @renovate[bot] in #423
  • chore(deps): update eslint monorepo to v10 (major) by @renovate[bot] in #446

v5.0.1

12 Dec 03:52
4356f80

Choose a tag to compare

What's Changed

🛠️ Bug Fix

📦 Dependencies

  • chore(deps-dev): bump @eslint/js from 9.33.0 to 9.34.0 in /adt-pulse-mqtt by @dependabot[bot] in #341
  • chore(deps-dev): bump eslint from 9.33.0 to 9.34.0 in /adt-pulse-mqtt by @dependabot[bot] in #340
  • chore(deps): update eslint monorepo to ^9.34.0 by @renovate[bot] in #342
  • chore(deps): bump actions/setup-node from 4 to 5 by @dependabot[bot] in #346
  • chore(deps-dev): bump mocha from 11.7.1 to 11.7.2 in /adt-pulse-mqtt by @dependabot[bot] in #343
  • chore(deps): bump dotenv from 17.2.1 to 17.2.2 in /adt-pulse-mqtt by @dependabot[bot] in #344
  • chore(deps): bump mqtt from 5.14.0 to 5.14.1 in /adt-pulse-mqtt by @dependabot[bot] in #348
  • fix(deps): update dependency dotenv to ^17.2.2 by @renovate[bot] in #349
  • chore(deps): update dependency mocha to ^11.7.2 by @renovate[bot] in #347
  • chore(deps-dev): bump @eslint/js from 9.34.0 to 9.35.0 in /adt-pulse-mqtt by @dependabot[bot] in #352
  • chore(deps-dev): bump eslint from 9.34.0 to 9.35.0 in /adt-pulse-mqtt by @dependabot[bot] in #351
  • chore(deps): bump axios from 1.11.0 to 1.12.2 in /adt-pulse-mqtt by @dependabot[bot] in #360
  • chore(deps-dev): bump globals from 16.3.0 to 16.4.0 in /adt-pulse-mqtt by @dependabot[bot] in #354
  • fix(deps): update dependency mqtt to ^5.14.1 by @renovate[bot] in #350
  • fix(deps): update dependency axios to v1.12.0 [security] by @renovate[bot] in #359
  • fix(deps): update dependency axios to ^1.12.1 by @renovate[bot] in #362
  • chore(deps): bump home-assistant/builder from 2025.03.0 to 2025.09.0 by @dependabot[bot] in #364
  • chore(deps): bump github/codeql-action from 3 to 4 by @dependabot[bot] in #372
  • chore(deps): bump actions/setup-node from 5 to 6 by @dependabot[bot] in #373
  • chore(deps-dev): bump @eslint/js from 9.35.0 to 9.37.0 in /adt-pulse-mqtt by @dependabot[bot] in #371
  • chore(deps-dev): bump eslint from 9.35.0 to 9.37.0 in /adt-pulse-mqtt by @dependabot[bot] in #370
  • chore(deps): bump dotenv from 17.2.2 to 17.2.3 in /adt-pulse-mqtt by @dependabot[bot] in #367
  • chore(deps-dev): bump mocha from 11.7.2 to 11.7.4 in /adt-pulse-mqtt by @dependabot[bot] in #369
  • chore(deps): update eslint monorepo to ^9.37.0 by @renovate[bot] in #353
  • chore(deps): update dependency globals to ^16.4.0 by @renovate[bot] in #355
  • chore(deps): update dependency mocha to ^11.7.4 by @renovate[bot] in #374
  • chore(deps): bump axios from 1.12.2 to 1.13.1 in /adt-pulse-mqtt by @dependabot[bot] in #381
  • chore(deps-dev): bump globals from 16.4.0 to 16.5.0 in /adt-pulse-mqtt by @dependabot[bot] in #382
  • chore(deps-dev): bump @eslint/js from 9.37.0 to 9.39.0 in /adt-pulse-mqtt by @dependabot[bot] in #383
  • chore(deps-dev): bump eslint from 9.37.0 to 9.39.0 in /adt-pulse-mqtt by @dependabot[bot] in #384
  • fix(deps): update dependency dotenv to ^17.2.3 by @renovate[bot] in #376
  • chore(deps): update eslint monorepo to ^9.39.0 by @renovate[bot] in #379
  • chore(deps): update dependency globals to ^16.5.0 by @renovate[bot] in #385
  • fix(deps): update dependency axios to ^1.13.1 by @renovate[bot] in #375
  • chore(deps-dev): bump mocha from 11.7.4 to 11.7.5 in /adt-pulse-mqtt by @dependabot[bot] in #386
  • chore(deps): bump axios from 1.13.1 to 1.13.2 in /adt-pulse-mqtt by @dependabot[bot] in #387
  • chore(deps-dev): bump the npm_and_yarn group across 2 directories with 1 update by @dependabot[bot] in #394
  • chore(deps): bump frenck/action-addon-linter from 2.18 to 2.21 by @dependabot[bot] in #392
  • chore(deps): update dependency mocha to ^11.7.5 by @renovate[bot] in #395
  • fix(deps): update dependency axios to ^1.13.2 by @renovate[bot] in #390
  • chore(deps): update eslint monorepo to ^9.39.1 by @renovate[bot] in #388
  • chore(deps): bump actions/checkout from 5 to 6 by @dependabot[bot] in #398
  • chore(deps): bump home-assistant/builder from 2025.09.0 to 2025.11.0 by @dependabot[bot] in #403
  • chore(deps-dev): bump prettier from 3.6.2 to 3.7.3 in /adt-pulse-mqtt by @dependabot[bot] in #406
  • chore(deps-dev): bump prettier from 3.7.3 to 3.7.4 in /adt-pulse-mqtt by @dependabot[bot] in #407

v5.0.0

20 Aug 00:41
8bb6d79

Choose a tag to compare

🎯 Complete Modernization Release

This major release represents a complete modernization of the ADT Pulse MQTT bridge, focusing on reliability, security, and maintainability. All changes maintain full backwards compatibility for existing users while significantly improving application stability and the development experience.

🚀 Major Breaking Changes

  • HTTP Client Migration: Completely replaced deprecated request library with modern axios
  • Testing Framework: Migrated from nyc to modern c8 coverage tool using Node.js built-in V8 coverage
  • Architecture Support: Removed armhf architecture, focusing on aarch64 and amd64 for better performance
  • Dependency Updates: Major version updates to core dependencies with security improvements
  • Removed Dependencies: Eliminated deprecated request package and streamlined dependencies

✨ New Features & Enhancements

  • Enhanced Local Testing: Added .env file support for simplified local development
  • Configuration Templates: Added local-config.json.example and .env.example files
  • Comprehensive Documentation: Added LOCAL_TESTING.md and AXIOS_MIGRATION.md guides
  • Modern ESLint Integration: Added native ESLint parsing for consistent code quality
  • Enhanced Test Coverage: Improved from 67% to 79.9% total coverage (+12.9% improvement)

🛡️ Critical Stability Improvements

  • Application Reliability: Fixed all unhandled promise rejections that caused crashes
  • Error Handling: Added comprehensive .catch() handlers for all async operations
  • Network Resilience: Improved handling of network timeouts and connectivity issues
  • Graceful Degradation: Application continues running during network instability

📈 Test Suite Expansion

  • Test Coverage: Expanded test suite from 76 to 100 comprehensive test cases (+24 new tests)
  • Server Logic Testing: Added 8 isolated server logic tests covering configuration, MQTT processing, and device tracking
  • Error Handling Tests: Added coverage for timeout scenarios, network failures, and authentication errors
  • Edge Case Testing: Enhanced setAlarmState testing with SAT token variations and force arm retry logic
  • Configuration Testing: Added comprehensive constructor parameter validation tests
  • Mock Testing: Improved HTTP request mocking with comprehensive scenario coverage

🔧 Technical Infrastructure

  • Node.js: Requires Node.js >= 20 for modern features and security
  • Coverage Engine: Uses Node.js built-in V8 coverage for faster generation without runtime overhead
  • HTTP Client: Complete migration to axios with cookie support and better error handling
  • Code Quality: Fixed all ESLint errors including unused variables and unsafe prototype patterns
  • Security Audit: Zero known vulnerabilities with updated dependency tree

🔄 Backwards Compatibility

Full compatibility maintained for existing users:

  • Configuration: Still supports local-config.json alongside new .env support
  • MQTT Topics: All existing integrations continue to work without changes
  • Docker: Same Docker interface and environment variables
  • External API: No breaking changes for end users or Home Assistant integration

📋 Migration Guide

  • Required: Update to Node.js >= 20 if using older versions
  • Optional: Migrate to .env file for simplified local testing
  • Recommended: Review LOCAL_TESTING.md for new development features
  • Testing: Run comprehensive test suite to verify functionality

🎯 Impact Summary

  • Reliability: Significantly reduced application crashes from network issues
  • Modernization: Updated to modern HTTP client (axios) and native Node.js coverage tools (c8)
  • Security: Modern dependencies with active security support and vulnerability patches
  • Maintainability: Cleaner codebase with comprehensive error handling and testing
  • Development: Enhanced testing framework, documentation, and code quality tools

📚 New Documentation

  • AXIOS_MIGRATION.md - Detailed technical migration information
  • LOCAL_TESTING.md - Enhanced development workflow guide
  • .env.example - Environment variable configuration template
  • local-config.json.example - JSON configuration template

⚠️ Important Notes

  • Node.js 20+ Required: This version requires Node.js >= 20
  • Full Backwards Compatibility: All existing configurations and integrations continue to work
  • Home Assistant: No changes required for existing Home Assistant integrations
  • Docker Users: No changes to Docker interface or environment variables

This release consolidates all improvements from v4.0.0 and v4.1.0 into a unified, production-ready v5.0.0 that provides a solid foundation for future development.

Related PR

🏕 Features

v4.0.0

19 Aug 04:01
a8513d4

Choose a tag to compare

🚀 Major Release: ADT Pulse MQTT v4.0.0

🔄 Breaking Changes

  • HTTP Client Migration: Replaced deprecated request library with modern axios
  • Dependency Updates: Major version updates to core dependencies
  • Architecture Support: Removed armhf architecture, focusing on aarch64 and amd64
  • Removed Dependencies: Eliminated request and coveralls packages

✨ New Features

  • Enhanced Local Testing Capability: Added .env file support for simpler local testing capabilities
  • Configuration Templates: Added local-config.json.example and .env.example files
  • Updated Documentation: Added LOCAL_TESTING.md and AXIOS_MIGRATION.md guides

🛡️ Critical Bug Fixes

  • Application Stability: Fixed all unhandled promise rejections that caused crashes
  • Error Handling: Added comprehensive .catch() handlers for all async operations
  • Network Resilience: Improved handling of network timeouts and connectivity issues
  • Graceful Degradation: Application continues running during network instability

📈 Improvements

  • Test Coverage: Increased from 67% to 82.06% (+15% improvement)
  • Dependencies: Updated to latest secure versions (axios 1.11.0, tough-cookie 6.0.0)

🔧 Technical Details

  • Node.js: Requires Node.js >= 20
  • HTTP Client: Complete migration from request to axios with cookie support
  • Error Handling: Improved promise chains prevent application crashes
  • Security Audit: Zero known vulnerabilities at the time of release with updated dependency tree

🔄 Backwards Compatibility

  • Configuration: Still supports local-config.json alongside new .env
  • MQTT Topics: All existing integrations continue to work
  • Docker: Same Docker interface and environment variables
  • External API: No breaking changes for end users

📋 Migration Guide

  • Optional: Migrate to .env file for simplified local testing
  • Recommended: Review LOCAL_TESTING.md for new development features

🎯 Impact

  • Reliability: Minimizes application crashes from network timeouts
  • Security: Modern dependencies with active security support
  • Maintainability: Cleaner codebase with comprehensive error handling
  • Development: Enhanced testing framework and documentation

Related PRs

🏕 Features

  • feat: Modernize HTTP client and enhance security (v4.0.0) by @BigThunderSR in #330
  • Modernize test-adt-pulse-mqtt to v4.0.0 with comprehensive improvements by @BigThunderSR in #332
  • Modernize adt-pulse-mqtt to v4.0.0 with comprehensive improvements by @BigThunderSR in #333

📦 Dependencies

  • Bump actions/checkout from 4 to 5 by @dependabot[bot] in #321
  • Bump nock from 14.0.8 to 14.0.10 in /adt-pulse-mqtt by @dependabot[bot] in #322
  • chore(deps): update dependency nock to ^14.0.10 by @renovate[bot] in #317
  • chore(deps): update eslint monorepo to ^9.33.0 by @renovate[bot] in #320
  • chore(deps): update dependency @babel/preset-env to ^7.28.3 by @renovate[bot] in #324
  • Bump rewire from 9.0.0 to 9.0.1 in /adt-pulse-mqtt by @dependabot[bot] in #326
  • chore(deps): update dependency rewire to ^9.0.1 by @renovate[bot] in #327

v3.4.0

06 Aug 23:26
14a8952

Choose a tag to compare

What's Changed

🛠️ Bug Fix

  • Deprecate armhf builds

📦 Dependencies

v3.3.5

07 Jun 21:01
29d773b

Choose a tag to compare

What's Changed

📦 Dependencies