• Mystic python issues

    From g00r00@21:1/120 to Avon on Fri Oct 25 20:54:52 2019
    Nice to see you active again. Welcome back, trust things are going well for you.

    Things have been pretty hectic for me lately but I am still very slowly
    working on things. I've been meaning to dial out for a while now I just
    never seem to get around to having a big enough window of time that I feel should be spent trying to catch up on 6 months of messages :)

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Cyberia BBS | cyberiabbs.zapto.org | San Jose, CA (21:1/120)
  • From g00r00@21:1/120 to lemonlime on Fri Oct 25 20:56:10 2019
    I tried out Ubuntu Server 18.04 instead, which has Python 3.x out of the box, but not 2.7. I compiled 2.7.16 per the wiki instruxtions and ran ldconfig. Lo and behold, it worked perfectly! I was able to run the interbbs oneliner script without issue.

    I may do some more testing with Debian, and will report back if I have
    any luck.

    Thanks please let me know if you find anything. To be perfectly honest I
    don't have a lot of time to install that OS and version and do testing at the moment.

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Cyberia BBS | cyberiabbs.zapto.org | San Jose, CA (21:1/120)
  • From g00r00@21:1/120 to Al on Fri Oct 25 20:59:46 2019
    I don't know anything about python but I wonder if the scripts can be changed to work with the current version of python being deployed?

    Python 3 is an entirely different language than Python 2, its not compatible.

    The reason I selected Python 2 was because Python 3 at the time was very new, and the functions and syntax were actually changing, including the
    programming API. On the flipside, Python 2 is locked in and should not be changing, which would offer us the best long term compatibility.

    At the time, Python 2.7 was still the default for most Linux systems as well
    as MacOS. Its relatively effortless to install Python 2.7 on most systems
    that may have switched to Python 3, and many already come with it available to install automatically (although the issue with the shared option sort of
    ruins that).

    For me to switch to Python 3, I would probably end up having to support both Python 2 and 3. I may end up doing it though, I myself have to study up on Python 3 before I can though.

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Cyberia BBS | cyberiabbs.zapto.org | San Jose, CA (21:1/120)
  • From g00r00@21:1/120 to Oli on Fri Oct 25 21:02:06 2019
    Seriously, I thought the version you compile against is libpython 2.7
    and it should make no difference if you have libpython 2.7.13 or 2.7.16 installed.

    This is true. Any 2.7 version released in the last X (X being a long time
    that I am unsure of exactly without researching) should work fine.

    The issue only is that the operating systems that come with 2.7 by default seem to often compile it with the ability to embed it disabled. This makes it not worth no only with Mythic, but lots of other applications that use a Python subsystem. I don't know why the operating systems do this, I've seen plenty
    of people complaining about it over the years.

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Cyberia BBS | cyberiabbs.zapto.org | San Jose, CA (21:1/120)
  • From Al@21:4/106 to g00r00 on Fri Oct 25 21:54:20 2019
    I don't know anything about python but I wonder if the scripts can be changed to work with the current version of python being deployed?

    Python 3 is an entirely different language than Python 2, its not compatible.

    Yep, when I say current version being deployed I mean 2.7.

    I wish distro's would enable sharing.


    Just a quick note. There are a couple things we are hoping you can look
    at when time permits.

    Just a couple niggles I think but they are impacting.

    I have sent my comments to Avon who I think will share them with you but
    I am never far away and can give comments or help with testing /
    discovering if that would help in any way.


    Ttyl :-)
    Al

    --- MagickaBBS v0.13alpha (Linux/x86_64)
    * Origin: The Rusty MailBox - Penticton, BC Canada (21:4/106)
  • From g00r00@21:1/120 to Oli on Fri Oct 25 21:47:02 2019
    I haven't tested all possible combinations yesterday. Today I tried
    Python 2.7.16 compiled from source on Ubuntu 18.04 and indeed it works fine. But it gets even funnier: on Ubuntu 19.04 I had no success at all with any version. Something else is going on. Maybe it is related to the gcc version or to some library that is used by Python. I have no idea.

    Did you read the wiki on mysticbbs.com by chance? Its not just the enabled_shared option its also the character encoding that may different from system to system. I wonder if that could be factor in any of this?

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Cyberia BBS | cyberiabbs.zapto.org | San Jose, CA (21:1/120)
  • From g00r00@21:1/120 to lemonlime on Fri Oct 25 22:04:04 2019
    Thanks for the additional info - good to know at what point it's
    crashing out. It has now been solid for me on Ubuntu Server 18.04 with
    the packaged version of python 2.7.15. I wonder if there is the
    potential for g00r00 to implement a fix for this to make is less
    dependent on specific python builds etc. It doesn't appear to be due to the "enable shared" compiling option as was originally suspected.

    I have tested in the past with various Python versions. Any 2.7 version released in the past like 6 years or more *should* be fine (thats just an estimate).

    As the wiki notes, there are two issues (that I found anyway) that can cause issues one is the shared option and the other is the codepage the RTL is compiled using or something like that, it has to match the operating system.

    Its also possible there is a bug of course, but I have very much struggled to find issues with the actual Mystic functions. In theory if it works in Windows it should work in Linux assuming whatever environmental requirements are met.

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Cyberia BBS | cyberiabbs.zapto.org | San Jose, CA (21:1/120)
  • From g00r00@21:1/120 to lemonlime on Fri Oct 25 22:06:50 2019
    Yep, agreed. Seems Debian and Ubuntu 18.04 have enable-shared on by default in their packaged based python implementations anyhow.

    From my experience this is not true. The defaults were absolutely not
    compiled that way, at least not at the time I had tested (which was the final 18 LTS).

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Cyberia BBS | cyberiabbs.zapto.org | San Jose, CA (21:1/120)
  • From Oli@21:1/151 to g00r00 on Sat Oct 26 07:35:02 2019
    Hi g00r00!


    Seriously, I thought the version you compile against is libpython
    2.7 and it should make no difference if you have libpython 2.7.13
    or 2.7.16 installed.

    This is true. Any 2.7 version released in the last X (X being a long
    time that I am unsure of exactly without researching) should work
    fine.

    This seems to apply only to Ubuntu 18.04. We tested different 2.7.x version on Debian and most of them didn't work properly with Mystic.

    The issue only is that the operating systems that come with 2.7 by
    default seem to often compile it with the ability to embed it
    disabled. This makes it not worth no only with Mythic, but lots of
    other applications that use a Python subsystem. I don't know why the operating systems do this, I've seen plenty of people complaining
    about it over the years.

    Ubuntu and Debian both have libpython, which is also used by other packages in Debian/Ubunutu and they happily use any version of libpython2.7.

    I don't think the problem we discovered has anything to do with a missing --enable-shared build option. But I don't have a good explantation what causes it and I don't see any clear pattern.

    --- GoldED+/LNX 1.1.5-b20180707
    * Origin: format of this message has been mangled by Mystic BBS (21:1/151)
  • From Oli@21:1/151 to g00r00 on Sat Oct 26 07:36:00 2019
    Yep, agreed. Seems Debian and Ubuntu 18.04 have enable-shared on
    by default in their packaged based python implementations anyhow.


    From my experience this is not true. The defaults were absolutely not compiled that way, at least not at the time I had tested (which was
    the final 18 LTS).

    Maybe I misunderstand what --shared-enabled does. The fact is that Mystic's Python support works on Ubuntu without the need to compile Python.

    --- GoldED+/LNX 1.1.5-b20180707
    * Origin: format of this message has been mangled by Mystic BBS (21:1/151)
  • From g00r00@21:1/120 to Al on Fri Oct 25 22:26:46 2019
    I have sent my comments to Avon who I think will share them with you but
    I am never far away and can give comments or help with testing / discovering if that would help in any way.

    I am sure he will pass them along! I haven't had time to get my BBS back up and see where I am with that, so Avon may be waiting for me to get more organized to share what he has collected, assuming he has collected things :)

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Cyberia BBS | cyberiabbs.zapto.org | San Jose, CA (21:1/120)
  • From Oli@21:1/151 to g00r00 on Sat Oct 26 07:40:46 2019
    I haven't tested all possible combinations yesterday. Today I
    tried Python 2.7.16 compiled from source on Ubuntu 18.04 and
    indeed it works fine. But it gets even funnier: on Ubuntu 19.04 I
    had no success at all with any version. Something else is going
    on. Maybe it is related to the gcc version or to some library
    that is used by Python. I have no idea.

    Did you read the wiki on mysticbbs.com by chance? Its not just the enabled_shared option its also the character encoding that may
    different from system to system. I wonder if that could be factor in
    any of this?

    Yeah, I did and I followed the steps in the wiki to build Python.

    I wonder, would it make a difference, if Mystic were compiled from sources on the distribution it runs? Would the problem dissapear, if it were compiled on Debian?

    --- GoldED+/LNX 1.1.5-b20180707
    * Origin: format of this message has been mangled by Mystic BBS (21:1/151)
  • From Avon@21:1/101 to g00r00 on Sat Oct 26 19:39:54 2019
    On 25 Oct 2019 at 08:54p, g00r00 pondered and said...

    Things have been pretty hectic for me lately but I am still very slowly working on things. I've been meaning to dial out for a while now I just never seem to get around to having a big enough window of time that I
    feel should be spent trying to catch up on 6 months of messages :)

    I'd just pick up from the here now vs. trying to review too much old stuff, that way the tidal wave doesn't wash over you too much. I confess I have days when I do very little in the BBS realm and others when I do more as the mood takes me. Anyways nice to see you active again and (as always) let me know
    how I can be of help to anything you're spit balling or working on as
    time / inclination permit :)

    --- Mystic BBS v1.12 A43 2019/03/03 (Windows/32)
    * Origin: Agency BBS | Dunedin, New Zealand | agency.bbs.nz (21:1/101)
  • From Avon@21:1/101 to g00r00 on Sat Oct 26 19:46:48 2019
    On 25 Oct 2019 at 10:26p, g00r00 pondered and said...

    I am sure he will pass them along! I haven't had time to get my BBS
    back up and see where I am with that, so Avon may be waiting for me to
    get more organized to share what he has collected, assuming he has collected things :)

    I do have a few notes. I figured I'd just send them as a netmail to your fsxNet address if that works for you? You could pick them up from 21:1/100 when
    you're ready. If you would like them another way, just let me know :)

    --- Mystic BBS v1.12 A43 2019/03/03 (Windows/32)
    * Origin: Agency BBS | Dunedin, New Zealand | agency.bbs.nz (21:1/101)
  • From Vk3jed@21:1/109 to g00r00 on Sun Oct 27 09:23:00 2019
    On 10-25-19 20:54, g00r00 wrote to Avon <=-

    Nice to see you active again. Welcome back, trust things are going well for you.

    Things have been pretty hectic for me lately but I am still very slowly working on things. I've been meaning to dial out for a while now I
    just never seem to get around to having a big enough window of time
    that I feel should be spent trying to catch up on 6 months of messages
    :)

    Welcome back g00r00. :)



    ... This tagline is umop apisdn
    === MultiMail/Linux v0.51
    --- SBBSecho 3.03-Linux
    * Origin: Freeway BBS Bendigo,Australia freeway.apana.org.au (21:1/109)
  • From Avon@21:1/101 to g00r00 on Sun Oct 27 21:32:04 2019
    On 25 Oct 2019 at 10:26p, g00r00 pondered and said...

    I am sure he will pass them along! I haven't had time to get my BBS

    Done :)

    --- Mystic BBS v1.12 A43 2019/03/03 (Windows/32)
    * Origin: Agency BBS | Dunedin, New Zealand | agency.bbs.nz (21:1/101)
  • From lemonlime@21:4/162 to g00r00 on Tue Oct 29 12:31:00 2019
    As the wiki notes, there are two issues (that I found anyway) that can cause issues one is the shared option and the other is the codepage the RTL is compiled using or something like that, it has to match the operating system.

    Its also possible there is a bug of course, but I have very much
    struggled to find issues with the actual Mystic functions. In theory if it works in Windows it should work in Linux assuming whatever environmental requirements are met.

    Thanks g00r00 - I noticed that the 'enable shared' option was enabled out
    of the box for most of the Debian and Ubuntu releases I tried. As you mentioned, I also wonder if it could be the codepage or something else that is different. If I get some time I'll see if I can pull that information out of Debian/Ubuntu. So far, Ubuntu 18.04 with the out of the box version of 2.7.15 is working great.

    Thanks,
    Mike

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Stellar Darkness BBS (21:4/162)
  • From lemonlime@21:4/162 to g00r00 on Tue Oct 29 12:41:28 2019
    From my experience this is not true. The defaults were absolutely not compiled that way, at least not at the time I had tested (which was the final 18 LTS).

    Interesting - I wonder if this is because I'm using Amazon EC2 AMIs instead
    of the usual ISO based images. Here is the output from my BBS VM with the
    OOTB version of 2.7.15:

    Python 2.7.15+ (default, Oct 7 2019, 17:39:04)
    [GCC 7.4.0] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    import sysconfig
    sysconfig.get_config_vars('Py_ENABLE_SHARED')
    [1]

    I'll see if I can check this with Debian 9/10, which was giving the problems earlier as well.

    Thanks again!
    Mike

    --- Mystic BBS v1.12 A43 2019/03/02 (Linux/64)
    * Origin: Stellar Darkness BBS (21:4/162)
  • From Oli@21:1/151 to lemonlime on Tue Oct 29 15:11:54 2019
    On Tue, 29 Oct 2019 12:41:28 +0000
    "lemonlime -> g00r00" <[email protected]> wrote:

    From my experience this is not true. The defaults were absolutely not
    compiled that way, at least not at the time I had tested (which was the
    final 18 LTS).

    Interesting - I wonder if this is because I'm using Amazon EC2 AMIs instead of the usual ISO based images. Here is the output from my BBS VM with the OOTB version of 2.7.15:

    Python 2.7.15+ (default, Oct 7 2019, 17:39:04)
    [GCC 7.4.0] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    import sysconfig
    sysconfig.get_config_vars('Py_ENABLE_SHARED')
    [1]

    I'll see if I can check this with Debian 9/10, which was giving the
    problems
    earlier as well.


    I don't know if anything has changed since the initial release of Ubuntu 18.04,
    but it's definitely enabled in Ubuntu 18.04.3 LTS. Same with Raspbian 10 (Buster).

    ---
    * Origin: (21:1/151)