jjzjj

RubyGems

全部标签

ruby-on-rails - 为 Ruby gem 创建安装生成器

我是构建Rubygems的新手,正在尝试我的第一个。我正在为我的gem编写一个生成器,它将在我的Rails应用程序中生成一个迁移。我希望将gem简单地包含在Rails应用程序中,运行“railsgmygem:install”以创建迁移,然后运行“rakedb:migrate”以完成所有操作。我已经找到了几种不同的方法来完成类似的任务,但到目前为止没有任何效果。我似乎无法让Rails应用程序找到生成器。我尝试过的最新指南位于此处:http://www.railsdispatch.com/posts/how-rails-3-enables-more-choices-part-1.这是我当前

ruby - 两个 gem 共享相同的要求?

当我打电话时:require'retryable'这两个gem冲突:https://github.com/robertsosinski/retryablehttps://github.com/carlo/retryable因为他们都有一个“可重试”文件,所以他们要求用户要求。我对使用第一个gem很感兴趣,但这并不总是会发生。这段代码作为我自己的gem的一部分执行,它必须对所有用户都是可靠的。有没有办法从gem中专门要求(因为gem名称当然不同)?如何解决这个命名冲突?编辑:澄清一下,这是官方仓库,gem名称实际上是不同的(“retryable-rb”和“carlo-retryable”

ruby - 我的 ruby 有问题

总是同样的错误:AilixdeMacBook-Pro:~Ailix$ruby-vruby2.0.0p481(2014-05-08revision45883)[universal.x86_64-darwin14]AilixdeMacBook-Pro:~Ailix$ruby-dException`LoadError'at/Library/Ruby/Site/2.0.0/rubygems.rb:1240-cannotloadsuchfile--rubygems/defaults/operating_systemException`LoadError'at/Library/Ruby/Site/

ruby - 处理 gem 依赖项中错误修复的最佳方法是什么?

我有一个依赖于另一个gem的gem(在RubyGems上可用)。那个依赖的gem有一个我最近修复的错误。不幸的是,那个依赖的gem几乎已经死了;它已经很多年没有更新了,而且所有者不再在GitHub上活跃,根本,更不用说提交这个gem了,所以我不希望我的补丁会被接受——肯定不会很快。鉴于此,处理此依赖gem的补丁版本的最佳方法是什么?我是否将它fork并上传一个新的gem(使用新名称)到RubyGems,并依赖它?我是否以某种方式将我的固定版本与我自己的gem打包在一起? 最佳答案 首先,检查有问题的gem的许可证(以及您的代码的许可

ruby - 如何在 Ruby 中使用 OpenID 访问 Google 通讯录

我正在使用devise登录omniauth,authid。当用户登录时,我得到user_info:name:RiccardoTacconilast_name:Tacconiemail:email@gmail.comfirst_name:Riccardouid:https://www.google.com/accounts/o8/id?id=xxxxxxxxxprovider:google_apps我找到了一个插件:http://stakeventures.com/articles/2009/10/06/portable-contacts-in-ruby获取Google通讯录。我只需要使

Ruby 守护进程日志轮换

当我为Daemons(1.1.0)gem设置日志记录参数时,我将如何实现与此行类似的行为?logger=Logger.new('foo.log',10,1024000)守护进程选项:options={:ARGV=>['start'],:dir_mode=>:normal,:dir=>log_dir,:multiple=>false,:ontop=>false:mode=>:exec,:backtrace=>true,:log_output=>true} 最佳答案 不幸的是,Daemonsgem不使用Logger。它将STDOUT和S

ruby-on-rails - Gem::InstallError: celluloid 需要 Ruby 版本 >= 1.9.2

我正在尝试安装GitLabCI,但出现此错误。Gem::InstallError:celluloidrequiresRubyversion>=1.9.2.Anerroroccurredwhileinstallingcelluloid(0.12.4),andBundlercannotcontinue.Makesurethat`geminstallcelluloid-v'0.12.4'`succeedsbeforebundling.但是,我认为我的ruby是最新的。#ruby--versionruby1.9.3p286(2012-10-12revision37165)[i686-linux

ruby - 开发Ruby gem时如何添加 "pry"

我有一个叫做“something”的gem。我想在开发gem时将pry添加为开发依赖项。但是我不知道如何加载它。如果我在lib/something.rb中有“requiresomething”,当我释放gem时,它会抛出一个LoadError,因为pry只是一个开发依赖项。与此同时,我不想在提交代码时继续添加和删除pry。只有在开发应用程序时才需要pry,而不需要将其作为gem的依赖项的最佳方法是什么? 最佳答案 您可以使用add_development_dependency在gemspec文件中。您仍然需要在begin..resc

ruby-on-rails - 更新 Ruby-Gems 时出现未知主机错误

我正在尝试使用以下方法更新ruby​​gems:gemupdate--system但是我得到了错误:ERROR:Whileexecutinggem...(Gem::RemoteFetcher::UnknownHostError)nosuchname(https://rubygems.org/specs.4.8.gz). 最佳答案 不确定您安装的是哪个版本的ruby​​gems,但是可以通过三种方式修复:网络问题-稍后重试。您的版本已变砖无法更新,您需要以其他方式安装NOTE:RubyGems1.1and1.2haveproblems

ruby - 有没有办法让文件夹包含在生产构建中但不让 jekyll 编译它?

我认为最好的例子是images/文件夹或node_modules/用于将图像和依赖项包含在最终构建中,而无需花费很长时间编译。编辑:抱歉没有具体说明,但我很清楚keep_files和exclude两者都对我的情况没有帮助。exclude从编译和站点构建中排除文件夹和文件,并且每次都需要额外的流水线工具来手动移动它们。keep_files要求文件首先存在于最终构建中,这对于某些生产环境(GitHub的gh-pages等)是不可能的 最佳答案 你可能想看看这个:ExcludingadirectoryfromJekyllwatchP.S.