13 Commits

Author SHA1 Message Date
Jamie Pine
705249019c feat: Implement job registration system for WASM extensions
- Introduced a new `ExtensionJobRegistry` to manage custom job types for extensions at runtime.
- Added `host_register_job` function to facilitate job registration from WASM extensions.
- Updated `PluginEnv` and `PluginManager` to include job registry functionality.
- Enhanced the `job` macro to support automatic job registration during plugin initialization.
- Updated documentation and tests to reflect the new job registration capabilities.
2025-10-09 05:18:35 -07:00
Jamie Pine
0db006107e refactor: Update job macro references to improve consistency
- Replaced all instances of the `spacedrive_job` macro with the simplified `job` macro across documentation and code files.
- Updated related documentation to reflect the new macro name, enhancing clarity for developers.
- Ensured all examples and usage instructions are aligned with the updated macro terminology.
2025-10-09 04:08:32 -07:00
Jamie Pine
741bb7ce0d refactor: Rename job macros and update documentation
- Renamed `spacedrive_job` macro to `job` for clarity and consistency across the SDK.
- Updated references in the SDK and test extension to reflect the new macro name.
- Enhanced comments in the test extension to better describe functionality and usage.
- Added "checkpointing" to the cspell project words for improved spell checking.
2025-10-09 04:07:12 -07:00
Jamie Pine
49c3ff9f5e feat: Introduce Spacedrive SDK for building WASM extensions
- Added a new SDK for developing Spacedrive WASM extensions, featuring a type-safe API and comprehensive documentation.
- Implemented core components including job context management, FFI bindings, and error handling mechanisms.
- Created macros for simplifying extension and job definitions, enhancing developer experience.
- Included detailed README and status documentation to guide users in utilizing the SDK effectively.
- Updated Cargo configurations for the SDK and its macros, ensuring proper dependency management and build processes.
2025-10-09 04:00:12 -07:00
Jamie Pine
f8ad1c5d16 cleanup docs 2025-10-09 03:56:26 -07:00
Jamie Pine
0b5b62e489 feat: Add comprehensive documentation and integration for WASM extension system
- Introduced `IT_WORKS.md` to document the successful execution of the WASM extension system, detailing test results and the steps taken during the process.
- Updated the `wasm_extension_test.rs` to reflect changes in the test extension structure, ensuring accurate loading and verification of the new test extension.
- Refactored the `Cargo.toml` files for both the SDK and test extension to streamline dependencies and improve build configurations.
- Removed the obsolete `test-extension-minimal` directory, consolidating the extension structure for better clarity and maintenance.
- Enhanced the `JobContext` implementation to utilize byte arrays for UUIDs, improving memory handling and consistency across the extension system.
- Documented next steps for further development, including the creation of a WasmJob executor and additional testing for job dispatching.
2025-10-09 02:01:03 -07:00
Jamie Pine
80de30ef6a feat: Add current status documentation for WASM extension system
- Introduced `CURRENT_STATUS.md` to outline the current state of the WASM extension system, detailing what is working and what remains to be addressed.
- Documented the implementation status of core components, including the `PluginManager`, host functions, and test structure.
- Highlighted immediate tasks and timelines for further development, providing a clear path forward for the extension system.
- Updated the `Core` struct to include the `plugin_manager`, ensuring proper initialization during the core setup.
- Created integration tests for loading WASM extensions, validating the functionality of the new system.
2025-10-09 01:51:15 -07:00
Jamie Pine
2bac0d3226 feat: Integrate WASM extension system into Spacedrive
- Implemented a complete WASM extension framework, enabling secure, sandboxed plugins.
- Added core components including `PluginManager`, `host_functions`, and `permissions` for managing the lifecycle and security of extensions.
- Integrated Wasmer runtime for executing WASM modules, enhancing the platform's extensibility.
- Developed a demo extension showcasing the new API, significantly reducing boilerplate code and improving developer experience.
- Updated documentation to reflect the new architecture and provide guidance for extension development.
- Prepared for testing and validation of the extension system, marking a significant step towards a robust plugin ecosystem.
2025-10-09 01:34:04 -07:00
Jamie Pine
eaf22b99da cleanup (#2551) 2024-06-14 00:35:30 +00:00
Vítor Vasconcellos
c0540b343d Clean up and update rust dependencies (#2544)
* Clean up and update rust dependencies

* Attempt to fix Windows Error
2024-06-10 19:44:00 +00:00
Harry Hopkinson
d6bb002586 Linted Files according to the .prettierrc. 2022-04-24 21:16:55 +01:00
Jamie Pine
3a3c4eb2ee debug + derive dep 2022-04-11 21:46:57 -07:00
Jamie Pine
e648dd2e2b docs and plans 2022-04-11 21:42:32 -07:00