Wappler 7.5.0 Released

Wappler 7.5.0 Released

Check the new Wappler site at https://wappler.io/
and download Wappler 7.5.0 from your Account Dashboard

Or just do “check for updates” on the Wappler tray icon for automatic install!

What's New

In this major Wappler update we have completely redesigned the Wappler Options Panel to make it easier to find and understand the various options available in Wappler.
The options can also be configured per project now, so you can have different settings for each project you are working on.

Futhermore we are excited to announce the release of App Connect 2.2.0, our biggest performance and stability update yet! This release brings dramatic speed improvements (up to 64% faster!), enhanced reliability through comprehensive testing, and several new features that make building reactive applications even better.

New Wappler Options Panel

  • The options panel is completely redesigned and reorganized to show the Wappler options well categorized and explained.
  • Now you can have options also specific for your project, so you can have different settings per project.
  • Api keys and sensitive data are now stored securely encrypted now.

App Connect 2.2.0

:high_voltage: Performance Improvements

Blazing Fast Reactive Updates

We've completely optimized the reactive engine and component rendering, delivering massive performance gains across the board:

  • Reactive populate operations: Up to 64% faster :fire:
  • Large dataset handling: 47% faster for fast repeat operations
  • Nested component updates: 43% faster reactive nested toggles
  • Cascading updates: 35% faster reactive cascades
  • Overall performance: 19% faster aggregate across all operations

Real-World Impact

What does this mean for your applications?

  • :sparkles: Smoother animations and transitions
  • :high_voltage: Instant response to user interactions
  • :rocket: Faster page loads with large datasets
  • :flexed_biceps: Better performance on lower-end devices
  • :bullseye: More responsive forms and data tables

Technical Optimizations

  • Smart expression caching - Compiled expressions are now cached per scope, eliminating thousands of redundant evaluations
  • Optimized signal propagation - Reactive updates now use breadth-first queuing with intelligent batching
  • Faster repeat rendering - Non-keyed repeats reuse constructors and fragments, significantly reducing DOM operations
  • Streamlined parser - Lexer whitespace trimming and pooled argument buffers reduce memory allocations
  • Enhanced equality checks - Optimized comparisons for arrays, typed arrays, Maps, and Sets

:locked: Rock-Solid Stability

Comprehensive Test Coverage

We've built an extensive testing framework with over 1,800 automated tests to ensure App Connect works flawlessly:

  • :white_check_mark: 1,842 unit tests covering every formatter, component, and utility
  • :white_check_mark: 19 browser integration tests validating real-world scenarios
  • :white_check_mark: 99.9% test pass rate - nearly perfect reliability
  • :white_check_mark: 90% code coverage - thoroughly tested codebase

What This Means for You

  • :shield: Fewer bugs - Issues caught before they reach production
  • :magnifying_glass_tilted_left: Faster fixes - Problems identified and resolved quickly
  • :chart_increasing: Continuous improvement - Every commit is automatically tested
  • :100: Production-ready - Enterprise-grade quality assurance

:new_button: New Features & Enhancements

Enhanced Data Handling

Better Clone & Equality Operations
  • Typed array support - Proper handling of Int8Array, Uint8Array, Float32Array, etc.
  • DataView cloning - Correct slicing semantics preserved
  • Map & Set comparison - Respects insertion ordering for reliable equality checks
  • ImageData support - Properly duplicates underlying buffers
  • NaN handling - Treats NaN values as equal in comparisons (as expected)
  • Prototype pollution prevention - Safer object cloning that skips __proto__ assignments
Improved Array Operations
  • Case-insensitive membership - where() with inArray/notInArray now works correctly with case-insensitive matching
  • Better null handling - Array formatters gracefully handle edge cases

Security Enhancements

  • XSS Protection - The stripTags() formatter now properly removes <script> and <style> content, preventing potential security vulnerabilities
  • Safer data operations - Enhanced input validation across formatters

String Formatters

  • Improved trunc() - Better ellipsis handling with standard "..." characters
  • Smarter slugify() - No more trailing dashes in generated slugs
  • Robust repeat() - Better error handling for invalid inputs

Date Formatting

  • Uppercase token support - YYYY and DD tokens now work correctly (previously only lowercase worked)

Number Formatting

  • Better defaults - formatNumber() now defaults to comma thousand separators for improved readability

JSON Support

  • Global formatter - json() formatter now available for easy JSON stringification

API Improvements

  • Dynamic adapter registration - dmx.Adapter() now auto-creates type objects when registering new adapter types
  • Better type handling - More reliable component and adapter initialization

Framework Utilities

  • Fixed throttle function - Event throttling now works correctly in all scenarios
  • Improved flow expressions - Flow actions can now safely differentiate literal strings from dynamic expressions

:bug: Stability Fixes

We've identified and resolved several edge cases and issues to make App Connect more reliable:

Core Improvements

  • Fixed event throttling for delayed callbacks
  • Resolved adapter initialization for new types
  • Corrected clone operations for native ArrayBuffer instances

String Formatters

  • Better handling of null and undefined values
  • Improved edge case handling in trunc(), slugify(), and repeat()
  • Enhanced security with proper <script> tag content removal in stripTags()

Array Operations

  • Fixed case-insensitive membership checks in where() operations
  • More consistent behavior with empty arrays and null values

Component Rendering

  • Optimized repeat component updates with better memory management
  • Enhanced reactive propagation with fewer redundant computations

Fixed issues

4 Likes