Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | | | remove NullRequest and just always pass a request class | Aaron Patterson | 2014-05-23 | 2 | -29/+8 | |
| | | | | ||||||
* | | | | use the request object since we have it | Aaron Patterson | 2014-05-23 | 3 | -14/+15 | |
|/ / / | | | | | | | | | | | | | stop hardcoding hash keys and use the accessors provided on the request object. | |||||
* | | | stop using PARAMETERS_KEY, and use the accessor on the request object | Aaron Patterson | 2014-05-22 | 3 | -7/+9 | |
| | | | | | | | | | | | | this decouples our code from the env hash a bit. | |||||
* | | | pass the instantiated request to the find_routes method | Aaron Patterson | 2014-05-22 | 1 | -5/+7 | |
| | | | ||||||
* | | | just return path parameters | Aaron Patterson | 2014-05-22 | 1 | -2/+1 | |
| | | | ||||||
* | | | use symbol keys for path_parameters | Aaron Patterson | 2014-05-22 | 6 | -16/+16 | |
| | | | ||||||
* | | | Merge pull request #15254 from DNNX/formatter-refactoring-3 | Rafael Mendonça França | 2014-05-22 | 1 | -4/+4 | |
|\ \ \ | | | | | | | | | Rename `stack` to `queue` | |||||
| * | | | Rename `stack` to `queue` | Viktar Basharymau | 2014-05-22 | 1 | -4/+4 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because it is used as a queue (FIFO), not as a stack (LIFO). * http://en.wikipedia.org/wiki/Stack_(abstract_data_type) * http://en.wikipedia.org/wiki/Queue_(data_structure) | |||||
* | | | | Merge pull request #15252 from DNNX/formatter-refactoring-2 | Rafael Mendonça França | 2014-05-22 | 1 | -1/+1 | |
|\ \ \ \ | | | | | | | | | | | Remove unnecessary `Hash#to_a` call | |||||
| * | | | | Remove unnecessary `Hash#to_a` call | Viktar Basharymau | 2014-05-22 | 1 | -1/+1 | |
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Inspired by https://github.com/rails/rails/commit/931ee4186b877856b212b0085cd7bd7f6a4aea67 ```ruby def stat(num) start = GC.stat(:total_allocated_object) num.times { yield } total_obj_count = GC.stat(:total_allocated_object) - start puts "#{total_obj_count / num} allocations per call" end h = { 'x' => 'y' } stat(100) { h. each { |pair| pair } } stat(100) { h.to_a.each { |pair| pair } } __END__ 1 allocations per call 2 allocations per call ``` | |||||
* | | | | Merge pull request #15247 from DNNX/activesupport-formatter-refactoring | Rafael Mendonça França | 2014-05-22 | 1 | -1/+1 | |
|\ \ \ \ | | | | | | | | | | | Use `break` instead of `next` in AD::Journey::Formatter#match_route | |||||
| * | | | | Use `break` instead of `next` in AD::Journey::Formatter#match_route | Viktar Basharymau | 2014-05-22 | 1 | -1/+1 | |
| |/ / / | | | | | | | | | | | | | | | | | | | | | The array is sorted in descending order, so there is no point in iterating further if we met a negative item - all the rest will be negative too. | |||||
* / / / | Fix the hash key being delete from env | Rafael Mendonça França | 2014-05-22 | 1 | -1/+1 | |
|/ / / | | | | | | | | | | It was changed by mistake at c5d64b2b86aa42f57881091491ee289b3c489c7e. | |||||
* | | | Form full URI as string to be parsed in Rack::Test. | Guo Xiang Tan | 2014-05-21 | 3 | -13/+16 | |
| | | | | | | | | | | | | There are performance gains to be made by avoiding URI setter methods. | |||||
* | | | drop hash allocations during match | Aaron Patterson | 2014-05-21 | 1 | -2/+2 | |
| | | | ||||||
* | | | fewer object allocations and method calls during route match | Aaron Patterson | 2014-05-21 | 1 | -5/+5 | |
| | | | ||||||
* | | | middle variable is never used, so rm | Aaron Patterson | 2014-05-21 | 3 | -16/+16 | |
| | | | ||||||
* | | | use the existing constant rather than the hardcoded string | Aaron Patterson | 2014-05-21 | 1 | -3/+3 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | so tht I don't go totally insane with THsi crazy hash driven development. why is Everything a hash? Why do people think hashes in hashes with random keys is a Good API? You can't find things or deprecate them or control access whatsoever, you just have to hope that everyone is like "oh, you want to change that? that's cool! we all know it's hashes so go for it!" The End. | |||||
* | | | remove dead code. @klass isn't used anymore | Aaron Patterson | 2014-05-21 | 1 | -1/+0 | |
| | | | ||||||
* | | | we can just use Ruby here | Aaron Patterson | 2014-05-21 | 1 | -2/+2 | |
| | | | ||||||
* | | | reuse path formatter from the non-optimized path. | Aaron Patterson | 2014-05-21 | 3 | -39/+3 | |
| | | | | | | | | | | | | | | | The optimized and non-optimized path share more code now without significant performance degretation | |||||
* | | | reduce object allocations | Aaron Patterson | 2014-05-21 | 1 | -2/+4 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Example: x = [1,2,3,4] y = [3,2,1] def test x, y hash = {} x.zip(y) { |k,v| hash[k] = v } hash end def test2 x, y Hash[x.zip(y)] end def test3 x, y x.zip(y).each_with_object({}) { |(k,v),hash| hash[k] = v } end def stat num start = GC.stat(:total_allocated_object) num.times { yield } total_obj_count = GC.stat(:total_allocated_object) - start puts "#{total_obj_count / num} allocations per call" end stat(100) { test(x,y) } stat(100) { test2(x,y) } stat(100) { test3(x,y) } __END__ 2 allocations per call 7 allocations per call 8 allocations per call | |||||
* | | | make variable name more clear | Aaron Patterson | 2014-05-21 | 1 | -2/+2 | |
| | | | ||||||
* | | | do not mutate parameters, let the caller do mutations | Aaron Patterson | 2014-05-21 | 2 | -4/+6 | |
| | | | ||||||
* | | | push the formatter up to the Route object | Aaron Patterson | 2014-05-21 | 2 | -4/+4 | |
| | | | ||||||
* | | | Merge pull request #15221 from laurelfan/doc-fix-redirecting | Arthur Nogueira Neves | 2014-05-21 | 1 | -4/+8 | |
|\ \ \ | | | | | | | | | fix formatting and text for ActionController::Redirecting doc | |||||
| * | | | fix formatting and text for ActionController::Redirecting doc | Laurel Fan | 2014-05-21 | 1 | -4/+8 | |
| | | | | ||||||
* | | | | Merge pull request #15213 from tgxworld/remove_redundant_code | Rafael Mendonça França | 2014-05-20 | 1 | -3/+2 | |
|\ \ \ \ | |/ / / |/| | | | Remove redundant code. | |||||
| * | | | Remove redundant code. | Guo Xiang Tan | 2014-05-20 | 1 | -3/+2 | |
| | | | | ||||||
* | | | | we don't use this parameter for anything, so rm | Aaron Patterson | 2014-05-20 | 3 | -22/+21 | |
| | | | | ||||||
* | | | | fewer string allocations per url_for | Aaron Patterson | 2014-05-20 | 1 | -7/+5 | |
| | | | | ||||||
* | | | | mutate the path string to avoid object allocations | Aaron Patterson | 2014-05-20 | 1 | -4/+4 | |
| | | | | ||||||
* | | | | push only_path conditional up | Aaron Patterson | 2014-05-20 | 1 | -18/+19 | |
| | | | | ||||||
* | | | | push arg checking up | Aaron Patterson | 2014-05-20 | 1 | -4/+4 | |
| | | | | ||||||
* | | | | fewer method calls and string garbage when there is no user/password | Aaron Patterson | 2014-05-20 | 1 | -9/+5 | |
| | | | | ||||||
* | | | | fewer hash allocations when calling url_for | Aaron Patterson | 2014-05-20 | 1 | -9/+12 | |
| | | | | ||||||
* | | | | fix variable names, only pass hashes to the positional args method | Aaron Patterson | 2014-05-20 | 1 | -8/+10 | |
| | | | | ||||||
* | | | | Merge pull request #11346 from tomykaira/fix_10257 | Rafael Mendonça França | 2014-05-20 | 2 | -2/+21 | |
|\ \ \ \ | | | | | | | | | | | Check authentication scheme in Basic auth | |||||
| * | | | | Run login_procedure only when the auth_scheme is valid | tomykaira | 2013-07-08 | 1 | -7/+14 | |
| | | | | | ||||||
| * | | | | Check authentication scheme in Basic auth | tomykaira | 2013-07-07 | 2 | -1/+13 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `authenticate_with_http_basic` and its families should check the authentication schema is "Basic". Different schema, such as OAuth2 Bearer should be rejected by basic auth, but it was passing as the test shows. This fixes #10257. | |||||
* | | | | | remove dead code | Aaron Patterson | 2014-05-20 | 1 | -57/+0 | |
| | | | | | ||||||
* | | | | | cache the formatter on the path object | Aaron Patterson | 2014-05-20 | 2 | -2/+6 | |
| | | | | | ||||||
* | | | | | translate AST to a formatter before url generation | Aaron Patterson | 2014-05-20 | 2 | -1/+72 | |
| | | | | | ||||||
* | | | | | prepopulate the dispatch cache so we don't need the ThreadSafe cache. | Aaron Patterson | 2014-05-20 | 1 | -7/+9 | |
| | | | | | ||||||
* | | | | | make the each visitor top-down left-right | Aaron Patterson | 2014-05-20 | 1 | -1/+1 | |
| | | | | | ||||||
* | | | | | Merge pull request #15182 from zuhao/refactor_actionpack_respond_with_test_2 | Yves Senn | 2014-05-20 | 1 | -4/+10 | |
|\ \ \ \ \ | | | | | | | | | | | | | Un-define :to_json for Customer class after stubbing. | |||||
| * | | | | | Add using_resouce_with_json to controller. | Zuhao Wan | 2014-05-20 | 1 | -4/+10 | |
| | |/ / / | |/| | | | ||||||
* | | | | | Merge pull request #15178 from zuhao/refactor_actionpack_respond_with_test | Yves Senn | 2014-05-20 | 2 | -0/+35 | |
|\ \ \ \ \ | | | | | | | | | | | | | Deregister csv renderer after test to prevent leak. | |||||
| * | | | | | Add ActionController::Renderers.remove. | Zuhao Wan | 2014-05-20 | 2 | -0/+35 | |
| |/ / / / | ||||||
* | | | | | make the AST go from left to right, rather than right to left | Aaron Patterson | 2014-05-19 | 2 | -45/+48 | |
| | | | | |