Skip to content

Releases: WeihanLi/dotnet-httpie

0.16.0

31 Dec 01:41
df6218a

Choose a tag to compare

What's Changed

  • Update NuGet Packages by @github-actions[bot] in #131
  • Update NuGet Packages by @github-actions[bot] in #133
  • 0.16.0 by @WeihanLi in #134

Full Changelog: 0.15.0...0.16.0

0.15.0

03 Dec 12:07
82f0b7b

Choose a tag to compare

What's Changed

  • Add comprehensive GitHub Copilot instructions for dotnet-httpie repository by @Copilot in #115
  • merge upstream by @WeihanLi in #116
  • docs: Add comprehensive documentation and improve README with accuracy fixes by @Copilot in #113
  • Update NuGet Packages by @github-actions[bot] in #118
  • Update NuGet Packages by @github-actions[bot] in #119
  • Update NuGet Packages by @github-actions[bot] in #120
  • Update NuGet Packages by @github-actions[bot] in #121
  • Add --stream option to output HTTP response body as it arrives by @Copilot in #123
  • Update NuGet Packages by @github-actions[bot] in #124
  • Update NuGet Packages by @github-actions[bot] in #127
  • Make RequestDataMiddleware AOT-friendly by @Copilot in #129
  • 0.15.0 by @WeihanLi in #126

Full Changelog: 0.14.0...0.15.0

0.14.0

11 Sep 00:03
c002827

Choose a tag to compare

What's Changed

🚀 Features

  • Update HTTP Version Support: Update support for specifying the HTTP version in requests via the --httpVersion option and try to use HTTP/2 by default. The tool now properly sets the HTTP version on outgoing requests, and handles the new property in requests and responses.
  • Properties Output: Introduced a new "Properties" (-p) output option for displaying custom/request/response properties. Timestamps and duration are now included in the output via this new mechanism, replacing the old "Timestamp" flag.
  • Improved Output Formatting: Output formatting is enhanced—request/response property output and HTTP version display are improved for better clarity.

🐛 Bugfixes

  • Fixed passing cancellation tokens in tests and improved test reliability.
  • Corrected user agent and HTTP version handling in middleware.

🧹 Refactorings & Dependencies

  • Updated dependencies: Upgraded System.CommandLine and WeihanLi.Common, switched to xunit.v3 and Xunit.DependencyInjection 10.7.0, and cleaned up test package references.
  • Modernized test code: Migrated test assertions from FluentAssertions to built-in Assert, and streamlined test logic.
  • Removed obsolete GitHub CodeQL workflow and cleaned up solution/project files.

Full Changelog: 0.13.0...0.14.0

0.13.0

18 Aug 00:18
a82b75a

Choose a tag to compare

dotnet-httpie v0.13.0 Release Notes

🛠️ Refactor & Maintenance

  • Refactored internal build scripts to use a much simpler and more maintainable build process (build/build.cs), relying on DotNetPackageBuildProcess.
  • Changed the default global tool install command from dotnet tool update to dotnet tool install in build scripts.
  • Updated solution to drop .NET 9.0 target (now targets .NET 8.0 and .NET 10.0).
  • Updated project files to set RollForward to Major for better tool compatibility.
  • Added IsPackable, IsTestProject properties to test project props for improved test project configuration.

📦 Dependency Updates

  • Upgraded dependencies:
    • System.CommandLine to 2.0.0-beta7.25380.108
    • JsonSchema.Net to 7.4.0
    • System.Linq.AsyncEnumerable to 10.0.0-preview.7.25380.108
    • WeihanLi.Common to 1.0.81
  • CodeQL GitHub Action updated to v3.

🛠️ CI/CD & Build

  • Enabled scheduled runs for dependency update checks.
  • Improved badge and documentation links in README.

Full Changelog: 0.12.0...0.13.0

0.12.0

28 Jul 01:00
c5053de

Choose a tag to compare

🚀 Features

  • Nested JSON Builder Support (#55):
    • Now supports building nested JSON objects and arrays from CLI options (e.g., foo[bar]=baz, arr[]=1 arr[]=2).
    • Supports root array as request body (e.g., [][key]=value).
  • AOT Tool Packages & Platform-specific Builds:
    • Added new GitHub Actions workflows to build and release .NET AOT tool packages for multiple platforms (Linux, Windows, macOS).
    • Artifacts are now uploaded for each target platform.

🐞 Bugfixes

  • Miscellaneous improvements and fixes to the request data middleware for more robust and correct JSON construction from CLI inputs.
  • Improved handling for root array and nested array structures in JSON.

🛠️ Refactor

  • Refactored RequestDataMiddleware and related unit tests to support and verify advanced JSON input patterns.
  • Improved property path parsing and assignment logic for dynamically building JSON structures.

📦 Miscellaneous

  • Upgraded dependencies:
    • System.CommandLine updated to 2.0.0-beta6.25358.103.
  • CI/CD and workflow enhancements:
    • Improved release and build workflows, including better artifact handling and naming.
    • Updated git config in workflows for consistent commit authorship.
    • Disabled NuGet signature verification in dotnet-outdated workflow for smoother automation.
  • Documentation:
    • Updated release notes and usage documentation.

For details, see the full commits and diff.

0.11.0

16 Jul 03:34

Choose a tag to compare

🚀 Features

  • Refactored all command and option definitions to use the new System.CommandLine option model (descriptions, completions, default values, arity, etc.)
  • Added support for IAsyncEnumerable<HttpRequestMessageWrapper> in parser interfaces for more scalable file/script parsing
  • exec command now supports reading script content from stdin (not just file path)
  • New --offline / --dry-run option: print request info without sending requests
  • Improved environment variable loading: supports shared variables ($shared) in .env and JSON env files
  • Output formatter improvements: added request line output, enhanced pretty/quiet/verbose modes

🐞 Bugfixes

  • Improved error handling and validation for curl script parsing
  • Fixed issues with request data parsing so query strings, flags, and headers aren’t mistreated as data

🛠️ Refactor

  • Refactored parser interfaces to use IAsyncEnumerable and reorganized inheritance (CurlParser and HttpParser now inherit from AbstractHttpRequestParser)
  • Updated option definitions and usages throughout middleware for consistency
  • Refined logic for parsing authentication, SSL, proxy, download, cache, and request data options
  • Moved to new assertion library in tests (AwesomeAssertions instead of FluentAssertions)
  • Various structure and code improvements (internal APIs, option parsing, etc.)

📦 Miscellaneous

  • Upgraded dependencies: System.CommandLine, JsonPath.Net, WeihanLi.Common, etc.
  • Updated sample assets and environment variable usage in tests
  • Documentation and code comments improved

For a detailed list of changes, see the commit comparison.

0.10.0

09 Jun 05:31

Choose a tag to compare

dotnet-httpie v0.10.0 Release Notes

🚀 Features & Improvements

  • HTTP Environment File Support:

    • Added support for .env, http-client.env.json, and httpenv.json files for environment variables in HTTP file execution.
    • You can now pass --env <env-name> to the exec command to specify environment variables for requests.
    • Variable replacement enhancements: supports dotenv, environment, and custom function variables in HTTP scripts.
  • .NET 10.0 Support:

    • Upgraded target frameworks to include net10.0 (preview) for main project and test projects.
    • Updated Dockerfile and build infrastructure to use .NET 10.0 SDK and runtime.
  • Build & CI/CD Improvements:

    • Updated all CI/CD pipelines and GitHub Actions to use .NET 10.0.
    • Renamed primary workflow to dotnet.yml and updated status badges.
    • Improved build scripts: dotnet-httpie.slnx replaces .sln and supports new build logic.
    • Enhanced Docker image build and publish process.
  • Dependency Updates:

    • Updated various dependencies

🐛 Bugfixes & Refactoring

  • Unified and improved variable replacement logic for HTTP file execution.
  • Enhanced test coverage for environment variables and dotenv support.
  • Refactored some internal logic for cleaner and more robust code.
  • Minor code cleanup, formatting, and modernization.

📝 Other Changes

  • Documentation and README updated for new features and workflow badge.
  • Solution file refactored to .slnx format.
  • Added more sample/test assets for the http env file support.

Upgrade Note:
You need the .NET 10.0 SDK (preview) to build and this code.
Environment variable support in HTTP files now covers more scenarios, making scripting much more flexible!


Thanks for using dotnet-httpie!

Full Changelog: 0.9.0...0.10.0

0.9.0

02 Dec 16:30
046b6db

Choose a tag to compare

  • Add net9.0 support, remove net6.0/net7.0 support
  • AOT support
  • Publish container image based on AOT artifacts and multi-platform support

Full Changelog: 0.8.2...0.9.0

0.8.2

25 Mar 05:19

Choose a tag to compare

Full Changelog: 0.8.1...0.8.2

0.8.1

27 Jan 07:49
01b07e8

Choose a tag to compare

Full Changelog: 0.8.0...0.8.1