Error with running Q-Chem job

Details about the quacc environment

quacc version: 0.3.12
Python version: 3.9.16
quacc settings:

What is the issue?
I am getting the following error:
2023-11-09 14:18:27,692 INFO Started executing jobs locally
2023-11-09 14:18:27,694 INFO Starting job - ts_job (b68f6e78-e3be-4bb7-9320-b476c43e5b36)
No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)
Traceback (most recent call last):
  File "/global/home/users/kumaranu/quacc/src/quacc/calculators/qchem/custodian.py", line 9, in <module>
    from quacc import SETTINGS
  File "/global/home/users/kumaranu/quacc/src/quacc/__init__.py", line 10, in <module>
    from quacc.settings import QuaccSettings
  File "/global/home/users/kumaranu/quacc/src/quacc/settings.py", line 15, in <module>
    from quacc.calculators.vasp import presets as vasp_presets
  File "/global/home/users/kumaranu/quacc/src/quacc/calculators/vasp/__init__.py", line 3, in <module>
    from quacc.calculators.vasp.vasp import Vasp
  File "/global/home/users/kumaranu/quacc/src/quacc/calculators/vasp/vasp.py", line 14, in <module>
    from quacc.calculators.vasp import custodian
  File "/global/home/users/kumaranu/quacc/src/quacc/calculators/vasp/custodian.py", line 8, in <module>
    from custodian import Custodian
  File "/global/home/users/kumaranu/quacc/src/quacc/calculators/qchem/custodian.py", line 9, in <module>
    from quacc import SETTINGS
ImportError: cannot import name 'SETTINGS' from partially initialized module 'quacc' (most likely due to a circular import) (/global/home/users/kumaranu/quacc/src/quacc/__init__.py)
2023-11-09 14:18:35,872 INFO ts_job failed with exception:
Traceback (most recent call last):
  File "/global/home/users/kumaranu/quacc/src/quacc/runners/ase.py", line 180, in run_opt
    dyn.run(fmax=fmax, steps=max_steps, **run_kwargs)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 338, in run
    return Dynamics.run(self)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 218, in run
    for converged in Dynamics.irun(self):
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 186, in irun
    self.optimizable.get_forces()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 30, in get_forces
    return self.atoms.get_forces()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/atoms.py", line 791, in get_forces
    forces = self._calc.get_forces(self)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/abc.py", line 30, in get_forces
    return self.get_property('forces', atoms)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/calculator.py", line 503, in get_property
    self.calculate(atoms, [name], system_changes)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/calculator.py", line 906, in calculate
    self.execute()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/calculator.py", line 936, in execute
    raise CalculationFailed(msg)
ase.calculators.calculator.CalculationFailed: Calculator "qchem" failed with command "python /global/home/users/kumaranu/quacc/src/quacc/calculators/qchem/custodian.py 32" failed in /global/home/users/kumaranu/.scratch/quacc-tmp-2023-11-09-22-18-27-695511-ezq9lz_9 with error code 1

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/jobflow/managers/local.py", line 102, in _run_job
    response = job.run(store=store)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/jobflow/core/job.py", line 583, in run
    response = function(*self.function_args, **self.function_kwargs)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/monty/dev.py", line 100, in decorated
    return _callable(*args, **kwargs)
  File "/global/home/users/kumaranu/quacc/src/quacc/recipes/qchem/ts.py", line 144, in ts_job
    return _base_opt_job(
  File "/global/home/users/kumaranu/quacc/src/quacc/recipes/qchem/core.py", line 554, in _base_opt_job
    dyn = run_opt(atoms, copy_files=copy_files, **opt_flags)
  File "/global/home/users/kumaranu/quacc/src/quacc/runners/ase.py", line 183, in run_opt
    raise RuntimeError(msg) from err
RuntimeError: Calculation failed. Read the full traceback above. If needed, the logfiles are at /global/home/users/kumaranu/.scratch/quacc-tmp-2023-11-09-22-18-27-695511-ezq9lz_9

2023-11-09 14:18:35,874 INFO Finished executing jobs locally
Traceback (most recent call last):
  File "/global/home/users/kumaranu/Documents/tests/quacc_tests/example.py", line 15, in <module>
    result = responses[job1.uuid][1].output
KeyError: 'b68f6e78-e3be-4bb7-9320-b476c43e5b36'

How can we easily reproduce the issue?
# Paste your *minimal* example code here
import jobflow as jf
from ase import Atoms
from fireworks import LaunchPad
from quacc.recipes.qchem.ts import ts_job
from quacc.recipes.qchem.ts import irc_job
from quacc.recipes.qchem.core import freq_job
from jobflow.managers.fireworks import flow_to_workflow

symbols = ['H', 'O', 'H']
coordinates = [(0, 0, 0), (0, 0, 1), (0, 1, 0)]
atoms = Atoms(symbols=symbols, positions=coordinates)
job1 = ts_job(atoms, 0, 1, method="wb97x", basis="6-31G*")
flow = jf.Flow([job1])
responses = jf.run_locally(flow)
result = responses[job1.uuid][1].output
print(result)

I was not able to add quacc_settings above because I am not sure how to access info. I am using the default settings from settings.py, I believe.

@kumaranu:
Thank you for your issue report. I was able to reproduce your issue with the following example:
quacc set WORKFLOW_ENGINE local # just to make sure it's not jobflow

from ase import Atoms
from quacc.recipes.qchem.ts import ts_job

symbols = ['H', 'O', 'H']
coordinates = [(0, 0, 0), (0, 0, 1), (0, 1, 0)]
atoms = Atoms(symbols=symbols, positions=coordinates)
ts_job(atoms, 0, 1)

I do not yet know the cause but will investigate.

Hi @Andrew-S-Rosen,
I am using the current version of the code.
It eliminated the circular import error I mentioned earlier, but, it led to some other problems.
Here is what I see. Please let me know if there is anything that you see right away or do I need to put it with more details.
(quacc) [kumaranu@n0003 quacc_tests]$ python prod26_qchem.py
2023-11-28 12:20:29,646 INFO Started executing jobs locally
2023-11-28 12:20:29,649 INFO Starting job - ind005_nov8d_ts (133ad2ff-3224-4b7d-baa3-bad3a09bf14c)
No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)
SLURM_CPUS_ON_NODE not in environment
/bin/sh: qchem: command not found
Traceback (most recent call last):
  File "/global/home/users/kumaranu/quacc/src/quacc/calculators/qchem/qchem_custodian.py", line 107, in <module>
    run_custodian(qchem_cores=int(sys.argv[1])) if len(  # skipcq: PYL-W0106
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/monty/dev.py", line 100, in decorated
    return _callable(*args, **kwargs)
  File "/global/home/users/kumaranu/quacc/src/quacc/calculators/qchem/qchem_custodian.py", line 103, in run_custodian
    c.run()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/custodian/custodian.py", line 383, in run
    self._run_job(job_n, job)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/custodian/custodian.py", line 492, in _run_job
    has_error = self._do_check(self.handlers)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/custodian/custodian.py", line 648, in _do_check
    if h.check():
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/custodian/qchem/handlers.py", line 65, in check
    self.outdata = QCOutput(self.output_file).data
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/pymatgen/io/qchem/outputs.py", line 59, in __init__
    with zopen(filename, mode="rt", encoding="ISO-8859-1") as f:
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/monty/io.py", line 45, in zopen
    return open(filename, *args, **kwargs)  # pylint: disable=R1732
FileNotFoundError: [Errno 2] No such file or directory: 'mol.qout'
2023-11-28 12:20:38,421 INFO ind005_nov8d_ts failed with exception:
Traceback (most recent call last):
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/jobflow/managers/local.py", line 102, in _run_job
    response = job.run(store=store)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/jobflow/core/job.py", line 583, in run
    response = function(*self.function_args, **self.function_kwargs)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/monty/dev.py", line 100, in decorated
    return _callable(*args, **kwargs)
  File "/global/home/users/kumaranu/quacc/src/quacc/recipes/qchem/ts.py", line 115, in ts_job
    return base_opt_fn(
  File "/global/home/users/kumaranu/quacc/src/quacc/recipes/qchem/_base.py", line 114, in base_opt_fn
    dyn = run_opt(atoms, copy_files=copy_files, **opt_flags)
  File "/global/home/users/kumaranu/quacc/src/quacc/runners/ase.py", line 181, in run_opt
    dyn.run(fmax=fmax, steps=max_steps, **run_kwargs)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 338, in run
    return Dynamics.run(self)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 218, in run
    for converged in Dynamics.irun(self):
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 186, in irun
    self.optimizable.get_forces()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 30, in get_forces
    return self.atoms.get_forces()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/atoms.py", line 791, in get_forces
    forces = self._calc.get_forces(self)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/abc.py", line 30, in get_forces
    return self.get_property('forces', atoms)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/calculator.py", line 503, in get_property
    self.calculate(atoms, [name], system_changes)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/calculator.py", line 906, in calculate
    self.execute()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/calculator.py", line 936, in execute
    raise CalculationFailed(msg)
ase.calculators.calculator.CalculationFailed: Calculator "qchem" failed with command "python /global/home/users/kumaranu/quacc/src/quacc/calculators/qchem/qchem_custodian.py 32" failed in /global/home/users/kumaranu/.scratch/quacc-tmp-2023-11-28-20-20-29-651539-gcktq4zt with error code 1

2023-11-28 12:20:38,423 INFO Finished executing jobs locally
Traceback (most recent call last):
  File "/global/home/users/kumaranu/Documents/tests/quacc_tests/prod26_qchem.py", line 103, in <module>
    add_to_launchpad(index, atoms, tag, RUN=run)
  File "/global/home/users/kumaranu/Documents/tests/quacc_tests/prod26_qchem.py", line 76, in add_to_launchpad
    result = responses[job2.uuid][1].output
KeyError: '6268d01c-f83c-4e41-9f12-1bacaae2393d'

@kumaranu: Looks like you don't have the qchem executable in your PATH.

@Andrew-S-Rosen :
Thanks for correcting me on that.
I did not have the qchem module loaded there.
Now, I have loaded the module and you can see that it asks for the input files when I type in the qchem command on the terminal.
Nevertheless, it still led to a different error as shown below:
(quacc) [kumaranu@n0003 quacc_tests]$
(quacc) [kumaranu@n0003 quacc_tests]$ qchem
You are running Q-Chem version: 6.0.2
QCSCRATCH /tmp should NOT be the same!
unset QCLOCALSCR ...
Error: input file not specified !

Usage: qchem [ -save ] [ -archive ] [ -mpi|-gpu ] [ -nt nthreads ] [ -np nprocs ] input output scratchDir

(quacc) [kumaranu@n0003 quacc_tests]$
(quacc) [kumaranu@n0003 quacc_tests]$
(quacc) [kumaranu@n0003 quacc_tests]$
(quacc) [kumaranu@n0003 quacc_tests]$ python prod26_qchem.py
2023-11-28 12:31:51,653 INFO Started executing jobs locally
2023-11-28 12:31:51,656 INFO Starting job - ind005_nov8d_ts (eb099417-1b49-40b3-8c51-552d22b70aa4)
No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)
SLURM_CPUS_ON_NODE not in environment
Error in Q-Chem run part 1
cp: cannot stat '/tmp/scratch/*': No such file or directory
Error in the Q-Chem run
ERROR:custodian.custodian:QChemErrorHandler
Error in Q-Chem run part 1
cp: cannot stat '/tmp/scratch/*': No such file or directory
Error in the Q-Chem run
ERROR:custodian.custodian:QChemErrorHandler
Error in Q-Chem run part 1
cp: cannot stat '/tmp/scratch/*': No such file or directory
Error in the Q-Chem run
ERROR:custodian.custodian:QChemErrorHandler
Error in Q-Chem run part 1
cp: cannot stat '/tmp/scratch/*': No such file or directory
Error in the Q-Chem run
ERROR:custodian.custodian:QChemErrorHandler
Error in Q-Chem run part 1
cp: cannot stat '/tmp/scratch/*': No such file or directory
Error in the Q-Chem run
ERROR:custodian.custodian:QChemErrorHandler
ERROR:custodian.custodian:Max errors per job reached: 5.
Traceback (most recent call last):
  File "/global/home/users/kumaranu/quacc/src/quacc/calculators/qchem/qchem_custodian.py", line 107, in <module>
    run_custodian(qchem_cores=int(sys.argv[1])) if len(  # skipcq: PYL-W0106
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/monty/dev.py", line 100, in decorated
    return _callable(*args, **kwargs)
  File "/global/home/users/kumaranu/quacc/src/quacc/calculators/qchem/qchem_custodian.py", line 103, in run_custodian
    c.run()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/custodian/custodian.py", line 383, in run
    self._run_job(job_n, job)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/custodian/custodian.py", line 532, in _run_job
    raise MaxCorrectionsPerJobError(msg, True, self.max_errors_per_job, job)
custodian.custodian.MaxCorrectionsPerJobError: Max errors per job reached: 5.
2023-11-28 12:32:03,332 INFO ind005_nov8d_ts failed with exception:
Traceback (most recent call last):
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/jobflow/managers/local.py", line 102, in _run_job
    response = job.run(store=store)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/jobflow/core/job.py", line 583, in run
    response = function(*self.function_args, **self.function_kwargs)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/monty/dev.py", line 100, in decorated
    return _callable(*args, **kwargs)
  File "/global/home/users/kumaranu/quacc/src/quacc/recipes/qchem/ts.py", line 115, in ts_job
    return base_opt_fn(
  File "/global/home/users/kumaranu/quacc/src/quacc/recipes/qchem/_base.py", line 114, in base_opt_fn
    dyn = run_opt(atoms, copy_files=copy_files, **opt_flags)
  File "/global/home/users/kumaranu/quacc/src/quacc/runners/ase.py", line 181, in run_opt
    dyn.run(fmax=fmax, steps=max_steps, **run_kwargs)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 338, in run
    return Dynamics.run(self)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 218, in run
    for converged in Dynamics.irun(self):
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 186, in irun
    self.optimizable.get_forces()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/optimize/optimize.py", line 30, in get_forces
    return self.atoms.get_forces()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/atoms.py", line 791, in get_forces
    forces = self._calc.get_forces(self)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/abc.py", line 30, in get_forces
    return self.get_property('forces', atoms)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/calculator.py", line 503, in get_property
    self.calculate(atoms, [name], system_changes)
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/calculator.py", line 906, in calculate
    self.execute()
  File "/global/home/users/kumaranu/.conda/envs/quacc/lib/python3.9/site-packages/ase/calculators/calculator.py", line 936, in execute
    raise CalculationFailed(msg)
ase.calculators.calculator.CalculationFailed: Calculator "qchem" failed with command "python /global/home/users/kumaranu/quacc/src/quacc/calculators/qchem/qchem_custodian.py 32" failed in /global/home/users/kumaranu/.scratch/quacc-tmp-2023-11-28-20-31-51-657530-pfeidx41 with error code 1

2023-11-28 12:32:03,333 INFO Finished executing jobs locally
Traceback (most recent call last):
  File "/global/home/users/kumaranu/Documents/tests/quacc_tests/prod26_qchem.py", line 103, in <module>
    add_to_launchpad(index, atoms, tag, RUN=run)
  File "/global/home/users/kumaranu/Documents/tests/quacc_tests/prod26_qchem.py", line 76, in add_to_launchpad
    result = responses[job2.uuid][1].output
KeyError: '8f1c9a38-fb0c-419c-8620-114e6a444439'
(quacc) [kumaranu@n0003 quacc_tests]$

Another piece of info:
I have species the environment variables in my .bashrc file:
 28 export QCSCRATCH=/tmp
 29 export MODULEPATH=${MODULEPATH}:/clusterfs/mp/modules
 30 export PROJ=/global/home/groups/lr_mp/smblau/kumaranu

@kumaranu: Thanks for the follow up. Unfortunately, I am not too familiar with the Q-Chem setup right now. Your best bet is to ask @samblau until I have some time to look at this further. I'm trying to make the recipes easier to use in #1123, but it isn't ready to merge yet.

After talking with @samblau, I did a couple more things to get rid of the errors.

I was trying to run the tests locally using the run_locally command. @samblau suggested I run them on compute nodes instead.
I still got some errors after running them on compute nodes. @samblau suggested I update Pymatgen and custodian both. I did that and it worked out!

Thanks to both of you for your help.


Improve test scene

I was browsing the AGS forums the other day, when I came across this topic about Escoria
One person notes that:

The bare-bones example it comes with is... rough. And buggy, very buggy

Unfortunately, this is still true. I've experimented quite a bit with the framework these last few weeks, and I've come across several rough spots.
To make Escoria a more attractive alternative to AGS and proprietary engines like Visionaire Studio and Unity3D + the Adventure Creator plugin, I think some improvements are in order, to give a better first-impression of this framework.
Some issues/suggestions:

[x] "New Game" and "Quit" buttons in main menu don't work (see #23)
[x] Use an Area2D as background with the script from b750a4a882b8594ab58c729baad3307704c19edd, since it's more flexible
[x] Improve project structure for the test scene—eg. scenes/rooms/test/, scenes/characters/player/, etc. to teach users to re-use scenes and assets—instead of lumping everything together in scenes/test
[ ] Add examples of using separate dialogue scenes per character (font, color, size etc.)
[ ] Add examples of implementing cutscenes
[ ] Add examples of changing "rooms"
[ ] Ease translations files management (cf #27 )
++?

Don't get me wrong—I really like Escoria! And since it's so easy to utilize everything Godot has to offer, it's a very powerful framework that I hope gains more popularity. I just think it needs a bit more polish.

I agree with all this.
I propose we design a new example set of scenes that makes use of all Escoria features. These features don't have to be thrown in one big scene (as this will be harder to understand & maintain).
This issue seems to be a good place to go.
Here's my idea ( @fleskesvor  this is what we talked a few time ago): mimic The Secret of Monkey Island's introduction. We don't want to rip the assets, only the scenes' architecture. This goes from the title scene to the outside of the SCUMM bar.

SCENE 1 : Title
Simply the logo with credits. I'm not sure this is really useful, but we could also run it at another moment, such as at the end of Scene 2.

SCENE 2 : cutsene + dialog
a. cutscene : the actor enters, looks around and speaks with an NPC (no real dialog interaction with player). At the end of dialog, the player moves out of the scene
b. if the player goes back to this scene, he triggers a dialog (a real one)

SCENE 3 : outside (large width)
Goal: use of camera2D to follow the actor as he walks through this large scene

Some objects to see in the background (background_item)
Some objects to pick (inventory)

That sounds like a great idea! Looking at the list of commands in esc_compile.gd, I think that should make room for most/all of them. I feel like scene transitions, camera, animations, dialogue trees, verbs and inventory are the big ones, but there are also features I'm not familiar with at all.

The first thing I would say is remember the first paragraph of the book,
we're not really trying to compete with these "complete solution" packages
like the ones mentioned on that post.. So I'm not that worried about that
kind of thing, we're different from that.
But obviously I like improving the demos, so I'm happy with this.
On 28 May 2017 at 19:44, flesk<EMAIL_ADDRESS>wrote:

That sounds like a great idea! Looking at the list of commands in
esc_compile.gd, I think that should make room for most/all of them. I
feel like scene transitions, camera, animations, dialogue trees, verbs and
inventory are the big ones, but there are also features I'm not familiar
with at all.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/escoria/issues/22#issuecomment-304545113,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGVmPYKkZK1G6xMGFTdCC_k3ePDVEcbyks5r-fi4gaJpZM4NnUs-
.

@punto- Sure, we are not trying to bypass the essence of Escoria, not at all :)
Only assessing that a good demo for it fill 2 goals: 1/ Demonstrate the framework and as many of its capabilities as possible, obviously, and 2/ Attract users with a good-looking example.
Some users often wrongly believe the demos demonstrate the full capabilities of a framework or an engine (esp. looking at graphics). In the case of Escoria, there is no such thing because that's for adventure games. However, I'd just love having a nice and beautiful example bundled with Escoria.

yeah that sounds great, I'm all for it
On 29 May 2017 at 02:26, Julian Murgia<EMAIL_ADDRESS>wrote:

@punto- https://github.com/punto- Sure, we are not trying to bypass the
essence of Escoria, not at all :)
Only assessing that a good demo for it fill 2 goals: 1/ Demonstrate the
framework and as many of its capabilities as possible, obviously, and 2/
Attract users with a good-looking example.
Some users often wrongly believe the demos demonstrate the full
capabilities of a framework or an engine (esp. looking at graphics). In the
case of Escoria, there is no such thing because that's for adventure games.
However, I'd just love having a nice and beautiful example bundled with
Escoria.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/escoria/issues/22#issuecomment-304575193,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGVmPfh_gN-7lOHkmH7P5S90aka1uveTks5r-lcMgaJpZM4NnUs-
.

@punto- I understand that from Escoria's perspective, there's no need to compete with any of those "complete solution" packages. (I have read your presentation from Respawn 2015.) What I meant is that from a developer's perspective, I would like for Escoria to be seen as an attractive alternative to those solutions. I'm not a game developer myself, but I love adventure games and FLOSS, and I'd like to see more actual game developers use an engine and a framework founded on that ideology, where there's also first-rate support for Linux; including the editor.

Also, just to add a small note about flossmanualsfr's small project "Escoria in Daïza" (EiD): even though it is a great example for learning the same stuff we want, I think this should stay a side-project for multiple reasons.

I am personally not fond of the graphics style, but I do recognize its huge quality. I know it is voluntarily drawn to be childish, but after all these years passed on LucasArts games, my personal preference goes to human playable characters (with the notable exception of Sam & Max).
It misses long cutscenes involving dialogs and animations. The kind of cutscenes that players see as a reward for their efforts, y'know :)
Inventory is just a container in EiD, and it doesn't feature items combinations. Too bad, I'd love to show a simple example for each item combination possibility.
I think it is interesting to propose another presentation of the GUI (to be determined) than the one proposed by EiD: in comparison, EiD works with kind of verbs buttons. I'd be glad to work on another functionment, close to what The Dig did (left-click = primary action / right-click = look). Usually, when you click a pickable object, the player walks towards it, says something before picking it (not mandatory), then takes it.
Finally, we also need to master the framework better too. I'd be happy to discover it fully without simply following the (great) tutorial they wrote, but use it as a reference. That's what I personally do ;)

Hello, they know, have used renpy, is to make visual novels is very popular, also should add features of this to scoria. Should see that course to be able to do something stein gate style

Maybe I do not express myself well, but for them to have an idea should see as it is stein gate or the games of the person saga especially the 3 4 and 5 they make a very good game and maybe if they see since in youtube there are People who play those and in the case of person combines point and click parts and rpg, in the case of stein gate combines very well the change of time image of the upper left is the days anted that the character back or forward and those things Must see them to integrate them into escoria, to evolve

@zero2000 I understand you request a new feature to integrate RPG elements in Escoria. This is a good idea, but please open a new issue instead of using an existing one. We are talking about the demo scene here.

Not strictly related to the test scene, but it might be a good idea to add a list of features that are supported "out of the box" to the readme, since that's a thing people are going to be looking at when deciding between Escoria and any of the alternatives. Things like eg. scriptable actions and dialogues, verb bar/"coin", customizable UI, etc.
And if the test scene gets in a better shape, it might also be an idea to provide pre-built binaries for at least Linux, Windows and Android so that it's more accessible to potential users who are looking around for alternatives, and might not want to go to the effort of downloading the editor just to check out the possibilities.

Not relevant for escoria rewrite as new demo scenes are now included.


resolves #176: improve plugin structure for adding REST API locations

Resolves #176 + some cleanup of source code

@AlexElin It looks like there are some conflicts with the brach. Could you please resolve and re-submit the PR ?

@who, I resolved conflicts with this branch

:+1:  Thanks @AlexElin !


Add expires at to state

What is the context of this PR?
Describe what you have changed and why, link to other PRs or Issues as appropriate.
How to review
Describe the steps required to test the changes (include screenshots if appropriate).
Checklist

[ ] New static content marked up for translation
[ ] Newly defined schema content included in eq-translations repo

 Add expires_at to questionnaire_state (2 SP)


WorldCreator setup

I converted it to 20.1.401 and it shows failure to connect to mapped external database (after you map a database, restart, it shows the class but does not use the connectionstring from that mapped database).
It also shows a smaller problem of CSCodeEditor missing when opening a PersistentClassInfo (for now i am just replacing it with string editor). So either I am missing extra step or WC module actually doesnt work in one of the important aspect.
I did not change anything in the project, just upgraded to 20.1.4
https://www.dropbox.com/s/46xuam0j98etkw0/WorldCreatorTester.zip?dl=0
Thanks,
Evgeniy

We will try to answer all questions that do not require research within 24hr.
To prioritize cases that require research we use the following labels in order. For all other issues the posting time is respected.

❇ Exclusive-Services
❤ Bronze Sponsor
❤ Sponsor
❤ Backer
Installation
ShowStopper
Nuget
Contribution
BreakingChange
ReproSample
Deployment
must-have

This case is prioritized.

apologies for the delay I check your sample and does not use nuget packages, I cannot accept such samples as they miss all related logic contained in the packages and they required a lot of time to compile. Please remove the direct references and replace with nugets and post the sample again. Also post details e.g. screencast/log and sample db your are mapping

also as WC is part of the main framework and at the moment support is only available for the latest version, If a fix is required it will only be published for the latest version

Apologies
here it is 20.1.7
https://www.dropbox.com/s/q8cqjfzk6lft527/WorldCreatorTester.zip?dl=0
Run
Changing the editor for code as it causes problem opening views

Create new PersistentAssemblyInfo
Add Name
Save
Tools->DBMapper->Map Datastore
->choose existing database connection string
->Press Populate
Select table
Press OK
Press Save
(should generate code and compile)
Attribute now looks like this

record shows green in the list

restart
you can see the class mapped, but it does not seem to be connected to mapped database

your sample does not use the XpandObjectSpaceProvider which is required for this feature.
I tested with the NorthWind found at https://github.com/microsoft/sql-server-samples/tree/master/samples/databases/northwind-pubs and found several errors which I fixed in the next minor.

also I suggest u avoid the packages.config as as there are no tests with it. Use the packagereference format instead

Thanks a lot!
Looking forward to test the fix!
Cheers,
Evgeniy

eXpand.lab release 20.1.701.4 includes commit that relate to this task:

WorldCreator DBMapper DataStoreAttribute attribute does not return the resolved type #747
WorldCreator DBMapper generates RuleRequired for field members when compound primary key in NorthWind #747
WorldCreator DBMapper duplicate ValidateAssembly #747
WorldCreatorWinModule RichEditWinPropertyEditor is miss configured #747
WorldCreatorWinModule RichEditWinPropertyEditor is miss configured #747

Please test if it addresses the problem. If you use nuget add our LAB NugetServer as a nuget package source in VS.
To minimize version conflicts we recommend that you switch to PackageReference format and use only the eXpandAgnostic, eXpandWin, eXpandWeb packages. Doing so, all packages will be at your disposal and .NET will add a dependecy only to those packages that you actually use and not to all.
Thanks a lot for your contribution.

Issue is deprioritized as no Assignee found and scheduled for auto-close if no activity in the next 60 days. Thanks a lot for your contribution.

Closing issue for age. Feel free to reopen it at any time.
.Thank you for your contribution.


Dockerfile Request

I'm wondering if you could supply a Dockerfile to help get this up and running easily?
Also, on a side note, I'm trying to build a proxy that will enable me to bypass CORS and still utilize NTML, this looks like my only option (free). This should work for my scenario though correct?
Thanks!

Well then lol I see --> https://github.com/gabihodoroaga/nginx-ntlm-module/tree/master/docker
Might I recommend tagging this near the "Build" section in the Docs. Thanks tho, this will make life much easier.

Here is my config, I'll update if it works for CORS + NTLM Proxy and close if it does work :).
https://www.freesoftwareservers.com/display/FREES/Nginx+-+Build+with+DockerFile+-+NTLM+Module

It works!


ReplicaFetcherITCase.testPutKvNeedAck is not stable

cc @swuferhong

@luoyuxia You can assign it to me, I will check the reason.


Support automatic detection of amp and device Autoround [2.x]

Type of Change
feature
Description
Remove amp, device, export_args.
Update AutoRound version (6815f8b66be456ecbef2d0beb33dbc4efeefdc04)
Expected Behavior & Potential Risk
the expected behavior that triggered by this PR
How has this PR been tested?
how to reproduce the test (including hardware information)
Dependency Change?
any library dependency introduced or removed

/azp run Model-Test


Display html, using %html magic (or some other way)

I want to use the %html magic from ipython, but it seems to not exist in this kernel. And there's not list magics either (see #8). I want to use a node script that generates html, and then display it in the output cell. Is there any other way to achieve this, except magice.

I found a relatively simple way to implement HTML output, see my gist here:
https://gist.github.com/jasonphillips/3ecfc221f8f931027c82511870727e34
It's not secure (no checking for dangerous content in the HTML, etc) but that isn't necessary for my local development purposes.

There's another way to display html as well. The function display() which isn't documented in the readme, but is mentioned in issue #4 takes an optional mimetype argument. So displaying html is actually built in already.
display("
Hello World
", "text/html")

Combined with react-dom-render you can display jsx like this:
%%babel
const React = require('react')
const ReactDOM = require('react-dom/server')
const renderJsx = jsx => display(ReactDOM.renderToStaticMarkup(jsx), 'text/html')
renderJsx(
Hello World!
)

My problem is solved. But I think it would be nice to mention the display() function in the main readme.

Big thanks for your tips @haakenlid @jasonphillips 💯


Sets minimum size for app window

Using SetMinSize, the minimum size on the top-level window wx.Frame is set so that it does not allow the frame to be resized below the size entered.
https://user-images.githubusercontent.com/46411498/232567447-6307e195-73f4-4187-beab-a397df1cfee6.mp4

Oh - yeah, there's still a mismatch between local development import sorting and what is getting run on CI. I've yet to work out how to fix it.


Experiments Infra

adds experimental models
#527 #533
fixes entry duplicates on task feed
removes cascading at the moment until after CHI

lgtm.


TDD project

Here:

We created a class called Solver.
We created a method called factorial that takes one argument, an integer N, and returns the [factorial]
We created a method called reverse that takes one argument, a string word, and returns word reversed (e.g. if word is "hello" it returns "olleh").
We created a method called fizzbuzz that takes one argument, an integer N, and returns a string. The returned string is constructed following these rules:
[ ] When N is divisible by 3, return "fizz".
[ ] When N is divisible by 5, return "buzz".
[ ] When N is divisible by 3 and 5, return "fizzbuzz".
[ ] Any other case, return N as a string (e.g. say N is 7 then return "7").

[ ] Please kindly edit the title of your project in the readme file :+1:


After updating to 1.20.1, stuck on "Loading"

Preflight Checklist

[X] I have installed the latest version of Storage Explorer.
[X] I have checked existing resources, including the troubleshooting guide and the release notes.
[X] I have searched for similar issues.

Storage Explorer Version
1.20.1
Regression From
Unknown (1.20.0?)
Architecture
x64
Storage Explorer Build Number
20210720.10
Platform
Windows
OS Version
Windows 10
Bug Description
After updating via the toast prompt to 1.20.1, I'm stuck on the Loading page.

Steps to Reproduce
Have an ASE that was connected to Azure subscriptions.
Upgrade via toast prompt
Actual Experience
Stuck on Loading screen after update
Expected Experience
Able to see and select my subscriptions
Additional Context
No response

I've attempted to restart the app 4 times now and still stuck on Loading...

Can you try to delete: %AppData%/StorageExplorer then restart ASE?  Close ASE before delete the cached files please.


Control Panel shortcut on task bar?

:) sorry if i knew how to create it would post it :)

