release_notes 0.1.3 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +41 -1
- data/app/assets/stylesheets/release_notes/application.css +14 -0
- data/app/assets/stylesheets/release_notes/github.css.scss +0 -2
- data/app/views/release_notes/broadcasts/_shared.html.erb +10 -0
- data/bin/release_notes +1 -1
- data/lib/generators/active_record/broadcasts_generator.rb +47 -0
- data/lib/generators/active_record/release_notes_generator.rb +2 -2
- data/lib/generators/active_record/templates/broadcasts_migration.rb +13 -0
- data/lib/generators/active_record/templates/{migration.rb → release_notes_migration.rb} +0 -0
- data/lib/generators/release_notes/broadcasts_generator.rb +16 -0
- data/lib/generators/release_notes/orm_helpers.rb +10 -3
- data/lib/generators/release_notes/release_notes_generator.rb +3 -3
- data/lib/generators/templates/broadcast_blank.md +3 -0
- data/lib/generators/templates/release_notes.rb +10 -4
- data/lib/release_notes/cli/broadcast.rb +71 -0
- data/lib/release_notes/cli.rb +11 -8
- data/lib/release_notes/engine.rb +6 -0
- data/lib/release_notes/generators/broadcast.rb +52 -0
- data/lib/release_notes/generators/release_note.rb +1 -1
- data/lib/release_notes/version.rb +1 -1
- data/lib/release_notes.rb +8 -0
- metadata +10 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 944aabbdcfbe98177f96767bacfb25ac122628fa
|
4
|
+
data.tar.gz: 6b6eb9634870439af6a73a2c1192af44a3025e62
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d98b8739536d1be288b3a69cb8225872064ae22d2cc7107f961271b807c58caa5f4324995a5fb7c2747bdb1353a4711f7a800268bd8b28e818b4f44d94b27a00
|
7
|
+
data.tar.gz: dbb63344fd67d55c0b0953c6e78406b6173de94f69ef6eb5fe1b6b54e9e5b5b1a96774f0b7b9c1c4170dfc73c461a046b8ec740640b99c7889a9260c134978c0
|
data/README.md
CHANGED
@@ -32,7 +32,31 @@ Be sure to migrate your database.
|
|
32
32
|
|
33
33
|
$ rake db:migrate
|
34
34
|
|
35
|
-
|
35
|
+
### Optional
|
36
|
+
|
37
|
+
#### Broadcasts
|
38
|
+
|
39
|
+
To add the ability to display broadcasts of new releases (or any other messages) run the following:
|
40
|
+
|
41
|
+
$ rails generate release_notes:broadcasts Broadcast
|
42
|
+
|
43
|
+
This will generate a model named `Broadcast` in your Rails project. As mentioned before, you can choose to use a different model name, but remember to edit the `config/initializers/release_notes.rb` file with the name.
|
44
|
+
|
45
|
+
Migrate your database.
|
46
|
+
|
47
|
+
$ rake db:migrate
|
48
|
+
|
49
|
+
Add the following to your layout/application.html.erb file
|
50
|
+
|
51
|
+
<%= stylesheet_link_tag "release_notes/application", media: "all" %>
|
52
|
+
|
53
|
+
Then add the following render to wherever you'd like to display the broadcast message.
|
54
|
+
|
55
|
+
<%= render 'release_notes/broadcasts/shared' %>
|
56
|
+
|
57
|
+
#### Views
|
58
|
+
|
59
|
+
While not necessary, you may want to copy over the ReleaseNotes views to your app to customize:
|
36
60
|
|
37
61
|
$ rails generate release_notes:views
|
38
62
|
|
@@ -66,6 +90,22 @@ If you ever want to reset your model - maybe you've gone back and edited a previ
|
|
66
90
|
|
67
91
|
To view all of your release notes just visit `http://yourapp/release_notes` (or whatever route is mounted in your `routes.rb` file) in your application. To view a specific version just visit `http://yourapp/release_notes/:version` where `:version` is the release notes version that you are looking to view using underscores instead of periods (i.e. `0_1_0`).
|
68
92
|
|
93
|
+
### Create a new Broadcast
|
94
|
+
|
95
|
+
To create a new Broadcast run:
|
96
|
+
|
97
|
+
$ release_notes broadcast new
|
98
|
+
|
99
|
+
This will generate a broadcast markdown file which you can edit.
|
100
|
+
|
101
|
+
### Update Broadcast
|
102
|
+
|
103
|
+
After finalizing your broadcast markdown file be sure to update your Broadcast model by running:
|
104
|
+
|
105
|
+
$ release_notes broadcast update
|
106
|
+
|
107
|
+
If you ever want to reset your model - maybe you've gone back and edited a previous release note - you can rebuild the Broadcast model by running `release_notes broadcast update -r` appending the `-r` option.
|
108
|
+
|
69
109
|
## Contributing
|
70
110
|
|
71
111
|
1. Fork it ( http://github.com/eanlain/release_notes/fork )
|
@@ -12,6 +12,18 @@
|
|
12
12
|
*= require_directory .
|
13
13
|
*/
|
14
14
|
|
15
|
+
html,
|
16
|
+
body {
|
17
|
+
height: 100%;
|
18
|
+
}
|
19
|
+
|
20
|
+
#wrap {
|
21
|
+
min-height: 100%;
|
22
|
+
height: auto;
|
23
|
+
margin: 0 auto -60px;
|
24
|
+
padding: 0 0 60px;
|
25
|
+
}
|
26
|
+
|
15
27
|
body {
|
16
28
|
padding-top: 20px;
|
17
29
|
padding-bottom: 20px;
|
@@ -35,6 +47,7 @@ body {
|
|
35
47
|
}
|
36
48
|
|
37
49
|
.footer {
|
50
|
+
height: 60px;
|
38
51
|
padding-top: 19px;
|
39
52
|
color: #777;
|
40
53
|
border-top: 1px solid #e5e5e5;
|
@@ -56,6 +69,7 @@ body {
|
|
56
69
|
|
57
70
|
.note {
|
58
71
|
margin: 40px 0;
|
72
|
+
border-radius: 10px;
|
59
73
|
}
|
60
74
|
|
61
75
|
.note p + h4 {
|
data/bin/release_notes
CHANGED
@@ -4,7 +4,7 @@ begin
|
|
4
4
|
require File.expand_path('config/environment.rb')
|
5
5
|
require File.expand_path('config/initializers/release_notes.rb')
|
6
6
|
rescue LoadError
|
7
|
-
puts "
|
7
|
+
puts "Can't find config/initializers/release_notes.rb... that's cool though - using default settings instead."
|
8
8
|
end
|
9
9
|
|
10
10
|
require 'release_notes/cli'
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require 'rails/generators/active_record'
|
2
|
+
require 'generators/release_notes/orm_helpers'
|
3
|
+
|
4
|
+
module ActiveRecord
|
5
|
+
module Generators
|
6
|
+
class BroadcastsGenerator < ActiveRecord::Generators::Base
|
7
|
+
argument :attributes, :type => :array, :default => [], :banner => "field:type field:type"
|
8
|
+
|
9
|
+
include ReleaseNotes::Generators::OrmHelpers
|
10
|
+
source_root File.expand_path("../templates", __FILE__)
|
11
|
+
|
12
|
+
def copy_broadcasts_migration
|
13
|
+
if (behavior == :invoke && model_exists?)
|
14
|
+
raise "#{table_name} already exists..."
|
15
|
+
else
|
16
|
+
migration_template "broadcasts_migration.rb", "db/migrate/release_notes_create_#{table_name}"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def generate_module
|
21
|
+
invoke "active_record:model", [name], :migration => false unless model_exists? && behavior == :invoke
|
22
|
+
end
|
23
|
+
|
24
|
+
def inject_broadcasts_content
|
25
|
+
content = broadcasts_model_contents
|
26
|
+
|
27
|
+
class_path = if namespaced?
|
28
|
+
class_name.to_s.split("::")
|
29
|
+
else
|
30
|
+
[class_name]
|
31
|
+
end
|
32
|
+
|
33
|
+
indent_depth = class_path.size - 1
|
34
|
+
content = content.split("\n").map { |line| " " * indent_depth + line }.join("\n") << "\n"
|
35
|
+
|
36
|
+
inject_into_class(model_path, class_path.last, content) if model_exists?
|
37
|
+
end
|
38
|
+
|
39
|
+
def migration_data
|
40
|
+
<<RUBY
|
41
|
+
t.text :markdown, :null => false
|
42
|
+
t.string :version, :null => false
|
43
|
+
RUBY
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -13,7 +13,7 @@ module ActiveRecord
|
|
13
13
|
if (behavior == :invoke && model_exists?)
|
14
14
|
raise "#{table_name} already exists..."
|
15
15
|
else
|
16
|
-
migration_template "
|
16
|
+
migration_template "release_notes_migration.rb", "db/migrate/release_notes_create_#{table_name}"
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
@@ -22,7 +22,7 @@ module ActiveRecord
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def inject_release_notes_content
|
25
|
-
content =
|
25
|
+
content = release_notes_model_contents
|
26
26
|
|
27
27
|
class_path = if namespaced?
|
28
28
|
class_name.to_s.split("::")
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class ReleaseNotesCreate<%= table_name.camelize %> < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
create_table(:<%= table_name %>) do |t|
|
4
|
+
<%= migration_data -%>
|
5
|
+
|
6
|
+
<% attributes.each do |attribute| -%>
|
7
|
+
t.<%= attribute.type %> :<%= attribute.name %>
|
8
|
+
<% end -%>
|
9
|
+
|
10
|
+
t.timestamps
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
File without changes
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'rails/generators/named_base'
|
2
|
+
|
3
|
+
module ReleaseNotes
|
4
|
+
module Generators
|
5
|
+
class BroadcastsGenerator < Rails::Generators::NamedBase
|
6
|
+
include Rails::Generators::ResourceHelpers
|
7
|
+
|
8
|
+
namespace "release_notes:broadcasts"
|
9
|
+
source_root File.expand_path("../templates", __FILE__)
|
10
|
+
|
11
|
+
desc "Generates a Broadcast model with the given NAME (if one does not exist)."
|
12
|
+
|
13
|
+
hook_for :orm
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -1,10 +1,17 @@
|
|
1
1
|
module ReleaseNotes
|
2
2
|
module Generators
|
3
3
|
module OrmHelpers
|
4
|
-
def
|
4
|
+
def release_notes_model_contents
|
5
5
|
buffer = <<-CONTENT
|
6
|
-
validates :version, presence: true,
|
7
|
-
|
6
|
+
validates :version, presence: true, uniqueness: true
|
7
|
+
CONTENT
|
8
|
+
buffer
|
9
|
+
end
|
10
|
+
|
11
|
+
def broadcasts_model_contents
|
12
|
+
buffer = <<-CONTENT
|
13
|
+
validates :markdown, presence: true
|
14
|
+
validates :version, presence: true, uniqueness: true
|
8
15
|
CONTENT
|
9
16
|
buffer
|
10
17
|
end
|
@@ -8,15 +8,15 @@ module ReleaseNotes
|
|
8
8
|
namespace "release_notes"
|
9
9
|
source_root File.expand_path("../templates", __FILE__)
|
10
10
|
|
11
|
-
desc "Generates a model with the given NAME (if one does not exist) with " <<
|
12
|
-
"release_notes configuration plus
|
11
|
+
desc "Generates a ReleaseNote model with the given NAME (if one does not exist) with " <<
|
12
|
+
"release_notes configuration plus release_notes routes."
|
13
13
|
|
14
14
|
hook_for :orm
|
15
15
|
|
16
16
|
class_option :routes, :desc => "Generate routes", :type => :boolean, :default => true
|
17
17
|
|
18
18
|
def add_release_notes_routes
|
19
|
-
release_notes_routes = "mount ReleaseNotes::Engine, at: '/#{plural_name}'"
|
19
|
+
release_notes_routes = "mount ReleaseNotes::Engine, at: '/#{plural_name}', :as => '#{ReleaseNotes.mount_at}'"
|
20
20
|
|
21
21
|
route release_notes_routes
|
22
22
|
end
|
@@ -1,14 +1,20 @@
|
|
1
1
|
# Use this hook to configure ReleaseNotes.
|
2
2
|
ReleaseNotes.setup do |config|
|
3
|
-
#
|
3
|
+
# Name of your application.
|
4
4
|
config.app_name = 'Application Name Goes Here'
|
5
5
|
|
6
|
-
#
|
6
|
+
# Name of the model you're using to store the various release notes.
|
7
7
|
config.release_note_model = 'ReleaseNote'
|
8
8
|
|
9
|
-
#
|
9
|
+
# Name of the model you're using to store broadcasts.
|
10
|
+
config.broadcast_model = 'Broadcast'
|
11
|
+
|
12
|
+
# Name of the folder you're using to store the release note and broadcast markdown files.
|
10
13
|
config.release_note_folder = 'release_notes'
|
11
14
|
|
12
|
-
#
|
15
|
+
# Path that ReleaseNotes::Engine is mounted at in the config/routes.rb file.
|
16
|
+
config.mount_at = 'release_notes'
|
17
|
+
|
18
|
+
# Version number that the first ReleaseNote should start at.
|
13
19
|
config.starting_version = '0.1.0'
|
14
20
|
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
module ReleaseNotes
|
2
|
+
class Broadcast < Thor
|
3
|
+
desc 'new', 'Create a new broadcast'
|
4
|
+
method_option :destination, :aliases => '-d', :default => ReleaseNotes.release_note_folder, :desc => 'relative location of release note folder'
|
5
|
+
method_option :body, :aliases => '-b', :default => "We've made some new changes - check 'em out!", :desc => 'body of broadcast'
|
6
|
+
method_option :subject, :aliases => '-s', :default => "New Update", :desc => 'subject of broadcast'
|
7
|
+
method_option :release_note_version, :aliases => '-r', :desc => 'corresponding release note version'
|
8
|
+
|
9
|
+
def new
|
10
|
+
ReleaseNotes::Generators::Broadcast.start([options[:destination],
|
11
|
+
options[:subject],
|
12
|
+
options[:body],
|
13
|
+
options[:release_note_version]])
|
14
|
+
end
|
15
|
+
|
16
|
+
|
17
|
+
desc 'update', "Update #{ReleaseNotes.broadcast_model} models"
|
18
|
+
method_option :destination, :aliases => '-d', :default => ReleaseNotes.release_note_folder, :desc => 'relative location of release note folder'
|
19
|
+
method_option :reset, :aliases => '-r', :type => :boolean, :default => false, :desc => 'delete all model entries and rebuilds them'
|
20
|
+
|
21
|
+
def update
|
22
|
+
# If reset option is passed delete all broadcasts in model
|
23
|
+
if options[:reset]
|
24
|
+
ReleaseNotes.broadcast_model.constantize.all.each do |b|
|
25
|
+
b.destroy
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
# Gets last broadcast version from db
|
30
|
+
last_broadcast = ReleaseNotes.broadcast_model.constantize.last
|
31
|
+
|
32
|
+
if last_broadcast.nil?
|
33
|
+
last_version = 0
|
34
|
+
else
|
35
|
+
last_version = last_broadcast.version.to_i
|
36
|
+
end
|
37
|
+
|
38
|
+
# Collects relevant files and saves version and content to db
|
39
|
+
broadcast_files = collect_broadcast_files(options[:destination])
|
40
|
+
broadcast_files.each do |file|
|
41
|
+
version = file.split('_').last.to_i
|
42
|
+
|
43
|
+
if version > last_version
|
44
|
+
markdown = File.read("#{options[:destination]}/#{file}")
|
45
|
+
|
46
|
+
ReleaseNotes.broadcast_model.constantize.create(version: version,
|
47
|
+
markdown: markdown)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
say "#{ReleaseNotes.broadcast_model} model successfully updated.", :green
|
52
|
+
end
|
53
|
+
|
54
|
+
protected
|
55
|
+
def collect_broadcast_files(dirname)
|
56
|
+
broadcast_lookup_at(dirname).collect do |file|
|
57
|
+
File.basename(file)
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
def current_broadcast_number(dirname)
|
62
|
+
broadcast_lookup_at(dirname).collect do |file|
|
63
|
+
File.basename(file).split('_').last.to_i
|
64
|
+
end.max.to_i
|
65
|
+
end
|
66
|
+
|
67
|
+
def broadcast_lookup_at(dirname)
|
68
|
+
Dir.glob("#{dirname}/*_[0-9]*.md")
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
data/lib/release_notes/cli.rb
CHANGED
@@ -2,20 +2,23 @@ require 'thor'
|
|
2
2
|
require 'release_notes'
|
3
3
|
require 'release_notes/version'
|
4
4
|
require 'release_notes/versioning'
|
5
|
+
require 'release_notes/cli/broadcast'
|
5
6
|
require 'release_notes/cli/helpers'
|
6
7
|
require 'release_notes/generators/release_note'
|
8
|
+
require 'release_notes/generators/broadcast'
|
7
9
|
|
8
10
|
module ReleaseNotes
|
9
11
|
class CLI < Thor
|
10
|
-
|
12
|
+
register(Broadcast, 'broadcast', 'broadcast [COMMAND]', 'Create a new broadcast or update Broadcast models')
|
13
|
+
|
11
14
|
package_name 'ReleaseNotes'
|
12
15
|
map '-v' => :version
|
13
16
|
|
14
17
|
|
15
|
-
desc 'new', '
|
18
|
+
desc 'new', 'Create a new release note'
|
16
19
|
method_option :destination, :aliases => '-d', :default => ReleaseNotes.release_note_folder, :desc => 'relative location of release note folder'
|
17
20
|
method_option :force, :aliases => '-f', :type => :boolean, :desc => 'overwrite files that already exist'
|
18
|
-
method_option :increment, :aliases => '-i', :default => 'patch', :banner => 'MODE', :desc => 'increment version by mode'
|
21
|
+
method_option :increment, :aliases => '-i', :default => 'patch', :banner => 'MODE', :desc => 'increment version by mode - "major", "minor", "patch"'
|
19
22
|
method_option :message, :aliases => '-m', :desc => 'interactive release note bullet input'
|
20
23
|
method_option :version, :aliases => '-V', :desc => 'use the given version number'
|
21
24
|
|
@@ -34,13 +37,13 @@ module ReleaseNotes
|
|
34
37
|
end
|
35
38
|
|
36
39
|
ReleaseNotes::Generators::ReleaseNote.start([options[:destination],
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
+
message,
|
41
|
+
update_version,
|
42
|
+
"--force=#{options[:force] || false}"])
|
40
43
|
end
|
41
44
|
|
42
45
|
|
43
|
-
desc 'update', "
|
46
|
+
desc 'update', "Update #{ReleaseNotes.release_note_model} models"
|
44
47
|
method_option :destination, :aliases => '-d', :default => ReleaseNotes.release_note_folder, :desc => 'relative location of release note folder'
|
45
48
|
method_option :no_log, :aliases => '-n', :type => :boolean, :default => false, :desc => 'disable README.md log of release notes'
|
46
49
|
method_option :reset, :aliases => '-r', :type => :boolean, :default => false, :desc => 'delete all model entries and rebuilds them'
|
@@ -108,7 +111,7 @@ module ReleaseNotes
|
|
108
111
|
end
|
109
112
|
|
110
113
|
|
111
|
-
desc 'version', '
|
114
|
+
desc 'version', 'Show version of release_notes'
|
112
115
|
|
113
116
|
def version
|
114
117
|
puts "ReleaseNotes #{ReleaseNotes::VERSION}"
|
data/lib/release_notes/engine.rb
CHANGED
@@ -0,0 +1,52 @@
|
|
1
|
+
require 'thor/group'
|
2
|
+
|
3
|
+
module ReleaseNotes
|
4
|
+
module Generators
|
5
|
+
class Broadcast < Thor::Group
|
6
|
+
include Thor::Actions
|
7
|
+
|
8
|
+
argument :destination, :type => :string
|
9
|
+
argument :subject, :type => :string
|
10
|
+
argument :body, :type => :string
|
11
|
+
argument :release_note_version, :type => :string
|
12
|
+
|
13
|
+
source_root File.expand_path('../../../generators/templates', __FILE__)
|
14
|
+
|
15
|
+
def set_local_assigns
|
16
|
+
@subject = subject
|
17
|
+
@body = body
|
18
|
+
@release_note_version = release_note_version.gsub('.', '_')
|
19
|
+
@broadcast_template = 'broadcast_blank.md'
|
20
|
+
@destination = File.expand_path(destination)
|
21
|
+
end
|
22
|
+
|
23
|
+
def create_directory
|
24
|
+
empty_directory(@destination)
|
25
|
+
end
|
26
|
+
|
27
|
+
def get_broadcast_number
|
28
|
+
@broadcast_number = next_broadcast_number(@destination)
|
29
|
+
end
|
30
|
+
|
31
|
+
def copy_broadcast
|
32
|
+
@filename = "#{destination}/broadcast_#{@broadcast_number}.md"
|
33
|
+
template(@broadcast_template, @filename)
|
34
|
+
end
|
35
|
+
|
36
|
+
protected
|
37
|
+
def next_broadcast_number(dirname)
|
38
|
+
current_broadcast_number(dirname) + 1
|
39
|
+
end
|
40
|
+
|
41
|
+
def current_broadcast_number(dirname)
|
42
|
+
broadcast_lookup_at(dirname).collect do |file|
|
43
|
+
File.basename(file).split('_').last.to_i
|
44
|
+
end.max.to_i
|
45
|
+
end
|
46
|
+
|
47
|
+
def broadcast_lookup_at(dirname)
|
48
|
+
Dir.glob("#{dirname}/*_[0-9]*.md")
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
data/lib/release_notes.rb
CHANGED
@@ -13,10 +13,18 @@ module ReleaseNotes
|
|
13
13
|
mattr_accessor :release_note_model
|
14
14
|
@@release_note_model = 'ReleaseNote'
|
15
15
|
|
16
|
+
# Model name of the model created to store broadcasts.
|
17
|
+
mattr_accessor :broadcast_model
|
18
|
+
@@broadcast_model = 'Broadcast'
|
19
|
+
|
16
20
|
# Name of the folder where release notes are stored.
|
17
21
|
mattr_accessor :release_note_folder
|
18
22
|
@@release_note_folder = 'release_notes'
|
19
23
|
|
24
|
+
# Path that ReleaseNotes::Engine is mounted at in the config/routes.rb file.
|
25
|
+
mattr_accessor :mount_at
|
26
|
+
@@mount_at = 'release_notes'
|
27
|
+
|
20
28
|
# Default way to setup ReleaseNotes. Run rails g release_notes:install
|
21
29
|
# to create a fresh initializer with all configuration values.
|
22
30
|
def self.setup
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: release_notes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brandon Robins
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-02-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -145,26 +145,33 @@ files:
|
|
145
145
|
- app/controllers/release_notes/release_notes_controller.rb
|
146
146
|
- app/helpers/release_notes/application_helper.rb
|
147
147
|
- app/views/layouts/release_notes/application.html.erb
|
148
|
+
- app/views/release_notes/broadcasts/_shared.html.erb
|
148
149
|
- app/views/release_notes/release_notes/_shared.html.erb
|
149
150
|
- app/views/release_notes/release_notes/index.html.erb
|
150
151
|
- app/views/release_notes/release_notes/show.html.erb
|
151
152
|
- bin/release_notes
|
152
153
|
- config/routes.rb
|
153
154
|
- features/support/setup.rb
|
155
|
+
- lib/generators/active_record/broadcasts_generator.rb
|
154
156
|
- lib/generators/active_record/release_notes_generator.rb
|
155
|
-
- lib/generators/active_record/templates/
|
157
|
+
- lib/generators/active_record/templates/broadcasts_migration.rb
|
158
|
+
- lib/generators/active_record/templates/release_notes_migration.rb
|
159
|
+
- lib/generators/release_notes/broadcasts_generator.rb
|
156
160
|
- lib/generators/release_notes/install_generator.rb
|
157
161
|
- lib/generators/release_notes/orm_helpers.rb
|
158
162
|
- lib/generators/release_notes/release_notes_generator.rb
|
159
163
|
- lib/generators/release_notes/views_generator.rb
|
160
164
|
- lib/generators/templates/README
|
165
|
+
- lib/generators/templates/broadcast_blank.md
|
161
166
|
- lib/generators/templates/release_notes.rb
|
162
167
|
- lib/generators/templates/update.md
|
163
168
|
- lib/generators/templates/update_blank.md
|
164
169
|
- lib/release_notes.rb
|
165
170
|
- lib/release_notes/cli.rb
|
171
|
+
- lib/release_notes/cli/broadcast.rb
|
166
172
|
- lib/release_notes/cli/helpers.rb
|
167
173
|
- lib/release_notes/engine.rb
|
174
|
+
- lib/release_notes/generators/broadcast.rb
|
168
175
|
- lib/release_notes/generators/release_note.rb
|
169
176
|
- lib/release_notes/version.rb
|
170
177
|
- lib/release_notes/versioning.rb
|