no_std support was removed in 2020 with PR #29. This change updates the documentation to reflect that as suggested in PR #89. It still mentions no_std, which will hopefully keep it on our minds enough to check sometimes and see if the upstream problem has been resolved.
Co-authored-by: Jane Losare-Lusby <jlusby@yaah.dev>
The rustdoc_missing_doc_code_examples lint has been sending
warnings and causing CI issues due to being an unstable feature.
This change introduces a small build script that detects whether
the current toolchain is nightly and, if so, sets the config option
"nightly_features". This config option then sets the feature gate
for missing_doc_code_examples and turns on 'warn'.
It expands the existing code for parsing minor version
to parse the rest of the rust --version.
This change also introduces a toolchain test that uses
rust_version to double-check that the config option was enabled
IFF the nightly toolchain is being used.
* fix(miri): box transmute and invalid references
The general causes for the miri invalidation is the prevelant use of
`Box` and its references to `ErrorImpl<()>`.
`mem::transmute` does not preserve the tag stack for transmuting the
boxes.
Additionally, having references to `ErrorImpl<()>` which has a different
layout than the allocation or `ErrorImpl<E>` for some unknown `E`. This
causes the new "untyped" reference to now have a provenance that
includes the size of E and thus is outside the provenance.
* fix(miri): downcast_mut using `&mut _ => *const _ => *mut`
* fix(miri): stub file reading
* fix(miri): don't construct temp references of shunk provenance
* ci: miri
* fix: `unsafe_op_in_unsafe_fn`
* chore!: bump MSRV
* chore: address PR comments
* fix: ci workflow names
* chore: raise msrv to 1.65 (addr2line)
* chore: revert distinctive CI names due to branch protection rules
The new names, such as `Test Platform Matrix` which do make it easier to
see which jobs failed, rather than msrv, test, and miri all being called
`Test Suite`, the in-place branch protection rules wait forever until
the now non-existent `Test Suite` passes
Not using the error type after construction is a common mistake. This can also easily happen with the provided macros, when using `eyre!` instead of `eyre::bail!`. By marking the type as `#[must_use]`, the compiler warns us in such cases.
* Add must-install feature, so that a non-default handler can be the only handler consuming .text.
* Provide a better panic message if `must-install` feature is enabled.
Co-authored-by: Jane Lusby <jlusby42@gmail.com>
* Bump version because new feature was added.
* Convert must-install feature to auto-install to avoid negative features.
* Add ability to manually install DefaultHandler (for when auto-install is disabled).
* Ensure doctests pass when auto-install feature is disabled.
* Integration tests now succeed without auto-install feature.
* Add integration test for when auto-install feature is disabled.
* Add auto-install feature testing to CI.
* cargo fmt.
Co-authored-by: Jane Lusby <jlusby42@gmail.com>
Co-authored-by: Jane Lusby <jlusby@yaah.dev>