profile
viewpoint
Cameron Desautels camdez @collbox Austin, TX https://camdez.com Founder & CEO at CollBox. Clojure enthusiast.

camdez/goto-last-change.el 32

An Emacs package to move point through buffer-undo-list positions.

camdez/honeybadger 14

A Clojure library for reporting errors to Honeybadger.

camdez/checkbox.el 12

A tiny Emacs library for quick manipulation of textual checkboxes

camdez/asi-http-request 2

Easy to use CFNetwork wrapper for HTTP requests, Objective-C, Mac OS X and iPhone

camdez/dotfiles 2

My personal collection of config files for Mac OS X and Linux.

camdez/emacs.d 2

My Emacs configuration.

camdez/active_model_serializers 1

ActiveModel::Serializer implementation and Rails hooks

camdez/assistly 1

A Ruby wrapper for the Assistly REST API

camdez/authlogic 1

A simple model based ruby authentication solution.

camdez/cdsh 1

A toy shell written for educational purposes.

startedsupercrabtree/k

started time in 11 days

push eventcamdez/emacs.d

Cameron Desautels

commit sha a9a507c0017e2196f37e4b538641bd92e1f912f8

Add command & binding to jump to project notes file

view details

push time in a month

push eventcamdez/emacs.d

Cameron Desautels

commit sha b952cbc332e0ed935cb5170d5eefd458db533775

Switch from guide-key to which-key

view details

Cameron Desautels

commit sha f85a7d5b73dc628f28f675cdfef6af4a3b2d6289

Add keybinding for projectile Used to be automatic, IIRC.

view details

Cameron Desautels

commit sha a12021f7e886a4a8a33931883f386102655c58d6

Turn on paredit when editing elisp

view details

Cameron Desautels

commit sha e64d4e6e356ec612628e37cf2412055914fefbe2

Use modern command name for yassnippet

view details

Cameron Desautels

commit sha 5ee849f6984053b195845df20a324a22f348b2f8

clojure-mode improvements

view details

Cameron Desautels

commit sha ca68393672b441f52fdebc1a1d58351d1f0044e2

Nuke Cocoa Emacs stuff Haven't used it for a while.

view details

Cameron Desautels

commit sha 18d682c6df92d33f9b1c458e6a9c329b8fb70bce

Automatically initialize `which-key-mode`

view details

Cameron Desautels

commit sha 869bd960e5143a0ffe9f0d238df8efff523208c6

Only show-trailing-whitespace in `prog-mode` derivatives

view details

Cameron Desautels

commit sha 742226acb75e4f45709880e7241a935c8079ca05

Organize theme.el a touch

view details

Cameron Desautels

commit sha 41573f1ce9a613ddcace945615108ba20919919c

Highlight a few key faces (Been highlighting these for ages in my experiments / custom files.)

view details

Cameron Desautels

commit sha 798b23943c15559fdd87cad5b8309e5f6ffaf4ba

Remove advice on `backward-up-list` I suspect the built-in implementation now handles this case.

view details

Cameron Desautels

commit sha 33ed1880dc9cf23413f5462c3862a6d6149c7d74

Use page-break-lines to display page break characters as lines

view details

Cameron Desautels

commit sha 9df62bff43890a18ee81dc8edb6e7a0a8cdc72f0

Add capitalize-word variant which works for TitleCaps where needed

view details

Cameron Desautels

commit sha bfb0661c84ae4c8731cdcaa5ec7df01d0e825580

Add bindings for backward-kill-sexp and highlight-symbol-mode

view details

Cameron Desautels

commit sha a9f60cd1ca5a1dbadba0e9f67515c03a99579d95

Reorder / indent

view details

Cameron Desautels

commit sha 07835e06bd481060cf549464e28c4da0b1f7e9c0

Use highlight-symbol-mode automatically in prod-mode derivatives

view details

Cameron Desautels

commit sha 1125bd93834128855aba164d46e1226d1ca9e082

Install flycheck-color-mode-line

view details

push time in a month

startedsonnysideup/ansible-workstation

started time in 2 months

startedcamsaul/methodical

started time in 2 months

startedalphapapa/bufler.el

started time in 2 months

startedalphapapa/prism.el

started time in 3 months

pull request commentring-clojure/ring-codec

Invalid url encoding handling

@weavejester Done!

camdez

comment created time in 3 months

push eventcollbox/ring-codec

Cameron Desautels

commit sha 76e92e82c48a8ef21570435d9e8774d489237f90

Exclude decoded params on invalid URL encoding Given the squashing of all exceptions in form-decode-str, the prior implementation of form-decode would return nil keys and/or values for parameters which failed to URL decode. With this change the parameters are silently dropped. Including nil parameters creates problems for downstream middleware (e.g. ring.middleware.nested-params -- see ring-clojure/ring#243) which are not expecting them, and has no basis in the spec (https://url.spec.whatwg.org/#urlencoded-parsing). One can second guess the decision to catch all decoding exceptions (see #22) rather than allowing them to bubble up (and thus potentially allow the application to return an error status), but that decision being what it is, it seems most in the spirit of the library to drop the invalid parameters. For completeness, here are the (known) URL decoding failure cases: - Illegal hex values in % escape pattern - Incomplete % escape pattern

view details

push time in 3 months

pull request commentring-clojure/ring-codec

Invalid url encoding handling

@weavejester I think they generally do. Would you like for me to squash the commits and / or remove the additional tests? Or is there something else that I’m missing? Thanks.

camdez

comment created time in 3 months

issue commentring-clojure/ring

NPE in param parsing middleware on certain query strings

Proposed solution for this here: https://github.com/ring-clojure/ring-codec/pull/25

cespare

comment created time in 3 months

PR opened ring-clojure/ring-codec

Invalid url encoding handling

Given the squashing of all exceptions in form-decode-str, the prior implementation of form-decode would return nil keys and/or values for parameters which failed to URL decode. With this change the parameters are silently dropped.

Including nil parameters creates problems for downstream middleware (e.g. ring.middleware.nested-params -- see ring-clojure/ring#243) which are not expecting them.

One can second guess the decision to catch all decoding exceptions (see #22) rather than allowing them to bubble up (and thus potentially allow the application to return an error status), but that decision being what it is, it seems most in the spirit of the library to drop the invalid parameters.

Note the two commits, with the first locking down the existing behavior so the second can clearly show the changes in behavior.

+15 -4

0 comment

2 changed files

pr created time in 3 months

create barnchcollbox/ring-codec

branch : invalid-url-encoding-handling

created branch time in 3 months

more