Re: Error E170013: The server unexpectedly closed the,connection.

2020-12-03 Thread Thomas Singer

Hi Daniel and Brane,

Thanks for your feedback. I haven't heard back from the user whether 
your suggestions solved the problem.


--
Best regards,
Thomas Singer
=
syntevo GmbH
www.syntevo.com


On 2020-11-28 16:40, Branko Čibej wrote:

On 27.11.2020 22:24, Daniel Sahlberg wrote:
Den fre 27 nov. 2020 kl 20:45 skrev Thomas Singer 
mailto:thomas.sin...@syntevo.com>>:


    How valuable is the information that the user can access the SVN
    server
    from a browser? How to analyze/debug the access to find out at what
    stage it fails?


Not a Mac guy myself, but I on Windows would suspect proxy 
configurations in the browser, application aware firewall that filter 
out requests from Subversion or some trickery with the https 
certificate chain. I would assume these are also possible on macOS. On 
corporate networks I have seen firewalls or transparent proxy servers 
that decrypt https traffic and filter based on for example user agent 
strings or usage patterns.


It seems Wireshark is available for macOS so I would start there to 
make sure traffic is actually getting out of the box. Then working my 
way through the network to see where the packages are dropped.



I concur, all of the above makes sense.

-- Brane


Re: [Patch] Introduce release mode configure script (Re: [Patch] Update the INSTALL file for SWIG bindings)

2020-12-03 Thread Yasuhito FUTATSUKI
On 2020/12/04 6:40, Yasuhito FUTATSUKI wrote:
> Many thanks for the reviw. Then I've amended the patch.
> (attached file, introduce-release-mode-configure-patch-v2.txt)

I'm very sorry the patch attached previous mail is a bit old.
It contains an extra tweak on style in release mode block of
SVN_DETERMINE_SWIG_OPTS in build/ac-macros/swig.m4.

Inline diff was not corresponded with the patch.

The correct patch is the one attached in this message.

Thanks,
-- 
Yasuhito FUTATSUKI 
Distinguish configure scripts on release mode and non release mode.

Although makefiles in Subversion's release tarball do not support generating
SWIG language bindings C source files using swig, the configure scripts
shipped with the release tarball had an option to specify how to find
SWIG executable, and checked it.  To avoid this, we introduce "release mode"
to the configure script and hide the option and code to check a SWIG
executable on it.  

* . (svn:ignore):
  Ignore aclocal.m4.
* Makefile.in (local-extraclean):
  Clean up aclocal.m4.
* aclocal.m4.in ():
  Renamed from aclocal.m4
* autogen.sh ():
  Write an macro "SVN_RELEASE_MODE" definition to aclocal.m4 if --release
  is specfied on the command line.
* build/ac-macros/swig.m4
  (): Also mension about Perl and Ruby.
  (SVN_CHECK_SWIG):
   - Hide --with-swig option in release mode.
   - Check SWIG executable only if non release mode and at least one of 
 SWIG bindings is specfied to be built.
  (SVN_FIND_SWIG):
Move checks for each bindings into new macro SVN_DETERMINE_SWIG_OPTS.
  (SVN_DETERMINE_SWIG_OPTS): New macro split from SVN_FIND_SWIG. 
  - When not in release mode, warn if Perl/Python/Ruby interpreter is set but
   SWIG is not found. Also do not build them with make swig-pl/make
   swig-py/make swig-rb in this case.
  - Check swig version only when it is needed and when not in release mode.
* configure.ac ():
  - Tweak help string for --with-swig-perl, --with-swig-python,
--with-swig-ruby. 
  - Warn if --with-swig-perl is not specified but variable 'PERL' is set.
  - Warn if --with-swig-ruby is not specified but variable 'RUBY' is set,
even the value is not 'no' nor 'none'.
* subversion/bindings/swig/INSTALL (Step 2):
  Mention that configure and makefiles in the release tarball don't
  support generating SWIG bindings C source files.

Review by: brane
 
