Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v7.5.2 #1121

Merged
merged 30 commits into from
Nov 9, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
82afde1
test(plugin-expo-app): convert tests
djskinner Oct 21, 2020
0b20fd8
test(expo-cli): convert tests
djskinner Oct 21, 2020
135ce08
test(expo-cli): convert tests
djskinner Oct 21, 2020
e36f196
test(expo-cli): remove unused dev dependency
djskinner Oct 21, 2020
5b72a4a
ci(timeouts): ensure every buildkite step has a timeout
twometresteve Oct 21, 2020
ffab634
Merge pull request #1109 from bugsnag/step-timeouts
twometresteve Oct 22, 2020
48d4dd7
test(logging): remove repetitive logging
twometresteve Oct 22, 2020
581e3a0
Merge pull request #1111 from bugsnag/tms/hindering-logging
twometresteve Oct 23, 2020
76fa094
Merge branch 'master' into next
bengourley Oct 23, 2020
6547dcd
Merge pull request #1106 from bugsnag/convert-tests-to-jest
djskinner Oct 26, 2020
c81f220
docs(expo): Outline manual dependency sync process
bengourley Oct 28, 2020
2352ece
Update packages/expo/CONTRIBUTING.md
bengourley Oct 28, 2020
6aee017
docs(expo): make copy clearer
bengourley Oct 28, 2020
f375f69
Merge branch 'bengourley/expo-contributing-guide' of github.com:bugsn…
bengourley Oct 28, 2020
e1254f2
test(expo): Pin expo publisher container to node 12
bengourley Oct 28, 2020
5930035
Merge pull request #1116 from bugsnag/bengourley/expo-ci-node-version
bengourley Oct 28, 2020
55dac5d
Merge pull request #1115 from bugsnag/bengourley/expo-contributing-guide
bengourley Oct 28, 2020
98f5f57
docs(react-native): Refine CONTRIBUTING.md and include native notifie…
bengourley Nov 3, 2020
c59d588
chore: copy pasta
bengourley Nov 3, 2020
a2f2cb2
Merge pull request #1118 from bugsnag/bengourley/rn-contrib-update
bengourley Nov 3, 2020
6f2482d
Merge pull request #1107 from bugsnag/convert-tests-to-jest-2
bengourley Nov 3, 2020
ff98bca
build: improve script used for vendoring android dependency
fractalwrench Nov 4, 2020
516e213
dep: update bugsnag-android vendored version to v5.2.3
fractalwrench Nov 4, 2020
1c6bfc9
docs: add changelog entry
fractalwrench Nov 4, 2020
0bcddb9
deps(react-native): Bump bugsnag-cocoa to v6.2.4
nickdowell Nov 4, 2020
63e0cfb
Merge pull request #1119 from bugsnag/update-android-dep
fractalwrench Nov 4, 2020
022dd81
Merge branch 'next' into bugsnag-cocoa-v6.2.4
bengourley Nov 4, 2020
446f151
Merge pull request #1120 from bugsnag/bugsnag-cocoa-v6.2.4
bengourley Nov 4, 2020
acbf5dc
Update changelog version number
imjoehaines Nov 5, 2020
3d4251f
Format changelog consistently
imjoehaines Nov 5, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 26 additions & 1 deletion .buildkite/react-native-pipeline.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
steps:
- label: ':docker: Build and publish JS packages'
timeout_in_minutes: 30
plugins:
- docker-compose#v3.3.0:
build: publisher
Expand All @@ -23,6 +24,7 @@ steps:
- label: ':android: Build RN 0.60 apk'
key: "rn-0-60-apk"
depends_on: "android-builder-image"
timeout_in_minutes: 60
env:
REACT_NATIVE_VERSION: "rn0.60"
plugins:
Expand All @@ -33,6 +35,7 @@ steps:

- label: ':ios: Build RN 0.60 ipa'
key: "rn-0-60-ipa"
timeout_in_minutes: 60
agents:
queue: "opensource-mac-rn"
env:
Expand All @@ -44,6 +47,7 @@ steps:
- label: ':android: Build RN 0.63 apk'
key: "rn-0-63-apk"
depends_on: "android-builder-image"
timeout_in_minutes: 60
env:
REACT_NATIVE_VERSION: "rn0.63"
plugins:
Expand All @@ -54,6 +58,7 @@ steps:

- label: ':ios: Build RN 0.63 ipa'
key: "rn-0-63-ipa"
timeout_in_minutes: 60
agents:
queue: "opensource-mac-rn"
env:
Expand All @@ -65,6 +70,7 @@ steps:
- label: ':android: Build react-navigation 0.60 apk'
key: "react-navigation-0-60-apk"
depends_on: "android-builder-image"
timeout_in_minutes: 60
env:
REACT_NATIVE_VERSION: "rn0.60"
JS_SOURCE_DIR: "react_navigation_js"
Expand All @@ -78,6 +84,7 @@ steps:
# See: PLAT-5173
# - label: ':ios: Build react-navigation 0.60 ipa'
# key: "react-navigation-0-60-ipa"
# timeout_in_minutes: 60
# agents:
# queue: "opensource-mac-rn"
# env:
Expand All @@ -91,6 +98,7 @@ steps:
- label: ':android: Build react-navigation 0.63 apk'
key: "react-navigation-0-63-apk"
depends_on: "android-builder-image"
timeout_in_minutes: 60
env:
REACT_NATIVE_VERSION: "rn0.63"
JS_SOURCE_DIR: "react_navigation_js"
Expand All @@ -104,6 +112,7 @@ steps:
# See: PLAT-5173
# - label: ':ios: Build react-navigation 0.63 ipa'
# key: "react-navigation-0-63-ipa"
# timeout_in_minutes: 60
# agents:
# queue: "opensource-mac-rn"
# env:
Expand All @@ -117,6 +126,7 @@ steps:
- label: ':android: Build react-native-navigation 0.60 apk'
key: "react-native-navigation-0-60-apk"
depends_on: "android-builder-image"
timeout_in_minutes: 60
env:
REACT_NATIVE_VERSION: "rn0.60"
JS_SOURCE_DIR: "react_native_navigation_js"
Expand All @@ -130,6 +140,7 @@ steps:
# See: PLAT-5173
# - label: ':ios: Build react-native-navigation 0.60 ipa'
# key: "react-native-navigation-0-60-ipa"
# timeout_in_minutes: 60
# agents:
# queue: "opensource-mac-rn"
# env:
Expand All @@ -143,6 +154,7 @@ steps:
- label: ':android: Build react-native-navigation 0.63 apk'
key: "react-native-navigation-0-63-apk"
depends_on: "android-builder-image"
timeout_in_minutes: 60
env:
REACT_NATIVE_VERSION: "rn0.63"
JS_SOURCE_DIR: "react_native_navigation_js"
Expand All @@ -156,6 +168,7 @@ steps:
# See: PLAT-5173
# - label: ':ios: Build react-native-navigation 0.63 ipa'
# key: "react-native-navigation-0-63-ipa"
# timeout_in_minutes: 60
# agents:
# queue: "opensource-mac-rn"
# env:
Expand All @@ -168,6 +181,7 @@ steps:

- label: ':android: RN 0.60 Android 9 end-to-end tests'
depends_on: "rn-0-60-apk"
timeout_in_minutes: 60
plugins:
artifacts#v1.2.0:
download: "build/rn0.60.apk"
Expand All @@ -183,6 +197,7 @@ steps:

- label: ':ios: RN 0.60 iOS 12 end-to-end tests'
depends_on: "rn-0-60-ipa"
timeout_in_minutes: 60
plugins:
artifacts#v1.2.0:
download: "build/rn0.60.ipa"
Expand All @@ -198,6 +213,7 @@ steps:

- label: ':android: RN 0.63 Android 9 end-to-end tests'
depends_on: "rn-0-63-apk"
timeout_in_minutes: 60
plugins:
artifacts#v1.2.0:
download: "build/rn0.63.apk"
Expand All @@ -213,6 +229,7 @@ steps:

- label: ':ios: RN 0.63 iOS 12 end-to-end tests'
depends_on: "rn-0-63-ipa"
timeout_in_minutes: 60
plugins:
artifacts#v1.2.0:
download: "build/rn0.63.ipa"
Expand All @@ -228,6 +245,7 @@ steps:

- label: ':android: react-navigation 0.60 Android 9 end-to-end tests'
depends_on: "react-navigation-0-60-apk"
timeout_in_minutes: 60
plugins:
artifacts#v1.2.0:
download: "build/r_navigation_0.60.apk"
Expand All @@ -244,6 +262,7 @@ steps:
# See: PLAT-5173
# - label: ':ios: react-navigation 0.60 iOS 13 end-to-end tests'
# depends_on: "react-navigation-0-60-ipa"
# timeout_in_minutes: 60
# plugins:
# artifacts#v1.2.0:
# download: "build/r_navigation_0.60.ipa"
Expand All @@ -259,6 +278,7 @@ steps:

- label: ':android: react-navigation 0.63 Android 9 end-to-end tests'
depends_on: "react-navigation-0-63-apk"
timeout_in_minutes: 60
plugins:
artifacts#v1.2.0:
download: "build/r_navigation_0.63.apk"
Expand All @@ -275,6 +295,7 @@ steps:
# See: PLAT-5173
# - label: ':ios: react-navigation 0.63 iOS 13 end-to-end tests'
# depends_on: "react-navigation-0-63-ipa"
# timeout_in_minutes: 60
# plugins:
# artifacts#v1.2.0:
# download: "build/r_navigation_0.63.ipa"
Expand All @@ -290,6 +311,7 @@ steps:

- label: ':android: react-native-navigation 0.60 Android 9 end-to-end tests'
depends_on: "react-native-navigation-0-60-apk"
timeout_in_minutes: 60
plugins:
artifacts#v1.2.0:
download: "build/r_native_navigation_0.60.apk"
Expand All @@ -306,7 +328,8 @@ steps:
# See: PLAT-5173
# - label: ':ios: react-native-navigation 0.60 iOS 13 end-to-end tests'
# depends_on: "react-native-navigation-0-60-ipa"
# plugins:
# timeout_in_minutes: 60
# plugins:
# artifacts#v1.2.0:
# download: "build/r_native_navigation_0.60.ipa"
# docker-compose#v3.1.0:
Expand All @@ -321,6 +344,7 @@ steps:

- label: ':android: react-native-navigation 0.63 Android 9 end-to-end tests'
depends_on: "react-native-navigation-0-63-apk"
timeout_in_minutes: 60
plugins:
artifacts#v1.2.0:
download: "build/r_native_navigation_0.63.apk"
Expand All @@ -337,6 +361,7 @@ steps:
# See: PLAT-5173
# - label: ':ios: react-native-navigation 0.63 iOS 13 end-to-end tests'
# depends_on: "react-native-navigation-0-63-ipa"
# timeout_in_minutes: 60
# plugins:
# artifacts#v1.2.0:
# download: "build/r_native_navigation_0.63.ipa"
Expand Down
20 changes: 20 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
# Changelog

## v7.5.2 (2020-11-09)

### Changed

