Releases: stimulusreflex/stimulus_reflex
Releases · stimulusreflex/stimulus_reflex
v3.5.2
Fixed
Documentation
- Add page which describes the "redisless" setup by @andyundso in #703
Dependencies
- Bump rexml from 3.2.5 to 3.2.8 by @dependabot in #704
New Contributors
- @juna-nb made their first contribution in #705
- @andyundso made their first contribution in #703
Commits
Full Changelog: v3.5.1...v3.5.2
v3.5.1
Changed
- Update CableReady to
v5.0.5
by @marcoroth in 6d01dd4 - Bump nokogiri from 1.16.4 to 1.16.5 by @dependabot in #700
Commits
Full Changelog: v3.5.0...v3.5.1
v3.5.0
Added
- Add support for Reflex Callback skips by @assuntaw in #466
- Add support for prepend and append reflex callbacks by @marcoroth in #472
- Add support for return values for
stimulate
calls by @leastbad in #458 - Add connection status class by @leastbad in #589
- Add
precompile_assets
option to disable assets compilation by @marcoroth in #631 - Emit
stimulus-reflex:ready
event on element instead of document by @marcoroth in #625 - Improve DX around version mismatch warnings by @marcoroth in #641
- Export
StimulusReflexController
constant by @marcoroth in #672 - Add implicit dom_id for morph selectors by @leastbad in #436
- Report failed basic auth by @leastbad in #454
- Handle generated value for channel_prefix if app directory contains dots or spaces by @lxxxvi in #457
- Log reflex payloads client-side by @julianrubisch in #476
- Reflex return payloads for events and callbacks by @leastbad in #477
- Add
useReflex
js function to "support" the composable pattern by @marcoroth in #475 - Prevent /cable from being prepended to ActiveStorage route helpers by @leastbad in #484
- deprecation warnings (consumer, form serialization, isolation mode) by @leastbad in #438
- version check by @leastbad in #434
- feature: add check for default url options by @nachiket87 in #480
- Prevent install script from choking on magic comments via hard-coded line numbers by @leastbad in #494
- render_collection by @leastbad in #498
- Log the full exception trace by @rmckayfleming in #491
- data-reflex-dataset and data-reflex-dataset-all by @leastbad in #478
- convert symbol keys, ensure fragment html exists by @leastbad in #503
- tab_id accessor by @leastbad in #506
- delegate dom_id to CableReady::Identifiable by @leastbad in #485
- handle operations that have string-defined selector argument by @leastbad in #509
- Schema object with getters by @leastbad in #505
- Optionally provide innerHtml and textContent on StimulusReflex::Element by @julianrubisch in #517
- Improve install experience by @leastbad in #510
- Specify form selector by @julianrubisch in #527
- Morph stimulus reflex element AKA "single element page morph" by @julianrubisch in #522
- add first line of stacktrace to console.log error in dev environment by @RolandStuder in #532
- reflex render layout defaults to false by @leastbad in #534
- Add generator options to skip reflex and stimulus by @nachiket87 in #543
- Provide proxy methods boolean and numeric on Element by @julianrubisch in #528
- Overhaul Reflex logging by @leastbad in #546
- document body connection status classes by @leastbad in #547
- serialize forms with multiple, non-unique array elements by @leastbad in #556
- emit custom life-cycle events by @leastbad in #559
- suppress logging by @leastbad in #560
- Client side sanity by @leastbad in #561
- Bundle for Production, Dev-Builds and prebuilt JavaScript with the gem by @marcoroth in #575
- conditional operator breaks webpack in some cases by @leastbad in #587
- throw :forbidden by @leastbad in #588
- configure operations for morph and replace by @leastbad in #599
- Provide JavaScript package version on global
StimulusReflex
object by @marcoroth in #603 initialize
doesn't need to return a reference toreflexes
by @leastbad in #611- Make Schema configurable by @marcoroth in #624
- Remove
config.on_new_version_available
option by @marcoroth in #634 - New StimulusReflex installer experience by @leastbad and @marcoroth in #610
- Show version mismatch warning toasts when CableReady versions mismatch by @marcoroth in #651
- Implement
nokogiri-html5-inference
to properly support HTML fragment parsing by @marcoroth in #696
Changed
- Call initial
setupDeclarativeReflexes()
ondocument.readyState === 'complete'
by @marcoroth in #602 - Move logger and sanity_checker to /utils by @leastbad in #456
- only run piggybacked operations after SR is finished, and isolate them by @leastbad in #482
- Always pick up instance variables when accessing controller by @leastbad in #493
- Stop adding whitespace when parsing our html by @lmatiolis in #492
- New CR wire format + reworked server message events by @leastbad in #536
- reverse merge params into locals by @leastbad in #542
- specify env headers for page morph controller by @leastbad in #538
- When searching a controller based off a reflex name, ignore hyphens by @g-gagnon in #558
- Fall back to empty siblings list if no parentNode is present by @julianrubisch in #566
- Temporarily fix OpenStruct with fix for
class
andmethod
attributes by @marcoroth in #569 - Fall back to empty siblings list if no parentNode is present by @julianrubisch in #566
- Temporarily fix OpenStruct with fix for
class
andmethod
attributes by @marcoroth in #569 - Make
version
import frompackage.json
webpack 5 compatible by @marcoroth in #604 - Declarative Reflexes Resiliency by @marcoroth in #606
- Introduce
StimulusReflex::HTML::Document
, featuringNokogiri::HTML5
by @marcoroth in #601 - Don't use relative imports for Importmaps by @marcoroth in #655
- Don't choose first controller if no matching StimulusReflex-enabled controller was found by @marcoroth in #670
- Isolate and namespace
StimulusReflex::Installer
by @marcoroth in #699
Removed
- Remove
ActiveSupport::Concern#prepended
usage for Rails 6 by @marcoroth in #662 - Remove
changelog
GitHub Action by @marcoroth in #576 - Remove minified dist files by @marcoroth in #648
Fixes
v3.5.0.rc4
Security Fix
- Only allow safe
method_name
calls on reflexes (resolves CVE-2024-28121, click here to learn more) by @marcoroth, thanks to @FelixMartel for reporting this!
Changed
- Don't choose first controller if no matching StimulusReflex-enabled controller was found by @marcoroth in #670
- Export
StimulusReflexController
constant by @marcoroth in #672
Fixed
- Fix exception in ActionCable channel due to reflexes overwriting each other's data by @alexander-makarenko in #663
- Fix
reflex_data
keyword argument by @brunoenten in #673 - Fix undefined package_json during Yarn install by @mattboldt in #676
- Fix ReflexData parsing by @Matt-Yorkley in #688
Docs
- Update setup docs by @julianrubisch in #645
- Update mrujs link on docs by @cpgo in #675
- Fix typo in Step 2 of Setup Docs by @ryanmansfield in #680
Dependencies
- Bump word-wrap from 1.2.3 to 1.2.4 by @dependabot in #671
- Bump vite from 4.3.9 to 4.5.2 by @dependabot in #681
- Bump rack from 2.2.7 to 2.2.8.1 by @dependabot in #690
- Bump ip from 1.1.8 to 1.1.9 by @dependabot in #685
New Contributors
- @alexander-makarenko made their first contribution in #663
- @cpgo made their first contribution in #675
- @brunoenten made their first contribution in #673
- @mattboldt made their first contribution in #676
- @ryanmansfield made their first contribution in #680
- @FelixMartel made their first contribution in GHSA-f78j-4w3g-4q65
Commits
Full Changelog: v3.5.0.rc3...v3.5.0.rc4
v3.4.2
v3.5.0.rc3
Released: 2023-07-12
Added
-
Fixed
- Fix reference to VersionMismatchError after namespace change by @Matt-Yorkley in #665
- Don't use relative imports for Importmaps by @marcoroth in #655
Removed
- Remove
ActiveSupport::Concern#prepended
usage for Rails 6 by @marcoroth in #662
Docs
- docs: Add whitespace in the docs. by @dixpac in #657
- docs: Sentence rephrasing, to->from by @dixpac in #658
- docs: fix broken next page link on welcome page by @marcoroth in #661
Dependencies
- Bump nokogiri from 1.14.2 to 1.14.3 by @dependabot in #654
- Bump vite from 4.3.8 to 4.3.9 by @dependabot in #667
- Bump semver from 5.7.1 to 5.7.2 by @dependabot in #669
Commits
Full Changelog: v3.5.0.rc2...v3.5.0.rc3
v3.5.0.rc2
Released: 2023-03-28
Added
- Show version mismatch warning toasts when CableReady versions mismatch by @marcoroth in #651
Fixed
Dependecnies
- Upgrade
cable_ready
to5.0.0.rc2
by @marcoroth in 437b7f4
New Contributors
Commits
Full Changelog: v3.5.0.rc1...v3.5.0.rc2
v3.5.0.rc1
Released: 2023-03-26
Added
- Improve DX around version mismatch warnings by @marcoroth in #641
- Add
config.updatable_debounce_time
to CableReady initializer template by @marcoroth in b10f501
Fixed
- Don't add
data-controller
to reflex element if parent already holds instance by @marcoroth in #636 - Fix typo in
ApplicationReflex
generator template by @jbakerdev in #638 - Fix
Gemfile
Pathname
reference indevelopment
installer task by @fig in #640 - Fix generator file name references by @julianrubisch in #644
- Fix deep merge of
url_params
inReflexData
by @julianrubisch in #647 - Fix invalid NPM versions for
@hotwired/stimulus
and@rails/actioncable
by @marcoroth in 08881c8 - Fix missing newline in reflex generator by @marcoroth in 84c1845
Removed
- Remove minified dist files by @marcoroth in #648
Note: if you were using the any StimulusReflex
min.js
files we ask you to migrate to the non-minified versions.
Documentation
- Fix broken docs link in
README.md
by @fig in #637 - Fix
expect
->except
typo by @marcoroth in 903d078 - Use
dataset.attribute
overdataset[:attribute]
syntax by @marcoroth in e225a1f - Add example for
element.dataset.reflex
by @marcoroth in 055989f - Incorporate changes from
pre-release
branch by @marcoroth in 9ade91b
Dependencies
- Bump
cable_ready
to5.0.0.rc1
by @marcoroth in 53a57a4 - Update
rack
requirement from~> 2.0
to>= 2, < 4
by @dependabot in #643 - Bump
rack
from2.2.6.3
to2.2.6.4
by @dependabot in #646 - Upgrade
@web/test-runner
to0.15.1
by @marcoroth in 89fad7c - Upgrade
vitepress
to1.0.0-alpha.56
by @marcoroth in 7f91f12 - Upgrade
rollup
to3.19.1
by @marcoroth in 95bc99e - Upgrade
redis-client
to0.14.0
by @marcoroth in e32e64c
Internal
- Add
test:watch
node script by @marcoroth in 77de87b - Add more tests for
StimulusReflex::HTML::DocumentFragment
by @marcoroth in e965b79
New Contributors
- @jbakerdev made their first contribution in #638
- @fig made their first contribution in #637
Commits
Full Changelog: v3.5.0.pre10...v3.5.0.rc1
v3.5.0.pre10
Released: 2023-02-21
Added
- Add new
forbidden
lifecycle event by @leastbad in #588 - Add support for enqueuing reflexes when ActionCable connection might not be established yet by @leastbad in #590
- Add global and controller-scoped
reflexes
object by @leastbad in #592 - Add
config.morph_operation
andconfig.replace_operation
config options by @leastbad in #599 - Add
StimulusReflex.version
on global JavaScript object by @marcoroth in #603 - Add StimulusReflex 3.5 installer by @leastbad and @marcoroth in #610
- Add support for URL parameters in ReflexData by @leastbad in #612
- Add
config.precompile_assets
option for disabling assets compilation by @marcoroth in #631
Changed
- Emit
stimulus-reflex:ready
event on specific element instead ofdocument
by @marcoroth in #625
Fixed
- Fix inclusion of missing rake tasks by @marcoroth in #581
- Fix conditional operator for webpack by @leastbad in #587
- Fix missing safe navigation by @leastbad in #600
- Fix
version
import frompackage.json
for webpack 5 compatibility by @marcoroth in #604 - Fix Schema to be able to be configured multiple times by @marcoroth in #624
- Fix race conditions when using Import Maps:
- Call initial
setupDeclarativeReflexes()
ondocument.readyState === 'complete'
by @marcoroth in #602 - Fix detection of
data-reflex
attributes by making the mechanism more resilient by @marcoroth in #606
- Call initial
Removed
- Remove
config.on_new_version_available
option by @marcoroth in #634
Documentation
Note
documentation changes are now welcome in pull requests!
- Add StimulusReflex 3.5 documentation by @leastbad and @marcoroth in #627
- Migrate documentation from GitBook to Vitepress by @marcoroth in #627
- Add missing space in
hello-world/index.md
by @mkempe in #632
Internal/Refactoring
- Refactor connection status by @leastbad in #589
- Refactor
ActionCableTransport
module by @leastbad in #590 - Introduce the
Reflex
JavaScript class by @leastbad in #592 - Extract
StimulusReflex::Fragment
by @julianrubisch in #594 - Extract
StimulusReflex::CableReadiness
by @julianrubisch in #595 - Consolidate
morph
method between broadcasters by @julianrubisch in #597 - Introduce
StimulusReflex::HTML::Document
, featuringNokogiri::HTML5
by @marcoroth in #601 - Use
Utils
functions from CableReady JavaScript package by @marcoroth in #623 - Add tests for
StimulusReflex::Configuration
by @marcoroth in #633
Dependencies
- Bump cable_ready to
5.0.0.pre10
by @marcoroth in #635 - Bump nokogiri from 1.13.3 to 1.13.4 by @dependabot in #580
- Bump async from 2.6.3 to 2.6.4 by @dependabot in #582
- Bump nokogiri from 1.13.4 to 1.13.6 by @dependabot in #585
- Bump rack from 2.2.3 to 2.2.3.1 by @dependabot in #586
- Bump rails-html-sanitizer from 1.4.2 to 1.4.3 by @dependabot in #593
- Bump terser from 5.14.0 to 5.14.2 by @dependabot in #596
- Bump nokogiri from 1.13.6 to 1.13.9 by @dependabot in #613
- Bump nokogiri from 1.13.9 to 1.13.10 by @dependabot in #615
- Bump loofah from 2.18.0 to 2.19.1 by @dependabot in #616
- Bump rails-html-sanitizer from 1.4.3 to 1.4.4 by @dependabot in #617
- Bump rack from 2.2.3.1 to 2.2.6.2 by @dependabot in #628
- Bump globalid from 1.0.0 to 1.0.1 by @dependabot in #629
- Bump ua-parser-js from 1.0.2 to 1.0.33 by @dependabot in #630
New Contributors
Commits
Full Changelog: v3.5.0.pre9...v3.5.0.pre10
v3.5.0.pre9
Released: 2022-04-01
Added:
- This release enables Rails Applications to easily include the StimulusReflex JavaScript client into their app by just installing the
stimulus_reflex
Rubygem.
# Gemfile
gem 'stimulus_reflex', '~> 3.5'
Either with Import maps:
# config/importmap.rb
# ...
pin 'stimulus_reflex', to: 'stimulus_reflex.js', preload: true
Or with the regular Asset pipeline:
<!-- app/views/layouts/application.html.erb -->
<%= javascript_include_tag "stimulus_reflex.umd.js", "data-turbo-track": "reload" %>
Changed
- Client side sanity by @leastbad in #561
- Updated gemspec to specific Rails gems by @paul in #568
- Fall back to empty siblings list if no parentNode is present by @julianrubisch in #566
- Bundle for Production, Dev-Builds and prebuilt JavaScript with the gem by @marcoroth in #575
Fixed
- Fix logger when :logging is nil by @ni3t in #573
- Temporarily fix OpenStruct with fix for
class
andmethod
attributes by @marcoroth in #569
Removed
- Remove
changelog
GitHub Action by @marcoroth in #576
Dependencies
- Bump nokogiri from 1.12.5 to 1.13.3 by @dependabot in #572
New Contributors
Commits
Full Changelog: v3.5.0.pre8...v3.5.0.pre9