Fixing kraken timeouts, getTicker must always succeed

If you look at portfolioManager, the call it makes to getTicker must always succeed, if it were to fail on any request then the this.ticker would be null and the engine will crash on access.
Should resolve #1350 and probably #1424

I am closing this since #1411 contained a safer retry mechanism for the ticker call, making this redundant. Please reopen if that's not the case!


Add user/organization code search

Fixes #19925
Screenshots:

It might be a good Idea to also add search for Issue/PRs and other things.

That is out of scope for this PR

@delvh please review again

Absolute URL like HTMLURL should not be used.

https://github.com/go-gitea/gitea/issues/19345

@wxiaoguang what would be the alternative?

@wxiaoguang what would be the alternative?

Always use relative links(like "/AppSubUrl/org/repo/....") on Web UI

Oh, and another thing I've noticed (doesn't need to be fixed in this PR):
Why exactly do we make another request when selecting a type?
Couldn't we also do that in the frontend?

@delvh these changes should be done in other PR as otherwise look and naming will be inconsistent with global and repository code search pages!

There are already too many refactorings that now touches code outside of scope of this PR

Could we avoid squash or rebase + force push when review starts?
It's not clear what has changed since last review, the review should start from beginning again .........

@delvh these changes should be done in other PR as otherwise look and naming will be inconsistent with global and repository code search pages!

I accept not renaming Match to Exact.
But everything else is absolutely needed.
I strongly disagree that displaying the tooltips is out of scope.
Or do you mean because the tooltips aren't present in the other search, they shouldn't be added???
In that case I disagree even more. Simply because this wassn't done well previously doesn't mean we need to do it badly now.

Why tooltips can't be added consistently in all pages as separate PR?

Updated and refactored code in all code search places to be consistent

Make lgtm work


Bug fix: add error observation to history

What is the problem that this fixes or functionality that this introduces? Does it fix any open issues?
#1776 introduced a regression:
    async def add_error_to_history(self, message: str):
        await self.add_history(NullAction(), ErrorObservation(message))

was replaced with
    async def report_error(self, message: str):
        await self.event_stream.add_event(ErrorObservation(message), EventSource.AGENT)

and thus error observations are no longer added to history.
The negative implication is LLM might take more turns to fix the error, or even never able to fix the error. One example can be found here. In short, LLM responds in wrong format multiple times but never gets any feedback.
Give a brief summary of what the PR does, explaining any non-trivial design decisions
One-liner fix: add error observation to history, so that the LLM can fix the error.
From the updated test artifacts, we can see now the LLM is able to fix the error in one fewer turn. This might be coincidence, but you can at least see from tests/integration/mock/ManagerAgent/test_simple_task_rejection/prompt_004.log that the prompt now contains the latest error observation. Prior to this PR, prompt_003.log, prompt_004.log, prompt_005.log, prompt_006.log are exactly the same.
Other references

Interesting find. You found it with delegation, but as far as I can tell, nothing about it is delegate-specific.


chore(backend): update OpenAPI specs

Changes proposed in this pull request

Context

https://github.com/interledger/rafiki/issues/740

Checklist

[x] Related issues linked using fixes #number
[ ] Tests added/updated
[x] Documentation added
[x] Make sure that all checks pass

Here's the previous two related pr's:

https://github.com/interledger/rafiki/pull/684
https://github.com/interledger/rafiki/pull/692

The Rafiki specific specs use the shared Open Payments schemas file
https://github.com/interledger/rafiki/tree/main/packages/auth/src/openapi
https://github.com/interledger/open-payments/blob/main/openapi/schemas.yaml
So it is fetched instead of updating the $ref urls in the local files, and to support local dev using modified (pending changes to) specs/schemas:

https://github.com/interledger/rafiki/pull/684#discussion_r1009661953

I suggested also fetching the relevant Open Payments spec(s)

https://github.com/interledger/rafiki/pull/692#discussion_r1013470271


Theme combinations

Initial changes needed for multi-theme support
This PR is stage 1 of the following ADR:
https://harness.atlassian.net/wiki/spaces/~712020c33cb1c71cf34b2f809a60e4efc310ff/pages/edit-v2/22141108376

Maybe add a video?


feat(tidb): test pipelineddmltest package

This recently added package tests/realtikvtest/pipelineddmltest is not tested.
https://github.com/pingcap/tidb/blob/9b6db9d47a0b9dc8fe3c726626ce0428a3d3d491/Makefile#L632-L636

testing in: https://do.pingcap.net/jenkins/job/pingcap/job/tidb/job/ghpr_check2/6154/


When using with append or prepend icon, datepickerRow does not put value of date in textbox

When using with append or prepend datepickerRow does not put value of date in textbox. I tried adding array('prepend'=>'') in the options, bit it stops filling the date immediately. Works fine when this is removed.

user not responding for a year!


delete_calculate_pH2_from_c0 general function

test printvar in get_regime

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


Optimize for single rowset

Proposed changes
this pr is for #6965 ,  which is delete by mistakes.  sorry for that. please help to review again.
Describe the overview of changes, and introduce why we need it.
Types of changes
What types of changes does your code introduce to Doris?
Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update (if none of the other choices apply)
[ ] Code refactor (Modify the code structure, format the code, etc...)
[ ] Optimization. Including functional usability improvements and performance improvements.
[ ] Dependency. Such as changes related to third-party components.
[ ] Other.

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[ ] I have created an issue on (Fix #ISSUE) and described the bug/feature there in detail
[ ] Compiling and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If these changes need document changes, I have updated the document
[ ] Any dependent changes have been merged

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

@morningman   please help to review again.


Fix flaky test in JSONUtilTest.

Use JSONAssert instead of Assert in JSONUtilTest to fix a flaky test
Flaky test case: cn.hippo4j.common.toolkit.JSONUtilTest.cn.hippo4j.common.toolkit.JSONUtilTest.assertToJSONString
https://github.com/bbelide2/hippo4j/blob/d645c49450ca3daec8eea5be8e5f9921116d42ac/infra/common/src/test/java/cn/hippo4j/common/toolkit/JSONUtilTest.java#L43
Problem
Test assertToJSONString in JSONUtilTest is detected as flaky with the NonDex tool. The test failed with the following error:
Failed tests: assertToJSONString(cn.hippo4j.common.toolkit.JSONUtilTest): expected:<{"[id":1,"name":"foo1","foo":{"id":2,"name":"foo2"}]}> but was:<{"[foo":{"id":2,"name":"foo2"},"id":1,"name":"foo1"]}>

Root cause
In this test, two JSON strings are compared using Assert.assertEquals() in this part of the code:
https://github.com/bbelide2/hippo4j/blob/d645c49450ca3daec8eea5be8e5f9921116d42ac/infra/common/src/test/java/cn/hippo4j/common/toolkit/JSONUtilTest.java#L45
Using Assert.assertEquals() will lead to flaky tests due to mismatch in the order of properties or if there are nested structures. In this particular test case, JSON object(Foo) contains a nested object of the same type leading to difference in the order of properties thus making it a flaky test.
In this test, a hardcoded JSON string "EXPECTED_FOO_JSON" is compared with another JSON string created by JSONUtil.toJSONString(). The input to this method is an object of class Foo (test class present in JSONUtilTest).
Fix
Changed Assert.assertEquals() to JSONAssert.assertEquals() which is order insensitive.
How this has been tested?
Java: openjdk version "<IP_ADDRESS>"
Maven: Apache Maven 3.6.3

Module build - Successful
Command used -

mvn install -pl infra/common -am -DskipTests

Regular test  - Successful
Command used -

mvn -pl infra/common test -Dtest=cn.hippo4j.common.toolkit.JSONUtilTest#assertToJSONString

NonDex test  - Failed
Command used -

mvn -pl infra/common edu.illinois:nondex-maven-plugin:2.1.1:nondex -Dtest=cn.hippo4j.common.toolkit.JSONUtilTest#assertToJSONString

NonDex test passed after the fix.

Is the project already using skyscreamer or did you have to add the dependency to a pom.xml file?
You can proceed to open a real PR. Once you open a real PR, please mark this tentative as Opened in your tentative_pr.csv file and also raise a PR to IDoFT marking this as Opened. Thanks!

I did not add any new depenency. skyscreamer is already present.


Cant find PDF Parser

platform info:

this is my problem:

@Nuclear6 I am also experiencing the same issue. This looks like a problem with the latest version of llmware itself and older versions don't have this problem as reported by my colleague. He got these scripts working fine for llmware v0.2.1 and v0.1.14 without any issues.

@doberst I am running it on #64~20.04.1-Ubuntu machine.

@mupago - thanks for the quick response - unfortunately, we do have a build issue on Ubuntu 20 - it is related to a GLIBC dependency.    Do you have the option to try to run on Ubuntu 22?   If nothing else, it would be good to confirm that the issue goes away.   It is on our hot priority list right now to down-level our build so it works on Ubuntu 20 - will keep you posted on that ....

@doberst Okay thanks, but the previous version of llmware seems to be working fine without issues on the same machine per my colleague. I will run few tests myself and will update here shortly.

@mupago - could you do a quick check on command line: ldd --version
it will give the GLIBC version of the machine, likely 2.31 ?

@doberst we could try building the glibc dependency from source, are you able to provide the specific version required (and a link to it, if possible)?

