Skip to content

Commit

Permalink
Prepare for 0.7.0 release
Browse files Browse the repository at this point in the history
Tidy up the .gitignore

Set tracker version to 0.7.0

Update CHANGELOG

Add API docs link to README
  • Loading branch information
mscwilson committed Oct 14, 2021
1 parent a24e68e commit 0f2dddf
Show file tree
Hide file tree
Showing 5 changed files with 112 additions and 88 deletions.
21 changes: 5 additions & 16 deletions .gitignore
@@ -1,24 +1,13 @@
*.gem
*.rbc
.bundle
.config
.yardoc
InstalledFiles
_yardoc
coverage
doc/
coverage/
docs/
lib/bundler/man
pkg
rdoc
spec/reports
test/tmp
test/version_tmp
spec/tmp
tmp
Gemfile.lock

# Added as per http://ryan.mcgeary.org/2011/02/09/vendor-everything-still-applies/
vendor/bundle/ruby

# Vagrant
.vagrant
# Bundle now advises that the Gemfile.lock be committed for gems. We have left
# it in the .gitignore for ease of supporting a wide range of Ruby versions.
Gemfile.lock
124 changes: 72 additions & 52 deletions CHANGELOG
@@ -1,19 +1,39 @@
Relax the dependency on the "contracts" gem to "< 1.0"
Version 0.7.0 (2021-10-15)
--------------------------
Extend copyright notices to 2021 (#140)
Add YARD documentation (#133)
Add path to emitter config hash (#145) (contribution from @larubbio)
Add methods for domain_session_id and domain_session_idx (#106)
Strip empty contexts array from payload (#104)
Optionally add subject and page properties per event (#132)
Add "app" and "web" to supported platforms (#136)
Use keyword arguments (#134)
Allow Ruby 1.9 style hash notation for eCommerce events (#128)
Refactor using Rubocop style (#120)
Loosen version requirements for testing gems (#126)
Remove methods for turning Contracts on and off (#130)
Require Ruby v2.1+ (#124)
Make the logger configurable via a :logger option (#123) (contribution from @mcls)
Relax version dep of the "contracts" gem (#122) (contribution from @mcls)
Replace Travis with Github Actions for CI/CD (#117)
Replace Vagrant with Docker (#118)
Add Snowplow Maintenance Badge (#113)
Add CONTRIBUTING.md (#114)

Version 0.6.1 (2016-12-26)
--------------------------
Update payload_data schema to 1-0-4 (#102)

Version 0.6.0 (2016-08-18)
--------------------------
Support Ruby 2.2.5 and 2.3.1 (#100)
Require Ruby >= 2.0.0 (#99)
Fix track_page_view_contract bug (#98)
Fix coveralls test coverage report (#97)
Add RubyGems credentials to .travis.yml (#96)
Add CI/CD to project (#95)
Add support for attaching true timestamp to events (#94)
Add track_self_describing_event (#93)
Support Ruby 2.2.5 and 2.3.1 (#100)
Require Ruby >= 2.0.0 (#99)
Fix track_page_view_contract bug (#98)
Fix coveralls test coverage report (#97)
Add RubyGems credentials to .travis.yml (#96)
Add CI/CD to project (#95)
Add support for attaching true timestamp to events (#94)
Add track_self_describing_event (#93)
Add support for dvce_sent_tstamp (#92)

Version 0.5.2 (2015-10-07)
Expand All @@ -26,70 +46,70 @@ Started using UUID implementation from SecureRandom in the Ruby Standard Library

Version 0.5.0 (2015-08-11)
--------------------------
Made tracker.flush synchronous by default (#80)
Added SelfDescribingJson class (#82)
Prevented the buffer from being flushed when it is empty (#62)
Bumped contexts schema to 1-0-1 (#53)
Updated Contracts dependency range to "~> 0.7", "<= 0.11" (#81)
Moved Contracts mixin inside classes (#73)
Made synchronous flush wait until buffer is empty (#79)
Made buffer size 1-indexed rather than 0-indexed (#67)
Started handling all network-related exceptions (#76)
Started treating all 2xx and 3xx status codes as successful (#75)
Made number of worker threads used by AsyncEmitter configurable (#77)
Made Emitter and AsyncEmitter thread-safe (#74) Fixed callback logic to only fire one callback per buffer flush (#61)
Added set_fingerprint method, thanks @kazjote! (#65)
Updated Travis image to show status of master branch (#78)
Made tracker.flush synchronous by default (#80)
Added SelfDescribingJson class (#82)
Prevented the buffer from being flushed when it is empty (#62)
Bumped contexts schema to 1-0-1 (#53)
Updated Contracts dependency range to "~> 0.7", "<= 0.11" (#81)
Moved Contracts mixin inside classes (#73)
Made synchronous flush wait until buffer is empty (#79)
Made buffer size 1-indexed rather than 0-indexed (#67)
Started handling all network-related exceptions (#76)
Started treating all 2xx and 3xx status codes as successful (#75)
Made number of worker threads used by AsyncEmitter configurable (#77)
Made Emitter and AsyncEmitter thread-safe (#74) Fixed callback logic to only fire one callback per buffer flush (#61)
Added set_fingerprint method, thanks @kazjote! (#65)
Updated Travis image to show status of master branch (#78)
Added bundler installation to up.guidance (#83)

Version 0.4.2 (2015-04-08)
--------------------------
Relaxed Contracts dependency (#68)
Added License button to README (#66)
Added missing bundler step to Vagrant quickstart (#70)
Relaxed Contracts dependency (#68)
Added License button to README (#66)
Added missing bundler step to Vagrant quickstart (#70)
Updated vagrant up to work with latest Peru version (#69)

Version 0.4.1 (2015-01-05)
--------------------------
Updated payload_data schema to 1-0-2 (#55)
Started sending stringified JSON rather than form data in POST requests (#54)
Added Quickstart section to README (#59)
Added dedicated Vagrant setup (#57)
Updated payload_data schema to 1-0-2 (#55)
Started sending stringified JSON rather than form data in POST requests (#54)
Added Quickstart section to README (#59)
Added dedicated Vagrant setup (#57)
Implemented vagrant push scripting for deployment (#60)

Version 0.4.0 (2014-11-07)
--------------------------
Added set_domain_user_id method (#50)
Added set_ip_address method (#49)
Added set_useragent method (#48)
Added set_network_user_id method (#47)
Updated payload_data to 1-0-1 (#45)
Added set_domain_user_id method (#50)
Added set_ip_address method (#49)
Added set_useragent method (#48)
Added set_network_user_id method (#47)
Updated payload_data to 1-0-1 (#45)
Started using SSL for requests over HTTPS (#52)

Version 0.3.0 (2014-08-29)
--------------------------
Added Subject class (#42)
Added Emitter class (#39)
Added POST support (#32)
Added ability to send events asynchronously (#18)
Added ability to disable contracts (#11)
Made "name" an optional argument to track_screen_view (#38)
Changed default platform to "srv" (#37)
Made all tracker methods chainable (#40)
Added Subject class (#42)
Added Emitter class (#39)
Added POST support (#32)
Added ability to send events asynchronously (#18)
Added ability to disable contracts (#11)
Made "name" an optional argument to track_screen_view (#38)
Changed default platform to "srv" (#37)
Made all tracker methods chainable (#40)
Added logging (#41)

Version 0.2.0 (2014-07-31)
--------------------------
Wrapped custom contexts in the contexts schema, thanks @ebear! (#25)
Wrapped custom contexts in the contexts schema, thanks @ebear! (#25)
Wrapped unstructured event payload in the unstructured_event schema, thanks @ebear! (#22)
Removed event name and vendors as argument to track_unstruct_event, thanks @ebear! (#19)
Updated track_screen_view to send valid self-describing screen_view JSON, thanks @ebear! (#21)
Removed event vendor and context vendor from the payload (#35)
Now generates UUID for event_id and sends as eid parameter (#29)
No longer setting and sending tid (#30)
Created new contracts for unstructured events and custom contexts (#34)
Fixed Snowplow capitalization (#28)
Fixed coveralls.io button (#17)
Removed event name and vendors as argument to track_unstruct_event, thanks @ebear! (#19)
Updated track_screen_view to send valid self-describing screen_view JSON, thanks @ebear! (#21)
Removed event vendor and context vendor from the payload (#35)
Now generates UUID for event_id and sends as eid parameter (#29)
No longer setting and sending tid (#30)
Created new contracts for unstructured events and custom contexts (#34)
Fixed Snowplow capitalization (#28)
Fixed coveralls.io button (#17)
Fixed links in README (#27)

Version 0.1.0 (2014-04-23)
Expand Down
46 changes: 34 additions & 12 deletions README.md
Expand Up @@ -2,7 +2,7 @@

[![early-release]][tracker-classification]
[![Gem Version](https://badge.fury.io/rb/snowplow-tracker.svg)](https://badge.fury.io/rb/snowplow-tracker)
[![Build Status](https://travis-ci.org/snowplow/snowplow-ruby-tracker.png?branch=master)](https://travis-ci.org/snowplow/snowplow-ruby-tracker)
[![Build Status][gh-actions-image]][gh-actions]
[![Code Climate](https://codeclimate.com/github/snowplow/snowplow-ruby-tracker.png)](https://codeclimate.com/github/snowplow/snowplow-ruby-tracker)
[![Coverage Status](https://coveralls.io/repos/snowplow/snowplow-ruby-tracker/badge.png)](https://coveralls.io/r/snowplow/snowplow-ruby-tracker)
[![License][license-image]][license]
Expand All @@ -11,8 +11,29 @@

Add analytics to your Ruby and Rails apps and gems with the **[Snowplow][snowplow]** event tracker for **[Ruby][ruby]**.

Snowplow is a scalable open-source platform for rich, high quality, low-latency data collection. It is designed to collect high quality, complete behavioral data for enterprise business.

**To find out more, please check out the [Snowplow website][snowplow] and our [documentation][docs].**

With this tracker you can collect event data from your **[Ruby][ruby]** applications, **[Ruby on Rails][rails]** web applications and **[Ruby gems][rubygems]**.

## Quickstart

Add this gem to your Gemfile. It is compatible with Ruby versions 2.1 to 3.0+.

```ruby
gem "snowplow-tracker", "~> 0.7.0"
```

See our [demo app][demoapp] for an example of implementing the Ruby tracker in a Rails app.

## Find out more

| Technical Docs | API Docs | Contributing |
| ------------------------------ | ----------------------- | ----------------------------------- |
| ![i1][techdocs-image] | ![i1][techdocs-image] | ![i4][contributing-image] |
| **[Technical Docs][techdocs]** | **[API Docs][apidocs]** | **[Contributing](Contributing.md)** |

## Maintainer Quickstart

Clone this repo and navigate into the cloned folder. To run the tests locally, you will need [Docker][docker] installed.
Expand All @@ -24,7 +45,7 @@ docker run -v "$(pwd)":"/code" ruby-tracker

The `-v` flag for `docker run` creates a bind mount for the project directory. This means that changes to the files will be automatically applied within the Docker image. However, if you modify the `Gemfile` or `snowplow-tracker.gemspec` files, the image must be rebuilt.

Alternatively, test directly by installing Ruby 2.6+ and [Bundler][bundler]. Then run:
Alternatively, test directly by installing Ruby 2.1+ and [Bundler][bundler]. Then run:

```
bundle install
Expand All @@ -35,13 +56,6 @@ rspec

Feedback and contributions are welcome - if you have identified a bug, please log an issue on this repo. For all other feedback, discussion or questions please open a thread on our [Discourse forum][discourse].

## Find out more

| Technical Docs | Contributing |
| ------------------------------ | ----------------------------------- |
| ![i1][techdocs-image] | ![i4][contributing-image] |
| **[Technical Docs][techdocs]** | **[Contributing](Contributing.md)** |

## Copyright and license

The Snowplow Ruby Tracker is copyright 2013-2021 Snowplow Analytics Ltd.
Expand All @@ -57,15 +71,23 @@ limitations under the License.

[license-image]: https://img.shields.io/badge/license-Apache--2-blue.svg?style=flat
[license]: https://www.apache.org/licenses/LICENSE-2.0
[gh-actions]: https://github.com/snowplow/snowplow-ruby-tracker/actions
[gh-actions-image]: https://github.com/snowplow/snowplow-ruby-tracker/workflows/test.yml/badge.svg
[tracker-classification]: https://docs.snowplowanalytics.com/docs/collecting-data/collecting-from-own-applications/tracker-maintenance-classification/
[early-release]: https://img.shields.io/static/v1?style=flat&label=Snowplow&message=Early%20Release&color=014477&labelColor=9ba0aa&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAeFBMVEVMaXGXANeYANeXANZbAJmXANeUANSQAM+XANeMAMpaAJhZAJeZANiXANaXANaOAM2WANVnAKWXANZ9ALtmAKVaAJmXANZaAJlXAJZdAJxaAJlZAJdbAJlbAJmQAM+UANKZANhhAJ+EAL+BAL9oAKZnAKVjAKF1ALNBd8J1AAAAKHRSTlMAa1hWXyteBTQJIEwRgUh2JjJon21wcBgNfmc+JlOBQjwezWF2l5dXzkW3/wAAAHpJREFUeNokhQOCA1EAxTL85hi7dXv/E5YPCYBq5DeN4pcqV1XbtW/xTVMIMAZE0cBHEaZhBmIQwCFofeprPUHqjmD/+7peztd62dWQRkvrQayXkn01f/gWp2CrxfjY7rcZ5V7DEMDQgmEozFpZqLUYDsNwOqbnMLwPAJEwCopZxKttAAAAAElFTkSuQmCC

[ruby]: https://www.ruby-lang.org/en/
[rails]: https://rubyonrails.org/
[rubygems]: https://rubygems.org/
[docker]: https://www.docker.com/
[bundler]: https://bundler.io/
[snowplow]: httpd://snowplowanalytics.com

[snowplow]: https://snowplowanalytics.com
[docs]: https://docs.snowplowanalytics.com/
[demoapp]: https://github.com/snowplow-incubator/snowplow-ruby-tracker-examples
[discourse]: https://discourse.snowplowanalytics.com

[techdocs-image]: https://d3i6fms1cm1j0i.cloudfront.net/github/images/techdocs.png
[contributing-image]: https://d3i6fms1cm1j0i.cloudfront.net/github/images/contributing.png
[techdocs]: https://docs.snowplowanalytics.com/docs/collecting-data/collecting-from-own-applications/ruby-tracker/
[tracker-classification]: https://docs.snowplowanalytics.com/docs/collecting-data/collecting-from-own-applications/tracker-maintenance-classification/
[early-release]: https://img.shields.io/static/v1?style=flat&label=Snowplow&message=Early%20Release&color=014477&labelColor=9ba0aa&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAeFBMVEVMaXGXANeYANeXANZbAJmXANeUANSQAM+XANeMAMpaAJhZAJeZANiXANaXANaOAM2WANVnAKWXANZ9ALtmAKVaAJmXANZaAJlXAJZdAJxaAJlZAJdbAJlbAJmQAM+UANKZANhhAJ+EAL+BAL9oAKZnAKVjAKF1ALNBd8J1AAAAKHRSTlMAa1hWXyteBTQJIEwRgUh2JjJon21wcBgNfmc+JlOBQjwezWF2l5dXzkW3/wAAAHpJREFUeNokhQOCA1EAxTL85hi7dXv/E5YPCYBq5DeN4pcqV1XbtW/xTVMIMAZE0cBHEaZhBmIQwCFofeprPUHqjmD/+7peztd62dWQRkvrQayXkn01f/gWp2CrxfjY7rcZ5V7DEMDQgmEozFpZqLUYDsNwOqbnMLwPAJEwCopZxKttAAAAAElFTkSuQmCC
[apidocs]: https://snowplow.github.io/snowplow-ruby-tracker/
7 changes: 0 additions & 7 deletions Rakefile

This file was deleted.

2 changes: 1 addition & 1 deletion lib/snowplow-tracker/version.rb
Expand Up @@ -41,7 +41,7 @@
# @api public
module SnowplowTracker
# The version of Ruby Snowplow tracker you are using
VERSION = '0.7.0-alpha.2'
VERSION = '0.7.0'

# All events from this tracker will have this string
TRACKER_VERSION = "rb-#{VERSION}"
Expand Down

0 comments on commit 0f2dddf

Please sign in to comment.