вторник, 28 мая 2019 г.

Если node-sass при установке из npm (npm install) не компилируется

Недавно столкнулся с глупой проблемой, которая есть в заголовке.
При этом она возникает с новой нодой, которая ставится свежие тулы Visual Studio, из-за чего данный пакет не хочет ставиться.

То имеет смысл проверить версию в package.json и желательно обновить его или поставить свежий node-sass через npm install -ddd node-sass. В моём случае там оказалась несвежая 4.9.0 которая не собиралась.

воскресенье, 26 мая 2019 г.

Scala + Jetty

Недавно попробовал собрать небольшой сервер на Scala  + Jetty (с AkkaHttp как-то было лень разбираться).

Оказалось, что в принципе, тут и писать по большому счёту не о чем, всё легко пишется и собирается, реально ****-**** и в продакшн.

Единственное что немного долго провозился с зависимостями, но в остальном всё легко (Scala Plugin  к IntelliJ IDEA тащит, остальное решается беганием по репозиториям Maven в поисках корректных версий).

Приведу выдержку из build.sbt, чтобы не потерять:
libraryDependencies += "javax.servlet" % "javax.servlet-api" % "3.1.0" % "provided"
libraryDependencies ++= Seq(
  "org.eclipse.jetty" % "jetty-servlet" % "9.3.12.v20160915",
  "org.eclipse.jetty" % "jetty-server" % "9.3.12.v20160915",
  "org.apache.httpcomponents" % "httpclient" % "4.5.8",
  "org.json4s" %% "json4s-native" % "3.6.5",
  "org.json4s" %% "json4s-jackson" % "3.6.5"
)
В остальном всё легко, достаточно в main написать небольшой Servlet и в main что-то вроде:
val server = new Server(8080)
val handler = new ServletHandler()
handler.addServletWithMapping(classOf[ResultServlet], "/")
server.setHandler(handler)
server.start()
server.join()

и всё сходу работает, без лишней возни.

четверг, 23 мая 2019 г.

Небольшой опыт с разработкой под Kotlin и Android 4

Недавно попробовал сделать нативное приложение по Android 4 на Kotlin.
В принципе, всё получилось и даже вышло скучнее чем ожидал. 95% времени заняло не ковыряние самого Kotlin - он-то оказался на редкость удобным и, по сравнению с разработкой на Java, - просто сверхскоростным. Производительность проца и памяти тоже не стала особой проблемой, как я ожидал (хотя приложение внутри юзало рекурсивный обход с отсечением, что довольно нагружало его).