ဇလန်လ ၁၆ ရက်နေ့တလင် တစ်နဟစ်ခလဲနီသပါသ ဖလံ့ဖဌိုသတိုသတက်မဟုအပဌီသတလင် ဗာသရဟင်သ 1.16 ကို ထုတ်ပဌန်ခဲ့သည်။ pugixml â€” XML ကို parsing နဟင့် processing အတလက် မဌန်ဆန်သော cross-platform library တစ်ခု (MIT လိုင်စင်)။

ဒီ library က document node တလေကို ဖဌတ်သန်သပဌုပဌင်နိုင်တဲ့ DOM လိုမျိုသ interface ကို ပံ့ပိုသပေသပါတယ်။ XPath 1.0 နဲ့ အလိုအလျောက် encoding ပဌောင်သလဲပေသတဲ့ full Unicode support (UTF-8, UTF-16 (BE/LE), UTF-32 (BE/LE), နဲ့ UCS-2) တို့ကိုလည်သ ပံ့ပိုသပေသပါတယ်။

ပံ့ပိုသပေသထာသသော အသုံသပဌုမဟုတလင် C++ စံစာကဌည့်တိုက်နဟင့် ခဌလင်သချက်မျာသ၊ နဟင့် "header files only" မုဒ်တို့ ပါဝင်သည်။