I believe it is GLIBC 2.35 ... we compiled our last build on Ubuntu 22, which brought that in as a version dependency.   We will build a down-level version in the next couple of days and get it out ...

Attempted to build GLIBC from source using the following:
sudo apt update
sudo apt install libc6
sudo apt install bison
sudo mkdir /downloads/glibc
sudo chmod 777 /downloads/glibc -R
sudo cd /downloads/glibc
sudo wget http://ftp.gnu.org/gnu/libc/glibc-2.35.tar.gz
sudo tar -xvzf glibc-2.35.tar.gz
sudo mkdir /downloads/glibc/glibc-2.35-install
sudo /downloads/glibc/glibc-2.35/configure --prefix=/downloads/glibc/glibc-2.35-install
sudo make
sudo make install
source ~/.bashrc
While it seemed to install GLIBC successfully, it did not resolve the PDF Parser error (perhaps just an env var resolution issue?).
However, reverting to llmware==0.1.15 did resolve the issue. Note, we were originally using ubuntu 20.04.1 with GLIBC 2.31

2024/3/5,reverting to llmware==0.1.15 did resolve the issue.ldd (Ubuntu GLIBC 2.31-0ubuntu9.14) 2.31
Copyright (C) 2020 自由软件基金会。
这是一个自由软件；请见源代码的授权条款。本软件不含任何没有担保；甚至不保证适销性
或者适合某些特殊目的。
由 Roland McGrath 和 Ulrich Drepper 编写。

@doberst I’m also experiencing this build issue. Is there any update on that down-level version?

On this topic, may I suggest a change in the code base.
Currently, we have the following.
https://github.com/llmware-ai/llmware/blob/29647471d9cf64b7696e3186d0d2f6d10045269f/llmware/util.py#L131-L142
This is not optimal, since it does not tell the user what went wrong. It just says that it could not load the PDF parser, but not way. Also, it is not clear why the if is needed.
May I suggest the following change.
try:
    # attempt to load the shared library with ctypes
     _mod_pdf = cdll.LoadLibrary(_path_pdf)
except Exception as e:
    # catch error, if possible
    logging.warning("warning: Module 'PDF Parser' could not be loaded from path - \n %s.\n"
                                   "The following exceptions occured: %s",
                                   _path_pdf, e)

     raise ModuleNotFoundException("PDF Parser")

While this is by far not ideal, it is an improvement as it tells the user what went wrong and why. In addition, the if statement is gone as well.
I'm happy to open a PR on that in the near future if people agree that this is a desirable.

@nadolsw, @harveypitt, @WillWillWong, @mupago, @Nuclear6, @MacOS - if you clone the latest repo, we have rebuilt the parser binaries for Ubuntu 20 support.   We have done the same for the GGUF libraries as well, so Ubuntu 20+ should be fully supported.   The key dependency is GLIBC (2.31 +).    Note, if you are using CUDA, the drivers should be 12.1+.   I am going to mark this issue closed - but if you are still experiencing issues on other flavors of Linux, please raise a new/separate ticket.   Also, would appreciate @MacOS recommendation + improvements on a more helpful exception handling ...


duplicate entry: com/squareup/otto/AnnotatedHandlerFinder.class

Error:Execution failed for task ':directory:transformClassesWithJarMergingForWnyDebug'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/squareup/otto/AnnotatedHandlerFinder.class

Your build system is somehow including Otto twice. This is a problem with your build configuration somehow.


[Feature] WCAG-adjustments should not be warnings

We're getting a warning that the contrast ratio will be adjusted for WCAG AA and WCAG AAA.
[docs]:Found 0 errors and 1 warnings.
[docs]:docs.yml
       The contrast ratio between the accent color and the background color for light mode is 3.84:1. Fern will adjust the color to meet the minimum contrast ratio of 4.5:1 for WCAG AA and 7:1 for WCAG AAA.

To make sure I'm understanding correctly- fern will generally not change the accent color except when the user has opted in to extra accessibility (AA or AAA)?
If yes - I think this should not be a warning. It's a cool fern feature but the warning makes it feel like I'm doing something wrong. (We're trying to keep our warnings at 0).

Hello!! @zachkirsch  :)
fix: #4426
Convert Fern's existing alert regarding automatic WCAG modifications to an informative message. Furthermore, include a configuration option that lets users choose whether these changes are suppressed completely, recorded as warnings, or both. This method guarantees that users are not mislead by needless alerts and are aware of the changes.

👍 to this issue


Support for [Sparse] Mems larger than 2^31 - 1 [for Simulation Purposes]

Type of issue: feature request

Impact: API addition (no impact on existing code)

Development Phase: request
Other information

If the current behavior is a bug, please provide the steps to reproduce the problem:
What is the current behavior?
The size of Mems is currently an Int, limiting the size to 2^31 - 1.
What is the use case for changing the behavior?
While current technology doesn't allow physical memories anywhere close to 2GB, it can be useful to model say 64GB of DRAM using a sparse memory. Such a simulation would likely not (although it could) use all of the larger than 2GB memory but it's especially useful for modeling a virtual memory space where a program may be located at an address > 0x0000_0000_8000_0000.
This API would require FIRRTL support which also uses Int for the size of mems.

It would be cool if this could be linked to FIRRTL in a way that eliminated this hack:
https://github.com/freechipsproject/firrtl/blob/f24a733dc279e93a7d5d945042ec7472a6872aa1/src/main/scala/firrtl/Emitter.scala#L537

@colinschmidt yeah removing hacks is always desirable. How would you like the API to look? Do you think sparse should be a field of Chisel (and thus FIRRTL) mems or do you think that is too much simulation bleeding into the IR?

I was thinking it would be an annotation on the memory. Making a memory sparse is arguably a performance optimization. Since tools have limits on non-sparse memories it is sometimes required.
Adding it to the IR doesn't seem like the right move here but I don't feel strongly.

Yeah I agree that it shouldn't be in the IR. One issue is that neither Verilator nor VCS support arrays larger than 2 ^ 31 - 1 entries (and further requirements depending on the data type). Through SystemVerilog, VCS can support associative arrays, but Verilator does not currently support them (https://www.veripool.org/issues/544-Verilator-Support-associative-arrays).
I think an Annotation is probably the right way to go if we add support for emitting associative arrays, otherwise maybe we just emit the "too large" array and let the user's choice of simulator be the bad guy.


Fix build in HW mode

This PR fixes an issue in the build in HW mode.
The issue is due to missing target dependencies in the pservice build.
When the build target triggers the cmake, the contract_enclave_mrenclave.cpp file (part of the ENCLAVE_FILES target) must be available, as the cmake checks for that.
However, there is no dependency between the two targets.
Curiously, this issue seems to have been uncovered by unintentionally making the build single-task.
So far, apparently, the make all triggered both targets in parallel in the right order.
Signed-off-by: Bruno Vavala<EMAIL_ADDRESS>

Superceded by #392


FEATURE Add SSL/TSL connection to RabbitMQ using JKS and exchange extra configuration

First of all thank you for this awesome connector :tada:
In order to solve some needs I propose you to add this features to the repository.
Needs

Being able to init an SSL/TLS connection within RabbitMQ using a keystore and a truststore.
Being able to configure the exchange within durable and auto_delete flags.

Solution

Add official config paramenters to configure SSL/TLS.
Add getSLLContext in order to create an SSLContext and use it within connectionFactory.useSslProtocol.
Add durable and autodelete config to RabbitMQSourceConnectorConfig.

Hope this features will be useful to someone :smiley:
Thank you.

Tested. Fuctional and ready @cobolbaby! :muscle:

Thank you for your contribution to make the connector more perfect.

org.apache.kafka.common.config.ConfigException: Missing required configuration "rabbitmq.ssl.keystore.location" which has no default value.
	at org.apache.kafka.common.config.ConfigDef.parseValue(ConfigDef.java:477)
	at org.apache.kafka.common.config.ConfigDef.parse(ConfigDef.java:467)
	at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:108)
	at org.apache.kafka.common.config.AbstractConfig.<init>(AbstractConfig.java:129)
	at com.github.themeetgroup.kafka.connect.rabbitmq.CommonRabbitMQConnectorConfig.<init>(CommonRabbitMQConnectorConfig.java:124)
	at com.github.themeetgroup.kafka.connect.rabbitmq.source.RabbitMQSourceConnectorConfig.<init>(RabbitMQSourceConnectorConfig.java:71)
	at com.github.themeetgroup.kafka.connect.rabbitmq.source.RabbitMQSourceTask.start(RabbitMQSourceTask.java:51)
	at org.apache.kafka.connect.runtime.WorkerSourceTask.execute(WorkerSourceTask.java:217)
	at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:189)
	at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:239)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

Let me check it out.
Sorry for the inconveniences :pray:

Please, check #9 in order to fix this issue.


Need a Web UI?

As it looks like Camel-K is the Hawtest way of running Camel in the cloud 😉, I was wondering if the Hawtio console for Kubernetes / OpenShift could provide any Camel-K plugin.
If you have any ideas, suggestions, ..., I'd be glad to work something out!
Here is a screenshot of the discover page:

A UI is a really nice idea!
We're making progress with the kamel command line helper that allows publishing files containing Camel routes in multiple supported languages, and will allow soon to have instant redeploys (#34).
But for what concerns the future plans we had already in mind that crazy idea of creating a web-based mini-IDE, where you can write (code) your routes, have auto-completion through a backend language server, customize the integration details (e.g. components, configuration properties, passwords), and run them, with a immediate feedback on the UI through a log window.
With something like that in place, devs could iterate on integrations quickly: change the code -> save -> instant redeploy.
This is what we have in mind now :)
Monitoring is the hardest part IMO. That's because currently we have a Deployment per integration that is always active, but later on we will drop this behavior to add the "scale to 0 feature". A simple example is a route like from("timer:job?period=1h").to("...") that will be probably materialized as a CronJob. This means there'll not be always a JVM with Jolokia to ask information to.
I guess exporting metrics and tracing info will be the way, but I've not gone into details at the moment.
Wdyt?

But for what concerns the future plans we had already in mind that crazy idea of creating a web-based mini-IDE, where you can write (code) your routes, have auto-completion through a backend language server, customize the integration details (e.g. components, configuration properties, passwords), and run them, with a immediate feedback on the UI through a log window.
With something like that in place, devs could iterate on integrations quickly: change the code -> save -> instant redeploy.

This is what we have in mind now :)

That is pretty much what I had in mind too 😄! Hawtio Online has what's needed for the master API integration part. It could detect if the Camel-K CRD is present and activates the plugin accordingly. The later would be able to auto-discover the existing Camel-K definition / deployment and propose an edit button that would lead to a mini-IDE. The UI image could be enriched with a LSP container.

Monitoring is the hardest part IMO. That's because currently we have a Deployment per integration that is always active, but later on we will drop this behavior to add the "scale to 0 feature". A simple example is a route like from("timer:job?period=1h").to("...") that will be probably materialized as a CronJob. This means there'll not be always a JVM with Jolokia to ask information to.

Jolokia is one source of monitoring (maybe more management actually). I am planning to source monitoring data from Prometheus and the Metrics API in the near future as well in Hawtio Online.

FYI:
<EMAIL_ADDRESS>

camel-k-ui looks very promising! Let me close this issue, which was more of a question, and iterate there.


samples: coap_client: Return correct result from send_simple_coap_request

The coap_client sample does not return error results from send_simple_coap_request. This means that it may end up waiting for a reply when no message has been sent.

@MBradbury care to update the commit message length to fix the compliance issue?


MBTA app is not showing blue line trains for Orient Heights station

@marcusb Trying to use the MBTA schedule app and saw Orient Heights does not show the Blue line train arrivals

Thanks for reporting. The issue is that the station has multiple "child stations", and the Blue Line is only connected to one of the substations. This should be fixable.

That wasn't it at all, it was an artifact of the sorting params. That should be fixed by the above PR, so the Blue Line shows up when it has the nearest departures.
But the underlying problem is that there are several routes on that stop, and we can only fit two, so now you can the opposite problem, eg only showing the two Blue Lines in each direction and not showing any buses. The current approach isn't very scalable, but I'm not sure what the best option is given pixlet's UI limitations.


#2 url storage support push and replace state

Codecov Report

Merging #3 into master will decrease coverage by 2.27%.
The diff coverage is 84%.

@@            Coverage Diff             @@
##           master       #3      +/-   ##
==========================================
- Coverage   94.87%   92.59%   -2.28%
==========================================
  Files           3        3
  Lines          78      108      +30
  Branches       13       17       +4
==========================================
+ Hits           74      100      +26
- Misses          2        4       +2
- Partials        2        4       +2

Impacted Files
Coverage Δ

src/index.ts
100% <100%> (ø)
:arrow_up:

src/StorageProvider.ts
89.74% <83.33%> (-2.57%)
:arrow_down:

src/UrlQueryHelper.ts
100% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Kokoro mac artifact builds flaky

Often fails when trying to compile older versions of ruby. All the build failures I've seen have been caused by this.
https://sponge.corp.google.com/target?id=d1d97807-1719-4a59-a047-2bdb8fecb713&target=grpc%2Fmacos%2Fmaster%2Fgrpc_build_artifacts&searchFor=
Error happens when running https://raw.githubusercontent.com/grpc/grpc/master/tools/distrib/build_ruby_environment_macos.sh
Updating /Users/kbuilder/.rake-compiler/config.yml
Found Ruby version 2.3.0 for platform x86_64-darwin11 (/Users/kbuilder/.rake-compiler/ruby/x86_64-darwin11/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin11/rbconfig.rb)
Found Ruby version 2.4.0 for platform x86_64-darwin11 (/Users/kbuilder/.rake-compiler/ruby/x86_64-darwin11/ruby-2.4.0/lib/ruby/2.4.0/x86_64-darwin11/rbconfig.rb)
+ for v in 2.4.0 2.3.0 2.2.2 2.1.5 2.0.0-p645

.....

compiling /Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/dln.c
compiling /Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/localeinit.c
compiling /Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:30:2: error: RUBY_EXEC_PREFIX must be defined
#error RUBY_EXEC_PREFIX must be defined
 ^
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:41:50: error: use of undeclared identifier 'RUBY_LIB_VERSION'
typedef char ruby_lib_version_string[(int)sizeof(RUBY_LIB_VERSION) - 2];
                                                 ^
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:59:33: error: use of undeclared identifier 'RUBY_EXEC_PREFIX'
const char ruby_exec_prefix[] = RUBY_EXEC_PREFIX;
                                ^
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:68:5: error: use of undeclared identifier 'RUBY_EXEC_PREFIX'
    RUBY_SITE_LIB2 "\0"
    ^
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:46:37: note: expanded from macro 'RUBY_SITE_LIB2'
#define RUBY_SITE_LIB2              RUBY_SITE_LIB    "/"RUBY_LIB_VERSION
                                    ^
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:35:23: note: expanded from macro 'RUBY_SITE_LIB'
#define RUBY_SITE_LIB RUBY_LIB_PREFIX"/site_ruby"
                      ^
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:32:25: note: expanded from macro 'RUBY_LIB_PREFIX'
#define RUBY_LIB_PREFIX RUBY_EXEC_PREFIX"/lib/ruby"
                        ^
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:68:5: error: expected ';' after top level declarator
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:46:37: note: expanded from macro 'RUBY_SITE_LIB2'
#define RUBY_SITE_LIB2              RUBY_SITE_LIB    "/"RUBY_LIB_VERSION
                                    ^
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:35:23: note: expanded from macro 'RUBY_SITE_LIB'
#define RUBY_SITE_LIB RUBY_LIB_PREFIX"/site_ruby"
                      ^
/Users/kbuilder/.rake-compiler/sources/ruby-2.2.2/loadpath.c:32:41: note: expanded from macro 'RUBY_LIB_PREFIX'
#define RUBY_LIB_PREFIX RUBY_EXEC_PREFIX"/lib/ruby"
                                        ^
5 errors generated.
make: *** [loadpath.o] Error 1
rake aborted!
Command failed with status (2): [make...]
/Volumes/BuildData/tmpfs/src/github/grpc/tmpfile.0yF6PHZY:155:in `block (2 levels) in <top (required)>'
/Volumes/BuildData/tmpfs/src/github/grpc/tmpfile.0yF6PHZY:154:in `block in <top (required)>'
/Users/kbuilder/.rvm/gems/ruby-2.4.0@global/gems/rake-12.0.0/exe/rake:27:in `<top (required)>'
Tasks: TOP => cross-ruby => install => /Users/kbuilder/.rake-compiler/ruby/x86_64-darwin11/ruby-2.2.2/bin/ruby.exe => /Users/kbuilder/.rake-compiler/builds/x86_64-darwin11/ruby-2.2.2/ruby.exe
(See full trace by running task with --trace)
I0810 17:54:50.106232  137359 util.py:247]

Looks like this happens whevever "verconf.h" is not generated (or not generated on time) before building loadpath.c
Successful build looks like this:
creating verconf.h
compiling /Users/kbuilder/.rake-compiler/sources/ruby-2.1.5/loadpath.c

http://lists.busybox.net/pipermail/buildroot/2014-December/114273.html

@apolcyn  @nicolasnoble  ideas how to fix/workaround are welcome. :-)

I can definitely reproduce this flakiness but I don't have an idea right now... On a sort of related note, is the fetching the ruby environment script via wget vs. running straight from the current repo needed?

@jtattermusch actually related to the link you posted above, there is a workaround for what looks like this issue, posted in https://patchwork.ozlabs.org/patch/418321/.  I have not tested yet but I'm thinking that something like that could be done as a further patch to https://raw.githubusercontent.com/rake-compiler/rake-compiler/v1.0.3/tasks/bin/cross-ruby.rake. .... I could look into that tomorrow.

https://github.com/apolcyn/grpc/commit/4386f57926aaec21a032ea0f7ce98e3c7ea142ce is a start - this zip file pointed out by @nicolasnoble. There's another failure now though :/
rake aborted!
NoMethodError: undefined method `split' for nil:NilClass
/Users/kbuilder/.rvm/gems/ruby-2.4.0/gems/rake-compiler-1.0.4/lib/rake/extensiontask.rb:515:in `ruby_api_version'
/Users/kbuilder/.rvm/gems/ruby-2.4.0/gems/rake-compiler-1.0.4/lib/rake/extensiontask.rb:262:in `block in define_native_tasks'

cc @nicolasnoble, it looks like there is a big problem with the use of the pre-built rake-compilers.zip files on kokoro because that file isn't portable outside of those jenkins workers (there are lots of references to the jenkins mac worker home directory throughout files/directories in that zip file).
Since it seems like that zip file is worth using though for speed and stability, solutions I can think of:

