Review of "Clipboard History" version 52

Details Page Preview

Gnome Clipboard History is a clipboard manager GNOME extension that saves items you've copied into an easily accessible, searchable history panel.

Extension Homepage
https://github.com/SUPERCILEX/gnome-clipboard-history

No comments.

Diff Against

Files

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

Shexli (experimental) error 2 warning 2 manual_review 1

Shexli found 5 issues that may need reviewer attention.

EGO-A-005 manual_review

extensions should not access the clipboard directly

Direct clipboard access via `St.Clipboard.get_default()` requires reviewer scrutiny.

Review Guidelines

  • extension.js:25
    St.Clipboard.get_default()

EGO-A-004 warning

extension files should not contain excessive ungated console logging

File contains 8 ungated console.log/warn/error calls (threshold: 5).

No excessive logging

  • store.js:45
        console.log(
          EXTENSION_UUID,
          "Failed to create cache dir, extension likely won't work",
          CACHE_DIR,
        )
  • store.js:178
    console.log(EXTENSION_UUID, 'Unknown op type, aborting load.', opType)
  • store.js:189
    console.log(EXTENSION_UUID, 'Parsing error')
  • store.js:221
    console.log(EXTENSION_UUID, 'Failed to move database file')
  • store.js:224
    console.log(EXTENSION_UUID, 'Crash moving database file')
  • store.js:190
    console.error(e)
  • store.js:225
    console.error(e)
  • store.js:267
    console.error(e)

EGO-P-004 error

GSettings schema XML filename must match schema id

GSettings schema filename must match `<schema-id>.gschema.xml`.

GSettings Schemas

  • schemas/org.gnome.shell.extensions.clipboard-indicator.gschema.xml
    id='org.gnome.shell.extensions.clipboard-history' path='/org/gnome/shell/extensions/clipboard-history/'

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:1097
        this._notifSource.connect('destroy', () => {
          this._notifSource = undefined;
        })
  • extension.js:247
        this.menu.actor.connect('key-press-event', (_, event) =>
          this._handleGlobalKeyEvent(event),
        )
  • extension.js:134
        this.menu.connect('open-state-changed', (self, open) => {
          if (open) {
            this._setMenuWidth();
            this.searchEntry.set_text('');
            this._searchFocusHackCallbackId = GLib.timeout_add(
              GLib.PRIORITY_DEFAULT,
              1,
              () => {
                global.stage.se
  • extension.js:216
        this.privateModeMenuItem.connect('toggled', () => {
          this.settings.set_boolean(
            SettingsFields.PRIVATE_MODE,
            this.privateModeMenuItem.state,
          );
        })

EGO-M-004 error

metadata shell-version must only include plausible stable releases and at most one development release

Field `shell-version` contains invalid values, more than one development release, or implausible future releases.

metadata.json must be well-formed

  • metadata.json
    shell-version=['48', '49', '50', '51']

All Versions

Version Status
52 Active
51 Active
50 Rejected
49 Rejected
48 Active
47 Active
46 Active
45 Active
44 Active
43 Active
42 Active
41 Active
40 Active
39 Active
38 Active
37 Active
36 Active
35 Active
34 Active
33 Active
32 Active
31 Active
30 Active
29 Active
28 Rejected
27 Active
26 Active
25 Active
24 Active
23 Active
22 Active
21 Active
20 Active
19 Active
18 Active
17 Active
16 Active
15 Active
14 Active
13 Active
12 Active
11 Active
10 Active
9 Active
8 Active
7 Active
6 Active
5 Active
4 Active
3 Active
2 Rejected
1 Rejected

Previous Reviews on this Version

JustPerfection active