#rust#code_analyzer#code_style#coding_standards#formatter#lexer#linter#parser#php#static_analysis#type_checker
Mago is a very fast tool for PHP that checks your code for errors, fixes many problems automatically, and formats it neatly. It is built using Rust, which makes it much faster and more reliable than many other PHP tools. Mago helps you find bugs, improve code quality, and keep your code clean and consistent with less effort. It also offers deep analysis to catch tricky issues and lets you see your code’s structure visually. This means you can write better PHP code faster and with more confidence. Installation is easy on macOS and Linux using a simple script or other methods like Homebrew or Composer.
https://github.com/carthage-software/mago
🚀 Вышел стабильный JavaScript движок от Google для Android
Новая стабильная библиотека Jetpack JavaScript Engine позволит разработчикам выполнять JS код в изолированной и ограниченной среде.
class MainActivity : ComponentActivity() {
// Теперь nullable, без lateinit
private var jsSandbox: JavaScriptSandbox? = null
private var jsIsolate: JavaScriptIsolate? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (!JavaScriptSandbox.isSupported()) {
Log.e("JS", "JavaScriptSandbox не поддерживается")
return
}
lifecycleScope.launch {
// Создаём и сохраняем в nullable-поле
jsSandbox = JavaScriptSandbox
.createConnectedInstanceAsync(applicationContext)
.await()
jsIsolate = jsSandbox?.createIsolate()
// При выполнении гарантируем, что jsIsolate != null
val result: String = jsIsolate
?.evaluateJavaScriptAsync(JS_SCRIPT_SCRING)
?.await()
?: "Ошибка: isolate не инициализирован"
Log.d("JS", "Результат выполнения: $result")
}
}
override fun onDestroy() {
super.onDestroy()
// Закрываем только если не null
jsIsolate?.close()
jsSandbox?.close()
}
}
#jetpack#js