summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-01-28fix tests for #15 changetjpcc
2023-01-28middleware to turn away non-gemini requests. fixes #3.tjpcc
2023-01-28permanently redirect from /dir to /dir/ on gemini. fixes #15tjpcc
2023-01-28README updatestjpcc
2023-01-28gopher support.tjpcc
Some of the contrib packages were originally built gemini-specific and had to be refactored into generic core functionality and thin protocol-specific wrappers for each of gemini and gopher.
2023-01-26test coverage and resulting bugfixestjpcc
2023-01-25test coverage for the cgi contribtjpcc
2023-01-24testing and linting and linter fixestjpcc
2023-01-24Add support for titan:// to the gemini servertjpcc
Titan is a gemini add-on protocol so it really didn't make sense to build it out in a separate package. The most significant difference in titan for the purposes of implementation here is that requests can have bodies following the URL line. Since gus.Request is a struct, the only way to smuggle in the new field (a reader for the body) was to stash it in the context.
2023-01-23logging library up to top leveltjpcc
2023-01-20update READMEs for contrib/tlsauthtjpcc
2023-01-20"tlsauth" contrib packagetjpcc
This package adds authentication middlewares via TLS client certificates.
2023-01-19minor marketing updatetjpcc
2023-01-19New sharedhost contrib package.tjpcc
ReplaceTilde simply replaces a leading ~ in the URL. Fixes #9.
2023-01-19package documentation: gemini, gemtext, contribtjpcc
2023-01-18bugfix and some docs cleanuptjpcc
2023-01-17Updatestjpcc
* update README * move "gemtext" to within "gemini"
2023-01-17pull request, response, handlers out of the gemini packagetjpcc
2023-01-15fix gmi->md templates and regenerate the READMEtjpcc
2023-01-15updated gmi2md templatetjpcc
2023-01-15Completed markdown and HTML conversion.tjpcc
2023-01-14markdown convertertjpcc
2023-01-14update README with latest from the gemini sitetjpcc
2023-01-14Completed gemtext package.tjpcc
resolves #2 - fuzz testing - split out line parsing into a separate file - changed line type-specific public []byte fields to string accessor methods - added document parsing test for a stress test doc - added dependency on stretchr/testify
2023-01-13Initial gemtext package.tjpcc
Contains: - gemtext AST (Document and line types) - Parse from an io.Reader - ParseLine a []byte - doc comments on everything - ParseLine tests for every line type Still needs tests for Parse & Document.
2023-01-12TODOs have been converted to gitea issuestjpcc
2023-01-12aspirational!tjpcc
2023-01-12test file renametjpcc
2023-01-12Improve host/port handlingtjpcc
...however unlikely gemini over IPv6 may be (hah!)
2023-01-11more ambitionstjpcc
2023-01-11convert the gemtext home page to markdown as the new READMEtjpcc
2023-01-11there's a router in our futuretjpcc
2023-01-11much more extensive gus/gemini testingtjpcc
2023-01-11WIP improve test coveragetjpcc
There is a test of Response.Read that is failing and I haven't yet figured out why.
2023-01-11lots more documentation commentstjpcc
2023-01-11Improvements to Server lifecycle.tjpcc
- NewServer doesn't allocate any resources besides the server object itself. So eg context.WithCancel is delayed until s.Serve(). - Add a demonstration of graceful shutdown on signals to the cgi example.
2023-01-11Simple client functionality and an example.tjpcc
2023-01-10branding changetjpcc
2023-01-10remove some debugging prints, gofmttjpcc
2023-01-10CGI improvementstjpcc
2023-01-10Add a CGI contribtjpcc
2023-01-09add unlicensetjpcc
2023-01-09Initial commit.tjpcc
some basics: - minimal README - some TODOs - server and request handler framework - contribs: file serving, request logging - server examples - CI setup