Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translation Decisions, documentation and TODOs #1169

Open
6 of 20 tasks
goneall opened this issue Dec 18, 2024 · 8 comments
Open
6 of 20 tasks

Translation Decisions, documentation and TODOs #1169

goneall opened this issue Dec 18, 2024 · 8 comments
Labels
doc improvement Area where the project documentation needs improvement

Comments

@goneall
Copy link
Member

goneall commented Dec 18, 2024

On the 17 Dec 2024 tech call, an issue was raised that we should document translations in the "repository".

I've searched through all open and closed issues and pull requests for "translation" as well as the minutes repo for Asia and tech.

This issue summarizes outstanding decisions, undocumented decisions, documented decisions and process, and outstanding actions to support translating the spec.

Below are some detailed decisions that still seem unresolved:

  • Agree on whether version tags in the spec and model repos should be considered immutable. See issue discussed in Publication source branches/tags and target URLs mapping/aliases #1155 On one of the tech call, the consensus of the attendees was immutable, but we didn't have Alexios on the call.
  • Agree on the name of the tags that would be used once the translation for a particular language has been merged into the support branch. Proposals are to append the language code (e.g. 3.0.1-ja-ru-es), or just increment a suffix to the patch version (e.g. 3.0.1-l1, 3.0.1-l2, 3.0.1-l3). See discussion in Publication source branches/tags and target URLs mapping/aliases #1155
  • Decide if we want to include translated summaries in the ontology - Decided yes on 7 Jan 2025 tech call

Below are decisions we've made that can be documented:

Below are additional translation actions that need to be completed:

  • Complete and merge PR Update CI to publish from spdx-spec "develop" and spdx-3-model "develop" branches #1164 to update the CI for the new branch structure
  • In the model repo - spec parser needs to be updated to generate the language files
    • Generate markdown files for the languages
    • Generate summaries in the ontology as RDF comments in the different languages
  • Update MKDocs and directory structure to separate the docs into separate language directories
  • Update CI and MKDocs to publish MKDocs with the language dropdown
  • Document that "en" is the normative language

Below are items I believe are already documented:

@goneall goneall added this to the release-independent milestone Dec 18, 2024
@goneall goneall added the doc improvement Area where the project documentation needs improvement label Dec 18, 2024
@goneall
Copy link
Member Author

goneall commented Dec 18, 2024

@kestewart @zvr @bact - let me know if you recall anything else we should capture here.

@bact
Copy link
Collaborator

bact commented Dec 18, 2024

@goneall thank you for the very detailed research! If there's anything that comes to my mind, I will post here.

@goneall
Copy link
Member Author

goneall commented Dec 18, 2024

from talking to @licquia we may be able to merge in PR #1141 without changing MKDocs or other changes then do the internationalization configuration after the merge - this way would have something to test with.

@bact
Copy link
Collaborator

bact commented Dec 18, 2024

Would be nice to have something to test with.

@zvr
Copy link
Member

zvr commented Dec 18, 2024

A number of comments on various bullet points. I'll number them so that any replies can refer to an index ;-)

  1. Hard disagree on using multiple language codes on tags. This way madness lies. How would anyone know where to get a translation? We should have something with a single language code (e.g. 3.0.1-de). When you get this tag, other languages may also be present (English will definitely be there, but you may also get Japanese). It doesn't matter; you got the official de translation.

  2. I understand the reluctance of moving tags -- I am not a big fan myself. But how else would someone (automatically) get the "latest and greatest" version with whichever completed translations included? For example, the automation that publishes the website. Do we expect to manually keep updating the CI every time we add a new translation?

  3. Do we agree that translations will never be moved to develop/main branches? It might be implied from our branching/tagging strategy, but we'd better write it down explicitly.

  4. Minor point about translations, not documented anywhere: there will be a piece of data (e.g., lines in a file) that lists all languages included in the repo.

  5. I understand that this is the spec repo, but do we want to include info on handling of translations in the model repo here? What about the using repo?

@goneall
Copy link
Member Author

goneall commented Dec 18, 2024

In response to @zvr comment above:

1. - language codes

@zvr are you OK tagging 3.0.1-L1, 3.0.1-L2, ...? This would solve the length issue of the tags.

2. - moving tags and publishing

We can get the latest tag in a give branch as described in this StackOverflow article. We would get the latest tag for each release branch and use that for the publication.

3. - translations moving to develop/main branch

I was making a different assumption - so definitely needs to be documented ;) In thinking about it, we probably should do as suggested and not merge the translations to main or develop. The process of updating the translations would be something like:

  1. A new version of the spec is released in English only
  2. Compare the new version main branch (or the new release support branch) with the previous release support branch to identify which files have been added or changed
  3. For each translation, create a pull request against the support branch for the new version copying unchanged text and translating any new or modified text.

@zvr
Copy link
Member

zvr commented Dec 19, 2024

  1. If by L1 and L2 you refer to actual language codes, I'm fine with that. So, the series of tags in support/3.0 will be 3.0.1, 3.0.1-cn, 3.0.1-ja, 3.0.1-de if we merge Chinese, Japanese and German in order. Every one of these will include all the previous languages (and English).

@kestewart
Copy link
Contributor

Makes sense to me, let's try it and adjust if it we've overlooked something.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc improvement Area where the project documentation needs improvement
Projects
None yet
Development

No branches or pull requests

4 participants