mirror of
https://github.com/hanzoai/sentinel.git
synced 2026-09-29 22:34:33 +00:00
FSL-1.0-Apache-2.0 grants us the code, not the name. "Sentry" is Functional Software's trademark, so every place the running app says it to a user -- page titles, onboarding, empty states, toasts, settings copy, the self-hosted footer -- now says Sentinel. Attribution is the other half of the deal and stays untouched: upstream copyright headers, LICENSE, NOTICE. So does anything where the mark is a fact rather than a brand -- @sentry/* packages, sentry-cli, the wizard and bundler plugins, docs.sentry.io, the whole gettingStartedDocs tree. Renaming those would leave instructions that no longer work. Nothing structural moved. No import, identifier, route path, feature flag, API field or test id changed; the diff is 312 lines in and 312 out. Colocated specs were updated in lockstep with the copy they assert. Marketing and community links point at hanzo.ai, only where a real page exists to point at. Co-authored-by: Hanzo Dev <[email protected]>
62 lines
1.9 KiB
TypeScript
62 lines
1.9 KiB
TypeScript
import {t} from 'sentry/locale';
|
|
import type {DebugFile} from 'sentry/types/debugFiles';
|
|
import {DebugFileFeature, DebugFileType} from 'sentry/types/debugFiles';
|
|
|
|
const PRETTY_SYMBOL_TYPES = {
|
|
proguard: t('ProGuard mapping'),
|
|
breakpad: t('Breakpad'),
|
|
macho: t('Mach-O'),
|
|
elf: t('ELF'),
|
|
pe: t('PE'),
|
|
pdb: t('PDB'),
|
|
portablepdb: t('Portable PDB'),
|
|
sourcebundle: t('SourceBundle'),
|
|
wasm: t('WebAssembly'),
|
|
bcsymbolmap: t('BCSymbolMap'),
|
|
il2cpp: t('IL2CPP mapping'),
|
|
};
|
|
|
|
const PRETTY_FILE_TYPES = {
|
|
[DebugFileType.EXE]: t('executable'),
|
|
[DebugFileType.DBG]: t('debug companion'),
|
|
[DebugFileType.LIB]: t('dynamic library'),
|
|
};
|
|
|
|
/**
|
|
* Give a pretty human-readable description of a `DebugFile`.
|
|
* For example "ELF dynamic library (x86_64)"
|
|
*/
|
|
export function getPrettyFileType(dsym: DebugFile) {
|
|
const {symbolType, data, cpuName} = dsym;
|
|
|
|
const prettySymbolType = PRETTY_SYMBOL_TYPES[symbolType] ?? symbolType;
|
|
const prettyFileType = PRETTY_FILE_TYPES[data?.type ?? '_'];
|
|
const prettyCpuName =
|
|
cpuName && cpuName !== 'any' && cpuName !== 'unknown' ? `(${cpuName})` : null;
|
|
|
|
return [prettySymbolType, prettyFileType, prettyCpuName].filter(Boolean).join(' ');
|
|
}
|
|
|
|
export function getFeatureTooltip(feature: DebugFileFeature) {
|
|
switch (feature) {
|
|
case DebugFileFeature.SYMTAB:
|
|
return t(
|
|
'Symbol tables are used as a fallback when full debug information is not available'
|
|
);
|
|
case DebugFileFeature.DEBUG:
|
|
return t(
|
|
'Debug information provides function names and resolves inlined frames during symbolication'
|
|
);
|
|
case DebugFileFeature.UNWIND:
|
|
return t(
|
|
'Stack unwinding information improves the quality of stack traces extracted from minidumps'
|
|
);
|
|
case DebugFileFeature.SOURCES:
|
|
return t(
|
|
'Source code information allows Sentinel to display source code context for stack frames'
|
|
);
|
|
default:
|
|
return null;
|
|
}
|
|
}
|