profile
viewpoint
Nikolai Vazquez nvzqz FullStory Atlanta, GA https://nikolaivazquez.com conducts curses, breaks things, and uses the oxford comma

hexe-rs/Hexe 22

[WIP] A pure Rust chess engine

divvun/bidiff 21

A Rust take on bsdiff

nvzqz/byte-set-rs 15

Efficient sets of bytes for Rust

nvzqz/cargo-emit 7

Talk to Cargo easily at build time

hexe-rs/Hexe.swift 5

[WIP] Swift wrapper for the Hexe chess engine

nvzqz/aloxide 4

Compile Rubies on Linux, macOS, and Windows

nvzqz/bad-rs 4

Unlicensed bad ideas

nvzqz/bit-collection-rs 4

Iterate over bits in Rust

nvzqz/c-utf8-rs 3

UTF-8 encoded C strings for Rust

auto-lang/Auto 2

[WIP] A cross-platform automation language

issue commentnvzqz/static-assertions-rs

By hygienic; don't assume Sized is in scope

I thought I had the hygiene stuff to work out in this. I'll have this fixed in the next release.

Koxiaet

comment created time in 7 days

startedwoltapp/blurhash

started time in 10 days

startedbbqsrc/fastvlq

started time in 17 days

startedbbqsrc/cargo-ndk

started time in 18 days

startedpurpleprotocol/mimalloc_rust

started time in a month

Pull request review commentrust-lang/rfcs

RFC: Add `target_abi` configuration

