• Webv4 trouble

    From HusTler@1:103/705 to All on Monday, August 19, 2019 09:26:53
    Hi.. I am getting this error on the home page.

    Who's Online
    !JavaScript /sbbs/webv4/sidebar/002-recent-visitors.xjs.ssjs line 2: Error: can't open /sbbs/exec/logonlist_lib.js: No such file or directory

    What could be the cause?

    ---
    Synchronet Havens BBS havens.synchro.net
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From echicken@1:103/705 to HusTler on Monday, August 19, 2019 11:00:49
    Re: Webv4 trouble
    By: HusTler to All on Mon Aug 19 2019 09:26:53

    /sbbs/exec/logonlist_lib.js: No such file or directory

    What could be the cause?

    The script is trying to load logonlist_lib.js, but logonlist_lib.js doesn't exist on your system.

    You can update the JS stuff in exec/ and exec/load/ (and ideally update your build at the same time), or not use the "Recent Visitors" sidebar module until you update your BBS.

    The error message is pretty clear, but there is one place where it might be confusing. Even after you update, you will not have an /exec/logonlist_lib.js.
    That file will actually be in exec/load/. By default, the JS load path includes these directories in this order:

    mods/load/
    exec/load/
    mods/
    exec/

    Synchronet can't find the script in any of the above places, and the error message only tells you about the last place it looked.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    Synchronet electronic chicken bbs - bbs.electronicchicken.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From HusTler@1:103/705 to echicken on Monday, August 19, 2019 19:37:03
    Re: Webv4 trouble
    By: echicken to HusTler on Mon Aug 19 2019 11:00 am

    /sbbs/exec/logonlist_lib.js: No such file or directory
    What could be the cause?
    The script is trying to load logonlist_lib.js, but logonlist_lib.js doesn't exist on your system.
    You can update the JS stuff in exec/ and exec/load/ (and ideally update your build at the same time), or not use the "Recent Visitors" sidebar module until you update your BBS.

    Ok I see. Thanks for your reply.

    ---
    Synchronet Havens BBS havens.synchro.net
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From mark lewis@1:3634/12.73 to echicken on Tuesday, August 20, 2019 08:36:40
    On 2019 Aug 19 11:00:48, you wrote to HusTler:

    By default, the JS load path includes these directories in this order:

    mods/load/
    exec/load/
    mods/
    exec/

    thank you for this... i was wondering if there was a mods/load directory to be used for those modified files... it makes a lot of sense...

    does the above also include

    mods/load/tickit

    for modified/added tickit modules? if so i have a few load files to move ;)

    )\/(ark

    Once men turned their thinking over to machines in the hope that this would set
    them free. But that only permitted other men with machines to enslave them. ... When two egotists meet, it's an I for an I.
    ---
    * Origin: (1:3634/12.73)
  • From echicken@1:103/705 to mark lewis on Tuesday, August 20, 2019 10:28:00
    Re: Webv4 trouble
    By: mark lewis to echicken on Tue Aug 20 2019 08:36:40

    mods/load/
    exec/load/
    mods/
    exec/

    FWIW this order comes from Sync's JS documentation, so I'm trusting it's correct.

    I just did a test using jsexec and did not get the results I expect. I'll have
    to mess around with it some more later.

    does the above also include

    mods/load/tickit

    for modified/added tickit modules? if so i have a few load files to move
    ;)

    Based on the stated order, my expectation would be this:

    if mods/load/tickit/[module].js exists, load it
    else if exec/load/tickit/[module].js exists, load it
    else if mods/tickit/[module].js exists, load it
    else load exec/tickit/[module].js and throw error if it doesn't exist

    However I'm fairly certain that in the past I've overridden stuff in exec/load/
    by duping it in mods/ (not mods/load/), so I'm not sure what to believe.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    Synchronet electronic chicken bbs - bbs.electronicchicken.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Digital Man@1:103/705 to echicken on Tuesday, August 20, 2019 08:18:36
    Re: Webv4 trouble
    By: echicken to mark lewis on Tue Aug 20 2019 10:28 am

    Re: Webv4 trouble
    By: mark lewis to echicken on Tue Aug 20 2019 08:36:40

    mods/load/
    exec/load/
    mods/
    exec/

    FWIW this order comes from Sync's JS documentation, so I'm trusting it's correct.

    I just did a test using jsexec and did not get the results I expect. I'll have to mess around with it some more later.

    does the above also include

    mods/load/tickit

    for modified/added tickit modules? if so i have a few load files to move ;)

    Based on the stated order, my expectation would be this:

    if mods/load/tickit/[module].js exists, load it
    else if exec/load/tickit/[module].js exists, load it
    else if mods/tickit/[module].js exists, load it
    else load exec/tickit/[module].js and throw error if it doesn't exist

    However I'm fairly certain that in the past I've overridden stuff in exec/load/ by duping it in mods/ (not mods/load/), so I'm not sure what to believe.

    It depends on how the script is invoked. "exec" is different than "load".

    When a script is "executed" (e.g. via Baja "exec_bin", or a "*module" or "?module" command-line or loadable-module setting in SCFG), the search order is:
    1. mods
    2. exec

    When a script is "loaded" (via JS "load" or "require"), the search order is:
    1. js.exec_dir (location of executed script performing the load)
    2. mods/[load_path_list] (sbbs.ini JavaScriptLoadPath)
    3. mods
    4. [load_path_list] (sbbs.ini JavaScriptLoadPath)
    5. exec

    The load_path_list is by default, just "load".

    The search order is moot if an absolute filepath is executed or loaded.

    Is that clear as mud? :-)

    digital man

    Synchronet/BBS Terminology Definition #12:
    CBM = Commodore Business Machines
    Norco, CA WX: 66.3F, 85.0% humidity, 0 mph SSW wind, 0.00 inches rain/24hrs --- SBBSecho 3.08-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From echicken@1:103/705 to Digital Man on Tuesday, August 20, 2019 11:26:03
    Re: Webv4 trouble
    By: Digital Man to echicken on Tue Aug 20 2019 08:18:36

    When a script is "executed" (e.g. via Baja "exec_bin", or a "*module" or
    "?module"
    command-line or loadable-module setting in SCFG), the search order is: 1.
    mods
    2. exec

    When a script is "loaded" (via JS "load" or "require"), the search order
    is:
    1. js.exec_dir (location of executed script performing the load)
    2. mods/[load_path_list] (sbbs.ini JavaScriptLoadPath)
    3. mods
    4. [load_path_list] (sbbs.ini JavaScriptLoadPath)
    5. exec

    The load_path_list is by default, just "load".

    The search order is moot if an absolute filepath is executed or loaded.

    Is that clear as mud? :-)

    Yep, that was pretty much my understanding of things before I confused myself by reading the order described in the JS docs.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    Synchronet electronic chicken bbs - bbs.electronicchicken.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From echicken@1:103/705 to mark lewis on Tuesday, August 20, 2019 11:28:21
    Re: Webv4 trouble
    By: mark lewis to echicken on Tue Aug 20 2019 08:36:40

    does the above also include

    mods/load/tickit

    for modified/added tickit modules? if so i have a few load files to move
    ;)

    It probably doesn't matter if you put them in mods/load/tickit/ or mods/tickit/
    or just mods/, as long as you're not keeping modified versions in exec/load/tickit/.

    If you have any doubts as to which version is being loaded, you should be able to provide a full path to the module in tickit.ini.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    Synchronet electronic chicken bbs - bbs.electronicchicken.com
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)