10 KiB
10 KiB
Change Log
All notable changes to this project will be documented in this file. This change log follows the conventions of keepachangelog.com.
Unreleased
[0.1.20] - 2018-02-14
Upgrade notes
To take advantage of the more granular timing info in this version, you will need to upgrade to re-frame 0.10.5.
Added
- A time-travelling debugger. Navigating forwards and backwards through the event history updates app-db to match. Be careful when using this with a stateful backend; as in the movies if you change too much or go too far back, the future can become unpredictable.
Improved
- Improve Timing panel to show more granular timing info.
Fixed
- Settings panel has a scroll bar if your screen height is too small.
[0.1.19] - 2018-02-09
Changed
- Massive overhaul to how subscriptions are processed.
- Subscriptions that exist but weren't run, now show up in the subscription panel.
- Subscription creations and disposals that happen during figwheel reloads or otherwise outside of the re-frame event domino cycle are now correctly handled. If any of these happen, they show up in the new section Inter-Epoch Subscriptions.
- All of the actions that happen to a subscription within an epoch are now shown. This lets you spot unusual behaviour like a subscription being created but not-run, or a subscription running multiple times.
- Present better explanation messages when viewing the diff section for a sub where the value is unchanged, not run yet, or only run once.
Fixed
- Garden source dependencies are now working if you don't have your own dependency on Garden.
- New app-db path inspectors default to
"""
instead of"[]"
so you can see the help text.
[0.1.18] - 2018-01-31
Fixed
- Garden source dependencies now work if you don't have your own dependency on Garden.
[0.1.17] - 2018-01-31
This version requires re-frame 0.10.4 to make use of the newly added Event panel.
Added
- New event panel. This panel shows the coeffects given to your event handler, the effects your event handler produced, and all of the interceptors in the chain.
- Debugging instructions if re-frame-trace fails to start.
- Setting to drop low level traces. This reduces the memory overhead of re-frame-trace as we can drop more traces that you are unlikely to want most of the time.
- Diff the previous value of a subscription with its current value.
Changed
- In the subs panel "Ignore n layer 2 subs" is now "Ignore n unchanged layer 2 subs". This is a more useful filter, as you can filter out noisy layer 2 subscriptions, while still seeing the changes that do happen to layer 2 subs.
- The version of Garden that re-frame-trace uses is now bundled as a source dependency so you should no longer get conflicts if you use Garden 2.
- Refactored re-frame-trace trace parsing internals to incrementally parse new traces.
- Clicking on a trace's expanded information now prints the entire trace to the console instead of just the tags.
- Improved efficency of rendering views that do not need to filter out view namespaces.
- app-db and subs panel now have a slightly more responsive design.
Fixed
- External windows not loading
- All app-db and subscription path expansions are now independent of each other #134.
- Layer 2/3 calculations are more accurate now. We now use the last seen layer level when a subscription runs, to inform it's layer level if it was created or destroyed.
- View namespaces that are ignored are no longer shown when showing traces for all epochs.
- Distinguish between subscriptions that return
nil
values and those that haven't run yet. - Timing panel not showing elapsed event processing time.
[0.1.16] - 2018-01-26
There is now a React 16 variant of re-frame-trace available under the version 0.1.16-react16
. If your application uses React 16 and Reagent 0.8.0-alpha2 or higher, this is the version that you will need to use.
Added
- Setting to control how many epochs are retained
- Setting to reset all epochs
- Setting to ignore epochs
- Setting to filter out trace for views from uninteresting namespaces
Changed
- Updated bundled re-frame version to 0.10.3, and bundled reagent version to 0.7.0. This shouldn't impact your project's dependencies as they are source bundled via mranderson.
- Add hyperlinks to docs
Fixed
- Set a print limit of 400 characters in the event header, to prevent very large events from DOSing the host application.
- XML encode # character in SVGs, fixing #130.
- Fix the reset tracing button in the traces panel.
- Fix a bug when there is only one traced event, re-frame-trace would allow you to go back an epoch, throwing an exception.
[0.1.15] - 2018-01-24
Added
- The app-db panel now has buttons to reset app-db to the state at the beginning or end of any epoch.
- The subscription panel shows subscriptions that were created and destroyed.
- The trace panel automatically filters traces to just the current epoch
- A new timing panel shows basic timing statistics around event processing and rendering. More to come here.
Changed
- re-frame-trace is now organised around epochs. An epoch includes an event being processed, subscriptions running in response, and the view re-rendering.
- A new visual design language.
Fixed
Lots of quality of life fixes:
- Lower count of items in sequence before expanding icon shows #126
- Only allow one time based filter at a time #125
- Persist trace expansions when changing tab #105
- Hide :sub/create traces for cached subscriptions #93
- Persist filter category settings to localstorage #121
- Highlight events in trace window #106
[0.1.14] - 2017-12-19
Added
- New state snapshotting feature: Click the camera to snapshot app-db, and click the load button to restore to your snapshot. Snapshots only persist for the browser session, they aren't available after reloading the browser.
- X button to remove app-db paths
Changed
- Switched from LESS to Garden styles. Now interactive development and debugging of re-frame-trace is even faster.
- Reopen/reattach external popup windows when reloading host application
- Reorganise namespace layout and remove (hidden) subviz panel and D3 dependency. This may return in the future though.
- Only sort subscriptions by the subscription key, not the whole vector
- Visual tweaks
Fixed
- Set panel width correctly so you can see the whole panel at all times. Previously the right edge was just off screen.
[0.1.13] - 2017-11-23
N.B. To make the best use of the new subscriptions panel, you also need to update to re-frame v0.10.3-alpha1.
Added
- Bright yellow text when re-frame trace is preloaded, but tracing is not enabled.
- Add preliminary subscriptions panel. Still a bit buggy and not very pretty, but it should be useful even in this state.
[0.1.12] - 2017-11-16
Added
- Preliminary support for React 16 component paths. #89
- External popout window. #92
- Namespace aware truncation in the traces panel. #100
- App DB expansions and contractions now persist across reloads. Note the limitations with this feature.
Changed
- Hide index spans (the blocks next to each element counting the number of elements in a collection)
[0.1.11] - 2017-10-27
Changed
- Rename app-state panel to app-db
- Visual improvements to data viewer
[0.1.10] - 2017-10-27
Removed
- Subvis panel has been commented out while it is in a broken state.
[0.1.9] - 2017-10-27
Added
- Limit captured traces to a maximum of 4,000 to prevent performance slowdowns.
Changed
- Speed up animations for autoscrolling to bottom of list
- Print full keyword for operation name
Fixed
- Bad merge for handling window width changing.
[0.1.8] - 2017-10-25
Added
- Add a new App State panel. This lets you visualise your application state and inspect it. You can add multiple selections to view a subset of your application state.
Fixed
- Handle window viewport size changing and other dragging bugs. This should be the last of them, but open an issue if you still find glitches when resizing.
[0.1.7] - 2017-09-25
Changed
- Improve style resetting
- Visual improvements
Fixed
- Fix panel resizing behaviour under edge cases
[0.1.6] - 2017-09-05
Added
- Log trace data to the console when clicking on it.
[0.1.5] - 2017-08-31
Changed
- Put CSS in resources directory
[0.1.4] - 2017-08-31
Added
- Save settings to localstorage to persist across reloads
- Autoscroll to the bottom of the traces panel when at the bottom
- Use LESS for CSS
[0.1.3] - 2017-08-24
Added
- Show/hide traces
[0.1.2] - 2017-08-16
Changed
- Move styles and components to trace folder
[0.1.1] - 2017-08-16
Added
- Add event filtering
- Pin the filter input to the top of the panel
Changed
- Improve installation instructions
Fixed
- Fix panel resizing
[0.1.0] - 2017-05-02
Changed
- Artifact coordinates changed from
day8.re-frame/abra
today8.re-frame/trace
.
[0.0.9] - 2017-05-02
Changed
- The preloads namespace now adds the tracing panel to the DOM automatically, so you don't need to change any of your app code to bring it in. #14 via Dexter Gramfors.
Migration steps: Remove any explicit rendering instructions for
day8.re-frame.trace/devtools
in your app, as this is automatically added now.
[0.0.8] - 2017-04-13
Added
- There is now a preload namespace you can use to configure re-frame-trace. Install details are in the README.md. #13 via Dexter Gramfors.
[0.0.7] - 2017-04-13
This was a botched deploy. See 0.0.8.
[0.0.6] - 2017-03-28
Added
- Added getting started instructions to README.