Page 1 of 1

EG running python 3.5

Posted: Tue Sep 04, 2018 7:57 am
by kgschlosser
OK so i have been messing around with this on and off for a while now. I think I am pretty close to being done.

I know that everyone thinks that an upgrade like this is going to mess everyone up... well guess again 8) been something I have been working on over the past 2 years or so, on and off.

This is what I have done.
I have written a series of monkey patches and wrappers. This code does all of the behind the scenes conversions for wxPython and the builtin functions. module redirects. for the most part python 2 and python 3 to the user function the same. There are some things I do not think I will be able to handle properly. The biggest one being how python 3 handles unicode. So they say there is no more "unicode" But it is a lie. it got merged with byte arrays is what happened. unicode strings still exist but instead of putting a "u" before the string now you put a "b". so it is said converting a "byte array" (unicode) to a string is easier.. b'some unicode string'.encode('utf-8') vrs str(u'some unicode string'), i guess you can call it semantics. you say potato, i say potahto. damned thing is still a mystery to me and i can't ever seem to get it right. But anywho.

I also wrote a very simple code converter that upon plugin load it will read the file fix most things that do not agree with python 3. Now I do not know if i covered all of my bases with this. I tried the 2to3 converter thing and that was a colossal FAILURE. I am sure there are things that I missed and I will have to add. My point is that I am trying to make this change as painless as possible for the plugin developers.

with a tad over a year remaining until Python 2.x is EOL we should probably start making these changes now. I know that for the most part the plugins I have written are python 3 compatible (except for print statements). The code I have written to help ease this transition is meant to be used temporarily until we can get the 2+ million lines of code between the plugins and core manually converted. and don't you worry script kiddies. I also added the automatic bits so it will parse scripts as well.

I am going to try and build EG tomorrow. I am sure it is going fail but the number of issues should be very minimal. I will post a link to it once i get a full running version. and anyone that is willing to endure some problems and report them back to me is more then welcome to do so.

I hope I will have to running soon..

Re: EG running python 3.5

Posted: Sat Sep 15, 2018 3:32 pm
by kgschlosser
I wanted to give an update.

I am partially there. I still have quite a bit of work. But i did manage to get the GUI to show. EventGhost is not functional but it is a good start.

I had to rewrite the whole builder.
I also had to update all of the C/CPP code for the dlls that EG uses. I also built into this builder the compilation of those DLL's
I had to write a mechanism that actually works properly for setting up a Visual C build environment. It also updates the solution files for the dll's

I still have to work out building of the documentation.
I need to get EventGhost functional.


Here is what is dome so far in case anyone wanted to have a look see

https://github.com/kdschlosser/EventGhost-x64-Python3.5

Re: EG running python 3.5

Posted: Sun Sep 16, 2018 2:46 am
by jachin99
This looks like it will be a really good thing. Keeping your software within the limits of its support life cycle never hurts, and anyone using EventGhost for serious work (Where compliance might come into play) is going to be looking for applications that are still being supported. I know its a moving target, and python 3 gets updated regularly but you are still taking a lot of work out of it for others to build upon.

Re: EG running python 3.5

Posted: Mon Sep 17, 2018 6:24 am
by kgschlosser
WAHOOOOOOOOOOOOOOOO



Ladies and gents...

a picture speaks 1000 words
eg 3.5 x64.png
It still has some glitches I need to iron out. End result is EG x64 running on Python 3.5 does indeed work!!

I have created a massive amount of wrappers to make this thing run without the need to convert all of the code. there are some things that will still need to be done manually. but those are limited. I need to write code to backup all of the plugins / config files on a users PC before installing this. I am also going to change the install path and the appmutex keys as well as the program guid's and named pipe name. this way older versions will not get uninstalled. I am going to build in something that will detect of another version of EG is running and not allow it to start/have it shutdown if an older version is detected.

Re: EG running python 3.5

Posted: Sat Jul 06, 2019 2:10 am
by dan Edens
I don't know how you manage so many environments and versions hahaha holy shit this isn't easy to build.


So initially i got everything set up properly except that PyCrypto >= 2.6.1 REFUSED to install.
I mean this thing took me hours.

Here is the error code I kept getting.

