{"push_id":1416953429,"size":10,"distinct_size":3,"ref":"refs/heads/imm-vector","head":"34fdd2863a1a3efccee06dbb1ba25eca594e0f01","before":"868c0dd288cb2aa9194d8a4a3ca0ce2d98d46da7","commits":[{"sha":"09c1174f7ec78d2c5fbe4cfd715f6a855c0b0732","author":{"name":"Robby Findler","email":"81855ef260643c1c437d22de4648c589b0de3525@racket-lang.org"},"message":"add the #:extra-delay argument to recursive-contract","distinct":false,"url":"https://api.github.com/repos/samth/racket/commits/09c1174f7ec78d2c5fbe4cfd715f6a855c0b0732"},{"sha":"7c22c42c728ef95dc1e862a9317c8cb55dedf868","author":{"name":"Matthew Flatt","email":"9f93fa5e052579b5d65cd034d6f6c0a92aab548e@racket-lang.org"},"message":"fix optimizer imprecision for `values`\n\nWithout this repair,\n\n #lang racket/base\n (require 2htdp/abstraction)\n (for/list ((dropping-which-one (in-naturals)))\n   1)\n\nfails to compile with a \"optimizer clock tracking has gone wrong\"\nerror. A variant of this test (that doesn't depend on `2htdp`)\nis now in the \"optimize.rktl\"; a simpler and more direct test\nshould be possible, but I wasn't able to construct one.","distinct":false,"url":"https://api.github.com/repos/samth/racket/commits/7c22c42c728ef95dc1e862a9317c8cb55dedf868"},{"sha":"4902b5e10cd1b17211b6d43ead41776668df8edf","author":{"name":"Matthew Flatt","email":"9f93fa5e052579b5d65cd034d6f6c0a92aab548e@racket-lang.org"},"message":"more forceful update of Scribble common files for docs\n\nracket/scribble#69","distinct":false,"url":"https://api.github.com/repos/samth/racket/commits/4902b5e10cd1b17211b6d43ead41776668df8edf"},{"sha":"c5cce7aa7bb34840c32b4e7493f0c86873f2f1fc","author":{"name":"Sam Tobin-Hochstadt","email":"3318ef4396ae9e3a7d361f7c4df84ad207573ce1@cs.indiana.edu"},"message":"Fix test for `values`, and simplify test case. (#1525)\n\nRepairs 7c22c42c7.","distinct":false,"url":"https://api.github.com/repos/samth/racket/commits/c5cce7aa7bb34840c32b4e7493f0c86873f2f1fc"},{"sha":"cf2030b0b14cefb9e247509919ebfbadb68bd25d","author":{"name":"Vincent St-Amour","email":"0f303a9fd3e11e6288c4496fcb4695b87b483f41@racket-lang.org"},"message":"Add missing properties to contract chaperone.","distinct":false,"url":"https://api.github.com/repos/samth/racket/commits/cf2030b0b14cefb9e247509919ebfbadb68bd25d"},{"sha":"02b0a30988def128ce016fe6c3f7ab1043d499be","author":{"name":"Matthew Flatt","email":"9f93fa5e052579b5d65cd034d6f6c0a92aab548e@racket-lang.org"},"message":"improve ellipsis-count checking wrapper\n\nFor a template expression that involevs ellipses, a wrapper is added\nto catch failures an report as an \"incompatible ellipsis match count\"\nerror. The wrapper was only added when there are multiple pattern\nvariables with ellipses, but it turns out that it's possible to fail\nwith incompatible counts using a single pattern variable.\n\nBesides handlign that case, the revised check avoids an unnecessary\nwrapper in cases where multiple pattern variables have ellipses but\nthey are used independently in a template.\n\nCloses #1511","distinct":false,"url":"https://api.github.com/repos/samth/racket/commits/02b0a30988def128ce016fe6c3f7ab1043d499be"},{"sha":"87161fc5f3d8ea553149779603f774c412c66386","author":{"name":"Vincent St-Amour","email":"0f303a9fd3e11e6288c4496fcb4695b87b483f41@racket-lang.org"},"message":"Add more missing properties.","distinct":false,"url":"https://api.github.com/repos/samth/racket/commits/87161fc5f3d8ea553149779603f774c412c66386"},{"sha":"3a782d01db5c0a536d0c0e2e7e0e0421b3d40ccc","author":{"name":"Matthew Flatt","email":"9f93fa5e052579b5d65cd034d6f6c0a92aab548e@racket-lang.org"},"message":"fix interaction of `module->namespace` and `syntax-source-module`\n\nAn identifier that gets a module context via `module->namespace` plus\n`namespace-syntax-introduce` should not count as having the module as\nits source as reported by `syntax-source-module`.\n\nThe correct behavior happened for the wrong reason prior to commit\ncb6af9664c.\n\nCloses #1515","distinct":true,"url":"https://api.github.com/repos/samth/racket/commits/3a782d01db5c0a536d0c0e2e7e0e0421b3d40ccc"},{"sha":"201d3760b79b313d8334c0c9d208734c0ddf3f70","author":{"name":"Matthew Flatt","email":"9f93fa5e052579b5d65cd034d6f6c0a92aab548e@racket-lang.org"},"message":"fix `syntax-source-module` repair\n\nTry again on 3a782d01db, which broke contract tests by\nmangling the module path index attached to a module.","distinct":true,"url":"https://api.github.com/repos/samth/racket/commits/201d3760b79b313d8334c0c9d208734c0ddf3f70"},{"sha":"34fdd2863a1a3efccee06dbb1ba25eca594e0f01","author":{"name":"Sam Tobin-Hochstadt","email":"3318ef4396ae9e3a7d361f7c4df84ad207573ce1@ccs.neu.edu"},"message":"Avoid traversing immutable vectors when specified.\n\nThis adds #:eager as an option for controlling this behavior.\n\nUsing `#:eager 10` is a 2x improvement in performance for configuration 010001\nof the suffixtree benchmark from Takikawa et al, POPL 2016.\n\nThe default behavior is unchanged. This is configurable because some\nprograms are much faster when eager checking is performed. For example:\n\n(require racket/contract)\n(collect-garbage)\n(time (for/sum ([_ 100000])\n        (vector-ref (contract (vectorof integer? #:eager #t) #(1) 'pos 'neg)\n                    0)))\n(collect-garbage)\n\n(time (for/sum ([_ 100000])\n        (vector-ref (contract (vectorof integer? #:eager #f) #(1) 'pos 'neg)\n                    0)))\n\nThe second loop is 3-4 times slower than the first. However, making\nthe vector much larger will make the difference go the other way.","distinct":true,"url":"https://api.github.com/repos/samth/racket/commits/34fdd2863a1a3efccee06dbb1ba25eca594e0f01"}]}
{"actor":{"display_login":"samth"}}