diff --git a/selfdrive/athena/manage_athenad.py b/selfdrive/athena/manage_athenad.py
index a15f18eabf..2ec92cc3e0 100755
--- a/selfdrive/athena/manage_athenad.py
+++ b/selfdrive/athena/manage_athenad.py
@@ -22,7 +22,7 @@ def main():
origin=build_metadata.openpilot.git_normalized_origin,
branch=build_metadata.channel,
commit=build_metadata.openpilot.git_commit,
- dirty=build_metadata.openpilot.git_dirty,
+ dirty=build_metadata.openpilot.is_dirty,
device=HARDWARE.get_device_type())
try:
diff --git a/selfdrive/car/honda/values.py b/selfdrive/car/honda/values.py
index 7a8c4314ac..1f59bd24d0 100644
--- a/selfdrive/car/honda/values.py
+++ b/selfdrive/car/honda/values.py
@@ -307,19 +307,20 @@ FW_QUERY_CONFIG = FwQueryConfig(
# We lose these ECUs without the comma power on these cars.
# Note that we still attempt to match with them when they are present
non_essential_ecus={
- Ecu.programmedFuelInjection: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CRV_5G],
- Ecu.transmission: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CRV_5G],
+ Ecu.programmedFuelInjection: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CRV_5G, CAR.HONDA_PILOT],
+ Ecu.transmission: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CRV_5G, CAR.HONDA_PILOT],
Ecu.srs: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_E],
Ecu.eps: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_E],
Ecu.vsa: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CRV_5G, CAR.HONDA_CRV_HYBRID,
CAR.HONDA_E, CAR.HONDA_INSIGHT],
- Ecu.combinationMeter: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_FIT,
+ Ecu.combinationMeter: [CAR.ACURA_ILX, CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_FIT,
CAR.HONDA_HRV, CAR.HONDA_CRV_5G, CAR.HONDA_CRV_HYBRID, CAR.HONDA_E, CAR.HONDA_INSIGHT, CAR.HONDA_ODYSSEY_CHN],
- Ecu.gateway: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_FIT, CAR.HONDA_FREED,
- CAR.HONDA_HRV, CAR.HONDA_RIDGELINE, CAR.HONDA_CRV_5G, CAR.HONDA_CRV_HYBRID, CAR.HONDA_E, CAR.HONDA_INSIGHT, CAR.HONDA_ODYSSEY_CHN],
+ Ecu.gateway: [CAR.ACURA_ILX, CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_FIT, CAR.HONDA_FREED,
+ CAR.HONDA_HRV, CAR.HONDA_RIDGELINE, CAR.HONDA_CRV_5G, CAR.HONDA_CRV_HYBRID, CAR.HONDA_E, CAR.HONDA_INSIGHT, CAR.HONDA_ODYSSEY,
+ CAR.HONDA_ODYSSEY_CHN, CAR.HONDA_PILOT],
Ecu.electricBrakeBooster: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CRV_5G],
# existence correlates with transmission type for Accord ICE
- Ecu.shiftByWire: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CRV_HYBRID, CAR.HONDA_E, CAR.HONDA_INSIGHT],
+ Ecu.shiftByWire: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CRV_HYBRID, CAR.HONDA_E, CAR.HONDA_INSIGHT, CAR.HONDA_PILOT],
# existence correlates with trim level
Ecu.hud: [CAR.HONDA_ACCORD],
},
diff --git a/selfdrive/manager/build.py b/selfdrive/manager/build.py
index 126d147e9a..859d0920c3 100755
--- a/selfdrive/manager/build.py
+++ b/selfdrive/manager/build.py
@@ -87,4 +87,4 @@ if __name__ == "__main__":
spinner = Spinner()
spinner.update_progress(0, 100)
build_metadata = get_build_metadata()
- build(spinner, build_metadata.openpilot.git_dirty, minimal = AGNOS)
+ build(spinner, build_metadata.openpilot.is_dirty, minimal = AGNOS)
diff --git a/selfdrive/manager/manager.py b/selfdrive/manager/manager.py
index b390bf50bc..512320a8db 100755
--- a/selfdrive/manager/manager.py
+++ b/selfdrive/manager/manager.py
@@ -83,7 +83,7 @@ def manager_init() -> None:
os.environ['GIT_BRANCH'] = build_metadata.channel # Needed for swaglog
os.environ['GIT_COMMIT'] = build_metadata.openpilot.git_commit # Needed for swaglog
- if not build_metadata.openpilot.git_dirty:
+ if not build_metadata.openpilot.is_dirty:
os.environ['CLEAN'] = '1'
# init logging
@@ -93,7 +93,7 @@ def manager_init() -> None:
origin=build_metadata.openpilot.git_normalized_origin,
branch=build_metadata.channel,
commit=build_metadata.openpilot.git_commit,
- dirty=build_metadata.openpilot.git_dirty,
+ dirty=build_metadata.openpilot.is_dirty,
device=HARDWARE.get_device_type())
# preimport all processes
diff --git a/selfdrive/sentry.py b/selfdrive/sentry.py
index 6abac634b9..204d9cab09 100644
--- a/selfdrive/sentry.py
+++ b/selfdrive/sentry.py
@@ -66,7 +66,7 @@ def init(project: SentryProject) -> bool:
build_metadata = get_build_metadata()
sentry_sdk.set_user({"id": dongle_id})
- sentry_sdk.set_tag("dirty", build_metadata.openpilot.git_dirty)
+ sentry_sdk.set_tag("dirty", build_metadata.openpilot.is_dirty)
sentry_sdk.set_tag("origin", build_metadata.openpilot.git_origin)
sentry_sdk.set_tag("branch", build_metadata.channel)
sentry_sdk.set_tag("commit", build_metadata.openpilot.git_commit)
diff --git a/selfdrive/statsd.py b/selfdrive/statsd.py
index 9a10b3a5be..2f9149b096 100755
--- a/selfdrive/statsd.py
+++ b/selfdrive/statsd.py
@@ -93,7 +93,7 @@ def main() -> NoReturn:
'started': False,
'version': build_metadata.openpilot.version,
'branch': build_metadata.channel,
- 'dirty': build_metadata.openpilot.git_dirty,
+ 'dirty': build_metadata.openpilot.is_dirty,
'origin': build_metadata.openpilot.git_normalized_origin,
'deviceType': HARDWARE.get_device_type(),
}
diff --git a/selfdrive/ui/qt/util.cc b/selfdrive/ui/qt/util.cc
index bc3c494fa7..9138f8bca5 100644
--- a/selfdrive/ui/qt/util.cc
+++ b/selfdrive/ui/qt/util.cc
@@ -61,7 +61,7 @@ QString timeAgo(const QDateTime &date) {
QString s;
if (diff < 60) {
- s = "now";
+ s = QObject::tr("now");
} else if (diff < 60 * 60) {
int minutes = diff / 60;
s = QObject::tr("%n minute(s) ago", "", minutes);
diff --git a/selfdrive/ui/translations/main_ar.ts b/selfdrive/ui/translations/main_ar.ts
index 10c87d87bd..64cb8d9812 100644
--- a/selfdrive/ui/translations/main_ar.ts
+++ b/selfdrive/ui/translations/main_ar.ts
@@ -615,6 +615,10 @@
ft
قدم
+
+ now
+
+
Reset
diff --git a/selfdrive/ui/translations/main_de.ts b/selfdrive/ui/translations/main_de.ts
index cdcea24778..e8bd89db9a 100644
--- a/selfdrive/ui/translations/main_de.ts
+++ b/selfdrive/ui/translations/main_de.ts
@@ -598,6 +598,10 @@
ft
fuß
+
+ now
+
+
Reset
diff --git a/selfdrive/ui/translations/main_fr.ts b/selfdrive/ui/translations/main_fr.ts
index b1c39db18e..340ab694ff 100644
--- a/selfdrive/ui/translations/main_fr.ts
+++ b/selfdrive/ui/translations/main_fr.ts
@@ -599,6 +599,10 @@
ft
ft
+
+ now
+
+
Reset
diff --git a/selfdrive/ui/translations/main_ja.ts b/selfdrive/ui/translations/main_ja.ts
index 5360c352d1..332b443ddd 100644
--- a/selfdrive/ui/translations/main_ja.ts
+++ b/selfdrive/ui/translations/main_ja.ts
@@ -594,6 +594,10 @@
ft
フィート
+
+ now
+
+
Reset
diff --git a/selfdrive/ui/translations/main_ko.ts b/selfdrive/ui/translations/main_ko.ts
index ed751912a6..48ccb1a712 100644
--- a/selfdrive/ui/translations/main_ko.ts
+++ b/selfdrive/ui/translations/main_ko.ts
@@ -595,6 +595,10 @@
ft
ft
+
+ now
+
+
Reset
diff --git a/selfdrive/ui/translations/main_pt-BR.ts b/selfdrive/ui/translations/main_pt-BR.ts
index c32aeacaa3..fed4077667 100644
--- a/selfdrive/ui/translations/main_pt-BR.ts
+++ b/selfdrive/ui/translations/main_pt-BR.ts
@@ -599,6 +599,10 @@
ft
pés
+
+ now
+
+
Reset
diff --git a/selfdrive/ui/translations/main_th.ts b/selfdrive/ui/translations/main_th.ts
index 25a8aaeebd..ff74ba66c6 100644
--- a/selfdrive/ui/translations/main_th.ts
+++ b/selfdrive/ui/translations/main_th.ts
@@ -595,6 +595,10 @@
ft
ฟุต
+
+ now
+
+
Reset
diff --git a/selfdrive/ui/translations/main_tr.ts b/selfdrive/ui/translations/main_tr.ts
index dfe4b3670b..69946fa318 100644
--- a/selfdrive/ui/translations/main_tr.ts
+++ b/selfdrive/ui/translations/main_tr.ts
@@ -594,6 +594,10 @@
ft
ft
+
+ now
+
+
Reset
diff --git a/selfdrive/ui/translations/main_zh-CHS.ts b/selfdrive/ui/translations/main_zh-CHS.ts
index d985945f02..4a314c94bd 100644
--- a/selfdrive/ui/translations/main_zh-CHS.ts
+++ b/selfdrive/ui/translations/main_zh-CHS.ts
@@ -595,6 +595,10 @@
ft
ft
+
+ now
+
+
Reset
diff --git a/selfdrive/ui/translations/main_zh-CHT.ts b/selfdrive/ui/translations/main_zh-CHT.ts
index e64134f253..b013890956 100644
--- a/selfdrive/ui/translations/main_zh-CHT.ts
+++ b/selfdrive/ui/translations/main_zh-CHT.ts
@@ -595,6 +595,10 @@
ft
ft
+
+ now
+
+
Reset
diff --git a/system/version.py b/system/version.py
index deaa6b26ae..f370beb4ae 100755
--- a/system/version.py
+++ b/system/version.py
@@ -33,12 +33,12 @@ def get_release_notes(path: str = BASEDIR) -> str:
@cache
-def is_prebuilt() -> bool:
- return os.path.exists(os.path.join(BASEDIR, 'prebuilt'))
+def is_prebuilt(path: str = BASEDIR) -> bool:
+ return os.path.exists(os.path.join(path, 'prebuilt'))
@cache
-def is_dirty(cwd: str = None) -> bool:
+def is_dirty(cwd: str = BASEDIR) -> bool:
origin = get_origin()
branch = get_branch()
if not origin or not branch:
@@ -47,14 +47,14 @@ def is_dirty(cwd: str = None) -> bool:
dirty = False
try:
# Actually check dirty files
- if not is_prebuilt():
+ if not is_prebuilt(cwd):
# This is needed otherwise touched files might show up as modified
try:
subprocess.check_call(["git", "update-index", "--refresh"], cwd=cwd)
except subprocess.CalledProcessError:
pass
- dirty = (subprocess.call(["git", "diff-index", "--quiet", branch, "--"], cwd=cwd) != 0)
+ dirty = (subprocess.call(["git", "diff-index", "--quiet", branch, "--"], cwd=cwd)) != 0
except subprocess.CalledProcessError:
cloudlog.exception("git subprocess failed while checking dirty")
dirty = True
@@ -69,7 +69,7 @@ class OpenpilotMetadata:
git_commit: str
git_origin: str
git_commit_date: str
- git_dirty: bool
+ is_dirty: bool # whether there are local changes
@property
def short_version(self) -> str:
@@ -125,13 +125,19 @@ def get_build_metadata(path: str = BASEDIR) -> BuildMetadata:
git_commit=git_commit,
git_origin=git_origin,
git_commit_date=git_commit_date,
- git_dirty=False))
+ is_dirty=False))
git_folder = pathlib.Path(path) / ".git"
if git_folder.exists():
- return BuildMetadata(get_short_branch(path), OpenpilotMetadata(get_version(path), get_release_notes(path), get_commit(path), \
- get_origin(path), get_commit_date(path), is_dirty(path)))
+ return BuildMetadata(get_short_branch(path),
+ OpenpilotMetadata(
+ version=get_version(path),
+ release_notes=get_release_notes(path),
+ git_commit=get_commit(path),
+ git_origin=get_origin(path),
+ git_commit_date=get_commit_date(path),
+ is_dirty=is_dirty(path)))
cloudlog.exception("unable to get build metadata")
raise Exception("invalid build metadata")