Review of "Guillotine" version 20

Details Page Preview

Guillotine is a gnome extension designed for efficiently carrying out executions of commands from a customizable menu. Simply speaking: it is a highly customizable menu that enables you to launch commands and toggle services. For the most recent version (including compatibility for gnome 46) head over to the extension repository. No new updates will be published on Gnome-extensions.

Extension Homepage
https://gitlab.com/ente76/guillotine/

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
23 Rejected
22 Rejected
21 Rejected
20 Rejected
19 Rejected
18 Active
17 Active
16 Active
15 Active
14 Active
13 Active
12 Rejected
11 Active
10 Rejected
9 Active
8 Rejected
7 Active
6 Active
5 Inactive
4 Inactive
3 Inactive
2 Rejected
1 Rejected

Previous Reviews on this Version

JustPerfection rejected
1. Don't use the same name for timeout id (line 285, 517 and 523 extension.js). 2. Also null out `this.icon` and `this.menu` in disable.
ente posted a review
2. done 1. I definitely will not change this. This would break the extension. Could you please elaborate on your intention?
JustPerfection posted a review
Having the same timeout id is hard to follow for reviewers. I recommend to create a method for that like this: ```js runTest(interval) { if ("timer" in this) GLib.source_remove(this.timer); this.timer = GLib.timeout_add( GLib.PRIORITY_DEFAULT, interval, this.test.bind(this, true) ); } ``` now you can only call `this.runTest()` instead of using `timeout_add()` every time.
ente posted a review
I won't perform the change for the following reasons: 1. Reviewer Role In my opinion, there is need for a reviewer since I do not want some malicious extension on my desktop. This functionality very obviously is not related to malicious activities. To review and request such a change is beyond the scope of your role (unless you want to get into a professional work relationship with me). 2. Code Elegance This implementation is the most elegant version in the way it is. The switch is supposed to have at maximum 1 timeout running. If one is running, abort it in a certain case. Lines 517 and 523 can never (by definition) occur on a single object (see line 300). Line 285 may be running and may need to be aborted. Having multiple variables would make the check whether a timeout is already running worse. 4. Maturity This code is in effect since version 3. In version 8 this code received an extension to support intervals in seconds. 5. Effort When the basic functionality was implemented in version 3, it took me quite some effort to test and stabilize it. The change you request would require such heavy testing again. So here we are. Unless you change your mind, you will need to do either of the following: - immediately invalidate all current versions of this extension since they all contain "inacceptable" code from your perspective. It results in taking the extension offline. - perform the change yourself, test it carefully and create a merge request against my repository. I will review your changes. If I don't see any issues, I will merge it and push a new version. - perform the change yourself and merge it in your own fork of my repository. Essentially you become the maintainer. - Pay me. 160 €/hour or 160 $/hour. 4 hours payment upfront. Payment is performed by using the donation button. If you provide me with an email address, I will issue a formal invoice with tax statements. No warranty. German laws apply. Do not tell anyone that I am available for such low price. - keep the current version online and reject the change. That would be very weird. The improvements would be lost but the reason to reject them is already in the currently published version. I highly recommend not to use this option. If you do not take over maintenance: I have two active users that I will offer to take over the maintenance. Maybe they would perform the change requested. Otherwise the extension will go dark. I developed this extension for my own needs. My needs are fulfilled by locally installing the latest version. ente
ente posted a review
Please let me know if you insist on this change. If you do, the extension is dead. If you don't I will upload the changes for gnome 46.
JustPerfection posted a review
Please fix the issue and send it again.