Skip to content
Snippets Groups Projects
  1. Aug 22, 2023
  2. Aug 21, 2023
    • Antoine Lambert's avatar
      cran: Improve listing of R packages · 91e4e33d
      Antoine Lambert authored
      Previously, the lister was relying on the use of the CRANtools R module
      but it has the drawback to only list the latest version of each registered
      package in the CRAN registry.
      
      In order to get all possible versions for each CRAN package, prefer to exploit
      the content of the weekly dump of the CRAN database in RDS format.
      
      To read the content of the RDS file from Python, the rpy2 package is used as
      it has the advantage to be packaged in debian.
      
      Related to swh/meta#1709.
      v5.9.7
      91e4e33d
  3. Aug 17, 2023
  4. Aug 16, 2023
    • Antoine Lambert's avatar
      rpm: Turn fedora lister into a generic Red Hat based distribution one · 95714f6f
      Antoine Lambert authored
      As Red Hat based linux distributions share the same type of package repository,
      rework the fedora lister into a generic one to list RPM source packages and
      their versions from numerous distributions.
      
      For a given distribution, the RPM lister will fetch packages metadata from a
      list of release identifiers and a list of software components. Source packages
      are then processed and relevant info are extracted to be sent to the RPM loader.
      When all releases and components were processed, the lister collected all versions
      for each package name and send those info to the scheduler that will create RPM
      loading tasks afterwards.
      
      Nevertheless, as there is no generic way to list all releases and components for
      a given distribution but also to guess the right URL to retrieve packages metadata
      from, those info need to be manually provided to the lister as input parameters.
      Some examples of those parameters for various distributions can be found in the
      config directory of the lister.
      
      Regarding the produced origin URLs, as there is no way to find valid HTTP ones
      for all distributions, the same behavior as with the debian lister is used and
      they have the following form: rpm://{instance}/packages/{package_name} where
      the instance variable corresponds to the name of the listed distribution such
      as Fedora, CentOS, or openSUSE.
      
      Related to swh/meta#5011.
      95714f6f
  5. Aug 04, 2023
  6. Aug 02, 2023
  7. Aug 01, 2023
  8. Jul 13, 2023
    • Antoine R. Dumont's avatar
      Add stagit lister · 56b4fcc7
      Antoine R. Dumont authored
      That lister is really near the cgit & gitweb implementations. But the dom data is again
      structured differently though so this implementation stands on its own.
      
      Refs. swh/meta#5048
      v5.9.0
      56b4fcc7
    • Antoine R. Dumont's avatar
      Add gitiles lister · 3ab85628
      Antoine R. Dumont authored
      Gitiles instance returns voluntarily a malformed json output (json prefixed with
      ``)]}'\n``) [2]. The lister deals with it to properly parse the json response
      nonetheless. It drops the prefix and then parses the json.
      
      If at some point, they drop this prefix to return json directly, the lister will be able
      to deal with it too. There are 2 tests one with 'standard' gitile format and another
      with standard json to account for both case.
      
      Refs. swh/meta#5045
      
      [2] https://github.com/google/gitiles/issues/263
      3ab85628
  9. Jul 10, 2023
    • Antoine R. Dumont's avatar
      Add Gitweb lister · 573958ce
      Antoine R. Dumont authored
      Depending on some instances, we have some specific heuristics, some instances:
      - have summary pages which do not not list metadata_url (so some
        computation happens to list git:// origins which are cloneable)
      - have summary page which reference metadata_url as a multiple comma separated urls
      - lists relative urls of the repository so we need to join it with the main instance url
        to have a complete cloneable origins (or summary page)
      - lists "down" http origins (cloning those won't work) so lists those as cloneable https
        ones (when the main url is behind https).
      
      Refs. #1800
      v5.8.0
      573958ce
  10. Jul 04, 2023
  11. Jun 29, 2023
  12. Jun 26, 2023
    • Antoine Lambert's avatar
      gogs: Ensure to list all repositories · b9815ed5
      Antoine Lambert authored
      In contrary of gitea listing which does not require to provide the q query
      parameter, it is required for the gogs case.
      
      After reading the gogs source code, the /repos/search endpoint generates
      a sql request of the form: "SELECT * FROM repos WHERE name LIKE '%{q}%'".
      By setting the q parameter value to "_", the LIKE clause acts as a
      wildcard and all repositories are ensured to be returned.
      
      Fixes #4698.
      v5.7.2
      b9815ed5
  13. Jun 23, 2023
  14. Jun 21, 2023
  15. Jun 20, 2023
  16. Jun 08, 2023
  17. Jun 07, 2023
  18. Jun 05, 2023
  19. May 31, 2023
  20. May 23, 2023
  21. May 19, 2023
  22. May 10, 2023
    • vlorentz's avatar
      Fix crash of 'swh lister run' when called without -l · 596e8c6c
      vlorentz authored
      ```
      $ swh lister run
      Traceback (most recent call last):
        File "/home/dev/.local/bin/swh", line 33, in <module>
          sys.exit(load_entry_point('swh.core', 'console_scripts', 'swh')())
        File "/home/dev/swh-environment/swh-core/swh/core/cli/__init__.py", line 144, in main
          return swh(auto_envvar_prefix="SWH")
        File "/home/dev/.local/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
          return self.main(*args, **kwargs)
        File "/home/dev/.local/lib/python3.9/site-packages/click/core.py", line 1055, in main
          rv = self.invoke(ctx)
        File "/home/dev/.local/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
          return _process_result(sub_ctx.command.invoke(sub_ctx))
        File "/home/dev/.local/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
          return _process_result(sub_ctx.command.invoke(sub_ctx))
        File "/home/dev/.local/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
          return ctx.invoke(self.callback, **ctx.params)
        File "/home/dev/.local/lib/python3.9/site-packages/click/core.py", line 760, in invoke
          return __callback(*args, **kwargs)
        File "/home/dev/.local/lib/python3.9/site-packages/click/decorators.py", line 26, in new_func
          return f(get_current_context(), *args, **kwargs)
        File "/home/dev/swh-environment/swh-lister/swh/lister/cli.py", line 68, in run
          get_lister(lister, **config).run()
        File "/home/dev/swh-environment/swh-lister/swh/lister/__init__.py", line 75, in get_lister
          raise ValueError(
      ValueError: Invalid lister None: only supported listers are ['arch', 'aur', 'bitbucket', 'bower', 'cgit', 'conda', 'cpan', 'cran', 'crates', 'debian', 'fedora', 'gitea', 'github', 'gitlab', 'gnu', 'gogs', 'golang', 'hackage', 'hex', 'launchpad', 'maven', 'nixguix', 'npm', 'nuget', 'opam', 'packagist', 'phabricator', 'pubdev', 'puppet', 'pypi', 'rubygems', 'sourceforge', 'tuleap']
      ```
      596e8c6c
  23. Apr 27, 2023
  24. Apr 26, 2023
  25. Apr 13, 2023
  26. Mar 22, 2023
Loading