[Github-comments] [geany/geany] Slow startup (#2649)

Thomas Wolf notifications at xxxxx
Tue Jan 12 15:58:26 UTC 2021


Having the same issue on Windows 10. Did some testing with different Geany versions, different install and file locations and two different machines:

### Geany versions
- 1.37.1 --> slow
- 1.37 --> slow
- 1.36 --> slow
- 1.36 **portable** --> fast
- 1.35 --> fast

```
22:28:45: Geany INFO		: Geany 1.37.1, German_Germany.1252
22:28:45: Geany INFO		: GTK 2.24.32, GLib 2.66.2
22:28:45: Geany INFO		: OS: Windows 10 1909
22:28:45: Geany INFO		: System data dir: C:\Program Files (x86)\Geany\data
22:28:45: Geany INFO		: User config dir: C:\Users\lupus\AppData\Roaming\geany
22:28:45: Geany INFO		: System plugin path: C:\Program Files (x86)\Geany\lib\geany
22:28:45: Geany INFO		: Added filetype Arduino (63).
22:28:45: Geany INFO		: Added filetype Clojure (64).
22:28:45: Geany INFO		: Added filetype CUDA (65).
22:28:45: Geany INFO		: Added filetype Cython (66).
22:28:45: Geany INFO		: Added filetype Genie (67).
22:28:45: Geany INFO		: Added filetype Graphviz (68).
22:28:45: Geany INFO		: Added filetype Groovy (69).
22:28:45: Geany INFO		: Added filetype JSON (70).
22:28:45: Geany INFO		: Added filetype Kotlin (71).
22:28:45: Geany INFO		: Added filetype Nim (72).
22:28:45: Geany INFO		: Added filetype Scala (73).
22:28:45: Geany INFO		: Added filetype Swift (74).
22:28:45: Geany INFO		: Added filetype TypeScript (75).
22:28:45: Geany INFO		: Added filetype AutoHotkey (76).
22:28:45: GLib-GIO DEBUG	: _g_io_module_get_default: Found default implementation winhttp (GWinHttpVfs) for ‘gio-vfs’
22:28:46: Geany INFO		: unknown : None (UTF-8)
```

```
22:28:40: Geany INFO		: Geany 1.35, German_Germany.1252
22:28:40: Geany INFO		: GTK 2.24.32, GLib 2.60.1
22:28:40: Geany INFO		: System data dir: C:\Program Files (x86)\Geany_135\data
22:28:40: Geany INFO		: User config dir: C:\Users\lupus\AppData\Roaming\geany
22:28:40: Geany INFO		: System plugin path: C:\Program Files (x86)\Geany_135\lib\geany
22:28:40: Geany INFO		: Added filetype Arduino (61).
22:28:40: Geany INFO		: Added filetype Clojure (62).
22:28:40: Geany INFO		: Added filetype CUDA (63).
22:28:40: Geany INFO		: Added filetype Cython (64).
22:28:40: Geany INFO		: Added filetype Genie (65).
22:28:40: Geany INFO		: Added filetype Graphviz (66).
22:28:40: Geany INFO		: Added filetype JSON (67).
22:28:40: Geany INFO		: Added filetype Scala (68).
22:28:40: Geany INFO		: Added filetype AutoHotkey (69).
22:28:40: GLib-GIO DEBUG	: _g_io_module_get_default: Found default implementation winhttp (GWinHttpVfs) for ‘gio-vfs’
22:28:40: Geany INFO		: unknown : None (UTF-8)
```

```
11:32:03: Geany INFO		: Using alternate configuration directory   <-----   PORTABLE
11:32:03: Geany INFO		: Geany 1.36, German_Germany.1252
11:32:03: Geany INFO		: GTK 2.24.32, GLib 2.60.6
11:32:03: Geany INFO		: System data dir: F:\PortableApps\GeanyPortable\App\Geany\data
11:32:03: Geany INFO		: User config dir: F:\PortableApps\GeanyPortable\Data\settings
11:32:04: Geany INFO		: System plugin path: F:\PortableApps\GeanyPortable\App\Geany\lib\geany
11:32:04: Geany INFO		: Added filetype Arduino (61).
11:32:04: Geany INFO		: Added filetype Clojure (62).
11:32:04: Geany INFO		: Added filetype CUDA (63).
11:32:04: Geany INFO		: Added filetype Cython (64).
11:32:04: Geany INFO		: Added filetype Genie (65).
11:32:04: Geany INFO		: Added filetype Graphviz (66).
11:32:04: Geany INFO		: Added filetype Groovy (67).
11:32:04: Geany INFO		: Added filetype JSON (68).
11:32:04: Geany INFO		: Added filetype Kotlin (69).
11:32:04: Geany INFO		: Added filetype Nim (70).
11:32:04: Geany INFO		: Added filetype Scala (71).
11:32:04: Geany INFO		: Added filetype Swift (72).
11:32:04: Geany INFO		: Added filetype TypeScript (73).
11:32:04: Geany INFO		: Added filetype AutoHotkey (74).
11:32:04: GLib-GIO DEBUG	: _g_io_module_get_default: Found default implementation winhttp (GWinHttpVfs) for ‘gio-vfs’
11:32:04: Geany INFO		: unknown : None (UTF-8)
```

Notice the different GLib versions. GTK is identical.

### Slow vs. fast
With "slow" I mean the longer load times for opening (new) files, which I first realized after upgrading from 1.35 to 1.37. With "fast" I mean the normal load times from 1.35.

As already mentioned, the problem is not the startup time of Geany itself, but the time to open a file. This applies to opening a text file from an arbitrary location on disk, but also **opening a new and empty file** via `ctrl+n`.

In my opinion, there is nothing special about opening sessions/projects, except the fact that sessions usually include multiple files, which means one slowdown per file in the saved session.

### Plugins and settings
Tried with plugins and with deactivating all plugins via settings -> general menu. No difference.
Tried with and without `files.save_config_on_file_change`. No difference.

### Location and machine
Staying on the same machine (tested at work), it makes no difference if I run Geany (or load files) from the local SSD, HDD, USB flash drive or network share. At least the Geany/file location impact is much smaller than the difference between the slow and fast Geany versions. On the machine at home I did not test with different install locations, but expect the same result.

My machine at home shows faster startup/load times in general. The slow/fast version difference is still noticeable, albeit less pronounced.

### Portable version
This really puzzles me. It was the last test I did. Before, I was sure hat something must have changed between 1.35 and 1.36 (untouched by changes introduced in 1.37 and 1.37.1). But than I discovered that [PortableApp's 1.36 version](https://portableapps.com/apps/development/geany_portable) has the fast load times from 1.35 and not the slow ones from 1.36 non-portable!

Unfortunately, it seems like they don't offer 1.37 or 1.37.1 yet and 1.34 not anymore. 1.33 is still available, but I did not test it, because I expect fast times as with 1.35.

So far, I only tested 1.36 portable at work, but will test at home later.

The big question is: Why do 1.36 portable and non-portable behave differently? With the portable version, one does not start Geany directly, but with a launcher executable `GeanyPortable.exe`. The launcher does some "portable magic" beforehand, than loads `geany.exe`, and does some cleanup afterwards (as far as I understand the portable apps system).


Anything else I can do to narrow down the problem?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/2649#issuecomment-758754507
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.geany.org/pipermail/github-comments/attachments/20210112/c83d18ee/attachment-0001.htm>


More information about the Github-comments mailing list