Index: Makefile.in
===
--- Makefile.in (revision 1883722)
+++ Makefile.in (working copy)
@@ -475,6 +475,7 @@
 local-extraclean: extraclean-bindings local-distclean
rm -f $(top_srcdir)/build-outputs.mk \
   $(top_srcdir)/subversion/svn_private_config.h.in \
+  $(top_srcdir)/aclocal.m4 \
   $(top_srcdir)/configure \
   $(top_srcdir)/gen-make.opts \
   $(top_srcdir)/build/config.guess \
Index: aclocal.m4 (deleted)
===
Index: aclocal.m4.in (added)
===
Index: autogen.sh
===
--- autogen.sh  (revision 1883722)
+++ autogen.sh  (working copy)
@@ -51,6 +51,17 @@
   ;;
   esac
 done
+
+# Generate aclocal.m4
+cp -f aclocal.m4.in aclocal.m4
+if test -n "$RELEASE_MODE"; then
+  cat <>aclocal.m4
+
+# Generated by 'autogen.sh --release'
+AC_DEFUN([SVN_RELEASE_MODE],[1])
+EOF
+fi
+
 # ### The order of parameters is important; buildcheck.sh depends on it and
 # ### we don't want to copy the fancy option parsing loop there. For the
 # ### same reason, all parameters should be quoted, so that buildcheck.sh
Index: build/ac-macros/swig.m4
===
--- build/ac-macros/swig.m4 (revision 1883722)
+++ build/ac-macros/swig.m4 (working copy)
@@ -22,17 +22,19 @@
 dnl if it is, then check to see if we have the correct version of python.
 dnl
 dnl if we do, then set up the appropriate SWIG_ variables to build the
-dnl python bindings.
+dnl Python, Perl, and Ruby bindings.
 
 AC_DEFUN(SVN_CHECK_SWIG,
 [
-  AC_ARG_WITH(swig,
-  AS_HELP_STRING([--with-swig=PATH],
- [Try to use 'PATH/bin/swig' to build the
-  swig bindings.  If PATH is not specified,
-  look for a 'swig' binary in your PATH.]),
+  m4_ifndef([SVN_RELEASE_MODE],
   [
-case "$withval" in
+AC_ARG_WITH(swig,
+AS_HELP_STRING([--with-swig=PATH],
+   [Try to use 'PATH/bin/swig' to build the
+swig bindings.  If PATH is not specified,
+look for a 'swig' binary in your PATH.]),
+[
+  case "$withval" in
   yes)
 svn_find_swig_arg=required
   ;;
@@ -39,12 +41,20 @@
   *)
 svn_find_swig_arg=$withval
   ;;
-esac
-  ],
-  [
-

Re: [Patch] Introduce release mode configure script (Re: [Patch] Update the INSTALL file for SWIG bindings)

2020-12-03 Thread Yasuhito FUTATSUKI
On 2020/12/02 4:24, Branko Čibej wrote:
> On 01.12.2020 17:34, Yasuhito FUTATSUKI wrote:
>> On 2020/11/17 11:01, Yasuhito FUTATSUKI wrote:
>>> On 2020/11/17 2:16, Daniel Shahaf wrote:
 Yasuhito FUTATSUKI wrote on Sat, 14 Nov 2020 14:52 +0900:
> +++ subversion/bindings/swig/INSTALL    (working copy)
> @@ -141,7 +141,15 @@
> -  Make sure that Subversion's ./configure script sees your installed 
> SWIG!
> +  If you are using the distribution tarball and you want to use the 
> language
> +  bindings C source files shipped with it, you might need to pass the
> +  --without-swig option to configure script to avoid detecting and 
> checking
> +  SWIG on your system.  A Makefile generated by configure will prevent
> +  building the language bindings if the configure script detect 
> unsuitable
> +  version of SWIG.
 I don't dispute the accuracy of this paragraph, but I think this API
 isn't autotools-idiomatic.

 Generally, I'd expect --without-foo to short-circuit the probe for foo
 and assume foo isn't found; i.e., if my system has an unsuitable
 version of foo, I'd the default behaviour (given neither --with-foo nor
 --without-foo) and the behaviour given --without-foo to be identical:
 namely, behave as though foo isn't available (even if /usr/bin/foo
 exists and is perfectly suitable).

 In particular, if my system has an unsuitable version of swig,
 I wouldn't expect passing --without-swig to change configure's behaviour.
>>> Probably what is wrong here is that the configure script accepts
>>> --with-swig | --without-swig options and checks it in release mode.
>>>
>>> We never clean SWIG generated language bindings C source files on
>>> clean-foo targets in release mode Makefile. extraclean-foo targets do it,
>>> but they are only parts of the extraclean target which also removes all
>>> release mode stuff. So users never use SWIG in release mode actually.
>>>
>>> That is, r1876662 is not correct.
>> To fix it, I tweaked the configure script again.
>>
>> The patch attached introduce "release mode" for configure generation.
>> With this patch, configure script generated by "autogen.sh --release"
>> does not have --with-swig|--without-swig option and never check SWIG
>> executable.
>>
>> Could anyone please review this?
>>
>> For backward compatibility to back port to 1.14.x, default for
>> --with-swig-perl, --with-swig-python, --with-swig-ruby are "auto",
>> i.e. search the target language, but I'd like to change them to "no" in
>> trunk, because I think those are optional feature.
> 
> 
> This makes sense, yes. More comments below.

Many thanks for the reviw. Then I've amended the patch.
(attached file, introduce-release-mode-configure-patch-v2.txt)

In addition to the items pointed out, I also added two modification:

* Clean up aclocal.m4 on local-extraclean target in Makefile.in.
* Move the task to generate aclocal.m4 earlier in autogen.sh, because
  aclocal.m4 file is also (at least) used by autoheader.

Also, I make diffs for release mode block and non-release mode block
of SVN_DETERMINE_SWIG_OPTS from corresponding block before this patch
in build/ac-macros/swig.m4, to show how they are changed.

Non release mode:
[[[
diff -ubB ./SVN_DETERMINE_SWIG_OPTS_original_block.txt 
./SVN_DETERMINE_SWIG_OPTS_non_release_block.txt 
--- ./SVN_DETERMINE_SWIG_OPTS_original_block.txt2020-12-04 
01:55:39.289774000 +0900
+++ ./SVN_DETERMINE_SWIG_OPTS_non_release_block.txt 2020-12-04 
06:21:30.41661 +0900
@@ -1,8 +1,16 @@
+# not in release mode  
   SWIG_PY_COMPILE="none"
   SWIG_PY_LINK="none"
   SWIG_PY_OPTS="none"
   SWIG_PY_ERRMSG="check config.log for details"
-  if test "$SWIG_PY_PYTHON" != "none"; then
+if test "$SWIG_PY_PYTHON" = "none"; then
+  SWIG_PY_ERRMSG="You specfied not to build Python bindings or \
+suitable Python interpreter is not found."
+else
+  if test "$SWIG" = "none"; then
+AC_MSG_WARN([You specified to build SWIG Python bindings, but SWIG is 
not found.])
+SWIG_PY_ERRMSG="SWIG is need to build SWIG Python bindings, but it is 
not found."
+  else
 AC_MSG_NOTICE([Configuring python swig binding])
 
 AC_CACHE_CHECK([for Python includes], [ac_cv_python_includes],[
@@ -49,9 +57,6 @@
   ])
   SWIG_PY_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS($ac_cv_python_libs)`"
 
-  if test "$SWIG" = "none"; then
-SWIG_PY_ERRMSG=""
-  else
   # Look more closely at the SWIG and Python versions to
   # determine SWIG_PY_OPTS. We can skip this if we already
   # have the SWIG-generated files.
@@ -93,7 +97,14 @@
   fi
 
   SWIG_PL_ERRMSG="check config.log for details"
-  if test "$SWIG_PL_PERL" != "none"; then
+if test "$SWIG_PL_PERL" = "none"; then
+  SWIG_PL_ERRMSG="You specfied not to build Perl bindings or \
+suitable Perl interpreter is not found."
+else