Skip to content

Releases: diomonogatari/Bitbucket.Net

v0.3.0

10 Feb 00:22
b3a110e

Choose a tag to compare

What's Changed

  • Implement Bitbucket Server Code Search API models and client methods by @diomonogatari in #5

Full Changelog: v0.2.0...v0.3.0

v0.2.0 - Error handling, streaming, and correctness

08 Feb 16:04
3059cad

Choose a tag to compare

First public stable release of the modernized fork. 50 commits over the 0.1.0 pre-release.

Breaking Changes

  • Exception handling: The library now throws BitbucketApiException (and typed subtypes like BitbucketNotFoundException, BitbucketConflictException, etc.) instead of raw FlurlHttpException. Update your catch blocks accordingly.
  • Comment model: No longer inherits from PullRequestInfo. Properties that were always null on comments (Title, Description, FromRef, ToRef, Locked, Reviewers) have been removed.
  • Comment.State: Changed from a new keyword hiding a PullRequestStates enum to a plain string?.
  • Global Flurl config removed: The library no longer mutates FlurlHttp.Clients.WithDefaults(), so other Flurl consumers in the same process are no longer affected.
  • Unix timestamp methods renamed: FromUnixTimeSecondsFromUnixTimeMilliseconds, ToUnixTimeSecondsToUnixTimeMilliseconds. The old names were misleading — Bitbucket Server uses epoch milliseconds. ToUnixTimeSeconds also had a data-corruption bug (returned ticks instead of seconds).
  • Timestamps are now UTC: FromUnixTimeMilliseconds no longer calls .ToLocalTime(). All deserialized dates are returned as UTC DateTimeOffset.

Added

  • 11 new IAsyncEnumerable streaming methods for paginated endpoints (PR activities, changes, comments, participants, tasks, blocker comments, dashboard/inbox PRs, tags, diffs)
  • SourceLink + symbol packages for debugger source stepping
  • XML documentation on all public types and methods (ships in NuGet)
  • global.json for reproducible SDK version pinning
  • Directory.Build.props for centralized build settings
  • Code coverage collection in CI
  • 63 new tests (633 → 697): streaming, diff streaming, cancellation propagation, DI constructor integration

Fixed

  • Typed exceptions now fire: Flurl error suppression ensures BitbucketApiException hierarchy is thrown instead of FlurlHttpException
  • CancellationToken propagation: All helper methods pass tokens through to HTTP calls
  • PullRequest.ToString() / Participant.ToString(): No longer throw NullReferenceException on null Author
  • ToUnixTimeSeconds data corruption: Was returning DateTimeOffset.Ticks (~6 orders of magnitude wrong); now correctly returns epoch milliseconds
  • Nullable DateTimeOffset? converter mismatch: 17 nullable properties now use NullableUnixDateTimeOffsetConverter instead of the non-nullable variant
  • Unnecessary using System.Net.Http removed from DynamicMultipartFormDataContent

Changed

  • Monolithic Core/Projects/BitbucketClient.cs (4,491 lines) split into 10 focused partial-class files
  • Removed dead commented-out Avatar property from ProjectDefinition

Installation

dotnet add package BitbucketServer.Net --version 0.2.0

v0.1.0-beta.1

06 Feb 23:42

Choose a tag to compare

v0.1.0-beta.1 Pre-release
Pre-release

Modernized fork of Bitbucket.Net

First beta release of the independently maintained fork.

What changed from the original

  • Upgraded to .NET 10 and C# 14
  • Migrated from Newtonsoft.Json to System.Text.Json
  • Added CancellationToken support on all async methods
  • Added streaming (IAsyncEnumerable) for paged endpoints
  • Typed exceptions (BitbucketException hierarchy)
  • Bitbucket Server 9.0+ compatibility
  • Flurl.Http 4.x