bug: Vue throwing warning in console because  VUE_OPTIONS_API and VUE_PROD_DEVTOOLS are not definede

Details
Vue is ouputting the following error in console:
__VUE_OPTIONS_API__, __VUE_PROD_DEVTOOLS__ are not explicitly defined. You are running the esm-bundler build of Vue, which expects these compile-time feature flags to be globally injected via the bundler config in order to get better tree-shaking in the production bundle.

For more details, see https://link.vuejs.org/feature-flags.

This is fixable by assigning a boolean value to each of these global variables but it needs to be done before createApp() is called. There is no configuration option in Parcel to handle this so I assigned values to these variables in the Vue3 static template file (cli/plasmo/templates/static/vue3/index.ts).
Code of Conduct

[x] I agree to follow this project's Code of Conduct
[x] I agree to license this contribution under the MIT LICENSE
[x] I checked the current PR for duplication.

Contacts

(OPTIONAL) Discord ID: dino_morrison

If your PR is accepted, we will award you with the Contributor role on Discord server.
To join the server, visit: https://www.plasmo.com/s/d

@sincspecv Thanks for the PR! I will review and cut a release likely Wednesday. LGTM otherwise!


Ensure a white background for banner images.

See #669
Mostly this is for better compatibility with transparent PNG images.

@chigby side note, we try to stick to past tense for commit messages. I.e. "Resolved" rather than "resolves"


feature: pass axios config in the storage

Use case is to add tags to cache depending on the request.

Adding a method like a onConfigReady that accepts the resolved config as parameter is sufficient?

But wouldn't that make usage of buildStorage a bit harder, because itsn't not class and doesn't have this scope?

Yeah, probably. buildStorage parameter can be a function that returns the storage object and receives the config obj.
You're up to create a PR?

That sounds good I think. Will create a PoC.

Can you verify that I understood you correctly? https://github.com/arthurfiorette/axios-cache-interceptor/pull/221/files

Well, I was is a lot of meetings this morning, so I couldn't clarify you better. Sorry about that, but, I thought it would be a more clean approach to code it in this way:
buildStorage((conf) => ({
  find: ...,
  set: ...,
  remove: ...,
}))

And build storage also returns a function, and the type of CacheOptions.storage be overritten to (CacheOptions) => AxiosStorage (circulally referencing itself).
And, in this line, it should be passed the whole options as parameter.
https://github.com/arthurfiorette/axios-cache-interceptor/blob/d75fef44dbe97c820f6bde9480518ba9b05793c8/src/cache/create.ts#L55

Wait, you meant the global axios config (AxiosInstance + AxiosRequestConfig defaults) or the per-request config (and/or) response.

Per request config.

Can't you do that with cache.update?

But it requires specific IDs? How can I use it for all keys?

And actually it won't work, since I receive cached object - i have to work-around it by adding temporary tags into cache, then removing them in the storage, before storing value.

That won't work because the request interceptor also uses the .set method...
But, probably, everything that you need lives under response.config or CacheRequestConfig.
Take a look at 220-example. The tests aren't working but the source seems to be.
https://github.com/arthurfiorette/axios-cache-interceptor/blob/cbcccfae972361b82558a673d762b9efd0cd1cd8/src/storage/types.ts#L84-L95

Yes, that would also work aswell.

Hey @Warxcell, sorry for this delayed fix. I created #226 that implements what I said above. Can you check it?
As soon as you confirm, I'll release your feature.

Hey, no need to sorry :) Looks great !

Hey @Warxcell, I've just released 0.10.3. Can you try it?

Just tried, works as charm ! Thank you for your fast response !


Fix ComboBoxWrapper.select() for Qt5 widgets

Also add PyQt5 sample to unit tests.
related to #555
Note:
Attempt to start PyQt5 app by this code
qt_python_folder = os.path.join(os.path.dirname(__file__), r"..\..\apps\Qt_Python_samples")
qt_py_combobox_app = sys.executable + ' ' + os.path.join(qt_python_folder, u"qt5_combobox.py")

app = Application(backend='uia').start(qt_py_combobox_app)

causes exception:
Traceback (most recent call last):
  File "pywinauto\pywinauto\unittests\test_uiawrapper.py", line 1579, in setUp
    app = Application(backend='uia').start(qt_py_combobox_app)
  File "pywinauto\pywinauto\windows\application.py", line 446, in start
    if wait_for_idle and not app_idle():
  File "pywinauto\pywinauto\windows\application.py", line 432, in app_idle
    result = win32event.WaitForInputIdle(
pywintypes.error: (2, 'WaitForInputIdle', 'The system cannot find the file specified.')

Workarounded with
app = Application(backend='uia').start(qt_py_combobox_app, wait_for_idle=False)
self.app = Application(backend='uia').connect(pid=app.process)

wait_for_idle=False is OK because python.exe starts console first which has no GUI event loop. So this param is made for such cases exactly.


cannot import from pymagnitude :module 'pytest' has no attribute 'mark'

Hello ,
This error occurs when i try to import from pymagnitude !

from pymagnitude import Magnitude
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/init.py", line 80, in
from pymagnitude.third_party.allennlp.commands.elmo import ElmoEmbedder
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/commands/init.py", line 8, in
from allennlp.commands.configure import Configure
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/commands/init.py", line 8, in
from allennlp.commands.configure import Configure
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/commands/configure.py", line 25, in
from allennlp.common.configuration import configure, Config, render_config
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/common/configuration.py", line 20, in
from allennlp.data.iterators import DataIterator
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/init.py", line 3, in
from allennlp.data.dataset_readers.dataset_reader import DatasetReader
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/dataset_readers/dataset_reader.py", line 6, in
from allennlp.data.instance import Instance
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/instance.py", line 5, in
from allennlp.data.fields.field import Field
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/fields/init.py", line 11, in
from allennlp.data.fields.knowledge_graph_field import KnowledgeGraphField
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/fields/knowledge_graph_field.py", line 18, in
from allennlp.data.token_indexers.token_indexer import TokenIndexer
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/token_indexers/init.py", line 7, in
from allennlp.data.token_indexers.dep_label_indexer import DepLabelIndexer
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/token_indexers/dep_label_indexer.py", line 10, in
from allennlp.data.tokenizers.token import Token
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/tokenizers/init.py", line 9, in
from allennlp.data.tokenizers.word_tokenizer import WordTokenizer
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/tokenizers/word_tokenizer.py", line 11, in
from allennlp.data.tokenizers.word_stemmer import WordStemmer, PassThroughWordStemmer
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/pymagnitude/third_party/allennlp/data/tokenizers/word_stemmer.py", line 3, in
from nltk.stem import PorterStemmer as NltkPorterStemmer
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/nltk/init.py", line 143, in
from nltk.chunk import *
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/nltk/chunk/init.py", line 157, in
from nltk.chunk.api import ChunkParserI
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/nltk/chunk/api.py", line 13, in
from nltk.parse import ParserI
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/nltk/parse/init.py", line 100, in
from nltk.parse.transitionparser import TransitionParser
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/nltk/parse/transitionparser.py", line 22, in
from sklearn.datasets import load_svmlight_file
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/sklearn/datasets/init.py", line 22, in
from .twenty_newsgroups import fetch_20newsgroups
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/sklearn/datasets/twenty_newsgroups.py", line 44, in
from ..feature_extraction.text import CountVectorizer
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/sklearn/feature_extraction/init.py", line 10, in
from . import text
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/sklearn/feature_extraction/text.py", line 28, in
from ..preprocessing import normalize
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/sklearn/preprocessing/init.py", line 6, in
from ._function_transformer import FunctionTransformer
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/sklearn/preprocessing/_function_transformer.py", line 5, in
from ..utils.testing import assert_allclose_dense_sparse
File "/home/yosri/anaconda3/envs/ml/lib/python3.7/site-packages/sklearn/utils/testing.py", line 720, in
skip_if_32bit = pytest.mark.skipif(_IS_32BIT,
AttributeError: module 'pytest' has no attribute 'mark'

I'm also getting the same error. I have tried to install pymagnitude in a new miniconda environment (Python 3.7.4), but I keep getting an error. The code worked fine previously with pymagnitude in my old Anaconda environment.

Traceback (most recent call last):
File "main.py", line 1, in
import model.cognitive_classifier_model
File "/home/farhood/Projects/Cognitive-project/Final/cognitive_package/model/cognitive_classifier_model.py", line 6, in
from sklearn.decomposition import PCA
File "/home/farhood/miniconda3/lib/python3.7/site-packages/sklearn/decomposition/init.py", line 10, in
from .kernel_pca import KernelPCA
File "/home/farhood/miniconda3/lib/python3.7/site-packages/sklearn/decomposition/kernel_pca.py", line 15, in
from ..preprocessing import KernelCenterer
File "/home/farhood/miniconda3/lib/python3.7/site-packages/sklearn/preprocessing/init.py", line 6, in
from ._function_transformer import FunctionTransformer
File "/home/farhood/miniconda3/lib/python3.7/site-packages/sklearn/preprocessing/_function_transformer.py", line 5, in
from ..utils.testing import assert_allclose_dense_sparse
File "/home/farhood/miniconda3/lib/python3.7/site-packages/sklearn/utils/testing.py", line 720, in
skip_if_32bit = pytest.mark.skipif(_IS_32BIT,
AttributeError: module 'pytest' has no attribute 'mark'

The error is coming from the compiler generating a 32bit version of pymagnitude's related stuff even though I'm using a 64bit intel cpu? I am not well-versed on how python install packages and compiles their related materials so this might be wrong.

Can you try installing on just normal Python/pip3 (not anaconda)? Does that work?

Can you try installing on just normal Python/pip3 (not anaconda)? Does that work?

Yes , it works! Thanks

For other people who come here with the same issue, my solution is
pip3 uninstall pytest
pip3 install pytest

Note it's pip3 instead of pip since I'm using Python3


Add new authorization details to README

This PR adds more details about Spotify authorization to the README based on the discussion in https://github.com/rinukkusu/spotify-dart/issues/37.
I've personally used every approach I mentioned for Flutter, but I'd appreciate any thoughts from @rinukkusu and @roisnir on how to better explain the Authorization Code Flow for a Dart app.

This PR adds more details about Spotify authorization to the README based on the discussion in #37.
I've personally used every approach I mentioned for Flutter, but I'd appreciate any thoughts from @rinukkusu and @roisnir on how to better explain the Authorization Code Flow for a Dart app.

Unfortunately, I haven't written such dart app too, and I have no good idea for production apps but here are some workarounds ideas.
If the case is testing an api request in an example file of a flutter app (like described here) or any other command-line dart application. You can launch the authorization URL in a web browser (see this thread) or print and paste to the browser. Sign in, and then, when redirected copy the redirect URL with the authorization code and paste to the app's input (with stdin.readLineSync())
In the case of an HTTP server, I can't think of a way to authorize because it requires user interface for the user to authenticate.

@roisnir thanks for the ideas! I think the command-line approach you described would be a much quicker solution for @hayribakici than what I suggested here.

I just updated the PR with code snippets for the url_launcher/uni_links approach and the WebView approach @roisnir mentioned. I also hid all of the imaginary function explanations inside an expandable/collapsible section so that it doesn't detract from all of the other good advice in the README. 😄

Thanks for the great efforts you put into making this documentation better for everyone!


Remove leftover debug code from AddBlockToAreaAreaKey

Thanks for fixing this quickly.
From now on, can we please do a single pull request for every single major change to these files? It's too much to try and vet them when they add doc blocks, move methods around AND refactor legacy concrete5 functionality. It makes me not want to consider them at all because I know that things like this creep in.

Sure. I just rewrote those permission-related files while I was studying how advanced permissions work.


use adapter notifyDataSetChanged is not work?

I use this stick headers list view . Delete item ,use adapter notifyDataSetChanged, but not work. Why ??

@emilsjolander, I dont know how to solve my bug,the notifyDataSetChanged method is not work for me too

it seems i need to revoke setAdater method which can solve my problem,but it not well for my user experience and the others module


Fix import error due to #71

The utils crate is re-exported from the main crate for use in debug builds.
Debug builds are compiled by the macro to use certain functions from the utils crate. This is different than in release mode, where the macro itself uses the functions and does not require them at runtime. When the debug code tries to import the utils crate, it fails because it is not an explicit dependency in Cargo.toml.
Fixes #74

Hah.. as utils; thats what i was missing. LGTM. Thanks @Mcat12


Support disparate time intervals and more advanced time in WHERE clauses

Feature Request
I'm calling this a feature request, but it's both a feature request and a bug in the existing query engine. Explained more below.
Proposal: Support disparate time intervals and more advanced time in WHERE clauses.
Current behavior: You can only select one continuous block of time. There is no way to select multiple blocks of time even though the query language implies it should be possible. In fact, we completely ignore any of the query language that would suggest that it's possible in favor of doing something unexpected. Given the following examples:
SELECT * FROM cpu WHERE time >= now() - 10m OR (time >= now() - 20m AND region = 'uswest')

The above query says you want any points within the last 10 minutes or within the last 20 minutes if the region is uswest. What actually happens is we take all points from the last 10 minutes because we naively look through every binary expression that has time as one of the arguments and assume that they were put together with AND.
Desired behavior: Parse the WHERE clause to retrieve the disparate time periods that it specifies correctly. The above example would create two different time intervals. One where the time was anything within the last 10 minutes and one that was within the last 20 minutes if the region was uswest.
Use case: It prevents confusion from people who are attempting to use the WHERE clause in this way and then they find out we do not parse the time clauses in the way that we imply we do. It also opens possibilities in the future of implementing new syntax for selecting only time points in the morning or the afternoon.
I'm not sure how useful this is so it will likely remain low priority. If this is important for your use case, please add a 👍 reaction to this issue and explain your use case so we can learn more about this issue and those it affects.
Thanks!

Hello!
I have a simple use case on that issue, where the implementation of OR would be very useful.
We are studying availability rates of devices, and in the calculation we need frequently to remove uninteresting periods of time. We use influxDB as a database, and queries are made from our python script.
Example: calculation of availability between 2017-05-20 and 2017-06-20, but the devices was in maintenance between 2017-05-24 and 2017-05-26, so its irrelevant to consider that period.
Without the OR, we need to make two queries.
Thus the implementation of OR would be awesome!! Is there any plan on that?

We are trying detecting anomalies by comparing what a current hour with the same hour of the previous three four weeks. For that we need to specify different time ranges

I'm not sure how disparate intervals will help with that unless we also support time shift, which the current query engine does not. We are aware of time shift and want to support it in the future, but we are running into the limits of using an SQL-like language for things like that.
At the same time, you can just use two separate queries and you will get the data you want.

To make a note on this issue, we may not be able to do this with the current query engine because of a little weird aspect of the query parsing that too many people likely rely on.
The following condition is parsed in a way that many likely won't expect.
WHERE host = 'server01' OR host = 'server02' AND time > now() - 1d

This actually gets parsed as something equivalent to this:
WHERE host = 'server01' OR (host = 'server02' AND time > now() - 1d)

That would mean the time restriction should only be applied to host = 'server02', but the current query engine applies that time range to both conditions at the moment. If we fixed this bug/implemented this feature, we would have to correct this behavior and old queries would break. There is at least one high profile tool that wrote queries with this kind of error since I just fixed the query in Grafana with grafana/grafana#9131, so I'm not sure we can ever move from this for SQL.
Stay tuned for ifql 2.0 though where we will ensure we do not have this kind of oversight again.

I'm trying to filter the series with a regex (i.e. WHERE time =~ /regex/) in order to get only data during business hours, i.e. timestamps between 07:00 and 19:00 - regardless of the date. I'm getting no data points back because - I assume - that the query would create disparate time intervals with one data point each -  just like with the unsupported "OR". I do not seem to find a way to filter data based on timestamp. The suggested workaround with separate queries does not work...
SELECT mean("perc") FROM "occupancy_avg" WHERE time =~ /'....-..-..T(0[7-9]|1[0-9]):..:..Z'/ GROUP BY time(1h) fill(null)
PS: I think that features like filtering data based on time are very important (business hours, maintenance windows, etc...)
PPS: any hint is appreciated. I'm using influx with Grafana

This would be useful.  I thought I would share the MUCH slower workaround.  Since 1.2 you can use sub queries.  This means you can use syntax like:
Select * from
(select mean() from channel where (time > '2017-05-01 13:00:00' and time < '2017-05-01 15:00:00') GROUP BY time(20m),train fill(none)),
(select mean() from channel where (time > '2017-05-01 18:00:00' and time < '2017-05-01 19:00:00') GROUP BY time(20m),train fill(none));

@jsternberg so you'll leave incorrect implementation in forever because of backward compatibility, instead of doing the right thing of fixing it?
Do not the project have guidelines how to deal with this type of situation? For example have some flags that would by default support old behaviour for a few releases and then would by default support the new behaviour for a few releases and then remove the incorrect behaviour altogether?
The timelime for phasing out the incorrect one can be years, so that everyone who depend on it has time to update.
To me that would seem logical, saying this is wrong but we are not fixing it sounds strange.

Backstory
because of a flaw in our data collection program, we ended up with near-duplicate data points. E.g. records with the same tag/field set, but very slightly different times (e.g. small divisions of a second different). I wrote a program to detect these duplicates, and remove them. For example, if the program detects 5 records with the same tag/field set within a given second, it will issue delete commands for each of them except one.
The problem
In order to delete a specific record, I use a combination of the exact time and the tag set (which together constitute the 'series'). For example, to delete a specific record I say DELETE FROM measurement WHERE time=1234567890123456789 AND some_tag='some_val'. The problem is it is not possible to delete multiple records in the same query with this approach. I need to issue separate delete commands for each of the records I want to delete, and this time adds up when working on a large data set.

The current plan is to fix this as part of ifql since ifql, by language design, won't have this issue.
Can we get update on this? Is this still happening?

I also happen to have run into that bug minutes ago, so I'm wondering what is the recommended solution as of today. Is it still to perform N queries for the N intervals we want to query (and then join them manually if we are using GROUP BY)?

Same question that @MickaelBergem , i found this problem right now so in the version 1.7.8 still happening

Still would like this to be fixed.

This silently (!) does not work:
DELETE FROM "x" where time = 1 OR time = 5
we don't even get an error, it simply does not delete. (tried InfluxDB v1.4.2)

Usually no error given if a filter returns 0 records. May be that's what's happening here?

Do we have any workaround for this other than the sub-query approach suggested above?

Nearly 4 years later and I still trip over this bug on which people apparently rely on working. Please fix.

Usually no error given if a filter returns 0 records. May be that's what's happening here?

No that is not the case since these two times exist. It should give an error that disparate queries are not supported.
Works:
DELETE FROM "x" where time = 1; DELETE FROM "x" where time = 5
Silently (!) fails:
DELETE FROM "x" where time = 1 OR time = 5

Keep an eye on this issue

这将是有用的。我以为我会分享慢得多的解决方法。自 1.2 起，您可以使用子查询。这意味着您可以使用以下语法：
Select mean(*) from
(select * from channel where (time > '2017-05-01 13:00:00' and time < '2017-05-01 15:00:00') ),
(select * from channel where (time > '2017-05-01 18:00:00' and time < '2017-05-01 19:00:00') )
GROUP BY time(20m)fill(none);

thinks

Is this supported with Flux as I understand this will never be solved on InfluxQL.

This can be done with Flux by using from |> range on two different ranges and then union() to merge the two results. You can also do something like:
import "date"
from(bucket: "mybucket")
    |> range(start: -1w)
    |> filter(fn: (r) => r._measurement == "m0" and r._field == "f0")
    |> filter(fn: (r) => date.hour(t: r._time) >= 9 and date.hour(t: r._time) < 15)

Just be sure you use the second filter after the first. The second filter won't be pushed down into the database.

Can anyone tell when this will be fixed ?
I really need this. Because this bug is causing performance issues.

That workaround is how we would likely implement this internally. The big problem right now is that we can't really change the behavior of how the time selectors work because they don't follow the normal rules you would expect when selecting disparate times. So to make this work as you would logically expect it to given the conditions, we would have to make existing queries break and at least some versions of Grafana use a method that would break. I think I submitted a fix some time ago to get Grafana to stop constructing the queries incorrectly, but it doesn't remove the fact that a lot of people likely rely on the incorrect behavior.
I'm sorry that's the case.

Not fixing something because  "people rely on the incorrect behavior" is never a good approach.

有没有比较好的方案实现这个功能，我真的很需要它去解决性能上的一些问题。

Has this been addressed? The way the 'OR' behaves in WHERE clause is WRONG! Is Influx going to have it fixed?

Has this been addressed? The way the 'OR' behaves in WHERE clause is WRONG! Is Influx going to have it fixed?

As far I can tell, they will never fix this. You can see that they add a FAQ for this problem.
I just gave up of influx. It just bad design. Has very weird behaviour and non commercial patterns implemented into it.
Another example is a issue that I had when updating a row. Instead of just updating it, it created a new column which make I lose the db because it became too slow. I had to delete and create a new db and restore data into it.
Every single fix that I had to do in influx ended like this (delete db and create a new with data into it).
And when the data increased, I had performance issues and big memory consumption, because my data has many measurements and each one is a timeseries.
On top of that influx cloud solution is too expensive, and manual devops is too hard when influx is using more and more memory.

I'm also looking for the solution. when i using flux script, the performance is bad.

This can be done with Flux by using from |> range on two different ranges and then union() to merge the two results. You can also do something like:
import "date"
from(bucket: "mybucket")
    |> range(start: -1w)
    |> filter(fn: (r) => r._measurement == "m0" and r._field == "f0")
    |> filter(fn: (r) => date.hour(t: r._time) >= 9 and date.hour(t: r._time) < 15)

Just be sure you use the second filter after the first. The second filter won't be pushed down into the database.

if the time intervals have more than 20, the performance is very bad.

Ok, so I did speak to them a while back and gave them an introduction to the set theory 🤣
No, they're not going to fix it. I am using Influx in Python (DataFrameClient from influxdb). I don't use Flux. I wrote a workaround. Basically if I see OR  in the query which separates time windows, I break the query into multiple queries and create multiple threads. It works lightning fast.


The use of the .xp command when the bot starting throwing an error.

Run selfhosted bot.
Use .xp command in server in 6-10 sec after bot start.

0 11:46:06 CommandHandler | System.InvalidOperationException: A second operation started on this context before a previous operation completed. Any instance members are not guaranteed to be thread safe.
   at Microsoft.EntityFrameworkCore.Internal.ConcurrencyDetector.EnterCriticalSection()
   at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider.ExceptionInterceptor`1.EnumeratorExceptionInterceptor.MoveNext()
   at System.Linq.Enumerable.TryGetFirst[TSource](IEnumerable`1 source, Boolean& found)
   at System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
   at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.<>c__DisplayClass17_1`1.<CompileQueryCore>b__0(QueryContext qc)
   at System.Linq.Queryable.Any[TSource](IQueryable`1 source)
   at NadekoBot.Core.Services.Database.Repositories.Impl.DiscordUserRepository.<GetUserGlobalRankingAsync>d__3.MoveNext() in /home/nadeko/NadekoBot/NadekoBot.Core/Services/Database/Repositories/Impl/DiscordUserRepository.cs:line 40
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at NadekoBot.Modules.Xp.Services.XpService.<GetUserStatsAsync>d__36.MoveNext() in /home/nadeko/NadekoBot/NadekoBot.Core/Modules/Xp/Services/XpService.cs:line 471
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at NadekoBot.Modules.Xp.Services.XpService.<GenerateImageAsync>d__41.MoveNext() in /home/nadeko/NadekoBot/NadekoBot.Core/Modules/Xp/Services/XpService.cs:line 601
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at NadekoBot.Modules.Xp.Xp.<Experience>d__5.MoveNext() in /home/nadeko/NadekoBot/NadekoBot.Core/Modules/Xp/Xp.cs:line 32
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Discord.Commands.ModuleClassBuilder.<>c__DisplayClass6_0.<<BuildCommand>g__ExecuteCallback|0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Discord.Commands.CommandInfo.<ExecuteInternalAsync>d__45.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Discord.Commands.CommandInfo.<ExecuteInternalAsync>d__45.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Discord.Commands.CommandInfo.<ExecuteInternalAsync>d__45.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Discord.Commands.CommandInfo.<ExecuteAsync>d__44.MoveNext()

Do you also happen to have trouble running the .slot command?
Are you using dotNET 2.1.3?

@Kaoticz

No, .slot command working fine.
No, .NET Command Line Tools (2.0.0), dotnet-host (2.0.6-1)


Emit generic PeerConnected/PeerDisconnected event from sc-network

Emit generic PeerConnected/PeerDisconnected event from sc-network, carrying the protocol name of the connection
https://github.com/paritytech/substrate/pull/12828#discussion_r1108651090

I would not do this on the networking level. Because that would still mean that you need filter based on the protocol somewhere. Yeah okay, I mean this is discussable. We could have this stream from the network and then filter_map before we pass it somewhere else. However, we don't really need this functionality of following other protocols. So still not sure we need this on the network crate level.

I would like to rework the event stream system either way. Now we send every event of every protocol to every other protocol and have these if protocol != self.protocol { continue } checks in every event stream handler. What we could instead do is create a subscription-based mechanisms whereby protocols could subscribe to each other's events if they so desire and each protocol would obviously automatically subscribe to its own events. This would reduce unnecessary message passing in the system and would also achieve what I think you're referring to.

Superseded by https://github.com/paritytech/substrate/issues/13532, https://github.com/paritytech/substrate/issues/13531, and https://github.com/paritytech/substrate/issues/13554


feat: change base class 'react-dropdown-now'

many changes needed yet

The arrow component will be a little bit smaller if we remove support for the custom arrow icon className. Instead, one could still define their own arrow icon and element with its own className.
https://github.com/iambumblehead/react-dropdown-now/blob/develop/src/components/Arrow.js#L21-L23
@lwhiteley do you think it is OK to remove support for the custom arrow className?

do you think it is OK to remove support for the custom arrow className?

personally i think the custom prefix is a little unnecessary and just causes extra complexity to maintain.
maybe should just decide on a definite prefix and not allow it to be changed by the library users.
This will ensure no "minor" breaking changes like this will occur again

@lwhiteley thanks for being around and discussing changes with me

is-open,
is-selected,
is-disabled,
is-empty (menu)

@lwhiteley please review!

thanks for the review @lwhiteley I will update with those changes when there is a chance later today

@lwhiteley please review :)

