- static output for the library (
libjelal.a). - debloat the static output
- support for
crate::ffitype resolving in codegen crate - support for
core::ffitype resolving - priority for
crate::ffitypes with the same name ascore::ffiimports for resolving - more tests on all fronts
- dedicated POSIX-compliant
strftimeandstrptimefunctions without relying on other libraries - Go support
- Elisp support
- Php support
- a class based C++ intermediate (possibly to
codegen). - GitHub build tools, lints, and make in general
- tests that ensure Mac and Windows suppport
- a hook for automatically:
- determining the most minimal size of the crate and add it to the README
- building examples and adding them to tests
- generating the changelog
- generating the codegen output and amending the commit in post-commit if there is any change
- Default
headerstask tocffi.
codegenand move it to another crate
Weekdayfor getting weekday of a date and weeks of given durations based on various initial days- more
tmandjtmmethods to convert between C and Rust more easily:Date::from_jtm_ydayandDate::from_jtm_mdayMonthDay::from_jtmandMonthDay::to_jtm_mdayMonth::from_jtm_monandMonth::to_jtm_monOrdinal::from_tm_ydayandOrdinal::to_tm_ydayYear::from_jtm_yearandYear::to_jtm_year
- support for
core::ffiint types incodegen::resolve_typeandcffi IYmd(as a replacement for the removedIntYmd).rlibtype- support
From<SystemTime>onstdfeature - support
jifffeature
Date::update_jtmnot to have mut references or pointer to FFI if not necessary- deprecated
MonthDay::LEAP_LAST_MONTH_DAY_MAX. - deprecated
MonthDay::NON_LEAP_LAST_MONTH_DAY_MAX. IntYmd(replaced withIYmd).
Orderingnot define (not publicly) in C headerscffinot being able to determineconstof pointers correctly in functions (patterns in general).test --all-featuresbeing broken sincev0.4.1(4395e9d, "Addtmsupport for C")wasm-optcomplaining about--enable-bulk-memorymissing for some setupsDate::add_days_strictnot takingIDayDiff::MAX(previous actual maximum was aroundIDayDiff::MAX - self.ordinal)add_*_strictmethods onDateandMonthDayhaving wrongdid_saturateDate::add_months*method not working with negative values
Orderingtogeneratedmodulecmpfunctions that are more primitive than theirext_cmpcounterpart as a side-effect ofjelal_procremoval
jelal_proccrate (version 0.5.0)
- A bug in
codegenwhereSelftyped parameters in methods (notself) would generate invalid types which also effected functions. This bug does not effect previous versions but may effect codes in developement so an update is suggested.
- Support for
deprecatedincodegen. - Experimental support for a custom
codegenreplacement forcbindgen(namelycffi, usemake cffito test) to generate the C headers. tm(time.hstruct) andto_jtmfor easier creation of Jalali correcttmstructs fromDateMonthDay::NON_LEAP_LAST_MAX_DAYand deprecate what it replacesMonthDay::NON_LEAP_LAST_MONTH_DAY_MAXto be more aligned with other*MAX_DAYconstantsMonthDay::LEAP_LAST_MAX_DAYand deprecate what it replacesMonthDay::LEAP_LAST_MONTH_DAY_MAXto be more aligned with other*MAX_DAYconstants
MonthDay::LEAP_LAST_MONTH_DAY_MAXandMonthDay::NON_LEAP_LAST_MONTH_DAY_MAXto deprecated. Use the added alternatives.- codegen:
ImplConstitems are now visited beforetheir duplicate global were produced.codegenthe crate now holds multiple binaries and the previousmain.rsis renamed ascodegen.rs.- to collapse documents (just a visual change for now)
- sift to whitelist
cfgandcfg_attrattributes - to pass
cfgattributes topymodule(preventscfgmisbehavior) - allow
unused_imports - use
crate::ffi::*automatically
Total rewrite of the library with an emphasis on new types. This version actually makes the library usable and out of the alpha to somewhat of a beta version. Backward compatibility with the previous versions is no more hence this changelog starts fresh.
To see the changelog of the previous versions use Git or any time machine.