Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: rubinius/rubinius
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: aac99d56443e
Choose a base ref
...
head repository: rubinius/rubinius
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: be424e03946f
Choose a head ref

Commits on Feb 22, 2016

  1. Consider an autoload resolved if #resolve didn't return nil in Autolo…

    …ad#call
    
    This fixes cases of autoload "errors" mentioned by @robin850 in
    #2934 (comment)
    and https://gist.github.com/robin850/3eeaed2538f50a9887c2
    
    This is an explanation of the issue:
    We already have A::B been autoloaded by the main thread. When c.rb (see
    any of the previous links) is being autoloaded in another thread, class
    A::B is being opened using Rubinius.open_class_under (through
    Rubinius.open_class).
    Since module A has an Autoload entry for B in its constant_table,
    open_class_under tries to call #call on this Autload object, which returns nil
    because #resolve returns false (CodeLoader.require returns false
    if a feature is already been loaded).
    With nil returned, open_class_under decided to create a new Class object
    for B, which means the autoload entry it already had for :C is lost,
    resulting in constant A::B::C not being found.
    ahmadsherif committed Feb 22, 2016
    Copy the full SHA
    01a7c2f View commit details
  2. Revert "Consider an autoload resolved if #resolve didn't return nil i…

    …n Autoload#call"
    
    CodeLoader.require returning false doesn't necessarily mean the feature
    got loaded.
    
    This reverts commit 01a7c2f.
    
    [ci skip]
    ahmadsherif committed Feb 22, 2016
    3
    Copy the full SHA
    c0c778c View commit details

Commits on Feb 23, 2016

  1. Only build binaries for a specific Ubuntu version.

    [ci skip]
    brixen committed Feb 23, 2016
    Copy the full SHA
    50969f8 View commit details
  2. Use dist version for docker deploy.

    [ci skip]
    brixen committed Feb 23, 2016
    Copy the full SHA
    a8b3449 View commit details
  3. Copy the full SHA
    ce4e526 View commit details
  4. Updated Dockerfile for Ubuntu to include compiler.

    [ci skip]
    brixen committed Feb 23, 2016
    Copy the full SHA
    928f49b View commit details

Commits on Feb 24, 2016

  1. Fix a condition in utilities::logger::append_newline

    The previous condition assumes enough space to append an extra newline
    followed by \0. If we already have a full message buffer, appending would
    overflow and the \0 would corrupt some adjacent variable. If this
    adjacent variable happens to be the guard from the calling function,
    it would be corrupted and fails to unlock its lock, causing other
    logging components to stuck forever waiting for that lock.
    ahmadsherif committed Feb 24, 2016
    Copy the full SHA
    0b4b712 View commit details
  2. Use a clearer condition in utilities::logger::append_newline

    Credits to @brixen, follow-up on 0b4b712.
    
    [ci skip]
    ahmadsherif committed Feb 24, 2016
    Copy the full SHA
    99579cb View commit details
  3. Copy the full SHA
    e62d255 View commit details
  4. Trigger rubinius-build on deploy.

    [ci skip]
    brixen committed Feb 24, 2016
    Copy the full SHA
    3c0dba8 View commit details

Commits on Feb 25, 2016

  1. Use a loop instead of recursion when processing a regex group

    It can blow up the stack if too many characters are inside the group.
    ahmadsherif committed Feb 25, 2016
    Copy the full SHA
    680c9c8 View commit details
  2. Only trigger rubinius-build on linux.

    [ci skip]
    brixen committed Feb 25, 2016
    Copy the full SHA
    e45b261 View commit details

Commits on Feb 27, 2016

  1. Fixed displaying -Xhelp.

    brixen committed Feb 27, 2016
    Copy the full SHA
    9619289 View commit details
  2. Copy the full SHA
    4d8a7ba View commit details
  3. Copy the full SHA
    a780974 View commit details
  4. Added deploy for Heroku.

    [ci skip]
    brixen committed Feb 27, 2016
    Copy the full SHA
    ea2706f View commit details
  5. Added deploy triggers for releases.

    [ci skip]
    brixen committed Feb 27, 2016
    Copy the full SHA
    448cc0a View commit details

Commits on Feb 28, 2016

  1. Log the CodeDB loaded on boot.

    brixen committed Feb 28, 2016
    Copy the full SHA
    cfca89f View commit details
  2. Copy the full SHA
    3579ed6 View commit details
  3. Copy the full SHA
    846259f View commit details
  4. Copy the full SHA
    09b0adc View commit details
  5. Copy the full SHA
    e750812 View commit details
  6. Open core library CodeDB read-only.

    The CodeDB open method needs to be extended to accept an argument for the mode
    to open the CodeDB, allowing for read, write, or read+write before being able
    to use a CodeDB for the runtime compiler cache. For now, we only need to read
    the core library.
    brixen committed Feb 28, 2016
    Copy the full SHA
    df732e8 View commit details
  7. Copy the full SHA
    1cc41dd View commit details
  8. Trigger Docker Hub builds from Linux sub-builds.

    [ci skip]
    brixen committed Feb 28, 2016
    Copy the full SHA
    c677b61 View commit details
  9. Check if feature is already loaded when require returns false in Auto…

    …load#resolve
    
    This solves the issue mentioned in 01a7c2f.
    ahmadsherif committed Feb 28, 2016
    Copy the full SHA
    abac6a4 View commit details
  10. Add a spec for autoloading a constant that was already loaded by anot…

    …her thread
    
    An explanation of the issue can be found in 01a7c2f.
    ahmadsherif committed Feb 28, 2016
    Copy the full SHA
    d5ed6a5 View commit details

Commits on Feb 29, 2016

  1. Updated gems_list.txt.

    brixen committed Feb 29, 2016
    Copy the full SHA
    1eb57bd View commit details
  2. Quarantine Thread#value spec using Thread#kill.

    It's unclear what caused this to start failing, more debugging needed.
    
    The vm()->thread_state()->raise_reason() == cThreadKill except when
    vm_thread_state primitive is called from the Thread#__run__ ensure clause.
    brixen committed Feb 29, 2016
    Copy the full SHA
    b903c1f View commit details
  3. Revert "Updated gems_list.txt."

    This reverts commit 1eb57bd.
    
    For some reason, these updates appear to be causing the failure of the
    spec quarantined in b903c1f.
    brixen committed Feb 29, 2016
    Copy the full SHA
    cfd672a View commit details
  4. Revert "Quarantine Thread#value spec using Thread#kill."

    This reverts commit b903c1f.
    
    See cfd672a
    brixen committed Feb 29, 2016
    Copy the full SHA
    aaba5ff View commit details
  5. Updated gems_list.txt.

    brixen committed Feb 29, 2016
    Copy the full SHA
    a10433d View commit details
  6. Copy the full SHA
    8b32f08 View commit details

Commits on Mar 1, 2016

  1. Hack in new Immix allocator policy.

    This hack introduces a heap growth policy into the allocator. Ultimately,
    the policy needs to define the allocator, or the allocator should be given
    an external policy to interact with. The existing Trigger thing may have
    been intended to do this but doesn't provide interaction (it's one-way).
    
    The goal right now is to stabilize heap growth so that concurrent marking
    can be re-introduced, then the young gen can be re-added.
    brixen committed Mar 1, 2016
    Copy the full SHA
    be424e0 View commit details
Loading