1
0
Fork 0
mirror of https://github.com/zigzap/zap.git synced 2025-10-20 15:14:08 +00:00
Commit graph

742 commits

Author SHA1 Message Date
Tesseract22
c0cc025eda Provide defaults to unprovided restful method handler
Make `get`, `post`, ... methods optional. Check whether these method
exist at comptime. When no corresponding method is provided,
the handler simply return immediately.

Since it uses comptime, hopefully it should not add any checks at
runtime.
2025-07-13 15:02:35 +08:00
Rene Schallner
ec7cac6f6a
Merge pull request #164 from fwfurtado/hotfix/add-missing-head-handler-to-endpoints
fix: add missing head handler for EndpointType
2025-04-22 21:32:52 +02:00
Rene Schallner
f7cf3dd39f
Merge pull request #161 from unorsk/fix-readme-example
Fix hello world example in README.md
2025-04-22 21:25:58 +02:00
Mimi
b134f969f3 fix: add missing head handler for EndpointType 2025-04-21 18:36:46 -03:00
andrii
47ecb13d7b
Update README.md 2025-04-03 14:10:17 +02:00
renerocksai
8078b96d3f add on_uncaught_error behavior to zap.App, add on_error callbacks
zap.Endpont.Listener and zap.App now support on_error callbacks:

zap.Endpont.Listener.Settings contains an `on_error` optional callback
field.

zap.App supports those two callbacks:


/// ```zig
/// const MyContext = struct {
///     // You may (optionally) define the following global handlers:
///     pub fn unhandledRequest(_: *MyContext, _: Allocator, _: Request) anyerror!void {}
///     pub fn unhandledError(_: *MyContext, _: Request, _: anyerror) void {}
/// };
/// ```

The `endpoint` example has been updated to showcase `on_error`, and the
new example `app_errors` showcases `Context.unhandledError`.
2025-04-02 09:53:46 +02:00
renerocksai
4591f4048b change GH release workflow to produce non-prerelease releases 2025-04-01 16:46:23 +02:00
GitHub Action
295c525ec2 Update README 2025-04-01 14:41:53 +00:00
renerocksai
8d187310c7 harmonize callback function error handling, zap logging; doc updates 2025-04-01 16:30:24 +02:00
renerocksai
e93e45de42
fix spelling in README's shoutout to http.zig 2025-03-30 21:35:15 +02:00
renerocksai
24dfcbaeaa
update README's zig fetch because announceybot was overwhelmed
with the superlage release notes
2025-03-30 21:20:58 +02:00
renerocksai
337276fa52
update basic app example with stop endpoint 2025-03-30 21:16:51 +02:00
renerocksai
a01c6146ec
Minor README & comment cosmetics 2025-03-30 20:32:33 +02:00
renerocksai
44ac2f2c3a
fix typo in README. 2025-03-30 20:11:24 +02:00
renerocksai
3a2246ba50
cleanup unused params where applicable (ie non-instructive) 2025-03-30 19:58:22 +02:00
renerocksai
4c59132a08
added header to example main source files showing how to build & run 2025-03-30 19:40:08 +02:00
renerocksai
cc6d55fbf7
Improved & generalized checkEndpoint functions
E.g. return type's error set does not need to be `anyerror` anymore.
2025-03-30 19:37:40 +02:00
Rene Schallner
793423b7c2
Merge pull request #160 from zigzap/XXX
Breaking Niceties 😁 

- [x] Simplify zap.Endpoint
- [x] add error union to request fn return type
    - [x] add zap.Endpoint.ErrorStrategy 
- [x] maybe add `zap.App` 
    - [x] that's a bit like `zap.Midlleware` in the sense of supporting an arbitrary (app) context, 
    - [x] and provides an/a (per-thread) arena allocator per request for convenience 
    - [x] context-aware Endpoints
    - [x] context-aware Authenticating Endpoints
