Skip to content

Commit 89bb464

Browse files
wshaddixWes Shaddix
andauthored
Update dot net version (#10)
* updated to .net 9 and updated NuGet packages * adding bruno api call collection for testing * chore(update to .net 9) - updating to .Net 9 and various code fixes * adding github action to build and publish docker image --------- Co-authored-by: Wes Shaddix <[email protected]>
1 parent 107786b commit 89bb464

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+1237
-1212
lines changed
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: ci
2+
3+
on:
4+
push:
5+
tags:
6+
- '*'
7+
8+
jobs:
9+
docker:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Set up Docker Buildx
13+
- uses: docker/setup-buildx-action@v3
14+
15+
- name: Login to Docker Hub
16+
- uses: docker/login-action@v3
17+
- with:
18+
username: ${{ secrets.DOCKERHUB_USERNAME }}
19+
password: ${{ secrets.DOCKERHUB_TOKEN }}
20+
21+
- name: Build and push
22+
- uses: docker/build-push-action@v6
23+
- with:
24+
push: true
25+
tags: wshaddix/http-nats-proxy:${{github.ref_name}}

CHANGELOG.md

Lines changed: 31 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,15 @@
44

55
* now honoring the `NatsMessage.responseStatusCode` if it has been set by the microservice handling the request.
66

7-
* if the `NatsMessage.errorMessage` property is set then the http-nats-proxy will return a status code 500 with a formatted error message to the api client.
7+
* if the `NatsMessage.errorMessage` property is set then the http-nats-proxy will return a status code 500 with a
8+
formatted error message to the api client.
89

910
* now returning the `NatsMessage.response` as the http response.
1011

1112
## 1.0.0
1213

13-
* added pipeline feature and refactored the solution to have working examples of logging, metrics, authentiation and trace header injection.
14+
* added pipeline feature and refactored the solution to have working examples of logging, metrics, authentiation and
15+
trace header injection.
1416

1517
## 1.0.1
1618

@@ -24,11 +26,14 @@
2426

2527
## 1.0.3
2628

27-
* changing the format of the message that the proxy sends to microservices and the pipeline steps to make them more intuitive. Specifically changed `Cookies, ExtendedProperties, QueryParams, RequestHeaders` and `ResponseHeaders` from name/value collections to `Dictionary<string, object>` so they serialize into a more intuitive json string.
29+
* changing the format of the message that the proxy sends to microservices and the pipeline steps to make them more
30+
intuitive. Specifically changed `Cookies, ExtendedProperties, QueryParams, RequestHeaders` and `ResponseHeaders` from
31+
name/value collections to `Dictionary<string, object>` so they serialize into a more intuitive json string.
2832

2933
## 1.0.4
3034

31-
* changed the call timings from a tuple to a custom class because tuples do not serialize to json with readable property names (see https://github.com/JamesNK/Newtonsoft.Json/issues/1230)
35+
* changed the call timings from a tuple to a custom class because tuples do not serialize to json with readable property
36+
names (see https://github.com/JamesNK/Newtonsoft.Json/issues/1230)
3237
* renamed property `Body` to `RequestBody` on the `NatsMessage`
3338
* renamed property `Response` to `ResponseBody` on the `NatsMessage`
3439
* introduced the concept of Observers to the request pipeline (see README for details)
@@ -39,30 +44,46 @@
3944

4045
## 1.0.6
4146

42-
* bugfix - when CORS was enabled in release 1.0.5 I didn't fully enable it b/c i didn't include the .AllowCredentials() method on the CORS policy builder
47+
* bugfix - when CORS was enabled in release 1.0.5 I didn't fully enable it b/c i didn't include the .AllowCredentials()
48+
method on the CORS policy builder
4349

4450
## 1.1.0
4551

46-
* extracted some types and helper classes into Proxy.Shared and made into a nuget package for other c# based microservices to leverage
52+
* extracted some types and helper classes into Proxy.Shared and made into a nuget package for other c# based
53+
microservices to leverage
4754
* refactored the example handlers (handlers and observers) to use the Proxy.Shared library
4855
* updated the docker image to use dotnet core 2.1 alpine
4956
* updated logging to use serilog instead of console.writeline
5057
* updated referenced nuget packages to their latest versions
5158
* refactored the request handler to be less bloated and more focused
5259
* updated nats to version 1.2.0
5360
* now compiling against .net core 2.1.300
54-
* added a .TryGetParam() method to the MicroserviceMessage to make it easier to get at headers, cookies and query string params
61+
* added a .TryGetParam() method to the MicroserviceMessage to make it easier to get at headers, cookies and query string
62+
params
5563

5664
## 1.1.1
5765

58-
* fixing issue where response type was not getting set
66+
* fixing issue where response type was not getting set
5967

6068
## 1.1.2
6169

6270
* code cleanup
6371
* updated .net core version to 2.2.301
64-
* updated docker images to mcr.microsoft.com/dotnet/core/sdk:2.2.301-alpine3.9 and mcr.microsoft.com/dotnet/core/runtime:2.2.6-alpine3.9
72+
* updated docker images to mcr.microsoft.com/dotnet/core/sdk:2.2.301-alpine3.9 and
73+
mcr.microsoft.com/dotnet/core/runtime:2.2.6-alpine3.9
6574
* updated NATS server version to 1.4.1
6675
* updated projects target framework to .Net Core 2.2
6776
* merged in PR to fix parsing of extended properties during pipeline execution (thanks to https://github.com/timsmid)
68-
* updated all nuget dependencies
77+
* updated all nuget dependencies
78+
79+
## 1.2.0
80+
81+
* Updated to .Net 9
82+
* Migrated to centralized package management
83+
* Updated log messages to follow best practices (no trailing period)
84+
* Fixed typos in code comments
85+
* Added additional error handling and null checks
86+
* Updated any outdated or vulnerable NuGet packages
87+
* Updated Dockerfile to latest versions and addressed scout vulnerabilities
88+
* Added new env vars to enhance logging (see README)
89+
* Added Bruno (https://www.usebruno.com/) collection of api tests

0 commit comments

Comments
 (0)