なんかいろいろと書いてくブログ

関東のどこかで働く、一般人

Azure Communication Serviceでメール送信結果を取得

Azure Communication Service(ACS)の一部であるメール送信機能はAzure 側の設定さえすましてしまえば、 プログラムレベルではpacakgeが用意されている言語であれば簡単に メール送信を実現することができます その一方で、メール送信結果(例えば、メールアド…

Azure Communication Serviceのメール配信について

2023年4月にAzure Communication Service(ACS)がGAとなりました techcommunity.microsoft.com ACSはEmailをはじめとして、複数のコミュニケーションに必要なツールを統合したAPIを提供しています(SMS等) ACSはGAしてまだ時間がたっておらず(2023年6月時点)、…

【C#】Switch式(Switch Expression)のもろもろ

tags:[C#] C# 8.0から使用できるSwitvh 式(Switch Expression) Switch文(Switch Statement)とは明確に違っていてステートによるではなくパターンマッチングにを行う 正直、この辺読んでおけばこの記事を読む必要はない switch 式 - 'switch' 式を使ってパタ…

既存のAzure Functionsを Duable Functionに変更した(い)

ユーザー操作をトリガーとするユーザーに処理において処理を非同期にしてユーザーの待機時間する際に Queue Triggerを採用しているがQueue Trigger内で複数の処理が重なると主にリトライポリシーで課題が発生していた この問題を解決にするために、 Azure Fu…

【JetBrains】Intelij ターミナル文字化け対応

Intelij のコンソール出力で日本語が文字化けするので VMオプションを編集して対応 HELP > Edit CutumVM Options...で.vmoptionsを開いて 追記して、再起動 -Dfile.encoding=UTF-8 JetBrainsのほかのエディターも同様に対応する

WindowdsでInteliJの起動が遅い時の対処

WindowdsでInteliJを起動しようとすると 最初の起動時画面から動かないことが多々ある どうやら、Windowds Defenderの対象にスキャン対象になっていることが原因で、 除外設定にProject, Idea, gradle cache等の関連フォルダを設定すると改善するらしい plei…

Azure PiplineでReact NativeのAPKファイルをビルド

ReactNativeでAPKファイルのビルドと署名、Artifactの公開までやった Azure DevOps Library シークレットキー 主に署名に必要 Variable Group: LibrayGroup(任意のグループ) Variable Group内に以下を定義 KeyStorePassword: KeyStoreのパスワード ApkSigner…

Node 18, ERR_OSSL_EVP_UNSUPPORTED対応

CI/CDの一部として使用しているAzure piplines のビルドエージェントで使用しているnodeのバージョンが知らないうちにv16からv18になっており 下記のエラーによりNuxtプロジェクトのbuidに失敗していた node:internal/crypto/hash:71 this[kHandle] = new _H…

Vue test Utilsにかんするメモ(Vuetifyまわり)

Vuetifyを使用しているプロジェクトでvue-test-utilsを使用してテスト書くときのメモ Vuetify 2での話なので、Vuetify 3だとやり方が異なるかもしれない Jsetのsetup.ts内でVuetifyをVueに登録する import Vue from 'vue' import Vuetify from 'vuetify' Vue…

Durable Functions 'Multithreaded execution was detected.'

Azure Functionsの拡張機能であるDurable Functionは状態をもつことができ、 非常に便利であるがその特性上いくつかコード制約がある タイトルの'Multithreaded execution was detected.'もおそらく、 その規約にに引っかかかたものと思われる エラーは、オ…

【Vue】vue-test-utils でVDialogを置き換える

Vutifyを使用しているVueプロジェクトで vue-test-utils を用いてVueインスタンスをマウントする際に Vutifyで提供されている一部コンポーネントが正常に動かないことがままある v-dialogコンポーネントもその一つで、 マウントしたインスタンス内では表示さ…

Azure Functions URI に対するAAD認証の追加

AzureFunctionsの認証にはAttributeにAuthLevelを指定することによる認証が用意されている Azure Functions の HTTP トリガー | Microsoft Learn しかし、Getメソッドの場合URLにクエリパラメータとしてキーを保持しており認証として不安なので AzureADによ…

【C#】System.DateOnly と System.TimeOnlyについて

.NET 6 から新しく、System.DateOnly と System.TimeOnlyという構造体が追加された これらは DateTime の日付部分または時刻部分のみをもつ構造体とのことで 時間の差分を見るようなときに使いそうな気がするので調べてみた 公式ドキュメント System.DateOnl…

【Vue】VuetifyのなかにVuetifyが存在する時の影響

scriptタグで読み込んで使用するプロダクトにVuetifyを使用していると Vuetifyの中に別のVuetifyが存在するような状況が発生する このような特殊な条件下では、 特に対策をとらないと組み込んだVuetifyが外のVuetifyにかなり影響する 影響する要素 私が確認…

【JavaScript】Scrollが発生した要素を取得

DOM内でscrlloが発生した要素を取得するのに つまづいたので、メモ const el = document.body.getElementsByTagName('*') const array = [...el] array.forEach(x => { if(x.scrollTop > 0) { console.log(x) } }) body以下の全要素を取得して、 スプレッド…

【C# 11 Preview】Raw string literals

前回の記事の続き C# 11 Previewを触ってみようというはなし 今回は引用符等のエスケープが必要な文字リテラルについて 注意 この記事はC# 11 Previewに関する記事になります C# 11の仕様については今後変更される可能性があります Raw string literals "や …

【C# 11 Preview】Generic Attribute

前回の記事の続き C# 11 Previewを触ってみようというはなし 今回はVisual Studio 2022 17.1 からユーザ定義クラスGeneric Classで定義できるようになるらしい 注意 この記事はC# 11 Previewに関する記事になります C# 11の仕様については今後変更される可能…

【C# 11 Preview】リストパターン

前回の記事の続き C# 11 Previewを触ってみようというはなし 今回はVisual Studio 2022 17.1 から使えるリストパターンについての話 注意 この記事はC# 11 Previewに関する記事になります C# 11の仕様については今後変更される可能性があります リスト パタ…

【C#11 Preview】C#11 Previewを少しだけ触る

C#の開発者ブログでC#11の完成は近いという記載があった そいえば、.Net6見るのでいっぱいでC#11は全く追っていなかったので 何回かに分けてpreviewの機能をすこし触ってみる 今回の記事的の内容的には、中身はほとんどなく せいぜい、previewの導入くらいし…

【メモ】gRPCについて適当にまとめ

Azure App Serviceで、gRPCのサポートがPublic Previewになったらしく Azureにどっぷり使っている弊社でもgRPCに触れる機会が近づいている気がするので、 gRPCについてメモがてら適当にまとめる なので、この記事の精度には期待しない方がよい gRPC support …

【Nuxt】nuxt/contentのonly挙動について

概要 nuxt/content の only関数がローカル環境とデプロイした環境で挙動が違ったという話 content.nuxtjs.org 背景 プロダクトの一部にnuxt/contentを使ってマークダウンで作成した記事を表示するみたいな機能を作成したのだが ローカル環境では正常に表示さ…

【C#】 VerifyTestsによるスナップショットテスト

C#

C#で構築した API で単体テストを書く際に MSTest を利用して書くことが多い 単純に Assert すると検証項目が多い場合はコードが冗長かつ、 メンテのコストが高くつく これを回避するためにVerifyTestsを利用をして、 スナップショットテストを書いた 参考文…

【Gradle】JAVA_HOME is set to an invalid directory

Kotlin で構成するプロジェクトでGradleを使用としたところ下記エラーで失敗 ERROR: JAVA_HOME is set to an invalid directory: /usr/lib/jvm/java-11-openjdk-amd64/bin/java Please set the JAVA_HOME variable in your environment to match the locatio…

【C#】Regexクラスの RegexOptions.Compiled

Regexクラスの仕様 docs.microsoft.com 今回の話 docs.microsoft.com 既定では、正規表現エンジンは、内部命令のシーケンス (Microsoft 中間言語 (MSIL) とは異なる高度なコード) に正規表現をコンパイルします。 エンジンは、正規表現を実行するときに内部…

【Nuxt】propsの型の曖昧さについて

初めに 本業で、携わっているサービスはフロントをNuxt × TypeScriptで書いていたのですが、 直近でReactに乗せ換える話が出てきました 乗せ換え作業はおそらく私がほぼ一人で進めることになると思っているのですが、 その際に、なぜReact化する化をCTO含め…

【Nuxt】Nuxt × TS環境にJest × TSを導入するためのあれこれ

初めに 私が仕事で開発しているプロダクトではフロントが Nuxt(× TypeScript)で, サーバー側が C#の JamStack で開発をしています 基本的にはロジックはサーバー側に集約しておりフロントはいわゆる JSON 色付け係状態で、 サーバー側がテストをしっかり書い…

【Go】sql-migrateに関するメモ

Go

C#ではVidualStudioのデザイナーでTable定義を変えることが多く、 migrationをあまりしたことがなかった。 そのため。現在お仕事させて頂いているGoの案件では 全くわからん状態だったので、覚書として記事にする sql-migrate Goのマイグレーションライブラ…

【Pandoc】マークダウンをdocxファイルに変換する方法

今月のおもな作業が仕様書を作成なのだが、 SharePoint に置かれた Word ファイルをみんなで編集しましょうという なかなかの苦行だった そもそも、Word の使い勝手が悪すぎる 世間には マークダウン で書いて docx ファイルを出力する Pandoc なるものがあ…

【C#】PriorityQueue

C#

先日書いた DateOny、TimeOnly と同様に .NEt 6から新規追加されたクラスとして PriorityQueue<TElement,TPriority>が実装されました 直訳すると優先度付きキュー 引数として、TPriority が存在しており、 キューの優先度を設定できるようになっています 公式ドキュメント https:</telement,tpriority>…

【C#】System.DateOnly と System.TimeOnly

C#

.NET 6 から新しく、System.DateOnly と System.TimeOnlyという構造体が追加された これらは DateTime の日付部分と時刻部分のみをもつ構造体とのこと 公式ドキュメント System.DateOnly DateOnly 構造体 https://docs.microsoft.com/ja-jp/dotnet/api/syste…