Skip to content

Releases: ohkami-rs/ohkami

v0.23.5

01 Jun 15:29
41c8de2
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.23.4...v0.23.5

v0.23.4

30 May 16:40
8b55b33
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.23.3...v0.23.4

v0.23.3

23 May 22:56
35f08b7
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.23.2...v0.23.3

v0.23.2

21 Feb 18:42
ac92d8a
Compare
Choose a tag to compare

What's Changed

  • Dx(worker): copy var binding doc comments to associated consts by @kanarus in #394
  • docs(biultin): add detailed document for builtin formats by @kanarus in #395
  • fix(openapi): wrong operation generation by @kanarus in #396
  • docs: expand docs around Ohkami struct by @kanarus in #397
  • v0.23.2 by @kanarus in #398

Full Changelog: v0.23.1...v0.23.2

v0.23.1

20 Feb 19:56
d38cb90
Compare
Choose a tag to compare

What's Changed

  • worker(bindings): add new(&worker::Env) -> Result<Self> method gen by @kanarus in #377
  • docs: add note for warnings of Queue binding in wrangler dev by @kanarus in #378
  • docs: sync lib.rs's inner doc with README's header & add GitHub repo link by @kanarus in #379
  • fix(builtin fangs): use SendSyncOnNative instead of Send + Sync for rt_worker by @kanarus in #380
  • DX(worker): automatically #[allow(unused)] var binding fields in #[bindings] to allow user to only use associate consts without warnings by @kanarus in #381
  • builtin(JWT): add .get_token_fn(), .openapi_security() getters by @kanarus in #382
  • DX: export SendOnNative, SendSyncOnNative from utils and fang::bound by @kanarus in #383
  • enhance: add with_headers method of typed::status's redirect types by @kanarus in #384
  • enhance: add util::iter_cookies by @kanarus in #385
  • enhance: specialize typed::header::Cookie with ohkami_lib::serde_cookie + Deserialize by @kanarus in #386
  • enhance(util): export percent_* and base64_* encoding utilities by @kanarus in #387
  • fix(openapi): fix logic to getting type identifier in into_handler::with_default_operation_id by @kanarus in #390
  • fix(openapi): fix typed::header::Cookie's openapi_inbound by @kanarus in #392
  • v0.23.1 by @kanarus in #393

Full Changelog: v0.23...v0.23.1

v0.23

14 Feb 17:31
925df35
Compare
Choose a tag to compare

