chione 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ef14891907c37d8047d88177ab303208f073f8e0e33e940cbf56989a1e45e3ac
4
- data.tar.gz: 35eaace97f89719cd01ba69fa437baed47bdfc8bcb84f918ba4c7e0ce08c512e
3
+ metadata.gz: 942a44dbe1220f53a15e2677191e58b9a76105e786f35798120dc8d3d3a22312
4
+ data.tar.gz: e15195e1c3d30184b3f1ee0fde4ec572da7171dd957674099d5b5ec1446afe75
5
5
  SHA512:
6
- metadata.gz: a2d8877f54851147ce6760c041e302fce3e1e1a55b6d64eaa0122c173b13b61b188d47d3bac630438bac81d25bf5b32b26d9b206ee6129b4513e459564183309
7
- data.tar.gz: b085ac2e31c52eeeaee5f9776a1049ba6172c1d05927ea72b8229f8476c080a93cc732e9ab17c12cabc940630a056908c5a48277cb89785e44bf816b31245867
6
+ metadata.gz: a17c48a8a466bc5e734f98d2b6d6ec393e785671ba415cd1ae45b637bc1896a6526cd64b309a9c16db48b8d541f1a2eef47f3517c1ff054a5e6bd20536d28e16
7
+ data.tar.gz: 7d5afadc0db038a8ff866fb10a237672c2687ea29c49a41f0faf24ee382df690626970336d78da88c3292410f41a38fa87d44dffd9fe3db5833e43d22a58dbff
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
data/ChangeLog CHANGED
@@ -1,3 +1,151 @@
1
+ 2018-06-02 Michael Granger <ged@FaerieMUD.org>
2
+
3
+ * .hgtags:
4
+ Added tag v0.5.0 for changeset 1fb4fb6761f2
5
+ [4a799c04f87f] [tip]
6
+
7
+ * .hgsigs:
8
+ Added signature for changeset 8b19a6b5fb12
9
+ [1fb4fb6761f2] [v0.5.0]
10
+
11
+ * History.md, chione.gemspec, lib/chione.rb:
12
+ Bump the minor version, update history.
13
+ [8b19a6b5fb12]
14
+
15
+ * README.md, Rakefile, chione.gemspec:
16
+ Update URLs, copyright dates
17
+ [349fe4d64ec7]
18
+
19
+ * lib/chione/archetype.rb, lib/chione/system.rb:
20
+ Fix blank archetype inspect details
21
+ [c64a0a142f5e]
22
+
23
+ * lib/chione/world.rb, spec/chione/world_spec.rb:
24
+ Update configuration to use chione namespace
25
+ [27a0eec7c366]
26
+
27
+ 2017-12-11 Michael Granger <ged@FaerieMUD.org>
28
+
29
+ * .hgtags:
30
+ Added tag v0.4.0 for changeset 61536d84d951
31
+ [e23f5a4ba13d]
32
+
33
+ * .hgsigs:
34
+ Added signature for changeset b86a9cde058d
35
+ [61536d84d951] [v0.4.0]
36
+
37
+ * History.md, chione.gemspec, lib/chione.rb:
38
+ Bump the minor version, update history.
39
+ [b86a9cde058d]
40
+
41
+ * .ruby-version, lib/chione/system.rb, lib/chione/world.rb,
42
+ spec/chione/system_spec.rb:
43
+ Refactor tick and timing events.
44
+
45
+ COMPAT: the arguments passed to System.every_tick blocks are now
46
+ only the delta and the tick count.
47
+ [38c42eb46418]
48
+
49
+ 2017-10-04 Michael Granger <ged@FaerieMUD.org>
50
+
51
+ * lib/chione/world.rb:
52
+ Normalize entity IDs in the World API
53
+ [d5736d289092]
54
+
55
+ * lib/chione/entity.rb, lib/chione/world.rb,
56
+ spec/chione/entity_spec.rb:
57
+ Pass init args through Component.add_component
58
+ [ba43a21631c5]
59
+
60
+ * lib/chione/system.rb:
61
+ Fix API docs for Chione::System::on
62
+ [7ee9fc0c0c8e]
63
+
64
+ * certs/ged.pem:
65
+ Update gem-signing cert
66
+ [e7986014f2c2]
67
+
68
+ 2017-07-21 Michael Granger <ged@FaerieMUD.org>
69
+
70
+ * chione.gemspec, lib/chione.rb, lib/chione/archetype.rb,
71
+ lib/chione/aspect.rb, lib/chione/component.rb, lib/chione/system.rb,
72
+ lib/chione/world.rb, spec/chione/archetype_spec.rb,
73
+ spec/chione/component_spec.rb, spec/chione/system_spec.rb:
74
+ Work on System execution and Component construction
75
+
76
+ - Add constructor arguments to component-creation paths
77
+ - Add Aspect#archetype and Archetype.from_aspect
78
+ - Add a processing block to Component field declaration
79
+ [e0452d211146]
80
+
81
+ 2017-07-12 Michael Granger <ged@FaerieMUD.org>
82
+
83
+ * chione.gemspec, lib/chione.rb, lib/chione/component.rb:
84
+ Add the entity ID to Component's inspect output
85
+ [7f1190b563a6]
86
+
87
+ * spec/chione/component_spec.rb:
88
+ Add coverage for Component #inspect.
89
+ [2de145d530d5]
90
+
91
+ * lib/chione/aspect.rb, lib/chione/system.rb, lib/chione/world.rb,
92
+ spec/chione/aspect_spec.rb, spec/chione/system_spec.rb:
93
+ Add caching and #inserted/#removed callbacks for aspect-membership
94
+ to Systems.
95
+ [6eed9e4055be]
96
+
97
+ 2017-07-11 Michael Granger <ged@FaerieMUD.org>
98
+
99
+ * .gems, Manifest.txt, Rakefile, chione.gemspec,
100
+ lib/chione/archetype.rb, lib/chione/aspect.rb, lib/chione/entity.rb,
101
+ lib/chione/fixtures.rb, lib/chione/fixtures/entities.rb,
102
+ lib/chione/iterating_system.rb, lib/chione/system.rb,
103
+ lib/chione/world.rb, spec/chione/aspect_spec.rb,
104
+ spec/chione/iterating_system_spec.rb, spec/chione/system_spec.rb,
105
+ spec/chione/world_spec.rb, spec/spec_helper.rb:
106
+ Start adding system execution strategies
107
+
108
+ - Add fixtures collection
109
+ - Add Aspect#matches? to match individual entities
110
+ - Rename some component-API methods on the World for clarity (with
111
+ aliases to the old methods)
112
+ - Add Chione::IteratingSystem
113
+ - Add stubs for System#inserted and #removed
114
+ [783c4a657041]
115
+
116
+ 2017-07-07 Michael Granger <ged@FaerieMUD.org>
117
+
118
+ * lib/chione/component.rb, lib/chione/world.rb,
119
+ spec/chione/component_spec.rb:
120
+ Add the entity ID to components on registration
121
+ [cf37f1305ad2]
122
+
123
+ * lib/chione/system.rb, spec/chione/system_spec.rb:
124
+ Remove aspects from event handler declarations.
125
+ [a8f3ac7113c3]
126
+
127
+ * lib/chione/system.rb, spec/chione/aspect_spec.rb,
128
+ spec/chione/system_spec.rb:
129
+ Checkpoint before undoing experimental event-based system execution
130
+ model
131
+ [f89f24dfb25c]
132
+
133
+ 2017-07-05 Michael Granger <ged@FaerieMUD.org>
134
+
135
+ * lib/chione/system.rb, lib/chione/world.rb,
136
+ spec/chione/system_spec.rb:
137
+ Add execution models to Systems
138
+ [c9e80cf737e7]
139
+
140
+ 2017-06-30 Michael Granger <ged@FaerieMUD.org>
141
+
142
+ * README.md, lib/chione/archetype.rb, lib/chione/aspect.rb,
143
+ lib/chione/entity.rb, lib/chione/system.rb, lib/chione/world.rb,
144
+ spec/chione/aspect_spec.rb, spec/chione/entity_spec.rb,
145
+ spec/chione/system_spec.rb, spec/chione/world_spec.rb:
146
+ Refactor for thinner entities and systems with named aspects
147
+ [d69678296749]
148
+
1
149
  2017-06-06 Michael Granger <ged@FaerieMUD.org>
2
150
 
3
151
  * lib/chione/aspect.rb, lib/chione/component.rb, lib/chione/entity.rb,
@@ -5,7 +153,7 @@
5
153
  Pull up common #inspect functionality into a mixin
6
154
 
7
155
  ...and use it everywhere.
8
- [0eb1e6c25953] [tip]
156
+ [0eb1e6c25953]
9
157
 
10
158
  * lib/chione/world.rb, spec/chione/world_spec.rb:
11
159
  Added World#remove_system and _manager; publish the instance of
@@ -16,7 +164,7 @@
16
164
 
17
165
  * .hgtags:
18
166
  Added tag v0.3.0 for changeset c91f71b3d7d9
19
- [06fdcde9eb00] [github/master]
167
+ [06fdcde9eb00]
20
168
 
21
169
  * .hgsigs:
22
170
  Added signature for changeset 0d453cae95c3
data/History.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## v0.5.0 [2018-06-02] Michael Granger <ged@FaerieMUD.org>
2
+
3
+ Bugfixes:
4
+
5
+ - Fix blank archetype inspect details
6
+
7
+ Changes:
8
+
9
+ - Update configuration to use chione namespace. The `gameworld` config section
10
+ is now `world` under the `chione` section.
11
+
12
+
1
13
  ## v0.4.0 [2017-12-11] Michael Granger <ged@FaerieMUD.org>
