メイン コンテンツにジャンプします

2021

v4.0

  • 2022/01/05~11
    • テンプレート モジュールをリファクタリングします。

    • ウォームアップ性能を最適化します。

    • 重要なメンバーのコメントプロンプトを追加します。

    • Using スプライス ロジックを最適化します。

  • 2022/01/01~05
    • リファクタモジュールを再構成する.

    • セマンティック フィルタリング モジュールを再構成します。

    • ログ モジュールをリファクタリングします。

    • 構文モジュールをリファクタリングします。

    • いくつかの拡張メソッドを追加します。

    • コンパイルモジュールをリファクタリングします。

    • ドメイン コンテキストをリファクタリングします。

    • プラグイン管理のリファクタリング、 LoadBehaviorEnum の列挙を追加して、ユーザーがドメインを選択してプラグインを読み込む動作を行います。

    • リファクタリング参照管理は、 LoadBehaviorEnum 列挙を使用して、開発者が異なるドメイン参照コレクションのマージ ポリシーを決定できるようにします。

  • 2021/12/28
    • 組み込みのセマンティック フィルタのリファクタリングを最適化します。

    • 再構成CS0104セマンティック拡張を最適化します。

  • 2021/12/27
    • グローバル Using の取得方法を最適化します。

    • NatashaOperator 静的操作クラスを追加, 追加の操作クラスをすばやく作成し、ドメイン コンテキストで使用できます。

    • InitializeAndPreheating 预热方法支持 func<string,bool> 参数, 以便开发者排除无用的引用加载.

  • 2021/12/22
    • 分離各ランタイムに対応する Microsoft.Extensions.DependencyModel バージョン.

    • DotNetCore.SourceLink.Environment から 3.1.0 リリースへのアップグレード。

    • Natasha コンパイル ユニットは、DisableSemanticCheck/EnableSemanticCheck メソッドを追加して、開発者がセマンティック処理を有効にするかどうかを選択できるようにし、オフにするとパフォーマンスが向上します。

    • シールド CS0219 エラー。

  • 2021/12/03
    • XML コメント コンパイルのバグを修正し、XML コメント ファイルの生成をサポートします。

    • Natasha コンパイル ユニットは、SetDllFilePath/SetPdbFilePath/SetXmlFilePath メソッドを追加し、開発者は必要に応じてファイルを作成できます。

    • Natasha コンパイル ユニットは AssemblyBuildKind 列挙体を削除し、出力ファイルをコンパイルすると開発者によって制御されます。

    • Natasha コンパイル ユニットの null 参照可能スイッチはデフォルトでオフになり、手動文字列コンパイルのシナリオで手動でオンにすることをお勧めします。

  • 2021/11/26
    • プラグインの読み込み方法を最適化し、"ブラックリスト" 依存を追加し、プラグイン依存の読み込みを制御します。
  • 2021/11/16
    • UT テストを改良し、デリゲート エージェントを追加して、null 参照配信の失敗を解決しようとします。

    • 部分 API のリフレクション ロジックを調整します。

  • 2021/11/15
    • コンパイラは、空の参照オプションスイッチを追加し、AssemblyCSharpBuilder 拡張メソッド EnableNullableCompile/DisableNullableCompile を追加します。

    • 空の参照テンプレートを増やします。

  • 2021/11/12
    • 移植 . NET6.0 空き型メンバー リフレクション API から NETCOREAPP3.1 および NET5.0 ランタイム.

    • 複雑な null 参照可能な UT テストを追加します。

    • メンバー null 許容型の反転を増やし、イベント/フィールド/プロパティ/パラメーターを逆アッペアにします。

  • 2021/11/10
    • null 可能な参照をオンにし、Natasha をリファクタリングし、例外処理ロジックの一部をオーバーライドします。

    • DotNetCore.Compile.Environmentと Natasha の依存関係 DotNetCore.SourceLink.Environment をアップグレードします。

    • Natasha の msbuild ビルド項目を変更します。

    • 依存関係とターゲット フレームワークをアップグレードして、 を増やします。 NET6.0 サポート.

    • C#10 構文のサポートを増やすために依存関係をアップグレードします。

  • 2021/11/09
    • プロジェクトは、core3.1 の次のバージョンのサポートを削除します。

    • 初期化のウォームアップを加速する.

    • アップグレード Microsoft.Extensions.DependencyModel バージョン 6.0.

    • core3.1 互換性のある SkipLocalsInitAttribute プロパティ.

    • Natasha C# コンパイラは、 Microsoft.Extensions.DependencyModel 6.0 リリースと互換性を持つ SupportSkipLocalInit メソッドを追加し、あいまいな参照の問題を引き起こしました。

    • コンパイラ テンプレートの追加 Api : ConfigComplier を使用すると、開発者はコンパイラを構成できます。

    • コンパイラ テンプレートの変更 Api : ConfigCompilation を使用すると、開発者はコンパイラ オプションを構成できます。

    • コンパイル バインド ID を更新します。

