origen 0.52.3 → 0.54.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/config/version.rb +2 -2
- data/lib/origen/application/configuration.rb +2 -1
- data/lib/origen/application/plugins.rb +11 -3
- data/lib/origen/core_ext/integer.rb +18 -0
- data/lib/origen/core_ext/object.rb +14 -0
- data/lib/origen/generator/pattern_sequence.rb +13 -3
- data/lib/origen/parameters.rb +12 -6
- data/lib/origen/pins.rb +64 -12
- data/lib/origen/pins/pin.rb +79 -0
- data/lib/origen/registers/reg.rb +3 -0
- data/lib/origen/sub_blocks.rb +7 -0
- data/lib/origen/users/user.rb +8 -3
- data/origen_app_generators/origen_app_generators.gemspec +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 97f6380df23c488d06f774bd1b58f625b84fa270d83431c82bff7a51c1c39672
|
4
|
+
data.tar.gz: 212e6637822e9cbb64f7fa503c05cef9eb9c43dd28301686d129b335c05685c8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f624165d1f99e3614f56fd872f804b9605b6481266dd5a633ecfddb99a9c8533ff219934341c253fa9146fb68cb23ed73a7cf1a126c017ed6b873b345364cf4a
|
7
|
+
data.tar.gz: 6f3886f8ed80c5032ee8009b8072203eded3cec774a017c6425fbd722c9bee0ce653879fa547e51630a087dc4beb9fcaef7b3986fb9b685dd57edbc0548b0dab
|
data/config/version.rb
CHANGED
@@ -19,7 +19,8 @@ module Origen
|
|
19
19
|
:web_domain,
|
20
20
|
:strict_errors, :unmanaged_dirs, :unmanaged_files, :remotes,
|
21
21
|
:external_app_dirs, :lint_test, :shared, :yammer_group, :rc_url, :rc_workflow,
|
22
|
-
:user_aliases, :release_externally, :gem_name, :disqus_shortname
|
22
|
+
:user_aliases, :release_externally, :gem_name, :disqus_shortname,
|
23
|
+
:default_plugin
|
23
24
|
|
24
25
|
# Mark any attributes that are likely to depend on properties of the target here,
|
25
26
|
# this will raise an error if they are ever accessed before the target has been
|
@@ -38,16 +38,24 @@ module Origen
|
|
38
38
|
def current
|
39
39
|
return nil if @temporary == :none
|
40
40
|
return nil if @disabled
|
41
|
-
name = @temporary || @current ||=
|
41
|
+
name = @temporary || @current ||= begin
|
42
|
+
if Origen.app.session.origen_core[:default_plugin]
|
43
|
+
Origen.app.session.origen_core[:default_plugin]
|
44
|
+
elsif Origen.app.config.default_plugin && !Origen.app.session.origen_core[:default_plugin_cleared_by_user]
|
45
|
+
Origen.app.config.default_plugin
|
46
|
+
end
|
47
|
+
end
|
42
48
|
find { |p| p.name.to_sym == name } if name
|
43
49
|
end
|
44
50
|
|
45
51
|
def current=(name)
|
46
52
|
name = name.to_sym if name
|
47
|
-
|
48
|
-
if name == :none
|
53
|
+
if name == :none || name.nil?
|
49
54
|
@current = nil
|
55
|
+
Origen.app.session.origen_core[:default_plugin] = nil
|
56
|
+
Origen.app.session.origen_core[:default_plugin_cleared_by_user] = true
|
50
57
|
else
|
58
|
+
Origen.app.session.origen_core[:default_plugin] = name
|
51
59
|
@current = name
|
52
60
|
end
|
53
61
|
end
|
@@ -22,6 +22,11 @@ module Origen
|
|
22
22
|
end
|
23
23
|
|
24
24
|
class Integer
|
25
|
+
class << self
|
26
|
+
attr_accessor :width
|
27
|
+
end
|
28
|
+
@width = 32
|
29
|
+
|
25
30
|
if RUBY_VERSION >= '2.4.0'
|
26
31
|
prepend Origen::IntegerExtension
|
27
32
|
end
|
@@ -72,6 +77,19 @@ class Integer
|
|
72
77
|
alias_method :to_xls_col, :to_spreadsheet_column
|
73
78
|
alias_method :to_xlsx_col, :to_spreadsheet_column
|
74
79
|
alias_method :to_spreadsheet_col, :to_spreadsheet_column
|
80
|
+
|
81
|
+
def twos_complement(width = nil)
|
82
|
+
_width = width || Integer.width
|
83
|
+
if self > 2**(_width - 1) - 1
|
84
|
+
fail(RangeError, "Integer #{self} cannot fit into #{_width} bits with 2s complement encoding")
|
85
|
+
elsif self < -1 * (2**(_width - 1))
|
86
|
+
fail(RangeError, "Integer #{self} cannot fit into #{_width} bits with 2s complement encoding")
|
87
|
+
end
|
88
|
+
|
89
|
+
self < 0 ? ((-1 * self) ^ (2**_width - 1)) + 1 : self
|
90
|
+
end
|
91
|
+
alias_method :twos_comp, :twos_complement
|
92
|
+
alias_method :twos_compliment, :twos_complement
|
75
93
|
end
|
76
94
|
|
77
95
|
if RUBY_VERSION <= '2.4.0'
|
@@ -10,4 +10,18 @@ class Object
|
|
10
10
|
end
|
11
11
|
nil
|
12
12
|
end
|
13
|
+
|
14
|
+
# Indicates whether the object is or can be used as an Origen subblock, where
|
15
|
+
# being an Origen subblock is defined as inheriting from either {Origen::Model} or
|
16
|
+
# {Origen::Controller}.
|
17
|
+
# @return [True/False]
|
18
|
+
# @example Subblock NVM (from the Origen guides)
|
19
|
+
# dut.nvm.origen_subblock? #=> true
|
20
|
+
# @example Non-subblocks
|
21
|
+
# 'hi'.origen_subblock? #=> false
|
22
|
+
# @see https://origen-sdk.org/origen/guides/models/defining/#Adding_Sub_Blocks
|
23
|
+
def origen_subblock?
|
24
|
+
self.is_a?(Origen::Model) || self.is_a?(Origen::Controller) || self.is_a?(Origen::SubBlocks::Placeholder)
|
25
|
+
end
|
26
|
+
alias_method :origen_sub_block?, :origen_subblock?
|
13
27
|
end
|
@@ -18,9 +18,19 @@ module Origen
|
|
18
18
|
|
19
19
|
# Execute the given pattern
|
20
20
|
def run(pattern_name)
|
21
|
-
|
22
|
-
|
23
|
-
|
21
|
+
name = Pathname.new(pattern_name).basename
|
22
|
+
ss "START OF PATTERN: #{name}"
|
23
|
+
# Give the app a chance to handle pattern dispatch
|
24
|
+
skip = false
|
25
|
+
Origen.app.listeners_for(:before_pattern_lookup).each do |listener|
|
26
|
+
skip ||= !listener.before_pattern_lookup(pattern_name.to_s)
|
27
|
+
end
|
28
|
+
unless skip
|
29
|
+
pattern = Origen.generator.pattern_finder.find(pattern_name.to_s, {})
|
30
|
+
pattern = pattern[:pattern] if pattern.is_a?(Hash)
|
31
|
+
load pattern
|
32
|
+
end
|
33
|
+
ss "END OF PATTERN: #{name}"
|
24
34
|
end
|
25
35
|
alias_method :call, :run
|
26
36
|
|
data/lib/origen/parameters.rb
CHANGED
@@ -117,13 +117,18 @@ module Origen
|
|
117
117
|
_parameter_sets[name] = Origen::Parameters::Set.new(top_level: true, owner: self)
|
118
118
|
end
|
119
119
|
if options[:inherit]
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
120
|
+
parents = {}
|
121
|
+
Array(options[:inherit]).each do |inherit|
|
122
|
+
kontext = _validate_parameter_set_name(inherit)
|
123
|
+
parent = kontext[:obj]._parameter_sets[kontext[:context]]
|
124
|
+
parents[inherit] = parent
|
125
|
+
if Origen::Parameters.transaction_open && !Origen::Parameters.transaction_redefine
|
126
|
+
define_params_transaction[kontext[:obj]][kontext[:context]][:children] << [self, name]
|
127
|
+
end
|
128
|
+
_parameter_sets[name].copy_defaults_from(parent) unless defaults_already_set
|
124
129
|
end
|
125
|
-
|
126
|
-
_parameter_sets[name].define(
|
130
|
+
parents = parents.values.first if parents.size == 1
|
131
|
+
_parameter_sets[name].define(parents, &block)
|
127
132
|
else
|
128
133
|
_parameter_sets[name].define(&block)
|
129
134
|
end
|
@@ -131,6 +136,7 @@ module Origen
|
|
131
136
|
redefine_children.each { |model, set_name| Origen::Parameters.redefine(model, set_name) }
|
132
137
|
end
|
133
138
|
end
|
139
|
+
_parameter_sets[name]
|
134
140
|
end
|
135
141
|
alias_method :define_parameters, :define_params
|
136
142
|
|
data/lib/origen/pins.rb
CHANGED
@@ -693,27 +693,78 @@ If you meant to define the virtual_pin_group then use the add_virtual_pin_group
|
|
693
693
|
end
|
694
694
|
alias_method :virtual_pin_group, :virtual_pin_groups
|
695
695
|
|
696
|
+
def all_pin_ids(type: nil, **options)
|
697
|
+
case type
|
698
|
+
when :power_pin, :power_pins
|
699
|
+
dut.pins(power_pin: true).map { |n, p| [n, *p.aliases.keys] }.flatten.map { |n| [n, dut.power_pin(n)] }.to_h
|
700
|
+
when :ground_pin, :ground_pins
|
701
|
+
dut.pins(ground_pin: true).map { |n, p| [n, *p.aliases.keys] }.flatten.map { |n| [n, dut.ground_pin(n)] }.to_h
|
702
|
+
when :virtual_pin, :virtual_pins
|
703
|
+
dut.pins(virtual_pin: true).map { |n, p| [n, *p.aliases.keys] }.flatten.map { |n| [n, dut.virtual_pin(n)] }.to_h
|
704
|
+
when :other_pin, :other_pins
|
705
|
+
dut.pins(other_pin: true).map { |n, p| [n, *p.aliases.keys] }.flatten.map { |n| [n, dut.other_pin(n)] }.to_h
|
706
|
+
else
|
707
|
+
# Maintain the legacy lookup of power_pin: true, ground_pin: true, etc.
|
708
|
+
if options[:power_pin]
|
709
|
+
all_pin_ids(type: :power_pin)
|
710
|
+
elsif options[:ground_pin]
|
711
|
+
all_pin_ids(type: :ground_pin)
|
712
|
+
elsif options[:virtual_pin]
|
713
|
+
all_pin_ids(type: :virtual_pin)
|
714
|
+
elsif options[:other_pin]
|
715
|
+
all_pin_ids(type: :other_pin)
|
716
|
+
else
|
717
|
+
dut.pins.map { |n, p| [n, *p.aliases.keys] }.flatten.map { |n| [n, dut.pin(n)] }.to_h
|
718
|
+
end
|
719
|
+
end
|
720
|
+
end
|
721
|
+
|
696
722
|
# Permits access via object.pin(x), returns a hash of all pins if no id
|
697
723
|
# is specified.
|
698
724
|
# ==== Examples
|
699
725
|
# $top.pin(:done)
|
700
726
|
# $soc.pin(:port_a1)
|
701
727
|
# pin(:fail) # Access directly from within the module
|
702
|
-
def pins(
|
703
|
-
|
704
|
-
|
705
|
-
|
706
|
-
|
707
|
-
|
728
|
+
def pins(*ids, &_block)
|
729
|
+
options = (ids.pop if ids.last.is_a?(Hash)) || {}
|
730
|
+
|
731
|
+
# Methods may give an ID of nil, which would previously gloss over
|
732
|
+
# the pin lookup. To maintain backwards compability, reject any nils in the input,
|
733
|
+
# then proceed as normal.
|
734
|
+
ids.reject!(&:nil?)
|
735
|
+
if !ids.empty? || block_given?
|
736
|
+
pins = []
|
737
|
+
|
738
|
+
if block_given?
|
739
|
+
pins += all_pin_ids(options).select { |n, p| yield(n, p) }.values.uniq
|
740
|
+
end
|
741
|
+
|
742
|
+
ids.each do |id|
|
743
|
+
if id.is_a?(Regexp)
|
744
|
+
pins += all_pin_ids(options).select { |n, p| n.to_s =~ id }.values.uniq
|
745
|
+
else
|
746
|
+
pin = Origen.pin_bank.find(id, options)
|
747
|
+
unless pin
|
748
|
+
puts <<-END
|
708
749
|
You have tried to reference pin :#{id} within #{self.class} but it does not exist, this could be
|
709
750
|
because the pin has not been defined yet or it is an alias that is not available in the current context.
|
710
751
|
|
711
752
|
If you meant to define the pin then use the add_pin method instead.
|
712
753
|
|
713
|
-
|
714
|
-
|
754
|
+
END
|
755
|
+
fail 'Pin not found'
|
756
|
+
end
|
757
|
+
pins << pin
|
758
|
+
end
|
759
|
+
end
|
760
|
+
|
761
|
+
# Maintain return value of a single pin object if only given a single identifier
|
762
|
+
if ids.size == 1 && !ids.first.is_a?(Regexp)
|
763
|
+
pins.first
|
764
|
+
else
|
765
|
+
options[:keep_duplicates] ? pins : pins.uniq!
|
766
|
+
PinCollection.new(self, *pins, options)
|
715
767
|
end
|
716
|
-
pin
|
717
768
|
else
|
718
769
|
if options[:power_pin]
|
719
770
|
Origen.pin_bank.power_pins
|
@@ -741,12 +792,13 @@ If you meant to define the pin then use the add_pin method instead.
|
|
741
792
|
alias_method :power_pin, :power_pins
|
742
793
|
|
743
794
|
# Equivalent to the pins method but considers ground pins rather than regular pins
|
744
|
-
def ground_pins(
|
745
|
-
|
795
|
+
def ground_pins(*ids, &block)
|
796
|
+
options = (ids.pop if ids.last.is_a?(Hash)) || {}
|
797
|
+
|
746
798
|
options = {
|
747
799
|
ground_pin: true
|
748
800
|
}.merge(options)
|
749
|
-
pins(
|
801
|
+
pins(*ids, options, &block)
|
750
802
|
end
|
751
803
|
alias_method :ground_pin, :ground_pins
|
752
804
|
|
data/lib/origen/pins/pin.rb
CHANGED
@@ -1072,6 +1072,85 @@ module Origen
|
|
1072
1072
|
end
|
1073
1073
|
end
|
1074
1074
|
|
1075
|
+
def index?(context: nil)
|
1076
|
+
!!index(context: context).nil?
|
1077
|
+
end
|
1078
|
+
|
1079
|
+
def index(context: nil)
|
1080
|
+
if context.is_a?(Symbol)
|
1081
|
+
# Context pin group provided
|
1082
|
+
group = groups[context].instance_variable_get(:@store)
|
1083
|
+
if group
|
1084
|
+
group.index(self)
|
1085
|
+
end
|
1086
|
+
elsif context.is_a?(Array)
|
1087
|
+
# Anonymous pin group given
|
1088
|
+
context.map { |p| p.is_a?(Symbol) ? owner.pin(p) : p }.index(self)
|
1089
|
+
else
|
1090
|
+
# Try an index based off of the pin name.
|
1091
|
+
# Only works if the pin ends in a decimal. Otherwise, returns nil.
|
1092
|
+
i = name.to_s.index(/\d+$/)
|
1093
|
+
if i
|
1094
|
+
name.to_s[i..-1].to_i
|
1095
|
+
end
|
1096
|
+
end
|
1097
|
+
end
|
1098
|
+
|
1099
|
+
def mask(context: nil)
|
1100
|
+
index = context.is_a?(Integer) ? context : self.index(context: context)
|
1101
|
+
|
1102
|
+
if index.nil? && context.nil?
|
1103
|
+
# If the index is nil and no context was given, no implicit index could be resolved
|
1104
|
+
fail("Could not discern pin :#{name}'s implicit index!")
|
1105
|
+
elsif index.nil?
|
1106
|
+
# If the index is nil and some context was given, then the pin is not in the given context
|
1107
|
+
fail("Pin :#{name} is not a member of the given context!")
|
1108
|
+
end
|
1109
|
+
|
1110
|
+
2**index
|
1111
|
+
end
|
1112
|
+
alias_method :set_mask, :mask
|
1113
|
+
alias_method :smask, :mask
|
1114
|
+
|
1115
|
+
def clear_mask(context: nil, size: nil)
|
1116
|
+
index = context.is_a?(Integer) ? context : self.index(context: context)
|
1117
|
+
|
1118
|
+
if index.nil? && context.nil?
|
1119
|
+
# If the index is nil and no context was given, no implicit index could be resolved
|
1120
|
+
fail("Could not discern pin :#{name}'s implicit index!")
|
1121
|
+
elsif index.nil?
|
1122
|
+
# If the index is nil and some context was given, then the pin is not in the given context
|
1123
|
+
fail("Pin :#{name} is not a member of the given context!")
|
1124
|
+
end
|
1125
|
+
|
1126
|
+
if size && context && !context.is_a?(Integer)
|
1127
|
+
# A context was given, that was not just an Integer, and size was given
|
1128
|
+
# Raise an exception as these two conflict.
|
1129
|
+
fail('Both a sized context (e.g. pin group) and a :size option cannot be used simultaneously!')
|
1130
|
+
elsif size
|
1131
|
+
# A size option was given. Use that.
|
1132
|
+
((2**size) - 1) ^ (1 << index)
|
1133
|
+
elsif context.is_a?(Symbol)
|
1134
|
+
((2**groups[context].instance_variable_get(:@store).size) - 1) ^ (1 << index)
|
1135
|
+
elsif context.respond_to?(:size) && !context.is_a?(Integer)
|
1136
|
+
# PinCollection or Array
|
1137
|
+
((2**context.size) - 1) ^ (1 << index)
|
1138
|
+
else
|
1139
|
+
# No size option was given. Use the implicit index instead.
|
1140
|
+
(2**index) - 1
|
1141
|
+
end
|
1142
|
+
end
|
1143
|
+
alias_method :clr_mask, :clear_mask
|
1144
|
+
alias_method :cmask, :clear_mask
|
1145
|
+
|
1146
|
+
def named?(n)
|
1147
|
+
if n.is_a?(Regexp)
|
1148
|
+
[name.to_s, *aliases.keys].any? { |na| na =~ n }
|
1149
|
+
else
|
1150
|
+
[name.to_s, *aliases.keys.map(&:to_s)].include?(n.to_s)
|
1151
|
+
end
|
1152
|
+
end
|
1153
|
+
|
1075
1154
|
def method_missing(m, *args, &block)
|
1076
1155
|
if meta.include? m
|
1077
1156
|
meta[m]
|
data/lib/origen/registers/reg.rb
CHANGED
data/lib/origen/sub_blocks.rb
CHANGED
@@ -274,6 +274,13 @@ module Origen
|
|
274
274
|
def sub_block(name = nil, options = {})
|
275
275
|
name, options = nil, name if name.is_a?(Hash)
|
276
276
|
return sub_blocks unless name
|
277
|
+
|
278
|
+
if name.is_a?(Class)
|
279
|
+
return sub_blocks.select { |n, s| s.is_a?(name) }
|
280
|
+
elsif name.origen_sub_block?
|
281
|
+
return sub_block(name.class)
|
282
|
+
end
|
283
|
+
|
277
284
|
if i = options.delete(:instances)
|
278
285
|
# permit creating multiple instances of a particular sub_block class
|
279
286
|
# can pass array for base_address, which will be processed above
|
data/lib/origen/users/user.rb
CHANGED
@@ -3,6 +3,9 @@ module Origen
|
|
3
3
|
class User
|
4
4
|
require 'openssl'
|
5
5
|
require 'digest/sha1'
|
6
|
+
# Required for STDIN.noecho to work
|
7
|
+
# https://stackoverflow.com/questions/9324697/why-cannot-use-instance-method-noecho-of-class-io
|
8
|
+
require 'io/console'
|
6
9
|
|
7
10
|
attr_reader :role
|
8
11
|
attr_writer :name, :email
|
@@ -45,7 +48,9 @@ module Origen
|
|
45
48
|
end
|
46
49
|
|
47
50
|
def id(options = {})
|
48
|
-
|
51
|
+
# Way to force Origen to use the new user ID in case of WSL where the core ID might not match the WSL login name
|
52
|
+
# User needs to setup the environment variable in their .bashrc or .tcshrc file
|
53
|
+
ENV['ORIGEN_USER_ID'] || @id.to_s.downcase
|
49
54
|
end
|
50
55
|
alias_method :core_id, :id
|
51
56
|
alias_method :username, :id
|
@@ -67,7 +72,7 @@ module Origen
|
|
67
72
|
end
|
68
73
|
|
69
74
|
def name
|
70
|
-
@name ||= ENV['ORIGEN_NAME'] || name_from_rc || @id
|
75
|
+
@name ||= ENV['ORIGEN_NAME'] || ENV['ORIGEN_USER_NAME'] || name_from_rc || @id
|
71
76
|
end
|
72
77
|
|
73
78
|
def name_from_rc
|
@@ -76,7 +81,7 @@ module Origen
|
|
76
81
|
|
77
82
|
def email(options = {})
|
78
83
|
if current?
|
79
|
-
@email ||= ENV['ORIGEN_EMAIL'] || email_from_rc || begin
|
84
|
+
@email ||= ENV['ORIGEN_EMAIL'] || ENV['ORIGEN_USER_EMAIL'] || email_from_rc || begin
|
80
85
|
if Origen.site_config.email_domain
|
81
86
|
"#{id}@#{Origen.site_config.email_domain}"
|
82
87
|
end
|
@@ -8,7 +8,7 @@ Gem::Specification.new do |s|
|
|
8
8
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.8.11".freeze) if s.respond_to? :required_rubygems_version=
|
9
9
|
s.require_paths = ["lib".freeze]
|
10
10
|
s.authors = ["Stephen McGinty".freeze]
|
11
|
-
s.date = "2019-
|
11
|
+
s.date = "2019-09-13"
|
12
12
|
s.email = ["stephen.f.mcginty@gmail.com".freeze]
|
13
13
|
s.files = ["bin/boot.rb".freeze, "config/application.rb".freeze, "config/boot.rb".freeze, "config/commands.rb".freeze, "config/shared_commands.rb".freeze, "config/version.rb".freeze, "lib/origen_app_generators.rb".freeze, "lib/origen_app_generators/application.rb".freeze, "lib/origen_app_generators/base.rb".freeze, "lib/origen_app_generators/empty_application.rb".freeze, "lib/origen_app_generators/empty_plugin.rb".freeze, "lib/origen_app_generators/new.rb".freeze, "lib/origen_app_generators/new_app_tests.rb".freeze, "lib/origen_app_generators/origen_infrastructure/app_generator_plugin.rb".freeze, "lib/origen_app_generators/plugin.rb".freeze, "lib/origen_app_generators/test_engineering/common.rb".freeze, "lib/origen_app_generators/test_engineering/stand_alone_application.rb".freeze, "lib/origen_app_generators/test_engineering/test_block.rb".freeze, "templates/app_generators".freeze, "templates/app_generators/application".freeze, "templates/app_generators/application/.gitignore".freeze, "templates/app_generators/application/.irbrc".freeze, "templates/app_generators/application/.rspec".freeze, "templates/app_generators/application/.travis.yml".freeze, "templates/app_generators/application/Gemfile".freeze, "templates/app_generators/application/Rakefile".freeze, "templates/app_generators/application/app".freeze, "templates/app_generators/application/app/blocks".freeze, "templates/app_generators/application/app/blocks/top_level.rb".freeze, "templates/app_generators/application/app/lib".freeze, "templates/app_generators/application/app/lib/module.rb".freeze, "templates/app_generators/application/app/templates".freeze, "templates/app_generators/application/app/templates/web".freeze, "templates/app_generators/application/app/templates/web/index.md.erb".freeze, "templates/app_generators/application/app/templates/web/layouts".freeze, "templates/app_generators/application/app/templates/web/layouts/_basic.html.erb".freeze, "templates/app_generators/application/app/templates/web/partials".freeze, "templates/app_generators/application/app/templates/web/partials/_navbar.html.erb".freeze, "templates/app_generators/application/app/templates/web/release_notes.md.erb".freeze, "templates/app_generators/application/config".freeze, "templates/app_generators/application/config/application.rb".freeze, "templates/app_generators/application/config/boot.rb".freeze, "templates/app_generators/application/config/commands.rb".freeze, "templates/app_generators/application/config/maillist_dev.txt".freeze, "templates/app_generators/application/config/maillist_prod.txt".freeze, "templates/app_generators/application/config/version.rb".freeze, "templates/app_generators/application/doc".freeze, "templates/app_generators/application/doc/history".freeze, "templates/app_generators/application/dot_keep".freeze, "templates/app_generators/application/origen_core_session".freeze, "templates/app_generators/application/spec".freeze, "templates/app_generators/application/spec/spec_helper.rb".freeze, "templates/app_generators/application/target".freeze, "templates/app_generators/application/target/debug.rb".freeze, "templates/app_generators/application/target/default.rb".freeze, "templates/app_generators/application/target/production.rb".freeze, "templates/app_generators/new".freeze, "templates/app_generators/new/generator.rb".freeze, "templates/app_generators/new/info.md.erb".freeze, "templates/app_generators/origen_infrastructure".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/application.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/base.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/module.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/app/lib/plugin.rb".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/config".freeze, "templates/app_generators/origen_infrastructure/app_generator_plugin/config/load_generators.rb".freeze, "templates/app_generators/plugin".freeze, "templates/app_generators/plugin/Gemfile".freeze, "templates/app_generators/plugin/Rakefile".freeze, "templates/app_generators/plugin/app".freeze, "templates/app_generators/plugin/app/templates".freeze, "templates/app_generators/plugin/app/templates/web".freeze, "templates/app_generators/plugin/app/templates/web/index.md.erb".freeze, "templates/app_generators/plugin/app/templates/web/partials".freeze, "templates/app_generators/plugin/app/templates/web/partials/_navbar_external.html.erb".freeze, "templates/app_generators/plugin/app/templates/web/partials/_navbar_internal.html.erb".freeze, "templates/app_generators/plugin/config".freeze, "templates/app_generators/plugin/config/boot.rb".freeze, "templates/app_generators/plugin/gemspec.rb".freeze, "templates/app_generators/test_engineering".freeze, "templates/app_generators/test_engineering/environment".freeze, "templates/app_generators/test_engineering/environment/j750.rb".freeze, "templates/app_generators/test_engineering/environment/uflex.rb".freeze, "templates/app_generators/test_engineering/environment/v93k.rb".freeze, "templates/app_generators/test_engineering/stand_alone_application".freeze, "templates/app_generators/test_engineering/stand_alone_application/.keep".freeze, "templates/app_generators/test_engineering/test_block".freeze, "templates/app_generators/test_engineering/test_block/.keep".freeze]
|
14
14
|
s.homepage = "http://origen-sdk.org/origen_app_generators".freeze
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: origen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.54.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stephen McGinty
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-09-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -70,14 +70,14 @@ dependencies:
|
|
70
70
|
name: bundler
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - ">"
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '1.7'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - ">"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '1.7'
|
83
83
|
- !ruby/object:Gem::Dependency
|