the storybook addition is terrific

@lwhiteley if there are any other issues feel free to let me know and I will try to resolve them

@lwhiteley should we merge this and then do npm run release:major?

Yup but also ensure to rebuild the doc folder as well

here it goes... after this pipeline completes

I didn't have 'develop' checked out on the first try and that didn't work... so I did 'patch' release from the develop branch and that worked. Links in the README don't show the storybook.


[tensorflow] build failure

OS:windows
Compiler: x64-x86
Error: Building package tensorflow-cc:x64-windows-static failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with .\vcpkg update, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
Package: tensorflow-cc:x64-windows-static
Vcpkg version: 2019.09.12-nohash

all tensorflow pkg gave to me same error.

Duplicated to https://github.com/microsoft/vcpkg/issues/7995, also has Upstream issue https://github.com/tensorflow/tensorflow/issues/32228 to track.


fix - non utf-8 encoded txt file decode correctly

Extracted strings from non utf-8 encoded txt file are broken.

detect encoding
decode correctly

Missing package.json updates.  Do you have a file I can use that you may have used for testing purposes?  I can throw together a test.

Added non utf8 text test case.
Euc-jp encoded file('これは非UTF8 テキストファイルです' ('this is a non utf8 text file'))
Modified package.json.


issue when running python slicer-gui.py

i got this after running  python slicer-gui.py :
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: minimalegl, offscreen, xcb, wayland, eglfs, wayland-egl, minimal, vnc, linuxfb, vkkhrdisplay.
Aborted (core dumped)
How to fix this?

Which system are you using?

Which system are you using?

Linux riga100-s1 5.4.0-153-generic #170-Ubuntu SMP Fri Jun 16 13:43:31 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Since it works on my computer, I can't reproduce this issue. You may have to find solutions yourself.
Try this command:
sudo apt-get install libxcb-xinerama0

or
sudo apt-get install -qq libglu1-mesa-dev libx11-xcb-dev '^libxcb*'

https://forum.qt.io/topic/93247/qt-qpa-plugin-could-not-load-the-qt-platform-plugin-xcb-in-even-though-it-was-found/99


Add FsEmployee GET jwt token endpoint

Update Request interface to handle GET along with POST requests
Update README and gemspec

Coverage decreased (-1.6%) to 98.413% when pulling be66256cd9ab7dcf314629136a81174747a637d3 on jwt-token into c8cf1a1cd7cdf02bd186b3c4922d597c3a1eda14 on master.

Coverage remained the same at 100.0% when pulling 7ceb8db38ccecf8473624bf85f79909f0d75a194 on jwt-token into c8cf1a1cd7cdf02bd186b3c4922d597c3a1eda14 on master.

Coverage decreased (-0.8%) to 99.187% when pulling 3a44479d20c79001532872a815ac96fdfd120991 on jwt-token into c8cf1a1cd7cdf02bd186b3c4922d597c3a1eda14 on master.

