Граф коммитов

145 Коммитов

Автор SHA1 Сообщение Дата
dependabot[bot] d294cf1285 Bump Microsoft.Rest.ClientRuntime in /FSharpLu.Azure
Bumps [Microsoft.Rest.ClientRuntime](https://github.com/Azure/azure-sdk-for-net) from 2.3.20 to 2.3.24.
- [Release notes](https://github.com/Azure/azure-sdk-for-net/releases)
- [Commits](https://github.com/Azure/azure-sdk-for-net/commits/Microsoft.Rest.ClientRuntime_2.3.24)

---
updated-dependencies:
- dependency-name: Microsoft.Rest.ClientRuntime
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-17 09:16:35 -07:00
William Blum 805dce44eb Fix race in test `CompeteWithThreadingObject when semaphore wins` 2022-06-23 12:46:55 -07:00
dependabot[bot] 44da2d91e5 Bump Newtonsoft.Json from 10.0.3 to 13.0.1 in /FSharpLu
Bumps [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) from 10.0.3 to 13.0.1.
- [Release notes](https://github.com/JamesNK/Newtonsoft.Json/releases)
- [Commits](https://github.com/JamesNK/Newtonsoft.Json/compare/10.0.3...13.0.1)

---
updated-dependencies:
- dependency-name: Newtonsoft.Json
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Bump Newtonsoft.Json from 10.0.3 to 13.0.1 in /FSharpLu

Bumps [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) from 10.0.3 to 13.0.1.
- [Release notes](https://github.com/JamesNK/Newtonsoft.Json/releases)
- [Commits](https://github.com/JamesNK/Newtonsoft.Json/compare/10.0.3...13.0.1)

---
updated-dependencies:
- dependency-name: Newtonsoft.Json
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-23 12:46:55 -07:00
microsoft-github-policy-service[bot] f6c051c352 Microsoft mandatory file 2022-06-23 11:36:26 -07:00
William Blum 68fc80b05e Upgrade to net60, remove net462 and netcoreapp3.0 targets
ADO and GitHub CI running dotnet sdk 6.0.x
2022-06-23 11:07:08 -07:00
dependabot[bot] 7aa5961fe2 Bump Newtonsoft.Json from 10.0.3 to 13.0.1 in /FSharpLu.Json
Bumps [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) from 10.0.3 to 13.0.1.
- [Release notes](https://github.com/JamesNK/Newtonsoft.Json/releases)
- [Commits](https://github.com/JamesNK/Newtonsoft.Json/compare/10.0.3...13.0.1)

---
updated-dependencies:
- dependency-name: Newtonsoft.Json
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-23 11:07:08 -07:00
William Blum 6c6716d3be
Tag release after version number (#104)
Add pipeline to sign without release
2021-06-23 17:38:46 -07:00
William Blum 8c33738fe6
CI using GitHub actions (#102)
* Create dotnet-core.yml
* Update README.md
2020-11-24 16:57:53 -08:00
roman b663c9219c don't use arrays for converters in settings 2020-11-24 11:42:07 -08:00
William Blum 0ffaa25030 Release 0.11.6 2019-10-18 16:50:24 -07:00
William Blum 5ff9741f07 Add unit test for and fix bug #92 2019-10-18 16:19:08 -07:00
William Blum bdbe49855d Remove support for appveyor builds 2019-10-18 14:42:05 -07:00
William Blum c47a3d09b9 Nuget package release notes point to the github RELEASENOTES.md file 2019-10-18 14:42:05 -07:00
William Blum a2af4448be Drop support for netstandard1.6 and net452 2019-10-18 14:42:05 -07:00
William Blum 56742f426a Clarify error message when timing out on semaphore acquisition 2019-10-18 14:42:05 -07:00
William Blum ae980d765d Upgrade to latest Azure SDK nuget packages 2019-10-18 14:42:05 -07:00
William Blum 950b6b2fe3 Minor log fixes in AzureVM 2019-10-18 14:27:09 -07:00
William Blum 92817874ec Sensitived arguments were not always masked in trace logging 2019-10-18 11:26:05 -07:00
William Blum f89818bdf0 Azure Queue unit tests fixes
- Clear queue before running azure queue test
- validate and adjust granularity of azure visibility timeout (milliseconds not supported)
- Replace QueueingAPI record by IQueueingAPI interface
- Parameterized Fibonacci test with concurrent dictionary used to store request results, (to prevent interference between Azure and inmemory test)
2019-09-19 15:17:50 -07:00
William Blum 155dc5ce89 memoization cleanup 2019-09-19 15:17:08 -07:00
Alexandre Parent cd3945d8f9 Change exception type raised in CompactUnionJsonConverter 2019-08-28 11:26:33 -07:00
William Blum 4fe56e832a Fix Azure pipeline conditional template 2019-08-16 19:17:05 -07:00
William Blum 19534b2fb5 Release 0.11.5 2019-08-16 17:20:14 -07:00
William Blum 9e21e4715d Ability to return a value to the caller with CallReturn 2019-08-16 17:20:14 -07:00
William Blum ec5ee4083d Add `Call` transition with unit tests
- Call another agent (the callee) and return to the specified state when the calle completes
- Unit test for Call instruction based on Hofstadter sequences
2019-08-16 16:10:53 -07:00
William Blum cab8520e68 Workaround for F# compiler bug when building with `dotnet build`
```
FSharpLu.Azure.Test\AzureQueueSchedulerTests.fs(36,81):
error FS0001: The type 'AzureQueueSchedulerFactory<Header,ServiceRequests,CustomContext>' is not compatible with the type 'ISchedulerFactory<CloudQueueMessage,Header,ServiceRequests,CustomContext>' [C:\sources\fsharpLu\FSharpLu.Azure.Test\FSharpLu.Azure.Test.fsproj]
```
2019-08-14 17:56:08 -07:00
William Blum 5e49382558 File renaming 2019-08-14 17:56:08 -07:00
William Blum 2466555ad9 Refactoring of StateAgent and QueuingHandler
- StateMachineAgent, QueuingHandler and QueueScheduler are fully decoupled
- Added interface to TraceLogging function to allow passing loggers as function parameters
- Logger is passed via an interface instead of statically defined logger (this removes the coupling with Appinsight logger)
- QueuingHandler fully decoupled from Azure API, in-memory implementation provided
- Move QueueScheduler from FSharpLu.Azure to FSharpLu
- Remove direct dependency on Azure in StateMachineAgent and QueueScheduler
2019-08-14 17:56:08 -07:00
William Blum 204f7a93f6 fslint styling 2019-08-14 17:56:08 -07:00
William Blum f11edb831e YAML for non-signed PR validation build on Azure DevOps 2019-08-12 14:04:34 -07:00
William Blum 4b53d96946 Release 0.11.4 2019-08-02 18:03:55 -07:00
William Blum 3700f7883e Minor adjustments in OutcomeLogger and newQueue<_,_> 2019-08-02 18:03:55 -07:00
William Blum f5ba320fb0 Reduce unit test stdout verbosity
Configure GitHub release changelog
2019-08-02 18:03:55 -07:00
William Blum e2dbda86a1 Upgrade to dotnet SDK 2.2.401 to build with F# 4.6 on Azure Devops
Infer nuget version in the ADO Pipeline Yaml
2019-08-02 18:03:55 -07:00
William Blum 79f8270261 Release notes for 0.11.3 2019-07-31 15:36:42 -07:00
William Blum 6881c3c5e2 Under stressed condition `Async.AwaitEvent` could hang, causing `startProcessAsync` to hang 2019-07-31 15:36:42 -07:00
William Blum f8d9ec3b7b A repro unit test for the corner case hang in the startProcess logic 2019-07-31 15:36:42 -07:00
William Blum c7ed052541 Refactor and generalize state machine-based Queue Request Processor
- Split concepts of Agent, Scheduler and Queuing interface
- Rename RequestAction to ExecutionInstruction
- Add in-memory based implementation of Queuing API
- Add Azure Queue-based implementation of Queuing API
- Add Fibonnaci in-memory test for QueueServiceHandler
2019-07-31 11:19:37 -07:00
William Blum c9dcf11eec add timestamps, remove `operations` argument from transition function 2019-07-25 15:15:24 -07:00
William Blum 5b7c65c77c
Merge pull request #79 from microsoft/wiblum/hackathon
MS Hackathon 2019 - Fork and Join (WhenAll, WhenAny) for agent state machines
2019-07-25 00:34:23 -07:00
William Blum 1701adca19 Minor fixes and comments 2019-07-24 17:18:48 -07:00
Stas Tishkin eef206d197 Throw NotSupportedException when ForkAndGoto gets empty spawn states
Add more tests and tighten up the validation
2019-07-24 16:54:58 -07:00
Stas Tishkin 71f8fee18f Add Azure Table entry interface implementation
Add functional test for the Azure Table entry interface implementation
2019-07-24 16:54:58 -07:00
Stas Tishkin d0675445ff Add a simple test machine
- implementation of in memory storage
- couple dummy tests
- double fork test
- agent operations spawn implementation
2019-07-24 16:54:58 -07:00
William Blum 55626a44e0 Add `Fork`, `WhenAll` and `WhenAny` transitions to agent state machine
- Define a 'join storage' interface
- Track request and join status
- Use a merge callback to implement the atomic update of the fork data
- Support for multiple WhenAll and WhenAny subscriptions
- Creating a new request also creates an associated join entry
- Rename `post` functions to `spawn` + create the request metadata for the children when forking
- Improve comments and explanation on how the Agent interface should be implemented
2019-07-24 16:52:19 -07:00
William Blum eca426459a
New release and extract version from RELEASENOTES.md (#78)
+ Two other small fixes in HyperV and Diagnostics
2019-07-24 14:50:31 -07:00
William Blum 8e03f0270c
Wait for redirect events to be signaled before returning (stdout/stderr could miss bytes if the process ends too quickly) (#77)
Improve test for startProcess: check that stdoutput has the exact expected length
2019-07-24 13:49:49 -07:00
William Blum 9462280330
Add WMI helpers, Win32 management and HyperV modules (#74) 2019-07-24 10:29:19 -07:00
William Blum 315e33f677
Sysprep.ps1 file should be copied to build output directory for any project referencing the FSharpLu nuget (#76) 2019-07-24 10:26:46 -07:00
William Blum 0f001e3df5
CI YAML fix and nuget copyright for Azure module (#75)
* UTF8 BOM marker broke the CI YAML

* Fix FSharpLu.Azure nuget copyright
2019-07-20 13:33:09 -07:00