Commit Graph
2286 Commits
Author SHA1 Message Date
Mike McQuaidandGitHub c9f4d1d900 Merge pull request #11901 from Bo98/srb-5067
dev-cmd/typecheck: stop suppressing error 5067
2021-08-23 14:48:26 +01:00
Mike McQuaidandGitHub 6f21758b2a Merge pull request #11667 from bevanjkay/livecheck-extractplist-qlplugins
unversioned_cask_checker: check for versions in qlplugins
2021-08-23 14:45:51 +01:00
Bo Anderson 856ad5738b dev-cmd/typecheck: stop suppressing error 5067
The problem with it was solved in Sorbet 0.5.9051.
2021-08-22 16:24:01 +01:00
Dawid Dziurla df086d618e bump-formula-pr: use default remote if forcing Homebrew on Linux 2021-08-13 22:56:05 +02:00
Dustin Rodrigues c6bb748ea9 typecheck: allow typecheck command to run on Apple Silicon 2021-08-11 06:42:02 -04:00
Mike McQuaid 62f7dcaa0e dev-cmd/typecheck: don't suppress 5061 errors, do suppress 5067. 2021-08-11 09:40:57 +01:00
Mike McQuaidandGitHub 3b13cf9797 Merge branch 'master' into dependabot/bundler/Library/Homebrew/sorbet-0.5.6519 2021-08-11 09:30:51 +01:00
Rylan Polster b1215800d4 Fix tests 2021-08-06 11:42:55 -04:00
Bo Anderson 07239d267c Migrate from Sorbet DSL plugins to Parlour 2021-08-06 13:32:48 +01:00
Rylan Polster 737dd1654b Refactor API methods 2021-08-06 04:31:27 -04:00
Misty De MeoandGitHub ca58ef59cb Merge pull request #11801 from mistydemeo/edit_enable_project_view
edit: enable Sublime Text project view
2021-08-03 08:28:24 -07:00
Sam Ford f03c12d2db bump: support inheriting from a formula/cask 2021-08-02 09:12:23 -04:00
Misty De Meo 04c8e896a5 edit: enable Sublime Text project view 2021-08-01 15:36:48 -07:00
Bevan Kay 5040ec8142 fix style issues 2021-07-21 16:25:11 +10:00
Bevan Kay 212992a476 fix typecheck, add reference in bump-unversioned-casks 2021-07-21 16:09:09 +10:00
Carlo CabreraandGitHub 1d5bc01f4e Merge pull request #11734 from carlocab/deprecate-autosquash
dev-cmd/pr-publish: pass `--autosquash` by default
2021-07-20 19:47:01 +08:00
Adrian HoandAdrian Ho a14d8924de extract: ignore syntax errors during load 2021-07-20 09:57:04 +08:00
ae788550f9 Show replacement command in odeprecated
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2021-07-20 09:39:51 +08:00
9370c7cca7 Fix logic error in pr-automerge
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2021-07-20 09:28:38 +08:00
654d10d6d3 Fix more typos
Co-authored-by: Rylan Polster <rslpolster@gmail.com>
2021-07-19 09:43:08 +08:00
171859d3ad Fix typos
Co-authored-by: Dawid Dziurla <dawidd0811@gmail.com>
2021-07-18 15:54:52 +08:00
Carlo Cabrera 3325b79726 dev-cmd/pr-automerge: deprecate --autosquash 2021-07-18 15:36:19 +08:00
Carlo Cabrera 080bd8bd4a dev-cmd/pr-publish: pass --autosquash by default
It's too easy to forget to, and the consequences of forgetting to pass
`--autosquash` are worse (i.e. almost always permanent) than forgetting
to pass `--no-autosquash` (i.e. just do `pr-publish --no-autosquash`
when your command fails).

See the discussion at Homebrew/homebrew-core#80717.
2021-07-18 05:33:35 +08:00
82c5756690 dev-cmd/bottle: use native Ruby.
Co-authored-by: Carlo Cabrera <30379873+carlocab@users.noreply.github.com>
2021-07-14 11:45:03 +01:00
Mike McQuaid 721ed8542b dev-cmd/bottle: fixup macOS symlink permissions.
These can be changed on macOS but not on Linux so we need to make them
consistent in both places for `all:` bottles to have consistent
checksums.

