Review of "Net Monitor" version 1

Details Page Preview

Monitor network usage: live bandwidth in top panel, per-app traffic, daily/monthly history, and alerts

Extension Homepage
https://github.com/hosam00/net-monitor

No comments.

FAQ

Files

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

Shexli (experimental) warning 3

Shexli found 3 issues that may need reviewer attention.

EGO-X-004 warning

extensions should avoid synchronous file IO in shell code

Shell code should avoid synchronous file IO APIs like `GLib.file_get_contents()` and `Gio.File.load_contents()`.

File Operations

  • monitors/historyStore.js:41
    file.load_contents(null)
  • monitors/historyStore.js:49
    file.load_contents(null)
  • utils/procfs.js:15
    file.load_contents(null)

EGO-P-007 warning

JavaScript files should be reachable from extension.js or prefs.js

Some JavaScript files are not reachable from `extension.js` or `prefs.js` imports.

Don't include unnecessary files

  • monitors/appGrouping.js

EGO-L-003 warning

signals connected by extension should be disconnected in disable()

Signals assigned in `enable()` are missing matching disconnect calls in `disable()` or its helper methods.

Disconnect all signals

  • extension.js:44
            this._indicator.menu.connect('open-state-changed', (menu, open) => {
                this._processMonitor.setPopupVisible(open);
            })
  • extension.js:20
            this._settings.connect('changed::debug-enabled', () => {
                setDebugEnabled(this._settings.get_boolean('debug-enabled'));
            })
  • extension.js:58
            this._settings.connect('changed::enable-process-monitor', () => {
                this._processMonitor.setEnabled(this._settings.get_boolean('enable-process-monitor'));
            })
  • extension.js:61
            this._settings.connect('changed::persistence-enabled', () => {
                this._historyStore.setEnabled(this._settings.get_boolean('persistence-enabled'));
            })
  • extension.js:55
            this._settings.connect('changed::refresh-interval-ms', () => {
                this._restartTimer();
            })

All Versions

Version Status
1 Unreviewed