Skip to content

Commit

Permalink
Release 0.45.0
Browse files Browse the repository at this point in the history
  • Loading branch information
sschmid committed Nov 13, 2017
1 parent 34c9843 commit 9877462
Show file tree
Hide file tree
Showing 222 changed files with 368 additions and 267 deletions.
Binary file modified Build/deploy/Entitas-CSharp.zip
Binary file not shown.
Binary file modified Build/deploy/Entitas-Unity.zip
Binary file not shown.
Binary file modified Build/deploy/Entitas.docset.tgz
Binary file not shown.
2 changes: 1 addition & 1 deletion Entitas/Entitas/version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.44.0
0.45.0
34 changes: 34 additions & 0 deletions EntitasUpgradeGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,40 @@ $ mono MigrationAssistant.exe 0.26.0 /Path/To/Project/RequestedFolder

---

Entitas 0.45.0 upgrade guide
============================

#### Breaking changes

Use the command line tool `MigrationAssistant.exe` and apply Migration 0.45.0 to
automatically rename the changed keys in Entitas.properties

`MigrationAssistant.exe 0.45.0 path/to/project`

The following keys in Entitas.properties changed from:

- Entitas.CodeGeneration.CodeGenerator.SearchPaths
- Entitas.CodeGeneration.CodeGenerator.Plugins
- Entitas.CodeGeneration.CodeGenerator.DataProviders
- Entitas.CodeGeneration.CodeGenerator.CodeGenerators
- Entitas.CodeGeneration.CodeGenerator.PostProcessors
- Entitas.CodeGeneration.CodeGenerator.CLI.Ignore.UnusedKeys

to:

- CodeGenerator.SearchPaths
- CodeGenerator.Plugins
- CodeGenerator.DataProviders
- CodeGenerator.CodeGenerators
- CodeGenerator.PostProcessors
- CodeGenerator.CLI.Ignore.UnusedKeys

The default plugins are now in folder called `Entitas` instead of `Default`. Please update
the searchPaths in Entitas.properties.
`Entitas.exe` is now uppercase with capital E

---

Entitas 0.42.0 upgrade guide
============================

Expand Down
61 changes: 61 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,64 @@
# 0.45.0

Thanks for the feedback on the new code generator so far. This update contains a lot of great improvments.
As always, the Unity Asset Store version might take a few days to be processed and accepted by Unity.
Please check for updates in 2 - 4 days.


