Release a macOS disk image (.dmg) for Apple silicon
Los mantenedores suelen responder en 1 día
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Releases ship Linux archives only. On macOS, the README sends users to a build from source, with Homebrew's LLVM 20. A ctrace built that way loads LLVM, Clang, Z3 and zstd from Homebrew by absolute path (otool -L build/ctrace), and OpenSSL and Brotli too, which cpp-httplib links whenever it finds them: it cannot be copied to another Mac.
To do
- A "Build macOS binary (arm64)" job in
release-binaries.yml, run on every pull request like the Linux ones, that producescoretrace-<version>-macos-arm64.dmgand its.sha256, with the Python analyzer. - The image holds one folder laid out as the Linux archive. The Homebrew libraries
ctraceloads ship inlib/, and every Mach-O file loads them relative to itself: the macOS counterpart of thepatchelfstep. - Licenses as on Linux: an inventory of what the image ships, the license and version of each Homebrew formula collected from its keg, and a packaging that fails on an unlisted library.
- Before the upload, the image is mounted, its folder copied out and run with Homebrew moved away: the Python analyzer, a C analysis and a concurrency analysis.
- On a tag, the image is attached to the release with its provenance attestation.
- The README says how to install it, and how to remove the Gatekeeper mark.
Out of scope
- Signing with a Developer ID, and notarization. CoreTrace has no Apple Developer account. The image is signed ad hoc, which Apple silicon requires; macOS refuses to run a
ctracethat a browser downloaded until the quarantine mark is removed. Once an account exists: import the certificate into a temporary keychain, sign each Mach-O file withcodesign --options runtime --timestamp, then runxcrun notarytool submit --waitandxcrun stapler stapleon the image. - Intel Macs. They need an x86_64 runner and Homebrew libraries built for it.
- The runtime analyzer. It is released for Linux only.
Acceptance
- The job passes on pull requests, and the image it builds runs from any folder, without Homebrew.
check-licenses.shpasses on the image with the macOS inventory.- A release attaches the
.dmg, its.sha256and its attestation.
- Lenguaje dominante
- C++
- Estrellas
- 5
- Forks
- 4
- Merge medio
- 1 h 9 min
- PR fusionados (30 d)
- 81
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de CoreTrace/coretrace
-
chore good first issue severity/minor
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
Los mantenedores suelen responder en 1 día
-
build severity/minor
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
CoreTrace/coretrace#176 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
build good first issue severity/minor
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
test: add unit tests for ctrace::RunDirectoryPosiblemente ocupada @tecnolgd la tomó hace 3 días. Abiertogood first issue test
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
CoreTrace/coretrace#164 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Builds without a build type are unoptimized: the README's commands and CI's main jobPosiblemente ocupada @SizzleUnrlsd la tomó hace 1 día. Abiertobuild severity/minor
CoreTrace/coretrace#192 · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de CoreTrace/coretrace
Issues similares
-
accessibility good first issue hacktoberfest help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
OpenChemistry/avogadrolibs#3184 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Tracktion/tracktion_engine#475 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
redis/memtier_benchmark#732 ·
Los mantenedores suelen responder en 1 día
-
binding:web core docs p3
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
RunanywhereAI/runanywhere-sdks#1123 ·
Los mantenedores suelen responder en 1 día
-
ai_p3 comp-data-types
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
ClickHouse/ClickHouse#126316 ·
Los mantenedores suelen responder en 1 día