I investigated adding to `cleaner.rb` to fix these symlink permissions
on installation but it seems it already happens by default when
extracting so there's no need.
2021-07-14 10:31:25 +01:00
Issy Long 6ce59fef8b dev-cmd/typecheck: error-white-list renamed to isolate-error-code
- It was renamed in
  https://github.com/sorbet/sorbet/commit/4ea6842988c6ec33dc8a39439b7b1d4742921f0e
  which is included in the ancient version we're using.
2021-07-10 00:30:08 +01:00
Nanda H Krishna 6bea9b4202 brew pr-pull: no bottles for CI-no-bottles PRs 2021-07-08 13:51:44 +05:30
Dawid Dziurla c676aee842 dispatch-build-bottle: rename --wheezy to --linux-wheezy 2021-07-05 18:24:43 +02:00
Mike McQuaid d490e2a9a7 Fix BuildPulse handling
- be more verbose with output to be clear when we're using/submitting to
  BuildPulse
- remove the duplicate BuildPulse submission step
2021-06-30 09:20:56 +01:00
Mike McQuaid a4c2e0e1b3 Tweak BuildPulse/rspec-retry logic
BuildPulse is trying to find flaky tests for us but, given the previous
model of using `rspec-retry`, it would rarely find them. Instead, let's
try to always rerun `brew tests` multiple times, report to BuildPulse
each time (by moving the reporting logic into `brew tests`) and disable
`rspec-retry` when using BuildPulse.

While we're here, let's enable `rspec-retry` locally so we don't have
flaky tests biting maintainers/contributors there.
2021-06-29 12:43:47 +01:00
Dawid Dziurla 7971411372 dispatch-build-bottle: support self-hosted Linux and unified workflow 2021-06-25 21:34:32 +02:00
Alexander Bayandin 27772ab57a typecheck: do not generate RBI file for did_you_mean 2021-06-24 15:45:03 +01:00
Mike McQuaidandGitHub 41803ebf93 Merge pull request #11578 from jasonrudolph/flaky-test-detection
Automatically detect and track flaky tests
2021-06-23 11:00:38 +01:00
Jason Rudolph e163eb8650 Enhance test suite to emit JUnit XML test reports
In preparation for detecting flaky tests with BuildPulse, this commit
sets up the rspec_junit_formatter gem to output JUnit XML reports of the
test suite, which is the format used by BuildPulse and various other
tooling that interprets test results.

Because the test suite uses the parallel_tests gem, this commit
incorporates some related changes to make all the parallel_tests gem and
the rspec_junit_formatter gem to cooperate with each other.

rspec_junit_formatter writes everything to a single XML file. That works
fine when there's only one process writing to the file. By default,
whatever process finishes last will write to the file and clobber the
output of all the other processes that wrote to the file. 🙈

