镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Segfaulting with ruby2.0.0 #316

Closed
Closed

Description

@igrigorik

Doesn't happen on every run, but happens very frequently...

a) Checkout "rugged" branch of bugspots [1]
b) bundle exec bin/bugspots /path/to/repo

ruby(30333,0x7fff75c2b310) malloc: *** error for object 0x7fa10cf3f600: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

[1] https://github.com/igrigorik/bugspots/compare/rugged

Activity

  1. arthurschreiber commented on Feb 17, 2014

    @arthurschreiber
    Member

    Rugged 0.19 is broken in many regards. Please use the latest development version until a new version is released.

    Remove rugged from your gemspec, add the following line

    gem 'rugged', git: 'git:https://github.com/libgit2/rugged.git', branch: 'development', submodules: true

    to your Gemfile and re-bundle. I know this is less than optimal, especially if you're working on a gem.

    Your app then works fine:

    Arthurs-iMac-2:bugspots arthur$ bin/bugspots . --branch rugged
    Scanning . repo
        Found 9 bugfix commits, with 3 hotspots:
    
        Fixes:
            - Fix for repositories with spaces in their path.
            - Merge pull request #18 from cleeland/master
            - Fix https://github.com/mojombo/grit/issues/41 using suggestion from msgerbush.
            - Only Track Files at HEAD
            - rename bin script to integrate with native git commands - closes #11
            - Merge pull request #9 from airblade/master
            - Allow imperative form of 'close'.
            - Allow imperative form of 'fix'.
            - refactor + a few fixes
    
        Hotspots:
            0.0027 - bin/git-bugspots
            0.0001 - lib/bugspots/scanner.rb
            0.0000 - bin/bugspots
    
  2. igrigorik commented on Feb 17, 2014

    @igrigorik
    Author

    Thanks, that indeed did the trick.

    Any ETA for when the next version will ship?

  3. arthurschreiber commented on Feb 17, 2014

    @arthurschreiber
    Member

    A new gem release is long overdue, but I guess we want #307 and maybe an updated version of #304 to be merged before we cut another release. Both those PRs contain some significant API changes and upstream fixes from libgit2.

    Unfortunately, there's no ETA yet. 😞

  4. igrigorik commented on Feb 17, 2014

    @igrigorik
    Author

    FWIW, fixing segfaults seems like a great reason for a minor point release. Why couple bugfixes with API changes?

  5. arthurschreiber commented on Feb 17, 2014

    @arthurschreiber
    Member

    //cc @vmg

    In general, I agree with your statement - but neither libgit2 nor Rugged are considered to have a stable API, and often to fix a bug in Rugged we need to update the bundled version of libgit2, which in turn forces us to change / update the Rugged API.

    I'll try to make sure we handle this better in the future.

  6. igrigorik commented on Feb 17, 2014

    @igrigorik
    Author

    neither libgit2 nor Rugged are considered to have a stable API

    This should be put in bold at the top of the readme. The reason I'm here is because grit repo is marked as deprecated and points to rugged. I landed on the readme, read through the API (which is great), and went on to rewrite my code using rugged... Now, you're saying it's actually broken / not-production ready, which means all of my effort was wasted as well.

    Don't get me wrong, love the project and kudos for your work on it... but above experience is, well, poor/frustrating.

  7. vmg commented on Feb 17, 2014

    @vmg
    Member

    Sorry @igrigorik, the version of Rugged we use in production is the tip of development, which is never broken. This is our internal production Gem, and we do not version it internally. We understand this is not idea for other people who cannot/do not want to run the bleeding edge in production, but it's the way we work.

  8. igrigorik commented on Feb 17, 2014

    @igrigorik
    Author

    @vmg sure. I'm just pointing out that other gems can't rely on rugged without introducing a Gemfile into a project. In any case, just FYI... feedback from a frustrated user. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions