web-dev-qa-db-ja.com

正規表現のエスケープされていない左中括弧は廃止されました

私はsources.listファイルにこのリポジトリを追加します。

deb http://mirrordirector.raspbian.org/raspbian/ stretch main contrib non-free rpi

ターミナルでコマンドを実行した後、Raspberry Piにphp7.0をインストールするために必要です:

_ apt-get install -t stretch mysql-server mysql-client php7.0-mysql -y

今はいつもパッケージをインストールしようとすると、次のようなメッセージがたくさん表示されます:

Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/^(.*?)(\\)?\${ <-- HERE ([^{}]+)}(.*)$/ at /usr/share/Perl5/Debconf/Question.pm line 72.
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^}]+)}/ at /usr/share/Perl5/Debconf/Config.pm line 30.

もちろん私はそれらを適切にインストールしますが、メッセージは奇妙に見えます。

誰もがそれが何を意味し、それを解決する方法を教えてもらえますか?

5
kuchar

それは上流で報告され、2015年に修正される上流の報告:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=786705

しかし、debconf-1.5.56.allがインストールされている私のdebian 8.8ではまだエラーが表示され、マシンは2016年にインストールされました。

これを修正するために、私はapt-get install debconf

apt-get dist-upgradeシステム内のすべてのパッケージを更新しますが、8.8-> 9.0に更新される場合があることに注意してください

5
Elan Ruusamäe

警告です。そのコードを管理する人々は、左中括弧をエスケープする必要があります。正規表現の{\{に変更します。これを些細な修正なので、そのコードを維持するためにこれを人々に報告すると役立つ場合があります。

4
thrig

警告に記載されているファイルを開くだけです

m/^(。?)(\)?\ $ {<-ここ([^ {}] +)}(。)$// usr/share/Perl5/Debconf/Question.pm 72行目.

上記の72行目に移動し、警告が<-HEREで示される左中括弧の前にバックスラッシュを追加します

3
Torsten Zenk