origen 0.7.4 → 0.7.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0a60b5bfd209deedf03b7570995fc99a7b3b7a8b
4
- data.tar.gz: b5e59ccbdd265391a4f112e815a14611bde2a5b0
3
+ metadata.gz: 1276d6eeb4622b1418a9d51ae8d8a0f219bdf280
4
+ data.tar.gz: e97b54e3ccc539c3c86186ebc22a07117a1aca51
5
5
  SHA512:
6
- metadata.gz: 9b698ff5114c367f2ada6b9558e3f89a66fb2e52cc7ee8c1af5611861c77731c77283f364e0260f6f7a2b996f0636b3904190df072fe92cd41e582aa0f245665
7
- data.tar.gz: 7b44b93ef1e695cb88b72d89fe2e2bd01722c97b69e8aa133b4434a565063722caa8603498800e2d95afe82f4a2556d8284f6d3870a96f9a9df086b202eb5d3b
6
+ metadata.gz: 5260a90e5e42360a77301d73293cf5eeafa3baa657a826be98b243ec27b599e737c731b0ddbcc5131efcfbe297f3c4328f2aee342a7592caa80968d67ac7e9e3
7
+ data.tar.gz: b27abbbbf59392c3b119db63d2b480a11a517b961109633df713bd976bc4b8f7478182e0d243cdd1360b2479588e173e6d44e126dfe254c5850a1b0b2380c97f
data/config/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module Origen
2
2
  MAJOR = 0
3
3
  MINOR = 7
4
- BUGFIX = 4
4
+ BUGFIX = 5
5
5
  DEV = nil
6
6
 
7
7
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
@@ -475,7 +475,11 @@ module Origen
475
475
  end
476
476
 
477
477
  def plugins
478
- @plugins ||= Plugins.new
478
+ if Origen.app_loaded?
479
+ @plugins ||= Plugins.new
480
+ else
481
+ Plugins.new
482
+ end
479
483
  end
480
484
 
481
485
  def plugins_manager
@@ -675,10 +679,6 @@ module Origen
675
679
  end
676
680
  end
677
681
 
678
- def load_console
679
- load_target!
680
- end
681
-
682
682
  def load_target!(options = {})
683
683
  options = {
684
684
  force_debug: false
@@ -5,11 +5,9 @@ module Origen
5
5
  # An instance of this class is instantiated as Origen.app.plugins
6
6
  class Plugins < ::Array
7
7
  def initialize
8
- @plugins ||= begin
9
- top = Origen.app
10
- Origen._applications_lookup[:name].each do |_name, app|
11
- self << app unless app == top
12
- end
8
+ top = Origen.app
9
+ Origen._applications_lookup[:name].each do |_name, app|
10
+ self << app unless app == top
13
11
  end
14
12
  end
15
13
 
@@ -236,7 +236,7 @@ module Origen
236
236
  def confirm_production_ready(_options = {})
237
237
  # The caller would have already verified the status before submission
238
238
  if Origen.running_locally?
239
- if Origen.mode.production?
239
+ if Origen.mode.production? && Origen.app.rc
240
240
  unless Origen.app.rc.local_modifications.empty?
241
241
  puts <<-EOT
242
242
  Your workspace has local modifications that are preventing the requested action
@@ -50,12 +50,14 @@ Usage: origen i [options]
50
50
  Origen.app.plugins.temporary = options[:current_plugin] if options[:current_plugin]
51
51
  Origen.environment.temporary = options[:environment] if options[:environment]
52
52
  Origen.target.temporary = options[:target] if options[:target]
53
- Origen.app.load_console
53
+ Origen.app.load_target!
54
54
  Origen.app.runner.prepare_directories # Ensure tmp et all exist
55
+ listeners_for(:interactive_startup).each(&:interactive_startup)
55
56
 
56
- if defined?(Pry) && options[:pry]
57
- include ConsoleMethods
58
- # rubocop:disable Debugger, EmptyLines
57
+ begin
58
+ if defined?(Pry) && options[:pry]
59
+ include ConsoleMethods
60
+ # rubocop:disable Debugger, EmptyLines
59
61
 
60
62
 
61
63
 
@@ -63,7 +65,7 @@ Usage: origen i [options]
63
65
 
64
66
 
65
67
 
66
- binding.pry
68
+ binding.pry
67
69
 
68
70
 
69
71
 
@@ -71,9 +73,13 @@ Usage: origen i [options]
71
73
 
72
74
 
73
75
 
74
- # rubocop:enable Debugger, EmptyLines
75
- else
76
- IRB::ExtendCommandBundle.send :include, Origen::ConsoleMethods
77
- IRB.start
76
+ # rubocop:enable Debugger, EmptyLines
77
+ else
78
+ IRB::ExtendCommandBundle.send :include, Origen::ConsoleMethods
79
+ IRB.start
80
+ end
81
+ ensure
82
+ listeners_for(:interactive_shutdown).each(&:interactive_shutdown)
83
+
78
84
  end
79
85
  end
data/lib/origen/ports.rb CHANGED
@@ -53,7 +53,7 @@ module Origen
53
53
  end
54
54
  end
55
55
 
56
- def respond_to?(sym)
56
+ def respond_to?(sym, include_all = false)
57
57
  has_port?(sym) || super(sym)
58
58
  end
59
59
 
@@ -41,7 +41,12 @@ module Origen
41
41
  end
42
42
 
43
43
  def respond_to?(sym) # :nodoc:
44
- _registers.key?(sym) || super(sym)
44
+ if sym[-1] == '!'
45
+ r = sym.to_s.chop.to_sym
46
+ _registers.key?(r) || super(sym)
47
+ else
48
+ _registers.key?(sym) || super(sym)
49
+ end
45
50
  end
46
51
 
47
52
  def delete_registers
@@ -104,7 +104,8 @@ module Origen
104
104
  store!
105
105
  end
106
106
  reverse_each.with_index do |bit, i|
107
- bit.write(v.first[i])
107
+ bit.instance_variable_set('@updated_post_reset', true)
108
+ bit.instance_variable_set('@data', v.first[i])
108
109
  end
109
110
  end
110
111
  if size
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.7.4
4
+ version: 0.7.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen McGinty
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-01 00:00:00.000000000 Z
11
+ date: 2016-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport