[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