Test ran at 2025-08-17 13:04:01.285953+00:00 SOLUTION: octet_memory_stream=1.1.0: Provides a Root_Stream_Type wrapper over an array of octets in memory. Origin: commit 54ecee472e8f78ab6d09df59f48bcca548364ee3 from https://github.com/Bread-Experts-Group/octet_memory_stream.git Properties: Author: Miko Elbrecht Description: Provides a Root_Stream_Type wrapper over an array of octets in memory. License: Apache-2.0 WITH LLVM-exception Long_Description: `octet_memory_stream` provides a standalone `Ada.Streams.Root_Stream_Type` wrapper around an `Octet_Array` (array of 8-bit bytes,) primarily for the purpose of protecting an over-arching stream from misalignment while reading from, or writing to, e.g., a file format. If the `Memory_Stream` detects an out-of-bounds error as the result of a read or write operation, an `Out_Of_Bounds_Error` exception will be raised. Example Use ----------- All pertinent types and subprograms are available within the package `Octet_Memory_Stream`. Wrapping an `Octet_Array` is done through the `To_Stream` function. ```ada pragma Ada_2022; with Ada.Text_IO; with Ada.Streams.Stream_IO; use Ada.Streams.Stream_IO; with Octet_Memory_Stream; procedure TestDemo is F : File_Type; Protected_Stream : Stream_Access; Memory_Stream : Octet_Memory_Stream.Stream_Access; begin Open (F, In_File, "example"); Protected_Stream := Stream (F); declare Data : Octet_Memory_Stream.Octet_Array (1 .. 50); begin Octet_Memory_Stream.Octet_Array'Read (Protected_Stream, Data); Memory_Stream := Octet_Memory_Stream.To_Stream (Data); end; declare OK_Data : Octet_Memory_Stream.Octet_Array (1 .. 25); OOB_Data : Octet_Memory_Stream.Octet_Array (1 .. 26); begin Octet_Memory_Stream.Octet_Array'Read (Memory_Stream, OK_Data); Ada.Text_IO.Put_Line (OK_Data'Image); Octet_Memory_Stream.Octet_Array'Read (Memory_Stream, OOB_Data); -- exception raised above Ada.Text_IO.Put_Line (OOB_Data'Image); end; Close (F); end TestDemo; ``` Maintainer: Miko Elbrecht Maintainers_Logins: ATPStorages Name: octet_memory_stream Tag: octet Tag: byte Tag: buffer Tag: stream Tag: ada Tag: streams Tag: memory Version: 1.1.0 Website: https://github.com/Bread-Experts-Group/octet_memory_stream LOG: [alr test] Testing octet_memory_stream=1.1.0 [alr test] Spawning retrieval for remote crate: alr -d -n get octet_memory_stream=1.1.0 Note: Deploying octet_memory_stream=1.1.0... octet_memory_stream=1.1.0 successfully retrieved. There are no dependencies. [alr test] Spawning default test for remote crate: alr -d -n build --release -- -cargs:Ada -gnatwn Note: Alire has selected automatically this toolchain: gprbuild=25.0.1 gnat_native=15.1.2 You can select a different toolchain at any time with `alr toolchain --select` Download will start now: Note: Deploying gprbuild=25.0.1... #=#=# ################################### 49.5% ######################################################################## 100.0% Note: gprbuild=25.0.1 installed successfully. Note: Deploying gnat_native=15.1.2... 0.0% ###### 9.7% ############# 19.0% ##################### 29.2% ############################ 39.3% ################################### 49.6% ########################################### 59.7% ################################################## 70.2% ######################################################### 79.7% ################################################################ 88.9% ###################################################################### 98.5% ######################################################################## 100.0% Note: gnat_native=15.1.2 installed successfully. Note: Building octet_memory_stream=1.1.0/octet_memory_stream.gpr... Setup [mkdir] object directory for project Octet_Memory_Stream [mkdir] library directory for project Octet_Memory_Stream Compile [Ada] octet_memory_stream_config.ads completed 1 out of 2 (50%)... [Ada] octet_memory_stream.adb completed 2 out of 2 (100%)... completed 2 out of 2 (100%)... Build Libraries [gprlib] Octet_Memory_Stream.lexch [archive] libOctet_Memory_Stream.a [index] libOctet_Memory_Stream.a Success: Build finished successfully in 0.48 seconds. Found declared GPR file: octet_memory_stream.gpr [alr test] Test completed SUCCESSFULLY