unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: david larsson <david.larsson@selfhosted.xyz>
To: "Stefan Israelsson Tampe <stefan.itampe@gmail.com>" <guile-user@gnu.org>
Subject: Re: python-on-guile
Date: Wed, 19 Feb 2020 08:30:42 +0100	[thread overview]
Message-ID: <5284e75b7655a0c7c405c5eb24080e84@selfhosted.xyz> (raw)
In-Reply-To: <CAGua6m0d=L9b9MEMYekX0tL0PO3k+ZR+LP=7YYQojzr0VYdkmw@mail.gmail.com>

On 2020-02-18 20:05, Stefan Israelsson Tampe wrote:
> This looks like problems loading the stis-parser module, can you add
> that manually to the load list as well?
> 
> test to see that you can do
> 
> (use-modules (parser stis-parser lang python3-parser))
> 
> Regards
> Stefan

That did it, thanks! It compiles and installs for 
commit=226d33163e7f1e305c0b6e2ada37209513377dff

I added /usr/local/share/guile/site/2.2 where the parser and persist 
modules are located.

By default I only had the following for some reason(running PureOS):
scheme@(guile-user)> %load-path
$1 = ("/usr/share/guile/2.2" "/usr/share/guile/site/2.2" 
"/usr/share/guile/site" "/usr/share/guile")

Now I hope Ill be able to update the Guix packages for python-on-guile, 
guile-persist, and stis-parser, using the same commits.

Thanks again for your help!

Regards,
David

