| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-05-12 | refactor(processor): do not depend on config directly | eltrac | |
| 2026-05-12 | fix(handler): missing config argument passed to receiver | eltrac | |
| 2026-05-12 | refactor(receiver): do not depend on config directly | eltrac | |
| 2026-05-09 | refactor(config): feed/handler.clj no longer depend on config.clj | eltrac | |
| 2026-05-09 | refactor(storage): now only core.clj dependon storage.clj | eltrac | |
| 2026-05-09 | refactor(retriever): no longer depend on storage directly | eltrac | |
| 2026-05-09 | fix/refact(feed): return proper message when domain is not found | eltrac | |
| Also partition the code nicely; Changed feed title and description. Probably a bad commit with all these changes. Should have separated them. :( | |||
| 2026-05-09 | refactor(feed): plug in storage instead of depending on it | eltrac | |
| 2026-05-09 | fix(retriever): respond 500 when page string exists but is empty | eltrac | |
| 2026-05-09 | refactor: improve readability of response functions | eltrac | |
| 2026-05-09 | refactor: improve retriever/respond-webmention-json DRYness | eltrac | |
| 2026-05-09 | style: format retriever.clj | eltrac | |
| 2026-05-09 | refactor: separate partition rules with response | eltrac | |
| Use a separate `(partition-pages)` function and pass its output as an argument to `(respond-webmention-json-list)`, instead of implementing partitioning inside that response function. Also, when list if empty. Should respond 400 instead of 404 since the route is "found", only something wrong with the request. | |||
| 2026-05-09 | fix(retreiver): respond 500 when page is not provided | eltrac | |
| 2026-05-09 | style: format all source code | eltrac | |
| 2026-05-09 | feat(API): response paging | eltrac | |
| 2026-05-08 | fix(processor, verifier): not deleting wm when url respond with HTTP error | eltrac | |
| Content-Type checks are somehow written in process-webmention function, when it should be in verify-mention function, which causes weepinbell not deleting Webmention when one of target and source is not found (or any other HTTP status code that is not 2**) | |||
| 2026-05-07 | style(lsp-warning): rename unused 'args' to '_' | eltrac | |
| 2026-05-06 | refactor(processor): separate verification from processor logic | eltrac | |
| 2026-05-06 | fix(processor): make process-webmention public | eltrac | |
| you can't test it if it's private | |||
| 2026-05-06 | fix(processor): cannot use <! outside of go-loop | eltrac | |
| 2026-05-06 | refactor(processor): a thin wrapper of process-webmention | eltrac | |
| process-webmention used to start a go-loop directly. this commit separates go-loop from processing logic, core.clj now calls to processor/start, the wrapper function. | |||
| 2026-05-06 | refactor(processor): remove storage dependency in processor | eltrac | |
| 2026-05-06 | refactor(processor): make storage plug-in through callback func | eltrac | |
| 2026-05-03 | fix(receiver): allow missimg opts argument | eltrac | |
| 2026-05-03 | refactor(receiver): allow changing domain allow-list with args | eltrac | |
| 2026-05-03 | refactor(receiver): (verify-request) returns only msg string, not entire ↵ | eltrac | |
| response HTTP-layer reponse should be handled by receive function (which acts as a controller that does HTTP things), verify-request function should only focus on error detection. Code within a function should be within the same layer of abstraction. | |||
| 2026-05-03 | refactor(receiver): move validator functions from utils to receiver | eltrac | |
| receiver.clj is the only component that uses and logically relies on these functions, so they should be its private functions in the first place | |||
| 2026-05-02 | refactor: decouple handler.clj and webmention queue | eltrac | |
| a new component 'channel.clj' is created to manage `wmc` (Webmention channel). It's a dirty technical detail that should only be called in core.clj and handler.clj, business rules should not interact with it directly. | |||
| 2026-05-02 | refactor: remove unused wrappers | eltrac | |
| 2026-04-29 | fix: missing Content-Type and remove chesire | eltrac | |
| 2026-04-29 | fix: missing Content-Type in json response | eltrac | |
| 2026-04-29 | refactor: eliminate respond-json, use ring-json middleware | eltrac | |
| 2026-04-22 | refactor: DRY callbacks constructor | eltrac | |
| 2026-04-22 | refactor: simple DI using callbacks | eltrac | |
| 2026-04-20 | fix: /api/mentions returns null | eltrac | |
| 2026-04-20 | feat: add more webhooks | eltrac | |
| on-create, on-update and on-delete | |||
| 2026-04-13 | refactor: simplify webmention list query routes with macro | eltrac | |
| 2026-04-13 | feat: add typing support for by-url routes | eltrac | |
| new route /api/likes/?url= new route /api/reposts/?url= new route /api/replies/?url= | |||
| 2026-04-13 | feat: list webmentions by microformats type | eltrac | |
| new route /api/likes/:domain new route /api/reposts/:domain new route /api/replies/:domain | |||
| 2026-04-08 | remove: cancel route /api/mentions/:domain/:path | eltrac | |
| also refactor `by-url` since the remove `by-domain-path` was used by it | |||
| 2026-04-08 | perf: do not show :microformats and :extra when empty | eltrac | |
| 2026-04-08 | fix: only parse specific type of MF data (h-entry and h-card) | eltrac | |
| 2026-04-08 | feat!(API): flatten microformats data in JSON response | eltrac | |
| 2026-04-08 | remove:! cancle /api/mentions/all | eltrac | |
| 2026-04-08 | feat: add microformats wrapper | eltrac | |
| and rename microformats.clj -> microformats_parser.clj | |||
| 2026-03-28 | fix: make sure it's valid url before trying to trigger webhook | eltrac | |
| 2026-03-23 | fix(wrapper): missing data conversion | eltrac | |
| 2026-03-23 | docs: fix microformats/parse docstring | eltrac | |
| 2026-03-23 | refactor(deps): replace digest with cljc-md5 | eltrac | |
