This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-05-09
Channels
- # announcements (12)
- # beginners (159)
- # boot (3)
- # calva (41)
- # cider (48)
- # clara (2)
- # clj-kondo (8)
- # cljdoc (8)
- # clojure (70)
- # clojure-dev (10)
- # clojure-europe (2)
- # clojure-losangeles (1)
- # clojure-nl (12)
- # clojure-spec (7)
- # clojure-uk (63)
- # clojurescript (24)
- # cursive (24)
- # datomic (22)
- # expound (17)
- # figwheel (1)
- # fulcro (176)
- # graphql (23)
- # jobs (9)
- # jobs-discuss (56)
- # kaocha (1)
- # mount (3)
- # nyc (1)
- # off-topic (91)
- # onyx (3)
- # overtone (4)
- # pathom (3)
- # pedestal (1)
- # re-frame (11)
- # reitit (19)
- # ring (8)
- # shadow-cljs (16)
- # test-check (5)
- # testing (2)
- # tools-deps (20)
- # vim (9)
Thanks @val_waeselynck! This is an excellent idea. I already named my keys and I don't have the opportunity to go back and rename them. Also, there is no single name for each key that satisfies GraphQL and my external APIs. I will keep this in mind for my next project.
Isn’t namespace keywords to some sort of concatenated string a bijective transformation, such that you can really simply convert from one to the otehr?
Kind of like camel case to hyphenated, etc.
you would have to add some unambiguous escaping mechanism to know that a character was in the original rather than the result of a transformation. Or reject certain input, also an option
Ah, good point
I settled on :a.b/c -> a_b__c - it makes SQL happy, and it doesn't offend my sensibilities too much.
Ah, good point
Even when converting the names is easy, I don't think it's beneficial. When you do that, you lose the ability to instantly trace the lifecycle of a piece of data across your whole system, with a basic text search.
It's OK for key names to not be Clojure-idiomatic. (Just like it's OK for your language to use parens instead of curly braces... sounds familiar? :) ).
Actually, a key name that doesn't respect Clojure's namespacing convention signals that it's meant to travel across the system, in contrast e.g with component or algorithm configuration. This contrast adds clarity.
That’s a good point - data “from the system” would stick out for having the odd_naming__conventions.
Hey all, the cloud docs have instructions for “First Upgrade Ever” but these instructions don’t apply if I used the instructions here https://docs.datomic.com/cloud/operation/new-system.html and created the stacks individually, right? It looks like I can just go forward with the regular stack upgrade instructions.
is there a way I can rewrite this pull query so I can get nil when the query doesn't find any results?
=> (d/pull (db/db) '[*] [:account/email "doesn't-exist"])
#:db{:id nil}