ExRam.Gremlinq Versions Save

A .NET object-graph-mapper for Apache TinkerPop™ Gremlin enabled databases.

12.6.3

1 week ago

Changes

  • Fix package icon (#1585) @danielcweber
  • Update Verify. (#1582) @danielcweber
  • Update xUnit. (#1581) @danielcweber
  • Revert "CosmosDb does not play nicely." (#1526) @danielcweber
  • Prepare release (#1580) @danielcweber

12.6.2

1 week ago

Changes

  • Support lots of case insensitive text expressions through TextP.regex. (#1578) @danielcweber
  • Disable TextP regex predicates on CosmosDb. (#1577) @danielcweber
  • Extend DisabledTextPredicates enum. (#1576) @danielcweber
  • Remove unused methods in ContinuationBuilder. (#1572) @danielcweber
  • Increase code coverage (#1571) @danielcweber
  • Fix error messages for types outside a graph/element model. Fixes #1551. (#1564) @danielcweber
  • More Tinkerpop 3.7.2 (#1557) @danielcweber
  • Secure GitHub actions commits (#1556) @danielcweber
  • Review test containers (#1554) @danielcweber

12.6.1

1 month ago

Changes

  • Test against Tinkerpop 3.7.2. (#1549) @danielcweber
  • Support StartsWith(char c) expressions. (#1550) @danielcweber
  • Fix cancellation on disposed CancellationTokenSources (#1545) @danielcweber

12.6.0

1 month ago

Changes

  • Dispose CancellationTokenSource (#1535) @danielcweber
  • Use ValueTaskSource concept to save allocations in WebSocketGremlinqClient.Channel (#1530) @danielcweber
  • Fix: Custom authentication settings were always overridden in CosmosDbConfigurator (#1534) @danielcweber
  • Fix: Pool settings were lost after configuring the base factory. (#1533) @danielcweber

12.5.0

1 month ago

Changes

  • WebSocket review (#1529) @danielcweber
  • Replace nuget version in templates (#1527) @danielcweber
  • Fail WebSocket early (#1525) @danielcweber
  • WebSocket: Dispose the channel upon cancellation. (#1521) @danielcweber
  • WebSocket: Catch the cancellation of the loop in iterator. (#1519) @danielcweber

12.4.0

2 months ago

Changes

  • Catch WebSocketExceptions in WebSocketGremlinqClient. (#1513) @danielcweber
  • Share package icon between src and templates. (#1512) @danielcweber
  • Throw on ClientWebSocket close (#1509) @danielcweber
  • Make IGremlinqClientFactory.ConfigureClient an instance method (#1508) @danielcweber
  • WebSocketGremlinqClient: Ignore most loop exceptions. (#1507) @danielcweber

Updating from 12.3.0 to 12.4.0 is

✅ source compatible ❌ not binary compatible

Applications must be recompiled.

12.3.0

2 months ago

Changes

  • Factor out GremlinqClient Retry functionality. (#1498) @danielcweber
  • PoolGremlinqClient: Retry once upon ObjectDisposedException. (#1497) @danielcweber
  • Factor out a PoolSlotGremlinqClient within PoolGremlinqClientFactory (#1496) @danielcweber
  • Allow IPoolGremlinqClientFactory.ConfigureBaseFactory to transform to a different factory type (#1493) @danielcweber

Updating from 12.2.1 to 12.3.0 is

✅ source compatible ❌ not binary compatible
Applications must be recompiled.

12.2.1

2 months ago

Changes

  • Fix dotnet new templates (#1491) @danielcweber
  • Rework Where-expression processing (#1478) @danielcweber
  • Optimize WithSideEffect (#1475) @danielcweber

12.1.2

4 months ago

Changes

  • Use C# version 12. (#1442) @danielcweber
  • Lower argument types of StepLabels passed into Aggregate/AggregateLocal (#1441) @danielcweber
  • Add .NET 8 target (#1439) @danielcweber

12.0.0

4 months ago

Changes

  • Change zero width space for Twitter-announcements. (#1428) @danielcweber
  • Resize Icon (#1427) @danielcweber
  • Set new logo and icons. (#1425) @danielcweber
  • Update templates (#1426) @danielcweber
  • Update test infrastructure (#1424) @danielcweber
  • Revert "Remove explicit dependency on xunit." (#1423) @danielcweber
  • Remove explicit xUnit reference (#1422) @danielcweber
  • Less convenience UseNewtonsoftJson (#1421) @danielcweber
  • Lift type in continuation. (#1419) @danielcweber
  • Hide AsIncomplete method by source-sharing. (#1418) @danielcweber
  • Collect coverage on Windows as well. (#1417) @danielcweber
  • Throw hint in case GraphSON-support was added to the environment but still no deserialization package (#1416) @danielcweber
  • Hide Guard method. (#1415) @danielcweber
  • Factor out serializers (#1414) @danielcweber
  • Remove AutoRecurse (#1413) @danielcweber
  • Inline fallback Newtonsoft JsonSerializer (#1412) @danielcweber
  • ReSharper review. (#1411) @danielcweber
  • Don't deserialize the response status twice. (#1410) @danielcweber
  • Factor JToken caching. (#1409) @danielcweber
  • Cache deserialized JToken (#1408) @danielcweber
  • Shortcut JToken.Load if the reader is a JTokenReader. (#1407) @danielcweber
  • Remove benchmarks (#1406) @danielcweber
  • Rename type parameter and add an integration test (#1405) @danielcweber
  • Fix: Dispose binary message (#1404) @danielcweber
  • Make ClientWebSocket factory configurable (#1403) @danielcweber
  • Remove IMessageBufferFactory (#1402) @danielcweber
  • Avoid doubly deserializing the attributes field of a response-status (#1401) @danielcweber
  • Factor authentication (#1400) @danielcweber
  • Avoid a MessageQueue class when everything can be stored in a union struct (#1399) @danielcweber
  • Dispose a memory owner if something goes wrong. (#1398) @danielcweber
  • Avoid serialization roundtrip for GraphSON-RequestMessages. (#1397) @danielcweber
  • Dispose buffer upon exception. (#1396) @danielcweber
  • Fix exception routes (#1395) @danielcweber
  • Review WebSockets (#1394) @danielcweber
  • Move mime type onto MessageBufferFactory. (#1391) @danielcweber
  • Separate Mime-Type from MessageBuffer, so we have to bring back IMessageBuffer. (#1390) @danielcweber
  • Add notion of byte-serialized messages separate from ITransformers (#1389) @danielcweber
  • Use GremlinServer 3.7.1 for integration tests. (#1388) @danielcweber
  • Hide UseGraphSon methods (#1387) @danielcweber
  • Remove a non-existing reference from BenchmarkRunner. (#1386) @danielcweber
  • Add CommunityToolkit.HighPerformance package (#1385) @danielcweber
  • Remove PreferGroovySerialization option, inline serialization (#1384) @danielcweber
  • Bump Gremlin.Net from 3.7.0 to 3.7.1 (#1380) @dependabot
  • Bump PublicApiGenerator from 11.0.0 to 11.1.0 (#1379) @dependabot
  • Fix formatting in template (#1378) @danielcweber
  • Simplify templates (#1377) @danielcweber
  • Update templates (#1376) @danielcweber
  • Dispose WebSocket-channel when deserialization fails (#1375) @danielcweber
  • Catch JsonSerializationException in NewtonsoftJsonSerializerConverter so it adheres to the contract (#1374) @danielcweber
  • Serialize a RequestMessage to pooled memory. (#1373) @danielcweber
  • Add some ClientFactory tests and fix a found issue in Pool (#1372) @danielcweber
  • Bump AutoFixture from 4.18.0 to 4.18.1 (#1371) @dependabot
  • Remove GremlinServer class from the surface of IWebSocketGremlinqClientFactory (#1369) @danielcweber
  • Some tweaks wrt. CancellationTokenSources (#1368) @danielcweber
  • Better exceptions (#1367) @danielcweber
  • Avoid CloneAs in various places (#1366) @danielcweber
  • Put constraint on IArrayGremlinQuery (#1365) @danielcweber
  • Fix T4 template that slipped through in the last PR. (#1364) @danielcweber
  • Remove cast indirection (#1363) @danielcweber
  • Fix a flaky test. (#1362) @danielcweber
  • Tweak CloneAs (#1361) @danielcweber
  • Throw if the partition key property from config cannot be found instead of failing silently. (#1360) @danielcweber
  • Internalize LabelProjections struct (#1359) @danielcweber
  • Refine CloneAs (#1358) @danielcweber
  • Rework CloneAs (#1357) @danielcweber
  • Reduce type parameters in GremlinQuery (#1356) @danielcweber
  • Fix the names of type parameters that denote values. (#1354) @danielcweber
  • T4 and csproj keeps ignoring my settings. (#1355) @danielcweber
  • Return more maps queries (#1353) @danielcweber
  • Group returns maps (#1352) @danielcweber
  • Remove IValueGremlinQuery (#1351) @danielcweber
  • Move global aggregates (#1350) @danielcweber
  • Lift original query type in ForceArray. (#1348) @danielcweber
  • Refine aggregate local operators (#1349) @danielcweber
  • Lower-methods in array-queries should not return IValueGremlinQueries (#1347) @danielcweber
  • Implement a proper interface hierarchy for array queries. (#1346) @danielcweber
  • Lift local operators on arrays (#1345) @danielcweber
  • Work around range inconsistency in Neptune as well (#1344) @danielcweber
  • Bump Microsoft.Azure.Cosmos from 3.36.0 to 3.37.0 (#1343) @dependabot
  • Bump xunit from 2.6.1 to 2.6.2 (#1342) @dependabot
  • Move ConverterFactories which are not dependent on Newtonsoft into the core library. (#1340) @danielcweber
  • Remove unused ConverterFactory (#1339) @danielcweber
  • Switch range workaround with option (#1338) @danielcweber
  • Rearrange converter factories (#1335) @danielcweber
  • Workaround range inconsistencies on Gremlin Server and CosmosDb (#1337) @danielcweber
  • Fix signatures of {Limit,Tail,Skip,Range}Local (#1336) @danielcweber
  • Add equality operators on CosmosDbKey. (#1334) @danielcweber
  • Remove an unused type parameter on IGroupBuilder{..}. (#1333) @danielcweber
  • ReSharper review (#1332) @danielcweber
  • Implement equality members on ElementMetadata. (#1329) @danielcweber
  • Add CancellationToken in GremlinqClientExtensions.TransformRequest. (#1331) @danielcweber
  • Override equality members in MemberMetadata. (#1328) @danielcweber
  • Create a compiled constructor expression to avoid MethodInfo.Invoke. (#1330) @danielcweber
  • Catch and wrap all exceptions in GremlinQueryExecutorImpl. (#1326) @danielcweber
  • Factor out IAsyncEnumerable.Catch (#1325) @danielcweber
  • Bump Microsoft.SourceLink.GitHub from 1.1.1 to 8.0.0 (#1324) @dependabot
  • Remove Slot class in pool (#1323) @danielcweber
  • WebSocket review (#1322) @danielcweber
  • Arrange pool slots in pages (#1316) @danielcweber
  • WebSocket receive in a loop (#1315) @danielcweber
  • Bump Testcontainers from 3.5.0 to 3.6.0 (#1313) @dependabot
  • Update README.md (#1312) @danielcweber
  • Implement our own WebSocket client (#1311) @danielcweber
  • Bump Microsoft.NET.Test.Sdk from 17.7.2 to 17.8.0 (#1310) @dependabot
  • Don't transform to a JToken first but use Newtonsoft deserializer. (#1309) @danielcweber
  • Broaden byte array support (#1308) @danielcweber
  • Defer to ReadOnlyMemory if Memory or byte[] sources fail to deserialize. (#1306) @danielcweber
  • Avoid byte array creation (#1307) @danielcweber
  • When deserializing, work on ReadOnlyMemory instead of byte[]. (#1303) @danielcweber
  • Rename action script. (#1301) @danielcweber
  • Split actions scripts. (#1300) @danielcweber
  • Rework IGremlinClientFactory (#1297) @danielcweber
  • No snapshot PRs anymore. (#1298) @danielcweber
  • Avoid excessive GremlinClient creation by caching environments. (#1296) @danielcweber
  • Reduce snapshot size. (#1295) @danielcweber
  • Bump xunit from 2.6.0 to 2.6.1 (#1294) @dependabot
  • Bump BenchmarkDotNet from 0.13.9 to 0.13.10 (#1293) @dependabot
  • Bump xunit from 2.5.3 to 2.6.0 (#1292) @dependabot
  • Rename GroovyGremlinQuery to GroovyGremlinScript. (#1288) @danielcweber
  • Remove stubs and steps for strategies, of which the WithStrategiesStep wasn't implemented anyway. (#1287) @danielcweber
  • Avoid NBGV in simple builds. (#1286) @danielcweber
  • Do not use foreign namespaces for extensions. Align other namespaces. (#1285) @danielcweber
  • Review options (#1277) @danielcweber
  • Update JanusGraph container (#1279) @danielcweber
  • Put metadata on queries (#1275) @danielcweber
  • Remove Environment from IGremlinQuerySource. It's on the admin. (#1274) @danielcweber
  • Bump Microsoft.Azure.Cosmos from 3.35.4 to 3.36.0 (#1273) @dependabot
  • Make Project tests deterministic for CosmosDb, too! (#1271) @danielcweber
  • Change Projection-Tests to be more deterministic and smaller. (#1265) @danielcweber
  • Review internal QueryFlags (#1263) @danielcweber
  • Push IdentityStep magic back into continuations (#1261) @danielcweber
  • Loosen admin type constraints for 2 methods. (#1259) @danielcweber
  • Remove IGremlinQueryAdmin.ElementType. (#1258) @danielcweber
  • Remove IConfigurableGremlinQuerySource (#1257) @danielcweber
  • Don't deal with RequestMessage.Builder in the serializers. (#1256) @danielcweber
  • Support defer transformation (#1251) @danielcweber
  • Enable requests on an executor to be serialized (#1250) @danielcweber
  • Optimize JValue handling (#1249) @danielcweber
  • Bump xunit from 2.5.2 to 2.5.3 (#1248) @dependabot
  • Tests for AsyncEnumerable extensions (#1245) @danielcweber
  • Add GremlinQueryExecutorExtensions test (#1243) @danielcweber
  • Only build packages on push. (#1242) @danielcweber
  • Run windows tests on windows-2022. (#1241) @danielcweber
  • Bump xunit from 2.5.1 to 2.5.2 (#1240) @dependabot
  • Add a test for RegisterNativeType in execution context. (#1235) @danielcweber
  • Move the object-identity-ConverterFactory into WebSocket-executor. (#1237) @danielcweber
  • Fix two-part deserialization (#1234) @danielcweber
  • Defer values of JValues. (#1232) @danielcweber
  • Remove string-JToken conversion from Support.NewtonsoftJson. (#1231) @danielcweber
  • Exclude generated code from coverage (#1230) @danielcweber
  • Add a few tests to increase code coverage. (#1226) @danielcweber
  • Bump BenchmarkDotNet from 0.13.8 to 0.13.9 (#1225) @dependabot
  • Support common base class for model base classes. (#1220) @danielcweber
  • Fix ResponseMessageConverter (#1219) @danielcweber
  • Introduce a separate converter factory that can deal with request for ResponseMessage<T> for arbitrary T (#1218) @danielcweber
  • Towards a fixed config scheme (#1217) @danielcweber
  • Remove IProviderConfigurationSection (#1216) @danielcweber
  • Bring back ProviderSetup in a slightly different role (#1215) @danielcweber
  • Allow specifying CosmosDb partition key in config (#1213) @danielcweber
  • Add template test (#1212) @danielcweber
  • Test Asp.Net projects (#1209) @danielcweber
  • Remove ProviderSetup class (#1210) @danielcweber
  • Demand base types on Use{Provider} already. (#1208) @danielcweber
  • Keep track of assemblies in model (#1207) @danielcweber
  • Rework GraphModel (#1204) @danielcweber
  • Add dotnet templates (#1202) @danielcweber
  • Move empty-deserializer exception (#1199) @danielcweber
  • Remove ToStringFallbackConverterFactory. (#1197) @danielcweber
  • Cache IdentityConverterFactory and Converters. (#1198) @danielcweber
  • Remove SingleItemArrayFallbackConverterFactory from default deserializer. (#1196) @danielcweber
  • Some test yield flaky results in TinkerGraph. Make them more deterministic. (#1193) @danielcweber
  • Remove any notion of lambdas. (#1192) @danielcweber
  • Add integration tests for queries without any projection (#1177) @danielcweber
  • Disable collection parallelization (#1190) @danielcweber
  • Add Group overload (#1187) @danielcweber
  • Add map to dictionary converter (#1189) @danielcweber
  • Bump Microsoft.Azure.Cosmos from 3.35.3 to 3.35.4 (#1185) @dependabot
  • Bump xunit from 2.5.0 to 2.5.1 (#1184) @dependabot
  • Rework Group signatures (#1180) @danielcweber
  • Feature: IntegrationTests can be filtered by an attribute (#1179) @danielcweber
  • Fix group projection. (#1176) @danielcweber
  • Fix array projection. (#1175) @danielcweber
  • Dont scrub numeric values in snapshots (#1174) @danielcweber
  • Deserializing empty JObjects must result in a null value on vertex property properties (#1173) @danielcweber
  • Parametrize deserialization tests (#1170) @danielcweber
  • Avoid creating containers for nothing. (#1169) @danielcweber
  • Use TestContainers package for integration tests (#1167) @danielcweber
  • Bump BenchmarkDotNet from 0.13.7 to 0.13.8 (#1165) @dependabot
  • Simplify a test for aggregate (#1160) @danielcweber
  • GraphSon verification should verify request messages (#1159) @danielcweber
  • Scrub Guids in serialization tests (#1158) @danielcweber
  • Change InnerVerify signature back, but taking a ValueTask. (#1157) @danielcweber
  • Remove own scrubbers (#1144) @danielcweber
  • Use a different format for Guids in GremlinQueryExecutionExceptions. (#1150) @danielcweber
  • Bring back deserialization tests. (#1148) @danielcweber
  • Less platform snapshots (#1142) @danielcweber