8c51880748
feat(smalltrip,problems): Problem interface
2025-07-29 19:18:27 -03:00
d4836e877a
fix(smalltrip,problems): make problems be structs with Problem embedded
2025-07-29 19:15:10 -03:00
830bafcbbe
refactor(smalltrip,problems): define RetryAfter header parsing into separated type
2025-07-29 19:15:10 -03:00
b4a9c349bb
feat(smallstrip,problems): 400s codes constructors and problems
2025-07-29 19:14:36 -03:00
d9c1bf0df5
refactor(smallstrip,problems): make 500 error types distinct and not aliases
2025-07-29 19:14:36 -03:00
c847f2b421
feat(smalltrip,problems): 500s code constructors and problems
2025-07-04 19:15:27 -03:00
8bab404d03
feat(smalltrip,problems): http handler for problems (wip)
2025-07-04 19:15:26 -03:00
094eab5333
feat(smalltrip,problems): new problem package to handle 400 and 500 error codes
...
This is planned to replace the exceptions package, having a nicer and
more extendable API, based on the RFC 9457 (HTTP problems)
2025-07-04 19:15:24 -03:00
5f6093d2ce
feat(smalltrip): use multiplexer interface instead of http.ServeMux
...
This will be useful for the future to provide something akin to
plugins/addons to the router.
2025-06-27 22:02:39 -03:00
93f9d7e2c3
feat(smallstrip): WithMiddleware option
2025-06-27 22:01:13 -03:00
5466adaa42
chore(smalltrip): delete routes file
2025-06-27 21:59:55 -03:00
a1aeadf017
refactor(smalltrip): simplify router implementation
...
This removes all the parse route and route group code, since they
haven't a lot of use for it. Router is now just a small wrapper over Mux
to add middleware support.
2025-06-27 21:59:16 -03:00
523ec24e76
fix(smalltrip,exception): make MethodNotAllowed error more clear about allowed methods
2025-03-11 19:28:25 -03:00
28da082450
feat(smallstrip,middleware): rename Dev middleware to DisableCache
2025-03-06 18:44:33 -03:00
f580091c05
refactor(smalltrip,exception): rename exceptions package to exception, singular form
2025-03-05 13:51:22 -03:00
5a11c2a872
fix(smallstrip,exceptions): missing return causing nil de-reference
2025-03-05 12:21:50 -03:00
e6007de362
fix(smallstrip,exceptions): superfulous call when responding exception after first Write
2025-03-05 11:51:14 -03:00
e782fdce33
feat(smallstrip,exceptions): improve default exception template
2025-03-05 10:41:58 -03:00
ccb6231f0d
revert(smalltrip,middleware): remove net.ParseIP to validate ip address
2025-03-05 09:57:04 -03:00
6944d2cccd
fix(smalltrip): middlewares are not wrapped with previous ones
2025-03-05 09:45:56 -03:00
7ee8e222fd
revert(smalltrip,middleware): remove premature optimization from logger
2025-03-05 09:45:31 -03:00
ce3a9da0f1
fix(smalltrip,middleware): cache directives using floats instead of int
2025-03-05 09:12:13 -03:00
5b99723788
chore(smalltrip): format the copyright author line
2025-02-27 16:21:57 -03:00
c1798847fd
chore(smalltrip): add LICENSE file and headers
2025-02-27 16:21:01 -03:00
239f5d1f4e
fix(smalltrip,middleware): import statement still poiting to groute
2025-02-27 16:20:35 -03:00
4ca5db44bd
refactor(smalltrip): remove unecessary length argument in make
2025-02-26 19:30:25 -03:00
753a4bb19e
refactor(smalltrip): rename handleRouter to handleGroup
2025-02-26 19:30:06 -03:00
ee3e6c9a90
fix(smallstrip,middleware): rename bool variable to not conflict with built-in id
2025-02-26 18:38:49 -03:00
a99079d3a3
feat(smalltrip,middleware): check interface of directives struct
2025-02-26 18:37:34 -03:00
51517fdfa8
refactor(smalltrip,exceptions): use std log levels as Severity Levels
2025-02-26 18:12:22 -03:00
6a07ce9470
feat(smalltrip,exceptions): make panic errors be of severity FATAL
2025-02-26 17:51:21 -03:00
ba74401be8
feat(smalltrip,exceptions): PanicMiddleware to recover from unexcepted panics
2025-02-26 17:48:44 -03:00
2dfa195cee
docs(smalltrip,exceptions): add MDN documentation for each status code on 500s contructors
2025-02-26 16:47:03 -03:00
201f274f01
feat(smalltrip,exceptions): retryAfter in 503 Service Unavailable exceptionn
2025-02-26 16:39:35 -03:00
21dbf4f772
docs(smalltrip,exceptions): document all 500s status code constructors
2025-02-26 16:03:15 -03:00
f165e22900
feat(smalltrip,exceptions): 500 exceptions constructors
2025-02-26 15:58:23 -03:00
4e24437a96
docs(smalltrip,exceptions): add MDN documentation for each status code on 400s contructors
2025-02-26 10:54:38 -03:00
466406d7ef
docs(smalltrip,exceptions): document all 400s status code constructors
2025-02-26 10:54:18 -03:00
fb976f6e0d
feat(smalltrip,exceptions): constructor for all 400 status codes
2025-02-26 10:51:10 -03:00
6019cdeb0e
feat(smalltrip,exceptions): exception constructor
2025-02-26 10:47:19 -03:00
6c4b90fe44
feat(smalltrip,exceptions): headers field for additional headers to be sent with exception
2025-02-25 16:00:21 -03:00
4741cf988a
feat(smalltrip,exceptions): Data field for additional contextual data
2025-02-25 15:59:48 -03:00
2d81fffdba
feat(smalltrip,exceptions): Severity type implementation
2025-02-25 14:31:23 -03:00
852afa65de
feat(smalltrip,exceptions): exception middleware to provide handlers depending of Accept header
2025-02-25 14:31:02 -03:00
6bcd0e214a
feat(smalltrip,exceptions): use a JSON handler if none is provided via the context
2025-02-25 14:30:14 -03:00
ad1769e044
feat(smalltrip): new exceptions package for structurerd error codes
2025-02-25 14:28:07 -03:00
f508d12ba8
feat(smalltrip): TODO PersistentCache middlware
2025-02-24 08:05:37 -03:00
21495998cf
feat(smalltrip): TODO SmartCache middlware
2025-02-24 08:04:49 -03:00
049b70f23d
feat(smalltrip): cache middleware
2025-02-24 08:04:28 -03:00
ac50e1e2d6
feat(smalltrip): logger middleware
2025-02-24 08:03:53 -03:00