Skip to content

Commit

Permalink
Merge pull request #988 from bugsnag/release-v6.6.1
Browse files Browse the repository at this point in the history
Release v6.6.1
  • Loading branch information
nickdowell authored Feb 3, 2021
2 parents b834068 + 5d35f8e commit be6136c
Show file tree
Hide file tree
Showing 114 changed files with 1,769 additions and 1,112 deletions.
43 changes: 36 additions & 7 deletions .buildkite/pipeline.full.yml
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,40 @@ steps:
- exit_status: -1 # Agent was lost
limit: 2

- label: 'Update documentation page'
if: build.branch == "master"
- label: ':apple: macOS 11.0 full end-to-end tests'
depends_on:
- cocoa_fixture
timeout_in_minutes: 60
agents:
queue: opensource-mac-cocoa-11
plugins:
artifacts#v1.3.0:
download: ["features/fixtures/macos/output/macOSTestApp.zip"]
commands:
- bundle install
- bundle exec maze-runner
--farm=local
--os=macos
--os-version=11.0
--app=macOSTestApp
--tags='not @skip_macos'
--fail-fast

- label: ':apple: macOS 10.14 full end-to-end tests'
depends_on:
- cocoa_fixture
timeout_in_minutes: 60
agents:
queue: opensource-mac-cocoa
concurrency: 3
concurrency_group: cocoa-unit-tests
command:
- make update-docs
queue: opensource-mac-cocoa-10.14
plugins:
artifacts#v1.3.0:
download: ["features/fixtures/macos/output/macOSTestApp.zip"]
commands:
- bundle install
- bundle exec maze-runner
--farm=local
--os=macos
--os-version=10.14
--app=macOSTestApp
--tags='not @skip_macos'
--fail-fast
21 changes: 20 additions & 1 deletion .buildkite/pipeline.quick.yml
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,25 @@ steps:
- make bootstrap
- make test

- label: ':apple: macOS 10.15 full end-to-end tests'
depends_on:
- cocoa_fixture
timeout_in_minutes: 60
agents:
queue: opensource-mac-cocoa
plugins:
artifacts#v1.3.0:
download: ["features/fixtures/macos/output/macOSTestApp.zip"]
commands:
- bundle install
- bundle exec maze-runner
--farm=local
--os=macos
--os-version=10.15
--app=macOSTestApp
--tags='not @skip_macos'
--fail-fast

- label: ':ios: iOS 14 full end-to-end tests'
depends_on:
- cocoa_fixture
Expand Down Expand Up @@ -188,4 +207,4 @@ steps:
retry:
automatic:
- exit_status: -1 # Agent was lost
limit: 2
limit: 2
20 changes: 20 additions & 0 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -168,5 +168,25 @@ steps:
- exit_status: -1 # Agent was lost
limit: 2

- label: ':apple: macOS 10.15 barebones end-to-end tests'
depends_on:
- cocoa_fixture
timeout_in_minutes: 60
agents:
queue: opensource-mac-cocoa
plugins:
artifacts#v1.3.0:
download: ["features/fixtures/macos/output/macOSTestApp.zip"]
commands:
- bundle install
- bundle exec maze-runner
features/barebone_tests.feature
--farm=local
--os=macos
--os-version=10.15
--app=macOSTestApp
--tags='not @skip_macos'
--fail-fast

