{"action":"created","issue":{"url":"https://api.github.com/repos/pyblish/pyblish-magenta/issues/25","labels_url":"https://api.github.com/repos/pyblish/pyblish-magenta/issues/25/labels{/name}","comments_url":"https://api.github.com/repos/pyblish/pyblish-magenta/issues/25/comments","events_url":"https://api.github.com/repos/pyblish/pyblish-magenta/issues/25/events","html_url":"https://github.com/pyblish/pyblish-magenta/issues/25","id":95926520,"number":25,"title":"Integrator file naming","user":{"login":"BigRoy","id":2439881,"avatar_url":"https://avatars.githubusercontent.com/u/2439881?v=3","gravatar_id":"","url":"https://api.github.com/users/BigRoy","html_url":"https://github.com/BigRoy","followers_url":"https://api.github.com/users/BigRoy/followers","following_url":"https://api.github.com/users/BigRoy/following{/other_user}","gists_url":"https://api.github.com/users/BigRoy/gists{/gist_id}","starred_url":"https://api.github.com/users/BigRoy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BigRoy/subscriptions","organizations_url":"https://api.github.com/users/BigRoy/orgs","repos_url":"https://api.github.com/users/BigRoy/repos","events_url":"https://api.github.com/users/BigRoy/events{/privacy}","received_events_url":"https://api.github.com/users/BigRoy/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-07-19T15:56:48Z","updated_at":"2015-07-19T18:40:46Z","closed_at":null,"body":"The [current Integrator](https://github.com/pyblish/pyblish-magenta/blob/master/pyblish_magenta/plugins/integrate_asset.py) is naming the integrated files based on the families of the extractor.\r\n\r\nFor example the output model, a *mayaAscii* file, gets saved to `<asset>/publish/v001/model.ma`.\r\n\r\nBy using this naming convention we introduce a couple of downsides:\r\n\r\n1. We can't have multiple extractors with a same family and extension to be integrated correctly at the same time. For example having two review cameras in the scene will extract both (with same extractor)  but integrate only one (since it will overwrite the first with the last integrated since they have the same name). The same would also happen with two extractors extracting a single instance with a same extension.\r\n\r\n2. The files will be called `model.ma`, `review.mov`, `review.gif`, etc. Most applications will use solely the filename to display what *file* it is. For example when referencing the file in Maya the reference editor will solely display **model**. The same would be for video players solely showing *review*. It would be much clearer if they would also display the asset's name. Therefore it might make more sense to prepend filenames with the asset's name, like for character *ben*: `ben_model.ma`, `ben_rig.ma` and `ben_review.mov`.\r\n\r\nThe reference editor in an animation scene would then be able to show:\r\n```\r\n- ben_rig.ma\r\n- window_model.mb\r\n- gun_model.mb\r\n- gun2_rig.mb\r\n```\r\n\r\nA custom UI could also solve this (and it should in the long run for managing references!), but since most applications show at least the file name I think it's great to have this information available to you even if you step into a custom viewer (eg. Quicktime, a browser, Maya or another tool not using a custom scripted interface for the pipeline).\r\n\r\nI'm raising this issue to see if we can get to a better naming convention for our published files, or whether there are enough pros to stick with the current one.\r\n\r\nWhat do you think?"},"comment":{"url":"https://api.github.com/repos/pyblish/pyblish-magenta/issues/comments/122694375","html_url":"https://github.com/pyblish/pyblish-magenta/issues/25#issuecomment-122694375","issue_url":"https://api.github.com/repos/pyblish/pyblish-magenta/issues/25","id":122694375,"user":{"login":"mottosso","id":2152766,"avatar_url":"https://avatars.githubusercontent.com/u/2152766?v=3","gravatar_id":"","url":"https://api.github.com/users/mottosso","html_url":"https://github.com/mottosso","followers_url":"https://api.github.com/users/mottosso/followers","following_url":"https://api.github.com/users/mottosso/following{/other_user}","gists_url":"https://api.github.com/users/mottosso/gists{/gist_id}","starred_url":"https://api.github.com/users/mottosso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mottosso/subscriptions","organizations_url":"https://api.github.com/users/mottosso/orgs","repos_url":"https://api.github.com/users/mottosso/repos","events_url":"https://api.github.com/users/mottosso/events{/privacy}","received_events_url":"https://api.github.com/users/mottosso/received_events","type":"User","site_admin":false},"created_at":"2015-07-19T18:40:46Z","updated_at":"2015-07-19T18:40:46Z","body":"Where did \"variation\" come from? I think it sounds too complex. `model`, `rig`, `lookdev` etc. is already subdividing an asset, why not just keep on using those?\r\n\r\n- rigLow\r\n- rigHigh\r\n- modelHigh\r\n- modelLow\r\n- modelPink\r\n"}}