Skip to content

Project name to path conversion in API mangles dots

Summary

When I create a project whose name contains a "." using the gitlab API, with no path supplied, the path has the "." converted to a "-".

Steps to reproduce

curl -H 'PRIVATE-TOKEN: xxxx' -d'namespace_id=4&name=morx.fleem' http://my-gitlab-server/api/v4/projects

What is the current bug behavior?

This creates a project whose path is morx-fleem

What is the expected correct behavior?

I expect that the path will be morx.fleem.

Looks like the code in Projects::CreateService::set_project_name_from_path calls the "parameterize" method on the name string ( https://gitlab.com/gitlab-org/gitlab-ce/blob/master/app/services/projects/create_service.rb#L155 ). I guess it probably shouldn't do this.