Commits on Oct 17, 2017
  1. Bump version to 3.8.pre

    samphippen committed Oct 17, 2017
  2. Releases 3.7.0

    samphippen committed Oct 17, 2017
Commits on Oct 5, 2017
  1. Keep rubocop comment directives out of Yardoc

    myrridin committed with JonRowe Oct 5, 2017
Commits on Aug 13, 2017
  1. Add errors_outside_of_examples_count to json output (#2448)

    abicky committed with JonRowe Aug 13, 2017
    We run rspec in several workers and summarize their results
    using JSON output, so it is useful if the JSON includes
    errors_outside_of_examples_count information.
Commits on Jul 17, 2017
  1. Skip unnecessary `:context|:all` hooks

    devonestes committed Jul 12, 2017
    This makes that previous test pass, and the test suite is still green,
    so I'm _assuming_ that this works and doesn't break other stuff!
    However, I'd be happy to make any alterations if this doesn't look like
    it's the right way of tackling this problem.
Commits on Jun 28, 2017
  1. Limiting string allocations in skipped example notifications.

    pat committed Jun 28, 2017
Commits on Jun 17, 2017
  1. Merge pull request #2433 from lvrbrtsn/patch-1

    myronmarston committed Jun 17, 2017
    Change comment in base_formatter.rb
Commits on Jun 16, 2017
  1. Add -n short option for --next-failure

    ianks committed Jun 16, 2017
Commits on Jun 13, 2017
  1. Create base_formatter.rb

    lvrbrtsn committed Jun 13, 2017
    BaseTextFormatter inherits BaseFromatter but BaseFormatters comments says
    "RSpec's built-in formatters are all subclasses of  RSpec::Core::Formatters::BaseTextFormatter."
Commits on May 26, 2017
  1. Reworking string handling to allow frozen string literals.

    pat committed May 26, 2017
    Feedback from @myronmarston taken into account.
Commits on May 22, 2017
  1. Frozen string literal fixes. (#2425)

    pat committed with JonRowe May 22, 2017
    Not sure if I've got everything covered, but this is enough to get one of my test suites passing.
Commits on May 5, 2017
  1. Bump version to 3.7.0.pre

    samphippen committed May 5, 2017
Commits on May 4, 2017
  1. Releases 3.6.0

    samphippen committed May 4, 2017
  2. Merge pull request #2419 from rspec/fix-output-stream-followups

    myronmarston committed May 4, 2017
    Follow up to #2401
  3. Turn summary line red when there's any error occured outside of examples

    yujinakayama committed May 4, 2017
    Follow-up to #2351.
  4. Use exported source classes in rspec-support

    yujinakayama committed Apr 10, 2017
Commits on May 3, 2017
  1. Add output stream changing for created formatters (#2401)

    dzjuck committed with JonRowe May 3, 2017
    * Remove StringIO special case from BaseTextFormatter
    
    * Add output wrapper
Commits on Apr 20, 2017
  1. No Error -> No error (#2417)

    myronmarston committed with JonRowe Apr 20, 2017
    There is no reason to capitalize it.
  2. issue an error if memoized helpers try to define a reserved keyword (#…

    JonRowe committed Apr 20, 2017
Commits on Apr 18, 2017
  1. Remove inaccurate comment.

    myronmarston committed Apr 18, 2017
Commits on Mar 31, 2017
  1. Add pending to valid statuses

    matrinox committed Mar 31, 2017
    Add spec to check that all the valid statuses are not defaulted to unknown
    -----------------------------------------------------------
    On branch master - Thu 30 Mar 2017 17:07:58 PDT by matrinox <geofflee25@gmail.com>
Commits on Mar 27, 2017
  1. Default example status to unknown if corrupt (#2360)

    matrinox committed with myronmarston Mar 27, 2017
    * Default example status to unknown if corrupt
    -----------------------------------------------------------
    On branch master - Mon 12 Dec 2016 10:49:57 PST by matrinox <geoff.lee@lendesk.com>
    
    * Add spec for when examples.txt file are corrupted
    -----------------------------------------------------------
    On branch master - Mon 20 Mar 2017 12:01:23 PDT by matrinox <geofflee25@gmail.com>
    
    * Default status to UNKNOWN_STATUS if it's valid or nil
    Made changes based on @myronmarston feedback
    -----------------------------------------------------------
    On branch master - Thu 23 Mar 2017 14:46:27 PDT by matrinox <geofflee25@gmail.com>
Commits on Mar 16, 2017
  1. Fix bugs where when_first_matching_example_defined hooks would fire m…

    yujinakayama committed Mar 15, 2017
    …ultiple times
    
    We need to properly unregister the hook from the original hook collection
    (@items_and_filters in FilterableItemRepository::QueryOptimized)
    rather than the memoized cache.
Commits on Mar 6, 2017
  1. mock_with -> expect_with [ci skip] (#2398)

    bquorning committed with JonRowe Mar 6, 2017
    The `config.mock_with` block is right above. For configuring the expectation
    library's syntax, we must use `config.expect_with`.
  2. Add boundary check to prevent unexpected negative value (#2396)

    VTJamie committed with JonRowe Mar 6, 2017
    Added a group level boundary check to prevent unexpected negative values in group level in DocumentationFormatter
Commits on Feb 23, 2017
  1. Merge pull request #2387 from jenseng/fix-example-finished

    JonRowe committed Feb 23, 2017
    Ensure example_finished gets reported from context-hook failures
Commits on Feb 21, 2017
  1. Add seed section into JSON formatter (#2388)

    takkanm committed with JonRowe Feb 21, 2017
    * add seed information to json output
Commits on Feb 15, 2017
  1. Ensure example_finished gets reported from context-hook failures

    jenseng committed Feb 15, 2017
    Regression in c0564a3
    
    `#reporter` is a `RSpec::Core::NullReporter` at this point, so pass along
    the correct `reporter` argument.
Commits on Feb 11, 2017
  1. Fix exception backtraces on JRuby. Fixes #2299.

    DavidEGrayson committed with JonRowe Jan 31, 2017
Commits on Jan 31, 2017
  1. Allow streams to be used for multiple runs in a single process.

    Xavier Shay committed with myronmarston Jan 15, 2017
        RSpec.configure { |c| c.output_stream = File.open('testout', 'w') }
        RSpec::Core::Runner.run(["spec1"])
        RSpec::Core::Runner.run(["spec2"])
    
    This implementation is possibly a can of worms, but I _think_ I know
    what I'm doing?
    
    * close does not guarantee anymore durability than flush. To ensure "no
      bytes are lost" an fsync would be needed. Not tackling that here,
      instead just removing the relevant spec since it wasn't valid.
    * BaseFormatter contains logic to save and restore sync, which is broken
      for closed streams. The restore method was patched in the past, but
      the start method wasn't. Also, these methods aren't reliably called
      since BaseTextFormatter doesn't call super. This all probably needs a
      rethink.
    * The one reason to close would be to ensure that we don't leak file
      handles. The only time this could cause a problem is if the process
      did a heap of work _after_ rspec was finished running but before
      exiting (or in our specs if we're not careful!). In that case, since
      it's likely the object would still have an active reference via global
      configuration, it would stay open. I think this is a weird enough
      case, and small enough impact, that we're better off just letting
      process exit or GC close the file. It's also somewhat expected, since
      that's what you typically get with a non-block File.open.
    * We don't close the deprecation stream anyway. And also it's weird to
      check for $stdout to avoid closig that, but not (say) $stderr.
    * close is probably a misleading name for this formatter API, but it's
      public :( Any existing third-party formatters that close streams in
      this method today will be broken in this reuse case anyway though.
    
    Reported (among other things) in #2367
  2. Don't clear out shared examples in clear_examples.

    Xavier Shay committed with myronmarston Jan 15, 2017
    While technically examples, shared ones function more like
    configuration. When using clear_examples, it is surprising that they are
    removed since a shared library of them was likely loaded in the
    initial configuration steps.
    
    This is a change in behaviour. It was initially added in 2.9 in 8e8fb2b with no rationale. Its API visibility was unspecified at the time, and it's been officially private since 3.
    
    Reported (among other things) in #2367.