Skip to content

Instantly share code, notes, and snippets.

@jdennes
Created October 24, 2012 15:09
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jdennes/3946641 to your computer and use it in GitHub Desktop.
Save jdennes/3946641 to your computer and use it in GitHub Desktop.
Generates a HISTORY.md file for your repo based on tags and commits

createsend-ruby history

v2.3.0 - 10 Oct, 2012 (6639c1f6)

  • Added support for creating campaigns from templates.
  • Updated shoulda dependency.
  • Added support for unsuppressing an email address.
  • Adding custom field data to expected output from getting active subscribers. This clearly documents the data structure to be expected for multi option multi select fields.
  • Removed Alt field from Singleline elements in test (singleline tags don't support alt text).
  • Version 2.3.0
  • Removed Alt field from Singleline elements in test (singleline tags don't support alt text).

v2.2.0 - 17 Sep, 2012 (17409634)

  • Expect WorldviewURL field in campaign summary response. Expect Latitude, Longitude, City, Region, CountryCode, and CountryName fields in campaign opens and clicks response.
  • Added 'Contributing' section to README.
  • Fixed 'Contributing' heading level.
  • Merge branch 'updates-sep2012'
  • Version 2.2.0
  • Fix set monthly billing tests so that request structure is checked independent of the order of the contents (tests were failing on ree).

v2.1.0 - 30 Aug, 2012 (ee936259)

  • Problem installing httparty using ruby-head on travis.
  • Run cane on build to check code quality thresholds.
  • Don't run cane when ci uses 1.8.7.
  • CM-12569 - Change API wrappers to support basic / unlimited pricing
  • Ruby version done.
  • Merge remote-tracking branch 'origin/master'
  • Merge branch 'master' of github.com:campaignmonitor/createsend-ruby

Conflicts: lib/createsend/client.rb test/client_test.rb

  • Increment version number to v2.1.0.
  • CM-12569 - Change API wrappers to support basic / unlimited pricing
  • Fix to meet CI style requirements.

v2.0.0 - 22 Aug, 2012 (8a5ab6b4)

  • Added support for UnsubscribeSetting field when creating, updating and getting list details. Also support AddUnsubscribesToSuppList and ScrubActiveWithSuppList fields when updating a list.
  • License update.
  • Updating shoulda dependency.
  • Added CreateSend::Client#lists_for_email to allow consumers to find all client lists to which a subscriber with a specific email address belongs.
  • Removed deprecated warnings and disallowed calls to be made in a deprecated manner. This is a breaking change which will cause a major version bump when merged into master.
  • Merge branch 'updates-aug2012'
  • Style fixes after running code through cane (https://github.com/square/cane).
  • Incrementing major version to 2.0.0.

v1.1.1 - 24 Jul, 2012 (72934e66)

  • Added RestartSubscriptionBasedAutoresponders to the wrapper
  • Version bump 1.1.1

v1.1.0 - 11 Jul, 2012 (93e856b6)

  • implement person/administrator/primary contact api methods
  • bump ruby wrapper version
  • M-11470 wrapper now warns against pre-MU usage pattern
  • properly bump the version for the ruby wrapper
  • Updating ruby wrapper with improvements for Team Management
  • Fixing tests broken by recent committers. Closes #17.

v1.0.4 - 4 May, 2012 (9bce25c1)

  • Added Travis CI support.
  • Also run tests against jruby, rbx, ree, and ruby-head on Travis CI.
  • Problems running on jruby and rubinius. Leave those versions out for now.
  • Added Gemnasium status image.
  • Link to CM API docs.
  • Use shoulda 3.
  • shoulda 3.0.0 seems to have an invalid gemspec.
  • Really use shoulda 3.0.0 (had a rubygems problem locally).
  • Leave Hash alone. Don't include Hashie::HashExtensions in Hash. Tests pass.
  • Bump shoulda to 3.0.1 - no 3.0.0 exists on Rubygems.
  • Merge pull request #15 from pfeiffer/shoulda_3_0_1

Bump shoulda to 3.0.1 - no 3.0.0 exists on Rubygems.

  • Merge pull request #14 from pfeiffer/fix_hash

Leave Hash alone. Don't include Hashie::HashExtensions in Hash.

  • Bump to version 1.0.4.

v1.0.3 - 3 Dec, 2011 (1ed2b56a)

  • Fixed issues running rake tasks using ruby 1.9.2.
  • User-Agent header now includes correct module VERSION. Test added for this too. Fixes #11.
  • Version 1.0.3. Fix for running on Ruby 1.9.2 and fix to User-Agent header.

v1.0.2 - 31 Oct, 2011 (83020409)

  • Updates:
  • Added subscriber delete method.
  • Updated subscriber update and import methods to allow custom fields to define a boolean 'clear' member.
  • Updated subscriber import method to accept a boolean queue_subscription_based_autoresponders argument.
  • Added list deleted method to retrieve deleted subscribers.
  • Modified campaign summary method to include more social sharing stats
  • Added campaign unschedule method.
  • Fixes after alpha-testing.
  • Fixed subscriber delete test.
  • Sans sudo thanks.
  • Slight changes to campaign summary data structure.
  • Merge branch 'update20111005'
  • Version 1.0.2.

v1.0.1 - 25 Oct, 2011 (347b2b95)

  • Ensure @@api_key is initialised to nil if it's not set by calling CreateSend::CreateSend.api_key (for instance, when a user wants to retrieve their API key using CreateSend::CreateSend#apikey).
  • Remove CreateSendOptions and don't read config.yaml file.
  • Version 1.0.1.

v1.0.0 - 26 Sep, 2011 (0a078b09)

  • Initial release.
# Generates a HISTORY.md file for your repo based on tags and commits
# Requires: gem install grit
# Usage: ruby history.rb /your/repo/directory
require 'grit'
if ARGV.size < 1
p "Usage: ruby history.rb /your/repo/directory"
exit
end
output_file = 'HISTORY.md'
repo_dir = ARGV[0]
output = "# #{File.basename(repo_dir)} history\n\n"
repo = Grit::Repo.new(repo_dir)
tags = repo.tags
tags.sort! {|x,y| y.commit.authored_date <=> x.commit.authored_date}
tagcount = 0
tags.each do |tag|
output << "## #{tag.name} - #{tag.commit.authored_date.strftime("%-d %b, %Y")}\
(#{tag.commit.sha[0,8]})\n\n"
if (tagcount != tags.size - 1)
repo.commits_between(tags[tagcount + 1].name, tag.name).each do |c|
output << "* #{c.message}\n"
end
else
output << "* Initial release.\n"
end
output << "\n"
tagcount += 1
end
File.open(output_file, 'w') { |f| f.write(output) }
@jdennes
Copy link
Author

jdennes commented Oct 24, 2012

The HISTORY.md file in this gist is the output for running history.rb as follows:

ruby history.rb /path/to/createsend-ruby

The output was used as the basis for generating the createsend-ruby HISTORY.md file.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment