You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Nathan Hartman <ha...@gmail.com> on 2019/12/01 15:58:34 UTC

Re: Merging branches/swig-py3 to trunk

On Thu, Nov 28, 2019 at 4:05 PM Daniel Shahaf <d....@daniel.shahaf.name> wrote:
> Yasuhito FUTATSUKI wrote on Thu, Nov 28, 2019 at 20:36:25 +0900:
> > And there seems to be also some scripts calling Python
> > interpreter with -c option.
> >
> > I roughly searched:
> > [[[
> > $ find . -name .svn -prune -or -type f -print0 | xargs -0 egrep -i '(^|[^-])python.* -c'
>
> I suggest to also grep for «sys.executable»; there are several
> instances of that in trunk.

I did such a search and sys.executable is found in:

./build/run_tests.py
./build/generator/gen_win.py
./build/generator/gen_vcnet_vcproj.py
./build/generator/gen_make.py
./subversion/tests/cmdline/svntest/main.py
./subversion/tests/cmdline/svnadmin_tests.py
./subversion/bindings/ctypes-python/setup.py

I did not find files with extension other than .py containing
sys.executable in latest trunk.

I think nothing has changed about sys.executable in Python 3, so this
should not affect anything.

> Y'all might consider starting a wiki page or a jira issue tracking
> the categorization.  I think it might be helpful to tracking the
> work done/punted/pending.

Agreed. I just wanted to get an initial list that is more-or-less
accurate first. I think we're at that starting point now.

Now, I wonder, how should we handle updates to the list as work
progresses? With the wiki we can move items around in the list. With a
Jira issue, would we add a comment with an updated list each time
item(s) change status?

Meanwhile, here is a summary of the changes between my original list
and the updated list by Yasuhito:

Moved to "Python 3 Supported":
. gen-make.py

Moved to "Python 3 Not Supported Yet":
. contrib/client-side/svnmerge/svnmerge-migrate-test.sh

Moved to a new section "Unmaintained":
. subversion/bindings/ctypes-python/test/*
. subversion/libsvn_subr/genctype.py

Added to "Python 3 Supported":
. Makefile.in
. build/ac-macros/swig.m4
. subversion/tests/cmdline/davautocheck.sh
. subversion/tests/cmdline/svnserveautocheck.sh

Added to "Not Checked For Python 3 Yet":
. tools/hook-scripts/mailer/tests/mailer-t1.sh
. tools/dev/benchmarks/large_dirs/create_bigdir.sh
. tools/backup/hot-backup.py.in
. tools/server-side/svnpubsub/svnpubsub.tac
. tools/examples/SvnCLBrowse
. contrib/hook-scripts/enforcer/enforcer
. contrib/server-side/load_repo_with_mergesensitive_copy.sh

Cheers,
Nathan

Re: Merging branches/swig-py3 to trunk

Posted by Nathan Hartman <ha...@gmail.com>.
On Tue, Dec 10, 2019 at 11:30 AM Julian Foad <ju...@apache.org> wrote:
> Nathan Hartman wrote:
> > Regarding the 1.14 release notes and linking to the Python 3 work
> > in progress / status wiki page, I'm thinking of something along these
> > lines: [...]
>
> Looks good to me.  I encourage you to go ahead and commit stuff like
> this without waiting for pre-commmit review.

Done in r1871142. Thanks for the encouragement. :-)

Cheers,
Nathan

Re: Merging branches/swig-py3 to trunk

Posted by Julian Foad <ju...@apache.org>.
Nathan Hartman wrote:
> Regarding the 1.14 release notes and linking to the Python 3 work
> in progress / status wiki page, I'm thinking of something along these
> lines: [...]

Looks good to me.  I encourage you to go ahead and commit stuff like 
this without waiting for pre-commmit review.

- Julian

Re: Merging branches/swig-py3 to trunk

Posted by Nathan Hartman <ha...@gmail.com>.
On Tue, Dec 3, 2019 at 3:14 PM Nathan Hartman <ha...@gmail.com> wrote:
> I'm placing a reminder to myself to update the 1.14 Release Notes with
> a link to this wiki page in "known issues" as discussed previously...

Regarding the 1.14 release notes and linking to the Python 3 work
in progress / status wiki page, I'm thinking of something along these
lines:

[[[

Index: 1.14.html
===================================================================
--- 1.14.html (revision 1871139)
+++ 1.14.html (working copy)
@@ -366,13 +366,30 @@
     title="Link to this section">&para;</a>
 </h2>

+<!--
 <p>There are no known issues specific to this release at the moment.</p>
+-->

-<!--
 <p>There are some known issues in the Subversion 1.14 releases.  These
 may be fixed in later 1.14.x releases.</p>
--->

+<div class="h3" id="python3-work-in-progress">
+<h3>Python 3 support is incomplete
+  <a class="sectionlink" href="#python3-work-in-progress"
+    title="Link to this section">&para;</a>
+</h3>
+
+Some Python scripts that are included in Subversion's release
+distribution do not support Python 3 yet.
+
+For an exhaustive list of all Python scripts and files that use
+Python, categorized by their Python 3 support status, see the
+<a href="https://cwiki.apache.org/confluence/display/SVN/Subversion%27s+Python+3+Support+Status"
+>Subversion's Python 3 Support Status</a> wiki page.
+</p>
+
+</div>  <!-- python3-work-in-progress -->
+
 </div>  <!-- issues -->

 <!-- (This section only makes sense when there are some issues listed in it.)

]]]

Cheers,
Nathan

Re: Merging branches/swig-py3 to trunk

Posted by Nathan Hartman <ha...@gmail.com>.
On Sun, Dec 1, 2019 at 6:32 PM Daniel Shahaf <d....@daniel.shahaf.name> wrote:
> Nathan Hartman wrote on Sun, Dec 01, 2019 at 10:58:34 -0500:
> > On Thu, Nov 28, 2019 at 4:05 PM Daniel Shahaf <d....@daniel.shahaf.name> wrote:
> > > Y'all might consider starting a wiki page or a jira issue tracking
> > > the categorization.  I think it might be helpful to tracking the
> > > work done/punted/pending.
> >
> > Agreed. I just wanted to get an initial list that is more-or-less
> > accurate first. I think we're at that starting point now.
> >
> > Now, I wonder, how should we handle updates to the list as work
> > progresses? With the wiki we can move items around in the list. With a
> > Jira issue, would we add a comment with an updated list each time
> > item(s) change status?
>
> I suggest to just go ahead and create the wiki page.

Created the wiki page:
https://cwiki.apache.org/confluence/display/SVN/Subversion%27s+Python+3+Support+Status

I also added a link to it from the ManyHands page.

The purpose is to keep track of Python 3 support throughout all of our
scripts while work progresses to make everything compatible, so please
discuss any findings/changes/additions/observations here, or (if you
prefer) feel free to update the wiki directly...

I'm placing a reminder to myself to update the 1.14 Release Notes with
a link to this wiki page in "known issues" as discussed previously...

Cheers,
Nathan

Re: Merging branches/swig-py3 to trunk

Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
Nathan Hartman wrote on Sun, Dec 01, 2019 at 10:58:34 -0500:
> On Thu, Nov 28, 2019 at 4:05 PM Daniel Shahaf <d....@daniel.shahaf.name> wrote:
> > I suggest to also grep for «sys.executable»; there are several
> > instances of that in trunk.
> 
> I did such a search and sys.executable is found in:
> 
> ./build/run_tests.py
> ./build/generator/gen_win.py
> ./build/generator/gen_vcnet_vcproj.py
> ./build/generator/gen_make.py
> ./subversion/tests/cmdline/svntest/main.py
> ./subversion/tests/cmdline/svnadmin_tests.py
> ./subversion/bindings/ctypes-python/setup.py
> 
> I did not find files with extension other than .py containing
> sys.executable in latest trunk.
> 
> I think nothing has changed about sys.executable in Python 3, so this
> should not affect anything.

Yes and no.  sys.executable itself may not have changed, but code like
«subprocess.check_call([sys.executable, '-c', 'print "Hello world"'])»
would nevertheless be broken.

> > Y'all might consider starting a wiki page or a jira issue tracking
> > the categorization.  I think it might be helpful to tracking the
> > work done/punted/pending.
> 
> Agreed. I just wanted to get an initial list that is more-or-less
> accurate first. I think we're at that starting point now.
> 
> Now, I wonder, how should we handle updates to the list as work
> progresses? With the wiki we can move items around in the list. With a
> Jira issue, would we add a comment with an updated list each time
> item(s) change status?

I suggest to just go ahead and create the wiki page.

> Meanwhile, here is a summary of the changes between my original list
> and the updated list by Yasuhito:

Cheers,

Daniel