v3.6.0.0

  • 2021/11/08
    • 不要なコードの一部を削除し、プロジェクトをマージします。

    • プロジェクトは、core3.1 の次のバージョンのサポートを削除します。

    • 初期化のウォームアップを加速する.

    • プラグインの読み込みメソッドのパラメーターを増やし、完全な依存関係参照を読み込むかどうかをユーザーが選択することをサポートします。 このパラメーターは、プラグインが非プライマリ ドメインに読み込まれるときに、インターフェイスと抽象クラスがプライマリ ドメインで定義されているかどうかを影響します。

    • 構文ツリー フォーマッタ API を交換します。

    • 成功ログを動的に記録する方法をサポートし、デフォルトでは記録されません, NDelegate/Nxx/. RandomDomain(item=>item. Disable/EnableSucceedLog()).

    • ログディレクトリを /log/ から /NatashaLogs/ に置き換えます。

v3.5.0.0

  • 2021/09/07
    • ソース コードは、DEBUG モードで時間のかかるエコーを増やします。

    • ウォームアップ関数で初期化を参照するバグを修正しました。

    • 最新バージョンは Achive31 ブランチにアーカイブされています。

v3.4.0.0

  • 2021/08/16
    • DomainManagement 最適化初期化例外プロンプト.

    • 逆解器は、空のパラダイムタイプの逆解を修正します。

    • プロジェクトは Achive31 ブランチにアーカイブされ、将来のバージョンは core3.1 リリースから互換性があります。

v3.1.0.0

  • 2021/07/14
    • 復元は、standard2.0 および core2.0 を超える各バージョンをサポートします。

    • DomainBaseクラスのプラグイン参照管理スキームを最適化し、さらに参照管理を統一し、不要な外部暴露方法を削除します。

    • NatashaAssemblyDomain の実装を最適化し、core3.0- バージョンの依存関係逆解を追加し、プラグインの動作を類似点と同じにします。

      • core3.0 – json ファイルを解析し、アセンブリを読み込む, サポート プラグインは、ファイルのバージョンの上書きに依存しています, プラグイン本体のアップグレード.

      • core3.0 - 同じディレクトリ内の dll のみをスキャンし、アセンブリを読み込み、プラグイン依存をアップグレードすることはできません。

    • コンパイル プロセスとイベント呼び出しを最適化します。

    • 最適化 名前空間逆解プロセス, マスク ExportedTypes はエクスポートできず、例外をスローします。

    • 最適化 テンプレート クラス API の名前付けと分類、Set と Append 操作の区別。

    • 名前付きコントロールコンテンツ追加テンプレートを追加し、開発者が同じ名前空間にコードを追加できます。

    • Record データ型の構文ノードによって自動的に取得される API を増やします。

    • 基になるクラスのフィールドとイベントの名前を変更します。

    • Natasha.CSharp.Extension.InvisibleInstance 拡張は、CS0103 エラーを基準として呼び出しチェーンを補完します。


v3.0.0.0

  • 2021/06/25
    • エンジンのリファクタリング、セマンティック分析 API の追加、ユーザーがセマンティック解析拡張機能を記述できる、強力なセマンティック アナライザーのおかげで、コンパイル エンジンをアップグレードおよびリファクタリングしました。

    • 内蔵のCS0246/CS0234セマンティック解析プロセッサ。

    • Natasha.CSharp.Extension.Ambiguity 拡張パッケージに CS0104 処理を削除すると、二義的参照が一般的な問題になるべきではないと考えています。

    • 新しい CS8019 無駄な using 処理, シンビルド コード, オンデマンド参照用のスクリプトの using の処理後,必要な using スクリプトが自動的にレンダリングする using.

    • NDelegate アクション クラスの配信ドメインを配信コンパイラに変更し、AddUsing API を追加しますが、使用できない場合があります。

    • standard 2.0 サポートを削除し、netcoreapp2.0/2.1/2.2 の特定のバージョンでサポートします。

    • オープン netcore2.1/2.2 バージョンは、readonly / ref 構造体の逆解サポートを提供します。

    • Natasha.CSharp.Extension.InvisibleInstance 拡張パッケージをリリースし、スクリプト内のメソッドの最初の引数の参照呼び出しを削除します。 Show は Show と直接書くことができます。


v2.1.0.0

  • 2021/05/09
    • エンジンを最適化し、コンパイル プロセスを合理化し、使用頻度の低いイベントを削除します。

    • ドメインの増加 AddReferenceFrom[Type/Type<T>/Assembly] 3 参照 API を追加します。

    • 逆解は、拡張メソッドを増やします。

      • GetDevelopNameWithoutFlag 取得フラグなし型名 : System.Collections.Generic.List<>
      • GetDevelopName 取得フルタイプ名 : System.Collections.Generic.List<T>
      • GetRuntimeName ランタイム クラス名を取得 : list <int>
    • 厳密な名前のコンパイルを増やします。

    • ファイル構造と補助クラスの命名を指定します。