Mahmoud Al-Qudsi
09685c3682
Make apt
completions useable once again
...
`apt-cache` is just so incredibly slow that filtering against the final results
just doesn't cut it. Attempting to match against 'ac.*' (already taking
advantage of changing short search terms into prefix-only matches) would take
35 seconds, all of bottlenecked before the filtering step. This change uses more
of a heuristic to filter `apt-cache` results directly (before additional
filtering) to speed things up.
A variety of different limits from 100 to 5000 were timed and their result sets
compared to see what ended up artificially limiting valid completions vs what
took too long to be considered functional/usable and this is where we ended up.
2022-09-22 13:43:38 -05:00
..
2019-10-29 19:13:31 +01:00
2020-05-10 22:49:25 +02:00
2020-09-19 11:47:41 +02:00
2022-07-18 20:39:01 +02:00
2021-08-01 18:59:45 +02:00
2020-06-29 19:41:33 -05:00
2021-04-20 15:29:28 +02:00
2021-03-08 17:47:29 +01:00
2022-08-02 00:42:37 -07:00
2020-08-17 17:40:28 +02:00
2019-11-05 09:05:46 +01:00
2020-09-19 11:47:41 +02:00
2020-09-19 11:47:41 +02:00
2020-12-23 19:14:10 +01:00
2020-03-09 19:46:43 +01:00
2022-06-16 18:43:28 +02:00
2022-02-19 13:48:20 +01:00
2022-02-19 13:48:20 +01:00
2020-03-10 20:56:45 +01:00
2020-04-20 22:39:48 +02:00
2020-09-19 11:47:41 +02:00
2018-04-01 13:42:38 -07:00
2022-02-02 18:19:15 -08:00
2021-09-21 12:34:21 +02:00
2021-11-23 09:49:45 +01:00
2021-11-26 16:55:50 -08:00
2020-08-09 23:53:46 +02:00
2020-12-12 08:22:45 +01:00
2020-02-28 11:16:41 +01:00
2020-02-28 11:16:41 +01:00
2018-11-22 15:23:05 +01:00
2020-08-09 23:53:46 +02:00
2020-04-21 21:11:26 +02:00
2021-03-20 21:17:53 +01:00
2021-08-10 21:01:39 +02:00
2020-12-23 19:14:10 +01:00
2020-08-09 23:53:46 +02:00
2020-03-10 20:56:45 +01:00
2020-04-12 14:01:21 -07:00
2021-03-23 20:40:44 +01:00
2020-03-09 19:46:43 +01:00
2019-05-05 12:09:25 +02:00
2020-03-06 22:23:50 +01:00
2020-03-09 19:46:43 +01:00
2020-03-09 19:46:43 +01:00
2022-08-31 22:15:56 -07:00
2017-08-04 18:02:24 -07:00
2020-04-20 22:39:48 +02:00
2021-03-10 07:17:23 +01:00
2019-05-05 12:09:25 +02:00
2019-02-10 14:44:50 +01:00
2020-08-09 23:53:46 +02:00
2019-02-10 14:44:50 +01:00
2021-06-15 03:38:52 +02:00
2022-02-13 10:45:38 +01:00
2018-04-01 13:42:38 -07:00
2022-02-13 10:45:38 +01:00
2019-05-05 12:09:25 +02:00
2022-02-13 10:45:38 +01:00
2022-07-24 17:45:46 +02:00
2022-07-06 16:31:17 +02:00
2021-02-08 07:31:33 +01:00
2022-04-26 17:27:31 +02:00
2022-06-17 07:21:25 +02:00
2022-04-04 18:26:14 +02:00
2020-08-09 23:53:46 +02:00
2020-08-09 23:53:46 +02:00
2020-10-21 22:26:52 -05:00
2022-02-13 10:45:38 +01:00
2020-08-09 23:53:46 +02:00
2021-06-23 20:51:20 +02:00
2019-05-05 12:09:25 +02:00
2021-06-23 20:51:20 +02:00
2019-05-05 12:09:25 +02:00
2020-04-07 22:30:05 +02:00
2021-03-08 17:47:29 +01:00
2022-09-22 13:43:38 -05:00
2019-01-26 19:20:16 +01:00
2021-11-25 21:25:46 +01:00
2020-03-09 19:46:43 +01:00
2022-07-18 20:39:01 +02:00
2022-04-26 21:11:54 +02:00
2019-10-29 19:07:35 +01:00
2017-12-21 16:39:06 +01:00
2022-04-04 18:26:14 +02:00
2022-07-17 17:39:58 -05:00
2020-03-09 19:46:43 +01:00
2018-04-01 13:42:38 -07:00
2018-04-01 13:42:38 -07:00
2018-04-01 13:42:38 -07:00
2020-03-09 19:46:43 +01:00
2020-12-22 17:10:02 +01:00
2020-12-22 17:10:02 +01:00
2022-07-18 20:39:01 +02:00
2019-10-26 18:11:29 +02:00
2021-03-07 12:51:57 +01:00
2020-12-22 17:10:02 +01:00
2021-02-08 07:31:33 +01:00
2022-07-18 20:39:01 +02:00
2020-02-17 09:55:05 +01:00
2020-02-17 09:55:05 +01:00
2020-12-22 17:10:02 +01:00
2022-06-16 00:27:42 +02:00
2022-07-18 20:39:01 +02:00
2018-04-01 13:42:38 -07:00
2022-01-26 22:02:23 -08:00
2022-01-26 22:02:23 -08:00
2022-07-18 20:39:01 +02:00
2020-01-22 16:33:56 +01:00
2020-01-22 16:33:56 +01:00
2019-05-05 12:09:25 +02:00
2020-11-22 14:39:48 +01:00
2020-04-21 21:11:26 +02:00
2021-04-19 18:58:00 +02:00
2022-01-26 22:02:23 -08:00
2006-12-13 06:37:27 +10:00
2021-12-18 08:57:22 +01:00
2022-07-04 19:43:03 +02:00
2019-05-05 12:09:25 +02:00
2019-02-10 14:44:50 +01:00
2020-04-20 22:39:48 +02:00
2020-04-18 11:11:27 +02:00
2019-12-09 21:07:21 +01:00
2022-08-02 00:30:06 -07:00
2021-12-13 02:42:16 -08:00
2020-08-09 23:53:46 +02:00
2019-02-10 14:44:50 +01:00
2022-07-06 16:31:17 +02:00
2020-08-09 23:53:46 +02:00
2022-06-08 21:23:43 +02:00
2022-04-04 18:26:14 +02:00
2021-11-11 16:46:23 +01:00
2022-09-11 09:55:11 +02:00
2022-04-04 18:26:14 +02:00
2022-08-02 00:42:37 -07:00
2020-08-09 23:53:46 +02:00
2020-09-04 18:43:09 +02:00
2020-03-09 19:46:43 +01:00
2021-08-09 12:43:03 +02:00
2022-01-27 16:21:22 -08:00
2022-05-26 13:15:15 +02:00
2022-06-16 18:43:28 +02:00
2017-09-09 23:35:47 -07:00
2021-07-23 20:55:07 +02:00
2021-12-15 22:30:12 +08:00
2022-03-31 15:16:01 +02:00
2021-06-23 20:51:20 +02:00
2021-06-23 20:51:20 +02:00
2022-03-20 17:04:28 +01:00
2022-07-30 23:27:24 +02:00
2022-01-27 16:21:22 -08:00
2022-09-09 18:49:57 +02:00
2021-05-05 18:53:51 +02:00
2020-04-19 04:24:28 +02:00
2020-03-09 19:46:43 +01:00
2017-10-14 08:33:02 -07:00
2022-04-15 15:58:39 +02:00
2022-09-09 18:49:57 +02:00
2021-09-05 21:42:35 +02:00
2020-03-09 19:46:43 +01:00
2020-03-09 19:46:43 +01:00
2020-08-09 23:53:46 +02:00
2022-07-19 17:05:48 +02:00
2022-01-27 16:21:22 -08:00
2021-11-26 16:55:50 -08:00
2022-03-14 18:15:06 +01:00
2022-04-04 18:26:14 +02:00
2022-01-27 16:21:22 -08:00
2022-06-20 17:42:29 +02:00
2022-06-04 13:45:25 -07:00
2022-09-10 17:42:16 +02:00
2022-03-24 20:11:39 +01:00
2022-08-12 20:45:20 +02:00
2022-04-03 21:02:15 +02:00
2020-09-16 21:02:59 +02:00
2021-12-02 02:22:40 -08:00
2021-04-16 17:40:55 +02:00
2021-09-24 18:25:27 +02:00
2021-05-14 21:49:53 +02:00
2020-08-09 23:53:46 +02:00
2022-04-04 18:26:14 +02:00
2022-04-04 18:26:14 +02:00
2022-04-04 18:26:14 +02:00
2022-01-22 20:06:37 -08:00
2022-01-22 20:06:37 -08:00
2022-09-04 09:18:57 +02:00
2020-11-14 15:57:42 +01:00
2022-04-04 18:26:14 +02:00
2022-04-04 18:26:14 +02:00
2022-04-04 18:26:14 +02:00
2020-03-09 19:46:43 +01:00
2022-07-22 12:21:03 +02:00
2020-03-09 19:46:43 +01:00
2022-01-27 16:21:22 -08:00
2022-04-23 16:35:52 -07:00