Skip to content

Another parser fix#2889

Merged
tgamblin merged 16 commits intodevelopfrom
parser-fix
Jan 26, 2017
Merged

Another parser fix#2889
tgamblin merged 16 commits intodevelopfrom
parser-fix

Conversation

@becker33
Copy link
Copy Markdown
Member

  • Allows hashes to be specified after other parts of the spec
  • Does not allow other parts of the spec to be specified after the hash
  • The hash must either end input or be followed by another separate spec
    - The next spec cannot be an anonymous spec (it must start with a package name or a hash)

See #2769 (after it was merged) for further discussion of this interface addition. That discussion resulted in the specification

python                     # 1 spec
/abc123                    # 1 spec
python /abc123             # 1 spec
/456789                    # 1 spec
python /abc123 /456789     # 2 specs
python /456789 /abc123     # 2 specs
/abc123 /456789            # 2 specs
/456789 /abc123            # 2 specs
/456789 /abc123 python     # 3 specs

assuming abc123 and 456789 are both hashes of different python specs.

@becker33
Copy link
Copy Markdown
Member Author

This also adds substantial unit testing for parsing hashes on the command line.

@tgamblin tgamblin added the specs label Jan 26, 2017
@becker33 becker33 removed the WIP label Jan 26, 2017
@tgamblin tgamblin merged commit 8ae380f into develop Jan 26, 2017
@tgamblin tgamblin deleted the parser-fix branch March 21, 2017 23:34
diaena pushed a commit to diaena/spack that referenced this pull request May 26, 2017
- Allows hashes to be specified after other parts of the spec
- Does not allow other parts of the spec to be specified after the hash
- The hash must either end input or be followed by another separate spec
- The next spec cannot be an anonymous spec (it must start with a package name or a hash)

See spack#2769 (after it was merged) for further discussion of this interface addition. That discussion resulted in these requirements:

```
python                     # 1 spec
/abc123                    # 1 spec
python /abc123             # 1 spec
/456789                    # 1 spec
python /abc123 /456789     # 2 specs
python /456789 /abc123     # 2 specs
/abc123 /456789            # 2 specs
/456789 /abc123            # 2 specs
/456789 /abc123 python     # 3 specs
```

assuming `abc123` and `456789` are both hashes of different python specs.
amklinv pushed a commit that referenced this pull request Jul 17, 2017
- Allows hashes to be specified after other parts of the spec
- Does not allow other parts of the spec to be specified after the hash
- The hash must either end input or be followed by another separate spec
- The next spec cannot be an anonymous spec (it must start with a package name or a hash)

See #2769 (after it was merged) for further discussion of this interface addition. That discussion resulted in these requirements:

```
python                     # 1 spec
/abc123                    # 1 spec
python /abc123             # 1 spec
/456789                    # 1 spec
python /abc123 /456789     # 2 specs
python /456789 /abc123     # 2 specs
/abc123 /456789            # 2 specs
/456789 /abc123            # 2 specs
/456789 /abc123 python     # 3 specs
```

assuming `abc123` and `456789` are both hashes of different python specs.
healther pushed a commit to electronicvisions/spack that referenced this pull request Jul 26, 2017
- Allows hashes to be specified after other parts of the spec
- Does not allow other parts of the spec to be specified after the hash
- The hash must either end input or be followed by another separate spec
- The next spec cannot be an anonymous spec (it must start with a package name or a hash)

See spack#2769 (after it was merged) for further discussion of this interface addition. That discussion resulted in these requirements:

```
python                     # 1 spec
/abc123                    # 1 spec
python /abc123             # 1 spec
/456789                    # 1 spec
python /abc123 /456789     # 2 specs
python /456789 /abc123     # 2 specs
/abc123 /456789            # 2 specs
/456789 /abc123            # 2 specs
/456789 /abc123 python     # 3 specs
```

assuming `abc123` and `456789` are both hashes of different python specs.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants