RFC / Beta Testers Wanted: pyscFilteredViewer



  • @Eko-palypse

    Still strange this crashes - I will setup a Windows10 in VirtualBox and see if I can get the same
    result as you have. If so, I guess it’s time to upgrade - Win7 comes to end anyway.

    strange, i didn’t even manage to crash exit npp using pyscfr on windows 7.

    either my system is somewhat different … or i didn’t test the right things long enough 😂😂😂
    just kidding, i think we all tested pyscfr a lot



  • @Meta-Chuh @Peter-Jones

    Win10 x64
    Npp7.6.3 x64 7z
    PythonScript 1.3.0 x64 full.zip

    and running

    from Npp import notepad, LANGTYPE
    LANGUAGES = LANGTYPE.values.values()
    for language in LANGUAGES:
        x = notepad.getLanguageDesc(language)
    

    results in

    Faulting application name: notepad++.exe, version: 7.6.3.0, time stamp: 0x5c4dd9e9
    Faulting module name: ntdll.dll, version: 10.0.17134.376, time stamp: 0x60d78cf9
    Exception code: 0xc0000374
    Fault offset: 0x00000000000f4d7b
    Faulting process ID: 0x1794
    Faulting application start time: 0x01d4b97dee776c53
    Faulting application path: C:\tools\Npp\763\x64\notepad++.exe
    Faulting module path: C:\WINDOWS\SYSTEM32\ntdll.dll
    Report ID: 18dc0488-4bb7-4063-b564-596ea765af26
    Faulting package full name: 
    Faulting package-relative application ID: 
    

    BUT what I found out so far is, that this happens only for the very first time you start npp on Win10.
    5 reboots - 5 crashes after immediate execution.
    Subsequent starts and script executions do not fail anymore. Did a 100000 loop without a problem.
    On Win7 this doesn’t matter - every run crashes my npp.

    ??? Start running out of ideas ??? - Unfortunately I haven’t enough expertise debugging npp in Visual Studio … hmmm …



  • Thanks again for everyone’s feedback.

    v0.03-beta has been released. I fixed the tempfile cleanup that @guy038 mentioned (by deleting all temp at the first run of the script – so basically, when you reload NPP – similar to what @Meta-Chuh recommended). I also fixed a couple of things that were starting to annoy me that others hadn’t mentioned yet.

    Still haven’t been able to debug the crashing thing; I cannot get a reliable crash, so cannot eliminate it. @Eko-palypse : where did you get that detailed crash info that you quoted in your most recent post?



  • @PeterJones - copied from the windows eventviewer log.



  • @ekopalypse,

    I finally found the time to try out your ctypes-based/windows-messaging-based alternative to getLanguageName()/getLanguageDesc(). I haven’t yet seen a crash with my testing of this updated version, and v0.03-beta had started to crash more frequently for me, so I’m hoping v0.04-beta fixed the crash by using your functions.

    v0.04 Beta Release

    Newest beta release

    • Convert from notepad.getLanguageName(notepad.getCurrentLanguage()) to a function __eko_getLexerName() that’s derived from @ekopalypse’s Enhanced UDL Lexer’s get_lexer_name(); similarly for ...getLanguageDesc(...) => __eko_getLexerDesc()

    • Fix the hex prefix in the filtered filename to never show up as -XXXXXXXX by masking the 32-bit CRC32 with 0xFFFFFFFF, to make sure Python doesn’t incorrectly believe that it’s “negative” when the MSB is 1.

    You can download just the scripts via pyscFilteredViewer-v0.04-beta.zip



  • @PeterJones

    Since I use the SendMessage method I also had no crash anymore.
    I tried to pinpoint the cause of the issue but my lack of C++ knowledge isn’t really helpful here ;-)



  • @PeterJones

    wow, 2.2k viewers !!!

    it seems that pyscfr isn’t just a cool tool for us internally.
    it has apparently caught more interest than the majority of topics, excluding official announcements 👍

    @Ekopalypse

    you have to reduce your offline times, please 😉



  • @Meta-Chuh,

    You did a stealth edit and got rid of the “how many downloads at GitHub” question… but I found that timely, because it was just a few hours ago that I went searching how to find that information.

    It’s in the GitHub API: https://api.github.com/repos/pryrt/pyscFilteredViewer/releases lists the JSON for the project, and each of the “assets” has a “download_count” attribute. Unfortunately, that appears to just be for the manual script-only zipfile that I upload as an “asset”, because I don’t see download_count for any of their auto-generated tarball/zipball.

    At last check, v0.03-beta had 2 downloads, and v0.04-beta had 4. So not exactly the impressive number that the Community “views” count would indicate. I think the 44 posts in this thread, and all of our views where we load/reload/upvote/refresh probably artificially inflate that count. :-)



  • you have to reduce your offline times, please

    Well there is a fight we can’t win I guess - my boss, she is also called wife, has exactly the opposite opinion :-D



  • @Ekopalypse

    Well there is a fight we can’t win I guess - my boss, she is also called wife, has exactly the opposite opinion :-D

    easy solution:

    • take her to a nice dinner.
    • order something very spicy for you.
    • complain about a stomach ache because it was too spicy.
    • go to the toilet for an extended period of time and use your mobile phone to get here.

    side note: repeat this every day, and she’ll get completely used to it. 😉



  • @Meta-Chuh

    the idea is nice despite the fact that I’m already eating very spicy and, sounds strange these days,
    I don’t have a mobile. And carrying my laptop with me while having diner with her … well … you can guess
    what might happen … a tip … nothing that a man really likes :-D



  • @Ekopalypse

    then i have an …

    adaption of the hitchhiker’s guide to the notepad++ community for married men:

    • take her to a nice dinner to restaurants where you have previously deposited a notebook at every toilet.
    • order something very, very spicy for you.
    • complain about a stomach ache because it was too spicy.
    • go to the toilet for an extended period of time and use your mobile phone to get here.
    • take care to limit the amounts of restaurants you visit to only a few, in order not to get broke due to buying a vast amount of notebooks you have to deposit at every toilet.

    😂😂😂



  • @Meta-Chuh

    and NOW the circle closes - we need MACBOOKS :-D



  • @PeterJones

    At last check, v0.03-beta had 2 downloads, and v0.04-beta had 4. So not exactly the impressive number that the Community “views” count would indicate. I think the 44 posts in this thread, and all of our views where we load/reload/upvote/refresh probably artificially inflate that count. :-)

    seen that, that’s why i removed the question in time.
    albeit i doubt that it was just us who have visited this thread that often.
    after looking at the download count, i re-checked some of our other topics for the hit count, and all of the ones i’ve visited, that had our personal interest, were far below that count.

    ps: sorry for hijacking your thread with so much spicy food for married men.



  • @Ekopalypse

    and NOW the circle closes - we need MACBOOKS :-D

    looool, yes i’ve predicted the spicy future back then and this was the only reason why i asked for 5 of those at that thread 👍😂👍



  • @Meta-Chuh said:

    ps: sorry for hijacking your thread

    We hijack other threads so often, it’s about time we started hijacking our own threads, too. :-)



  • @PeterJones

    LOOOL


Log in to reply