Skip to content

RELEASE_NOTES_v1.8.7

github-actions[bot] edited this page Nov 12, 2025 · 1 revision

Release Notes - Version 1.8.7

Release Date: November 12, 2025
Release Type: Patch Release
Focus: Bug fixes and documentation improvements

🐛 Bug Fixes

Bridge Internet Connectivity Detection

Issue: Bridge nodes were incorrectly reporting internet connectivity status.

Problem:

  • Bridge connected to router would report "Internet: NO" even when the router had internet
  • The hasInternetConnection() function was returning false positives on regular nodes
  • Only checked WiFi connection status, not actual internet connectivity

Solution:

  • Enhanced connectivity check to verify both WiFi status AND valid gateway IP
  • Check now verifies WiFi.status() == WL_CONNECTED AND gateway IP is not 0.0.0.0
  • Regular nodes without WiFi connection correctly report no internet

Impact:

  • Bridge failover logic now works correctly
  • Internet connectivity status is accurate
  • Better network topology awareness

Files Modified:

  • src/arduino/wifi.hpp (lines 1188-1192)
  • examples/bridge_failover/README.md (added troubleshooting)

Before:

Bridge → Router (with Internet) → Reports: "Internet: NO" ❌

After:

Bridge → Router (with Internet) → Reports: "Internet: YES" ✅

Version Documentation Consistency

Issue: Header file version comments were out of sync with library version, causing user confusion.

Problem:

  • painlessMesh.h showed version 1.8.4 in header comment
  • AlteriomPainlessMesh.h showed version 1.6.1 in version defines
  • Library files showed version 1.8.6
  • Users were confused about whether files had been modified since those versions

Solution:

  • Updated painlessMesh.h header comment to version 1.8.7
  • Updated AlteriomPainlessMesh.h version defines to 1.8.7
  • Created comprehensive VERSION_MANAGEMENT.md documentation
  • Clarified that header versions reflect library version, not file-specific versioning
  • Added version management guidance to RELEASE_GUIDE.md

Impact:

  • Clear documentation about version management
  • No more confusion about header file versions
  • Established best practices for version comments

Files Modified:

  • src/painlessMesh.h
  • src/AlteriomPainlessMesh.h
  • docs/VERSION_MANAGEMENT.md (new)
  • RELEASE_GUIDE.md (enhanced)

Documentation Added:

  • Explains version comment purpose and meaning
  • Clarifies difference between library version and file modification history
  • Provides best practices for version management
  • Documents the complete version update process

📚 Documentation Improvements

New Documentation

  1. VERSION_MANAGEMENT.md
    • Comprehensive guide to version management
    • Explains version comment purpose
    • Clarifies common questions
    • Documents version update workflow
    • Best practices for version comments

Enhanced Documentation

  1. RELEASE_GUIDE.md

    • Added reference to VERSION_MANAGEMENT.md
    • Updated release process to include header version updates
    • Clarified version management workflow
  2. bridge_failover/README.md

    • Added troubleshooting for internet connectivity issues
    • Explained the enhanced connectivity detection

🔄 Migration Guide

No breaking changes. This release is fully backward compatible with version 1.8.6.

For Users

No action required. Simply update to version 1.8.7:

Arduino Library Manager:

Sketch → Include Library → Manage Libraries → Search "AlteriomPainlessMesh" → Update

PlatformIO:

[env:myenv]
lib_deps = 
    alteriom/AlteriomPainlessMesh@^1.8.7

NPM:

npm update @alteriom/painlessmesh

For Contributors

When releasing future versions:

  1. Update header file version comments to match library version
  2. Follow the VERSION_MANAGEMENT.md guidelines
  3. Use the enhanced release process in RELEASE_GUIDE.md

📊 Technical Details

Files Changed

  • src/painlessMesh.h - Version comment updated
  • src/AlteriomPainlessMesh.h - Version defines updated
  • src/arduino/wifi.hpp - Internet connectivity detection fixed
  • examples/bridge_failover/README.md - Troubleshooting added
  • docs/VERSION_MANAGEMENT.md - New documentation
  • RELEASE_GUIDE.md - Version management guidance added
  • CHANGELOG.md - Release notes added
  • library.properties - Version 1.8.7
  • library.json - Version 1.8.7
  • package.json - Version 1.8.7

Testing

All existing tests pass. No new tests required as changes are:

  • Documentation updates
  • Bug fixes to existing functionality
  • Version comment updates

Compatibility

  • ✅ ESP32: All variants supported
  • ✅ ESP8266: All variants supported
  • ✅ Arduino Core 2.x: Fully compatible
  • ✅ Arduino Core 3.x: Fully compatible
  • ✅ PlatformIO: All platforms supported

🙏 Acknowledgments

Issue Reporter:

  • User question about version comments in painlessMesh.h

Contributors:

  • @Alteriom - Bug fixes and documentation

📖 Related Resources

  • VERSION_MANAGEMENT.md - Complete version management guide
  • RELEASE_GUIDE.md - Release process documentation
  • CHANGELOG.md - Complete version history
  • GitHub Issues - Report issues

🔗 Links


Previous Release: v1.8.6 - November 12, 2025
Next Release: TBD

Clone this wiki locally