+- Feature Name: `cfg-target-abi`+- Start Date: 2020-09-27+- RFC PR: [rust-lang/rfcs#2992](https://github.com/rust-lang/rfcs/pull/2992)+- Rust Issue: [rust-lang/rust#0000](https://github.com/rust-lang/rust/issues/0000)++# Summary+[summary]: #summary++This proposes a new `cfg`: `target_abi`, which specifies certain aspects of the+target's [Application Binary Interface (ABI)][abi]. This also adds a+`CARGO_CFG_TARGET_ABI` environment variable for parity with other+`CARGO_CFG_TARGET_*` variables.++# Motivation+[motivation]: #motivation++Certain targets are only differentiated by their ABI. For example: the `ios` OS+in combination with the `macabi` ABI denotes targeting Mac Catalyst (iOS on+macOS). The non-`macabi` `x86_64-apple-ios` target is not for Mac Catalyst and+instead is for the iOS simulator, which is a very different environment.++It is not currently possible to `#[cfg]` against a certain target ABI without+a `build.rs` script to emit a custom `cfg` based on the `TARGET` environment+variable. This is not ideal because:++- Adding a build script increases compile time and makes a crate incompatible+  with certain build systems.++- Checking `TARGET` is error prone, mainly because the ABI often follows+  `target_env` without separation.++# Guide-level explanation+[guide-level-explanation]: #guide-level-explanation++This would act like [existing `target_*` configurations][cfg-options].++For example: if one had a module with bindings to+[Apple's AppKit](https://developer.apple.com/documentation/appkit), this feature+could be used to ensure the module is available when targeting regular macOS and+Mac Catalyst.++```rust+#[cfg(any(+    target_os = "macos",+    all(+        target_os = "ios",+        target_abi = "macabi",+    ),+))]+pub mod app_kit;+```++This configuration option would also be usable as+`#[cfg_attr(target_abi = "...", attr)]`.++# Reference-level explanation+[reference-level-explanation]: #reference-level-explanation++`target_abi` is a key-value option set once with the target's ABI. The value is

Specifically what I'm interested in is the component that comes after target_env in the triple string. What it indicates varies greatly between different targets. On some targets, it indicates the availability of hardware floats (e.g. eabihf for embedded abi, hardware float). On others, it indicates the running environment (e.g. x86_64-apple-ios-macabi for iOS apps that target macOS).

nvzqz

comment created time in a month

PullRequestReviewEvent

startedKaiJewson/inline-proc

started time in a month

Pull request review commentrust-lang/rfcs

RFC: Add `target` configuration

+- Feature Name: `cfg-target`+- Start Date: 2020-09-27+- RFC PR: [rust-lang/rfcs#2991](https://github.com/rust-lang/rfcs/pull/2991)+- Rust Issue: [rust-lang/rust#0000](https://github.com/rust-lang/rust/issues/0000)++# Summary+[summary]: #summary++This proposes a new `cfg`: `target`, which matches the entire target triple+string (e.g. `arm-unknown-linux-gnueabihf`). This also adds a `CARGO_CFG_TARGET`+environment variable for parity with other `CARGO_CFG_*` variables.++# Motivation+[motivation]: #motivation++To `#[cfg]` against a specific target, a `build.rs` script is required to emit a+custom `cfg` based on the `TARGET` environment variable. Adding a build script+increases compile time and makes a crate incompatible with certain build+systems.++Otherwise, all available components would need to be specified separately:+`target_arch`, `target_vendor`, `target_os`, and `target_env`. This can be very+cumbersome. Note that the target ABI cannot currently be `#[cfg]`-ed against, so+a `build.rs` is still necessary to match all target components.++# Guide-level explanation+[guide-level-explanation]: #guide-level-explanation++This would act like existing `target_*` configurations but match against all+components (except `target_feature`).++```rust+#[cfg(target = "x86_64-apple-ios-macabi")]+mod mac_catalyst;+```++This includes `#[cfg_attr(target = "...", attr)]`.++# Reference-level explanation+[reference-level-explanation]: #reference-level-explanation++`target` is a key-value option set once with the target's Rust triple.++Example values:++- `"aarch64-apple-darwin"`+- `"arm-unknown-linux-gnueabihf"`+- `"x86_64-apple-ios-macabi"`+- `"x86_64-pc-windows-gnu"`+- `"x86_64-pc-windows-msvc"`+- `"x86_64-unknown-linux-gnu"`++# Drawbacks

The string is equal to the TARGET environment var anyway, so target would not change.

nvzqz

comment created time in a month

PullRequestReviewEvent

push eventnvzqz/rust-rfcs

Nikolai Vazquez

commit sha 12f5b503e3ca7901953e3d13550d88b21ac98ba3

Add RFC PR to `cfg-target-abi`

view details

push time in a month

PR opened rust-lang/rfcs

RFC: Add `target_abi` configuration

This proposes a new cfg: target_abi, which specifies certain aspects of the target's Application Binary Interface (ABI). This also adds a CARGO_CFG_TARGET_ABI environment variable for parity with other CARGO_CFG_TARGET_* variables.

Rendered

+112 -0

0 comment

1 changed file

pr created time in a month

push eventnvzqz/rust-rfcs

Nikolai Vazquez

commit sha 63fd9934434dc0c0ebcea1a77ad56df0e8c90e79

Add RFC PR to `cfg-target`

view details

push time in a month

PR opened rust-lang/rfcs

RFC: Add `target` configuration

This proposes a new cfg: target, which matches the entire target triple string (e.g. arm-unknown-linux-gnueabihf). This also adds a CARGO_CFG_TARGET environment variable for parity with other CARGO_CFG_* variables.

Rendered

+99 -0

0 comment

1 changed file

pr created time in a month

push eventnvzqz/rust-rfcs

Nikolai Vazquez

commit sha 27964b448da4056b85309fc6d38781a99c2edd45

RFC: Add `target` configuration

view details

push time in a month

push eventnvzqz/rust-rfcs

Nikolai Vazquez

commit sha 1d0b87ec7c1ad0b352b4ba92e5f5289355d7eba9

RFC: Add `target` configuration

view details

push time in a month

push eventnvzqz/rust-rfcs

Nikolai Vazquez

commit sha 58442972e82b678d3f15cbd55015949a4b8b959a

RFC: Add `target_abi` configuration

view details

push time in a month

create barnchnvzqz/rust-rfcs

branch : cfg-target-abi

created branch time in a month

create barnchnvzqz/rust-rfcs

branch : cfg-target

created branch time in a month

push eventnvzqz/rust-rfcs

gnzlbg

commit sha ec42fd0b7fbc0448d1794bfecaa43621eab76814

RFC: mem::black_box and mem::clobber

view details

gnzlbg

commit sha 68b4dde8c709a07a8dcdbae9703e26ec6492b10c

black_box stores back to memory, not registers

view details

gnzlbg

commit sha 76c213bc535cbac30315a6a6aefaad1530216536

target_feature 1.1

view details

gnzlbg

commit sha 54083aa88085767ed0629bcab074eb21bb4c00d9

add perf implications

view details

gnzlbg

commit sha 2fec554e5fb428c86f5cac42f61c00bb232e9de7

fmt

view details

gnzlbg

commit sha f9d49051d184bf32a36e4efa6c60036756d79ab6

soundness

view details

gnzlbg

commit sha 39e03e3da8ca9c47cffed4803550823860685301

fmt

view details

gnzlbg

commit sha aa79d09670dda105e9775411caa31bc2d06b2be1

fix bug in reference; add unresolved question about disabling features

view details

gnzlbg

commit sha b73fc95e60d6635e012b1eaf52bdd544f1833596

effect system

view details

gnzlbg

commit sha 96c3abbf9021551f3cf4fe9a58bf2dfae64b2a78

update effects text

view details

gnzlbg

commit sha 48f4616c3d4d4ef7642468a10485a7d2fc9f1cb2

clarify hierarchies

view details

newpavlov

commit sha 800825ccd0f5db7f58a063395dfd02b5b228bb60

msrv

view details

newpavlov

commit sha 4ec9682a9f2c2697eedbdb06350fa5701fd0e862

drawbacks update

view details

Artyom Pavlov

commit sha f9057da774a1b5fe4dc33f7658fd89f6d024d083

reviews updates

view details

Artyom Pavlov

commit sha a43e9e13055f90b728cdccf46c78a463786806c2

kennytm's review updates

view details

Artyom Pavlov

commit sha 00a3022176ce22c4c51e75baefdab8756874fc17

fixes, option addition, wording improvements - fixed typo and RFC link - improved wording a bit - added `--check-msrv-toolchain` option ( @phaylon )

view details

varkor

commit sha b0bf8c5d5ba4310db3157dc13459ec1aa562476a

impl_trait_type_aliases

view details

varkor

commit sha 1082efdde798691903bd9fc849f6276ac59525a3

Correct some typos and make polymorphic type clearer

view details

varkor

commit sha d6db251443e0dd395d9b7ca8810c69dad99d7059

Mention `impl Trait` type aliases in associated types

view details

varkor

commit sha c62791c7a0b29d6e52977c9a6648b2b29303c302

Forbid compound `impl Trait` type aliases

view details

push time in a month

issue openednvzqz/fruity

Handling availability

  • Handle class availability.

    This can be done by either:

    • Weak linking OBJC_CLASS_$_* symbols

    • Getting the class via objc_getClass

  • Handle method availability.

    Currently, unavailable methods cause an exception.

    This can be checked by:

    • Checking respondsToSelector: (high runtime cost each time).

    • Checking the OS version against the availability (one time cost).

created time in a month

push eventnvzqz/dotfiles

Nikolai Vazquez

commit sha 926f6a47d7102bbe936d0cca933590722dee22e1

Add Go bin path

view details

Nikolai Vazquez

commit sha 9f1e91aefe0672120522f3695d9dd947215803f3

Add fnm fish integration

view details

Nikolai Vazquez

commit sha d430bdee3c1d5b328976e860b86c77718482c87b

Add links to referenced tools

view details

push time in a month

push eventnvzqz/dotfiles

Nikolai Vazquez

commit sha 9ef79c491ee90c83e70ea1215ae78be5fbf56da7

Set fish PATH before checking program existence

view details

push time in a month

push eventnvzqz/dotfiles

Nikolai Vazquez

commit sha 9ba49dea554562b58ec293f2334505ac60ee212f

Add cargo fish completions by @thomcc

view details

push time in a month

push eventnvzqz/dotfiles

Nikolai Vazquez

commit sha 262b71f56c0ab0a3d2cc768014385cbe6bde819f

Add 'ef' function to edit fish config

view details

Nikolai Vazquez

commit sha bd6890931b1c5872c3e0250dd256268faf91a97c

Add `please` fish function

view details

Nikolai Vazquez

commit sha 6f5f2f005ba8a8377ed8b027cd9008b247bcf7aa

Add `netup` and `netdown` fish functions

view details

push time in a month

push eventnvzqz/dotfiles

Nikolai Vazquez

commit sha 13d81bf1aea3b8ed1768d5c99e73285cdd6714eb

Set __fish_initialized variable

view details

Nikolai Vazquez

commit sha 57fc67efe8b8751bc5b5dde6d4b76077db55f66b

Add fish color variables

view details

Nikolai Vazquez

commit sha a365b7ea2e45932a38e69ff3151ccd4f981414e5

Set fish_key_bindings variable

view details

Nikolai Vazquez

commit sha 363b3eef3b7ca908afb52a11bda7889cc50ca56f

Add fish pager color variables

view details

push time in a month

push eventnvzqz/dotfiles

Nikolai Vazquez

commit sha ec0dfa2960a084a17f207b2bad62a6c803a261e0

Add initial fish variables

view details

push time in a month

push eventnvzqz/dotfiles

Nikolai Vazquez

commit sha 10537c3583a3be99d0f32a16cda07f1688a43174

Add fish functions

view details

Nikolai Vazquez

commit sha 4974f88c4357d7cb8fe24b0b3c682cb7d2563839

Add macOS fish config

view details

Nikolai Vazquez

commit sha 9179622152fc7d9962b580a8814605e40c9006e4

Add general fish config

view details

push time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 92dfabe76572c2e452ced76c47c55f64ad2ac333

Implement `NSString` comparison against `str` Compares against the UTF-16 encoding if the `NSString` is UTF-16. Otherwise, gets (or converts to) the UTF-8 encoding and compares that. Closes #4.

view details

push time in a month

issue closednvzqz/fruity

Implement fast comparison between `NSString` and `&str`

It would be nice to have PartialEq and PartialOrd implemented between NSString and &str that can compare between UTF-16 and UTF-8 without first transcoding and allocating a buffer for the other encoding.

Such an implementation should:

  1. Check against the result of CFStringGetCStringPtr with kCFStringEncodingUTF8. If the NSString is internally UTF-8, this returns a pointer to the internals without allocating.

  2. Check against the result of CFStringGetCharactersPtr. If the NSString is internally UTF-16, this returns a pointer to the internals without allocating.

  3. Resort to converting the string piece-by-piece with CFStringGetBytes.

    • lossByte should be 0 to prevent lossy conversion, and failing early.
    • isExternalRepresentation should be false to prevent any BOM from being emitted.

closed time in a month

nvzqz

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 9fc72e12754518b001cbb3a5020452d03e8241a7

Create module for Dispatch

view details

Nikolai Vazquez

commit sha 5633510062857e35ab8c26298e51d14635fda0ff

Create DispatchObject

view details

Nikolai Vazquez

commit sha 6c789defbba738553b41e5d9dc36c7fd278864bb

Create DispatchTime

view details

Nikolai Vazquez

commit sha 0e83180e9216767c9d960817bb56954f15009a08

Create DispatchQos and DispatchQosClass

view details

Nikolai Vazquez

commit sha 1e7236f93d8090cd784bdcfc973d21fbac8c3e41

Add `DispatchObject::_retain`

view details

Nikolai Vazquez

commit sha 710e8b3a08a52cd418ab88c70a34617fd877273e

Define ABI for `DispatchQosClass`

view details

Nikolai Vazquez

commit sha f40c98564172e0b8d158fa681eb0e17d34466c24

Create DispatchAutoreleaseFrequency

view details

Nikolai Vazquez

commit sha 0d38253ae3e33fe6f956cb28821ea7a1cf1fad87

Create DispatchQueue and related types Submitting work to the queue is not yet implemented.

view details

Nikolai Vazquez

commit sha 196a6563fbc3e57705b0fd0f7a787929266a6d3c

Create CFType and CFTypeRef Also created aliases for CFTypeID, CFIndex, and CFHashCode.

view details

Nikolai Vazquez

commit sha 14032e48bca8bd51351585804c7a21551e5c502a

Create CFComparisonResult

view details

Nikolai Vazquez

commit sha beaee7273ea04546ef099b30843abb1bcd881f96

Create kCFNotFound constant

view details

Nikolai Vazquez

commit sha cd0015a6c9d3d0c44b799cbaa780801aa7187450

Create CFOptionFlags type alias

view details

Nikolai Vazquez

commit sha f5c0d03dbf2f42103866829dc2c51f28b20403d7

Format NSStringEncoding like an enum

view details

Nikolai Vazquez

commit sha d7ad1f731366a1ae0a6a3f311f497bd3f0dc7829

Move NSStringEncoding into its own file

view details

Nikolai Vazquez

commit sha b74db5eccc621b7690cae1f9a47027903d87f61f

Create `NSStringEncoding::name` method

view details

Nikolai Vazquez

commit sha feda6cf2b96f190e480fea35858842370408dc2d

Use `NSStringEncoding::name` in `Debug` impl

view details

Nikolai Vazquez

commit sha fcf42b91bbc3f7a27115d6a97d0c6f12250ee1e9

Create methods to get all `NSStringEncoding`s

view details

Nikolai Vazquez

commit sha ae002d09b505707ca3cb1afe881675b8425bb978

Rename NSStringEncoding constants These names are simpler and use UPPER_SNAKE_CASE.

view details

Nikolai Vazquez

commit sha a074452a6382da5ae1577802c21b4c596583d3c8

Create pointer constructors for Unretained<T>

view details

Nikolai Vazquez

commit sha 62665b3e8fc6e43dbdb2b403318514acd0e17735

Add lifetime to Unretained<T> Allows the type to be used safely in contexts that require an unretained pointer.

view details

push time in a month

startedudoprog/relative-path

started time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha bf22f0c775315647a1ed1a0e0d2b375ce8d2a803

Add simple autorelease pool creation

view details

push time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 43594df497a5e4f3ce7b9890fd5bc5beb7586683

Make `NSExceptionName` a public newtype Types like these are essentially aliases to `NSString`, so it's fine to expose the internals.

view details

Nikolai Vazquez

commit sha 13cc4dec0a19ce0ba9261c72bafcf09e7a3c8336

Implement Display for NSExceptionName

view details

Nikolai Vazquez

commit sha 612b17d72ddc6471faa2fc21fd9e21a708d6ba06

Implement more NSString/NSExceptionName conversion

view details

Nikolai Vazquez

commit sha 49c2c258ac4a81a19332238193c35ebe7a74f953

Prefix UIKit exception names with "ui_"

view details

Nikolai Vazquez

commit sha d913f836c8487095460f871bc30dae273747a327

Create NSError and related types

view details

Nikolai Vazquez

commit sha 29c5683605a7f71bd608f3105c49842139d90d86

Add Foundation error codes

view details

Nikolai Vazquez

commit sha 5acad7454cc1d465294ae401dae7fdfa1a785e07

Remove `number_` from `number_with*` in `NSNumber`

view details

Nikolai Vazquez

commit sha 62dfe2c40e48b25df525355b5da4b6dbe9ad3173

Remove `value_` from `value_with*` in `NSValue`

view details

Nikolai Vazquez

commit sha 0cf0eb3ddf1a6f715c9dc42c208f88a96191483d

Create `Unretained<T>` object wrapper This is semantically a `&T` but with the memory representation of `T` when `T` implements `ObjectType`.

view details

push time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 052f6dec9e35b3790863f966a9229bdc58affc8b

Use `objc_exception_throw` directly

view details

Nikolai Vazquez

commit sha c0955015a09bea4f9e03e2c23a5d747b37af4ecc

Add badges to README.md

view details

push time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha bdf0e4586310c3a10b90fe9d05b58e37ca704898

Store cached selectors with relaxed ordering

view details

Nikolai Vazquez

commit sha 7413ec593247b6f875cd474574b402264e3c136c

Change `Class::alloc` to use `objc_alloc` Saves having to get a selector and go through `objc_msgSend`.

view details

Nikolai Vazquez

commit sha 3be2122de57dc0f7e648c7a09e5ac5f4bbd8d308

Make `Class::alloc` return a generic `ObjectType`

view details

Nikolai Vazquez

commit sha 729b3232e14efd7e78f54d5172ebbad44573367d

Comment on `objc_alloc` usage on older platforms

view details

Nikolai Vazquez

commit sha db276d98c4241a1e2192c2ed5e8662bc4adaa793

Move UIKit `NSValue` extension into `ui_kit::ext`

view details

Nikolai Vazquez

commit sha 9ae247d9a487c77890c8b470916386200c7d8d85

Create NSException

view details

Nikolai Vazquez

commit sha 076024a1dae1084dc45573f70453d1a42dcf67b8

Create NSExceptionName

view details

push time in a month

issue openednvzqz/fruity

Implement fast comparison between `NSString` and `&str`

It would be nice to have PartialEq and PartialOrd implemented between NSString and &str that can compare between UTF-16 and UTF-8 without first transcoding and allocating a buffer for the other encoding.

created time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 387788c188493a94077a93ce6570cb7457dbef1f

Create module for AppKit

view details

Nikolai Vazquez

commit sha 967630cf2639f4c9b6fd64f2c76d211f6a769d08

Enable `appkit` module for x86_64-apple-ios-macabi

view details

Nikolai Vazquez

commit sha 56696feca93b15655a6a66244f464399f04a63d2

Create module for UIKit

view details

Nikolai Vazquez

commit sha c7374452784a8f239f5f9b558c53b62640b692af

Create NSValue

view details

Nikolai Vazquez

commit sha cf3459d6784fa333bbf797f55e8d1a708011743a

Create NSNull

view details

Nikolai Vazquez

commit sha 1666b14900c55ff9b0d380f4f3cc9f0a57f804be

Create NSNotFound constant

view details

Nikolai Vazquez

commit sha 6d1b698f485502eef8cc2ddee5f465c3867da500

Convert to proper snake casing Adds an underscore between two-letter prefixes and the first word. This makes reading a lot easier. Although some of the names appear a bit awkward, such as "ui_kit".

view details

Nikolai Vazquez

commit sha 8a420644d8833766ecc292397ab8106da3b328da

Create NSAppKitVersion

view details

Nikolai Vazquez

commit sha a6bdabdef748b03e7b6006e3401fd9082dfdafdf

Create pointer methods for SEL

view details

Nikolai Vazquez

commit sha 74176c9566d93e56c1d1b8d4d8a30a8d184f0830

Implement Default for NSString

view details

Nikolai Vazquez

commit sha 5d433a7fdebaae2dd332a38930f2a8a764dba8b8

Add internal retain method to `id`

view details

Nikolai Vazquez

commit sha 9666b4ac6ad8d14f02adc6bb7fb97d995ea7a55b

Implement Default for NSMutableString

view details

Nikolai Vazquez

commit sha bd81c4141aea2fbad77e32b5a095b8519fd2bc00

Fix linker error when using default NSString

view details

Nikolai Vazquez

commit sha 84b93c0be55b48acf24ce036d819c2fc920ebe7d

Create ObjectType trait

view details

Nikolai Vazquez

commit sha 388c4a23ef985af1cae221559d7d1448c1f859a7

Implement PartialEq for NSObject

view details

Nikolai Vazquez

commit sha d5e2f4d583ad9f1f77cd2bf776ad9b74b56ee3ac

Cache common selectors

view details

push time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 12b4100362cbc9d4577546d30144b5d0082cf5f7

Configure `_priv::cfstring` on `foundation` This is only used by the `nsstring!` macro.

view details

Nikolai Vazquez

commit sha cbb0f9f0288082e8cc7e0200787c0396a71a3fb6

Allow unused `objc::Class::alloc` Currently only used by the `foundation` module.

view details

push time in a month

issue commentnvzqz/fruity

Transcode non-ASCII &str to UTF-16 in `nsstring!` macro

Thanks a ton for your implementation @thomcc! This also enables the string to contain interior nulls, which is a cool bonus feature.

nvzqz

comment created time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 868fd65739c183535a113b54058f994f2ca41736

Transcode non-ASCII input to UTF-16 in `nsstring!` Closes #3. For safety, the UTF-16 data has a trailing null byte that is not counted as part of the string's length. This also allows for interior null bytes, since strings that contain nulls are encoded as UTF-16. Co-authored-by: Nikolai Vazquez <hello@nikolaivazquez.com> Co-authored-by: Thom Chiovoloni <chiovolonit@gmail.com> Co-authored-by: rodrimati1992 <rodrimatt1985@gmail.com>

view details

push time in a month

issue closednvzqz/fruity

Transcode non-ASCII &str to UTF-16 in `nsstring!` macro

In Objective-C, NSString literals (e.g. @"string") with unicode data are represented as UTF-16. This crate currently does not transcode non-ASCII &str data to UTF-16 and instead incorrectly emits UTF-8 data.

Correct behavior would be to have the pointer refer to UTF-16 data with 0x7D0 as the flags.

These flags are 7 for the CFTypeID and D0 for (from CFString.c source):

!!! Note: Constant CFStrings use the bit patterns: C8 (11001000 = default allocator, not inline, not freed contents; 8-bit; has NULL byte; doesn't have length; is immutable) D0 (11010000 = default allocator, not inline, not freed contents; Unicode; is immutable) The bit usages should not be modified in a way that would effect these bit patterns.

closed time in a month

nvzqz

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 10b763be6ee052502d0ff90f1e160cdc10208bfc

Create CGAffineTransform

view details

push time in a month

PR closed nvzqz/dotfiles

Better cd

It's space-efficient

+3 -0

1 comment

1 changed file

Hermitter

pr closed time in a month

pull request commentnvzqz/dotfiles

Better cd

How do you ban someone from a repo?

Hermitter

comment created time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 722216b4165694356ecc6014c1b2717768a34de7

Consistently format `_msg_send!` calls

view details

push time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha be9684f3a136a4481cfa99d6135a0e591b9fe1b7

Fix `$ret` in `_msg_send!` macro for no args case Was being placed in the second generic type location, when one doesn't exist.

view details

Nikolai Vazquez

commit sha 696d03fe6e134caaacd6d0545df3bedd51dc6f56

Implement `fmt::Pointer` for all object types

view details

Nikolai Vazquez

commit sha c59894fc0964948245ec864b0f2eecabfece7f7a

Create NSNumber Most operations are implemented.

view details

Nikolai Vazquez

commit sha da565bbe5898803d4933bb28cb9bb48e992f24a0

Create module for Core Graphics

view details

Nikolai Vazquez

commit sha ebe3b3716239913a1385765815a2fe4450bec38b

Create basic Core Graphics geometry types These are: CGFloat, CGPoint, CGSize, CGRect, CGRectEdge, and CGVector.

view details

Nikolai Vazquez

commit sha 285e20aa87af105e6a799b8fde398b5eb5ceff1a

Create geometry type aliases in foundation module These are: NSPoint, NSSize, NSRect, and NSRectEdge.

view details

Nikolai Vazquez

commit sha cfbfa7484559455152f25275f4678e0aa3ca9320

Create foundation NSEdgeInsets

view details

Nikolai Vazquez

commit sha 240e87c0f44f766322a2e149b0b257595429d9b3

Create method to get NSObject retain count

view details

Nikolai Vazquez

commit sha dc2715e07d51414d4c79d066393b35957e5fb544

Create NSRange

view details

Nikolai Vazquez

commit sha a53e7c8422c3d11545a99397d7dc9b282d893bfe

Move module cfg's into modules

view details

push time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha a64af8ddf1553cd3db85a2e1762eea7ccc8bc6e4

Improve objc method dispatching Chooses the correct function based on the return type. Added an internal convenience `_msg_send!` macro that makes method calling syntactically similar to Objective-C. It also helps associate arguments with the appropriate selector part.

view details

push time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 83603abc7e728cd7c06ac0a4f581beb666d0cb6a

Make crate only compile for x86 and ARM

view details

Nikolai Vazquez

commit sha 3fbc45528d9fb707853e0ae9fe63e8c7a8cab04e

Change how `nsstring!` macro works It previously incorrectly emitted any non-ASCII data in a representation that only allows ASCII data. This case requires converting to UTF-16 first (see #3). It is now a compile error to include non-ASCII data. It now accepts any const string, not just literals. It now accepts strings with a trailing null byte.

view details

push time in a month

issue openednvzqz/fruity

Transcode non-ASCII &str to UTF-16 in `nsstring!` macro

In Objective-C, NSString literals (e.g. @"string") with unicode data are represented as UTF-16. This crate currently does not transcode non-ASCII &str data to UTF-16 and instead incorrectly emits UTF-8 data.

Correct behavior would be to have the pointer refer to UTF-16 data with 0x7D0 as the flags.

These flags are 7 for the CFTypeID and D0 for (from CFString.c source):

!!! Note: Constant CFStrings use the bit patterns: C8 (11001000 = default allocator, not inline, not freed contents; 8-bit; has NULL byte; doesn't have length; is immutable) D0 (11010000 = default allocator, not inline, not freed contents; Unicode; is immutable) The bit usages should not be modified in a way that would effect these bit patterns.

created time in a month

push eventnvzqz/fruity

Nikolai Vazquez

commit sha a4e913c37359c7cd301cee8557bf754d8c2e4388

Add to docs on "Idiomatic Rust"

view details

push time in a month

startedgetditto/rust-bitcode

started time in a month

release nvzqz/fruity

v0.2.0

released time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha d535c0e665106d0aa57884bea7e24c1b908b4bb5

Make docs.rs build with all features enabled

view details

Nikolai Vazquez

commit sha c1d067e8ec03e20bb6f52f7c3ab63cadd2a2b261

Prepare 0.2.0 release

view details

push time in 2 months

created tagnvzqz/fruity

tagv0.2.0

Rusty bindings for Apple libraries

created time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 6ad342765b98f266334da6bdb5fad5b48de0369e

Synchronize crate docs with README.md

view details

Nikolai Vazquez

commit sha f263159d2395537194036e9ea4f58fed73e21b9c

Add index to top of docs

view details

Nikolai Vazquez

commit sha 77403c5325790f75b63cd24307c95dd14b162880

Collapse license section in docs to an inline list

view details

Nikolai Vazquez

commit sha 364afaa997ea5bc4dd9f85d18e7371b2e6c00419

Add usage info to docs

view details

Nikolai Vazquez

commit sha f256eabd69d963507030fbb8d14feca751d05adf

Expand docs on "zero cost" goal

view details

push time in 2 months

issue openednvzqz/fruity

Make `selector!` macro zero-cost

Currently, the selector! macro calls SEL::register, which in turn calls see_registerName. This is inefficient compared to @selector in Objective-C.

On my machine, I measure:

Initial Subsequent
Low 2.15µs 100ns
High 2.45µs 210ns

This is relatively small compared to objc_msgSend. However, one of the goals of this crate is to be zero-cost compared to the same code written directly in Objective-C.


I made an attempt in nvzqz/rust-selector-example, however it fails to build at link time. See that repo for details.

created time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 514d7f14581e9e8283f9f0a61f8a2b970e4b7e8b

Add include list to Cargo.toml

view details

Nikolai Vazquez

commit sha f2fc5c9adef6d01dc04f13958fa79b296ff133be

Add GitHub Sponsors funding links

view details

Nikolai Vazquez

commit sha c069306c1f5589ab2da9b2a4ad162dbbfe615c0c

Add donation links to docs

view details

push time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 5d50f33b00bd1bd3b0b41193bc6b17d212644923

Actually remove link feature Forgot to do this bit in a9a0ef21953784a9b27009dfc6cfb1d9097fd15d.

view details

push time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 282c58dcd80fca5943c92f09b15f59039f5c5c7c

Place library modules behind individual features Using the "foundation" feature implies "objc" and "core_foundation".

view details

Nikolai Vazquez

commit sha cc325700372f0a9818705ef6efcda63b83ef9c0e

Add documentation for feature flags

view details

Nikolai Vazquez

commit sha 84c6aa525e571fd8b0e096270264e627fa0a75ee

Make objc the only transitive module of foundation The core_foundation module will become quite large and will not be used by most foundation users. So it does not make sense to make the majority eat that compile cost.

view details

Nikolai Vazquez

commit sha 5c439a585cae55560cbe0e38a1e75ce577cd877e

Create CHANGELOG.md

view details

Nikolai Vazquez

commit sha a9a0ef21953784a9b27009dfc6cfb1d9097fd15d

Remove "link" feature This is being tracked in issue #1.

view details

push time in 2 months

issue openednvzqz/fruity

Determine if linking should be disable-able

It might make sense to have a link (on by default) or no-link feature flag.

Further investigation needs to be done to determine:

  1. Is this worth having?
  2. What is the added complexity?
  3. How can this break things for end users of this lib?
  4. Which feature flag is "safer"?
  5. Which feature flag aligns more with the philosophy of being additive?

created time in 2 months

release nvzqz/fruity

v0.1.0

released time in 2 months

issue commentnvzqz/static-assertions-rs

Feature suggestion: testability

Sorry for my silence on this issue.

I'd rather limit the complexity of this crate and not add the option to turn compile errors into runtime errors. If you want to create a PR with code that does this, then I'll review it and could be convinced.

There's not a lot of great ways to test compile errors outside of doing ```compile_fail doc tests, like what this crate does. I thought I saw a crate that wraps this, but I can't seem to find it.

Regarding prettiness of errors, once panic! or assert! becomes usable in const, I can greatly improve some of the error reporting of these assertions.

Amomum

comment created time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 9aff34e1e7f86b15fbe569a21005fd623483a2d1

Add hash method for NSObject

view details

Nikolai Vazquez

commit sha ddc4387d8977d485fee96c57d8c0a0f8b2a48c5a

Derive comparison traits for objc id

view details

Nikolai Vazquez

commit sha b5bf859379738785978616252815495465d23e34

Fix selector used in mutable_copy method

view details

Nikolai Vazquez

commit sha 3b713e9cfefc9ecf24ba7044e005c5ee1bde5ca4

Implement From on string slices for NSString types

view details

Nikolai Vazquez

commit sha b9295f56c9ddb32267c495480c6dd30082bdf21b

Add methods to introspect NSObject class

view details

Nikolai Vazquez

commit sha 3b90407ceab032670732d6070e45c99a7bfa7615

Add methods to check selector respondence

view details

Nikolai Vazquez

commit sha 9df232d8d8afd9ad44475383039a9481b5454eba

Implement Eq for objc SEL

view details

Nikolai Vazquez

commit sha 8982ea75cd5ddb598ba5ef965110076177fbcf9a

Make no-copy methods unsafe and return direct type A loophole to having a wrapper type is that `Clone` can be called on the inner value, which would make it possible for the referring object to outlive the referenced value.

view details

Nikolai Vazquez

commit sha 7bfd0ccb0710e2917a99f8e6c0241681c82268fb

Make linking optional and default Allows for consumers to do their own linking.

view details

Nikolai Vazquez

commit sha 72059f1b927316c1565925a1bc0910f1f618d869

Add error if selector macros get an expression

view details

Nikolai Vazquez

commit sha 47a61772e966c5dffaab6c173a7d640e12c092eb

Make objc id type a smart pointer

view details

Nikolai Vazquez

commit sha 17a55a4476d02741367e97368c854df8e7977184

Implement Deref to id for NSObject

view details

Nikolai Vazquez

commit sha 457181772f86fb73761a8ad6498df5390200dce0

Create opaque objc Object type This allows for simplifying internal and external polymorphic code.

view details

Nikolai Vazquez

commit sha 79bde79bcd5582dc5741a5e41bd3c492519e2106

Improve wording about use of UnsafeCell

view details

Nikolai Vazquez

commit sha e6c3cf8a5f0f6698c3f03d11d04aa27debb01135

Make objc Class internally use Object Added Deref to Object, AsRef<Object>, and as_object method.

view details

Nikolai Vazquez

commit sha 018058695204a8026abb41043611aa9188033584

Fix NSString to use Object

view details

Nikolai Vazquez

commit sha 6cb3481b1870f7a8944f62b4dc6199680d081f8c

Move NSObject into its own file

view details

Nikolai Vazquez

commit sha 041c15bd4af7a78bbb35765a019cb71d56d9162d

Add methods to get Rust strings from NSString

view details

Nikolai Vazquez

commit sha c99b8a5e8964aedcc768a0bc74667afcbcb18e8a

Add pointer constructors for NSObject and NSString

view details

Nikolai Vazquez

commit sha 4adc23f0eadeb77269fbd5ef328b464b7545807b

Implement Display and Debug for NSString types

view details

push time in 2 months

created tagnvzqz/fruity

tagv0.1.0

[WIP] Rusty bindings for Apple libraries

created time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 369d10a46364060990fffec4258aa7e58bd5ecf4

Dual license project under MIT or Apache 2.0

view details

Nikolai Vazquez

commit sha f32881edb57d6c3ce904830c4c2aa08eeb6eb48d

Create crate

view details

Nikolai Vazquez

commit sha 0dbe663f56b2c956d0e9b0844b9449f9d96bf5c1

Make crate only compile for 32 and 64 bit systems

view details

Nikolai Vazquez

commit sha 6254368ab40c4e8fd7baa705d8ba99f1f6063d7f

Create module for Objective-C

view details

Nikolai Vazquez

commit sha 180053ba8fdbeac1aa87e28f0a79775e0dfc3721

Define `BOOL`, `YES`, and `NO`

view details

Nikolai Vazquez

commit sha 7830917e2475708b6856613a5b57a8144b8146c0

Create README.md

view details

Nikolai Vazquez

commit sha 76825a628da5d993722a5e1273a32d243d28d9fb

Define objc ints and related constants

view details

Nikolai Vazquez

commit sha 8c4bd138c451c2eda9f3c2632633172b62f5d1b1

Warn on missing documentation

view details

Nikolai Vazquez

commit sha cf5012a9894355c576f9580de34b311ce898e685

Create objc Class type

view details

Nikolai Vazquez

commit sha fe10df19230ed75648c67f3e24220c578de16e66

Add some project goals to README.md

view details

Nikolai Vazquez

commit sha 1ffc682578d31a47f2b249a0bce181a5c5075d48

Make improper C types a compile error

view details

Nikolai Vazquez

commit sha 8856187b87211fafbaf0f2d9174ef5e4b4eb83e8

Create NSObject and id types

view details

Nikolai Vazquez

commit sha 27fee5f212c973448e68949c21a77c006edd09a8

Add more superclass-related methods to Class

view details

Nikolai Vazquez

commit sha c26c0facab1e0a3505447594a6196712cd69c480

Create objc selector type and macros

view details

Nikolai Vazquez

commit sha c3bcefd8aef1b7a5cc55fe8a6c83ae33b5473c0a

Add NSCopying methods to NSObject

view details

Nikolai Vazquez

commit sha 07707ae207e74be2fa617833b661755ecab1d7d6

Create module for Foundation

view details

Nikolai Vazquez

commit sha 6a11a278cdaae79a3856f9fb925b8fc0b2888666

Create module for Core Foundation

view details

Nikolai Vazquez

commit sha 38241df43c387e181b107bb8ae428817eea12511

Create NSString and NSMutableString

view details

Nikolai Vazquez

commit sha 73a807675daa70a4c071e28dd05a83a69b9bb09b

Create NSStringEncoding

view details

Nikolai Vazquez

commit sha ad02d5f68e7d3d7602666d7252e6e898a44e4b14

Make objc macros usable from other modules

view details

push time in 2 months

issue openedsavoryink/setfont

App: MobaXterm

App Suggestion

Full name: MobaXterm

Argument value: mobaxterm

Supports ligatures: unknown

Website: https://mobaxterm.mobatek.net/

Versions: undecided

Platforms:

  • Windows

Motivation

People who use it seem to really like it. I personally don't know much about it.

Approach

Needs investigation.

created time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha fa9d4daeb6a8621aba87d43632f001cf614c1c28

Add some comparison methods to NSString

view details

Nikolai Vazquez

commit sha 298e7fdf4dac906b21c9dfdbc3c0d0bfb8faffe3

Fix NSObject ptr methods Accidentally took self by value instead of by reference.

view details

Nikolai Vazquez

commit sha cb300acfc81d55fce9dff313f9adde1d0fd4628f

Add &str constructor to NSString types

view details

Nikolai Vazquez

commit sha 16d96f1e7bec792160a621606035b02314e6b531

Make NSString &str constructor footprint smaller The shared implementation is not inlined and is no different except for what class is allocated.

view details

Nikolai Vazquez

commit sha ff2ecfe61a0cd8de69f8dfd9a6fb803019613f73

Add no-copy &str constructor to NSString types

view details

push time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 1f8d394f914ce198c63ef6bd34586d99e165e219

Create NSObject and id types

view details

Nikolai Vazquez

commit sha ead772b67d9d58fa1d1ccdbb87c5fc7255569118

Add more superclass-related methods to Class

view details

Nikolai Vazquez

commit sha 7ec27e7fa5cb9ae43354efcb84652740544ffb16

Create objc selector type and macros

view details

Nikolai Vazquez

commit sha 89fdf97c7fabb5a1b9461c6eda9a7febc8178b8a

Add NSCopying methods to NSObject

view details

Nikolai Vazquez

commit sha 85d7f84b2c661af2457b97ee1d21108344b027ae

Create module for Foundation

view details

Nikolai Vazquez

commit sha da71c2a4e74107b5db8eb1e697cf60e904c7d3ec

Create module for Core Foundation

view details

Nikolai Vazquez

commit sha 3edf9bfb89a9931d663e7f92abf6db2ef737c24b

Create NSString and NSMutableString

view details

Nikolai Vazquez

commit sha e2b61496c452e787e60acaa89c3d398cf82a7534

Create NSStringEncoding

view details

Nikolai Vazquez

commit sha decb225b42c895e921c71a0af536cf2472a4cdba

Make objc macros usable from other modules

view details

Nikolai Vazquez

commit sha e51f35bbff95ecc733b014897e27c943744b7487

Create NSComparisonResult

view details

push time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 44b8a6e27158d41288b7d5aa49c7dbfd07ceff08

Warn on missing documentation

view details

Nikolai Vazquez

commit sha 2a4d78492ae3e72d808edbfe6bcd9350a9d3afb5

Create objc Class type

view details

Nikolai Vazquez

commit sha ef01afbdae8b0b4ae1f2150e282b20f43c20de2c

Add some project goals to README.md

view details

Nikolai Vazquez

commit sha 8c3c02265408b77fac251451998b16bd43757b95

Make improper C types a compile error

view details

push time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha a6901d0650d2d6885c889af5b36c7b17a8188ee4

Make crate only compile for 32 and 64 bit systems

view details

Nikolai Vazquez

commit sha bda91ee306ab98cdef43a5af18e67cffc55f5f68

Create module for Objective-C

view details

Nikolai Vazquez

commit sha dee9622d236b45045ccefaf20f5e936b71f90055

Define `BOOL`, `YES`, and `NO`

view details

Nikolai Vazquez

commit sha 1bf47c9a9e0c1f1ffcf3c0e5a1fcd67c24113fee

Create README.md

view details

Nikolai Vazquez

commit sha 011e53e6bd941e0e42f027ef8c1f626d006dc2a0

Define objc ints and related constants

view details

push time in 2 months

push eventnvzqz/fruity

Nikolai Vazquez

commit sha 48a8b30b4ab77cbc531094a3d1f18e54f2da2b11

Dual license project under MIT or Apache 2.0

view details

Nikolai Vazquez

commit sha 16a6e591e78b8a1dc370f544ac8f7b4bbacaf516

Create crate

view details

push time in 2 months

create barnchnvzqz/fruity

branch : main

created branch time in 2 months

created repositorynvzqz/fruity

[WIP] Rusty bindings for Apple libraries

created time in 2 months

create barnchnvzqz/rust-selector-example

branch : main

created branch time in 2 months

created repositorynvzqz/rust-selector-example

My attempt at creating Objective-C selectors in Rust at compile time

created time in 2 months

issue openedfish-shell/fish-shell

Should expand home tilde in fish_variables

<!-- Please tell us which fish version you are using by executing the following:

fish --version echo $version

Please tell us which operating system and terminal you are using. The output of uname -a and echo $TERM may be helpful in this regard although other commands might be relevant in your specific situation.

Please tell us if you tried fish without third-party customizations by executing this command and whether it affected the behavior you are reporting:

sh -c 'env HOME=$(mktemp -d) fish'

Tell us how to reproduce the problem. Including an asciinema.org recording is useful for problems that involve the visual display of fish output such as its prompt. -->

fish, version 3.1.2

As a Rust user who would like to keep the same configuration across multiple machines (with different account names), I'd like for it to be possible to do:

set -Ua fish_user_paths '~/.cargo/bin'

And in fish_variables have the \x7e in \x7e/\x2ecargo/bin be evaluated as my home directory.

In the meantime, my current solution is to have this in config.fish:

set -ga fish_user_paths "$HOME/.cargo/bin"

created time in 2 months

issue commentrust-lang/rust

Tracking issue for the `linkage` feature

What work is needed to stabilize #[weak] in extern "C" blocks?

aturon

comment created time in 2 months

startedrune-rs/rune

started time in 2 months

startedudoprog/checkers

started time in 2 months

delete branch nvzqz/BLAKE3

delete branch : debug-builders

delete time in 2 months

startedlibimobiledevice/libplist

started time in 2 months

release nvzqz/embed-plist-rs

v1.2.0

released time in 2 months

push eventnvzqz/embed-plist-rs

Nikolai Vazquez

commit sha 470838c98c6f47f5e95e3016bd8a4801167e3e32

Prepare 1.2.0 release

view details

push time in 2 months

created tagnvzqz/embed-plist-rs

tagv1.2.0

Embed property list files like Info.plist directly in your Rust executable binary

created time in 2 months

push eventnvzqz/embed-plist-rs

Nikolai Vazquez

commit sha c78a4d32e7617380a5dd91bd78e9b379b0754ed9

Add `embed_{info,launchd}_plist_bytes!` macros These allow for passing in a `&[u8]` directly instead of reading from a file.

view details

push time in 2 months

release nvzqz/embed-plist-rs

v1.1.0

released time in 2 months

push eventnvzqz/embed-plist-rs

Nikolai Vazquez

commit sha 0652b4fb83e1dfefcdbf903ecafefb713df6b728

Prepare 1.1.0 release

view details

push time in 2 months

created tagnvzqz/embed-plist-rs

tagv1.1.0

Embed property list files like Info.plist directly in your Rust executable binary

created time in 2 months

push eventnvzqz/embed-plist-rs

Nikolai Vazquez

commit sha 7994e28497c4912c17364e6f7a243d1a11c39f69

Include tests in manifest

view details

Nikolai Vazquez

commit sha c4f8cc814c3ed33dd1e81b99b88de2b227db5243

Remove note about reuse test on Rust 1.43+ This only applies to doctest for some reason.

view details

Nikolai Vazquez

commit sha 3157b11e0047268fdfeeccd0f74351b247d3409f

Add `get_{info,launchd}_plist` functions These get the contents from the appropriate macro calls.

view details

push time in 2 months

PublicEvent
PublicEvent

push eventnvzqz/embed-plist-rs

Nikolai Vazquez

commit sha 0471f479bc6f3100a7dc985e5d4babf08932d94f

Only target `x86_64-apple-darwin` on docs.rs

view details

push time in 2 months

release nvzqz/embed-plist-rs

v1.0.0

released time in 2 months

fork nvzqz/servo

The Servo Browser Engine

https://servo.org/

fork in 2 months

delete branch nvzqz/tokio

delete branch : fs-fromraw

delete time in 2 months

pull request commentdtolnay/linkme

Add `DistributedSlice::as_ptr_range`

By accidentally calling I mean, going through Deref. My concern deals with slice::as_ptr_range not being stable yet, and so the possibility getting confusing errors about requiring nightly because of an accidentally deref.

Both this function and slice::as_ptr_range should return the same result. So maybe it's a better idea to make this a &self method.

A risk in implementing this now is that the as_ptr_range may have a name change (although unlikely). This crate isn't 1.0 yet, so there's still room to rename the method (breaking change) without upsetting the community.

nvzqz

comment created time in 2 months

push eventnvzqz/BLAKE3

push time in 2 months

Pull request review commentBLAKE3-team/BLAKE3

Neon detection

 edition = "2018" [features] default = ["std"] -# The NEON implementation does not participate in dynamic feature detection,-# which is currently x86-only. If "neon" is on, NEON support is assumed. Note-# that AArch64 always supports NEON, but support on ARMv7 varies. The NEON-# implementation uses C intrinsics and requires a C compiler.-neon = []

If this change lands, something to keep in mind is that removing Cargo features is considered a breaking change and would require a 0.x to 0.y version bump. It might be better to release a backward-compatible version with NEON detection, and then later remove the flag when other breaking changes are happening.

xnox

comment created time in 2 months

PullRequestReviewEvent
more