tl;dr: I hate you. :)
Now for the bedtime story...
First and foremost, I wouldn't accept such tweak into the library. This isn't a setting offered by the basic system, this is already an extra customization which creates something new. I try to generally avoid such and recently refused one PR which had similar idea. That being said, I wanted to give it a try, just to see if (and how) it can be done.
I spent considerable amount of time researching pinning and unpinning mechanisms already in the past and covered my research in issue #8. Generally, Microsoft tries to make this really hard, so it won't be abused by software vendors and users wouldn't feel that they are not in control. Ironic, I know. Nevertheless, there is a way how it can be done. However your request to pin something what's not a program, but a COM class, makes this even harder.
Generally speaking:
The pinning has been deliberately broken long time ago by KB3093266. Currently, there is pretty neat workaround which looks like this:
# Bring pinning / unpinning handler into '*' class scope
$pinHandler = Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Windows.taskbarpin" -Name "ExplorerCommandHandler"
New-Item -Path "HKCU:Software\Classes\*\shell\pin" -Force | Out-Null
Set-ItemProperty -LiteralPath "HKCU:Software\Classes\*\shell\pin" -Name "ExplorerCommandHandler" -Type String -Value $pinHandler

# Pin whatever you want to pin
# ....InvokeVerb("pin")

# Remove the handler
Remove-Item -LiteralPath "HKCU:Software\Classes\*\shell\pin" -Recurse

