Releases: ubolonton/emacs-module-rs
Releases · ubolonton/emacs-module-rs
0.12.3
0.12.2
0.12.1
0.12.0
- Added
Env::make_vector
andEnv::vector
functions. - Added a default implementation for
Transfer::type_name
. This raised the minimum supported Rust version to 1.38 (forstd::any::type_name()
). - Added function to copy a Lisp string's content to a buffer
Value::copy_string_contents
. - Deprecated
unwrap_or_propagate
, and marked it asunsafe
.
0.11.0
- Made
env.call
a lot more flexible. Also addedvalue.call
. - Added
rust-wrong-type-user-ptr
towrong-type-argument
classification. - Deprecated
emacs::module_init!
andemacs::export_functions!
. - Replaced
IntoLisp
implementation forAsRef<str>
with separate implementations for&str
and&String
.
0.10.3
0.10.2
0.10.1
- Made
Vector::get
generic by return type. - Added
FromLisp
andIntoLisp
implementations for most integer types, and an optional featurelossy-integer-conversion
to control their behavior. This allows them to be used in#[defun]
signatures. - Made
Env::message
takeAsRef<str>
, not just a&str
.
0.10.0
Various ergonomics improvements
- Added
Vector
type to represent Lisp's vectors. - Allowed
Rc
andArc
to be embedded inuser-ptr
by marking them asTransfer
. - Removed
libc
dependency. - Removed
Transfer::finalizer
. - Deprecated
env.is_not_nil(value)
in favor ofvalue.is_not_nil()
. - Deprecated
env.eq(value1, value2)
in favor ofvalue1.eq(value2)
. - Improved Lisp-to-Rust string conversion's performance by making utf-8 validation optional, behind a feature,
utf-8-validation
. - Improved Rust-to-Lisp string conversion's performance by not creating a temporary
CString
. - Fixed a safety bug in which short-lived references were allowed to be embedded in
user-ptr
.