Hi,

fort he general information... lovely Chris updated the build to build thrift 
and really generate the sources with the build.
Thank you very much for that Chris!
I just updated the necessary python code to also use the (on-the-fly) generated 
python classes and everything works again.

@Chris: The only thing which should / could be done is to copy the interop 
server jar to the plc4py module in the init phase or something. Because it 
relies on that to work.
And I think it is better to "pull" it from the plc4py module than to "push" it 
after the build of the interop-server module, as otherwise the interop-server 
needs to know "all" proxy implementations.

What do you think?

Julian

Am 23.04.19, 12:41 schrieb "Christofer Dutz" <[email protected]>:

    Hi Julian,
    
    And I'll replace the checked-in code in the java module with the execution 
of a maven plugin as part of the build.
    
    Chris
    
    Am 23.04.19, 12:30 schrieb "Julian Feinauer" <[email protected]>:
    
        Hi,
        
        I see... well, we can do that, no objections... I have just no idea how 
this whole "directory" resolution stuff works.
        But feel free to adapt it in my branch.
        
        Julian
        
        PS.: Or should I simply merge it into develop for all to play around?
        
        Am 23.04.19, 10:42 schrieb "Christofer Dutz" 
<[email protected]>:
        
            Hi Julian,
            
            I just checked out your feature-branch and can now see the plc4py 
directory.
            So as mentioned in another thread, I think it would be great to 
have a similar setup as with the other languages.
            Then we would have a "plc4py/api" and a "plc4py/proxy" module (As 
we are hoping to have "plc4py/s7" and alike in the near future).
            
            The "proxy" driver could then run the thrift generation stuff ... 
            
            What do you think?
            
            Chris
            
            Am 23.04.19, 10:00 schrieb "Julian Feinauer" 
<[email protected]>:
            
                For what?
                I just added a maven module for plc4py.. so feel free to add 
the "copy the jar from interop-server"-thing... as you can do that without 
googling, I know :D
                
                Am 23.04.19, 09:59 schrieb "Christofer Dutz" 
<[email protected]>:
                
                    Raising my hand ... :-)
                    
                    Chris
                    
                    Am 23.04.19, 09:38 schrieb "Julian Feinauer" 
<[email protected]>:
                    
                        Oh, and just one or two more comments.
                        I would love if someone who knows how modules in maven 
work (setup.py ...) could help a bit out here (perhaps copy the lib 
automatically during maven build).
                        And then, I'll create the PR as soon as someone else 
has tried it out : )
                        
                        Julian
                        
                        Am 21.04.19, 19:28 schrieb "Julian Feinauer" 
<[email protected]>:
                        
                            Hi Chris,
                            
                            No offense. Just wanted to start a discussion and 
get some feedback before a pr :)
                            
                            Julian
                            
                            Von meinem Mobiltelefon gesendet
                            
                            
                            -------- Ursprüngliche Nachricht --------
                            Betreff: Re: [python] Experimental version of 
plc4py available for testing!
                            Von: Christofer Dutz
                            An: [email protected]
                            Cc:
                            
                            Hi Julian,
                            
                            Great stuff :-)
                            
                            Well how about adding the plc4py to develop and 
work on the API from there? I mean you currently can't really use the c++ 
implementation sure to a lack of drivers (so this concept would also be great 
for that). The connection to the Java thrift server could be treated as a proxy 
and therefore the driver could be named something accordingly. Then we'd have 
the API module and a proxy driver implementation. Guess this setup should work 
for all languages.
                            
                            And let's see if the news on Tuesday will wash 
ashore someone interested and deeply into python that could help fine tune the 
API?
                            
                            Chris
                            
                            Outlook für Android<https://aka.ms/ghei36> 
herunterladen
                            
                            ________________________________
                            From: Julian Feinauer <[email protected]>
                            Sent: Sunday, April 21, 2019 2:34:58 PM
                            To: [email protected]
                            Subject: [python] Experimental version of plc4py 
available for testing!
                            
                            Hi all,
                            
                            as some of you may know, with the interop server 
(PLC4X-111) we are working towards providing language bindings for other 
languages.
                            And, as I thought I should learn python at some 
point, I decided to play around with the python bindings.
                            So, in my branch [1] you find the experimental 
implementation of a python api based on the interop server.
                            There are also some tests which pass and the mt / 
it where tried against my local s7 here and work also.
                            
                            All you need to run everything is (aside from 
installing the necessary dependencies, which are mainly thrift in version 
0.12.0) is written in the README.md.
                            
                            I would be very grateful if someone tries this out 
and gives feedback.
                            And we should also talk about some things like.
                            
                              *   How are these packages created in python, how 
to integrate this in our build?
                              *   How to manage the dependencies (there are 
many systems in python as I learned)
                              *   Is this API okay or not python-esque enough?
                            
                            Thanks all of you for your feedback.
                            And I would even suggest to prepare an experimental 
version of this with the next release to some python repos to let people play 
around with it in python. This could really be a killer feature to bring others 
to the community.
                            
                            Best
                            Julian
                            
                            PS.:
                            DISCLAIMER: That I work with Python does NOT mean 
that I like python, just to be clear!
                            
                            [1] 
https://github.com/apache/incubator-plc4x/tree/feature/PLC4X-111-interop-server
                            
                        
                        
                    
                    
                
                
            
            
        
        
    
    

Reply via email to