Review of "Date Menu Formatter" version 20

Details Page Preview

Allows customization of the date display in the panel. Might be especially useful if you're using a horizontal panel which does not at all work well with the default date display. CHANGELOG Version 5: added support for multiple Dash To Panel panels Version 6: fixed issues on earlier Gnome Shell versions Version 10: fixed clock hover style (by bomdia) Version 11: Gnome 45 update by andyholmes@github Version 12: added support for advanced formatters by bomdia@github Version 15: added text alignment choice by bomdia@github

Extension Homepage
https://github.com/marcinjakubowski/date-menu-formatter

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 1 warning 5

Shexli found 6 issues that may need reviewer attention.

EGO-P-006 warning

unnecessary build and translation artifacts should not be shipped

Compiled GSettings schemas should not be shipped for 45+ packages.

Don't include unnecessary files

  • schemas/gschemas.compiled
    schemas/gschemas.compiled

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

  • formatters/01_luxon.js
  • formatters/02_original.js
  • formatters/03_swatch.js
  • lib/SimpleDateFormat.js
  • lib/luxon.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:262
    this.localTimeFileMonitor.connect('changed',()=>this._onSettingsChange())

EGO-L-007 warning

main loop sources should be removed before being recreated

Main loop sources should be removed before creating a new source on the same field.

Remove main loop sources

  • extension.js:303
            this._timerId = GLib.timeout_add(EVERY.priority, EVERY.timeout, () =>
              this.update()
            )

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=['45', '46', '47', '48', '49', '50', '51']

EGO-C45-001 warning

45+ preferences should use fillPreferencesWindow instead of getPreferencesWidget

45+ preferences code should use `fillPreferencesWindow()` instead of `getPreferencesWidget()`.

Preferences

  • prefs.js:565
      getPreferencesWidget() {
        const frame = new Gtk.Box()
        const widget = new Preferences(this.getSettings())
        addBox(frame, widget.main)
        if (frame.show_all) frame.show_all()
        return frame
      }

All Versions

Version Status
20 Rejected
19 Active
18 Active
17 Active
16 Active
15 Active
14 Rejected
13 Rejected
12 Rejected
11 Rejected
10 Active
9 Active
8 Active
7 Active
6 Active
5 Active
4 Active
3 Active
2 Active
1 Rejected

Previous Reviews on this Version

JustPerfection rejected
You cannot use the same property for different timeouts (line 289, 303 `extension.js`).