bebopagogo
0c4b130c7b
fixed NormCmdCCMsg item parsing and iteration per issue reported by CrunchyJohnHaven
2026-05-23 20:48:17 -04:00
Caleb
fcd2554051
Add rust bindings ( #98 )
...
* add rust bindings to norm
* modify PR description
* remove PR description since it is redundant
* remove weird character
* remove __pycache__ and add __pycache__ to gitignore
---------
Co-authored-by: cbowers <cbowers@anduril.com>
2026-05-23 20:25:32 -04:00
Fabrice Fontaine
b0c38b4184
wscript: fix build with waf >= 2.1.0 ( #86 )
...
Replace add_option_group by add_argument_group to a build failure with
waf 2.1.0 and
bd5c22d484 :
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2026-03-12 11:23:09 -04:00
Jeffery Weston
823e3e8c88
fix npc compilation error
2025-07-23 13:32:38 -04:00
bebopagogo
f3a60510ff
Merge branch 'master' of https://github.com/USNavalResearchLaboratory/norm
...
merging remote changes
2025-04-23 09:52:33 -04:00
bebopagogo
6a2da08d86
edits
2025-04-23 09:50:08 -04:00
bebopagogo
9500578e89
Merge branch 'master' of https://github.com/USNavalResearchLaboratory/norm
...
Incorporation of formatting tweaks with primary code.
2025-04-22 16:16:04 -04:00
bebopagogo
3802edadf1
minor formatting tweak
2025-04-22 16:15:58 -04:00
Jeff Weston
1c534c05f1
Remove debug lines
...
Removed debug lines added in bc6e81f to fix #94
2025-03-31 10:52:48 -04:00
mullerj
4fd768f9cc
.NET NORM Extension ( #85 )
...
* .NET Extension Design (#5 )
* Designed .NET classes from Java
Co-authored-by: Sergiy <sergiy.yermak.ctr@us.navy.mil>
* Added NormApi static class
* Started on api uml
Co-authored-by: mullerj <mullerj@users.noreply.github.com>
Co-authored-by: Sylvester Freeman III <Slyfree3@users.noreply.github.com>
* Add static methods to api uml
* add static method to normapi uml
* Add enums
* Changes
* Overload methods with defaults
* type marshalling
* change handles to in nuint
* marshall more handles
* Removed in/ref and reformatted.
Co-authored-by: mullerj <mullerj@users.noreply.github.com>
* Removed duplicate enums
* Removed NormEvent from NormApi
* Fixed typo
* design NormInstance methods
Co-authored-by: mullerj <mullerj@users.noreply.github.com>
* Fixed CreateInstance method
* Changed handles to long
* Change id types to long
* Remove condition checks that do nothing
* Removed UserData functions
* Removed NormAlloc() and NormFree()
* Cleaned up some API methods
* Fix misspelling
Co-authored-by: Sylvester Freeman III <Slyfree3@users.noreply.github.com>
* Design NormSession methods
Co-authored-by: Sylvester Freeman III <Slyfree3@users.noreply.github.com>
* Added missing comma
* Uml for enqueue
Co-authored-by: mullerj <mullerj@users.noreply.github.com>
* Updated design based on enqueue test
* Updated EnqueueFile sequence diagram
Co-authored-by: Sylvester Freeman III <Slyfree3@users.noreply.github.com>
* Moved sequence diagrams
* Added constants to NormApi
* Removed method level sequence diagrams
---------
Co-authored-by: Sergiy <sergiy.yermak.ctr@us.navy.mil>
Co-authored-by: syermak <syerm001@odu.edu>
Co-authored-by: mullerj <mullerj@users.noreply.github.com>
Co-authored-by: Sylvester Freeman III <Slyfree3@users.noreply.github.com>
Co-authored-by: Sergiy <47069243+SergiyYermak@users.noreply.github.com>
Co-authored-by: Sylvester Freeman III <Slyfreeman3@gmail.com>
* .NET Extension Design Implementation (#10 )
* changes
* Removed GetsNextEvent test
* Implemented GetNextEvent
* Fixed NormStream design
* Fixed HasNextEvent design
* Added NormGetNextEvent overload
* Implemented HasNextEvent
* Updated design
* Added Kernel32 to design
* Modified to use .NET EventWaitHandle instead of kernel32 P/Invoke
* Modified to only copy norm.dll on Windows
* Added copy for non Windows
* add start and stop receiver
* add receiver
* Modified non-Windows to use Socket for HasNextEvent
* Deleted NormFileTests since they break the other tests
* Fixed ReceiverReceives test
* Updated ReceiverReceives test name
* Modified ReceivesFile to get all events instead of adding to array
* Cleaned up NormInstance formatting
* Refactored tests
* Updated NormFile
* Implemented send stream
* Implemented receive stream
* Implemented NormFile Name
* Updated ReceivesFile to use events
* data enqueue
* Fixed merge
* Fixed ReceivesData test
* Modified data test to compare collections without order
* stop instance working
* enqueues data
* Reverted upgrade to .NET 7
* Restartinstance is working
* Modified NormData to read bytes instead of as string
* Removed using statements in NormData
* Updated design
* Updated design
* Switched to nint
* Switched design to nint
* unfinished test for suspendinstance
* working suspend instance
* added resume function to instance
* Updated session send and receive data tests
* Removed launch settings
* session configuration functions
* Modified to use random port due to intermittent failed tests due to session conflict
* Modified to randomize text content
* Implemented NormNode Address
* Updated design for NormNode
* Implemented NormNode Grtt
* Implemented NormNode Id
* implement session configuration functions
* instance
* missing return types
* add missing handle param
* normNode
* Implemented RequeueObject
* Implemented SetWatermark and AckingNode
* Implemented CancelWatermark
* Implemented ResetWatermark
* Implemented SendCommand
* Implemented CancelCommand
* Implemented DebugLevel. Removed DebugPipe
* Updated SetTxPort
* Updated SetRxPortReuse
* Implemented SetEcnSupport
* Added test for RxLoss
* Implemented ReportInterval
* Refactored session calculated properties
* Updated enqueue methods
* Updated StreamOpen design
* Fixed SetWatermark overload
* Implemented GetAckingStatus
* Removed SendCommand overload
* Removed SetSilentReceiver overload
* Implemented NormEvent ToString
* Implemented NormFile Rename
* Implemented SetUnicastNack
* Added ReceivesCommand test
* Implemented SetNackingMode
* Implemented SetRepairBoundary
* Added Fact to SetsRepairBoundary test
* Implemented SetRxRobustFactor
* Implemented NormNode Command
* Implemented FreeBuffers
* Implemented Retain and Release
* Fix using namespaces
* test get object type
* NormObject get size
* NormObject setNackingMode
* NormObject get bytes pending
* NormObjet cancel
* NormObject retain
* NormObject release
* NormObject get sender
* NormObject get hashcode
* normObject equals
* Implemented NormObject Equals
* Removed redundant cast
* Removed unused using directive
* Removed static using
* Added NormApi to global Usings
* Added Enums to global usings
* Cleaned up NormObject Equals
* Cleaned up NormObject GetHashCode() test
* Cleaned up warning
* normStream has vacancy
* normStream read offset
* normStream seek msg start
* NormEventListener interface
* normStream set push enable
* normStream set auto flush
* Simplified NormApi usage
* Updated design of NormStream
* public interface
* Fixed INormEventListener
* fixing name space
* commit initializing inputstream
* Added StreamBreakException
* Fixed formatting
* Fixed formatting
* Fixed formatting
* Initial implementation of NormOutputStream
* Cleaned up NormObject Equals
* NormInputStream class
Co-authored-by: mullerj <mullerj@users.noreply.github.com>
* normStream data offset
* move offset length arithmetic into write method
* building normInputstream
* all method implemented
Co-authored-by: mullerj <mullerj@users.noreply.github.com>
* NormStreamRead
* Fixed build error
* Completed ReceivesStreamWithOffset test
* Added retries to GetsCommand test
* Updated type for NormStreamRead
* Simplified NormStream Read
* Simplified NormStream Write
* Added dataOffset to DataEnqueue
* Fixed DataEnqueue overload
* Added infoOffset to FileEnqueue
* Added infoOffset to StreamOpen
* Updated design
* Removed extra overload of FileEnqueue
* Removed DataEnqueue overloads
* Removed extra overload from StreamOpen
* Added HasNextEvent overload
* Implemented OpenDebugPipe
* add thread locking
* locking for properties
* Not supported exceptions
* Implementing sychronize
* fixing inputstream
* adding sychronize message
* Reorganized NormApi and updated design
* Modified to skip GetsCommand test on IO exception
* WIP: 537b706 adding sychronize message
* adding message to expections
* Fixed test file cleanup
* Added locking to NormSession methods that use static field
* Changed StartsSender to skippablefact
* Changed to SetsNackingMode to skippable fact
* Converted tests to skippable
* Converted more tests to skippable
* Converted all tests that start sender to skippable
* Updated README about skipped tests
* documentation
* 2 doc
* Cleaned up input and output stream classes
* Cleaned up NormApi
* Updated NormOutputStream Write
* Added document comments to NormApi
* Added comments to NormApi
* Removed unnecessary usings
* Added comments to NormApi
* set up the rest of doc
* api documentation
* fix typo
* fix spacing
* Doc for instance need clean up
* clean up
* document norm session
* NormStream documentation
* commit for node
* NormObject docs
* Updated NormApi comments
* Cleaned up NormInstance comments
* Cleaned up NormNode comments
* Cleaned up NormObject comments
* Cleaned up NormSession comments
* Cleaned up NormStream comments
* Cleaned up NormObject comments
* Adding commits
* Update get commit
* clean up on data and event
* Norm Data change
* clean up normfile docs
* clean up normstream
* clean up api docs
* Fixed data
* space approved
* Cleaned up NormData comment
* documentation clean up
* Update the ReadMe
* Cleaned up comments
* Added comments to NormAckingStatus
* Added comments to NormEventType
* Added comments to NormFecType
* Added comments to NormNackingMode
* Added comments to NormObjectType
* Added comments to NormProbingMode
* Added comments to NormRepairBoundary
* Added comments to NormFlushMode
* Added comments to NormSyncPolicy
* Cleaned up comments. Fixed default for StartSender
* Added comments to constants
* Moved constants to relevant classes
* Updated design
* Removed NormDataDetachData since it is not referenced
* Updated design
* Updated input and output stream design
* Updated packaging README
* Removed language version since redundant
* Cleaned up project file
* Updated to package from the dotnet directory (test project is set to not pack)
* Added version to project
---------
Co-authored-by: syermak <syerm001@odu.edu>
Co-authored-by: Sylvester Freeman III <Slyfreeman3@gmail.com>
Co-authored-by: Sergiy <47069243+SergiyYermak@users.noreply.github.com>
Co-authored-by: mullerj <mullerj@users.noreply.github.com>
* NormSession typos in comments (#12 )
* Fixed default function comments in NormSession
* Fixed typos in NormSession
* Fixed default function comments
* Feature/9 net norm extension target architecture packages (#13 )
* Added Win64 project and release configuration
* Added project reference to Win64 project
* Added Win32 project. Moved norm build actions to scripts
* Added linux .NET extension project
* Modified linux project to copy to output directory
* Fixed linux pack script
* Changed Linux project to copy always
* Changed Linux project package path
* Moved Windows libraries to runtimes path
* Renamed runtime specific projects
* Codespace Configurations (#15 )
* Created devcontainer.json
* .NET norm extension GitHub actions (#16 )
* Added .NET action
* Update dotnet-publish.yml to use source branch (#18 )
* .NET norm package publish (#19 )
* Added steps to copy package and check workspace
* Changed trigger for testing
* Removed if statement
* Updated dotnet-publish.yml to copy to $GITHUB_OUTPUT
* Changed from variable to path
* Removed copy command
* Modified to check runner directory
* Added step to publish package
* Added package write permission
* Added job to publish win-x64
* Fixed package win-x64 step
* Added job to publish win-x86
* Added skip-duplicate to publish commands
* Added publish job
* Changed to . for linux find
* Added workflow trigger
* Added branches filter
* Publish test results (#21 )
* Added step to publish test results
* Changed upload step to use wildcard
* Added quotes
* Changed directory to relative path
* Fixed upload step
* Added step to publish test results
* Added permissions
* Dev Container extensions (#23 )
* Added extensions
* Cut down on extensions
* Added extension
* Removed pull requests extension
* Added workspace recommendation
* Added powershell feature
* Fixed powershell version
* Updated powershell version and added extension
* Updated to latest powershell
* Dev Container performance (#25 )
* Fixed devcontainer format
* Added dotnet-linux-x64 devcontainer
* Changed devcontainer image to python
* Pinned OS version
* Updated devcontainer base image
* Reverted changes to devcontainer
* Moved linux devcontainer file
* Updated dotnet-publish to use subfolder
* Revert "Dev Container performance (#25 )" (#27 )
This reverts commit 2be146ceed .
* Update action versions for dotnet-publish.yml
* Update action versions for dotnet.yml
* Fixed ReceivesData test to use received events for actual data
* NormData Refactor (#30 )
* Switched NormData Data property to a method
* Corrected NormData summary comment
* Updated NormData GetData to use Marshal.Copy
* Fixed warnings
* Updated NormData design
* NormDataEnqueue Refactor (#31 )
* Switched NormDataEnqueue to use IntPtr
* Updated NormApi design
* Updated GetSession to use lock
* Updated GetSession to TryGetValue
* DataEnqueue Refactor (#33 )
* Refactored DataEnqueue to use pointer arithmetic
* NormDataEnqueue Refactor (#34 )
* Updated to use SafeBuffer
* Added ByteBuffer and DirectByteBuffer
* Added pointer overload to DataEnqueue
* Updated FileEnqueue() to use pointer arithmetic
* Updated NormStream to use pointer arithmetic
* Updated NormSendCommand to nint
* Updated NormNodeGetCommand to nint
* Updated NormNodeGetAddress to use nint for buffer
* Updated NormStreamRead to use nint for buffer
* Updated NormObjectGetInfo to use nint for buffer
* Updated NormFileGetName nameBuffer to nint
* Updated NormFile.Name to use PtrToStringAnsi
* Updated NormFile.Name to use stackalloc (#37 )
* Updated NormNode.Address to use stackalloc and create IPAddress from bytes
* NormObject Refactor
* Updated NormObjectGetInfo to use byte array
* Updated design
* NormStream Refactor
* Updated NormStream Write to use fixed statement
* Updated NormStream Read to use fixed statement
* Updated design
* NormNode Refactor
* Updated NormNodeGetAddress to use byte* to avoid casting
* Updated NormNode GetCommand to use fixed statement
* Updated design
* NormFile Refactor
* Updated NormFileGetName to use sbyte* to avoid casting
* Updated design
* Added workflow_dispatch to workflows
---------
Co-authored-by: Sergiy <sergiy.yermak.ctr@us.navy.mil>
Co-authored-by: syermak <syerm001@odu.edu>
Co-authored-by: mullerj <mullerj@users.noreply.github.com>
Co-authored-by: Sylvester Freeman III <Slyfree3@users.noreply.github.com>
Co-authored-by: Sergiy <47069243+SergiyYermak@users.noreply.github.com>
Co-authored-by: Sylvester Freeman III <Slyfreeman3@gmail.com>
2025-03-26 01:07:19 -04:00
PM
0c2e151a77
use data race safe gmtime variant as in NormSession::OnReportTimeout ( #91 )
...
Co-authored-by: Pat Mills <patrick.m.mills2@boeing.com>
2025-03-26 01:03:34 -04:00
Brian Adamson
9a613d4150
Update cmake.yml
2025-03-26 01:01:30 -04:00
Brian Adamson
a626a98f63
Update cmake.yml
2025-03-26 00:59:42 -04:00
Brian Adamson
d4faaebba4
Update cmake.yml
2025-03-26 00:50:39 -04:00
Brian Adamson
c8ffc272ee
Update cmake.yml
2025-03-26 00:48:43 -04:00
bebopagogo
006f9d29aa
Merge branch 'master' of https://github.com/USNavalResearchLaboratory/norm
2025-01-26 20:27:11 -05:00
bebopagogo
b7b252fd55
fixes to npc (NormPrecoder) and updated its documentation. Include 'auto' block sizing' feature
2025-01-26 20:26:49 -05:00
bebopagogo
7a6c09ae17
fixes to npc (NormPrecoder) and updated its documentation. Include 'auto' block sizing' feature
2025-01-26 20:13:35 -05:00
bebopagogo
9a28f755cf
pulled updated submodule code
2025-01-02 11:27:11 -05:00
bebopagogo
bc6e81feda
fix to limit rate increase to no more than double during slow start
2025-01-02 11:19:11 -05:00
bebopagogo
0c6e516c90
pulled updated submodule code
2024-12-27 21:28:52 -05:00
bebopagogo
2dfd41a0c5
fix to waf build of normCast example
2024-12-27 16:32:05 -05:00
bebopagogo
669fc4f671
brought in protolib with bug fixes
2024-06-08 18:13:29 -04:00
bebopagogo
ebc65bd140
pulled updated submodule code
2024-06-08 17:39:28 -04:00
bebopagogo
78052bdb29
Update incl. fix to MacOS Makefile
...
Merge branch 'master' of https://github.com/USNavalResearchLaboratory/norm
2024-06-08 17:38:36 -04:00
bebopagogo
f242b53b72
fix to MacOS Makefile
2024-06-08 17:38:25 -04:00
bebopagogo
8da63844ed
some 'norp' code cleanup
2024-06-08 17:22:13 -04:00
bebopagogo
0015af3bb6
some 'norp' code cleanup
2024-06-08 17:20:27 -04:00
bebopagogo
2ae69e6e96
fix to NormFile::Open() where 'flags' were not properly saved and affected NormFile::Rename()
2024-01-28 20:26:15 -05:00
bebopagogo
6188965887
fixed improper delete operator usage in normApp.cpp and minor tweaks
2024-01-24 13:43:38 -05:00
LVancina
a992176873
Documentation updates and pynorm example bug fixes ( #82 )
...
* Added notes about waf execution in BUILD.TXT
* Updated instructions for cloning and running make
* Added more detailed instructions for win32 builds
* Fixed typo on line 20 (capitalized 'f') that caused the command to fail
* Generic editing and replaced dead URLs
* Substituted setuptools package for the deprecated distutils in setup.py
* Fixed typo in 'norm.exe' file path in Win32 build instructions
* Fixed a bugs in normCast.py and normFileSend.py
---------
Co-authored-by: Lucas <lucas.vancina@nps.edu>
2024-01-24 13:15:06 -05:00
bebopagogo
af9a238a70
pulled updated submodule code
2023-09-03 15:01:44 -04:00
bebopagogo
4b34fffa8e
pulled updated submodule code
2023-09-02 22:16:16 -04:00
bebopagogo
8ae9df5607
updated gradle and tweaked build.gradle file to API version 24
2023-09-02 22:15:23 -04:00
bebopagogo
69a9e4828d
added examples/chant.cpp for simple command-line NORM chat app
2023-06-03 23:05:39 -04:00
bebopagogo
34e582bfac
added examples/chant.cpp for simple command-line NORM chat app
2023-05-31 20:10:16 -04:00
bebopagogo
a15e91379e
added examples/chant.cpp for simple command-line NORM chat app
2023-05-31 19:56:18 -04:00
bebopagogo
11b271cc28
added examples/chant.cpp for simple command-line NORM chat app
2023-05-31 19:51:22 -04:00
bebopagogo
1af8531178
added examples/chant.cpp for simple command-line NORM chat app
2023-05-31 19:32:47 -04:00
bebopagogo
17dc41ab72
added examples/chant.cpp for simple command-line NORM chat app
2023-05-31 19:30:36 -04:00
bebopagogo
61b6e31f6f
pulled updated submodule code
2023-01-29 20:02:52 -05:00
bebopagogo
5b7239523f
pulled updated submodule code
2023-01-28 17:18:34 -05:00
bebopagogo
78d7ac78a2
pulled updated submodule code
2023-01-28 17:00:37 -05:00
bebopagogo
a319a5b2d6
pulled updated submodule code
2023-01-28 16:10:56 -05:00
bebopagogo
6e7f2c3548
pulled updated submodule code
2023-01-28 16:09:22 -05:00
mullerj
b8ce922a36
Fixed NormStreamSend ( #1 ) ( #77 )
2023-01-16 16:44:29 -05:00
bebopagogo
c0463960cb
updated some sprintf() calls to snprint()
2023-01-14 17:30:04 -05:00
bebopagogo
92927c8a37
updated pynorm Python binding to use Python 3 contributions from Honglei
2022-11-11 20:17:30 -05:00
bebopagogo
6318f9bf62
pulled updated submodule code
2022-10-04 19:23:39 -04:00
bebopagogo
9f65f5e20a
pynorm improvement to keep cache sender enqueued objects in pynorm.instance._objects cache
2022-10-04 19:21:41 -04:00