Changeset View
Changeset View
Standalone View
Standalone View
docs/uri-scheme-browse-origin.rst
Origin | Origin | ||||
^^^^^^ | ^^^^^^ | ||||
This describes the URI scheme when one wants to browse the Software Heritage | This describes the URI scheme when one wants to browse the Software Heritage | ||||
archive in the context of an origin (for instance, a repository crawled from | archive in the context of an origin (for instance, a repository crawled from | ||||
GitHub or a Debian source package). All the views pointed by that scheme | GitHub or a Debian source package). All the views pointed by that scheme | ||||
offer quick links to browse objects as found during the associated crawls | offer quick links to browse objects as found during the associated crawls | ||||
performed by Software Heritage: | performed by Software Heritage: | ||||
* the root directory of the origin | * the root directory of the origin | ||||
* the list of branches of the origin | * the list of branches of the origin | ||||
* the list of releases of the origin | * the list of releases of the origin | ||||
Origin visits | Origin visits | ||||
""""""""""""" | """"""""""""" | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/visits/ | .. http:get:: /browse/origin/(origin_url)/visits/ | ||||
HTML view that displays a visits reporting for a software origin identified by | HTML view that displays a visits reporting for a software origin identified by | ||||
its type and url. | its type and url. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, ``svn``, | |||||
``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive | :statuscode 404: requested origin can not be found in the archive | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/torvalds/linux/visits/` | :swh_web_browse:`origin/https://github.com/torvalds/linux/visits/` | ||||
:swh_web_browse:`origin/git/url/https://github.com/python/cpython/visits/` | :swh_web_browse:`origin/https://github.com/python/cpython/visits/` | ||||
:swh_web_browse:`origin/deb://Debian-Security/packages/mediawiki/visits/` | :swh_web_browse:`origin/deb://Debian-Security/packages/mediawiki/visits/` | ||||
:swh_web_browse:`origin/https://gitorious.org/qt/qtbase.git/visits/` | :swh_web_browse:`origin/https://gitorious.org/qt/qtbase.git/visits/` | ||||
Origin directory | Origin directory | ||||
"""""""""""""""" | """""""""""""""" | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/directory/[(path)/] | .. http:get:: /browse/origin/(origin_url)/directory/[(path)/] | ||||
HTML view for browsing the content of a directory reachable from the root directory | HTML view for browsing the content of a directory reachable from the root directory | ||||
(including itself) associated to the latest full visit of a software origin. | (including itself) associated to the latest full visit of a software origin. | ||||
The content of the directory is first sorted in lexicographical order | The content of the directory is first sorted in lexicographical order | ||||
and the sub-directories are displayed before the regular files. | and the sub-directories are displayed before the regular files. | ||||
The view enables to navigate from the requested directory to | The view enables to navigate from the requested directory to | ||||
directories reachable from it in a recursive way but also | directories reachable from it in a recursive way but also | ||||
up to the origin root directory. | up to the origin root directory. | ||||
A breadcrumb located in the top part of the view allows | A breadcrumb located in the top part of the view allows | ||||
to keep track of the paths navigated so far. | to keep track of the paths navigated so far. | ||||
The view also enables to easily switch between the origin branches | The view also enables to easily switch between the origin branches | ||||
and releases through a dropdown menu. | and releases through a dropdown menu. | ||||
The origin branch (default to master) from which to retrieve the directory | The origin branch (default to master) from which to retrieve the directory | ||||
content can also be specified by using the branch query parameter. | content can also be specified by using the branch query parameter. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:param string path: optional parameter used to specify the path of a directory | :param string path: optional parameter used to specify the path of a directory | ||||
reachable from the origin root one | reachable from the origin root one | ||||
:query string branch: specify the origin branch name from which | :query string branch: specify the origin branch name from which | ||||
to retrieve the root directory | to retrieve the root directory | ||||
:query string release: specify the origin release name from which | :query string release: specify the origin release name from which | ||||
to retrieve the root directory | to retrieve the root directory | ||||
:query string revision: specify the origin revision, identified by the hexadecimal | :query string revision: specify the origin revision, identified by the hexadecimal | ||||
representation of its **sha1_git** value, from which to retrieve the root directory | representation of its **sha1_git** value, from which to retrieve the root directory | ||||
:query int visit_id: specify a visit id to retrieve the directory from instead | :query int visit_id: specify a visit id to retrieve the directory from instead | ||||
of using the latest full visit by default | of using the latest full visit by default | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive | :statuscode 404: requested origin can not be found in the archive | ||||
or the provided path does not exist from the origin root directory | or the provided path does not exist from the origin root directory | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/torvalds/linux/directory/` | :swh_web_browse:`origin/https://github.com/torvalds/linux/directory/` | ||||
:swh_web_browse:`origin/git/url/https://github.com/torvalds/linux/directory/net/ethernet/` | :swh_web_browse:`origin/https://github.com/torvalds/linux/directory/net/ethernet/` | ||||
:swh_web_browse:`origin/https://github.com/python/cpython/directory/` | :swh_web_browse:`origin/https://github.com/python/cpython/directory/` | ||||
:swh_web_browse:`origin/https://github.com/python/cpython/directory/Python/` | :swh_web_browse:`origin/https://github.com/python/cpython/directory/Python/` | ||||
:swh_web_browse:`origin/https://github.com/python/cpython/directory/?branch=refs/heads/2.7` | :swh_web_browse:`origin/https://github.com/python/cpython/directory/?branch=refs/heads/2.7` | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/visit/(timestamp)/directory/[(path)/] | .. http:get:: /browse/origin/(origin_url)/visit/(timestamp)/directory/[(path)/] | ||||
HTML view for browsing the content of a directory reachable from | HTML view for browsing the content of a directory reachable from | ||||
the root directory (including itself) associated to a visit of a software | the root directory (including itself) associated to a visit of a software | ||||
origin closest to a provided timestamp. | origin closest to a provided timestamp. | ||||
The content of the directory is first sorted in lexicographical order | The content of the directory is first sorted in lexicographical order | ||||
and the sub-directories are displayed before the regular files. | and the sub-directories are displayed before the regular files. | ||||
The view enables to navigate from the requested directory to | The view enables to navigate from the requested directory to | ||||
directories reachable from it in a recursive way but also | directories reachable from it in a recursive way but also | ||||
up to the origin root directory. | up to the origin root directory. | ||||
A breadcrumb located in the top part of the view allows | A breadcrumb located in the top part of the view allows | ||||
to keep track of the paths navigated so far. | to keep track of the paths navigated so far. | ||||
The view also enables to easily switch between the origin branches | The view also enables to easily switch between the origin branches | ||||
and releases through a dropdown menu. | and releases through a dropdown menu. | ||||
The origin branch (default to master) from which to retrieve the directory | The origin branch (default to master) from which to retrieve the directory | ||||
content can also be specified by using the branch query parameter. | content can also be specified by using the branch query parameter. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | :param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | ||||
or Unix timestamp to parse in order to find the closest visit. | or Unix timestamp to parse in order to find the closest visit. | ||||
:param path: optional parameter used to specify the path of a directory | :param path: optional parameter used to specify the path of a directory | ||||
reachable from the origin root one | reachable from the origin root one | ||||
:type path: string | :type path: string | ||||
:query string branch: specify the origin branch name from which | :query string branch: specify the origin branch name from which | ||||
to retrieve the root directory | to retrieve the root directory | ||||
:query string release: specify the origin release name from which | :query string release: specify the origin release name from which | ||||
to retrieve the root directory | to retrieve the root directory | ||||
:query string revision: specify the origin revision, identified by the hexadecimal | :query string revision: specify the origin revision, identified by the hexadecimal | ||||
representation of its **sha1_git** value, from which to retrieve the directory | representation of its **sha1_git** value, from which to retrieve the directory | ||||
:query int visit_id: specify a visit id to retrieve the directory from instead | :query int visit_id: specify a visit id to retrieve the directory from instead | ||||
of using the provided timestamp | of using the provided timestamp | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive, | :statuscode 404: requested origin can not be found in the archive, | ||||
requested visit timestamp does not exist or the provided path does | requested visit timestamp does not exist or the provided path does | ||||
not exist from the origin root directory | not exist from the origin root directory | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/torvalds/linux/visit/1493926809/directory/` | :swh_web_browse:`origin/https://github.com/torvalds/linux/visit/1493926809/directory/` | ||||
:swh_web_browse:`origin/git/url/https://github.com/torvalds/linux/visit/2016-09-14T10:36:21/directory/net/ethernet/` | :swh_web_browse:`origin/https://github.com/torvalds/linux/visit/2016-09-14T10:36:21/directory/net/ethernet/` | ||||
:swh_web_browse:`origin/git/url/https://github.com/python/cpython/visit/1474620651/directory/` | :swh_web_browse:`origin/https://github.com/python/cpython/visit/1474620651/directory/` | ||||
:swh_web_browse:`origin/git/url/https://github.com/python/cpython/visit/2017-05-05/directory/Python/` | :swh_web_browse:`origin/https://github.com/python/cpython/visit/2017-05-05/directory/Python/` | ||||
:swh_web_browse:`origin/git/url/https://github.com/python/cpython/visit/2015-08/directory/?branch=refs/heads/2.7` | :swh_web_browse:`origin/https://github.com/python/cpython/visit/2015-08/directory/?branch=refs/heads/2.7` | ||||
Origin content | Origin content | ||||
"""""""""""""" | """""""""""""" | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/content/(path)/ | .. http:get:: /browse/origin/(origin_url)/content/(path)/ | ||||
HTML view that produces a display of a content | HTML view that produces a display of a content | ||||
associated to the latest full visit of a software origin. | associated to the latest full visit of a software origin. | ||||
If the content to display is textual, it will be highlighted client-side | If the content to display is textual, it will be highlighted client-side | ||||
if possible using highlightjs_. The procedure to perform that task is described | if possible using highlightjs_. The procedure to perform that task is described | ||||
in :http:get:`/browse/content/[(algo_hash):](hash)/`. | in :http:get:`/browse/content/[(algo_hash):](hash)/`. | ||||
Show All 9 Lines | .. http:get:: /browse/origin/(origin_url)/content/(path)/ | ||||
content in order to easily navigate up to the origin root directory. | content in order to easily navigate up to the origin root directory. | ||||
The view also enables to easily switch between the origin branches | The view also enables to easily switch between the origin branches | ||||
and releases through a dropdown menu. | and releases through a dropdown menu. | ||||
The origin branch (default to master) from which to retrieve the content | The origin branch (default to master) from which to retrieve the content | ||||
can also be specified by using the branch query parameter. | can also be specified by using the branch query parameter. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:param string path: path of a content reachable from the origin root directory | :param string path: path of a content reachable from the origin root directory | ||||
:query string branch: specify the origin branch name from which | :query string branch: specify the origin branch name from which | ||||
to retrieve the content | to retrieve the content | ||||
:query string release: specify the origin release name from which | :query string release: specify the origin release name from which | ||||
to retrieve the content | to retrieve the content | ||||
:query string revision: specify the origin revision, identified by the hexadecimal | :query string revision: specify the origin revision, identified by the hexadecimal | ||||
representation of its **sha1_git** value, from which to retrieve the content | representation of its **sha1_git** value, from which to retrieve the content | ||||
:query int visit_id: specify a visit id to retrieve the content from instead | :query int visit_id: specify a visit id to retrieve the content from instead | ||||
of using the latest full visit by default | of using the latest full visit by default | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive, | :statuscode 404: requested origin can not be found in the archive, | ||||
or the provided content path does not exist from the origin root directory | or the provided content path does not exist from the origin root directory | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/git/git/content/git.c/` | :swh_web_browse:`origin/https://github.com/git/git/content/git.c/` | ||||
:swh_web_browse:`origin/git/url/https://github.com/git/git/content/git.c/` | :swh_web_browse:`origin/https://github.com/git/git/content/git.c/` | ||||
:swh_web_browse:`origin/https://github.com/mozilla/gecko-dev/content/js/src/json.cpp/` | :swh_web_browse:`origin/https://github.com/mozilla/gecko-dev/content/js/src/json.cpp/` | ||||
:swh_web_browse:`origin/https://github.com/git/git/content/git.c/?branch=refs/heads/next` | :swh_web_browse:`origin/https://github.com/git/git/content/git.c/?branch=refs/heads/next` | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/visit/(timestamp)/content/(path)/ | .. http:get:: /browse/origin/(origin_url)/visit/(timestamp)/content/(path)/ | ||||
HTML view that produces a display of a content associated to a | HTML view that produces a display of a content associated to a | ||||
visit of a software origin closest to a provided timestamp. | visit of a software origin closest to a provided timestamp. | ||||
If the content to display is textual, it will be highlighted client-side | If the content to display is textual, it will be highlighted client-side | ||||
if possible using highlightjs_. The procedure to perform that task is described | if possible using highlightjs_. The procedure to perform that task is described | ||||
in :http:get:`/browse/content/[(algo_hash):](hash)/`. | in :http:get:`/browse/content/[(algo_hash):](hash)/`. | ||||
Show All 10 Lines | .. http:get:: /browse/origin/(origin_url)/visit/(timestamp)/content/(path)/ | ||||
content in order to easily navigate up to the origin root directory. | content in order to easily navigate up to the origin root directory. | ||||
The view also enables to easily switch between the origin branches | The view also enables to easily switch between the origin branches | ||||
and releases through a dropdown menu. | and releases through a dropdown menu. | ||||
The origin branch (default to master) from which to retrieve the content | The origin branch (default to master) from which to retrieve the content | ||||
can also be specified by using the branch query parameter. | can also be specified by using the branch query parameter. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | :param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | ||||
or Unix timestamp to parse in order to find the closest visit. | or Unix timestamp to parse in order to find the closest visit. | ||||
:param string path: path of a content reachable from the origin root directory | :param string path: path of a content reachable from the origin root directory | ||||
:query string branch: specify the origin branch name from which | :query string branch: specify the origin branch name from which | ||||
to retrieve the content | to retrieve the content | ||||
:query string release: specify the origin release name from which | :query string release: specify the origin release name from which | ||||
to retrieve the content | to retrieve the content | ||||
:query string revision: specify the origin revision, identified by the hexadecimal | :query string revision: specify the origin revision, identified by the hexadecimal | ||||
representation of its **sha1_git** value, from which to retrieve the content | representation of its **sha1_git** value, from which to retrieve the content | ||||
:query int visit_id: specify a visit id to retrieve the content from instead | :query int visit_id: specify a visit id to retrieve the content from instead | ||||
of using the provided timestamp | of using the provided timestamp | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive, | :statuscode 404: requested origin can not be found in the archive, | ||||
requested visit timestamp does not exist or the provided content path does | requested visit timestamp does not exist or the provided content path does | ||||
not exist from the origin root directory | not exist from the origin root directory | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/git/git/visit/1473933564/content/git.c/` | :swh_web_browse:`origin/https://github.com/git/git/visit/1473933564/content/git.c/` | ||||
:swh_web_browse:`origin/git/url/https://github.com/git/git/visit/2016-05-05T00:0:00+00:00/content/git.c/` | :swh_web_browse:`origin/https://github.com/git/git/visit/2016-05-05T00:0:00+00:00/content/git.c/` | ||||
:swh_web_browse:`origin/https://github.com/mozilla/gecko-dev/visit/1490126182/content/js/src/json.cpp/` | :swh_web_browse:`origin/https://github.com/mozilla/gecko-dev/visit/1490126182/content/js/src/json.cpp/` | ||||
:swh_web_browse:`origin/https://github.com/mozilla/gecko-dev/visit/2017-03-21/content/js/src/json.cpp/#L904-L931` | :swh_web_browse:`origin/https://github.com/mozilla/gecko-dev/visit/2017-03-21/content/js/src/json.cpp/#L904-L931` | ||||
:swh_web_browse:`origin/https://github.com/git/git/visit/2017-09-15/content/git.c/?branch=refs/heads/next` | :swh_web_browse:`origin/https://github.com/git/git/visit/2017-09-15/content/git.c/?branch=refs/heads/next` | ||||
Origin history | Origin history | ||||
"""""""""""""" | """""""""""""" | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/log/ | .. http:get:: /browse/origin/(origin_url)/log/ | ||||
HTML view that produces a display of revisions history heading | HTML view that produces a display of revisions history heading | ||||
to the last revision found during the latest visit of a software origin. | to the last revision found during the latest visit of a software origin. | ||||
In other words, it shows the commit log associated to the latest | In other words, it shows the commit log associated to the latest | ||||
full visit of a software origin. | full visit of a software origin. | ||||
The following data are displayed for each log entry: | The following data are displayed for each log entry: | ||||
Show All 15 Lines | in a large history, two buttons are present at the bottom of the view: | ||||
than the ones currently displayed | than the ones currently displayed | ||||
The view also enables to easily switch between the origin branches | The view also enables to easily switch between the origin branches | ||||
and releases through a dropdown menu. | and releases through a dropdown menu. | ||||
The origin branch (default to master) from which to retrieve the content | The origin branch (default to master) from which to retrieve the content | ||||
can also be specified by using the branch query parameter. | can also be specified by using the branch query parameter. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:query int per_page: the number of log entries to display per page | :query int per_page: the number of log entries to display per page | ||||
:query int offset: the number of revisions to skip before returning those to display | :query int offset: the number of revisions to skip before returning those to display | ||||
:query str revs_ordering: specify the revisions ordering, possible values are ``committer_date``, | :query str revs_ordering: specify the revisions ordering, possible values are ``committer_date``, | ||||
``dfs``, ``dfs_post`` and ``bfs`` | ``dfs``, ``dfs_post`` and ``bfs`` | ||||
:query string branch: specify the origin branch name from which | :query string branch: specify the origin branch name from which | ||||
to retrieve the commit log | to retrieve the commit log | ||||
:query string release: specify the origin release name from which | :query string release: specify the origin release name from which | ||||
to retrieve the commit log | to retrieve the commit log | ||||
:query string revision: specify the origin revision, identified by the hexadecimal | :query string revision: specify the origin revision, identified by the hexadecimal | ||||
representation of its **sha1_git** value, from which to retrieve the commit log | representation of its **sha1_git** value, from which to retrieve the commit log | ||||
:query int visit_id: specify a visit id to retrieve the history log from instead | :query int visit_id: specify a visit id to retrieve the history log from instead | ||||
of using the latest visit by default | of using the latest visit by default | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive | :statuscode 404: requested origin can not be found in the archive | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/videolan/vlc/log/` | :swh_web_browse:`origin/https://github.com/videolan/vlc/log/` | ||||
:swh_web_browse:`origin/https://github.com/Kitware/CMake/log/` | :swh_web_browse:`origin/https://github.com/Kitware/CMake/log/` | ||||
:swh_web_browse:`origin/https://github.com/Kitware/CMake/log/?branch=refs/heads/release` | :swh_web_browse:`origin/https://github.com/Kitware/CMake/log/?branch=refs/heads/release` | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/visit/(timestamp)/log/ | .. http:get:: /browse/origin/(origin_url)/visit/(timestamp)/log/ | ||||
HTML view that produces a display of revisions history heading | HTML view that produces a display of revisions history heading | ||||
to the last revision found during a visit of a software origin closest | to the last revision found during a visit of a software origin closest | ||||
to the provided timestamp. | to the provided timestamp. | ||||
In other words, it shows the commit log associated to a visit of | In other words, it shows the commit log associated to a visit of | ||||
a software origin closest to a provided timestamp. | a software origin closest to a provided timestamp. | ||||
The following data are displayed for each log entry: | The following data are displayed for each log entry: | ||||
Show All 13 Lines | in a large history, two buttons are present at the bottom of the view: | ||||
than the ones currently displayed | than the ones currently displayed | ||||
The view also enables to easily switch between the origin branches | The view also enables to easily switch between the origin branches | ||||
and releases through a dropdown menu. | and releases through a dropdown menu. | ||||
The origin branch (default to master) from which to retrieve the content | The origin branch (default to master) from which to retrieve the content | ||||
can also be specified by using the branch query parameter. | can also be specified by using the branch query parameter. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | :param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | ||||
or Unix timestamp to parse in order to find the closest visit. | or Unix timestamp to parse in order to find the closest visit. | ||||
:query string revs_breadcrumb: used internally to store | :query string revs_breadcrumb: used internally to store | ||||
the navigation breadcrumbs (i.e. the list of descendant revisions | the navigation breadcrumbs (i.e. the list of descendant revisions | ||||
visited so far). It must be a string in the form | visited so far). It must be a string in the form | ||||
"(rev_1)[/(rev_2)/.../(rev_n)]" where rev_i corresponds to a | "(rev_1)[/(rev_2)/.../(rev_n)]" where rev_i corresponds to a | ||||
revision **sha1_git**. | revision **sha1_git**. | ||||
Show All 9 Lines | :query int visit_id: specify a visit id to retrieve the history log from instead | ||||
of using the provided timestamp | of using the provided timestamp | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive | :statuscode 404: requested origin can not be found in the archive | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/videolan/vlc/visit/1459651262/log/` | :swh_web_browse:`origin/https://github.com/videolan/vlc/visit/1459651262/log/` | ||||
:swh_web_browse:`origin/git/url/https://github.com/Kitware/CMake/visit/2016-04-01/log/` | :swh_web_browse:`origin/https://github.com/Kitware/CMake/visit/2016-04-01/log/` | ||||
:swh_web_browse:`origin/https://github.com/Kitware/CMake/visit/1438116814/log/?branch=refs/heads/release` | :swh_web_browse:`origin/https://github.com/Kitware/CMake/visit/1438116814/log/?branch=refs/heads/release` | ||||
:swh_web_browse:`origin/https://github.com/Kitware/CMake/visit/2017-05-05T03:14:23/log/?branch=refs/heads/release` | :swh_web_browse:`origin/https://github.com/Kitware/CMake/visit/2017-05-05T03:14:23/log/?branch=refs/heads/release` | ||||
Origin branches | Origin branches | ||||
""""""""""""""" | """"""""""""""" | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/branches/ | .. http:get:: /browse/origin/(origin_url)/branches/ | ||||
HTML view that produces a display of the list of branches | HTML view that produces a display of the list of branches | ||||
found during the latest full visit of a software origin. | found during the latest full visit of a software origin. | ||||
The following data are displayed for each branch: | The following data are displayed for each branch: | ||||
* its name | * its name | ||||
* a link to browse the associated directory | * a link to browse the associated directory | ||||
* a link to browse the associated revision | * a link to browse the associated revision | ||||
* last commit message | * last commit message | ||||
* last commit date | * last commit date | ||||
That list of branches is paginated, each page displaying a maximum of 100 branches. | That list of branches is paginated, each page displaying a maximum of 100 branches. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive | :statuscode 404: requested origin can not be found in the archive | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/deb/url/deb://Debian/packages/linux/branches/` | :swh_web_browse:`origin/deb://Debian/packages/linux/branches/` | ||||
:swh_web_browse:`origin/https://github.com/webpack/webpack/branches/` | :swh_web_browse:`origin/https://github.com/webpack/webpack/branches/` | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/visit/(timestamp)/branches/ | .. http:get:: /browse/origin/(origin_url)/visit/(timestamp)/branches/ | ||||
HTML view that produces a display of the list of branches | HTML view that produces a display of the list of branches | ||||
found during a visit of a software origin closest to the provided timestamp. | found during a visit of a software origin closest to the provided timestamp. | ||||
The following data are displayed for each branch: | The following data are displayed for each branch: | ||||
* its name | * its name | ||||
* a link to browse the associated directory | * a link to browse the associated directory | ||||
* a link to browse the associated revision | * a link to browse the associated revision | ||||
* last commit message | * last commit message | ||||
* last commit date | * last commit date | ||||
That list of branches is paginated, each page displaying a maximum of 100 branches. | That list of branches is paginated, each page displaying a maximum of 100 branches. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | :param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | ||||
or Unix timestamp to parse in order to find the closest visit. | or Unix timestamp to parse in order to find the closest visit. | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive | :statuscode 404: requested origin can not be found in the archive | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/kripken/emscripten/visit/2017-05-05T12:02:03/branches/` | :swh_web_browse:`origin/https://github.com/kripken/emscripten/visit/2017-05-05T12:02:03/branches/` | ||||
:swh_web_browse:`origin/deb://Debian/packages/apache2-mod-xforward/visit/2017-11-15T05:15:09/branches/` | :swh_web_browse:`origin/deb://Debian/packages/apache2-mod-xforward/visit/2017-11-15T05:15:09/branches/` | ||||
Origin releases | Origin releases | ||||
""""""""""""""" | """"""""""""""" | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/releases/ | .. http:get:: /browse/origin/(origin_url)/releases/ | ||||
HTML view that produces a display of the list of releases | HTML view that produces a display of the list of releases | ||||
found during the latest full visit of a software origin. | found during the latest full visit of a software origin. | ||||
The following data are displayed for each release: | The following data are displayed for each release: | ||||
* its name | * its name | ||||
* a link to browse the release details | * a link to browse the release details | ||||
* its target type (revision, directory, content or release) | * its target type (revision, directory, content or release) | ||||
* its associated message | * its associated message | ||||
* its date | * its date | ||||
That list of releases is paginated, each page displaying a maximum of 100 releases. | That list of releases is paginated, each page displaying a maximum of 100 releases. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive | :statuscode 404: requested origin can not be found in the archive | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/git/git/releases/` | :swh_web_browse:`origin/https://github.com/git/git/releases/` | ||||
:swh_web_browse:`origin/https://github.com/webpack/webpack/releases/` | :swh_web_browse:`origin/https://github.com/webpack/webpack/releases/` | ||||
.. http:get:: /browse/origin/[(origin_type)/url/](origin_url)/visit/(timestamp)/releases/ | .. http:get:: /browse/origin/(origin_url)/visit/(timestamp)/releases/ | ||||
HTML view that produces a display of the list of releases | HTML view that produces a display of the list of releases | ||||
found during a visit of a software origin closest to the provided timestamp. | found during a visit of a software origin closest to the provided timestamp. | ||||
The following data are displayed for each release: | The following data are displayed for each release: | ||||
* its name | * its name | ||||
* a link to browse the release details | * a link to browse the release details | ||||
* its target type (revision, directory, content or release) | * its target type (revision, directory, content or release) | ||||
* its associated message | * its associated message | ||||
* its date | * its date | ||||
That list of releases is paginated, each page displaying a maximum of 100 releases. | That list of releases is paginated, each page displaying a maximum of 100 releases. | ||||
:param string origin_type: the type of software origin (possible values are ``git``, | |||||
``svn``, ``hg``, ``deb``, ``pypi``, ``npm``, ``ftp`` or ``deposit``) | |||||
:param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | :param string origin_url: the url of the origin (e.g. https://github.com/(user)/(repo)/) | ||||
:param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | :param string timestamp: a date string (any format parsable by `dateutil.parser.parse`_) | ||||
or Unix timestamp to parse in order to find the closest visit. | or Unix timestamp to parse in order to find the closest visit. | ||||
:statuscode 200: no error | :statuscode 200: no error | ||||
:statuscode 404: requested origin can not be found in the archive | :statuscode 404: requested origin can not be found in the archive | ||||
**Examples:** | **Examples:** | ||||
.. parsed-literal:: | .. parsed-literal:: | ||||
:swh_web_browse:`origin/git/url/https://github.com/torvalds/linux/visit/2017-11-21T19:37:42/releases/` | :swh_web_browse:`origin/https://github.com/torvalds/linux/visit/2017-11-21T19:37:42/releases/` | ||||
:swh_web_browse:`origin/https://github.com/Kitware/CMake/visit/2016-09-23T14:06:35/releases/` | :swh_web_browse:`origin/https://github.com/Kitware/CMake/visit/2016-09-23T14:06:35/releases/` | ||||
.. _highlightjs: https://highlightjs.org/ | .. _highlightjs: https://highlightjs.org/ | ||||
.. _dateutil.parser.parse: http://dateutil.readthedocs.io/en/stable/parser.html | .. _dateutil.parser.parse: http://dateutil.readthedocs.io/en/stable/parser.html |