Skip to main content

Release 0.1.139

Repave now learns from the changes your developers make to delivered features, connects to GitLab, creates projects on a page of their own, and can run your whole test suite every day with an agent fixing what fails.

Upgrade notes​

  • Database migrations run automatically during the upgrade. They add Repave learning, GitLab connections, daily tests, the test-run options and the Repave IDE daily stop's time zone. No existing data is changed, except for the daily stop below.
  • The Repave IDE daily stop is turned off in every project, including projects that had chosen it. The stop time each project set is kept, so turning Stop all Repave IDE sessions daily back on in Project Settings restores it.
  • TFS_ALLOWED_HOSTS has a new name, GIT_ALLOWED_HOSTS, because it now also bounds self-managed GitLab. Nothing needs editing: the old name is still read when the new one is not set, and the hosts it lists may now be reached by a GitLab connection as well as a Team Foundation Server one. Rename it in .env when convenient.
  • docker-compose.yml: nothing to edit.

New​

Repave learning. Once a day Repave finds the changes your developers made to a delivered feature before merging it, and sorts each one: a Repave defect becomes a validation rule, kept only if it catches the mistake; a Client preference becomes a lesson for the project; a One-off is recorded only. The kinds and their subtypes are yours to edit on the Learning categories card of the Context tab. Turn on Apply what Repave learns and each lesson is written into the project's skills, shown on the Skills page as a change by Repave learning that you can undo in one click. It is off in every project until you turn it on.

GitLab. Connect gitlab.com or a self-managed GitLab with a personal access token that has the api scope, and create projects from its repositories, including those in subgroups. In pull-request mode, features open merge requests on GitLab. A self-managed GitLab can use a private certificate authority, as Team Foundation Server can.

A page for creating a project. New project on the dashboard opens a page that asks for the legacy code first, then where the modernized code comes from. To combine several repositories, pick one connection and tick the repositories; Repave creates the empty workspace repository for you, or you can use an existing empty one.

Daily tests. Turn on Run the full test suite daily on the Implementation tab of Project Settings and the project's whole BDD suite runs every day at the time you set. When scenarios fail, an agent fixes the code and the fix is merged, or opened as a pull request for your review. If the agent thinks a scenario is out of date, it asks you instead. The Daily tests page in the sidebar lists every run and has Run now. Off by default.

Choose which test runs happen when work lands. Three options under Test runs in Project Settings skip the full test suite before a pull request opens or a merge goes in, skip the run after work lands, or let an agent resolve a merge conflict without running the whole suite. A pull request opened without a test run always says so. All three are off by default.

Design one feature in Figma in a Storybook project. When Figma is connected, the Preview tab of a feature that has not started implementation offers Create Figma prototype. Use Storybook instead switches it back without deleting anything.

Pick the time zone of the Repave IDE daily stop per project, instead of always the server's. Daylight saving is followed.

Improvements​

The feature list shows features, not actions. The ⋯ menu at the end of each row is gone; open the feature to generate Gherkin, implement, merge or open a pull request. A feature with work running now shows a spinner on its status badge, and hovering the badge says what is running — including pull request runs, which the list never showed before.

Reloading a Repave IDE tab after its session stopped takes you back into the workspace, instead of an error page.

Fixes​

Security fixes in project creation and impact analysis. A git connection's token is now only ever sent to that connection's own server, a project created from a folder on the server can no longer run commands through its branch name or path, a request to create a project can no longer return another project's settings, and impact analysis checks that you can open the project.

A Repave IDE session's cloud model key was readable by every user in the container. It is now readable only by its owner.

Creating a project whose upload failed, then pressing Create again, made a second project. It now retries the upload into the same project. GitHub repositories beyond the first 30 are now listed.

The skills-changed notice never appeared in Repave IDE sessions on older container images.

An agent log for a run that went straight to UAT said "0/0 scenarios passing". It no longer reports a behavior-test result for a run that did not run behavior tests.

A run's Record tab called its starting tree missing even though it had been recorded.

Testing first and committing afterwards was sometimes refused when a file had been saved in the same second as the last commit.

The BDD Runs view in Repave IDE could keep showing a run's old status after it was rerun.