Skip to content

v1.0.0

Choose a tag to compare

@juandi247 juandi247 released this 10 Jul 03:47
· 6 commits to main since this release

Changelog

  • 67052a4 Merge branch 'main' into tigerstyle-rewrite
  • 8fa2c7c fix: goreleaser errors because of the indentation
  • 3785fdf chore: allow gen files
  • 188ab6d god mod tidy to eliminate external dependencies
  • ae48d7c feat: testing for the subdomain parsing but now for the tunnel
  • 522e7b0 feat: testing for the subdomain validation on the proxy
  • 30cc64a hide gen file tunnel
  • a6245e3 chore: https port for proxy
  • 5bf1b96 feat: beter prints on the tunnel and code cleanup
  • d452500 feat: config prod http server with tls
  • aa0cc54 feat: deserialization and logic for the worker on the wp
  • db002e5 feat: final state handling and await for errors or cancelation, closing the conn to trigger an automatic cancellation for the reactor or dependent goroutoines
  • e082cf7 feat: set context done channel for the ping,
  • 63edb59 fix: timeout for http request for the proxy
  • b98427b feat: show html templates in error cases
  • aaab817 feat: cleanup and handler definition correctly
  • 9952dc8 fix: update the streamid correctly and return payload, instead of requestbody length
  • 1a258e7 feat: initilaize streamMap to avoid nilMaps, and make the mutex as a pointer
  • a451474 chore: delete streamId from protobuffers
  • a35d1b7 delete gen for the gitignore
  • 3f9fd1f feat: main file starting the fsm, and with an err chan (todo: manage this more elegantly)
  • 490760d feat: fsm definition and states definition
  • 1b51f31 feat: ping to localhost function (todo add cancelation context and error chan)
  • 116096d feat: add auth request for tunnel and reading reactor loop for the handleActivetunnel state
  • ae65fef fix: flags file for the fsm and delete current fsm file
  • 16d3cbf feat: some addings to the tunnel before changing to the fsm aproach
  • 0893eb8 chore: delete old proto file
  • e8eb92c chore: copy constants for the tunnel
  • 3ef0cd7 chore: copy framing package for the tunnel
  • 15a949a feat: flag validation on the tunnel
  • db0df4e fix: delete deadline for now, because we need to use a unique deadline for acknowledge reading and not for all the context reading
  • d38f1e6 feat: conn.Deadline for reading frames from the conn interface (amazing interface wow)
  • 0ffea29 fix: handle connection losses from the tunnel better without repeating conn.close
  • 535296c feat: unify locker for the tc and atomic method for the nextStreamId on muxing
  • a6d30dd feat: payload desserialization method via protobfufers
  • 420d0d8 refactor: dependency injection for the tunnelManager now via interface for mocking after
  • cc8f081 feat: sync pool for the reactor pattern sending the respones to the users request channel
  • 0eb98dd feat: get tunnel for the httprequest
  • 36e181e feat: serialization of the http request via protobuffers
  • 932d791 fix: header values on the response
  • 886122f go fmt
  • 93eea65 feat: headers correct parsing for seralization, seralization of the payload and encoding for the custom protocol
  • 5490a7f feat: closue func for wrapping the http.HandlerFunc to use the tunnelManager
  • eec24fb fix: change body as bytes instad of strings on protbuffer file and header map
  • efe5aef go fmt
  • 77b17d7 refactor: pass the port as parameter for httpserver factory
  • ca47ae9 feat: parse subdomains for the requests
  • 9359283 fix: change original mutex on tunnel manager for a RW mutex
  • f9c9ed2 feat: setDeadline for wrong tcp connections to prevent Slowloris attacks
  • 98828a0 feat: http server with a wildcard on the patterns and main initialization
  • f635f94 go fmt
  • 6cffe9c chore: cleanup the tunnel for the skipper tiger rewrite
  • 0ab60d7 chore: future quic implmenetation
  • 231995a Merge pull request #14 from juandi247/front-Style-refactor
  • 32d20e3 feat: separate css on a .css files
  • c4bc88e feat: better hanlding for the SkipperMagic and avoid returning heap allocated TcpFrames Strucs when decoding and reading, only returning the key values for the proxy
  • 92287a5 refactor: new tunnelConnection and TunnelManager for a btter tcp connection handling an
  • 517c339 feat: tcp server logic for starting, accept loop, readingloop
  • 74a8448 fix: encoding and decoding bug leaving the buffer incomplete or wrong
  • 443c69d feat: framing constants
  • c8102a8 feat: tunnel handling and Control frame sending
  • babb040 feat: "enum" for constant FramingType
  • dcdbb5f feat: create framing protocol and protobuffer file for the reqeust/response
  • 0d8c065 delete: all previous skipper files
  • c8f5fce Update Readme.md
  • 9d9ebc3 Merge pull request #13 from juandi247/dev
  • 04547f6 fix: tags for chocolatey
  • 804208d feat: simple ui change for the page
  • 5408390 fix: another goreleaser fix for the choco release
  • 0b784b2 fix: indentation wrong on the brew release
  • 0e8b4b7 Merge pull request #12 from juandi247/dev
  • 04c92e4 feat. chocolatey release for Skipper
  • 5d843f9 chore: comment code for cleanup
  • ebeaf77 feat: flag for prod environment on goreleaser
  • 2f08fb2 feat: environment managing for the Tunnel
  • 9d69b31 chore: worker format and change of module name import
  • 5389b53 feat: enviroment managing for the proxy using flags on compilation
  • 7a0d83c feat: responsivness for the skipper page that looked horrible on mobile
  • 4464adb fix: cache and ETAG not showing the cached pages
  • 48cdc19 fix: fixed the path error, when requesting a larget path with double /path/anotherpath (OMG), and cleanup for old structs that are now used as protobuffers
  • 4b8066b Update Readme.md
  • 549ad20 Update Readme.md
  • 378a56d Merge pull request #11 from juandi247/dev
  • 422f6eb chore: logs cleanup and formating
  • e3fca2c feat: protobuffers serialization for communication with tunnel and inverse
  • d43a9cd Merge pull request #10 from juandi247/dev
  • 451aff1 fix: less worker pool for innecesary overhead
  • f180b2a feat: htmls for the proxy and handling them on golang code
  • 7f90b25 define the prod url for skipper.lat
  • 8cd15d1 Merge pull request #9 from juandi247/dev
  • da59277 feat: goreleaser for the tunnel
  • a0af83b Merge pull request #8 from juandi247/dev
  • 84f5b90 fix: cleanup prints for error logging to the user
  • d84c0a7 feat: worker pool for the proxy to handle the receive responses from the tcp connectoin with the tunnel
  • 0a54221 feat: gracefull shutdown improved for tunnel, because the handlereceive from tcp was not receiving the context.Done(), because of the blocking method io.Readfull
  • af2f62d feat: request connection to running localhost before handling the rest of the tunnel programm
  • 5756a34 fix: move select on the top of receive function preventing the block of the goroutine
  • a50e582 Merge pull request #7 from juandi247/dev
  • 56a2e06 refactor: tunnel refactor for better goroutine handling and gracefull (not finished btw)
  • c6d398b Readme update
  • 880d32e feat: added 4 bytes again frame, but for communication from proxy to the tunnel
  • 7441e2b Merge pull request #6 from juandi247/dev
  • 306cc79 feat: added 4bytes space on the tcp packet sent from tunnel to proxy for handling the length of the response from localhost
  • 09b5551 fix: prod fixes for the VM proxy
  • 5850392 Merge pull request #5 from juandi247/dev
  • f07b2ef refactor(proxy): amazing refactor for handling the http requests and transport layer to the skipperTunnel on a single goroutine, also validate the subdomains correctly
  • 3d31033 new dependency on proxy
  • be21365 Update Readme
  • 11ade15 Update Readme
  • 27b46a7 Update Readme
  • 04f4040 Merge pull request #4 from juandi247/dev
  • c4bb8df chore: format cleanup for the proxy
  • d754d51 add cobra cli functionality and better hanlding for requests on the tunnel side
  • a56414f add to gitignore the exe files from go build
  • ab46c3b feat: keep awake goroutine for the request receive
  • cfc0094 feat: https handling for VM
  • 77ddac0 deploy: vm for the proxy
  • 965ffb1 feat (Proxy) : shared request channel to transmit request from http server to the tcp server and then the tcp client
  • 4ce56cd Merge pull request #3 from juandi247/dev
  • 68a3a5d refactor and cobra dependency install
  • 6df66ef code refactor
  • ed5f059 Merge pull request #2 from juandi247/dev
  • a9c1e3a feat: TCP tunne on local app to connect the tcp server on the proxy
  • ebea84c Refactor: New mono repo style for both apps
  • 9dbff67 Merge pull request #1 from juandi247/dev
  • 00bb4f1 testing: new http server for testing without any reverse proxy logic
  • 96fbc50 first commit