This allows you to reintroduce the pinning handler in 'all items' class scope and then invoke it on whatever item you want to pin.
Approach 1 - Find the namespace of Control Panel and pin it directly.
The easiest way would be to get the namespace of control panel as a directory item via its CLSID and invoke the method on it.
# Get "Control Panel" namespace
$cplCLSID = "::{26EE0668-A00A-44D7-9371-BEB064C98683}"
$cplNS = (New-Object -Com "Shell.Application").NameSpace("shell:$cplCLSID")

# Bring pinning / unpinning handler into '*' class scope
$pinHandler = Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Windows.taskbarpin" -Name "ExplorerCommandHandler"
New-Item -Path "HKCU:Software\Classes\*\shell\pin" -Force | Out-Null
Set-ItemProperty -LiteralPath "HKCU:Software\Classes\*\shell\pin" -Name "ExplorerCommandHandler" -Type String -Value $pinHandler

# Pin / unpin the COM object
$cplNS.Self.InvokeVerb("pin")

# Remove the handler
Remove-Item -LiteralPath "HKCU:Software\Classes\*\shell\pin" -Recurse

The problem is that the item is not a standard directory item, but a COM class object and as such it doesn't expose the custom verb. Simply put - it cannot be pinned using this method.
Approach 2 - Create a shortcut to COM object and pin the shortcut instead.
This time, I've created a *.lnk shortcut for the COM object and tried to invoke the verb on the shortcut.
# Get "Control Panel" namespace and localized name
$cplCLSID = "::{26EE0668-A00A-44D7-9371-BEB064C98683}"
$cplNS = (New-Object -Com "Shell.Application").NameSpace("shell:$cplCLSID")
$lnkName = $cplNS.Title

# Create a shortcut in taskbar pins folder
$lnkPath = "$env:AppData\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\$lnkName.lnk"
$lnk = (New-Object -ComObject "WScript.Shell").CreateShortcut($lnkPath)
$lnk.TargetPath = $cplNS.Self.Path
$lnk.Save()

# Pin / unpin the shortcut
$lnkItem = Get-Item $lnkPath
$lnkItem = (New-Object -Com "Shell.Application").Namespace($lnkItem.DirectoryName).ParseName($lnkItem.Name)
$lnkItem.InvokeVerb("pin")

# Remove the handler
Remove-Item -LiteralPath "HKCU:Software\Classes\*\shell\pin" -Recurse

Unfortunately this didn't bear fruit either as there are 3 or 4 different types of shortcuts and this approach creates the one which is a direct link to the COM object. Which effectively transforms this into the first case and this pinning method can't be used.
Approach 3 - Create a shortcut to explorer.exe with the COM object as path.
In this scenario, I've tried to avoid linking the COM object directly and instead created a shortcut to explorer.exe and gave the CLSID as parameter.
# Get "Control Panel" namespace and localized name
$cplCLSID = "::{26EE0668-A00A-44D7-9371-BEB064C98683}"
$cplNS = (New-Object -Com "Shell.Application").NameSpace("shell:$cplCLSID")
$lnkName = $cplNS.Title

# Create a shortcut in Quick Launch folder
$lnkPath = "$env:AppData\Microsoft\Internet Explorer\Quick Launch\$lnkName.lnk"
$lnk = (New-Object -ComObject "WScript.Shell").CreateShortcut($lnkPath)
$lnk.IconLocation = "$env:WinDir\System32\shell32.dll, 21"
$lnk.TargetPath = "$env:WinDir\explorer.exe"
$lnk.Arguments = "$cplCLSID"
$lnk.Save()

# Bring pinning / unpinning handler into '*' class scope
$pinHandler = Get-ItemPropertyValue -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Windows.taskbarpin" -Name "ExplorerCommandHandler"
New-Item -Path "HKCU:Software\Classes\*\shell\pin" -Force | Out-Null
Set-ItemProperty -LiteralPath "HKCU:Software\Classes\*\shell\pin" -Name "ExplorerCommandHandler" -Type String -Value $pinHandler

# Pin / unpin the shortcut
$lnkItem = Get-Item $lnkPath
$lnkItem = (New-Object -Com "Shell.Application").Namespace($lnkItem.DirectoryName).ParseName($lnkItem.Name)
$lnkItem.InvokeVerb("pin")

# Remove the handler
Remove-Item -LiteralPath "HKCU:Software\Classes\*\shell\pin" -Recurse

The upside is, that this approach works and allows me to pin the shortcut. However when you click the shortcut, Explorer execs into the COM object, which creates a duplicate icon on the task bar. So even if this gets where you want, it's hardly ideal as it doesn't achieve the same result as manually pinning the Control Panel window.
Conclusion:
I give up.
I'm fairly certain that it can be doe programatically, however I don't want to spend more time on this, especially if it won't make it into the tweak library anyway. As a personal preference, I do most of the things in Windows using keyboard, so I'm opening Control Panel by typing control in Run window opened via Win+R keyboard shortcut. I know that this isn't what you've asked for, but it's the best I can provide.


Multiple transforms?

Hi, is it possible to perform multiple transforms ?
For instance i would like to:

proxify downloads through our internal Nexus mirror
force the download of type all even if bin is specified

Yes, you can. Look for the Advanced Usage section of the readme. Let me know if the examples are not clear.

Thanks, after a brush-up session on sed's replace format i got it working!


Why remove child folder in screens folder?

I think the folder that contain a screen file is importance, when i want to add new component that just related to this screen, i have to put it in the same folder. So please put it back when generate new screen

@vantuan88291 I mentioned this in my QnA section. plz check it :))
https://github.com/infinitered/ignite/discussions/2319

Closing this, see discussion mentioned by @pqv2210 above.


Export tree models using breadth-first order

As ...
Ozzie - Operator
I want ...
To export a tree models such Location using breadth-first order.
So that ...
I can import back the whole tree with no error due to a missing parent.
I know this is done when...
I can easily transfer tree models from one Nautobot instance to another using export-import.
Related to #4998.
Optional - Feature groups this request pertains to.

[X] Automation
[ ] Circuits
[ ] DCIM
[ ] IPAM
[ ] Misc (including Data Sources)
[X] Organization
[ ] Apps (and other Extensibility)
[ ] Security (Secrets, etc)
[ ] Image Management
[ ] UI/UX
[ ] Documentation
[ ] Other (not directly a platform feature)

Database Changes
No response
External Dependencies
No response

As a workaround, I disabled the Rollback on failure feature and imported the same CSV file several times. It worked but it is clearly not the best.


Print git hash on opening

The log may like this
2019/07/10-19:46:55.322946 7fe2e9fe6a40 Titan git sha: titan_build_git_sha:@397b6d22456d027a40c635abb2a36de9d55f48ad@

Codecov Report

Merging #40 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #40      +/-   ##
==========================================
+ Coverage   84.12%   84.13%   +<.01%
==========================================
  Files          43       43
  Lines        2577     2578       +1
==========================================
+ Hits         2168     2169       +1
  Misses        409      409


style: format notebooks as well

Summary
format jupyter notebooks with black as well.
Tests
No tests needed.
Dependency changes
None.
AB#1824852

/azp run

Codecov Report

Merging #1522 (6714fbe) into master (3519038) will decrease coverage by 79.89%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #1522       +/-   ##
==========================================
- Coverage   84.39%   4.49%   -79.90%
==========================================
  Files         297     268       -29
  Lines       14912   13626     -1286
  Branches      718     718
==========================================
- Hits        12585     613    -11972
- Misses       2327   13013    +10686

Impacted Files
Coverage Δ

...m/src/main/scala/com/microsoft/lightgbm/SWIG.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...n/scala/org/apache/spark/ml/param/ModelParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...n/scala/org/apache/spark/ml/param/UDPyFParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...cala/org/apache/spark/ml/NamespaceInjections.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...cala/org/apache/spark/ml/param/DataTypeParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...ala/org/apache/spark/ml/param/ByteArrayParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...ala/org/apache/spark/ml/param/EvaluatorParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...la/org/apache/spark/ml/param/ParamSpaceParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...la/org/apache/spark/ml/param/TypedArrayParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...a/com/microsoft/azure/synapse/ml/stages/udfs.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 270 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3519038...6714fbe. Read the comment docs.


Localisation support

Hey there, you have done an amazing job at this module!
I'd like to provide Japanese localisation, do you have any plans to make this module compatible with other languages?
(Some effects like rage check for "Barbarian" in English, and is a bit inconvenient in Japanese)

Yes, I plan to do this soon. Thanks for volunteering to help! I will let you know when I get the initial support in the module.

Yes please! I'd love to write a spanish localization for this amazing module

Hey @DFreds i like to see Internationalization on this module.
I just wanted to know if you have already started doing something or if I can start from scratch with a new pull request.
it's something so simple that I should do it too XD

