imazen / imageflow

High-performance image manipulation for web servers. Includes imageflow_server, imageflow_tool, and libimageflow
https://docs.imageflow.io/
GNU Affero General Public License v3.0
4.14k stars 140 forks source link

Skip alloca.h on FreeBSD #591

Closed dch closed 2 years ago

dch commented 2 years ago

alloc(3) is part of libc on FreeBSD https://man.freebsd.org/alloca

FWIW it's also part of libc on https://man.openbsd.org/alloca & https://man.netbsd.org/alloca.3 perhaps we can include all of those here too?

github-actions[bot] commented 2 years ago

@check-spelling-bot Report

Unrecognized words, please review:

Previously acknowledged words that are now absent bc ci classpath clj cx debounce dequantize df dh eb eol ericsson erl fd fh fsx gb gh gitattributes gx gy gz hxx ip jfif jq Jv kp libz lz mjpeg Mozilla's mx Mz nc px py qa rb resx ri rw ry scss sql sx sy SZ td tt uk unzigzagged upsampler vn vx vy Wx xf xn xp xproj xy ycbcr zd zr zu
Some files were were automatically ignored These sample patterns would exclude them: ``` ^\.gitattributes$ ^\.idea/\.name$ ^\.idea/dictionaries/lilith\.xml$ ^\.idea/dictionaries/n\.xml$ ^c_components/\.idea/imageflow_c\.iml$ ^c_components/src/lib\.rs$ ^ci/cloud/mods/download_imageflow\.sh$ ^ci/packaging_extras/requirements/ubuntu_16_04-x86_64\.txt$ ^ci/packaging_extras/requirements/ubuntu_18_04-x86_64\.txt$ ^docs/src/imageflow_server\.md$ ^docs/src/imageflow_tool\.md$ ``` You should consider excluding directory paths (e.g. `(?:^|/)vendor/`), filenames (e.g. `(?:^|/)yarn\.lock$`), or file extensions (e.g. `\.gz$`) You should consider adding them to: ``` .github/actions/spell-check/excludes.txt ``` File matching is via Perl regular expressions. To check these files, more of their words need to be in the dictionary than not. You can use `patterns.txt` to exclude portions, add items to the dictionary (e.g. by adding them to `allow.txt`), or fix typos.
To accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands ... in a clone of the [git@github.com:skunkwerks/imageflow.git](https://github.com/skunkwerks/imageflow.git) repository on the `feature/add-freebsd` branch: ``` update_files() { perl -e ' my @expect_files=qw('".github/actions/spell-check/expect/expect.txt"'); @ARGV=@expect_files; my @stale=qw('"$patch_remove"'); my $re=join "|", @stale; my $suffix=".".time(); my $previous=""; sub maybe_unlink { unlink($_[0]) if $_[0]; } while (<>) { if ($ARGV ne $old_argv) { maybe_unlink($previous); $previous="$ARGV$suffix"; rename($ARGV, $previous); open(ARGV_OUT, ">$ARGV"); select(ARGV_OUT); $old_argv = $ARGV; } next if /^(?:$re)(?:(?:\r|\n)*$| .*)/; print; }; maybe_unlink($previous);' perl -e ' my $new_expect_file=".github/actions/spell-check/expect/715ee58d76315acd2fefb18a4558fe77109c0ee7.txt"; use File::Path qw(make_path); use File::Basename qw(dirname); make_path (dirname($new_expect_file)); open FILE, q{<}, $new_expect_file; chomp(my @words = ); close FILE; my @add=qw('"$patch_add"'); my %items; @items{@words} = @words x (1); @items{@add} = @add x (1); @words = sort {lc($a)."-".$a cmp lc($b)."-".$b} keys %items; open FILE, q{>}, $new_expect_file; for my $word (@words) { print FILE "$word\n" if $word =~ /\w/; }; close FILE; system("git", "add", $new_expect_file); ' (cat '.github/actions/spell-check/excludes.txt' - < '.github/actions/spell-check/excludes.txt.temp' && mv '.github/actions/spell-check/excludes.txt.temp' '.github/actions/spell-check/excludes.txt' } comment_json=$(mktemp) curl -L -s -S \ --header "Content-Type: application/json" \ "https://api.github.com/repos/imazen/imageflow/issues/comments/887455444" > "$comment_json" comment_body=$(mktemp) jq -r .body < "$comment_json" > $comment_body rm $comment_json patch_remove=$(perl -ne 'next unless s{^(.*)
$}{$1}; print' < "$comment_body") patch_add=$(perl -e '$/=undef; $_=<>; s{
.*}{}s; s{^#.*}{}; s{\n##.*}{}; s{(?:^|\n)\s*\*}{}g; s{\s+}{ }g; print' < "$comment_body") should_exclude_patterns=$(perl -e '$/=undef; $_=<>; exit unless s{(?:You should consider excluding directory paths|You should consider adding them to).*}{}s; s{.*These sample patterns would exclude them:}{}s; s{.*\`\`\`([^`]*)\`\`\`.*}{$1}m; print' < "$comment_body" | grep . || true) update_files rm $comment_body git add -u ```
github-actions[bot] commented 2 years ago

@check-spelling-bot Report

Unrecognized words, please review:

Previously acknowledged words that are now absent bc ci classpath clj cx debounce dequantize df dh eb eol ericsson erl fd fh fsx gb gh gitattributes gx gy gz hxx ip jfif jq Jv kp libz lz mjpeg Mozilla's mx Mz nc px py qa rb resx ri rw ry scss sql sx sy SZ td tt uk unzigzagged upsampler vn vx vy Wx xf xn xp xproj xy ycbcr zd zr zu
Some files were were automatically ignored These sample patterns would exclude them: ``` ^\.gitattributes$ ^\.idea/\.name$ ^\.idea/dictionaries/lilith\.xml$ ^\.idea/dictionaries/n\.xml$ ^c_components/\.idea/imageflow_c\.iml$ ^c_components/src/lib\.rs$ ^ci/cloud/mods/download_imageflow\.sh$ ^ci/packaging_extras/requirements/ubuntu_16_04-x86_64\.txt$ ^ci/packaging_extras/requirements/ubuntu_18_04-x86_64\.txt$ ^docs/src/imageflow_server\.md$ ^docs/src/imageflow_tool\.md$ ``` You should consider excluding directory paths (e.g. `(?:^|/)vendor/`), filenames (e.g. `(?:^|/)yarn\.lock$`), or file extensions (e.g. `\.gz$`) You should consider adding them to: ``` .github/actions/spell-check/excludes.txt ``` File matching is via Perl regular expressions. To check these files, more of their words need to be in the dictionary than not. You can use `patterns.txt` to exclude portions, add items to the dictionary (e.g. by adding them to `allow.txt`), or fix typos.
To accept these unrecognized words as correct (and remove the previously acknowledged and now absent words), run the following commands ... in a clone of the [git@github.com:skunkwerks/imageflow.git](https://github.com/skunkwerks/imageflow.git) repository on the `feature/add-freebsd` branch: ``` update_files() { perl -e ' my @expect_files=qw('".github/actions/spell-check/expect/expect.txt"'); @ARGV=@expect_files; my @stale=qw('"$patch_remove"'); my $re=join "|", @stale; my $suffix=".".time(); my $previous=""; sub maybe_unlink { unlink($_[0]) if $_[0]; } while (<>) { if ($ARGV ne $old_argv) { maybe_unlink($previous); $previous="$ARGV$suffix"; rename($ARGV, $previous); open(ARGV_OUT, ">$ARGV"); select(ARGV_OUT); $old_argv = $ARGV; } next if /^(?:$re)(?:(?:\r|\n)*$| .*)/; print; }; maybe_unlink($previous);' perl -e ' my $new_expect_file=".github/actions/spell-check/expect/715ee58d76315acd2fefb18a4558fe77109c0ee7.txt"; use File::Path qw(make_path); use File::Basename qw(dirname); make_path (dirname($new_expect_file)); open FILE, q{<}, $new_expect_file; chomp(my @words = ); close FILE; my @add=qw('"$patch_add"'); my %items; @items{@words} = @words x (1); @items{@add} = @add x (1); @words = sort {lc($a)."-".$a cmp lc($b)."-".$b} keys %items; open FILE, q{>}, $new_expect_file; for my $word (@words) { print FILE "$word\n" if $word =~ /\w/; }; close FILE; system("git", "add", $new_expect_file); ' (cat '.github/actions/spell-check/excludes.txt' - < '.github/actions/spell-check/excludes.txt.temp' && mv '.github/actions/spell-check/excludes.txt.temp' '.github/actions/spell-check/excludes.txt' } comment_json=$(mktemp) curl -L -s -S \ --header "Content-Type: application/json" \ "https://api.github.com/repos/imazen/imageflow/issues/comments/887468514" > "$comment_json" comment_body=$(mktemp) jq -r .body < "$comment_json" > $comment_body rm $comment_json patch_remove=$(perl -ne 'next unless s{^(.*)
$}{$1}; print' < "$comment_body") patch_add=$(perl -e '$/=undef; $_=<>; s{
.*}{}s; s{^#.*}{}; s{\n##.*}{}; s{(?:^|\n)\s*\*}{}g; s{\s+}{ }g; print' < "$comment_body") should_exclude_patterns=$(perl -e '$/=undef; $_=<>; exit unless s{(?:You should consider excluding directory paths|You should consider adding them to).*}{}s; s{.*These sample patterns would exclude them:}{}s; s{.*\`\`\`([^`]*)\`\`\`.*}{$1}m; print' < "$comment_body" | grep . || true) update_files rm $comment_body git add -u ```
lilith commented 2 years ago

Thanks for this!