VGIT seems to be unable to create directories with dir in the name

Talk about commercial or opensource products that already exist for OpenVMS or may be available in the future.
Post Reply

Topic author
pocketprobe
Active Contributor
Posts: 37
Joined: Sat Apr 15, 2023 11:53 pm
Reputation: 0
Status: Offline

VGIT seems to be unable to create directories with dir in the name

Post by pocketprobe » Tue Oct 03, 2023 10:04 am

Using VGIT on x86, attempting to clone a repository with a directory with ".dir" in the filename causes a file not found error when the files are being created from the git objects. As per the release notes, and installation procedure all work is being done on an ODS-5 volume.
I've "SET PROC/PARSE=EXTENDED" with no change.
A repository that triggers this issue that could be checked out is busybox ( https://git.busybox.net/busybox/ ) and the directory that causes the failure is visible on this page (hdc.dir). https://git.busybox.net/busybox/tree/qe ... ch_testing

The result of the attempted clone looks like this.

Code: Select all

Bad news:
 could not open 'busybox/qemu_multiarch_testing/hdc.dir/build' for writing: no such file or directory [2]

User avatar

imiller
Master
Posts: 122
Joined: Fri Jun 28, 2019 8:45 am
Reputation: 0
Location: South Tyneside, UK
Status: Offline
Contact:

Re: VGIT seems to be unable to create directories with dir in the name

Post by imiller » Wed Oct 04, 2023 4:52 am

not surprising this causes a problem as filenames ending .DIR are reserved for directories.
presumably this directory would be called hdc.dir.dir so this could be a bug is the extended file parsing where it is not just checking for .dir at the end of the filename,

I checked and on an ODS5 disk with extended parsing enabled then a directory DIR can't be created.
Ian Miller
[ personal opinion only. usual disclaimers apply. Do not taunt happy fun ball ].


joukj
Master
Posts: 149
Joined: Thu Aug 27, 2020 5:50 am
Reputation: 0
Status: Offline

Re: VGIT seems to be unable to create directories with dir in the name

Post by joukj » Wed Oct 04, 2023 5:34 am

some questions:
what is the contents after failure of [.busybox.qemu_multiarch_testing]
in particular does it contain the file hdc^.dir.DIR

if the file is not present can you create it before extracting from the repository?

Jouk


hb
Valued Contributor
Posts: 57
Joined: Mon May 01, 2023 12:11 pm
Reputation: 0
Status: Offline

Re: VGIT seems to be unable to create directories with dir in the name

Post by hb » Wed Oct 04, 2023 5:43 am

imiller wrote:
Wed Oct 04, 2023 4:52 am
not surprising this causes a problem as filenames ending .DIR are reserved for directories.
presumably this directory would be called hdc.dir.dir so this could be a bug is the extended file parsing where it is not just checking for .dir at the end of the filename,

I checked and on an ODS5 disk with extended parsing enabled then a directory DIR can't be created.
Yes, the "File type" .DIR is reserved for directories. The "Filename" can have an ending of ".dir" or ".DIR". In DCL the "." needs to be escaped with "^". On an ODS5 disk:

Code: Select all

$ set proc/parse=ext
$ cre/dir [.x.a^.dir]
$ cre/dir [.x.b^.DIR]
$ dir [.x]

Directory WORK20:[USER.x]

a^.dir.DIR;1        b^.DIR.DIR;1        

Total of 2 files.
$ 
That VGIT can't create such a directory looks like a bug in VGIT.

User avatar

imiller
Master
Posts: 122
Joined: Fri Jun 28, 2019 8:45 am
Reputation: 0
Location: South Tyneside, UK
Status: Offline
Contact:

Re: VGIT seems to be unable to create directories with dir in the name

Post by imiller » Wed Oct 04, 2023 6:08 am

directory dir can't be created either

$ cre/dir dir
%CREATE-E-DIRNOTCRE, DIR directory file not created
-LIB-F-INVFILSPE, invalid file specification
Ian Miller
[ personal opinion only. usual disclaimers apply. Do not taunt happy fun ball ].

User avatar

volkerhalle
Master
Posts: 195
Joined: Fri Aug 14, 2020 11:31 am
Reputation: 0
Status: Offline

Re: VGIT seems to be unable to create directories with dir in the name

Post by volkerhalle » Wed Oct 04, 2023 6:31 am

imiller wrote:
Wed Oct 04, 2023 6:08 am
$ cre/dir dir
%CREATE-E-DIRNOTCRE, DIR directory file not created
-LIB-F-INVFILSPE, invalid file specification
Ian,

AXPVMS $ cre/dir x
%CREATE-E-DIRNOTCRE, x directory file not created
-LIB-F-INVFILSPE, invalid file specification
AXPVMS $ cre/dir [x]
AXPVMS $ cre/dir [^.dir]/log
%CREATE-I-CREATED, SYS$SYSDEVICE:[^.dir] created

Volker.

User avatar

imiller
Master
Posts: 122
Joined: Fri Jun 28, 2019 8:45 am
Reputation: 0
Location: South Tyneside, UK
Status: Offline
Contact:

Re: VGIT seems to be unable to create directories with dir in the name

Post by imiller » Wed Oct 04, 2023 6:35 am

thanks Volker, I'm clearly not awake today.
Ian Miller
[ personal opinion only. usual disclaimers apply. Do not taunt happy fun ball ].


sms
Master
Posts: 288
Joined: Fri Aug 21, 2020 5:18 pm
Reputation: 0
Status: Offline

Re: VGIT seems to be unable to create directories with dir in the name

Post by sms » Wed Oct 04, 2023 8:16 am

Code: Select all

>  I checked and on an ODS5 disk with extended parsing enabled then a
> directory DIR can't be created.

   As they said in elementary school, "Show your work."  None of that is
a useful problem description.  "checked"?  "can't"?  As usual, showing
actual actions (commands) with their actual results (behavior, error
messages, ...) can be more helpful than vague descriptions or
interpretations.


> Yes, the "File type" .DIR is reserved for directories. [...]

   Says who?  "used for" and "reserved for" are spelled differently for
a reason.

its $ pipe show proc /parse > FRED.DIR
its $ type FRED.DIR

 4-OCT-2023 07:01:52.64   User: SMS              Process ID:   2021ED12
                          Node: ITS              Process name: "_FTA777:"
 
Parse Style: Extended


   For a good time, compare a DIRE /FULL report for an actual directory
file with one for any old file named "*.DIR;1".  Hint: Look for
"Directory file".


> That VGIT can't create such a directory looks like a bug in VGIT.

   Or, perhaps, in the CRTL?  As usual, many things are possible.


Topic author
pocketprobe
Active Contributor
Posts: 37
Joined: Sat Apr 15, 2023 11:53 pm
Reputation: 0
Status: Offline

Re: VGIT seems to be unable to create directories with dir in the name

Post by pocketprobe » Wed Oct 04, 2023 11:00 am

joukj wrote:
Wed Oct 04, 2023 5:34 am
some questions:
what is the contents after failure of [.busybox.qemu_multiarch_testing]
in particular does it contain the file hdc^.dir.DIR

if the file is not present can you create it before extracting from the repository?

Jouk
The directory is empty as this is where the file creation process stops.

Pre-creating the tree results in vgit claiming the [busybox] directory isn't empty, which imho is good to have clobber protection.


Topic author
pocketprobe
Active Contributor
Posts: 37
Joined: Sat Apr 15, 2023 11:53 pm
Reputation: 0
Status: Offline

Re: VGIT seems to be unable to create directories with dir in the name

Post by pocketprobe » Sun Jan 28, 2024 7:38 pm

This issue still persists after applying X86VMS-VGIT-V0104-1B-1.
I'd like to make a correction, of it being unable to create a directory ending in '.dir'

Post Reply