1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

いいね、ストック、ブラウザバック、悪質なスパムコメントが励みになりまくります。特にストックは再編集の更新頻度上がるのでおすすめです。

nuget Packageはとても簡単に作成出来るのだが、地味に厄介な問題が幾つかある

Visual Studio 2022を前提とする。

参考URL

NuGetパッケージを作成する。Visual Studioで。

単純にテスト的なものをUploadするだけなら上記の記事で良い。
当記事は基本的にこの補足である。
別に何も拘りがなければ上記記事のままで全然全く何の問題もない。そんなわけないだろFuck

Microsoftのアカウント上からもUpload出来る

image.png

ほぼコマンドラインのものと同じ。

APIキーの作成について

分かり次第追記(編集回数はいいね数以下です。ストックで確率があがります)

Golab Pattern(glob パターン)について

APIキーがアクセスできるパッケージを指定するためのパターン

追加したことがあるものはリストに表示される。
特定のパッケージのみを対象にする場合はそのパッケージ名を追加する
指定例
image.png

*を指定すると全てのパッケージが対象になる。
→ 含めたくないものもあるので あまりお勧めしません

Project内で参照されるREADME.mdの場所

C:\Projectフォルダ\プロジェクト名\プロジェクト名
直下である。例:C:\TestCode\SinWaveSample\SinWaveSample
image.png

裏付けをとるのにこんな文言を入れてみた。
image.png

7zipのUIから中身を確認できる。
女性は皆羊が追加されている
image.png

Readmeを含める事ができないとPowershell等のTerminalで警告が出る。
Licenseも含める必要がある 別になくてもいいんだけど

Readme.mdに画像を表示させるには

MarkDownはQiita等と同じなので覚えておくか控えておくなどする
![image.png](画像のURL)

問題はMicrosoftは表示できる画像サーバーを制限しており、以下のURLにListがある

Licenseがない

警告: License missing. See how to include a license within the package: https://aka.ms/nuget/authoring-best-practices#licensing.

Visual StudioでLisense入れる。
面倒ならMITにしておけばいいだろう。

Package License(パッケージ ライセンス)

SPDXライセンス式と埋め込みファイルがあるのだが、Visual Studioで指定するSPDXライセンス式が難物で特定の識別名しか受け付けない

SPDX lisense式
https://spdx.org/licenses/

上記URLのIdentifierが識別子となる
image.png

Apache License 2.0 なら  Apache-2.0

image.png

その他諸々の項目はprojectの右クリック→プロパティで表示

アセンブリ名なども変えておくと良い

README.mdに改行が反映されない

NuGet Markdown Readme.md line breaks not rendering

改行を2つずつ入れればよい。

MarkDownの例

# MakizunoUI.MakizunoSpellChecker

"巻き角スペルチェッカー"


SpellChecker for WPF TextBox and ComboBox
This library performs word-by-word spell checking based on a user dictionary loaded from a JSON file.


このライブラリは、Jsonファイルから読み込んだユーザー辞書を元に、単語単位でスペルチェックを行います。    



# manual


https://github.com/Sheephuman/MakizunoUI.SpellCheckerDemo


email: shin.citysheep@gmail.com
twitter: https://x.com/sheephuman

表示は以下のようになる。

image.png

一度アップロードしたReadme.mdの再編集は出来ないようなので要注意。新しいVersionと共に追加するしかないfucking堅牢な仕様です。

注意点

一度Microsoftアカウントにアップロードしたnugetパッケージは削除できない。

非表示にすることでNuget Packageに表示させないように出来るが、引き続きコマンドでインストール出来てしまう。

既存のVersionに上書きすることはできない

→ いちいちVersionを変える必要がある
 → 1.0.0 > 1.0.0.1 は通る
1.0.0.0.1などはダメ。

Visual Studioで設定した例。.csprojファイルを編集してもいいんだが、こちらの方が変更が一か所で済む。
image.png
注:Versionは1.0.0.1 まで。

既に存在する場合は

編集リクエスト不可(笑)
応答の状態コードは成功を示していません:
409 (A package with ID 'MK1.MakizunoSpellChecker' and version '1.0.0.1' 
already exists and cannot be modified.)。  

と表示される。

難読化ソフトで難読化したDllを含める事ができない

回避方法は以下で

徹夜で捻りだしたので感謝して拝聴すべし

あとがき

Fucccccccccccck!!!!!
Fucking AS!
このクソを断固として拒否する!

このようにして便利なNuget Packageを公開し、皆さんに使ってもらうことができますああもうマジでクソ
いいね3以下だったらマジで消す Mother Fucker

唯一マシだったのは別にDLL出力じゃなくても作成出来ること。

まさにFuckinだったけど何とか作ったNuget Package

自作の難読化済みSplellChecker。まあまあ便利なので使ってみてほしい。そのうち色々と追加するので

1
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?