log src/c/urweb.c

age author description
Wed, 07 Oct 2015 08:58:08 -0400 Ziv Scully Fix recording bugs to do with nesting and buffer reallocation. Stop MonoFooify printing spurious errors.
Sun, 13 Sep 2015 16:02:45 -0400 Ziv Scully Start work on pure expression caching.
Sat, 12 Sep 2015 17:11:33 -0400 Ziv Scully Merge.
Sun, 19 Jul 2015 19:05:16 -0700 Ziv Scully Merge.
Sun, 19 Jul 2015 19:03:11 -0700 Ziv Scully Rename C functions and remove functors nested inside modules.
Sun, 28 Jun 2015 12:46:51 -0700 Ziv Scully Progress on LRU cache but still more known bugs to fix.
Fri, 27 Mar 2015 11:26:06 -0400 Ziv Scully Merge.
Thu, 11 Dec 2014 02:05:41 -0500 Ziv Scully Merge.
Mon, 24 Nov 2014 20:47:38 -0500 Ziv Scully Merge.
Mon, 10 Nov 2014 22:07:51 -0500 Ziv Scully Merge.
Sat, 13 Sep 2014 19:16:07 -0400 Ziv Scully Merge.
Sat, 31 May 2014 03:08:16 -0400 Ziv Scully Cleans up interface (it's now a command line option) and renames project to "sqlcache" in the all-one-word style. Still has issues to do with concurrency, retrying transactions, and foreign function calls that either rely on state or have side effects.
Fri, 30 May 2014 12:00:44 -0400 Ziv Scully Merge.
Tue, 27 May 2014 21:38:01 -0400 Ziv Scully Merge.
Tue, 27 May 2014 21:14:13 -0400 Ziv Scully Finishes initial prototype, caching parameterless pages with table-match-based invalidation. Still has problems parsing non-Postgres SQL dialects properly.
Sun, 01 Nov 2015 11:55:01 -0500 Adam Chlipala Basis.fromMilliseconds
Sat, 31 Oct 2015 19:21:05 -0400 Adam Chlipala Remove spurious failure about reopening database connection
Sat, 17 Oct 2015 11:31:22 -0400 Adam Chlipala Database-server reconnection for MySQL
Sat, 17 Oct 2015 11:08:12 -0400 Adam Chlipala Switching to a more dynamic method of handling database reconnection, restarting transactions
Sat, 17 Oct 2015 10:49:25 -0400 Adam Chlipala Start of support for surviving database-server restarts, for Postgres
Thu, 06 Aug 2015 10:15:53 -0400 Benjamin Barenblat Make OpenSSL usage thread-safe (closes #206)
Sun, 10 May 2015 12:13:12 -0400 Adam Chlipala Make naughtyDebug use protocol-specific logging
Thu, 22 Jan 2015 09:46:20 -0500 Adam Chlipala Fix silly mistake from last commit; also switch away from rand() in openssl.c
Mon, 12 Jan 2015 12:02:54 -0500 Adam Chlipala Switch to using OpenSSL PRNG for the one remaining rand()
Thu, 04 Dec 2014 19:54:04 -0500 Adam Chlipala Optimizing writes of single characters
Sun, 16 Nov 2014 13:39:18 -0500 Adam Chlipala uw_remoteSock()
Sat, 20 Sep 2014 13:55:25 -0400 Adam Chlipala Default to parsing time strings with the application-configured format
Sun, 17 Aug 2014 13:07:56 -0400 Adam Chlipala New phase: Dbmodecheck
Fri, 15 Aug 2014 18:25:56 -0400 Adam Chlipala Don't use uw_malloc() or equivalent in generating error messages while parsing HTTP request
Thu, 31 Jul 2014 09:56:41 -0400 Adam Chlipala New .urp directive: file
Sun, 29 Jun 2014 08:31:21 -0400 Adam Chlipala Fix uw_Basis_lt_time
Fri, 27 Jun 2014 14:39:31 -0400 Adam Chlipala Add locking to enforce atomicity of message sends from one transaction
Sun, 15 Jun 2014 21:13:12 +0000 Sergey Mironov Call try_rollback before resetting the context
Thu, 05 Jun 2014 20:36:12 +0000 Sergey Mironov Allow '+' char in blessMime
Wed, 28 May 2014 11:53:19 -0400 Adam Chlipala Align to sizeof(void *) instead of fixed 4
Sun, 18 May 2014 19:09:09 -0400 Adam Chlipala Fix datetime construction (contributed by Patrick Hurst)
Sun, 18 May 2014 18:58:50 -0400 Adam Chlipala Change context-local memory allocation to return word-aligned addresses (based on patch by Evan Danaher)
Fri, 02 May 2014 15:32:10 -0400 Adam Chlipala HTML5 data-* attributes
Thu, 17 Apr 2014 17:41:24 -0400 Adam Chlipala uw_register_transactional() can return error codes
Tue, 15 Apr 2014 19:12:49 -0400 Adam Chlipala Tweaking uw_commit() logic, partly to fix a resource clean-up bug on SQL serialization failures
Wed, 26 Feb 2014 09:43:47 +0000 Sergey Mironov Protect uw_Basis_new_client_source from invalid ctx->id
Wed, 26 Feb 2014 08:21:52 +0000 Sergey Mironov Define uw_loggers structure, allow FFI code to access it
Fri, 07 Mar 2014 11:50:45 -0500 Adam Chlipala getenv calls UNIX getenv() when no special alternative is set
Tue, 04 Mar 2014 08:46:33 -0500 Adam Chlipala Change Basis.getenv to return None outside the context of a web request
Tue, 25 Feb 2014 16:34:04 -0500 Adam Chlipala Parse new bytea output format from Postgres 9.x
Fri, 14 Feb 2014 04:00:03 -0500 Patrick Hurst Merge in upstream
Sat, 25 Jan 2014 18:15:14 -0500 Patrick Hurst Use localtime, not gmtime, for datetime functions.
Sat, 25 Jan 2014 18:13:33 -0500 Patrick Hurst Trim trailing whitespace in urweb.c.
Sat, 18 Jan 2014 18:26:24 -0500 Patrick Hurst Merge in upstream changes.
Thu, 05 Dec 2013 11:36:54 -0500 Patrick Hurst Day of week functions.
Thu, 05 Dec 2013 11:36:06 -0500 Patrick Hurst Add basic year/month/day/hour/minute/second <-> time functions.
Thu, 09 Jan 2014 17:27:24 -0500 Adam Chlipala Add 'html5' .urp directive
Tue, 31 Dec 2013 09:34:41 -0500 Adam Chlipala Do a bit of extra userspace copying to send HTTP response with a single system call
Fri, 27 Dec 2013 12:30:44 -0500 Adam Chlipala Change where a transaction is marked finished, to avoid forgetting to rollback a failed transaction
Fri, 27 Dec 2013 12:10:03 -0500 Adam Chlipala Raise exception when recv()ing from someone else's channel; improve setting of client ID in RPCs
Wed, 25 Dec 2013 13:11:43 -0500 Adam Chlipala Tweaking handling of database transactions
Wed, 25 Dec 2013 11:43:41 -0500 Adam Chlipala No need to ROLLBACK after a failed COMMIT
Mon, 23 Dec 2013 15:59:17 +0000 Adam Chlipala Proper handling of serialization failures during SQL COMMIT
Thu, 12 Dec 2013 17:42:48 -0500 Adam Chlipala Start SQL transactions as read-only when possible, based on conservative program analysis
Thu, 12 Dec 2013 10:24:38 -0500 Adam Chlipala HTTP: avoid duplicate Content-length
Wed, 11 Dec 2013 18:54:42 -0500 Adam Chlipala RAND_bytes isn't thread-safe, so wrap it with a lock
Wed, 11 Dec 2013 18:22:10 -0500 Adam Chlipala Change handling of returned text blobs, to activate the normal EWrite optimizations
Wed, 11 Dec 2013 14:57:54 -0500 Adam Chlipala Fix regression in http.c for long-polling connections; add lazy initialization of database connections, to avoid the overhead in handlers that don't use SQL
Tue, 03 Dec 2013 16:54:04 -0500 Adam Chlipala Increase precision for rendering floats to SQL
Sun, 01 Dec 2013 16:28:02 -0500 Adam Chlipala Remove extra line break for onError
Wed, 27 Nov 2013 15:28:55 -0500 Adam Chlipala Add Connection and Content-length headers to raw HTTP responses
Thu, 10 Oct 2013 18:31:10 -0400 Adam Chlipala Remove uw_cutErrorLocation() hijinks
Thu, 10 Oct 2013 14:48:43 -0400 Adam Chlipala Take proper account of signatures changing during page generation
Fri, 13 Sep 2013 10:24:10 -0400 Adam Chlipala Tweak Sergey's patch to work with Postgres
Fri, 13 Sep 2013 10:09:15 -0400 Sergey Mironov Add hex SQL syntax for blobs, such as X'0ABC12343'. Works with sqlite.
Wed, 17 Jul 2013 09:09:48 -0400 Adam Chlipala Postgres unicode printing fix from Artyom Shalkhakov
Fri, 30 Nov 2012 09:50:00 -0500 Adam Chlipala Fix generation of timestamp literals for MySQL and SQLite
Fri, 03 Aug 2012 08:32:03 -0400 Adam Chlipala Fix some unportable uses of C character class functions
Thu, 02 Aug 2012 16:33:25 -0400 Adam Chlipala Basis.getenv
Sat, 21 Jul 2012 15:34:07 -0400 Adam Chlipala Get regular forms working again
Sat, 21 Jul 2012 15:16:57 -0400 Adam Chlipala Top.postFields
Wed, 18 Jul 2012 17:29:13 -0400 Adam Chlipala Support fancy expressions in module-level 'val' declarations
Wed, 16 May 2012 22:46:35 +0400 Vladimir Shabanov Allow RPC and run it synchronously in onunload event.
Sun, 06 May 2012 16:08:48 -0400 Adam Chlipala Run-time CSS style validation
Fri, 27 Apr 2012 09:52:16 -0400 Adam Chlipala Avoid generating empty <script> tags
Fri, 27 Apr 2012 09:43:09 -0400 Adam Chlipala Ensure proper ordering of <script> execution, to bring identifiers into scope in time
Wed, 25 Apr 2012 03:07:07 +0400 Vladimir Shabanov Removed excess zero byte from empty pages.
Sun, 08 Apr 2012 16:29:28 -0400 Adam Chlipala Optimize code from last changeset a bit
Sun, 08 Apr 2012 16:24:16 -0400 Adam Chlipala Refactor to avoid dependence on recursive mutexes
Fri, 16 Mar 2012 08:42:51 -0400 Adam Chlipala Change ID generation scheme to conform to HTML standards (thanks to Edward Yang for the catch)
Sat, 03 Mar 2012 15:47:52 -0500 Adam Chlipala Pass non-printing characters through unchanged in sqlifyString, to support UTF-8
Sat, 04 Feb 2012 11:01:06 -0500 Adam Chlipala Basis.toMilliseconds and diffInMilliseconds, based on a patch from Gergely Buday
Sat, 14 Jan 2012 23:02:34 +0400 Vladimir Shabanov Fixed clients mutex initialization for compiling under OS X.
Tue, 10 Jan 2012 17:32:48 -0500 Adam Chlipala Fix some locking issues for client array
Tue, 10 Jan 2012 15:34:18 -0500 Adam Chlipala Properly handle case where an RPC changes signed cookie state
Sun, 08 Jan 2012 15:47:05 -0500 Adam Chlipala Fix channel delivery to handle sending of messages for channels whose clients haven't connected yet
Sun, 04 Dec 2011 16:32:06 -0500 Adam Chlipala Fix client-side [int] parsing and extend server-side [time] parsing to support a format that also works portably in JavaScript
Sun, 04 Dec 2011 14:40:12 -0500 Adam Chlipala timeFormat .urp directive
Sat, 03 Dec 2011 10:00:10 -0500 Adam Chlipala Allow sources to be returned by RPCs
Sat, 08 Oct 2011 17:23:58 -0400 Adam Chlipala Primitive int/float functions: ceil, float, round, trunc
Sat, 03 Sep 2011 12:51:05 -0400 Adam Chlipala An abstract type of IDs
Sun, 28 Aug 2011 17:16:54 -0400 Adam Chlipala Gentle handling of back-button returns to pages with stale message-passing credentials
Sun, 28 Aug 2011 14:43:30 -0400 Adam Chlipala Warn about concurrency issues with message-passing
Fri, 22 Jul 2011 15:39:38 -0400 Adam Chlipala Backpedal on tutorial-motivated urweb-mode changes; add Basis.diffInSeconds and Basis.toSeconds
Tue, 19 Jul 2011 09:18:50 -0400 Adam Chlipala Change cookie signature comparison to resist timing attacks (based on code suggested by Robin Green and Austin Seipp)
Sun, 03 Jul 2011 16:50:17 -0400 Adam Chlipala Change Basis.rand to use cryptographically secure generation
Sun, 03 Jul 2011 16:21:04 -0400 Adam Chlipala Basis.currentUrlHasQueryString
Sun, 03 Jul 2011 12:40:00 -0400 Adam Chlipala For non-debug builds, leave out source location info in what is shown to user
Fri, 17 Jun 2011 11:52:56 -0400 Adam Chlipala Fixes to work nicely with OS X and Clang (thanks to Austin Seipp)
Sun, 12 Jun 2011 17:44:34 -0400 Adam Chlipala Keep user-set response headers on indirect returns
Mon, 30 May 2011 09:31:50 -0400 Adam Chlipala Fix bug with string literals in unAs
Sun, 29 May 2011 14:29:26 -0400 Adam Chlipala getHeader and setHeader
Sun, 22 May 2011 13:32:29 -0400 Adam Chlipala Prevent early clearing of context post data
Thu, 12 May 2011 17:14:13 -0400 Adam Chlipala Escape less-than in JavaScript strings
Sun, 17 Apr 2011 13:43:00 -0400 Adam Chlipala Before allowing an indirect return, check (dynamically, for now) that we aren't in an RPC handler
Fri, 15 Apr 2011 16:49:46 -0400 Adam Chlipala Remove commented-out readUtc code; add back indeterminate tm_isdst
Wed, 13 Apr 2011 00:04:41 -0430 Karn Kallio Fix getting UTC time from formatted strings ( in uw_Basis_readUtc ).
Sat, 09 Apr 2011 20:00:52 -0400 Adam Chlipala Send newly created sources with messages to clients
Sat, 09 Apr 2011 14:36:47 -0400 Adam Chlipala Each context gets its own non-repeating sequence of source numbers
Sun, 27 Mar 2011 15:51:37 -0400 Adam Chlipala Escape strings as needed in some error messages within urweb.c
Fri, 18 Mar 2011 21:01:10 -0400 Adam Chlipala Fix 'readUtc' to work during DST
Thu, 10 Mar 2011 18:51:15 -0500 Adam Chlipala Represent 'unit' as C 'int'; change pattern match compilation to avoid 'goto'; change Postgres prepared statement compilation to make life easier for the GCC escape analysis; all this in support of better tail call optimization
Fri, 25 Feb 2011 15:58:08 -0500 Adam Chlipala Fix C jsify[String|Char]
Sun, 23 Jan 2011 18:16:30 -0500 Adam Chlipala Proper error handling for periodic tasks
Sun, 23 Jan 2011 17:27:51 -0500 Adam Chlipala Fix detection of POSTs to error pages