Coverage decreased (-0.8%) to 99.187% when pulling ac61f867b2c995dcbb91f6be559a10bd1a5dbe01 on jwt-token into c8cf1a1cd7cdf02bd186b3c4922d597c3a1eda14 on master.

Coverage remained the same at 100.0% when pulling 71dbc9614e845ccace66b6b3f9ff099b903fb717 on jwt-token into c8cf1a1cd7cdf02bd186b3c4922d597c3a1eda14 on master.

Coverage remained the same at 100.0% when pulling 9c6068a1f07285ea17ba65a04732a9e7fc0b423d on jwt-token into c8cf1a1cd7cdf02bd186b3c4922d597c3a1eda14 on master.

Coverage remained the same at 100.0% when pulling 35c4cc5c4fc94e85539ab950e8c30fd7638e702d on jwt-token into c8cf1a1cd7cdf02bd186b3c4922d597c3a1eda14 on master.

Coverage remained the same at 100.0% when pulling 0750319d956c6ed1b4dd1724676731056c825a14 on jwt-token into c8cf1a1cd7cdf02bd186b3c4922d597c3a1eda14 on master.

Coverage remained the same at 100.0% when pulling 49fc79f284836fe58267de1916dc26262546feb9 on jwt-token into ad2d5a294b10a694ab155be2cf457a9f161ddda7 on master.


Redirect after Login not working

The official Kadira Documentation and countless blog posts publish the following code as one way to redirect to a given path.
I am using Flow Router 2.10.0 and Meteor 1.2.1.
server.js

Accounts.onLogin(function() {
FlowRouter.go('/dashboard');
});

Result:
Router: undefined
As Accounts.onLogin can work on both "Client" and "Server", could you please add this info to your documentation? I guess as Flow Router supports client routing only, the above code would not work.

FlowRouter only work on the client side. Not sure on the documentation you are referring to.


Create slowmode.cc.lua

slowmode per user command
hopefully i've PR'ed it correctly

Hey, thanks for the PR. Some comments though:

How is this different from Discord's slowmode / similar implementation in automod(v2)?
Please follow the guidelines laid out here.

I think this is a per user thing while discord slowmode is for all roles (execpt manage messages etc). In that way it is quite different. Much different implementation as well because this deletes messages while actual slowmode prevents sending them altogether.

yeah it is per user. And yes, it deletes the message. It is possible to prevent them sending messages, but that requires giving a role, and some people just don't like even more roles.

You need to just format it according to this i guess @JordiHakimZiyech
Link : https://github.com/Jo3-L/yagpdb-cc/blob/master/CONTRIBUTING.md#leading-comment-syntax

In addition to what Satty said, you should put this in a new folder, maybe moderation or something. Concept / usage is not suitable for any of the current folders other than util, and that's a stretch as well.
Also, looking at the code,
{{ $time := 10 }}
{{ if eq (toInt (dbGet 2 "slowmode").Value) 0 }}
{{ dbSetExpire 2 "slowmode" 1 $time }}
{{ else }}
{{ if eq (toInt (dbGet 2 "slowmode").Value) 1 }}
{{ deleteTrigger 0 }}
{{ end }}
{{ end }}

Does not seem to be user-based (though that could be changed). I'll be leaving this unmerged for now.

yeah. My bad. i'll change it in a bit and i'll drop it in a new file then

Closing due to inactivity, please feel free to make a new PR if you wish.


lfe_file_flush and multiple open file descriptors for the same file caching.

I am the author of a port of littlefs for the esp32, and am currently trying to resolve this issue:
https://github.com/joltwallet/esp_littlefs/issues/18
problematic code snippet copied here for easy viewing:
uint8_t buf1[1] = {'a'};
uint8_t buf2[1] = {};
int fd1 = open("/fs/file.bin", O_RDWR);
assert(fd1 >= 0);
int fd2 = open("/fs/file.bin", O_RDWR);
assert(fd2 >= 0);
lseek(fd1, 0, SEEK_SET);
write(fd1, &buf1, sizeof(buf1));
fsync(fd1);
lseek(fd2, 0, SEEK_SET);
read(fd2, &buf2, sizeof(buf2));
assert(buf1[0] == buf2[0]);  // this fails sometimes.

I have narrowed down the issue a little bit. After the fsync command, in the line read(fd2, &buf2, sizeof(buf2));, the file its pointing at incorrectly reports file->ctz.size == 0 when it should be 1. Any idea on whats going on? Thanks!

I guess what this question really boils down to, is "Can LittleFS handle the same file being opened multiple times concurrently."

Could be related: https://github.com/littlefs-project/littlefs/issues/458

Hello! Interesting project, thanks for putting in the work to port/support it.
Ah yeah, this situation is a bit complicated for littlefs. I've seen questions raised about it's behavior before, but from what I recall it hasn't been a blocker.
In littlefs, when you open the same file multiple times, each lfs_file_t gets a COW snapshot of the underlying file. Writing to one open lfs_file_t does not affect any of the other open lfs_file_ts. You can seek/read/write on other open lfs_file_ts as though the file was unmodified. The winner is the last lfs_file_t that is sync/closed.
The reason for this behavior is two-fold:

We need to worry about memory management. Unlike OS-backed filesystems, we don't have an internal file-descriptor table, so we can't easily deduplicate multiple open lfs_file_ts. We do have a linked-list keeping track of open files, so you it's conceivable that we could update all of the other open lfs_file_ts on every write. But that would add quite a bit of code size for a less-common use case.

Semantically, this matches how the underlying filesystem works. littlefs's files are transactional, so during lfs_file_sync, the on-disk state jumps from A to B without intermediary state. This helps write power-resilient programs as you don't have to worry about a half-written file.
Open files have a different snapshot from the on-disk file in the same way open files have different snapshots from each other.
This behavior is a bit neutered since lfs_file_close implicitly syncs. I've considered adding a lfs_file_cancel to allow undoing any amount of file writing, but have been focusing on bug fixes/stability rather than new features.

If you're seeing inconsistent behavior, that definitely is a bug and shouldn't be happening.
I'm still thinking about it, but right now it seems like deduplicating open files may actually make more sense to be implemented in a VFS layer like yours. Open to other thoughts though.

so far in my vfs layer I've implemented deduplication of lfs_file_t, but each file descriptor would need to externally store the current position and mode of the file. Before each operation these values need to be set these flags in the common lfs_file_t. Does this sound reasonable, or would you recommend a different method?

Hmm, good point, that does start getting complicated. Another option would be to close+reopen the other lfs_file_ts during a sync, however currently that would require keeping track of the full filepath.
Thinking about it more, it looks like your example revolves around fsync as the point where the files become consistent. It might not be unreasonable to iterate over open files and force consistency + drop caches during lfs_file_sync. It would have the same cost as reopening the files but without needing to store the filepath.
Downside: any changes to other snapshots would be lost. Maybe the current behavior could be chosen by a LFS_O_TRANSACTIONAL flag or similar?
Though I'm still not sure about what the code cost would be.

(A better filesystem would check that caches are in-sync, rather than dropping them, but I think it's safe to say this is one case where we'd rather tradeoff performance for code cost)

Ran into an old related issue, will need to also consider lfs_file_setattr behavior: https://github.com/littlefs-project/littlefs/issues/183#issuecomment-515627155

It's a big change-set, so it may take a bit to bring in, but I have pushed up a set of changes that should fix there here: https://github.com/littlefs-project/littlefs/pull/513


[Feature] Allow add extra traefik middewares in role config

Now, traefix  middlewares is hardcoded as #{traefik_service}-retry@docker, if I need add extra middlewares, I have to know what #{traefik_service} is, from different destination traefik_service have different values, then have to set this extra middlewares in all destination config files.
https://github.com/mrsked/mrsk/blob/a7d869ad40b2a39286139f5c110d679602ba160d/lib/mrsk/configuration/role.rb#L96
    def traefik_labels
      if running_traefik?
        {
          # Setting a service property ensures that the generated service name will be consistent between versions
          "traefik.http.services.#{traefik_service}.loadbalancer.server.scheme" => "http",

          "traefik.http.routers.#{traefik_service}.rule" => "PathPrefix(`/`)",
          "traefik.http.middlewares.#{traefik_service}-retry.retry.attempts" => "5",
          "traefik.http.middlewares.#{traefik_service}-retry.retry.initialinterval" => "500ms",
          "traefik.http.routers.#{traefik_service}.middlewares" => "#{traefik_service}-retry@docker"
        }
      else
        {}
      end
    end

What if we could define extra middlewares in config/deploy.yml like this:
before
# config/deploy.yml

service: myapp
servers:
  web:
    hosts:
      - <IP_ADDRESS>
    labels:
      traefik.http.routers.myapp-web.middlewares: myapp-web-retry,cloudflarewarp

# config/deploy.staging.yml

service: myapp
servers:
  web:
    hosts:
      - <IP_ADDRESS>
    labels:
      traefik.http.routers.myapp-web.middlewares: myapp-web-staging-retry,cloudflarewarp

after
servers:
  web:
    hosts:
      - <IP_ADDRESS>
    traefik:
      middlewares:
      - cloudflarewarp

@xiaohui-zhangxh As a workaround, you could just define another router with higher priority and configure the middlewares you want.

servers:
  web:
    hosts:
      - <IP_ADDRESS>
    options:
      network: sourcingforce
    labels:
      traefik.http.middlewares.ratelimit.ratelimit.average: 100
      traefik.http.middlewares.ratelimit.ratelimit.burst: 50
      traefik.http.middlewares.retry.retry.attempts: 5
      traefik.http.middlewares.retry.retry.initialinterval: 100ms
      traefik.http.routers.web.rule: Host(`sourcingforce.shop`) && PathPrefix(`/`)
      traefik.http.routers.web.entrypoints: websecure
      traefik.http.routers.web.tls.certresolver: letsencrypt
      traefik.http.routers.web.middlewares: ratelimit,retry

Closing as we'll be removing Traefik in v2.0