I have not started on this yet. Of note, you cannot localize any of the effect names without breaking the integration with midi-qol. I was thinking of adding an 'id' field to each effect that would be used to apply the effect, but that would require more collaboration with tposney.
If you want to start though, feel free. I'd appreciate it immensely. You could localize any UI elements or effect descriptions.

Also, if you do start it @p4535992, make the pull request early so I can provide early feedback. Maybe just localize a few elements so I can give any feedback before you do it more times.

Hello !
Is there any news about translation support ? I am also keen to translate this great tool into French. o/

Sorry for the late reply, I hadn't seen the message notification. :nerd:
I've translated the json, but in case Convenient Effect would support translations one day, can I make a pull request or should I keep it aside?

I would like to mention that I am available to provide localization for Brazilian Portuguese!


Sample Vocabulary for Language Model

deprecated option -sample_tgt_vocab which is now replaced by -sample_vocab and applies on language models too.

Codecov Report

Merging #318 into master will increase coverage by 5.55%.
The diff coverage is 74.07%.

@@            Coverage Diff             @@
##           master     #318      +/-   ##
==========================================
+ Coverage   70.78%   76.33%   +5.55%
==========================================
  Files          68       67       -1
  Lines        5637     5321     -316
==========================================
+ Hits         3990     4062      +72
+ Misses       1647     1259     -388

Impacted Files
Coverage Δ

onmt/translate/Translator.lua
27.42% <0%> (+0.5%)
:arrow_up:

onmt/modules/Generator.lua
80.85% <100%> (ø)
:arrow_up:

onmt/LanguageModel.lua
77.47% <37.5%> (-7.35%)
:arrow_down:

onmt/Seq2Seq.lua
75.18% <50%> (+13.69%)
:arrow_up:

onmt/train/Trainer.lua
66.81% <50%> (+44.01%)
:arrow_up:

onmt/data/SampledDataset.lua
71.65% <88.88%> (-0.73%)
:arrow_down:

onmt/Constants.lua
66.66% <0%> (-33.34%)
:arrow_down:

onmt/SeqTagger.lua
38.88% <0%> (-10.07%)
:arrow_down:

onmt/modules/Encoder.lua
91.4% <0%> (-5.29%)
:arrow_down:

onmt/translate/BeamSearcher.lua
93.38% <0%> (-2.97%)
:arrow_down:

... and 40 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 15dae77...0930bf1. Read the comment docs.


Fix all testing cases

[ ] test if rubbish message, gets brock.ca @Ky-Sch
[ ]  what is prereqs and what are prereqs @Joel-Liju
[ ] ['message'] for BotNLP.ProcessQ in 3 ( testing_single_hello_processQ()) @Ky-Sch
[ ] links selectable from front end @Joel-Liju
[ ] test if we can get the files properly @Ky-Sch
[ ] test extractKeywords @Ky-Sch
[ ] test processKeywords @Joel-Liju
[ ] test doQuery @Ky-Sch
[ ] test formQuery @Joel-Liju
[ ] test all get links Information regarding - can be found at: -  @Ky-Sch
[ ] Coverage testing @Ky-Sch @Joel-Liju


docs: exclude .py files from built site

Summary of Changes
Exclude .py files from built site since they are only needed to build the site in the first place. Afterwards, they just take up space.

:tada: This PR is included in version 0.5.0 :tada:
The release is available on:

v0.5.0
GitHub release

Your semantic-release bot :package::rocket:


Label font colors when selecting node

Is there a way to change label color when the node is selected? I see all sorts of options for node coloring, but for the label (of the node) there's only labelHighlightBold. Or am I missing something?

Basically I'm looking to provide a better way to deal with this:

AvoidOverlap and RepulsionNodeDistance of 200 don't help when there are 300 objects on the same level. So controlling labels giving highlighted node more opacity would be a good way to circumvent that.
I already started doing Color Opacity for edges.

But it would be good if I could control label colors so I could set opacity levels to Highlighted Label (different color too) and maybe (which probably is harder and more expensive) set lower opacity to not selected labels (if one is selected).


Unable to sign in on Spotify

Hey there!
First of all, I really love your screensaver, but there's only one problem I've been facing. I was supposed to sign in on Spotify, but I got a blank screen instead. In other words, I was unable to sign in. Is there another way around this, or it's just a bug that needs fixing?
I hope you get this message in the issue tab, thank you!
P.S. It also hangs System Preferences and I'm currently using a Macbook Pro that runs on macOS Big Sur.

Hey, sorry for my late reply. I could not reproduce the issue. Do you still have the issue with the latest version?

Apparently, it's fixed. Sorry for the late reply, thanks :)
P.S. Sorry if it's a little dumb.


Implement subqueries

+1

+1

+1

When you do this, please make it arbitrarilly recursive, rather than just adding one-level. In other words, subqueries should be allowed to have subqueries :). Limiting it to 2 levels is as silly as limiting it to 1.

+1, here's a sentence that explains my use-case:
I want to retrieve all data points from my latency measurement that are within the 90th percentile.
SELECT ms FROM latency WHERE time > now() - 2h AND ms < (SELECT percentile(ms, 90) FROM latency)

+1

+1

Does "revisit in the future" means it won't be implemented in 0.9.x?

@Melevir that is correct. The "revisit in the future" label is for features beyond the 0.9 line.

+1
I my case I'd like to do a first aggregation with a small group time and over that another aggregation with a bigger group time

+1

+1

+1

+1

+1

+1

+1

Rather than +1 in comments it's way better to react 👍 under initial comment.
There are many people who have subscribed to this issue to get a notification when it will be closed (hopefully implemented), and those +1 only create unnecessary noise for everyone.


Capturing another canvas element

Hi,
is there an issue when capturing html containing a canvas element? It seems that  content doesn't get captured. It might be 'by design' as this is an html2canvas script and not canvas2canvas. Any workaround?
Thank you.

I had  the same problem, and I found it was due to Canvas element need time to complete it's work.Maybe you can use html2canvas after the Canvas draw his picture.After that problem gone!
Oh no,I'm sorry to see this problem  after almost 6 years. But I think it's still work.


Shape setMode Not working. Code error

  setMode (mode) {
    if (Object.values(ShapeMode).indexOf > -1) {
      this._mode = mode
    }
  }

indexOf is accessed as a property rather than as a method/function (missing (mode) at the end ) so currently, modes cannot be changed on the fly for a shape.
https://github.com/liihuu/KLineChart/blob/f0eeca74a5c4b685dea6f7ab8cb5e7291643ecae/src/component/overlay/Shape.js#L469
A Fork request for this tiny thing seems excessive...
Also even if in api-instance.md specify that createShape allow to set the mode, this is not true, createShape does not capture the mode, neither Shape constructor, actually Shape constructor default it to Normal.
https://github.com/liihuu/KLineChart/blob/f0eeca74a5c4b685dea6f7ab8cb5e7291643ecae/docs/en/instance-api.md?plain=1#L206
https://github.com/liihuu/KLineChart/blob/f0eeca74a5c4b685dea6f7ab8cb5e7291643ecae/src/component/overlay/Shape.js#L102

Version 8.3.0 fixed it.

@liihuu change the mode through setShapeOptions is fixed, Great! Thanks,
Although but is still not working through createShape :(

v8.3.1


Support bounding the camera

The caller should be able to bound the map camera to a specific region of the world, to the extent that the native SDKs support it.

https://github.com/sargunv/maplibre-compose/pull/199 supports bounding zoom and pitch. Unsure if MLN has support for bounding bearing or lat/lng.


feat: Enforce configuration of Vulnerability Assessment setting

…scan reports to for a SQL server
Description
Enforce configuration of Vulnerability Assessment (VA) setting 'Send scan reports to' for a SQL server
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also
list any relevant details for your test configuration

[ ] Test A
[ ] Test B

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] The commit message/PR follows our guidelines

Other information:

Closing as the changes will be merged as part of #586


Print problem through FreeRDP

Hello.
There was one problem with the seal through Remmina.
remmina - version 1.2.0-rcgit-15
FreeRDP - version 2.0.0-dev
Client (Linux Mint 17.3 x32) connected via Remmina (tick cocked - make a local printer available to the public) to WinSrv2008R2 printer redirected = print one copy of all right, but if you set the number of copies 2 - go to print 4 sheets, if you set the number of copies 3 - published 6 sheets, etc.
Printers = Canon MF3010, Canon MF4330d - with www.canon.com driver.
Connect and so from a terminal:
xfreerdp /u:user /printer /v:<IP_ADDRESS>
terminal:
[INFO][com.freerdp.client.common.cmdline] - loading channel rdpdr
[INFO][com.freerdp.client.common.cmdline] - loading channel rdpsnd
Password: XXXX
[INFO][com.freerdp.channels.rdpdr.client] - Loading device service printer (static)
[INFO][com.freerdp.channels.rdpdr.client] - registered device #1: PRN1 (type=4 id=1)
... сonnected, started up 2 copies to print...
[ERROR][com.freerdp.channels.rdpdr.client] - Ignoring unhandled message PAKID_PRN_CACHE_DATA (EventID: 0x0002)
Result - 4 sheets
Please tell me where to find the problem and how to solve it?

Hello.
Did you fix this issue?

Tested with fc6780a86 and could not reproduce. Could you confirm?

Not reproducible, no feedback.
Closing.


Add consumer side of WIT+Auth contract tests.

This PR adds consumer side of the contract tests for the WIT service consuming Auth service API endpoints.
CICO job: https://github.com/openshiftio/openshiftio-cico-jobs/pull/940
The provider side (Auth service) of the contract tests is covered by https://github.com/fabric8-services/fabric8-auth/pull/711
WorkItem: https://openshift.io/openshiftio/Openshift_io/plan/detail/1329

[test]

[test]

[test]


Error by building custom kernel modules

Hi,
I followed this doc:
https://github.com/coreos/docs/blob/05a178bd51ee3c6940f7a6360d56bc660d324a1d/os/kernel-modules.md
and run into this issue:
coreos_developer_container ~ # emerge -gKav coreos-sources

!!! Error fetching binhost package info from 'http://builds.developer.core-os.net/boards/amd64-usr/1235.6.0/pkgs/'
!!! HTTP Error 404: Not Found

!!! Error fetching binhost package info from 'http://builds.developer.core-os.net/boards/amd64-usr/1235.6.0/toolchain/'
!!! HTTP Error 404: Not Found

These are the packages that would be merged, in order:

Calculating dependencies |Unable to enable loopback interface: EPERM                                                                                ... done!

emerge: there are no binary packages to satisfy "coreos-sources".

emerge: searching for similar names...
emerge: Maybe you meant any of these: sys-kernel/coreos-modules, coreos-base/coreos-dev, coreos-base/coreos-au-key?

@rastislavszabo Sorry you've run into this. While the doc is technically correct, there is a known issue with the dev container right now. I'll let you know more as we get it sorted.
As mentioned in the other issue report, you can work around this with existing sources by (temporarily) omitting the g and K flags from your emerge command.

Thanks for the info!


Warning about unknown events

I have seen the following warnings on the dev server.
We should check why we get those warnings and if we maybe use the wrong abi or so.
.py:1029: UserWarning: The log with transaction hash: b'\xf2\xb8Jz}=s\x1f%U?\x18\xa3rKo\x81\xc0\xacW\xb3+\xda\x8a9)P\x84\xf8\x1bv\xa4' and logIndex: 2 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.
nd '
.py:1029: UserWarning: The log with transaction hash: b'\x03\x96\xdb\xb0I\xed\xd9eG\xf3`\xcau\x90\x14*\xa8\xc7\x98c\x16r\x19\x1e\xf9\xf8EO~\xf5\x8e\x19' and logIndex: 6 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.
nd '
.py:1029: UserWarning: The log with transaction hash: b'\x8d\xcc\xf2Ac\xf9\xa2\xaf\x144\x0b\xb1\xf4\x0e\xf3\xa3>0\xd4E\xc9dO\xd5W_g\xd1l\xc9\xd70' and logIndex: 0 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.
nd '
.py:1029: UserWarning: The log with transaction hash: b'`\x89\xde\xd8\xf6\x0bB)_ \x90\x0f6\xf6n\xcdb@+!\xc3p\xa5\xb8\xdf#|\xa7\x1a\x8c\xbe\xd4' and logIndex: 2 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.
nd '
.py:1029: UserWarning: The log with transaction hash: b'!a\x7f5\tC\x16\xa2\x11j\xdd\xf5\x12F\x96\xe0\x19\xb5\xd7\xa1\x8f1II6\x07~\x89\xf4\xacq\xa3' and logIndex: 4 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.
nd '
.py:1029: UserWarning: The log with transaction hash: b'\xa7\xf8\xd0\x03&\xba\xfa\xa0eec\xbd?3\x83\x87*\xc3z\r+\x8b\xb9\x19\xfa\x1b\x81\x7f\x1f\xc1\xedZ' and logIndex: 0 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.
nd '
.py:1029: UserWarning: The log with transaction hash: b'\x0fT\xa5\xae\xcc\xc0\x9f~pVI\xfd\x8c\x12(\x14\xab\x01\xcc\xc3\xe6`\xa3(\x84\x9c\xba8=,R\x0e' and logIndex: 0 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.
nd '
.py:1029: UserWarning: The log with transaction hash: b'b\xd3\xf6;]\x1b\xf4\xdco\xabb\xd2X\xf0\x8c\x0bN\x9b\xfc1\x04\x88\xbb\xfb\x8b`\xf7\xad\xdb\xe0\xdb\xa1' and logIndex: 0 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.
nd '
.py:1029: UserWarning: The log with transaction hash: b'{^\xeeCf\x97\xafa\xa6\nx\xa0\x99\xc1\xbe\xc3\x0c-s\xf9\xac?\x88\x1d\xa6\xa5\xce\xe8\xee\xaf\x05\xde' and logIndex: 6 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.
nd '
.py:1029: UserWarning: The log with transaction hash: b'\xef\xa0f\x86\xb7\xa7\xfa\x81:\x1d?t6\xbax\x91]\x19\x91\x94\xf76#\x08oL\xb3P\xeb*t\xec' and logIndex: 0 encountered the following error during processing: MismatchedABI(The event signature did not match the provided ABI). It has been discarded.

It seems to come from: https://github.com/trustlines-protocol/contracts/blob/master/py-deploy/tldeploy/identity.py#L506
We process a receipt with events from the identity proxy factory and the identity proxy itself. Web3 fails to match the event from the proxy.
You can see that by running the test relay/tests/chain_integration/test_delegate -k test_deploy_identity


FlashResponder: add a model's base errors to the flash message?

Is there an easy way to add a model's base errors to the flash message?
When I try to delete a record with depending children that has dependent: :restrict_with_error set, then I see an error like "X could not be destroyed", but nothing more.
Inspecting the record, I see that there is an additional error added to base:
@messages={:base=>["Cannot delete record because dependent children exist"]}, @details={:base=>[{:error=>:"restrict_dependent_destroy.has_many", :record=>"children"}]

Is there an easy way to append base errors to the flash message?

Please use StackOverflow for questions/help, where a wider community will be able to help you. We reserve the issues tracker for issues only.


Start week with Monday instead of Sunday

Hey @Paul-DS,
how would you go about starting each week of the month with Monday instead of Sunday? There seems to be no API/option for this.

Alright, it seems you can do it in the source code of the plugin, in here:
	var dates = $.fn.calendar.dates = {
		en: {
			days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"],
			daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],
			daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa", "Su"],
			months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
			monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
			weekShort: 'W',
			weekStart:1 // <--- this is the week start numebr (0 for Sun, 1 for Mon etc)
		}
	};

Would be awesome to have this an option in the plugin.

You can check this issue : #23.
I added an option, but it's not in the last release, it will be for the next one.

I see, thanks Paul!


405 method not allowed

Hello, Does anyone encounter this error "405 method not allowed" after launching the app?
After exporting all the required tokens and launching the app, I'm not able allowed to use services. It seems to be related to the bearer token that prevented me from authentication. But I'm not sure what it's going wrong.
export DATASTORE=pinecone
export PINECONE_API_KEY=$PINECONE_API_KEY
export PINECONE_ENVIRONMENT=us-central1-gcp
export PINECONE_INDEX=openai-retrieval-app
export BEARER_TOKEN=$BEARER_TOKEN
export OPENAI_API_KEY=$OPENAI_API_KEY
poetry run start

I get these errors:
INFO:     Started server process [2939775]
INFO:     Waiting for application startup.
Connecting to existing index openai-retrieval-app
Connected to index openai-retrieval-app successfully
INFO:     Application startup complete.
INFO:     <IP_ADDRESS>:38326 - "GET / HTTP/1.1" 404 Not Found
INFO:     <IP_ADDRESS>:38326 - "GET /favicon.ico HTTP/1.1" 404 Not Found
INFO:     <IP_ADDRESS>:38332 - "GET /query HTTP/1.1" 405 Method Not Allowed

Any help please? thanks

me2,Have you solved it?

@rigou666666 it turns out that query is a post method I can't access the page localhost:8000/query
To send a query you can use curl. You will find commands under http://localhost:8000/docs
or the python library requests
r = requests.post("http://<IP_ADDRESS>:8000/query",
                      body={"queries": [{"query": QUERY}]},
                      headers={"Authorization": "Bearer BEARER_TOKEN"})

Make sure that the app is up and running then you can send your requests.


[SPARK-45057][CORE] Avoid acquire read lock when keepReadLock is false

What changes were proposed in this pull request?
Add keepReadLock parameter in lockNewBlockForWriting(). When keepReadLock is false, skip lockForReading() to avoid block on read Lock or potential deadlock issue.
When 2 tasks try to compute same rdd with replication level of 2 and running on only 2 executors. Deadlock will happen. Details refer [SPARK-45057]
Task thread hold write lock and waiting for replication to remote executor while shuffle server thread which handling block upload request waiting on lockForReading in BlockInfoManager.scala
Why are the changes needed?
This could save unnecessary read lock acquire and avoid deadlock issue mention above.
Does this PR introduce any user-facing change?
No
How was this patch tested?
Added UT in BlockInfoManagerSuite
Was this patch authored or co-authored using generative AI tooling?
No

Could you rebase to master branch once more, @warrenzhu25 ?

Rebased.

Thank you for updating, @warrenzhu25 .
BTW, GitHub Action seems to lose your running CI link. Could you post the your running GitHub Action link here?

Thank you for updating, @warrenzhu25 .
BTW, GitHub Action seems to lose your running CI link. Could you post the your running GitHub Action link here?

Retriggered build.

@JoshRosen Could you help take a look?

The test failures are unrelated, but can you retrigger them @warrenzhu25 ?
Ideally, would prefer a clean build before merging.

The test failures are unrelated, but can you retrigger them @warrenzhu25 ? Ideally, would prefer a clean build before merging.

I tried to rebuild several times, but it seems still failing and hanging on LBFGSClusterSuite, but it should be unrelated.

Looks like multiple PR's are impacted by it - and in this case, it is not related.
Merging to master, 3.5, 3.4, 3.3
Thanks for fixing this @warrenzhu25 !
Thanks for reviews @JoshRosen, @Ngone51 :-)


Fix Raxx.complete?/1 to return true when a body is an iolist

Great, thanks for the changelog entry as well


Invalid prop children of type array supplied to Popover

when passing in an array of jsx components into Popover, I get a warning saying its an invalid prop type.
<Popover> {arrayOfJSXComponents} </Popover>
```Warning: Failed propType: Invalid prop children of type array supplied to Popover, expected object. Check the render method of `Toolbar````
Still seems to work just fine though, I'm assuming proptypes for Popover only allows object and not object or array?
Is this intentional and I'm misusing the component?
Thanks,

@davidlashlee Popover should have a root element. wrap them around a div and try again.

I think that we should have node here https://github.com/callemall/material-ui/blob/master/src/popover/popover.jsx#L27.

@oliviertassinari Yup

@davidlashlee Thanks for reporting this.


explorer shows nothing after downgrade from 1.63.2 to 1.46.1

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.46.1
OS Version: win10

Steps to Reproduce:

upgrade to version 1.63.2
downgrade to version 1.46.1

Could you try opening vscode with a different user data directory? i.e. code --user-data-dir ./tmp

Could you try opening vscode with a different user data directory? i.e. code --user-data-dir ./tmp

this solution works. but i resolve this by removing %appdata%\Code folder.


How to generate multiple hypotheses?

Hi,
I have trained a Transformer-base. Now I want to generate multiple hypotheses using the interactive.py. How could I achieve this? What command line should I use?
Thank you!

--nbest is working, sorry for interupt


load-last-checkpoint does not actually load the last available checkpoint

Describe the bug
When running the enjoy.py script with --load-last-checkpoint it will not load the last available checkpoint but the one which is alphabetically the last one.
The issue arises from following lines
https://github.com/DLR-RM/rl-baselines3-zoo/blob/96f1a59b407f49a9beccbb1c6948fa502a4717d5/enjoy.py#L101-L104
We take the last entry from checkpoints but this is sorted alphabetically, that means the list is ordered like this when we do a checkpoint each 100000 steps:
[
"rl_model_10000000_steps.zip",
"rl_model_1000000_steps.zip",
"rl_model_100000_steps.zip",
"rl_model_10100000_steps.zip",
...
"rl_model_9900000_steps.zip"
]

Additionally the documentation of glob says that the sorting is depended on the filesystem type (https://docs.python.org/3/library/glob.html).
This issue can be fixed by resorting this array in natural sort order before running line 104.
Code example

Run training with creating checkpoint each 1000 steps
Stop training after 10000 steps
Run enjoy with load-last-checkpoint
It will load rl_model_9000.zip

System Info
Ubuntu 18.04
Python 3.7
Installed from source

Hello,
nice catch, I would appreciate a PR that solves that issue ;)


Endpoint for receipt delivery

Add endpoint for receipt delivery (aka acknowledge), including metrics and the sender name for the push notification
https://mattermost.atlassian.net/browse/MM-14858
https://mattermost.atlassian.net/browse/MM-14884

@jespino is part of another ticket done in the same PR, you’ll see the reference once you review the server PR ;)


Not working for Jewlary enchantment

Just tried this today for enchanting jewellery afk and doesn't seem to work. No progress bar shows up.
On Runelite 1.9.3.

Resolved in latest version. Please close this when you are available.

Found the issue. Will be fixed soon when I update the plugin on RuneLite.

Fix is now live. You can close this when you are available.

Can confirm it's now working, kinda hard to read since it's vertical but it works!


Don't watch the whole directory in the file watcher test

When watching the whole test directory we'll also get some events for the directory, and those events can come with different order depending on the OS, so we can't rely on them. We check that if a directory event comes, it is a modification.
Also when testing for events in a file watcher, we need to set the polling_interval to a value that is small enough to detect the changes we are expecting, otherwise some events could be "merged" if the changes happen faster than the polling interval.
Fixes #324.

Setting auto-merge.


Edit webSocket frame

Hi, i'm developing a tool for mocking my app's socket response, is there a way to edit the response frame using stetho? or is there any good way to do it？

No, Stetho is just designed to visualize the request.  Maybe you're interested in a service like https://www.mockable.io or http://wiremock.org (note I do not officially endorse these services I've just heard of them before and they might solve your needs).


Update comment in offline_asset_paths.rb

The comment describes what I want to do, but the code example does not work for recent versions of Rails.
# Rails Asset Patch extension used to write assets out an offline asset directory
# for future use
# example:
#   ActionView::AssetPaths.send :include, JasmineRails::OfflineAssetPaths

It looks like that ActionView::AssetPaths was removed after Rails 3. I'm hunting around in the docs to try to figure out what the replacement was/is.

Basically I would like to compile assets to tmp/jasmine ahead of time. Alternatively it looks like Jasmine assets are getting compiled to public/assets - would it work to set Jasmine's tmp_dir in my config to public/assets? I feel nervous about doing that because I worry it might remove files that exist in that directory.
(sorry, I am new to Rails)

I've messed around with this a lot, and I can get JasmineRails to compile its css/js etc. to my public/assets folder from a Rake task, with RAILS_ENV=test. However, that doesn't help much because it compiles again to tmp/assets when I run rake spec:javascript.
Here's my rough working code for getting it to compile to public/assets:
require 'jasmine-rails'
require 'jasmine_rails/offline_asset_paths'
require "jasmine_rails/engine"
JasmineRails::OfflineAssetPaths.disabled = false
ActionView::Base.send :prepend, JasmineRails::OfflineAssetPaths

However when I call Rake::Task['assets:precompile'].invoke, compute_asset_path never gets called.

Ah, it turns out when I compile to public/assets, Sprockets has some trick where it can copy from there to tmp/jasmine/assets very quickly (I think). jasmine-rails still indicates some compilation is going on, but it completes in 1.2 seconds, instead of 80, so that's an improvement.

So yeah the reason that I was looking for this hack was that I was confused why jasmine-rails needed to recompile assets when it booted. It turns out I was unaware of the Sprockets asset cache, which existed on the machine sometimes and didn't exist other times (it's a build server).


Remove "N/A*" from Student Review Mode Cat Subtotal and Show Subtotals in Student View

Currently, we have an "N/A*" appearing as the category subtotal score in the "Student Review Mode" when the category contains an item that has not been released to students. The student view does not show the subtotal score at all when this is the case.
Since items that are not released to students are ALSO not included in course grade calculations, there is no need to hide the subtotal score. As with the Instructor "Grade Summary" screen, show all subtotal scores, even if there are items within a category that have not been released to students.

Hi @kyleblythe.  Just had a look at this one.  Currently the service doesn't distinguish between released and not released items when calculating the category average.  @steveswinsburg, I have a feeling this might require a change to the Gradebook service?

Yep thats correct. Currently the category score calculation logic has these three conditions:

Assignment actually has points
It's not extra credit
There is a grade for the student

Shall I add:
4. the assignment is released?

Hi @steveswinsburg ,

Re: "released" assignments, are we referring to the item being released/not released to students, or it being included/not included in course grade calculations? Because I don't really think that the item being released to students matters, since there's the dependency between that and the calculation status. If an item is not released to students, it's also not included in course grade calculations. With that in mind, though, if an item IS included in course grade calculations, I definitely think it should be a part of the category subtotal calculations. If not, it should be excluded.

Re: extra credit items - if an item is marked as extra credit, I think that it probably should be included in category score calculations as well. I know extra credit's calculated differently (with the total points possible not included, but with any scores provided applied to the existing subtotal), but the fact that it's possible to add extra credit items to a traditional category means that this probably should get reflected in that category's subtotal.

E.g., if there are two items, each worth 100 pts, and an extra credit item worth 10 pts, the subtotal would calculate out of 200 pts. If a student gets maximum points on all 3, they would get a subtotal score of 210/200, or 105%.

Hi @kyleblythe,
Yes, by 'released' I mean the setting "Release item to students?" that can be applied on the assignment. Currently it ignores the setting and always includes it. So if the assignment is included in the course grade then it's all good (as by default it is also released), but if it's not part of the course grade, then it may or may not be released, but will still be included regardless.
Sooo, we can include either condition in the check, let me know.
Re extra credit, I will remove that condition from the check. Let me know on the first one and I'll do them both together.

Hi @steveswinsburg,
I chatted with Jeff about this earlier. I think that the release status of an item doesn't matter as much as the course grade calc inclusion when it comes to subtotal scores. When an item is released to students and included in course grade calculations, it makes sense for it to be included in subtotal calculations. When the item is released to students but not included in course grade calculations, it doesn't make as much sense, as the item is not counting toward the course grade and the category subtotal score represents a certain percentage of the final course grade. And if the item is not released to students, thanks to the dependency, it's also not included in grade calculations.
I think that this is how category subtotals are calculated in GB1. Is there a way to double-check this?
If that's indeed the case, I think the three conditions should be:

Assignment actually has points,
There is a grade for the student,
Assignment is included in course grade calculations

Ok yep I just checked against GB1 and that appears to be the case. I'll make the change.

See https://jira.sakaiproject.org/browse/SAK-29975
I've found that the 'include in course grade calculation' and 'item released to students' dependency is not enforced on the backend, only the frontend. Should we make that change? It could have other effects.
The simplest solution here is to just also include the released to students check as the final check (after the include in course grade calculations) to catch any case where an assignment is included in course grade but not released to students (maybe created through the API). WDYT?

I've merged this so give it a run and let me know if it's what you need @kyleblythe .

This issue was moved to sakaiproject/sakai#1381


re-add sorting of Products using ListSorter

Codecov Report

Merging #652 into master will decrease coverage by 0.01%.
The diff coverage is 0%.

@@             Coverage Diff              @@
##             master     #652      +/-   ##
============================================
- Coverage     46.93%   46.92%   -0.02%
  Complexity     1559     1559
============================================
  Files           115      115
  Lines          4545     4546       +1
============================================
  Hits           2133     2133
- Misses         2412     2413       +1

Impacted Files
Coverage Δ
Complexity Δ

src/Page/ProductCategoryController.php
0% <0%> (ø)
6 <0> (ø)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c8f969f...bbffc4d. Read the comment docs.

Thank you!


feat(mongo): Use Motor as MongoDB client, add some (unit-ish) tests, implement values

I'm no expert on Motor (or Mongo in general), but thought I'd whip up this PR to try to add support for Motor to the MongoDB backend. I've also added in some kind-of-unit-tests.
The tests require a mongo server running locally in order to work; since this may not always be the case/feasible, I've added support for an environment variable, BACKENDS_TO_TEST, which is a space-delimited list of backends that should be tested. That means, by default, the Mongo backend tests won't be run.
I've also never used pytest before, so let me know if the testing pattern I've used could be improved upon.
I've implemented MongoDBCache.values here as well, though I wasn't sure about the desired semantics, so let me know if the implementation needs to change.
One question: I haven't used Python's new typing system yet, so apologies if this is misguided, but does the return signature for read need to be wrapped in an Optional? ResponseOrKey already contains None, and Optional[x] is equivalent to Union[x, None], and nested unions are flattened and stripped for redundancy.

Looks good! I'm glad that turned out to be pretty much a drop-in replacement for pymongo. And you're correct that the type hint for read() can just be ResponseOrKey, and wrapping it with Optional was redundant. Good catch.
For values(), python's list comprehensions are often more readable than map/reduce syntax (at least for devs who aren't as familiar with functional programming). So this:
return list(map(lambda x: x['data'], results))

Could become this:
return [x['data'] for x in results]

For unit tests, typically you would mock out anything like a database or other external services. Running against a live database would be an integration test. Those would be nice to have (and can be automated using containers within GitHub Actions), but probably last priority after everything else has unit test coverage.
For unit tests, the idea is basically, "I'm going to trust that Motor's functions do what they're supposed to do, and only test my own code," and then mock out those calls using unittest.mock.patch or another mocking tool. Then you can bridge the gap slightly between unit and integration tests using features like autospeccing, so the mock objects behave more like the real ones.
Pytest adds a lot of useful stuff on top of the stdlib unittest module, like fixtures (which replace setup/teardown functions), and parametrization (which makes it easy to run the same test many times over different inputs). It's mostly optional, though, and you can usually do the same things with just unittest, but with more code.
But don't worry about any of that for this PR; the tests you added are a big improvement over no tests. I don't mind doing the rest myself, I've just been a bit lazy about writing tests for this so far!

Your changes are now in v0.1.4 on pypi. Thanks again!


Missing project LICENSE?

Please correct me if I'm wrong, but I think the podcast-namespace project itself, i.e. the schema itself, does not have a license as of now?
If that is the case, we should pick a license, and since not all of it is software, it might be best to pick a documentation license as well.
I guess the licensing choice is up to @daveajones and depends largely on philosophy and vision, i.e. what future direction the project should take. We probably all know our software licenses. For the documentation part there are quite a few options as well - here is a short overview. Public domain would probably be an option too.

Does anyone have recommendations for which license makes the most sense here?  I’m open to any good idea.

I'm not sure, but it probably makes sense to look for inspiration in other organizations managing standards. A couple of examples:

IANA uses CC0, which is essentially a public domain license
W3C uses a custom license, which maybe looks similar to MIT license?
IETF allows copying but not modifying for all RFCs

My two cents:

BSD 3 Clause if you’re super open to people doing anything they want with it. I prefer this over MIT, personally.
Apache 2 otherwise

See https://fossa.com/blog/open-source-software-licenses-101-bsd-3-clause-license/ for some good info.


Expose issue #945

This is not a fix for #945. I don't see an easy solution.
Now Scalameta will crash instead of emitting wrong tokens

I'd say crashing is definitely better.

The issue is that in the case of <a/>{0} when we see the opening brace, we don't know if it is a legitimate splice or if we reached the end of the xml literal.
A solution would be to introduce new tokens in the LegacyScanner (i.e. tokens for splice start and splice end)

LGTM


Fix/ipct1 392/splash screen UI diff

This PR fixes [IPCT1-392] at https://impactmarket.atlassian.net/browse/IPCT1-392
Description
This PR Fix 19:8 ratio bug on splash screen, rolling back Android specific setup on SplashScreen
Type of change

Bug fix (fixes an issue)

How Has This Been Tested?

[x] Manually

[x] BLU Advance L5
[ ] SLIDE SP4514
[ ] Asus ZenFone 3 Max
[ ] iPhone 6
[x] iPhone 11
[x] REDMI5 Plus

[ ] Automated

Screenshots/Videos
REDMI 5 Plus

iPHONE 11

https://github.com/impactMarket/mobile-app/commit/d9e4d244d27fc92aac46685299f1cc0cffd8e85c


Improve speech recognition and remove postprocessing

Refactoring STT system
https://artificialanalysis.ai/speech-to-text
Points to https://www.speechmatics.com/ as the winner in WER %

Deepgram has a worst WER by 40%, which it's forcing us to do a postprocessing using whisper-x.
Also tried assembly AI, unfortunately streaming only works for english language, so it's discarded.

Speechmatics is marginally better than assembly ai, but works with all languages, and has interesting features future proof.
NOTE I will do the exact same pipeline first in Soniox first, we already have 10k in credits, but I'm unsure if I trust their accuracy for some reason, as the WER comparison was made by themselves.
Also they made the research before the releases of latest models.

Still the reason of testing soniox first, is because we have already a good % of the pipeline integrated, so it shouldn't take long.

[ ] Setup speechmatics websocket concurrently with existing deepgram websocket.
[ ] From the app use a settings dropdown, that allows to select transcript model (only while testing)
[ ] Test both options in 10 scenarios. (Deepgram + postprocessing) (Speechmatics + postprocessing)
[ ] Script to view line by line comparison between each one of them

[ ] Prompt GPT to compare the 3 transcripts at each scenario, which one has better accuracy.
[ ] (Maybe) Use groq whisper v3 as source of truth and perform WER in comparison

[ ] If tests point that speechmatics <= whisper-x results by 5-10%, skip and remove postprocessing.

Important:

[ ] Need to double check scalability

[ ] Need to ask for free credits, it's 4x more expensive than deepgram.

[ ] Speechmatics will only be supported for opus, for 1.0.2, will continue using deepgram.

Add ons:

[ ] VAD Implementation will be needed. Finish ticket specially for Opus.
[ ] Push more users to migrate, initiate "campaign" to help users migrate from 1.0.2 to 1.0.4 in < 30days so we can deprecate pcm8.

[ ] Understand the data (how many are still on pcm8?)

[ ] Improve speech recognition, make sure the file is being sent correctly (use the raw audio .wav instead of the saved opus encoded bytes), double check the duration at which performs 90% of the time.

How WER tests were made by artificialanalysis

https://soniox.com/media/SonioxEnglishBenchmarks2023.pdf

@josancamon19 can you pls specify what languages are required to complete the task? This will allow me to quicker understand whom to ask to do it

Note had an issue with speechmatics diarization results, hunch that it is still better than deepgram.
For WER used jiwer
For DER used from pyannote.metrics.diarization import DiarizationErrorRate
Average WER Table

Model
Average WER

soniox
20.04%

speechmatics
20.85%

fal_whisperx
21.80%

deepgram
31.59%

Average DER Table

Rank
Model
Average DER

1
deepgram
24.07%

1
soniox
24.32%

2
fal_whisperx
27.93%

3
speechmatics
1258.00%

How was this computed

For WER, groq-whisper-large-v3, was used as baseline, as reference, and other models results where computed against this.
For DER

In english soniox is better than speechmatics, in the overall WER, sometimes by a huge difference, but overall speechmatics, was more reliable in terms of WER around multiple recording scenarios.
Considering that, we will use soniox as of right now, as we have credits, and speechmatics costs 2.5x than soniox, or 4.5x than deepgram.
Deepgram was slighty better on speaker diarization, from subjective results from users, but had issues with the pipeline computing speechmatics, thus not sure how good it is.
Still soniox cheaper, and very good.
Postprocessing:
groq+pyannote is definitely a better pipeline than fal_whisperx.
From the results, there's no benefit on using fal whisperx, even tho some results were almost as good as groq-whisper-large-v3, with something like 1% WER and DER, it's still very unreliable, at sometimes outputs 20% of the expected transcript, or outputs non-sense.
Thus postprocessing will be removed.

👋

Asked for credits to speechmatics 3 times, no response, will keep bothering, not much we can do for now.

Remaining ticket will be here: https://github.com/orgs/BasedHardware/projects/1/views/1?pane=issue&itemId=81004351


⚠ Turnos 24x7 has degraded performance

In 356ee6f, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 989 ms

Resolved: Turnos 24x7 performance has improved in a76133f.


The Google Drive Link for Pretrained Model no more works

The pre-trained models for Efficient COnformer CTC are no more accessible by Google drive link.
I personally have the models saved, but I just wanted to point it out for future reference for those who want to try the code.

Hi
If you are having troubles with downloading the checkpoints using gdown. Updating gdown with pip install --upgrade --no-cache-dir gdown should fix the problem.

The issue was solved using this solution. Thanks.


:listen does not work on jsconsole.com

Hi,
I wanted to try out jsconsole but there’s an issue on jsconsole.com, when typing :listen, nothing appears on screen, the network console show a 404 error on "http://jsconsole.com/remote/"
I have not tried this locally yet so I don’t know if it’s an error in this repo or an hosting problem

Dupe. Please search closed issue. Thanks.


Added Rate This App Dialog Prompt

Fixes: #233 .
Description:
Added a feature to automatically show a prompt to rate this app and to navigate to Google Playstore and also configured the prompt specifically for the release-app.
Currently, the Prompt shows when the app has been installed for a week AND has been launched atleast 2 times. If the user clicks "Remind me Later", the prompt will show up again only after 3 days.
The above configurations can be changed at anytime as Documented.

@sastry17 sir please review my PR.


Add support for forcing pkg-config

This workarounds the situation where MSVC compatible libraries are available from a (MSYS2 provided) CLANG64 environment, and as such can be resolved using pkg-config.
I'm however not sure if this is the right way to solve the issue...
The instructions I used for building libnfc on CLANG64 can be found here (should work for other MSYS2 envs too).

Hi! I'm happy to add this as a feature, but I would first like to ask some questions to determine if we could get away with just target filtering.

Do you have rust installed via MSYS2 or Windows?
What is the target triple you are compiling for?
Do you have any custom target configuration in your .cargo config or Cargo.toml?

I believe that target_env = "msvc" only applies if you are using the msvc compiler (aka MSBuild, Microsoft Visual C++). If you install rust via MSYS2, you should be able to use the gcc compiler instead (target = "x86_64-pc-windows-gnu"), resulting in pkg-config being used, and the feature possibly not being necessary.

Awesome! Thanks for looking into this. So my full setup may seem a bit off due to my current main project being a Flutter (app) + Rust (lib) project, combining the UI powers of Flutter with the speed of Rust and quality libraries from the Rust ecosystem.
My Rust install is a regular install using the rustup init from the Rust website. Both the host and target are set to msvc:

(^ output of rustup target list)
This is due to Flutter being only able to build Windows desktop apps using MSVC. As such I looked at building my Rust library with MSVC in order to keep them fully compatible. However when I looked at vcpkg, none the libraries I wanted to use were available (gphoto2, gexiv2, libnfc).
I then turned to MSYS2, as on CLANG64, these libraries are available. Rust is able to find them through pkg-config and MSVC loads them perfectly. One minor issue is that I have to rename (or copy) them currently for MSVC to load them:
C:\msys64\clang64\lib\libnfc.dll.a -> Not found
C:\msys64\clang64\lib\nfc.lib -> Works fine

Hi @h3x4d3c1m4l, nfc1-sys now attempts both vcpkg and pkg-config in MSVC environments as of v0.3.7.
Please test it out and let me know if it works for you 😄
Also, I'd recommend using https://github.com/alexrsagen/rs-nfc1 (https://crates.io/crates/nfc1) instead of nfc1-sys directly if you're not already doing so 😄


Support auxiliary file transfer

I am developing HEP-specific decorators cmssw_python_app and cmssw_bash_app. These require the presence of the same specific files on the remote side for every app running on the remote side. It would be nice to be able to handle this automatically in the decorator like this:
input = File('foo')

@cmssw_python_app
def bar(inputs=[input]):
    with open(inputs[0].filepath, 'r') as f:
        print(f.read())

instead of forcing the user to be responsible for it (and thus have to write the same repeated code each time), and have it pollute the inputs list:
aux_file = File('baz')
input = File('foo')

@cmssw_python_app
def foo(inputs=[aux_file, input]):
    with open(inputs[1].filepath, 'r') as f:
        print(f.read())

One way to accomplish this would be to add an auxiliary_files keyword argument to the app decorator. This list could be propagated to DataFlowKernel.submit such that file.stage_in is called for each file in the auxiliary_files list as well as each file in the inputs list. In that way we could re-use all of machinery for staging files (and future caching optimizations, etc). This could be useful in other cases where you always need the same file transferred for a given app.

Closing this, point to point staging should solve this.