Brush v0.4.0

Brush v0.4.0

Brush – tā ir komandrinda, kas rakstÄ«ta Rust valodā, apvienojot POSIX un Bash saderÄ«bu ar atmiņas droŔības garantijām un veiktspēju. Projekta mērÄ·is ir kļūt par pilnvērtÄ«gu alternatÄ«vu tradicionālajām komandrindām, ļaujot izpildÄ«t esoÅ”os skriptus un izmantot .bashrc praktiski bez izmaiņām. Å Ä« versija apvieno vairākus mēneÅ”us ilgu darbu un vairāk nekā 200 apvienotus pull pieprasÄ«jumus, ievērojami virzot čaulu uz pilnvērtÄ«gu Bash un POSIX saderÄ«gu vidē aizstāŔanu.

Galvenās attīstības jomas Ŕajā laidienā:

  • Bash saderÄ«ba: pievienoti set -e, set -u, pipefail, failglob, ERR apstrādātājs, lÄ«dzprocesi un daudz kas cits;
  • UzticamÄ«ba: uzlabota izņēmumu apstrāde – slēgtie kanāli, bojāti iznākumi, ne-UTF8 vēsture un citi;
  • Platformas: paplaÅ”ināta macOS atbalsts (darbojas kā ieejas čaula), uzlabota darbÄ«ba Windows, FreeBSD, Android un 32 bitu sistēmās;
  • Interaktivitāte: pievienoti opciju TOML konfigurācijas faili, preexec/precmd hooks, uzlabota readline makro atbalsts un citi.

Galvenie uzlabojumi Bash saderībā

NepiecieÅ”amākās izmaiņas Å”ajā laidienā ir ievērojami paplaÅ”inājuÅ”as Bash iespējām atbalsta. Kļūdu pārvaldÄ«ba:

  • set -e (errexit) – momentāna izieÅ”ana kļūdas gadÄ«jumā;
  • set -u (nounset) – kļūda, piekļūstot neizsludinātai mainÄ«gajai;
  • pipefail – cauruļu atgriezeniskā koda nosaka pēdējā izgāzusies komanda;
  • failglob – ŔķietÄ«gas atbilstÄ«bas trÅ«kums glob-izteiksmē tagad izraisa kļūdu.

Apstrādātāji (Traps) un līdzprocesi:

  • ERR apstrādātājs — ļauj izpildÄ«t komandas, kad rodas kļūda;
  • lÄ«dzprocesi (coproc) — fonu procesu palaiÅ”ana ar divvirzienu saziņu.

Iebūvēti komandas:

  • uzlabota daudzu aritmētisko konstrukciju, tostarp augstas bāzes literālu, pārsnieguma un pieŔķirÅ”anas operatoru apstrāde;
  • izlabojumi un uzlabojumi ietekmēja iebÅ«vētas komandas: caller, read, getopts, printf un citas.

Platformu atbalsta paplaŔināŔana:

Laidiens v0.4.0 padara čaulu pieejamu plaŔākā ierīču klāstā:

  • macOS: novērsta problēma, kas izraisÄ«ja čaulas sasalÅ”anu, ieejot sistēmā. Tagad brush var izmantot kā ieejas čaulu;
  • Windows: uzlabojumi ceļu apstrādē, pievienota /dev/null emulācija, kas ievērojami palielina lietojamÄ«bu Windows;
  • FreeBSD un Android: tiek atbalstÄ«ta versija Ŕīm platformām;

Interaktīvās iespējas un API

  • Konfigurācija: pievienota atbalsta opciju TOML konfigurācijas failam (~/.config/brush/config.toml) brush specifiskajām iestatÄ«jumiem;
  • PielāgoÅ”ana: Ä«stenoti zsh stili preexec/precmd hooks (pēc eksperimentālās atzÄ«mes), noderÄ«gi, lai izveidotu pielāgotus aicinājumus un laika mērīŔanas rÄ«kus;
  • Izstrādātāju API: Shell tips tagad ir parametrizēts ar paplaÅ”inājumiem (ShellExtensions), piedāvājot izstrādātājiem iespēju pievienot savas iebÅ«vētās komandas un mainÄ«t mainÄ«go uzvedÄ«bu bez projekta forkoÅ”anas;
  • Dažādi:
    • uzlabots readline makro atbalsts saderÄ«bai ar starship, atuin un fzf (github.com);
    • pievienotas AST un shell stāvokļa serializācijas iespējas caur serde;
    • tagad brush-parser un brush-core ir pieejamas serde funkcijas AST un shell stāvokļa serializēŔanas iespējām.

Avots: linux.org.ru

Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem šŸ”„ Iegādājieties uzticamu tÄ«mekļa hostingu ar DDoS aizsardzÄ«bu, VPS VDS serveriem | ProHoster