This project is mirrored from https://github.com/Homebrew/brew.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
  1. 25 11月, 2021 3 次提交
  2. 24 11月, 2021 6 次提交
  3. 23 11月, 2021 19 次提交
  4. 22 11月, 2021 7 次提交
  5. 21 11月, 2021 3 次提交
  6. 20 11月, 2021 2 次提交
    • Sam Ford's avatar
      PageMatch: Enforce requirements in #find_versions · f8ded0a4
      Sam Ford 创作于
      This aligns `PageMatch` with how cask strategies handle requirements
      in their `#find_versions` methods. This moves related logic from
      `Livecheck#latest_version` into the `PageMatch` strategy, which feels
      a bit more appropriate.
      f8ded0a4
    • Sam Ford's avatar
      Handle variable strategy block arguments · 085827f6
      Sam Ford 创作于
      There are times where a regex isn't needed in a `strategy` block and
      these changes explicitly handle that situation.
      
      This allows the Symbol Proc format used in some `Sparkle` `livecheck`
      blocks (e.g., `strategy :sparkle, &:version`) to continue working
      instead of failing with a "wrong number of arguments (given 1,
      expected 0)" error. This error would occur because a Symbol Proc only
      only expects one argument (e.g., an `Item`, not an `Item` and a
      regex/nil).
      
      There's an argument to be made for avoiding the Symbol Proc format
      for `strategy` blocks but I haven't found a way of selectively
      disabling the Style/SymbolProc cop only for a `strategy` DSL method
      call. That is to say, if we don't use the Symbol Proc format, `brew
      style` will give a "Pass &:version as an argument to strategy instead
      of a block." offense.
      
      Besides that, this also replaces the `block` type signatures in
      livecheck strategies with `T.untyped`. Sorbet doesn't know how to
      handle a `Proc` with a variable number of arguments and can't be
      taught how (i.e., `T.any` with a `Proc` signature for each variation
      doesn't work). The aforementioned changes cause Sorbet to complain
      about there being both too many and too few arguments, so the only
      way to win is not to play the game. Hopefully we can restore the
      `block` type signatures in the future (if upstream resolves this
      years-old issue) but `T.untyped` seems to be our only option for now.
      085827f6