Opened 5 months ago

Last modified 2 months ago

#33558 merge_ready defect

Update TOPL To Use Updated Android Toolchain

Reported by: sisbell Owned by: gk
Priority: High Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-mobile, tbb-rbm, GeorgKoppen202005, TorBrowserTeam202006R, gitlab-tb-tor-browser-build
Cc: tbb-team, sysrqb, boklm Actual Points: .5
Parent ID: #33184 Points:
Reviewer: sysrqb, ahf Sponsor: Sponsor58-must

Description

We need to upgrade android toolchain to support fenix. This requires update to TOPL build as well.

Child Tickets

Change History (17)

comment:1 Changed 5 months ago by pili

Sponsor: Sponsor58-must

comment:2 Changed 5 months ago by pili

Adding sponsor to tickets

comment:3 Changed 4 months ago by sisbell

Actual Points: .5
Cc: eighthave removed
Status: newneeds_review

I made changes to TOPL project to use latest gradle and android dependencies. It required removing the publishing and jar sources section (which we don't use). The ttb tor-onion-proxy library uses this branched version of TOPL and upgrades gradle version. Regenerated gradle dependencies.

https://github.com/sisbell/tor-browser-build/commits/bug-33558

https://github.com/sisbell/Tor_Onion_Proxy_Library/commits/bug-33558

comment:4 Changed 4 months ago by gk

Keywords: TorBrowserTeam202004R added

comment:5 Changed 3 months ago by gk

Keywords: TorBrowserTeam202005R added; TorBrowserTeam202004R removed
Reviewer: gk

comment:6 Changed 3 months ago by gk

Keywords: tbb-rbm added; Android removed

comment:7 Changed 3 months ago by gk

Priority: MediumHigh

Moving tickets to high prio.

comment:8 Changed 3 months ago by gk

Cc: tbb-tema added
Keywords: GeorgKoppen202005 TorBrowserTeam202005 added; TorBrowserTeam202005R removed
Reviewer: gksysrqb
Status: needs_reviewneeds_revision

There is now a var/android-plugin which is never used, though. Just remove it.

comment:9 Changed 3 months ago by gk

Owner: changed from tbb-team to gk
Status: needs_revisionassigned

comment:10 Changed 3 months ago by ahf

Reviewer: sysrqbsysrqb, ahf

comment:11 Changed 3 months ago by gk

Cc: tbb-team added; tbb-tema removed
Keywords: TorBrowserTeam202005R added; TorBrowserTeam202005 removed
Status: assignedneeds_review

comment:12 Changed 3 months ago by gk

One thing I still need to think about is:

There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion).

(found at: https://stackoverflow.com/questions/53094716/implementation-com-android-supportappcompat-v728-0-0)

We do set the targetSdkVersion to 29 while we have

dependencies {
    implementation project(':universal')
    implementation 'net.freehaven.tor.control:jtorctl:0.2'
    implementation 'org.slf4j:slf4j-api:1.7.25'
    implementation 'org.slf4j:slf4j-android:1.7.25'
    implementation 'com.android.support:appcompat-v7:28.0.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation project(':android_tor_installer')
    androidTestImplementation 'org.torproject:tor-android-binary:0.3.5.8-rc-v2'
    androidTestImplementation 'com.android.support.test:runner:1.0.1'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}

I wonder whether that's indeed as problematic for us as the quote suggests...

comment:13 in reply to:  12 Changed 3 months ago by gk

Replying to gk:

One thing I still need to think about is:

There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion).

(found at: https://stackoverflow.com/questions/53094716/implementation-com-android-supportappcompat-v728-0-0)

We do set the targetSdkVersion to 29 while we have

dependencies {
    implementation project(':universal')
    implementation 'net.freehaven.tor.control:jtorctl:0.2'
    implementation 'org.slf4j:slf4j-api:1.7.25'
    implementation 'org.slf4j:slf4j-android:1.7.25'
    implementation 'com.android.support:appcompat-v7:28.0.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation project(':android_tor_installer')
    androidTestImplementation 'org.torproject:tor-android-binary:0.3.5.8-rc-v2'
    androidTestImplementation 'com.android.support.test:runner:1.0.1'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}

I wonder whether that's indeed as problematic for us as the quote suggests...

As a data point: Mozilla seems to be on 28.0.0 for the support library while targeting Android 29.

comment:14 Changed 3 months ago by gk

sponsor58-must

comment:15 Changed 3 months ago by ahf

Status: needs_reviewmerge_ready

Reviewed as part of #33559.

Hashes at https://anubis.0x90.dk/~ahf/android-tb.txt

Patch looks good.

It's interesting to review these patches that contain modified patches :-)

comment:16 Changed 2 months ago by gk

Keywords: TorBrowserTeam202006R added; TorBrowserTeam202005R removed

Moving review tickets.

comment:17 Changed 2 months ago by gk

Keywords: gitlab-tb-tor-browser-build added

Add magic gitlab keyword.

Note: See TracTickets for help on using tickets.