Use fluent for about:about

RESOLVED FIXED in Firefox 64

Status

()

enhancement
P3
normal
RESOLVED FIXED
9 months ago
7 months ago

People

(Reporter: Gijs, Assigned: songqing, Mentored)

Tracking

(Blocks 1 bug)

Trunk
mozilla64
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox63 wontfix, firefox64 fixed)

Details

Attachments

(1 attachment, 1 obsolete attachment)

Reporter

Description

9 months ago
This bug covers converting about:about ( https://searchfox.org/mozilla-central/source/toolkit/content/aboutAbout.xhtml ) to using Fluent for localization.
Reporter

Updated

9 months ago
Component: General → General
Product: Firefox → Toolkit
Assignee: nobody → songqing
Status: NEW → ASSIGNED
Assignee

Comment 1

9 months ago

Comment 3

9 months ago
Taking this here, because it's of more general interest.

The following is legal in DTD:
<!ENTITY about-about-note "
This is a list of “about” pages for your convenience.<br/>
Some of them might be confusing. Some are for diagnostic purposes only.<br/>
And some are omitted because they require query strings.
">

We might need to invest a bit in the migration to make that safe, and to produce the intended results when we talk about localizer white-space.

Talking white-space, should we do a white-space: pre-line instead of <br/> ?
(In reply to Axel Hecht [:Pike] from comment #3)
> Taking this here, because it's of more general interest.
> 
> The following is legal in DTD:
> <!ENTITY about-about-note "
> This is a list of “about” pages for your convenience.<br/>
> Some of them might be confusing. Some are for diagnostic purposes only.<br/>
> And some are omitted because they require query strings.
> ">
> 
> We might need to invest a bit in the migration to make that safe, and to
> produce the intended results when we talk about localizer white-space.

Not sure if you saw the original string, but it's even worse than your example
https://searchfox.org/mozilla-central/rev/37663bb87004167184de6f2afa6b05875eb0528e/toolkit/locales/en-US/chrome/global/aboutAbout.dtd#6

It gets migrated to something like this in Fluent

about-about-note =
    This is a list of “about” pages for your convenience.<br/>
                                Some of them might be confusing. Some are for diagnostic purposes only.<br/>
                                And some are omitted because they require query strings.

I don't know if we should try to fix situations like these in migration. To fix it we would need to make assumptions, strip multiple white spaces and replace <br/> (with the risk of missing some, if they used "<br />" for some reason), unless I'm missing something obvious.

For sure, we're going to find a lot of these strings in the future (e.g. neterror pages), so it would be good to agree on the strategy.
Pontoon, for reference: https://pontoon.mozilla.org/fr/firefox/toolkit/chrome/global/aboutAbout.dtd/?search=aboutAbout.note&string=81565

I think there is some risk associated to using white-space: pre-line, mostly because localizers are used to new lines not being relevant.

Transvision is only helpful if you look at the API, on the front-end we do a lot of collapsing…
https://transvision.mozfr.org/api/v1/entity/gecko_strings/?id=toolkit/chrome/global/aboutAbout.dtd:aboutAbout.note
Attachment #9007354 - Attachment description: Bug 1486934 - Modify about:about to use fluent for localization → Bug 1486934 - Modify about:about to use fluent for localization, part {index}.
Reporter

Comment 6

8 months ago
Comment on attachment 9007354 [details]
Bug 1486934 - Modify about:about to use fluent for localization

:Gijs (he/him) has approved the revision.
Attachment #9007354 - Flags: review+
Attachment #9007354 - Attachment description: Bug 1486934 - Modify about:about to use fluent for localization, part {index}. → Bug 1486934 - Modify about:about to use fluent for localization
Comment on attachment 9007354 [details]
Bug 1486934 - Modify about:about to use fluent for localization

Jared Wein [:jaws] (please needinfo? me) has approved the revision.
Attachment #9007354 - Flags: review+
Attachment #9007089 - Attachment is obsolete: true
Comment on attachment 9007354 [details]
Bug 1486934 - Modify about:about to use fluent for localization

Francesco Lodolo [:flod] has approved the revision.
Attachment #9007354 - Flags: review+

Comment 9

8 months ago
Pushed by gijskruitbosch@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/494efc7d8c29
Modify about:about to use fluent for localization r=Gijs,flod,jaws
Backed out changeset 494efc7d8c29 (bug 1486934) for build bustage at chrome/global/aboutAbout.dtd

Backout: https://hg.mozilla.org/integration/autoland/rev/81200ae33c9a1d91760535cce9120b619ae3946e

Failure push: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=494efc7d8c29163ac544a584055329ce2d32d0b5

Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=200486625&repo=autoland&lineNumber=1645

task 2018-09-20T15:43:00.406Z] 15:43:00     INFO -  js/src> checking for tm_zone tm_gmtoff in struct tm... yes
[task 2018-09-20T15:43:00.522Z] 15:43:00     INFO -  js/src> checking what kind of list files are supported by the linker... linkerscript
[task 2018-09-20T15:43:00.525Z] 15:43:00     INFO -  js/src> checking for posix_fadvise... (cached) no
[task 2018-09-20T15:43:00.526Z] 15:43:00     INFO -  js/src> checking for posix_fallocate... (cached) no
[task 2018-09-20T15:43:00.529Z] 15:43:00     INFO -  js/src> checking for malloc.h... (cached) yes
[task 2018-09-20T15:43:00.529Z] 15:43:00     INFO -  js/src> checking for strndup... (cached) yes
[task 2018-09-20T15:43:00.533Z] 15:43:00     INFO -  js/src> checking for posix_memalign... (cached) no
[task 2018-09-20T15:43:00.533Z] 15:43:00     INFO -  js/src> checking for memalign... (cached) yes
[task 2018-09-20T15:43:00.534Z] 15:43:00     INFO -  js/src> checking for malloc_usable_size... (cached) no
[task 2018-09-20T15:43:00.594Z] 15:43:00     INFO -  js/src> checking whether malloc_usable_size definition can use const argument... yes
[task 2018-09-20T15:43:00.610Z] 15:43:00     INFO -  js/src> checking for valloc in malloc.h... no
[task 2018-09-20T15:43:00.630Z] 15:43:00     INFO -  js/src> checking for valloc in unistd.h... no
[task 2018-09-20T15:43:00.630Z] 15:43:00     INFO -  js/src> checking for localeconv... (cached) no
[task 2018-09-20T15:43:00.631Z] 15:43:00     INFO -  js/src> updating cache /builds/worker/workspace/build/src/obj-firefox/config.cache
[task 2018-09-20T15:43:00.632Z] 15:43:00     INFO -  js/src> creating ./config.data
[task 2018-09-20T15:43:00.647Z] 15:43:00     INFO -  js/src> Creating config.status
[task 2018-09-20T15:43:00.735Z] 15:43:00     INFO -  Creating config.status
[task 2018-09-20T15:43:00.871Z] 15:43:00     INFO -  Reticulating splines...
[task 2018-09-20T15:43:02.123Z] 15:43:02     INFO -   0:01.28 File already read. Skipping: /builds/worker/workspace/build/src/gfx/angle/targets/angle_common/moz.build
[task 2018-09-20T15:43:08.413Z] 15:43:08     INFO -  Traceback (most recent call last):
[task 2018-09-20T15:43:08.413Z] 15:43:08     INFO -    File "/builds/worker/workspace/build/src/configure.py", line 123, in <module>
[task 2018-09-20T15:43:08.413Z] 15:43:08     INFO -      sys.exit(main(sys.argv))
[task 2018-09-20T15:43:08.413Z] 15:43:08     INFO -    File "/builds/worker/workspace/build/src/configure.py", line 34, in main
[task 2018-09-20T15:43:08.413Z] 15:43:08     INFO -      return config_status(config)
[task 2018-09-20T15:43:08.413Z] 15:43:08     INFO -    File "/builds/worker/workspace/build/src/configure.py", line 118, in config_status
[task 2018-09-20T15:43:08.413Z] 15:43:08     INFO -      return config_status(args=[], **encode(sanitized_config, encoding))
[task 2018-09-20T15:43:08.414Z] 15:43:08     INFO -    File "/builds/worker/workspace/build/src/python/mozbuild/mozbuild/config_status.py", line 146, in config_status
[task 2018-09-20T15:43:08.414Z] 15:43:08     INFO -      the_backend.consume(definitions)
[task 2018-09-20T15:43:08.414Z] 15:43:08     INFO -    File "/builds/worker/workspace/build/src/python/mozbuild/mozbuild/backend/base.py", line 128, in consume
[task 2018-09-20T15:43:08.414Z] 15:43:08     INFO -      if (not self.consume_object(obj) and
[task 2018-09-20T15:43:08.414Z] 15:43:08     INFO -    File "/builds/worker/workspace/build/src/python/mozbuild/mozbuild/backend/fastermake.py", line 63, in consume_object
[task 2018-09-20T15:43:08.414Z] 15:43:08     INFO -      self._consume_jar_manifest(obj)
[task 2018-09-20T15:43:08.414Z] 15:43:08     INFO -    File "/builds/worker/workspace/build/src/python/mozbuild/mozbuild/backend/common.py", line 474, in _consume_jar_manifest
[task 2018-09-20T15:43:08.415Z] 15:43:08     INFO -      '%s: Cannot find %s (tried %s)' % (obj.path, e.source, src.full_path))
[task 2018-09-20T15:43:08.415Z] 15:43:08     INFO -  Exception: jar.mn: Cannot find chrome/global/aboutAbout.dtd (tried /builds/worker/workspace/build/src/toolkit/locales/en-US/chrome/global/aboutAbout.dtd)
[task 2018-09-20T15:43:08.670Z] 15:43:08     INFO -  *** Fix above errors and then restart with\
[task 2018-09-20T15:43:08.670Z] 15:43:08     INFO -                 "/bin/make -f client.mk build"
[task 2018-09-20T15:43:08.670Z] 15:43:08     INFO -  client.mk:124: recipe for target 'configure' failed
[task 2018-09-20T15:43:08.670Z] 15:43:08     INFO -  make: *** [configure] Error 1
[task 2018-09-20T15:43:08.714Z] 15:43:08    ERROR - Return code: 2
[task 2018-09-20T15:43:08.714Z] 15:43:08  WARNING - setting return code to 2
[task 2018-09-20T15:43:08.714Z] 15:43:08    FATAL - 'mach build -v' did not run successfully. Please check log for errors.
[task 2018-09-20T15:43:08.714Z] 15:43:08    FATAL - Running post_fatal callback...
[task 2018-09-20T15:43:08.714Z] 15:43:08    FATAL - Exiting -1
[task 2018-09-20T15:43:08.714Z] 15:43:08     INFO - [mozharness: 2018-09-20 15:43:08.714801Z] Finished build step (failed)
[task 2018-09-20T15:43:08.714Z] 15:43:08     INFO - Running post-run listener: _summarize
[task 2018-09-20T15:43:08.715Z] 15:43:08    ERROR - # TBPL FAILURE #
[task 2018-09-20T15:43:08.715Z] 15:43:08     INFO - [mozharness: 2018-09-20 15:43:08.715123Z] FxDesktopBuild summary:
[task 2018-09-20T15:43:08.715Z] 15:43:08    ERROR - # TBPL FAILURE #
Flags: needinfo?(songqing)
I've also noticed that aboutAbout.dtd is referenced in mobile, so we're breaking that page in Fennec
https://searchfox.org/mozilla-central/search?q=aboutAbout.dtd&path=
Reporter

Comment 12

8 months ago
(In reply to Francesco Lodolo [:flod] from comment #11)
> I've also noticed that aboutAbout.dtd is referenced in mobile, so we're
> breaking that page in Fennec
> https://searchfox.org/mozilla-central/search?q=aboutAbout.dtd&path=

I asked about this on phabricator. AFAICT the only references are packaging ones, so the only actual *use* of the file is still in about:about, which doesn't need it anymore.
Attachment #9007089 - Attachment filename: file_1486934.txt → phabricator-D5204-url.txt
I've pushed the https://phabricator.services.mozilla.com/D5311?id=22600 state to try, https://treeherder.mozilla.org/#/jobs?repo=try&revision=7a7d36c5dfc27dee26b5ddeb4fcb5fdb18a5bf19.

Repacks on desktop and fennec nightly are green.
Flags: needinfo?(songqing)

Comment 14

7 months ago
Pushed by francesco.lodolo@mozillaitalia.org:
https://hg.mozilla.org/integration/autoland/rev/ecb1a9d0a887
Modify about:about to use fluent for localization r=Gijs,flod,jaws,Pike

Comment 15

7 months ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/ecb1a9d0a887
Status: ASSIGNED → RESOLVED
Last Resolved: 7 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
You need to log in before you can comment on or make changes to this bug.