AdAway / AdAway

AdAway is a free and open source ad blocker for Android.
https://adaway.org
GNU General Public License v3.0
7.19k stars 576 forks source link

Update transifex integration #1268

Closed PerfectSlayer closed 5 years ago

PerfectSlayer commented 5 years ago

Hi @Vankog

I just get an update from the Transifex support team about GitHub integration. It looks like they changed the mapping file format. Here is the message I received:

Hi Bruce,

I hope this email finds you well.

This communication is to inform you of an upcoming important change to the configuration file used in the integration between Transifex and GitHub.

Specifically, on Monday, Sept 30, the language mappings syntax in the configuration file will follow the structure 'REMOTE_CODE: LOCAL_CODE' instead of LOCAL_CODE:REMOTE_CODE. After checking your current configuration, I saw that you have your language mapping set based on our new logic. I assume that you might have experienced issues with synchronization in the past but once this change is live, everything is going to work as expected.

Feel free to reach out to me in case you have any questions or need any further clarifications.

I hope you have a great day ahead!

Regards,
Nina

It's kind of surprising they change the format when some projects in production use it but at least, they notice me 😅 I will update the mapping file tomorrow as soon as I find some free time. I just put an issue to let you know about the issue if some strange behaviors happen.

Regards

PerfectSlayer commented 5 years ago

There is 200 entries so I had to use regexp to update the configuration…

Here is a look at the new configuration file:

filters:
  - filter_type: file
    source_file: app/src/main/res/values/strings.xml
    file_format: ANDROID
    source_language: en
    translation_files_expression: 'app/src/main/res/values-<lang>/strings.xml'
  - filter_type: file
    source_file: app/src/main/res/raw/help_faq.html
    file_format: HTML
    source_language: en
    translation_files_expression: 'app/src/main/res/raw-<lang>/help_faq.html'
  - filter_type: file
    source_file: app/src/main/res/raw/help_problems.html
    file_format: HTML
    source_language: en
    translation_files_expression: 'app/src/main/res/raw-<lang>/help_problems.html'
  - filter_type: file
    source_file: app/src/main/res/raw/help_s_on_s_off.html
    file_format: HTML
    source_language: en
    translation_files_expression: 'app/src/main/res/raw-<lang>/help_s_on_s_off.html'
  - filter_type: file
    source_file: metadata/android/en/title.txt
    file_format: TXT
    source_language: en
    translation_files_expression: 'metadata/android/<lang>/title.txt'
  - filter_type: file
    source_file: metadata/android/en/short_description.txt
    file_format: TXT
    source_language: en
    translation_files_expression: 'metadata/android/<lang>/short_description.txt'
  - filter_type: file
    source_file: metadata/android/en/full_description.txt
    file_format: TXT
    source_language: en
    translation_files_expression: 'metadata/android/<lang>/full_description.txt'
