Valaはオープンソースのフリーでモダンなプログラミング言語であり、GNOME開発者に新しいプログラミング機能をもたらすオフセットから設計されたソフトウェアプロジェクトです。 GNOME開発者が驚異的なアプリケーションを作成することを可能にするGObject型システムのコンパイラです。
機能の概要
主な機能には、インターフェイス、プロパティ、シグナル、foreach、ラムダ式、ローカル変数の型推論、ジェネリック、非ヌル型、補助メモリ管理、例外処理、型モジュールa.k.a. pluginsなどがあります。
複雑なオブジェクト指向コードを簡単に書く
Valaコンパイラを使用すると、開発者は複雑なオブジェクト指向のコードを簡単に作成し、メモリ要件を低く抑えながら、標準のC ABIとAPIを維持できます。
既存のCライブラリへのアクセスを許可する
プロジェクトは、ランタイムバインディングを必要とせずに、既存のCライブラリ、特にGObjectベースのライブラリにアクセスできるように設計されています。
それはGTK +とGNOMEに最適です
Valaは、コマンドラインコンパイラとプログラミング言語です。 GTK +とGNOMEを扱う開発者は、Valaを使ってコードを書いてコンパイルすることができます。
C ++、C、C#、Python、D、Javaの影響を受けます
Valaプログラミング言語は、広く知られているC、C ++、D、Python、C#、Javaプログラミング言語の影響を受けています。他のオペレーティングシステムに簡単に移植できるクロスプラットフォームのソフトウェアです。
これは、幅広いIDEプログラムによってサポートされています
Anjuta、Valencia、Geany、Emacs、MonoDevelop、NetBeans、Val(a)IDE、Sublime Text、Vim、GeditのVala Toys、EuclideなどのさまざまなIDE開発環境との互換性があります。 RedCar、TextMate、Valamaなどがあります。
可用性とサポートされるアーキテクチャ
Valaはソースアーカイブとしてのみ配布されています。つまり、ユーザーはインストール前にコードを構成してコンパイルする必要があります。もちろん、デフォルトのソフトウェアリポジトリからGNU / Linuxディストリビューションに簡単にインストールすることもできます。この時点では、32ビットと64ビットの両方のアーキテクチャがサポートされています。
このリリースの新機能:
さまざまなバグ修正:
codegen:ジェネリック型[#655]に渡されたオブジェクトのref_sinkを呼び出します。
codegen:GDBusMethodInvocationで返された後のフリーエラー[#657]
girparser:実際に型引数を解決し、必要に応じてボックスに入れることができるようにする
vala:ライブラリのバージョンを取得して確認するためのconst /メソッドを追加する[#304]
バインディング:
glib-2.0:Array.remove *()ラッパーを追加して汎用エレメントが漏れないようにする
glib-2.0:add(u)long.parse / try_parse()[#649]
gstreamer:1.15 + git masterからのアップデート
gtk + -3.0:3.23.2 + 6b6e53fdに更新
gtk + -4.0:3.94.0 + 4e868584に更新
バージョン0.40.7の新機能:
さまざまな改善とバグ修正:
bugtrackerのリンクをhttps://gitlab.gnome.org/GNOME/vala/issuesに更新します
codegen:
フィールドのdelegate_target属性を処理する[#520]
glibコレクションの一般的な要素を解放する[#694765]
g_source_new()のsource_funcsパラメータの警告を修正しました。
実際にGLib.Sourceをコンパクトクラスとして扱う
GLib.Sourceのカスタム抽象メソッドは別々に扱われます[#641]
デリゲートターゲットに一貫してgpointerを使用する
デリゲート型チェックパターンを統一する
インタフェースを登録するときにbase_initの代わりにdefault_initを使用する[#699550]
girparser:boolのサポートを追加するdelegate_target [#520]
girwriter:
出力deprecated = "1"
構造体のみのプロパティにはsetterメソッドがありません
カスタム属性を書き込まない[#608]
valadoc:Stacked ArrayのTreeBuilder.create_array()を修正しました。
バインディング:
glib-2.0:
シンプル型のout-parametersをnullableとしてマークしない[#634]
Source.attach()にデフォルトでデフォルトのMainContextを使用させる
Bytes.slice()をメモリ効率の良いBytes.from_bytes()を使用する[#638]
Fix Bytes.with_free_func()
gio-2.0:
ActionEntry.parameter_type / stateフィールドをnullableとしてマークする[#632]
DBus * VTableのデリゲートフィールドには暗黙のターゲットフィールドがありません
ActionEntryコールバックにdelegate_target = falseを適用して弱くする[#630]
すべてのio_priorityパラメータにデフォルトを追加する
gstreamer:チェリーは0.42からいくつかの修正を選び、gst-editing-services-1.0を追加する
gtk + -3.0:3.22.30 + 9ac7f906に更新
gtk + -4.0:3.93.0 + 29fee2e8に更新
webkit2gtk-4.0:2.21.4へのアップデート
GIRベースのバインディングを更新する
バージョンの新機能:
さまざまなバグ修正:
実際のNULLでない構造体パラメータを使用した連鎖回帰の修正[#791785]
[#712694]、parse_file()のカスタム呼び出しを保持したままにした後、CodeContextへの参照を解放する[#791936]
パーサ:スイッチのcase文でコンマ区切りのリストを受け入れる[#614015]
バインディング:
数年間上流に出荷されているバインディングを削除する
gedit 3 [#776021]、libgnome-keyring [#776022]、
gtksourceview-3.0 [#776023]、libgdata [#776024]、librsvg-2.0 [#776025]
glib-2.0:GLib.OPTION_REMAININGとGLib.OptionFlags.NONEを追加する
gstreamer-1.0:1.13 + git masterからのアップデート
gtk + -2.0:MessageDialogコンストラクタパラメータmessage_formatをnullableとしてマークする[#791570]
gtk + -4.0:3.93.0 + 6aeae2c8に更新
webkit2gtk-4.0:2.19.3へのアップデート
バージョン0.39.1の新機能:
ハイライトproperty-typeがGLib.Objectと互換性がない場合の警告を報告する[#693932]
signal.connect()に互換性のあるデリゲートを渡すことを許可する[#787521]
可能であれば範囲外のenum値を許可する
[#789071] ValueTypeにを返すいくつかの呼び出し可能オブジェクトの一時-varの使用を避け、/ refのパラメータにアクセスするには
読みやすいように、再フォーマットによってソース宣言と定義が生成される[#688447]
さまざまなバグ修正:
array_length_cexprを使用して戻り値の固定配列をサポートする[#784691]
vala interpeter-modeの引数を適切に解析する[#663070]
GTypeを使用して構造体に名前の長さ> = 3を適用する[#764041]
囲みタイプに型パラメータがないとエラーを報告する[#587905]
メソッドのブール型「use_inplace」ccode属性を追加する[#750840]
所有されていない/所有されているキーワードの処理を改善する
ターゲットデリゲートがスローした場合、メソッドは互換性のあるエラーをスローする必要があります
インスタンスへの無効なメンバーアクセスを検出する[#790903]
不一致のオーバーライドメソッドのエラー出力を改善する
ヴァラドック
構造体内の可能なプロパティを確認する[#784705]
GtkdocRenderer.visit_symbol_link()の致命的な誤植を修正する[#790266]
バインディング:
glib-2.0:(u)int16 /(u)から(u)の短い形式のint-type / marshaller-typeを使用する[#693932]
glib-2.0:オプションの 'unparsed'パラメータを* .try_parse()に追加する[#774124]
gobject-2.0:不足しているシンボルを追加する
gstreamer-1.0:GST_TIME_ARGS、GST_STIME_ARGSマクロをバインドする[#750840]
gstreamer-1.0:バインドGST_DEBUG_BIN_TO_DOT_FILE / * _ WITH_TS [#785215]
gstreamer-1.0:1.13 + git masterからのアップデート
gtk + -3.0:3.22.26 + 9ce824d3への更新
gtk + -4.0:Gsk.RenderNodeを複数のクラスに分割する
gtk + -4.0:3.93.0 + 2d797dd8に更新
webkit2gtk-4.0:2.19.2へのアップデート
バージョン0.38.3の新機能:
さまざまなバグ修正:
codegen: "array_null_terminated = true"より "array_length = true"の優先順位を付けます。[#788775]
codegen:内部プロパティ/シグナル定義との競合を避ける[#788964]
バインディング:
gio-2.0:g_task_get_source_objectをTask.get_unowned_source_objectとして公開する
gstreamer-1.0:1.13 + git masterからのアップデート
gtk + -4.0:3.92.1に更新
libxml-2.0:DTDメソッドを追加する[#789442]
バージョン0.38.2の新機能:
さまざまなバインディングの更新:
gstreamer-1.0、gtk + -3.0、gtk + -4.0:git masterからの更新
gnutls:証明書のfree_function ccode属性を修正する[#788181]
バージョン0.38.1の新機能:
さまざまなバグ修正:
valadoc:変数名に 'stderr'を使用しない[#787305]
codegen:プロパティのより一意の内部定義を使用しようとする[#787436]
vala:使用された属性のリストを更新する
メソッド:戻り型のミスマッチのエラー報告にprototype-stringを使用する
バインディング:
glib-2.0:MainContext.check()、OptionEntry []を修正すると、paramsはnullで終了し、g_convert_with_fallback()およびg_convert_with_iconv()
バージョン0.37.1の新機能:
ハイライト:
installed_versionが古い場合、廃止予定のシンボルについて警告しない
--gresourcesdirオプションを追加する[#783133]
さまざまなバグ修正:
gdbus:デシリアライズ時にネストされたHashTableをリークしない[#782719]
最終的にブロックを非同期処理で修正する[#741929]
式を結合する際にnull以外を処理する[#611223]
タスクの完了フラグを< 2.44より似て> 2.44 [#783543]
Nullable ValueTypeにはPOINTERがマーシャル署名として必要です。[#783897]
NoAccessorMethod属性はgobject-propertiesにのみ使用できます
girparser:ターゲットなしのデリゲートエイリアスの解析を修正しました
コンパイラ:PACKAGE_SUFFIXを削除する代わりにAPI_VERSIONを使用する
girwriter:rank>の配列の長さパラメータを書いてください。 1 [#758019]
バインディング:
gio-2.0:DataInputStream.read_line_utf8にデフォルトの 'length = null'を使用* [#783351]
gobject-2.0:GLib.ParamSpecPointerを追加する
poppler-glib:0.54.0にアップデート
gstreamer-1.0:さまざまなバインディング修正
バージョン0.36.3の新機能:
さまざまなバグ修正:
scanner:複数行コメント後のトークンの列値の計算を修正する[#652899]
codegen:コルーチンのキャッチされていないエラーに対するUnref GLib.AsyncResult [#641171]
構造体コンストラクタの結果変数を初期化し続ける[#782056]
バージョン0.36.1の新機能:
さまざまなバグ修正:
常に自分と互換性のある方法を検討する[#773135]
実際の.end()メソッドシグネチャに対してarguments-checkを実行する[#684208]
ターゲットタイプの不一致でのlamdba-expressionエラーをわずかに改善する
インスタンスフィールドのデリゲートイニシャライザを修正する[#683925]
所有された代理人をキャスト/割り当てするときにターゲット参照をリークしない[#780426]
GIRパーサーとライター:
girparser:メタデータにdestroy引数を追加する[#750838]
vapigen:valacのような--nostdpkgオプションを追加する
バインディング:
gstreamer-1.0:Pad.set _ * _ function()バインディングを修正する[#750838]
glib-2.0:不足しているバージョンのマクロと定数を追加すると、unichar.to_stringはnullを返しません
gtk + -2.0、gtk + -3.0:Widget.intersect()の "intersection"パラメータをoutとしてマークする
gtk + -4.0:3.90.0に更新
コメントが見つかりません