2
14
 
3
15
  Enhancements:
@@ -11,7 +23,8 @@ Enhancements:
11
23
  - Add the entity ID to Component's inspect output
12
24
  - Add Chione::IteratingSystem
13
25
  - Entities are thinner and systems make better use of named aspects
14
- - Added World#remove_system and _manager; publish the instance of /added and /removed events
26
+ - Added World#remove_system and _manager; publish the instance of /added and
27
+ /removed events
15
28
  - Pull up common #inspect functionality into a mixin and use it everywhere.
16
29
 
17
30
  Changes:
@@ -19,7 +32,8 @@ Changes:
19
32
  - The `every_tick` callback is now only passed the delta and the tick count
20
33
  - Init arguments are passed through to Component.add_component
21
34
  - Add a processing block to Component field declaration
22
- - Rename some component-API methods on the World for clarity (with aliases to the old methods)
35
+ - Rename some component-API methods on the World for clarity (with aliases to
36
+ the old methods)
23
37
  - Add the entity ID to components on registration
24
38
  - Event handler declarations no longer include an aspect.
25
39
 
data/README.md CHANGED
@@ -73,7 +73,7 @@ and generate the API documentation.
73
73
 
74
74
  ## License
75
75
 
76
- Copyright (c) 2015-2017, Michael Granger
76
+ Copyright (c) 2015-2018, Michael Granger
77
77
  All rights reserved.
78
78
 
79
79
  Redistribution and use in source and binary forms, with or without
data/Rakefile CHANGED
@@ -23,10 +23,10 @@ hoespec = Hoe.spec 'chione' do |spec|
23
23
  spec.extra_rdoc_files = FileList[ '*.rdoc', '*.md' ]
24
24
  spec.license 'BSD-3-Clause'
25
25
  spec.urls = {
26
- home: 'http://deveiate.org/projects/LinguaThauma',
27
- code: 'http://repo.deveiate.org/LinguaThauma',
28
- docs: 'http://deveiate.org/code/LinguaThauma',
29
- github: 'http://github.com/ged/LinguaThauma',
26
+ home: 'http://deveiate.org/projects/chione',
27
+ code: 'http://repo.deveiate.org/chione',
28
+ docs: 'http://deveiate.org/code/chione',
29
+ github: 'http://github.com/ged/chione',
30
30
  }
