on 18f736a help sign in
all commits
5b585e7initial, untested but functioning semijoin/antijoin implementationAgentM 02db0acensure that Client calls singular entry point to static optimizer fix DatabaseContextExpr optimizer not calling proper RelationalExpr optimizerAgentM 60228c5Merge branch 'master' into 165_more_static_optimizationsAgentM 254007bfix hlint suggestions due to new hlint 2.0.10 versionAgentM db3c05cadd a bunch of static optimizations and use optimizations by default in ClientAgentM 6590d3eadd new+old report expressions to notifications resolves #157AgentM e7bc48frefactor CSV atom parser to use attoparsec on potential atom values the previous parser relied solely on Text.Read which made it impossible to represent ADT type tested ADT round trips, quoted text atoms resolves #148AgentM 5f6509efix file lock handle leak on connection close System.IO actively prevents opening the same file twice in write mode, so we must resort to a lower-level API luckily, the locking API is self-contained needs Windows mungingAgentM 7a0dfc2Expose RelationalError from client APIs3noch 88d52d5fix hlint extraneous "do"AgentM e29d8d9switch to withTransaction monad and throwing an exception to terminate the DB monadAgentM 2aba32aadd commit timestamps the timestamp is from the start of the transaction creation, not when it is committed (a few milliseconds later typically)- this is identical to postgresql's now() stamp resolves #123AgentM b27ae9ffix or squelch all hlint hints in src, examples, test directoriesAgentM 00c9dc73noch found that automerge was not writing all new transactions to disk this was caused by the transaction graph persistence optimization which assumed writing only the latest heads was safe this has been replaced by commit infrastructure being explicit about which transactions it has added to the graph this is potentially a further optimization since it shouldn't need to check the filesystem for which heads have already been written resolves #128AgentM add8d97all tests passAgentM 89229c7auto merge tests pass flip args on createSessionAtHead for consistency add constraint checking to post-merge operation- critical bug fixedAgentM 0747adaMerge branch 'master' into 33_autorebaseAgentM 393d5faWIP all tests compile databasecontextfunction test failingAgentM 91d6fa9WIP test updates for switch from Maybe to Either for Client APIAgentM f0825a5WIP compilation checkpoint complete refactoring of eval graph path change Maybe x functions to Either RelationalError so that they can be easily used in an Either/Error monadAgentM fc45103WIP compilation checkpoint need to finish refactoring evalGraphOpAgentM 59a15aeWIP automerge -work on refactoring Client.commit code to separate out STM componentAgentM a2d81eeWIP compilation checkpoint for new automerge method needs ProjectM36.Client glueAgentM 18d17f5updates to haddock documentation in preparation for hackage release references #116AgentM d293692#106 implement Commit options regarding how to handle empty commitsAgentM 261654cempty commit detection completion all tests passingAgentM 0fd3b52implement support for tracking disconnected transaction dirtiness return an error if an empty commit is attemptedAgentM 0704e54switch from cryptonite to lighter-weight cryptohash-sha256 which also offers the benefit of compiling on MacOS 10.7AgentM be6f7e4fix critical oversight in graphExpr processingAgentM 6d932ddmulti-process db: report transaction head error only when commits are on same headAgentM 57faeaeWIP compilation checkpoint when the graph is changed behind the process' back, TransactionIsNotHeadError is returned unconditionally, which is a mistake- it should only return that error only if the same head is being contendedAgentM e5a227dExport DatabaseContextIOExpr from ClientElliot Cameron 4b8b7cfadd priceBand atom function to OotT exampleAgentM f4794d3WIP add dbc function errorsAgentM a0e6f44polish up database context function work -documentation -tests -there should likely be a separate module which is imported for database context functions which exports a variety of convenience functionsAgentM a476d28WIP first pass at working stored functions -needs tests -needs atom type validation in RelationalExpression.hsAgentM 2c0105aadd hair.hs new datatype example along with new datatypes documentationAgentM e1c1fbdrename ConstructedAtom to Atomable to better reflect the meat of the moduleAgentM 900d4bcupdate out_of_the_tarpit example to support new constraint utility functionsAgentM f9b0e23start adjusting Example-OutOfTheTarpit to accomodate Atomable classAgentM bababa6finish out_of_the_tarpit.hs Haskell example references #78AgentM 9cfdd63fix missing case in remoteCallAgentM 80d74a6refactor Client to track created transport and release it on disconnectAgentM 8d057bashow current branch and schema names in websocket clientAgentM db9742fWIP per-request timeoutAgentM 0b8b0a7WIP working propagation of timeout error to timeout exception in clientAgentM 1e42fdfWIP compilation checkpoint the context-based tuples don't end up in the results- needs fixingAgentM ec960c4WIP major refactoring in order to pass tuples in relational expression stateAgentM b647499update schema isomorphs on database context expr DDL resolves #54AgentM 171c11aall tests passingAgentM