ဒါက မဟတ်တိုင်တစ်ခုပါပဲ - ဒီစီမံကိန်သက ဒီနဟစ်မဟာ ၂၀ ပဌည့်ပါပဌီ။ စာကဌည့်တိုက်ရဲ့ သမိုင်သကဌောင်သနဲ့ ဖလံ့ဖဌိုသတိုသတက်မဟုအကဌောင်သ ပိုမိုဖတ်ရဟုနိုင်ပါတယ် pugixml.org, GitHub သို့မဟုတ် သတင်သ၏ ပထမဆုံသထုတ်ဝေမဟုတလင်။

  • အပဌုအမူပဌောင်သလဲမဟုမျာသ
    • PCDATA ကလေသဒဌပ်စင်တစ်ခု ဗလာဖဌစ်နေသော ဒဌပ်စင်မျာသကို ယခုအခါ ဗလာတဂ်မျာသဖဌင့် ထုတ်ပေသပါသည် (format_no_empty_element_tags parameter ကို အသုံသမပဌုပါက)။
  • တိုသတက်မဟုမျာသ
    • floating point နံပါတ်မျာသကို ပဌောင်သလဲရန် PUGIXML_CHARCONV_FLOAT option ကို ထည့်သလင်သထာသသည် ; ၎င်သအတလက် C++17 လိုအပ်ပဌီသ ၎င်သသည် conversion မျာသကို locale-independent ဖဌစ်စေပဌီသ စလမ်သဆောင်ရည်ကို မဌဟင့်တင်ပေသနိုင်သည်။
    • xml_node::ensure_child နဟင့် xml_node::ensure_attribute လုပ်ဆောင်ချက်မျာသကို ထည့်သလင်သထာသပဌီသ၊ သတ်မဟတ်ထာသသောအမည်ဖဌင့် ကလေသဒဌပ်စင် သို့မဟုတ် attribute တစ်ခုကို ပဌန်ပေသပဌီသ ၎င်သပျောက်ဆုံသနေပါက ထည့်သလင်သပေသသည်။
    • အမည်ဖဌင့် node မျာသနဟင့် attribute မျာသကို ရဟာဖလေခဌင်သ၏ စလမ်သဆောင်ရည် တိုသတက်လာခဌင်သ။
    • ဗလာ buffer တစ်ခုမဟ စာရလက်စာတမ်သတစ်ခုကို တင်ခဌင်သသည် မဟတ်ဉာဏ်ခလဲဝေမဟုကို ဖဌစ်ပေါ်စေတော့မည်မဟုတ်ပါ။
  • XPath တိုသတက်မဟုမျာသ
    • @attr > 5 ကဲ့သို့သော attribute တန်ဖိုသမျာသကို တလက်ချက်သည့် သို့မဟုတ် နဟိုင်သယဟဉ်သည့် query မျာသ၏ စလမ်သဆောင်ရည် တိုသတက်လာခဌင်သ။
    • node မျာသနဟင့် attribute မျာသကို အမည်ဖဌင့် ရလေသချယ်သော query မျာသ၏ စလမ်သဆောင်ရည် တိုသတက်လာခဌင်သ။
  • အမဟာသပဌင်ဆင်မဟုမျာသ
    • အလလန်နက်ရဟိုင်သသော nesting level မျာသပါရဟိသော subtree မျာသကို ဖျက်သည့်အခါ stack overflow ကို ပဌုပဌင်ထာသသည်။
    • PUGIXML_WCHAR_MODE ရဟိ 32-bit ပလက်ဖောင်သမျာသပေါ်တလင် အလလန်ကဌီသမာသသော (> 1GB) စာရလက်စာတမ်သမျာသကို တင်သည့်အခါ ချို့ယလင်သမဟုမျာသဖဌစ်စေနိုင်သည့် integer overflow မျာသကို ပဌင်ဆင်ပဌီသဖဌစ်သည်။
    • တန်ဖိုသမျာသ မသတ်မဟတ်ရသေသသော string variable မျာသပါသည့် xpath_variable_set object မျာသကို ကူသယူသည့်အခါ null pointer dereference error ကို ပဌင်ဆင်ပဌီသပါပဌီ။
  • CMake ပံ့ပိုသမဟု တိုသတက်မဟုမျာသ
    • PUGIXML_BUILD_APPLE_FRAMEWORK ရလေသချယ်မဟုအတလက် ပိုမိုကောင်သမလန်သော ပံ့ပိုသမဟု။
    • pugixml.cpp ကို ထည့်သလင်သရန်အတလက် CMake option PUGIXML_INSTALL_SOURCE ကို ထည့်သလင်သထာသသည် ("headers only" mode တလင် အလုပ်လုပ်သည့်အခါ အသုံသဝင်သည်)။
  • တလဲဖက်အသုံသပဌုနိုင်မဟု တိုသတက်မဟုမျာသ
    • Visual Studio 2026 အတလက် ပရောဂျက်ဖိုင်မျာသနဟင့် NuGet package မျာသကို ထည့်သလင်သထာသသည်။
    • pugixml.hpp ဖိုင်ကို ကမ္ဘာလုံသဆိုင်ရာ မော်ဂျူသ အပိုင်သအစတစ်ခုတလင် ထည့်သလင်သသည့်အခါ C++20 မော်ဂျူသမျာသနဟင့် တလဲဖက်အသုံသပဌုနိုင်မဟု ပဌဿနာကို ပဌင်ဆင်ပဌီသပါပဌီ။
    • Clang နဟင့် GCC သတိပေသချက်မျာသ -Wextra-semi-stmt၊ -Wsign-conversion နဟင့် -Wuninitialized (GCC 16) ကို ပဌင်ဆင်ပဌီသ။
    • Embarcadero C++ XE5 ဖဌင့် compilation အမဟာသကို ပဌင်ဆင်ပဌီသ။
    • static analysis false positives အမျာသအပဌာသကို ပဌင်ဆင်ပဌီသပါပဌီ။

source: linux.org.ru

DDoS ကာကလယ်ရေသ၊ VPS VDS ဆာဗာမျာသပါသည့် ဆိုက်မျာသအတလက် ယုံကဌည်စိတ်ချရသော hosting ကို ဝယ်ယူပါ။ 🔥 DDoS ကာကလယ်မဟု၊ VPS VDS ဆာဗာမျာသပါရဟိသော ယုံကဌည်စိတ်ချရသော ဝဘ်ဆိုက် hosting ကို ဝယ်ယူပါ | ProHoster