Repository Analysis

Homebrew/homebrew-core

🍻 Default formulae for the missing package manager for macOS (or Linux)

0.9 Likely human-written View on GitHub
0.9
Adjusted Score
0.9
Raw Score
100%
Time Factor
2026-05-30
Last Push
15,326
Stars
Ruby
Language
548,038
Lines of Code
8461
Files
216
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 1HIGH 0MEDIUM 115LOW 100

Pattern Findings

216 matches across 10 categories. Click a row to expand file-level details.

Self-Referential Comments91 hits · 269 pts
SeverityFileLineSnippet
MEDIUM.rubocop.yml1# This file is synced from `Homebrew/brew` by the `.github` repository, do not modify it directly.
MEDIUMFormula/r/rip2.rb31 # Create a test file and verify rip can delete it
MEDIUMFormula/r/rbenv.rb35 # Create a fake ruby version and executable.
MEDIUMFormula/r/rabbitmq.rb44 # Create the rabbitmq-env.conf file
MEDIUMFormula/r/rsql.rb32 # Create a sample CSV file
MEDIUMFormula/r/recc.rb108 # Create a source file to test caching
MEDIUMFormula/u/uutils-diffutils.rb43 # Create a temporary compatibility executable for previous 'u' prefix.
MEDIUMFormula/u/unxip.rb55 # Create a sample xar archive just to satisfy a .xip header, then test
MEDIUMFormula/u/uutils-findutils.rb42 # Create a temporary compatibility executable for previous 'u' prefix.
MEDIUMFormula/u/uhdm.rb61 # Create a minimal .uhdm file and ensure executables work
MEDIUMFormula/i/ic-wasm.rb25 # Create a wasm module with a custom section for ICP metadata
MEDIUMFormula/n/nodenv.rb34 # Create a fake node version and executable.
MEDIUMFormula/g/gcc@9.rb156 # Create the GCC specs file
MEDIUMFormula/g/gnuradio.rb203 # Create a directory for Homebrew to put .pth files pointing to GNU Radio
MEDIUMFormula/g/glibc.rb262 # This file is generated by Homebrew. Do not modify.
MEDIUMFormula/g/gcc@13.rb157 # Create the GCC specs file
MEDIUMFormula/g/gcc@12.rb170 # Create the GCC specs file
MEDIUMFormula/g/gcc.rb205 # Create the GCC specs file
MEDIUMFormula/g/gator.rb33 # Create a test manifest file
MEDIUMFormula/g/gator.rb55 # Create a test constraint template
MEDIUMFormula/g/gator.rb91 # Create a test constraint file
MEDIUMFormula/g/git-delta.rb41 # Create a test repo
MEDIUMFormula/g/gcc@11.rb159 # Create the GCC specs file
MEDIUMFormula/g/gcc@14.rb171 # Create the GCC specs file
MEDIUMFormula/g/gomi.rb31 # Create a trash directory
MEDIUMFormula/g/gcc@10.rb162 # Create the GCC specs file
MEDIUMFormula/z/zsh-async.rb27 # Create a callback function to process results
MEDIUMFormula/t/tcl-tk.rb220 # Create an instance
MEDIUMFormula/t/tcl-tk@8.rb180 # Create an instance
MEDIUMFormula/s/synergy-core.rb178- # Creating a release tag through the GitHub UI creates a lightweight tag, so use --tags
MEDIUMFormula/s/sparse.rb32 # Create the parent directories ourselves.
MEDIUMFormula/s/svgbob.rb25 # Create a symlink to not break compatibility
MEDIUMFormula/s/sstp-client.rb34 # Create a directory needed by sstpc for privilege separation
MEDIUMFormula/s/spr.rb46 # Create an empty commit, which is set to be upstream
MEDIUMFormula/s/sloccount.rb41 bin.mkpath # Create the install dir or install falls over
MEDIUMFormula/a/async-profiler.rb41 # Create a simple Java program that sleeps for testing
MEDIUMFormula/a/ab-av1.rb30 # Create a 5 second test MP4 (same as ffmpeg test) as the test fixture is too minimal
MEDIUMFormula/f/ffmpeg@6.rb173 # Create a 5 second test MP4
MEDIUMFormula/f/ffmpeg@7.rb160 # Create a 5 second test MP4
MEDIUMFormula/f/ffmpeg-full.rb171 # Create a 5 second test MP4
MEDIUMFormula/f/ffmpeg.rb105 # Create a 5 second test MP4
MEDIUMFormula/f/fuseki.rb28 # Create a location for dataset and log files,
MEDIUMFormula/f/ffmpeg@4.rb153 # Create a 5 second test MP4
MEDIUMFormula/f/ffmpeg@2.8.rb127 # Create a 5 second test MP4
MEDIUMFormula/f/fake-gcs-server.rb36 # Create a bucket
MEDIUMFormula/f/ffmpeg@5.rb167 # Create a 5 second test MP4
MEDIUMFormula/o/openjdk@8.rb122 # Create a framework-like header shim that the saproc.make -F flag will find
MEDIUMFormula/o/ohdear-cli.rb17 # Create a symlink to not break compatibility
MEDIUMFormula/m/mycorrhiza.rb39 # Create a hypha
MEDIUMFormula/m/mender-artifact.rb51 # Create a test artifact
MEDIUMFormula/m/mingw-w64.rb92 # Create a mingw symlink, expected by GCC
MEDIUMFormula/m/minizign.rb41 # Create a test file and sign it
MEDIUMFormula/c/cvs.rb4# Creating a useful testcase: https://mrsrl.stanford.edu/~brian/cvstutorial/
MEDIUMFormula/c/clog.rb48 # Create a rule to suppress any line containing the word 'ignore'
MEDIUMFormula/d/dooit.rb120 # Create a topic
MEDIUMFormula/d/dooit.rb127 # Create a todo in the topic
MEDIUMFormula/d/dynare.rb125- # Create a dependency object for UMFPACK.
MEDIUMFormula/d/duckdb.rb33 # Create a symlink to not break compatibility
MEDIUMFormula/v/vmdktool.rb55 # Create a blank disk image in raw format
MEDIUMFormula/v/virtualfish.rb86 # Create a virtualenv 'new_virtualenv'
31 more matches not shown…
Redundant / Tautological Comments40 hits · 60 pts
SeverityFileLineSnippet
LOWFormula/r/redir.rb41 # Check if the process is running
LOWFormula/r/redir.rb44 # Check if the port redirect works
LOWFormula/i/inspectrum.rb32 # Set QT_QPA_PLATFORM to minimal to avoid error:
LOWFormula/n/neovim-qt.rb37 # Set QT_QPA_PLATFORM to minimal to avoid error "qt.qpa.xcb: could not connect to display"
LOWFormula/z/zstd.rb46 # Set it to `ON` to be explicit about the configuration.
LOWFormula/t/tarsnap-gui.rb51 # Set QT_QPA_PLATFORM to minimal to avoid error "could not connect to display"
LOWFormula/a/augustus.rb42 # Set PREFIX to prevent symlinking into /usr/local/bin/
LOWFormula/f/fceux.rb70 # Set QT_QPA_PLATFORM to minimal to avoid error:
LOWFormula/o/ocaml-findlib.rb55 # Check if we need to rebuild ocaml-findlib to be used as a library
LOWFormula/lib/librasterlite2.rb62 # Check if this can be removed with the next release.
LOWFormula/m/matplotplusplus.rb47 # Set QT_QTP_PLATFORM to "minimal" on Linux so that it does not fail with this error:
LOWFormula/c/clang-uml.rb48 # Check if clang-uml is linked properly
LOWFormula/c/clang-include-graph.rb45 # Check if clang-include-graph is linked properly
LOWFormula/d/duck.rb129 # Set MACOSX_DEPLOYMENT_TARGET to avoid linker errors when building rococoa.
LOWFormula/q/qjackctl.rb55 # Set QT_QPA_PLATFORM to minimal to avoid error "qt.qpa.xcb: could not connect to display"
LOWFormula/q/qalculate-qt.rb41 # Set QT_QPA_PLATFORM to minimal to avoid error "qt.qpa.xcb: could not connect to display"
LOWFormula/q/qbe.rb34 ret %c # Return the result
LOWFormula/q/qmmp.rb112 # Set QT_QPA_PLATFORM to minimal to avoid error "qt.qpa.xcb: could not connect to display"
LOWFormula/q/qsoas.rb68 # Set QT_QPA_PLATFORM to minimal to avoid error "qt.qpa.xcb: could not connect to display"
LOWFormula/e/etsh.rb37 # Check if `tshall` is supported in Ubuntu 18.04.
LOWFormula/e/ejabberd.rb71 # Set CPP to work around cpp shim issue:
LOWFormula/b/bareos-client.rb97 # Check if bareos-fd starts at all.
LOWFormula/b/bareos-client.rb99 # Check if the configuration is valid.
LOWFormula/l/lispkit.rb26 # Check if user provided -r or --root flag
LOWFormula/p/python@3.11.rb497 # Check if sqlite is ok, because we build with --enable-loadable-sqlite-extensions
LOWFormula/p/python@3.11.rb504 # Check if some other modules import. Then the linked libs are working.
LOWFormula/p/python@3.10.rb488 # Check if sqlite is ok, because we build with --enable-loadable-sqlite-extensions
LOWFormula/p/python@3.10.rb495 # Check if some other modules import. Then the linked libs are working.
LOWFormula/p/python-freethreading.rb418 # Check if sqlite is ok, because we build with --enable-loadable-sqlite-extensions
LOWFormula/p/python-freethreading.rb425 # Check if some other modules import. Then the linked libs are working.
LOWFormula/p/pivy.rb44 # Set QT_QPA_PLATFORM to minimal to avoid error:
LOWFormula/p/python@3.14.rb477 # Check if sqlite is ok, because we build with --enable-loadable-sqlite-extensions
LOWFormula/p/python@3.14.rb484 # Check if some other modules import. Then the linked libs are working.
LOWFormula/p/pc6001vx.rb53 # Set QT_QPA_PLATFORM to minimal to avoid error:
LOWFormula/p/python@3.13.rb466 # Check if sqlite is ok, because we build with --enable-loadable-sqlite-extensions
LOWFormula/p/python@3.13.rb473 # Check if some other modules import. Then the linked libs are working.
LOWFormula/p/python@3.9.rb486 # Check if sqlite is ok, because we build with --enable-loadable-sqlite-extensions
LOWFormula/p/python@3.9.rb493 # Check if some other modules import. Then the linked libs are working.
LOWFormula/p/python@3.12.rb479 # Check if sqlite is ok, because we build with --enable-loadable-sqlite-extensions
LOWFormula/p/python@3.12.rb486 # Check if some other modules import. Then the linked libs are working.
AI Slop Vocabulary19 hits · 57 pts
SeverityFileLineSnippet
MEDIUMFormula/r/rom-tools.rb78 # Needs more comprehensive tests
LOWFormula/u/urdfdom.rb10 # created a few releases on GitHub in the past but now they simply use tags.
LOWFormula/u/urdfdom_headers.rb9 # created a few releases on GitHub in the past but now they simply use tags.
MEDIUMFormula/g/getdns.rb20 # since the aforementioned first-party URL has a tendency to lead to an
MEDIUMFormula/s/synergy-core.rb59 # Version.cmake in `synergy-extra` reads .git folder of `synergy`.
MEDIUMFormula/s/synergy-core.rb61 # and so we use tarball of `synergy` and apply patch to ignore git process
MEDIUMFormula/s/synergy-core.rb66 # Upstream pr ref, https://github.com/symless/synergy/pull/179
MEDIUMFormula/s/synergy-core.rb110 # them when upgrading synergy-core.
MEDIUMFormula/s/synergy-core.rb137 (2) #{opt_bin}/synergy
MEDIUMFormula/s/synergy-core.rb147 shell_output("#{opt_bin}/synergy-server --version"))
MEDIUMFormula/s/synergy-core.rb149 shell_output("#{opt_bin}/synergy-client --version"))
MEDIUMFormula/s/synergy-core.rb152 shell_output("#{opt_bin}/synergy-server 2>&1", 4)
MEDIUMFormula/s/synergy-core.rb154 shell_output("#{opt_bin}/synergy-client 2>&1", 3)
MEDIUMFormula/lib/libvisual-projectm.rb27 # installation and leverage brew's auto-symlinking
MEDIUMFormula/d/dumb.rb6 # Essentially Zlib but with modified and added clauses that aren't intended to restrict usage
MEDIUMFormula/d/delve.rb3 homepage "https://github.com/go-delve/delve"
MEDIUMFormula/d/delve.rb4 url "https://github.com/go-delve/delve/archive/refs/tags/v1.26.3.tar.gz"
MEDIUMFormula/d/delve.rb7 head "https://github.com/go-delve/delve.git", branch: "master"
LOWFormula/d/ddd.rb84 # and using --nw causes them to just pass through to normal execution.
Over-Commented Block25 hits · 25 pts
SeverityFileLineSnippet
LOWFormula/r/rig.rb41 #include <fstream>
LOWFormula/n/node@24.rb121 # Enabling LTO errors on Linux with:
LOWFormula/g/gcc@9.rb181
LOWFormula/g/gcc@13.rb181 raise "command failed: #{gcc} -dumpspecs" if $CHILD_STATUS.exitstatus.nonzero?
LOWFormula/g/gcc@12.rb201 # system header files.
LOWFormula/g/gcc@11.rb181 # Save a backup of the default specs file
LOWFormula/g/gcc@14.rb201 # * `-isysroot #{HOMEBREW_PREFIX}/nonexistent` prevents gcc searching built-in
LOWFormula/g/gcc@10.rb181 system_header_dirs += ["/usr/include/#{target}", "/usr/include"]
LOWFormula/s/semgrep.rb381 # `--no-depexts` prevents opam from attempting to automatically search for
LOWFormula/s/seexpr.rb61 # ## | #
LOWFormula/a/argyll-cms.rb41 resource "jam" do
LOWFormula/lib/libpano.rb61 #define PT_BIGENDIAN 1
LOWFormula/c/cryptopp.rb41 # Test program modified from:
LOWFormula/c/cmigemo.rb61 #include <stdlib.h>
LOWFormula/v/vip.rb1class Vip < Formula
LOWFormula/q/qt@5.rb21 sha256 cellar: :any_skip_relocation, arm64_linux: "63a1e7642ed0f95ef9bde80e6620ffe648970a3f04b49180e5a6096db4c71d3
LOWFormula/b/bsdiff.rb61+#include <sys/types.h>
LOWFormula/b/bbot.rb321 // Copyright ijl (2018-2026)
LOWFormula/k/kondo.rb41 # target (10.0B)
LOWFormula/l/luajit.rb1# NOTE: We have a policy of building only from tagged commits, but make a
LOWFormula/y/yamcha.rb121 #ifdef HAVE_CONFIG_H
LOWFormula/p/plod.rb41 s.gsub! '$VISUAL = "/usr/local/bin/emacs"', "$VISUAL = \"#{visual}\""
LOWFormula/p/pcre.rb21 sha256 cellar: :any, arm64_tahoe: "08de2eeaca9c98e70091c9b220f8f570b073f8db982d2451dfd35b1415aab6e
LOWFormula/p/postgis.rb61 # C++17 is required.
LOWFormula/p/png2ico.rb61 #if __GNUC__ > 2
Fake / Example Data17 hits · 20 pts
SeverityFileLineSnippet
LOWFormula/u/uthash.rb36 char name[] = "John Doe";
LOWFormula/g/git-mob.rb22 system "git", "config", "--global", "user.name", "Jane Doe"
LOWFormula/t/texlive.rb587 \section*{Lorem Ipsum}
LOWFormula/m/mcp-atlassian.rb580 ENV["JIRA_USERNAME"] = "user@example.com"
LOWFormula/m/mdcat.rb46 assert_match "lorem ipsum dolor sit amet", output
LOWFormula/m/mdcat.rb46 assert_match "lorem ipsum dolor sit amet", output
LOWFormula/c/ctemplate.rb44 dict.SetValue("NAME", "Jane Doe");
LOWFormula/x/xml2rfc.rb125 <author fullname="John Doe" initials="J." role="editor" surname="Doe">
LOWFormula/k/karn.rb39 system "git", "config", "--global", "user.email", "test@test.com"
LOWFormula/l/lolcrab.rb27 assert_match "\e[38;", pipe_output(bin/"lolcrab", "lorem ipsum dolor sit amet")
LOWFormula/l/lolcrab.rb27 assert_match "\e[38;", pipe_output(bin/"lolcrab", "lorem ipsum dolor sit amet")
LOWFormula/l/lolcrab.rb28 assert_match "\e[48;", pipe_output("#{bin}/lolcrab -i", "lorem ipsum dolor sit amet")
LOWFormula/l/lolcrab.rb28 assert_match "\e[48;", pipe_output("#{bin}/lolcrab -i", "lorem ipsum dolor sit amet")
LOWFormula/l/lorem.rb24 assert_equal "lorem ipsum", shell_output("#{bin}/lorem -n 2").strip.downcase
LOWFormula/p/phpunit.rb96 Email::fromString('user@example.com')
LOWFormula/p/phpunit.rb110 'user@example.com',
LOWFormula/p/phpunit.rb111 Email::fromString('user@example.com')
Decorative Section Separators7 hits · 20 pts
SeverityFileLineSnippet
MEDIUMFormula/t/teem.rb65 #-----------------------------------------------------------------------------
MEDIUMFormula/s/seexpr.rb71 ---------------------#-------##-------#---------------------
MEDIUMFormula/f/freeswitch.rb69 #---------------
MEDIUMFormula/f/freeswitch.rb71 #---------------
MEDIUMFormula/f/freeswitch.rb113 #-----------
MEDIUMFormula/f/freeswitch.rb115 #-----------
MEDIUMFormula/b/bsc.rb145 ## =========================
Slop Phrases9 hits · 14 pts
SeverityFileLineSnippet
LOWFormula/g/gitless.rb92 # make sure to update setup.py
MEDIUMFormula/g/greenmask.rb67 pg_restore_options: # pg_restore option (you can use the same options as pg_restore has)
LOWFormula/f/fastfec.rb43 # Don't forget to update the `install` method.
LOWFormula/c/curl.rb4 # Don't forget to update both instances of the version in the GitHub mirror URL.
LOWFormula/e/exim.rb154 Don't forget to run it as root to be able to bind port 25.
LOWFormula/e/erlang@28.rb5 # Don't forget to update the documentation resource along with the url!
LOWFormula/e/erlang@27.rb5 # Don't forget to update the documentation resource along with the url!
LOWFormula/e/erlang.rb5 # Don't forget to update the documentation resource along with the url!
LOWFormula/e/erlang@26.rb5 # Don't forget to update the documentation resource along with the url!
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippet
CRITICALFormula/n/nexus.rb208+ URL bcutilUrl = org.bouncycastle.util.Arrays.class.getProtectionDomain().getCodeSource().getLocation();
Hyper-Verbose Identifiers6 hits · 7 pts
SeverityFileLineSnippet
LOWFormula/i/instalooter.rb120 class UserAgentRequestHandler(six.moves.BaseHTTPServer.BaseHTTPRequestHandler):
LOWFormula/c/ca-certificates.rb117 def get_certificate_fingerprint(certificate, openssl_binary = "openssl")
LOWFormula/c/ca-certificates.rb126 def load_certificates_from_file(file_path, trusted_certificates, fingerprints, certificate_type)
LOWFormula/p/powershell.rb147 def clear_native_dependencies(publish_path, runtime, dotnet)
LOWFormula/p/phpunit.rb92 public function testCanBeCreatedFromValidEmailAddress(): void
LOWFormula/p/phpunit.rb100 public function testCannotBeCreatedFromInvalidEmailAddress(): void
Excessive Try-Catch Wrapping1 hit · 1 pts
SeverityFileLineSnippet
LOWFormula/p/pushpin.rb99 except Exception: