Changes:<br>bundle.py<br>
Added zip-agnostic _is_file() method to bundle class; used in activitybundle for checking MANIFEST without unpacking<br><br>activitybundle.py<br>Moved basic logic for processing MANIFEST, including list_files, to activitybundle.py ; this is necessary for checking when installing a bundle.<br>
<br>moved dependencies on activity registry and env to inline imports in relevant methods; some bundle tasks should be doable with just these three files. (This is doing only half of the job, the other half would be falling back to importing the other modules not as submodules).<br>
<br>some simple globbing in list_files for ignored files, to allow ignoring *.pyc.<br><br>reads manifest into a list of lines; then replaces invalid lines in place with blank lines. This allows fix_manifest in bundlebuilder to leave all existing files on same MANIFEST line number, which will help with diffs later.<br>
<br>separate unpack from install (= unpack + register). Unpack checks for valid MANIFEST but is set to only complain, not throw exceptions, by default, to give folks time to clean up.<br><br>bundlebuilder.py:<br>fix_manifest function rewrites MANIFEST file.<br>
<br>SourcePackager.get_files calls out to git to get file names, or falls back to MANIFEST otherwise.<br><br><br><div class="gmail_quote">On Fri, Jun 6, 2008 at 1:24 PM, Marco Pesenti Gritti &lt;<a href="mailto:mpgritti@gmail.com">mpgritti@gmail.com</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">On Fri, Jun 6, 2008 at 6:13 PM, Jameson Chema Quinn<br>
&lt;<a href="mailto:jquinn@cs.oberlin.edu">jquinn@cs.oberlin.edu</a>&gt; wrote:<br>
&gt; Note: this patch does not expose the fix_manifest function when running<br>
&gt; bundlebuilder as a script. That would be a 2 or 3 line patch, seperately.<br>
<br>
</div>Some initial notes:<br>
<br>
* Please run pylint on the changed files. You can use<br>
sugar-jhbuild/scripts/data/pylintrc. That will catch several problems<br>
and nitpicks that I&#39;d ask you to fix anyway.<br>
* I dont understand all the<br>
warnings.warn(MalformedBundleException(...)). What&#39;s the purpose of<br>
those. Shouldn&#39;t they be real exceptions? What&#39;s the advantage of<br>
using the warnings module over logging.warning?<br>
* I&#39;m not sure what you are using dest_dir for, but it looks like it<br>
should be part of Config.<br>
* Why are you moving the activity and env imports inline.<br>
<br>
As we discussed in irc, it would be good to split up patches. But<br>
anyway in the case of big patches like this, containing unrelated<br>
changes is good to provide a list of the changes you made and the<br>
reason you made them (can you provide such list when you resubmit the<br>
patch with pylint fixed? Thanks!).<br>
<br>
Marco<br>
_______________________________________________<br>
Sugar mailing list<br>
<a href="mailto:Sugar@lists.laptop.org">Sugar@lists.laptop.org</a><br>
<a href="http://lists.laptop.org/listinfo/sugar" target="_blank">http://lists.laptop.org/listinfo/sugar</a><br>
</blockquote></div><br>