[Checkins] SVN: hurry.resource/branches/janjaapdriessen-resource-publisher/src/hurry/resource/ hashing is optional, but "on" by default, more tests pass
Jan-Wijbrand Kolman
janwijbrand at gmail.com
Wed Nov 24 09:43:27 EST 2010
Log message for revision 118561:
hashing is optional, but "on" by default, more tests pass
Changed:
U hurry.resource/branches/janjaapdriessen-resource-publisher/src/hurry/resource/README.txt
U hurry.resource/branches/janjaapdriessen-resource-publisher/src/hurry/resource/core.py
-=-
Modified: hurry.resource/branches/janjaapdriessen-resource-publisher/src/hurry/resource/README.txt
===================================================================
--- hurry.resource/branches/janjaapdriessen-resource-publisher/src/hurry/resource/README.txt 2010-11-24 14:29:46 UTC (rev 118560)
+++ hurry.resource/branches/janjaapdriessen-resource-publisher/src/hurry/resource/README.txt 2010-11-24 14:43:27 UTC (rev 118561)
@@ -743,10 +743,10 @@
>>> first_url == second_url
True
-When we set devmode, the segment will have changed::
+When we set ``devmode=True``, the segment will have changed::
- >>> needed = NeededInclusions(devmode=True)
- >>> third_url = needed.library_url(foo)
+ >>> needed_in_devmode = NeededInclusions(devmode=True)
+ >>> third_url = needed_in_devmode.library_url(foo)
>>> third_url
'/fanstatic/:hash:.../foo'
@@ -755,11 +755,18 @@
>>> first_url == third_url
False
+ >>> needed.library_url(foo) == needed_in_devmode.library_url(foo)
+ False
+
Reset the file contents:
>>> open(mypackage_style, 'w').write(original_contents)
+Hashing is on by default, but can be turned off:
+ >>> needed_no_hashing = NeededInclusions(hashing=False)
+ >>> needed_no_hashing.library_url(foo)
+ '/fanstatic/foo'
@@ -775,7 +782,6 @@
-
Any VCS directories are ignored in calculating the hash:
>>> import os
Modified: hurry.resource/branches/janjaapdriessen-resource-publisher/src/hurry/resource/core.py
===================================================================
--- hurry.resource/branches/janjaapdriessen-resource-publisher/src/hurry/resource/core.py 2010-11-24 14:29:46 UTC (rev 118560)
+++ hurry.resource/branches/janjaapdriessen-resource-publisher/src/hurry/resource/core.py 2010-11-24 14:43:27 UTC (rev 118561)
@@ -21,10 +21,10 @@
def signature(self, devmode=False):
if devmode:
- # Always recalculate.
+ # Always re-compute.
sig = hurry.resource.hash.checksum(self.path)
elif self._signature is None:
- # Only recalculate if not calculated before.
+ # Only compute if not conputed before.
sig = self._signature = hurry.resource.hash.checksum(self.path)
else:
# Use cached value.
@@ -188,15 +188,17 @@
bottom=False,
force_bottom=False,
devmode=False,
+ hashing=True,
publisher_signature='fanstatic'
):
self.base_url = base_url
- self.devmode = devmode
- self.publisher_signature = publisher_signature
self._inclusions = inclusions or []
self._mode = mode
self._rollup = rollup
self._bottom = bottom
+ self.devmode = devmode
+ self.hashing = hashing
+ self.publisher_signature = publisher_signature
def __len__(self):
return len(self._inclusions)
@@ -223,11 +225,11 @@
return inclusions
def library_url(self, library):
- return '%s/%s/%s/%s' % (
- self.base_url,
- self.publisher_signature,
- library.signature(devmode=self.devmode),
- library.name)
+ segments = [self.base_url, self.publisher_signature]
+ if self.hashing:
+ segments.append(library.signature(devmode=self.devmode))
+ segments.append(library.name)
+ return '/'.join(segments)
def render(self):
"""Render a set of inclusions.
More information about the checkins
mailing list