Conversation
…k merge between branches
* Fixed the scheduler background to Task.Delay since the Peridic Timer were skipping ticks on short interval with seconds. * small refactor * fixed the mixd up delete ticker
* Made improvements and new feature: request by default not using GZIP compression * Added timezone dashboard support and other fix on features. * Fixed the seefing data
* Added some new features on dashboard and on demand running directly without giving pressure of background scheduler * Added dispatch interfaces * added pagination on machine names * Added test coverage * added examples * Added sample sqlite for samples * Added csproj fules for Sample data * fixed the locking of immediate run ticker in safe for runcondition * fiexed indexing, the scheduler on high run and memory persistence * fixed dashboard path merge * small fixes on manager * Added migration changes for examples
* Fix schema assignment logic in UseTickerQDbContext and add SetSchema method * Refactor UseTickerQDbContext to simplify schema assignment logic
* Checkpoint from VS Code for coding agent session * Remove documentation on separating job queueing from job processing
* Add retry logic improvements and unit tests for ExecuteTaskAsync * Refactor retry test setup to use SetupRetryTestFixture for consistency
…crementalSourceGenerator (#433)
* Initial plan * Add configurable authorization policy name for Host mode Co-authored-by: jods4 <3832820+jods4@users.noreply.github.com> * Refactor: Make policy an optional parameter to WithHostAuthentication Co-authored-by: jods4 <3832820+jods4@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: jods4 <3832820+jods4@users.noreply.github.com>
- Load .sync-exclude from main (not target branch) so it's always up to date - Escape regex special characters in sed replacements (fixes [x.0.0,y.0.0) values) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Values like [8.0.0,9.0.0) contain regex special chars that break sed. Use awk string matching instead which handles literal characters. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…on in CI - Replace hardcoded FlexLabs.Upsert version with $(DotNetVersion) - Replace hardcoded EF Core Sqlite version in benchmarks with $(DotNetVersion) - Add overrides for tests/Directory.Build.props and sample/benchmark csproj files - Detect .NET version and solution file dynamically in PR and build workflows - Fix PR comment table formatting (property column was empty) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- src/Directory.Build.props is the single source of truth for TargetFramework, Version, DotNetVersion, DotNetAbstractionsVersion - tests/samples/benchmarks import from src/ and disable packaging - Replace all hardcoded package versions with $(DotNetVersion) - Simplify .sync-overrides to only override src/Directory.Build.props - Detect .NET version dynamically in PR and build workflows Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Uses IDbContextOptionsConfiguration<T> which only exists in EF Core 10. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Race condition: PR may not be indexed when comment step runs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Clear host-level endpoint routing state in MapPathBaseAware before entering the dashboard branch pipeline. When host-level Map*() calls (e.g. MapStaticAssets().ShortCircuit()) activate endpoint routing, the EndpointRoutingMiddleware may set an endpoint on the HttpContext. The branch's own UseRouting() then skips evaluation (it short-circuits when GetEndpoint() is non-null), causing SignalR negotiate/WebSocket requests to hit the wrong endpoint and return 405. The fix calls SetEndpoint(null) and clears RouteValues when the dashboard base path matches, ensuring the branch's routing middleware re-evaluates against dashboard endpoints. Closes #456 Co-authored-by: Alberti's MacMini <albert@Albertis-Mac-mini.local> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
#721) Replace HasDefaultValue(true) with HasDefaultValueSql("1") on the IsEnabled property in CronTickerConfigurations. The former emits DEFAULT True in migration SQL, which is invalid on Oracle (ORA-00904). HasDefaultValueSql("1") produces DEFAULT 1, valid across SQL Server, PostgreSQL, SQLite, and Oracle. HasSentinel(true) ensures EF Core still sends explicit false values instead of deferring to the DB default. Co-authored-by: Alberti's MacMini <albert@Albertis-Mac-mini.local> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- build.yml: trigger on release publish instead of push to main/net8/net9 - sync-version-branches.yml: trigger on release publish instead of push to main - Both keep workflow_dispatch as manual fallback - Updated Discord notification for release context Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Tests run before packaging — if tests fail, no NuGet packages are published. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Add Source Link and symbol package support - Enable Source Link with Microsoft.SourceLink.GitHub for debugger source stepping - Generate .snupkg symbol packages alongside .nupkg - Enable deterministic builds and CI build flag - Embed untracked sources for complete debugging experience Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Fix sync-exclude, remove src/src.sln, organize TickerQ.slnx hub folder - Fix .sync-exclude: TickerQ.sln → TickerQ.slnx (correct filename) - Remove src/src.sln (replaced by TickerQ.slnx on main) - Move hub projects to dedicated /hub/ folder in TickerQ.slnx Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Add src/src.sln to sync-exclude to protect it on net8/net9 branches Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Convert Windows timezone IDs (e.g. "Eastern Standard Time") to IANA format (e.g. "America/New_York") before sending to the frontend, so Intl.DateTimeFormat can correctly render dates in the configured scheduler timezone. Also add defensive fallback in the frontend formatDate() for invalid timezone IDs, and Windows timezone ID pattern matching in getDateFormatRegion() for correct US/EU date format selection. Co-authored-by: Alberti's MacMini <albert@Albertis-Mac-mini.local> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Skip TickerQ initialization when running inside design-time tools (#712) Build-time tools like dotnet-getdocument (used by Microsoft.Extensions.ApiDescription.Server for OpenAPI generation) invoke Program.Main to build the host, which triggers UseTickerQ → InitializeTickerQ → SeedDefinedCronTickers. This causes database queries in a context where no valid connection string exists, crashing the build. Add an Assembly.GetEntryAssembly() guard that detects dotnet-* tool entry assemblies and short-circuits InitializeTickerQ before any DB-touching or background service initialization occurs. Closes #712 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Defer TickerQ initialization to host lifecycle instead of inline UseTickerQ (#712) Replace the Assembly.GetEntryAssembly() heuristic with a proper lifecycle-based approach: move all I/O-bound initialization (function discovery, DB seeding, external provider startup) from inline UseTickerQ into a dedicated TickerQInitializerHostedService that runs during host.StartAsync(). Design-time tools (dotnet-getdocument, dotnet-ef, etc.) build the host but never start it, so the hosted service naturally never runs — no heuristics needed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Alberti's MacMini <albert@Albertis-Mac-mini.local> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…idation (#764) - Add lock to Build() so concurrent hosts (e.g. WebApplicationFactory tests) don't overwrite a populated FrozenDictionary with an empty one (fixes #705) - Initialize static FrozenDictionary fields to .Empty instead of null to prevent NullReferenceException when UseTickerQ() is not called - Add IsBuilt flag to distinguish "UseTickerQ() not called" from "no [TickerFunction] methods found" - Add TickerQStartupValidator IHostedService that warns at startup when UseTickerQ() is missing or no ticker functions are registered - Update test ResetProvider() to use FrozenDictionary.Empty and reset IsBuilt Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The sample project uses PackageReference with $(Version) which resolves to the version being built. Restoring the full solution fails because the package isn't published yet. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fixes sync build failures on net8/net9 branches where $(Version) resolved to a version that doesn't exist on NuGet yet. All samples now consistently use ProjectReference. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…) (#773) When WithHostAuthentication() is configured, dashboard endpoints use RequireAuthorization() metadata. ASP.NET Core's EndpointMiddleware throws InvalidOperationException if no AuthorizationMiddleware exists between UseRouting() and UseEndpoints(). The host app's UseAuthorization() does not propagate into Map() branches, so the dashboard branch needs its own. Closes #408 Co-authored-by: Alberti's MacMini <albert@Albertis-Mac-mini.local> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Fix PostgreSQL incompatible boolean default in CronTicker (#778) Replace HasDefaultValueSql("1") with HasDefaultValue(true) so EF Core translates the CLR boolean into the correct SQL literal for each provider (1 for SQL Server/SQLite, TRUE for PostgreSQL, appropriate value for Oracle). The raw SQL literal "1" is invalid for PostgreSQL boolean columns, causing migration failure with error 42804. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Use CLR-side default for CronTicker.IsEnabled instead of DB default Remove HasDefaultValue(true) and HasSentinel(true) from the EF configuration; the C# property initializer (= true) is sufficient. EF Core always includes the property in INSERT/UPDATE SQL, so no provider-specific SQL default translation is needed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
# Conflicts: # TickerQ.slnx # samples/TickerQ.Sample.WebApi/Migrations/TickerQDbContextModelSnapshot.cs # samples/TickerQ.Sample.WebApi/Program.cs # samples/TickerQ.Sample.WebApi/TickerQ.Sample.WebApi.csproj # src/Directory.Build.props # src/TickerQ.EntityFrameworkCore/Configurations/CronTickerConfigurations.cs # src/TickerQ.EntityFrameworkCore/Infrastructure/BasePersistenceProvider.cs # src/TickerQ.EntityFrameworkCore/Infrastructure/MappingExtensions.cs # tests/TickerQ.EntityFrameworkCore.Tests/Infrastructure/CronTickerConfigurationTests.cs
Collaborator
Author
Sync DetailsExcluded files restored from
|
| File | Property | Change |
|---|---|---|
src/Directory.Build.props |
Version |
10.2.5 -> 9.2.5 |
src/Directory.Build.props |
TargetFramework |
net10.0 -> net9.0 |
src/Directory.Build.props |
DotNetVersion |
[10.0.0,11.0.0) -> [9.0.0,10.0.0) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Automated Branch Sync
This PR merges recent changes from
mainintonet9.Created automatically by branch sync workflow