Coder Social home page Coder Social logo

ianks / octodown Goto Github PK

View Code? Open in Web Editor NEW
692.0 8.0 35.0 1.77 MB

Github markdown previewing straight from your shell.

License: MIT License

Ruby 78.25% CSS 7.91% HTML 13.84%
markdown-editor github-markdown github-flavored-markdown readme-md vim ruby

octodown's Introduction

:octocat: octodown

GemVersion Build Status

Ever wanted to easily preview what your markdown would look like exactly on Github? Ever wanted to do that from inside of a Terminal?

Octodown uses the same parsers and CSS that Github uses for their markdown rendering. Github markdown styling looks beautiful, so it is Octodown's primary goal to reproduce it as faithfully as possible.

Octodown GIF


Features

  • πŸ†• Edit your markdown like a boss with LiveReload.

    • octodown README.md
  • Uses the same markdown parsers and CSS as Github for true duplication.

    • Yes emojis are included. 😈
  • Fast. octodown uses native parsers to ensure performance.

  • Multiple CSS styles.

    • octodown --style atom README.md
    • The github markdown (default)
    • The atom text editor markdown
  • Properly parses STDIN.

    • cat README.md | octodown --stdin

Installation

Requirements: Ruby >= 2.0

  1. Install icu4c and cmake:
  • Mac: brew install icu4c cmake pkg-config
  • Apt: sudo apt-get install -y libicu-dev cmake pkg-config ruby-dev
  1. Install octodown:
  • If you have a non-system Ruby (highly recommended): gem install octodown
  • Else: sudo gem install octodown

Usage in VIM (optional):

  • Use asyncrun.vim:

    " Plug 'skywind3000/asyncrun.vim' in your vimrc or init.nvim
    
    :AsyncRun octodown %
    
    " or, run whenever a mardown document is opened
    
    autocmd FileType markdown :AsyncRun octodown %
  • Use Dispatch and add this to your ~/.vimrc:

    " Use octodown as default build command for Markdown files
    autocmd FileType markdown let b:dispatch = 'octodown %'
  • Caveat: make sure you follow the directions on the Dispatch README.md and make sure that the correct version of Ruby (the one which as Octodown install as a Gem), is used.

Usage

  1. Keeping it simple (choose your files from a menu):
  • octodown
  1. Markdown preview styling:
  • octodown --style atom README.md
  1. Unix lovers:
  • echo '# Hello world!' | octodown --raw --stdin > index.html

Notes

  1. With --stdin, octodown will read STDIN until EOF is reached.
  • In order to work with this mode, type what you want into the input, then press Ctrl-D when finished.

Contributing

  1. Fork it ( https://github.com/ianks/octodown/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Run the test suite (bundle exec rake)
  5. Push to the branch (git push origin my-new-feature)
  6. Create a new Pull Request

octodown's People

Contributors

americodls avatar dependabot-preview[bot] avatar foobarwidget avatar ianks avatar janko avatar jlecour avatar jvirtanen avatar mlr avatar monkbroc avatar munshkr avatar olleolleolle avatar rafasc avatar sandals avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

octodown's Issues

Update unsupported dependencies.

Some of the dependencies we use are no longer supported.

For example: the pipeline filter needed to fix issue #78 is no longer supported or updated by GitHub. Fortunately, there's an active fork.

github-markdown is also unsupported. html-pipeline >=2.6.0 replaced it with commonmarker

From my quick investigation, so far, the only one that seems to be problematic is listen because they only support ruby >= 2.2.45

I updated these, and it passed tests (ruby 2.4.2p198)

'github-markup',              '~> 1.6.1'
'github-linguist',            '~> 5.2.0'
'html-pipeline',              '~> 2.7.0'
'commonmarker',               '~> 0.17.2'
'gemoji',                     '~> 3.0.0'
'html-pipeline-rouge_filter', '~> 1.0.4'
'deckar01-task_list',         '~> 2.0.0' # <- this provides the checkbox support
'launchy',                    '~> 2.4.3'
'rack',                       '~> 2.0.3'
'listen',                     '~> 3.0.3' # investigate (3.1.5 is the current version)
'faye-websocket',             '~> 0.10.7'
'puma',                       '~> 3.10.0'

Should we update these (listen included) and drop support of outdated ruby versions?

Install not working

Hey Ian,

This is a sick app, very much something I'd use.

Unfortunately I can't get it installed. On my Ubuntu 12.04 I can neither find icu4u (maybe I need to add a source or something - I couldn't find anything with a quick search) or use gem install to install octodown.

Here's a ss of the issue.
screenshot 2014-12-24 at 4 41 46 pm

Fails for internal anchor tags

Internal anchor tags are used when you want a link to some other part of the same markdown file. For example:

example.md

<a name="foo"></a>**Hello World**
...
[hello world](#foo)

When previewing this, clicking on the "hello world" link would take you to the "foo" anchor tag in the same file. However, it seems that having this in my markdown file makes octodown break.

Output when I run octodown example.md:

/Users/austinwood/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/octodown-1.1.2/lib/octodown/support/relative_root_filter.rb:55:in `block in filter_links': undefined method `value' for nil:NilClass (NoMethodError)

Does not include linked sections

If you write:

# Header

It does not transform this into:

<h1 id="header">Header</h1>

Therefore it's really not close to GitHub

I will have to go back to use vim-livedown now πŸ‘Ž

Ruby's URI Can't Parse URL Fragments With "#"

Any fragment with a # cannot be parsed by URI:

/tmp >octodown README.md
/Users/sshaw/.rvm/rubies/ruby-2.1.3/lib/ruby/2.1.0/uri/common.rb:176:in `split': bad URI(is not URI?): #array#bsearch-vs-array#find-codecodearraybsearch-vs-findrb (URI::InvalidURIError)
    from /Users/sshaw/.rvm/rubies/ruby-2.1.3/lib/ruby/2.1.0/uri/common.rb:211:in `parse'
    from /Users/sshaw/.rvm/rubies/ruby-2.1.3/lib/ruby/2.1.0/uri/common.rb:747:in `parse'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/octodown-1.0.4/lib/octodown/support/relative_root_filter.rb:22:in `http_uri?'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/octodown-1.0.4/lib/octodown/support/relative_root_filter.rb:55:in `block in filter_links'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/nokogiri-1.6.5/lib/nokogiri/xml/node_set.rb:237:in `block in each'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/nokogiri-1.6.5/lib/nokogiri/xml/node_set.rb:236:in `upto'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/nokogiri-1.6.5/lib/nokogiri/xml/node_set.rb:236:in `each'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/octodown-1.0.4/lib/octodown/support/relative_root_filter.rb:48:in `filter_links'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/octodown-1.0.4/lib/octodown/support/relative_root_filter.rb:12:in `call'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline/filter.rb:137:in `call'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline.rb:121:in `block in perform_filter'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline.rb:159:in `instrument'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline.rb:120:in `perform_filter'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline.rb:106:in `block (2 levels) in call'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline.rb:105:in `each'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline.rb:105:in `inject'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline.rb:105:in `block in call'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline.rb:159:in `instrument'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/html-pipeline-1.11.0/lib/html/pipeline.rb:103:in `call'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/octodown-1.0.4/lib/octodown/renderer/github_markdown.rb:17:in `to_html'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/octodown-1.0.4/lib/octodown/support/helpers.rb:14:in `markdown_to_raw_html'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/octodown-1.0.4/lib/octodown/support/helpers.rb:8:in `markdown_to_html'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/octodown-1.0.4/bin/octodown:42:in `main'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/gems/octodown-1.0.4/bin/octodown:47:in `<top (required)>'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/bin/octodown:23:in `load'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/bin/octodown:23:in `<main>'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/bin/ruby_executable_hooks:15:in `eval'
    from /Users/sshaw/.rvm/gems/ruby-2.1.3/bin/ruby_executable_hooks:15:in `<main>'

Use rouge instead of pygments.rb

From their README: "Rouge is a pure-ruby syntax highlighter."

As of now, we are using https://github.com/tmm1/pygments.rb` which has a Python dependency. Although it is not an issue since most people have a Python binary, I'd like to remove this dependency. We need to research if using Rouge is a feasible option.

If someone wanted to claim this issue, please do so! It is listed on waffle.io.

Dark theme

It would be really nice to have a dark theme in Octodown πŸ˜‰

Can't open temp file on OS X

Hi,

On Yosemite (10.10.1), the temp file looks like octodown20150115-80952-1ab8xc5 without any extension.

The open command opens the file in the browser, but it renders a white page and opens a Finder window for the base directory of the temp file.

If an extension is set (.html for example) the browser (Safari for instance) opens the file just fine.

Unable to load the EventMachine C extension; To use the pure-ruby reactor, require 'em/pure_ruby'

/ >gem install octodown
Fetching octodown-1.9.2.gem
Successfully installed octodown-1.9.2
1 gem installed
/ >octodown something.md
Unable to load the EventMachine C extension; To use the pure-ruby reactor, require 'em/pure_ruby'
Traceback (most recent call last):
	16: from /Users/sshaw/.asdf/installs/ruby/2.7.6/bin/octodown:23:in `<main>'
	15: from /Users/sshaw/.asdf/installs/ruby/2.7.6/bin/octodown:23:in `load'
	14: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/gems/2.7.0/gems/octodown-1.9.2/bin/octodown:4:in `<top (required)>'
	13: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require'
	12: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require'
	11: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/gems/2.7.0/gems/octodown-1.9.2/lib/octodown.rb:8:in `<top (required)>'
	10: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require'
	 9: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require'
	 8: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/gems/2.7.0/gems/octodown-1.9.2/lib/octodown/renderer/server.rb:3:in `<top (required)>'
	 7: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require'
	 6: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require'
	 5: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/gems/2.7.0/gems/faye-websocket-0.11.1/lib/faye/websocket.rb:10:in `<top (required)>'
	 4: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require'
	 3: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require'
	 2: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/gems/2.7.0/gems/eventmachine-1.2.7/lib/eventmachine.rb:8:in `<top (required)>'
	 1: from /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require'
/Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:83:in `require': dlopen(/Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/gems/2.7.0/gems/eventmachine-1.2.7/lib/rubyeventmachine.bundle, 0x0009): symbol not found in flat namespace (_BIO_ctrl) - /Users/sshaw/.asdf/installs/ruby/2.7.6/lib/ruby/gems/2.7.0/gems/eventmachine-1.2.7/lib/rubyeventmachine.bundle (LoadError)

Any reason to not use the pure ruby version suggested by the message? The less dependencies the better is always a good rule for command-line programs.

Add Gemfile.lock

In issue #46 I packaged all native extensions that you use. But this doesn't help if you don't lock down your dependency versions with a Gemfile.lock. Please commit your Gemfile.lock to git.

Hard line breaks within paragraphs

With Octodown 1.8.5, there is a difference in how Octodown and GitHub treat hard line breaks within paragraphs. An example Markdown document:

This should render as
one line.

On GitHub that renders as follows:

This should render as one line.

However, with Octodown 1.8.5 that renders as follows:

This should render as
one line.

The GitHub interpretation appears to be in line with the original Markdown syntax documentation.

Test failure ArgumentError: cannot start from state :processing_events

In Ruby 2.7, 1 test case failed:

Failures:

  1) Octodown::Renderer::Server with option :port serves in the specified port
     Failure/Error: @listener.start

     ArgumentError:
       cannot start from state :processing_events
     # ./vendor/bundle/ruby/2.7.0/gems/listen-3.7.1/lib/listen/listener.rb:97:in `start'
     # ./lib/octodown/support/services/riposter.rb:18:in `call'
     # ./lib/octodown/renderer/server.rb:110:in `register_listener'
     # ./lib/octodown/renderer/server.rb:27:in `present'
     # ./spec/lib/renderer/server_spec.rb:70:in `block (3 levels) in <top (required)>'
     # ./vendor/bundle/ruby/2.7.0/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:124:in `block in run'
     # ./vendor/bundle/ruby/2.7.0/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `loop'
     # ./vendor/bundle/ruby/2.7.0/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `run'
     # ./vendor/bundle/ruby/2.7.0/gems/rspec-retry-0.6.2/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
     # ./vendor/bundle/ruby/2.7.0/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:37:in `block (2 levels) in setup'

Export to PDF

It would be awesome if you could export the result to PDF. I find my self wishing that I was able to use GitHub formatted MD for documents, but nothing does it justice except for Octodown!

Installation instructions don't list ruby-dev

Following https://github.com/ianks/octodown#installation I got this, step 1. should also list ruby-dev:

$ sudo gem install octodown
Fetching: posix-spawn-0.3.9.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing octodown:
    ERROR: Failed to build gem native extension.

    /usr/bin/ruby2.1 extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.1.0/gems/posix-spawn-0.3.9 for inspection.
Results logged to /var/lib/gems/2.1.0/extensions/x86_64-linux/2.1.0/posix-spawn-0.3.9/gem_make.out

Self-contained package for OS X does not run

Referring to issue #40.

I get the following error when I try to run octodown from the self-contained package:

$ ~/Downloads/octodown-1.1.2-osx/octodown
/Users/runar/Downloads/octodown-1.1.2-osx/lib/app/vendor/ruby/2.1.0/gems/posix-spawn-0.3.11/lib/posix/spawn.rb:2:in `require': cannot load such file -- posix_spawn_ext (LoadError)
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/vendor/ruby/2.1.0/gems/posix-spawn-0.3.11/lib/posix/spawn.rb:2:in `<top (required)>'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/vendor/ruby/2.1.0/gems/pygments.rb-0.6.3/lib/pygments/popen.rb:2:in `require'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/vendor/ruby/2.1.0/gems/pygments.rb-0.6.3/lib/pygments/popen.rb:2:in `<top (required)>'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/vendor/ruby/2.1.0/gems/pygments.rb-0.6.3/lib/pygments.rb:1:in `require'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/vendor/ruby/2.1.0/gems/pygments.rb-0.6.3/lib/pygments.rb:1:in `<top (required)>'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/lib/octodown/renderer/github_markdown.rb:2:in `require'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/lib/octodown/renderer/github_markdown.rb:2:in `<top (required)>'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/lib/octodown.rb:3:in `require'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/lib/octodown.rb:3:in `<top (required)>'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/bin/octodown:3:in `require'
        from /Users/runar/Downloads/octodown-1.1.2-osx/lib/app/bin/octodown:3:in `<main>'

I'm on Mac OS X 10.10.3. Do you need any other specifications?

Traveling Ruby package contains redundant files

The files in the directory lib/app/vendor/ruby/2.1.0/cache are redundant. If you remove them you will save 19 MB in your package.

You can probably also remove the directories lib/app/vendor/ruby/2.1.0/gems/*/{test,spec}. This will shave off 9.5 MB of uncompressed files.

You have native extension files inside lib/app/vendor/ruby/2.1.0/gems. Some of these native extensions are duplicates of the ones in lib/app/vendor/ruby/2.1.0/extensions, and can be removed (e.g. nokogiri.bundle). Others are not supplied by Traveling Ruby, and thus are problematic (see #46).

Testing out beta

Looking for some people to check out the newest beta before I write-up and officially release this. If you had it previously installed:

  • gem uninstall octodown && gem install octodown --pre

cc: @BrianNewsom @indiesquidge

Mucho gracias!

Missing Checkboxes

Github has support for checkboxes, please consider adding it. If you are not
familiar with the checkboxes syntax, see
here.

Thanks for making octodown, I enjoy using it.

Update packages for travelling-ruby

To release a new build with travelling Ruby, I need a few new gems in the Travelling Ruby repo.

Namely,

    'rugged-0.24.0b0',
    'nokogumbo-1.4.1',
    'github-markdown-0.6.9',
    'escape_utils-1.1.0',
    'charlock_holmes-0.7.3',
    'thin-1.6.4',
    'eventmachine-1.0.8',
    'ffi-1.9.10'

@FooBarWidget When you get some time, can you look into this?

Live reload doesn't work when Vim does a rename-and-write

Hi,

I'd love this to work, but it just isn't for me.

If I run octodown --live-reload README.md the rendered preview is launched in my browser successfully, and log output shows Recompiling markdown… when I make changes and save, but the preview content never updates. Even if I manually run another separate octodown README.md process while the file watch/server is still running, the temp file that's opened reflects no changes to the rendered output. Only when I Ctrl-C the server and start up a new process are updates reflected. Seems like a caching or locking issue?

In Chrome Dev Tools I see no errors, and inspecting WebSocket frames shows that updates are being received with each file event, but their data is the same in every frame, never reflecting content changes.

$ ruby --version
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin14]

$ gem list octodown

*** LOCAL GEMS ***

octodown (1.4.2)

Let me know if there's any further info that would help.

Package with Traveling Ruby

Not all of your users are Ruby programmers, and those who are not Ruby programmers may have trouble installing Octodown. Maybe you can package Octodown with Traveling Ruby to solve this problem.

List dependencies

So far the known Homebrew depedencies are:

  • Cmake
  • icu4u

Make sure to include those in formula.

Install Failing on OSX Yosemite

Getting this error when I attempt to sudo gem install octodown

$ sudo gem install octodown
Building native extensions.  This could take a while...
ERROR:  Error installing octodown:
    ERROR: Failed to build gem native extension.

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb
checking for gmake... no
checking for make... yes
checking for cmake... yes
checking for pkg-config... no
ERROR: pkg-config is required to build Rugged.
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
    --use-system-libraries


Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/rugged-0.22.0b5 for inspection.
Results logged to /Library/Ruby/Gems/2.0.0/gems/rugged-0.22.0b5/ext/rugged/gem_make.out

puma dependency needs old openssl version

Tried to install with gem install octodown but the version of puma this uses needs another version of openssl. This particular issue is fixed if puma >= 3.7.0.

So I cloned the repo and tried with puma 3.7.0 and the current 3.10.0. It works properly but

bundle exec rake returns the following: (only copied the failures)

Failures:

  1) Integration actually runs...
     Failure/Error: req = Net::HTTP::Get.new('/')
     NameError:
       uninitialized constant Net
     # ./spec/integration_spec.rb:9:in `block (2 levels) in <top (required)>'

  2) Integration fires up a websocket
     Failure/Error: req = Net::HTTP::Get.new('/')
     NameError:
       uninitialized constant Net
     # ./spec/integration_spec.rb:33:in `block (2 levels) in <top (required)>'

Finished in 0.293 seconds (files took 0.58069 seconds to load)
23 examples, 2 failures

Failed examples:

rspec ./spec/integration_spec.rb:2 # Integration actually runs...
rspec ./spec/integration_spec.rb:26 # Integration fires up a websocket

Randomized with seed 33493

Not sure if those are real failures or some missed require / hardcoded ports that didn't match.

Traveling Ruby package contains unsupported native extensions

In your Traveling Ruby package you're using quite a few unsupported native extensions (extensions for which Traveling Ruby provides no binaries). Thus, your package may not work everywhere.

  • rugged
  • posix-spawn
  • nokogumbo
  • github-markdown
  • escape_utils
  • charlock_holmes

I found out by scanning for '*.bundle' files inside lib/app/vendor/ruby/2.1.0/gems.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.