-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Is it OK to have a missing version directory? #540
Comments
I brought this issue up previously (#535) and at the time was told that you must always have a version and if you aren't storing an inventory for every version you're doing it wrong. |
Getting back to the core OCFL principles, I would argue that the first paragraph of "3.3 Version Directories" defines an important characteristic of OCFL. However, given the loophole raised in #535, I would suggest we add wording to the middle of the first paragraph of "3.7 Version Inventory and Inventory Digest" along the lines of:
|
I feel uncomfortable with the idea that we might require an |
Suggested chage to 3.3 Version Directories. Paragraph 1 should read (changes are highlighted):
and then the last paragraph should read (changes are highlighted):
I don't think the suggested changes indicate that you can't have an empty version directory which is of course the whole point of this ticket. |
We need additional language that lets readers know Suggestion on language to use welcome. |
Per slack discussion with @neilsjefferies, I think don't see any benefit of making the Questions:
Assuming my two answers to the above. I think we could write something like the following although it ends up as a bit of a mouthful:
|
That language does not enforce point 2 |
Is there any harm in making a |
We also discussed whether or not 'no_content' should have content and felt that for validation it didn't matter we would just check for presence. Therefore we would remain silent on whether or not there is content in the |
@pwinckles re. #540 (comment) - yes indeed, good point @neilsjefferies re. #540 (comment) - if we make it mandatory then we don't have backward compatibility with 1.0... but now I think about it, requiring @rosy1280 re. #540 (comment) - no particular reason why Taking the above into account, a revised proposal might be:
|
@zimeon 👍🏼 to it may be a breaking change. I've been wondering that as we drafted this. Should have said something sooner. |
Given the fact that we do not want to introduce any breaking changes in a 1.1 release, would a softening of my earlier suggestion to a
|
I am now leaning towards @awoods suggestion as the minimal change to the spec required to resolve the issue. It is a little untidy only if you are taking the NOT RECOMMENDED route of not having version inventories. |
I do not think we should make the earlier suggestion but with I think we should punt this to v2.0 with the understanding that in v1.0 (and v1.1) it is possible (though not recommended) to not have a version directory in the case of no files updated and no version inventories stored. I don't see a non-breaking correction/fix without other implications. |
I agree that my updated suggestion does not solve the problem. It does, however, provide clear guidance on how to address the empty version directory scenario. If that guidance is less helpful than not, I am happy to leave the text as-is, and punt to 2.0. |
Is it spelled out somewhere what the compatibility between 1.0 and 1.1 is supposed to be? Is 1.1 supposed to just be 1.0, but with a few validations made explicit? It's true that the If an object is created 1.0 and is later "upgraded" to 1.1, should the 1.0 versions be validated against the 1.0 spec or the 1.1 spec? For my validators, I had originally planned on simply updating everything to validate to 1.1, because the majority of the changes were providing clarity to constraints that could already be inferred from the 1.0 spec. If 1.1 were to include the All of that to say, I think you could put the |
@pwinckles : per your comment about validating versions: The spec is clear that versions should be validated against the version they were written to conform to, but this isn't actually clear without a version inventory... I have created #569 to discuss |
Requiring a namaste file in all versions would solve the empty directory problem. :D |
+1 Punt this one to 2.0 |
...is there any mileage in putting something about this in the Implementation Notes? |
Agreement in community call to delay until 2.0 (@rosy1280 @awoods @julianmorley @zimeon present). Removing 1.1 tag |
Fixture OCFL/fixtures#79 /
E010_missing_versions
brings up an interesting question for me. Is it really necessary to have a version directory for every version? There will be a version directory if there is an inventory for every version but this is not required. But an implementation isn't storing an inventory for every version and a version doesn't add any new content files, is an empty version directory required?The text was updated successfully, but these errors were encountered: