chore(main): release 2.1.1

:robot: I have created a release beep boop
2.1.1 (2024-02-19)
Bug Fixes

build doc strings (d1d160f)
format doc strings (f47dc80)
format doc strings using docformatter (63616d6)
readthedocs build (9846f54)
to use pydocstringformatter (3711a29)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/Steinbeck-Lab/cheminformatics-microservice/releases/tag/v2.1.1 :sunflower:


Add Bitwise OR  Token at translator frontend

Implement the BITWISE_OR token to recognize the | operator for performing bitwise OR operations.

@Raghav-2903 will be working on this issue


[Bug]: KnowledgeGraphIndex._build_index_from_nodes() got an unexpected keyword argument 'space_name'

Bug Description
Try to create KG index via
kg_index = KnowledgeGraphIndex.from_documents(
    documents,
    storage_context=storage_context,
    max_triplets_per_chunk=10,
    space_name=space_name,
    edge_types=edge_types,
    rel_prop_names=rel_prop_names,
    tags=tags,
    include_embeddings=True,)

It reports:
KnowledgeGraphIndex._build_index_from_nodes() got an unexpected keyword argument 'space_name'.

_build_index_from_nodes() in KnowledgeGraphIndex does not take any keyword arguments except for nodes.
I think it's a similar bug with https://github.com/run-llama/llama_index/issues/14398
Version
0.10.52
Steps to Reproduce
Follow the instructions of https://docs.llamaindex.ai/en/stable/examples/query_engine/knowledge_graph_query_engine/#optionalbuild-the-knowledge-graph-with-llamaindex to build KG.
Relevant Logs/Tracbacks
Traceback (most recent call last):
  File "/data/share/users/aaron/llm/llamaindex/try_graph_rag.py", line 55, in <module>
    kg_index = KnowledgeGraphIndex.from_documents(
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/llama_index/core/indices/base.py", line 145, in from_documents
    return cls(
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/llama_index/core/indices/knowledge_graph/base.py", line 99, in __init__
    super().__init__(
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/llama_index/core/indices/base.py", line 94, in __init__
    index_struct = self.build_index_from_nodes(
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/llama_index/core/indices/base.py", line 216, in build_index_from_nodes
    return self._build_index_from_nodes(nodes, **build_kwargs)
TypeError: KnowledgeGraphIndex._build_index_from_nodes() got an unexpected keyword argument 'space_name'
Exception ignored in: <function NebulaGraphStore.__del__ at 0x7f27c1d79fc0>
Traceback (most recent call last):
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/llama_index/graph_stores/nebula/nebula_graph_store.py", line 242, in __del__
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/nebula3/gclient/net/SessionPool.py", line 326, in close
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/nebula3/gclient/net/Session.py", line 351, in _sign_out
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/nebula3/gclient/net/Connection.py", line 258, in signout
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/nebula3/graph/GraphService.py", line 1603, in signout
  File "/data/share/users/aaron/lib/spack-0.20.0/opt/spack/linux-debian9-skylake_avx512/gcc-8.2.0/python-3.10.10-4cihimz3xbhm45os3lfvczvmivfvnqmv/lib/python3.10/site-packages/nebula3/graph/GraphService.py", line 1606, in send_signout
AttributeError: 'NoneType' object has no attribute 'CALL'

Yep, same issue happening to us as well.

I think this issue goes back to the Llama_index Document at: https://docs.llamaindex.ai/en/stable/examples/query_engine/knowledge_graph_query_engine/#optional-build-the-knowledge-graph-with-llamaindex
It says (in Step 2):
`
from llama_index.core import KnowledgeGraphIndex
kg_index = KnowledgeGraphIndex.from_documents(
documents,
storage_context=storage_context,
max_triplets_per_chunk=10,
space_name=space_name,
edge_types=edge_types,
rel_prop_names=rel_prop_names,
tags=tags,
include_embeddings=True,
)
`

The class KnowledgeGraphIndex is in "PYTHON_PATH/Lib/site-packages/llama_index/core/indices/knowledge_graph/base.py"
When I checked this python file. I found that:
@deprecated.deprecated(
version="0.10.53",
reason=(
"The KnowledgeGraphIndex class has been deprecated. "
"Please use the new PropertyGraphIndex class instead. "
"If a certain graph store integration is missing in the new class, "
"please open an issue on the GitHub repository or contribute it!"
),
)
Can refer to the following article to connect to graph db:
https://docs.llamaindex.ai/en/latest/module_guides/indexing/lpg_index_guide/


BAR _ Mismatch in Filing Numbers between BI Dashboard and CPRD Production Database

A discrepancy was observed in the filing numbers displayed on the BI dashboard when compared with the CPRD production database.
For Instance, the BI dashboard shows:
For Nov 5th:
COLIN filings: 23
BCROS filings: 15
On checking CPRD,  I can see more filing completed on Nov 5th.
BCROS number is correct, I have doubt in COLIN numbers only.
Could you please investigate and resolve the discrepancy?

How many more filings and are these related to invitations sent or total filings?

Based on latest conversation on this topic, this is not a bug.


Compile pyke rules on osx py3 fails

Links to:
https://github.com/conda-forge/iris-feedstock/pull/2#issuecomment-217468453, https://github.com/conda-forge/staged-recipes/pull/280#issuecomment-206377121, https://github.com/SciTools/conda-recipes-scitools/pull/140
The message:
ImportError: No module named 'iris.fileformats._pyke_rules.compiled_krb'

My workaround so far has been to disable compile in the py build, and do it by hand with:
$PYTHON -c "import iris.fileformats.netcdf; iris.fileformats.netcdf._pyke_kb_engine()"

Fixed by https://github.com/SciTools/iris/pull/2891/files#diff-2eeaed663bd0d25b7e608891384b7298R206.


[POC]: resetting and reloading widgets

Is there an existing issue for this?

[X] I have searched the existing issues

Summary
We are planning to implement a feature that will allow users to reset the app without having to reload the entire application. To accomplish this, we need to do a proof-of-concept (PoC) to reset all the widgets and actions and reload the on-page-load actions when the reset is triggered.
The following tasks need to be performed:

Identify all the widgets and actions that need to be reset and reloaded
Create a PoC to reset and reload the identified widgets and actions.
Test the PoC thoroughly to ensure that the reset and reload functionality works as intended.

Why should this be worked on?
Once the PoC is completed and tested, it will allow users to reset the app without having to reload the entire application, providing a smoother and faster user experience for upcoming features like git and multiple env

@ChandanBalajiBP - There is one issue. The page needs to be hard reload in order to get the right data on Environment switch


change watches to relative path - ref PR 2273

Description
Replace watches path for relative one.
Ref: https://github.com/operator-framework/operator-sdk/pull/2273
/hold ( until next release SDK version 0.13 )

Ignore it. It has been used to do test.


Design transaction page

This has been designed in Figma, and I am currently working on implementing it. ETA a couple of hours.
See #15.


plurals with offsets or multi-rules?

Does angular-gettext have support for offset as seen in ngMessageFormat or ng-pluralize? Or matching rules beyond singular and plural?
Thanks!

I'm trying to figure out a similar problem.
I'm using ng-pluralize with the 0 option as seen in this code sample
<ng-pluralize
      count="vm.records.length"
      when="{ '0': 'Add inspections',
          'one': 'Add 1 inspection',
          'other': 'Add {} inspections'
      }">
</ng-pluralize>

It would be great if that case was handled, otherwise I'm going to have to setup an ng-switch to handle cases where count = 0.


Refactor BuiltinExpr to FoldExpr

FoldExpr { op: InfixOp, args: Vec<Expr>

Prevents panic when kind is not "sum" or "product"
Allows extension to fold more operations

Might also rename "builtins" to "folds"


safeMath for division overflow

I think there's an edge case: INT_MIN/-1

@ethers thanks for reporting, will investigate!

Since we are using unsigned integers for all the functions in SafeMath, that edge case is not a concern.
Solidity already throws an error when trying to divide by 0 so I don't believe that there is a need for a safe division function.

Agree safe for all uint.  Keep in mind if signed ints functions are added.  Ideally Solidity will eventually throw on over/underflows so feel free to close.


DOC-1638-Cloud-3.17.1

Replaces: https://github.com/tigera/docs/pull/829
Product Version(s):
CC 3.17.1
Issue:
Link to docs preview:
SME review:

[ ] An SME has approved this change.

DOCS review:

[x] A member of the docs team has approved this change.

Additional information:

Merge checklist:

[ ] Deploy preview inspected wherever changes were made
[ ] Build completed successfully
[ ] Test have passed

CE 3.17.1 went out with v3.25. @rene-dekker @danudey did we miss this update for CE?

LGTM, leaving final approval to Rene after his comments are addressed.

LGTM, but I'm going to reserve approving this until we are ready for the release.


Training process error

The training process encountered the following problems

bidirectional set as False.Another problem arose.

I have removed the back part of the multiplication in the image below.Can be trained but the result is wrong.

Below is the contents of my data file

I can't solve the problem yet.I hope I can get some help to sovle this problem.Thank you very much!

Can you check which one is 200d, and which one is 100d in hiddens * sent_probs? This could help clearify this issue.

Can you check which one is 200d, and which one is 100d in hiddens * sent_probs? This could help clearify this issue.

hiddens is 200d,sent_probs is 100d.

Sorry, I failed to reproducethis error. However, here's a tip that may help:
The shape of sent_prob should be batch_size * seq_len after the attention mechanism. And become batch_size * seq_len * 1 after the view operation. Therefore, I am not sure which part goes wrong. As shown in your output, 100 could be the batch_size.
Here I attach a screen shot of my runtime outputs with shapes, I hope this can help you with debugging.

What are the shapes after the view operation?

So it seems fine?
sent_probs can be regarded as the attention score of the hidden states for each log event in the log sequence. The multiplication between hidden_states and sent_probs is actually an averaged summation of hidden states so that it gives a final representation for each log sequence.

So it seems fine?
sent_probs can be regarded as the attention score of the hidden states for each log event in the log sequence. The multiplication between hidden_states and sent_probs is actually an averaged summation of hidden states so that it gives a final representation for each log sequence.

Thank you very much for your help.I'll keep looking for a solution.

Hi @superzeroT , may I ask if the issue is still unresolved? And, as mentioned in your screenshot, "此处有相应的修改“, what were those exactly?

Hi @LeonYang95 ,I haven't solved the problem yet.I tried to unify the dimensions but it didn't work.Don't worry about the note I added.Since your code is running successfully,I guess it has something to do with the environment configuration,etc.

Hi @LeonYang95 ,Can I see the shape of  your sent_probs and hiddens values.

Mine were:
hiddens: [100, 38, 200]
sent_probs: [100,38,1]
Your first two shapes seems fine. But the sequence length of the last two shapes is only 1?

Hi you guys. Have you solved this problem? I have a same error when evaluating the testing set.
I see that It throws the error in the last batch of testing set.

Hi you guy, @LeonYang95.  I have just considered that there is an error in module/Attention.py/class LinearAttention , in https://github.com/LeonYang95/PLELog/blob/c8bb56b08fe6368f3b3c71ff88de8a87c48c7607/module/Attention.py#L275
combined_tensors.squeeze(1) will remove the input dimension which has size 1. So, when the input has sequence length 1, it will be removed in dimension 1. When I remove the squeeze function, the code works completely.
Do I misunderstand anything in this situation?

Hi @dino-chiio ,
Your comment about the shape issue is correct, the squeeze will produce this error when sequence length is one. But for other situations, the code works fine. Please consider this error as an "anomaly" prediction.
The CPUEmbedding  keeps the embedding weights in CPU instead of GPU to lower the cost of GPU memory. While we were doing this research, our GPUs resources were limited. If you have more advanced GPUs, you can try training the weights along with other parameters, hopefully, you will get a considerable improvement.

I do not recommend to cancel the squeeze operation. The attention I used was learned from other projects, and I am not sure about the results after the cancellation.
I believe regarding log sequences of length one as anomalies is an acceptable solution, since it is possible that those log sequences are actual anomalies or irrelavant to the system running status.


Pass DynamicScope to modifier install hook

It turns out that having the DyntamicScope is pretty handy for real-world modifiers. This updates the interface so that the scope is passed when a modifier is installed.

If we want that we should also pass it to the update hook for parity

Updated. Passing DynamiScope along to update as well.


Build fails on Linux

When trying to build, the error pasted below is thrown.

OS: Arch Linux with Linux 6.6.8
gcc: 13.2.1 (also tried 11 and 12 using CC and CXX env vars)
node: 16.15.1 / npm 8.11.0 (set using nvm)
alsa-lib/alsa-utils 1.2.10
build command: yarn

Some includes seem to be missing e.g. for BString as well.
error /home/florian/build/MIDI2.0Workbench/node_modules/usb_midi_2: Command failed.
Exit code: 1
Command: node-gyp rebuild
Arguments:
Directory: /home/florian/build/MIDI2.0Workbench/node_modules/usb_midi_2
Output:
gyp info it worked if it ends with ok
gyp info using<EMAIL_ADDRESS>gyp info using<EMAIL_ADDRESS>| linux | x64
gyp info find Python using Python version 3.11.6 found at "/usr/bin/python3"
gyp info spawn /usr/bin/python3
gyp info spawn args [
gyp info spawn args   '/home/florian/.nvm/versions/node/v16.15.1/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args   'binding.gyp',
gyp info spawn args   '-f',
gyp info spawn args   'make',
gyp info spawn args   '-I',
gyp info spawn args   '/home/florian/build/MIDI2.0Workbench/node_modules/usb_midi_2/build/config.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/florian/.nvm/versions/node/v16.15.1/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/florian/.cache/node-gyp/16.15.1/include/node/common.gypi',
gyp info spawn args   '-Dlibrary=shared_library',
gyp info spawn args   '-Dvisibility=default',
gyp info spawn args   '-Dnode_root_dir=/home/florian/.cache/node-gyp/16.15.1',
gyp info spawn args   '-Dnode_gyp_dir=/home/florian/.nvm/versions/node/v16.15.1/lib/node_modules/npm/node_modules/node-gyp',
gyp info spawn args   '-Dnode_lib_file=/home/florian/.cache/node-gyp/16.15.1/<(target_arch)/node.lib',
gyp info spawn args   '-Dmodule_root_dir=/home/florian/build/MIDI2.0Workbench/node_modules/usb_midi_2',
gyp info spawn args   '-Dnode_engine=v8',
gyp info spawn args   '--depth=.',
gyp info spawn args   '--no-parallel',
gyp info spawn args   '--generator-output',
gyp info spawn args   'build',
gyp info spawn args   '-Goutput_dir=.'
gyp info spawn args ]
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/home/florian/build/MIDI2.0Workbench/node_modules/usb_midi_2/build'
  CXX(target) Release/obj.target/ALSA/alsabindings.o
../alsabindings.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE get_UMP_Endpoints(Nan::NAN_METHOD_ARGS_TYPE)’:
../alsabindings.cc:210:49: error: invalid conversion from ‘int’ to ‘const snd_seq_client_info_t*’ {aka ‘const _snd_seq_client_info*’} [-fpermissive]
  210 |         int card = snd_seq_client_info_get_card(client);
      |                                                 ^~~~~~
      |                                                 |
      |                                                 int
In file included from /usr/include/alsa/asoundlib.h:64,
                 from ../alsabindings.cc:4:
/usr/include/alsa/seq.h:153:63: note:   initializing argument 1 of ‘int snd_seq_client_info_get_card(const snd_seq_client_info_t*)’
  153 | int snd_seq_client_info_get_card(const snd_seq_client_info_t *info);
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
../alsabindings.cc:212:13: error: ‘BString’ was not declared in this scope
  212 |             BString hwname = BString::format("hw:%d", card);
      |             ^~~~~~~
../alsabindings.cc:214:48: error: ‘hwname’ was not declared in this scope; did you mean ‘tzname’?
  214 |             snd_ctl_open(&card_control_handle, hwname.toUTF8(), 0);
      |                                                ^~~~~~
      |                                                tzname
../alsabindings.cc:216:20: error: expected ‘;’ before ‘location’
  216 |             BString location(getLocation(card, card_info));
      |                    ^~~~~~~~~
      |                    ;
../alsabindings.cc:217:20: error: expected ‘;’ before ‘manufacturer’
  217 |             BString manufacturer(getManufacturer(location));
      |                    ^~~~~~~~~~~~~
      |                    ;
../alsabindings.cc:218:78: error: ‘manufacturer’ was not declared in this scope
  218 |             Nan::Set(port,Nan::New("manufacturer").ToLocalChecked(),Nan::New(manufacturer.toUTF8()));
      |                                                                              ^~~~~~~~~~~~
../alsabindings.cc:202:13: warning: unused variable ‘errEP’ [-Wunused-variable]
  202 |         int errEP = snd_seq_get_ump_endpoint_info(seq, client, ep);
      |             ^~~~~
../alsabindings.cc:262:14: warning: unused variable ‘err’ [-Wunused-variable]
  262 |          int err = snd_seq_connect_from(seq, localPort, client, portNum);
      |              ^~~
../alsabindings.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE sendUMP(Nan::NAN_METHOD_ARGS_TYPE)’:
../alsabindings.cc:392:9: warning: unused variable ‘senRes’ [-Wunused-variable]
  392 |     int senRes = snd_seq_ump_event_output(seq, &ev);
      |         ^~~~~~
In file included from ../../nan/nan.h:62,
                 from ../alsabindings.cc:1:
../alsabindings.cc: At global scope:
/home/florian/.cache/node-gyp/16.15.1/include/node/node.h:847:7: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
  847 |       (node::addon_register_func) (regfunc),                          \
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/florian/.cache/node-gyp/16.15.1/include/node/node.h:881:3: note: in expansion of macro ‘NODE_MODULE_X’
  881 |   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
      |   ^~~~~~~~~~~~~
../alsabindings.cc:417:1: note: in expansion of macro ‘NODE_MODULE’
  417 | NODE_MODULE(ALSA, Initialize)
      | ^~~~~~~~~~~
make: *** [ALSA.target.mk:115: Release/obj.target/ALSA/alsabindings.o] Error 1
make: Leaving directory '/home/florian/build/MIDI2.0Workbench/node_modules/usb_midi_2/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/florian/.nvm/versions/node/v16.15.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (node:events:527:28)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:291:12)
gyp ERR! System Linux 6.6.8-arch1-1
gyp ERR! command "/home/florian/.nvm/versions/node/v16.15.1/bin/node" "/home/florian/.nvm/versions/node/v16.15.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/florian/build/MIDI2.0Workbench/node_modules/usb_midi_2

Yes sorry I forgot to replace some bad code.
It is now fixed and is running :)

Perfect, thanks @starfishmod, it now builds and starts :) Would you mind adding a release tag for 1.5.5? I'd like to package this for Arch Linux. Also, does the p suffix in 1.5.5p have any meaning or are all these considered stable releases?

@cbix tag made for 1.5.5p
The 'p' signifies this is the public release. There is a MIDI Association members only release that contains experimental specifications. Is the 'p' a problem?

Thanks for the explanation, just thought it meant sth like "prerelease" saying it's unstable. Not a problem, we can easily filter that :)


another cloudkey workaround

Now this block of code is duplicated in three places :)

@milesd I see you've left this in draft for a while - if you think this would be a valuable addition to the package, feel free to mark it as non-draft and we can get the ball rolling on landing it (and potentially looking at how we can refactor the logic around version selection).

I got sucked away at work and had to circle back, but now that I'm about to try out UniFi Network Application 8.0.2 I'll have another chance to run into problems and update.

Thank you, let me get this merged and a new release out so that you can test directly there.


Handling of environment issues in test case execution

In EiffelTestCaseFinishedEvent there are fields for verdict, conclusion and description.
It is not an uncommon situation that test case execution fails due to some random environment error. For scenarios where this is a "common" thing, the need for classification and statics shows up.
How/where to represent that a test case (or test suite possibly) had an error due to an environment fault of some specific type (if that can be determined), in a machine readable format?

Isn't the documentation rather clear on this, or am I missing something?
From https://github.com/Ericsson/eiffel/blob/master/eiffel-vocabulary/EiffelTestCaseFinishedEvent.md, if you are unable to execute the test case due to a problem in the environment, use data.outcome.conclusion FAILED.

Yes, that is clear. But how to communicate why it failed?
For the test case execution this is of no relevance, it simply failed. From a continuous improvement perspective this is important information: do we have some recurring types of issues?

Ok, I see. So what we're looking for is some enumeration of reasons for inability to execute a test case? If there's some standard, let's use it. I wouldn't want to try to specify anything like that myself... :)

This has been up for discussion before, by the way. The fundamental problem is that the scope of such an array would essentially be "Everything that could possibly go wrong when executing software in any context", and I don't see how that can be captured in a reasonable way. Either you end up with something so abstract so as to be meaningless, or something way too detailed. Which is why there's the data.outcome.description property, so if you as a user define your own error codes that make sense to you, you can put them there.

Any way forward on this? Close or keep?


How to implement Java template as an interface parameter using JPype jproxy in Python

I want to implement Java Template in Python using JPype.
Template is part of a interface which i am implementing it through JProxy but it does not work if parameter is java template of Generics.
Java Code:
public interface GetResultCallback<T> {

    void onSuccess(T result);

    void onFailure(TestError error);

}

Python Jpype code:
class Get_Callback:

    def onSuccess(self, result) :
        print("I am in success")
        print (result)
        Get_Callback.setResult(result)

    def onFailure(self, err) :
        print("Error")
        print (err)

While running this i get error thatOnSuccess method is not implemented as it expects method with template.
Any idea how to implement Java Template/Generics using JProxy of Jpype?

It works for me if I put the proper decorators.   Template arguments are type "java.lang.Object" for the purposes of Python.
@jpype.JImplements(Test2)
class MyTest(object):
    @jpype.JOverride
    def onSuccess(self, result):
        pass
    @jpype.JOverride
    def onFailure(self, result):
        pass


HiDPI: Physical size from xrandr may be unreliable (can be 0mm x 0mm)

I ran into this issue when trying to run Alacritty, which uses winit, on my GPD Pocket with ArchLinux running GNOME 3.28.2 on Xorg. When starting the program, winit will report the following error:
[winit X11 error] XError {
    description: "BadValue (integer parameter out of range for operation)",
    error_code: 2,
    request_code: 12,
    minor_code: 0
}

Further investigation showed that XConnection::get_output_info returned inf for the HiDPI factor. Reading the source code I realized that the value is calculated from the resolution and the physical size of the screen, which are all fetched from xrandr. Trying to run xrandr directly to see what's happening, and I ended up with
Screen 0: minimum 320 x 200, current 2496 x 1560, maximum 8192 x 8192
DSI-1 connected primary 2496x1560+0+0 right (normal left inverted right x axis y axis) 0mm x 0mm
   1200x1920     60.38*+
   1920x1200     59.88    59.95
   1920x1080     60.01    59.97    59.96    59.93
   1600x1200     60.00
   1680x1050     59.95    59.88
   1400x1050     59.98
   1600x900      59.99    59.94    59.95    59.82
   1280x1024     60.02
   1400x900      59.96    59.88
   1280x960      60.00
   1440x810      60.00    59.97
   1368x768      59.88    59.85
   1280x800      59.99    59.97    59.81    59.91
   1280x720      60.00    59.99    59.86    59.74
   1024x768      60.04    60.00
   960x720       60.00
   928x696       60.05
   896x672       60.01
   1024x576      59.95    59.96    59.90    59.82
   960x600       59.93    60.00
   960x540       59.96    59.99    59.63    59.82
   800x600       60.00    60.32    56.25
   840x525       60.01    59.88
   864x486       59.92    59.57
   700x525       59.98
   800x450       59.95    59.82
   640x512       60.02
   700x450       59.96    59.88
   640x480       60.00    59.94
   720x405       59.51    58.99
   684x384       59.88    59.85
   640x400       59.88    59.98
   640x360       59.86    59.83    59.84    59.32
   512x384       60.00
   512x288       60.00    59.92
   480x270       59.63    59.82
   400x300       60.32    56.34
   432x243       59.92    59.57
   320x240       60.05
   360x202       59.51    59.13
   320x180       59.84    59.32

Note that the physical size reported by xrandr is absurd, since it is shown as 0mm x 0mm. However, using xdpyinfo I got the normal physical size reported without problem:
screen #0:
  dimensions:    2496x1560 pixels (207x130 millimeters)
  resolution:    306x305 dots per inch
  depths (7):    24, 1, 4, 8, 15, 16, 32
  root window id:    0x16f
  depth of root window:    24 planes

I believe this should be some issue with xrandr, however I have saw some other cases with similar problems without a fix:
https://bbs.archlinux.org/viewtopic.php?id=232288
http://xpra.org/trac/ticket/728
I also confirmed this problem with @farseerfc who also owns the same computer as mine.
Since all the other programs on my system work just fine (including the ones using GTK3, QT5, Java Swing, which all support HiDPI), I am wondering if it is possible for winit to fallback to some other mechanism to determine hidpi factor or simply set it to 1 if the physical screen size cannot be detected. Although this should be a problem of somewhere else, I think we can at least get winit to run on these strange devices...

Great job investigating this, but unfortunately you're one day too late: jwilm/alacritty#1341
It's interesting that xdpyinfo works, since that really does seem to suggest that there's a bug with RandR. xdpyinfo uses DisplayWidthMM, but we can't use that for anyone with multiple monitors, where the measurements will be the combined value of all monitors (since that's how multi-monitor is implemented using XRandR; it conjoins multiple monitors into one big core protocol screen).
number of screens:    1

screen #0:
  dimensions:    8320x1440 pixels (2191x379 millimeters)

Though, we could use this as an additional fallback for anyone with only one active output.

@francesca64 What about adding the ability to override the scale factor from some environment variable? I later realized that my GTK+ and QT programs work fine only because they read the scale factor from env variables that I have written to /etc/profile.

That sounds like a good idea. Which specific env vars?

@francesca64 AFAIK every toolkit have their own.. such as GTK's GDK_SCALE or QT's 'QT_SCALE_FACTOR. Maybe we could have something like WINIT_SCALE_FACTOR? I'm not sure if it is a good idea for winit` to do such things or just leave this for the application developers.

I've opened a PR to "fix" this by returning 1.0 when either width or height are 0. Adding an environment variable should be simple so I can add that to the PR if a consensus about it has been found. (PR: #544)

I think having a WINIT_SCALE_FACTOR might be a good idea, however one of the issues with having environmental variables for that kind of stuff is that it's hard to even know they exist. So they probably should be documented properly.

I would suggest that hidpi_factor return Option<f32>, but this is a break change.

With an Option or Result it would be possible for the application itself to actually do something about it. Just swallowing an error definitely doesn't seem perfect but introducing an API breakage and "forcing" consumers of the API to handle an option/error when 99% of the time they'd probably just go with using 1.0 as the DPI isn't optimal either. However calling hidpi_factor probably isn't a super common thing in an application, so handling that with an unwrap_or wouldn't introduce much additional complexity.

Option<f32> isn't viable. With the upcoming DPI-aware winit, the DPI factor is used internally in myriad places, and methods deal in logical pixels (which on X11 and Windows, have to be converted within winit), so having applications and winit doing math using two different DPI factors would be bad news.
Additionally, the DPI factor should be specified per-monitor, not per-window.
Considering that along with the following:

Getting the DPI factor can't fail on any of the other platforms
The issue seems to be the result of an XRandR bug (or incorrect EDID information), and is hopefully rare
We can try to fall back to DisplayWidthMM in the case of only having one monitor, which is probably most people
Most application developers are unlikely to do anything other than default to 1.0, or even know what a good solution would be

While I'm not ultimately opposed to allowing consumers to override DPI factors, correctly doing that would require some engineering, and it would likely only be desirable to support it on X11 (X11 doesn't really have a native concept of logical pixels, so it's easy to do whatever we want; taking the same approach on macOS would be quite a mess).

Then I would suggest just to allow overriding from WINIT_SCALE_FACTOR, since the other toolkits are already doing this and seem to be totally fine

I'd be fine with WINIT_HIDPI_FACTOR if that's most in line with winit's naming scheme, should we just go for that and be done with it?

Sounds good to me. I'm guessing you don't want to add the DisplayWidthMM fallback yourself?

I can try.

Well, I wouldn't want to burden you. It would only take me 5 minutes to do myself. Though, the only hard thing is knowing that you need to get the screen number from XDefaultScreen.

Which platforms should support the WINIT_HIDPI_FACTOR variable? I could implement it for every platform but android/emscripten/ios/windows seem to just always return 1.0 as DPI.

Don't worry about things currently returning 1.0, since I've already got a branch that fixes that (not on Android yet though; I'm still looking into that). However, for now I'd prefer we just stick to X11. macOS and Windows would require additional math and complexity with resizing (on X11, you only need to override the value stored in MonitorId, and everything will work). For mobile and web, I doubt overriding the DPI factor is a good idea; X11 is the only platform where the system-supplied DPI factor is merely a suggestion.
Though, I'm not sure about the situation with Wayland. You can ask @vberger about that (and more generally about the okay-ness of this design).

I'd welcome any comments on this @vberger, I'm probably just going to introduce these changes for X11 first. So that should be good until any other platform wants to hook into the env variable.

@francesca64 where would be the best place to document the env variable? I've added it to the changelog but it seems like this should probably be at least put into the documentation too. I can add it to winit::MonitorId::get_hidpi_factor and winit::Window::hidpi_factor but I'm not sure if these two places are ideal.

Those are basically the only places we have where you could put it, though if I'm not lazy I'll make some sort of DPI guide soon (no promises though!).
Just be sure to use the ## Platform-specific sub-header. It's tragically underused.

TIL that thing exists. I'll probably clean this up properly and add some documentation tomorrow. I might even get to adding the DisplayWidthMM/DisplayHeightMM stuff too. Thanks for the guidance!

Hmm, while I understand the need of WINIT_HIDPI_FACTOR for x11 (which has an... approximate hidpi support), I'm not sure if it would make sense for this variable to have any effect on Wayland.
Hidpi support on Wayland works this way :

the server tells the client about the scale factor of each monitor
the server tells the client which monitor(s) the window is currently being drawn on
the client draws its contents with whatever scale factor it wants and notifies the server of it (note that wayland scale factors are always integers)
if the scale factor chosen by the client does not match that of the monitor, the compositor rescales accordingly.

As a result, a client can only look too small or too big if it does not actually draws with the scale factor it told the server it would...
My PR for hidpi support in wayland simply chooses as drawing scale factor the max of the scale factors of the monitors it is being displayed on, ensuring the server may need to downsample the contents, but never upsample.
In this context, I'm not sure what overriding the scale factor with an env variable would be useful for. So maybe this variable should be just ignored when using the wayland backend?

Sounds very reasonable to me. Would make sense then to just introduce it for X11, if anyone else is interested in the env variable it should be simple to add it at a later point too.


Index out of bounds exception

I am getting this error
thread 'main' panicked at 'index out of bounds: the len is 74 but the index is 74', /home/jmccrae/.cargo/registry/src/github.com-1ecc6299db9ec823/liblbfgs-0.1.0/src/lbfgs.rs:538:27

It seems like the vector length is being calculated incorrectly?

How can I reproduce it? Can you provide a test?

See reproduction here: https://gist.github.com/jmccrae/167dd909cc32047f74237c3af7cc20b1
Sorry it is a bit long, the error was occurring randomly so I just found a failure and copied the code into a single file.
The original project is https://github.com/lod-cloud/lod-cloud-draw

Thank you for your feedback!
For your case, the end parameter was too large. I have commited a few changes to make sure these parameters are sound and
correct.
I am not sure if you really need enable OWL-QN algorithm. If not, please comment the ".with_orthantwise" line (line 429). I found, when OWL-QN algorithm disabled, your test passed without error.

Thanks for the speedy fix.
I have been having some issues with the LBFGS implementation in that the line search keeps failing. This may be my code though so I will investigate further and create further issues when I understand the problem.


Flag to change size of egress gateway policy map

We should have an agent flag to change the default size of the egress gateway's policy map, similar to other such flags. This will be needed for users who run out of space in the map (currently sized to 16384).
Initially reported in https://github.com/cilium/cilium/issues/22805.

Hi @pchaigno , I'm new to cilium, can I have this ?

@cyclinder Of course, feel free to submit a pull request. If you need any help, you can ask here or in the Slack #development channel.

Are there any significant performance or memory limits to the size of this map? If we were to set it to 1000x the default value, would that be reasonable?

For the performance it's hard to say. I would expect performance to depend on the number of entries actually in the map, not its maximum size. It's an LPM map so you can check theoretical lookup and update times for that algorithm.
Regarding memory, the map has a key of size 12B and a value of size 8B. I would expect memory consumption to grow approximately linearly with the number of entries. So for a map of 16384000 entries, you'd have an in-kernel memory consumption of at least 312MiB. Note there's a hard limit on how much memory you can allocated for BPF maps in the kernel, so you wouldn't be able to grow the map to huge sizes (e.g., x100000 is probably not possible).


Deploy autotuned network as bundle on ARM fails

I created a simple MNIST test case to evaluate the performance of different DL Compilers on an Raspberry Pi 4. I was able to build a standalone bundle by modifying the bundle example at /apps/bundle.
But this fails, if I generated the model.o, params.bin and graph.json with autoTVM.
The binary still gets created, but fails when I try to run it on the device
The error message is (6 different versions):
function handle for fused_... not found

transpose_multiply_round_clip_cast_layout_transform
nn_contrib_conv2d_NCHWc_add_right_shift_clip_cast_1
cast_multiply_add_nn_relu_1
nn_contrib_conv2d_NCHWc_add_right_shift_clip_cast
nn_max_pool2d_multiply_round_clip_cast
cast_multiply_add_nn_relu

I guess, these functions have been created by the autontuning step, but somehow do not end up in the executable. How can I add them?

Thanks for reporting the problem, the community uses https://discuss.tvm.ai/ for related trouble shooting questions, please open a new thread there and provide a few mode steps.
Please also consider to look at https://github.com/apache/incubator-tvm/tree/master/apps/benchmark for benchmarking

https://discuss.tvm.ai/t/autotvm-or-quantization-for-raspberry-pi-fails/7319
I created a topic there to afterwards, as I am not sure if its a bug or just a user error


How to limit the number of items a shop want to buy?

Not sure i can set limit, because with no limit, players can spam selling to my shop and empty my wallet.

You can put cobblestone, dirt or other cheap item as a placeholder in your chest, limiting the amount of items they can sell.


Error in config file when there is no config file

Hi guys,
First of all, I very much appreciate your efforts on luacheck!
I have just updated to release 1.0.0 and now when I run luacheck it complains with the message:
"Critical error: in config loaded from .luacheckrc: invalid options for path '**/config.ld': invalid value of option 'std': unknown std 'ldoc'"
This happens to whatever file I try to check.
Regards,
Tomás

How did you install Luacheck? It sounds like you're using a distribution that somehow doesn't have the new files packaged.

I used LuaRocks.  What differs from standard is that I install all rocks in a particular tree (not /usr/local/ nor ~/.luarocks)  Does it make any difference?

No the target tree shouldn't make a difference when installing directly with luarocks.

I can't replicate this anywhere.
What does your project's .luacheckrc look like?

I don't have a .luacheckrc

Is it possible that your system has two luacheck installations, one in your private tree (wherever that is) and one in a more common location like the system or default user install locations — and that when you run Luacheck you are invoking one but your path is messed up and it is finding supporting files from the other installation and hence mixing and matching sources?

I removed all previous versions of luacheck (all of them were installed via LuaRocks) and now it is running ok.  Thanks!


[cloud-watch] Refuse to run with --delete but without --ci-delete-older-than

Otherwise the command may delete all the CI clusters ...
/cc @kpouget

merging, still not finalized


nvm not loaded

I work with nvm to load node and npm.
to use these binaries in the post-deploy hook (with the nvm user of course), the PATH seemed not to be set.
command not found: npm

a quick fix was for me to add the bin dir to the PATH, as:
 "post-deploy" : "export PATH=$PATH:/home/raf/.nvm/v0.10.34/bin/ && npm rebuild && pm2 startOrRestart ecosystem.json --env dev",
      env  : {
        NODE_ENV: "dev"
      }

This worked, but I doubt this is the recommended way. Anyone a suggestion how this fix can be avoided?

Guys, I have same issue but with zsh.
I've moved .nvm init lines to the top of .zshrc but this doesn't help.
Is there anything I can do not switching to bash? Thank you!

@josser facing the same issue. Any solution ?

@vinaynb Oh, I'm just checked my ecosystem.json and I see that I'm able to use npm in post-deploy hooks but I'm totally can't remember what I've done to fix this.

What if I didn't have next files in ~:
.bash_profile
.profile
.bashrc
And still pm2 deploy cant see nor nvm, nor pm2, nor node on server...
There is no nvm on system (I cant test it with nvm for now. This is production server, so I don't want to make any downtime by reinstalling node/npm/pm2 with HomeBrew or anything else. Just want a workaround for this situation)
OS: Mac 10.12.2
node -v
v5.6.0

npm -v
3.6.0

which npm
/usr/local/bin/npm

which pm2
/usr/local/bin/pm2

echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

PM2 deploy log (partly):
○ executing post-deploy `npm install`
bash: npm: command not found

○ executing post-deploy `/usr/local/bin/npm install`
env: node: No such file or directory

I also tried to export npm in $PATH in post-deploy or .bash_profile / .bashrc but with no success
What I need to do to fix this issue ?

@josser @vinaynb @Unitech
I exec command below:
pm2 deploy staging exec "echo $NVM_DIR"
--> Deploying to staging environment
--> on host <IP_ADDRESS>
/Users/art/.nvm
--> Success

it is the local value not but server value of $NVM_DIR, see that, if I use ssh login server side and exec "echo $NVM_DIR"
➜  ~ echo $NVM_DIR
/root/.nvm

so if any solution ?


Features desperately needed: Dark theme, and automatic scrolling

Nearly all online markdown editors have these.

Duplicate of #117 and #24.
Dark theme do you mean for the editor or the slides? If the slides, duplicate of #115, #5 and #1

Dark theme for the entire app, but primarily the editor window and the markdown view.

@yhatt any update?

We've splited out issues to focus one topic per issue. Refer to #245 about dark theme.
As he already pointed out above, the other topics are duplicated issues.

OK!


How to un-pair a fleet key?

Fleet keys are paired with vehicles via the app, after the user goes to a domain like tesla.com/_ak/example.com https://developer.tesla.com/docs/fleet-api/endpoints/vehicle-commands#key-pairing
Looking in Tesla settings within the vehicle, control -> locks, but I don't see any third party virtual keys listed here, but the vehicle is connecting and streaming telemetry data to the server. Maybe I'm not seeing it, does it look exactly like a key fob? Does it say the domain of the key on it?
Looking in the iOS app, don't see anything under control -> locks.
I looked in account settings on the web, I see a way to configure scopes for oauth but not to unpair a vehicle from the fleet key. Does revoking the third party's access via oauth unpair associated fleet keys?

Revoking and re-adding via oauth does not seem to remove the fleet key from the vehicle

Hi @sjmiller609 I wonder if perhaps what threw me is your problem, the list of keys can scroll but no indication it can...
Here is what a Bluetooth and Fleet keys looks like:

Speaking from experience, the only way to remove a vitual key is from inside the vehicle with a keycard.


Update README.md

Describe what the PR does:
Updated docker variables to reflect (https://github.com/bachya/ecowitt2mqtt/pull/80)
Does this fix a specific issue?
Checklist:

[x] Update README.md with any new documentation.
[ ] Add yourself to AUTHORS.md.

@bachya No thank you! :)


feat: AirbyteControlSyncWorkflowCorrectionMessage

Links:

Change Proposal
Slack Channel: #proj-handle-source-enforced-full-reset

We propose creating a new control message AirbyteControlSyncWorkflowCorrectionMessage that is sent by Database Source Connectors when incremental data updates (deltas) cannot be processed successfully, and the source connector initiates a full refresh of the dataset from the datastore. When partial updates are unreliable, a full refresh ensures data consistency. The control message is named by design to be more reflective of any sync data problems that source runs into in future.  This scenario can occur when a CDC replicating sync has waited longer than the WAL retention period between syncs.
The purpose of this control message is to notify the Airbyte stack that any data preceding this message for the specified stream may be inaccurate or incomplete. This message serves as an indicator to implement necessary measures for data integrity (e.g. "do a full refresh").

Old


SubscribeTrades now gives only *bitfinex.Trades back

there is no distinction between a tradeexecution and a tradeexecutionupdate.
resulting in redundant messages for one trade.
I guess the lastest commits broke something?

2018/02/01 16:29:13 Price: 1.001, Amount: 60.000
2018/02/01 16:29:13 Price: 1.001, Amount: 60.000
2018/02/01 16:29:17 Price: 1.000, Amount: -1000.000
2018/02/01 16:29:17 Price: 1.000, Amount: -1000.000
2018/02/01 16:29:21 Price: 1.001, Amount: 10.000
2018/02/01 16:29:21 Price: 1.001, Amount: 90.000
2018/02/01 16:29:21 Price: 1.001, Amount: 90.000
2018/02/01 16:29:21 Price: 1.001, Amount: 10.000

code:
c := websocket.NewClient()

	err := c.Connect()
	if err != nil {
		log.Fatal("Error connecting to web socket : ", err)
	}
	c.SetReadTimeout(time.Second * 10)

	ctx, cxl1 := context.WithTimeout(context.Background(), time.Second*1)
	defer cxl1()
	_, err = c.SubscribeTrades(ctx, bitfinex.TradingPrefix+bitfinex.XRPUSD)
	if err != nil {
		log.Fatal(err)
	}

	prices := make(map[float64]int)

	for obj := range c.Listen() {
		switch obj.(type) {
		case error:
			log.Printf("channel closed: %s", obj)
			break
		case *bitfinex.Trade:
			lol, _ := obj.(*bitfinex.Trade)
			log.Printf("Price: %.3f, Amount: %.3f", lol.Price, lol.Amount)
		default:
			logrus.Info(reflect.TypeOf(obj))
		}
	}

obj is always a *bitfinex.Trade

tu and te types arrive both on the public and authenticated feed. the public trade feed publishes redundant information in the te and tu message types.  here's some public feed data from tBTCUSD today:

2018/04/05 13:39:45 [662,"te",[222697485,1522953585575,0.30987198,6715.92666549]]
2018/04/05 13:39:45 [662,"te",[222697483,1522953585573,0.17,6715.9]]
2018/04/05 13:39:45 [662,"tu",[222697485,1522953585575,0.30987198,6715.92666549]]
2018/04/05 13:39:45 [662,"tu",[222697483,1522953585573,0.17,6715.9]]

for public feed data, these two messages are identical.  the public feed will build these as Trade objects rather than TradeExecution and TradeExecutionUpdate objects, because other te and tu object types received from the authenticated feed are different:

2018/04/05 13:45:23 [0,"te",[24169445,"tBTCUSD",1522953922845,1149697913,-0.958,1640.3,null,null,-1]]
2018/04/05 13:45:23 [0,"te",[24169446,"tBTCUSD",1522953922849,1149697913,-0.042,1639.8,null,null,-1]]
2018/04/05 13:45:24 [0,"tu",[24169446,"tBTCUSD",1522953922849,1149697913,-0.042,1639.8,"EXCHANGE MARKET",1640.3,-1,-0.1377432,"USD"]]
2018/04/05 13:45:24 [0,"tu",[24169445,"tBTCUSD",1522953922845,1149697913,-0.958,1640.3,"EXCHANGE MARKET",1640.3,-1,-3.1428148,"USD"]]

notice the distinction between message structures for the same message type.  if you have an idea on how to better handle this distinction, I am open to reviewing proposed changes. Hope this helps


WIP: crc-bootstrap-staging-ironic

Swtich the scenario to scenarios/centos-9/ironic.yml Update hooks/playbooks/control_plane_ironic.yml to include kustomization patches to configure ironic and Nova Cell with computeDriver: ironic.IronicDriver

recheck


jhack tail doesn't like subordinates

Afaict jhack tail parsing of juju status chokes on subordinates.
When running jhack tail against a model full of machine charms (OpenStack) I'm getting this traceback
Traceback (most recent call last):
  File "/home/peter/src/juju/jhack/jhack/main.py", line 108, in <module>
    main()
  File "/home/peter/src/juju/jhack/jhack/main.py", line 104, in main
    app()
  File "/home/peter/venv/devtools/lib/python3.10/site-packages/typer/main.py", line 214, in __call__
    return get_command(self)(*args, **kwargs)
  File "/home/peter/venv/devtools/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/peter/venv/devtools/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/peter/venv/devtools/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/peter/venv/devtools/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/peter/venv/devtools/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/peter/venv/devtools/lib/python3.10/site-packages/typer/main.py", line 500, in wrapper
    return callback(**use_params)  # type: ignore
  File "/home/peter/src/juju/jhack/jhack/utils/tail_charms.py", line 964, in tail_events
    return _tail_events(
  File "/home/peter/src/juju/jhack/jhack/utils/tail_charms.py", line 1013, in _tail_events
    targets = parse_targets(targets)
  File "/home/peter/src/juju/jhack/jhack/utils/tail_charms.py", line 87, in parse_targets
    return get_all_units()
  File "/home/peter/src/juju/jhack/jhack/utils/tail_charms.py", line 80, in get_all_units
    target = Target.from_name(first_part)
  File "/home/peter/src/juju/jhack/jhack/utils/tail_charms.py", line 48, in from_name
    app, unit_ = name.split("/")
ValueError: not enough values to unpack (expected 2, got 1)

Thanks for reporting @sabaini!
To help me repro (and to add to the itests), could you dump the juju debug-log --replay to a file and attach it here?

Sure -- here you go:
juju-log-replay.txt.gz

Humm, there are several odd things about that log trace.
Firstly, I can only see 'update-status', secondly the log formatting is not one I'm familiar with.
I see the uniter event log line goes: "(via explicit, bespoke hook script)", which I've never seen before. That is not a format that jhack tail supports ATM, so even if it didn't crash there, I doubt it would pick any logs up.
Did you set model-config logging-config="<root>=WARNING;unit=DEBUG"?  (you should)
I managed to reproduce the issue deploying ceilometer + prometheus-node-exporter as a subordinate, there is indeed an issue there. Troubleshooting...

Fixed it! It was indeed an issue with parsing the status when it included subordinate charms.

Indeed it does, thank you!


KeyboardAvoidingView doesn't work when behavior is padding on ios

Environment
npm: 6.1.0 - /usr/local/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    SDKs:
      iOS SDK:
        Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
    IDEs:
      Android Studio: 3.2 AI-181.55<IP_ADDRESS>56338
      Xcode: 10.1/10B61 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.6.0-alpha.8af6728 => 16.6.0-alpha.8af6728
      react-native: 0.57.3 => 0.57.3
    npmGlobalPackages:
      create-react-native-app: 1.0.0
      react-native-cli: 2.0.1
      react-native-git-upgrade: 0.2.7

Description
when behavior="padding"

when behavior="position"

Reproducible Demo
export default class Test extends Component {
    render() {
        const { navigation } = this.props
        return (
            <SafeAreaView style={CommonStyles.container}>
                <KeyboardAvoidingView style={styles.keyborderView} behavior="padding">
                    <View style={styles.topView}></View>
                    <TextInput style={styles.input} />
                </KeyboardAvoidingView>
           </SafeAreaView>
        )
    }
}

const styles = StyleSheet.create({
    input: {
        width: 300,
        height: 40,
        borderWidth: 1,
        borderColor: 'red'
    },
    topView: {
        height: 300,
    },
    keyborderView: {
        flex: 1
    }
})

@react-native-bot It's right there!

I think you're using the wrong style for behavior="padding". You can take a look into KeyboardAvoidingView.js to see how it's implemented, but if I recall correctly behavior="padding" basically works by varying the bottom padding. I think your style is implemented to layout from the top, which is why varying the bottom padding has no effect.

@Ashoat Thanks! I will take a look. But In this demo, I didn't see any difference. react-native-keyboard-avoidance-examples

I wanted a super simple way for this to work, and finally found one thanks to this comment on stackoverflow
react-native-keyboard-aware-scroll-view
works exactly as I wanted for my multi-input screen, view only adjusts enough to match the currently selected input box


Adding Support for OperatorMono Font

Hi,
First of all excellent theme and color schemes for Sublime Text. I have been using it for more than a year and very happy with it.
Recently I was playing with Operator Mono font and I had to add the following snippet to the color scheme to make it work as per the attached screenshot.
		<!-- Operator Tweaks -->
		<dict>
			<key>name</key>
			<string>Italic HTML attribute names</string>
			<key>scope</key>
			<string>entity.other.attribute-name.html,punctuation.section.embedded.begin.php,punctuation.section.embedded.end.php,entity.other.attribute-name.class.html,entity.other.attribute-name.id.html</string>
			<key>settings</key>
			<dict>
				<key>fontStyle</key>
				<string>italic</string>
			</dict>
		</dict>

I was hoping you can perhaps integrate it in a better way and add italics version of your color scheme.

Hello @swashata,
Please forgive my long silence. This theme will be deprecated in the near future. Now, you can try my new theme. Almost all your italic suggestions are already there.
All the Boxy color schemes will be available soon in the other package.

The new theme is just "AWESOME". I am going to be one of the first to purchase.
One request, if you could have the tomorrow color scheme. I am just so used to it.

One request, if you could have the tomorrow color scheme. I am just so used to it.

Ok, DA CS is finally ready. Currently you can install it manually, however it will be available soon on Package Control.
Boxy Tomorrow was significantly inspired by Tomorrow Dark, so now you can use it :wink:


feat: get multiple contracts method in contract cache

What I did
Ability to fetch multiple contract types in parallel
How I did it
ThreadPoolExecutor and adding a method to the chain.contracts
How to verify it
tests
Checklist

[ ] All changes are completed
[ ] New test cases have been added
[ ] Documentation has been updated

@fubuloubu Would like to know what you are thinking on this, as it will help me make other decisions!


Question: is there any way to ignore associations on Query?

What version of Go are you using (go version)?
1.10
Which database and its version are you using?
PgSQL
I have defined model with Many Relations but I only want to return the Model with "some" associations that I specified with db.Preload() while Querying.
Right now It returns ALL the Associations with 0 values. Which translates into bloated JSON.

@munirehmad - if you're using JSON encoding tags in your models, you should be able to specify the "omitempty" JSON tag to drop them from JSON object.

@tsal I tried but it doesn't omit models that I didn't Preload.
For example: If a model has a belongs to relation and ID identifying the parent model but i don't preload and add json:",omitempty" it still gets into JSON with all 0 values including ID.

i have same quetion

If you don't care if the data is present or not, you can use the special - name tag:
type PersonModel struct {
  SomeAssociation []SomeModel `json:"-"`
}

this should remove it from the generated JSON object.


Regression in logs of commands which don't output newlines

If you have a long running command that doesn't output a new line, nothing gets output in the build log until the command ends:
steps:
   - command: |
       while true; do
         sleep 0.1
         printf "."
       done

$ buildkite-agent --version
buildkite-agent version 3.8.4, build 2783

It appears you can't sed/tr/awk your way around the problem either:
https://gist.github.com/toolmantim/f4801f3ed2321b156105ff5e97fdbfbb
I believe we used to do some type of flushing, so I did a binary search of tests from buildkite/agent:2 to the current release, and it appears to have regressed in v3.6.0 as v3.5.4 worked AOK:

Thanks for raising this, I also tried the tr workaround on my build to no avail.

Good find! I’ll get this solved immediately.

Ok, I tracked this down. Previously we didn't buffer lines UNLESS you had the --timestamp-lines setting set. After 3.6.0 we buffer lines regardless.
I could put it back like it was, but it would be nice to do something better.

Are you thinking of trying to get both non-line-buffered output and line timestamping working?

Yeah, possibly. In the short term I might just fix the regression.


${when}, support for RawValue on Inner and Else (backport)

Backport of https://github.com/NLog/NLog/pull/3373 to 4.6.4
fixes https://github.com/NLog/NLog/issues/3380

Codecov Report

Merging #3394 into release/4.6.4 will increase coverage by <1%.
The diff coverage is 78%.

@@              Coverage Diff               @@
##           release/4.6.4   #3394    +/-   ##
==============================================
+ Coverage             80%     80%   +<1%
==============================================
  Files                357     357
  Lines              28247   28312    +65
  Branches            3758    3768    +10
==============================================
+ Hits               22616   22678    +62
+ Misses              4541    4528    -13
- Partials            1090    1106    +16


Added the MAC in "moment"

Perfect! Simple and direct change.
PS: Considering that the master was updated since this Pull Request was open, we need to rebase this branch on the new master. I will do that today because I want to merge it now, but for the next ones I will leave it to you.

And please @samurb add a photo and name to your GitKraken profile so it appears on the commit.


Exclude failed and succeeded pods

Issue #, if available:
https://github.com/awslabs/eks-node-viewer/issues/40
Description of changes:
Exclude to add pods which are already completed or which failed.
Keep them in total pod count, but added also the count of succeeded and failed pods to summary
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

I think this is working now, but feel free to re-open an issue or resolve the PR conflicts if not.


Make action check + synthetic check function together Or better RE

[ ] Make action check + synthetic check function together, prevent more unneccessary conversation and hellucination

[ ] Develop a better regular expression system that is less prone to error

Write a function for RA such that:

Need to make sure that this better RA satisfy many conditions (i.e. when model give just " or just }) and have a default setup for when RA is not met (we remove the json check completely)

The agent format should be hard coded (i.e. Agent[0.5, 0.5]) then remove agents that doesn't do an action to minimize the place for error (all we need from the model is the action they said).

Write it in a way that it is scalable.

Json checker causes a lot of issues. Once the agent enters a json check, it is stuck in it, json check problematic

This is the most important step currently, then later we can start running, the system has the ability, but just the syntheic check is very anoying

Develop a better regular expression system that is less prone to error

Seems like after adding history, there is weird synthetic check issue, may be caused by history disturbing the agent

Must have execute after each time running or else the system may pick up something that actually belongs to the rpompt

Regular expression response flow:

Check for curly brackets in raw response
Extract the last set of curly brackets as final actions from raw response
Use regular expression to extract agent+action information, then put the information back in JSON format
The response is then passed into syntactic check function.

Syntactic check always failed at second round => we might need to look at how we incorporate dialogue history into prompt.


codeentry and codeentryname is a bad code smell

Currently the way we turn a type into a name is clunky with a lot of code repetition. Have a more formal way to assign names.

fixed in 66076361b3e12359e6de6bbf27e4eb2b82a2b820 and 27fda6003700ca4f369d28292641fcfd4f8f7347


NALU Count Maximum Exceeded

Which version are you using?
v1.9.0
Which operating system are you using?
Linux amd64 Docker
Describe how to replicate the issue
We are trying to use MediaMTX to proxy a stream from a FLIR M400 camera.  MediaMTX returns the following in the logs 2024/11/06 22:47:09 WAR [path urnuuidUpnpIRCamera1_0858fba00d3a011dda00100407F4442BA] NALU count exceeds maximum allowed (25) .
The camera is configured as H.264 I have tried lowering the resolution from 1080P to 720P and reducing the bitrate to 2M.  I can record from the camera stream using FFMPEG and view the stream with VLC without issue.
What else contributes to the NALU count?
Server logs
No response
Network dump
No response

Hello, please provide a network dump that contains the moment in which the server is started, it connects to the camera and the error is generated.

What else contributes to the NALU count?

In some cases, the encoding process is splitted among threads, and each thread produces a NALU, each covering some vertical lines of the frame.

@aler9 I will work on getting you the network dump.  In the meantime we are only trying to proxy the RTSP stream and not record using MediaMtx if that helps.


Successful signup

user signs up the website but no confirmation is displayed also the user should be redirected to the home page on successful signup/login

@haseebzaki-07 solve the problem

@gupta-ritik sure


Additional Retention Policy for Yammer

"To retain and delete email messages for your Yammer network, configure an additional retention policy that includes any Microsoft 365 groups that are used for Yammer, by using the Microsoft 365 Groups location."
Can you please describe what these "email messages for your Yammer network" means here?
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: ef663fdc-1776-3c73-7743-332796c284e6
Version Independent ID: ceb29788-39be-8c30-b92a-7a22243ebe83
Content: Create and configure retention policies to automatically retain or delete content - Microsoft 365 Compliance
Content Source: microsoft-365/compliance/create-retention-policies.md
Service: o365-seccomp
GitHub Login: @cabailey
Microsoft Alias: cabailey

For example, notification emails that contain requests to join a Yammer network or posts that get sent to your inbox.


TypeError: load() takes no arguments (1 given)

Hej,
indeed, the default yaml loader is slow!
Before I go ahead and start to parse strings manually, I wanted to give your lib a go!
Thanks for trying to fix this!
I was trying to replace
yaml.load(output, Loader=CLoader)
with
yaml_obj = zaml.load(output)
but got the following error:
Traceback (most recent call last):
  File "./glljobstat_testing.py", line 508, in <module>
    JobStatsParser().RunBEO()
  File "./glljobstat_testing.py", line 498, in RunBEO
    self.run_once_retry(HOSTS, STATSPARAM, SSHUSER, SSHKEY, SSHKEYTYPE, "stats", HOSTPARAM)
  File "./glljobstat_testing.py", line 392, in run_once_retry
    return self.run_once_ser(HOSTS, STATSPARAM, SSHUSER, SSHKEY, SSHKEYTYPE, TYPE, HOSTPARAM)
  File "./glljobstat_testing.py", line 329, in run_once_ser
    obj = self.parse_single_job_stats(data)
  File "./glljobstat_testing.py", line 225, in parse_single_job_stats
    yaml_obj = zaml.load(output)
TypeError: load() takes no arguments (1 given)

I installed zaml into my venv with:
python3 -m pip install zaml
Any suggestions on how to solve this?
Thanks a lot,
Bjoern

Same here


Fix TigerBeetle link; TigerBeetle no longer a part of Coil

This is an awesome repo! I just noticed that the TigerBeetle link is now broken. And TigerBeetle has also now been spun out of Coil.

Made a concurrent fix https://github.com/asatarin/testing-distributed-systems/commit/8e07431dc17062f08894916a74c64456a6d28bfc


Use plain text for queue timings data

Used plain text format for storing queue timings data, rather than pickle, to reduce unnecessary disk I/O.
Potentially solved issue #3243 .

One conflict in bodyfetcher.py with master branch. Simply deleting the conflicting code in master branch would resolve this issue.

@ArtOfCode- I believe that it is generally not a good idea to merge master into a PR, as learned here. Therefore I reverted your last commit. If there are good reasons that I am not aware of for doing so, you may want to reset HEAD to 1e74aae6745b10fb44f429bba075d1d03faf880b and force push to recover it.

Merging master into a PR is how you resolve merge conflicts. Removing that commit means there are now merge conflicts with this PR again; you're welcome to resolve them another way.

This currently appears to grow the bodyfetcherQueueTimings.txt log file without bound, and without handling errors or potential corruption in the file. At an absolute minimum, we need to have a handle on how rapidly this will consume disk space, and some way for the file to be truncated or reset. As to how much disk space it will use, I plan to run this on an instance for a few hours to get an idea of the amount of space used.
Note: My instances already encountered a disk space issue, which has been temporarily alieviated on my end. I have a planned change to SD, which should solve that separate issue, but which I still need to test.

Given the limit in API quota, SD will make no more that 20k requests per day. As seen in queuing config, each API call should log no more than 10 lines of data. Each line of data, given the worst case, would not be exceeding 100 Bytes. Hence the disk write cost for one day is no more that 20 MB, which is a significant reduce compared to 2 MB per API call in the previous implementation.
As for the disk space problem, the plain text format will not be occupying order of magnitude of more disk space than the serialized pickle. Hence it is expected that in this implementation the disk space cost per day is no more that 9 times of that of the original implementation, and my personal guess is no more than 1.2 times, which is not really a severe issue.
It is also true that logs, on POSIX, is cleaned manually by an admin or by a cron job, not by the application generating it. Implementing the feature of log size control would add unnecessary logic to the code, as cron is already doing a good enough job in automating log size control.
Stepping back, given the calculation in the first paragraph, which indicates no more than 20 MB writes per day, effectively tells us that for 1 GB of disk space SD may run at least 50 days. Given that on modern computers, even on RPis, it is common to have disk space of several GBs, I don't really see the point for auto log size control.

This is currently broken. The merge of the master branch into this one broke it (posts are not scanned).
This can be reopened once the problem is resolved.


Incorrect comparison mechanism in getter for non-primitives

The useReaxGetter hook uses a triple equal sign, which is incorrect for objects and arrays. The equality test gives the result "previous value is equal to new", and no rerender occurs.

Turns out it is an expected behavior in Vuex
https://vuex.vuejs.org/guide/mutations.html#mutations-follow-vue-s-reactivity-rules


chore: Automatically mark/close stale issues

Automatically marks issues as stale after 2 weeks of inactivity. Closes stale issues after a further 7 days of inactivity.
Would consider making these shorter as well.

I'll reduce it, also maybe switch to exclude certain labels rather than only checking certain ones


Breaks with mkdocs-techdocs-core 1.2.0

The latest mkdocs-techdocs-core version 1.2.0 does not render mermaid anymore with this addon. The last known working compatible version with this add-on is 1.1.7

@bforbis any idea what is causing this? If you have logs I can try to give it a look

hah, my goodness. I was just submitting an issue for this with the exact same fix. Should have checked the issues!


[MNT] Update name to aeon in config files

Renames scikit-time to aeon. Package is still called sktime so that remains the same. Part of #28.

could we go for lower case name instead Aeon?

should all be lowercase now.


[prometheus-operated] Annotations + v2.44.0

The QA workflow will have to be updated to support installing multiple charts that depend on one another.


NTR: defense response to parasitoid wasp infection

Could I have:
defense response to parasitoid wasp infection
is_a defense response to insect GO:0002213
Reactions triggered in response to the presence of parasitoid wasp eggs or larvae that act to protect the cell or organism. (PMID: 22588641, PMID:32396065).
GOC:ha
Thanks

HI @hattrill
The multi-species group is hooing to phase out these  response to roganism/clade terms because they cause inconsistent annotation (people are using them often in place of the correct , more specific term describing the actual process) and the processes aren't really "species' or 'clade' specific. They are largely 'molecule specific'.
Is there a way you could capture the 'pathogen interaction' by connecting the fly gene to the pathogen gene (i.e as a reception substrate for example)?

For so called antimicrobial peptides (AMP), the mechanism of action is often unknown. So, we don't know what they interact with and how they clear the organism.
In many instances, all we know is that they are small, induced upon infection (usually by an immune-activated pathway, for which we might know the biological agent and their expression has a negative effect on the invading organism. They probably act by punching holes in membranes or coating targets....we just don't know. All we really know that they are often specific to the organism.

I can see that they can be used inconsistently, as they are very broad.
Is the innate immune response branch going to have the organism specific terms removed as well?

There are two main issues with the current situation (also independently noted in numerous conversations by the multispecies working group @dsiegele and @mgiglio99 and by  PHI-base collaborators).

When  these terms are used, the
"GO:0051817   modulation of process of other organism involved in symbiotic interaction" terms are often ignored.
( not helped by the fact that this term and the descendants are really difficult to locate, and the "response to species" terms are very prominent  at a high level, so more improvements are required).

Ideally, the annotation would say something more specific about how the host is interacting with the pathogen.
and

If the annotations to the correct term are made, we have independent annotations are describing orthogonal aspects of the same observation that should be combined.

My previous preferred solution was to make this branch only available in extensions (this has worked well for the phase terms), but the sustainability of requests for every type of pathogen remains.
I previously thought we should not need to refer to the species because if annotations are made correctly the interacting organism will be in the taxon field, but this is quite hidden and I'm not even sure that all tools observe this requirement for pathogen-host interaction annotations.
Perhaps the most sustainable way to deal with this, and to capture any species at any level of granularity, would be to enable an extension   "interacting_species"  (or similar) on any term/annotation under
GO:0044419   interspecies interaction between organisms
This would resolve all of the current issues:

We would be able to cull all "response to species", and would not need to add terms for every species
...the current situation is even worse than "response to favourite species":

This is one example:

GO:0009615    response to virus
113,781 annotations

GO:0051607    defense response to virus
103,512 annotations

GO:0098586    cellular response to virus
4,974 annotations

GO:0050688    regulation of defense response to virus
6,015 annotations

GO:0050687    negative regulation of defense response to virus
1,996 annotations

GO:0050690    regulation of defense response to virus by virus
870,719 annotations

GO:0050691    regulation of defense response to virus by host
2,111 annotations

GO:0002230    positive regulation of defense response to virus by host
1,750 annotations

GO:0050689    negative regulation of defense response to virus by host

etc.....

This is not remotely sustainable.

Annotation would be more consistent, and we would always get the biologically relevant term in addition to the pathogen.

It would/should be easy to configure in tools, they would need to make a taxon ID available in this slot.

4 We could get rid of the dual taxon  notation that is very hidden and not mandated
@thomaspd
@cmungall

For the experiments we encounter, the broad-brush categories really capture the experiment at the level they are intended e.g gram-negative bacterial, virus.
If groups want to capture interactions right-down to the species level, then I am ok with taxon ids in extensions.
I would prefer have something in broad classes - classification based on some attributes, such as gram negative, may not be necessarily aligned with taxonic lineage. I am not so sure that there is an explosion, if these are restricted to the broader classes. Could do with a good tidy tho' to harmonize on meaning - i.e. do we need separate defense response and innate response?

broad classes would probably be sufficient (better actually because  options could be provided rather than everyone needing to look up taxon IDs which is tedious).

do we need defense response and innate

unfortunately yes. there are defenses that are not immune response related

+1  there are defenses that are not immune response related

We discussed this on the multiorganism call - and @hattrill if you are OK with taxon ids in extensions, then can you use GO:0009625 response to insect and add the parasitoid wasp taxid ?
In this case we would not create the term.
Thanks, Pascale

What relation would you suggest?
Unfortunately, there are no tools which allow a search on taxid in extensions so it will get lost.

You think searching the taxon is needed ? I was hoping 'insect' would be granular enough as a search term, and users could view the exact taxon.

They are more likely to look for parasite or parasitic insect, but we don't have a specific parasite branch.
(but I think that an insects for insects is not intuitive - certainly, when I spoke to Nick Brown he thought that parasitic insect was essential for users to find the annotations)

I see. Are parasitic insects always parasitic ? We have the same issue with pathogen.

Talking with @vanaukenk - Kimberly proposes to use 'has input'; would that work ?
Also, if @mgiglio99 @dsiegele @ValWood agree I could create 'defense response to parasitic insect', as a child of 'defense response to insect'.
Finally - if this is a response to infection, shouldn't there be some link to an immune response ?

I am not an expert on parasitic wasps, but the laying of eggs in host/presence of larvae is always parasitic act.
I have been quite conservative for this particular example and some of the processes involved in the immune response e.g. melanization and pathways can be described with co-annotation or used in an extension in some way.
I think if there was a link to immune response, it would not be incorrect as it is a response to an infection.

has_input could work.

I don't know much about parasitic insects, but I do fear that we will have the same issues with 'parasitic' as we had with 'pathogenic'. To me, the fact that the term is 'defense response to...' and not just 'response to...' already implies that the insect is doing harm and is therefore parasitic or pathogenic.
Would it be an option to make 'defense response to parasitic insect' a narrow synonym to 'defense response to insect'? That would solve the searching issue.

Following this discussion: using taxon ids in extensions with has_input to specify species:
@alexsign would it be possible to add NCBI:txid to the has_input field in Protein2GO?

Note a parallel discussion here:  https://github.com/geneontology/go-shapes/issues/237
I've put these two tickets on the agenda for the 2020-10-19 ontology editors call.

On the ontology editor call we agreed that 'has input' is the correct relationship for this.

I think I misunderstood what this ticket was about. So let me get this straight.
In GO traditional annotation the interacting taxon goes (for any pathogen-host interaction term)  in the taxon field with a separator
In GO-Cam the interacting  the taxon goes in an extension field using has_input (or is this just in the case o the "response to species" terms), which would be very confusing.
Questions
So do you plan that people no longer use the taxon field for this information longer term?
Or is the plan that we redundantly populate both fields in a GAF file ?
And where does this fit in GPAD (I presume GPAD has a taxon field too?)

So do you plan that people no longer use the taxon field for this information longer term?

It's a difference of format between GAF and GPAD.

Or is the plan that we redundantly populate both fields in a GAF file ?

I dont think so - I think the interacting taxon stays in the taxon field. There is no plan to further change the GAF specs.
And where does this fit in GPAD (I presume GPAD has a taxon field too?)

Yes, according to the latest specs: https://github.com/geneontology/go-annotation/blob/master/specs/gpad-gpi-1_2.md

@vanaukenk can confirm.
Can this be closed ?
@hattrill This is now a P2GO issue ?

My questions are answered.

I created a separate annotation ticket for the use of 'has input' + the species in an extension,
https://github.com/geneontology/go-annotation/issues/3514
As far as the ontology goes, this is resolved.
Thanks, Pascale

Hi - I looked at the other issue as well as this one. I just want to make sure I understand the resolution here - the new term requested above was not made.
And the wasp situation will be handled with use of taxon id extensions.
Correct?

Yes @mgiglio99 this is right.
We suggested to @hattrill to use GO:0002213 defense response to insect.
Thanks, Pascale


⚠ Bofrost.de has degraded performance

In cd66a44, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1434 ms

Resolved: Bofrost.de performance has improved in 1126fc1.


Fix failing BrTextEditorSegmentCollector

#segment_in_HACrCrLfBA_at_7 and #segment_in_HACrCrLfBA_at_8 are invalid since it doesn't make sense to expect the cache to find a segment for a character beyond the end of the string.  They were passing earlier since BrTextEditorSegmentCollector>>cachedSegmentIndexAt: had a bug that meant it returned the last segment for any index greater than the last segment.
Modify #segment_in_HACrCrLfBA_at_7  to confirm the operation of BrTextEditorSegmentCollector>>cachedSegmentAt:ifFound:ifNotFound: when the segment isn't found.

Fixed by: https://github.com/feenkcom/Brick/commit/4abaf00c52c422194927a3f138bb7573c04a5cbf


⚠ ETF has degraded performance

In c326e14, ETF (https://markets.hankyung.com/equity-product/etf) experienced degraded performance:

HTTP code: 200
Response time: 8182 ms

Resolved: 한경메인 performance has improved in 5e9e22a.


Responsive and proper alignment of Homepage

Added some responsiveness to main page, properly aligned contributor cards.
Raised under issue number #303
Main hero component preview

Contributor card  alignment preview

Hey @amanjaiman1 please review this one.

Hey ! Please star this project :) @Prashu-01

Already done.


Eloquent insert query shows the query builder default select query

The following query on Eloquent inserts will be select * from <table-name> anytime, because the insert method is a generic method, and not a query builder method on the model.
https://github.com/census-instrumentation/opencensus-php/blob/1327147dc2ea99c06df01db4daa8c4ab2656514d/src/Trace/Integrations/Eloquent.php#L62

As an alternative, only add the table name, on which the insert is performed:
'table' => $query->toBase()->from,


UNAUTH: Invalid nonce

Since today's morning I just keep getting this errors. For example, when I am trying to cancel order I have got this
Traceback (most recent call last):
File "test.py", line 23, in
client.cancel_order(transaction['orderOid'], Client.SIDE_BUY, 'ETH-BTC')
File "C:\Users\roofu\Desktop\Bot\myvenv\lib\site-packages\kucoin\client.py", line 1313, in cancel_order
return self._post('cancel-order', True, data=data)
File "C:\Users\roofu\Desktop\Bot\myvenv\lib\site-packages\kucoin\client.py", line 180, in _post
return self._request('post', path, signed, **kwargs)
File "C:\Users\roofu\Desktop\Bot\myvenv\lib\site-packages\kucoin\client.py", line 147, in _request
return self._handle_response(response)
File "C:\Users\roofu\Desktop\Bot\myvenv\lib\site-packages\kucoin\client.py", line 161, in _handle_response
raise KucoinAPIException(response)
kucoin.exceptions.KucoinAPIException: KucoinAPIException UNAUTH: Invalid nonce
What's the reason of this error?

It fixed by itself somehow


add mortyurl to DEFAULT_NO_SKIP_PARAMETERS_LIST

This parameter is in all searx urls when the site is accessed through the proxy.
Morty is not available in all instances, only in those that the maintainer chooses to offer.
Searx https://github.com/searx/searx
Morty https://github.com/asciimoo/morty
Even being something that the maintainers don't change, I checked the top 10 instances ranked in searx.space to check the urls and search for the string mortyurl
https://metasearch.nl/morty/?mortyurl=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FGitHub&mortyhash=797cc87836a4b20312342bad24f392aa2c410ef8287cde5c7174690d40a0c726

https://proxy.mdosch.de/?mortyurl=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FGitHub&mortyhash=f68b212aaa0585bc47e5e79c2c30cfbaefcce15401ef104fa4bc4a2b1dd5733f

https://searx.nevrlands.de/morty/?mortyurl=https%3A%2F%2Fgithub.com%2F&mortyhash=4b38fd969c89e6cb7ce874a01b594b8ee6dace8f97ecb4f69e85ccdfa3883cbd

https://searx.pofilo.fr/morty/?mortyurl=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FGitHub&mortyhash=cd87572f702fd3f5cc69a52213df5b3f363331774fe1439da6ffe97873262f97

https://searx.fmac.xyz/morty/?mortyurl=https%3A%2F%2Fgithub.com%2F&mortyhash=591498d7a9851c67e87d026d7e1c22917a978cb56284e0e36aae5ebd5277fbc5

https://searx.bar/morty/?mortyurl=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FGitHub&mortyhash=d1ddd18756d7473f6e8343fd41a3a5ea59d0ce2a8c6e8ebc0df0e33fdf4e8452

https://searx.bbaovanc.com/morty/?mortyurl=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FGitHub&mortyhash=49e15886c63b99f83ef1fffc853ec5ebf79d31f6365518e7d7081877078a5494

https://morty.simonoener.com/?mortyurl=https%3A%2F%2Fgithub.com%2F&mortyhash=1ddcda0fbea66d5be8b9fca054c051a9a2577593481a626d5cc539c1af3d26e3

https://searx.olymp.to/morty/?mortyurl=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FGitHub&mortyhash=e4588da3e9ba3d86415092a5f9f438e097c1648932a5eba7a89e15bcdab390b7

https://searx.pofilo.fr/morty/?mortyurl=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FGitHub&mortyhash=cd87572f702fd3f5cc69a52213df5b3f363331774fe1439da6ffe97873262f97

I am sorry, but morty is not sufficiently generic so that I would include it in the default list. I don't want to maintain website specific configuration. As long as publishing extensions cannot be easily automated there is too much manual work involved.