Bug 1098924

Summary: Copy Translations copies translations that should not be copied
Product: [Retired] Zanata Reporter: David Mason <damason>
Component: Component-LogicAssignee: Alex Eng <aeng>
Status: CLOSED CURRENTRELEASE QA Contact: Zanata-QA Mailling List <zanata-qa>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 3.4CC: aeng, dchen, sflaniga, zanata-bugs
Target Milestone: ---   
Target Release: 3.4   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 3.4.0-SNAPSHOT (git-server-3.3.2-351-gdebfc4e) Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-07-17 06:39:50 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 1088122, 1098003    

Description David Mason 2014-05-19 07:54:57 UTC
Description of problem:
When running Copy Translations for a version with all options set to "Don't Copy", translations are copied from different projects and different document names.

Version-Release number of selected component (if applicable):
Zanata 3.4.0-SNAPSHOT (git-server-3.3.2-349-g63aba73)


Steps to Reproduce:
1. Download a config file for a partially translated podir project into a new folder (delete all but one language that has translations to make the following steps faster)
2. Use zanata-cli to pull source and translations for to the folder (e.g. `zanata-cli pull -s . -t . --pull-type both`)
3. Create a new podir project with versions '1' and '2'
4. Change the project and version id in the local config file to match version '1' of the new project
5. Push to version 1 with --push-type both and --copy-trans false (e.g. `zanata-cli push -s . -t . --push-type both --copy-trans false`)
6. Change the version id in the local config file to match version '2'
7. Change the name of one .pot file to a different name. This must be a file for which there are translations in the language you are using.
8. Push just the source to the version '2' (e.g. `zanata-cli push -s . -t . --push-type source --copy-trans false`)
9. Open the zanata website and navigate to version '2' of the new project
10. In the '...' menu, select 'Copy Translations'
11. Set all options to "Don't Copy" and click "Run Copy Translations". Wait for it to finish.
12. Open the document that had the name changed in a language that has translation.


Actual results:
Translations have been copied as 'translated' from the document with a different name in version '1'

Expected results:
No translations are copied to the document (since no other document in the same project has the same name, so either document mismatch or project mismatch must be true).

Comment 1 Alex Eng 2014-05-20 00:33:56 UTC
Issue fixed in zanata-assets scripts

Commits:
https://github.com/zanata/zanata-assets/commit/ae350f15d9b8434e1b2f4e65a39202bbff2e0cd6

Comment 2 Sean Flanigan 2014-05-20 01:40:19 UTC
(In reply to Alex Eng from comment #1)
> Issue fixed in zanata-assets scripts
> 
> Commits:
> https://github.com/zanata/zanata-assets/commit/
> ae350f15d9b8434e1b2f4e65a39202bbff2e0cd6

We really need to pull potentially breaking javascript logic like that into the main build, so that it can be tested and packaged with the server.

Comment 3 Ding-Yi Chen 2014-05-20 04:02:33 UTC
VERIFIED with Zanata 3.4.0-SNAPSHOT (git-server-3.3.2-351-gdebfc4e)