Skip to content

Add greposcope: script for downloading and searching pattern in diffoscope output of unreproducible packages #89

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Feb 13, 2025

Conversation

Antiz96
Copy link
Member

@Antiz96 Antiz96 commented Feb 12, 2025

Usage: greposcope [OPTIONS] pattern

Download and search for 'pattern' in diffoscope outputs of every unreproducible packages reported at https://reproducible.archlinux.org.
This is useful to identify packages that are unreproducible because of a specific issue.

OPTIONS
-h, --help Show this message
-i, --ignore-case Ignore case distinctions in patterns and input data

Examples:
$ greposcope "gzip compressed data"
$ greposcope -i zipinfo

Diffoscope outputs are downloaded under ${TMPDIR:-/tmp}/greposcope-${UID}". Only diffoscope outputs that haven't been downloaded yet (as in, not found in ${TMPDIR:-/tmp}/greposcope-${UID}") are downloaded, so only the first run of the script downloads "world" (so we don't make a huge amount of requests to our rebuilderd instance at each run).
Tasks are parallelized to reduce execution time.

Dependencies: rebuilderd-tools & parallel

Screenshots:

2025-02-13_08-39

2025-02-13_08-40

…scope output of unreproducible packages

> Usage: greposcope [OPTIONS] pattern
>
> Download and search for 'pattern' in diffoscope outputs of every unreproducible packages reported at https://reproducible.archlinux.org.
> This is useful to identify packages that are unreproducible because of a specific issue.
>
> OPTIONS
>     -h, --help            Show this message
>     -i, --ignore-case     Ignore case distinctions in patterns and input data
>
> Examples:
>     $ greposcope "gzip compressed data"
>     $ greposcope -i zipinfo

Diffoscope outputs are downloaded under `${TMPDIR:-/tmp}/greposcope-${UID}"`. Only diffoscope outputs that haven't been downloaded yet (as in, not found in `${TMPDIR:-/tmp}/greposcope-${UID}"`) are downloaded, so only the first run of the script downloads "world" (so we don't make a huge amount of requests to our `rebuilderd` instance at each run).
Tasks are parallelized to reduce execution time.

Dependencies: `rebuilderd-tools` & `parallel`
@Antiz96
Copy link
Member Author

Antiz96 commented Feb 13, 2025

@Foxboron Suggestions applied and commits squashed :)

@Foxboron Foxboron merged commit 60bce78 into master Feb 13, 2025
1 check passed
@Antiz96 Antiz96 deleted the greposcope branch February 13, 2025 09:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants