Releases: preactjs/preact-devtools
0.6.2
This release completes the Profiler rewrite. The flamegraph can now display memoized trees and displays timings in a lot more polished way 🎉
- Fix
symbol
values not supported (#196, thanks @marvinhagemeister) - Make debug views toggle-able via setting (#195, thanks @marvinhagemeister)
- Profiler: Add support for displaying memoized children (#194, thanks @marvinhagemeister)
- Debug panels (#192, thanks @marvinhagemeister)
- Profiler refactor Part 2 (#191, thanks @marvinhagemeister)
- Fix trying to set popup on closed tab (#189, thanks @marvinhagemeister)
0.6.1
This release contains no new features and all time was spent on polishing the existing ones and a bit of housekeeping. Most notably the Profiler will be a lot faster on weak GPUs (like the one in my Dell XPS 13 laptop).
- Profiler refactor Part 1 (#187, thanks @marvinhagemeister)
- Add support for custom persistent user profiles (#186, thanks @marvinhagemeister)
- Fix report bug link not working (#185, thanks @andrewiggins)
- Work around chrome monospace bug (#184, thanks @marvinhagemeister)
- Only show selftime in ranked Flamegraph (#183, thanks @marvinhagemeister)
- Fix lint-staged config + update pentf (#182, thanks @marvinhagemeister)
- Make flame graph animations less demanding on GPU (#180, thanks @marvinhagemeister)
- Refactor DataInput (#179, thanks @marvinhagemeister)
- Make generated bundles easier to review (#178, thanks @marvinhagemeister)
- Profiler: Mark unrelated nodes visually (#177, thanks @marvinhagemeister)
- Fix window resize event never triggered (#176, thanks @marvinhagemeister)
0.6.0
This release hardens the recently introduced hooks inspection and fixes several edge cases. Apart from that it's now possible to properly debug Preact applications that are rendered inside an iframe
. The highlight overlay will adapt to the iframe
's position accordingly 🎉
Despite this being mostly a maintenance release, there is one new feature: "Reload and profile". This allows to capture the very first render of any application and inspect the render performance!
Features:
- Sync (only user) selection Profiler -> Elements (#174, thanks @marvinhagemeister)
- Add support for reload and profile (#172, thanks @marvinhagemeister)
Bug Fixes:
- Fix wrong highlight position if rendered in iframe (#171, thanks @marvinhagemeister)
- Fix hooks parsing error when value is shortened (#167, thanks @marvinhagemeister)
- Fix possible exception in hooks parsing code (#166, thanks @marvinhagemeister)
- Fix tree item not scrolling into view in search (#165, thanks @marvinhagemeister)
Maintenance:
- Always enable no-console linting rule (#173, thanks @marvinhagemeister)
- Make e2e tests more resilient (#170, thanks @marvinhagemeister)
- Upgrade all dependencies (#163, thanks @marvinhagemeister)
0.5.0
This release finally brings support for hooks inspection to preact devtools! It allows you to fully debug all hooks of a component, including custom ones. This is big for me as it took me a few tries to get it right. If you find any issues with it, please reach out!
Apart from that there have been some minor visual changes to improve readability.
Features
- Make complex hook values collapsable (#160, thanks @marvinhagemeister)
- Use better color hierarchy in sidebar (#159, thanks @marvinhagemeister)
- Minor design improvements (#158, thanks @marvinhagemeister)
- Add support for hooks (#143, thanks @marvinhagemeister)
- Limit key length display (#154, thanks @marvinhagemeister)
Maintenance
- Extract parsing logic from sidebar components (#156, thanks @marvinhagemeister)
- Refactor SidebarPanel empty message handling (#155, thanks @marvinhagemeister)
0.4.0
This release improves a lot of little UX interactions and contains a lot of house cleaning in preparation for hooks inspection.
We couldn't resist adding a major feature too as it turned out to be easier to implement than initially assumed. The profiler is now able to inspect why a node rendered! The full support for this feature required a change in Preact. But don't worry we'll cut a new release over there in the coming days!
Features
- Profiler: Display why a node rendered (#138, thanks @marvinhagemeister)
Bug Fixes
- Fix elements only clickable on text (#150, thanks @marvinhagemeister)
- Fix toggle alignment (#149, thanks @AlexMunoz)
- Fix highlight stuck on scroll (#147, thanks @marvinhagemeister)
- Fix only first DOM element highlighted on Fragments (#146, thanks @marvinhagemeister)
- Minor wording change (#142, thanks @marvinhagemeister)
- Fix undefined display in input (#139, thanks @marvinhagemeister)
- Improve contrast on component name (#135, thanks @marvinhagemeister)
- Fix invisible
undefined
prop value in preview (#134, thanks @marvinhagemeister) - Make design more consistent across browsers (#133, thanks @marvinhagemeister)
Maintenance
- Minor props parser refactoring (#145, thanks @marvinhagemeister)
- Enhance test for multiple property changes (#140, thanks @marvinhagemeister)
- Only delete relevant files in build commands (#137, thanks @marvinhagemeister)
- Add eslint config (#136, thanks @marvinhagemeister)
- Upgrade all dependencies (#132, thanks @marvinhagemeister)
0.3.0
This release brings a few new features and many usability improvements. Thanks to everyone who reported bugs and helped make preact-devtools even more awesome!
Screenshot of collected user timings in the native Performance
-Tab:
Features
- Add support for User Timing API (#129, thanks @marvinhagemeister)
- Improve value preview (#125, thanks @marvinhagemeister)
- Add firefox run command (#123, thanks @marvinhagemeister)
- Add support for context
displayName
(#119, thanks @marvinhagemeister) - Only display nodes of the current commit in ranked view (#115, thanks @marvinhagemeister)
Bug Fixes
- Fix sidebar collapsing on user input (#128, thanks @marvinhagemeister)
- Add collapse test (#127, thanks @marvinhagemeister)
- Revert to use purple as element color (#126, thanks @marvinhagemeister)
- Maintenance (#124, thanks @marvinhagemeister)
- Fix updates mutating existing vnode properties (#121, thanks @marvinhagemeister)
- Remove debug logs from e2e tests (#120, thanks @marvinhagemeister)
- Fix objects wrongly detected as vnodes (#117, thanks @marvinhagemeister)
- Minor design improvements (#113, thanks @marvinhagemeister)
- Fix mixed font size in props panel (#112, thanks @marvinhagemeister)
0.2.1
With the introduction of a proper end-to-end (e2e) testing framework, we managed to quickly find and fix many bugs related to the element picker or highlighting of nodes on the inspected page 🎉
The extension is pretty stable by now and we expect to cut a proper 1.0.0 release in the not so distant future.
- Minor design tweaks to element search input (#109, thanks @marvinhagemeister)
- Refactor inspection to be less error prone (#108, thanks @marvinhagemeister)
- Fix inspect highlight not working on preactjs.com (#107, thanks @marvinhagemeister)
- E2E test framework improvements (#106, thanks @marvinhagemeister)
- Fix incorrect padding in filter dropdown (#105, thanks @marvinhagemeister)
- Add test case for multiple roots (#103, thanks @marvinhagemeister)
- Fix inspect picker not working anymore (#102, thanks @marvinhagemeister)
- Fix highlight flickering (#101, thanks @marvinhagemeister)
- Add proper end to end test setup (#100, thanks @marvinhagemeister)
- Minor design improvements (#99, thanks @marvinhagemeister)
- Port examples to htm (#98, thanks @marvinhagemeister)
0.2.0
With this release the whole message passing between the extension and the page was rewritten from scratch. It's more robust now and rebuilds state whenever they are re-opened on the same page.
The filters also received a nice upgrade with an improved UX 🎉
- Fix filters not working (#95, thanks @marvinhagemeister)
- Fix devtools losing state when re-opening them (#94, thanks @marvinhagemeister)
- Renderer refactor (#93, thanks @marvinhagemeister)
- Add preact/devtools to usage section in README (#92, thanks @marvinhagemeister)
- Refactor extension connection handling (#90, thanks @marvinhagemeister)
- Upgrade dependencies (#89, thanks @marvinhagemeister)
0.1.4
- Only inject devtools CSS when Preact was detected (#87, thanks @marvinhagemeister)
- Fix race condition when injecting devtools hook (#86, thanks @marvinhagemeister)
0.1.3
- Fix infinite loop on circular references in props (#80, thanks @marvinhagemeister)
- Add default font (#81, thanks @marvinhagemeister)