Commit graph

39 commits

Author SHA1 Message Date
7659ad6431
remove comments/change tag format 2025-07-19 13:14:20 -07:00
6f68d94fa7
pencil out tags/commits we will need later 2025-07-18 07:52:45 -07:00
68297f4389
basic infra for tag support 2025-07-18 07:26:08 -07:00
f25ce7e510
remove extraneous debugging info 2025-07-17 17:38:56 -07:00
f4d66203b9
add commentary and (unused) check for token applicability 2025-07-17 11:50:21 -07:00
3b195a9eb6
better error messaging 2025-07-17 09:44:12 -07:00
a559a621c3
change threshold to 90 days 2025-07-15 20:15:12 -07:00
ea08ac7497
remove load of releases.xml and other perf/stability improvements
Loading the output file and trying to do a diff was a bad idea, and added a lot
of unnecessary code. It was also broken after adding the markdown/html support,
as releases were being escaped a second time after loading originally. It was
my idea, not the AIs :(.

After removing this, the filtering logic was wonky (this was the AI), as
what was generated had multiple copies of identical functions, so the
sorting was ineffective, and there were multiple copies of the release
arraylist being copied everywhere. Now, releases are created once, by
the provider (before it was 1: via XML, 2: by the provider, 3: copied
again into all the releases, and then a compaction occurred prior to a
sort).

For all the sorting, and all the filtering, the release date was being
parsed (and allocated). That parsing now occurs once by the provider,
and is stored as an i64 that is used until the final atom generation.

Finally, GitHub results were being sorted by each page, which was then
thrown into the full GitHub results without regard for where they landed
again. This sort has been moved to occur after all threads have filled
the ArrayList

Benchmark 1 (3 runs): ./before config.json
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          12.4s  ±  800ms    11.7s  … 13.3s           0 ( 0%)        0%
  peak_rss            105MB ± 9.85MB    93.8MB …  112MB          0 ( 0%)        0%
  cpu_cycles         6.56G  ±  145M     6.40G  … 6.69G           0 ( 0%)        0%
  instructions       23.5G  ±  613M     22.9G  … 24.1G           0 ( 0%)        0%
  cache_references   11.2M  ±  273K     10.9M  … 11.4M           0 ( 0%)        0%
  cache_misses       3.30M  ±  139K     3.16M  … 3.44M           0 ( 0%)        0%
  branch_misses      10.7M  ±  724K     10.2M  … 11.5M           0 ( 0%)        0%
Benchmark 2 (3 runs): ./after config.json
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          11.8s  ±  531ms    11.2s  … 12.1s           0 ( 0%)          -  4.8% ± 12.4%
  peak_rss           94.8MB ± 3.81MB    92.3MB … 99.2MB          0 ( 0%)          -  9.7% ± 16.1%
  cpu_cycles         6.55G  ± 54.1M     6.49G  … 6.59G           0 ( 0%)          -  0.1% ±  3.8%
  instructions       23.2G  ±  225M     22.9G  … 23.3G           0 ( 0%)          -  1.5% ±  4.4%
  cache_references   10.8M  ±  232K     10.6M  … 11.1M           0 ( 0%)          -  3.3% ±  5.2%
  cache_misses       2.96M  ± 59.0K     2.89M  … 3.01M           0 ( 0%)        - 10.3% ±  7.3%
  branch_misses      10.5M  ± 23.1K     10.5M  … 10.5M           0 ( 0%)          -  1.7% ± 10.9%
2025-07-15 20:05:30 -07:00
50a0b44340
add file size warning 2025-07-15 16:44:06 -07:00
897ff3fa34
add working integration tests (some slop in here still) 2025-07-15 15:49:58 -07:00
13cbd9056f
switch to 6 month duration for feed 2025-07-15 15:48:56 -07:00
dce0f0d0e0
adjust tests in main 2025-07-15 15:48:20 -07:00
10b1c395ed
output control GitHub 2025-07-15 15:46:36 -07:00
a059264150
better output through markdown->html (then proper escaping to atom feed) 2025-07-15 15:42:30 -07:00
2f14d94dc4
quiet test output 2025-07-15 11:44:30 -07:00
076f77d03d
refactor GitHub to parallelize 2025-07-15 09:48:54 -07:00
0de0d0df80
change smoke-test to test 2025-07-14 16:42:59 -07:00
0923515146
add pre commit config 2025-07-14 16:36:18 -07:00
93fc0a1945
add timing data for providers 2025-07-14 16:34:20 -07:00
069c746b58
zlint clean 2025-07-14 16:12:04 -07:00
8a2e691c1f
clean up terminal output 2025-07-14 16:06:25 -07:00
4608aa33c5
add note about AI generated code 2025-07-14 15:42:26 -07:00
81409f75f5
do not use temp files for tests 2025-07-14 15:39:14 -07:00
9197b01e01
fix issue with SourceHut 2025-07-14 11:13:57 -07:00
a8f802c02f
add test-debug option for cleaner tests 2025-07-14 07:09:20 -07:00
a0f8b27ea5
replace inadvertent integration test 2025-07-13 14:35:37 -07:00
1d90d18ddf
refactor SourceHut to use max 2 GraphQL queries 2025-07-13 14:25:58 -07:00
6edaa25cc5
filter to only releases in the last year 2025-07-13 14:25:31 -07:00
7b555e2162
add sourcehut commit stuff 2025-07-13 14:04:58 -07:00
c2ca2e6be5
use existing data appropriately 2025-07-13 14:03:25 -07:00
ee9cbaada3
sourcehut...just wow 2025-07-13 10:33:11 -07:00
fd8242784d
provider cleanup 2025-07-12 18:34:33 -07:00
7490ff3bc5
back to file approach 2025-07-12 18:06:16 -07:00
da13b41cc3
return status code 2025-07-12 18:06:06 -07:00
e192a3f9c5
clean up providers/use zeit 2025-07-12 18:05:13 -07:00
7a5d10bc82
handle escaping xml data 2025-07-12 17:50:10 -07:00
eb16d2396a
add zeit to project/integrate with atom.zig 2025-07-12 17:49:54 -07:00
d6fe57b11b
fully generated code - all providers working, release.xml unusuable 2025-07-12 16:06:04 -07:00
0d0fc938e7
initial commit 2025-07-11 12:39:37 -07:00