view contrib/openvms/vms/logicals.com @ 51582:d8287e43540f

phases: stop using `repo.set` in `remotephasessummary` The `repository.set` create changectx on the fly, an expensive operation. Using `repo.revs` and a direct rev-num → node-id translation will be significantly faster. This is especially true as we prepare ourself to no longer do the rev-num → node-id transalation there. The speedup is a bit lost in the overall noisyness of the slow phase discovery algorithm, but it save a small amount of time in my benchmark.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Fri, 05 Apr 2024 12:24:47 +0200
parents 44001e6f04de
children
line wrap: on
line source

$!
$! Define mercurial_root logical 
$!   p1: define parameter (/system for example)
$!
$ proc = f$environment("PROCEDURE")
$ proc = f$parse(proc,"sys$disk:[]",,,"NO_CONCEAL")
$ cur_dev = f$parse(proc,,,"DEVICE","SYNTAX_ONLY")
$ cur_dir = f$parse(proc,,,"DIRECTORY","SYNTAX_ONLY")
$ cur_dir = f$extract(1,f$length(cur_dir)-2,cur_dir)
$ cur_dir = cur_dir - "["
$ cur_dir = cur_dir - "]"
$ cur_dir = cur_dir - "<"
$ cur_dir = cur_dir - ">"
$
$! remove trailing .VMS
$ root_dir = f$extract(0,f$length(cur_dir)-4,cur_dir)
$
$ define/nolog 'p1' /trans=concealed mercurial_root 'cur_dev'['root_dir'.]
$
$ exit