#19021: collectstatic should support checksums as method to determine a file's
changed state
-------------------------------+---------------------------------------
Reporter: dloewenherz | Owner: dloewenherz
Type: New feature | Status: closed
Component: Uncategorized | Version: 1.4
Severity: Normal | Resolution: wontfix
Keywords: | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------+---------------------------------------
Changes (by ptone):
* status: reopened => closed
* resolution: => wontfix
Comment:
In an ideal world - checksums would be an perfectly viable way to compare
files
for collectstatic. However, practically - they can't be well supported by
the
collectstatic API.
While md5 may be somewhat common - it is neither universal nor standard.
For
cloud based storage backends to support a comparison metric other than
modification times for use by collectstatic, they would need to provide
that
value as a remote/api call, it would do no good if the only way to support
this involved retrieving the remote object to get a hash on it (even if
you had
drastically asymetrical bandwidth - this is just poor design).
Checksums have a compute cost that modification dates don't - so a
checksum
comparison would always need to be an alternate, not the primary
comparison.
Without a good universal way for a range of storage backends to provide
some
sort of fingerprint/hash - there is no good way for collectstatic to take
advantage of that approach.
In cases where your modification dates are rendered invalid because of
some
specific environment set up (like the git based team issue), there are a
couple
workarounds. Perhaps the best is to use collectstatic locally - where the
performance of copying every file isn't as bad, and then use a sync tool
(such as rsync --checksum) or something home built that can do the
checksum
based comparison knowing the specific remote storage you are working with
in
your project.
A couple other links that might prove useful for those working with git
(provided without endorsement or review)
http://gitorious.org/sstamp
http://repo.or.cz/w/metastore.git
--
Ticket URL: <https://code.djangoproject.com/ticket/19021#comment:7>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit https://groups.google.com/groups/opt_out.