- label: 'Conditionally trigger full set of tests'
command: sh -c .buildkite/pipeline_trigger.sh
7 changes: 3 additions & 4 deletions .buildkite/pipeline_trigger.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,15 @@ elif [[ "$BUILDKITE_MESSAGE" == *"[full ci]"* ||
echo "Running full build"
buildkite-agent pipeline upload .buildkite/pipeline.quick.yml
buildkite-agent pipeline upload .buildkite/pipeline.full.yml
elif [[ "$BUILDKITE_MESSAGE" == *"[pre-release ci]"* ||
elif [[ "$BUILDKITE_MESSAGE" == *"[gated-full ci]"* ||
"$BUILDKITE_BRANCH" == "next" ]]; then
echo "Running pre-release build"
buildkite-agent pipeline upload .buildkite/pipeline.quick.yml
buildkite-agent pipeline upload .buildkite/block.full.yml
elif [[ "$BUILDKITE_MESSAGE" == *"[integration ci]"* ||
elif [[ "$BUILDKITE_MESSAGE" == *"[quick ci]"* ||
"$BUILDKITE_PULL_REQUEST_BASE_BRANCH" == "next" ]]; then
echo "Running integration build"
echo "Running quick build"
buildkite-agent pipeline upload .buildkite/block.quick.yml
else
echo "Running barebones build"
fi

29 changes: 17 additions & 12 deletions .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,32 +6,25 @@ jobs:
runs-on: macos-latest
steps:
- name: Checkout base branch
uses: actions/checkout@v1
uses: actions/checkout@v2
with:
ref: ${{ github.base_ref }}
clean: false

- name: Build framework
# Base branch may not have the latest Makefile, so cannot use `make` here
run: |
xcodebuild -project Bugsnag.xcodeproj -configuration Release -scheme Bugsnag-iOS -destination generic/platform=iOS -derivedDataPath DerivedData -quiet clean build VALID_ARCHS=arm64
eval $(stat -s DerivedData/Build/Products/Release-iphoneos/Bugsnag.framework/Bugsnag)
echo $st_size > .size_before
rm -rf DerivedData
- name: Checkout PR branch
uses: actions/checkout@v1
uses: actions/checkout@v2
with:
ref: ${{ github.ref }}
fetch-depth: 0
clean: false

- name: Build framework
run: |
xcodebuild -project Bugsnag.xcodeproj -configuration Release -scheme Bugsnag-iOS -destination generic/platform=iOS -derivedDataPath DerivedData -quiet clean build VALID_ARCHS=arm64
eval $(stat -s DerivedData/Build/Products/Release-iphoneos/Bugsnag.framework/Bugsnag)
echo $st_size > .size_after
- name: Infer
run: make infer

- uses: actions/cache@v2
with:
path: vendor/bundle
Expand All @@ -44,6 +37,18 @@ jobs:
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
- name: Build framework
run: |
make compile_commands.json
eval $(stat -s DerivedData/Build/Products/Release-iphoneos/Bugsnag.framework/Bugsnag)
echo $st_size > .size_after
- name: Infer
run: make infer

- name: OCLint
run: make oclint

- name: Danger
run: bundle exec danger
env:
Expand Down
44 changes: 44 additions & 0 deletions .github/workflows/update_docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: "Update Docs"
on:
release:
types: [published]

jobs:
build:
runs-on: macos-latest
steps:
- name: Checkout bugsnag-cocoa
uses: actions/checkout@v2

- name: Checkout docs branch
uses: actions/checkout@v2
with:
ref: gh-pages
path: docs

- name: Configure docs branch
working-directory: docs
run: |
git config user.name "Bugsnag Bot"
git config user.email [email protected]
- uses: actions/cache@v2
with:
path: vendor/bundle
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-gems-
- name: Bundle install
run: |
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
- name: Update docs
run: make docs

- name: Push changes
working-directory: docs
run: |
git status
git push
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,7 @@ Podfile.lock
.build
.swiftpm
Package.resolved
/compile_commands.json
/docs/
/infer-out
/oclint.json
16 changes: 16 additions & 0 deletions .jazzy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
author_url: "https://www.bugsnag.com"
author: "Bugsnag Inc"
clean: false # avoid deleting docs/.git
framework_root: "Bugsnag"
github_file_prefix: "https://github.com/bugsnag/bugsnag-cocoa/tree/v6.6.1"
github_url: "https://github.com/bugsnag/bugsnag-cocoa"
hide_documentation_coverage: true
module: "Bugsnag"
module_version: "6.6.1"
objc: true
output: "docs"
readme: "README.md"
root_url: "https://bugsnag.github.io/bugsnag-cocoa"
source_directory: "Bugsnag"
theme: "apple"
umbrella_header: "Bugsnag/include/Bugsnag/Bugsnag.h"
33 changes: 33 additions & 0 deletions .oclint
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# vim: set ft=yaml

disable-rules:
- BitwiseOperatorInConditional # Used quite a bit in KSCrash
- CollapsibleIfStatements # Fixing violations would churn a lot of code
- ConstantConditionalOperator # False positive for e.g. strncpy()
- EmptyDoWhileStatement # False positive for e.g. NSAssert()
- GotoStatement # KSCrash uses gotos extensively
- HighCyclomaticComplexity
- HighNcssMethod
- HighNPathComplexity
- InvertedLogic # Triggers on e.g. `if (old != new)`
- MissingDefaultStatement # Rule not smart enough to only trigger for missing cases
- ParameterReassignment
- PreferEarlyExit # Fixing violations would churn a lot of code
- ShortVariableName
- UnnecessaryElseStatement # Fixing violations would churn a lot of code
- UnusedMethodParameter # Quite common for notification handlers
- UselessParentheses # False positive for e.g. ULONG_MAX

rule-configurations:
- key: LONG_LINE
# GitHub's PR viewer allows 150 characters before scrolling
value: 150
- key: LONG_METHOD
value: 159
- key: LONG_VARIABLE_NAME
value: 50
- key: NESTED_BLOCK_DEPTH
value: 6
- key: TOO_MANY_METHODS
# We have several very large classses (BugsnagConfiguration, BugsnagClient)
value: 110
4 changes: 2 additions & 2 deletions Bugsnag.podspec.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "Bugsnag",
"version": "6.6.0",
"version": "6.6.1",
"summary": "The Bugsnag crash reporting framework for Apple platforms.",
"homepage": "https://bugsnag.com",
"license": "MIT",
Expand All @@ -9,7 +9,7 @@
},
"source": {
"git": "https://github.com/bugsnag/bugsnag-cocoa.git",
"tag": "v6.6.0"
"tag": "v6.6.1"
},
"frameworks": [
"Foundation",
Expand Down
Loading

0 comments on commit be6136c

Please sign in to comment.