To prevent this issue, the parallel_tests wiki recommends adding a
`.rspec_parallel` file to specify its RSpec options
(https://github.com/grosser/parallel_tests/wiki#with-rspec_junit_formatter----by-jgarber),
then the project can specify different files for each process to write
to like so:

  --format RspecJunitFormatter
  --out tmp/rspec<%= ENV['TEST_ENV_NUMBER'] %>.xml

However, prior to this commit, the Homebrew/brew test suite specified
its RSpec options via the command line. Unfortunately though, there's no
way (AFAICT) to set the equivalent of these options via the command
line:

  --format RspecJunitFormatter
  --out tmp/rspec<%= ENV['TEST_ENV_NUMBER'] %>.xml

So, we need to use a `.rspec_parallel` file to specify these options ☝️.

However, it appears that RSpec allows you to specify formatters _either_
in an options file (like `.rspec_parallel`) _or_ via command-line args.
But if you specify any formatters via command-line args, then all
formatters in the options file are ignored.  (I suspect that's somehow
related to this bit of code in rspec-core:
https://github.com/rspec/rspec-core/blob/v3.10.0/lib/rspec/core/configuration_options.rb#L64.)

With that in mind, in order to have the RspecJunitFormatter configured
 in `.rspec_parallel`, we need to move the other formatters into
 `.rpsec_parallel` as well, instead of passing them as command-line
 args. Therefore, this commit moves all the formatters into a
 `.rspec_parallel` file.
2021-06-21 13:14:18 -04:00
Mike McQuaid 08c96df947 release_notes: refactor/cleanup.
This was failing for me locally so I've made some fixes:
- remove the `markdown` flag (as it's the only path now)
- refactor the generation to not use intermediate variables
- discard more weird cases rather than erroring
- exclude @Homebrew changes (e.g. from bots) because we don't care about
  these in the release notes
2021-06-21 14:25:01 +01:00
Mike McQuaid 30a65342e8 Deprecate, disable, delete code for Homebrew 3.2.0
Do the usual deprecation, disable, delete dance for Homebrew 3.2.0.
2021-06-17 11:34:32 +01:00
Bo Anderson a06d136d2c Move Sorbet gems into an optional group 2021-06-11 08:10:30 +01:00
Mike McQuaidandGitHub d69f1a317b Merge pull request #11507 from ncruces/patch-1
brew tap-new: tests.yml workflow fails with casks
2021-06-10 11:46:48 +01:00
Nuno Cruces 7db528163c brew audit: fails on Linux if tap has any casks
Running `brew audit --tap=[TAP]` fails on Linux (including GitHub Actions CI) if the tap has any caksks.
2021-06-09 19:13:39 +01:00
Nuno Cruces 9740510650 Revert "brew tap-new: tests.yml workflow fails with casks"
This reverts commit 20d59effd6.
2021-06-09 19:11:42 +01:00
Bo AndersonandGitHub 9938621f23 Merge pull request #11470 from Bo98/unbottled-arch
dev-cmd/unbottled: fix arch requirement handling
2021-06-09 14:01:06 +01:00
Rylan Polster 08b44afcdf cli/parser: allow options to be hidden 2021-06-08 22:02:32 -04:00
Nuno CrucesandGitHub 20d59effd6 brew tap-new: tests.yml workflow fails with casks
Running `brew test-bot --only-tap-syntax` fails on `ubuntu-latest` if any casks are added later to the tap, since casks are macOS only.
2021-06-08 13:09:27 +01:00
Nanda H KrishnaandGitHub 99702b2475 Merge pull request #11497 from nandahkrishna/remove-publish-flag
`brew pr-{pull,upload}`: remove `--no-publish` flag
2021-06-08 17:33:22 +05:30
Mike McQuaidandGitHub c4d69dd2e9 Revert "fix(vendor-gems): redirect bundler stdout to stderr" 2021-06-07 14:51:07 +01:00
Nanda H Krishna b607fb0712 brew pr-{pull,upload}: remove --no-publish flag
The `--no-publish` flag isn't used anywhere since we removed all the
Bintray code. Also, the `--no-upload` flag used in `pr-pull` doesn't
apply the bottle commit, so its description has been modified.
2021-06-07 15:13:29 +05:30
Gibson Fahnestock 07d571bebc fix(vendor-gems): redirect bundler stdout to stderr
When running brew commands and interpreting the output, e.g. running
`brew livecheck --json`, it's necessary to stop other programs Homebrew
happens to execute from writing logging output to stdout. Most programs
don't do this, but `bundle install` does seem to.

To reproduce the issue you can run:

```shell
git -C "$(brew --prefix)" clean -ffdx Library/Homebrew/vendor
stdout=$(HOMEBREW_FORCE_VENDOR_RUBY=1 brew livecheck --newer-only --json --cask $(brew --repo homebrew/cask)/Casks/grid.rb)
echo "^^^ was stderr, >>> is stdout: $stdout"
```

If you run it without this change it will print a bunch of output like
this to the stdout before printing out the livecheck JSON output:

```text
Using bundler 1.17.3
Fetching byebug 11.1.3
Fetching coderay 1.1.3
Installing byebug 11.1.3 with native extensions
Installing coderay 1.1.3
Fetching colorize 0.8.1
Installing colorize 0.8.1

[
  # Contents of the JSON block.
]
```

With this change the stdout from `bundle install` will be redirected to
brew's stderr, meaning only the JSON goes to stdout, and the rest goes
to stderr.
2021-06-03 11:18:23 +01:00
Rylan Polster 023063d6a2 bottle: calculate rebuild correctly when removing bottle :unneeded 2021-06-01 11:39:07 -04:00
Bo Anderson 984226d5b5 dev-cmd/unbottled: fix arch requirement handling 2021-05-31 15:24:20 +01:00
Bo AndersonandGitHub 7ae9cc3467 Merge pull request #11440 from scpeters/extract_downcased_version
extract: use downcased version in filename
2021-05-27 15:07:56 +01:00