Removing some architectures, platforms, or code paths, better support for others
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Refactoring
- Chiarezza
- Da chiarire
- Stato di attività
- Attiva
- Stack tecnologico
- cpp
- Ambito
- build-system, ci-cd, devops
Direzione di ricerca
L’issue non indica file, test o punti di ingresso. Inizia facendo un inventario dei percorsi esistenti per 32-bit, x86 macOS, Android GCC, gcw0, gph, Blackberry, WebOS, allocation, Windows ARM, mobile, Emscripten/WASM e GC, quindi esamina l’Android CI PR esistente. Il lavoro sarebbe completato quando esistessero una decisione e un’implementazione con ambito separato per ogni rimozione o aggiunta di CI selezionata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I've been thinking about all the various different code paths and platforms which are scattered around and if we could trim some of them down and add better support in the form of CI testing for other platforms.
Removals
32bit
Do we need to support 32bit systems any more? Mobile is all 64bit now, Apple is all 64bit, Windows 11 only provides 64bit images, most Linux distros only provide 64bit images. I'm guessing you can still get very low powered 32bit arm chips, but I can't imagine hxcpp is going to be running on them.
There's very little cpp code which is 32/64 conditional, but it would allow a good bit of cleanup in the build tool and xml toolchains.
x86 MacOS
Current version of MacOS is the last version to support x86, and if past MacOS versions support periods are to go by support will end late 27 / early 28. They've also said they're getting rid of all the translation stuff mid 27. So this seems like a platform which will soon have very little use.
Android GCC
I have basically no mobile knowledge, but my understanding is that now clang is the only way to go, so is there any reason to keep the gcc android toolchain around?
gcw0 and gph
I don't know what these are, gph especially hasn't been modified in years.
Blackberry
I don't think Blackberry devices exists any more, wasn't the last revival attempt was just an Android device? I can't imagine we need this.
WebOS
WebOS is still a thing, but this toolchain hasn't been modified since 2015. Does it still work, does anyone use it?
Non-Aligned Allocs
I think it was something related to atomics where aligned allocations are now always used, is there any use for keeping the unaligned code around? It seems like it's now primed to fall into bit rot like the non smart strings paths.
Better Support / Additions
Windows ARM
Some manufacturers seem to be having another crack at Windows on ARM, probably won't take off like the other attempts but it might be nice to run Windows ARM as part of the CI. Github provide Windows 11 ARM images.
Mobile
There's an open PR to get Android building on the CI, but it would be nice to have one for iOS as well. I don't know how easy it would then be to have the tests run in some sort of simulator? As mentioned above, I have no mobile experience.
Emscripten/WASM
I would have put this under the "is anyone using this" given that Haxe has a JS output, but Hugh has been committing some fixes for it. It doesn't seem like it should be that difficult to get it building and running tests on the CI.
Different GC Paths
It seems like most test code is ran under the standard non moving GC and then some under the generational GC, I don't think any are ran with just the moving option. It would be nice if some GC specific tests could be ran on a wider range of GC options to catch issues. Hopefully this wouldn't balloon the CI too much.
- Lingua principale
- C++
- Stelle
- 330
- Fork
- 230
- Merge medio
- 1g 6h
- PR unite (30g)
- 9
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di HaxeFoundation/hxcpp
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
HaxeFoundation/hxcpp#1217 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
HaxeFoundation/hxcpp#1396 ·
I maintainer di solito rispondono entro 1 giorno
-
Std.isOfType Enum and ClassAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
HaxeFoundation/hxcpp#1391 · 6 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
HaxeFoundation/hxcpp#1380 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
HaxeFoundation/hxcpp#1365 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di HaxeFoundation/hxcpp
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
lldb
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
llvm/llvm-project#229592 · 11 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 94/100
llvm/offload-test-suite#1560 ·
I maintainer di solito rispondono entro 1 giorno
-
agent:Windows bug MEDIUM performance tooling
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno