Skip to content

Conversation

@eXpl0it3r
Copy link
Owner

@eXpl0it3r eXpl0it3r commented Jan 27, 2026

Something I knew a long time ago, but had never really hard evidence for it, started to wreck havock in certain circumstances, because the UpdateSettings method can be called in parallel. As such, you need to ensure that changes to the underlying cache values as well as reading from them, is properly handled, otherwise you run into "fun" race conditions and crashes.

This fixes #48

Additionally, I realized that the client name and tag filtering was done in a wrong way, thus not actually getting applied.

Included fixes / changes:

  • Change detection for settings has been fixed through deep cloning
  • Tags comparison logic has been fixed to properly filter by tags
  • Client data is fetched at the correct time now (before the project)
  • Client data is localized as it's just a dependency for the project query
  • All public methods of the ClockifyService are protected by a semaphore to prevent threading issues
  • Title formatting is now case insensitive (e.g. {projectName} or {ProjectName} or {projectname})

@eXpl0it3r eXpl0it3r added the bug Something isn't working label Jan 27, 2026
@eXpl0it3r eXpl0it3r force-pushed the bugfix/client-and-tags branch from a492ebd to afb4871 Compare January 27, 2026 14:45
@eXpl0it3r eXpl0it3r merged commit ae5e1ec into master Jan 27, 2026
6 checks passed
@eXpl0it3r eXpl0it3r deleted the bugfix/client-and-tags branch January 27, 2026 14:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Version 1.13 broke all timers - NullReferenceException

1 participant