settings:
  language_mapping:
    am-rET: am_ET
    ar-rAE: ar_AE
    ar-rBH: ar_BH
    ar-rDZ: ar_DZ
    ar-rEG: ar_EG
    ar-rIQ: ar_IQ
    ar-rJO: ar_JO
    ar-rKW: ar_KW
    ar-rLB: ar_LB
    ar-rLY: ar_LY
    ar-rMA: ar_MA
    ar-rOM: ar_OM
    ar-rQA: ar_QA
    ar-rSA: ar_SA
    ar-rSY: ar_SY
    ar-rTN: ar_TN
    ar-rYE: ar_YE
    arn-rCL: arn_CL
    as-rIN: as_IN
    az-rAZ: az_AZ
    ba-rRU: ba_RU
    be-rBY: be_BY
    bg-rBG: bg_BG
    bn-rBD: bn_BD
    bn-rIN: bn_IN
    bo-rCN: bo_CN
    br-rFR: br_FR
    bs-rBA: bs_BA
    ca-rES: ca_ES
    co-rFR: co_FR
    cs-rCZ: cs_CZ
    cy-rGB: cy_GB
    da-rDK: da_DK
    de-rAT: de_AT
    de-rCH: de_CH
    de-rDE: de_DE
    de-rLI: de_LI
    de-rLU: de_LU
    dsb-rDE: dsb_DE
    dv-rMV: dv_MV
    el-rGR: el_GR
    en-rAU: en_AU
    en-rBZ: en_BZ
    en-rCA: en_CA
    en-rGB: en_GB
    en-rIE: en_IE
    en-rIN: en_IN
    en-rJM: en_JM
    en-rMY: en_MY
    en-rNZ: en_NZ
    en-rPH: en_PH
    en-rSG: en_SG
    en-rTT: en_TT
    en-rUS: en_US
    en-rZA: en_ZA
    en-rZW: en_ZW
    es-rAR: es_AR
    es-rBO: es_BO
    es-rCL: es_CL
    es-rCO: es_CO
    es-rCR: es_CR
    es-rDO: es_DO
    es-rEC: es_EC
    es-rES: es_ES
    es-rGT: es_GT
    es-rHN: es_HN
    es-rMX: es_MX
    es-rNI: es_NI
    es-rPA: es_PA
    es-rPE: es_PE
    es-rPR: es_PR
    es-rPY: es_PY
    es-rSV: es_SV
    es-rUS: es_US
    es-rUY: es_UY
    es-rVE: es_VE
    et-rEE: et_EE
    eu-rES: eu_ES
    fa-rIR: fa_IR
    fi-rFI: fi_FI
    fil-rPH: fil_PH
    fo-rFO: fo_FO
    fr-rBE: fr_BE
    fr-rCA: fr_CA
    fr-rCH: fr_CH
    fr-rFR: fr_FR
    fr-rLU: fr_LU
    fr-rMC: fr_MC
    fy-rNL: fy_NL
    ga-rIE: ga_IE
    gd-rGB: gd_GB
    gl-rES: gl_ES
    gsw-rFR: gsw_FR
    gu-rIN: gu_IN
    ha-rNG: ha_NG
    hi-rIN: hi_IN
    hr-rBA: hr_BA
    hr-rHR: hr_HR
    hsb-rDE: hsb_DE
    hu-rHU: hu_HU
    hy-rAM: hy_AM
    ig-rNG: ig_NG
    ii-rCN: ii_CN
    in-rID: id_ID
    in: id
    is-rIS: is_IS
    it-rCH: it_CH
    it-rIT: it_IT
    iu-rCA: iu_CA
    iw-rIL: he_IL
    iw: he
    ja-rJP: ja_JP
    ji: yi
    ka-rGE: ka_GE
    kk-rKZ: kk_KZ
    kl-rGL: kl_GL
    km-rKH: km_KH
    kn-rIN: kn_IN
    ko-rKR: ko_KR
    kok-rIN: kok_IN
    ky-rKG: ky_KG
    lb-rLU: lb_LU
    lo-rLA: lo_LA
    lt-rLT: lt_LT
    lv-rLV: lv_LV
    mi-rNZ: mi_NZ
    mk-rMK: mk_MK
    ml-rIN: ml_IN
    mn-rCN: mn_CN
    mn-rMN: mn_MN
    moh-rCA: moh_CA
    mr-rIN: mr_IN
    ms-rBN: ms_BN
    ms-rMY: ms_MY
    mt-rMT: mt_MT
    nb-rNO: nb_NO
    ne-rNP: ne_NP
    nl-rBE: nl_BE
    nl-rNL: nl_NL
    nn-rNO: nn_NO
    no-rNO: no_NO
    nso-rZA: nso_ZA
    oc-rFR: oc_FR
    or-rIN: or_IN
    pa-rIN: pa_IN
    pl-rPL: pl_PL
    prs-rAF: prs_AF
    ps-rAF: ps_AF
    pt-rBR: pt_BR
    pt-rPT: pt_PT
    qut-rGT: qut_GT
    quz-rBO: quz_BO
    quz-rEC: quz_EC
    quz-rPE: quz_PE
    rm-rCH: rm_CH
    ro-rRO: ro_RO
    ru-rRU: ru_RU
    rw-rRW: rw_RW
    sa-rIN: sa_IN
    sah-rRU: sah_RU
    se-rFI: se_FI
    se-rNO: se_NO
    se-rSE: se_SE
    si-rLK: si_LK
    sk-rSK: sk_SK
    sl-rSI: sl_SI
    sma-rNO: sma_NO
    sma-rSE: sma_SE
    smj-rNO: smj_NO
    smj-rSE: smj_SE
    smn-rFI: smn_FI
    sms-rFI: sms_FI
    sq-rAL: sq_AL
    sr-rBA: sr_BA
    sr-rCS: sr_CS
    sr-rME: sr_ME
    sr-rRS: sr_RS
    sv-rFI: sv_FI
    sv-rSE: sv_SE
    sw-rKE: sw_KE
    syr-rSY: syr_SY
    ta-rIN: ta_IN
    te-rIN: te_IN
    tg-rTJ: tg_TJ
    th-rTH: th_TH
    tk-rTM: tk_TM
    tn-rZA: tn_ZA
    tr-rTR: tr_TR
    tt-rRU: tt_RU
    tzm-rDZ: tzm_DZ
    ug-rCN: ug_CN
    uk-rUA: uk_UA
    ur-rPK: ur_PK
    uz-rUZ: uz_UZ
    vi-rVN: vi_VN
    wo-rSN: wo_SN
    xh-rZA: xh_ZA
    yo-rNG: yo_NG
    zh-rCN: zh_CN
    zh-rHK: zh_HK
    zh-rMO: zh_MO
    zh-rSG: zh_SG
    zh-rTW: zh_TW
    zu-rZA: zu_ZA

Tell me if you encounter some issue.

Vankog commented 5 years ago

Well, except for the 180-or-so pull requests without content... 😳 I went through them all now ^^

Thanks for the heads up, though! :-)

PerfectSlayer commented 5 years ago

Oh no... :sob: I will report this behavior to the support team. I hope they could do something about it for other projects.

Thanks for taking care of all of them!

Vankog commented 5 years ago

Hm... it seems either the new config or the new implementation by Transifex is not yet active, is it?

1449 should be "raw-es-rMX"

PerfectSlayer commented 5 years ago

Guess what… Our configuration was right from the start. So my last update broke it. I just revert it back.

About all the empty pull request, "it's a known issue":

As far as the new PRs that were created, this is a known issue we need to properly handle in order to prevent them from being created when no differences are detected between the tx translation files and the files hosted at GitHub.

Sorry for the trouble 😢