Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/ISSUE_TEMPLATE/A.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
name: Having trouble getting started?
about: Please contact us at support@bugsnag.com for assistance with integrating Bugsnag
about: Please contact us at support@bugsnag.com for assistance with integrating BugSnag
into your application.
title: ''
labels: ''
assignees: ''

---
Please checkout our [documentation](https://docs.bugsnag.com/platforms/ruby/) for guides, references and tutorials.
Please check out our [documentation](https://docs.bugsnag.com/platforms/ruby/) for guides, references and tutorials.

If you have questions about your integration please contact us at [support@bugsnag.com](mailto:support@bugsnag.com).
If you have questions about your integration, please contact us at [support@bugsnag.com](mailto:support@bugsnag.com).

Alternatively, view additional options at [support.md](../SUPPORT.md).
Alternatively, view additional options at [SUPPORT.md](../SUPPORT.md).
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ assignees: ''

---

<!-- Before raising, please check if somebody else has already reported your issue. -->
<!-- Before raising, please check whether somebody else has already reported your issue. -->

### Describe the bug
A clear and concise description of what the bug is.
Expand All @@ -19,7 +19,7 @@ A clear and concise description of what the bug is.
4. See error

### Environment
* Bugsnag version:
* BugSnag version:
* Ruby version:
* Bundle version:
* Integration framework version:
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ assignees: ''

---

<!-- Before creating, please check if somebody else has already reported your feature request. -->
<!-- Before creating, please check whether somebody else has already reported your feature request. -->

### Description
<!-- Is your feature request related to a problem? Please describe.
Expand Down
28 changes: 28 additions & 0 deletions .github/SUPPORT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
## Are you having trouble getting started?
If you haven't already, please check out our [documentation](https://docs.bugsnag.com/platforms/ruby/) for guides, references and tutorials.

Or, if you wish, you can [contact us directly](mailto:support@bugsnag.com) for assistance on integrating BugSnag into your application, troubleshooting an issue, or if you have a question about our supported features.

When contacting support, please include as much information as necessary, including:

- example code snippet
- steps to reproduce
- expected/actual behaviour

* BugSnag version:
* Ruby version:
* Bundle version:
* Integration framework version:
* Que:
* Rack
* Rails:
* Rake:
* Sidekiq:
* Other:

## Bug or Feature Requests
If you would like to raise a bug or feature request, please do so by creating a [New Issue](https://github.com/bugsnag/bugsnag-ruby/issues/new/choose) and selecting bug or feature.
Please note: we cannot promise that we will fulfil all requests

## Pull Requests
If you have made a fix and would like to raise a pull request, please read our [CONTRIBUTING.md](../CONTRIBUTING.md) file before creating the pull request.
28 changes: 0 additions & 28 deletions .github/support.md

This file was deleted.

30 changes: 21 additions & 9 deletions .github/workflows/maze-runner.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@ jobs:
strategy:
fail-fast: false
matrix:
ruby-version: ['1.9', '3.4']
# Ruby 1.9/2.0 skipped pending PLAT-14387
#ruby-version: ['1.9', '3.4']
ruby-version: ['3.4']

uses: ./.github/workflows/run-maze-runner.yml
with:
Expand All @@ -18,7 +20,9 @@ jobs:
strategy:
fail-fast: false
matrix:
ruby-version: ['2.0', '3.0']
# Ruby 1.9/2.0 skipped pending PLAT-14387
#ruby-version: ['2.0', '3.0']
ruby-version: ['3.0']

uses: ./.github/workflows/run-maze-runner.yml
with:
Expand All @@ -30,8 +34,9 @@ jobs:
fail-fast: false
matrix:
include:
- ruby-version: '1.9'
rack-version: '1'
# Ruby 1.9/2.0 skipped pending PLAT-14387
#- ruby-version: '1.9'
# rack-version: '1'
- ruby-version: '3.0'
rack-version: '1'
- ruby-version: '2.2'
Expand All @@ -54,8 +59,9 @@ jobs:
fail-fast: false
matrix:
include:
- ruby-version: '2.0'
que-version: '0.14'
# Ruby 1.9/2.0 skipped pending PLAT-14387
#- ruby-version: '2.0'
# que-version: '0.14'
- ruby-version: '2.5'
que-version: '0.14'
- ruby-version: '2.5'
Expand Down Expand Up @@ -113,8 +119,9 @@ jobs:
ruby-version: ['2.2', '2.5']
rails-version: ['3', '4', '5']
include:
- ruby-version: '2.0'
rails-version: '3'
# Ruby 1.9/2.0 skipped pending PLAT-14387
#- ruby-version: '2.0'
# rails-version: '3'
- ruby-version: '2.6'
rails-version: '5'
exclude:
Expand Down Expand Up @@ -159,6 +166,9 @@ jobs:
rails-version: '8'
- ruby-version: '3.4'
rails-version: '_integrations'
# 2.7 integrations skipped pending PLAT-14389
- ruby-version: '2.7'
rails-version: '_integrations'

uses: ./.github/workflows/run-maze-runner.yml
with:
Expand All @@ -170,7 +180,9 @@ jobs:
strategy:
fail-fast: false
matrix:
ruby-version: ['1.9', '2.0', '2.1', '2.2', '2.3', '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3', '3.4']
# Ruby 1.9/2.0 skipped pending PLAT-14387
#ruby-version: ['1.9', '2.0', '2.1', '2.2', '2.3', '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3', '3.4']
ruby-version: ['2.1', '2.2', '2.3', '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3', '3.4']

uses: ./.github/workflows/run-maze-runner.yml
with:
Expand Down
5 changes: 1 addition & 4 deletions .github/workflows/test-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,12 @@ jobs:
optional-groups: ['test sidekiq']
include:
- ruby-version: '1.9'
os: 'ubuntu-20.04'
os: 'ubuntu-22.04'
optional-groups: 'test'
- ruby-version: '2.0'
optional-groups: 'test'
- ruby-version: '2.1'
optional-groups: 'test'
- ruby-version: '2.2'
optional-groups: 'test sidekiq'
os: 'ubuntu-20.04'
- ruby-version: 'jruby'
optional-groups: 'test'

Expand Down
2 changes: 1 addition & 1 deletion Gemfile-maze-runner
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
source "https://rubygems.org"

gem 'bugsnag-maze-runner', git: 'https://github.com/bugsnag/maze-runner', tag: 'v7.10.1'
gem 'bugsnag-maze-runner', '~> 9.0'
12 changes: 12 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Security Policy

## Supported Versions

| Version | Supported |
| ------- | --------------------- |
| 5.x | Critical patches only |
| 6.x | Yes |

## Reporting a Vulnerability

If you find a vulnerability in this SDK, please report it to our [Security Team](mailto:security@smartbear.com) for review.
1 change: 1 addition & 0 deletions features/fixtures/rails3/app/config/boot.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
require 'logger'
require 'rubygems'

# Set up gems listed in the Gemfile.
Expand Down
1 change: 1 addition & 0 deletions features/fixtures/rails4/app/config/boot.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Set up gems listed in the Gemfile.
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)

require 'logger'
require 'bundler/setup' if File.exists?(ENV['BUNDLE_GEMFILE'])
1 change: 1 addition & 0 deletions features/fixtures/rails5/app/config/boot.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)

require 'logger'
require 'bundler/setup' # Set up gems listed in the Gemfile.
1 change: 1 addition & 0 deletions features/fixtures/rails6/app/config/boot.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)

