appsignal 2.8.0 → 2.8.1.alpha.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +9 -1
- data/CHANGELOG.md +3 -0
- data/Rakefile +1 -0
- data/ext/extconf.rb +40 -6
- data/gemfiles/capistrano3.gemfile +1 -0
- data/lib/appsignal/version.rb +1 -1
- metadata +5 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6e0fd938587f34bee839867fa82429bdf95bbd6b5f49720a01eb6fdeac029045
|
4
|
+
data.tar.gz: a854ec47f1be275ac6ac48116458bb6c1547e27af142e513dbca1a21387b03f2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 267a3d4ae5fc3805e9427494d1a4c3472f7a85fd12ca9645e486e1aca98623637e2d7b6dab5192d662c1f74903091d6508df168c1c0d92ef49f83cddae3e0f17
|
7
|
+
data.tar.gz: 2e25ece6dd6b5551ce8bc86ba25a6b955f819ddada78ee599cfbd4357cc7a437ca2be73f99a662ddb923f636003ff85e0d717914a29f5c39ee56d0abffad6788
|
data/.travis.yml
CHANGED
@@ -15,6 +15,7 @@ rvm:
|
|
15
15
|
- "2.3.8"
|
16
16
|
- "2.4.5"
|
17
17
|
- "2.5.3"
|
18
|
+
- "2.6.0"
|
18
19
|
- "jruby-19mode"
|
19
20
|
|
20
21
|
gemfile:
|
@@ -56,6 +57,10 @@ matrix:
|
|
56
57
|
gemfile: "gemfiles/rails-4.0.gemfile"
|
57
58
|
- rvm: "2.5.3"
|
58
59
|
gemfile: "gemfiles/rails-4.1.gemfile"
|
60
|
+
- rvm: "2.6.0"
|
61
|
+
gemfile: "gemfiles/rails-4.0.gemfile"
|
62
|
+
- rvm: "2.6.0"
|
63
|
+
gemfile: "gemfiles/rails-4.1.gemfile"
|
59
64
|
|
60
65
|
allow_failures:
|
61
66
|
- rvm: "2.4.5"
|
@@ -70,9 +75,12 @@ env:
|
|
70
75
|
- "JRUBY_OPTS=''" # Workaround https://github.com/travis-ci/travis-ci/issues/6471
|
71
76
|
|
72
77
|
before_install:
|
73
|
-
- "gem update --system"
|
78
|
+
- "gem update --system 2.7.8"
|
74
79
|
- "gem update bundler"
|
75
80
|
before_script:
|
76
81
|
- "bundle exec rake extension:install"
|
82
|
+
after_failure:
|
83
|
+
- "find . -name ext/install.log -exec cat {} \\;"
|
84
|
+
- "find . -name ext/mkmf.log -exec cat {} \\;"
|
77
85
|
|
78
86
|
script: "bundle exec rake test"
|
data/CHANGELOG.md
CHANGED
data/Rakefile
CHANGED
data/ext/extconf.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require File.expand_path("../../lib/appsignal/version.rb", __FILE__)
|
2
2
|
require File.expand_path("../base.rb", __FILE__)
|
3
3
|
|
4
|
-
def install
|
4
|
+
def install # rubocop:disable Metrics/CyclomaticComplexity
|
5
5
|
logger.info "Installing appsignal agent #{Appsignal::VERSION} for Ruby #{RUBY_VERSION} on #{RUBY_PLATFORM}"
|
6
6
|
write_agent_architecture
|
7
7
|
return unless check_architecture
|
@@ -16,18 +16,22 @@ def install
|
|
16
16
|
unarchive(archive)
|
17
17
|
end
|
18
18
|
|
19
|
+
is_linux_system = [
|
20
|
+
Appsignal::System::LINUX_TARGET,
|
21
|
+
Appsignal::System::MUSL_TARGET
|
22
|
+
].include?(PLATFORM)
|
23
|
+
|
19
24
|
logger.info "Creating makefile"
|
20
25
|
require "mkmf"
|
26
|
+
|
27
|
+
link_libraries if is_linux_system
|
28
|
+
|
21
29
|
if !have_library("appsignal", "appsignal_start", "appsignal.h")
|
22
30
|
installation_failed "Aborting installation, libappsignal.a or appsignal.h not found"
|
23
31
|
elsif !find_executable("appsignal-agent", EXT_PATH)
|
24
32
|
installation_failed "Aborting installation, appsignal-agent not found"
|
25
33
|
else
|
26
|
-
|
27
|
-
Appsignal::System::LINUX_TARGET,
|
28
|
-
Appsignal::System::MUSL_TARGET
|
29
|
-
].include?(PLATFORM)
|
30
|
-
if with_static_link
|
34
|
+
if is_linux_system
|
31
35
|
# Statically link libgcc and libgcc_s libraries.
|
32
36
|
# Dependencies of the libappsignal extension library.
|
33
37
|
# If the gem is installed on a host with build tools installed, but is
|
@@ -45,4 +49,34 @@ rescue => ex
|
|
45
49
|
end
|
46
50
|
end
|
47
51
|
|
52
|
+
# Ruby 2.6 requires us to statically link more libraries we use in our
|
53
|
+
# extension library than previous versions. Needed for normal Linux libc
|
54
|
+
# and musl builds.
|
55
|
+
def link_libraries
|
56
|
+
if RbConfig::CONFIG["THREAD_MODEL"] == "pthread"
|
57
|
+
logger.info "Linking extension against 'pthread' library"
|
58
|
+
# Link gem extension against pthread library
|
59
|
+
have_library "pthread"
|
60
|
+
have_required_function "pthread_create"
|
61
|
+
end
|
62
|
+
|
63
|
+
# Links gem extension against the `dl` library. This is needed when Ruby is
|
64
|
+
# not linked against `dl` itself, so link it on the gem extension.
|
65
|
+
logger.info "Linking extension against 'dl' library"
|
66
|
+
have_library "dl"
|
67
|
+
# Check if functions are available now from the linked library
|
68
|
+
%w[dlopen dlclose dlsym].each do |func|
|
69
|
+
have_required_function func
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
def have_required_function(func) # rubocop:disable Naming/PredicateName
|
74
|
+
return if have_func(func)
|
75
|
+
|
76
|
+
installation_failed "Aborting installation, missing function '#{func}'"
|
77
|
+
# Exit with true/0/success because the AppSignal installation should never
|
78
|
+
# break a build
|
79
|
+
exit
|
80
|
+
end
|
81
|
+
|
48
82
|
install
|
data/lib/appsignal/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: appsignal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.8.
|
4
|
+
version: 2.8.1.alpha.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Beekman
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-12-
|
12
|
+
date: 2018-12-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rack
|
@@ -364,12 +364,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
364
364
|
version: '1.9'
|
365
365
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
366
366
|
requirements:
|
367
|
-
- - "
|
367
|
+
- - ">"
|
368
368
|
- !ruby/object:Gem::Version
|
369
|
-
version:
|
369
|
+
version: 1.3.1
|
370
370
|
requirements: []
|
371
|
-
|
372
|
-
rubygems_version: 2.7.6
|
371
|
+
rubygems_version: 3.0.1
|
373
372
|
signing_key:
|
374
373
|
specification_version: 4
|
375
374
|
summary: Logs performance and exception data from your app to appsignal.com
|