Commit Graph

53 Commits

Author SHA1 Message Date
1cc43897b1 Quick n' dirty SwiftGraph 2025-07-10 05:37:24 +10:00
6ea612f9fc Lazy provider cache for enormous speed improvement 2025-07-10 04:37:35 +10:00
7c98f3e5f0 Resolve highest priority package provider 2025-07-10 04:09:24 +10:00
80c063b3c2 Resolve providers correctly 2025-07-09 19:40:59 +10:00
1953c00f17 Misc renames 2025-07-06 19:24:46 +10:00
55acbc76b3 Search provides in index resolve 2025-07-06 19:23:45 +10:00
710f0970c5 Add requirement-based resolution to index 2025-07-06 18:32:15 +10:00
58d8e648b9 Fix compilation 2025-07-06 17:12:52 +10:00
8920e205be Unstaged changes for posterity 2025-07-06 17:03:24 +10:00
a8e16a5183 fix package graph 2025-07-06 17:03:24 +10:00
d8a17ffd24 WIP parallel sort (BROKEN) 2025-07-06 17:03:24 +10:00
d850b9998d Actually test requirement parsing output (not just if it succeded) 2025-07-06 17:01:19 +10:00
53c68cdfc7 Unit tests for APK version parsing & fix typo in parser 2025-07-05 22:29:55 +10:00
d88b96df80 Fix version conflict parsing 2025-07-05 19:58:57 +10:00
45ef34ec64 Improve indexing error messages 2025-07-05 19:22:44 +10:00
c23d7e17b2 Bump argument parser dep to 1.6.1 2025-07-05 18:43:24 +10:00
08c76c799c Rescue graph building test into subcommand 2024-11-23 21:02:52 +11:00
28eb8cb588 Simple info/show command 2024-11-23 20:06:45 +11:00
c69f2235a4 Generalise digest hex conversion 2024-11-23 18:30:04 +11:00
d9f5052d21 Housekeeping 2024-11-23 18:21:15 +11:00
be51934334 Consolidate update+reader & remove some dead code 2024-11-22 21:01:01 +11:00
cc703ad0c5 Consolidate version stuff 2024-11-22 20:19:49 +11:00
72c4f2ac31 More efficient empty line check 2024-11-22 20:08:07 +11:00
5d3fc9a774 Parse version as byte array for speed
I guess :(
2024-11-22 11:45:30 +11:00
8a339d6116 Sort search results by name and version 2024-11-21 10:58:36 +11:00
c239b8e424 prefer to print to stderr for console chatter 2024-11-17 02:59:13 +11:00
20e76918fe print full fetch url 2024-11-17 02:52:30 +11:00
8c7f0f23d5 first async refactor of fetch/index 2024-11-17 02:31:44 +11:00
e8d101edb5 Read from repository configs instead of hardcoding repos/arch for update 2024-11-16 00:30:19 +11:00
7e403d64e0 try implementing a command that can search the index for packages 2024-11-15 19:54:35 +11:00
14bd390114 Flatten TextInputStream wrapper and allow lines to be used directly on InputStream 2024-11-14 21:08:58 +11:00
c7185fa370 Faster UTF8 decode 2024-11-14 20:58:04 +11:00
ff38a831f2 Improve performance of TextInputStream 2024-11-14 20:40:55 +11:00
131807709a Improve indexing performance by using .split instead of .components
and using substrings instead of needlessly copying strings
2024-11-14 19:33:26 +11:00
4c3fb214de idk anymore 2024-11-14 01:15:51 +11:00
775698620f apply MemInStream changes that required streams to be class-based 2024-11-14 01:04:37 +11:00
6a5da27440 Fix GZip.swift not being the actual struct name 2024-11-14 00:58:36 +11:00
da14fa8fd0 yep steam classes are faster... 2024-11-14 00:57:29 +11:00
451deb6aa3 Tried a few things to try making memory streams faster, the answer may be in just biting the bullet and making streams classes though 2024-11-14 00:36:15 +11:00
73b6e703fb Optimise hex digest string conversion 2024-11-13 21:20:50 +11:00
ea5dd3771b slightly more efficient line conversion 2024-11-12 21:34:06 +11:00
aff578b9a6 use zlib's full gzip support
simpler code and seems to be generally faster
2024-11-12 19:58:46 +11:00
3e47d6cd01 we are trapped in the tar (i made it 1ms faster yay for me the ratboy genius) 2024-11-12 18:41:20 +11:00
cee34c6f7a don't chunk tar reads for no reason (faster) 2024-11-12 18:37:46 +11:00
089a7dcfe1 zlib-based homecooked gzip reader for significantly faster decompression times 2024-11-12 09:37:46 +11:00
cf5e1a3f35 basic package graph implemented 2024-11-11 21:06:37 +11:00
af87395545 Forgot to remove Algorithm import 2024-11-10 22:20:25 +11:00
078397f451 Replace hex decoding closure with something safer and hopefully more performant 2024-11-10 22:16:19 +11:00
e7fc47d640 make ApkIndexDependency conform to ApkIndexRequirementRef
dunno if this is necessary for the graph to work but we'll see
2024-11-10 21:00:07 +11:00
d6b0acf807 Update copyright headers 2024-11-10 17:51:53 +11:00