From 6cc567442c10d5f7b43996bff9581780b4308d20 Mon Sep 17 00:00:00 2001 From: Tienson Qin Date: Fri, 16 Jul 2021 18:29:25 +0800 Subject: [PATCH] debug: trying to fix sourcemaps not working on electron --- package.json | 1 + shadow-cljs.edn | 4 + src/main/frontend/components/sidebar.cljs | 65 ++++---- .../modules/instrumentation/sentry.cljs | 5 +- yarn.lock | 140 ++++++++++++++++-- 5 files changed, 164 insertions(+), 51 deletions(-) diff --git a/package.json b/package.json index 1435d1e04..832513132 100644 --- a/package.json +++ b/package.json @@ -62,6 +62,7 @@ "@excalidraw/excalidraw": "^0.4.2", "@kanru/rage-wasm": "^0.2.1", "@sentry/browser": "^6.4.1", + "@sentry/electron": "^2.5.1", "@tippyjs/react": "^4.2.5", "chokidar": "^3.5.1", "chrono-node": "^2.2.4", diff --git a/shadow-cljs.edn b/shadow-cljs.edn index 75bdf2ca6..825a19d94 100644 --- a/shadow-cljs.edn +++ b/shadow-cljs.edn @@ -28,6 +28,8 @@ :compiler-options {:infer-externs :auto :output-feature-set :es-next-in :source-map true + :source-map-include-sources-content true + :source-map-detail-level :simple :externs ["datascript/externs.js" "externs.js"] :warnings {:fn-deprecated false}} @@ -54,6 +56,8 @@ :compiler-options {:infer-externs :auto :source-map true + :source-map-include-sources-content true + :source-map-detail-level :simple :externs ["datascript/externs.js" "externs.js"] :warnings {:fn-deprecated false}}} diff --git a/src/main/frontend/components/sidebar.cljs b/src/main/frontend/components/sidebar.cljs index f6ca53c5d..d3ade05b8 100644 --- a/src/main/frontend/components/sidebar.cljs +++ b/src/main/frontend/components/sidebar.cljs @@ -108,46 +108,35 @@ (editor-handler/upload-asset id files format editor-handler/*asset-uploading? true))))})) state)} [{:keys [route-match global-graph-pages? logged? home? route-name indexeddb-support? white? db-restoring? main-content]}] - (ui/catch-error - [:div#main-content-container.w-full.flex.justify-center - [:div.mt-8 - [:span.error "⚠️ Oops, Something Went Wrong, please back up your data first!"] - [:div.my-2 "Usually, a re-index could fix it. If it doesn't, you can join our " - [:a.inline {:href "https://discord.gg/KpN4eHY" - :target "_blank"} - "discord group"] - " to ask for help."] - (ui/button "Re-index current graph" - :on-click #(repo-handler/re-index! nfs-handler/rebuild-index!))]] - (rum/with-context [[t] i18n/*tongue-context*] - [:div#main-content.cp__sidebar-main-layout.flex-1.flex - [:div#sidebar-nav-wrapper.flex-col.pt-4.hidden.sm:block - {:style {:flex (if (state/get-left-sidebar-open?) - "0 1 20%" - "0 0 0px") - :border-right (str "1px solid " - (if white? "#f0f8ff" "#073642"))}} - (when (state/sub :ui/left-sidebar-open?) - (sidebar-nav route-match nil))] - [:div#main-content-container.w-full.flex.justify-center - {:style {:margin-top (if global-graph-pages? 0 "2rem")}} - [:div.cp__sidebar-main-content - {:data-is-global-graph-pages global-graph-pages? - :data-is-full-width (or global-graph-pages? - (contains? #{:all-files :all-pages :my-publishing} route-name))} - (cond - (not indexeddb-support?) - nil + (rum/with-context [[t] i18n/*tongue-context*] + [:div#main-content.cp__sidebar-main-layout.flex-1.flex + [:div#sidebar-nav-wrapper.flex-col.pt-4.hidden.sm:block + {:style {:flex (if (state/get-left-sidebar-open?) + "0 1 20%" + "0 0 0px") + :border-right (str "1px solid " + (if white? "#f0f8ff" "#073642"))}} + (when (state/sub :ui/left-sidebar-open?) + (sidebar-nav route-match nil))] + [:div#main-content-container.w-full.flex.justify-center + {:style {:margin-top (if global-graph-pages? 0 "2rem")}} + [:div.cp__sidebar-main-content + {:data-is-global-graph-pages global-graph-pages? + :data-is-full-width (or global-graph-pages? + (contains? #{:all-files :all-pages :my-publishing} route-name))} + (cond + (not indexeddb-support?) + nil - db-restoring? - [:div.mt-20 - [:div.ls-center - (ui/loading (t :loading))]] + db-restoring? + [:div.mt-20 + [:div.ls-center + (ui/loading (t :loading))]] - :else - [:div.pb-24 {:class (if global-graph-pages? "" (util/hiccup->class "max-w-7xl.mx-auto")) - :style {:margin-bottom (if global-graph-pages? 0 120)}} - main-content])]]]))) + :else + [:div.pb-24 {:class (if global-graph-pages? "" (util/hiccup->class "max-w-7xl.mx-auto")) + :style {:margin-bottom (if global-graph-pages? 0 120)}} + main-content])]]])) (rum/defc footer [] diff --git a/src/main/frontend/modules/instrumentation/sentry.cljs b/src/main/frontend/modules/instrumentation/sentry.cljs index b2fafbbbe..7c015d4db 100644 --- a/src/main/frontend/modules/instrumentation/sentry.cljs +++ b/src/main/frontend/modules/instrumentation/sentry.cljs @@ -3,6 +3,7 @@ [frontend.util :as util] [frontend.config :as cfg] ["@sentry/browser" :as Sentry] + ["@sentry/electron" :as Sentry-electron] ["posthog-js" :as posthog])) (def config @@ -14,4 +15,6 @@ :tracesSampleRate 1.0}) (defn init [] - (Sentry/init (clj->js config))) + (let [config (clj->js config) + init-fn (if (util/electron?) Sentry-electron/init Sentry/init)] + (Sentry/init config))) diff --git a/yarn.lock b/yarn.lock index a6f2577b9..f1baa86f0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1202,6 +1202,16 @@ resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.9.2.tgz#adea7b6953cbb34651766b0548468e743c6a2353" integrity sha512-VZMYa7+fXHdwIq1TDhSXoVmSPEGM/aa+6Aiq3nVVJ9bXr24zScr+NlKFKC3iPljA7ho/GAZr+d2jOf5GIRC30Q== +"@sentry/browser@6.7.1": + version "6.7.1" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-6.7.1.tgz#e01144a08984a486ecc91d7922cc457e9c9bd6b7" + integrity sha512-R5PYx4TTvifcU790XkK6JVGwavKaXwycDU0MaAwfc4Vf7BLm5KCNJCsDySu1RPAap/017MVYf54p6dWvKiRviA== + dependencies: + "@sentry/core" "6.7.1" + "@sentry/types" "6.7.1" + "@sentry/utils" "6.7.1" + tslib "^1.9.3" + "@sentry/browser@^6.4.1": version "6.4.1" resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-6.4.1.tgz#b6c62736caaade7fdf6638513d9aad138abde2ac" @@ -1223,6 +1233,30 @@ "@sentry/utils" "6.4.1" tslib "^1.9.3" +"@sentry/core@6.7.1": + version "6.7.1" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-6.7.1.tgz#c3aaa6415d06bec65ac446b13b84f073805633e3" + integrity sha512-VAv8OR/7INn2JfiLcuop4hfDcyC7mfL9fdPndQEhlacjmw8gRrgXjR7qyhnCTgzFLkHI7V5bcdIzA83TRPYQpA== + dependencies: + "@sentry/hub" "6.7.1" + "@sentry/minimal" "6.7.1" + "@sentry/types" "6.7.1" + "@sentry/utils" "6.7.1" + tslib "^1.9.3" + +"@sentry/electron@^2.5.1": + version "2.5.1" + resolved "https://registry.yarnpkg.com/@sentry/electron/-/electron-2.5.1.tgz#6d1d42117e074c4b9f2f200def8ffb602c0221b6" + integrity sha512-1rVE1IgGZTAy2qlLQxDsuhv7/0sT88oHYyD4f6ZTDzge3lsReeMu4xA32M4ldo4yRlRQM5gpdSS/D7Q/4huH0A== + dependencies: + "@sentry/browser" "6.7.1" + "@sentry/core" "6.7.1" + "@sentry/minimal" "6.7.1" + "@sentry/node" "6.7.1" + "@sentry/types" "6.7.1" + "@sentry/utils" "6.7.1" + tslib "^2.2.0" + "@sentry/hub@6.4.1": version "6.4.1" resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-6.4.1.tgz#fa9c05ca32674e2e8477120b71084a1c91a5e023" @@ -1232,6 +1266,15 @@ "@sentry/utils" "6.4.1" tslib "^1.9.3" +"@sentry/hub@6.7.1": + version "6.7.1" + resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-6.7.1.tgz#d46d24deec67f0731a808ca16796e6765b371bc1" + integrity sha512-eVCTWvvcp6xa0A5GGNHMQEWslmKPlisE5rGmsV/kjvSUv3zSrI0eIDfb51ikdnCiBjHpK2NBWP8Vy8cZOEJegg== + dependencies: + "@sentry/types" "6.7.1" + "@sentry/utils" "6.7.1" + tslib "^1.9.3" + "@sentry/minimal@6.4.1": version "6.4.1" resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-6.4.1.tgz#d3f968c060c3d3cc997071756659e24047b5dd97" @@ -1241,11 +1284,51 @@ "@sentry/types" "6.4.1" tslib "^1.9.3" +"@sentry/minimal@6.7.1": + version "6.7.1" + resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-6.7.1.tgz#babf85ee2f167e9dcf150d750d7a0b250c98449c" + integrity sha512-HDDPEnQRD6hC0qaHdqqKDStcdE1KhkFh0RCtJNMCDn0zpav8Dj9AteF70x6kLSlliAJ/JFwi6AmQrLz+FxPexw== + dependencies: + "@sentry/hub" "6.7.1" + "@sentry/types" "6.7.1" + tslib "^1.9.3" + +"@sentry/node@6.7.1": + version "6.7.1" + resolved "https://registry.yarnpkg.com/@sentry/node/-/node-6.7.1.tgz#b09e2eca8e187168feba7bd865a23935bf0f5cc0" + integrity sha512-rtZo1O8ROv4lZwuljQz3iFZW89oXSlgXCG2VqkxQyRspPWu89abROpxLjYzsWwQ8djnur1XjFv51kOLDUTS6Qw== + dependencies: + "@sentry/core" "6.7.1" + "@sentry/hub" "6.7.1" + "@sentry/tracing" "6.7.1" + "@sentry/types" "6.7.1" + "@sentry/utils" "6.7.1" + cookie "^0.4.1" + https-proxy-agent "^5.0.0" + lru_map "^0.3.3" + tslib "^1.9.3" + +"@sentry/tracing@6.7.1": + version "6.7.1" + resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-6.7.1.tgz#b11f0c17a6c5dc14ef44733e5436afb686683268" + integrity sha512-wyS3nWNl5mzaC1qZ2AIp1hjXnfO9EERjMIJjCihs2LWBz1r3efxrHxJHs8wXlNWvrT3KLhq/7vvF5CdU82uPeQ== + dependencies: + "@sentry/hub" "6.7.1" + "@sentry/minimal" "6.7.1" + "@sentry/types" "6.7.1" + "@sentry/utils" "6.7.1" + tslib "^1.9.3" + "@sentry/types@6.4.1": version "6.4.1" resolved "https://registry.yarnpkg.com/@sentry/types/-/types-6.4.1.tgz#7c0a4355a1d04321b901197723a8f55c263226e9" integrity sha512-sTu/GaLsLYk1AkAqpkMT4+4q665LtZjhV0hkgiTD4N3zPl5uSf1pCIzxPRYjOpe7NEANmWv8U4PaGKGtc2eMfA== +"@sentry/types@6.7.1": + version "6.7.1" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-6.7.1.tgz#c8263e1886df5e815570c4668eb40a1cfaa1c88b" + integrity sha512-9AO7HKoip2MBMNQJEd6+AKtjj2+q9Ze4ooWUdEvdOVSt5drg7BGpK221/p9JEOyJAZwEPEXdcMd3VAIMiOb4MA== + "@sentry/utils@6.4.1": version "6.4.1" resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-6.4.1.tgz#55fa7da58898773cbd538e4895fc2e4ec695ecab" @@ -1254,6 +1337,14 @@ "@sentry/types" "6.4.1" tslib "^1.9.3" +"@sentry/utils@6.7.1": + version "6.7.1" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-6.7.1.tgz#909184ad580f0f6375e1e4d4a6ffd33dfe64a4d1" + integrity sha512-Tq2otdbWlHAkctD+EWTYKkEx6BL1Qn3Z/imkO06/PvzpWvVhJWQ5qHAzz5XnwwqNHyV03KVzYB6znq1Bea9HuA== + dependencies: + "@sentry/types" "6.7.1" + tslib "^1.9.3" + "@sindresorhus/is@^0.14.0": version "0.14.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz" @@ -1469,6 +1560,13 @@ acorn@^7.0.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== +agent-base@6: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz" @@ -2833,6 +2931,11 @@ convert-source-map@~1.1.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.1.3.tgz#4829c877e9fe49b3161f3bf3673888e204699860" integrity sha1-SCnId+n+SbMWHzvzZziI4gRpmGA= +cookie@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" + integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== + copy-descriptor@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz" @@ -3236,6 +3339,13 @@ dayjs@^1.10.4: resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.5.tgz#5600df4548fc2453b3f163ebb2abbe965ccfb986" integrity sha512-BUFis41ikLz+65iH6LHQCDm4YPMj5r1YFLdupPIyM4SGcXMmtiLQ7U37i+hGS8urIuqe7I/ou3IS1jVc4nbN4g== +debug@4, debug@4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" + integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== + dependencies: + ms "2.1.2" + debug@4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" @@ -3243,13 +3353,6 @@ debug@4.1.1: dependencies: ms "^2.1.1" -debug@4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" - integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== - dependencies: - ms "2.1.2" - debug@^2.2.0, debug@^2.3.3, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz" @@ -4785,6 +4888,14 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= +https-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" + integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== + dependencies: + agent-base "6" + debug "4" + human-signals@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" @@ -5771,6 +5882,11 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +lru_map@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/lru_map/-/lru_map-0.3.3.tgz#b5c8351b9464cbd750335a79650a0ec0e56118dd" + integrity sha1-tcg1G5Rky9dQM1p5ZQoOwOVhGN0= + make-iterator@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/make-iterator/-/make-iterator-1.0.1.tgz" @@ -7482,11 +7598,6 @@ react-grid-layout@^0.16.6: react-draggable "3.x" react-resizable "1.x" -react-icon-base@2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/react-icon-base/-/react-icon-base-2.1.0.tgz#a196e33fdf1e7aaa1fda3aefbb68bdad9e82a79d" - integrity sha1-oZbjP98eeqof2jrvu2i9rZ6Cp50= - react-icons@^2.2.7: version "2.2.7" resolved "https://registry.yarnpkg.com/react-icons/-/react-icons-2.2.7.tgz#d7860826b258557510dac10680abea5ca23cf650" @@ -8985,6 +9096,11 @@ tslib@^1.9.0, tslib@^1.9.3: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== +tslib@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.0.tgz#803b8cdab3e12ba581a4ca41c8839bbb0dacb09e" + integrity sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg== + tty-browserify@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz"