Skip to content

Commit bc6b8e5

Browse files
committed
Merge branch 'master' into feature/wasm
* master: (22 commits) fix(debuginfo): Update dmsort to 1.0.1 to avoid panic due to UB (#287) ci: Use GHA instead of zeus (#286) ref: Introduce explicit NameMangling and better DemangleOptions (#275) meta: Bump all semver-major dependencies (#283) feat(demangle): Update swift demangler to 5.3 (#282) ref: Add File/FunctionIterator and lifetimes to DebugSession (#279) fix: Implement new clippy advice (#280) fix: Add a SymbolIterator and Lifetimes to ObjectLike trait (#277) ci: Switch to GitHub Actions (#273) ref: Introduce feature flags for demangling languages (#274) ref(common): Change InstructionInfo setters to Option (#272) ref: Remove all deprecated items (#271) ref: Replace failure with std::error::Error (#264) ref: Remove deprecated proguard support (#267) build: Reorganize the workspace (#266) build(unreal): Rename with-serde to serde (#265) fix(debuginfo): Detect mangled anonymous namespaces in PDB inlinees (#261) release: 7.5.0 meta: Update changelog for 7.5.0 feat: Unsafe transmute for PDB symbols (#258) ...
2 parents 26b819d + f4489e0 commit bc6b8e5

File tree

265 files changed

+3475
-4055
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

265 files changed

+3475
-4055
lines changed

.craft.yml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,21 @@
1-
---
2-
minVersion: "0.9.0"
1+
minVersion: "0.13.2"
32
github:
43
owner: getsentry
54
repo: symbolic
5+
changelogPolicy: auto
6+
7+
statusProvider:
8+
name: github
9+
artifactProvider:
10+
name: github
11+
612
preReleaseCommand: bash scripts/bump-version
713
targets:
814
- name: crates
915
- name: pypi
1016
- name: github
11-
changelogPolicy: simple
1217
requireNames:
13-
- /^symbolic-.*-py2.py3-none-macosx_10_13_x86_64.whl$/
18+
- /^symbolic-.*-py2.py3-none-macosx_10_15_x86_64.whl$/
1419
- /^symbolic-.*-py2.py3-none-manylinux2010_i686.whl$/
1520
- /^symbolic-.*-py2.py3-none-manylinux2010_x86_64.whl$/
1621
- /^symbolic-.*.zip$/

.github/workflows/ci.yml

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
- "release/**"
8+
pull_request:
9+
10+
jobs:
11+
lints:
12+
name: Style/Linting
13+
runs-on: ubuntu-latest
14+
15+
steps:
16+
- uses: actions/checkout@v2
17+
with:
18+
submodules: recursive
19+
20+
- uses: actions-rs/toolchain@v1
21+
with:
22+
profile: minimal
23+
toolchain: stable
24+
override: true
25+
components: rustfmt, clippy
26+
27+
- uses: actions/setup-python@v2
28+
with:
29+
python-version: 3.7
30+
31+
- uses: Swatinem/rust-cache@v1
32+
33+
- name: Run cargo fmt
34+
uses: actions-rs/cargo@v1
35+
with:
36+
command: fmt
37+
args: --all -- --check
38+
39+
- run: make style-python
40+
41+
- name: Run cargo clippy
42+
uses: actions-rs/clippy-check@v1
43+
with:
44+
token: ${{ secrets.GITHUB_TOKEN }}
45+
args: --all-features --workspace --tests --examples -- -D clippy::all
46+
47+
- run: make lint-python
48+
49+
test-rust:
50+
strategy:
51+
fail-fast: false
52+
matrix:
53+
os: [ubuntu-latest, macos-latest]
54+
55+
name: Rust Test on ${{ matrix.os }}
56+
runs-on: ${{ matrix.os }}
57+
58+
steps:
59+
- uses: actions/checkout@v2
60+
with:
61+
submodules: recursive
62+
63+
- uses: actions-rs/toolchain@v1
64+
with:
65+
profile: minimal
66+
toolchain: stable
67+
override: true
68+
69+
- uses: Swatinem/rust-cache@v1
70+
71+
- name: Run cargo test
72+
uses: actions-rs/cargo@v1
73+
with:
74+
command: test
75+
args: --workspace --all-features
76+
77+
test-python:
78+
strategy:
79+
fail-fast: false
80+
matrix:
81+
os: [ubuntu-latest, macos-latest]
82+
83+
name: Python Test on ${{ matrix.os }}
84+
runs-on: ${{ matrix.os }}
85+
86+
env:
87+
SYMBOLIC_DEBUG: 1
88+
89+
steps:
90+
- uses: actions/checkout@v2
91+
with:
92+
submodules: recursive
93+
94+
- uses: actions-rs/toolchain@v1
95+
with:
96+
profile: minimal
97+
toolchain: stable
98+
override: true
99+
100+
- uses: actions/setup-python@v2
101+
with:
102+
python-version: 3.7
103+
104+
- uses: Swatinem/rust-cache@v1
105+
106+
- run: make test-python

.github/workflows/release.yml

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
branches:
6+
- "release/**"
7+
8+
jobs:
9+
python-wheel-mac:
10+
name: Python macOS
11+
runs-on: macos-10.15
12+
13+
steps:
14+
- uses: actions/checkout@v2
15+
with:
16+
submodules: recursive
17+
18+
- uses: actions-rs/toolchain@v1
19+
with:
20+
toolchain: stable
21+
profile: minimal
22+
override: true
23+
24+
- uses: actions/setup-python@v2
25+
with:
26+
python-version: 2.7
27+
28+
- run: make wheel SYMBOLIC_PYTHON=python2
29+
30+
- uses: actions/upload-artifact@v2
31+
with:
32+
name: ${{ github.sha }}
33+
path: py/dist/*
34+
35+
python-wheel-linux:
36+
strategy:
37+
fail-fast: false
38+
matrix:
39+
build-arch: [i686, x86_64]
40+
41+
name: Python Linux ${{ matrix.build-arch }}
42+
runs-on: ubuntu-latest
43+
44+
steps:
45+
- uses: actions/checkout@v2
46+
with:
47+
submodules: recursive
48+
49+
- uses: actions-rs/toolchain@v1
50+
with:
51+
toolchain: stable
52+
profile: minimal
53+
override: true
54+
55+
- name: Build in Docker
56+
run: make wheel-manylinux IMAGE=quay.io/pypa/manylinux2010_${{ matrix.build-arch }}
57+
58+
- uses: actions/upload-artifact@v2
59+
with:
60+
name: ${{ github.sha }}
61+
path: py/dist/*
62+
63+
sdist:
64+
name: Python sdist
65+
runs-on: ubuntu-latest
66+
67+
steps:
68+
- uses: actions/checkout@v2
69+
70+
- uses: actions/setup-python@v2
71+
with:
72+
python-version: 2.7
73+
74+
- run: make sdist
75+
76+
- uses: actions/upload-artifact@v2
77+
with:
78+
name: ${{ github.sha }}
79+
path: py/dist/*

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
# Rust
55
target/
66
**/*.rs.bk
7-
# Only ignore the library's lockfile, not for the CABI
8-
/Cargo.lock
7+
Cargo.lock
98

109
# Python
1110
*.pyc

.gitmodules

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[submodule "minidump/third_party/breakpad"]
2-
path = minidump/third_party/breakpad
2+
path = symbolic-minidump/third_party/breakpad
33
url = https://github.com/getsentry/breakpad
44
shallow = true
55
[submodule "minidump/third_party/lss"]
6-
path = minidump/third_party/lss
6+
path = symbolic-minidump/third_party/lss
77
url = https://github.com/getsentry/linux-syscall-support

.travis.yml

Lines changed: 0 additions & 77 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,35 @@
11
# Changelog
22

3+
## Unreleased
4+
5+
**Breaking Changes**:
6+
7+
- Usage of `failure` was removed, and all Error types were changed to only implement `std::error::Error` and related traits.
8+
- `symbolic-proguard` was removed in favor of the `proguard` crate. Proguard is still supported via `symbolic-cabi` and the python API however.
9+
- Deprecated APIs have been removed:
10+
- `InstructionInfo`'s fields are no longer public.
11+
- `pointer_size`, `instruction_alignment` and `ip_register_name` have moved from `Arch` to `CpuFamily`.
12+
- `Arch::register_name` as been moved to `CpuFamily::cfi_register_name`.
13+
- `Dwarf::raw_data` and `Dwarf::section_data` have been replaced with the `raw_section` and `section` APIs.
14+
- `Unreal4ContextRuntimeProperties::misc_primary_cpu_brand` is has been removed.
15+
- Deprecated Python APIs have been removed:
16+
- `CodeModule.id` and `CodeModule.name` Use `debug_id` and `code_file`, respectively.
17+
- `DemangleFormat` and public fields of `DemangleOptions` have been removed in favor of builder methods on `DemangleOptions`.
18+
- `Name::new` now takes both the `NameMangling` state, and the `Language` explicitly.
19+
20+
## 7.5.0
21+
22+
**Changes**:
23+
24+
- Add missing unreal data attributes (`EngineData` and `GameData`). ([#257](https://github.com/getsentry/symbolic/pull/257))
25+
- Expose binary names for ELF and MachO ([#252](https://github.com/getsentry/symbolic/pull/252))
26+
- Mark enums as `non_exhaustive`. ([#256](https://github.com/getsentry/symbolic/pull/256))
27+
- Add method to create Archive from bytes. ([#250](https://github.com/getsentry/symbolic/pull/250))
28+
29+
**Bug Fixes**:
30+
31+
- Fix compilation errors on nightly Rust due to a lifetime mismatch. This is temporarily solved with a statically verified unsafe transmute, which will be replaced in an upcoming breaking change. ([#258](https://github.com/getsentry/symbolic/pull/258))
32+
333
## 7.4.0
434

535
**Deprecations**:

0 commit comments

Comments
 (0)