Code: Select all

       Creating library build\temp.win-amd64-3.5\Release\src\winrandom.cp35-win_a
md64.lib and object build\temp.win-amd64-3.5\Release\src\winrandom.cp35-win_amd64
.exp
    Generating code
    Finished generating code
    LINK : fatal error LNK1158: cannot run 'rc.exe'
    error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BI
N\\x86_amd64\\link.exe' failed with exit status 1158

    ----------------------------------------
Command ""c:\program files\stackless35\python.exe" -u -c "import setuptools, toke
nize;__file__='C:\\Users\\DAN~1.EDE\\AppData\\Local\\Temp\\pip-build-fnpmevsb\\py
crypto\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().repla
ce('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --recor
d C:\Users\DAN~1.EDE\AppData\Local\Temp\pip-vvow4js_-record\install-record.txt --
single-version-externally-managed --compile" failed with error code 1 in C:\Users
\DAN~1.EDE\AppData\Local\Temp\pip-build-fnpmevsb\pycrypto\

I'm using windows 10 Enterprise 1809
OS build 177763.557
VS2019

I used this article to find an answer.

Code: Select all

https://stackoverflow.com/questions/14372706/visual-studio-cant-build-due-to-rc-exe
Added "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\" to path
I copied my rc.exe and rcdll.dll into "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin"

I think the important bit may of been the pip options I found right before getting it to work.

Finally, I used this command from an elevated VS developer command prompt, and it worked.

Code: Select all

pip install --use-wheel --no-index --find-links=https://github.com/sfbahr/PyCrypto-Wheels/raw/master/pycrypto-2.6.1-cp35-none-win_amd64.whl pycrypto
The build than couldn't locate Visual C Tools Path.

Code: Select all

File "C:\Users\Dan.Edens\Documents\GitHub\EventGhost-x64-Python3.5\msvc.py", line 530, in tools_install_path
    raise RuntimeError('Unable to locate Visual C Tools Path')
So i installed a bunch of versions from MSVC versions from VS right before realizing that VSTools is not the same list as VS. Not proud of the things I've done today. I was able to find it once I learned how to use vwhere, which has been very helpful.

i had to follow the failure process and slap the correct paths into it since I don't know what I'm doing.

Some links that might help:
http://files.jrsoftware.org/is/5/isetup ... nicode.exe
https://github.com/Microsoft/vswhere
use this as a macro to build so you make sure your targeting the correct python. I probably ran the setup a few hundred times before i hacked through all the pathway errors.
bui="%USERPROFILE%\Documents\GitHub\EventGhost-x64-Python3.5\lib27\Charmenv\Scripts\python.exe" "%USERPROFILE%\Documents\GitHub\EventGhost-x64-Python3.5\setup.py" build_exe


Okay so I spent all day on this and I was hoping this would turn into a windows 10 guide for somebody but shit.
Got as far as

Code: Select all

Build FAILED.

"C:\Users\Dan.Edens\Documents\GitHub\EventGhost-x64-Python3.5\build\extensions\RawInputHook.dll\RawInputHoo
k.sln" (Build target) (1) ->
"C:\Users\Dan.Edens\Documents\GitHub\EventGhost-x64-Python3.5\build\extensions\RawInputHook.dll\RawInputHoo
k.vcxproj" (default target) (2) ->
(ResourceCompile target) ->
  TRACKER : error TRK0002: Failed to execute command: ""C:\Program Files (x86)\Microsoft Visual Studio 14.0
\VC\bin\rc.exe" /l0x0409 /nologo /fox64\Release\RawInputHook.res RawInputHook.rc". FileTracker error code:
0xd8 [C:\Users\Dan.Edens\Documents\GitHub\EventGhost-x64-Python3.5\build\extensions\RawInputHook.dll\RawInp
utHook.vcxproj]

    0 Warning(s)
    1 Error(s)

Time Elapsed 00:00:02.19
error: can't copy 'C:\Users\Dan.Edens\Documents\GitHub\EventGhost-x64-Python3.5\build\extensions\RawInputHo
ok.dll\x64\Release\RawInputHook.dll': doesn't exist or not a regular file
Much closer than I started at. I can see the build going further so that's something!
Will keep at it tomorrow

Re: EG running python 3.5

Posted: Sat Jul 06, 2019 3:49 am
by dan Edens
Module versions

Code: Select all

Babel	2.7.0	2.7.0
CommonMark	0.7.5	0.9.0
Jinja2	2.10.1	2.10.1
MarkupSafe	1.1.1	1.1.1
Pillow	5.2.0	6.1.0
Pygments	2.4.2	2.4.2
Pypubsub	4.0.3	4.0.3
Sphinx	1.8.0b1	2.1.2
agithub	2.1	2.2.0
alabaster	0.7.12	0.7.12
certifi	2019.6.16	2019.6.16
chardet	3.0.4	3.0.4
colorama	0.4.1	0.4.1
comtypes	1.1.7	1.1.7
cx-Freeze	5.1.1	
docutils	0.14	0.14
future	0.16.0	0.17.1
idna	2.7	2.8
imagesize	1.1.0	1.1.0
packaging	19.0	19.0
pip	9.0.1	19.1.1
psutil	5.4.7	5.6.3
pycrypto	2.6.1	2.6.1
pyparsing	2.4.0	2.4.0
pytz	2019.1	2019.1
pywin32	223	224
qrcode	6.0	6.1
requests	2.19.1	2.22.0
setuptools	40.2.0	41.0.1
six	1.12.0	1.12.0
snowballstemmer	1.9.0	1.9.0
sphinxcontrib-websupport	1.1.2	1.1.2
tornado	5.1	6.0.3
urllib3	1.23	1.25.3
websocket-client-py3	0.15.0	0.15.0
wxPython	4.0.3	4.0.6
VS setup

Code: Select all

MSBuild Tools
Provides the tools required to build MSBuild-based applications. 


C++ build tools
Included

C++ Build Tools core features
 
C++ 2019 Redistributable Update
Optional

MSVC v142 - VS 2019 C++ x64/x86 build tools (v14.21)
 
Windows 10 SDK (10.0.17763.0)
 
C++ CMake tools for Windows
 
Testing tools core features - Build Tools
 
C++ ATL for v142 build tools (x86 & x64)
 
C++ MFC for v142 build tools (x86 & x64)
 
C++/CLI support for v142 build tools (14.21)
 
Clang compiler for Windows
 
C++ Modules for v142 build tools (x64/x86 – experimental)
 
Windows 10 SDK (10.0.17134.0)
 
Windows 10 SDK (10.0.16299.0)
 
MSVC v141 - VS 2017 C++ x64/x86 build tools (v14.16)
 
MSVC v140 - VS 2015 C++ build tools (v14.00)

Web development build tools
Included

Web development build tools
 
.NET Framework 4.7.2 development tools
 
TypeScript 3.4 SDK
Optional

.NET Framework 4 – 4.6 development tools
 
.NET Core 2.1 development tools
 
NuGet targets and build tasks
 
Container development tools - Build Tools
 
Testing tools core features - Build Tools
 
ClickOnce Build Tools
 
Windows Communication Foundation build tools
 
Advanced ASP.NET features
 
Web Deploy
 
.NET Framework 3.5 development tools
 
.NET Framework 4.6.1 development tools
 
.NET Framework 4.6.2 development tools
 
.NET Framework 4.7 development tools
 
.NET Framework 4.7.1 development tools
 
.NET Core 2.2 development tools

.NET desktop build tools
Included

NuGet targets and build tasks
 
.NET Framework 4.6.1 SDK
 
.NET Framework 4.6.1 targeting pack
Optional

.NET Framework 4 – 4.6 development tools
 
.NET Core 2.1 development tools
 
Windows Communication Foundation build tools
 
Testing tools core features - Build Tools
 
ClickOnce Build Tools
 
.NET Framework 3.5 development tools
 
.NET Framework 4.6.1 development tools
 
.NET Framework 4.6.2 development tools
 
.NET Framework 4.7 development tools
 
.NET Framework 4.7.1 development tools
 
.NET Core 2.2 development tools
 
F# compiler

Universal Windows Platform build tools
Included

Universal Windows Platform build prerequisites
Optional

Windows 10 SDK (10.0.17763.0)
 
Windows 10 SDK (10.0.18362.0)
 
Windows 10 SDK (10.0.17134.0)
 
Windows 10 SDK (10.0.16299.0)

Individual components

C# and Visual Basic Roslyn compilers
 
MSBuild
 
C++ 2019 Redistributable Update
 
Windows 10 SDK (10.0.17763.0)
 
Text Template Transformation
 
C++ core features
 
MSVC v141 - VS 2017 C++ x64/x86 build tools (v14.16)
 
MSVC v142 - VS 2019 C++ ARM build tools (v14.21)
 
MSVC v141 - VS 2017 C++ ARM64 build tools (v14

Had to do some stuff like this but it worked through errors

Code: Select all

C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC\\Tools\\MSVC


tools_install_path = os.path.join(
                self.visual_c_path,
                'Tools',
                'MSVC'
            )

Re: EG running python 3.5

Posted: Sat Jul 06, 2019 7:27 pm
by kgschlosser
ok the compiler issues have been repaired and are on my repository under the new_version branch.

Re: EG running python 3.5

Posted: Sun Jul 07, 2019 3:51 am
by dan Edens
WOO lol YESSSS It built!

Thanks I'm pretty stoked about this.
2019-07-06 22_47_25-.png

Re: EG running python 3.5

Posted: Sun Jul 07, 2019 11:02 pm
by dan Edens
I've been trying to return to my normal EventGhost_WIP-2019.04.14-12.39.31 build and I'm having some serious issues.

Uninstall stackless 3.5, reinstalled VS and repaired it, Reinstalled all python versions, and reinstalled EG from scratch. did a system restore. Not sure what else to try. maybe it'll be fine once this new version is ready, so not really worried about it, Once I'm back at my desk monday i can compare against a backup

interesting tho.

Code: Select all

Unhandled exception in WorkerThread <EventThread>:
Callers stack:
  File "wx\_core.pyc", line 8657, in MainLoop
  File "wx\_core.pyc", line 7952, in MainLoop
  File "wx\_core.pyc", line 16766, in <lambda>
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\ThreadWorker.py", line 253, in __DoOneEvent
    self.HandleAction(action)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\ThreadWorker.py", line 140, in HandleAction
    action()
  File "C:\Program Files (x86)\EventGhost\eg\Classes\ThreadWorker.py", line 324, in __call__
    self.returnValue = self.func(*self.args, **self.kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 442, in LogItWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\EventThread.py", line 75, in StartSession
    actionThread.Func(actionThread.StartSession, 120)(filename)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\ThreadWorker.py", line 324, in __call__
    self.returnValue = self.func(*self.args, **self.kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 455, in LogItWithReturnWrapper
    result = func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\ActionThread.py", line 107, in StartSession
    IsLocalAdmin=User.IsLocalAdmin(),
  File "C:\Program Files (x86)\EventGhost\eg\WinApi\User.py", line 80, in IsLocalAdmin
    return 'Administrators' in Groups()
  File "C:\Program Files (x86)\EventGhost\eg\WinApi\User.py", line 61, in Groups
    return win32net.NetUserGetLocalGroups(server, user_name)
error: (1355, 'NetUserGetLocalGroups', 'The specified domain either does not exist or could not be contacted.')
System.PowerProfile.Balanced
System.PowerSaving.Off
System.BatteryLevel.85%
System.PowerSource.Line
System.Monitor.On
DEBUG: 1 MainThread: Document.ShowFrame()
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 694, in OnItemExpandingEvent
    self.CreateTreeItem(subNode, itemId)
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 443, in CreateTreeItem
    node.imageIndex,
  File "C:\Program Files (x86)\EventGhost\eg\Classes\TreeItem.py", line 327, in imageIndex
    return self.icon.index if self.isEnabled else self.icon.disabledIndex
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 176, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 694, in OnItemExpandingEvent
    self.CreateTreeItem(subNode, itemId)
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 443, in CreateTreeItem
    node.imageIndex,
  File "C:\Program Files (x86)\EventGhost\eg\Classes\TreeItem.py", line 327, in imageIndex
    return self.icon.index if self.isEnabled else self.icon.disabledIndex
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 694, in OnItemExpandingEvent
    self.CreateTreeItem(subNode, itemId)
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 443, in CreateTreeItem
    node.imageIndex,
  File "C:\Program Files (x86)\EventGhost\eg\Classes\TreeItem.py", line 327, in imageIndex
    return self.icon.index if self.isEnabled else self.icon.disabledIndex
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
DEBUG: 1 MainThread: TreeCtrl.OnItemCollapsingEvent(event=<wx.TreeEvent>)
DEBUG: 1 MainThread: Document.ShowFrame => None
DEBUG: 0 MainMessageReceiver: PowerBroadcastNotifier.OnPowerBroadcast(hwnd=329200, uMsg=536L, wParam=32787L, lParam=7042456)

Re: EG running python 3.5

Posted: Sun Jul 07, 2019 11:04 pm
by dan Edens
When i run my plugins (which don't boot automatically if i'm at home?! lol)

Code: Select all

   Plugin: SchedulGhost
      Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
        File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
          return self.data[item][1].index
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
          result = getattr(self, funcName)()
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
          return gImageList.Add(PilToBitmap(self.pil))
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
          result = getattr(self, funcName)()
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 176, in _GetPil
          small = self.key.pil.resize((12, 12), Image.BICUBIC)
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
          result = getattr(self, funcName)()
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
          stream = StringIO(b64decode(self.key))
        File "base64.pyc", line 78, in b64decode
      TypeError: Incorrect padding
   Plugin: Webserver
      Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
        File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
          return self.data[item][1].index
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
          result = getattr(self, funcName)()
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
          return gImageList.Add(PilToBitmap(self.pil))
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
          result = getattr(self, funcName)()
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 176, in _GetPil
          small = self.key.pil.resize((12, 12), Image.BICUBIC)
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
          result = getattr(self, funcName)()
        File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
          stream = StringIO(b64decode(self.key))
        File "base64.pyc", line 78, in b64decode
      TypeError: Incorrect padding
      Persistent values: {}
   Trigger Event
      Main.boot globals
      Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
        File "wx\_core.pyc", line 16766, in <lambda>
        File "C:\Program Files (x86)\EventGhost\eg\Core.py", line 196, in Notify
          listener(value)
        File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
          return func(*args, **kwargs)
        File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 856, in OnNodeSelected
   Boot defaults
       self.SelectItem(self.visibleNodes[node])
   KeyError: <eg.Classes.Document.ActionItem object at 0x07137AF0>
      Globals Defined
         AutoRemote plugin is up to date
HTTP.Started 'Webserver started as unsecured (http://) on port 80'
Main.Input.OK.shotview off
Main.Input.OK.end math
   Disable math
      Disable: Trigger
Main.Keyboard.Tabulator+Oem3
Main.Input.OK.mg1
   Flash config
      Python Script
      Show OSD
         DEBUG: 1 MainThread: OSDFrame.ShowOSD(osdText=u'Track button 1 - Desknote controller\nTrack button 2 - Toggle always on top\nMiddle mouse - Toggle Eventghost. Long - Killall\nSidekey 1 - workspace\nSidekey 2 - Line\nSidekey 3 - Desk Left\nSidekey 4 - Desk Right\nUnderkey - Line|Autorun', fontInfo=u'0;-24;0;0;0;700;0;0;0;1;0;0;2;32;Arial', textColour=(244, 0, 18), outlineColour=(0, 0, 0), alignment=2, offset=(100, 300), displayNumber=2, timeout=3.0, event=2504, skin=u'Default')
         DEBUG: 1 MainThread: OSDFrame.OnPaint(dummyEvent=<wx.PaintEvent>)
   Enable Exclusively: Mouse group 1 - Main
      Enable Exclusively: Mouse group 1 - only one built for g402
Main.Input.OK.bug watch
   Bug watcher
      EG App Control: Start log monitoring: "Traceback (most recent call last)"
         DEBUG: 0 ActionThread: LogMonitor.__call__(start=True, searchArgsD={'caseSensitive': True, 'watchMsgTypes': [True, False, False, False, False, False], 'wholeMessage': False, 'searchMsg': u'Traceback (most recent call last)'}, parseArgsD={'searchRegex': u'\\d*\\.\\d+|\\d+', 'searchMode': 0, 'searchChar2': u'', 'searchChar1': u'', 'searchPos1': 0, 'searchPos2': 0}, actionArgsD={'onlyOnce': True, 'fireEvent': True, 'eventName': u'UnexpectedErrorOccurred', 'printToLog': False, 'setVariable': False, 'variableName': u'MyVariable', 'eventPayload': True})
         DEBUG: 0 ActionThread: LogWrapper.AddLogListener(listener=<eg.Classes.ActionGroup.LogMonitor object at 0x074D46B0>)
      EG App Control: Start log monitoring: "Plugin ""
      Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
        File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
             return self.data[item][1].index
         DEBUG: 0 ActionThread: LogMonitor.__call__(start=True, searchArgsD={'caseSensitive': True, 'watchMsgTypes': [True, True, True, False, False, False], 'wholeMessage': False, 'searchMsg': u'Plugin "'}, parseArgsD={'searchChar1': u'', 'searchMode': 0, 'searchChar2': u'', 'searchRegex': u'\\d*\\.\\d+|\\d+', 'searchPos1': 0, 'searchPos2': 0}, actionArgsD={'onlyOnce': False, 'fireEvent': True, 'eventName': u'PluginNotActive', 'printToLog': False, 'setVariable': False, 'variableName': u'MyVariable', 'eventPayload': False})
           File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
             result = getattr(self, funcName)()
           File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
         DEBUG: 0 ActionThread: LogWrapper.AddLogListener(listener=<eg.Classes.ActionGroup.LogMonitor object at 0x074D4770>)
             return gImageList.Add(PilToBitmap(self.pil))
           File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "wx\_core.pyc", line 16766, in <lambda>
  File "C:\Program Files (x86)\EventGhost\eg\Core.py", line 196, in Notify
    listener(value)
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 856, in OnNodeSelected
    self.SelectItem(self.visibleNodes[node])
KeyError: <eg.Classes.Document.ActionItem object at 0x074D45F0>
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "wx\_core.pyc", line 16766, in <lambda>
  File "C:\Program Files (x86)\EventGhost\eg\Core.py", line 196, in Notify
    listener(value)
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 856, in OnNodeSelected
    self.SelectItem(self.visibleNodes[node])
KeyError: <eg.Classes.Document.ActionItem object at 0x074D4690>
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
DEBUG: 1 MainThread: LogMonitor: Analyzed line: Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
DEBUG: 1 MainThread: LogMonitor: Found search string 'Traceback (most recent call last)' in current log message of type 'Error'
DEBUG: 1 MainThread: payload = self.ParseMsg(line)
DEBUG: 1 MainThread: ParseMsg self.parseArgs.searchMode 0
DEBUG: 1 MainThread: LogMonitor: => fire event 'UnexpectedErrorOccurred' with payload= u'Traceback (most recent call last) (WIP-2019.04.14-12.39.31):'
Main.OK.desktop enh
EGAppControl.UnexpectedErrorOccurred u"Traceback (most recent call last) (WIP-2019.04.14-12.39.31):"
   EG App Control: SaveConfiguration
      EG App Control: SaveConfiguration
         DEBUG: 0 ActionThread: SaveConfiguration.__call__()
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "wx\_core.pyc", line 16766, in <lambda>
  File "C:\Program Files (x86)\EventGhost\eg\Core.py", line 196, in Notify
    listener(value)
  File "C:\Program Files (x86)\EventGhost\eg\Utils.py", line 167, in AssertWrapper
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\TreeCtrl.py", line 856, in OnNodeSelected
    self.SelectItem(self.visibleNodes[node])
KeyError: <eg.Classes.Document.ActionItem object at 0x074D4890>
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
DEBUG: 1 MainThread: Document.Save()
DEBUG: 1 MainThread: Document.Save => 5103
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 139, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 176, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
DEBUG: 0 Thread-8: OSDFrame.OnTimeout()
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 176, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 176, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding
Traceback (most recent call last) (WIP-2019.04.14-12.39.31):
  File "C:\Program Files (x86)\EventGhost\eg\Classes\MainFrame\LogCtrl.py", line 246, in OnGetItemImage
    return self.data[item][1].index
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 123, in _GetIndex
    return gImageList.Add(PilToBitmap(self.pil))
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 176, in _GetPil
    small = self.key.pil.resize((12, 12), Image.BICUBIC)
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 79, in __getattr__
    result = getattr(self, funcName)()
  File "C:\Program Files (x86)\EventGhost\eg\Icons.py", line 189, in _GetPil
    stream = StringIO(b64decode(self.key))
  File "base64.pyc", line 78, in b64decode
TypeError: Incorrect padding

Re: EG running python 3.5

Posted: Mon Jul 08, 2019 3:05 am
by kgschlosser
i did say this to you in the issue you opened on github
the other thing is you MUST run this from a Stackless x64 Python 3.5 installation. I would also backup all of your plugins before installing the built version. it is going to modify all of the plugins (as best it can) to be python 3.5 compatible and also wxPython 4.x compatible
I hope you backed up the plugins. Remember i stated that there was still an issue with the python 3 conversion. well the issue is it removed something it shouldn't have...

But... since I do like to think ahead... go through all of your plugins. in each of the folders there is going to be a backup of the plugin files. you need to restore them.. 8)

restoration = deleting the existing ".py" file and removing the ".backup" from the backup one...ONLY DELETE THE .py FILE IF THERE IS A BACKUP IN THE FOLDER

good thing i built in that backup feature....

Re: EG running python 3.5

Posted: Mon Jul 08, 2019 2:18 pm
by dan Edens
kgschlosser wrote:
Mon Jul 08, 2019 3:05 am
i did say this to you in the issue you opened on github
the other thing is you MUST run this from a Stackless x64 Python 3.5 installation. I would also backup all of your plugins before installing the built version. it is going to modify all of the plugins (as best it can) to be python 3.5 compatible and also wxPython 4.x compatible
I hope you backed up the plugins. Remember i stated that there was still an issue with the python 3 conversion. well the issue is it removed something it shouldn't have...

But... since I do like to think ahead... go through all of your plugins. in each of the folders there is going to be a backup of the plugin files. you need to restore them.. 8)

restoration = deleting the existing ".py" file and removing the ".backup" from the backup one...ONLY DELETE THE .py FILE IF THERE IS A BACKUP IN THE FOLDER

good thing i built in that backup feature....
O shoot thats right.

I do have ample backups, I figured this is exactly what would happen tho, would be something either obvious or you already talked about it, Weekend coding is full of juggling my 2 year old. Found it this morning before I saw this and was like oshi. lol thanks

Re: EG running python 3.5

Posted: Mon Jul 08, 2019 2:27 pm
by dan Edens
dan Edens wrote:
Mon Jul 08, 2019 2:18 pm
kgschlosser wrote:
Mon Jul 08, 2019 3:05 am
i did say this to you in the issue you opened on github
the other thing is you MUST run this from a Stackless x64 Python 3.5 installation. I would also backup all of your plugins before installing the built version. it is going to modify all of the plugins (as best it can) to be python 3.5 compatible and also wxPython 4.x compatible
I hope you backed up the plugins. Remember i stated that there was still an issue with the python 3 conversion. well the issue is it removed something it shouldn't have...

But... since I do like to think ahead... go through all of your plugins. in each of the folders there is going to be a backup of the plugin files. you need to restore them.. 8)

restoration = deleting the existing ".py" file and removing the ".backup" from the backup one...ONLY DELETE THE .py FILE IF THERE IS A BACKUP IN THE FOLDER

good thing i built in that backup feature....
O shoot thats right.

I do have ample backups, I figured this is exactly what would happen tho, would be something either obvious or you already talked about it, Weekend coding is full of juggling my 2 year old. Found it this morning before I saw this and was like oshi. lol thanks
Hrm Idk, didn't fix it. I tried from a fresh install and used github to confirm nothing is changed. I think something is different at a deeper level, going to load a registry backup

Re: EG running python 3.5

Posted: Mon Jul 08, 2019 5:06 pm
by dan Edens
Finally figured it out. Had to do with the startup script in appdata.. Another rookie mistake but now i know.

Am taking steps to clean up my environments and backups.
It was the gitignore list that I didn't account for that ended up being a big issue. I thought I could use my branch to return but it didn't encompass the whole project.

Thanks again for the help