-rw-r--r-- 2.1K 20 сент. 2024 · 7339962 · ~1 мин

Забавный момент в macOS Sequoia с функцией iPhone Mirroring

macOS iPhone Mirroring

Одной из новых функций macOS Sequoia является iPhone Mirroring. Вы можете подключиться к своему iPhone, видеть его экран и управлять им.

На моем Mac приложения хранятся в двух папках: одна находится в пользовательской папке ~/Applications, вторая — в системной папке приложений /Applications.

Однажды я создал фильтр поиска в Finder и сохранил его, чтобы все доступные приложения были в одном месте, а также добавил его в боковую панель в раздел «Избранное».

Поиск в Finder

Но мне также нравится иметь ярлык в Dock. Поэтому я добавил сетку и туда. Все работало так, как я ожидал, пока я не обновился до macOS Sequoia и однажды не попробовал приложение iPhone Mirroring. Теперь в этой сетке отображаются некоторые приложения и с моего iPhone тоже:

Apps list

Интересно то, что приложения с моего iPhone отображаются только в ярлыке-сетке в Dock, но не в поиске Finder.

И вот здесь начинается самое смешное — вот это появится, если попытаеться запустить приложение с iPhone:

macOS error

macOS 18.0 или новее? Серьезно? Интересно, не является ли это какой-то функцией, запланированной для будущего обновления macOS. Посмотрим :)

[↵] открыть пост funny-thing-in-macos-sequoia-with-iphone-mirroring.md
-rw-r--r-- 1.4K 27 мая 2024 · D7B1A59 · ~1 мин

AppMetric 1.12.0

macos приложения appmetric appmetrica

AppMetric 1.12.0

Вышло обновление для AppMetric, версия 1.12.0. Допиливал его в свободное время. Из нового в последних версиях:

  • Ревьюверам Apple почему-то не нравится теперь OAuth-авторизация через Safari, пришлось переделать через встроенное окно с WKWebView. Надеюсь, в следующем SwiftUI наконец-то появится свой WebView, и больше не придется использовать обертку.
  • Добавил кнопку для быстрого перехода на статистику приложения на сайте Appmetrica.
  • Добавил просмотр статистики в виде графиков - как каждого показателя, так и всех показателей вместе. Всего спустя 7 лет после того, как один из пользователей попросил добавить графики :)
  • Добавил перевод интерфейса на несколько языков. Благо, с помощью ИИ это сделать теперь совсем просто.

Загрузить

[↵] открыть пост appmetric-1-12-0.md
-rw-r--r-- 2.9K 24 мая 2024 · 36FC52C · ~2 мин

Обновление документации с помощью ИИ

documentation ai developer tools copilot gemini

Обновление документации с помощью ИИ

Недавно я занимался обновлением документации для библиотеки CouchdbClient. Помучившись с некоторыми фразами, я решил попробовать использовать ИИ, чтобы он сделал это за меня. У Microsoft есть Copilot как часть поиска Bing в браузере Edge.

[↵] открыть пост revamping-documentation-with-ai.md
-rw-r--r-- 643B 23 апр. 2024 · A5D21D8 · ~1 мин

AppMetric 1.9

macos приложения appmetric appmetrica

AppMetric 1.9

Обновил AppMetric для macOS - клиент для сервиса AppMetrica от Яндекса.

  • Исправлена ошибка, когда при выборе сегодняшней даты она не обновлялась при смене дня.
  • Добавлено форматирование цифр показателей (в зависимости от языка и региона в системе).
  • Небольшие исправления.

Загрузить

[↵] открыть пост appmetric-1-9.md
-rw-r--r-- 2.1K 11 апр. 2024 · FC685FE · ~1 мин

Создание DMG файла в терминале

dmg code snippets шпаргалки bash

Создание DMG-файла через Терминал

Вам когда-нибудь нужно было упаковать ваше приложение для распространения на macOS? Решение проще, чем вы думаете, и оно прямо у вас под рукой в Терминале. Недавно я наткнулся на удобную bash-функцию, которая упрощает создание DMG (Disk Image) файла. Вот как её настроить:

