问题标签 [rubinius]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - rbx 测试失败并显示“请求的二进制安装,但没有可供下载的 rubies”
我正在编写一个 gem,我的目标是 Ruby、JRuby 和 Rubinius。我正在使用 Travis CI 来构建我的库。当我以 Ruby 和 JRuby 为目标时,我的 gem 可以正确构建,但是当我以 Rubinius 为目标时,它就不起作用了。这是错误:
这是我的.travis.yml
文件:
gemfiles/Gemfile.travis
:
我的正常Gemfile
:
ruby-on-rails - 用于 ActionView::Helpers::TagHelper 的 Rails 未定义方法
在预生产机器上运行 rails 时出现未定义的方法错误。错误消息如下所示:
错误出现在布局文件中,包含“application.js”的行:
堆栈跟踪如下所示:
我相信这个错误是由于在加载 Haml 时ActionView::Helpers::TagHelper
模块没有定义。content_tag
(相关代码在这里)。由于某种原因,此问题不会出现在其他相同的环境中。任何人都可以为此问题提出修复/解决方法吗?
[更新]
这只发生在开发模式下。我正在使用 rbx-2.2.6、actionpack 版本 4.0.2 和 haml 4.0.5
ruby - Rubinius 和 JRuby 怎么可能这么慢?
我决定看看迭代一个哈希数组需要多长时间。下面是代码:
时间是通过从循环之前的当前时间减去循环之后的当前时间来计算的。
根据代码中的数学计算,这是 YARV 2.1.1 中计算所花费的时间:
以下是 Rubinius 2.2.6 所用的时间:
和 jRuby 1.7.12
据说 Rubinius 和 jRuby 比 YARV 具有性能优势。为什么他们需要几乎 12 倍的时间来执行相同的基本操作?这是正常的还是我配置不正确?
ruby - 在 rvm 下安装 rubinius 时导致此错误的原因是什么?
我似乎无法在 rvm 下安装最新的 rubinius(rvm 似乎工作正常,其他 rubies 可以毫无问题地安装)。错误日志如下:
有谁知道这可能是什么?我错过了一些明显的东西吗?我试图运行的命令很简单:
由于它可能是相关的,因此前面还有一条额外的警告线:
这似乎只是说它是从源代码编译的(这不应该是问题)。系统是arch linux。
actor - Rubinius 的 Actor API 在哪里?
在使用 Rubinius 2.2.9pry
尝试来自http://rubini.us/doc/en/systems/concurrency/的示例时,我得到了以下输出:
文档是否已过时?
llvm - Can I generate LLVM bytecode with Rubinius and run it with lli?
I've tried running rbx compile
but I am not quite sure what to do with the output. I would like to run it with lli, but I get the following error.
ruby-on-rails - NoMethodError 间歇性使用订单
我在生产 Rails 应用程序中间歇性地收到以下错误
违规行如下所示:
Thing 是一个 activerecord 模型。
奇怪的是,当我重新启动应用程序时,错误消失了。只有在一些奇怪的情况下才会发生这种情况(我无法在 preprod/dev 环境中重现)。
有没有人遇到过这样的事情?谁能建议我如何诊断这个错误?有问题的行似乎不是问题(生产中的日志也没有显示完整的堆栈跟踪)
rvm - 无法在 OSX Maverics 上使用 rvm 安装 rbx
在 OSx Mavrics 上使用 rvm 安装 rbx-2.2.6 时出现以下链接错误。我使用自制软件安装了 llvm。
有人可以帮我解决这个问题吗?
架构 x86_64 的未定义符号:“llvm::TargetRegistry::lookupTarget(std::basic_string, std::allocator > const&, std::basic_string, std::allocator >&)”,引用自:rubinius::JITDisassembler:: JITDisassembler(void*, unsigned long) in disassembler.cpp.o "llvm::report_fatal_error(std::basic_string, std::allocator > const&)",引用自:rubinius::jit::RubiniusJITMemoryManager::getPointerToNamedFunction(std: :basic_string, std::allocator > const&, bool)in jit_memory_manager.cpp.o "llvm::sys::Memory::ReleaseRWX(llvm::sys::MemoryBlock&, std::basic_string, std::allocator > )" ,引用自:rubinius::jit::JITSlabAllocator::Deallocate(llvm::MemSlab) 在 jit_memory_manager.cpp.o rubinius::jit::RubiniusJITMemoryManager::~RubiniusJITMemoryManager() 在 jit_memory_manager.cpp.o "llvm::sys::Memory::AllocateRWX(unsigned long, llvm::sys::MemoryBlock const* , std::basic_string, std::allocator > )",引用自:rubinius::jit::RubiniusJITMemoryManager::allocateNewSlab(unsigned long)in jit_memory_manager.cpp.o "llvm::sys::Memory::setWritable(llvm ::sys::MemoryBlock&, std::basic_string, std::allocator >)",引用自: rubinius::jit::RubiniusRequestJITMemoryManager::setMemoryWritable() in jit_context.cpp.o "llvm::sys::Memory::setExecutable(llvm::sys::MemoryBlock&, std::basic_string, std ::allocator >*)”,引用自:rubinius::jit::RubiniusRequestJITMemoryManager::setMemoryExecutable() in jit_context.cpp.o "llvm::FunctionPass::createPrinterPass(llvm::raw_ostream&, std::basic_string, std: :allocator > const&) const",引用自:
架构 x86_64 的未定义符号:“llvm::TargetRegistry::lookupTarget(std::basic_string, std::allocator > const&, std::basic_string, std::allocator >&)”,引用自:rubinius::JITDisassembler:: JITDisassembler(void*, unsigned long) in disassembler.cpp.o "llvm::report_fatal_error(std::basic_string, std::allocator > const&)",引用自:rubinius::jit::RubiniusJITMemoryManager::getPointerToNamedFunction(std: :basic_string, std::allocator > const&, bool)in jit_memory_manager.cpp.o "llvm::sys::Memory::ReleaseRWX(llvm::sys::MemoryBlock&, std::basic_string, std::allocator > )" ,引用自:rubinius::jit::JITSlabAllocator::Deallocate(llvm::MemSlab) 在 jit_memory_manager.cpp.o rubinius::jit::RubiniusJITMemoryManager::~RubiniusJITMemoryManager() 在 jit_memory_manager.cpp.o "llvm::sys::Memory::AllocateRWX(unsigned long, llvm::sys::MemoryBlock const* , std::basic_string, std::allocator > )",引用自:rubinius::jit::RubiniusJITMemoryManager::allocateNewSlab(unsigned long)in jit_memory_manager.cpp.o "llvm::sys::Memory::setWritable(llvm ::sys::MemoryBlock&, std::basic_string, std::allocator >)",引用自: rubinius::jit::RubiniusRequestJITMemoryManager::setMemoryWritable() in jit_context.cpp.o "llvm::sys::Memory::setExecutable(llvm::sys::MemoryBlock&, std::basic_string, std ::allocator >*)”,引用自:rubinius::jit::RubiniusRequestJITMemoryManager::setMemoryExecutable() in jit_context.cpp.o "llvm::FunctionPass::createPrinterPass(llvm::raw_ostream&, std::basic_string, std: :allocator > const&) const",引用自:
ruby-on-rails - 根据 url 路径分隔线程
我正在使用 Puma 和 Nginx 运行我的 Rubinius 应用程序。
我想分开我的 url 请求。
第一个用于 api 请求,第二个用于其他请求。
我认为 Puma 已经进行了线程处理,但我想确保 Web 请求不会阻塞导致我的 api 请求期间停止的线程。我想如果一个线程很忙,Puma 会创建另一个线程,但我想确保一个线程始终可用于 api 请求。
我的主要观点是为我的用户最需要的 url 请求“保存”一个线程。
谢谢你的光。
ruby-on-rails - 在 Rubinius 2.1.0 中使用 binding_of_caller gem 时出错
一旦服务器启动,在 Rubinius (2.1.0) 环境的 gem 列表中使用 binding_of_caller 会触发以下错误:
(截图:https ://www.dropbox.com/s/a8a7afzgwb5aq2k/Screen%20Shot%202015-01-13%20at%2010.58.36.png?dl=0?dl=1 )
这是宝石文件:
这是由 binding_of_caller 引起的,因为删除后,一切正常。
你知道如何在 rbx 中仍然使用 binding_of_caller 还是我必须放弃它?谢谢。