Commit Graph

20 Commits

Author SHA1 Message Date
28e921c48d feat(buffer)!: refactor allocators to use MemoryPool<T>
Refactor memory allocation system to use generic MemoryPool<TAllocator, TOpts> for arena, stack, and free list allocators, replacing custom allocator structs. Introduce MemoryBlock as a safer, more robust replacement for UnTypedArray. Improve thread safety, safety checks, and documentation. Reorder and clarify Allocator enum. Add comprehensive unit tests for all allocators and pointer assertion utilities. Update project to enable safety checks in Debug builds. Remove obsolete interfaces and ensure consistent deallocation with MemoryUtility.Free.

BREAKING CHANGE: Custom allocator structs are removed and replaced with MemoryPool-based abstraction. UnTypedArray is replaced by MemoryBlock. Allocator enum order and semantics are changed. Public API changes may require code updates.
2026-04-04 19:24:02 +09:00
49dc44605b Fixed the bug that Vector type in SPMD does not work as expected 2026-02-22 11:57:49 +09:00
f4c929fd88 Update package version 2026-02-22 11:48:01 +09:00
c4ca3e1bc9 Update gitea workflow 2025-12-12 16:18:31 +09:00
fb31fd8ca8 Reserve index 0 in SlotMap, improve unsafe collections
- Reserve index 0 as always invalid in SlotMap, ConcurrentSlotMap, UnsafeSlotMap, and UnsafeSparseSet; update all index checks and slot operations accordingly
- Refactor SlotMap to use parallel arrays and BitArray for occupancy
- Double capacity on resize for all major unsafe collections
- Add debugger display support for unsafe collections
- Improve NuGet publishing workflow to skip existing versions
- Increment package versions (LowLevel: 1.3.1, main: 1.0.2)
- Add comprehensive unit tests for SlotMap and ConcurrentSlotMap
- Update main program and documentation for new slot map behavior
2025-12-12 16:10:49 +09:00
fe91488319 Update .gitea/workflows/publish-nuget.yaml
Updated workflow
2025-11-23 04:52:25 +00:00
396f89d33c Update .gitea/workflows/publish-nuget.yaml
Update gitea workflow
2025-11-23 04:38:16 +00:00
32ff948268 Update .gitea/workflows/publish-nuget.yaml
Updated gitea workflow to use .net 10
2025-11-18 14:26:48 +00:00
bf4dd5670e Refactor unsafe collections and improve memory handling
Some checks failed
Publish NuGet Packages / publish (pull_request) Has been cancelled
Refactored enumerators across multiple unsafe collections to use
`ref` returns for `Current`, improving performance and reducing
memory usage. Enhanced memory management with `AllocationOption`
support and optimized resizing logic for collections like
`UnsafeBitSet`, `UnsafeSlotMap`, and `UnsafeSparseSet`.

Updated `publish-nuget.yaml` to support manual workflow dispatch
and trigger on `push`/`pull_request` events. Incremented project
version to `1.1.2` and ensured NuGet package generation on build.
2025-11-11 21:20:33 +09:00
308c70d0e1 Fix nuget push command
All checks were successful
Publish NuGet Packages / publish (push) Successful in 1m46s
2025-11-04 20:23:24 +09:00
f708116eea Fix package name searching
Some checks failed
Publish NuGet Packages / publish (push) Failing after 1m51s
2025-11-04 20:16:51 +09:00
36b8bd06d5 Update workflow;
Some checks failed
Publish NuGet Packages / publish (push) Failing after 1m41s
2025-11-04 18:32:44 +09:00
5867895e95 Update .gitea/workflows/publish-nuget.yaml
Fix the searching path
2025-11-04 09:16:10 +00:00
8395914cef Fix workflow
Some checks failed
Publish NuGet Packages / publish (push) Failing after 1m36s
2025-11-04 18:08:04 +09:00
fa7f270430 Fixe msbuild issue in workflow
All checks were successful
Publish NuGet Packages / publish (push) Successful in 1m24s
2025-11-04 18:02:39 +09:00
f20734ee76 Fix indentation 2025-11-04 17:57:36 +09:00
fd1ed8793d update gitea workflow; 2025-11-04 17:50:45 +09:00
73a0c6e187 Update workflow 2025-09-11 18:47:33 +09:00
1546c2cabe Updated workflow error 2025-09-11 10:57:18 +09:00
02e173415e Added new giteaaction 2025-09-11 10:54:34 +09:00