require "logger"
require 'bundler/setup' # Set up gems listed in the Gemfile.
require 'bootsnap/setup' # Speed up boot time by caching expensive operations.
1 change: 1 addition & 0 deletions features/fixtures/rails7/app/config/boot.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)

require "logger"
require "bundler/setup" # Set up gems listed in the Gemfile.
require "bootsnap/setup" # Speed up boot time by caching expensive operations.
2 changes: 1 addition & 1 deletion features/plain_features/auto_notify.feature
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ Feature: Auto notify configuration option
Scenario: When Auto-notify is false notifications are not sent
Given I set environment variable "BUGSNAG_AUTO_NOTIFY" to "false"
When I run the service "plain-ruby" with the command "bundle exec ruby configuration/send_unhandled.rb"
Then I should receive no requests
Then I should receive no errors
2 changes: 1 addition & 1 deletion features/plain_features/handled_errors.feature
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ Scenario: A notified string sends a report

Scenario: A handled error doesn't send a report when the :skip_bugsnag flag is set
When I run the service "plain-ruby" with the command "bundle exec ruby handled/ignore_exception.rb"
Then I should receive no requests
Then I should receive no errors

Scenario: A handled error can attach metadata in a block
When I run the service "plain-ruby" with the command "bundle exec ruby handled/block_metadata.rb"
Expand Down
2 changes: 1 addition & 1 deletion features/plain_features/ignore_classes.feature
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Feature: Plain ignore classes

Scenario Outline: An errors class is in the ignore_classes array
When I run the service "plain-ruby" with the command "bundle exec ruby ignore_classes/<state>.rb"
Then I should receive no requests
Then I should receive no errors

Examples:
| state |
Expand Down
2 changes: 1 addition & 1 deletion features/plain_features/ignore_report.feature
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Feature: Plain ignore report
Scenario Outline: A reports severity can be modified
Given I set environment variable "CALLBACK_INITIATOR" to "<initiator>"
When I run the service "plain-ruby" with the command "bundle exec ruby report_modification/ignore_report.rb"
Then I should receive no requests
Then I should receive no errors

Examples:
| initiator |
Expand Down
2 changes: 1 addition & 1 deletion features/plain_features/release_stages.feature
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Scenario: Doesn't notify in the wrong release stage
Given I set environment variable "BUGSNAG_NOTIFY_RELEASE_STAGE" to "stage_one"
And I set environment variable "BUGSNAG_RELEASE_STAGE" to "stage_two"
When I run the service "plain-ruby" with the command "bundle exec ruby configuration/send_unhandled.rb"
Then I should receive no requests
Then I should receive no errors

Scenario: Does notify in the correct release stage
Given I set environment variable "BUGSNAG_NOTIFY_RELEASE_STAGE" to "stage_one"
Expand Down
2 changes: 1 addition & 1 deletion features/plain_features/unhandled_errors.feature
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Scenario Outline: An unhandled error sends a report

Scenario Outline: An unhandled error doesn't send a report
When I run the service "plain-ruby" with the command "<command> unhandled/<file>.rb"
Then I should receive no requests
Then I should receive no errors

Examples:
| file | command |
Expand Down
2 changes: 1 addition & 1 deletion features/rails_features/auto_capture_sessions.feature
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Scenario: Auto_capture_sessions can be set to false in the initializer
Given I set environment variable "BUGSNAG_AUTO_CAPTURE_SESSIONS" to "false"
And I start the rails service
When I navigate to the route "/session_tracking/initializer" on the rails app
Then I should receive no requests
Then I should receive no sessions

@rails3 @rails4 @rails5 @rails6 @rails7 @rails8
Scenario: Manual sessions are still sent if Auto_capture_sessions is false
Expand Down
4 changes: 2 additions & 2 deletions features/rails_features/auto_notify.feature
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Scenario: Auto_notify set to false in the initializer prevents unhandled error s
Given I set environment variable "BUGSNAG_AUTO_NOTIFY" to "false"
And I start the rails service
When I navigate to the route "/auto_notify/unhandled" on the rails app
Then I should receive no requests
Then I should receive no errors

@rails3 @rails4 @rails5 @rails6 @rails7 @rails8
Scenario: Auto_notify set to false in the initializer still sends handled errors
Expand All @@ -24,7 +24,7 @@ Scenario: Auto_notify set to false in the initializer still sends handled errors
Scenario: Auto_notify set to false after the initializer prevents unhandled error sending
Given I start the rails service
When I navigate to the route "/auto_notify/unhandled_after" on the rails app
Then I should receive no requests
Then I should receive no errors

@rails3 @rails4 @rails5 @rails6 @rails7 @rails8
Scenario: Auto_notify set to false after the initializer still sends handled errors
Expand Down
4 changes: 2 additions & 2 deletions features/rails_features/ignore_classes.feature
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@ Scenario: Ignore_classes can be set to a different value in initializer
Given I set environment variable "BUGSNAG_IGNORE_CLASS" to "IgnoredError"
And I start the rails service
When I navigate to the route "/ignore_classes/initializer" on the rails app
Then I should receive no requests
Then I should receive no errors

@rails3 @rails4 @rails5 @rails6 @rails7 @rails8
Scenario: Ignore_classes can be set to a different value after initializer
Given I start the rails service
When I navigate to the route "/ignore_classes/after?ignore=IgnoredError" on the rails app
Then I should receive no requests
Then I should receive no errors
8 changes: 4 additions & 4 deletions features/rails_features/integrations.feature
Original file line number Diff line number Diff line change
Expand Up @@ -238,28 +238,28 @@ Scenario: Using Sidekiq as the Active Job queue adapter for a job that works
And I start the rails service
And I run "bundle exec sidekiq" in the rails app in the background
When I run the "fixture:queue_working_job" rake task in the rails app
Then I should receive no requests
Then I should receive no errors

@rails_integrations
Scenario: Using Resque as the Active Job queue adapter for a job that works
Given I set environment variable "ACTIVE_JOB_QUEUE_ADAPTER" to "resque"
And I start the rails service
And I run "bundle exec rake resque:work" in the rails app in the background
When I run the "fixture:queue_working_job" rake task in the rails app
Then I should receive no requests
Then I should receive no errors

@rails_integrations
Scenario: Using Que as the Active Job queue adapter for a job that works
Given I set environment variable "ACTIVE_JOB_QUEUE_ADAPTER" to "que"
And I start the rails service with the database
And I run "bundle exec que -q default ./config/environment.rb" in the rails app in the background
When I run the "fixture:queue_working_job" rake task in the rails app
Then I should receive no requests
Then I should receive no errors

@rails_integrations
Scenario: Using Delayed Job as the Active Job queue adapter for a job that works
Given I set environment variable "ACTIVE_JOB_QUEUE_ADAPTER" to "delayed_job"
And I start the rails service with the database
And I run the "jobs:work" rake task in the rails app in the background
When I run the "fixture:queue_working_job" rake task in the rails app
Then I should receive no requests
Then I should receive no errors
2 changes: 2 additions & 0 deletions spec/fixtures/apps/rails-invalid-initializer-config/config.ru
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
require 'logger'

Bundler.require

run InitializerConfigApp ||= Class.new(Rails::Application) {
Expand Down
2 changes: 2 additions & 0 deletions spec/fixtures/apps/rails-no-config/config.ru
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
require 'logger'

Bundler.require

run NoConfigApp ||= Class.new(Rails::Application) {
Expand Down
Loading
Loading