Closed daBee closed 2 years ago
Anybody home?
Do you have Rosetta 2 installed? I don't have an apple silicon Mac to test this on, but my theory is that the ruby installed by rbenv has accidentally had an amd64 lib installed alongside an arm64 lib and the wrong one got loaded. Can you run this command?
find ~/.rbenv -type f \( -perm +111 -o -name '*.so' -o -name '*.dylib' \) -exec sh -c 'lipo -archs {} 2>/dev/null >/dev/null' \; -print | xargs -n1 lipo -info
I do not have Rosetta 2
installed. That instruction is hanging silent. You want me to chase this up with rbenv
?
Not necessarily, perhaps try updating rubygems first per: https://stackoverflow.com/questions/70026904/ruby-on-rails-error-superclass-mismatch-for-class-stringio-typeerror/70047278
Ya updated and shifted to various versions. Persists.
Well, that was a complete dead end.
Not a ruby
issue apparently. Wasn't given any insight at all. Can we run with your file search above? It hung, both then and now. Tried this, still hung blank:
find /Users/rich/.rbenv/versions/2.7.4 -type f \( -perm +111 -o -name '*.so' -o -name '*.dylib' \)
tried sudo
on original command:
>> 20:29:49 rich@HQ3 2.7.4 ➜ sudo find ~/.rbenv -type f \( -perm +111 -o -name '*.so' -o -name '*.dylib' \) -exec sh -c 'lipo -archs {} 2>/dev/null >/dev/null' \; -print | xargs -n1 lipo -infofind /Users/rich/.rbenv/versions/2.7.4 -type f | bbedit
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: unknown flag: -infofind
Hmm, the lipo
-infofind
flag is definitely present for my version. Can you check the CLT version, I see you're using Monterey which I can't yet update to due to homebrew incompetence. Can you run pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
? I'm not 100% sure the package name remained the same for monterey as compared to big sur, but i'm sure we can figure this out.
>> 21:59:28 rich@HQ3 2.7.4 ➜ pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
package-id: com.apple.pkg.CLTools_Executables
version: 13.1.0.0.1.1633545042
volume: /
location: /
install-time: 1637640606
groups: com.apple.FindSystemFiles.pkg-group
Ok so your dev tools are newer than mine. That's a bit difficult, but we can probably manage. Can you tell me what man lipo | pbcopy
puts into your clipboard (just paste into the reply here)? There might be a new flag we can use.
Yes. I was told by brew doctor
that I needed to update them. Sys Prefs:Software Update won't do that. softwareupdate
was the way to go.
>> 1:28:12 rich@HQ3 2.7.4 ➜ man lipo | pbcopy
>> 1:28:13 rich@HQ3 2.7.4 ➜
Sorry I didn't explain very well, the man lipo | pbcopy
command puts the contents of the lipo man page in your clipboard, so it's already copied, and you can just paste it here. you don't copy the output from the terminal, as that overwrites the stuff that the command puts there.
OK wasn't sure where you were going with that. I also use Launchbar
and the clipboard entries had nothing. Also piping to pbcopy
sends bad text for some reason. Here it is.
LIPO(1) General Commands Manual LIPO(1)
NAME
lipo - create or operate on universal files
SYNOPSIS
lipo input_file command [option...]
DESCRIPTION
The lipo tool creates or operates on ``universal'' (multi-architecture) files. Generally, lipo reads a single input
file and writes to a single output file, although some commands and options accept multiple input files. lipo will
only ever write to a single output file, and input files are never modified in place.
lipo supports a number of commands for creating universal files from single-architecture files, extracting single-
architecture files from universal files, and displaying architecture information. lipo can only perform one such
command at a time, although some command flags may appear more than once. Some commands support additional options that
can be used with that command. In addition, there are global options that are supported by multiple commands.
The arch_type arguments may be any of the supported architecture names listed in the man page arch(3).
COMMANDS
-archs Display only the architecture names present in a single input file. Each architecture name is a single word,
making this option suitable for shell scripting. Unknown architectures will be represented by "unknown" along
with the numeric CPU type and CPU subtype values as a single word.
-create
Create one universal output file from one or more input files. When input files specified on the command-line,
all of the architectures in each file will be copied into the output file, whereas when input files are included
using the global -arch option, only the specified architecture will be copied from that input file. This
command requires the -output option.
-detailed_info
Display a detailed list of the architecture types in the input universal file (all the the information in the
universal header, for each architecture in the file).
-extract arch_type [-extract arch_type...]
Take one universal input file and copy the arch_type from that universal file into a universal output file
containing only that architecture. This command requires the -output option.
-extract_family arch_type [-extract_family arch_type...]
Take one universal input file and copy all of the arch_types for the family that arch_type is in from that
universal file into an output file containing only those architectures. The file will be thin if only one
architecture is found or universal otherwise. This command requires the -output option.
-info Display a brief description of each input file along with the names of each architecture type in that input
file.
-remove arch_type [-remove arch_type ...]
Take one universal input file and remove the arch_type from that universal file, placing the result in the
output file. This command requires the -output option.
-replace arch_type file_name [-replace arch_type file_name...]
Take one universal input file; in the output file, replace the arch_type contents of the input file with the
contents of the specified file_name. This command requires the -output option.
-thin arch_type
Take one input file and create a thin output file with the specified arch_type. This command requires the
-output option.
-verify_arch arch_type ...
Take one input file and verify the specified arch_types are present in the file. If so then exit with a status
of 0 else exit with a status of 1. Because more than one arch_type can be verified at once, all of the input
files must appear before the -verify_arch flag on the command-line.
OPTIONS
-arch arch_type input_file
Tells lipo that input_file contains the specified architecture type. The -arch arch_type specification is
unnecessary if input_file is an object file, a universal file, or some other file whose architecture(s) lipo can
figure out.
-hideARM64
When creating a universal binary including both 32-bit and 64-bit ARM files, this option will ask lipo to add
the 64-bit files at the end and not include them in the count of architectures present in the file. The files
must be executable files (Mach-O filetype MH_EXECUTE). This option has no effect if neither 32-bit ARM nor
64-bit ARM files are present, and no other files may be hidden in this way. This option only works with the
-create, -remove, and -replace, commands, and is only intended for tools and workflows testing a workaround on
older systems.
-output output_file
Commands that create new files write to the output file specified by the -output flag. This option is required
for the -create, -extract, -extract_family, -remove, -replace, and -thin commands.
-segalign arch_type value
Set the segment alignment of the specified arch_type when creating a universal file containing that
architecture. value is a hexadecimal number that must be an integral power of 2. This is only needed when lipo
can't figure out the alignment of an input file (currently not an object file), or when it guesses at the
alignment too conservatively. The default for files unknown to lipo is 0 (2^0, or an alignment of one byte),
and the default alignment for archives is 4 (2^2, or 4-byte alignment).
SEE ALSO
arch(3)
Apple Computer, Inc. August 31, 2018 LIPO(1)
(END)
oh hah, nevermind i noticed that your command above had extra stuff added at the end:
find ~/.rbenv -type f \( -perm +111 -o -name '*.so' -o -name '*.dylib' \) -exec sh -c 'lipo -archs {} 2>/dev/null >/dev/null' \; -print | xargs -n1 lipo -info
is the command, and: find /Users/rich/.rbenv/versions/2.7.4 -type f | bbedit
was added somehow.
Anyway, depending on how many ruby versions you have installed, and how many gems, that command can take a long time; as it finds every executable file, and library, and then checks the architectures (to filter out script files), and then prints the architectures for the non script files.
You can do a small test by running lipo -info ~/.rbenv/versions/2.7.4/bin/ruby
, which should print something about being an arm executable, but the idea is to check for non arm libraries that might be loaded and cause issues.
OK, I can perform that if you like. I tried reducing the instructions to see if any results would pop back, but still nothing.
Here is the small test result:
>> 2:28:36 rich@HQ3 ~ ➜ lipo -info ~/.rbenv/versions/2.7.4/bin/ruby
Non-fat file: /Users/rich/.rbenv/versions/2.7.4/bin/ruby is architecture: arm64
Still performing that find. 4 versions of Ruby
and it's still going.
A partner notified us of this happening just when Docker was rebooted on Ruby 2.7.3 on phusion/passenger-ruby27:1.0.16, we then went into trying to upgrade and had to upgrade to Docker Passenger v.2.0.1 (and Ruby 2.7.4) due to the issue of that certificate issue with v1 and now have this same error on a clean Docker-based installation.
App 4332 output: Using /usr/local/rvm/gems/ruby-2.7.4
App 4332 output: /usr/local/rvm/rubies/ruby-2.7.4/lib/ruby/2.7.0/x86_64-linux/etc.so: warning: already initialized constant Etc::VERSION
App 4332 output: /usr/local/rvm/rubies/ruby-2.7.4/lib/ruby/2.7.0/x86_64-linux/etc.so: warning: already initialized constant Etc::SC_AIO_LISTIO_MAX
App 4332 output: /usr/local/rvm/rubies/ruby-2.7.4/lib/ruby/2.7.0/x86_64-linux/etc.so: warning: already initialized constant Etc::SC_AIO_MAX
.... lot more of those....
App 4332 output: /usr/local/rvm/rubies/ruby-2.7.4/lib/ruby/2.7.0/x86_64-linux/etc.so: warning: already initialized constant Etc::PC_SYNC_IO
App 4332 output: /usr/local/rvm/rubies/ruby-2.7.4/lib/ruby/2.7.0/x86_64-linux/etc.so: warning: already initialized constant Struct::Passwd
App 4332 output: /usr/local/rvm/rubies/ruby-2.7.4/lib/ruby/2.7.0/x86_64-linux/etc.so: warning: already initialized constant Struct::Group
App 4332 output: Error: The application encountered the following error: superclass mismatch for class StringIO (TypeError)
App 4332 output: /home/app/oav_website/vendor/bundle/ruby/2.7.0/gems/psych-4.0.2/lib/psych/nodes/node.rb:2:in `require'
Our app works fine on Ubuntu with rails s, only doing this under Passenger. Here is the Dockerfile https://github.com/CitizensFoundation/docker-open-active-voting/blob/oav-configuration-v-1/Dockerfile
The warnings imply that you depend on the etc
gem for your app, which is included in the default gems that come with ruby so if you have etc
in your gemfile, removing it might remove those warnings.
As for the StringIO superclass mismatch, since it's happening with both rvm and rbenv and on both docker and macOS, I'm guessing that there's an issue with the psych gem, it wouldn't be the first time.
However it might be possible to work around it. What path do you have set as your passenger_ruby? the rbenv shim or the direct path to the ruby executable?
passenger_ruby /usr/bin/ruby2.7; It's like that in the nginx.conf
No, we're not not using etc gem and it does not show up in Gemfile.lock which is here: https://github.com/CitizensFoundation/oav-configuration/blob/master/Gemfile.lock
We upgraded from psych 3.x to 4.x to try to fix this issue.
Everything works fine on Ubuntu using rails s both with psych 3.x and 4.x - this problem is only happening in our Passenger Docker setup.
We've been trying to fix this issue all day and we have been updating everything we can - not ready yet to go to Ruby 3.x though...
Maybe change the passenger_ruby to /usr/local/rvm/wrappers/ruby-2.7.4/ruby
, and see if that fixes the environment.
Unfortunately, that did not work.
I then removed the psych gem but that results in the same psych error but now with the, I guess, built in version.
So all of this has been working until a partner got in touch today saying that the app is causing an internal server error with "superclass mismatch for class StringIO" in the logs - they were not running docker build, just that the server (and docker image) got restarted and suddenly this error starts to happen. Like docker-passenger somehow autoupdated? Had been working for months. Until we started to upgrade today to try to fix this we was running under this docker image: phusion/passenger-ruby27:1.0.16
Now we are running: FROM phusion/passenger-ruby27:2.0.1 but trying now again with just phusion/passenger-ruby27. Didn't make a difference still same error.
psych (4.0.2, default: 3.1.0)
ruby 2.7.4p191 (2021-07-07 revision a21a3b7d23) [arm64-darwin21]
passenger: stable 6.0.12 (bottled), HEAD
##### passenger_files_comparator.rb #####
Suggested / current / suggested exists?:
load_module /opt/homebrew/opt/passenger/libexec/modules/ngx_http_passenger_module.so;
load_module /opt/homebrew/opt/passenger/libexec/modules/ngx_http_passenger_module.so;
true
passenger_root /opt/homebrew/opt/passenger/libexec/src/ruby_supportlib/phusion_passenger/locations.ini;
passenger_root /opt/homebrew/opt/passenger/libexec/src/ruby_supportlib/phusion_passenger/locations.ini;
true
passenger_ruby /usr/bin/ruby;
passenger_ruby /Users/rich/.rbenv/shims/ruby; DIFFERENT
true
4 versions of Ruby
(never used system
), find command still working. Heh.
2.7.2
2.7.3
* 2.7.4 (set by /Users/rich/.ruby-version)
3.0.2
We're trying different things I've been downgrading the passenger gem step by step and testing the app in the docker setup. Now at 6.0.5, and then something interesting happened. The "superclass mismatch for class StringIO" is still there but all the warnings about already initialized constants disappeared.
Probably something unrelated to the superclass problem but all the warnings came back when we went down to version 6.0.4.
I just did a bundle doctor
, and this came up. Not sure if it's significant:
The following gems are missing OS dependencies:
* argon2: /usr/lib/libSystem.B.dylib
* bcrypt: /usr/lib/libSystem.B.dylib
* date: /usr/lib/libSystem.B.dylib
* ffi: /usr/lib/libSystem.B.dylib
* ffi: /usr/lib/libffi.dylib
* json: /usr/lib/libSystem.B.dylib
* libxml-ruby: /usr/lib/libSystem.B.dylib
* libxml-ruby: /usr/lib/libxml2.2.dylib
* murmurhash3: /usr/lib/libSystem.B.dylib
* nokogiri: /usr/lib/libSystem.B.dylib
* nokogiri: /usr/lib/liblzma.5.dylib
* nokogiri: /usr/lib/libobjc.A.dylib
* openssl: /usr/lib/libSystem.B.dylib
* pg: /usr/lib/libSystem.B.dylib
* racc: /usr/lib/libSystem.B.dylib
* rmagick: /usr/lib/libSystem.B.dylib
* stringio: /usr/lib/libSystem.B.dylib
* unf_ext: /usr/lib/libSystem.B.dylib
* unf_ext: /usr/lib/libc++.1.dylib
* websocket-driver: /usr/lib/libSystem.B.dylib
If libsystem is missing that is a big deal. Can you check that manually? It might be that apple finally moved to libsystem.C due to a compatibility break, or changed the path, in which case ruby and some gems might need to update their build scripts.
None of these exist:
ls: /usr/lib/libc++.1.dylib: No such file or directory
ls: /usr/lib/libffi.dylib: No such file or directory
ls: /usr/lib/liblzma.5.dylib: No such file or directory
ls: /usr/lib/libobjc.A.dylib: No such file or directory
ls: /usr/lib/libSystem.B.dylib: No such file or directory
ls: /usr/lib/libxml2.2.dylib: No such file or directory
Update: oops, let me redo this...
Is the double lib prefix just a typo in your comment here?
BTW that original find
has finished, with no results:
find ~/.rbenv -type f \( -perm +111 -o -name '*.so' -o -name '*.dylib' \) -exec sh -c 'lipo -archs {} 2>/dev/null >/dev/null' \; -print | xargs -n1 lipo -info
I'm going to remove two versions and try it again. I might have an alias conflict.
Can you run lipo -archs ~/.rbenv/versions/2.7.4/bin/ruby
? it's bizarre that nothing printed at all from the find command.
Ya like I said I might have some conflicts with some aliases
I took out. I have an alias
addiction that needs attention.
>> 15:32:54 rich@HQ3 ~ ➜ lipo -archs ~/.rbenv/versions/2.7.4/bin/ruby
arm64
@CamJN We have created a minimal case to reproduce this with only rails, mysql2 & passenger gems in the Gemfile and are still hitting this crash with docker-passenger 2.0.1 on a fresh 20.04 Ubuntu installation. The apps are working fine running outside the passenger-docker environment.
All of our open-source digital democracy apps that use Rails and this setup are broken and a participatory budgeting project in Ireland has had to be postponed because of this problem and we're getting a bit desperate.
Can you check those core files and see if you see any problems?: https://github.com/CitizensFoundation/oav-configuration/blob/master/Gemfile https://github.com/CitizensFoundation/docker-open-active-voting/blob/oav-configuration-v-1/Dockerfile https://github.com/CitizensFoundation/docker-open-active-voting/blob/oav-configuration-v-1/nginx.conf
Here is a (5 minutes) installation guide for one of our apps on a fresh Ubuntu 20.04 installation that replicates this crash: https://docs.google.com/document/d/1vAOLv6uY-S5QbMiPv6iu6mtiQeSjMWo-EKiUEiw-LNA/edit#heading=h.bs6ews97qim5
We're back in business! After downgrading to Ruby 2.6.8 and phusion/passenger-ruby26 it is working again! It looks like only the phusion/passenger-ruby27 image is broken.
But the other strange thing is still the 50-60 warnings that come like this:
I'm glad you're up and running again, and thanks for the reproduction setup i'll look into this to see what i can find out on my end.
What does that translate to using homebrew
? I'd like to be functional this weekend after two weeks dead stop.
@rbjarnason You can reduce the warnings a LOT by running gem uninstall etc
to remove the extra etc
gem. According to this: app gem update
is how the extra etc gem gets installed.
@rbjarnason
/home/app/oav_website/config/application.rb:8
OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE
you're the one causing the redefinition of OpenSSL::SSL::VERIFY_PEER
.
@daBee looking back, it looks like you've also got gems installed both by the ruby version itself, and by rubygems.
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/2.7.0/fileutils.rb:1284: warning: already initialized constant FileUtils::Entry_::S_IF_DOOR
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/fileutils-1.6.0/lib/fileutils.rb:1269: warning: previous definition of S_IF_DOOR was here
So perhaps by clearing out the versions installed by rubygems, you can get things running?
@CamJN Thanks for the pointers and help. And not to forget thanks for the excellent Passenger package that has served us and our partners well for close to a decade in digital democracy projects around the world! :) We were planning to wait on the Ruby upgrade until v. 3.1 so will keep an eye on this ticket regarding getting 2.7 working again - let me know if you have any questions in terms of replicating the problem.
@CamJN OK, tried gem uninstall -aIx
then bundle install
and same issue. I'm thinking rbenv
installed openssl
but bundle
installed sinatra
. Worked before for years.
Note: I have several subdomains
on my dev box. so rbenv
is used to manage realms
of gems
.
superclass mismatch for class StringIO (TypeError)
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/2.7.0/openssl/config.rb:14:in `require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/2.7.0/openssl/config.rb:14:in `<top (required)>'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/2.7.0/openssl.rb:18:in `require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/2.7.0/openssl.rb:18:in `<top (required)>'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/rack-2.2.3/lib/rack/session/cookie.rb:3:in `require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/rack-2.2.3/lib/rack/session/cookie.rb:3:in `<top (required)>'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/sinatra-2.1.0/lib/sinatra/base.rb:1809:in `require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/sinatra-2.1.0/lib/sinatra/base.rb:1809:in `<class:Base>'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/sinatra-2.1.0/lib/sinatra/base.rb:909:in `<module:Sinatra>'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/sinatra-2.1.0/lib/sinatra/base.rb:22:in `<top (required)>'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/sinatra-2.1.0/lib/sinatra/main.rb:26:in `require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/sinatra-2.1.0/lib/sinatra/main.rb:26:in `<module:Sinatra>'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/sinatra-2.1.0/lib/sinatra/main.rb:1:in `<top (required)>'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/sinatra-2.1.0/lib/sinatra.rb:1:in `require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/gems/2.7.0/gems/sinatra-2.1.0/lib/sinatra.rb:1:in `<top (required)>'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/site_ruby/2.7.0/bundler/runtime.rb:60:in `require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/site_ruby/2.7.0/bundler/runtime.rb:60:in `block (2 levels) in require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/site_ruby/2.7.0/bundler/runtime.rb:55:in `each'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/site_ruby/2.7.0/bundler/runtime.rb:55:in `block in require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/site_ruby/2.7.0/bundler/runtime.rb:44:in `each'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/site_ruby/2.7.0/bundler/runtime.rb:44:in `require'
/Users/rich/.rbenv/versions/2.7.4/lib/ruby/site_ruby/2.7.0/bundler.rb:175:in `require'
/Users/rich/Sites/HQ/app.rb:4:in `<top (required)>'
Ok this is officially really bothering me. Why would a Passenger
instance show this error while zsh
instances not throw errors using the same 4 versions of ruby
? If it's a language problem, it would show up.
Bundler.require
is the culprit, even with two gems
. I'm going to make a minimal site as requested elsewhere by someone. I gotta get onto docker
. None of my other vhosts
work. I'm shut down.
@FooBarWidget any thoughts? This is pretty weird.
StringIO
is apparently the culprit, with the StringIO default 0.1.0
and StringIO 3.0.1
versions dancing together somehow. Just thought I'd put this here. See #5108 above. StringIO
had an update late just over a month ago.
I'm going to close this as @CamJN knows about our discussion in rubygems/rubygems#5108
Issue report
Fill in as much as possible so that we can understand, find and fix the problem.
Are you sure this is a bug in Passenger? I've checked the directives I've been given for the
.so
and.ini
files and they are correct. The nature of the error tells me this is aPassenger
error. I've restarted the machine, restartednginx
, and all this started after an update to bothhomebrew
andgems
while trying different versions ofRuby
, currently set to 2.7.4 (see the reports).Please try with the newest version of Passenger to avoid issues that have already been fixed Currently 6.0.11_1
Question 1: What is the problem?
Errors and no website. Expected website. I get a Passenger error:
Some passenger info from a script I wrote:
Question 7: Anything else about your setup that we should know?
Your answer: This happened from a recent update to
passenger
,nginx
throughgems
andhomebrew
update. Not sure I have much else that I can report.