<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.ext-9.eprints-hosting.org/w/index.php?action=history&amp;feed=atom&amp;title=Upgrading_Bazaar_Packages_%28How_it_Works%29</id>
	<title>Upgrading Bazaar Packages (How it Works) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.ext-9.eprints-hosting.org/w/index.php?action=history&amp;feed=atom&amp;title=Upgrading_Bazaar_Packages_%28How_it_Works%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.ext-9.eprints-hosting.org/w/index.php?title=Upgrading_Bazaar_Packages_(How_it_Works)&amp;action=history"/>
	<updated>2026-05-10T04:17:37Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://wiki.ext-9.eprints-hosting.org/w/index.php?title=Upgrading_Bazaar_Packages_(How_it_Works)&amp;diff=10560&amp;oldid=prev</id>
		<title>Dct05r at 12:57, 5 July 2012</title>
		<link rel="alternate" type="text/html" href="https://wiki.ext-9.eprints-hosting.org/w/index.php?title=Upgrading_Bazaar_Packages_(How_it_Works)&amp;diff=10560&amp;oldid=prev"/>
		<updated>2012-07-05T12:57:42Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en-GB&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:57, 5 July 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l41&quot;&gt;Line 41:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 41:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Before it does this reload, the current counters and datasets are retrieved from the running config. &amp;#039;&amp;#039;&amp;#039;This is the config that was running before Stage 1, before this whole process started&amp;#039;&amp;#039;&amp;#039;, thus it will list datasets installed by the old epm.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Before it does this reload, the current counters and datasets are retrieved from the running config. &amp;#039;&amp;#039;&amp;#039;This is the config that was running before Stage 1, before this whole process started&amp;#039;&amp;#039;&amp;#039;, thus it will list datasets installed by the old epm.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A reload is then done and the old datasets and counters compared to those now &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;required after the &lt;/del&gt;changes.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;A reload is then done and the old datasets and counters &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;are &lt;/ins&gt;compared to those &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;required &lt;/ins&gt;now&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;. Any &lt;/ins&gt;changes &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;are then applied&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;If fields and counters have been added, these are added.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;If fields and counters have been added, these are added.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l47&quot;&gt;Line 47:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 47:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This means an upgrade will work and &amp;#039;&amp;#039;&amp;#039;not delete data&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This means an upgrade will work and &amp;#039;&amp;#039;&amp;#039;not delete data&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;Note:&#039;&#039;&#039; If the repository object does not have any knowledge of orphaned data in the database then it won&#039;t delete it as this will not appear as a change. No knowledge before = No knowledge now = no change. &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Important Note=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Important Note=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Dct05r</name></author>
	</entry>
	<entry>
		<id>https://wiki.ext-9.eprints-hosting.org/w/index.php?title=Upgrading_Bazaar_Packages_(How_it_Works)&amp;diff=10558&amp;oldid=prev</id>
		<title>Dct05r: moved How Bazaar Upgrades Work to Upgrading Bazaar Packages (How it Works):&amp;#32;Better Title</title>
		<link rel="alternate" type="text/html" href="https://wiki.ext-9.eprints-hosting.org/w/index.php?title=Upgrading_Bazaar_Packages_(How_it_Works)&amp;diff=10558&amp;oldid=prev"/>
		<updated>2012-07-05T12:46:09Z</updated>

		<summary type="html">&lt;p&gt;moved &lt;a href=&quot;/w/How_Bazaar_Upgrades_Work&quot; class=&quot;mw-redirect&quot; title=&quot;How Bazaar Upgrades Work&quot;&gt;How Bazaar Upgrades Work&lt;/a&gt; to &lt;a href=&quot;/w/Upgrading_Bazaar_Packages_(How_it_Works)&quot; title=&quot;Upgrading Bazaar Packages (How it Works)&quot;&gt;Upgrading Bazaar Packages (How it Works)&lt;/a&gt;: Better Title&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en-GB&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:46, 5 July 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en-GB&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Dct05r</name></author>
	</entry>
	<entry>
		<id>https://wiki.ext-9.eprints-hosting.org/w/index.php?title=Upgrading_Bazaar_Packages_(How_it_Works)&amp;diff=10557&amp;oldid=prev</id>
		<title>Dct05r: Created page with &#039;Category:EPrints_Bazaar  This page outlines what happens when you upgrade an EPrints Bazaar package, more importantly it outlines the difference between Upgrade and Disable. …&#039;</title>
		<link rel="alternate" type="text/html" href="https://wiki.ext-9.eprints-hosting.org/w/index.php?title=Upgrading_Bazaar_Packages_(How_it_Works)&amp;diff=10557&amp;oldid=prev"/>
		<updated>2012-07-05T12:44:14Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;#039;&lt;a href=&quot;/w/Category:EPrints_Bazaar&quot; title=&quot;Category:EPrints Bazaar&quot;&gt;Category:EPrints_Bazaar&lt;/a&gt;  This page outlines what happens when you upgrade an EPrints Bazaar package, more importantly it outlines the difference between Upgrade and Disable. …&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:EPrints_Bazaar]]&lt;br /&gt;
&lt;br /&gt;
This page outlines what happens when you upgrade an EPrints Bazaar package, more importantly it outlines the difference between Upgrade and Disable.&lt;br /&gt;
&lt;br /&gt;
=The Upgrade Process=&lt;br /&gt;
&lt;br /&gt;
The upgrade process consists of the following stages, if any of which fail then the package will not be upgraded. &lt;br /&gt;
&lt;br /&gt;
Note that some of the stages have the potential to succeed incorrectly which is when bugs occur.&lt;br /&gt;
&lt;br /&gt;
The main bulk of this process is detailed in perl_lib/EPrints/Plugin/Screen/Admin/EPM/Available.pm&lt;br /&gt;
&lt;br /&gt;
==Stage 1 - Retrieve Installed EPM==&lt;br /&gt;
&lt;br /&gt;
From &amp;#039;&amp;#039;&amp;#039;/lib only&amp;#039;&amp;#039;&amp;#039; the installed epm is retrieved and hashes for each of the files generated.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; If you have made changes to the epm in /lib in order to do some development, don&amp;#039;t expect an upgrade on the running repository to work, create another one!&lt;br /&gt;
&lt;br /&gt;
==Stage 2 - Disable Unchanged==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; This only refers to the files that get installed in the repository archive path. e.g. archive/foo/cfg/cfg.d/package_cfg.pl&lt;br /&gt;
&lt;br /&gt;
Basically if the files installed in the repository haven&amp;#039;t changed then they are removed. If they have changed then they are left unchanged or saved at .pl.epmsave. &lt;br /&gt;
&lt;br /&gt;
==Stage 3 - Uninstall Existing==&lt;br /&gt;
&lt;br /&gt;
At this stage the current epm files in /lib are removed. The hashes will match as this is where you got them from at stage 1!&lt;br /&gt;
&lt;br /&gt;
==Stage 4 - Install new EPM==&lt;br /&gt;
&lt;br /&gt;
This stage installs the new EPM in lib, note that it will not enable it, thus no files are copied to the repository directory, these are still not present as they were deleted in Stage 2. &lt;br /&gt;
&lt;br /&gt;
At this stage the repository config is checked (&amp;#039;&amp;#039;&amp;#039;not loaded&amp;#039;&amp;#039;&amp;#039;) to see if the epm will cause fatal errors. &lt;br /&gt;
&lt;br /&gt;
If it can load, then it is loaded (unless you are &amp;#039;&amp;#039;&amp;#039;upgrading&amp;#039;&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
==Stage 5 - Upgrade==&lt;br /&gt;
&lt;br /&gt;
This stage enables the epm, installing the repository files and calling a full reload. &lt;br /&gt;
&lt;br /&gt;
Before it does this reload, the current counters and datasets are retrieved from the running config. &amp;#039;&amp;#039;&amp;#039;This is the config that was running before Stage 1, before this whole process started&amp;#039;&amp;#039;&amp;#039;, thus it will list datasets installed by the old epm. &lt;br /&gt;
&lt;br /&gt;
A reload is then done and the old datasets and counters compared to those now required after the changes. &lt;br /&gt;
&lt;br /&gt;
If fields and counters have been added, these are added.&lt;br /&gt;
If fields and counters have been removed, &amp;#039;&amp;#039;&amp;#039;these are removed&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
This means an upgrade will work and &amp;#039;&amp;#039;&amp;#039;not delete data&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
=Important Note=&lt;br /&gt;
&lt;br /&gt;
If you choose to disable/un-install before installing a new version of a bazaar package then your data &amp;#039;&amp;#039;&amp;#039;will&amp;#039;&amp;#039;&amp;#039; automatically be removed when the repository is reloaded!&lt;br /&gt;
&lt;br /&gt;
To keep a dataset, you have to keep it defined in the repository config.&lt;/div&gt;</summary>
		<author><name>Dct05r</name></author>
	</entry>
</feed>