Changelog for Nimjl. Date in format YYYY_MM_DD
- Repo moved to SciNim
- Added activate option in init to start-up Julia in a virtual environment
- Added Hook function at init to execute code : BEFORE jl_init() is called; AFTER jl_init() and Pkg.activate() is called but BEFORE Pkg.add calls and BEFORE the embedded code is passed through
eval
function. - Order of update is now relevant
- Updated readme and examples
- Inexisting (nimble wasn't up to date when tagged)
- Clean-up some code
- Added more type in evaluation of Dict and Tuples
- Improve loading a Package at init when the Package is already present (speed up init phase)
- Small CI change
- Fixed #18
- Improve Pkg template to handle version, url etc; parameters :
- See ex11
Julia.init(1): Pkg: add(name="Polynomials", version="3.0.0") add(name="LinearAlgebra") add("DSP") Embed: file("myfile.jl")
- Bugfix related to JULIA_PATH not being defined
- Add nthreads argument to Julia.init() to start the Julia VM on multiple threads
- Normalize path during compilation
- Various docs improvements
- Add Julia.useModule alias for jlUseModule
- Add Julia.includeFile (include is reserved keyword) alias for jlInclude
- Add mechanism to embed julia files at compile-time and run the code at init for an easy way to distribute binary with Julia code contained
- Add Pkg template to easily install new Julia package during init ; it is also compatible with the embedding stuff :
- See ex09
Julia.init: Pkg: add("LinearAlgebra") Embed: file("myfile.jl")
- Row major / col major handling when converting Arraymancer Tensor <-> JlArray
- Invert dot-like operators .+ -> +. to avoid dot-like operator
- pairs iterators for named Tuple
- Add --gc:orc to CI
- CI fix
- Renamed examples so it's easier to read in order
- Added dot operators and broadcast mechanism.
- Added JlDataType conversions to typedesc
- Added
rand
proc to initialize Julia Array - Updated tests
- Julia.Exit() now made optinnal
- Fixed indexing bugs. Factorized some code.
- Updated nimble file for Nim >= 1.4.0 (pre-1.4.0 will not work)
- Updated CI to add MacOs in test Matrix; Next is adding windows but I need to link for Windows
- Added field access syntax with
.
and moved call syntax to.()
- lent for
[]
- Fix issues on object <=> struct vonersions (notably with Option[T])
- Added common / useful procs directly accessible
- Improve file layout
- Added object <=> struct conversions
- Split tests into multiple files
- Add fill, asType proc for arrays
- Added some operators
- Added support for iterators
- Added toJlValue as an alias to toJlVal for consistency
- Added indexing syntax
- Added swapMemoryOrder for col major vs row major
- Add Nim interop syntax
- Started work on indexing Julia Arrays natively
- Fixed char* / const char* with clang issue
- Fixed enum for jlGcCollect not being properly defined
- Add flags to run valgrind and msan if need be
- Add support for Option
- Fix boxing bool and voidpointer types
- Improve test coverage
- Add examples to ci
- Add CI
- Add support for nested objects
- Use {.push header:juliaHeader.} when necessary
- Add seq support when converting types
- Add Tensor support when converting types
- Improved dispatch using generic proc instead of
when T is ...
- Format code using nimpretty
- Add changelog
- Improve readme
- Improve examples
- First official release
- Support Arrays / Tuple / Dict of POD
- Supports Julia Arrays from Buffer.
- Add
toJlVal
/to
proc to make conversion betwen Julia types and Nim types "smooth" - Added Julia exception handler from Nim
- Examples in the examples folder
- Test suite and memory leak suite