Inkampani ye-Oracle
I-GraalVM
- Ukuhambisana ne-Node.js 12.10.0 kuqinisekiswa;
- Izakhiwo zomhlaba ezingajwayelekile nemisebenzi ikhutshazwa ngokuzenzakalela:
global (ithathelwe indawo ngokuthi globalThis, setting js.global-property to return), ukusebenza (js.performance), phrinta futhi printErr (js.print); - I-Implemented Promise.allSettled futhi ingasebenzi isiphakamiso sokuhlanganisa, esitholakala ngemodi ye-ECMAScript 2020 (β-js.ecmascript-version=2020β);
- Kubuyekezwe okuncike ku-ICU4J kuya kokungu-64.2, ASM kuya kokungu-7.1.
- I-stubs gc engeziwe.{enable,disable,isenabled}, i-charmap_build efakiwe, i-sys.hexversion ne-_lzma;
- Ilabhulali ejwayelekile yePython 3.7.8 ebuyekeziwe;
- Ukwesekwa okwengeziwe kwe-NumPy 1.16.4 kanye ne-Pandas 0.25.0;
- Ukwesekwa kwesikhathi esingeziwe;
- i-socket.socket ilethwe esimweni esikuvumela ukuthi usebenzise i-"graalpython -m http.server" futhi ulayishe okungabhaliwe (ngaphandle kwe-TLS) izinsiza ze-http;
- Kulungiswe izinkinga ngokubonisa izinto ze-pandas.DataFrame.
ukucubungula okungalungile kwama-tuples ngama-bytes.startswith,
umsebenzi wokucekela phansi kwabaphindaphindayo kanye nokusetshenziswa kwe-dict.__iqukethe__ izichazamazwi; - Kwengezwe usekelo lwe-ast.PyCF_ONLY_AST, okuyinto
kuvunyelwe qinisekisa ukuthi i-pytest iyasebenza; - Kwengeziwe
ukwesekwa I-PEP 498 (ukufakwa kwentambo ngamazwi angokoqobo); -
Kwenziwa ifulegi elithi β--python.EmulateJythonβ ukuze ungenise amakilasi e-JVM usebenzisa i-syntax evamile yokungenisa yePython futhi ubambe okuhlukile kwe-JVM kukhodi yePython; - Ukusebenza komhlaziyi okuthuthukisiwe, ukugcinwa kwesikhashana okuhlukile,
ukufinyelela izinto zePython kusuka kukhodi ye-JVM. Imiphumela ethuthukisiwe ekuhlolweni kokusebenza kwekhodi ye-python nezandiso zomdabu (ukusebenzisa izandiso zomdabu phezu kwe-llvm kusho ukuthi i-bitcode llvm idluliselwa ku-GraalVM ukuze kuhlanganiswe i-JIT).
- Ukuhlanganisa izandiso zomdabu, ikhithi yamathuluzi eyakhelwe ngaphakathi ye-LLVM manje isisetshenziswa, kudala kokubili ikhodi yomdabu kanye ne-bitcode. Lokhu kusho ukuthi izandiso zomdabu eziningi kufanele zihlanganiselwe ngaphandle kwebhokisi, zisuse izinkinga eziningi zokuxhumanisa;
- Ukufakwa okuhlukile kwe-LLVM kokufaka izandiso zomdabu ku-TruffleRuby;
- Ukufaka izandiso ze-C++ ku-TruffleRuby akusadingi ukufaka i-libc++ kanye ne-libc++abi;
- Ilayisensi ibuyekezwe ku-EPL 2.0/GPL 2.0/LGPL 2.1, efana ne-JRuby yakamuva;
- Kwengezwe usekelo lwama-agumenti ongawakhetha ku-GC.stat;
- Kusetshenziswe indlela ye-Kernel#load ngesisonga kanye ne-Kernel#izalele nge-:chdir;
- Kwengezwe okuthi rb_str_drop_bytes, okuhle ngoba i-OpenSSL iyayisebenzisa;
- Kufakwe izandiso zamatshe ayigugu afakwe kuqala adingekayo kumareyili amasha ku-Rails 6;
- Ukuhlanganisa izandiso zomdabu, amafulege asetshenziswa, njengaku-MRI;
- Ukulungiselelwa kokusebenza kwenziwe futhi ukusetshenziswa kwenkumbulo kwehlisiwe.
- Ukuhambisana no-R 3.6.1 kuyaqinisekiswa;
- Kwengezwe usekelo lokuqala lokuqalisa izandiso zomdabu ezisuselwe ku-LLVM. Lapho kwakhiwa amaphakheji e-R omdabu, i-FastR ilungiselelwe ukusebenzisa ithuluzi le-LLVM elakhelwe ngaphakathi le-GraalVM. Amafayela kanambambili azoba umphumela azoqukatha kokubili ikhodi yomdabu kanye ne-bitcode ye-LLVM.
Amaphakheji afakwe ngaphambilini nawo akhiwa ngale ndlela.
I-FastR ilayisha futhi isebenzisa ikhodi yesandiso yomdabu ngokuzenzakalelayo, kodwa lapho yethulwa ngenketho ethi "--R.BackEnd=llvm", kuzosetshenziswa i-bitcode. Ingemuva le-LLVM lingasetshenziswa ngokukhetha kwamanye amaphakheji e-R ngokucacisa "--R.BackEndLLVM=pkg1,pkg2". Uma unezinkinga zokufaka amaphakheji, ungakwazi ukubuyisela yonke into ngokushayela fastr.setToolchain("native") noma ukuhlela mathupha ifayela le-$FASTR_HOME/etc/Makeconf; - Kulokhu kukhululwa, i-FastR ithumela ngaphandle kwemitapo yolwazi yesikhathi sokusebenza ye-GCC;
- Ukuvuza kwenkumbulo okungaguquki;
- Izinkinga ezilungisiwe lapho usebenza nama-vectors amakhulu (> 1GB);
- I-grepRaw esetshenzisiwe, kodwa kuphela i-fixed=T.
Source: opennet.ru