Commit Graph

24 Commits

Author SHA1 Message Date
tjp 4d861a2c39 dial timeouts for clients, and catch up on test fixes 2024-01-13 11:29:17 -07:00
tjpcc 04449ed66e support an overridden "cmd" for CGIs
continuous-integration/drone/push Build is failing Details
2023-10-10 14:47:54 -06:00
tjpcc 20be557b7b logging.Base()
Allow users to get access to the base logger *before* it is wrapped with the various levels.
This provides a single override point to filter or redirect all logging.
2023-10-09 08:58:31 -06:00
tjpcc 775c0c1040 file serving refactor
continuous-integration/drone/push Build is failing Details
* do away with fs.FS usage in gemini, like the previous refactor in gopher
* remove spartan code in contrib
* standardize fsroot/urlroot string arguments to file serving handlers
2023-09-30 20:08:53 -06:00
tjpcc 38ff3807b3 all the gopher CGI handlers to support gophernicus behaviors
continuous-integration/drone/push Build is failing Details
continuous-integration/drone/tag Build is failing Details
continuous-integration/drone Build is failing Details
2023-09-07 12:36:17 -06:00
tjpcc c754a44064 InsecureSkipVerify and other improvements for the gemini fetch example code
continuous-integration/drone/push Build is failing Details
2023-05-09 10:19:51 -06:00
tjpcc 91218665d2 use sha256 for client cert fingerprints, and log them when available
continuous-integration/drone/push Build is passing Details
2023-05-03 19:50:56 -06:00
tjpcc 33d0199bbe fix tests and examples to match the router.Handler() change 2023-05-02 08:56:10 -06:00
tjpcc fbdcdb4698 exercise router code in an example 2023-05-01 21:43:44 -06:00
tjpcc 9a2da81b11 name change gus -> sliderule 2023-05-01 07:56:25 -06:00
tjpcc 46ad450327 Switch Handler to an interface.
HandlerFunc is much better as a function returning a Handler, rather
than a newtype for the function type itself. This way there is no
confusion creating a type-inferenced variable with HandlerFunc(func(...
and then using a HandlerFunc where a Handler is expected. Much better to
only have one public type.
2023-02-15 16:44:29 -07:00
tjpcc 4f6f3dcd4b finger protocol 2023-01-30 11:36:48 -07:00
tjpcc 66a1b1f39a gopher support.
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-28 15:01:41 -07:00
tjpcc 0480e066a3 logging library up to top level 2023-01-23 22:15:16 -07:00
tjpcc 6586db782e Updates
* update README
* move "gemtext" to within "gemini"
2023-01-17 16:41:04 -07:00
tjpcc 2ef530daa4 pull request, response, handlers out of the gemini package 2023-01-17 15:59:29 -07:00
tjpcc 4c2630752f Completed markdown and HTML conversion. 2023-01-15 19:59:58 -07:00
tjpcc cec3718bdd markdown converter 2023-01-14 19:59:12 -07:00
tjpcc e183f9cd23 lots more documentation comments 2023-01-11 10:36:56 -07:00
tjpcc 197d8e4cb0 Improvements to Server lifecycle.
- 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-11 10:33:44 -07:00
tjpcc cc0c7e6eb5 Simple client functionality and an example. 2023-01-11 10:12:32 -07:00
tjpcc 474a28663f CGI improvements 2023-01-10 17:22:13 -07:00
tjpcc 96f3a7607f Add a CGI contrib 2023-01-10 13:46:35 -07:00
tjpcc ff05d62013 Initial commit.
some basics:
 - minimal README
 - some TODOs
 - server and request handler framework
 - contribs: file serving, request logging
 - server examples
 - CI setup
2023-01-09 16:40:24 -07:00