What's Changed

  • openapi(operation): replace override_* to map signature by @kanarus in #358
  • openapi: remove name argument of Parameter::{in_path, maybe_in_path} by @kanarus in #359
  • Check the number of required path params by @kanarus in #360
  • openapi: refer to any::type_name::<F> in IntoHandler and automatically set default operationId by @kanarus in #362
  • openapi: Fix #[derive(Schema)] bugs by @kanarus in #363
  • docs: add "Database connection management with Context" section to README by @kanarus in #365
  • openapi(#[derive(Schema)]): Support intercepting from, into, try_into serde helper attributes by @kanarus in #366
  • openapi: Support #[openapi(schema_with = "schema_fn")] field/variant helper attribute by @kanarus in #367
  • rename: req.{env(), context(), lambda()} -> req.context.{env(), worker(), lambda()} by @kanarus in #368
  • builtin: security headers by @kanarus in #369
  • chore(CI): split CI to some jobs in Actions by @kanarus in #370
  • DX(fangs): alter FangProc::bite FangAction::{fore, back} interface to enable rust-analyzer's async fn ... completion by @kanarus in #371
  • docs(README): fix Quick Start's ohkami version to 0.23 by @kanarus in #372
  • docs(README): mention highly integrated OpenAPI document generation by @kanarus in #373
  • docs(README): temporarily remove Web Frameworks Benchmark link by @kanarus in #374
  • v0.23 by @kanarus in #375

Full Changelog: v0.22...v0.23

v0.22

08 Feb 05:12
6e243ac
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.21...v0.22

v0.21

25 Jan 22:07
67554a3
Compare
Choose a tag to compare

What's Changed

  • feat: graceful shutdown on all native runtime by @kanarus in #261
  • feat: handle IP address by default on all native runtimes by @kanarus in #262
  • refactor: remove Send Sync bound of fang system on rt_worker by @kanarus in #263
  • refactor: Memory: make .0 public / place in fang & also export from prelude by @kanarus in #265
  • chore: update README by @kanarus in #266
  • rename utils to util by @kanarus in #269
  • chore(deps): worker 0.3 → 0.4 by @kanarus in #270
  • Fix version in README.md by @JustLinuxUser in #271
  • chore CI: refactor Taskfile & use dtolnay/rust-toolchain instead of actions-rs by @kanarus in #273
  • refactor(ws): extract WebSocket implementation to a crate by @kanarus in #274
  • feat: ws on rt_worker by @kanarus in #275
  • fix: ws on rt_worker: wrap ws in Rc instead of clone ws itself by @kanarus in #276
  • perf(ws on rt_worker): SessionMap: use swap_remove & omit redundant None check by @kanarus in #278
  • enhance: headers set optional value by @kanarus in #279
  • perf: custom headers: use Vec<(K, V)> instead of FxHashMap<K, V> by @kanarus in #280
  • rename: set .custom() -> .__() / get .custom() -> .get() by @kanarus in #281
  • README: mention WebSocket on Durable Object on rt_worker by @kanarus in #282
  • chore(CI): add v* to on.push.branches by @kanarus in #283
  • chore: fix warnings by @kanarus in #284
  • refactor: router by @kanarus in #287
  • refactor: runtime abstraction by @kanarus in #288
  • feat: support nio async runtime by @kanarus in #289
  • chore: remove feature flag testing && export testing module behind #[cfg(debug_assertions)] by @kanarus in #290
  • refactor: remove select macro of interruption handling by @kanarus in #291
  • refactor ohkami_lib::time by @kanarus in #292
  • chore: add README note what it is by @kanarus in #293
  • rename: SetHeaders: .__() -> .x() by @kanarus in #294
  • docs: update doc comment for current OHKAMI_* environment variables by @kanarus in #296
  • fix(native): perform WaitGroup's subtraction in Drop impl for panic safety by @kanarus in #297
  • refactor(sse): DataStream: more intuitive colocation and interface by @kanarus in #298
  • chore(examples): refactor examples/openai -> examples/chatgpt by @kanarus in #299
  • feat: openapi by @kanarus in #300
  • chore(deps): worker 0.4 -> 0.5 by @kanarus in #301
  • openapi: impl Schema for Cow by @kanarus in #302
  • feat: openapi on rt_worker by @kanarus in #303
  • add wasm-pack installation by @kanarus in #304
  • openapi: fix sse::DataStream::openapi_responses by @kanarus in #305
  • fix(samples): make worker-with-openapi sample work & add test for builtin BasicAuth fang by @kanarus in #306
  • feat: local fangs by @kanarus in #307
  • feat: pass fangs via Ohkami::new by @kanarus in #308
  • Memory to Context by @kanarus in #309
  • chore(workspace) by @kanarus in #310
  • feat: Request.ip on rt_worker by @kanarus in #311
  • chore: fix JSDocs by @kanarus in #312
  • fix(openapi): resolve compile error on #[worker] async fn by @kanarus in #313
  • accept unknown flags without -- and foward to additionalOptions by @kanarus in #314
  • openapi: workers_openapi.js: use npx wrangler instead of wrangler by @kanarus in #315
  • fix(openapi): consider that process.argv doesn't have script path in node -e by @kanarus in #316
  • chore: remove badgaes from lib.rs's inner doc by @kanarus in #317
  • chore: update README, crate inner doc by @kanarus in #318
  • docs: add doc comment for Ohkami::{new, with} by @kanarus in #319
  • chore: add Publish workflow by @kanarus in #320
  • chore: check if branch is main in Publish workflow by @kanarus in #321
  • docs: add handler, path params section in Ohkami::new doc by @kanarus in #322
  • docs: {Name} -> "{Name}" literal-expected args by @kanarus in #323
  • docs: add note about optional query params and Option<Query<T>> by @kanarus in #324

New Contributors

Full Changelog: v0.20...v0.21

v0.20

28 Aug 23:18
950097a
Compare
Choose a tag to compare

What's Changed

  • Performance tuning by @kana-rus in #186
  • Performance tuning by @kana-rus in #187
  • Dispatch routers by method by @kana-rus in #188
  • handle HEAD request by GET tree and respond without content, Content-Length by @kana-rus in #189
  • Correctly handle OPTIONS, Access-Control-Request-Method by @kana-rus in #190
  • Builtin basic auth fang by @kana-rus in #191
  • update docs by @kana-rus in #192
  • update docs by @kana-rus in #193
  • #[bindings] : variable bindings as associated consts by @kana-rus in #194
  • update docs by @kana-rus in #195
  • Fix bug on response::Headers's append & add test by @kana-rus in #196
  • Performance tuning by @kana-rus in #197
  • revise repo URLs to org's one by @kana-rus in #198
  • use TcpStream::split in Session::manage on rt_tokio & omit Vec from Path.params by @kana-rus in #199
  • feat: set keep-alive timeout by environment variable by @kana-rus in #200
  • perf: lightweight headers map by @kana-rus in #201
  • Refactor: headers by @kana-rus in #202
  • perf: more optimized itoa by @kana-rus in #203
  • add File upload sample to README by @kana-rus in #204
  • Unroll itoa with a macro by @mcpower in #205
  • Using random values in the itoa benchmark by @mizar in #206
  • Wrong output itoa_03 and itoa_04 by @mizar in #207
  • refactor: bench itoa with test cases of less than 10GB by @kana-rus in #208
  • itoa: statically assert that the max of MAX is 19 by @kana-rus in #209
  • refactor: bench itoa in 3 levels by @kana-rus in #210
  • refactor standard headers: iterate only by inserted values by @kana-rus in #211
  • chore: update deps by @kana-rus in #212
  • fix itoa bench: reuse the same buffer and avoid redundant allocation during each iter by @kana-rus in #213
  • itoa: Can be about 10 times faster by @mizar in #214
  • fix headers bench: use Vec::reserve for reserve buf capacity by @kana-rus in #215
  • Remove frac from time::Time by @kana-rus in #216
  • fix: leave Content-Length in HEAD response by @kana-rus in #218
  • feat: add utils::timeout_in by @kana-rus in #219
  • feat: WebSocket by @kana-rus in #220
  • feat: OHKAMI_WEBSOCKET_TIMEOUT by @kana-rus in #221
  • fix: always send close frame when closing websocket connection by @kana-rus in #222
  • fix: automatically send pong for ping from client in Message::read_from by @kana-rus in #223
  • chore: README by @kana-rus in #224
  • chore: update README by @kana-rus in #225
  • feat: q.add in stream::queue by @kana-rus in #226
  • feat: always specialize index.html in .Dir by @kana-rus in #227
  • fix ws Handler: Fn -> FnOnce & routing bug by @kana-rus in #228
  • feat: split websocket connection by @kana-rus in #229
  • fix: Taskfile & wrong cfg by @kana-rus in #230
  • chore: ensure rt_worker to be built on wasm32-unknown-unknown target by @kana-rus in #231
  • Explicitly not-support using ws::Connection in detouched tasks by @kana-rus in #232
  • feat: Graceful Shutdown by @kana-rus in #233
  • refactor: graceful shutdown impl by @kana-rus in #237
  • chore: not combine cfgs between outer and inner an anon-const to avoid error message on editor by @kana-rus in #238
  • chore: fix html_root_url & crate inner doc comment by @kana-rus in #239
  • Separate schema from format by @kana-rus in #245
  • chore: include Serialize, Deserialize, JSON in prelude by @kana-rus in #247
  • chore: CI: cache sccache dir by @kana-rus in #248
  • perf: reuse Request in a session by @kana-rus in #249
  • feat: Add "ip" feature by @kana-rus in #250
  • fea: add "rt_glommio" by @kana-rus in #252
  • feat: add "rt_smol" by @kana-rus in #253
  • chore: add benches_{tokio,vs_actix-web} & add [profile.release] config to benches_* by @kana-rus in #254
  • chore: update CI for more concurrency by @kana-rus in #255
  • chore: remove format::V by @kana-rus in #256
  • chore: benches_rt/tokio: set event_interval to 1 by @kana-rus in #257
  • chore: update README by @kana-rus in #258
  • chore: update README by @kana-rus in #259
  • chore: dependencies: remove tokio's "sync" feature ( unused ) by @kana-rus in #260

New Contributors

Full Changelog: v0.19...v0.20

v0.19

17 Jun 08:04
2d2a54d
Compare
Choose a tag to compare

What's Changed

  • optimized CORS & append header with , instead of , by @kana-rus in #155
  • Add to categories: "network-programming", "wasm" by @kana-rus in #156
  • introduce JWTToken & export from builtin::item together with File by @kana-rus in #157
  • Support unit into response by @kana-rus in #158
  • Partially support cargo workspace in #[bindings] by @kana-rus in #159
  • #[bindings]: add static methods that return vars bindings as literals by @kana-rus in #160
  • Support unix_timestamp in worker by @kana-rus in #161
  • Fix & Update builtin::utils::JWT by @kana-rus in #162
  • Support where /* validation fn */ in #[Payload] by @kana-rus in #163
  • #[Payload]: take validating expression(s) in where 〜 by @kana-rus in #164
  • Improve error reportings by @kana-rus in #165
  • Remove log_error! in ahead of BadRequest response with the error text by @kana-rus in #166
  • log_error!warning! by @kana-rus in #167
  • Fix CORS: preflight: return with 200 (not 204) & correctly handle 404 by @kana-rus in #168
  • fix JWT: skip verifying for OPTIONS requests by @kana-rus in #169
  • fix JWT: to not return error response for OPTIONS amd only put warning by @kana-rus in #170
  • fix warning!: use console_info! instead of console_warn! in rt_worker by @kana-rus in #171
  • Remove log ohkami::builtin::JWT doesn't perform verifying for OPTIONS requests in JWT::verified by @kana-rus in #172
  • Call crate::warning! directly by @kana-rus in #173
  • Add test for response headers: write after multiple insertion with same key by @kana-rus in #174
  • Support sse by @kana-rus in #175
  • Optimized size-hexizing in sending chunked encoding by @kana-rus in #176
  • More optimized size-hexizing for chunked encoding by @kana-rus in #177
  • update dependencies by @kana-rus in #178
  • bump version & update docs by @kana-rus in #179
  • Return concrete type within all methods of utils::StreamExt by @kana-rus in #180
  • Omit S: Send bound of DataStream::from_stream cfg feature="rt_worker" by @kana-rus in #181
  • move codes around stream into ohkami_lib/ & add StreamExt::chain, once by @kana-rus in #182
  • Support 4 FromRequet items in handler by @kana-rus in #183
  • Add utils::stream::queue & openai chat completions example by @kana-rus in #184
  • update README & add doc of stream::queue by @kana-rus in #185

Full Changelog: v0.18...v0.19