summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornechda <[email protected]>2025-09-15 09:11:18 +0300
committernechda <[email protected]>2025-09-15 09:30:11 +0300
commitfe34de80343f07ea0a89f700a78c8a90db9f9a92 (patch)
tree9b481f0ef917cb020f22d54af3f50a3903d967e8
parentebdea0a64586986aa2e5498a0de0fb20fb3d59db (diff)
Migrate java scripts to py3
rep py2 -> py3 for java commit_hash:78171638f15125a712c6142b22cdc8bc33b75a56
-rw-r--r--build/conf/java.conf40
-rwxr-xr-xbuild/scripts/fetch_from_sandbox.py15
-rw-r--r--build/scripts/run_javac.py1
-rw-r--r--build/scripts/with_kapt_args.py4
-rw-r--r--build/ymake.core.conf2
5 files changed, 30 insertions, 32 deletions
diff --git a/build/conf/java.conf b/build/conf/java.conf
index 2169747f93d..270f685f2a1 100644
--- a/build/conf/java.conf
+++ b/build/conf/java.conf
@@ -4,7 +4,7 @@ macro _INPUT_WITH_FLAG(Flag, IN[]) {
macro ACCELEO(XSD{input}[], MTL{input}[], MTL_ROOT="${MODDIR}", LANG{input}[], OUT{output}[], OUT_NOAUTO{output}[], OUTPUT_INCLUDES[], DEBUG?"stdout2stderr":"stderr2stdout") {
.PEERDIR=build/platform/java/jdk $JDK_RESOURCE_PEERDIR
- .CMD=${cwd:ARCADIA_BUILD_ROOT} $YMAKE_PYTHON ${input;pre=build/scripts/;suf=.py:DEBUG} $JDK_RESOURCE/bin/java -Dfile.encoding=utf8 -classpath ${RUN_JAR_PROG_CP_PRE}${tool:"tools/acceleo"}${RUN_JAR_PROG_CP_SUF} ru.yandex.se.logsng.tool.Cli $_INPUT_WITH_FLAG(--xsd IN $XSD) $_INPUT_WITH_FLAG(--mtl IN $MTL) $_INPUT_WITH_FLAG(--lang IN $LANG) --output-dir $BINDIR --build-root ${ARCADIA_BUILD_ROOT} --source-root ${ARCADIA_ROOT} --mtl-root $MTL_ROOT ${hide;output_include:OUTPUT_INCLUDES} ${hide;output:OUT} ${hide;noauto;output:OUT_NOAUTO} ${hide;kv:"p JV"} ${hide;kv:"pc light-blue"} ${hide;kv:"show_out"}
+ .CMD=${cwd:ARCADIA_BUILD_ROOT} $YMAKE_PYTHON3 ${input;pre=build/scripts/;suf=.py:DEBUG} $JDK_RESOURCE/bin/java -Dfile.encoding=utf8 -classpath ${RUN_JAR_PROG_CP_PRE}${tool:"tools/acceleo"}${RUN_JAR_PROG_CP_SUF} ru.yandex.se.logsng.tool.Cli $_INPUT_WITH_FLAG(--xsd IN $XSD) $_INPUT_WITH_FLAG(--mtl IN $MTL) $_INPUT_WITH_FLAG(--lang IN $LANG) --output-dir $BINDIR --build-root ${ARCADIA_BUILD_ROOT} --source-root ${ARCADIA_ROOT} --mtl-root $MTL_ROOT ${hide;output_include:OUTPUT_INCLUDES} ${hide;output:OUT} ${hide;noauto;output:OUT_NOAUTO} ${hide;kv:"p JV"} ${hide;kv:"pc light-blue"} ${hide;kv:"show_out"}
.STRUCT_CMD=yes
}
@@ -481,7 +481,7 @@ macro DEFAULT_JUNIT_JAVA_SRCS_LAYOUT() {
}
macro _GENTAR_HELPER(HASH_SUF="hash_suf", OUT_DIR[]) {
- .CMD=${cwd:BINDIR} $YMAKE_PYTHON ${input:"build/scripts/autotar_gendirs.py"} --pack ${OUT_DIR} --outs ${tared;output;suf=$HASH_SUF:OUT_DIR} ${hide;kv:"tared_kind nodir"}
+ .CMD=${cwd:BINDIR} $YMAKE_PYTHON3 ${input:"build/scripts/autotar_gendirs.py"} --pack ${OUT_DIR} --outs ${tared;output;suf=$HASH_SUF:OUT_DIR} ${hide;kv:"tared_kind nodir"}
.SEM=${hide;tared;output;suf=$HASH_SUF:OUT_DIR}
}
@@ -512,7 +512,7 @@ macro _DO_2_RUN_JAR_PROGRAM(IN_DIRS_VAR="uniq_", IN_DIRS_INPUTS[], IN{input}[],
_LATE_GLOB(${IN_DIRS_VAR} ${suf=/**/*:IN_DIR})
_CHECK_RUN_JAVA_PROG_CLASSPATH($CLASSPATH)
.PEERDIR=build/platform/java/jdk $JDK_RESOURCE_PEERDIR
- .CMD=${hide;kv:"p RJ"} ${hide;kv:"pc blue"} ${hide:JAVA_FAKEID} ${cwd:BINDIR} $YMAKE_PYTHON ${input:"build/scripts/mkdir.py"} ${OUT_DIR} && ${cwd:CWD} $YMAKE_PYTHON ${input:"build/scripts/setup_java_tmpdir.py"} $YMAKE_PYTHON ${input:"build/scripts/stdout2stderr.py"} ${pre=--file=:STDOUT} ${hide;output:STDOUT} ${pre=--file=:STDOUT_NOAUTO} ${hide;noauto;output:STDOUT_NOAUTO} $YMAKE_PYTHON ${input:"build/scripts/fix_java_command_file_cp.py"} --build-root ${ARCADIA_BUILD_ROOT} $JDK_RESOURCE/bin/java -Dfile.encoding=utf8 -classpath ${RUN_JAR_PROG_CP_PRE}${tool:CLASSPATH}${RUN_JAR_PROG_CP_SUF} ${Args} && $_GENTAR_HELPER(HASH_SUF $HASH_SUF OUT_DIR $OUT_DIR) ${hide;input:IN} ${hide;context=TEXT;input=TEXT:IN_NOPARSE} ${hide;noauto;output:OUT_NOAUTO} ${hide;output:OUT} ${hide;tool:TOOL} ${hide;input:IN_DIRS_INPUTS}
+ .CMD=${hide;kv:"p RJ"} ${hide;kv:"pc blue"} ${hide:JAVA_FAKEID} ${cwd:BINDIR} $YMAKE_PYTHON3 ${input:"build/scripts/mkdir.py"} ${OUT_DIR} && ${cwd:CWD} $YMAKE_PYTHON3 ${input:"build/scripts/setup_java_tmpdir.py"} $YMAKE_PYTHON3 ${input:"build/scripts/stdout2stderr.py"} ${pre=--file=:STDOUT} ${hide;output:STDOUT} ${pre=--file=:STDOUT_NOAUTO} ${hide;noauto;output:STDOUT_NOAUTO} $YMAKE_PYTHON3 ${input:"build/scripts/fix_java_command_file_cp.py"} --build-root ${ARCADIA_BUILD_ROOT} $JDK_RESOURCE/bin/java -Dfile.encoding=utf8 -classpath ${RUN_JAR_PROG_CP_PRE}${tool:CLASSPATH}${RUN_JAR_PROG_CP_SUF} ${Args} && $_GENTAR_HELPER(HASH_SUF $HASH_SUF OUT_DIR $OUT_DIR) ${hide;input:IN} ${hide;context=TEXT;input=TEXT:IN_NOPARSE} ${hide;noauto;output:OUT_NOAUTO} ${hide;output:OUT} ${hide;tool:TOOL} ${hide;input:IN_DIRS_INPUTS}
.STRUCT_CMD=yes
.SEM=runs-ITEM && runs-args ${Args} && runs-classpath ${RUN_JAR_PROG_CP_PRE}${tool:CLASSPATH}${RUN_JAR_PROG_CP_SUF} && runs-cwd ${CWD} ${hide;cwd:CWD} && runs-in ${IN} ${hide;input:IN} && runs-in_dir ${IN_DIR} && runs-in_noparse ${IN_NOPARSE} ${hide;context=TEXT;input=TEXT:IN_NOPARSE} && runs-out ${OUT} ${hide;output:OUT} ${OUT_NOAUTO} ${hide;noauto;output:OUT_NOAUTO} $_GENTAR_HELPER(HASH_SUF $HASH_SUF OUT_DIR $OUT_DIR) && runs-out_dir ${OUT_DIR} && runs-tool ${tool:TOOL}
}
@@ -611,7 +611,7 @@ module JAVA_CONTRIB_PROXY: _JAR_BASE {
# tag:java-specific
macro _FETCH_CONTRIB(Id, Out, SBR="sbr:") {
- .CMD=${hide:SANDBOX_FAKEID} ${cwd:BINDIR} ${resource;pre=$SBR:Id} $YMAKE_PYTHON ${input:"build/scripts/fetch_from_sandbox.py"} --resource-file $(RESOURCE_ROOT)/sbr/$Id/resource --resource-id $Id --copy-to ${output:Out} ${hide;input:"build/scripts/fetch_from.py"} ${hide;requirements:"network:full"} ${hide;kv:"p SB"} ${hide;kv:"pc yellow"} ${hide;kv:"show_out"}
+ .CMD=${hide:SANDBOX_FAKEID} ${cwd:BINDIR} ${resource;pre=$SBR:Id} $YMAKE_PYTHON3 ${input:"build/scripts/fetch_from_sandbox.py"} --resource-file $(RESOURCE_ROOT)/sbr/$Id/resource --resource-id $Id --copy-to ${output:Out} ${hide;input:"build/scripts/fetch_from.py"} ${hide;requirements:"network:full"} ${hide;kv:"p SB"} ${hide;kv:"pc yellow"} ${hide;kv:"show_out"}
ADD_CHECK(check.resource $Id)
}
@@ -699,7 +699,7 @@ module JAVA_CONTRIB: _JAR_BASE {
_SETUP_MAVEN_EXPORT_COORDS_IF_NEED($MODDIR)
}
-MAKE_JAVA_CLASSPATH_FILE=$YMAKE_PYTHON ${input:"build/scripts/make_java_classpath_file.py"} ${hide;input:"build/scripts/process_command_files.py"}
+MAKE_JAVA_CLASSPATH_FILE=$YMAKE_PYTHON3 ${input:"build/scripts/make_java_classpath_file.py"} ${hide;input:"build/scripts/process_command_files.py"}
# tag:kotlin-specific
KOTLINC_OPTS_VALUE=
@@ -712,7 +712,7 @@ KT_CLASSPATH=${BINDIR}/kt_cp.txt
COLLECT_KT_CLASSPATH=${WRITER_PY} --file ${BINDIR}/kt_bfg.txt -m --ya-start-command-file ${ext=.jar:MANAGED_PEERS_CLOSURE} --ya-end-command-file
LINK_KT_CLASSPATH=${MAKE_JAVA_CLASSPATH_FILE} ${BINDIR}/kt_bfg.txt $KT_CLASSPATH && $FS_TOOLS md $KT_CLASSES_DIR
COMPILE_KT= \
- ${cwd:ARCADIA_BUILD_ROOT} ${env:"LC_ALL=en_US.UTF-8"} $YMAKE_PYTHON ${input:"build/scripts/run_javac.py"} \
+ ${cwd:ARCADIA_BUILD_ROOT} ${env:"LC_ALL=en_US.UTF-8"} $YMAKE_PYTHON3 ${input:"build/scripts/run_javac.py"} \
${hide;input:"build/scripts/build_java_with_error_prone2.py"} \
${hide;input:"build/scripts/setup_java_tmpdir.py"} \
--kotlin --sources-list $KT_SRCLIST \
@@ -790,7 +790,7 @@ otherwise {
}
# tag:java-specific tag:codenav
-_JAVA_YNDEXING_CMD=$YMAKE_PYTHON ${input:"build/scripts/build_java_codenav_index.py"} $TARGET $ARCADIA_BUILD_ROOT $ARCADIA_ROOT ${BINDIR}/all-java.srclst $JDK_RESOURCE/bin/java -jar $KYTHE_RESOURCE/kythe/extractors/javac_extractor.jar
+_JAVA_YNDEXING_CMD=$YMAKE_PYTHON3 ${input:"build/scripts/build_java_codenav_index.py"} $TARGET $ARCADIA_BUILD_ROOT $ARCADIA_ROOT ${BINDIR}/all-java.srclst $JDK_RESOURCE/bin/java -jar $KYTHE_RESOURCE/kythe/extractors/javac_extractor.jar
_DO_JAVA_YNDEXING=
# tag:java-specific
@@ -815,8 +815,8 @@ _MAKE_JSTYLE_FILE_LIST=
_LINK_UBERJAR=
_UBERJAR_SELF=
_DO_LINK_UBERJAR= && $JDK_RESOURCE/bin/java -cp $UBERJAR_RESOURCE/devtools-java_shader.jar ru.yandex.devtools.emigrante.Main --out-jar $TARGET $_UBERJAR_SELF ${pre=--jar ;ext=.jar:MANAGED_PEERS_CLOSURE} ${UBERJAR_PREFIX_FLAG} ${UBERJAR_HIDE_EXCLUDE_FLAGS} ${UBERJAR_HIDE_INCLUDE_FLAGS} $UBERJAR_PATH_EXCLUDES ${UBERJAR_MANIFEST_TRANSFORMER_MAIN_FLAG} ${UBERJAR_MANIFEST_TRANSFORMER_ATTRIBUTE_FLAGS} ${UBERJAR_APPENDING_TRANSFORMER_FLAGS} ${UBERJAR_SERVICES_RESOURCE_TRANSFORMER_FLAG} \
- && $YMAKE_PYTHON ${input:"build/scripts/mkdir.py"} $BINDIR/_empty/META-INF \
- && $YMAKE_PYTHON ${input:"build/scripts/touch.py"} $BINDIR/_empty/META-INF/MANIFEST.MF \
+ && $YMAKE_PYTHON3 ${input:"build/scripts/mkdir.py"} $BINDIR/_empty/META-INF \
+ && $YMAKE_PYTHON3 ${input:"build/scripts/touch.py"} $BINDIR/_empty/META-INF/MANIFEST.MF \
&& $UPDATE_VCS_JAVA_INFO_NODEP($TARGET) \
&& ${cwd;suf=/_empty:BINDIR} ${JDK_RESOURCE}/bin/jar ufv ${TARGET} META-INF/MANIFEST.MF \
&& $JDK_RESOURCE/bin/jar ufvm $TARGET $VCS_JAVA
@@ -828,7 +828,7 @@ macro _PACK_JAR_HELPER(Out) {
# tag:java-specific
macro _JAVAC_RUN_HELPER(JAVAC_CMD_WITH_ARGS...) {
- .CMD=${cwd:ARCADIA_BUILD_ROOT} ${env:"LC_ALL=en_US.UTF-8"} $YMAKE_PYTHON ${input:"build/scripts/run_javac.py"} ${hide;input:"build/scripts/build_java_with_error_prone2.py"} ${hide;input:"build/scripts/setup_java_tmpdir.py"} --with-setup-java-tmpdir --sources-list ${BINDIR}/all-java.srclst ${RUN_JAVAC_ARGS} ${JAVAC_CMD_WITH_ARGS} @${BINDIR}/all-java.srclst -classpath ${ARCADIA_BUILD_ROOT}/bfg.jar -Xpkginfo:always ${JAVAC_OPTS} $_JAR_ANN_PROC_OPTS($_JAR_ANN_PROCESSORS) -d ${BINDIR}/cls -g -encoding UTF-8
+ .CMD=${cwd:ARCADIA_BUILD_ROOT} ${env:"LC_ALL=en_US.UTF-8"} $YMAKE_PYTHON3 ${input:"build/scripts/run_javac.py"} ${hide;input:"build/scripts/build_java_with_error_prone2.py"} ${hide;input:"build/scripts/setup_java_tmpdir.py"} --with-setup-java-tmpdir --sources-list ${BINDIR}/all-java.srclst ${RUN_JAVAC_ARGS} ${JAVAC_CMD_WITH_ARGS} @${BINDIR}/all-java.srclst -classpath ${ARCADIA_BUILD_ROOT}/bfg.jar -Xpkginfo:always ${JAVAC_OPTS} $_JAR_ANN_PROC_OPTS($_JAR_ANN_PROCESSORS) -d ${BINDIR}/cls -g -encoding UTF-8
}
# tag:java-specific
@@ -861,7 +861,7 @@ MAVEN_EXPORT_GEN_DEPLST= \
--ya-start-command-file -m ${pre=D=:MAVEN_EXPORT_COORDS_GLOBAL} ${pre=E=:EXCLUDED_MAVEN_EXPORT_COORDS_GLOBAL} --ya-end-command-file \
${hide:APPLIED_EXCLUDES}
MAVEN_EXPORT_GEN_POM=${hide;kv:"mvn_export yes"} \
- $YMAKE_PYTHON ${input:"build/scripts/generate_pom.py"} \
+ $YMAKE_PYTHON3 ${input:"build/scripts/generate_pom.py"} \
--from-coord-files \
--vcs-info $(VCS)/vcs.json \
--target-path $MODDIR \
@@ -871,7 +871,7 @@ MAVEN_EXPORT_GEN_POM=${hide;kv:"mvn_export yes"} \
--target-coords ${suf=.mvn_coords:TARGET} \
--pom-path ${output:"pom.xml"}
-MAVEN_DEPLOY_CMD=$YMAKE_PYTHON ${input:"build/scripts/stdout2stderr.py"} $MAVEN_BIN \
+MAVEN_DEPLOY_CMD=$YMAKE_PYTHON3 ${input:"build/scripts/stdout2stderr.py"} $MAVEN_BIN \
deploy:deploy-file -DpomFile=$BINDIR/pom.xml \
-Dfile=$TARGET -DrepositoryId=$MAVEN_REPO_ID -Durl=$MAVEN_REPO_URL -Djava.net.preferIPv4Addresses=false -Djava.net.preferIPv6Addresses=true \
${MAVEN_DEPLOY_SOURCES} \
@@ -899,7 +899,7 @@ PREPARE_JAR_BUILD=${cwd:BINDIR} ${YMAKE_PYTHON3} ${input:"build/scripts/prepare_
${hide;input:"build/scripts/autotar_gendirs.py"} \
${hide;input:"build/scripts/resolve_java_srcs.py"}
COLLECT_CLASSPATH=${WRITER_PY} --file ${BINDIR}/bfg.txt -m --ya-start-command-file ${rootrel:MANAGED_PEERS_CLOSURE} $KT_CLASSPATH_ITEM --ya-end-command-file
-LINK_CLASSPATH=${YMAKE_PYTHON} ${input:"build/scripts/make_manifest_from_bf.py"} ${BINDIR}/bfg.txt ${ARCADIA_BUILD_ROOT}/bfg.jar
+LINK_CLASSPATH=${YMAKE_PYTHON3} ${input:"build/scripts/make_manifest_from_bf.py"} ${BINDIR}/bfg.txt ${ARCADIA_BUILD_ROOT}/bfg.jar
COMPILE_JAVA_SRCLIST=$_JAVAC_RUN_HELPER($JAVAC_CMD)
PACK_JAR=$_PACK_JAR_HELPER($TARGET)
LINK_JAR=${hide:JAVA_FAKEID} ${hide;kv:"p JV"} ${hide;kv:"pc light-blue"} ${hide;kv:"show_out"} ${hide;requirements:"cpu:4"} \
@@ -1125,13 +1125,13 @@ module JAR_LIBRARY: _COMPILABLE_JAR_BASE {
DEPENDENCY_MANAGEMENT(contrib/java/org/jetbrains/kotlin/kotlin-stdlib-jdk8/${_KOTLIN_VERSION})
when ($WITH_KOTLIN_VALUE) {
KT_SRSCLIST=$KT_SRSCLIST_FLAG
- _MAKE_LINT_KT_FILES_LIST = $YMAKE_PYTHON ${input:"build/scripts/kt_copy.py"} $KT_SRCLIST ${noauto;output:"all-kt-sources.txt"} $(SOURCE_ROOT) $(BUILD_ROOT)
+ _MAKE_LINT_KT_FILES_LIST = $YMAKE_PYTHON3 ${input:"build/scripts/kt_copy.py"} $KT_SRCLIST ${noauto;output:"all-kt-sources.txt"} $(SOURCE_ROOT) $(BUILD_ROOT)
ALL_KT_COMMANDS=&& $COLLECT_KT_CLASSPATH && $LINK_KT_CLASSPATH
when ($WITH_KAPT_VALUE == "yes") {
# For Kapt usage see: https://kotlinlang.org/docs/kapt.html#using-in-cli
# See for kapt.kotlin.generated: https://github.com/JetBrains/kotlin/blob/master/plugins/kapt3/kapt3-cli/testData/integration/kotlinFileGeneration/build.txt
_KAPT_OPTS=-Xplugin=${tool:"contrib/java/org/jetbrains/kotlin/kotlin-annotation-processing/2.2.10"} $KT_KAPT_PLUGIN_OPTS
- _RUN_KAPT=${YMAKE_PYTHON} ${input:"build/scripts/with_kapt_args.py"} --ap-classpath ${KT_KAPT_AP_CLASSPATH} --ap-options ${KT_KAPT_AP_OPTS} -- $COMPILE_KT $_KAPT_OPTS
+ _RUN_KAPT=${YMAKE_PYTHON3} ${input:"build/scripts/with_kapt_args.py"} --ap-classpath ${KT_KAPT_AP_CLASSPATH} --ap-options ${KT_KAPT_AP_OPTS} -- $COMPILE_KT $_KAPT_OPTS
_APPEND_KAPT_GENERATED_SRCS=$YMAKE_PYTHON3 ${input:"build/scripts/resolve_java_srcs.py"} -d $KT_KAPT_SOURCES_DIR --include-patterns '**/*.java' '**/*.kt' --resolve-kotlin --append -s ${BINDIR}/all-java.srclst -k $KT_SRCLIST -r ${BINDIR}/not-used.txt
ALL_KT_COMMANDS+=&& $_RUN_KAPT && $_APPEND_KAPT_GENERATED_SRCS
@@ -1155,7 +1155,7 @@ module JAR_LIBRARY: _COMPILABLE_JAR_BASE {
KOTLINC_OPTS_VALUE+=-Xplugin=${tool:"devtools/detekt-compiler-plugin"}
KOTLINC_OPTS_VALUE+=-P plugin:detekt-compiler-plugin:report=xml:${BINDIR}/misc/detekt-report.xml
# If there are no kt sources, the report won't be generated, however the file must be always present.
- ALL_KT_COMMANDS+=&& $YMAKE_PYTHON ${input:"build/scripts/touch.py"} ${BINDIR}/misc/detekt-report.xml
+ ALL_KT_COMMANDS+=&& $YMAKE_PYTHON3 ${input:"build/scripts/touch.py"} ${BINDIR}/misc/detekt-report.xml
ALL_KT_COMMANDS+=&& $FS_TOOLS copy ${BINDIR}/misc/detekt-report.xml ${noauto;output:"detekt-report.xml"}
}
# Must be in sync with KT_CLASSES_DIR!
@@ -1205,7 +1205,7 @@ module JAR_LIBRARY: _COMPILABLE_JAR_BASE {
when($JAVA_YNDEXING == "yes") {
PEERDIR+=build/platform/java/kythe
- _DO_JAVA_YNDEXING=&& $_JAVAC_RUN_HELPER($_JAVA_YNDEXING_CMD) && ${cwd:BINDIR} $YMAKE_PYTHON ${input:"build/scripts/find_and_tar.py"} kindex.tar .kzip ${hide;tared;output:"kindex.tar"}
+ _DO_JAVA_YNDEXING=&& $_JAVAC_RUN_HELPER($_JAVA_YNDEXING_CMD) && ${cwd:BINDIR} $YMAKE_PYTHON3 ${input:"build/scripts/find_and_tar.py"} kindex.tar .kzip ${hide;tared;output:"kindex.tar"}
}
when ($ERROR_PRONE_VALUE) {
@@ -1273,7 +1273,7 @@ GEN_JAVA_RUN_SH=$SCRIPTGEN_RESOURCE_GLOBAL/scriptgen --java $JDK_RESOURCE/bin/ja
-D JAR_BASENAME=${REALPRJNAME} \
-D MAIN_CLASS=${_JAR_MAIN_CLASS} \
-D ENABLE_PREVIEW=${ENABLE_PREVIEW_VALUE}
-GEN_RUN_CP=${WRITER_PY} --file ${BINDIR}/run-bf.txt -Q -m --ya-start-command-file ${qe;pre=$REALPRJNAME/;nopath:MANAGED_PEERS_CLOSURE} --ya-end-command-file && ${YMAKE_PYTHON} ${input:"build/scripts/make_manifest_from_bf.py"} ${BINDIR}/run-bf.txt ${TARGET}
+GEN_RUN_CP=${WRITER_PY} --file ${BINDIR}/run-bf.txt -Q -m --ya-start-command-file ${qe;pre=$REALPRJNAME/;nopath:MANAGED_PEERS_CLOSURE} --ya-end-command-file && ${YMAKE_PYTHON3} ${input:"build/scripts/make_manifest_from_bf.py"} ${BINDIR}/run-bf.txt ${TARGET}
COLLECT_JAR_PROGRAM_CP__LATEOUT__=\
${pre=$BINDIR/$REALPRJNAME/;nopath;ext=.jar:MANAGED_PEERS_CLOSURE} \
${pre=$BINDIR/$REALPRJNAME/;nopath;ext=.so:MANAGED_PEERS_CLOSURE} \
@@ -1290,7 +1290,7 @@ COLLECT_JAR_PROGRAM_CP=$FS_TOOLS link_or_copy_to_dir \
${BINDIR}/${REALPRJNAME} \
${hide;late_out:COLLECT_JAR_PROGRAM_CP__LATEOUT__}
MAKE_JAR_PROGRAM_CPLST=${MAKE_JAVA_CLASSPATH_FILE} --from-args ${output;pre=$MODULE_PREFIX;suf=${MODULE_SUFFIX}.cplst:REALPRJNAME} --ya-start-command-file ${rootrel;pre=$BINDIR/$REALPRJNAME/;nopath;ext=.jar:MANAGED_PEERS_CLOSURE} ${_SOURCE_JARS_CPLIST} --ya-end-command-file
-TAR_CLASSPATH= && $YMAKE_PYTHON ${input:"build/scripts/find_and_tar.py"} ${output;pre=$MODULE_PREFIX;suf=.tar:REALPRJNAME} ${cwd;pre=$BINDIR/:REALPRJNAME}
+TAR_CLASSPATH= && $YMAKE_PYTHON3 ${input:"build/scripts/find_and_tar.py"} ${output;pre=$MODULE_PREFIX;suf=.tar:REALPRJNAME} ${cwd;pre=$BINDIR/:REALPRJNAME}
DO_TAR_CLASSPATH=
LINK_JAR_PROGRAM=${hide:JAVA_FAKEID} $FS_TOOLS md ${BINDIR}/${REALPRJNAME} \
&& $COLLECT_JAR_PROGRAM_CP \
@@ -1364,7 +1364,7 @@ module _JAR_RUNNABLE: _COMPILABLE_JAR_BASE {
}
# tag:java-specific
-LINK_JAR_TEST=${hide:JAVA_FAKEID} ${WRITER_PY} --file ${BINDIR}/run-bf.txt -Q -m --ya-start-command-file ${ext=.jar:MANAGED_PEERS_CLOSURE} --ya-end-command-file && ${YMAKE_PYTHON} ${input:"build/scripts/make_manifest_from_bf.py"} ${BINDIR}/run-bf.txt ${TARGET} ${hide;kv:"p JT"}
+LINK_JAR_TEST=${hide:JAVA_FAKEID} ${WRITER_PY} --file ${BINDIR}/run-bf.txt -Q -m --ya-start-command-file ${ext=.jar:MANAGED_PEERS_CLOSURE} --ya-end-command-file && ${YMAKE_PYTHON3} ${input:"build/scripts/make_manifest_from_bf.py"} ${BINDIR}/run-bf.txt ${TARGET} ${hide;kv:"p JT"}
module _JAR_TEST: _COMPILABLE_JAR_BASE {
.FINAL_TARGET=yes
.CMD=$LINK_JAR_TEST
diff --git a/build/scripts/fetch_from_sandbox.py b/build/scripts/fetch_from_sandbox.py
index 2995d4df713..dc1214020b2 100755
--- a/build/scripts/fetch_from_sandbox.py
+++ b/build/scripts/fetch_from_sandbox.py
@@ -8,7 +8,7 @@ import random
import subprocess
import sys
import time
-import urllib2
+import urllib
import uuid
# Explicitly enable local imports
@@ -85,7 +85,7 @@ def _urlopen(url, data=None, headers=None):
started = time.time()
reqid = uuid.uuid4()
- request = urllib2.Request(url, data=data, headers=headers or {})
+ request = urllib.Request(url, data=data, headers=headers or {})
request.add_header('X-Request-Timeout', str(tout))
request.add_header('X-Request-Id', str(reqid))
request.add_header('User-Agent', 'fetch_from_sandbox.py')
@@ -93,9 +93,9 @@ def _urlopen(url, data=None, headers=None):
retry_after = i
try:
request.add_header('X-Request-Duration', str(int(time.time() - started)))
- return urllib2.urlopen(request, timeout=tout).read()
+ return urllib.urlopen(request, timeout=tout).read()
- except urllib2.HTTPError as e:
+ except urllib.HTTPError as e:
logging.warning('failed to fetch URL %s with HTTP code %d: %s', url, e.code, e)
retry_after = int(e.headers.get('Retry-After', str(retry_after)))
@@ -204,7 +204,7 @@ def fetch(resource_id, custom_fetcher):
except subprocess.CalledProcessError as e:
logging.warning('failed to fetch resource %s with subprocess: %s', resource_id, e)
time.sleep(i)
- except urllib2.HTTPError as e:
+ except urllib.HTTPError as e:
logging.warning('failed to fetch resource %s with HTTP code %d: %s', resource_id, e.code, e)
if e.code not in TEMPORARY_ERROR_CODES:
exc_info = exc_info or sys.exc_info()
@@ -215,10 +215,7 @@ def fetch(resource_id, custom_fetcher):
time.sleep(i)
else:
if exc_info:
- if sys.version_info[0] == 2:
- raise exc_info[0], exc_info[1], exc_info[2]
- else:
- raise exc_info[1].with_traceback(exc_info[2])
+ raise exc_info[1].with_traceback(exc_info[2])
else:
raise Exception("No available protocol and/or server to fetch resource")
diff --git a/build/scripts/run_javac.py b/build/scripts/run_javac.py
index a3c91da13c7..a640d590889 100644
--- a/build/scripts/run_javac.py
+++ b/build/scripts/run_javac.py
@@ -74,6 +74,7 @@ def main():
p = subprocess.Popen(cmd, stderr=subprocess.PIPE)
_, err = p.communicate()
rc = p.wait()
+ err = err.decode()
if opts.remove_notes:
err = remove_notes(err)
diff --git a/build/scripts/with_kapt_args.py b/build/scripts/with_kapt_args.py
index cf66a0be2e2..fec95fc7cd9 100644
--- a/build/scripts/with_kapt_args.py
+++ b/build/scripts/with_kapt_args.py
@@ -45,10 +45,10 @@ def get_ap_options(ap_options):
logging.error("Expect key=value format at '" + ap_option + "' in KAPT_ANNOTATION_PROCESSOR_OPTIONS")
continue
- k = bytes(k) # UTF-8 supported
+ k = bytes(k.encode('UTF-8')) # UTF-8 supported
kvs += struct.pack(">H", len(k))
kvs += k
- v = bytes(v) # UTF-8 supported
+ v = bytes(v.encode('UTF-8')) # UTF-8 supported
kvs += struct.pack(">H", len(v))
kvs += v
diff --git a/build/ymake.core.conf b/build/ymake.core.conf
index 8d5b63f0039..f48c146537b 100644
--- a/build/ymake.core.conf
+++ b/build/ymake.core.conf
@@ -4885,7 +4885,7 @@ macro _RUN_ANTLR_BASE(IN{input}[], IN_NOPARSE{input}[], OUT{output}[], OUT_NOAUT
### changes resource_ids in such macros if newer resource of specified type is available. Note that the task seeks AUTOUPDATED in specific position,
### so you shall place it immediately after resource_id.
macro FROM_SANDBOX(Id, OUT{output}[], OUT_NOAUTO{output}[], OUTPUT_INCLUDES[], INDUCED_DEPS[], FILE?"--copy-to-dir":"--untar-to", AUTOUPDATED="", PREFIX=".", RENAME[], EXECUTABLE?"--executable":"", SBR="sbr:") {
- .CMD=${hide:SANDBOX_FAKEID} ${cwd:BINDIR} ${resource;pre=$SBR:Id} $YMAKE_PYTHON ${input:"build/scripts/fetch_from_sandbox.py"} --resource-file $(RESOURCE_ROOT)/sbr/$Id/resource --resource-id $Id $FILE $PREFIX ${pre=--rename :RENAME} $EXECUTABLE -- $OUT $OUT_NOAUTO ${hide;input:"build/scripts/fetch_from.py"} ${hide;output_include:OUTPUT_INCLUDES} $INDUCED_DEPS ${hide;output:OUT} ${hide;noauto;output:OUT_NOAUTO} ${hide;requirements:"network:full"} ${hide;kv:"p SB"} ${hide;kv:"pc yellow"} ${hide;kv:"show_out"}
+ .CMD=${hide:SANDBOX_FAKEID} ${cwd:BINDIR} ${resource;pre=$SBR:Id} $YMAKE_PYTHON3 ${input:"build/scripts/fetch_from_sandbox.py"} --resource-file $(RESOURCE_ROOT)/sbr/$Id/resource --resource-id $Id $FILE $PREFIX ${pre=--rename :RENAME} $EXECUTABLE -- $OUT $OUT_NOAUTO ${hide;input:"build/scripts/fetch_from.py"} ${hide;output_include:OUTPUT_INCLUDES} $INDUCED_DEPS ${hide;output:OUT} ${hide;noauto;output:OUT_NOAUTO} ${hide;requirements:"network:full"} ${hide;kv:"p SB"} ${hide;kv:"pc yellow"} ${hide;kv:"show_out"}
.STRUCT_CMD=yes
.SEM=from_sandboxes-ITEM && from_sandboxes-mode $FILE && from_sandboxes-resource_id $Id && from_sandboxes-renames $RENAME && from_sandboxes-outs $OUT $OUT_NOAUTO && from_sandboxes-reldir $PREFIX && from_sandboxes-executable $IF(${not;empty:EXECUTABLE} THEN true ELSE false) ${hide;output:OUT} ${hide;noauto;output:OUT_NOAUTO} ${resource;pre=$SBR:Id}
.STRUCT_SEM=yes