mass-replace /User/jenkins to the current home direcotry upon download of that zip file.
Continue building this file on kokoro workers but start caching it. Use both the current home directory and the date as keys for this cache.

For now, I have a fix here: https://github.com/grpc/grpc/pull/12779.
Once we unflake the build, we can look into using the pre-build zipfile with rake-compilers (but I think that might be  tricky because the pre-built stuff is not necessarily portable - as you pointed out).


chore: change metavm contract

Landed in https://github.com/metarhia/metasql/commit/5affd87e22b87970dad8ea908e0a73a69a354733


windows readme

I've added instructions for windows users. Obviously they're nearly identical. However, I needed to go to a tab in settings called 'Install.'

👍 Thanks


[Experiment] An alternative choice for sliding window and cyclic shift

First of all, I should point out that it's just a simple experiment for Swin-Transformer.
Main Idea
As sliding window in Swin-Transformer tries to get correlation attention between different window partitions, we intuitively replace it with pixel shuffle, which is also named as Space2Depth and Depth2Space for Tensorflow. As pixel shuffle does not need window shift, the cyclic shift is also no-more required, thus may give a natural support for non-square window size. What's more, as pixel shuffle splits image in Space2Depth format, one window in W-MSA is connected to all other windows in SW-MSA(though only one pixel is connected for each window), we guess this give a different connection for vit and may gain counterpart or better accuracy.
Main Change
def window_packing(x, window_size):
    B, H, W, C = x.shape
    x= x.contiguous().view(B, window_size, H // window_size, window_size, W // window_size, C)
    windows = x.permute(0, 2, 4, 1, 3, 5).contiguous().view(-1, window_size, window_size, C)
    return windows

def window_unpacking(windows, window_size, H, W):
    B = int(windows.shape[0] / (H * W / window_size / window_size))
    x = windows.view(B, H // window_size, W // window_size, window_size, window_size, -1)
    x = x.permute(0, 3, 1, 4, 2, 5).contiguous().view(B, H, W, -1)
    return x

Sliding window is removed
cyclic shift is removed
no configuration changed

See detail in :
https://github.com/FangGet/Swin-Transformer/blob/main/models/swin_transformer.py
Result

name
pretrain
resolution
acc@1
acc@5
#params
FLOPs
FPS
1K model

Swin-T
ImageNet-1K
224x224
81.4(+0.2)
95.6(+0.1)
28M
4.5G
755
Google Drive

As I have limited GPU resource, if anyone is interested in full experiments for complex architecture and other image tasks, you're welcomed to download the code, run the experiment and report the result.
Code
https://github.com/FangGet/Swin-Transformer

nice work.Mean that we don't need to calculate the atten mask then full with ”inf“?
I also try to use non-square window to finish my task, look like your implement much better and easy.

Have you check this part? https://github.com/microsoft/Swin-Transformer/blob/bc26f4764735a91b0330071cc9ca9ffcf60340fa/models/swin_transformer.py#L192-L196.
In orginal paper, they keep two W-MSA in last stage since window_size == feature_resolution.
Maybe should keep do_ps == False when min(self.input_resolution) <= self.window_size for fair comparison.
Though in sem.seg, they don't do as so. https://github.com/SwinTransformer/Swin-Transformer-Semantic-Segmentation/issues/18#issuecomment-837990862

For pixel shuffle, SW-MSA seems to degrade to W-MSA when window_size == feature_resolution? though the additional operation is also a problem.
Just a thought, no strict experiment. I will check it later.


gpt4free made the system crash

I have succesfully loaded all the models of g4f in the select model, but none of them are working.
And the system became unresponsive.

let me check


fix: Make fill_match_arms assist handle doc(hidden) and non_exhaustive

Fixes #11499
Fixes #11500
This keeps track of the relevant attributes and adds in a wildcard pat at the end of the match when necessary.
I decided to do them in the same PR since they both needed the ability to add a wildcard arm, and so their changes would overlap if done separately, but I'll split them up if that seems better.
This is my first PR to rust-analyzer, so all feedback is greatly appreciated!

Thanks!
bors r+

Thanks! ❤


Async_track_state_change deprecated warning

Describe the bug
Integration throws following log message:
Detected that custom integration 'dynamic_energy_cost'
calls `async_track_state_change` instead of
`async_track_state_change_event` which is deprecated and
will be removed in Home Assistant 2025.5 at
custom_components/dynamic_energy_cost/energy_based_sensors.py, line 99:
async_track_state_change(self.hass, self._energy_sensor_id, self._async_update_energy_price)

Fixed in latest release: https://github.com/martinarva/dynamic_energy_cost/releases/tag/v0.2.5
Please verify and close

Warning gone after update. Great!


how to use text?

Hey im a beginner on java, android studio. i would really like to know how to use the string function.
It shows me only Bitmap

It's other feature, i will work in it next version


build: bump version to 0.5.2

Release notes:

fix: not found error while loading file from media storage (by @ziafazal from Edly)
Python dependency upgrades (by 2U)

Full changeset: https://github.com/openedx/xblock-sdk/compare/v0.5.1...f1f5e172d13d8783ba7ce60472d8d23d1aaabba6

@ziafazal Could you review this?

@kdmccormick we need to update version here too.


unable to create/join conreference after the client token refreshed

after refreshing callback function of initializeToken called,
when user retry to create/join conreference,
the request seems using the initial token.
(as the request header shows me)
the https://session.voxeet.com/v1/conferences/create response is below
 {type: "ErrorResponse", error_code: 89, error_reason: "Invalid_token",…} error_code: 89 error_description: "Expired or invalid token" error_reason: "Invalid_token" type: "ErrorResponse" with status 401
I also made sure that my refreshing callback is returning the access token string of new one.
further more, VoxeetSDK.initializeToken function does not returning promise result
so that I can't use .then or .catch phrase.

Here is a simple code sample to get an access token from your own backend server (You might need to update the URL and add extra HTTP headers based on your requirements)
const url = 'https://endpoint/to/get/token';
fetch(url)
  .then(d => d.json())
  .then(r => {
     VoxeetSDK.initializeToken(r.access_token, () => fetch(url).then(d => d.json().access_token));
  })
  .then(() => {
     VoxeetSDK.session.open({ name: "username" }).then(() => startYourApplication());
  });

Regarding the documentation, I have created an internal ticket to have it fixed.

Here is a simple code sample to get an access token from your own backend server (You might need to update the URL and add extra HTTP headers based on your requirements)
const url = 'https://endpoint/to/get/token';
fetch(url)
  .then(d => d.json())
  .then(r => {
     VoxeetSDK.initializeToken(r.access_token, () => fetch(url).then(d => d.json().access_token));
  })
  .then(() => {
     VoxeetSDK.session.open({ name: "username" }).then(() => startYourApplication());
  });

Regarding the documentation, I have created an internal ticket to have it fixed.

my backend <-> user workflow works fine as it returns a new access token
but problem occurs when it comes to call the sdk function after refreshed.
it is send with the initial(not refreshed) token and returned with status 401.

I think It might be necessary the sdk returns it's results to let me know It is refreshed with the new one rightly.
thank you.

my backend <-> user workflow works fine as it returns a new access token
but problem occurs when it comes to call the sdk function after refreshed.
it is send with the initial(not refreshed) token and returned with status 401.

I think It might be necessary the sdk returns it's results to let me know It is refreshed with the new one rightly.
thank you.

@allvoice-devteam could you please share the code you use to call VoxeetSDK.initializeToken

@allvoice-devteam could you please share the code you use to call VoxeetSDK.initializeToken

With the following code, you will notice the 401 errors, but it is our way to detect when the token is expired. Once we get a message from our service saying the token is expired, we will execute the callback provided to the VoxeetSDK.initializeToken function to request a new access token. This callback must return the access token.
Try the following code:
const consumerKey = 'YOUR_CONSUMER_KEY';
const consumerSecret = 'YOUR_COMSUMER_SECRET';
const tokenUrl = 'https://session.voxeet.com/v1/oauth2/token';
const expiresIn = 5; // seconds

const requestParams = {
  method: 'POST',
  headers: {
      'Cache-Control': 'no-cache',
      'Content-Type': 'application/x-www-form-urlencoded',
      'Authorization': 'Basic ' + btoa(consumerKey + ':' + consumerSecret)
  },
  body: `grant_type=client_credentials&expires_in=${expiresIn}`
};

fetch(tokenUrl, requestParams)
  .then(d => d.json())
  .then(jwt => {
    console.log('Received the following JWT', jwt)

    VoxeetSDK.initializeToken(jwt.access_token, () => {
      console.log('The token has expired, request new one');

      return fetch(tokenUrl, requestParams)
        .then(d => d.json())
        .then(jwt => {
          console.log('Received a new JWT token', jwt);
          return jwt.access_token;
        });
    });
  })
  .then(() => VoxeetSDK.session.open({ name: randomName }).then(() => initUI()));

The token expires after 5 seconds, so after you initialize the session, wait 5 seconds and start the conference. You will get the 401 error but immediately after, we will request a new token and the conference can start.

With the following code, you will notice the 401 errors, but it is our way to detect when the token is expired. Once we get a message from our service saying the token is expired, we will execute the callback provided to the VoxeetSDK.initializeToken function to request a new access token. This callback must return the access token.
Try the following code:
const consumerKey = 'YOUR_CONSUMER_KEY';
const consumerSecret = 'YOUR_COMSUMER_SECRET';
const tokenUrl = 'https://session.voxeet.com/v1/oauth2/token';
const expiresIn = 5; // seconds

const requestParams = {
  method: 'POST',
  headers: {
      'Cache-Control': 'no-cache',
      'Content-Type': 'application/x-www-form-urlencoded',
      'Authorization': 'Basic ' + btoa(consumerKey + ':' + consumerSecret)
  },
  body: `grant_type=client_credentials&expires_in=${expiresIn}`
};

fetch(tokenUrl, requestParams)
  .then(d => d.json())
  .then(jwt => {
    console.log('Received the following JWT', jwt)

    VoxeetSDK.initializeToken(jwt.access_token, () => {
      console.log('The token has expired, request new one');

      return fetch(tokenUrl, requestParams)
        .then(d => d.json())
        .then(jwt => {
          console.log('Received a new JWT token', jwt);
          return jwt.access_token;
        });
    });
  })
  .then(() => VoxeetSDK.session.open({ name: randomName }).then(() => initUI()));

The token expires after 5 seconds, so after you initialize the session, wait 5 seconds and start the conference. You will get the 401 error but immediately after, we will request a new token and the conference can start.

my initializing code of client side is down below
fetch(url, {})
  .then(data => data.json())
  .then(result => {
        console.log('token expires in:: '+result.expires_in);

        VoxeetSDK.initializeToken(result.access_token, () => {
          // This callback is called when the token needs to be refreshed.

          // Call the server to get the refreshed token
          fetch(url, {})
              .then(data => data.json())
              .then(result => {
                  console.log('received token:: ', result.access_token)
                  return result.access_token
              });
        })
  })
  .then(() =>
      VoxeetSDK.session.open({name: randomName})
        .then(() => {
            enableUI('test-conference')
        })
  )

It also is working when a client wants to create/join a conference.
 joinButton.onclick = function () {
   if (roomInput !== undefined) {
      if (audioDeviceId.value) {
            constraints.audio.sourceId = audioDeviceId.value;
      }

        console.log(constraints);

        VoxeetSDK.conference.create({
            alias: confAlias,
            params: {
                dolbyVoice: true
            }
        })
            .then((conference) => {
                if(conference._isNew) {
                    console.log('conference created :: ' + conference.alias)
                }

                VoxeetSDK.conference.join(conference, {
                    constraints: constraints,
                    audio3D: true
                })
                    .then((info) => {
                        ...

                    })
                    .catch(function (e) {
                        console.error(e);
                    })
            })
            .catch( err => {
                console.log(err)
            })

    }
}

and It keeps returning
create(401) -> token(200) -> create(401) -> ... and so on as the previous comment.
did I understood something wrong?

my initializing code of client side is down below
fetch(url, {})
  .then(data => data.json())
  .then(result => {
        console.log('token expires in:: '+result.expires_in);

        VoxeetSDK.initializeToken(result.access_token, () => {
          // This callback is called when the token needs to be refreshed.

          // Call the server to get the refreshed token
          fetch(url, {})
              .then(data => data.json())
              .then(result => {
                  console.log('received token:: ', result.access_token)
                  return result.access_token
              });
        })
  })
  .then(() =>
      VoxeetSDK.session.open({name: randomName})
        .then(() => {
            enableUI('test-conference')
        })
  )

It also is working when a client wants to create/join a conference.
 joinButton.onclick = function () {
   if (roomInput !== undefined) {
      if (audioDeviceId.value) {
            constraints.audio.sourceId = audioDeviceId.value;
      }

        console.log(constraints);

        VoxeetSDK.conference.create({
            alias: confAlias,
            params: {
                dolbyVoice: true
            }
        })
            .then((conference) => {
                if(conference._isNew) {
                    console.log('conference created :: ' + conference.alias)
                }

                VoxeetSDK.conference.join(conference, {
                    constraints: constraints,
                    audio3D: true
                })
                    .then((info) => {
                        ...

                    })
                    .catch(function (e) {
                        console.error(e);
                    })
            })
            .catch( err => {
                console.log(err)
            })

    }
}

and It keeps returning
create(401) -> token(200) -> create(401) -> ... and so on as the previous comment.
did I understood something wrong?

You are missing a return
fetch(url, {})
  .then(data => data.json())
  .then(result => {
        console.log('token expires in:: '+result.expires_in);

        VoxeetSDK.initializeToken(result.access_token, () => {
          // This callback is called when the token needs to be refreshed.

          // Call the server to get the refreshed token
          return fetch(url, {})
              .then(data => data.json())
              .then(result => {
                  console.log('received token:: ', result.access_token)
                  return result.access_token
              });
        })
  })
  .then(() =>
      VoxeetSDK.session.open({name: randomName})
        .then(() => {
            enableUI('test-conference')
        })
  )

You are missing a return
fetch(url, {})
  .then(data => data.json())
  .then(result => {
        console.log('token expires in:: '+result.expires_in);

        VoxeetSDK.initializeToken(result.access_token, () => {
          // This callback is called when the token needs to be refreshed.

          // Call the server to get the refreshed token
          return fetch(url, {})
              .then(data => data.json())
              .then(result => {
                  console.log('received token:: ', result.access_token)
                  return result.access_token
              });
        })
  })
  .then(() =>
      VoxeetSDK.session.open({name: randomName})
        .then(() => {
            enableUI('test-conference')
        })
  )

thank you for your support.
hope document https://dolby.io/developers/interactivity-apis/client-sdk/initializing provides the same.

thank you for your support.
hope document https://dolby.io/developers/interactivity-apis/client-sdk/initializing provides the same.

Does it work as expected with the return? I'll make sure we update the documentation! Thanks!

Does it work as expected with the return? I'll make sure we update the documentation! Thanks!

yes It works right after I added return to callback function itself.
and also recieved a wrong code at https://support.dolby.io/hc/en-au/requests/1123
thnx

yes It works right after I added return to callback function itself.
and also recieved a wrong code at https://support.dolby.io/hc/en-au/requests/1123
thnx

Excellent news! I'll close the support ticket and I requested the documentation to be updated. Thank you.

Excellent news! I'll close the support ticket and I requested the documentation to be updated. Thank you.


Empty STAR data file shouldn't override any student assessment values

I misidentified what was happening here. The STAR data file names changed to reflect a distinction between current-year assessment and historical assessments. This stopped new STAR info from being updated because the import script did not recognize the new file names. Somewhere between these two events I must have reset and recreated the database.


ticdc fatal error: concurrent map iteration and map write when running 360 workload

What did you do?

open tidb sink changefeed
run 360 workload

What did you expect to see?
No response
What did you see instead?
fatal error: concurrent map iteration and map write
detail:
cdcerr.log
Versions of the cluster
Upstream TiDB cluster version (execute SELECT tidb_version(); in a MySQL client):
(paste TiDB cluster version here)

Upstream TiKV version (execute tikv-server --version):
(paste TiKV version here)

TiCDC version (execute cdc version):
sh-5.1# /cdc version
Release Version: v7.1.0-alpha
Git Commit Hash: 2b1b5ca84768a4e7ab7bc9b12571bbc2944080b9
Git Branch: heads/refs/tags/v7.1.0-alpha
UTC Build Time: 2023-03-20 11:32:32
Go Version: go version go1.20.2 linux/amd64
Failpoint Build: false
(paste TiCDC version here)

/severity critical


Log errors since 1.2.20

Version of home_assistant
2022.5.3

Version of the custom_component
1.2.20

Describe the bug
My log fills with errors since 1.2.20.
I installed HA 2022.5.3 and 1.2.20 at the same time.
Debug log

2022-05-08 23:19:15 ERROR (MainThread) [custom_components.dwd_weather] Unexpected error fetching DWD Weather Coordinator for wuerzburg data: list index out of range
Traceback (most recent call last):
  File "/srv/ha/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 191, in _async_refresh
    self.data = await self._async_update_data()
  File "/srv/ha/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 150, in _async_update_data
    return await self.update_method()
  File "/home/homeassi/.homeassistant/custom_components/dwd_weather/connector.py", line 58, in async_update
    return await self._hass.async_add_executor_job(self._update)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/home/homeassi/.homeassistant/custom_components/dwd_weather/connector.py", line 65, in _update
    self.dwd_weather.update()
  File "/srv/ha/lib/python3.9/site-packages/simple_dwd_weatherforecast/dwdforecast.py", line 469, in update
    self.parse_kml(kml)
  File "/srv/ha/lib/python3.9/site-packages/simple_dwd_weatherforecast/dwdforecast.py", line 496, in parse_kml
    result = tree.xpath("//dwd:IssueTime", namespaces=self.namespaces)[0].text
IndexError: list index out of range
2022-05-08 23:19:15 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/srv/ha/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 137, in _handle_refresh_interval
    await self._async_refresh(log_failures=True, scheduled=True)
  File "/srv/ha/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 270, in _async_refresh
    update_callback()
  File "/srv/ha/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 533, in async_write_ha_state
    self._async_write_ha_state()
  File "/srv/ha/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 571, in _async_write_ha_state
    state = self._stringify_state(available)
  File "/srv/ha/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 539, in _stringify_state
    if (state := self.state) is None:
  File "/srv/ha/lib/python3.9/site-packages/homeassistant/components/weather/__init__.py", line 306, in state
    return self.condition
  File "/home/homeassi/.homeassistant/custom_components/dwd_weather/weather.py", line 63, in condition
    return self._connector.get_condition()
  File "/home/homeassi/.homeassistant/custom_components/dwd_weather/connector.py", line 168, in get_condition
    return self.dwd_weather.get_forecast_condition(
  File "/srv/ha/lib/python3.9/site-packages/simple_dwd_weatherforecast/dwdforecast.py", line 177, in get_forecast_condition
    if self.is_in_timerange(timestamp):
  File "/srv/ha/lib/python3.9/site-packages/simple_dwd_weatherforecast/dwdforecast.py", line 152, in is_in_timerange
    list(self.forecast_data.keys())[0]
AttributeError: 'NoneType' object has no attribute 'keys'

I have the same issue.
The problem is, that the SSL-Certificat from DWD is expired, so the https-URL are invalid
NET::ERR_CERT_DATE_INVALID
Subject: opendata.dwd.de
Issuer: DFN-Verein Global Issuing CA
Expires on: 08.05.2022
Current date: 09.05.2022

V 1.2.19 crashed about this SSL-error on DWD-side and V 1.2.20 crashed with an unsafe http-URL because the DWD-Side use HSTS!
Wait for DWD to fix the error

I tried to delete and reinstall again the integration but I only get "unknown error" :(

Error for me also, deleted integration because I had the same error described at the top and on adding I get this now:
Traceback (most recent call last):
  File "/config/custom_components/dwd_weather/config_flow.py", line 71, in async_step_user
    info = await validate_input(self.hass, user_input)
  File "/config/custom_components/dwd_weather/config_flow.py", line 49, in validate_input
    await dwd_weather_data.async_update()
  File "/config/custom_components/dwd_weather/connector.py", line 58, in async_update
    return await self._hass.async_add_executor_job(self._update)
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/dwd_weather/connector.py", line 65, in _update
    self.dwd_weather.update()
  File "/usr/local/lib/python3.9/site-packages/simple_dwd_weatherforecast/dwdforecast.py", line 469, in update
    self.parse_kml(kml)
  File "/usr/local/lib/python3.9/site-packages/simple_dwd_weatherforecast/dwdforecast.py", line 496, in parse_kml
    result = tree.xpath("//dwd:IssueTime", namespaces=self.namespaces)[0].text
IndexError: list index out of range

Hi, this is all related to the SSL error of the DWD site. My quick attempt to fix this wasn't successful, because I forgot about HSTS.
So please wait until DWD renews their certificate.

Hi, this is all related to the SSL error of the DWD site. My quick attempt to fix this wasn't successful, because I forgot about HSTS.
So please wait until DWD renews their certificate.

Release you a new version with the correct SSL-URL after DWD fixed his SSL-Cert?

DWD has fix the problem.
The side is reach over a new SSL-Cert.

Yepp, DWD Weather is back. :smile:

sadly the same error still persists as i installed the update to 1.2.20 like in https://github.com/FL550/dwd_weather/issues/52#issue-1228991097 .
core-2022.5.1
Python-Version | 3.9.6
Tried reboots and reinstalls.
any tips for me?

Downgrade to 1.2.17 works for me.

sadly the same error still persists as i installed the update to 1.2.20 like in #52 (comment) . core-2022.5.1 Python-Version | 3.9.6 Tried reboots and reinstalls. any tips for me?

Change in the file
custom_components/dwd_weather/manifest.json
 "requirements": ["simple_dwd_weatherforecast==1.1.3","markdownify==0.6.5"]
to
 "requirements": ["simple_dwd_weatherforecast==1.1.4","markdownify==0.6.5"]
@FL550
I think, you must release a new version from the Add-on with this change

The new release is now live.

The new release is now live.

Works for me. 👍
Thanks!

Fine for me :) Thanks so much!!!


Actualize and improve FFI extension

Add FFI\CType::getName() method. It is not documented, but exists since 8.0+
Add the simplest rule for FFI autocomplete (.phpstorm.meta.php)
Add autocomplete for FFI\CData

There are problems in CI. The CData class is ArrayAccessible and Countable, but it is not possible to call these methods directly.
$cdata = \FFI::new('int[10]');

$cdata[0]->cdata = 42;    // Ok
$cdata->offsetSet(0, 42); // Error

In order for the PhpStorm to allow access to this type by index and not show an error, the ArrayAccessible interface with private access methods is required (exclusion from the autocomplete).

Could you please fix the quotes?

Sure. Done.


C++ language components update failed

Updating C/C++ dependencies...
Downloading package 'C/C++ language components (Windows)' (2580 KB) ..............
This process is broken and stop at 67%, don't know why. I tried to reboot vscode several times, but still failure.

VSCode Version: Code 1.10.1 (653f8733dd5a5c43d66d7168b4701f94d72b62e5, 2017-03-02T00:33:15.706Z)
OS Version: Windows_NT ia32 10.0.10586
Extensions:

Extension
Author
Version

python
donjayamanne
0.5.8

xml
DotJoshJohnson
1.7.0

yang
marko2276
0.1.3

cpptools
ms-vscode
0.10.2

vscode-docker
PeterJausovec
0.0.12

vscode-icons
robertohuertasm
7.3.0

cmake
twxs
0.0.15

robotframework
vivainio
0.1.2

vscode-proto3
zxh404
0.1.0

Steps to Reproduce:

Please file this against the C++ extension here https://github.com/Microsoft/vscode-cpptools


OpenAI Approximate Cost for Demo?

Would be great to understand how much cost (range) would be incurred for setup and a few queries.

Some additional guidance and consideration around "setup from scratch" is needed, for example the openai api free tier is rate limited to 3 embeddings per minute, so the example import_data_to_weaviate.py fails with rate hard limits exceeded.

Thanks for the issue; this is a completely valid question! I added a section to the main README which goes into more detail on the costs. The demo mainly uses OpenAI models; for importing the dataset, we use the ada-v2 model, and the import costs roughly $0.002. For the query and summary generation, we use the GPT-4 model because of its high-quality output and capabilities to understand user intentions; the costs are roughly $0.20/1k token (a token is about four characters)
Here's a bit more info about the pricing: https://openai.com/pricing
For users that don't have access to GPT-4, I added instructions on how to swap to another OpenAI model, such as gpt-3.5-turbo. I agree that only using the OpenAI models makes this demo restrictive, and I'd love to provide alternatives to other LLM providers in the future.
To solve the rate limitation issue for free tier users, I will provide the embeddings for the dataset soon.

The dataset with pre-generated embeddings was added in this PR https://github.com/weaviate/healthsearch-demo/pull/9

Thank you!


IMPROVE ------- Favorite Items when delete Images take again, we can avoid this ??

we can play them on local ?????

I think we can


github copilot - subscription conflict

VS Code Version: 1.86.2 (Universal)
OS Version: Darwin x64 22.6.0

i have the github copilot subscription (personal)
An organization I am part of has just added github copilot, so I also have access.

The organization disabled github copilot chat, so I can't access its functionalities.
Is there any way to make github copilot consider my personal subscription ?

Hi @lramos15 do you know if this is something we can fix, or should @viclunam address the question to someone else?

You can't have more than one Copilot subscription. A Copilot for Business seat will cancel your individual plan, so you only have access via the org, which means their settings apply. If you were on a paid Copilot plan, you should see a refund in your billing history.
You can ask the org to remove you, and then you can re-subscribe and use your own settings.

Entiendo, gracias.


All these clap::Parser warnings in the layout21converters CLIs

It seems they really really want us to update usage of many of these Parser fields:
warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/gds2ser.rs:18:5
   |
18 |     gds: String,
   |     ^^^
   |
   = note: `#[warn(deprecated)]` on by default

warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/gds2ser.rs:21:5
   |
21 |     fmt: String,
   |     ^^^

warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/gds2ser.rs:24:5
   |
24 |     out: String,
   |     ^^^

warning: use of deprecated associated function `clap::ArgMatches::is_present`: Replaced with either `ArgAction::SetTrue` or `ArgMatches::contains_id(...)`
  --> layout21converters/src/gds2ser.rs:27:14
   |
27 |     verbose: bool,
   |              ^^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/gds2ser.rs:18:5
   |
18 |     gds: String,
   |     ^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/gds2ser.rs:21:5
   |
21 |     fmt: String,
   |     ^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/gds2ser.rs:24:5
   |
24 |     out: String,
   |     ^^^

warning: function `main` is never used
  --> layout21converters/src/gds2ser.rs:30:4
   |
30 | fn main() -> Result<(), Box<dyn Error>> {
   |    ^^^^
   |
   = note: `#[warn(dead_code)]` on by default

warning: function `parse_format` is never used
  --> layout21converters/src/gds2ser.rs:37:4
   |
37 | fn parse_format(format: &str) -> Result<SerializationFormat, Box<dyn Error>> {
   |    ^^^^^^^^^^^^

   Compiling layout21converters v0.2.1 (/Users/dan/dev/Vlsir/Layout21/layout21converters)
warning: `layout21converters` (lib) generated 9 warnings
warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/lef2yaml.rs:16:5
   |
16 |     lef: String,
   |     ^^^
   |
   = note: `#[warn(deprecated)]` on by default

warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/lef2yaml.rs:19:5
   |
19 |     yaml: String,
   |     ^^^^

warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/proto2gds.rs:18:5
   |
18 |     proto: String,
   |     ^^^^^
   |
   = note: `#[warn(deprecated)]` on by default

warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/gds2proto.rs:17:5
   |
17 |     gds: String,
   |     ^^^
   |
   = note: `#[warn(deprecated)]` on by default

warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/proto2gds.rs:20:5
   |
20 |     gds: String,
   |     ^^^

warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/proto2gds.rs:22:5
   |
22 |     tech: String,
   |     ^^^^

warning: use of deprecated unit variant `clap::ArgAction::StoreValue`: Replaced with `ArgAction::Set` or `ArgAction::Append`
  --> layout21converters/src/gds2proto.rs:20:5
   |
20 |     proto: String,
   |     ^^^^^

warning: use of deprecated associated function `clap::ArgMatches::is_present`: Replaced with either `ArgAction::SetTrue` or `ArgMatches::contains_id(...)`
  --> layout21converters/src/lef2yaml.rs:22:14
   |
22 |     verbose: bool,
   |              ^^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/lef2yaml.rs:16:5
   |
16 |     lef: String,
   |     ^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/lef2yaml.rs:19:5
   |
19 |     yaml: String,
   |     ^^^^

warning: use of deprecated associated function `clap::ArgMatches::is_present`: Replaced with either `ArgAction::SetTrue` or `ArgMatches::contains_id(...)`
  --> layout21converters/src/proto2gds.rs:24:14
   |
24 |     verbose: bool,
   |              ^^^^

warning: use of deprecated associated function `clap::ArgMatches::is_present`: Replaced with either `ArgAction::SetTrue` or `ArgMatches::contains_id(...)`
  --> layout21converters/src/gds2proto.rs:23:14
   |
23 |     verbose: bool,
   |              ^^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/proto2gds.rs:18:5
   |
18 |     proto: String,
   |     ^^^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/proto2gds.rs:20:5
   |
20 |     gds: String,
   |     ^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/proto2gds.rs:22:5
   |
22 |     tech: String,
   |     ^^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/gds2proto.rs:17:5
   |
17 |     gds: String,
   |     ^^^

warning: use of deprecated associated function `clap::Arg::<'help>::validator`: Replaced with `Arg::value_parser(...)`
  --> layout21converters/src/gds2proto.rs:20:5
   |
20 |     proto: String,
   |     ^^^^^

warning: `layout21converters` (bin "proto2gds" test) generated 7 warnings
warning: `layout21converters` (bin "gds2ser" test) generated 7 warnings (7 duplicates)
warning: `layout21converters` (lib test) generated 8 warnings (8 duplicates)
warning: `layout21converters` (bin "gds2proto" test) generated 5 warnings
warning: `layout21converters` (bin "lef2yaml" test) generated 5 warnings

https://github.com/dan-fritchman/Layout21/commit/56e40c671d5f5101b0fa69f6b997448f4a8c5a8a fixed this by

Upgrading to clap ^4.0, and
Replacing all the #[clap] decorators with #[arg]

Merged in via #35


Add more variable types to RPV

It only supports integer and list, needs to support at least float/double, char and so on...

Correct, but point is that each of these types should be issued as separated rule issue, like String rule (#51). I'll close this for now and add new types in the following issues.


[grpc] Build Fails on ARM/ARM64 on Windows

There a several minor compiler errors when building for ARM/ARM64 on Windows.  A PR will be coming forthwith.

@dwcullop, thank you for posting this issue and submitting a fix!
The PR has merged, so close this issue.


Add GA event to State selection (Fixes #782)

This will fire an event to GA when a state is selected. The event will have the form:
{
    category: 'Filter',
    action: 'Selected a State',
    label: '<two-letter state code>'
}

I think we could move it the on state change effect and add the route info for clarity. This addresses both Boris's comment and mine ;)

@bcherny I generally have the philosophy that behavioural events belong with the things that are actually being interacted with - their purpose is to record the interaction. I think if this was in effects it would complicate things because of cases where the selectedState is updated outside of user interaction. What's your take?

@philip At Fb we try to keep loggers in undux effects, so all loggers live in a central place and are easy to audit and refactor. If you’re concerned that the value might be updated outside of a user interaction, then keeping it where it is sounds fair to me!


Remove vendored dependencies

I couldn't think of a good reason why we were vendoring all of our dependencies :shrug: so this PR:

Removes all of our vendored dependencies
Removes references to vendoring in Makefile

How do we know this works?

make build completes successfully
make container completes successfully

The integration tests run, but I haven't got them to complete successfully yet.

It looks like the integration tests are passing successfully in CI. Is it still not working for you?

Not yet, but pleased CI passes :tada:  Looks like a problem with how the test is orchestrated rather than the binary itself :+1:

I think the references to observatorium/observatorium need updating to observatorium/api too thinking

Yes, nice call. Let's go ahead and do this too :)

I'll deal with the observatorium -> api change in a follow-up PR :+1:


Add configurable option to choose unique entity ids or not.

Description:
Since unique entity ids in Vera are enforced by appending the Vera device ID, it is impossible to freely define the entity_ids. While I understand the reasoning, and that many people would prefer having their entity_ids automatically unique, I would much prefer to be able to define my entity_ids on my own, by making sure the names in Vera are unique. Vera is currently the only component I use where I can't define my entity_ids, and I repeatedly have to look up the vera id when creating automations - which is tedious.
This PR adds a boolean variable, unique_entities, to the config, with the default set to True, optionally letting people, like myself, have full control of the entity_ids.
Related Pull Request: https://github.com/home-assistant/home-assistant/pull/6523/
Pull request in home-assistant.github.io with documentation (if applicable): home-assistant/home-assistant.github.io#5257
Example entry for configuration.yaml (if applicable):

Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass

If user exposed functionality or configuration variables are added/changed:

[x] Documentation added/updated in home-assistant.github.io

If the code communicates with devices, web services, or third-party tools:

[ ] New dependencies have been added to the REQUIREMENTS variable (example).
[ ] New dependencies are only imported inside functions that use them (example).
[ ] New dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[ ] New files were added to .coveragerc.

If the code does not interact with devices:

[ ] Tests have been added to verify that the new code works.

Hi @middelthun,
It seems you haven't yet signed a CLA. Please do so here.
Once you do that we will be able to review and accept this pull request.
Thanks!

Would it be better to add support for the entity registry so that entity id's can be defined in there?

Would it be better to add support for the entity registry so that entity id's can be defined in there?

Mm-m, I would agree actually. That does sound like a neater way of solving this than what I am currently doing. I do believe however, that someone with a better understanding of the stack and the entity registry than me would have to take a look at it.

I figured I might as well finish tidying my code regardless. And sorry for the fumbling noise. I'm pretty new to git, as you probably already realized.

Yes, I realized, and agree. Thank you for the pointers! I'll look into it, and rather return with a proper solution later.


Negated predicate marker is not strict enough

I'm just realizing that the following will unfortunately pass if foo? returns nil, which I believe is usually what one does not want.
expect(something).not_to be_foo

Unless I'm mistaken, there is no cop to detect this.
Is there a better way than to write the following?
expect(something.foo?).to be_false

Ideally, a cop would also catch and autocorrect is_expected.not_to be_foo to expect(subject.foo?).to be_false. It would also deal with be_foo(:some_args).

I think if this can he enforced on RSpec side, it should. I recall this strict predicate option that you’ve contributed, do you think the not_to be_foo would pass for nil?
If so, I’d say that it is not strict enough.
Also, historically, rubocop-rspec considers those things that can be detected with RSpec warnings or failures as non-goals.
But I’m open to reconsider this if there’s a case.

Ah, I doubled checked the documentation, and indeed one can optionally define does_not_match?, which would allow that.
I opened https://github.com/rspec/rspec-expectations/issues/1487 🤞
I'm surprised this never came up before (at least I didn't see an issue about it).

Sorry for the noise. Simply need to turn on the config for strict_predicate_matchers


Adds new card for BC registries API Gateway

Issue #: bcgov/entity#17308
Description of changes:

Adds new card that links to BC registries API Gateway

/gcbrun

@pwei1018 Do you need to update any of the deployment set up for the link to work correctly? I believe it should just copy it from the .env.example file into .env
Also can you please assign this Pull request to myself and add the necessary reviewers.

/gcbrun

Temporary Url for review: https://yfthig-dev--pr-142-x1mfzgde.web.app

@pwei1018 Do you need to update any of the deployment set up for the link to work correctly? I believe it should just copy it from the .env.example file into .env
Also can you please assign this Pull request to myself and add the necessary reviewers.

In devops/vaults.env, you need to add
REGISTRIES_API_GATEWAY_URL="op://web-url/$APP_ENV/bcregistry/REGISTRIES_API_GATEWAY_URL"
So that the CD pipeline will get the value from 1password vault service.

/gcbrun

Temporary Url for review: https://yfthig-dev--pr-142-x1mfzgde.web.app

/gcbrun

Temporary Url for review: https://yfthig-dev--pr-142-x1mfzgde.web.app

Yes I can set the flags based on your comments above.
Regarding your comments about the testing, I am not sure what its referring to please me on rocketChat

creating a new PR, should cover this


all resources list

should be in alpha order by title -- mostly is, but apparently some exceptions (why?)

fixed!


Bump sigs.k8s.io/controller-tools to 0.16.3

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
Bump sigs.k8s.io/controller-tools to 0.16.3
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Fix for https://github.com/kubernetes-sigs/kueue/pull/3064 and https://github.com/kubernetes-sigs/kueue/pull/3060.
Does this PR introduce a user-facing change?

NONE

/assign @mimowo


Update Bazel

Breaking commit is likely to be https://github.com/bazelbuild/bazel/commit/0e2394ababc998c0b6836aed98e9c6c528166279.


AVL Tree

AVL Tree data structure and its test.

Nothing special. _findMin is the real method, a generic one. findMin just calls _findMin with the root, so walks the hole tree to find the minimum. Just created a new method to simplify a very repeating task. Same idea for _findMax and findMax.

Thanks for the contribution


tvOS support?

Can tvOS support be added?
http://blog.cocoapods.org/CocoaPods-0.39/

https://github.com/pusher-community/pusher-websocket-swift/pull/19


[vcpkg_execute_build_process] Catch ld signal 9

What does your PR fix?
Fixes build errors when a parallel build runs into out-of-memory situations during linking on Linux by restarting in non-parallel mode, similar to behaviour in MSVC context.
Verified locally with osgearth:x64-linux.
Issues: #22172,  #20974, #20552, #19705
etc.

Which triplets are supported/not supported? Have you updated the CI baseline?
unchanged.

Does your PR follow the maintainer guide?
yes

If you have added/updated a port: Have you run ./vcpkg x-add-version --all and committed the result?
not needed.

LGTM, thanks!


Whether allow node.prop accept invalid CSS if it's start with $

See PR https://github.com/cssobj/cssobj-core/pull/1
Think below code:
cssobj({
  p: { $test: true, font: 123, color: null }
})

The $test prop will be dropped in node.prop object, since true cannot pass the condition:
if( isValidCSSValue(val) ) ...

So the resulting v-node is:
{
  ...
  rawVal: { $test:[true], font: [123], color: [null] },
  prop: { font: [123] }
  ...
}

User can check the node.rawVal object to get the $test value.
The Different between rawVal and prop is: the first is before value plugins, the latter is value after all value plugins, in addition, ensure it's Valid CSS
This branch is allow node.prop accept invalid CSS values if it's start with "$":
https://github.com/cssobj/cssobj-core/blob/prop-allow-all-%24/lib/cssobj-core.js#L287
This will allow above code resulting as below:
{
  ...
  rawVal: { $test:[true], font: [123], color: [null] },
  prop: { $test:[true], font: [123] }
  ...
}

Does this make sense? Is there any side effects?

Well, I fail to see how this would be used. Adding some real use case for this feature might help...

node.rawVal will accept any value, even it's not valid CSS value. that's the meaning of raw


'right' should allow arrays

It would be nice if I could do something like this:
const rule = { left: '@value', fn: 'equals', right: [1,2] }

If value equals 1 or 2 rule would evaluate to true else false.
Having to combine rules to achieve the same thing is extremely verbose. It would be nice to simply into one rule that is still just as readable as the combination.

Regent 1.0 actually used to work like this. We would now implement that logic like this.
const rule1 = { left: '@value', fn: 'equals', right: 1 }
const rule2 = { left: '@value', fn: 'equals', right: 2 }
const composedRule = regent.or(rule1, rule2)

If that becomes burdensome you could pretty quickly write a custom predicate that did what you needed, and name it orEqual or something.
Actually, thinking about it more, if this is something people want I would write a predicate that did it, but we have been trying to keep the interface light so far. Maybe we could add a directory of canned custom predicates that could be optionally included. So you could do something like this.
import regent from 'regent'
import { orEquals } from '../node_modules/regent/predicates' // maybe this is it's own npm module
const king = regent.crown({ orEquals })

const rule = { left: '@value', fn: 'orEquals', right: [1,2] }

Thoughts?

You can do it thusly:
const rule = { left: [1, 2], fn: 'includes', right: '@value' }

@eisenivan: I am not sure I like hiding predicates in some mysterious folder that you need to know about to use. I think it should be a decision on the direction the library is going. If it is something the team decides is not in the direction the library would like to go then it probably should not be part of the library and more a custom predicate.

@aLittleTooQuiet is that an intended use of a rule definition or more of a hack? It seems to make sense to me but want to make sure that is an intended use rather than a workaround.

@ajzozakiewicz yep, that's the intended functionality of the includes predicate. No hackery.

Awesome. I'll close the issue in favor of that solution. Thanks!


make integration segfault

Running make integration on my machine segfaults:
    $ make integration
    panic: runtime error: index out of range

    goroutine 1 [running]:
    github.com/code-ready/crc/test/integration/crcsuite.ParseFlags()
            /home/teuf/go/src/github.com/code-ready/crc/test/integration/crcsuite/prepare.go:64 +0x154
    github.com/code-ready/crc/test/integration.parseFlags()
            /home/teuf/go/src/github.com/code-ready/crc/test/integration/integration_test.go:62 +0x25
    github.com/code-ready/crc/test/integration.TestMain(0xc0000b1f10)
            /home/teuf/go/src/github.com/code-ready/crc/test/integration/integration_test.go:33 +0x34
    main.main()
            _testmain.go:38 +0x10f
    FAIL    github.com/code-ready/crc/test/integration      0.015s
    make: *** [Makefile:120: integration] Error 1

This happens because I did not set BUNDLE_LOCATION and PULL_SECRET_PATH.

seems it does not check if the recieved arguments are populated. it should bailout when not provided.


SSL common name mismatch when changing host, but keeping host header

Simple way to recreate issue:
<?php

require 'vendor/autoload.php';

$request = new \GuzzleHttp\Psr7\Request(
    'GET',
    'https://awesome-app.com/',
    [
        'Host' => 'awesome-app.com'
    ]
);

print_r($request);

$guzzle = new \GuzzleHttp\Client();

$ip = '<IP_ADDRESS>';

$request = $request->withUri(
    $request->getUri()->withHost($ip),
    true
);

print_r($request);

$guzzleResponse = $guzzle->send(
    $request,
    [
        'headers' => [
            'Host' => 'awesome-app.com'
         ]
    ]
);

Output:
GuzzleHttp\Psr7\Request Object
(
    [method:GuzzleHttp\Psr7\Request:private] => GET
    [requestTarget:GuzzleHttp\Psr7\Request:private] =>
    [uri:GuzzleHttp\Psr7\Request:private] => GuzzleHttp\Psr7\Uri Object
        (
            [scheme:GuzzleHttp\Psr7\Uri:private] => https
            [userInfo:GuzzleHttp\Psr7\Uri:private] =>
            [host:GuzzleHttp\Psr7\Uri:private] => awesome-app.com
            [port:GuzzleHttp\Psr7\Uri:private] =>
            [path:GuzzleHttp\Psr7\Uri:private] => /
            [query:GuzzleHttp\Psr7\Uri:private] =>
            [fragment:GuzzleHttp\Psr7\Uri:private] =>
        )

    [headers:GuzzleHttp\Psr7\Request:private] => Array
        (
            [Host] => Array
                (
                    [0] => awesome-app.com
                )

        )

    [headerNames:GuzzleHttp\Psr7\Request:private] => Array
        (
            [host] => Host
        )

    [protocol:GuzzleHttp\Psr7\Request:private] => 1.1
    [stream:GuzzleHttp\Psr7\Request:private] =>
)

GuzzleHttp\Psr7\Request Object
(
    [method:GuzzleHttp\Psr7\Request:private] => GET
    [requestTarget:GuzzleHttp\Psr7\Request:private] =>
    [uri:GuzzleHttp\Psr7\Request:private] => GuzzleHttp\Psr7\Uri Object
        (
            [scheme:GuzzleHttp\Psr7\Uri:private] => https
            [userInfo:GuzzleHttp\Psr7\Uri:private] =>
            [host:GuzzleHttp\Psr7\Uri:private] => <IP_ADDRESS>
            [port:GuzzleHttp\Psr7\Uri:private] =>
            [path:GuzzleHttp\Psr7\Uri:private] => /
            [query:GuzzleHttp\Psr7\Uri:private] =>
            [fragment:GuzzleHttp\Psr7\Uri:private] =>
        )

    [headers:GuzzleHttp\Psr7\Request:private] => Array
        (
            [Host] => Array
                (
                    [0] => awesome-app.com
                )
        )

    [headerNames:GuzzleHttp\Psr7\Request:private] => Array
        (
            [host] => Host
        )

    [protocol:GuzzleHttp\Psr7\Request:private] => 1.1
    [stream:GuzzleHttp\Psr7\Request:private] =>
)
PHP Fatal error:  Uncaught GuzzleHttp\Exception\RequestException: cURL error 51: SSL: certificate subject name 'awesome-app.com' does not match target host name '<IP_ADDRESS>' (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) in ./vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php:187

It appears the Host header isn't being sent with the request.

Turns out it's curl. It doesn't use the Host header for SNI.


Switch cyrlatconverter-v0.6.1.js from tabs to spaces

Switch from tabs in file to 4 spaces

i will do

Resolved


Rigid bones for skeletal animation

As sample of feature: https://dl.dropboxusercontent.com/s/bhl7jjf55kumtu4/2016-05-11_23-22-59.gif