Шаг 1: Редактирование профиля

nano ~/.zprofile

Шаг 2: Добавление bash-функции

Затем вставьте следующую функцию в ваш .zprofile. Этот скрипт использует встроенную в macOS команду hdiutil для создания файловой системы HFS+ внутри DMG-файла.

dmg(){
    hdiutil create -fs HFS+ -srcfolder "$1" -volname "$2" "$2.dmg"
}

Шаг 3: Сохранение и применение изменений в профиле

После добавления кода сохраните изменения и выйдите из `nano`. Чтобы функция стала доступна немедленно без перезапуска терминала, примените конфигурацию вашего профиля:

source ~/.zprofile

Шаг 4: Использование функции

Теперь вы можете легко создавать DMG-файл для любой папки или приложения. Например, чтобы создать DMG для 'ModulbankInformer.app', просто выполните:

dmg ModulbankInformer.app ModulbankInformer

Эта команда создаст файл ModulbankInformer.dmg с содержимым директории ModulbankInformer.app.

Вот и всё — быстрый и эффективный способ создания DMG-файлов прямо из вашего Терминала!

[↵] открыть пост creating-a-dmg-file-from-terminal.md
-rw-r--r-- 2.0K 8 апр. 2024 · BA68FE9 · ~1 мин

Swift клиент для CouchDB 1.5.0

swift couchdb swift package vapor open source

Клиент Swift для CouchDB 1.5.0

И вот, ещё одна новая версия библиотеки CouchDB client. После недавнего поста про версию 1.4.0, в Swift on Server вышла новая версия async-http-client, которая включает новую реализацию синглтона клиента. Теперь это HTTPClient.shared, поэтому я обновил библиотеку CouchDB, чтобы адаптировать её к этому изменению. Это также означает, что вам больше не нужно вызывать httpClient.syncShutdown(), если используется синглтон. Кроме того, они подняли минимальную версию Swift до 5.8 (что я также сделал в версии 1.4.0 клиента для CouchDB). Так что я продолжаю поддерживать библиотеку в актуальном состоянии.

Список изменений:

  • Обновил минимальную версию async-http-client до новой 1.21.0. Если вы не можете использовать её в своем проекте, вы всё еще можете оставаться на версии 1.4.0.
  • Теперь библиотека будет внутри использовать HTTPClient.shared (новое в async-http-client 1.21.0) для запросов, если не предоставлен EventLoopGroup.
  • Больше нет внутренних вызовов httpClient.syncShutdown() при использовании HTTPClient.shared.

CouchDB Client на GitHub | Документация с примерами и руководствами.

[↵] открыть пост swift-couchdb-client-1-5-0.md
-rw-r--r-- 1.7K 8 апр. 2024 · 08DA6BF · ~1 мин

Swift клиент для CouchDB 1.4.0

swift couchdb swift package vapor open source

Swift CouchDB client

Вышла новая версия CouchDB Client:

  • Библиотека перешла с HTTPClient.Response на HTTPClientResponse, что похоже на HTTPClient.Response, но предназначено для Swift Concurrency API. Также был выполнен переход с HTTPClient.Body на HTTPClientRequest.Body. Эти изменения влияют на методы get и find. Старые методы помечены как устаревшие (deprecated), для миграции смотрите документацию для получения информации об обновленных методах.
  • Минимальная версия Swift теперь 5.8.
  • Протокол CouchDBRepresentable теперь помечен как Codable.
  • Кроме того, была добавлена новая модель данных под названием RowsResponse. Она принимает обобщённый тип CouchDBRepresentable, что упрощает получение строк из базы данных. Например:
    let decodeResponse = try JSONDecoder().decode(RowsResponse<MyApp>.self, from: data)
  • Наконец, внесены небольшие улучшения в документацию и обучающие примеры.

CouchDB Client на GitHub | Документация с примерами и руководствами.

[↵] открыть пост swift-couchdb-client-1-4-0.md
makoni@arm1:~/blog$ cd ../page-4/ // ← предыдущая cd ./page-6/ // ещё посты →