Skip to content

Commit 749f1a8

Browse files
authored
feat(symsorter): Allow + in bundle IDs (#1772)
1 parent 3ce9a13 commit 749f1a8

File tree

2 files changed

+22
-2
lines changed

2 files changed

+22
-2
lines changed

CHANGELOG.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@
88
- [changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#0100)
99
- [diff](https://github.com/getsentry/sentry-native/compare/0.9.1...0.10.0)
1010

11+
### Various fixes & improvements
12+
- Added support for + in SymSorter Bundle ID's. ([#1772](https://github.com/getsentry/symbolicator/pull/1772))
13+
1114
## 25.8.0
1215

1316
### Dependencies
@@ -93,7 +96,7 @@
9396
### Various fixes & improvements
9497

9598
- Speed up large file downloads, by using multiple concurrent http range requests. ([#1670](https://github.com/getsentry/symbolicator/pull/1670))
96-
- Validate stack scanned candidate frames against available CFI unwind information.
99+
- Validate stack scanned candidate frames against available CFI unwind information.
97100
This reduces hallucinated frames when relying on stack scanning. ([#1651](https://github.com/getsentry/symbolicator/pull/1651))
98101
- Logic for setting the in-app property on frames has been removed from JavaScript symbolication. ([#1656](https://github.com/getsentry/symbolicator/pull/1656))
99102
- Added support for indexes for symbol sources.

crates/symsorter/src/utils.rs

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use symbolic::common::ByteView;
1010
use symbolic::debuginfo::sourcebundle::{SourceBundleWriter, SourceFileDescriptor};
1111
use symbolic::debuginfo::{Archive, FileEntry, FileFormat, Object, ObjectKind};
1212

13-
static BAD_CHARS_RE: LazyLock<Regex> = LazyLock::new(|| Regex::new(r"[^a-zA-Z0-9.,-]+").unwrap());
13+
static BAD_CHARS_RE: LazyLock<Regex> = LazyLock::new(|| Regex::new(r"[^a-zA-Z0-9.,+-]+").unwrap());
1414

1515
/// Console logging for the symsorter app.
1616
#[macro_export]
@@ -120,3 +120,20 @@ pub fn create_source_bundle(path: &Path, unified_id: &str) -> Result<Option<Byte
120120
}
121121
Ok(None)
122122
}
123+
124+
#[cfg(test)]
125+
mod tests {
126+
use super::*;
127+
128+
#[test]
129+
fn is_bundle_id_checks() {
130+
let good_input_id = "10.3_ABCD";
131+
assert!(is_bundle_id(good_input_id));
132+
133+
let bad_input_id = "10.3.*";
134+
assert!(!is_bundle_id(bad_input_id));
135+
136+
let unreal_bundle_id = "++lyra+main-CL-12345";
137+
assert!(is_bundle_id(unreal_bundle_id));
138+
}
139+
}

0 commit comments

Comments
 (0)