@djmb any idea what will the reverse proxy look like without Traefik? Just to get an idea ahead if the current config of Kamal will need any changes. I searched but could not find any discussion on this on the repo. Thanks a lot.


luajc error

Hello, some Lua scripts can run on luaj, but they give compilation errors when using luajc. Could you leave a contact, like your QQ number or email, so I can send you the scripts to take a look at? It’s the source code.

来信已收到，阅览后会尽快回复，谢谢！！

Hello mwhpeter, you can paste your code on your comment or send it to my email -<EMAIL_ADDRESS>thanks.

I have already sent the code file to your email. Thank you!


Create Age Measurement Datum

Initial Proposed Definition:
A time measurement datum that is the result of measuring the duration of a temporal region onto which part or all of a history projects, typically beginning with the left process boundary of the history and ending with the time that the measurement was made.
Current weakness: it counts a measurement of the middle 20 years of some 80 year-old person’s life as an age.
Cannot restrict beginning of interval to left boundary of history because that excludes age since birth.  Saying that it’s the time the entity has instantiated a particular universal works only if we count human beings at/after time of birth but not fetus before.
Axiom:
‘time measurement datum’ and (‘is about’ some (‘one dimensional temporal region’ and (‘is occupied by’ some (‘is part of’ some history)))) and (‘has measurement unit label’ only ‘time unit’)

Class created URI: OMRSE_00000080


#159180892- Deploy to heroku

Pull Request Test Coverage Report for Build 63

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 60:
0.0%

Covered Lines:
15

Relevant Lines:
15

💛  - Coveralls


Enable Homebridge to set unique serial number for every device

Problem

HomeKit requires accessories to have unique serial numbers. It is robust enough to not break if an accessory has a non unique serial numbers for now, but that shouldn’t be relied on. It could break in the future. There is at least one solution, Controller, that depends on Homekit accessories having unique serial numbers. This has also caused other applications issues such as Home Assistant and Eve.
None of the homebridge plugins I use or have searched allow you to set the serial number.
Homebridge never required plugins to make this work, even Verified plugins.
Homebridge already implements uuids for every accessory for internal purposes, but those are not exposed to homekit.
One solution is to use these serial numbers for homekit to solve an underlying problem.

Proposed solution
I’d like to homebridge to provide a unique serial number for each accessory. Allowing the user to override that might be nice, but not essential.
config.json could have a new block that associates accessories and Serial numbers. These could be defaulted to unique values but editable to the user. If edited of course that could cause automation rules to break, etc. but the user would have the choice and if it were unique then that won't happen often.
If a plug-in supports serial numbers then the ID could be left out, duplicated, or this new association could take priority over what the plugin says.
Another approach is to use the UUIDs homebridge already creates for the Accessory page when an accessory of the plug-in doesn’t provide one. (Thanks to @rcoletti on discord for suggesting this.)
Alternate approach
Leave this to the thousands of homebridge plugins. Problem: that won’t ensure that any particular user gets unique serial numbers on every accessory. Homebridge is the best place to solve this problem.

This seems to be an issue with the iOS app (Controller in particular) and not Homebridge/Homekit.
This is also the issue of the plugin itself and I suggest contacting the plugin creator to fix this.
If the plugin doesn't assign a serial number characteristic (unique or otherwise) on accessory setup, then the default name will be something like "Default-serialnumber". That default value is already a convenience afforded by Homebridge, but Homebridge isn't in the business of:

assigning meaningful visible unique serial number values beyond being told to do that by the plugin
accommodating external iOS application missing or strict requirements

The keyword here to remember is the word "bridge", and that's exactly what Homebridge is, a bridge to HomeKit, a messenger .. don't kill it.

I have to respectfully, but strongly disagree.

This isn’t a requirement by some 3rd party app. HomeKit devices are supposed to have unique IDs. The fact that it doesn’t break without them doesn’t mean it isn’t wrong.
Putting the onus on plugins means this will probably never be done. It isn’t even required for a plug-in to be verified.
Homebridge already knows about unique accessories and assigns them unique IDs for the accessory layout. Why can’t that be used as the accessory ID for bonjour purposes as well?
Who said anything about killing anything? This would bring homebridge accessories more in align with HomeKit certified accessories without creating a huge burden on plug-in developers.

I'll just link to this overly lengthy discussion on Discord here for my reasoning.

Please don’t close.

I still would love to see this addressed.

I want to use Homebridge with Home Assistant, and the lack of serial numbers is preventing me from discovering devices that I can see in iOS Home.
This issue on the Home Assistant/ Homekit Controller project seems to make a good argument for why it's reasonable to expect unique serial numbers. https://github.com/home-assistant/core/issues/34121
I'm seeing if I can figure out a solution at the plugin level for the Paradox Alarm plugin I'm using https://github.com/e-mcgee/paradox_platform/issues/38


Provide a hint regarding escaping slashes for windows paths in the flags.json

Problem you would like to solve
To provide an SSL certificate to connect to a self-managed Zeebe installation, developers can add the path to the certificate in the flags.json file.
However, the slashes in the path must be escaped.
This is not clear to every user, and some fail on it (see attached support request).
{
    "zeebe-ssl-certificate": "C:\\Users\\me\\Downloads\\camunda-modeler-5.6.0-win-x64\\cert\\mycert.crt"
}

Proposed solution
Escaping slashes for Windows file paths should be documented in a predefined flags.json, or somewhere else, which does not require users to find themselves and read the documentation upfront. The documentation could be linked in an options menu in the Modeler, for example, or in the deploy popup, or somewhere else in the existing user journey.
Cf. Windows Terminal settings.json documentation: https://learn.microsoft.com/en-us/windows/terminal/customize-settings/profile-general
Additional context
Cf. https://jira.camunda.com/browse/SUPPORT-15806

@christian-konrad This is not mandated by the editor, but by the surroundings:
If I call the modeler via command line I can absolutely use the \ without escaping:
Camunda Modeler.exe --zeebe-ssl-certificate C:\Users\me\Downloads\camunda-modeler-5.6.0-win-x64\cert\mycert.crt

In the context of JSON you need to escape \, that is just how it works. I suggest that we update the documentation, i.e. by adding a dedicated Windows version of such flag.

@nikku thanks for the clarification, then I would prefer updating the documentation and making it easier accessible, as well as to provide https://github.com/camunda/camunda-modeler/issues/3467

Moving to ready, as this is an easy pick.

@smbea I'm proposing https://github.com/camunda/camunda-platform-docs/pull/1720 to fix this, because Windows seems to be most complicated to configure. Feel free to build on top or disregard that PR.


[DEP0123] DeprecationWarning

I installed the Samsungtv-control in my Hoobs server (BCM2835 - Pi 3 Model B) with Node v12.13.1 and NPM v6.14.8. My Samsung TV is 2014 model, note running Tizen. Does it support?

/.hoobs/etc $ npx homebridge-samsungtv-control pair2 <IP_ADDRESS> 90:F1:AA:B1:9D:48
Ok... sending the pairing request to your tv. Please click allow when asked
(node:10561) [DEP0123] DeprecationWarning: Setting the TLS ServerName to an IP address is not permitted by RFC 6066. >This will be ignored in a future version.
TV is off or unavalible
/home/hoobs/.hoobs/node_modules/samsung-tv-control/lib/samsung.js:66
throw new Error('Error send Key');
^

Error: Error send Key
at /home/hoobs/.hoobs/node_modules/samsung-tv-control/lib/samsung.js:66:23
at WebSocket. (/home/hoobs/.hoobs/node_modules/samsung-tv-control/lib/samsung.js:299:17)
at WebSocket.emit (events.js:210:5)
at ClientRequest. (/home/hoobs/.hoobs/node_modules/samsung-tv-control/node_modules/ws/lib/websocket.js:551:15)
at ClientRequest.emit (events.js:210:5)
at TLSSocket.socketErrorListener (_http_client.js:406:9)
at TLSSocket.emit (events.js:210:5)
at emitErrorNT (internal/streams/destroy.js:92:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
at processTicksAndRejections (internal/process/task_queues.js:80:21)

What does it mean? Not supported anymore? Thanks for the advice!

Can you try to pair with pair1? Kind regards

Have the same issue with pair2 sending a pair notification but not recognizing after I accept it on the TV.


Check for presence of package.json before running any command

We want to make sure we're in a node project before running these commands otherwise we'll run into "undefined behavior"

This should still exist, though as a note, not all the commands are for JS anymore.


D435 UVC Issue(s)

Required Info

Camera Model
D435

Firmware Version
<IP_ADDRESS>

Operating System & Version
Ubuntu <IP_ADDRESS> LTS

Kernel Version (Linux Only)
5.4.0-152-generic

Platform
PC

SDK Version
2.54.1

Language
C/C#

Segment
Agritech

I was unsure whether to post this here since I use precompiled libs installed through apt.  I submitted an enquiry through Intel Zendesk but they told me to upgrade to 5.8 kernel because Ubuntu no longer supports 5.4.  Upgrading the kernel is a worst case scenario for us because our systems are on site across Europe and running headless.  The risk of losing remote access and requiring a visit is a worry.  Also, the 2.54 release page here on Github suggests that 2.54 is compatible with a 5.4 kernel.
RealSense libs are installed pre-built through apt:
librealsense2-dbg/focal,now 2.54.1-0~realsense.9590 amd64 [installed]
librealsense2-dkms/focal,now 1.3.19-0ubuntu1 all [installed]
librealsense2-gl/focal,now 2.54.1-0~realsense.9590 amd64 [installed]
librealsense2-udev-rules/focal,now 2.54.1-0~realsense.9590 amd64 [installed,automatic]
librealsense2-utils/focal,now 2.54.1-0~realsense.9590 amd64 [installed]
librealsense2/focal,now 2.54.1-0~realsense.9590 amd64 [installed]

Something about the USB subsystem/D435 interaction seems to be crashing our software with a seg fault.  We use try_wait_for_frames with a one second timeout.  dmesg is full of UVC errors:
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Failed to query (GET_CUR) UVC control 4 on unit 3: -32 (exp. 2).
uvcvideo: Failed to query (GET_CUR) UVC control 2 on unit 3: -32 (exp. 1).
uvcvideo: Non-zero status (-71) in video completion handler.
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Non-zero status (-71) in video completion handler.
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
MyBinaryName[40937]: segfault at 18 ip 00007f8da2375fc4 sp 00007f8d8d7284e8 error 4 in libpthread.so.0[7f8da2371000+11000]
Code: 7e 8f 45 31 d2 ba 01 00 00 00 be 01 00 00 00 48 89 ef b8 ca 00 00 00 0f 05 e9 73 ff ff ff e8 13 b7 ff ff 0f 1f 00 f3 0f 1e fa <8b> 47 10 89 c2 81 e2 7f 01 00 00 90 83 e0 7c 75 7b 53 48 83 ec 10
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Failed to query (GET_CUR) UVC control 4 on unit 3: -32 (exp. 2).
uvcvideo: Failed to query (GET_CUR) UVC control 2 on unit 3: -32 (exp. 1).
uvcvideo: Non-zero status (-71) in video completion handler.
uvcvideo: Failed to query (GET_CUR) UVC control 1 on unit 3: -32 (exp. 1024).
uvcvideo: Non-zero status (-71) in video completion handler.

When I run a gdb backtrace of the core dump against a debug version of our binary I see:
#0  0x00007f8da2375fc4 in pthread_mutex_lock () from /home/myusername/lib/libpthread.so.0
#1  0x00007f8da854c81d in __gthread_mutex_lock (__mutex=0x8)
    at /usr/include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:749
#2  __gthread_recursive_mutex_lock (__mutex=0x8) at /usr/include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:811
#3  std::recursive_mutex::lock (this=0x8) at /usr/include/c++/9/mutex:106
#4  std::lock_guard<std::recursive_mutex>::lock_guard (__m=..., this=<synthetic pointer>)
    at /usr/include/c++/9/bits/std_mutex.h:159
#5  el::base::RegisteredLoggers::get (this=0x0, id=..., forceCreation=false)
    at ./third-party/easyloggingpp/src/easylogging++.cc:1894
#6  0x00007f8da854ccbd in el::base::Writer::initializeLogger (this=0x7f8d8d728940, loggerId=...,
    lookup=<optimized out>, needLock=<optimized out>) at ./third-party/easyloggingpp/src/easylogging++.h:2608
#7  0x00007f8da854d085 in el::base::Writer::construct (this=this@entry=0x7f8d8d728940, count=count@entry=1,
    loggerIds=loggerIds@entry=0x7f8da858c4c6 "librealsense") at /usr/include/c++/9/ext/new_allocator.h:80
#8  0x00007f8da84eca02 in librealsense::uvc_sensor::<lambda(librealsense::platform::stream_profile, librealsense::platform::frame_object, std::function<void()>)>::operator()(librealsense::platform::frame_object, std::function<void()>) (
    __closure=0x564ea6b64360, f=..., continuation=..., p=...) at /usr/include/c++/9/bits/stl_vector.h:94
#9  0x00007f8da84eda9e in std::_Function_handler<void(librealsense::platform::stream_profile, librealsense::platform::frame_object, std::function<void()>), librealsense::uvc_sensor::open(const stream_profiles&)::<lambda(librealsense::platform::stream_profile, librealsense::platform::frame_object, std::function<void()>)> >::_M_invoke(const std::_Any_data &, librealsense::platform::stream_profile &&, librealsense::platform::frame_object &&, std::function<void()> &&) (
    __functor=..., __args#0=..., __args#1=..., __args#2=...) at /usr/include/c++/9/bits/move.h:182
#10 0x00007f8da843a082 in std::function<void (librealsense::platform::stream_profile, librealsense::platform::frame_object, std::function<void ()>)>::operator()(librealsense::platform::stream_profile, librealsense::platform::frame_object, std::function<void ()>) const (__args#2=..., __args#1=..., __args#0=..., this=0x564ea6671390)
    at /usr/include/c++/9/bits/std_function.h:683
#11 librealsense::platform::v4l_uvc_device::upload_video_and_metadata_from_syncer (this=0x564ea6671230, buf_mgr=...)
    at ./src/linux/backend-v4l2.cpp:1579
#12 0x00007f8da843bf8f in librealsense::platform::v4l_uvc_device::poll (this=0x564ea6671230)
    at ./src/linux/backend-v4l2.cpp:1505
#13 0x00007f8da843cfc0 in librealsense::platform::v4l_uvc_device::capture_loop (this=0x564ea6671230) at ./src/linux/backend-v4l2.cpp:1937
#14 0x00007f8da225fde4 in ?? () from /home/myusername/lib/libstdc++.so.6
#15 0x00007f8da2373609 in start_thread () from /home/myusername/lib/libpthread.so.0
#16 0x00007f8da1f4a163 in clone () from /home/myusername/lib/libc.so.6

I haven't applied any kernel patches.  Hopefully it is as simple as doing that.  All sage advice warmly welcomed!

Correction: C/C++

Hi @Simon-McD  I have not heard of kernel 5.4 becoming unsupported by Ubuntu, though the link below states that 5.4 has an end of life date of December 2025.
https://www.kernel.org/releases.html#longterm
Applying a kernel patch when building librealsense from source code is not compulsory but can cause problems, such as hardware metadata timestamps not being supported.
If you are reliant on a particular kernel and updating it would be the worst case scenario, you can avoid this by building librealsense from source code with the CMake build flag -DFORCE_RSUSB_BACKEND=true to bypass the kernel so that librealsense can operate without kernel patching and without dependence on a particular Linux version or kernel version.  RSUSB is best suited to single-camera projects though, with a kernel-patched build being ideal for applications that use multiple cameras.

MartyG, thanks for your prompt reply.  These are single, standalone camera setups.  I guess I will have to try and build myself with the kernel bypass option enabled.  This may take a while.

I note that you are currently installing packages with apt instead of building from source code.  With package installation it is not necessary to apply a kernel patch because the patch is bundled in the packages.

I have built the sources successfully on my dev machine having followed installation.md.  What is the best way to install this remotely on a test machine that has pre-built libs installed via apt (as described and listed in my initial post)?

Ok, I have it on a test machine.  I will let it run for a day or two and check dmesg for both UVC errors and seg faults in our binary. Looks fine so far, not a single UVC error.  Before the new lib the errors started immediately our app was launched.  I will go quiet for a couple of days and return with updates later.  Please nudge me if you feel I have left the issue dangling too long.
Thank you so much for your help!

You are very welcome.  If I do not hear from you then I will check with you for an update in a week from now.  Good luck!

MartyG, we have good and bad news.  The good news is that the RSUSB_BACKEND build has completely removed all the UVC errors that we were seeing in dmesg.  The bad news is that the seg faults still occur and take our software down.  It seems the two may not be related.  Unfortunately, it may be necessary to focus on the backtrace of the core dump that I left in my initial post and understand why it is crashing.  Sorry.

In the 18 hours or so since I left the test running we had five crashes.  Is there any mileage in leaving RS Viewer running with the same streams we would normally have in our software and with logging switched on?  I also plan to roll back to 2.51 on another test system to check if it was our switch from 2.51 to 2.54 that introduced the issue.  Are these reasonable steps?  Are there other steps I could consider?

I am now unable to revert my dev machine to 2.51.  After purging all librealsense libs and removing the downloaded repo and rebooting, then cleaning my binary project and rebuilding I get a SIGABORT with the following RS error:
"terminate called after throwing an instance of 'rs2::invalid_value_error'
what():  API version mismatch: librealsense.so was compiled with API version 2.51.1 but the application was compiled with 2.54.1! Make sure correct version of the library is installed (make install)"
However, these are the libs apt knows to be installed:
librealsense2-dbg/focal,now 2.51.1-0~realsense0.7526 amd64 [installed,upgradable to: 2.54.1-0~realsense.9590] librealsense2-dev/focal,now 2.51.1-0~realsense0.7526 amd64 [installed,upgradable to: 2.54.1-0~realsense.9590] librealsense2-dkms/focal,now 1.3.19-0ubuntu1 all [installed] librealsense2-gl/focal,now 2.51.1-0~realsense0.7526 amd64 [installed,upgradable to: 2.54.1-0~realsense.9590] librealsense2-net/focal,now 2.51.1-0~realsense0.7526 amd64 [installed,upgradable to: 2.53.1-0~realsense0.8250] librealsense2-udev-rules/focal,now 2.51.1-0~realsense0.7526 amd64 [installed,upgradable to: 2.54.1-0~realsense.9590] librealsense2-utils/focal,now 2.51.1-0~realsense0.7526 amd64 [installed,upgradable to: 2.54.1-0~realsense.9590] librealsense2/focal,now 2.51.1-0~realsense0.7526 amd64 [installed,upgradable to: 2.54.1-0~realsense.9590]
and these are the libs that "locate librealsense2.so" can find:
/home/agsenze/lib/librealsense2.so.2.51 /home/agsenze/libQt6_3/librealsense2.so.2.50 /home/agsenze/pretendHome/home/agsenze/lib/librealsense2.so.2.50 /home/agsenze/pretendHome/home/agsenze/lib/librealsense2.so.2.51 /home/agsenze/temp/hv/lib/librealsense2.so.2.50 /home/agsenze/temp/socv/home/agsenze/lib/librealsense2.so.2.50 /usr/lib/x86_64-linux-gnu/librealsense2.so /usr/lib/x86_64-linux-gnu/librealsense2.so.2.51 /usr/lib/x86_64-linux-gnu/librealsense2.so.2.51.1
Using ldd on my binary with grep librealsense gives
librealsense2.so.2.51 => /lib/x86_64-linux-gnu/librealsense2.so.2.51 (0x00007fee6c707000)
I have no idea what is persisting a dependence on 2.54, despite the library not being on the machine.  I can't build a usable binary, please help.

Instead of using the Viewer log, it may be more relevant to your project to enable verbose (more detailed) UVC driver logging in dmesg using the instructions at the link below.
https://dev.intelrealsense.com/docs/troubleshooting#uvc-video-module-traces
Looking at your uvcvideo log, the error segfault at 18 ip is extremely rare and I could find only one other case in which it has occurrred.  A RealSense team member at https://github.com/IntelRealSense/librealsense/issues/2029#issuecomment-414712195 suggested adding a hardware_reset() mechanism to reset the camera when the script is run to deal with this error.

If you installed librealsense from packages then use the purge command mentioned earlier.
If librealsense was built from source code then go to the 'build' directory of the 2.51.1 source code folder (if it still exists) and input the command below to uninstall librealsense and clean up CMake:
sudo make uninstall && make clean
If neither of those approaches work then a clean wipe and reinstall of the test computer is likely the only remaining option to clear the problem.

Ok, thanks.

The hardware_reset() instruction only resets (disconnects and reconnects) the camera hardware, not the application.  So it would not be helpful for recovering from a segfault.  Performing a hardware_reset() when the application is first run, before the error occurs, may improve the camera's stability.  It sounds as though you already have a recovery mechanism implemented though.
Looking at your backtrace log, I observe that it begins on the first line with a pthread_mutex_lock message.  As a general rule for debugging, I start with the first line of the log in case an error at the start causes a cascade failure that registers errors with components that do not actually have a problem.  This helps to avoid investigating false leads.
In a segmentation fault case at https://github.com/IntelRealSense/librealsense/issues/10112 with the pthread_mutex_lock message, I recommended checking for the possibility of a memory leak in the application.

To my understanding, frame #0, the first line in the backtrace, is the last code executed before the seg fault ( https://sourceware.org/gdb/onlinedocs/gdb/Backtrace.html ).  So the first call in the backtrace that is attributable is:
in librealsense::platform::v4l_uvc_device::capture_loop (this=0x564ea6671230) at ./src/linux/backend-v4l2.cpp:1937
Which calls the line above itself in the trace, and so on.  This is a single-threaded app so the origin of the pthread_mutex_lock issue is ultimately librealsense::platform::v4l_uvc_device::capture_loop.  I will look inside backend-v4l2.cpp tomorrow.

Thanks very much.  I look forward to your next report.  Good luck!

I have found the reason for our app crash and, you will be pleased to hear, it has nothing to do with librealsense2 nor UVC errors.  It seems that the process that launches and monitors our app switched to a different Linux user at the same time we migrated to 2.54 🤦 This different user is the basis of the crash.  I believe the reason it always happened while librealsense2 is polling the camera/waiting for a frame is because that is where it spends most of its time in our framewise handling tight loop.
Sorry for wasting your time, but we can console ourselves that I have learned quite a lot during this conversation.  I can ignore the dmesg UVC errors (as I always used to) and I can now easily switch between pre-built libs and self-built (using the FORCE_RSUSB_BACKEND switch if I want to get rid of the UVC errors).  Many thanks for your patient and helpful support, MartyG, you may now close this issue 👍

It's no trouble at all.  I'm pleased that you found the cause and are satisifed with the outcome of the issue.  as you suggest, i will close it.  Thanks very much for the update!  :)


Bump version to reflect previous change

