{"id":3256527,"name":"sqlapplockhelper.systemdata","ecosystem":"nuget","description":"An ultra lightweight API for robust distributed application mutex locking capabilities leveraging Sql Server.  The API provides a set of easy to use custom extensions for the System.Data.SqlClient that provide robust distributed application mutex/locking support via the sp_getapplock \u0026 sp_releaseapplock stored procedures.","homepage":"https://github.com/cajuncoding/SqlAppLockHelper","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/cajuncoding/SqlAppLockHelper","keywords_array":["sp_getapplock","sp_releaseapplock","distributed-locking","distributed-lock-algorithm","mutex","locking","distributed","distributed-mutex","app-locking","application-locking","sql","sqlserver","sql-server","sqlclient","application-lock","application-lock-system","transactional-outbox-pattern","azurefunctions","azure-functions","serverless"],"namespace":null,"versions_count":4,"first_release_published_at":"2020-12-23T08:11:20.907Z","latest_release_published_at":"2025-05-16T05:32:26.013Z","latest_release_number":"1.0.3","last_synced_at":"2026-03-24T18:35:49.762Z","created_at":"2022-04-10T16:33:37.567Z","updated_at":"2026-03-24T18:35:49.803Z","registry_url":"https://www.nuget.org/packages/sqlapplockhelper.systemdata/","install_command":"Install-Package sqlapplockhelper.systemdata","documentation_url":null,"metadata":{"copyright":"Copyright © 2020","license_info":{"type":"expression","text":"MIT","version":null},"license_url":"https://licenses.nuget.org/MIT","require_license_acceptance":false,"repository":{"type":"git","url":"https://github.com/cajuncoding/SqlAppLockHelper","branch":null,"commit":"ede4c165ba374d01314e152a5e28b301f00cd8d3"},"development_dependency":false,"serviceable":false,"framework_assemblies":[],"package_types":[],"release_notes":"- Bumped System.Data.SqlClient to v4.8.6 as the lowest non-vulnerable non-deprecated version.\n\n\t\t\tPrior Release Notes:\n\t\t\t- Added automatic tracking of Lock Acquisition Wait time in addition to the actual Lock hold elapsed time so it's easy to now see how long the process actually waited in line to get the lock.\n\t\t\t- Enhnace to automatically apply Lock Acquisition Wait time to Sql Command Timeout (if not explicitly set).\n\t\t\t- This helps simplify and reduce risk of incorrect use with Sql Command timeout failing before Lock Wait period is over.\n\t\t\t- Improve stability for Disposing, removing unnecessary exception warnings as locks are released when Connections are disposed/closed. Added explicit Release() \u0026 ReleaseAsync() methods, updated tests, and added Timespan for easily tracking lock time.\n\t\t\t- Initial release of Async/Sync support for System.Data \u0026 Microsoft.Data namespace.","dependency_summary":{"total_dependency_groups":1,"target_frameworks":[".NETStandard2.1"],"total_dependencies":2}},"repo_metadata":{"id":65413852,"uuid":"323774426","full_name":"cajuncoding/SqlAppLockHelper","owner":"cajuncoding","description":"An ultra lightweight API for robust Distributed Application Mutex/Locking capabilities leveraging SQL Server.  The API provides a set of easy to use custom extensions for the SqlClient libraries (e.g. Microsoft.Data.SqlClient or System.Data.SqlClient) that provide robust distributed application mutex/locking support via the sp_getapplock \u0026 sp_releaseapplock stored procedures.","archived":false,"fork":false,"pushed_at":"2025-05-16T05:30:50.000Z","size":113,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-01T17:59:42.088Z","etag":null,"topics":["app-lock","application-lock-system","azure-functions","batch-loader","batch-loading","bulk-load","bulk-loader","bulk-loading","distributed-lock","distributed-lock-algorithm","distributed-locking","distributed-mutex","locking","locking-library","serverless","single-thread","sql-server","sqlserver","transactional-outbox","transactional-outbox-pattern"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cajuncoding.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-23T01:43:24.000Z","updated_at":"2025-05-16T05:30:34.000Z","dependencies_parsed_at":"2024-06-20T00:09:45.528Z","dependency_job_id":"b667dfab-d167-4232-abc6-f91ed7753b36","html_url":"https://github.com/cajuncoding/SqlAppLockHelper","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/cajuncoding/SqlAppLockHelper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cajuncoding","download_url":"https://codeload.github.com/cajuncoding/SqlAppLockHelper/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":277940827,"owners_count":25903107,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-01T02:00:09.286Z","response_time":88,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"cajuncoding","name":"Brandon","uuid":"20844814","kind":"user","description":"Always tryin' to cook up something good!\r\n    \r\n\r\n","email":"","website":"http://www.cajuncoding.com","location":"United States","twitter":"TheCajunCoder","company":"CajunCoding (for Fun) \u0026 EXLRT (for Work)","icon_url":"https://avatars.githubusercontent.com/u/20844814?u=fee6578d5fa07f8e991736e963849dcb688e8886\u0026v=4","repositories_count":11,"last_synced_at":"2023-03-06T10:20:34.091Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/cajuncoding","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-16T09:35:18.856Z","updated_at":"2023-03-06T10:20:34.104Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cajuncoding","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cajuncoding/repositories"},"tags":[{"name":"v1.0.0","sha":"cb9835090afa418613c10d9e983841cb29c64507","kind":"tag","published_at":"2021-01-04T01:44:12.000Z","download_url":"https://codeload.github.com/cajuncoding/SqlAppLockHelper/tar.gz/v1.0.0","html_url":"https://github.com/cajuncoding/SqlAppLockHelper/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/cajuncoding/SqlAppLockHelper@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper/tags/v1.0.0/manifests"},{"name":"v1.0.1","sha":"040390b7fdb6fd29a105f1bc28c098bccb34eb21","kind":"tag","published_at":"2021-01-04T01:43:27.000Z","download_url":"https://codeload.github.com/cajuncoding/SqlAppLockHelper/tar.gz/v1.0.1","html_url":"https://github.com/cajuncoding/SqlAppLockHelper/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/cajuncoding/SqlAppLockHelper@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper/tags/v1.0.1/manifests"}]},"repo_metadata_updated_at":"2026-03-24T18:35:49.772Z","dependent_packages_count":1,"downloads":11884,"downloads_period":"total","dependent_repos_count":1,"rankings":{"downloads":20.147712716316466,"dependent_repos_count":7.026093403493118,"dependent_packages_count":10.9100869998819,"stargazers_count":9.418080365563426,"forks_count":10.082012925237018,"docker_downloads_count":null,"average":11.516797282098386},"purl":"pkg:nuget/sqlapplockhelper.systemdata","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/nuget/sqlapplockhelper.systemdata","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/nuget/sqlapplockhelper.systemdata","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/nuget/sqlapplockhelper.systemdata/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-21T22:41:50.776Z","issues_count":0,"pull_requests_count":0,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":null,"issues_closed_count":0,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":0,"avg_comments_per_issue":null,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/cajuncoding%2FSqlAppLockHelper/issues","maintainers":[],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/sqlapplockhelper.systemdata/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/sqlapplockhelper.systemdata/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/sqlapplockhelper.systemdata/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/sqlapplockhelper.systemdata/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/packages/sqlapplockhelper.systemdata/codemeta","maintainers":[{"uuid":"cajuncoding","login":"cajuncoding","name":null,"email":null,"url":null,"packages_count":38,"html_url":"https://www.nuget.org/profiles/cajuncoding","role":null,"created_at":"2022-11-18T07:19:30.490Z","updated_at":"2022-11-18T07:19:30.490Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/maintainers/cajuncoding/packages"},{"uuid":"raerae1616","login":"raerae1616","name":null,"email":null,"url":null,"packages_count":37,"html_url":"https://www.nuget.org/profiles/raerae1616","role":null,"created_at":"2022-11-18T07:19:30.514Z","updated_at":"2022-11-18T07:19:30.514Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/nuget.org/maintainers/raerae1616/packages"}]}