PyI40AAS tagshttps://git.rwth-aachen.de/acplt/pyi40aas/-/tags2021-02-15T17:39:33+01:00https://git.rwth-aachen.de/acplt/pyi40aas/-/tags/v0.2.3v0.2.3Sebastian Heppners.heppner@iat.rwth-aachen.dehttps://git.rwth-aachen.de/acplt/pyi40aas/-/tags/v0.2.2v0.2.2<p data-sourcepos="1:1-1:258" dir="auto">This update primarily changes the license of the PyI40AAS project's source code from (single) Apache License 2.0 to a dual-licensing with Apache License 2.0 and Eclipse Public License 2.0. For more information, see the updated <code data-sourcepos="1:229-1:237">README.md</code> and <code data-sourcepos="1:245-1:250">NOTICE</code> files.</p>
<p data-sourcepos="3:1-3:24" dir="auto">Additional improvements:</p>
<ul data-sourcepos="4:1-4:78" dir="auto">
<li data-sourcepos="4:1-4:78">new tutorial <code data-sourcepos="4:17-4:32">tutorial_aasx.py</code> about reading and writing AASX package files</li>
</ul>2021-02-15T17:39:33+01:00Michael Thiesm.thies@plt.rwth-aachen.dehttps://git.rwth-aachen.de/acplt/pyi40aas/-/tags/v0.2.1v0.2.1<p data-sourcepos="1:1-1:76" dir="auto">This release provides some bug fixes and improvements for the 0.2.0 release:</p>
<p data-sourcepos="3:1-3:13" dir="auto"><strong data-sourcepos="3:1-3:12">clean up</strong>:</p>
<ul data-sourcepos="4:1-8:0" dir="auto">
<li data-sourcepos="4:1-5:77">
<strong data-sourcepos="4:3-4:25">(possibly breaking)</strong>: Constructor parameters renamed: <code data-sourcepos="4:61-4:69">submodel_</code>, <code data-sourcepos="4:74-4:82">security_</code> → <code data-sourcepos="4:90-4:97">submodel</code>, <code data-sourcepos="4:102-4:109">security</code> in <code data-sourcepos="4:116-4:139">AssetAdministrationShell</code> and <code data-sourcepos="4:147-4:151">type_</code> → <code data-sourcepos="4:159-4:169">target_type</code> in <code data-sourcepos="4:176-4:187">AASReference</code><br data-sourcepos="4:191-4:191">
(you probably used them as positional arguments, so a break is less likely)</li>
<li data-sourcepos="6:1-6:102">
<strong data-sourcepos="6:3-6:25">(possibly breaking)</strong>: abstract model classes are actually <em data-sourcepos="6:64-6:73">abstract</em> (i.e. can't be instantiated)</li>
<li data-sourcepos="7:1-8:0">
<strong data-sourcepos="7:3-7:25">(possibly breaking)</strong>: Unused class <code data-sourcepos="7:42-7:65">DataSpecificationContent</code> removed</li>
</ul>
<p data-sourcepos="9:1-9:17" dir="auto"><strong data-sourcepos="9:1-9:16">improvements</strong>:</p>
<ul data-sourcepos="10:1-14:0" dir="auto">
<li data-sourcepos="10:1-10:70">
<code data-sourcepos="10:4-10:12">Namespace</code> and <code data-sourcepos="10:20-10:45">SupplementaryFileContainer</code> are iterable now (<a href="/acplt/pyi40aas/-/issues/110" data-reference-type="issue" data-original="#110" data-link="false" data-link-reference="false" data-project="37813" data-issue="136561" data-project-path="acplt/pyi40aas" data-iid="110" data-issue-type="issue" data-container="body" data-placement="top" title="make `Namespace` iterable" class="gfm gfm-issue">#110</a>)</li>
<li data-sourcepos="11:1-11:64">new method <code data-sourcepos="11:15-11:32">remove_referable()</code> for abstract class <code data-sourcepos="11:55-11:63">Namespace</code>
</li>
<li data-sourcepos="12:1-12:44">new tutorial <code data-sourcepos="12:17-12:43">tutorial_backend_couchdb.py</code>
</li>
<li data-sourcepos="13:1-14:0">better parallelism for CouchDB backend by using <code data-sourcepos="13:52-13:58">urllib3</code> as HTTP client library. <strong data-sourcepos="13:85-13:139">(introduces new Python package depdency on urllib3)</strong>
</li>
</ul>
<p data-sourcepos="15:1-15:10" dir="auto"><strong data-sourcepos="15:1-15:9">fixes</strong>:</p>
<ul data-sourcepos="16:1-19:96" dir="auto">
<li data-sourcepos="16:1-16:136">fix for <code data-sourcepos="16:12-16:34">Referable.update_from()</code> which screwed up internal referenced, e.g. when calling <code data-sourcepos="16:94-16:101">update()</code> on a CouchDB-backed object (<a href="/acplt/pyi40aas/-/issues/127" data-reference-type="issue" data-original="#127" data-link="false" data-link-reference="false" data-project="37813" data-issue="148617" data-project-path="acplt/pyi40aas" data-iid="127" data-issue-type="issue" data-container="body" data-placement="top" title="model: Referable.update_from() not working properly for contained Referable objects" class="gfm gfm-issue">#127</a>)</li>
<li data-sourcepos="17:1-17:128">CouchDB backend is registered for handling <code data-sourcepos="17:47-17:59">couchdb(s)://</code>-sources automatically when loading the <code data-sourcepos="17:102-17:120">aas.backend.couchdb</code> module</li>
<li data-sourcepos="18:1-18:123">fix deserialization of XML documents with empty <code data-sourcepos="18:52-18:64"><qualifier /></code> tags (which are produced by AASX Package Explorer) (<a href="/acplt/pyi40aas/-/issues/132" data-reference-type="issue" data-original="#132" data-link="false" data-link-reference="false" data-project="37813" data-issue="151160" data-project-path="acplt/pyi40aas" data-iid="132" data-issue-type="issue" data-container="body" data-placement="top" title="xml: IndexError when parsing XML with empty <qualifier/> tags" class="gfm gfm-issue">#132</a>)</li>
<li data-sourcepos="19:1-19:96">fix <code data-sourcepos="19:8-19:16">Referable</code> to update the parent Namespace when the <code data-sourcepos="19:60-19:67">id_short</code> attribute is changed (<a href="/acplt/pyi40aas/-/issues/125" data-reference-type="issue" data-original="#125" data-link="false" data-link-reference="false" data-project="37813" data-issue="147611" data-project-path="acplt/pyi40aas" data-iid="125" data-issue-type="issue" data-container="body" data-placement="top" title="model: Refereable._set_id_short should change the id_short entry in the Namespace's _backend dict" class="gfm gfm-issue">#125</a>)</li>
</ul>2021-02-15T17:30:01+01:00Michael Thiesm.thies@plt.rwth-aachen.dehttps://git.rwth-aachen.de/acplt/pyi40aas/-/tags/v0.2.0v0.2.0<p data-sourcepos="1:1-1:173" dir="auto">This is the second development snapshot of PyI40AAS. It includes many bug fixes and a bunch of changes and new features in comparison to version 0.1.0. Relevant changes are:</p>
<ul data-sourcepos="3:1-12:0" dir="auto">
<li data-sourcepos="3:1-3:135">Feature: commit()/update() mechanism and the "source" attribute for synchronizing AAS objects with external data sources via backends</li>
<li data-sourcepos="4:1-4:58">Feature: AASX reading/writing supports XML serialization</li>
<li data-sourcepos="5:1-5:116">Feature: AASX writing supports writing all objects in a single part (for compatibility with AASX Package Explorer)</li>
<li data-sourcepos="6:1-6:73">Feature: compliance check tool supports writing and checking AASX files</li>
<li data-sourcepos="7:1-7:95">Preparations in XML and JSON adapters for the upcoming HTTP/REST interface (stripped objects)</li>
<li data-sourcepos="8:1-8:105">Multiple Fixes for meta model to comply with the standard ("Details of the Asset Administration Shell")</li>
<li data-sourcepos="9:1-9:81">Fix: AASX file writing/reading respects absolute URIs in File objects correctly</li>
<li data-sourcepos="10:1-10:48">Fix: Check idShort for duplicates when changed</li>
<li data-sourcepos="11:1-12:0">Feature: Example files written with the compliance check tool are formatted nicer</li>
</ul>
<p data-sourcepos="13:1-13:65" dir="auto">To get the new PyI40AAS package, install or upgrade it from PyPI:</p>
<div class="gl-relative markdown-code-block js-markdown-code">
<pre data-sourcepos="15:1-17:3" data-canonical-lang="bash" class="code highlight js-syntax-highlight language-shell" lang="shell" v-pre="true"><code><span id="LC1" class="line" lang="shell">pip <span class="nb">install</span> <span class="nt">-U</span> pyi40aas</span></code></pre>
<copy-code></copy-code>
</div>2020-11-10T11:47:00+01:00Michael Thiesm.thies@plt.rwth-aachen.dehttps://git.rwth-aachen.de/acplt/pyi40aas/-/tags/v0.1.0v0.1.0<h1 data-sourcepos="1:1-1:24" dir="auto">
<a id="user-content-pyi40aas-version-010" class="anchor" href="#pyi40aas-version-010" aria-hidden="true"></a>PyI40AAS Version 0.1.0</h1>
<p data-sourcepos="3:1-3:218" dir="auto">We're proud to publish the first preview release of PyI40AAS. This release should be sufficient to give you an overview about our architecture and provide a basis for first experiments with Asset Administration Shells.</p>
<p data-sourcepos="5:1-5:204" dir="auto">Some important features are still missing, especially the the HTTP API implementations (server and client) to provide interoperability with other AAS frameworks. Please be patient; we're working on those.</p>
<p data-sourcepos="7:1-7:249" dir="auto">Additionally, we don't guarantee the library's API to be stable by now. There might be breaking changes in object attributes for function arguments in upcoming minor releases. However, we'll make sure to point those changes out in the release notes.</p>2020-05-28T15:24:55+02:00Michael Thiesm.thies@plt.rwth-aachen.de