Skip to content
Snippets Groups Projects
  1. Jan 24, 2024
  2. Jan 23, 2024
    • Antoine Lambert's avatar
      cookers/git_bare: Speedup repository cooking with multi-threading · bdb42b14
      Antoine Lambert authored
      Previously when cooking a git bare repository, contents bytes were
      fetched sequentially which could take a good amount of time for an
      origin with a large revisions history.
      
      In order to speedup the cooking process, retrieve the contents bytes
      in parallel with the help of the concurrent.futures module from the
      Python standard library which fits particularly well for making loops
      of I/O-bound tasks concurrent and for issuing tasks asynchronously.
      bdb42b14
    • Antoine Lambert's avatar
      to_disk: Use a BFS to recursively list a directory instead of a DFS · 150aea0c
      Antoine Lambert authored
      It enables to push new files to download asynchronously while fetching
      sub-directories and thus slightly improve the overall cooking performance.
      
      It should also reduce the memory consumption of the cooking process.
      150aea0c
    • Antoine Lambert's avatar
      to_disk: Allow to use objstorage directly to fetch contents bytes · 098bb093
      Antoine Lambert authored
      As in the git bare cooker, allow to optionally use objstorage directly
      to fetch content bytes when cooking a directory.
      098bb093
    • Antoine Lambert's avatar
      to_disk: Speedup directory cooking with multi-threading · 295e4138
      Antoine Lambert authored
      Previously when cooking a directory, contents bytes were fetched
      sequentially which could take a good amount of time for large
      directories.
      
      In order to speedup the cooking process, retrieve the contents bytes
      in parallel with the help of the concurrent.futures module from the
      Python standard library which fits particularly well for making loops
      of I/O-bound tasks concurrent and for issuing tasks asynchronously.
      295e4138
  3. Dec 07, 2023
  4. Dec 05, 2023
  5. Dec 04, 2023
  6. Dec 03, 2023
  7. Nov 29, 2023
  8. Nov 09, 2023
  9. Nov 08, 2023
  10. Oct 25, 2023
  11. Sep 28, 2023
  12. Sep 18, 2023
    • Antoine R. Dumont's avatar
      setup.py: Remove sdisk build warning about importable packages · f22dfe2b
      Antoine R. Dumont authored
      This fixes the sdist build warnings about importable packages (swh.vault.sql,
      swh.vault.sql.upgrades). [1]
      
      This aligns with the swh.storage's setup.py.
      
      [1] for package in swh.vault.sql swh.vault.sql.upgrades
      ```
          ############################
          # Package would be ignored #
          ############################
          Python recognizes '$package' as an importable package,
          but it is not listed in the `packages` configuration of setuptools.
      
          '$package' has been automatically added to the distribution only
          because it may contain data files, but this behavior is likely to change
          in future versions of setuptools (and therefore is considered deprecated).
      
          Please make sure that '$package' is included as a package by using
          the `packages` configuration field or the proper discovery methods
          (for example by using `find_namespace_packages(...)`/`find_namespace:`
          instead of `find_packages(...)`/`find:`).
      
          You can read more about "package discovery" and "data files" on setuptools
          documentation page.
      ```
      
      Refs. swh/infra/sysadm-environment#5044
      Verified
      f22dfe2b
  13. Sep 14, 2023
    • vlorentz's avatar
      to_disk: Represent revisions as empty directories instead of symlinks · e8fa9a45
      vlorentz authored
      The symlink representation is slightly ambiguous, so not necessarily
      very useful.
      Additionally, it made directory-flat bundles differ from a non-recursive
      'git clone' checkout, which confuses Guix and potentially other tools.
      
      We may revisit this in the future, eg. by adding a dotfile in the
      directory or metadata at the root.
      e8fa9a45
  14. Jul 19, 2023
  15. Jul 13, 2023
    • Antoine Lambert's avatar
      backend: Move postgresql backend initialization in a separate class · 1614bb65
      Antoine Lambert authored
      Since commit swh/devel/swh-core@89d48572, the "swh db init" command attempts
      to instantiate the postgresql backend of a swh module using the get_datastore
      function of the module with a "cls" and "db" parameters.
      
      While it works fine for most of swh modules, it does not for the vault as more
      parameters are expected by the "get_vault" function and thus the database init
      is failing. The issue was spotted in the docker environment after updating the
      swh/stack image.
      
      So extract postgresql backend initialization for the vault in a new class named
      VaultBackendDataStore and set it as swh.vault.get_datastore attribute value.
      1614bb65
  16. Jul 07, 2023
  17. Jun 26, 2023
  18. May 11, 2023
  19. Mar 03, 2023
  20. Feb 23, 2023
  21. Feb 17, 2023
  22. Feb 16, 2023
  23. Feb 02, 2023
  24. Dec 19, 2022
  25. Nov 23, 2022
  26. Nov 07, 2022
  27. Oct 19, 2022
  28. Oct 18, 2022
  29. Sep 14, 2022
    • David Douard's avatar
      Bump swh dependencies · c315c245
      David Douard authored
      to more reasonable versions...
      v1.8.0
      c315c245
    • David Douard's avatar
      Instanciate the SMTP class only when needed · cab17e72
      David Douard authored
      instead of creating it in the VaultBackend constructor: when configured
      (with host and port), SMTP.connect() is immediately called, which makes
      it mandatory to have the smtp server up and running to be able to create
      the VaultBackend object (which makes it hard to run properly in an elastic
      environment like docker or k8s).
      
      This also removes the fallback to hardcoded 'localhost:25' smtp server;
      if the smtp server is not configured or not reachable, the call to
      _smtp_send() will fail logging the failure (both in logging and sentry).
      cab17e72
  30. Aug 30, 2022
  31. Aug 04, 2022
Loading