- (react-native): Update bugsnag-cocoa to v6.2.4
- The `onCrashHandler` is no longer called in the event of an OOM. [bugsnag-cocoa#874](https://github.com/bugsnag/bugsnag-cocoa/pull/874)
- os_proc_available_memory() is now used to get free memory, if available. [bugsnag-cocoa#851](https://github.com/bugsnag/bugsnag-cocoa/pull/851)
- CPU and memory impact of leaving breadcrumbs has been reduced. [bugsnag-cocoa#851](https://github.com/bugsnag/bugsnag-cocoa/pull/851)
- Fix app version reported for crashes that occur before an upgrade. [bugsnag-cocoa#862](https://github.com/bugsnag/bugsnag-cocoa/pull/862)
- Catch exceptions when (de)serializing JSON. [bugsnag-cocoa#856](https://github.com/bugsnag/bugsnag-cocoa/pull/856)
- (react-native): Update bugsnag-android to v5.2.3 [#1119](https://github.com/bugsnag/bugsnag-js/pull/1119)
- Flush persisted sessions on launch and on connectivity changes
[bugsnag-android#973](https://github.com/bugsnag/bugsnag-android/pull/973)
- Increase breadcrumb time precision to milliseconds
[bugsnag-android#954](https://github.com/bugsnag/bugsnag-android/pull/954)
- Default to allowing requests when checking connectivity
[bugsnag-android#970](https://github.com/bugsnag/bugsnag-android/pull/970)
- Support changing NDK Event's api key in OnErrorCallback
[bugsnag-android#964](https://github.com/bugsnag/bugsnag-android/pull/964)

## v7.5.1 (2020-10-23)

### Fixed
Expand Down
2 changes: 1 addition & 1 deletion dockerfiles/Dockerfile.expo-publisher
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM node:lts-alpine
FROM node:12-alpine

RUN apk add --update bash git python

Expand Down
2 changes: 2 additions & 0 deletions jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@ module.exports = {
displayName: 'expo',
testMatch: [
testsForPackage('delivery-expo'),
testsForPackage('expo-cli'),
testsForPackage('plugin-expo-app'),
testsForPackage('plugin-expo-device')
]
},
Expand Down
25 changes: 25 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,13 @@
"@babel/preset-react": "^7.9.4",
"@babel/preset-typescript": "^7.10.4",
"@types/jest": "^25.1.2",
"@types/ncp": "^2.0.4",
"@types/node": "^13.7.1",
"@types/node-fetch": "^2.5.7",
"@types/react": "^16.9.23",
"@types/react-test-renderer": "^16.9.2",
"@types/rimraf": "^3.0.0",
"@types/uuid": "^8.3.0",
"@typescript-eslint/eslint-plugin": "^2.19.2",
"@typescript-eslint/parser": "^2.19.2",
"babel-jest": "^26.3.0",
Expand Down
2 changes: 1 addition & 1 deletion packages/expo-cli/lib/test/.gitignore
Original file line number Diff line number Diff line change
@@ -1 +1 @@
.tmp
.tmp*
Original file line number Diff line number Diff line change
@@ -1,46 +1,49 @@
/* global describe, it, expect */

const prepareFixture = require('./lib/prepare-fixture')
const addHook = require('../add-hook')
const { promisify } = require('util')
const { readFile } = require('fs')
/* eslint-disable jest/no-try-expect */
import { prepareFixture } from './lib/prepare-fixture'
import addHook from '../add-hook'
import { promisify } from 'util'
import { readFile } from 'fs'

describe('expo-cli: add-hook', () => {
it('should work on a fresh project', async () => {
const projectRoot = await prepareFixture('blank-00')
const { target: projectRoot, clean } = await prepareFixture('blank-00')
const msg = await addHook(projectRoot)
expect(msg).toBe(undefined)
const appJsonRaw = await promisify(readFile)(`${projectRoot}/app.json`, 'utf8')
const appJson = JSON.parse(appJsonRaw)
expect(appJson.expo.hooks.postPublish[0].file).toBe('@bugsnag/expo/hooks/post-publish.js')
await clean()
})

it('shouldn’t duplicate the hook config', async () => {
const projectRoot = await prepareFixture('already-configured-00')
const { target: projectRoot, clean } = await prepareFixture('already-configured-00')
const msg = await addHook(projectRoot)
expect(msg).toMatch(/already/)
const appJsonRaw = await promisify(readFile)(`${projectRoot}/app.json`, 'utf8')
const appJson = JSON.parse(appJsonRaw)
expect(appJson.expo.hooks.postPublish.length).toBe(1)
await clean()
})

it('should provide a reasonable error when there is no app.json', async () => {
const projectRoot = await prepareFixture('empty-00')
const { target: projectRoot, clean } = await prepareFixture('empty-00')
try {
await addHook(projectRoot)
expect('should not be here').toBe(false)
} catch (e) {
expect(e.message).toMatch(/^Couldn’t find app\.json in/)
await clean()
}
})

it('should provide a reasonable error when app.json is not valid JSON', async () => {
const projectRoot = await prepareFixture('malformed-json-00')
const { target: projectRoot, clean } = await prepareFixture('malformed-json-00')
try {
await addHook(projectRoot)
expect('should not be here').toBe(false)
} catch (e) {
expect(e.message).toMatch(/it wasn’t valid JSON/)
await clean()
}
})

Expand Down
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
/* global describe, it, expect */

const prepareFixture = require('./lib/prepare-fixture')
const detectInstalled = require('../detect-installed')
import { prepareFixture } from './lib/prepare-fixture'
import detectInstalled from '../detect-installed'

describe('expo-cli: detect-installed', () => {
it('should work on a fresh project', async () => {
const projectRoot = await prepareFixture('blank-00')
const { target: projectRoot, clean } = await prepareFixture('blank-00')
const version = await detectInstalled(projectRoot)
expect(version).toBe(undefined)
await clean()
})

it('should work on project with Bugsnag installed', async () => {
const projectRoot = await prepareFixture('already-configured-00')
const { target: projectRoot, clean } = await prepareFixture('already-configured-00')
const version = await detectInstalled(projectRoot)
expect(version).toBe('^7.0.0')
await clean()

const projectRoot2 = await prepareFixture('already-configured-01')
const { target: projectRoot2, clean: clean2 } = await prepareFixture('already-configured-01')
const version2 = await detectInstalled(projectRoot2)
expect(version2).toBe('7.0.0')
await clean2()
})
})
Loading