แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™ RPM 4.16

แž”แž“แŸ’แž‘แžถแž”แŸ‹แž–แžธแž˜แžฝแž™แž†แŸ’แž“แžถแŸ†แž“แŸƒแž€แžถแžšแžขแž—แžทแžœแžŒแŸ’แžแž“แŸ แž”แžถแž“แž€แžพแžแžกแžพแž„ แž€แžถแžšแž…แŸแž‰แž•แŸ’แžŸแžถแž™แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž‚แŸ’แžšแž”แŸ‹แž‚แŸ’แžšแž„แž€แž‰แŸ’แž…แž”แŸ‹ RPM แŸค.แŸกแŸฆ. แž‚แž˜แŸ’แžšแŸ„แž„ RPM4 แžแŸ’แžšแžผแžœแž”แžถแž“แž”แž„แŸ’แž€แžพแžแžกแžพแž„แžŠแŸ„แž™ Red Hat แž แžพแž™แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹แž€แŸ’แž“แžปแž„แž€แžถแžšแž…แŸ‚แž€แž…แžถแž™แžŠแžผแž…แž‡แžถ RHEL (แžšแžฝแž˜แž‘แžถแŸ†แž„แž‚แž˜แŸ’แžšแŸ„แž„แžŠแŸแžšแžธแžœแŸ CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen แž“แžทแž„แžขแŸ’แž“แž€แž•แŸ’แžŸแŸแž„แž‘แŸ€แžแž‡แžถแž…แŸ’แžšแžพแž“แŸ” แž€แŸ’แžšแžปแž˜แžขแž—แžทแžœแžŒแŸ’แžแž“แŸแžฏแž€แžšแžถแž‡แŸ’แž™แž–แžธแž˜แžปแž“ แžขแž—แžทแžœแžŒแŸ’แž แž‚แž˜แŸ’แžšแŸ„แž„ RPM แŸกแŸ แŸฉแžŠแŸ‚แž›แž˜แžทแž“แž‘แžถแž€แŸ‹แž‘แž„แžŠแŸ„แž™แž•แŸ’แž‘แžถแž›แŸ‹แž‘แŸ…แž“แžนแž„ RPM4 แž แžพแž™แž”แž…แŸ’แž…แžปแž”แŸ’แž”แž“แŸ’แž“แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ„แŸ‡แž”แž„แŸ‹แž…แŸ„แž› (แž˜แžทแž“แž”แžถแž“แž’แŸ’แžœแžพแž”แž…แŸ’แž…แžปแž”แŸ’แž”แž“แŸ’แž“แž—แžถแž–แž…แžถแž”แŸ‹แžแžถแŸ†แž„แž–แžธแž†แŸ’แž“แžถแŸ† 2010)แŸ” แž€แžผแžŠแž‚แž˜แŸ’แžšแŸ„แž„ แž…แŸ‚แž€แž…แžถแž™โ€‹แžŠแŸ„แž™ แž˜แžถแž“แžขแžถแž‡แŸ’แž‰แžถแž”แŸแžŽแŸ’แžŽแž€แŸ’แžšแŸ„แž˜ GPLv2 แž“แžทแž„ LGPLv2 แŸ”

แž‚แžฝแžšแžฑแŸ’แž™แž€แžแŸ‹แžŸแž˜แŸ’แž‚แžถแž›แŸ‹แž”แŸ†แž•แžปแžแŸ” แž€แžถแžšแž€แŸ‚แž›แž˜แŸ’แžข แž€แŸ’แž“แžปแž„ RPM 4.16:

  • แž€แž˜แŸ’แž˜แžœแžทแž’แžธแžแžถแž„แž€แŸ’แžšแŸ„แž™แžแŸ’แž˜แžธแžแŸ’แžšแžผแžœแž”แžถแž“แžขแž“แžปแžœแžแŸ’แžแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแžšแž€แŸ’แžŸแžถแž‘แžปแž€แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž‘แžทแž“แŸ’แž“แž“แŸแž™แž“แŸ…แž€แŸ’แž“แžปแž„ SQLite DBMS แŸ” แž•แŸ’แž“แŸ‚แž€แžแžถแž„แž€แŸ’แžšแŸ„แž™แž“แŸแŸ‡แŸ” แž“แžนแž„โ€‹แžแŸ’แžšแžผแžœโ€‹แž”แžถแž“โ€‹แž”แŸ’แžšแžพ แž“แŸ…แž€แŸ’แž“แžปแž„ Fedora Linux 33 แž‡แŸ†แž“แžฝแžŸแžฑแŸ’แž™ backend แžŠแŸ‚แž›แž˜แžถแž“แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž›แžพ BerkeleyDB แŸ”
  • แž€แž˜แŸ’แž˜แžœแžทแž’แžธแžแžถแž„แž€แŸ’แžšแŸ„แž™แž–แžทแžŸแŸ„แž’แž“แŸแžแŸ’แž˜แžธแžแŸ’แžšแžผแžœแž”แžถแž“แžขแž“แžปแžœแžแŸ’แžแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแžšแž€แŸ’แžŸแžถแž‘แžปแž€แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž‘แžทแž“แŸ’แž“แž“แŸแž™แž“แŸ…แž€แŸ’แž“แžปแž„ BDB (Oracle Berkeley DB) แžŠแŸ‚แž›แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž€แŸ’แž“แžปแž„แžšแž”แŸ€แž”แž”แžถแž“แžแŸ‚แžขแžถแž“แŸ” แž€แžถแžšแžขแž“แžปแžœแžแŸ’แžแžแŸ’แžšแžผแžœแž”แžถแž“แžŸแžšแžŸแŸแžšแž–แžธแžŠแŸ†แž”แžผแž„ แž“แžทแž„แž˜แžทแž“แž”แŸ’แžšแžพแž€แžผแžŠแž–แžธแž€แž˜แŸ’แž˜แžœแžทแž’แžธแžแžถแž„แž€แŸ’แžšแŸ„แž™ BerkeleyDB แžŠแŸ‚แž›แžแŸ’แžšแžผแžœแž”แžถแž“แž”แžŠแžทแžŸแŸแž’ แž”แŸ‰แžปแž“แŸ’แžแŸ‚แž“แŸ…แžแŸ‚แžแŸ’แžšแžผแžœแž”แžถแž“แžšแžฝแž˜แž”แž‰แŸ’แž…แžผแž›แžแžถแž˜แž›แŸ†แž“แžถแŸ†แžŠแžพแž˜แŸ”
  • แž•แŸ’แž“แŸ‚แž€แžแžถแž„แž€แŸ’แžšแŸ„แž™แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž‘แžทแž“แŸ’แž“แž“แŸแž™แžŠแŸ‚แž›แž˜แžถแž“แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž›แžพ LMDB แž–แžทแžŸแŸ„แž’แž“แŸแžแŸ’แžšแžผแžœแž”แžถแž“แžŠแž€แž…แŸแž‰แŸ”
  • แž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž‘แžทแž“แŸ’แž“แž“แŸแž™ backend แž•แŸ’แžขแŸ‚แž€แž›แžพแž€แžถแžšแž•แŸ’แž‘แžปแž€ NDB แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแž€แžถแžŸแžแžถแž˜แžถแž“แžŸแŸ’แžแŸแžšแž—แžถแž–แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž˜แŸ‰แžถแž€แŸ’แžšแžผ "%if" แž“แžทแž„แž€แž“แŸ’แžŸแŸ„แž˜ แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžš thenar (%{expr:1==0?"yes":"no"}) แž“แžทแž„แž•แŸ’แžแž›แŸ‹แž“แžผแžœแž˜แžปแžแž„แžถแžšแž”แŸ’แžšแŸ€แž”แž’แŸ€แž”แž€แŸ†แžŽแŸ‚แžŠแŸ‚แž›แž—แŸ’แž‡แžถแž”แŸ‹แž˜แž€แž‡แžถแž˜แžฝแž™ ('%[v"3:1.2-1โ€ณ> v"2.0โ€ณ]')แŸ”
  • แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž…แžถแžแŸ‹แžแŸ’แž“แžถแž€แŸ‹แžฏแž€แžŸแžถแžšแžŠแŸ„แž™แž•แŸ’แžขแŸ‚แž€แž›แžพแž”แŸ’แžšแž—แŸแž‘ MIME แž“แŸƒแž˜แžถแžแžทแž€แžถแžšแž”แžŸแŸ‹แž–แžฝแž€แž‚แŸแžแŸ’แžšแžผแžœแž”แžถแž“แžขแž“แžปแžœแžแŸ’แžแŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แžŸแž˜แžแŸ’แžแž—แžถแž–แž€แŸ’แž“แžปแž„แž€แžถแžšแž”แž„แŸ’แž€แžพแžแž—แžถแž–แžขแžถแžŸแŸ’แžšแŸแž™แžŠแŸ„แž™แž”แŸ’แžšแžพ แž˜แŸ‰แžถแž€แŸ’แžšแžผแž”แŸ‰แžถแžšแŸ‰แžถแž˜แŸ‰แŸ‚แžแŸ’แžš.
  • แž€แŸ†แžŽแŸ‚แžแŸ’แž˜แžธแž“แŸƒ API แž‰แŸ‚แž€ แž“แžทแž„แž”แŸ’แžšแŸ€แž”แž’แŸ€แž”แžŸแž˜แŸ’แžšแžถแž”แŸ‹ C แž“แžทแž„ Python แžแŸ’แžšแžผแžœแž”แžถแž“แžŸแŸ’แž“แžพแžกแžพแž„แŸ”
  • แž—แžถแž–แžŸแŸ’แžšแž”แž‚แŸ’แž“แžถแž“แŸƒแž€แžถแžšแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž“แŸƒ brp-strip แž“แžทแž„แžŸแž˜แžถแžŸแž’แžถแžแžปแžˆแžปแžแžŸแžถแž€แž›แŸ’แž”แž„แžแŸ’แžšแžผแžœแž”แžถแž“แž’แžถแž“แžถแŸ” แž€แžถแžšแž”แž„แŸ’แž€แžพแž“แž”แŸ’แžšแžŸแžทแž‘แŸ’แž’แž—แžถแž–แž“แŸƒแž—แžถแž–แžŸแŸ’แžšแž”แž‚แŸ’แž“แžถแž“แŸƒแžŠแŸ†แžŽแžพแžšแž€แžถแžšแž”แž„แŸ’แž€แžพแžแž€แž‰แŸ’แž…แž”แŸ‹แž–แŸแžแŸŒแž˜แžถแž“แžแŸ’แžšแžผแžœแž”แžถแž“แžขแž“แžปแžœแžแŸ’แžแŸ”
  • แž‘แŸ…แžงแž”แž€แžšแžŽแŸแž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹ rpmdb แž”แž“แŸ’แžแŸ‚แž˜ แž‡แž˜แŸ’แžšแžพแžŸ โ€œโ€”salvagedbโ€ แžŠแžพแž˜แŸ’แž”แžธแžŸแŸ’แžŠแžถแžšแž˜แžผแž›แžŠแŸ’แž‹แžถแž“แž‘แžทแž“แŸ’แž“แž“แŸแž™แžŠแŸ‚แž›แžแžผแž… (แžŠแŸ†แžŽแžพแžšแž€แžถแžšแžแŸ‚แž‡แžถแž˜แžฝแž™แž•แŸ’แž“แŸ‚แž€แžแžถแž„แž€แŸ’แžšแŸ„แž™ NDB แž”แŸ‰แžปแžŽแŸ’แžŽแŸ„แŸ‡)แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž˜แŸ‰แžถแž€แŸ’แžšแžผแžแŸ’แž˜แžธ %arm32, %arm64 แž“แžทแž„ %riscv แžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแžšแž€แžƒแžพแž‰แžŸแŸ’แžแžถแž”แžแŸ’แž™แž€แž˜แŸ’แž˜แŸ” แž€แŸแž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž˜แŸ‰แžถแž€แŸ’แžšแžผแžŠแŸ‚แž›แž—แŸ’แž‡แžถแž”แŸ‹แž˜แž€แž‡แžถแž˜แžฝแž™ %{macrobody:...} แžŠแžพแž˜แŸ’แž”แžธแž‘แž‘แžฝแž›แž”แžถแž“แž˜แžถแžแžทแž€แžถแž˜แŸ‰แžถแž€แŸ’แžšแžผแŸ”
  • แžœแžถแžแŸ’แžšแžผแžœแž”แžถแž“แž แžถแž˜แžƒแžถแžแŸ‹แž€แŸ’แž“แžปแž„แž€แžถแžšแž”แŸ’แžšแžพแž–แžถแž€แŸ’แž™แžŠแŸ‚แž›แž˜แžทแž“แžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ†แž”แŸ‚แž€แžŠแŸ„แž™แžŸแž‰แŸ’แž‰แžถแžŸแž˜แŸ’แžšแž„แŸ‹แž“แŸ…แž€แŸ’แž“แžปแž„แž€แž“แŸ’แžŸแŸ„แž˜, i.e. แž‡แŸ†แž“แžฝแžŸแžฑแŸ’แž™ 'a == b' แžฅแžกแžผแžœแžขแŸ’แž“แž€แžแŸ’แžšแžผแžœแžŸแžšแžŸแŸแžš '"a" == "b"' แŸ”
  • แž€แž˜แŸ’แž˜แžœแžทแž’แžธแž‰แŸ‚แž€แž€แž“แŸ’แžŸแŸ„แž˜แžขแž“แžปแžœแžแŸ’แžแžœแžถแž€แŸ’แž™แžŸแž˜แŸ’แž–แŸแž“แŸ’แž’ โ€œ%[...]โ€ แžŸแž˜แŸ’แžšแžถแž”แŸ‹แžŠแŸ†แžŽแžพแžšแž€แžถแžšแž€แž“แŸ’แžŸแŸ„แž˜แž‡แžถแž˜แžฝแž™แž“แžนแž„แž€แžถแžšแž–แž„แŸ’แžšแžธแž€แž˜แŸ‰แžถแž€แŸ’แžšแžผ (แžœแžถแžแžปแžŸแž–แžธ โ€œ%{expr:โ€ฆ}โ€ แžŠแŸ‚แž›แž˜แŸ‰แžถแž€แŸ’แžšแžผแžแŸ’แžšแžผแžœแž”แžถแž“แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž‡แžถแž˜แžปแž“)แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž–แž„แŸ’แžšแžธแž€แžแŸ’แž›แžธแŸ—แž“แŸƒแž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžšแžกแžผแž‡แžธแžแž› แž“แžทแž„แžแŸแžŽแžถแžšแž€แŸ’แž“แžปแž„แž€แž“แŸ’แžŸแŸ„แž˜ ("%[0 && 1/0]" แžแŸ’แžšแžผแžœแž”แžถแž“แž…แžถแžแŸ‹แž‘แžปแž€แž‡แžถ 0 แž‡แžถแž‡แžถแž„แž€แžถแžšแž”แž„แŸ’แž€แž€แŸ†แž แžปแžŸแžŠแŸ„แž™แžŸแžถแžšแž€แžถแžšแž–แŸ’แž™แžถแž™แžถแž˜แž”แŸ‚แž„แž…แŸ‚แž€แžŠแŸ„แž™แžŸแžผแž“แŸ’แž™)แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž€แžถแžšแž”แŸ’แžšแžพแž”แŸ’แžšแžถแžŸแŸ‹ NOT logical operator แž“แŸ…แž€แŸ’แž“แžปแž„แž”แžšแžทแž”แž‘แž”แŸ†แž–แžถแž“ (!"%?foo")แŸ”
  • แžขแžถแž€แž”แŸ’แž”แž€แžทแžšแžทแž™แžถแžšแž”แžŸแŸ‹แž”แŸ’แžšแžแžทแž”แžแŸ’แžแžทแž€แžš "||" แž“แžทแž„ "&&" แžแŸ’แžšแžผแžœแž”แžถแž“แž“แžถแŸ†แž™แž€แž‘แŸ…แž€แŸ’แž“แžปแž„แž‡แžฝแžšแž‡แžถแž˜แžฝแž™ Perl/Python/Ruby, i.e. แž‡แŸ†แž“แžฝแžŸแžฑแŸ’แž™แž€แžถแžšแžแŸ’แžšแžกแž”แŸ‹แžแž˜แŸ’แž›แŸƒแž”แŸŠแžผแž›แžธแž“ แžฅแžกแžผแžœแž“แŸแŸ‡แžœแžถแžแŸ’แžšแžกแž”แŸ‹แžแž˜แŸ’แž›แŸƒแžŠแŸ‚แž›แž”แžถแž“แž‚แžŽแž“แžถแž…แžปแž„แž€แŸ’แžšแŸ„แž™ (แžงแž‘แžถแž แžšแžŽแŸ "%[2 || 3]" แž“แžนแž„แžแŸ’แžšแžกแž”แŸ‹ 2)แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แžŸแž˜แžแŸ’แžแž—แžถแž–แž€แŸ’แž“แžปแž„แž€แžถแžšแž•แŸ’แž‘แŸ€แž„แž•แŸ’แž‘แžถแžแŸ‹แž‘แž˜แŸ’แžšแž„แŸ‹แž‡แŸ†แž“แžฝแžŸแž“แŸƒแž แžแŸ’แžแž›แŸแžแžถแžŒแžธแž‡แžธแžแž› แž“แžทแž„แžŸแž‰แŸ’แž‰แžถแžŸแž‰แŸ’แž‰แžถแŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹แž—แžถแž–แžขแžถแžŸแŸ’แžšแŸแž™แž˜แŸแžแžถ (แž‘แžถแž˜แž‘แžถแžš(แž˜แŸแžแžถ): somepkg) แžŠแŸ‚แž›แž˜แžทแž“แž”แŸ‰แŸ‡แž–แžถแž›แŸ‹แžŠแž›แŸ‹แž›แŸ†แžŠแžถแž”แŸ‹แž“แŸƒแž€แžถแžšแžŠแŸ†แžกแžพแž„ แž“แžทแž„แž€แžถแžšแžŠแž€แž…แŸแž‰แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž‡แž˜แŸ’แžšแžพแžŸ "--rpmv3" แž‘แŸ… rpmsign แžŠแžพแž˜แŸ’แž”แžธแž”แž„แŸ’แžแŸ†แžฑแŸ’แž™แž”แŸ’แžšแžพแž แžแŸ’แžแž›แŸแžแžถแžŒแžธแž‡แžธแžแž›แž€แŸ’แž“แžปแž„แž‘แž˜แŸ’แžšแž„แŸ‹ RPM3 แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž‡แž˜แŸ’แžšแžพแžŸแžŠแŸ†แžกแžพแž„ "--excludeartifacts" แžŠแžพแž˜แŸ’แž”แžธแžšแŸ†แž›แž„แž€แžถแžšแžŠแŸ†แžกแžพแž„แžฏแž€แžŸแžถแžš แžงแž‘แžถแž แžšแžŽแŸแžฏแž€แžŸแžถแžšแž€แŸ†แžŽแžแŸ‹แžšแž…แž“แžถแžŸแž˜แŸ’แž–แŸแž“แŸ’แž’ แž“แžทแž„แž‘แžทแž“แŸ’แž“แž“แŸแž™แž–แžถแž€แŸ‹แž–แŸแž“แŸ’แž’แž•แŸ’แžŸแŸแž„แž‘แŸ€แžแŸ”
  • แž”แžถแž“แž”แžŠแžทแžŸแŸแž’แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹ RPMv3 แž“แžทแž„แž€แž˜แŸ’แž˜แžœแžทแž’แžธแžแžถแž„แž€แŸ’แžšแŸ„แž™แžšแž”แžŸแŸ‹ beecrypt แž“แžทแž„ NSS crypto แŸ”
  • แž”แžถแž“แž”แž“แŸ’แžแŸ‚แž˜แž€แžถแžšแž‚แžถแŸ†แž‘แŸ’แžšแžŸแž˜แŸ’แžšแžถแž”แŸ‹ DSA2 (gcrypt) แž“แžทแž„ EdDSA แŸ”

แž”แŸ’แžšแž—แž–: opennet.ru

แž”แž“แŸ’แžแŸ‚แž˜แž˜แžแžทแž™แŸ„แž”แž›แŸ‹