{"crate":{"id":"safer-ffi","name":"safer-ffi","updated_at":"2026-01-16T16:37:33.110020Z","versions":[1949808,1613858,1272748,1220889,1220026,1218752,1218731,1205271,1205206,1204373,1204121,1196297,1195881,1186787,1146290,1107211,1097658,1022503,934526,894506,841127,840219,826180,749517,552363,552360,550099,544768,509768,509372,380815,250866,250625,250504,250502,248511,248500,246744],"keywords":["bindings","ffi","framework","no_std","safety"],"categories":[],"badges":[],"created_at":"2020-05-29T16:42:57.340797Z","downloads":3678200,"recent_downloads":354121,"default_version":"0.1.13","num_versions":38,"yanked":false,"max_version":"0.2.0-rc1","newest_version":"0.2.0-rc1","max_stable_version":"0.1.13","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","links":{"version_downloads":"/api/v1/crates/safer-ffi/downloads","versions":null,"owners":"/api/v1/crates/safer-ffi/owners","owner_team":"/api/v1/crates/safer-ffi/owner_team","owner_user":"/api/v1/crates/safer-ffi/owner_user","reverse_dependencies":"/api/v1/crates/safer-ffi/reverse_dependencies"},"exact_match":false,"trustpub_only":false},"versions":[{"id":1949808,"crate":"safer-ffi","num":"0.2.0-rc1","dl_path":"/api/v1/crates/safer-ffi/0.2.0-rc1/download","readme_path":"/api/v1/crates/safer-ffi/0.2.0-rc1/readme","updated_at":"2026-01-16T16:37:33.110020Z","created_at":"2026-01-16T16:37:33.110020Z","downloads":63650,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"ffi-tests":[],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","stabby","tokio/rt-multi-thread"],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.2.0-rc1/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.2.0-rc1/downloads","authors":"/api/v1/crates/safer-ffi/0.2.0-rc1/authors"},"crate_size":119924,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2026-01-16T16:37:33.110020Z"}],"checksum":"41ac90f8785f12476d1c96635cfff3ec766c851f104f228b82e6fe7d4022a241","rust_version":"1.85.0","has_lib":true,"bin_names":[],"edition":"2024","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Lua":{"code_lines":3,"comment_lines":0,"files":2},"Rust":{"code_lines":11352,"comment_lines":645,"files":54},"Shell":{"code_lines":185,"comment_lines":45,"files":5}},"total_code_lines":11567,"total_comment_lines":690}},{"id":1613858,"crate":"safer-ffi","num":"0.2.0-alpha.0","dl_path":"/api/v1/crates/safer-ffi/0.2.0-alpha.0/download","readme_path":"/api/v1/crates/safer-ffi/0.2.0-alpha.0/readme","updated_at":"2025-06-24T12:38:06.673085Z","created_at":"2025-06-24T12:38:06.673085Z","downloads":135336,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"ffi-tests":[],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","stabby","tokio/rt-multi-thread"],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.2.0-alpha.0/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.2.0-alpha.0/downloads","authors":"/api/v1/crates/safer-ffi/0.2.0-alpha.0/authors"},"crate_size":113643,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2025-06-24T12:38:06.673085Z"}],"checksum":"bb47dfdd2333e80003ffd9365e9758e35ff86acbf049f0310ca4f3ed0e8906ee","rust_version":"1.85.0","has_lib":true,"bin_names":[],"edition":"2024","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Lua":{"code_lines":3,"comment_lines":0,"files":2},"Rust":{"code_lines":10412,"comment_lines":633,"files":53},"Shell":{"code_lines":185,"comment_lines":45,"files":5}},"total_code_lines":10627,"total_comment_lines":678}},{"id":1272748,"crate":"safer-ffi","num":"0.1.13","dl_path":"/api/v1/crates/safer-ffi/0.1.13/download","readme_path":"/api/v1/crates/safer-ffi/0.1.13/readme","updated_at":"2024-09-17T18:08:42.234597Z","created_at":"2024-09-17T18:08:42.234597Z","downloads":1832150,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.13/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.13/downloads","authors":"/api/v1/crates/safer-ffi/0.1.13/authors"},"crate_size":92318,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-09-17T18:08:42.234597Z"}],"checksum":"435fdd58b61a6f1d8545274c1dfa458e905ff68c166e65e294a0130ef5e675bd","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10487,"comment_lines":588,"files":49},"Shell":{"code_lines":82,"comment_lines":5,"files":3}},"total_code_lines":10596,"total_comment_lines":593}},{"id":1220889,"crate":"safer-ffi","num":"0.1.12","dl_path":"/api/v1/crates/safer-ffi/0.1.12/download","readme_path":"/api/v1/crates/safer-ffi/0.1.12/readme","updated_at":"2024-08-01T14:07:00.781069Z","created_at":"2024-08-01T14:07:00.781069Z","downloads":175357,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.12/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.12/downloads","authors":"/api/v1/crates/safer-ffi/0.1.12/authors"},"crate_size":90850,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-08-01T14:07:00.781069Z"}],"checksum":"614978f55c6e885794b44afb2e2378fe61b104ec4391f310d879edf3df9d874c","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10452,"comment_lines":589,"files":49},"Shell":{"code_lines":82,"comment_lines":5,"files":3}},"total_code_lines":10561,"total_comment_lines":594}},{"id":1220026,"crate":"safer-ffi","num":"0.1.11","dl_path":"/api/v1/crates/safer-ffi/0.1.11/download","readme_path":"/api/v1/crates/safer-ffi/0.1.11/readme","updated_at":"2024-07-31T17:23:07.015199Z","created_at":"2024-07-31T17:23:07.015199Z","downloads":1213,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.11/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.11/downloads","authors":"/api/v1/crates/safer-ffi/0.1.11/authors"},"crate_size":90873,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-07-31T17:23:07.015199Z"}],"checksum":"47f9b11f9225921a629c05ff2536a487173498f55dafeaa06782d6ae74a86dca","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10454,"comment_lines":589,"files":49},"Shell":{"code_lines":82,"comment_lines":5,"files":3}},"total_code_lines":10563,"total_comment_lines":594}},{"id":1218752,"crate":"safer-ffi","num":"0.1.10","dl_path":"/api/v1/crates/safer-ffi/0.1.10/download","readme_path":"/api/v1/crates/safer-ffi/0.1.10/readme","updated_at":"2024-07-30T10:39:17.967014Z","created_at":"2024-07-30T10:39:17.967014Z","downloads":1644,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.10/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.10/downloads","authors":"/api/v1/crates/safer-ffi/0.1.10/authors"},"crate_size":90879,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-07-30T10:39:17.967014Z"}],"checksum":"42fe5428a901236f1a1b2620aa39fbfcd2793a44fde7e3252f7a307234246877","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10454,"comment_lines":589,"files":49},"Shell":{"code_lines":82,"comment_lines":5,"files":3}},"total_code_lines":10563,"total_comment_lines":594}},{"id":1218731,"crate":"safer-ffi","num":"0.1.10-rc4","dl_path":"/api/v1/crates/safer-ffi/0.1.10-rc4/download","readme_path":"/api/v1/crates/safer-ffi/0.1.10-rc4/readme","updated_at":"2024-07-30T10:07:39.374776Z","created_at":"2024-07-30T10:07:39.374776Z","downloads":1022,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.10-rc4/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.10-rc4/downloads","authors":"/api/v1/crates/safer-ffi/0.1.10-rc4/authors"},"crate_size":90910,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-07-30T10:07:39.374776Z"}],"checksum":"4fa8c3a3ca07096ad0825be14321810d6951a666cd23aa13c49dbe3ffe2fbad5","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10454,"comment_lines":589,"files":49},"Shell":{"code_lines":82,"comment_lines":5,"files":3}},"total_code_lines":10563,"total_comment_lines":594}},{"id":1205271,"crate":"safer-ffi","num":"0.1.10-rc3","dl_path":"/api/v1/crates/safer-ffi/0.1.10-rc3/download","readme_path":"/api/v1/crates/safer-ffi/0.1.10-rc3/readme","updated_at":"2024-07-16T16:07:48.870829Z","created_at":"2024-07-16T16:07:48.870829Z","downloads":2588,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.10-rc3/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.10-rc3/downloads","authors":"/api/v1/crates/safer-ffi/0.1.10-rc3/authors"},"crate_size":88070,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-07-16T16:07:48.870829Z"}],"checksum":"c277dea0368d0b8031add1d206a56857ac271bf6ace593c1870a64a2a1c6611a","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10311,"comment_lines":576,"files":49},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":10349,"total_comment_lines":577}},{"id":1205206,"crate":"safer-ffi","num":"0.1.10-rc2","dl_path":"/api/v1/crates/safer-ffi/0.1.10-rc2/download","readme_path":"/api/v1/crates/safer-ffi/0.1.10-rc2/readme","updated_at":"2024-07-16T15:37:36.621419Z","created_at":"2024-07-16T15:37:36.621419Z","downloads":987,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.10-rc2/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.10-rc2/downloads","authors":"/api/v1/crates/safer-ffi/0.1.10-rc2/authors"},"crate_size":88068,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-07-16T15:37:36.621419Z"}],"checksum":"22f7fb7246f5223d2ce891d4573cba2782353e6ecb9e166b79dfa2c6eb19aa19","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10311,"comment_lines":576,"files":49},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":10349,"total_comment_lines":577}},{"id":1204373,"crate":"safer-ffi","num":"0.1.10-rc1","dl_path":"/api/v1/crates/safer-ffi/0.1.10-rc1/download","readme_path":"/api/v1/crates/safer-ffi/0.1.10-rc1/readme","updated_at":"2024-07-15T19:49:25.206877Z","created_at":"2024-07-15T19:49:25.206877Z","downloads":1538,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.10-rc1/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.10-rc1/downloads","authors":"/api/v1/crates/safer-ffi/0.1.10-rc1/authors"},"crate_size":88069,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-07-15T19:49:25.206877Z"}],"checksum":"7a7efffcdff03b1ecaf649afe057e7072138923592b5e0b32a207ac7e3c3b223","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10311,"comment_lines":576,"files":49},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":10349,"total_comment_lines":577}},{"id":1204121,"crate":"safer-ffi","num":"0.1.9","dl_path":"/api/v1/crates/safer-ffi/0.1.9/download","readme_path":"/api/v1/crates/safer-ffi/0.1.9/readme","updated_at":"2024-07-15T15:45:42.996909Z","created_at":"2024-07-15T15:45:42.996909Z","downloads":3264,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"serde":["dep:serde"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.9/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.9/downloads","authors":"/api/v1/crates/safer-ffi/0.1.9/authors"},"crate_size":87843,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-07-15T15:45:42.996909Z"}],"checksum":"861a5ab47974b7f0d4fc3ff63570100497dd4d31b93ee53ddfef6c255dd98453","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10269,"comment_lines":575,"files":49},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":10307,"total_comment_lines":576}},{"id":1196297,"crate":"safer-ffi","num":"0.1.9-rc3","dl_path":"/api/v1/crates/safer-ffi/0.1.9-rc3/download","readme_path":"/api/v1/crates/safer-ffi/0.1.9-rc3/readme","updated_at":"2024-07-08T10:48:50.211404Z","created_at":"2024-07-08T10:48:50.211404Z","downloads":2099,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.9-rc3/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.9-rc3/downloads","authors":"/api/v1/crates/safer-ffi/0.1.9-rc3/authors"},"crate_size":87697,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-07-08T10:48:50.211404Z"}],"checksum":"35bb5f730ee3471933c4037d1a1d9aab6e3f7074deecd2164fdc2e8ce6ff5eea","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10257,"comment_lines":575,"files":49},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":10295,"total_comment_lines":576}},{"id":1195881,"crate":"safer-ffi","num":"0.1.9-rc2","dl_path":"/api/v1/crates/safer-ffi/0.1.9-rc2/download","readme_path":"/api/v1/crates/safer-ffi/0.1.9-rc2/readme","updated_at":"2024-07-07T22:25:24.051139Z","created_at":"2024-07-07T22:25:24.051139Z","downloads":1038,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.9-rc2/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.9-rc2/downloads","authors":"/api/v1/crates/safer-ffi/0.1.9-rc2/authors"},"crate_size":87682,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-07-07T22:25:24.051139Z"}],"checksum":"4a1036dc93537242ca523eac1d9a055f91a6e117324fe19017c75ed5ddb3c257","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10257,"comment_lines":575,"files":49},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":10295,"total_comment_lines":576}},{"id":1186787,"crate":"safer-ffi","num":"0.1.9-rc1","dl_path":"/api/v1/crates/safer-ffi/0.1.9-rc1/download","readme_path":"/api/v1/crates/safer-ffi/0.1.9-rc1/readme","updated_at":"2024-06-27T10:27:52.202231Z","created_at":"2024-06-27T10:27:52.202231Z","downloads":1928,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"stabby":["dep:stabby"],"std":["alloc","scopeguard/use_std","stabby?/std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.9-rc1/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.9-rc1/downloads","authors":"/api/v1/crates/safer-ffi/0.1.9-rc1/authors"},"crate_size":86802,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-06-27T10:27:52.202231Z"}],"checksum":"68cfe0911f862751d5482596b044d5ef88dacab8d107fff82432ed8ed750c215","rust_version":"1.72.1","has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":10213,"comment_lines":575,"files":48},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":10251,"total_comment_lines":576}},{"id":1146290,"crate":"safer-ffi","num":"0.1.8","dl_path":"/api/v1/crates/safer-ffi/0.1.8/download","readme_path":"/api/v1/crates/safer-ffi/0.1.8/readme","updated_at":"2024-05-16T12:58:18.607763Z","created_at":"2024-05-16T12:58:18.607763Z","downloads":1025569,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"std":["alloc","scopeguard/use_std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.8/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.8/downloads","authors":"/api/v1/crates/safer-ffi/0.1.8/authors"},"crate_size":79989,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-05-16T12:58:18.607763Z"}],"checksum":"44abae8773dc41fb96af52696b834b1f4c806006b456b22ee3602f7b061e3ad0","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":9388,"comment_lines":571,"files":43},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":9426,"total_comment_lines":572}},{"id":1107211,"crate":"safer-ffi","num":"0.1.7","dl_path":"/api/v1/crates/safer-ffi/0.1.7/download","readme_path":"/api/v1/crates/safer-ffi/0.1.7/readme","updated_at":"2024-04-08T11:25:42.745463Z","created_at":"2024-04-08T11:25:42.745463Z","downloads":27053,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":[],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"std":["alloc","scopeguard/use_std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.7/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.7/downloads","authors":"/api/v1/crates/safer-ffi/0.1.7/authors"},"crate_size":80261,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-04-08T11:25:42.745463Z"}],"checksum":"01e0f9180bdf2f29dd5c731789ba0e68f65233c822ece645d288ec7d112e6333","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":9388,"comment_lines":571,"files":43},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":9426,"total_comment_lines":572}},{"id":1097658,"crate":"safer-ffi","num":"0.1.6","dl_path":"/api/v1/crates/safer-ffi/0.1.6/download","readme_path":"/api/v1/crates/safer-ffi/0.1.6/readme","updated_at":"2024-03-29T10:54:13.843505Z","created_at":"2024-03-29T10:54:13.843505Z","downloads":4127,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":["dep:inventory-0-3-1","safer_ffi-proc_macros/inventory-0-3-1"],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"std":["alloc","scopeguard/use_std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.6/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.6/downloads","authors":"/api/v1/crates/safer-ffi/0.1.6/authors"},"crate_size":80275,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-03-29T10:54:13.843505Z"}],"checksum":"93539eff97e21ebc17aaaddce8c1fce6978d66c34a905f8c99cc5ddcbd567f99","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":9396,"comment_lines":571,"files":43},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":9434,"total_comment_lines":572}},{"id":1022503,"crate":"safer-ffi","num":"0.1.5","dl_path":"/api/v1/crates/safer-ffi/0.1.5/download","readme_path":"/api/v1/crates/safer-ffi/0.1.5/readme","updated_at":"2024-01-22T14:21:16.827572Z","created_at":"2024-01-22T14:21:16.827572Z","downloads":41251,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":["dep:inventory-0-3-1","safer_ffi-proc_macros/inventory-0-3-1"],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"std":["alloc","scopeguard/use_std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.5/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.5/downloads","authors":"/api/v1/crates/safer-ffi/0.1.5/authors"},"crate_size":79537,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2024-01-22T14:21:16.827572Z"}],"checksum":"4483c5ab47f222d2c297e73a520c9003e09e2fe1f1b04edcb572e6939f303003","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":18,"comment_lines":0,"files":2},"Rust":{"code_lines":9373,"comment_lines":565,"files":43},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":9411,"total_comment_lines":566}},{"id":934526,"crate":"safer-ffi","num":"0.1.4","dl_path":"/api/v1/crates/safer-ffi/0.1.4/download","readme_path":"/api/v1/crates/safer-ffi/0.1.4/readme","updated_at":"2023-10-25T09:29:12.007747Z","created_at":"2023-10-25T09:29:12.007747Z","downloads":46083,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":["dep:inventory-0-3-1","safer_ffi-proc_macros/inventory-0-3-1"],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"std":["alloc","scopeguard/use_std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.4/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.4/downloads","authors":"/api/v1/crates/safer-ffi/0.1.4/authors"},"crate_size":79408,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2023-10-25T09:29:12.007747Z"}],"checksum":"395ace5aff9629c7268ca8255aceb945525b2cb644015f3caec5131a6a537c11","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":14,"comment_lines":0,"files":2},"Rust":{"code_lines":9357,"comment_lines":565,"files":43},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":9391,"total_comment_lines":566}},{"id":894506,"crate":"safer-ffi","num":"0.1.3","dl_path":"/api/v1/crates/safer-ffi/0.1.3/download","readme_path":"/api/v1/crates/safer-ffi/0.1.3/readme","updated_at":"2023-09-11T10:55:13.454903Z","created_at":"2023-09-11T10:55:13.454903Z","downloads":8147,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":["dep:inventory-0-3-1","safer_ffi-proc_macros/inventory-0-3-1"],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"std":["alloc","scopeguard/use_std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.3/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.3/downloads","authors":"/api/v1/crates/safer-ffi/0.1.3/authors"},"crate_size":79301,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2023-09-11T10:55:13.454903Z"}],"checksum":"e9c1d19b288ca9898cd421c7b105fb7269918a7f8e9253a991e228981ca421ad","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":14,"comment_lines":0,"files":2},"Rust":{"code_lines":9354,"comment_lines":565,"files":43},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":9388,"total_comment_lines":566}},{"id":841127,"crate":"safer-ffi","num":"0.1.2","dl_path":"/api/v1/crates/safer-ffi/0.1.2/download","readme_path":"/api/v1/crates/safer-ffi/0.1.2/readme","updated_at":"2023-07-07T15:30:37.679953Z","created_at":"2023-07-07T15:30:37.679953Z","downloads":9571,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":["dep:inventory-0-3-1","safer_ffi-proc_macros/inventory-0-3-1"],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"std":["alloc","scopeguard/use_std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.2/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.2/downloads","authors":"/api/v1/crates/safer-ffi/0.1.2/authors"},"crate_size":78171,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2023-07-07T15:30:37.679953Z"}],"checksum":"4f47f1d2f33598dab2baa9517fffa1cf722f2e3a30633f2a230f20f9da67c564","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":14,"comment_lines":0,"files":2},"Rust":{"code_lines":9251,"comment_lines":555,"files":43},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":9285,"total_comment_lines":556}},{"id":840219,"crate":"safer-ffi","num":"0.1.1","dl_path":"/api/v1/crates/safer-ffi/0.1.1/download","readme_path":"/api/v1/crates/safer-ffi/0.1.1/readme","updated_at":"2023-07-06T13:24:51.204723Z","created_at":"2023-07-06T13:24:51.204723Z","downloads":1285,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":["dep:inventory-0-3-1","safer_ffi-proc_macros/inventory-0-3-1"],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"std":["alloc","scopeguard/use_std"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.1/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.1/downloads","authors":"/api/v1/crates/safer-ffi/0.1.1/authors"},"crate_size":77310,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2023-07-06T13:24:51.204723Z"}],"checksum":"0e7a1f23fbe5bfc45f8b0550cd8125ca7f4ed5bfcbc1ec47ecb4a137fec32432","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":14,"comment_lines":0,"files":2},"Rust":{"code_lines":9207,"comment_lines":555,"files":42},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":9241,"total_comment_lines":556}},{"id":826180,"crate":"safer-ffi","num":"0.1.0","dl_path":"/api/v1/crates/safer-ffi/0.1.0/download","readme_path":"/api/v1/crates/safer-ffi/0.1.0/readme","updated_at":"2023-06-19T14:37:37.074198Z","created_at":"2023-06-19T14:37:37.074198Z","downloads":2863,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","python-headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":["dep:inventory-0-3-1","safer_ffi-proc_macros/inventory-0-3-1"],"js":["async-fn","dep:once_cell","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"python-headers":["headers"],"std":["alloc"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.0/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.0/downloads","authors":"/api/v1/crates/safer-ffi/0.1.0/authors"},"crate_size":77083,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2023-06-19T14:37:37.074198Z"}],"checksum":"62fd645a8c0b4a71f0883dce1bc48e358fcc02b99c83613f62ede5660b3572c1","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":14,"comment_lines":0,"files":2},"Rust":{"code_lines":9207,"comment_lines":555,"files":42},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":9241,"total_comment_lines":556}},{"id":749517,"crate":"safer-ffi","num":"0.1.0-rc1","dl_path":"/api/v1/crates/safer-ffi/0.1.0-rc1/download","readme_path":"/api/v1/crates/safer-ffi/0.1.0-rc1/readme","updated_at":"2023-03-14T13:41:06.151363Z","created_at":"2023-03-14T13:41:06.151363Z","downloads":31099,"features":{"alloc":[],"async-fn":["safer_ffi-proc_macros/async-fn"],"c-headers-with-fn-style":["headers"],"debug_proc_macros":["safer_ffi-proc_macros/verbose-expansions"],"default":["std"],"docs":["headers","default","nightly","tokio"],"dyn-traits":["safer_ffi-proc_macros/dyn-traits","std"],"futures":["dep:futures","dyn-traits"],"headers":["inventory","safer_ffi-proc_macros/headers","std"],"internal-tests":["async-fn","headers","dyn-traits","tokio/rt-multi-thread"],"inventory-0-3-1":["dep:inventory-0-3-1","safer_ffi-proc_macros/inventory-0-3-1"],"js":["async-fn","headers","inventory","napi","safer_ffi-proc_macros/js","std"],"nightly":[],"proc_macros":[],"std":["alloc"],"tokio":["async-compat","dep:tokio","futures"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.1.0-rc1/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.1.0-rc1/downloads","authors":"/api/v1/crates/safer-ffi/0.1.0-rc1/authors"},"crate_size":75275,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2023-03-14T13:41:06.151363Z"}],"checksum":"7270b08a2af50909969cfc28a239cfdda9ab1b3df74749b265c46956183e5bf7","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2021","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"C Header":{"code_lines":9,"comment_lines":0,"files":2},"C#":{"code_lines":14,"comment_lines":0,"files":2},"Rust":{"code_lines":8937,"comment_lines":544,"files":41},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":8971,"total_comment_lines":545}},{"id":552363,"crate":"safer-ffi","num":"0.0.10","dl_path":"/api/v1/crates/safer-ffi/0.0.10/download","readme_path":"/api/v1/crates/safer-ffi/0.0.10/readme","updated_at":"2022-05-20T10:13:52.128232Z","created_at":"2022-05-20T10:13:52.128232Z","downloads":18566,"features":{"alloc":[],"debug_proc_macros":["proc_macros","safer_ffi-proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","safer_ffi-proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["safer_ffi-proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.10/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.10/downloads","authors":"/api/v1/crates/safer-ffi/0.0.10/authors"},"crate_size":43620,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2022-05-20T10:13:52.128232Z"}],"checksum":"40c710243617290d86a49a30564d94d0b646eacf6d7b67035e20d6e8a21f1193","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":5676,"comment_lines":151,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":5687,"total_comment_lines":152}},{"id":552360,"crate":"safer-ffi","num":"0.0.10-rc1","dl_path":"/api/v1/crates/safer-ffi/0.0.10-rc1/download","readme_path":"/api/v1/crates/safer-ffi/0.0.10-rc1/readme","updated_at":"2022-05-20T10:07:24.245839Z","created_at":"2022-05-20T10:07:24.245839Z","downloads":1138,"features":{"alloc":[],"debug_proc_macros":["proc_macros","safer_ffi-proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","safer_ffi-proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["safer_ffi-proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.10-rc1/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.10-rc1/downloads","authors":"/api/v1/crates/safer-ffi/0.0.10-rc1/authors"},"crate_size":43588,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2022-05-20T10:07:24.245839Z"}],"checksum":"20dbdb50124c7b3ad0bddb48fd69c2a62bce211dbc05d423b4c71d292fdea7aa","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":5676,"comment_lines":151,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":5687,"total_comment_lines":152}},{"id":550099,"crate":"safer-ffi","num":"0.0.9","dl_path":"/api/v1/crates/safer-ffi/0.0.9/download","readme_path":"/api/v1/crates/safer-ffi/0.0.9/readme","updated_at":"2022-05-16T15:53:27.426911Z","created_at":"2022-05-16T15:53:27.426911Z","downloads":1178,"features":{"alloc":[],"debug_proc_macros":["proc_macros","safer_ffi-proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","safer_ffi-proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["safer_ffi-proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.9/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.9/downloads","authors":"/api/v1/crates/safer-ffi/0.0.9/authors"},"crate_size":43492,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2022-05-16T15:53:27.426911Z"}],"checksum":"979da9c29ccd67ff8d890cee007c81156bd65892cbd7b5193f59a6d476edfc82","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":5657,"comment_lines":150,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":5668,"total_comment_lines":151}},{"id":544768,"crate":"safer-ffi","num":"0.0.8","dl_path":"/api/v1/crates/safer-ffi/0.0.8/download","readme_path":"/api/v1/crates/safer-ffi/0.0.8/readme","updated_at":"2022-05-06T12:28:59.948758Z","created_at":"2022-05-06T12:28:59.948758Z","downloads":1201,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.8/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.8/downloads","authors":"/api/v1/crates/safer-ffi/0.0.8/authors"},"crate_size":43496,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2022-05-06T12:28:59.948758Z"}],"checksum":"118693d95bfcc88d5e54460099f1b440599fb8674906b7c83cf5e7e7956197ad","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":5657,"comment_lines":150,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":5668,"total_comment_lines":151}},{"id":509768,"crate":"safer-ffi","num":"0.0.7","dl_path":"/api/v1/crates/safer-ffi/0.0.7/download","readme_path":"/api/v1/crates/safer-ffi/0.0.7/readme","updated_at":"2022-03-03T17:23:50.623056Z","created_at":"2022-03-03T17:23:50.623056Z","downloads":80965,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.7/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.7/downloads","authors":"/api/v1/crates/safer-ffi/0.0.7/authors"},"crate_size":43296,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2022-03-03T17:23:50.623056Z"}],"checksum":"c52424d2271f2f5aae854241d76244d75194b3486c6714c8020cdb8384c6be22","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":5621,"comment_lines":150,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":5632,"total_comment_lines":151}},{"id":509372,"crate":"safer-ffi","num":"0.0.7-rc1","dl_path":"/api/v1/crates/safer-ffi/0.0.7-rc1/download","readme_path":"/api/v1/crates/safer-ffi/0.0.7-rc1/readme","updated_at":"2022-03-02T21:36:33.109995Z","created_at":"2022-03-02T21:36:33.109995Z","downloads":1189,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.7-rc1/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.7-rc1/downloads","authors":"/api/v1/crates/safer-ffi/0.0.7-rc1/authors"},"crate_size":43687,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2022-03-02T21:36:33.109995Z"}],"checksum":"b119935660dfafc19cb38f423ee5417965ad834e1cb6d47f6a6ff4c4ea20c417","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":5621,"comment_lines":150,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":5632,"total_comment_lines":151}},{"id":380815,"crate":"safer-ffi","num":"0.0.6","dl_path":"/api/v1/crates/safer-ffi/0.0.6/download","readme_path":"/api/v1/crates/safer-ffi/0.0.6/readme","updated_at":"2021-05-21T11:05:48.218271Z","created_at":"2021-05-21T11:05:48.218271Z","downloads":18955,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.6/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.6/downloads","authors":"/api/v1/crates/safer-ffi/0.0.6/authors"},"crate_size":863336,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2021-05-21T11:05:48.218271Z"}],"checksum":"42ec1c6fcafcdbbda83d4befd5abcb420b938c9f0cbdf66462cd8039433ccc2d","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"CSS":{"code_lines":906,"comment_lines":43,"files":6},"Handlebars":{"code_lines":275,"comment_lines":13,"files":1},"JavaScript":{"code_lines":525,"comment_lines":32,"files":2},"Rust":{"code_lines":5622,"comment_lines":150,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":7339,"total_comment_lines":239}},{"id":250866,"crate":"safer-ffi","num":"0.0.5","dl_path":"/api/v1/crates/safer-ffi/0.0.5/download","readme_path":"/api/v1/crates/safer-ffi/0.0.5/readme","updated_at":"2020-06-10T10:10:22.269248Z","created_at":"2020-06-10T10:10:22.269248Z","downloads":122165,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.5/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.5/downloads","authors":"/api/v1/crates/safer-ffi/0.0.5/authors"},"crate_size":863607,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2020-06-10T10:10:22.269248Z"}],"checksum":"beac9c80b67131f3e09f542cbb85b563943310d462f6b32f7ec97446649a5cf8","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"CSS":{"code_lines":906,"comment_lines":43,"files":6},"Handlebars":{"code_lines":275,"comment_lines":13,"files":1},"JavaScript":{"code_lines":525,"comment_lines":32,"files":2},"Rust":{"code_lines":5613,"comment_lines":150,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":7330,"total_comment_lines":239}},{"id":250625,"crate":"safer-ffi","num":"0.0.4","dl_path":"/api/v1/crates/safer-ffi/0.0.4/download","readme_path":"/api/v1/crates/safer-ffi/0.0.4/readme","updated_at":"2020-06-09T19:30:31.392820Z","created_at":"2020-06-09T19:30:31.392820Z","downloads":1513,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.4/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.4/downloads","authors":"/api/v1/crates/safer-ffi/0.0.4/authors"},"crate_size":863279,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2020-06-09T19:30:31.392820Z"}],"checksum":"a606aa930c7d347308e2b288c4ac69a9b3d36e2a20f7e2d2fa38ccbe8e6b557f","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"CSS":{"code_lines":906,"comment_lines":43,"files":6},"Handlebars":{"code_lines":275,"comment_lines":13,"files":1},"JavaScript":{"code_lines":525,"comment_lines":32,"files":2},"Rust":{"code_lines":5553,"comment_lines":174,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":7270,"total_comment_lines":263}},{"id":250504,"crate":"safer-ffi","num":"0.0.3","dl_path":"/api/v1/crates/safer-ffi/0.0.3/download","readme_path":"/api/v1/crates/safer-ffi/0.0.3/readme","updated_at":"2020-06-09T12:37:18.612268Z","created_at":"2020-06-09T12:37:18.612268Z","downloads":1486,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.3/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.3/downloads","authors":"/api/v1/crates/safer-ffi/0.0.3/authors"},"crate_size":863264,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2020-06-09T12:37:18.612268Z"}],"checksum":"ffe546f72aca668e6b2e1aaf9e47f6b14ea8281d0becf68bcf03b8396de27ec1","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"CSS":{"code_lines":906,"comment_lines":43,"files":6},"Handlebars":{"code_lines":275,"comment_lines":13,"files":1},"JavaScript":{"code_lines":525,"comment_lines":32,"files":2},"Rust":{"code_lines":5553,"comment_lines":174,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":7270,"total_comment_lines":263}},{"id":250502,"crate":"safer-ffi","num":"0.0.2","dl_path":"/api/v1/crates/safer-ffi/0.0.2/download","readme_path":"/api/v1/crates/safer-ffi/0.0.2/readme","updated_at":"2020-06-09T12:25:01.814863Z","created_at":"2020-06-09T12:25:01.814863Z","downloads":1512,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":false,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.2/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.2/downloads","authors":"/api/v1/crates/safer-ffi/0.0.2/authors"},"crate_size":863244,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2020-06-09T12:25:01.814863Z"}],"checksum":"9ebb7a41172a9c2159b3cfc2d807ff85f4de6f069fe96c2923beda8e22327d11","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write safer FFI code in Rust without polluting it with unsafe code","homepage":null,"documentation":null,"repository":"https://github.com/getditto/safer_ffi","trustpub_data":null,"linecounts":{"languages":{"CSS":{"code_lines":906,"comment_lines":43,"files":6},"Handlebars":{"code_lines":275,"comment_lines":13,"files":1},"JavaScript":{"code_lines":525,"comment_lines":32,"files":2},"Rust":{"code_lines":5553,"comment_lines":174,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":7270,"total_comment_lines":263}},{"id":248511,"crate":"safer-ffi","num":"0.0.1","dl_path":"/api/v1/crates/safer-ffi/0.0.1/download","readme_path":"/api/v1/crates/safer-ffi/0.0.1/readme","updated_at":"2020-06-09T12:27:44.843235Z","created_at":"2020-06-03T13:15:44.755080Z","downloads":1159,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":true,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.1/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.1/downloads","authors":"/api/v1/crates/safer-ffi/0.0.1/authors"},"crate_size":173529,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2020-06-03T13:15:44.755080Z"},{"action":"yank","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2020-06-09T12:27:43.521481Z"}],"checksum":"113fb580e2677b0a44edad6b27b3380d9da62aee66d46260872824788f9c4d97","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"#[repr(C)] equivalents of stdlib pervasive types for easier FFI","homepage":null,"documentation":null,"repository":null,"trustpub_data":null,"linecounts":{"languages":{"CSS":{"code_lines":906,"comment_lines":43,"files":6},"Handlebars":{"code_lines":272,"comment_lines":13,"files":1},"JavaScript":{"code_lines":525,"comment_lines":32,"files":2},"Rust":{"code_lines":5547,"comment_lines":174,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":7261,"total_comment_lines":263}},{"id":248500,"crate":"safer-ffi","num":"0.0.1-alpha-2.0","dl_path":"/api/v1/crates/safer-ffi/0.0.1-alpha-2.0/download","readme_path":"/api/v1/crates/safer-ffi/0.0.1-alpha-2.0/readme","updated_at":"2020-06-09T12:30:06.376179Z","created_at":"2020-06-03T12:15:58.421883Z","downloads":1148,"features":{"alloc":[],"debug_proc_macros":["proc_macros","proc_macro/verbose-expansions"],"default":["std"],"derives":["proc_macros"],"headers":["inventory","proc_macro/headers","std"],"nightly":[],"out-refs":["uninit"],"proc_macros":["proc_macro/proc_macros","require_unsafe_in_body","proc-macro-hack"],"std":["alloc"]},"yanked":true,"yank_message":null,"lib_links":null,"license":"MIT","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.1-alpha-2.0/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.1-alpha-2.0/downloads","authors":"/api/v1/crates/safer-ffi/0.0.1-alpha-2.0/authors"},"crate_size":173005,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2020-06-03T12:15:58.421883Z"},{"action":"yank","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2020-06-09T12:30:03.519314Z"}],"checksum":"d486970a6ca9c6175b7291711f7091c70427a152bfdcabfd6e66a7b801d006af","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"#[repr(C)] equivalents of stdlib pervasive types for easier FFI","homepage":null,"documentation":null,"repository":null,"trustpub_data":null,"linecounts":{"languages":{"CSS":{"code_lines":906,"comment_lines":43,"files":6},"Handlebars":{"code_lines":272,"comment_lines":13,"files":1},"JavaScript":{"code_lines":525,"comment_lines":32,"files":2},"Rust":{"code_lines":5547,"comment_lines":174,"files":26},"Shell":{"code_lines":11,"comment_lines":1,"files":1}},"total_code_lines":7261,"total_comment_lines":263}},{"id":246744,"crate":"safer-ffi","num":"0.0.0","dl_path":"/api/v1/crates/safer-ffi/0.0.0/download","readme_path":"/api/v1/crates/safer-ffi/0.0.0/readme","updated_at":"2020-05-29T16:42:57.340797Z","created_at":"2020-05-29T16:42:57.340797Z","downloads":1213,"features":{},"yanked":false,"yank_message":null,"lib_links":null,"license":"Unlicense","links":{"dependencies":"/api/v1/crates/safer-ffi/0.0.0/dependencies","version_downloads":"/api/v1/crates/safer-ffi/0.0.0/downloads","authors":"/api/v1/crates/safer-ffi/0.0.0/authors"},"crate_size":686,"published_by":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"audit_actions":[{"action":"publish","user":{"id":27661,"login":"danielhenrymantilla","name":"Daniel Henry-Mantilla","avatar":"https://avatars.githubusercontent.com/u/9920355?v=4","url":"https://github.com/danielhenrymantilla","github_username_matches":true,"created_at":"2014-11-23T22:35:10Z"},"time":"2020-05-29T16:42:57.340797Z"}],"checksum":"dd9aebf997383e6f3d468e02568943436b480210e5c62c152da4d68bca9aef35","rust_version":null,"has_lib":true,"bin_names":[],"edition":"2018","description":"Write FFI code in Rust without unsafe","homepage":null,"documentation":null,"repository":null,"trustpub_data":null,"linecounts":{"languages":{"Rust":{"code_lines":0,"comment_lines":0,"files":1}},"total_code_lines":0,"total_comment_lines":0}}],"keywords":[{"id":"bindings","keyword":"bindings","created_at":"2014-11-20T21:45:18.916803Z","crates_cnt":1092},{"id":"ffi","keyword":"ffi","created_at":"2014-11-21T14:53:31.372632Z","crates_cnt":2289},{"id":"framework","keyword":"framework","created_at":"2015-05-08T19:34:16.263147Z","crates_cnt":2547},{"id":"no_std","keyword":"no_std","created_at":"2015-06-20T04:34:42.753830Z","crates_cnt":2371},{"id":"safety","keyword":"safety","created_at":"2017-01-20T06:22:58.759805Z","crates_cnt":171}],"categories":[]}