John Turner
bf56ed1c61
remove build-id from control version and reject inputs with it
2025-11-21 02:25:22 +00:00
John Turner
3bce987993
format version build-id
2025-11-20 23:50:47 +00:00
John Turner
360a44d608
port check.sh to use only meson
2025-11-20 23:49:46 +00:00
John Turner
699d4bafd0
update mon and use new ascii parsers
2025-11-20 23:27:41 +00:00
John Turner
ff7d9b312f
fix lints
2025-11-19 05:04:44 +00:00
John Turner
ad8a4b838b
remove dbg!
2025-11-19 05:04:44 +00:00
John Turner
0d40608404
compare versions as strings rather than parsing them to ints
...
Parsing version numbers to u64s could cause an panic on int overflow
with very large versions.
2025-11-19 05:04:40 +00:00
John Turner
8d3cf7c83d
allow missing panic docs
2025-11-19 05:01:12 +00:00
John Turner
16fdd27e9a
compare letters before suffixes, and having a letter is greater than none
2025-11-19 01:17:18 +00:00
John Turner
70e8ea24a8
impl vercmp fuzzer
2025-11-19 01:00:48 +00:00
John Turner
e01637fd3a
setup meson to allow building multiple fuzzers easily
2025-11-18 22:43:22 +00:00
John Turner
e0cc7f6a03
dont allow "." in repo names
2025-11-18 04:24:41 +00:00
John Turner
c75a38f615
allow slot to be only :* := :slot/sub= or :slot
2025-11-18 04:15:53 +00:00
John Turner
2dc5df6112
support portage build-id extension
2025-11-18 03:21:44 +00:00
John Turner
e2cc948803
take at least 1 usedep
2025-11-18 02:49:30 +00:00
John Turner
920ec36141
skip atoms that portage denies for having duplicate usedeps
2025-11-18 02:46:59 +00:00
John Turner
2d0a91eb18
check if fuzz input is graphical before decoding it to UTF8
2025-11-18 02:46:33 +00:00
John Turner
46c3c075d1
disallow atoms that end in what could be a valid version
2025-11-18 02:20:57 +00:00
John Turner
78398b7ebe
support ::repo syntax
2025-11-18 01:44:45 +00:00
John Turner
db02762ee1
version wildcard comes after the version expression
2025-11-18 01:27:29 +00:00
John Turner
d4fd6cd211
add false positive case to unit tests
2025-11-17 22:58:46 +00:00
John Turner
34362dcb29
in fuzz python process, inherit stderr so we can see python errors
2025-11-17 22:46:09 +00:00
John Turner
dc47258841
reject fuzz inputs with invisible characters
2025-11-17 22:45:41 +00:00
John Turner
63db65b2f0
bump mon for bug fixes
2025-11-17 21:20:40 +00:00
John Turner
b74471706b
communicate with python over a pipe to increase fuzzing performance
2025-11-17 20:02:16 +00:00
John Turner
0cc3ac8e84
verify that slot exprs have either a primary slot name or operator
2025-11-17 19:01:39 +00:00
John Turner
803f727082
fixup
2025-11-16 22:22:12 +00:00
John Turner
d04d2d0887
push check.sh
2025-11-16 22:02:27 +00:00
John Turner
b360132b99
generate corpus to fuzz on with meson
2025-11-16 21:57:40 +00:00
John Turner
424bd9d072
move fuzz stuff into its own directory
2025-11-16 20:31:19 +00:00
John Turner
7c404ca8c5
add fuzzer
2025-11-16 20:17:35 +00:00
John Turner
fdf1f09d6f
add meson support
2025-11-15 21:08:39 +00:00
John Turner
c0bd0c9efd
Merge commit '6eba9cd92c295c5389944f6adda1f1e83b2cb008' as 'subprojects/thiserror'
2025-11-15 20:18:36 +00:00
John Turner
6eba9cd92c
Squashed 'subprojects/thiserror/' content from commit 247eab5
...
git-subtree-dir: subprojects/thiserror
git-subtree-split: 247eab5d79e27ad28859afdf8bc600a4242829b7
2025-11-15 20:18:36 +00:00
John Turner
0436fbc770
fix clippy lints
2025-11-15 01:55:19 +00:00
John Turner
dfaad015b9
impl conversion methods for Atom and Cp
2025-11-15 00:10:55 +00:00
John Turner
9c7d38f82c
having more components, even if zeros, make an atom greater
2025-11-14 23:16:25 +00:00
John Turner
5a793bebe8
check if a OR b has leading zeros, and if so, strip and do ascii cmp
2025-11-14 23:15:01 +00:00
John Turner
07d1823f0f
compare version letter in version cmp algo
2025-11-14 23:13:19 +00:00
John Turner
29af7572a0
remove leftover dbgs!
2025-11-14 22:27:58 +00:00
John Turner
61292f6646
bump mon and use SeparatedByWithTrailing combinator where needed
...
The new version of mon fixed the SeparatedBy combinator to not allow
trailing delimiters. This broke the Depend expr parser, because the
exprs are padded with whitespace. Using the new
SeparatedByWithTrailing combinator fixes this issue.
2025-11-14 22:25:20 +00:00
John Turner
85853ada1e
take at least 1 version suffix to prevent allowing versions such as 1.0_
2025-11-14 19:27:19 +00:00
John Turner
50ab68c9c5
use new mon parsers
2025-11-13 23:21:46 +00:00
John Turner
58b4592b7b
bump mon
2025-11-13 23:04:37 +00:00
John Turner
36bdbbd8bc
allow Cpv type to have a slot
2025-11-13 19:57:28 +00:00
John Turner
0448a52926
impl Cp type
2025-11-13 19:49:22 +00:00
John Turner
874be77aa4
impl porthole tests
2025-11-13 18:04:09 +00:00
John Turner
1882ce3137
impl Cpv type
2025-11-13 18:03:34 +00:00
John Turner
f4a45717d2
impl version comparison algorithm
2025-11-13 18:00:15 +00:00
John Turner
3b7a662598
bump mon
2025-11-13 17:58:58 +00:00