Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .github/workflows/dotnetcore.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,9 @@ jobs:
runs-on: windows-latest
timeout-minutes: 60
permissions:
contents: read
# write: Publish Documentation (EndBug/add-and-commit) pushes DocFX output to develop.
# GITHUB_TOKEN with contents:read cannot push (403 github-actions[bot]).
contents: write
# SonarCloud / PR decoration when token is present
pull-requests: write
checks: write
Expand Down
24 changes: 20 additions & 4 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,9 @@ jobs:
contents: read
strategy:
fail-fast: false
# Cap concurrency — many self-contained publishes on shared ubuntu runners run out of disk.
# Musl + glibc matrix + Inspector/CLI together previously ENOSPCd even at 3.
max-parallel: 2
matrix:
include:
- rid: linux-x64
Expand All @@ -131,15 +134,21 @@ jobs:
os: macos-latest
steps:
- uses: actions/checkout@v6
- name: Free disk space (Linux)
if: runner.os == 'Linux'
run: |
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL \
/usr/local/share/boost /usr/share/swift /usr/local/.ghcup || true
sudo docker system prune -af || true
df -h
- uses: actions/setup-dotnet@v5
with:
dotnet-version: '10.0.x'
- uses: actions/cache@v4
with:
path: tools/packaging/.cache/http3-natives
key: http3-natives-${{ hashFiles('tools/packaging/http3-native.lock.json') }}-${{ matrix.rid }}
restore-keys: |
http3-natives-${{ hashFiles('tools/packaging/http3-native.lock.json') }}-
# Exact RID only — cross-RID restore-keys previously pulled linux-x64 into musl jobs.
- name: Publish Cli
shell: pwsh
run: |
Expand Down Expand Up @@ -191,6 +200,7 @@ jobs:
contents: read
strategy:
fail-fast: false
max-parallel: 2
matrix:
include:
- rid: win-x64
Expand All @@ -216,15 +226,21 @@ jobs:
msi: false
steps:
- uses: actions/checkout@v6
- name: Free disk space (Linux)
if: runner.os == 'Linux'
run: |
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL \
/usr/local/share/boost /usr/share/swift /usr/local/.ghcup || true
sudo docker system prune -af || true
df -h
- uses: actions/setup-dotnet@v5
with:
dotnet-version: '10.0.x'
- uses: actions/cache@v4
with:
path: tools/packaging/.cache/http3-natives
key: http3-natives-${{ hashFiles('tools/packaging/http3-native.lock.json') }}-${{ matrix.rid }}
restore-keys: |
http3-natives-${{ hashFiles('tools/packaging/http3-native.lock.json') }}-
# Exact RID only — avoid cross-RID cache pollution (see build-cli).
- name: Publish Inspector
shell: pwsh
run: |
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ A lightweight, high-performance HTTP(S) proxy — reverse / edge CLI, desktop In
| **Titanium.Cli** (`titanium` / `twp`) | Standalone reverse / edge proxy for any stack: `run`, `test`, `version`, `update` | [Download (Windows, Linux & Mac)](https://titaniumproxy.com/download#cli) |
| **Titanium Inspector** | Desktop MITM debugger (session grid, inspectors, AutoResponder, breakpoints, HAR) | [Download (Windows, Linux & Mac)](https://titaniumproxy.com/download#inspector) |
| **Titanium.Plus** | Optional advanced features: control plane, ops, observability, and dashboard | After installing CLI, run `titanium update --plus` |
| **Titanium.Web.Proxy** | Core library. Embed a MITM and/or reverse proxy in a .NET app | [NuGet](https://www.nuget.org/packages/Titanium.Web.Proxy/7.0.1-beta) (`dotnet add package Titanium.Web.Proxy --prerelease`) |
| **Titanium.Web.Proxy** | Core library. Embed a MITM and/or reverse proxy in a .NET app | [NuGet](https://www.nuget.org/packages/Titanium.Web.Proxy/7.0.2-beta) (`dotnet add package Titanium.Web.Proxy --prerelease`) |

CLI and Plus target reverse-proxy / edge workloads (routing, load balancing, health, discovery) on Windows, Linux, and macOS. Inspector is the MITM debugging product. The Core library is the embed path for .NET. Requires .NET 10 or later.

Expand All @@ -67,7 +67,7 @@ On Windows, **winget is stable-only**:
winget install justcoding121.TitaniumCli
```

For **beta**, download self-contained zips from [Download](https://titaniumproxy.com/download) / [GitHub Releases](https://github.com/justcoding121/titanium-web-proxy/releases) when a product release includes `Titanium.Cli-*.zip` assets (e.g. `v7.0.1-beta`). Extract and run:
For **beta**, download self-contained zips from [Download](https://titaniumproxy.com/download) / [GitHub Releases](https://github.com/justcoding121/titanium-web-proxy/releases) when a product release includes `Titanium.Cli-*.zip` assets (e.g. `v7.0.2-beta`). Extract and run:

```shell
titanium run -c twp.yaml
Expand All @@ -82,7 +82,7 @@ Optional Plus: run `titanium update --plus` (add `--channel beta` for prerelease

### Titanium Inspector

Prefer [Download](https://titaniumproxy.com/download). On Windows, winget id `justcoding121.TitaniumInspector` is **stable-only**; MSI / portable zip for beta come from the product `v*` release (e.g. `v7.0.1-beta`). Start interception from the Capture menu, install the root CA, then toggle system proxy.
Prefer [Download](https://titaniumproxy.com/download). On Windows, winget id `justcoding121.TitaniumInspector` is **stable-only**; MSI / portable zip for beta come from the product `v*` release (e.g. `v7.0.2-beta`). Start interception from the Capture menu, install the root CA, then toggle system proxy.

## Quick start

Expand Down
16 changes: 8 additions & 8 deletions docs/api/Titanium.Web.Proxy.Http.Request.html
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ <h3 id="properties">Properties
<a href="https://github.com/justcoding121/titanium-web-proxy/new/develop/apiSpec/new?filename=Titanium_Web_Proxy_Http_Request_ExpectContinue.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http.Request.ExpectContinue%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Edit this page</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L152">View Source</a>
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L163">View Source</a>
</span>
<a id="Titanium_Web_Proxy_Http_Request_ExpectContinue_" data-uid="Titanium.Web.Proxy.Http.Request.ExpectContinue*"></a>
<h4 id="Titanium_Web_Proxy_Http_Request_ExpectContinue" data-uid="Titanium.Web.Proxy.Http.Request.ExpectContinue">ExpectContinue</h4>
Expand Down Expand Up @@ -199,7 +199,7 @@ <h5 class="propertyValue">Property Value</h5>
<a href="https://github.com/justcoding121/titanium-web-proxy/new/develop/apiSpec/new?filename=Titanium_Web_Proxy_Http_Request_ExpectationFailed.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http.Request.ExpectationFailed%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Edit this page</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L211">View Source</a>
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L222">View Source</a>
</span>
<a id="Titanium_Web_Proxy_Http_Request_ExpectationFailed_" data-uid="Titanium.Web.Proxy.Http.Request.ExpectationFailed*"></a>
<h4 id="Titanium_Web_Proxy_Http_Request_ExpectationFailed" data-uid="Titanium.Web.Proxy.Http.Request.ExpectationFailed">ExpectationFailed</h4>
Expand Down Expand Up @@ -230,7 +230,7 @@ <h5 class="propertyValue">Property Value</h5>
<a href="https://github.com/justcoding121/titanium-web-proxy/new/develop/apiSpec/new?filename=Titanium_Web_Proxy_Http_Request_ExpectationSucceeded.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http.Request.ExpectationSucceeded%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Edit this page</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L206">View Source</a>
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L217">View Source</a>
</span>
<a id="Titanium_Web_Proxy_Http_Request_ExpectationSucceeded_" data-uid="Titanium.Web.Proxy.Http.Request.ExpectationSucceeded*"></a>
<h4 id="Titanium_Web_Proxy_Http_Request_ExpectationSucceeded" data-uid="Titanium.Web.Proxy.Http.Request.ExpectationSucceeded">ExpectationSucceeded</h4>
Expand Down Expand Up @@ -261,7 +261,7 @@ <h5 class="propertyValue">Property Value</h5>
<a href="https://github.com/justcoding121/titanium-web-proxy/new/develop/apiSpec/new?filename=Titanium_Web_Proxy_Http_Request_ExtendedConnectProtocol.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http.Request.ExtendedConnectProtocol%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Edit this page</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L179">View Source</a>
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L190">View Source</a>
</span>
<a id="Titanium_Web_Proxy_Http_Request_ExtendedConnectProtocol_" data-uid="Titanium.Web.Proxy.Http.Request.ExtendedConnectProtocol*"></a>
<h4 id="Titanium_Web_Proxy_Http_Request_ExtendedConnectProtocol" data-uid="Titanium.Web.Proxy.Http.Request.ExtendedConnectProtocol">ExtendedConnectProtocol</h4>
Expand Down Expand Up @@ -328,7 +328,7 @@ <h5 class="overrides">Overrides</h5>
<a href="https://github.com/justcoding121/titanium-web-proxy/new/develop/apiSpec/new?filename=Titanium_Web_Proxy_Http_Request_HeaderText.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http.Request.HeaderText%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Edit this page</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L216">View Source</a>
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L227">View Source</a>
</span>
<a id="Titanium_Web_Proxy_Http_Request_HeaderText_" data-uid="Titanium.Web.Proxy.Http.Request.HeaderText*"></a>
<h4 id="Titanium_Web_Proxy_Http_Request_HeaderText" data-uid="Titanium.Web.Proxy.Http.Request.HeaderText">HeaderText</h4>
Expand Down Expand Up @@ -361,7 +361,7 @@ <h5 class="overrides">Overrides</h5>
<a href="https://github.com/justcoding121/titanium-web-proxy/new/develop/apiSpec/new?filename=Titanium_Web_Proxy_Http_Request_Host.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http.Request.Host%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Edit this page</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L143">View Source</a>
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L154">View Source</a>
</span>
<a id="Titanium_Web_Proxy_Http_Request_Host_" data-uid="Titanium.Web.Proxy.Http.Request.Host*"></a>
<h4 id="Titanium_Web_Proxy_Http_Request_Host" data-uid="Titanium.Web.Proxy.Http.Request.Host">Host</h4>
Expand Down Expand Up @@ -425,7 +425,7 @@ <h5 class="propertyValue">Property Value</h5>
<a href="https://github.com/justcoding121/titanium-web-proxy/new/develop/apiSpec/new?filename=Titanium_Web_Proxy_Http_Request_IsMultipartFormData.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http.Request.IsMultipartFormData%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Edit this page</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L164">View Source</a>
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L175">View Source</a>
</span>
<a id="Titanium_Web_Proxy_Http_Request_IsMultipartFormData_" data-uid="Titanium.Web.Proxy.Http.Request.IsMultipartFormData*"></a>
<h4 id="Titanium_Web_Proxy_Http_Request_IsMultipartFormData" data-uid="Titanium.Web.Proxy.Http.Request.IsMultipartFormData">IsMultipartFormData</h4>
Expand Down Expand Up @@ -549,7 +549,7 @@ <h5 class="propertyValue">Property Value</h5>
<a href="https://github.com/justcoding121/titanium-web-proxy/new/develop/apiSpec/new?filename=Titanium_Web_Proxy_Http_Request_UpgradeToWebSocket.md&amp;value=---%0Auid%3A%20Titanium.Web.Proxy.Http.Request.UpgradeToWebSocket%0Asummary%3A%20&#39;*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax&#39;%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Edit this page</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L186">View Source</a>
<a href="https://github.com/justcoding121/titanium-web-proxy/blob/develop/src/Titanium.Web.Proxy/Http/Request.cs/#L197">View Source</a>
</span>
<a id="Titanium_Web_Proxy_Http_Request_UpgradeToWebSocket_" data-uid="Titanium.Web.Proxy.Http.Request.UpgradeToWebSocket*"></a>
<h4 id="Titanium_Web_Proxy_Http_Request_UpgradeToWebSocket" data-uid="Titanium.Web.Proxy.Http.Request.UpgradeToWebSocket">UpgradeToWebSocket</h4>
Expand Down
Loading
Loading