Review of "ClipFlow Pro" version 1.2.11 (6)

Details Page Preview

A modern, powerful clipboard manager for GNOME Shell with intelligent organization, beautiful UI, and comprehensive history management.

Extension Homepage
https://github.com/nickotmazgin/clipflow-pro

No comments.

Diff Against

Files

Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.

All Versions

Version Status
1.3.7 45.47 (27) Rejected
1.3.7 (26) Rejected
1.3.6 45.47 (25) Rejected
1.3.6 (24) Rejected
1.3.5 45.47 (23) Rejected
1.3.5 43.44 (22) Rejected
1.3.4 45.47 (21) Rejected
1.3.4 43.44 (20) Rejected
1.3.3 (19) Active
1.3.3 43.44 (18) Rejected
1.3.1 43.44 (17) Rejected
1.3.1 (16) Inactive
1.3.0 (15) Inactive
1.3.0 43.44 (14) Rejected
1.3.0 (13) Rejected
1.3.0 (12) Rejected
1.2.17 (11) Inactive
1.2.16 (10) Inactive
1.2.15 (9) Rejected
1.2.14 (8) Rejected
1.2.13 (7) Inactive
1.2.11 (6) Rejected
1.2.10 (5) Rejected
1.2.9 (4) Rejected
1.2.8 (3) Rejected
1.2.6 (2) Rejected
1.2.3 (1) Rejected

Previous Reviews on this Version

Ghost posted a review
Hiya JustPerfection — thanks for the follow‑up and clear pointers. I’ve applied a full round of fixes and re‑uploaded for GNOME 45+. Addressing the two open items #5 (prefs self‑check/logging lines): removed entirely. Those lines no longer exist and there’s nothing equivalent elsewhere. #6 (unnecessary try/catch): removed try/catch blocks that only logged errors. I kept a minimal set only around real I/O/parse boundaries (e.g., reading/writing JSON history, Gio/GLib file ops) to avoid crashing on corrupted files. Everything else now relies on natural backtraces, as you suggested, which also reduced size and noise. Extra changes (aligned with your guidance) No ExtensionUtils/Me in ESM Settings come from Extension.getSettings() and are passed into the indicator. Open preferences via Main.extensionManager.openExtensionPrefs(UUID) instead of ExtensionUtils. Preferences cleanup Use destroy() + super.destroy(); vfunc_dispose() removed. Simplified 45+ window APIs; removed the noisy self‑check helper and logs. Logging Switched to console.* throughout; console.debug() is used only when “debug” is enabled (per Port Guide 45: Logging). Other logs trimmed; nothing logs “just because” anymore. Packaging (45+) Removed schemas/gschemas.compiled from the uploaded zip. Flat package includes only required files: metadata.json, extension.js, prefs.js, stylesheet.css, schemas XML, icons, LICENSE. Code size/readability Reduced typeof === 'function' guards and defensive patterns to keep the code smaller and clearer. About the try/catch trend you’re seeing: it likely comes from older migration snippets and over‑defensive patterns that crept into various tutorials/tools. I’ve aligned this codebase with the GNOME 45+ style you highlighted: fewer try/catch, console.* logging, smaller and clearer code. Release details Version: 1.2.11 Fixes: removed unnecessary try/catch in UI assembly; retained only minimal I/O/parse protection. Packaging: flat zip without gschemas.compiled. ESM: no ExtensionUtils/Me; prefs via Main.extensionManager; destroy() + super.destroy(); console.* logging. metadata.json shell-version: ["45","46","47"]. I’m happy to tighten further if you’d like fewer defensive checks even around I/O — for example, letting exceptions surface directly for corrupted history files. Thanks again for the detailed review and guidance.
JustPerfection rejected
Hi, - For #5, line 1244-1246 `prefs.js` is still there. - For #6, there are still so many unnecessary try and catch wrappers. For example, line 1081 `extension.js`. If the wrapper is just for logging the error, that is unnecessary. If an error happens, it will be in the logs with backtrace that you can easily find. - Rejected because you are using `ByteArray`( line 15 `extension.js`). Please don't use deprecated modules: [EGO Review Guidelines: deprecated modules](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#do-not-use-deprecated-modules)