with fs.transaction(repository.id) as tx:
sha = tx.rev_parse("main")
tag = tx.tag(sha, "v2 pipapo hello")
does not work because the lakeFS API rejects tag names containing spaces. It says
lakefs.exceptions.BadRequestException: code: 400, reason: Bad Request, body: {'message': 'argument tagID: tag id: invalid value: validation error'}
but with no mention as to what the validation mechanism (probably regex?) actually is. This would benefit from a bit of validation before sending the API request, to give the user a clearer idea of what actually went wrong.
IMO, it doesn't actually matter where that validation is happening, so it might as well be in lakeFS's Python wrapper project.
What happened?
Creating tags as such:
does not work because the lakeFS API rejects tag names containing spaces. It says
but with no mention as to what the validation mechanism (probably regex?) actually is. This would benefit from a bit of validation before sending the API request, to give the user a clearer idea of what actually went wrong.
IMO, it doesn't actually matter where that validation is happening, so it might as well be in lakeFS's Python wrapper project.
What did you expect to happen?
The tag being created just fine.
lakeFS-spec version
HEAD
lakeFS version
latest