GitLab is used only for code review, issue tracking and project management. Canonical locations for source code are still https://gitweb.torproject.org/ https://git.torproject.org/ and git-rw.torproject.org.

  1. 07 Jan, 2021 1 commit
  2. 05 Jan, 2021 2 commits
  3. 28 Oct, 2020 1 commit
  4. 14 Sep, 2020 1 commit
  5. 11 Sep, 2020 2 commits
  6. 10 Sep, 2020 1 commit
    • boklm's avatar
      Bug 33289: Optimize the get_target function · dab4ae35
      boklm authored
      We also change the behavior of the function: we stop looking after the
      first definition of a target. This means for example that if a target is
      defined as an array in rbm.conf, and also defined as a hash in the
      project's config, then the definition from rbm.conf will be ignored.
      dab4ae35
  7. 22 Jun, 2020 1 commit
  8. 29 May, 2020 1 commit
  9. 27 Apr, 2020 1 commit
  10. 24 Apr, 2020 1 commit
    • boklm's avatar
      Bug 33990: Initialize step in non-build commands · 18b396fb
      boklm authored
      When using the build command, step gets initialized to 'build'. However
      this was not done in some of the other non-build commands where the
      value of step was left to rbm_init.
      18b396fb
  11. 12 Feb, 2020 2 commits
  12. 30 Nov, 2019 1 commit
  13. 27 Nov, 2019 2 commits
    • boklm's avatar
      Bug 27265: fix output_dir value in sub-projects · 03d53fcb
      boklm authored
      In the build_pkg call in input_files, we were setting the output_dir
      option to the project's directory, causing this directory to be
      incorrectly used as the output directory in some cases. But there is no
      need to set output_dir at this point, so we can just remove it.
      
      We also introduce a new feature allowing to set options for the current
      project but not for the child projects listed in `input_files`. By
      default the options are applied recursively to all projects. If some
      options are defined under `norec/` then they are only applied on the
      current project.
      
      We use this feature in two places where we were setting the output_dir,
      which removes the need to reset it in two places.
      
      At the same time, we fix the `urlget()` call in input_files which was
      incorrectly ignoring options.
      03d53fcb
    • boklm's avatar
      ef4df05a
  14. 10 Sep, 2019 1 commit
  15. 24 May, 2019 1 commit
  16. 04 Apr, 2019 1 commit
  17. 11 Mar, 2019 1 commit
    • boklm's avatar
      Bug 29572: Update the test before running git checkout --detach · 70d1ff3e
      boklm authored
      The reason we don't run |git checkout --detach| in all cases is that it
      fails when we cloned a repository without a master branch. To avoid
      running it in this case, we were checking if HEAD is pointing to a
      branch which has a corresponding file in the .git directory.
      
      However it seems there are other cases where HEAD is pointing to a
      branch which does not have a corresponding file in the .git directory.
      Instead we now check that |git rev-parse --verify HEAD| does not return
      an error, in which case we assume that |git checkout --detach| will not
      produce an error too.
      70d1ff3e
  18. 29 Jan, 2019 1 commit
  19. 26 Nov, 2018 1 commit
    • boklm's avatar
      Bug 28466: fix issue with git submodule URL changes · eb500fa9
      boklm authored
      We replace a call to:
        git submodule update --init
      with calls to:
        git submodule init
        git submodule sync
        git submodule update
      
      The call to `git submodule sync` is solving the issue that could occur
      when a submodule URL is changing.
      eb500fa9
  20. 09 Apr, 2018 1 commit
    • boklm's avatar
      Bug 25746: fix git_submodule option with submodule in subdirectory · 8adbc46d
      boklm authored
      To create an archive containing all submodules, we were creating a
      temporary archive of each submodule before appending them to the main
      archive. We were using the submodule path in the temporary archive
      filename, which was failing if the submodule is in a subdirectory.
      To avoid that, we are removing the path from the temporary archive's
      filename and directly appending it to the main archive.
      8adbc46d
  21. 07 Mar, 2018 1 commit
    • boklm's avatar
      Bug 25435: use --no-auto-check-trustdb to avoid modifying gpg keyring files · db41d8e7
      boklm authored
      By default gpg will from time to time update its trust database. When
      this happens it will also modify the keyring files to add some trust
      information. To avoid this we add the --no-auto-check-trustdb option.
      
      As we don't use the Web of Trust when we use a keyring file, we also
      disable it using `--trust-model always`.
      db41d8e7
  22. 05 Mar, 2018 1 commit
  23. 02 Feb, 2018 1 commit
  24. 24 Jan, 2018 1 commit
  25. 23 Jan, 2018 2 commits
  26. 18 Jan, 2018 1 commit
  27. 27 Nov, 2017 3 commits
  28. 21 Nov, 2017 1 commit
    • boklm's avatar
      Bug 24361: use Path::Tiny instead of File::Slurp · 8b6831b3
      boklm authored
      When a build script contains some wide character, rbm fails with an
      error:
        Wide character in syswrite at /usr/share/perl5/File/Slurp.pm line 506.
      
      This is because write_file from File::Slurp which we use to write the
      build scripts is encoding files to latin-1 by default. While fixing this,
      switching to Path::Tiny instead of File::Slurp seems like a good idea:
      http://blogs.perl.org/users/leon_timmermans/2015/08/fileslurp-is-broken-and-wrong.html
      
      Switching to Path::Tiny is also improving performance:
      
        When using File::Slurp:
      
          $ time ./rbm/rbm showconf --target alpha --target torbrowser-linux-x86_64 tor-browser var/build_id
          82b8cb
      
          real    0m28.543s
          user    0m24.448s
          sys     0m3.956s
      
        When using Path::Tiny:
      
          $ time ~/rbm/rbm showconf --target alpha --target torbrowser-linux-x86_64 tor-browser var/build_id
          82b8cb
      
          real    0m15.745s
          user    0m13.940s
          sys     0m1.940s
      
      The path function in lib/RBM.pm is conflicting with the path constructor
      from Path::Tiny, so we rename it to rbm_path.
      8b6831b3
  29. 20 Nov, 2017 1 commit
    • boklm's avatar
      Bug 24361: fix handling of wide characters in sha256 · 134cad4e
      boklm authored
      The sha256_hex function gives an error if a string contains wide
      characters. To avoid this we first encode the string to utf8 (which
      transforms it to a sequence of octets), before passing it to sha256_hex.
      134cad4e
  30. 18 Sep, 2017 1 commit
    • boklm's avatar
      Bug 23557: download again an input file not matching expected sha256sum · 236fcaac
      boklm authored
      When an input file is already present (downloaded during a previous
      build), but is not matching the expected sha256sum, we download it
      again.
      
      To do that we rename the input_file_id_need_dl function to
      input_file_need_dl, and make it work for all types of actions (instead
      of only 'input_files_id' before). In input_file_need_dl we ignore an
      the file if it is not matching the expected sha256sum.
      236fcaac
  31. 15 Sep, 2017 1 commit
    • boklm's avatar
      Bug 23513: run remote_finish when there was an error in remote_start · 78d9b11a
      boklm authored
      We were looking at the $remote_tmp_src and $remote_tmp_dst variables to
      decide if running remote_finish is needed. However, those variables are
      not defined if there was an error in remote_start, and we should still
      run remote_finish in that case. Instead we look at the remote_exec
      option to decide if we need to run remote_finish.
      78d9b11a
  32. 07 Sep, 2017 1 commit
  33. 11 Aug, 2017 1 commit