Tags: polvalente/zigler
Tags
0.11.1 (E-xyza#450) * gets basic downolading working * basic support for zig.get * safety checks on setting up zig toolchain * Improves UX around the custom tar command * completes minisign verification of tar.gz download * fix: replace_lazy doesn't exist in earlier versions of elixir * adds in basic scaffold for link_lib testing * repairs the link_lib issue * pre-1 release * installation info * verup * migrates to zig get system * fixes const pointer issue * adds more changes to 0.11.1-pre-3 * adds zig_get dependency * update mix lock * update installer code * reup zig_get dependency * sane defaults * fixes default zig version finder * new urls for zig downloads * purge dbg * disable leak check on easy_c
updates for 0.10.2 (E-xyza#416) * version updates to fix catch parsing * updates to 0.10.2 with bugfixes
0.10.0 (E-xyza#405) * bump version and write first semantic analysis test * basic test on semantic analysis * add sema test files * tests against semantic analysis basics * major deletions and temporary movement of old code * repacking and managing sigil_z * moves sema into integration, adds sigil_z tests * uses zig json to communicate types * integers up to u64 can be correctly marshalled * gets tuples and maps working * gets tuples and maps working * wrap/unwrap out of ints and make ints correct * integer range testingn * adds checking on large integers * enum conversions working well * enum type and conversion code * nan and inf support for floating points * adds code files for change * bool support on the way to struct support * begin process of rebuilding zig parser * begins process of using pegasus-parsed zig * adds support for understanding basic tests * first commit * integration of zig_parser * clears out all errors * basic in/out functionality implemented * first array tests working * gets basic arrays working * successful get of mutable array * array error identification test * tests error messages on array marshalling * initial attempt at support for mutable structs * basic nullable tests * completes basic slice tests, disables broken datastructure tests * clean up old tests, impl fastlane for array makes * completed fastlanes for slices * adds support for mutable struct * basic manypointer input completed * manypointer compile error and sentinel support * repairs struct datastructure * completes out manypointer tests * tests against comptime int and comptime float * cpointers work for single structs * support for inputs of various pointers * completes happy path for cpointer; still need to handle errors * completes error testing on c pointers * refactors make to take a make option * bringing 'get' up to speed with internal error marshalling * get reform for all basic types * cleanup for all basic types with name resolution * slices working * fixes struct error reporting * completes get checking routines * updates to new error format * adds support for void returns * easy_c enablement * enables aliasing * refactors type serialization * slice output as binary now supported * fixes array form errors * adds tests on error atom and error pair * 0.10.0 dev erlang (E-xyza#346) * memory leak testing, but no provisions for cleanup * leak checks on function ingress * makes it so that recompilation purges modules, ensuring that the new code propagates * converts over to pushing results to get_result tag * compilation working, now need to implement cleanup methods * begins creating parse transform code * extracts zig compiler instructions out of the parse transform info * generalizes building skeletons for ast * basic rebuilded erlang * put eex into the list of applications * adds eex into required libs * adds eex capability * Path.to_string -> to_string * instrument sema * updates refactoring, with inspection * adds in fetching of zig executable * make sure logger is started * investigate sema error * better command reporting * better src dir handling * rename src_dir to code_dir * look at ast * fix stray do * redo some parse transform bits * ensures jason lib * updates jason and creates ability to load jason lib * instrument compiler results * more instrumentation * fixes library resolution * fixes transitive dependency issue * make sure the parser is fed a binary * allows customization of ebin_dir * changes to use proper overlay strategy * use priv_dir for erlang * better treatment of priv dir * proper parse transform ordering * debug * makes zig code work correctly now * typo * correct sort_by semantics * ast watching * do this segment correctly * add->append * passes function code over to zigler * create the init entrypoint * basically puts rendered erlang in there correctly * correct representation of erlang code * introspection * cleans up rendering * 0.10.0 dev erlang (E-xyza#347) * memory leak testing, but no provisions for cleanup * leak checks on function ingress * makes it so that recompilation purges modules, ensuring that the new code propagates * converts over to pushing results to get_result tag * compilation working, now need to implement cleanup methods * begins creating parse transform code * extracts zig compiler instructions out of the parse transform info * generalizes building skeletons for ast * basic rebuilded erlang * put eex into the list of applications * adds eex into required libs * adds eex capability * Path.to_string -> to_string * instrument sema * updates refactoring, with inspection * adds in fetching of zig executable * make sure logger is started * investigate sema error * better command reporting * better src dir handling * rename src_dir to code_dir * look at ast * fix stray do * redo some parse transform bits * ensures jason lib * updates jason and creates ability to load jason lib * instrument compiler results * more instrumentation * fixes library resolution * fixes transitive dependency issue * make sure the parser is fed a binary * allows customization of ebin_dir * changes to use proper overlay strategy * use priv_dir for erlang * better treatment of priv dir * proper parse transform ordering * debug * makes zig code work correctly now * typo * correct sort_by semantics * ast watching * do this segment correctly * add->append * passes function code over to zigler * create the init entrypoint * basically puts rendered erlang in there correctly * correct representation of erlang code * introspection * cleans up rendering * adds quote_erl facility for easier erlang quoting * gets erlang rendering to be much less brain-meltingly hard * nicely realized erlang support and test suite * adds erlang section to the readme * 0.10.0 dev erlang (E-xyza#354) * bool support on the way to struct support * begin process of rebuilding zig parser * begins process of using pegasus-parsed zig * adds support for understanding basic tests * first commit * integration of zig_parser * clears out all errors * basic in/out functionality implemented * first array tests working * gets basic arrays working * successful get of mutable array * array error identification test * tests error messages on array marshalling * initial attempt at support for mutable structs * basic nullable tests * completes basic slice tests, disables broken datastructure tests * clean up old tests, impl fastlane for array makes * completed fastlanes for slices * adds support for mutable struct * basic manypointer input completed * manypointer compile error and sentinel support * repairs struct datastructure * completes out manypointer tests * tests against comptime int and comptime float * cpointers work for single structs * support for inputs of various pointers * completes happy path for cpointer; still need to handle errors * completes error testing on c pointers * refactors make to take a make option * bringing 'get' up to speed with internal error marshalling * get reform for all basic types * cleanup for all basic types with name resolution * slices working * fixes struct error reporting * completes get checking routines * updates to new error format * adds support for void returns * easy_c enablement * enables aliasing * refactors type serialization * slice output as binary now supported * fixes array form errors * adds tests on error atom and error pair * memory leak testing, but no provisions for cleanup * leak checks on function ingress * makes it so that recompilation purges modules, ensuring that the new code propagates * converts over to pushing results to get_result tag * compilation working, now need to implement cleanup methods * begins creating parse transform code * extracts zig compiler instructions out of the parse transform info * generalizes building skeletons for ast * basic rebuilded erlang * put eex into the list of applications * adds eex into required libs * adds eex capability * Path.to_string -> to_string * instrument sema * updates refactoring, with inspection * adds in fetching of zig executable * make sure logger is started * investigate sema error * better command reporting * better src dir handling * rename src_dir to code_dir * look at ast * fix stray do * redo some parse transform bits * ensures jason lib * updates jason and creates ability to load jason lib * instrument compiler results * more instrumentation * fixes library resolution * fixes transitive dependency issue * make sure the parser is fed a binary * allows customization of ebin_dir * changes to use proper overlay strategy * use priv_dir for erlang * better treatment of priv dir * proper parse transform ordering * debug * makes zig code work correctly now * typo * correct sort_by semantics * ast watching * do this segment correctly * add->append * passes function code over to zigler * create the init entrypoint * basically puts rendered erlang in there correctly * correct representation of erlang code * introspection * cleans up rendering * 0.10.0 dev erlang (E-xyza#346) * memory leak testing, but no provisions for cleanup * leak checks on function ingress * makes it so that recompilation purges modules, ensuring that the new code propagates * converts over to pushing results to get_result tag * compilation working, now need to implement cleanup methods * begins creating parse transform code * extracts zig compiler instructions out of the parse transform info * generalizes building skeletons for ast * basic rebuilded erlang * put eex into the list of applications * adds eex into required libs * adds eex capability * Path.to_string -> to_string * instrument sema * updates refactoring, with inspection * adds in fetching of zig executable * make sure logger is started * investigate sema error * better command reporting * better src dir handling * rename src_dir to code_dir * look at ast * fix stray do * redo some parse transform bits * ensures jason lib * updates jason and creates ability to load jason lib * instrument compiler results * more instrumentation * fixes library resolution * fixes transitive dependency issue * make sure the parser is fed a binary * allows customization of ebin_dir * changes to use proper overlay strategy * use priv_dir for erlang * better treatment of priv dir * proper parse transform ordering * debug * makes zig code work correctly now * typo * correct sort_by semantics * ast watching * do this segment correctly * add->append * passes function code over to zigler * create the init entrypoint * basically puts rendered erlang in there correctly * correct representation of erlang code * introspection * cleans up rendering * adds quote_erl facility for easier erlang quoting * gets erlang rendering to be much less brain-meltingly hard * nicely realized erlang support and test suite * adds erlang section to the readme * cleans up leaks correctly * housecleaning of old content * semantic analysis of resources * sema working for resource, but the resource table isn't constructed yet * gets resources properly storing as references * gets working with builtin scalars * code now supports use of pids a terms * enables ignoring functions * Experimental better root (E-xyza#358) * enables ignoring functions * basic conformance to new resource scheme * gets new resource scheme up and running * gets resource releasing work * gets the keep operation working * gets resource/resource cleanup working as expected * merge conflict on alias test * further merge conflict resolution * mostly working * this concludes references being a done thing * code compiles again with raw, but not bug-free. * enables ... notation * adds egress typespec testing * basics of typespecs * support for packed structs * adds cpointer support * basics for typespecs done * gets basic parameter stuff working * refactors return typespec testing * works for functions with return assistance * gets to the stage where we're compiling * fixes output_as -> output_type (internally) * clears up remaining typespec issues * gets errors working * gets basic stacktrace swapping working * gets erlang compilation working * more consistent file/line resolution * dirty io and dirty cpu modes, via basic * refactors synchronous to basic * (super-failing), refactored to saner options handling * first major refactoring to correct nif/function organizational mode * basic compilation pipelines now working * removes segfaulting cblas code (for now) * mostly refactored, except for error information * error returns now working marshalling content * completes marshalling of big integers * gets more robust erlang support and successful refactoring * allocator.zig: implement free for large_beam_allocator (E-xyza#381) Remove the NoOp implementation and actually call alignedFree * Threaded nifs (E-xyza#393) * gets basic threading to work * on the way to completing threaded, need to do proper cmpexchg stuff first * touchups for talk * updates to include beam.compare * adds comment * marks off the type as unusable * nerfs zero and one item enums * maximally correct implementation of the threads api, but still segfaults on join * gets c_blas working again * tests easy_c erlang and also begins syntax error * syntax error resolution * gets two different levels of manual yielding examples done * switches over to using payload/call mechanism * basic framework for running threads successfully compiles * gets a proper yielding system with threads up and running * with control flow now compiling correctly * returns result without segfaulting * segfault-free manual threading completed * puts together all of the bits for a functional threaded system * basic reorganization and correctifying * threaded now works in erlang * erroring basics up and running * gets the basics in place * gets most parts compiling, but segfaults * fixes typo * integration of working threaded model * touchup on enum error * Refactor sema (E-xyza#397) * touchup on enum error * adds in some basic updates starting yielding * zig doc-related changes * restores other allocators * gets past initial analysis on basic nif generation * intermediate attempts at refactoring the compilation cycle * moves ignores to the correct operation order * fix: basic erroring * fixes gpa leak content except with proper deinitialization * removes unneccessary assembler tests * fixes manypointer error message * repairs struct_not_pub errors * fixes sema unit tests * fixes error prong wierdness and has sane stacktraces * restores erlang functionality * completes testing overriding typespecs * gets zig doc working, bumps zig parser * Mac os (E-xyza#398) * gets MacOS working, isolates common problems in MacOS: threading, erroring, and two mystery failures * resolves issue with allocator threadlocal not being initialized correctly on macOS * resolves allocators segfault for macOS * restores beam allocator everywhere, so there's no issues with segfaults * fixes last stray test errors --------- Co-authored-by: Isaac Yonemoto <[email protected]> * reverts to putting .so libraries in priv * makes command respect targetting options when nerves compiles from mac * Nerves support (E-xyza#400) * reverts to putting .so libraries in priv * makes command respect targetting options when nerves compiles from mac * fixes CI? * some credo fixes * fixes workflows and makes sure CI can download zig * removes stray dbg call * removes dependency * adds direct c compilation options * baisc zig documentation * documentation on get/make * full documentation of beam.zig * docup plus document send quirk with raw nif * reorganization of module sidebar * basics on getting guides working * starts collections * builds guides 1 and 2 * begin writing allocators guides * completes allocators documentation * first nif options guide * completes module options * explanation for deps * completes guides for c integration * fixes binary structs * isolates segfault issue, we should investigate more * fixes threading segfault * minor doc change * fix mix doc problem * nerves cc affordance * fixes zig delete macos lib * fixes collections docs * changes macos version * remove macos CI until x86 testing can be done better * fix segfault, document time limit, increase to 750 us * update versions --------- Co-authored-by: Riccardo Binetti <[email protected]> Co-authored-by: Isaac Yonemoto <[email protected]>
0.9.1 final touches (E-xyza#313) * removes the hacky_env no longer needed for macos * updates the changelog
Merge pull request E-xyza#247 from ityonemo/devel but actually add changes
Merge pull request E-xyza#235 from ityonemo/nerves-0.7.1 Nerves 0.7.1
PreviousNext