Marionette.inspector Versions Save

:mag: Marionette Inspector - Explore your App

0.4.0

9 years ago

Overview

  • We're enabling the Activity Pane for the first time
  • UI Info shows triggers, listeners, activity, and warnings
  • Data Info shows class heirarchy
  • Radio handler contexts and callbacks are much better supported

Added

  • Added more metadata for event triggers (listeners, tart, end, and actionId)
  • Added Behaviors, Module, Object, Application, and Controller to app component registry
  • Added printProperty helper for console messages
  • Re-styled inspector header
  • Add view Triggers pane
  • Add view Listners pane
  • Improved findKey helper so that it unwraps listenToOnce and detects the underlying callback
  • Improved findKey helper so that it looks up the prototype chain
  • Added class heiararchy panes to Model
  • Added much better support for detecting Radio contexts and callbacks

Changed

  • Refactored patchDefine to split it up into smaller pieces
  • Refactored serializeEvents to conform to B.Events

Fixed

  • Fixed bug where the info pane would appear clipped
  • Fixed bug where inspecting an element would fail if underscore weren't defined globally in the window
  • Fixed serious issue where agent.js linenumbers were mis-aligned
  • Fixed clientInspect so that it works for jQuery elements
  • Fixed search for sessions that changed the elements while search was on
  • Fixed clientInspect's handling of native functions
  • Fixed Activity pane UI so that it's based off of the new components tree
  • Fixed Activity pane perf issues by debouncing a couple things
  • Fixed patchWindow bug where marionette could be found w/o backbone

0.3

9 years ago

0.3 Adds tons of features for surfacing view and model properties and making them clickable.

  • Views now show their parent class properties
  • Models show the objects that are listening to their events
  • Models have an info pane for cid, collection, _pending, and _changing flags
  • Views have an info pane for cid, element, model, and many other fields.
  • Almost everything in the model and view pane is clickable, which will jump to an element, function, or print a value to the console.
  • The Radio pane now gives the context and function name for events, request, and commands.

There are many more small features bundled in aswell.

Added

  • Added support for seeing Radio pane handler callback and context for events, requests and commands
  • Added a view info pane for showing the view's cid, element, model, ...
  • Added ancestor class panes for views. A typical view will now have a pane for (Marionette.ItemView, Marionette.View, and Backbone.View properties)
  • Added support for clicking on View and Model Properties
  • Added support for clicking on Backbone Models and Backbone Views
  • Added support for looking up an ononymous function's name based on the object it was defined in.
  • Added an inspectValue keys field for when a value is defined in an object.
  • Improved the Model info pane to show the cid, id, _pending, _changing, _listenerId, and collection field
  • Added support for showing a model's listeners, which lists the objects listening to the model.

Fixed

  • Fixed the tests to better handle global __agent methods
  • Fixed a bug where Marionette is defined on Backbone and in its own module
  • Fixed a bug where define did not work with 3rd party libraries
  • Fixed the bootstrap responsive nav - so that it stops showing the nav button on small widths.
  • Fixed "file not found" errors w/ requirejs
  • Fixed tons of styling for the panel list and info columns.

Changed

  • Re-organized the inspector's styles. They're now decently well factored in partials.
  • Cleaned up the serializing naming conventions to be more consistent. (Added inspectObject)

0.2.1

9 years ago

This version introduces realtime syncing for some properties (view ui, model attribues) and hyperlinking for some objects (models in view options). Future versions will add a lot more property syncing and object links.

We also fixed a pretty bad bug, where when the page refreshes the inspector would have multiple views in the cache with the same cid.

Added

  • The <Backbone.Model> links in View options now link to the model in the data pane
  • The view UI attributes are now updated when they change
  • The Model Attribues are now updated when they change
  • Added Collections to the data pane
  • Added the array type to the inspectValue function so that arrays are serialized properly

Fixed

  • Fixed a bug where the inspector would not clear it's cache of views and models when the page was refreshed. This resulted in multiple views in the cache having the same cid.
  • Fixed phantomjs Function.prototype.bind bug
  • Removed unused libraries
  • Fixed Readme puppet org references

V0.2

9 years ago

Version 0.2 sports a brand new UI tree with significantly improved performance and magnifying glass.

Added

  • Added a highlight mask when using the magnifying glass. Previously the element got a background color, which would be hidden by other elements.
  • Added a new backbone based tree component for use in the UI tree.
  • Added an inspector view collection for keeping track of view instances created in the inspected app.
  • Added a new ui architecture for updating the UI tree on changes. Previously the full serialized ui tree was sent with every change, now a trimmed down UI tree with just cids is sent. This results in a 30% performance improvement.
  • Added a scriptUrl for the injected script (agent.js)
  • Addeed sass compilation

Fixed

  • Fix page refresh logic so that the inspector stays uptodate after router.navigate calls
  • Fix select and hover state for Radio and Data ui panes
  • Fix agent toJSON function so that catches circular exceptions when parsing
  • Fixed inconsistency with logger file name.

Upgraded

  • Upgraded Handlebars to 2.0

V0.1.1

9 years ago

Added

  • Added the activity feed behind a flag. It's hidden for now while performance and UI is improved.
  • Added a "start inspector" button so that the inspector doesn't force a refresh
  • Added reloading logic so that the inspector stays uptodate
  • Added support for Backbone.Radio in the radio tab
  • Added support for fetching the regionTree from app.layout

Fixed

  • fixed agent.js script name, so that it's given the name of the script for debugging purposes.

V0.1

9 years ago

The new shiny release is the first release that I'd honest to goodness recommend to a friend. I expect it to work for you and I think you'll enjoy using it. With that said, the inspector is still only a month old and it is missing important features so they'll be plenty of improvements over the coming weeks.

Added

  • Added a manual inspector start method __agent.start for when the app is not discoverable.
  • Added the Radio pane. Now all of the Radio channels are browsable.
  • Started logging view and model create and destroy events individually.

Fixed

  • Fixed a bug where Backbone was being set on the window and was not being detected.

V0.0.8

9 years ago

Fixes

  • Fixed a couple small bugs that were an issue for v0.0.7

V0.0.7

9 years ago

Release seven adds two exciting features:

  1. A data pane for seeing your app's models
  2. Automatic app detection. Previously the app had to be referenced on window.app

Added

  • Add Data pane for viewing models created in the application
  • Started patching Marionette Application. We now automatically detect applications when they're created.
  • Created empty Radio and Activity panes. They'll be filled in soon.
  • Added a test-harness and some initial tests for the agent core. More will happen here soon.
  • Added an Inspector Module base class that is shared between panes (ui, data, ...)

Removed

  • Stopped logging view dom events as they weren't being used in the inspector.

Changed

  • Improved serializing significantly. Views and Models now share an internal inspectValue function that identifies types and creates a summary for use in the inspector.
  • Dramatically improved backbone and marionette patching. We were previously patching both libraries at the same time, but they're now split up so we will patch backbone when we find it and Marionette later when it's detected.
  • Split up the build step a little bit further. We now compile an agent.js, localAgent.js and core.js Core is the agent.js minus library dependencies and library patching. It's useful for the test harness because we want to re-load libraries that will be patched before each test.
  • agent/logic.js was changed to agent/agent.js to be more consistent.
  • Updated the updated.html to refer to the Marionette Inspector.

Fixed

  • Fixed inspector router issue when navigating between two panes

V0.0.6

9 years ago

Fixed

  • Fixed backbone detection so that we get region tree update events again
  • Fixed the regionInspector so that collection and composite views get added to the region tree.

V0.0.5

9 years ago

Added

  • Added a highlight feature, where when you mouseover a view, the inspector highlights the dom on the page where the view resides.
  • Added a magnifying glass feature, where when you turn it on and mouseover a part of the page, we show you which view manages that region.
  • Improved the regionTree function so that it now checks both the application and app.rootView for those using the rootView V3 api. cough cough @jmeas

Removed

  • Removed both the panel folder and elementsSidebar work as that was strictly for the backbone-debugger.

Changed

  • Renamed core Inspector components to be more inline with the venacular we've been using on the project. backboneAgent became agent, devTools became inspector.
  • Moved Logger and Debug to the common/utils folder. In a future release debug will be deprecated in favor of Logger.
  • Refactored marionetteObserver code into smaller chunks in the agent/marionette folder.

Fixed

  • Fixed the "app not found" language to make it clear that you have to expose the app on window.app
  • Fixed the commands api, so that clicking on an element or function will take you to the elements tab and sources tab
  • Fixed a backbone observer bug where, the agent would blow up if the listeners weren't properly set. This was happening for people who were using webpack and browserify