swh.web.browse.snapshot_context module#
- swh.web.browse.snapshot_context.process_snapshot_branches(snapshot: Dict[str, Any], discard_messages: bool = False) Tuple[List[SnapshotBranchInfo], List[SnapshotReleaseInfo], Dict[str, Any]][source]#
- Process a dictionary describing snapshot branches: extract those targeting revisions and releases, put them in two different lists, then sort those lists in lexicographical order of the branches’ names. - Parameters:
- snapshot – a dict describing a snapshot as returned for instance by - swh.web.utils.archive.lookup_snapshot()
- discard_messages – if - True, do not retrieve messages associated to branches and releases
 
- Returns:
- A tuple whose first member is the sorted list of branches targeting revisions, second member the sorted list of branches targeting releases and third member a dict mapping resolved branch aliases to their real target. 
 
- swh.web.browse.snapshot_context.get_snapshot_content(snapshot_id: str) Tuple[List[SnapshotBranchInfo], List[SnapshotReleaseInfo], Dict[str, Any]][source]#
- Returns the lists of branches and releases associated to a swh snapshot. That list is put in cache in order to speedup the navigation in the swh-web/browse ui. - Warning - At most 1000 branches contained in the snapshot will be returned for performance reasons. - Parameters:
- snapshot_id – hexadecimal representation of the snapshot identifier 
- Returns:
- A tuple with three members. The first one is a list of dict describing the snapshot branches. The second one is a list of dict describing the snapshot releases. The third one is a dict mapping resolved branch aliases to their real target. 
- Raises:
- NotFoundExc if the snapshot does not exist – 
 
- swh.web.browse.snapshot_context.get_origin_visit_snapshot(origin_info: OriginInfo, visit_ts: str | None = None, visit_id: int | None = None, snapshot_id: str | None = None) Tuple[List[SnapshotBranchInfo], List[SnapshotReleaseInfo], Dict[str, Any]][source]#
- Returns the lists of branches and releases associated to an origin for a given visit. - The visit is expressed by either: - a snapshot identifier 
- a timestamp, if no visit with that exact timestamp is found, the closest one from the provided timestamp will be used. 
 - If no visit parameter is provided, it returns the list of branches found for the latest visit. - That list is put in cache in order to speedup the navigation in the swh-web/browse ui. - Warning - At most 1000 branches contained in the snapshot will be returned for performance reasons. - Parameters:
- origin_info – a dict filled with origin information 
- visit_ts – an ISO 8601 datetime string to parse 
- visit_id – visit id for disambiguation in case several visits have the same timestamp 
- snapshot_id – if provided, visit associated to the snapshot will be processed 
 
- Returns:
- A tuple with three members. The first one is a list of dict describing the origin branches for the given visit. The second one is a list of dict describing the origin releases for the given visit. The third one is a dict mapping resolved branch aliases to their real target. 
- Raises:
- NotFoundExc if the origin or its visit are not found – 
 
- swh.web.browse.snapshot_context.get_snapshot_context(snapshot_id: str | None = None, origin_url: str | None = None, timestamp: str | None = None, visit_id: int | None = None, branch_name: str | None = None, release_name: str | None = None, revision_id: str | None = None, path: str | None = None, browse_context: str = 'directory', visit_type: str | None = None) SnapshotContext[source]#
- Utility function to compute relevant information when navigating the archive in a snapshot context. The snapshot is either referenced by its id or it will be retrieved from an origin visit. - Parameters:
- snapshot_id – hexadecimal representation of a snapshot identifier 
- origin_url – an origin_url 
- timestamp – a datetime string for retrieving the closest visit of the origin 
- visit_id – optional visit id for disambiguation in case of several visits with the same timestamp 
- branch_name – optional branch name set when browsing the snapshot in that scope (will default to “HEAD” if not provided) 
- release_name – optional release name set when browsing the snapshot in that scope 
- revision_id – optional revision identifier set when browsing the snapshot in that scope 
- path – optional path of the object currently browsed in the snapshot 
- browse_context – indicates which type of object is currently browsed 
 
- Returns:
- A dict filled with snapshot context information. 
- Raises:
- swh.web.utils.exc.NotFoundExc – if no snapshot is found for the visit of an origin. 
 
- swh.web.browse.snapshot_context.browse_snapshot_directory(request: HttpRequest, snapshot_id: str | None = None, origin_url: str | None = None, timestamp: str | None = None, path: str | None = None) HttpResponse[source]#
- Django view implementation for browsing a directory in a snapshot context. 
- swh.web.browse.snapshot_context.browse_snapshot_log(request: HttpRequest, snapshot_id: str | None = None, origin_url: str | None = None, timestamp: str | None = None) HttpResponse[source]#
- Django view implementation for browsing a revision history in a snapshot context. 
- swh.web.browse.snapshot_context.browse_snapshot_branches(request: HttpRequest, snapshot_id: str | None = None, origin_url: str | None = None, timestamp: str | None = None, branch_name_include: str | None = None) HttpResponse[source]#
- Django view implementation for browsing a list of branches in a snapshot context. 
- swh.web.browse.snapshot_context.browse_snapshot_releases(request: HttpRequest, snapshot_id: str | None = None, origin_url: str | None = None, timestamp: str | None = None, release_name_include: str | None = None)[source]#
- Django view implementation for browsing a list of releases in a snapshot context.