#### Breaking changes
Please follow the [Entitas upgrade guide](https://github.com/sschmid/Entitas-CSharp/blob/master/EntitasUpgradeGuide.md)


#### Entitas
- Fixed flag components increasing the componentPool stack #445
- Logging all retained entities in ContextStillHasRetainedEntitiesException #448
- Added support for multiple indexed members per component #464

```
public sealed class MyComponent : IComponent {
// Multiple fields are now supported
[EntityIndex]
public int value;
[EntityIndex]
public int otherValue;
}
// will generate
context.GetEntitiesWithMyValue(...);
context.GetEntitiesWithMyOtherValue(...);
```


#### CodeGenerator
- Displaying more prominent popup in Unity when trying to generate with compile errors #463

![entitas-codegenerator-compileerrorpopup](https://user-images.githubusercontent.com/233700/32519395-e8dccbdc-c40c-11e7-8a6c-08f176b23244.png)

- AssemblyResolver won't append dll to exe extension
- Changed code generator keys and removed default values
- Changed code generator cli keys and removed default values
- Added auto-import command. Use `entitas auto-import` to automatically populate Entitas.properties
- `entitas status` command will detect potential collisions, e.g. duplicate providers from the default plugins and the roslyn plugins
- `entitas fix` can resolve plugin collisions
- `entitas fix` command will tell you to press any key
- Removed `-a` keepAlive in favour of `entitas server` and `entitas client`
- Fixed client only sending first command to server #482
- Default Plugins are now in folder called Entitas
- Refactored all commands and simplified many utils methods
- `Entitas.exe` now with capital E


#### Roslyn
- Added custom support for multi-dimensional arrays types like `int[,,]` #481
Let me know if more types need custom support.

#### Migration
- Added migration for 0.45.0


# 0.44.0

As always, the Unity Asset Store version might take a few days to be processed and accepted by Unity.
Expand Down
2 changes: 1 addition & 1 deletion Scripts/docs_resources/docset.doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "Entitas"
PROJECT_NUMBER = 0.44.0
PROJECT_NUMBER = 0.45.0
PROJECT_BRIEF = "Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity"
PROJECT_LOGO = "Scripts/docs_resources/docs-logo.png"
OUTPUT_DIRECTORY = "Build/docs"
Expand Down
2 changes: 1 addition & 1 deletion Scripts/docs_resources/html.doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "Entitas"
PROJECT_NUMBER = 0.44.0
PROJECT_NUMBER = 0.45.0
PROJECT_BRIEF = "Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity"
PROJECT_LOGO = "Scripts/docs_resources/docs-logo.png"
OUTPUT_DIRECTORY = "Build/docs"
Expand Down
2 changes: 1 addition & 1 deletion docs/_abstract_entity_index_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/_collection_extension_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/_collector_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/_collector_context_extension_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/_collector_exception_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/_component_string_extension_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
56 changes: 28 additions & 28 deletions docs/_context_8cs_source.html

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/_context_extension_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/_context_info_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
2 changes: 1 addition & 1 deletion docs/_context_info_exception_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down Expand Up @@ -86,10 +86,13 @@
<div class="title">ContextStillHasRetainedEntitiesException.cs</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespace_entitas.html">Entitas</a> {</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="class_entitas_1_1_context_still_has_retained_entities_exception.html"> 3</a></span>&#160; <span class="keyword">public</span> <span class="keyword">class </span><a class="code" href="class_entitas_1_1_context_still_has_retained_entities_exception.html">ContextStillHasRetainedEntitiesException</a> : <a class="code" href="class_entitas_1_1_entitas_exception.html">EntitasException</a> {</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160; <span class="keyword">public</span> <a class="code" href="class_entitas_1_1_context_still_has_retained_entities_exception.html">ContextStillHasRetainedEntitiesException</a>(<a class="code" href="interface_entitas_1_1_i_context.html">IContext</a> context)</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160; : base(<span class="stringliteral">&quot;&#39;&quot;</span> + context + <span class="stringliteral">&quot;&#39; detected retained entities &quot;</span> +</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160; <span class="stringliteral">&quot;although all entities got destroyed!&quot;</span>,</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; <span class="stringliteral">&quot;Did you release all entities? Try calling systems.ClearReactiveSystems()&quot;</span> +</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; <span class="stringliteral">&quot;before calling context.DestroyAllEntities() to avoid memory leaks.&quot;</span>) {</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160; }</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; }</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;}</div><div class="ttc" id="interface_entitas_1_1_i_context_html"><div class="ttname"><a href="interface_entitas_1_1_i_context.html">Entitas.IContext</a></div><div class="ttdef"><b>Definition:</b> <a href="_i_context_8cs_source.html#l00009">IContext.cs:9</a></div></div>
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="keyword">using</span> <a class="code" href="namespace_system.html">System</a>.Linq;</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespace_entitas.html">Entitas</a> {</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"><a class="line" href="class_entitas_1_1_context_still_has_retained_entities_exception.html"> 5</a></span>&#160; <span class="keyword">public</span> <span class="keyword">class </span><a class="code" href="class_entitas_1_1_context_still_has_retained_entities_exception.html">ContextStillHasRetainedEntitiesException</a> : <a class="code" href="class_entitas_1_1_entitas_exception.html">EntitasException</a> {</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160; <span class="keyword">public</span> <a class="code" href="class_entitas_1_1_context_still_has_retained_entities_exception.html">ContextStillHasRetainedEntitiesException</a>(<a class="code" href="interface_entitas_1_1_i_context.html">IContext</a> context, <a class="code" href="interface_entitas_1_1_i_entity.html">IEntity</a>[] entities)</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; : base(<span class="stringliteral">&quot;&#39;&quot;</span> + context + <span class="stringliteral">&quot;&#39; detected retained entities &quot;</span> +</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; <span class="stringliteral">&quot;although all entities got destroyed!&quot;</span>,</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160; <span class="stringliteral">&quot;Did you release all entities? Try calling systems.ClearReactiveSystems()&quot;</span> +</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; <span class="stringliteral">&quot;before calling context.DestroyAllEntities() to avoid memory leaks.\n&quot;</span> +</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160; <span class="keywordtype">string</span>.Join(<span class="stringliteral">&quot;\n&quot;</span>, entities</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; .Select(e =&gt; {</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; var safeAerc = e.aerc as <a class="code" href="class_entitas_1_1_safe_a_e_r_c.html">SafeAERC</a>;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; <span class="keywordflow">if</span> (safeAerc != null) {</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; <span class="keywordflow">return</span> e + <span class="stringliteral">&quot; - &quot;</span> + <span class="keywordtype">string</span>.Join(<span class="stringliteral">&quot;, &quot;</span>, safeAerc.owners</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; .Select(o =&gt; o.ToString())</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; .ToArray());</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; }</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; <span class="keywordflow">return</span> e.ToString();</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; })</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; .ToArray()</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; )</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; ) {</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; }</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; }</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;}</div><div class="ttc" id="interface_entitas_1_1_i_context_html"><div class="ttname"><a href="interface_entitas_1_1_i_context.html">Entitas.IContext</a></div><div class="ttdef"><b>Definition:</b> <a href="_i_context_8cs_source.html#l00009">IContext.cs:9</a></div></div>
<div class="ttc" id="namespace_entitas_html"><div class="ttname"><a href="namespace_entitas.html">Entitas</a></div><div class="ttdef"><b>Definition:</b> <a href="_collector_8cs_source.html#l00005">Collector.cs:5</a></div></div>
<div class="ttc" id="class_entitas_1_1_context_still_has_retained_entities_exception_html"><div class="ttname"><a href="class_entitas_1_1_context_still_has_retained_entities_exception.html">Entitas.ContextStillHasRetainedEntitiesException</a></div><div class="ttdef"><b>Definition:</b> <a href="_context_still_has_retained_entities_exception_8cs_source.html#l00003">ContextStillHasRetainedEntitiesException.cs:3</a></div></div>
<div class="ttc" id="class_entitas_1_1_context_still_has_retained_entities_exception_html"><div class="ttname"><a href="class_entitas_1_1_context_still_has_retained_entities_exception.html">Entitas.ContextStillHasRetainedEntitiesException</a></div><div class="ttdef"><b>Definition:</b> <a href="_context_still_has_retained_entities_exception_8cs_source.html#l00005">ContextStillHasRetainedEntitiesException.cs:5</a></div></div>
<div class="ttc" id="namespace_system_html"><div class="ttname"><a href="namespace_system.html">System</a></div></div>
<div class="ttc" id="interface_entitas_1_1_i_entity_html"><div class="ttname"><a href="interface_entitas_1_1_i_entity.html">Entitas.IEntity</a></div><div class="ttdef"><b>Definition:</b> <a href="_i_entity_8cs_source.html#l00016">IEntity.cs:16</a></div></div>
<div class="ttc" id="class_entitas_1_1_entitas_exception_html"><div class="ttname"><a href="class_entitas_1_1_entitas_exception.html">Entitas.EntitasException</a></div><div class="ttdoc">Base exception used by Entitas. </div><div class="ttdef"><b>Definition:</b> <a href="_entitas_exception_8cs_source.html#l00006">EntitasException.cs:6</a></div></div>
<div class="ttc" id="class_entitas_1_1_safe_a_e_r_c_html"><div class="ttname"><a href="class_entitas_1_1_safe_a_e_r_c.html">Entitas.SafeAERC</a></div><div class="ttdef"><b>Definition:</b> <a href="_safe_a_e_r_c_8cs_source.html#l00012">SafeAERC.cs:12</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
Expand Down
2 changes: 1 addition & 1 deletion docs/_context_string_extension_8cs_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
<td id="projectlogo"><img alt="Logo" src="docs-logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Entitas
&#160;<span id="projectnumber">0.44.0</span>
&#160;<span id="projectnumber">0.45.0</span>
</div>
<div id="projectbrief">Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity</div>
</td>
Expand Down
Loading

0 comments on commit 9877462

Please sign in to comment.