Python 3はPythonの未来であり、Mopidyがデプロイされている環境で広く利用できます。私は、Python3.3以降を必要とするasyncioを使用できることに非常に興味があります。 Mopidyプロジェクトの外には、Python3への移行を妨げるものは何もありません。
これは、Python3でMopidyを実行する方法を追跡するためのマスターバグです。
from __future__ import unicode_literals
使用し、バイナリ文字列をb'foo'
マークします。2to3
ツールによって特定された移植性の問題を選択的に修正します。ねえ、Python 3の移行を手伝いたいのですが、特に進行中のことはありますか? 誰かのつま先を踏みたくない
jodal / feature / py3-compatでブランチを開始しました。
数日前にMopidy2.0.0の上にブランチをリベースしたことを除いて、11月以来これに触れていません。 現在の状況では、約1000のテストを修正し、残りの約240を修正しました。
今後の計画は次のとおりです。
わかりました、私はそのブランチから分岐して、私ができるすべてのテストを修正しようとします
こんにちはみんな、この問題に関するニュースはありますか?
これまであと3年半😉
これに関する更新はありますか?
Python 3への移植は、Mopidyで作業するときの私の個人的な最優先のタスクです。問題は、昨年の作業で非常に忙しかったことです。
私の現在の計画は、おおよその順序で、次のとおりです。
ご覧のとおり、移植自体を開始する前に最初に実行する必要のあるタスクがいくつかあります。 とは言うものの、最大の作業はすでに完了しています。pyspotifyをPython 3で動作するように書き直し(ここで2年間の空き時間を費やしました)、MopidyをGStreamer 1.xに移植します(ここで余暇を1回残します)。
そこに着きますが、時間がかかります。 人々が助けたいのであれば、Mopidyが2 + 3をサポートしたらすぐに、Python3へのポート拡張を助けることが最も役立つと思います。
更新してくれてありがとう、@ jodal。
Python3に移行するのは良い考えだと思います。
私はモピディで新しく、それに貢献したことはありません、あなたは私が
何かを手伝うことができますか?
Elmié。、22 demar。 de 2017 a la(s)07:08、Frederick Gnodtke <
[email protected]>escribió:
更新していただきありがとうございます、 @ jodalhttps ://github.com/jodal 。
—
このスレッドにサブスクライブしているため、これを受け取っています。
このメールに直接返信し、GitHubで表示してください
https://github.com/mopidy/mopidy/issues/779#issuecomment-288352544 、またはミュート
スレッド
https://github.com/notifications/unsubscribe-auth/AHQMO8UqLNKzfVQZAZJ3Pnjx2N7MsHg4ks5roPMEgaJpZM4CMq8p
。
メンテナンスの負担の一部を解放するプロジェクトの支援は、Python 3のような大きな目標に役立ちます。これは、メンテナがより大きな問題に取り組むか、より大きな貢献に対して適切なコードレビューを行うための時間を解放するためです。非常に疲れて時間がかかります。 2つの主要な例は、他のユーザーが問題をデバッグし、考えられるバグを再現し、再現に必要な手順を最小限に抑え、問題の結果を文書化するのに役立ちます。
@jodal python3での作業はどこで確認できますか?
よろしく
@jodalあなたが言及したpy3-compatブランチは少し...放棄されたように見えます。 どこかに新しいものはありますか?
私は拡張機能を作成することを検討しており、厄介なpy2の回避策を覚えるよりも、不安定なmopidyブランチのpy3のバグを掘り下げたいと思っています。
これの状況はどうですか? python3で使用できるmopidyのバージョンはありますか?
依存関係のpylastは、レガシーPython 2のサポートを間もなく終了します: https :
やあ、
現在、私はDebianでpylastを管理しています。 Python 2.7をサポートしなくなった最新バージョン([1])をアップロードするつもりです
mopidyがまだPython2を使用している場合は、このバージョンを2月末に公開する予定です。
次のDebianリリースでは、mopidyは素晴らしいソフトウェアであるため、残念なことかもしれません:smiley:
これが行われている公式の支店はありますか? 私はこれが起こるのを手伝うつもりです
よろしく
@jodal拡張機能はここでブロッカーですか? もしそうなら、私は各拡張機能に対して問題を開き、追跡するためにここでそれらを参照することをお勧めします。 この問題で、どのような変更が必要になる可能性があるかについていくつかの指示を与えることができれば、Pythonにあまり詳しくない人(私のように)がまだ役立つことを願っています。
PS私が使用している拡張機能(GMusic、Iris、Podcast、Scrobbler、Spotify)を喜んでサポートしますが、現時点ではどうすればよいかわかりません。
みなさん、python3への適応状況を教えていただけませんか? python3の最初のバージョンがいつリリースされるかについての見積もりはありますか? ありがとう。
私はまだMopidyをPython3に移植することに取り組んでいます。Python2でMopidyを死なせません。
Python 3に移行する作業のほとんどは、すべての依存関係がPython3で機能することを保証するために何年も前に行われました。
この問題の長い歴史と問題追跡システムの状態の行間を読むことができるかもしれませんが、私が大企業での仕事からスタートアップに移行して以来、このプロジェクトと一般的なオープンソースは私の最優先事項ではありませんでした3年前。
しかし、私はゆっくりとオープンソースプロジェクトを再開し始めています。 私は一度に1つのプロジェクトに焦点を合わせ、次のプロジェクトに進む前にそれを出荷しようとしています。 これまでのところ、 Mopidy.jsとMopidy-MPRISはいくつかの優しい愛とケアを受けています。 現在、私はPykkaの新しいリリースにます。これは、他の小さな改善の中でも、多くのMopidyセットアップの起動時間を大幅に短縮します。
Pykka 2が出荷されたら、私の主な目標はMopidyをPython3に移行することです。
その作業がいつ完了するかについては、時間の見積もりはしません。それは単に失敗に備えるためです。 それはすべて、外部要因と動機に大きく依存します。
支援に関しては、直接努力を大幅に支援するためにできる新しい貢献者がたくさんいるとは思いません。 私はまだ予測可能で定期的なリズムでオープンソースに取り組むことに戻っていないので、PRレビューはすぐに両方の当事者の意欲をそそるでしょう。 この号で前述したように、一般的なメンテナンスの負担を軽減するための支援は、常に間接的に役立ちます。
他のコア開発者については、彼らが助けてくれると確信していますが、私たち全員に優先順位とプロジェクトがあります。 私たちの時間とモチベーションがすべて揃うのを待ちきれません。 私がMopidy3をきちんと始めたら、彼らが参加すればそれは素晴らしいことですが、私は期待していません。
人生とすべてについての私のとりとめのないことをすべて脇に置いて、これは巨大な仕事でも私がなじみのない仕事でもありません。 これがしばらくの間主な焦点になることができるように、それは主に他の進行中のものを完了することの問題です。
2017年3月に最後の計画をここに書いたので、Python 3の採用はこれまでのところ進んでおり、Python2から2 + 3のみを経由してPython3のみに段階的に移行する意味がわかりません。 Mopidy 2.xは3年間非常に役立っており、何らかの理由でPython2に固執したままにしておくのに適した安定した場所になるでしょう。
したがって、2017年3月から計画を修正すると、次のようなプロセスを想像します。
pip install mopidy
実行しているユーザーには影響しませんが、 pip install --pre mopidy
を実行して、移植された拡張機能のテスト用のプレリリースをインストールすることは可能です。5か月経ちましたので、この号を更新する時期だと思います。 前回お話ししたPykkaのリリースは、6週間前にPykka2.0として出荷されました。 それ以来、私は再びMopidyの作業を開始しました。
release-2.2
ブランチでリリースされていないものはありません。develop
ブランチでは、廃止されたもののほとんどが削除されました。次はおそらく:
mopidyコアまたはmopidy-soundcloudプラグインをpython3で動作させるために私ができることはありますか?
これまでの作業に感謝します@jodal!
Python 3バージョンのSphinxを使用してドキュメントをビルドする場合(パッケージ化の目的で)、ドキュメントをどのようにインストールする必要があるのでしょうか。
以前はmake -C docs SPHINXBUILD=sphinx-build-2 man
いましたが、 sphinx-build-3
変更すると、エラーが発生します。
make: Entering directory '/home/builder/aports/community/mopidy/src/Mopidy-3.0.0a1/docs'
sphinx-build-3 -b man -d _build/doctrees . _build/man
Running Sphinx v1.8.4
Configuration error:
The configuration file (or one of the modules it imports) called sys.exit()
これは、2.2.3と3.0.0a1の両方で発生します。 それとも、この部分はまだ移植されていませんか?
とにかくv3で下位互換性が失われ、python2が1月に廃止されることを考えると、v3でpython2の互換性を維持する理由はありますか?
@tmccombsは言った:
とにかくv3で下位互換性が失われ、python2が1月に廃止されることを考えると、v3でpython2の互換性を維持する理由はありますか?
いいえ、Mopidy3でPython2の互換性を維持する予定はありません。
2月からの引用:
2017年3月に最後の計画をここに書いたので、Python 3の採用はこれまでのところ進んでおり、Python2から2 + 3のみを経由してPython3のみに段階的に移行する意味がわかりません。 Mopidy 2.xは3年間非常に役立っており、何らかの理由でPython2に固執したままにしておくのに適した安定した場所になるでしょう。
@PureTryOutは言った:
これは、2.2.3と3.0.0a1の両方で発生します。 それとも、この部分はまだ移植されていませんか?
MopidyはまだPython3に移植されていません。 移行を容易にするために、他の簡略化を行っており、廃止されたものを削除しました。 移植したら、Python3で実行されているSphinxを使用してドキュメントを作成します。
次のリリース(2.4.0?)がPython 3と互換性があることを確認することをお勧めしますか? ほとんどのディストリビューションは、Python2パッケージの削除に取り組んでいます。 私の場合、AlpineLinuxは次のリリース(3.11、来年1月末)までにPython 2を削除します。つまり、それまでにPython 3と互換性がない場合、Mopidyはリポジトリから削除されます。
Mopidy3.0はPython3と互換性があります。計画では、年末までにリリースする予定です。
こんにちは@ jodal 、Python 3の機能を支援するために、今後数週間でいくつかの予備のサイクルがあるかもしれません。 直接または拡張機能のいずれかでmopidyで。 取り組むべき特別な問題はありますか?
こんにちは@zubieta!
最近、Python 3でテストスイートの最大10%を正常に実行するテストセットアップをマージしました。すぐにマージされるPRがいくつかあり、それを最大20%に増やします。 どのPRがすでに開いているかを確認して、作業を複製しないようにしてください。さらにいくつかのモジュールとそのテストを移植する方法のステップバイステップガイドについては、#1809の説明を参照してください。
MopidyコアがPython3で実行されるとすぐに、拡張機能が続きます。
MopidyとPython3のステータスを更新する時が来たと思います...
Mopidyのテストスイートの2016年のテストはすべて、Python2.7とPython3.7の両方で実行されるようになりました。 この作業はすべてdevelop
ブランチにマージされます。 移植作業を手伝ってくれた@kingosticksに大いに感謝します!
develop
ブランチをそのままPyPIにMopidy3.0.0a2として
python3.7 -m pip install --pre mopidy
このリリースは、テストスイートに合格し、MPDとHTTP全体でいくつかの要求に応答し、少数のMP3ファイルを再生することを除いて、広範なテストの対象ではありません。
Mopidy 3.0.0a2は、おそらくPython 2と3の両方をサポートする唯一のMopidyリリースになるでしょう。Python2.7サポートの削除をすぐに開始し、Mopidyをよりクリーンで最新のPythonコードベースにします。
最終リリースに向けた計画はおおよそ次のとおりです。
3.0ファイナルに向けた行進と並行して、「mopidy」を検索して見つかったPyPI上の支援が
気になる拡張機能ごとに:
76のコミット、204のファイルの変更、9832の挿入(+)、9612の削除(-)の後で、別のプレリリースがあります。Mopidy3.0.0a3がPyPIに追加されました。 次のコマンドでインストールできます。
python3 -m pip install --pre mopidy
3.0.0a2以降の新機能:
mopidy.compat
モジュールはなくなりました。# encoding: utf-8
コメントはなくなりました。from __future__ ...
インポートはなくなりました。object
サブクラス化はすべてなくなりました。.encode()
と.decode()
は、明示的な"utf-8"
引数が含まれなくなりました。black
フォーマットされています。 :邪険な心:isort
が構成され、必要に応じてインポートをクリーンアップするために使用できます。mock
はunittest.mock
置き換えられます。assert
ステートメントに置き換えられます。これは、読みやすさとエラーメッセージが向上することを意味します。%
と.format()
ほとんどのインスタンスは、f文字列に置き換えられます。setup.py
は最小化され、宣言型のsetup.cfg
置き換えられました。tox.ini
、 dev-requirements.txt
、およびdocs/requirements.txt
依存関係はすべて、 setup.cfg
「エクストラ」に置き換えられます。 これは、開発者の依存関係がpython3 -m pip install -e ".[dev]"
インストールされることを意味します。先の道はまだ前のコメントでドラフトしたように見えます。
Mopidyコアに関しては、ここで完了したと思います。
Mopidy 3.0ファイナルへの残りの道は、v3.0マイルストーンで追跡されます。
https://github.com/mopidy/mopidy/milestone/55
Python 3への主要な拡張機能の移植は、このプロジェクトボードで追跡されます。
https://github.com/orgs/mopidy/projects/2
近い将来、Python 3でMopidyをテストする場合は、問題が発生した場合は問題を開いてください。
最も参考になるコメント
私はまだMopidyをPython3に移植することに取り組んでいます。Python2でMopidyを死なせません。
歴史
Python 3に移行する作業のほとんどは、すべての依存関係がPython3で機能することを保証するために何年も前に行われました。
この問題の長い歴史と問題追跡システムの状態の行間を読むことができるかもしれませんが、私が大企業での仕事からスタートアップに移行して以来、このプロジェクトと一般的なオープンソースは私の最優先事項ではありませんでした3年前。
しかし、私はゆっくりとオープンソースプロジェクトを再開し始めています。 私は一度に1つのプロジェクトに焦点を合わせ、次のプロジェクトに進む前にそれを出荷しようとしています。 これまでのところ、 Mopidy.jsとMopidy-MPRISはいくつかの優しい愛とケアを受けています。 現在、私はPykkaの新しいリリースにます。これは、他の小さな改善の中でも、多くのMopidyセットアップの起動時間を大幅に短縮します。
次は
Pykka 2が出荷されたら、私の主な目標はMopidyをPython3に移行することです。
その作業がいつ完了するかについては、時間の見積もりはしません。それは単に失敗に備えるためです。 それはすべて、外部要因と動機に大きく依存します。
支援に関しては、直接努力を大幅に支援するためにできる新しい貢献者がたくさんいるとは思いません。 私はまだ予測可能で定期的なリズムでオープンソースに取り組むことに戻っていないので、PRレビューはすぐに両方の当事者の意欲をそそるでしょう。 この号で前述したように、一般的なメンテナンスの負担を軽減するための支援は、常に間接的に役立ちます。
他のコア開発者については、彼らが助けてくれると確信していますが、私たち全員に優先順位とプロジェクトがあります。 私たちの時間とモチベーションがすべて揃うのを待ちきれません。 私がMopidy3をきちんと始めたら、彼らが参加すればそれは素晴らしいことですが、私は期待していません。
人生とすべてについての私のとりとめのないことをすべて脇に置いて、これは巨大な仕事でも私がなじみのない仕事でもありません。 これがしばらくの間主な焦点になることができるように、それは主に他の進行中のものを完了することの問題です。
Mopidy 3
2017年3月に最後の計画をここに書いたので、Python 3の採用はこれまでのところ進んでおり、Python2から2 + 3のみを経由してPython3のみに段階的に移行する意味がわかりません。 Mopidy 2.xは3年間非常に役立っており、何らかの理由でPython2に固執したままにしておくのに適した安定した場所になるでしょう。
したがって、2017年3月から計画を修正すると、次のようなプロセスを想像します。
pip install mopidy
実行しているユーザーには影響しませんが、pip install --pre mopidy
を実行して、移植された拡張機能のテスト用のプレリリースをインストールすることは可能です。