2025-03-30 15:09:03 +02:00
renerocksai
cce02dd9f3
fix README, gh workflow desc 2025-03-30 15:04:41 +02:00
renerocksai
43c411dcd7
fix router.zig type checking, remove wrk examples from build.zig 2025-03-30 15:03:35 +02:00
Rene Schallner
75c0cfdf02
Merge branch 'master' into XXX 2025-03-30 14:49:58 +02:00
renerocksai
307cc2f13e
remove legacy, update README 2025-03-30 14:46:08 +02:00
renerocksai
4e92457e8e
Merge branch 'zig-master' into XXX 2025-03-30 13:26:38 +02:00
renerocksai
b8ca82f0fd zap.App.Create(Context).Endpoint.Authenticating -> zap.App is READY. 2025-03-30 13:17:32 +02:00
renerocksai
b05004291e refactored endpoint Binder/Bind/Bound/Interface ... namings 2025-03-30 12:21:08 +02:00
renerocksai
458d6ee071 First zap.App test SUCCESS!!! 2025-03-30 11:28:36 +02:00
renerocksai
51d17a1868 restore lost changes 2025-03-29 11:10:45 +01:00
renerocksai
8654ad8310 Improve code comment in router.zig 2025-03-29 11:10:42 +01:00
renerocksai
8ecceba81e Improve code comment in router.zig 2025-03-29 11:10:18 +01:00
Rene Schallner
4d8ba50b17
Merge pull request #125 from cosmicboots/handle_func_introspection
Add type checking to `simple_router`'s `handle_func`
2025-03-29 09:41:56 +01:00
Rene Schallner
827e3a656a
Merge pull request #154 from vctrmn/feature/fix-facilio-warning
Fix deprecated warning in facil.io
2025-03-29 08:38:20 +01:00
renerocksai
efd26fd3bb app cosmetics 2025-03-27 01:13:33 +01:00
renerocksai
d4a2079542 BoundFunction POLYMORPHIC!!! 2025-03-27 01:13:30 +01:00
renerocksai
6dd3c93a0f BoundFunction YEAH 2025-03-23 23:28:28 +01:00
Rene Schallner
3353b6a525 WIP: progress on Bound function 2025-03-23 23:02:27 +01:00
Rene Schallner
9d3434c21c WIP side-experiment WIP BoundFunction 2025-03-22 20:27:42 +01:00
Rene Schallner
7da0a6fe4e continue working on zap.App 2025-03-22 19:02:30 +01:00
Rene Schallner
029c8ff069 rename types for endpoint wrapping 2025-03-21 20:08:36 +01:00
Rene Schallner
f4e42f2557 add zap.Request.headersToOwnedList() 2025-03-21 19:31:11 +01:00
Rene Schallner
dcd07b7025 remove debug print from test 2025-03-21 19:30:18 +01:00
Rene Schallner
3aaa7fcc24 removed Self and @This() as much as possible 2025-03-21 18:57:33 +01:00
Rene Schallner
9eb254d5f8 get rid of zap.util.FreeOrNot 2025-03-21 18:21:27 +01:00
Rene Schallner
ad2b2f2eb0 added skeleton for App.zig 2025-03-21 11:33:44 +01:00
Rene Schallner
7f61b821d3 updated .gitignore 2025-03-21 11:32:46 +01:00
renerocksai
24aacac58d
fix measure.sh for macos 2025-03-16 20:34:33 +01:00
renerocksai
fcce4517de
introduced error union to request fn return type 2025-03-16 20:16:14 +01:00
renerocksai
7503f090ee
doc update 2025-03-16 16:42:08 +01:00
renerocksai
f77f405320
doc update 2025-03-16 16:33:55 +01:00
renerocksai
a63e47ea3d
print username, pass in userpass_session example 2025-03-16 16:18:03 +01:00
renerocksai
ab42f971a0
remove usingnamespace 2025-03-16 16:17:42 +01:00