I forgot to (/didn't know to) bump the package version to in the earlier PR I merged (https://github.com/coursera/courscala/pull/14).
I think 2.10.5 as a supported scala version is a lie and no one has built courscala for it recently. When I tried to, it complained about our use of Future.fromTry which does not exist in 2.10 (https://github.com/scala/scala/blob/v2.10.0/src/library/scala/concurrent/Future.scala).

lgtm


Different video length

Hello,
I am attempting to train your model using the MMSE-HR and V4V datasets. However, I encountered an error, which I believe is due to the varying lengths of the videos.
I noticed the following TODO comment in the code:
TODO: 60 means the video length of each video is 60s. If each video's length in your dataset is another value (e.g., 30s), you should use that value.

Given that the videos in my dataset have different lengths, how should I handle it? Is there a recommended approach for dealing with videos of varying lengths?
Thank you for your assistance!

Hi, your dataset can contain videos with different lengths when using the code. You can use the average video length of your dataset. For better understanding, you can check the H5Dataset in utils_data.py.

Thank you for your response.
However, when I tried to reproduce the HR results on MMSE-HR as described in the paper, I encountered an issue where the model started producing NaN values after a few iterations. I have double-checked the experimental settings mentioned in the paper.
Could you please advise on how to resolve this issue?

Hi, I am unsure about the reason since I didn't encounter this issue before. Maybe you can check the data type and values in your h5 files. You may also check whether data is correctly loaded in each iteration. Since MMSE-HR dataset is 25fps, you could also check if fps is correctly set up. Did you encounter this problem on other datasets?

I found the error in the h5 files and managed to fix it! Thank you for your suggestions!


EVP_CIPHER_CTX_copy in OSSL 3.0 not functioning as expected?

I'm using OpenSSL 3.0.2 and I'm copying an EVP ctx (chacha20) to a new context with EVP_CIPHER_CTX_copy() but I'm getting an error of
40C7A7B06B7F0000:error:030000BE:digital envelope routines:EVP_CIPHER_CTX_copy:not able to copy ctx:../crypto/evp/evp_enc.c:1363:
Which, I think, is indicating that the following block in evp_enc.c is raising the error:
    if (in->cipher->dupctx == NULL) {
        ERR_raise(ERR_LIB_EVP, EVP_R_NOT_ABLE_TO_COPY_CTX);
        return 0;
    }

The code calling EVP_CIPHER_CTX_copy is called from
initialize_threadData(struct threadData * td, struct chachapoly_ctx * ctx)
{
	memset(td,0,sizeof(*td));
	if ((td->main_evp = EVP_CIPHER_CTX_new()) == NULL ||
	    (td->header_evp = EVP_CIPHER_CTX_new()) == NULL)
		goto fail;
	if (!EVP_CIPHER_CTX_copy(td->main_evp, ctx->main_evp)) {
		ERR_print_errors_fp (stderr);
		goto fail;
	}
	if (!EVP_CIPHER_CTX_copy(td->header_evp, ctx->header_evp))
		goto fail;
	if (EVP_CIPHER_CTX_iv_length(td->header_evp) != 16)
		goto fail;
	return 0;
 fail:
	free_threadData(td);
	return -1;
}

This function does work under OpenSSL 1.1. Has there been some change in functionality or methodology to copy the ctx? I should point out that the ctx does have additional data attached to it via EVP_CIPHER_CTX_set_app_data().
Any ideas would be helpful.
Thanks!

chacha20 doesn't support the dupctx call, it ought to.

Crap. I was hoping that wouldn't be the case. Is it possible to extend the default provider to add the functionality? I wrote a custom provider (multi threaded AES ctr) once but I don't know the limitations.

It should be possible to add it.  I suspect fairly easily.

So being that I've not extended a provider before can you point me some place? I'm feeling it's different than writing a new one.

What's needed is an implementation of the OSSL_FUNC_CIPHER_DUPCTX entry for chacha20.
The relevant file source is: providers/implementations/ciphers/cipher_chacha20.c.
The PROV_CHACHA20_CTX structure will need duplication, there are pointers in the base so some uprefs etc.
Also an entry added to ossl_chacha20_functions.
There is hardware support on some platforms which is probably the trickiest part (because it's hard to test).

Is it possible to do that without actually touching the OpenSSL code? Sort of like EVP_CIPHER_meth_set to override the defined functions in providers/implementations/ciphers/cipher_chacha20.c? Now that I think about that I'm guessing opacity will make that impossible. We'd need it to be something like a settable parameter and there isn't anything like that I can see. So for an application we are distributing via binary packages we'd actually need to statically links against a custom implementation of OpenSSL. Which isn't going to be feasible in this case. If I'm mistaken about that please let me know.
If that's the case may I make this a feature request? In the meantime, my team is going to need to look how to deal with this. As an aside - what we are doing is making a parallelized implementation of Chachapoly1305 for a high performance version of OpenSSH called HPN-SSH. We precompute the keystream data on a seperate thread and drop it into an array like struct. When we need to run a en/decipher data we can simply xor against the existing keystream. This is getting us a 15 to 25% improvement in throughput by reducing the load on the main thread. We only really need one additional thread to do this on most systems but we do need to copy the main ctx to the thread ctx.

If that's the case may I make this a feature request?

IMO this is really a bug that should be fixed (it is a regression). I personally think this would be ok to backport to the 3.1/3.0 branches.
Adding "help wanted" label

FWIW this issue also impacts AES-GCM

if you open a separate issue for that, I can take a look at it

I wasn't sure if that was desired, it was also discussedon https://github.com/openssl/openssl/issues/21853#issuecomment-1694752983 but losed as a dupe of this one.
If the OpenSSL maintainers prefer, I'm happy to open a fresh ticket though!

I think we do not need a separate ticket - I see that all AEAD ciphers are missing dupctx.

I appreciate you working on this. I'm not sure when I'll have to test it out as we changed our code base to not depend on it. That said, any estimation on when this might make release status?

(For myself, I'll test it this evening)


driver_matrix: Endpoint for querying global driver results

We need to create an endpoint to query driver results mapped as driver_version:scylla_version to provide same table as datastax does for their driver support (where they map their versions to dse/cassandra versions in a nice matrix table)

https://github.com/scylladb/argus/pull/304


Update index.ts

user name: nl
ip addres:<IP_ADDRESS>

Congratulations on passing the proposal. Please resolve conflicts with main branch. After that, we will megre PR and your Gateways will be online.


[Bug] Parent Id link is not correct when the parent workflow link is in different namespace.

What are you really trying to do?
Create a child workflow in a different namespace. Go to the childworkflow in UI. The link to parent workflow in parent Id is not correct.
Expected:
/namespaces/<PARENT_NAMESPACE>/workflows/<PARENT_WORKFLOW_ID>/<PARENT_RUN_ID>
Actual:
/namespaces/<CHILD_NAMESPACE>/workflows/<PARENT_WORKFLOW_ID>/<PARENT_RUN_ID>
Environment/Versions
ui-server version 2.6.2
Additional context

@Alex-Tideman It looks like the issue happens for childworkflow links as well. Let me know if you need a separate bug for that. Thanks.


Test order back-end refactor

Requires https://github.com/esaude/openmrs-module-poc/pull/10

Coverage increased (+0.03%) to 63.257% when pulling 41a57c90b0ad43f686518ae8a8f264767426d052 on edrisse:test-order-back-end-refactor into 950964aebb73e4a5a37d87cbb9d343d653c58d1c on esaude:master.

 Let back-end determine creation date


vue-auth-image is not working with Axios 20

I'm using this lib - I have this setup for testing:
axios.defaults.headers.common['Authorization'] = 'Bearer token';
Vue.use(VueAuthImage);
axios.defaults.headers.common['Authorization'] = 'Bearer token';

However, the vue-auth-image calls are not sending the bearer token.
Other axios calls I am doing work.
This works:
axios({
            method: 'get',
            url: 'http://localhost:8081/attach/13'
          }).then( (x: any) => console.log("Got")).catch((err: any) => console.log("Err"))

I verify in the browser console that the correct bearer token is sent - no issues
This does not work (no Authorization header is sent):
<img
    v-if="id !== null && id !== undefined"
    width="180"
    alt="your image"
    :v-auth-image="'http://localhost:8081/attach/13'"
  />

Clearly I don't understand vue directives - the code to use it should actually be:
v-auth-image="'http://localhost:8081/attach/13'"
No : needed to interpolate the value.


test: add appItemAssociations integration tests (box/box-codegen#561)

Pull Request Test Coverage Report for Build<PHONE_NUMBER>3
Details

142 of 238 (59.66%)  changed or added relevant lines in 9 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.1%) to 42.057%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/schemas/fileFull.generated.ts
2
3
66.67%

src/schemas/folderFull.generated.ts
2
3
66.67%

src/schemas/collaboration.generated.ts
3
6
50.0%

src/schemas/appItemAssociations.generated.ts
20
27
74.07%

src/managers/appItemAssociations.generated.ts
49
57
85.96%

src/schemas/fileBaseOrFolderBaseOrWebLinkBase.generated.ts
15
26
57.69%

src/schemas/appItem.generated.ts
22
53
41.51%

src/schemas/appItemAssociation.generated.ts
27
61
44.26%

Files with Coverage Reduction
New Missed Lines
%

src/schemas/event.generated.ts
1
41.58%

Totals

Change from base Build<PHONE_NUMBER>5:
0.1%

Covered Lines:
13201

Relevant Lines:
24446

💛  - Coveralls


chore: refactor file structure

add tests for utils
remove example tests
move content to src
log coverage output
fix log
refactor file structure

Code Coverage

Covered/Total
Percentage

Statements
73/137
53.28% 🔴

Branches
9/27
33.33% 🔴

Functions
12/18
66.66% 🟠

Lines
58/119
48.73% 🔴


You can unfollow on behalf of other users

When using {% url actstream_unfollow there is no security check to prevent others following on your behalf and unfollowing.

I was totally wrong about that one. Sorry.


Update gapic clients with latest toolkit

LGTM after tests pass

cc/ @vam-google I will merge this PR after the tests pass. In the meanwhile, you can generate the Vision 1.1 to include the header change.

For the record, Shin and I discussed offline and since this is a trivial and also time sensitive change, submitting was ok because 3 travis tests had passed so far.

Coverage increased (+0.02%) to 81.131% when pulling<PHONE_NUMBER>99a667fcbf0a56b78a02af78461ad6 on shinfan:dev2 into a47d5a023b284a5f587bf30888699eca5f1adba1 on GoogleCloudPlatform:master.


Add a settings flag for creating insecure credentials

Is your feature request related to a problem? Please describe.
When using this library to connect to the Cloud Firestore emulator, you have to change the firestore settings like this:
firestore.settings({
        projectId: 'samstern-projectdoesnotexist',
        port: 8080,
        servicePath: 'localhost',
        sslCreds: grpc.credentials.createInsecure(),
    });

In order to provide sslCreds I have to import grpc and make sure that I resolve to the same version of grpc as the one used by this library.  This is fairly inconvenient.
For instance with the change from grpc to grpc-js recently I had to change my testing code, but the change was not obvious since I was depending on an implementation detail of this library.
Describe the solution you'd like
I would prefer that this library provide a new flag in firestore.settings like insecureCredentials: true or sslEnabled: false that would do the same thing under the hood.
Firestore already has this on other platforms.  For instance on Android:
  FirebaseFirestoreSettings settings =
        new FirebaseFirestoreSettings.Builder()
                .setHost("<IP_ADDRESS>:8080")
                .setSslEnabled(false)
                .build();

Describe alternatives you've considered
It's possible that we could infer this from servicePath: localhost but I don't need that much magic.
Additional context
The Functions emulator built into the Firebase CLI automatically points the Firestore SDK at the emulator, and we have run into a bunch of issues related to needing to resolve grpc so this would help us a lot.

cc @abeisgoat @ryanpbrewster

@samtstern Do we still need to do this if we take care of https://github.com/firebase/firebase-admin-node/issues/472?

@schmidt-sebastian definitely less urgent if that lands, but I think environment variables are pretty messy and would prefer to have something like this also.


Event state machine is added to replace the synchronous refresh.

Event state machine is added in https://github.com/ManageIQ/manageiq-content/pull/243.
Blocks https://github.com/ManageIQ/manageiq-content/pull/243.
https://bugzilla.redhat.com/show_bug.cgi?id=1534631
@miq-bot assign @gmcculloug
@miq-bot add_label bug, fine/yes, gaprindashvili/yes
cc @mkanoor

Fine backport details:
$ git log -1
commit a6941a9ce59c5a424570c0b6cccd13ab9717e697
Author: Greg McCullough<EMAIL_ADDRESS>Date:   Thu Jan 25 08:10:55 2018 -0500

    Merge pull request #16868 from lfu/event_action_refresh_sync_1534631

    Event state machine is added to replace the synchronous refresh.
    (cherry picked from commit cac9ac77123e8b2e83fabddab4ea66f149ea61f8)

    https://bugzilla.redhat.com/show_bug.cgi?id=1550725

Gaprindashvili backport details:
$ git log -1
commit af414924ef8bfb94ded9a0a19a87db8951157e7f
Author: Greg McCullough<EMAIL_ADDRESS>Date:   Thu Jan 25 08:10:55 2018 -0500

    Merge pull request #16868 from lfu/event_action_refresh_sync_1534631

    Event state machine is added to replace the synchronous refresh.
    (cherry picked from commit cac9ac77123e8b2e83fabddab4ea66f149ea61f8)

    https://bugzilla.redhat.com/show_bug.cgi?id=1550724


Feature Request: Datepicker

Describe the feature in detail (code, mocks, or screenshots encouraged)
I'm using shadcn in my svelte project and it needs a date picker and date range picker. I tried with other libraries also looked with headless but UI mixmatch issues with my own implementations.
Can we expect a Datepicker sooner?
What type of pull request would this be?
None
Provide relevant links or additional information.
No response

Yeah! As soon as the calendar is ready to go in Melt UI we will have a date picker.

I think it's going to take some time

Now there's a PR :)

Will be implemented in bits-ui once https://github.com/melt-ui/melt-ui/pull/527 is complete, and then brought here.

Is there any update?

Will be implemented in bits-ui once melt-ui/melt-ui#527 is complete, and then brought here.

the pr is merged btw!

https://github.com/huntabyte/bits-ui/pull/171 please check this.

@huntabyte Is a time picker coming to the date picker? imo its essential for many (including my) use case.


Does it support json merge patch.

Hi,
Does sonic-cpp support merge-patch easily?
For example : { op: replace,  patch : "Object/0/New_object", value : "123" }
If use json_pointer:
sonic_json::Node* node2 = doc.AtPointer(PointerType({"Object", 0, "New_object"}));
This doesn't format well. transfer patch : "Object/0/New_object" to {"Object", 0, "New_object"}

Are you discuss about jsonpointer rfc, for example,  "/Object/0/New_object" follows jsonpointer rfc.
We will support the RFC in the future. However, parsing “Object/0/New_object” hurts performance， and it can be easily rewritten as {"Object", 0, "New_object"}.

Are you discuss about jsonpointer rfc, for example, "/Object/0/New_object" follows jsonpointer rfc.
We will support the RFC in the future.
However, parsing “Object/0/New_object” hurts performance， and it can be easily rewritten as {"Object", 0, "New_object"}, so, we suggest using the existing format like {"Object", 0, "New_object"}.

How to rewritten as {"Object", 0, "New_object"}? just split string by '/' ?  But how to handle string to int automatic?
Can you give me some example?

This is not just a matter of splitting strings by '', you need to refer to the RFC to distinguish the escape characters.
We currently do not have any relative implementation about the RFC, and you can refer to the rapidjson.


Save pass@k result & use custom tokenizer

Hey there!
Two changes that would be nice to have:

Save pass@k result after evaluation (in a JSON file).
The ability to load custom tokenizer with HF AutoTokenizer (i.e. if tokenizer name is different from the model name).

@marianna13 LGTM, only minor updates are needed. Did you test w/ these changes with some models?

I tried with ibm-granite/granite-3b-code-base and openai-community/gpt2 tokenizer. Also I tried apple/OpenELM-1_1B and meta-llama/Llama-2-7b-hf tokenizer ( it didn't work but it's not bc of the tokenizer, there's a problem with OpenELM config)