Skip to content

Releases: repobee/repobee

v3.9.0

04 Sep 20:26
v3.9.0
18ac63c
Compare
Choose a tag to compare

Full release notes to follow. Importantly, support for Python 3.7 is ended with this release.

The only new feature is the addition of the REPOBEE_DISABLE_NAME_NORMALIZATION feature flag which can be used to disable name normalization for better compatibility with external tools (e.g. GitHub Classroom, see #1171).

What's Changed

Full Changelog: v3.8.0...v3.9.0

RepoBee v3.8.1

09 Feb 18:01
v3.8.1
399d059
Compare
Choose a tag to compare

Patch to fix installing RepoBee from source, which is broken in release v3.8.0. There are no changes to the actual software, see the release notes for v3.8.0 for the latest features.

Full Changelog: v3.8.0...v3.8.1

RepoBee v3.8.0

05 Sep 13:09
v3.8.0
a0f446b
Compare
Choose a tag to compare

Release notes will be refined in the near future

What's Changed

  • [fix] Define ANSI escape codes for coloring in RepoBee by @slarse in #973
  • Bump black from 21.9b0 to 21.10b0 by @dependabot in #972
  • [fact] Refactor formatting of hook results by @slarse in #974
  • [misc] Inline app requirements in install_requires arg by @slarse in #975
  • [misc] Pin test requirements by @slarse in #977
  • [fact] Refactor the dispatch module by @slarse in #976
  • [misc] Run scheduled tests on Saturdays by @slarse in #978
  • [fact] Split util module into more eponymous modules by @algomaster99 in #980
  • Bump pypa/gh-action-pypi-publish from 1.4.2 to 1.5.0 by @dependabot in #984
  • [fact] Refactor git module by @algomaster99 in #983
  • [misc] Drop support for Python 3.6 by @slarse in #988
  • gh workflow deploy.yml now uses Python v3.6 by @gauravagrwal in #989
  • [misc] add support for Python 3.10 by @algomaster99 in #990
  • [misc] Bump python-gitlab version to 3.1.0 by @slarse in #985
  • [fix] Fix fetching of asyncio event loop by @slarse in #993
  • [fix] Make empty repo check non-case sensitive by @slarse in #994
  • [fix] Fetch access rights through gitlab const object by @slarse in #992
  • [fact] Remove wrapper for capturing output of subprocess by @algomaster99 in #981
  • [docs] Document that root group in GitLab must allow project sharing by @slarse in #995
  • [fix] Rate limit modify requests in GitHub API by @slarse in #996
  • [feat] Test Internet connection in config verify by @slarse in #997
  • [feat] Implement repos clone as a plugin by @slarse in #999
  • [feat] Implement repos setup as a plugin by @slarse in #1000
  • [fact] Implement repos update as a plugin by @slarse in #1001
  • [fact] Implement repos migrate as a plugin by @slarse in #1002
  • [fact] Enabled more pylint rules by @slarse in #1004
  • [fact] Run pylint on tests and fix warnings by @slarse in #1005
  • Bump actions/setup-python from 2 to 3 by @dependabot in #1006
  • Bump actions/checkout from 2 to 3 by @dependabot in #1007
  • [misc] Run pylint on tests in GHA workflow by @slarse in #1008
  • [misc] Run GitLab system tests on scheduled test runs by @slarse in #1012
  • [test] Retry system test assertion to fix data race by @slarse in #1011
  • [fact] Refactor peer.assign_peer_reviews by @slarse in #1015
  • [test] Remove unused issues fixture by @slarse in #1019
  • [fix] lowercase issue author usernames by @ZinoKader in #1017
  • [misc] Enable more pylint rules and fix warnings by @slarse in #1009
  • [misc] Set pip directory to /requirements by @slarse in #1021
  • [misc] Update test requirements by @slarse in #1022
  • [misc] Update python-gitlab to 3.3.0 by @slarse in #1023
  • [misc] Reorganize requirements files by @slarse in #1024
  • Bump codecov/codecov-action from 2.1.0 to 3 by @dependabot in #1025
  • [misc] Update Dockerfile to actually work by @slarse in #1028
  • [misc] Add docker-deploy workflow by @slarse in #1029
  • [misc] Checkout repository in docker-deploy workflow by @slarse in #1030
  • [misc] Avoid running docker interactively by @slarse in #1031
  • [misc] Avoid failing build if codecov upload fails by @slarse in #1032
  • [misc] Fix requirements file in deploy workflow by @slarse in #1033
  • [fix] Replace None issue body with empty string by @slarse in #1034
  • [feat] Add support for a single configurable argument in mutex groups by @slarse in #1036
  • [misc] Rename integration tests directory by @slarse in #1037
  • [feat] Make --students arg accept filepath and configurable by @slarse in #1040
  • Revert "[feat] Make --students arg accept filepath and configurable" by @slarse in #1041
  • [fix] Make --students and --students-file mutually exclusive in plugin commands by @slarse in #1043
  • [fact] Implement teams create as plugin by @slarse in #1044
  • Bump docker/setup-qemu-action from 1 to 2 by @dependabot in #1045
  • Bump docker/build-push-action from 2 to 3 by @dependabot in #1048
  • Bump docker/setup-buildx-action from 1 to 2 by @dependabot in #1046
  • Bump docker/login-action from 1 to 2 by @dependabot in #1047
  • Bump actions/setup-python from 3 to 4 by @dependabot in #1049
  • Bump pytest-mock from 3.7.0 to 3.8.2 in /requirements by @dependabot in #1050
  • Bump black from 22.3.0 to 22.6.0 in /requirements by @dependabot in #1054
  • Bump bandit from 1.7.1 to 1.7.4 in /requirements by @dependabot in #1052
  • Bump pypa/gh-action-pypi-publish from 1.5.0 to 1.5.1 by @dependabot in #1057
  • Bump flake8 from 4.0.1 to 5.0.4 in /requirements by @dependabot in #1062
  • Bump pylint from 2.13.4 to 2.14.5 in /requirements by @dependabot in #1056
  • Bump pytest from 7.1.1 to 7.1.2 in /requirements by @dependabot in #1055
  • [fix] Handle rate limiting with Retry-After header by @slarse in #1067
  • Bump black from 22.6.0 to 22.8.0 in /requirements by @dependabot in #1068

New Contributors

Full Changelog: v3.7.1...v3.8.0

RepoBee v3.7.1

17 Oct 08:05
v3.7.1
4132da4
Compare
Choose a tag to compare

RepoBee v3.7.1 release notes

Bugfixes

  • 9b0cd35 Show current default in configwizard (#971)
  • ab44d1b Fix empty StudentTeam name in post_setup hook (#968)
  • 77061f9 Clobber installed_plugins.json on reinstall (#961)

Documentation

Other

  • 6c776ae Improve error message on trying to install incompatible plugin (#964)

RepoBee v3.7.0

31 Aug 19:47
v3.7.0
67e0e33
Compare
Choose a tag to compare

RepoBee v3.7.0 release notes

Features

  • bcdd9d9 Add extended students file syntax based on YAML (#956)
  • 56bf96a Extract parsing of students file into a hook function (#950)
  • 40f3888 Add squash plugin for squashing template repos (#937)
  • 0797b9d Add --directory-layout option to choose layout of cloned repositories (#933)
  • 013d072 Resolve parent path relative to config file path (#926)
  • 59ba47a Add initial support for config inheritance in core application (#919)
  • 96ebeb9 Implement nominal inheritance for config (#909)
  • 67ba637 Add PlatformAPI.for_organization and implementations (#904)
  • de8cd77 Lookup config file up the directory tree (#875)
  • 8b0bcd2 Add initial implementation of RepoBee 4 review commands (#868)

Bugfixes

  • adcdbc1 Fix LocalAPI overwriting connection settings (#951)
  • f651482 Automatically lowercase all usernames (#902)
  • f2346a6 (gitlab) Disable student group branch protection (#898)
  • 182c35f show missing preparser flags in --help (#884)
  • 477a4f6 Print actual config file path in wizard (#883)
  • 7cd354b Print path to actual storage location of config file in config wizard (#864)
  • 672532e Fix crash in GiteaAPI api.get repos() when URL does not exist (#859)
  • cb7765a Fix progress bars in reviews end (#857)
  • 53662dc Raise NotFoundError in GiteaAPI.get_teams() when org does not exist (#854)
  • 09e46f7 Avoid printing empty hook results (#853)
  • d0a4a01 Replace --use-feature=2020-resolver with pip auto-update (#849)

Documentation

  • 6206f53 Fix typo in _APISpec docstring (#952)
  • b97fb9b Add demo video to README (#924)
  • e89b406 Add the repobee_plug.config module to the docs (#911)
  • 2bec9b6 Require Sphinx version 3.1.1 to 3.5.4 (#907)
  • 9439f98 add workflow scope if using GitHub Actions (#901)
  • 21aa63e Fix comment typo in test_config_category (#879)
  • e21db15 Document how to create local config with config wizard (#871)
  • 05c88ae Improve Gitea documentation (#869)
  • 902613d Add quotes to pipenv install to enable working on zsh (#866)
  • 994619b Give the README a much-needed update (#847)

Refactorings

  • e246040 Change to f-string in ext directory (#943)
  • f602ea2 Replace format with f-strings in formatters.py (#947)
  • d833259 Replace format with f-string in plugin.py (#948)
  • dc5d8b1 Replace format with f-string in util.py (#949)
  • 372837a Convert to f-string in issues.py (#945)
  • f3c5498 Convert to f-strings in repobee_plug directory (#942)
  • 77a879f Convert to f-strings in _repobee.cli package (#944)
  • 8a8f93b Refactor main module (#929)
  • 57c3802 Refactor merge_configurable_args module (#928)
  • 9f4b117 Rename parent config key to "parent_config" and store in constant (#927)
  • 65ff4ad Refactor disthelpers.pip (#918)
  • af3cc6b Refactor internals to use plug.Config object (#916)
  • e20616b Rewrite str.format to f-strings in git module (#895)
  • cd2c553 Rewrite str.format to f-strings in exception module (#887)
  • d2caf12 Rewrite str.format to f-strings in config module (#885)

Other

RepoBee v3.6.0

03 Mar 20:05
v3.6.0
e77fe29
Compare
Choose a tag to compare

RepoBee v3.6.0 release notes

There are two big new features in this release that are being trialed in alpha: support for the Gitea platform, as well as double-blind peer review.

In addition, the platform API has been expanded with a delete_repo function, there's support for directory-local repobee.ini configuration files that override the global config file, and there have been a number of improvements to the plugin manager. We also now offer a Docker image that lets you use RepoBee without ever installing it!

Features

Bugfixes

  • 085e758 Avoid assigning token owner as member of GitLab group (#841)
  • 8c91c7b Make deletion of anonymous repos not depend on teams (#830)
  • c7937af Fix GitHubAPI.insert_auth using the wrong URL (#822)
  • 29cbd46 Only create anonymous repo copies for reviewed repos (#817)
  • 85b84cb Actually assign repository to specified team in GiteaAPI.create_repo (#801)

Documentation

  • 907e34c Note that GitHub requires delete_repo scope for double-blind reviews end (#846)
  • eb8d10a Rewrite the overly verbose introduction (#845)
  • 58261fd Document Gitea usage (#844)
  • 3928c07 Document usage with Docker (#837)
  • d3a4629 Move tab completion instructions to docs (#833)
  • a016969 Document double-blind peer review (#821)
  • ac01f73 Document non-interactive management of plugins (#788)
  • e081a48 Add Contributor Covenant code of conduct (#785)
  • 2ff9dab Fix typo on KTH full name in README
  • 71ce821 Update build status badge to GitHub Actions
  • 7400ef9 Add allow-local-templates to migrate documentation (#779)

Refactorings

  • 8e6b517 Simplify raising of errors on non-200 responses in GiteaAPI (#795)
  • 5d9a910 Improve handling of URLs in github and gitlab modules (#783)

Other

  • 91445b3 Remove RepoBee source directory in Docker image (#842)
  • b4a93db Enable tab completion for bash in Docker image (#840)
  • c1d066f Set UID/GID of repobee user in Docker to 1000 (#836)
  • 960c16f Adapt double blind terminology from "salt" to "key" (#814)
  • f03ed12 Ignore MyPy type error (#808)
  • 20bd4d5 Correct GitPython dependency (#805)

RepoBee v3.6.0-alpha.1

11 Feb 18:06
v3.6.0-alpha.1
120d9aa
Compare
Choose a tag to compare
Pre-release

Second alpha release of RepoBee 3.6.0

RepoBee v3.6.0-alpha.0

10 Feb 09:09
v3.6.0-alpha.0
eade7d5
Compare
Choose a tag to compare
Pre-release

First alpha release of RepoBee 3.6.0

RepoBee v3.5.0

16 Dec 17:21
v3.5.0
Compare
Choose a tag to compare

RepoBee v3.5.0 release notes

Features

  • 39dfb65 Make config verify check that --students-file exists (#767)

Breaking changes

  • 481c15b Allow post_setup to process both newly created and existing repos (#773)

Bugfixes

  • 961b200 Fix paging error in fetching GitLab group (#777)

Documentation

Other

RepoBee v3.4.1

19 Nov 21:47
v3.4.1
d163337
Compare
Choose a tag to compare

RepoBee v3.4.1 release notes

This is a hotfix for a single issue related to a bug in the plugin system.

Bugfixes

  • fdd61b9 Merge configurable args for the same section to avoid duplication (#758)