31
31
 
32
32
  spec.developer 'Michael Granger', 'ged@FaerieMUD.org'
data/lib/chione.rb CHANGED
@@ -12,7 +12,7 @@ module Chione
12
12
  extend Loggability
13
13
 
14
14
  # Gem version
15
- VERSION = '0.4.0'
15
+ VERSION = '0.5.0'
16
16
 
17
17
 
18
18
  # Loggability API -- set up a log host
@@ -105,9 +105,10 @@ module Chione::Archetype
105
105
  def inspect_details
106
106
  if self.from_aspect
107
107
  return "Chione::Archetype from %p" % [ self.from_aspect ]
108
+ elsif !self.components.empty?
109
+ return "Chione::Archetype for creating entities with %p" % [ self.components.keys ]
108
110
  else
109
- return "Chione::Archetype for creating entities with %s" %
110
- [ self.components.keys.map( &:name ).join(', ') ]
111
+ return "blank Chione::Archetype"
111
112
  end
112
113
  end
113
114
 
data/lib/chione/system.rb CHANGED
@@ -96,6 +96,7 @@ class Chione::System
96
96
 
97
97
  ### Create a new Chione::System for the specified +world+.
98
98
  def initialize( world, * )
99
+ self.log.debug "Setting up %p" % [ self.class ]
99
100
  @world = world
100
101
  @aspect_entities = self.class.aspects.each_with_object( {} ) do |(aspect_name, aspect), hash|
101
102
  matching_set = world.entities_with( aspect )
data/lib/chione/world.rb CHANGED
@@ -18,8 +18,8 @@ class Chione::World
18
18
  # Loggability API -- send logs to the Chione logger
19
19
  log_to :chione
20
20
 
21
- # Configurability API -- use the 'gameworld' section of the config
22
- configurability :gameworld do
21
+ # Configurability API -- use the 'world' section of the config
22
+ configurability 'chione.world' do
23
23
 
24
24
  ##
25
25
  # :singleton-method:
@@ -94,15 +94,12 @@ describe Chione::World do
94
94
  describe "configuration" do
95
95
 
96
96
  it "is done via the Configurability API" do
97
- new_stop_wait = Chione::World::CONFIG_DEFAULTS[:max_stop_wait] + 10
98
97
  config = Configurability.default_config
99
- config.gameworld = {
100
- max_stop_wait: new_stop_wait
101
- }
98
+ config.chione.world.max_stop_wait = 15
102
99
 
103
- config.install
104
-
105
- expect( described_class.max_stop_wait ).to eq( new_stop_wait )
100
+ expect {
101
+ config.install
102
+ }.to change { described_class.max_stop_wait }.to( 15 )
106
103
  end
107
104
 
108
105
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chione
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Granger
@@ -35,7 +35,7 @@ cert_chain:
35
35
  X0qdrKi+2aZZ0NGuFj9AItBsVmAvkBGIpX4TEKQp5haEbPpmaqO5nIIhV26PXmyT
36
36
  OMKv6pWsoS81vw5KAGBmfX8nht/Py90DQrbRvakATGI=
37
37
  -----END CERTIFICATE-----
38
- date: 2017-12-12 00:00:00.000000000 Z
38
+ date: 2018-06-02 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: loggability
@@ -284,7 +284,7 @@ files:
284
284
  - spec/chione/world_spec.rb
285
285
  - spec/chione_spec.rb
286
286
  - spec/spec_helper.rb
287
- homepage: http://deveiate.org/projects/LinguaThauma
287
+ homepage: http://deveiate.org/projects/chione
288
288
  licenses:
289
289
  - BSD-3-Clause
290
290
  metadata: {}
@@ -306,7 +306,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
306
306
  version: '0'
307
307
  requirements: []
308
308
  rubyforge_project:
309
- rubygems_version: 2.6.14
309
+ rubygems_version: 2.7.7
310
310
  signing_key:
311
311
  specification_version: 4
312
312
  summary: An Entity/Component System framework inspired by Artemis
metadata.gz.sig CHANGED
Binary file