code: def get_bucket(self, environment, name, filename, source):
          
          key = self.get_cache_key(name, filename)
          checksum = self.get_source_checksum(source)
          bucket = Bucket(environment, key, checksum)
          self.load_bytecode(bucket)
          return bucket
docs: Return a cache bucket for the given template.  All arguments are
          mandatory but filename may be `None`.