> 
> On Tue, Feb 18, 2020 at 11:46 AM david larsson
> <david.larsson@selfhosted.xyz> wrote:
> 
>> On 2020-02-13 08:41, Stefan Israelsson Tampe wrote:
>>> Hmm, seams guile has a problem finding guile-persists modules, as
>> you
>>> would probably get the same error if you do
>>> (use-modules (persist persistence))
>>> 
>>> Try source the guile-persist and add it to the load path directory
>>> (you probably need to do the same for stis-parser but there you
>> should
>>> source the module directory in stis-parser directory)
>>> 
>>> regards
>>> Stefan
>> 
>> I was able to run "(use-modules (persist persistence))" from a guile
>> 
>> prompt after adding the persist module to the load path and
>> exporting
>> LD_LIBRARY_PATH set to /usr/local/lib/guile/2.2/extensions.
>> 
>> Now Im getting this error on make:
>> 
>> -----------------
>> Makefile:1390: warning: overriding recipe for target 'python'
>> Makefile:771: warning: ignoring old recipe for target 'python'
>> GEN      language/python/eval.go
>> guile: warning: failed to install locale
>> warning: failed to install locale: Invalid argument
>> ice-9/boot-9.scm:752:25: In procedure dispatch-exception:
>> Syntax error:
>> /usr/share/guile/site/parser/stis-parser/lang/python3/tool.scm:37:2:
>> 
>> source expression failed to match any pattern in form (<p-cc> <S>
>> <Cut>
>> <CC> c)
>> make: *** [Makefile:1385: language/python/eval.go] Error 1
>> -----------------
>> 
>> Regards,
>> David
>> 
>>> 
>>> On Thu, Feb 13, 2020 at 8:31 AM david larsson
>>> <david.larsson@selfhosted.xyz> wrote:
>>> 
>>>> On 2020-02-12 21:14, Stefan Israelsson Tampe wrote:
>>>>> I saw from the stacktrace that the repo uses a not available
>>>> module. I
>>>>> dried to fix that and missed pushing it. I agave now pushed so
>> you
>>>>> could try to pull and compile again
>>>> 
>>>> Yep, now it works.
>>>> 
>>>> guile-persist builds on commit
>>>> 751c8834b401e81b6ea058a05861ebaf0b659f9d
>>>> stis-parser builds on commit
>>>> 8d49401e238ae703a466b5b98d3068e4fa974f2c
>>>> 
>>>> It's just the python-on-guile that fails now, for commit:
>>>> 226d33163e7f1e305c0b6e2ada37209513377dff
>>>> 
>>>> with:
>>>> ----------------
>>>> Makefile:1390: warning: overriding recipe for target 'python'
>>>> Makefile:771: warning: ignoring old recipe for target 'python'
>>>> GEN      oop/pf-objects.go
>>>> guile: warning: failed to install locale
>>>> warning: failed to install locale: Invalid argument
>>>> Backtrace:
>>>> In ice-9/boot-9.scm:
>>>> 2312:4 19 (save-module-excursion #<procedure 55e6116127c0 at
>>>> lang?>)
>>>> In language/scheme/compile-tree-il.scm:
>>>> 31:15 18 (_)
>>>> In ice-9/psyntax.scm:
>>>> 1235:36 17 (expand-top-sequence ((define-module (oop #) # (# ?)
>>>> ?)) ?)
>>>> 1182:24 16 (parse _ (("placeholder" placeholder)) ((top) #(# #
>>>> ?)) ?)
>>>> 285:10 15 (parse _ (("placeholder" placeholder)) (()) _ c&e (#
>>>> #) #)
>>>> In ice-9/eval.scm:
>>>> 293:34 14 (_ #<module (#{ g77}#) 55e6116dc0a0>)
>>>> In ice-9/boot-9.scm:
>>>> 2874:4 13 (define-module* _ #:filename _ #:pure _ #:version _ #
>>>> _ ?)
>>>> 2071:24 12 (call-with-deferred-observers #<procedure 55e611488910
>>>> ?>)
>>>> 2887:24 11 (_)
>>>> 222:29 10 (map1 (((oop goops)) ((oop dict) #:renamer #<proce?>)
>>>> ?))
>>>> 222:29  9 (map1 (((oop dict) #:renamer #<procedure 55e6116da?>)
>>>> ?))
>>>> 222:29  8 (map1 (((ice-9 vlist)) ((ice-9 match)) ((system # #))
>>>> ?))
>>>> 222:29  7 (map1 (((ice-9 match)) ((system base message)) ((# ?))
>>>> ?))
>>>> 222:29  6 (map1 (((system base message)) ((language python #)) #
>>>> ?))
>>>> 222:29  5 (map1 (((language python guilemod)) ((ice-9 #)) ((#
>>>> ?))))
>>>> 222:29  4 (map1 (((ice-9 pretty-print)) ((persist
>>>> persistance))))
>>>> 222:17  3 (map1 (((persist persistance))))
>>>> 2803:6  2 (resolve-interface _ #:select _ #:hide _ #:prefix _ #
>>>> _ ?)
>>>> In unknown file:
>>>> 1 (scm-error misc-error #f "~A ~S" ("no code for modu?"
>>>> ?) ?)
>>>> In ice-9/boot-9.scm:
>>>> 752:25  0 (dispatch-exception _ _ _)
>>>> 
>>>> ice-9/boot-9.scm:752:25: In procedure dispatch-exception:
>>>> no code for module (persist persistance)
>>>> make: *** [Makefile:1385: oop/pf-objects.go] Error 1
>>>> -----------------
>>>> 
>>>> Regards,
>>>> David
>>>> 
>>>>> 
>>>>> On Wed, Feb 12, 2020 at 9:00 PM david larsson
>>>>> <david.larsson@selfhosted.xyz> wrote:
>>>>> 
>>>>>> On 2020-02-12 20:52, Stefan Israelsson Tampe wrote:
>>>>>>> Okey, thanks, try to checkout a new version of guile-persists
>>>> and
>>>>>> try
>>>>>>> again
>>>>>> 
>>>>>> The commit the error message below is from is the most recent
>>>>>> version
>>>>>> AFAICT, from "22hours ago":
>>>> https://gitlab.com/tampe/guile-persist
>>>>>> commit 659abf1dc64c1aa9d9e4c27fe349100dc908ee6c
>>>>>> 
>>>>>> Regards,
>>>>>> David
>>>>>> 
>>>>>>> 
>>>>>>> On Wed, Feb 12, 2020 at 8:47 PM david larsson
>>>>>>> <david.larsson@selfhosted.xyz> wrote:
>>>>>>> 
>>>>>>>> On 2020-02-12 18:18, Stefan Israelsson Tampe wrote:
>>>>>>>>> you should update the guile-persist repo and also
>> stis-parser,
>>>>>>>> there
>>>>>>>>> was some cond-expand issues in those as well
>>>>>>>> 
>>>>>>>> Ok. I tried that. stis-parser now built fine on commit
>>>>>>>> 8d49401e238ae703a466b5b98d3068e4fa974f2c
>>>>>>>> 
>>>>>>>> but guile-persist failed on make for commit:
>>>>>>>> 659abf1dc64c1aa9d9e4c27fe349100dc908ee6c
>>>>>>>> 
>>>>>>>> ---------------------
>>>>>>>> make  all-recursive
>>>>>>>> make[1]: Entering directory
>>>>>>>> '/home/user1/VirtualHome/src/guile-persist'
>>>>>>>> Making all in src/
>>>>>>>> make[2]: Entering directory
>>>>>>>> '/home/user1/VirtualHome/src/guile-persist/src'
>>>>>>>> make  all-am
>>>>>>>> make[3]: Entering directory
>>>>>>>> '/home/user1/VirtualHome/src/guile-persist/src'
>>>>>>>> make[3]: Nothing to be done for 'all-am'.
>>>>>>>> make[3]: Leaving directory
>>>>>>>> '/home/user1/VirtualHome/src/guile-persist/src'
>>>>>>>> make[2]: Leaving directory
>>>>>>>> '/home/user1/VirtualHome/src/guile-persist/src'
>>>>>>>> make[2]: Entering directory
>>>>>>>> '/home/user1/VirtualHome/src/guile-persist'
>>>>>>>> GEN      persist/slask.go
>>>>>>>> guile: warning: failed to install locale
>>>>>>>> warning: failed to install locale: Invalid argument
>>>>>>>> wrote `persist/slask.go'
>>>>>>>> GEN      persist/primitive.go
>>>>>>>> guile: warning: failed to install locale
>>>>>>>> warning: failed to install locale: Invalid argument
>>>>>>>> wrote `persist/primitive.go'
>>>>>>>> GEN      persist/persistance.go
>>>>>>>> guile: warning: failed to install locale
>>>>>>>> warning: failed to install locale: Invalid argument
>>>>>>>> Backtrace:
>>>>>>>> In ice-9/psyntax.scm:
>>>>>>>> 1235:36 19 (expand-top-sequence ((define-module (persist #) #
>> #
>>>>>>>> ?)) ?)
>>>>>>>> 1182:24 18 (parse _ (("placeholder" placeholder)) ((top) #(#
>> #
>>>>>>>> ?)) ?)
>>>>>>>> 285:10 17 (parse _ (("placeholder" placeholder)) (()) _ c&e
>> (#
>>>>>>>> #) #)
>>>>>>>> In ice-9/eval.scm:
>>>>>>>> 293:34 16 (_ #<module (#{ g77}#) 55f2082600a0>)
>>>>>>>> In ice-9/boot-9.scm:
>>>>>>>> 2874:4 15 (define-module* _ #:filename _ #:pure _ #:version _
>> #
>>>>>>>> _ ?)
>>>>>>>> 2071:24 14 (call-with-deferred-observers #<procedure
>>>> 55f20800c0f0
>>>>>>>> ?>)
>>>>>>>> 2887:24 13 (_)
>>>>>>>> 222:29 12 (map1 (((system vm loader)) ((system vm program))
>> (#)
>>>>>>>> ?))
>>>>>>>> 222:29 11 (map1 (((system vm program)) ((system vm debug))
>>>> ((?))
>>>>>>>> ?))
>>>>>>>> 222:29 10 (map1 (((system vm debug)) ((system vm dwarf)) ((#
>>>> ?))
>>>>>>>> ?))
>>>>>>>> 222:29  9 (map1 (((system vm dwarf)) ((ice-9 match)) ((ice-9
>>>> ?))
>>>>>>>> ?))
>>>>>>>> 222:29  8 (map1 (((ice-9 match)) ((ice-9 vlist)) ((ice-9 #))
>>>> (#)
>>>>>>>> ?))
>>>>>>>> 222:29  7 (map1 (((ice-9 vlist)) ((ice-9 control)) ((ice-9
>> #))
>>>> #
>>>>>>>> ?))
>>>>>>>> 222:29  6 (map1 (((ice-9 control)) ((ice-9 pretty-print))
>> ((?))
>>>>>>>> ?))
>>>>>>>> 222:29  5 (map1 (((ice-9 pretty-print)) ((oop goops)) ((oop
>> #))
>>>>>>>> ?))
>>>>>>>> 222:29  4 (map1 (((oop goops)) ((oop dict)) ((persist #))
>> ((?))
>>>>>>>> ?))
>>>>>>>> 222:17  3 (map1 (((oop dict)) ((persist primitive)) ((# #))
>> (#)
>>>>>>>> #))
>>>>>>>> 2803:6  2 (resolve-interface _ #:select _ #:hide _ #:prefix _
>> #
>>>>>>>> _ ?)
>>>>>>>> In unknown file:
>>>>>>>> 1 (scm-error misc-error #f "~A ~S" ("no code for modu?"
>>>>>>>> ?) ?)
>>>>>>>> In ice-9/boot-9.scm:
>>>>>>>> 752:25  0 (dispatch-exception _ _ _)
>>>>>>>> 
>>>>>>>> ice-9/boot-9.scm:752:25: In procedure dispatch-exception:
>>>>>>>> no code for module (oop dict)
>>>>>>>> make[2]: *** [Makefile:945: persist/persistance.go] Error 1
>>>>>>>> make[2]: Leaving directory
>>>>>>>> '/home/user1/VirtualHome/src/guile-persist'
>>>>>>>> make[1]: *** [Makefile:519: all-recursive] Error 1
>>>>>>>> make[1]: Leaving directory
>>>>>>>> '/home/user1/VirtualHome/src/guile-persist'
>>>>>>>> make: *** [Makefile:399: all] Error 2
>>>>>>>> -------------------------
>>>>>>>> 
>>>>>>>> The error seems very related to the make error for
>>>>>> python-on-guile.
>>>>>>>> 
>>>>>>>> Regards,
>>>>>>>> David
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On Wed, Feb 12, 2020 at 4:26 PM david larsson
>>>>>>>>> <david.larsson@selfhosted.xyz> wrote:
>>>>>>>>> 
>>>>>>>>>> On 2020-02-12 10:59, Stefan Israelsson Tampe wrote:
>>>>>>>>>>> no code for module (persist persistance)
>>>>>>>>>>> 
>>>>>>>>>>> can you use  (persist persistance)  e.g. from the guile
>>>> shell,
>>>>>>>>>>> 
>>>>>>>>>>>> (use-modules  (persist persistance) )
>>>>>>>>>> 
>>>>>>>>>> Nope, that gives the same error. I had some issue when
>>>>>> compiling
>>>>>>>> the
>>>>>>>>>> 
>>>>>>>>>> stis-parser and/or guile-persist as well and solved it by
>>>>>> adding
>>>>>>>> a
>>>>>>>>>> symlink in /usr/local/include/ something. So Ill look into
>>>>>>>> whether I
>>>>>>>>>> 
>>>>>>>>>> have some path/environment variable issue on my machine. Im
>>>>>>>> running
>>>>>>>>>> PureOS which I think tracks Debian stable, so some stuff
>> can
>>>> be
>>>>>>>>>> pretty
>>>>>>>>>> old and maybe thats the reason.
>>>>>>>>>> 
>>>>>>>>>> Regards,
>>>>>>>>>> David
>>>>>>>>>> 
>>>>>>>>>>> ...
>>>>>>>>>>> 
>>>>>>>>>>> /Stefan
>>>>>>>>>>> 
>>>>>>>>>>> On Wed, Feb 12, 2020 at 10:18 AM david larsson
>>>>>>>>>>> <david.larsson@selfhosted.xyz> wrote:
>>>>>>>>>>> 
>>>>>>>>>>>> On 2020-02-11 21:57, Stefan Israelsson Tampe wrote:
>>>>>>>>>>>>> This error is fixed in repository
>>>>>>>>>>>>> /Stefan
>>>>>>>>>>>> 
>>>>>>>>>>>> Thanks. That solved that part. Now Im getting this error
>> on
>>>>>>>> make:
>>>>>>>>>>>> 
>>>>>>>>>>>> (commit 226d33163e7f1e305c0b6e2ada37209513377dff)
>>>>>>>>>>>> ----------------------
>>>>>>>>>>>> 
>>>>>>>>>>>> Makefile:1390: warning: overriding recipe for target
>>>> 'python'
>>>>>>>>>>>> Makefile:771: warning: ignoring old recipe for target
>>>>>> 'python'
>>>>>>>>>>>> GEN      oop/pf-objects.go
>>>>>>>>>>>> guile: warning: failed to install locale
>>>>>>>>>>>> warning: failed to install locale: Invalid argument
>>>>>>>>>>>> Backtrace:
>>>>>>>>>>>> In ice-9/boot-9.scm:
>>>>>>>>>>>> 2312:4 19 (save-module-excursion #<procedure 55a897256bc0
>>>> at
>>>>>>>>>>>> lang?>)
>>>>>>>>>>>> In language/scheme/compile-tree-il.scm:
>>>>>>>>>>>> 31:15 18 (_)
>>>>>>>>>>>> In ice-9/psyntax.scm:
>>>>>>>>>>>> 1235:36 17 (expand-top-sequence ((define-module (oop #) #
>>>> (#
>>>>>> ?)
>>>>>>>>>>>> ?)) ?)
>>>>>>>>>>>> 1182:24 16 (parse _ (("placeholder" placeholder)) ((top)
>>>> #(#
>>>>>> #
>>>>>>>>>>>> ?)) ?)
>>>>>>>>>>>> 285:10 15 (parse _ (("placeholder" placeholder)) (()) _
>> c&e
>>>>>> (#
>>>>>>>>>>>> #) #)
>>>>>>>>>>>> In ice-9/eval.scm:
>>>>>>>>>>>> 293:34 14 (_ #<module (#{ g77}#) 55a8972dd0a0>)
>>>>>>>>>>>> In ice-9/boot-9.scm:
>>>>>>>>>>>> 2874:4 13 (define-module* _ #:filename _ #:pure _
>> #:version
>>>> _
>>>>>> #
>>>>>>>>>>>> _ ?)
>>>>>>>>>>>> 2071:24 12 (call-with-deferred-observers #<procedure
>>>>>>>> 55a897086910
>>>>>>>>>>>> ?>)
>>>>>>>>>>>> 2887:24 11 (_)
>>>>>>>>>>>> 222:29 10 (map1 (((oop goops)) ((oop dict) #:renamer
>>>>>> #<proce?>)
>>>>>>>>>>>> ?))
>>>>>>>>>>>> 222:29  9 (map1 (((oop dict) #:renamer #<procedure
>>>>>> 55a8972fb?>)
>>>>>>>>>>>> ?))
>>>>>>>>>>>> 222:29  8 (map1 (((ice-9 vlist)) ((ice-9 match)) ((system
>> #
>>>>>> #))
>>>>>>>>>>>> ?))
>>>>>>>>>>>> 222:29  7 (map1 (((ice-9 match)) ((system base message))
>>>> ((#
>>>>>>>> ?))
>>>>>>>>>>>> ?))
>>>>>>>>>>>> 222:29  6 (map1 (((system base message)) ((language
>> python
>>>>>> #))
>>>>>>>> #
>>>>>>>>>>>> ?))
>>>>>>>>>>>> 222:29  5 (map1 (((language python guilemod)) ((ice-9 #))
>>>> ((#
>>>>>>>>>>>> ?))))
>>>>>>>>>>>> 222:29  4 (map1 (((ice-9 pretty-print)) ((persist
>>>>>>>>>>>> persistance))))
>>>>>>>>>>>> 222:17  3 (map1 (((persist persistance))))
>>>>>>>>>>>> 2803:6  2 (resolve-interface _ #:select _ #:hide _
>> #:prefix
>>>> _
>>>>>> #
>>>>>>>>>>>> _ ?)
>>>>>>>>>>>> In unknown file:
>>>>>>>>>>>> 1 (scm-error misc-error #f "~A ~S" ("no code for modu?"
>>>>>>>>>>>> ?) ?)
>>>>>>>>>>>> In ice-9/boot-9.scm:
>>>>>>>>>>>> 752:25  0 (dispatch-exception _ _ _)
>>>>>>>>>>>> 
>>>>>>>>>>>> ice-9/boot-9.scm:752:25: In procedure dispatch-exception:
>>>>>>>>>>>> no code for module (persist persistance)
>>>>>>>>>>>> make: *** [Makefile:1385: oop/pf-objects.go] Error 1
>>>>>>>>>>>> 
>>>>>>>>>>>> ----------------------
>>>>>>>>>>>> 
>>>>>>>>>>>> Regards,
>>>>>>>>>>>> David
>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>>> On Tue, Feb 11, 2020 at 8:17 AM david larsson
>>>>>>>>>>>>> <david.larsson@selfhosted.xyz> wrote:
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> On 2020-02-10 21:11, Stefan Israelsson Tampe wrote:
>>>>>>>>>>>>>>> I have now added the bytes constructor that was not
>>>>>> working.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Thanks!
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> To compile from source please try use the git
>> repository
>>>>>> at:
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> https://gitlab.com/python-on-guile/python-on-guile/
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> see readme for how to compile and what dependencies
>> you
>>>>>>>> have.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> I was able to build and install:
>>>>>>>>>>>>>> - guile-persist: commit
>>>>>>>>>> ebebb66ae6d6c47dbc406cdbcaccb5ffed2e463a
>>>>>>>>>>>>>> - stis-parser: commit
>>>>>>>> 7673dd576abb445fbcfce8c4b6ae961ee860902e
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> but for python-on-guile Im getting this error on make:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> --------------
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Makefile:1390: warning: overriding recipe for target
>>>>>> 'python'
>>>>>>>>>>>>>> Makefile:771: warning: ignoring old recipe for target
>>>>>>>> 'python'
>>>>>>>>>>>>>> GEN      language/python/guilemod.go
>>>>>>>>>>>>>> guile: warning: failed to install locale
>>>>>>>>>>>>>> warning: failed to install locale: Invalid argument
>>>>>>>>>>>>>> ice-9/boot-9.scm:752:25: In procedure
>> dispatch-exception:
>>>>>>>>>>>>>> Syntax error:
>>>>>>>>>>>>>> language/python/guilemod.scm:271:0: cond-expand:
>>>>>> unfulfilled
>>>>>>>>>>>>>> cond-expand
>>>>>>>>>>>>>> in form (cond-expand (guile-3.0 (define-set-M
>>>>>>>>>> lookup-warning-type
>>>>>>>>>>>>>> lookup-warning-type) (define-set-M warning warning)
>> (set!
>>>>>>>>>>>>>> %warning-types
>>>>>>>>>>>>>> w-types)) (guile-2.0 or guile-2.2 (define-M
>>>> %warning-types
>>>>>>>>>>>> w-types)
>>>>>>>>>>>>>> (define-exp-M lookup-warning-type (lambda (name)
>> "Return
>>>>>> the
>>>>>>>>>>>> warning
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> type NAME or `#f' if not found." ((M find) (lambda (wt)
>>>>>> (eq?
>>>>>>>>>> name
>>>>>>>>>>>>>> ((M
>>>>>>>>>>>>>> warning-type-name) wt))) (M %warning-types))))))
>>>>>>>>>>>>>> make: *** [Makefile:1385: language/python/guilemod.go]
>>>>>> Error
>>>>>>>> 1
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> ---------------
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Im compiling with guile2.2
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>> David
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Regards
>>>>>>>>>>>>>>> Stefan
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> On Mon, Feb 10, 2020 at 1:14 PM david larsson
>>>>>>>>>>>>>>> <david.larsson@selfhosted.xyz> wrote:
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> On 2020-02-09 21:36, Stefan Israelsson Tampe wrote:
>>>>>>>>>>>>>>>>> in sys that is
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> On Sun, Feb 9, 2020 at 9:36 PM Stefan Israelsson
>> Tampe
>>>>>>>>>>>>>>>>> <stefan.itampe@gmail.com> wrote:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> OKey, I changed the values from immutable lists to
>>>>>> lists.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Great!
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> On Sun, Feb 9, 2020 at 9:27 PM Stefan Israelsson
>>>> Tampe
>>>>>>>>>>>>>>>>>> <stefan.itampe@gmail.com> wrote:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> Note that a lot of things are untested because I'm
>>>>>> alone
>>>>>>>> on
>>>>>>>>>>>> the
>>>>>>>>>>>>>>>>>> development.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Ok, I understand.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> I haven't been able to build a recent version, but if
>>>> you
>>>>>>>> can
>>>>>>>>>>>>>> share
>>>>>>>>>>>>>>>> some
>>>>>>>>>>>>>>>> updated instructions, then I could perhaps help out
>>>> with
>>>>>>>> some
>>>>>>>>>>>>>>>> occasional
>>>>>>>>>>>>>>>> testing. I have only managed to build from the old
>>>> commit
>>>>>>>>>>>> fc0d7a9
>>>>>>>>>>>>>> by
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> updating the current python-on-guile guix package
>>>>>> locally.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> netlib is not included, you can test to add the
>>>> python
>>>>>>>>>> module
>>>>>>>>>>>>>>>> file
>>>>>>>>>>>>>>>>>> to a (language python module) directory
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> What's been working for me so far is only (load
>>>>>>>>>>>>>> "path/to/file.py")
>>>>>>>>>>>>>>>> and
>>>>>>>>>>>>>>>> (load-compiled "path/to/file.go").
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> (use-modules (a b c)) did not work for me, except to
>>>> load
>>>>>>>>>>>> modules
>>>>>>>>>>>>>>>> already shipped with python-on-guile repo; (language
>>>>>> python
>>>>>>>>>>>>>> module
>>>>>>>>>>>>>>>> python) etc.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> I have recently added much more of the python
>> stdlib
>>>>>> aka
>>>>>>>>>> 3.7
>>>>>>>>>>>>>> but
>>>>>>>>>>>>>>>> not
>>>>>>>>>>>>>>>>>> all.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> Not sure what you mean by .scm file and .py fle
>> when
>>>> it
>>>>>>>>>> comes
>>>>>>>>>>>>>> to
>>>>>>>>>>>>>>>>>> base64
>>>>>>>>>>>>>>>>>> using that module in scheme gives
>>>>>>>>>>>>>>>>>> scheme@(guile-user)> (b64decode (b64encode "abc"))
>>>>>>>>>>>>>>>>>> $2 = b'abc'
>>>>>>>>>>>>>>>>>> scheme@(guile-user)> (b64decode (b64encode #(1 2
>> 3)))
>>>>>>>>>>>>>>>>>> $3 = b'\x01\x02\x03'
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> Which return a bytevector if you want a string back
>>>> you
>>>>>>>>>> need
>>>>>>>>>>>> to
>>>>>>>>>>>>>>>>>> interpret the bytevector back to a string
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Im getting weird results when trying to output the
>>>> base64
>>>>>>>>>>>>>>>> representation
>>>>>>>>>>>>>>>> of a string, take btest.py:
>>>>>>>>>>>>>>>> #import sys
>>>>>>>>>>>>>>>> import base64
>>>>>>>>>>>>>>>> def mybmethod(x):
>>>>>>>>>>>>>>>> mybytes = bytes(x, "utf-8")
>>>>>>>>>>>>>>>> encodedbytes = base64.b64encode(mybytes)
>>>>>>>>>>>>>>>> myb64string = str(encodedbytes, "utf-8")
>>>>>>>>>>>>>>>> return myb64string
>>>>>>>>>>>>>>>> #print(myb64string)
>>>>>>>>>>>>>>>> #mybmethod(sys.argv[1])
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> and assume btest.scm using it with:
>>>>>>>>>>>>>>>> (add-to-load-path (dirname (current-filename)))
>>>>>>>>>>>>>>>> (use-modules (language python module python))
>>>>>>>>>>>>>>>> (load "btest.py")
>>>>>>>>>>>>>>>> (define-public (mybmethodscm cmdline)
>>>>>>>>>>>>>>>> (display (mybmethod (cadr cmdline))))
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> With this it will not work to run the scheme file
>> with
>>>>>>>>>>>>>>>> guile -e mybmethodscm btest.scm dfasdf
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> The error I got indicated that btest.py uses the
>> bytes
>>>>>>>>>>>> procedure
>>>>>>>>>>>>>>>> from
>>>>>>>>>>>>>>>> within python-on-guile instead of from the python3
>>>> base64
>>>>>>>>>> lib:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> -------------------
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> In
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> /home/user1/VirtualHome/src/code_guile/python-on-guile-test/btest.scm:
>>>>>>>>>>>>>>>> 18:11  4 (mybmethodscm _)
>>>>>>>>>>>>>>>> In btest.py:
>>>>>>>>>>>>>>>> 10:584  3 (_ "dfasdf" . _)
>>>>>>>>>>>>>>>> In oop/pf-objects.scm:
>>>>>>>>>>>>>>>> 584:15  2 (create-object _ _)
>>>>>>>>>>>>>>>> 567:11  1 (the-create-object _ _)
>>>>>>>>>>>>>>>> In language/python/bytes.scm:
>>>>>>>>>>>>>>>> 99:6  0 Exception thrown while printing backtrace:
>>>>>>>>>>>>>>>> Unbound slot in object Error while printing
>> exception.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> language/python/bytes.scm:99:6: Wrong number of
>>>> arguments
>>>>>>>> to
>>>>>>>>>>>>>>>> #<procedure
>>>>>>>>>>>>>>>> 7f2bab5d4560 at language/python/bytes.scm:92:0 (self)
>> |
>>>>>>>> (self
>>>>>>>>>>>> s)>
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> -------------------
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> For a moment though, I could run:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> guile -e mybmethodscm btest.scm dfasdf | rev | base64
>>>> -d
>>>>>> |
>>>>>>>>>> rev
>>>>>>>>>>>>>>>> # gives: dfasdf
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> which was also strange.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> modules are a bit difficult as I use the guile
>> module
>>>>>>>>>> system
>>>>>>>>>>>>>> and
>>>>>>>>>>>>>>>> the
>>>>>>>>>>>>>>>>>> python modules are different.
>>>>>>>>>>>>>>>>>> So nested modules needs some work. The best is to
>>>> test
>>>>>>>> and
>>>>>>>>>>>> see.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> Ok, got it!
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> I will look into the sys thingies
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> Regards
>>>>>>>>>>>>>>>>>> Stefan
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> On Sun, Feb 9, 2020 at 8:40 PM david larsson
>>>>>>>>>>>>>>>>>> <david.larsson@selfhosted.xyz> wrote:
>>>>>>>>>>>>>>>>>> Thanks for your explanations, but unfortunately I
>>>> still
>>>>>>>>>> can't
>>>>>>>>>>>>>>>> figure
>>>>>>>>>>>>>>>>>> out
>>>>>>>>>>>>>>>>>> how to use this except in the simplest of cases.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> I am using the guix package python-on-guile
>>>>>>>> 0.1.0-3.00a51a2
>>>>>>>>>> -
>>>>>>>>>>>>>>>> maybe
>>>>>>>>>>>>>>>>>> thats outdated?
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> The simple things I have managed to do, are like:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> (add-to-load-path (dirname (current-filename)))
>>>>>>>>>>>>>>>>>> (load-compiled python-test.go)
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> where python-test.go is compiled with:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> guild compile python-test.py
>> --output=python-test.go
>>>>>>>>>>>>>>>>>> --from=python
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> and contains simple things, like:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> f(s):
>>>>>>>>>>>>>>>>>> a = s + 1
>>>>>>>>>>>>>>>>>> return a
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> but if I add statements to python-test.py like:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> import netaddr
>>>>>>>>>>>>>>>>>> def myfun(a)
>>>>>>>>>>>>>>>>>> <something using netaddr>
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> (netaddr is a module installed via: pip3 install
>>>> --user
>>>>>>>>>>>>>> netaddr)
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> I receive an error about not finding the module.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> I am able to add only the modules which exist in
>> the
>>>>>>>>>>>>>>>> python-on-guile
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> repo, like:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> import sys
>>>>>>>>>>>>>>>>>> import base64
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> but Im getting errors, for example Im not able to
>> use
>>>>>>>>>> things
>>>>>>>>>>>>>> from
>>>>>>>>>>>>>>>>>> sys,
>>>>>>>>>>>>>>>>>> like:
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> sys.path.append(<somepath>)
>>>>>>>>>>>>>>>>>> sys.path.insert(0, <somepath>)
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> I was able to use some things from base64 but I
>> only
>>>>>>>>>> received
>>>>>>>>>>>>>>>> weird
>>>>>>>>>>>>>>>>>> results when converting between bytevectors and
>>>> strings
>>>>>>>>>>>> between
>>>>>>>>>>>>>>>> the
>>>>>>>>>>>>>>>>>> .scm
>>>>>>>>>>>>>>>>>> file and .py file. What works fine using python3
>>>>>>>>>>>> python-test.py
>>>>>>>>>>>>>>>> do
>>>>>>>>>>>>>>>>>> not
>>>>>>>>>>>>>>>>>> usually work when passing either a bytevector or
>>>> string
>>>>>>>> to
>>>>>>>>>>>> the
>>>>>>>>>>>>>>>> same
>>>>>>>>>>>>>>>>>> go-compiled file from the .scm file using the
>>>>>>>> python-code.
>>>>>>>>>>>> Not
>>>>>>>>>>>>>>>> sure
>>>>>>>>>>>>>>>>>> whether there's a problem using python3 vs python2
>>>>>> here?
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> Essentially, what Im looking for is how to proceed
>> if
>>>> I
>>>>>>>>>> want
>>>>>>>>>>>> to
>>>>>>>>>>>>>>>> use
>>>>>>>>>>>>>>>>>> modules installed via the pip package manager from
>>>>>> guile,
>>>>>>>>>> and
>>>>>>>>>>>>>>>> what
>>>>>>>>>>>>>>>>>> paths
>>>>>>>>>>>>>>>>>> and imports I need to make, and how I might need to
>>>>>> wrap
>>>>>>>>>> them
>>>>>>>>>>>>>>>>>> correctly
>>>>>>>>>>>>>>>>>> in the scheme and python files to invoke a pip
>>>> package
>>>>>>>>>>>>>> procedure
>>>>>>>>>>>>>>>>>> from
>>>>>>>>>>>>>>>>>> guile.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>>>>>>> David
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> On 2020-02-09 18:59, Stefan Israelsson Tampe wrote:
>>>>>>>>>>>>>>>>>>> I'm the author of that lib.
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 1)
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> The main bindings are reachable through (language
>>>>>> python
>>>>>>>>>>>>>> module
>>>>>>>>>>>>>>>>>>> python)
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> So you could now go ahead and do
>>>>>>>>>>>>>>>>>>>> (use-modules (language python module python))
>>>>>>>>>>>>>>>>>>>> ;L python
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> And you will get a python shell that works quite
>> ok
>>>>>> for
>>>>>>>>>> one
>>>>>>>>>>>>>>>> liners
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 2)
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> If you write a module and place it in a/b/c.py
>>>>>>>>>>>>>>>>>>> you can use the classes and functions theirin by
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> (use-modules (a b c))
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 3)
>>>>>>>>>>>>>>>>>>> you can load a .py file as (i hope this work)
>>>>>>>>>>>>>>>>>>> (load "a.py")
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 4)
>>>>>>>>>>>>>>>>>>> If you place a module in (language python module
>>>> a.py)
>>>>>>>> you
>>>>>>>>>>>> can
>>>>>>>>>>>>>>>>>> import
>>>>>>>>>>>>>>>>>>> ir as a usual mode as
>>>>>>>>>>>>>>>>>>>> from a import *
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> The documentation is for the macro framework that
>>>>>>>> enables
>>>>>>>>>>>> you
>>>>>>>>>>>>>> to
>>>>>>>>>>>>>>>>>> work
>>>>>>>>>>>>>>>>>>> with python classes and idioms like python
>>>> iteration.
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Hope this helps
>>>>>>>>>>>>>>>>>>> /Stefan
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> On Sun, Feb 9, 2020 at 6:31 PM david larsson
>>>>>>>>>>>>>>>>>>> <david.larsson@selfhosted.xyz> wrote:
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> Hi everyone,
>>>>>>>>>>>>>>>>>>>> I am trying to wrap my head around how to use the
>>>>>>>>>>>>>>>> python-on-guile
>>>>>>>>>>>>>>>>>>>> library, but Im struggling. Does anyone have
>>>> example
>>>>>>>> code
>>>>>>>>>>>>>> that
>>>>>>>>>>>>>>>>>> might
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> help, and which isn't too advanced?
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> All tips and suggestions appreciated!
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>>>>>>>>> David



  parent reply	other threads:[~2020-02-19  7:30 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-09 17:30 python-on-guile david larsson
2020-02-09 17:59 ` python-on-guile Stefan Israelsson Tampe
2020-02-09 19:39   ` python-on-guile david larsson
     [not found]     ` <CAGua6m1aQuwGu4ZRRk9r1Ytao_QjftzCQK5+tb_B4axh-Y3aWg@mail.gmail.com>
     [not found]       ` <CAGua6m1VFHsaid+CGUN==3AvXqZTZUO8xbOSh3r4xNVTAik79g@mail.gmail.com>
     [not found]         ` <CAGua6m3vTY=hk8QaEoKUvFwPsm7N-uatMV1KyvgdAyKS4Gjh9g@mail.gmail.com>
2020-02-10 12:13           ` python-on-guile david larsson
2020-02-10 14:40             ` python-on-guile Stefan Israelsson Tampe
2020-02-10 14:46             ` python-on-guile Stefan Israelsson Tampe
2020-02-10 20:11             ` python-on-guile Stefan Israelsson Tampe
2020-02-11  7:17               ` python-on-guile david larsson
2020-02-11 10:44                 ` python-on-guile Stefan Israelsson Tampe
2020-02-11 20:57                 ` python-on-guile Stefan Israelsson Tampe
2020-02-12  9:18                   ` python-on-guile david larsson
2020-02-12  9:59                     ` python-on-guile Stefan Israelsson Tampe
2020-02-12 15:26                       ` python-on-guile david larsson
     [not found]                         ` <CAGua6m2SP2RZ1Ok5bG2xmoHGanmRUrfaG34yY7P8=AWs0fXw2g@mail.gmail.com>
2020-02-12 19:47                           ` python-on-guile david larsson
     [not found]                             ` <CAGua6m1rcNZT_15LN=dWRb66E93UyLDFfdkaJjmyWYerWE9Jpg@mail.gmail.com>
     [not found]                               ` <46dbd813788cc3d1dc0b994106c8a528@selfhosted.xyz>
     [not found]                                 ` <CAGua6m12ytkdDcHj+PEx615qCzaXPB4P+u-DCqWQexuRo28BWA@mail.gmail.com>
2020-02-13  7:30                                   ` python-on-guile david larsson
     [not found]                                     ` <CAGua6m2+hEpGf8Z+CfyO+-mKH4sQF-mVb7YS1=+88hF2bRkjPw@mail.gmail.com>
2020-02-18 10:45                                       ` python-on-guile david larsson
     [not found]                                         ` <CAGua6m0d=L9b9MEMYekX0tL0PO3k+ZR+LP=7YYQojzr0VYdkmw@mail.gmail.com>
2020-02-19  7:30                                           ` david larsson [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-04-23 15:00 Python-on-guile Mikael Djurfeldt
2021-04-23 20:35 ` Python-on-guile Zelphir Kaltstahl
2021-04-23 20:41 ` Python-on-guile Linus Björnstam
2021-04-23 21:04 ` Python-on-guile Matt Wette
2021-04-24  9:43   ` Python-on-guile Mikael Djurfeldt
2021-04-24 10:04 ` Python-on-guile Mikael Djurfeldt
2021-04-24 11:26   ` Python-on-guile Stefan Israelsson Tampe
2021-04-24 12:59     ` Python-on-guile Stefan Israelsson Tampe
2021-04-24 14:41       ` Python-on-guile Stefan Israelsson Tampe
2021-04-24 15:19         ` Python-on-guile Stefan Israelsson Tampe
2021-04-25  8:20           ` Python-on-guile Mikael Djurfeldt
2021-04-25 10:21             ` Python-on-guile Stefan Israelsson Tampe
2021-04-25  8:46           ` Python-on-guile Stefan Israelsson Tampe
2021-04-25 10:54       ` Python-on-guile Dr. Arne Babenhauserheide
2021-04-25 11:54         ` Python-on-guile Vivien Kraus via General Guile related discussions
2021-04-25 10:18 ` Python-on-guile Stefan Israelsson Tampe
2021-04-27 12:29 ` Python-on-guile Nala Ginrut
2019-07-09 17:15 python-on-guile Stefan Israelsson Tampe
2019-06-14 18:06 python-on-guile Stefan Israelsson Tampe
2019-06-22 21:07 ` python-on-guile Arne Babenhauserheide
2019-06-26 18:45 ` python-on-guile Nala Ginrut

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5284e75b7655a0c7c405c5eb24080e84@selfhosted.xyz \
    --to=david.larsson@selfhosted.xyz \
    --cc=guile-user@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).