Releases: masesgroup/JNet
Releases · masesgroup/JNet
V2.6.9: general review updating to JCOBridge 2.6.9
This release updates:
- JNet:
- Updates to JCOBridge 2.6.9
- Extends
Java.Lang.Stringdeveloped class with new zero-copy functions that operate directly on JVM data without copying memory to the CLR - Adds caching and disposal for
JCOBridgeDirectBufferin NIO buffer wrappers (ByteBuffer,CharBuffer,DoubleBuffer,FloatBuffer,IntBuffer,LongBuffer,ShortBuffer), avoiding extra object churn when creating direct buffers - Adds immediate disposal of JVM objects returned from listener function callbacks, avoiding waiting for .NET GC
- Introduces
JNetEventDataas proxy for simplified access to properties and functions in listener templates - Updates developed classes Dispose chain for HPA pooling compatibility
- Uses
JVMBridgeBase.New<TType>for objects that can be immediately disposed, improving HPA pooling support - Adds
DisposeIfDisposablehelper replacing explicitusingblocks - Multiple code quality fixes
- Generated classes are fully regenerated using JNetReflector at current version
- JNet Templates: no changes
- JNetCLI: no changes
- JNetCLICore: no changes
- JNetPS: no changes
- JNetPSCore: no changes
- JNetReflector:
- Replaces constructor chaining via
params object[]with typed per-signature constructors forwarded viaInvokeInitializer, eliminating intermediateobject[]allocation - Removes initialization of fields in constructors invoked from JCOBridge
- Adds
SingleConstructorInitializertemplate introducingCreatePoolableInstancestatic factory method backed byJVMBridgeBase.New<TClass> - Generates a multi-level first-gate evaluation chain for listener classes, with the second-gate override flag cached at construction via
JNetEventResult.GetMethodIsOverriddento avoid per-event reflection cost. The chain evaluates in order:ListenerShallManageEventIndexdelegate (index-based, zero string conversion overhead),ListenerShallManageEventNamedelegate (name-based), registered event handlers viaListenerShallManageEventHandlers, second-gate override flag,ListenerShallManageEventIndexWithDatadelegate, andListenerShallManageEventNameWithDatadelegate — returningfalseimmediately when none of these is active, avoiding CLR object construction on the JVM side - Updates to use
JNetEventDataas proxy for simplified access to properties and functions in listener templates - Adds listener dispose handlers
- Replaces
field.IsFinal()check with hardcodedfalsein field preparation (InternalMethods.cs) to remain compliant with HPA pooling behavior
- Replaces constructor chaining via
- Docker: no changes
- Documentation: aligns to latest code changes
- Tests: adds dedicated performance test workflow with result collection and hardware info reporting
Official Docker images
Official NuGet packages (*)
- MASES.JNet
- MASES.JNet.Templates
- MASES.JNetCLI
- MASES.JNetCLICore
- MASES.JNetReflector
- MASES.JNetPSCore
(*) packages are also available on GitHub packages.
Official PowerShell packages
What's Changed
- Revert back modification for JVMBridgeCore by @masesdevelopers in #946
- Update generated classes after commit 9079df5 by @github-actions[bot] in #947
- Update to JCOBridge 2.6.9-beta by @masesdevelopers in #943
- Revert back modification for JVMBridgeCore by @masesdevelopers in #944
- Update generated classes after commit 9b4a1cf by @github-actions[bot] in #945
- Bump Microsoft.Bcl.AsyncInterfaces from 10.0.5 to 10.0.6 by @dependabot[bot] in #949
- Bump Microsoft.SourceLink.GitHub from 10.0.201 to 10.0.202 by @dependabot[bot] in #950
- Bump MASES.JCOBridge from 2.6.9-beta to 2.6.9-rc by @dependabot[bot] in #948
- Update version from 2.6.8 to 2.6.9-rc by @github-actions[bot] in #951
- Fix lock object in HostedContainer property wrongly changed in #945 by @masesdevelopers in #953
- Use AssemblyInformationalVersion instead of simple version by @masesdevelopers in #955
- Update generated classes after commit d72580b by @github-actions[bot] in #957
- Bump actions/upload-pages-artifact from 4 to 5 by @dependabot[bot] in #959
- Bump nuget/setup-nuget from 3.0.0 to 3.1.0 by @dependabot[bot] in #958
- Bump Microsoft.SourceLink.GitHub from 10.0.202 to 10.0.203 by @dependabot[bot] in #967
- Bump Microsoft.Bcl.AsyncInterfaces from 10.0.6 to 10.0.7 by @dependabot[bot] in #966
- Bump MASES.JCOBridge from 2.6.9-rc2 to 2.6.9-rc3 by @dependabot[bot] in #965
- Update version from 2.6.9-rc to 2.6.9-rc1 by @github-actions[bot] in #968
- Update generated classes after commit 7e3aa04 by @github-actions[bot] in #969
- Bump MASES.JCOBridge from 2.6.9-rc3 to 2.6.9-rc4 by @dependabot[bot] in #970
- Update version from 2.6.9-rc1 to 2.6.9-rc2 by @github-actions[bot] in #971
- Update generated classes after commit d5539d2 by @github-actions[bot] in #972
- Aligns documentation to JCOBridge 2.6.9-rc4 by @masesdevelopers in #973
- Bump MASES.JCOBridge from 2.6.9-rc4 to 2.6.9-rc6 by @dependabot[bot] in #976
- Add first-gate listener override handling by @masesdevelopers in #977
- Add listener dispose handlers by @masesdevelopers in #986
- Update version from 2.6.9-rc2 to 2.6.9-rc3 by @github-actions[bot] in #991
- Update generated classes after commit 78b3b54 by @github-actions[bot] in #992
- Add WithData listener delegates support by @masesdevelopers in #993
- #974 (comment): Removes initialization of field in constructor used from JCOBridge by @masesdevelopers in #995
- Use BindingFlags and validate GetMethod result by @masesdevelopers in #997
- Update version from 2.6.9-rc3 to 2.6.9-rc4 by @github-actions[bot] in #998
- Update generated classes after commit 092a2f6 by @github-actions[bot] in #999
- Potential fixes for 2 code quality findings by @masesdevelopers in #1004
- Potential fix for 1 code quality finding by @masesdevelopers in #1003
- Potential fix for 1 code quality finding by @masesdevelopers in #1002
- Potential fixes for 2 code quality findings by @masesdevelopers in #1001
- Potential fixes for 2 code quality findings by @masesdevelopers in #1000
- Fix for Potentially dangerous use of non-short-circuit logic by @masesdevelopers in #1005
- Fix for Dereferenced variable is always null by @masesdevelopers in #1006
- Bump nuget/setup-nuget from 3.1.0 to 4 by @dependabot[bot] in #1007
- Bump MASES.JCOBridge from 2.6.9-rc6 to 2.6.9-rc8 by @dependabot[bot] in #1014
- Update version from 2.6.9-rc4 to 2.6.9-rc5 by @github-actions[bot] in #1015
- Potential fix for 1 code quality finding by @masesdevelopers in #1017
- Potential fix for 1 code quality finding by @masesdevelopers in #1018
- Potential fixes for 4 code quality findings by @masesdevelopers in #1016
- Bump MASES.JCOBridge from 2.6.9-rc8 to 2.6.9-rc9 by @dependabot[bot] in #1019
- Update version from 2.6.9.0-rc5 to 2.6.9.0-rc6 by @github-actions[bot] in #1020
- Revert version replacement logic in YAML workflow by @masesdevelopers in #1022
- Update documentation after commit ee214dd by @github-actions[bot] in #1024
- Update to JCOBridge 2.6.9 rc 12 by @masesdevelopers in #1025
- Update version from 2.6.9-rc6 to 2.6.9-rc7 by @github-actions[bot] in #1026
- Cache direct buffers and update ToDirectBuffer b...
V2.6.9-rc996: temporary release
What's Changed
- Bump MASES.JCOBridge from 2.6.9-rc.36 to 2.6.9-rc.37 by @dependabot[bot] in #1115
- Update version from 2.6.9-rc995 to 2.6.9-rc996 by @github-actions[bot] in #1116
Full Changelog: V2.6.9.0-rc995...V2.6.9.0-rc996
V2.6.9-rc995: temporary release
What's Changed
- Bump MASES.JCOBridge from 2.6.9-rc.35 to 2.6.9-rc.36 by @dependabot[bot] in #1113
- Update version from 2.6.9-rc994 to 2.6.9-rc995 by @github-actions[bot] in #1114
Full Changelog: V2.6.9.0-rc994...V2.6.9.0-rc995
V2.6.9-rc994: temporary release
What's Changed
- Add DisposeIfDisposable and replace using by @masesdevelopers in #1099
- Revert "Use AssemblyInformationalVersion instead of simple version" by @masesdevelopers in #1103
- Update generated classes after commit aa946d2 by @github-actions[bot] in #1104
- Add constructor initializer template and usage by @masesdevelopers in #1101
- Update generated classes after commit aa4f56d by @github-actions[bot] in #1107
- Replace New with Create to avoid confusion with New method of JVMBridgeBase by @masesdevelopers in #1108
- Use explicit method name to avoid confusion and declares better the scope by @masesdevelopers in #1110
- Update generated classes after commit 0ea9239 by @github-actions[bot] in #1111
- Update version from 2.6.9-rc993 to 2.6.9-rc994 by @github-actions[bot] in #1112
Full Changelog: V2.6.9.0-rc993...V2.6.9.0-rc994
V2.6.9-rc993: temporary release
What's Changed
- Bump org.apache.maven.plugins:maven-dependency-plugin from 3.10.0 to 3.11.0 in /src/jvm/jnet by @dependabot[bot] in #1090
- Bump MASES.JCOBridge from 2.6.9-rc.33 to 2.6.9-rc.35 by @dependabot[bot] in #1094
- Bump bojieyang/indexnow-action from 2 to 3 by @dependabot[bot] in #1089
- Internally introduce JVMBridgeBase.New updating code returning objects can be immediately disposed by @masesdevelopers in #1096
- Update version from 2.6.9-rc992 to 2.6.9-rc993 by @github-actions[bot] in #1097
Full Changelog: 2.6.9.0-rc992...V2.6.9.0-rc993
2.6.9-rc992: temporary release
What's Changed
- Update generated classes after commit e1e9945 by @github-actions[bot] in #1080
- Bump MASES.JCOBridge from 2.6.9-rc.31 to 2.6.9-rc.33 by @dependabot[bot] in #1082
- Update developed classes to be compliant with HPA pooling by @masesdevelopers in #1085
- Disable field.IsFinal usage for HPA pooling by @masesdevelopers in #1086
- Update generated classes after commit b0ae57e by @github-actions[bot] in #1087
- Update version from 2.6.9-rc991 to 2.6.9-rc992 by @github-actions[bot] in #1088
Full Changelog: V2.6.9.0-rc991...2.6.9.0-rc992
V2.6.9-rc991: temporary release
What's Changed
- Bump MASES.JCOBridge from 2.6.9-rc.30 to 2.6.9-rc.31 by @dependabot[bot] in #1077
- Update generated classes after commit b5164d5 by @github-actions[bot] in #1078
- Update version from 2.6.9-rc99 to 2.6.9-rc991 by @github-actions[bot] in #1079
Full Changelog: V2.6.9.0-rc99...V2.6.9.0-rc991
V2.6.9-rc99: temporary release
What's Changed
- Bump MASES.JCOBridge from 2.6.9-rc.28 to 2.6.9-rc.30 by @dependabot[bot] in #1074
- Updates templates and removes constructor chaining to support parameter forwarding without intermediate object[] allocation by @masesdevelopers in #1068
- Update generated classes after commit a4a5d46 by @github-actions[bot] in #1071
- Update version from 2.6.9-rc98 to 2.6.9-rc99 by @github-actions[bot] in #1075
- Update generated classes after commit b1ced20 by @github-actions[bot] in #1076
Full Changelog: V2.6.9.0-rc98...V2.6.9.0-rc99
V2.6.9-rc98: temporary release
What's Changed
- Bump MASES.JCOBridge from 2.6.9-rc.25 to 2.6.9-rc.27 by @dependabot[bot] in #1067
- Bump MASES.JCOBridge from 2.6.9-rc.27 to 2.6.9-rc.28 by @dependabot[bot] in #1070
- Update version from 2.6.9-rc97 to 2.6.9-rc98 by @github-actions[bot] in #1072
Full Changelog: V2.6.9.0-rc97...V2.6.9.0-rc98
V2.6.9-rc97: temporary release
What's Changed
- Bump MASES.JCOBridge from 2.6.9-rc.24 to 2.6.9-rc.25 by @dependabot[bot] in #1059
- Update version from 2.6.9-rc96 to 2.6.9-rc97 by @github-actions[bot] in #1061
Full Changelog: V2.6.9.0-rc96...V2.6.9.0-rc97