Error from leva.core.SubPanel: "Invalid hook call. Hooks can only be called inside of the body of a function component."

Hi there,
I was just going through the examples, and everything works fine for me except the SubPanel component.
With the following code
(ns core
  (:require [leva.core :as leva]
            [reagent.core :as r]
            [reagent.dom :as rdom]))

(defonce controls (r/atom {:width 500 :height 500}))

(defn app []
  [:div
   [leva/SubPanel {:fill true :titleBar {:drag false}}
    [leva/Controls {:folder {:name "Plot Controls"} :atom controls}]]])

;;; Lifecycle / entry point

(defn start [] (rdom/render [app] (.getElementById js/document "app")))
(defn stop [] (js/console.log "stopping..."))
(defn ^:export init [] (start))

I get this error in the JS console:
react-dom.development.js:16228 Uncaught Error: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app
See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.

(Full stack trace)
react-dom.development.js:16228 Uncaught Error: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app
See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.
    at Object.throwInvalidHookError (react-dom.development.js:16228:13)
    at exports.useMemo (react.development.js:1651:21)
    at exports.useCreateStore (leva.cjs.dev.js:1280:16)
    at Function.eval [as cljs$core$IFn$_invoke$arity$variadic] (core.cljs:156:16)
    at cmp.leva$core$SubPanel [as reagentRender] (core.cljs:139:1)
    at eval (component.cljs:88:28)
    at Object.reagent$impl$component$wrap_render [as wrap_render] (component.cljs:91:31)
    at Object.reagent$impl$component$do_render [as do_render] (component.cljs:117:6)
    at eval (component.cljs:260:64)
    at Object.reagent$ratom$in_context [as in_context] (ratom.cljs:44:6)
throwInvalidHookError @ react-dom.development.js:16228
exports.useMemo @ react.development.js:1651
exports.useCreateStore @ leva.cjs.dev.js:1280
eval @ core.cljs:156
leva$core$SubPanel @ core.cljs:139
eval @ component.cljs:88
reagent$impl$component$wrap_render @ component.cljs:91
reagent$impl$component$do_render @ component.cljs:117
eval @ component.cljs:260
reagent$ratom$in_context @ ratom.cljs:44
reagent$ratom$deref_capture @ ratom.cljs:57
reagent$ratom$run_in_reaction @ ratom.cljs:539
reagent$impl$component$wrap_funs_$_render @ component.cljs:260
finishClassComponent @ react-dom.development.js:19753
updateClassComponent @ react-dom.development.js:19699
beginWork @ react-dom.development.js:21612
callCallback @ react-dom.development.js:4165
invokeGuardedCallbackImpl @ react-dom.development.js:4214
invokeGuardedCallback @ react-dom.development.js:4278
beginWork$1 @ react-dom.development.js:27452
performUnitOfWork @ react-dom.development.js:26561
workLoopSync @ react-dom.development.js:26467
renderRootSync @ react-dom.development.js:26435
performSyncWorkOnRoot @ react-dom.development.js:26086
flushSyncCallbacks @ react-dom.development.js:12043
scheduleUpdateOnFiber @ react-dom.development.js:12022
updateContainer @ react-dom.development.js:28859
legacyRenderSubtreeIntoContainer @ react-dom.development.js:29616
exports.render @ react-dom.development.js:29686
reagent$dom$render_comp @ dom.cljs:17
eval @ dom.cljs:51
eval @ dom.cljs:37
core$start @ VM3944 core.js:10
eval @ env.cljs:209
shadow$cljs$devtools$client$env$do_js_reload_STAR_ @ env.cljs:218
G__55374 @ env.cljs:218
eval @ env.cljs:247
shadow$cljs$devtools$client$env$do_js_reload_STAR_ @ env.cljs:218
G__55374 @ env.cljs:218
eval @ env.cljs:210
shadow$cljs$devtools$client$env$do_js_reload_STAR_ @ env.cljs:218
eval @ env.cljs:254
shadow$cljs$devtools$client$browser$do_js_reload @ browser.cljs:43
eval @ browser.cljs:93
eval @ shared.cljs:32
shadow$remote$runtime$shared$process @ shared.cljc:181
eval @ shared.cljs:289
shadow$cljs$devtools$client$shared$remote_msg @ shared.cljs:16
eval @ websocket.cljs:16
react-dom.development.js:18688 The above error occurred in the <leva.core.SubPanel> component:

    at leva.core.SubPanel (js/cljs-runtime/reagent.impl.component.js:499:43)
    at div
    at core.app (js/cljs-runtime/reagent.impl.component.js:499:43)

Consider adding an error boundary to your tree to customize error handling behavior.
Visit https://reactjs.org/link/error-boundaries to learn more about error boundaries.

After reading https://reactjs.org/link/invalid-hook-call, I think it's possibly something I am doing wrong here, but even in a slimmed down version of the project without other dependencies that might conflict, I run into the same thing.
I'm using shadow-cljs, and these are the contents of some of the key files:

package.json
{
  "name": "leva-example",
  "version": "0.0.1",
  "private": true,
  "devDependencies": {
    "shadow-cljs": "2.22.2"
  },
  "dependencies": {
    "create-react-class": "^15.7.0",
    "leva": "0.9.34",
    "react": "^18.2.0",
    "react-dom": "^18.2.0"
  }
}

shadow-cljs.edn
; use deps.edn with the :shadow alias
{:deps {:aliases [:shadow]}
 :builds
 {:app
  {:target     :browser
   :output-dir "public/js"
   :asset-path "js"
   :modules    {:main {:entries [core]}}
   :devtools   {:preloads     [hashp.core]
                :repl-init-ns core
                :repl-pprint  true
                :before-load  core/stop
                :after-load   core/start
                :http-root    "public"
                :http-port    8020}}}}

deps.edn
{:paths ["src"]
 :deps
 {org.clojure/clojure       {:mvn/version "1.11.1"}
  org.clojure/clojurescript {:mvn/version "1.11.60"}
  org.clojure/core.async    {:mvn/version "1.6.673"}
  reagent/reagent           {:mvn/version "1.2.0"
                             :exclusions  [cljsjs/react cljsjs/react-dom cljsjs/react-dom-server]}
  org.mentat/leva.cljs      {:mvn/version "0.2.2"}}

 :aliases
 {:shadow
  {:extra-deps
   {thheller/shadow-cljs {:mvn/version "2.21.0"}
    binaryage/devtools   {:mvn/version "1.0.5"}
    hashp/hashp          {:mvn/version "0.2.2"}}}}}

Have you run into anything like this?

Thanks @sritchie!
I created a minimal repro here: https://github.com/matthewdowney/leva-example
I was able to reproduce the issue by:
git clone https://github.com/matthewdowney/leva-example
cd leva-example
npm i
bb dev

And then browsing to the shadow-cljs HTTP server's port on localhost and opening the dev console.

I got it to work, but my understanding of React / front end in general is at approximately the level of a golden retriever's, so apologies if this is incoherent. I think you'll be able to spot it right away.
As far as I can tell, SubPanel needs to be inside of [:f> ...] because it uses the useCreateStore hook. The obvious approach of
[:f> leva/SubPanel {:fill true :titleBar {:drag false}}
 [leva/Controls {:folder {:name "Plot Controls"} :atom controls}]]

runs into something about an Uncaught TypeError: Cannot use 'in' operator to search for '[object Object]' in undefined ... maybe related to creating a function component and passing children at the same time?
So I Frankensteined some parts of Leva.cljs's core namespace, and that did it for me:
(ns core
  (:require [leva :as l]
            ["react" :as react]
            [leva.schema :as schema]
            [reagent.core :as r]
            [reagent.dom :as rdom]))

(defonce controls (r/atom {:width 500 :height 500}))

(defn Config [opts & children]
  (if-let [store (:store opts)]
    [:<>
     [:> l/LevaPanel (assoc opts :store store)]
     (into [:> l/LevaStoreProvider {:store store}] children)]
    (into [:<> [:> l/Leva opts]] children)))

(defn SubPanel [opts & children]
  (let [store (l/useCreateStore)]
    (into [Config (assoc opts :store store)]
      children)))

(defn Controls* [opts]
  (let [[watch-id] (react/useState (str (random-uuid)))
        !state     (:atom opts)
        initial    (if !state (.-state !state) {})
        ks         (keys initial)
        opts       (update opts :store #(or % (l/useStoreContext)))
        [_ set] (apply l/useControls (schema/opts->argv opts))]
    (react/useEffect
      (fn mount []
        (if !state
          (do
            (add-watch !state watch-id
              (fn [_ _ _ new-state]
                (set (clj->js (select-keys new-state ks)))))
            (fn unmount []
              (remove-watch !state watch-id)))
          js/undefined)))
    nil))

(defn app []
  [:f> SubPanel {:fill true :titleBar {:drag false}}
   [:f> Controls* {:folder {:name "Plot Controls"} :atom controls}]])

;;; Lifecycle / entry point

(defn start [] (rdom/render [app] (.getElementById js/document "app")))
(defn ^:export init [] (start))

Is this hack just a longer way of doing some well-known but hard to Google React/Reagent thing to deal with this situation?

Thank you for the lovely bug report!! This is all of the detail I've ever hoped for in an issue, though I rarely find that hope fulfilled.
I'm going to stare at this now and see if I can get it fixed up. I was surprised that the component wasn't working, since I thought that I had everything going well in the docs notebook, but you've indeed found a smoking gun with that hook usage.
More soon...

Okay, #12 fixes this. I saw in your repro that backing Reagent off from 1.2.0 fixes it as well... I don't know why the lower version works, as this was a genuine bug from me. Thanks for tracking it down!
Give the latest git dependency a try:
{io.github.mentat-collective/leva.cljs
  {:git/sha "bb24493c8b4a0fcd862d69b4960fa297561fa5bb"}}

I checked it on the initial commit of your repro and it seems to do the job.

Yes this works great, thank you!


Swap partition should be encrypted

At least optionally, and probably by default.
http://askubuntu.com/a/313574

I believe a pull request that adds the necessary code to NixOS would be happily accepted.

Debian's decrypt_derived script may be useful for this (in /lib/cryptsetup/scripts/decrypt_derived). This way you don't need to enter multiple passwords during boot and it works without LVM (for the case if the root partition is already encrypted)
Here is the documentation

(triage) Anyone who wants to implement this?

There's a randomEncryption = true flag that can be applied on swap devices that was added by @abbradar in de8b8b35 but it did not work for me. Will provide more detailed errors soon.


Added support for lcd temp humid sensor _TZ3000_bjawzodf / TY0201

Copy of lcdtemphumidsensor but configureAttributeReporting removed since device doesn't seem to support that.
Tested on my own devices
TODO: Battery reporting doesnt look like it is working or isn't supported for this device. I have figured out how to the it working.

Closes #604

Hi there. This might not be needed as I am commenting out the troubeling code from the original driver as several users have reported this problem. Let's see if next test version solve this issue. Adding your code to original driver until further.

Hi there. This might not be needed as I am commenting out the troubeling code from the original driver as several users have reported this problem. Let's see if next test version solve this issue. Adding your device id to original driver until further.

I have no ide what that actually do even if i can guess from the names but it would be bad to remove if that make battery reporting not working for any devices.

Device id was added to old driver, if you still have problems using it please get back to me.


"gam all users delegate to" fails on own user

If I try to run
gam all users delegate to<EMAIL_ADDRESS>It works until it encounters the delegate's own email and then fails, stopping all further delegation.
This command should probably have some logic that prevents it from trying to delegate a user to its self.
output with personal info removed:
$ gam all users delegate to<EMAIL_ADDRESS>Getting all users in G Suite account (may take some time on a large account)...
Got 17 users...
done getting 17 users.
Giving<EMAIL_ADDRESS>delegate access to<EMAIL_ADDRESS>(1/17)
Giving<EMAIL_ADDRESS>delegate access to<EMAIL_ADDRESS>(2/17)
Giving<EMAIL_ADDRESS>delegate access to<EMAIL_ADDRESS>(3/17)
Giving<EMAIL_ADDRESS>delegate access to<EMAIL_ADDRESS>(4/17)
Giving<EMAIL_ADDRESS>delegate access to<EMAIL_ADDRESS>(5/17)
ERROR: Could not create delegation - 400 - <?xml version="1.0" encoding="UTF-8"?>
<AppsForYourDomainErrors>
  <error errorCode="1303"<EMAIL_ADDRESS>reason="EntityNameNotValid" />
</AppsForYourDomainErrors>

hi, find reason and solution :)
it happens when you want to give access to account, which was never opened - you have to open this account in browser and accept fiorst page...
then run GAM...

This is not the problem. I used<EMAIL_ADDRESS>in my example for a reason, and that is because I was trying to deleage users to my primary admin account which I use on a regular basis.
I'm sure that GAM will probably fail on actions that relate to an account that has never fully been set up, but that is not the problem I'm describing.

Try a command like:
gam print users | gam csv - gam user ~primaryEmail delegate to<EMAIL_ADDRESS>instead. This command will run faster and even though the delegation to self will still fail, the rest of the delegations should continue.


Encode user metadata value if it contains non-ascii character

User metadata now supports UTF-8 charset. However, when setting header that includes non-ascii characters, underlying netty replaces these characters with question mark without throwing any exception. This PR explicitly checks if header value contains non-ascii characters. If yes, it encodes the string and associate it with a special header, which will be identified and decoded by client.

Codecov Report

Merging #1734 (81effe1) into master (31649db) will decrease coverage by 58.47%.
The diff coverage is 0.00%.

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


Rename SearchGenotypePhenotypeRequest/Response

The endpoint /genotypephenotypes/search was refactored to /featurephenotypeassociations/search  - this was done to make the endpoint name consistent with the name of the entity type returned.
Should the request & response object types should be renamed as well?
SearchGenotypePhenotypeRequest -> SearchFeaturePhenotypeAssociationRequest
SearchGenotypePhenotypeResponse -> SearchFeaturePhenotypeAssociationResponse
From: Coffman, Adam<EMAIL_ADDRESS>Sent: Wednesday, September 14, 2016 1:34 PM
To: Sarah Hunt; Brian Walsh; Linda Huang; Ravi Pandya; Wagner, Alex
Subject: Re: GA4GH-G2P: Schemas endpoint name change

Hi Brian,

The naming change should be no big deal to implement. Is it intentional that the request and response object types are still SearchGenotypePhenotypeRequest and SearchGenotypePhenotypeResponse even though that is no longer the name of the endpoint?

Adam

Yes, I think so. It makes more sense to talk about the actual messages in the data model.


Wallet API restricted to localhost

This is not fun for a dockerized environment, can this check be made ignorable?
https://github.com/EOSIO/eos/blob/master/plugins/wallet_api_plugin/wallet_api_plugin.cpp#L103

@bytemaster Do you want to remove the localhost restriction on eos-walletd?

@bytemaster Indicated that this restriction can be removed and replaced with a warning.

So I'm thinking the warning should be:
              "*************************************\n"
              "*                                   *\n"
              "*  --   Wallet NOT on localhost  -- *\n"
              "*  - Password and/or Private Keys - *\n"
              "*  - are transferred unencrypted. - *\n"
              "*                                   *\n"
              "*************************************\n");

Will put this small change in as a PR tomorrow morning.


Typo in tutorial

In the tutorial at https://github.com/ridiculousfish/wavefiz/blob/db1f1bef7116442f82491993e3ea9c78d629aec3/html/tutorial.html#L269C25-L269C31 it currently reads:

momentum magnitude |ψ|

Shouldn't this be φ (psi) instead?

Fixed, thank you!


Add new LINQ samples

Hi @arramac, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (arramac). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, or work for Microsoft Open Technologies, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;


Fix issue 1036

Add support for the new GAE Flex beta environment. Also add a minor tweak to ensure gcloud SDK beta component is installed before integration tests are called, and improved the stackdriver gemspec's home page link.
To test all of these changes except for the home page link, simply run bundle exec rake integration:gae to cover deployment with new GAE Flex flag and new Core::Environment code.
close #1036

@dazuma please review

Will the integration tests verify that the new Core::Environment code works as intended, at least for the flex environment? You have run them with these changes, correct?

The integration tests will verify the Core::Environment code through this test case. If the GAE helper subs in Core::Environment aren't working as intended, this test case would have failed.


DCM: Add CAN msgs for clearing INV faults and configuring INV load switches

Summary
This PR will allow users of PCAN-Explorer to send the "Clear Inverter Fault" command to both inverters and open/close the inverter LV switches for faster EEPROM configuration and inverter power-cycling.
Note that the DCM module will only respond to these requests in the INIT state and FAULT state since it doesn't make sense to respond to PCAN requests in the DRIVE state.
Changelist

App_CanMsgs.dbc Added non-periodic CAN messages CLEAR_INV_FAULT_CMD and INV_LOAD_SWITCHES_CMD for PCAN users to transmit to the DCM.
DCM INIT state and DRIVE state respond accordingly to CLEAR_INV_FAULT_CMD and INV_LOAD_SWITCHES_CMD CAN messages

Testing Done

Tested on the car using PCAN-Explorer

Resolved Issues

Checklist
Please change [ ] to [x] when you are ready.

[x] I have read and followed the code conventions detailed in README.md (This will save time for both you and the reviewer!).
[x] If this pull request is longer then 500 lines, I have provided explicit justification in the summary above explaining why I cannot break this up into multiple pull requests (Small PR's are faster and less painful for everyone involved!).

@timbitss do you plan on moving the functions in sendnonperiodicsignals to shared_states and removing the sendnonperiodicsignals file completely?

@timbitss do you plan on moving the functions in sendnonperiodicsignals to shared_states and removing the sendnonperiodicsignals file completely?

Yes, you should hopefully see that in the files changed page

offline discussion: if no concerns, can power 12V from run on entry since we no longer run into faults when powering LV b4 HV. @joethrstn @Eddy13013 @Auhv @timbitss do u see any potential issues w this

offline discussion: if no concerns, can power inv 12V from run on entry since we no longer run into faults when powering LV b4 HV. @joethrstn @Eddy13013 @Auhv @timbitss do u see any potential issues w this

I don't see a concern since the DCM only enter the DRIVE state and transmit non-zero torque requests once the BMS is in the DRIVE state


Background Remover Extension Enhancement

Is your feature request related to a problem? Please describe.
This enhancement will merge the background and foreground and return the merged image.
Describe the solution you'd like.
I will merge images using this api
Describe alternatives you've considered.

[x]  GSSoC  Contributor

Kindly assign it to me. @ridsuteri
Add any other context or screenshots about the feature request here.
No response

I'm working on the implemention. But getting this error
Access to fetch at 'https://image-merger.herokuapp.com/api/v1.0/merge-images/' from origin 'http://<IP_ADDRESS>:5500' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

@ridsuteri It would be great if u could provide some resources to help me resolve it.

ge-merger.herokuapp.com/api/v1.0/me

try using allow Cors chrome extension


Tightening dependencies

I maintain the Hugo package for Fedora.
During the packaging process, I have come across a few things that I patch around. I wanted to bring these things to your attention in the hope that you might be able to address them upstream. Should our discussion suggest it, I am happy to create individual merge requests.

Hugo (up to 0.98.0) relies on github.com/clbanning/mxj/v2 v2.5.5. Fedora provides golang-github-clbanning-mxj 2.5.5 (note the lack of the "v2"), and Hugo seems to build just fine against this. Did what was once known as "v2" get merged into the master branch? Can Hugo drop the use of "v2" and simply use the primary release of this package?

Hugo has for some time relied on github.com/gohugoio/go-i18n/v2. The "about" text associated with this repository reads "This is a short-lived fork to fix a critical upstream issue, do not use." Is it possible that Hugo could transition back to the upstream version of this package? Have they fixed the "critical upstream issue".

github.com/clbanning/mxj/v2 v2.5.5.  <== this is how Go modules works. It's admittingly unfortunate in this scenario, but I don't see how Hugo can solve it (without changing away from using Go's build tools).
I haven't checked lately.

Okay, I started a discussion with my fellow packagers to determine if we can solve this with "provides" statements.
I added this: https://github.com/nicksnyder/go-i18n/pull/253#issuecomment-1118926958.

@bep, is there any hope of progress here? As I mentioned in , https://github.com/nicksnyder/go-i18n/pull/253 I am hesitant to package the fork because it bears the warning "This is a short-lived fork to fix a critical upstream issue, do not use."


chore(docs): add required try block

Explanation
I went trough the getting started and noticed a missing try block.
Related issue

Proposed Changes

Checklist

[x] I have read the contributing guidelines.

Further Comments

Thanks for catching this and opening the fix PR!

@noeleont can you sign-off your commits please ?


PythonCall extension

This removes PyCall and adds PythonCall as an extension. #51
To use sklearn you need to load both ACEfit and PythonCall
using ACEfit
using PythonCall

There is no need to install sklearn, as that is taken care automatically when PythonCall is loaded.
Notes:

Extension does not work with earlier Julia version and probably cause them to fail. We need to disscuss shall we remove support for previous version or try some hacks to get it to work - please let CI to run fully to see if there are errors with old versions.
I updated CI a little bit. It still used the old MolSim registry

In my opinnion we should go for v1.9. It seem to be general consensus that all packages will switch to it eventually just because of extensions. It is also easier to got for it now that ACEfit is not in general registry.

Thanks @tjjarvinen! I don't fully understand J1.9 extensions yet, but I've switched to 1.9 and I have no problem requiring it. Do you want to update the Project.toml and CI accordingly? I don't think I can modify this PR

I pushed an update for v1.9 and CI for this PR

Thanks. Tests pass now - shall I merge?

I guess this would be breaking and require 0.2? It shall we close our eyes for a moment and tag it as 0.1.1?

I vote 0.1.1 for now.

great, I will merge and tag.

this is now registered as 0.1.1

@tjjarvinen, I just realized that src/solvers_pycall.jl still exists. Is this something we should delete now that ext/ACEfit_PythonCall_ext.jl exists?

Or maybe we just need to change the name to src/solvers_pythoncall.jl?

Ye, I forgot to rename that file.
Basicly you need to define the solver structs for sklearn there, so that you can use the extension to overload  solve. I think the best option is to rename the file to something like sklearn_structs etc. That should make it clear for future use.

I think I would vote to keep the filename analogy with solvers.jl. Happy with either solvers_pythoncall.jl or solvers_sklearn.jl. And we add a comment pointing to the extension?

I have done the latter in 9f4e7444bbdb2168f1d0e206e79a00f16306cfac

anything for me to do here? test and tag another version?


Support Faraday v2.x

Following the upgrade guide, this change should be relatively easy, however there is one HTTP adapter which has not yet completed the migration to Faraday v2, and unfortunately upon which these specs rely: https://github.com/typhoeus/typhoeus/issues/686.
TODO

[ ] Fix Typhoeus adapters

Closes https://github.com/elastic/elastic-transport-ruby/issues/21

Any update on this?

.. there is one HTTP adapter [typhoeus] which has not yet completed the migration to Faraday v2, and unfortunately upon which these specs rely: https://github.com/typhoeus/typhoeus/issues/686.

https://github.com/dleavitt/faraday-typhoeus has been released, and is listed on the official adapter list.
Was that the last blocker?


Cosmatic Drip 2.1 ~ Patches and Paint

About the PR
Minor clean-up and fixes with Cargo sprites from Drip 1 and 2. Also adds a new set of overalls for cargo techs to use.
Why / Balance
The descriptions for some of the clothes were written poorly, the casual cargo uniform used an incorrect style of pants, and Ancestor mobs didn't have their own sprites, making them look weird.
Technical details

Media

Yes I see the pixels no I won't retake it to get rid of them.
Requirements

[x] I have read and I am following the Pull Request Guidelines. I understand that not doing so may get my pr closed at maintainer’s discretion
[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog
:cl:

Add: Monkey and Kobold sprites for the cargo jumpsuits, and overalls
Add: Adds new cargo overalls
Tweak: Cargo Cargoes have new sprites
Tweak: Salvage Operator and Steel-toed boots have new descriptions to flow better

??? what failed


Convert CM_Stream_Message into a service

Breaking Notice
Breaks in-code public api (class names).
Breaks public cm commands:

stream start-message-synchronization -> message-stream start-syncrhonization.

@njam please review

Actually postpone this review. I meant to ask for review of #1665 first.

@njam This code is ready to review. I would be really glad to close all those service-related issues which have been started.

Breaking Notice
This code is breaking as changes public classes and method in-code.
Additionally cm command has changed:
stream start-message-syncrhonization -> message-stream start-syncrhonization.

Thanks for those detailed change notes!
There's a small typo in it - "syncrhon...".
Also I would suggest to move them to the ticket description - this is where I usually look if I upgrade CM in denkmal for example, wdyt?

Done.

Strange test failure. Haven't see it before.
1) CM_Paging_AbstractTest::testGetItemRandMean
Failed asserting that 1.3799999999999999 matches expected 0.90000000000000002.

testGetItemRandMean is expected to fail very rarely I think cc @fauvel

CM_MessageStream_Service::getAdapterClass: Null check not needed
CM_MessageStream_Service::getInstance: Remove?
CM_MessageStream_Service::__construct: Consider moving adapter creation into a dedicated factory? Like CM_File_Filesystem_Factory?
CM/RenderAdapter/Layout.php: Introduce a variable for serviceManager?

Further:

What happens to the stored clockwork entry for CM_Stream_Message::synchronize - we discussed this problem with Alexis, but I don't remember what the outcome was?
Requires adjustments on other systems (infrastructure, Procfile)..
Full change should be acceptance tested

@njam

Null check is again needed as adapter might not be set - then it's disabled...
Removed.
Did so as in VideoStream.
This has been simplified with use of newly introduced getClientOptions().

Further:

Well clockwork will be restarted with release. Old synchronize will be stored in Clockwork storage, but not used anymore. New synchronize will be started immediately and rerun every minute.
Indeed, as in Breaking Notice.
I will do testing while adjusting SK (example component and chat).

Maybe mock randomness? :)

Let's introduce a service for that! ;)

CM_MessageStream_Service: Add a test (especially for case without adapter?)

Rest looks very good

@njam please do final check, thanks!

lgtmbnt (but not travis)


feat(manifest): add rendering test

This PR add simple manifest rendering test and fixes some typos in same package.

@villevsv-upcloud thanks for the review :+1:


Docs: Update Sparse Merkle Tree base case specification to use default value

Related issue:

Closes https://github.com/celestiaorg/smt/issues/67

As per the discussion in the linked issue, the agreed upon change is that the root of an empty Sparse Merkle tree (the base case) is the default value, rather than the hash of the empty string. The default value, as per the spec, is the 32 byte 0: 0x0000000000000000000000000000000000000000000000000000000000000000. This PR updates the specification to reflect the correct root in the SMT specification, and provides a short explanation on why this differs from the empty string root.

I modified the wording slightly since your approval @adlerjohn and I think this better reflects the nomenclature discussion above. If this looks good to you, I just need a reapproval and for you to rerun the workflow.


1px gap above navbar on large screens

On large screen formats (I believe 1536px and up) there seems to be a small 1px gap between the navbar and the top of the page. When I edit the CSS to have top: -1px rather than top: 0 this fixes the issue, but it only seems to be present on large screens:

My band-aid solution was to just add 2xl:top-[-1px] to the header class list.

Hi @oraimond
We had not noticed this. It is true that it is happening for large devices. If you want you can make a PR yourself with the adjustment.

This seems to be a Chromium issue (I could not replicate it in Firefox) and I traced it back to the font size for some reason. The font size for the HTML element is set to 20px and if I change it to 19px or 21px, it seems to resolve the issue and the gap goes away. @media (min-width: 1536px).\32xl\:text-\[20px\] { font-size: 20px; } is the CSS code that is what is seemingly the cause here and I assume this is a Tailwind thing but I'm not an expert on Tailwind so I can't say for sure. My fix was simple to change the font size.

Closed, resolved by @StefanMarAntonsson with https://github.com/onwidget/astrowind/pull/416.
Thanks @oraimond and @StefanMarAntonsson.


Error on starting telize container

After yesterday update, when starting a jess/telize container, it fails with the following message:
2016/09/21 20:03:45 [emerg] 1#1: unknown directive "geoip_country" in /etc/nginx/nginx.conf:103

i fixed it
On Wed, Sep 21, 2016 at 1:47 PM, Pablo Zaidenvoren<EMAIL_ADDRESS>
wrote:

After yesterday update, when starting a jess/telize container, it fails
with the following message:
2016/09/21 20:03:45 [emerg] 1#1: unknown directive "geoip_country" in /etc/nginx/nginx.conf:103
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jfrazelle/dockerfiles/issues/195, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABYNbNQ_sKb8t8LXiKypEjQeuPMAVzMMks5qsZfmgaJpZM4KDQqe
.

--
Jessie Frazelle
4096R / D4C4 DD60 0D66 F65A 8EFC  511E 18F3 685C 0022 BFF3
pgp.mit.edu http://pgp.mit.edu/pks/lookup?op=get&search=0x18F3685C0022BFF3

https://github.com/jfrazelle/dockerfiles/commit/7a631df11110344bf2698977a30d7bef950546be


Problem with rgistration link

Hello,
registration should be open now, right? But if I follow the link I get "404 not found". Why is that?
Thanks

@Ilde92 Thank you. There was a typo in the url in the ReadMe, it's now been fixed. Yes, registration opened on August 1 and is still open.
Please head to http://qisk.it/quantum-explorers.


feat($http): provide a config object as an argument to header functions

This is a cleaned up / alternative version for #7235

+1, Nice!

@caitp / @petebacondarwin / @lgalfaso (or anyone else!) - would you guys mind reviewing this one - it is pretty minimal

taking a quick gander

Can you guys triage your own PRs please!

I've rebased this one and split tests based on the review comments.
@caitp do you want to have another look at this one?

I'll take a look on Monday

still lgtm


seek help menu icon cannot be displayed

seek help menu icon cannot be displayed

@xuningyang Please fill out the bug report or cosmetic issue templates to report issues. closing it for now.
A clear and concise description of what the bug is.
Expected results
what you expected to happen.
Actual results
what actually happens.
Screenshots
If applicable, add screenshots to help explain your problem.
How to reproduce the bug

Go to '...'
Click on '....'
Scroll down to '....'
See error

Environment
(please complete the following information):

superset version: superset version
python version: python --version
node.js version: node -v
npm version: npm -v

Checklist
Make sure these boxes are checked before submitting your issue - thank you!

[ ] I have checked the superset logs for python stacktraces and included it here as text if there are any.
[ ] I have reproduced the issue with at least the latest released version of superset.
[ ] I have checked the issue tracker for the same issue and I haven't found one similar.

Additional context
Add any other context about the problem here.


Implement BlendMode.LAYER support

There is a PR here to support BlendMode.LAYER
https://github.com/openfl/openfl/pull/862/files
It generates a new BitmapData each frame, which is not ideal, but after we have cacheAsBitmap implemented, this would be a great feature to add.

Blocked by https://github.com/openfl/openfl/issues/1404


Received [RATA-114C] after import QA test from historical data

Got import errors "[RATA-114C] - You identified [Flow RATA Run] as a run to be used in the calculation of a wall effects adjustment factor, but you did not report a [averageVelocityWithWallEffects]"
Step to reproduce:

Check in Roxboro config 4A,4B,CS004A
Import all QA cert test in reporting period 2023Q3

Most likely, the stored procedure is missing some of the data that needs to be imported.

This is being closed and will be handled via #6024.


Add Docker multi-arch support with Buildx

This adds Docker support to extra CPU architectures (like arm) using Docker's Buildx action
You can see what that looks like on Dockerhub
And how it lets Datasette run on a Raspberry Pi (top is my dockerhub, bottom is upstream)

The workflow log here (I subbed blairdrummond for datasetteproject in my branch)

This is so cool! I wonder how I can best test it? I have a Raspberry Pi I should dig out to try this.

Started a conversation about this on Twitter. Ideally I'd like to push an alpha release to Docker Hub so people can start testing these out before they make it into an official non-alpha release.

It looks like all I need to do to ship an alpha version to Docker Hub is NOT point the latest tag at it after it goes live: https://github.com/simonw/datasette/blob/1a8972f9c012cd22b088c6b70661a9c3d3847853/.github/workflows/publish.yml#L75-L77

OK, since I have a mechanism for deploying alpha versions now I'm going to merge this and use it to publish 0.57a1.


Buffer constructor runtime deprecation - this package emits a warning on Node 10

Hey from Node.js here!,
Starting on Node 10 this package will emit deprecation warnings.  See this guide on what you should do in order to migrate to Buffer.alloc/Buffer.from.
See https://github.com/nodejs/node/issues/19079 for discussion around this change and why we can't make new Buffer work

Fixed in PR #46

Both joyent/node-asn1#30 and joyent/node-sshpk#46 have been updated and published, so I believe this should no longer be an issue.


[KOGITO-4194-upstream] - Release Kogito Operator 1.1 to OperatorHub

See: https://issues.redhat.com/browse/KOGITO-4194
Signed-off-by: Tarun Khandelwal<EMAIL_ADDRESS>Thanks submitting your Operator. Please check below list before you create your Pull Request.

Flat operator directory structure is obsolete from 23-rd of October 2019, only nested directory structure will be accepted.

New Submissions

[ ] Does your operator have nested directory structure?
[ ] Have you selected the Project Community Operator Submissions in your PR on the right-hand menu bar?
[ ] Are you familiar with our contribution guidelines?
[ ] Have you packaged and deployed your Operator for Operator Framework?

[ ] Have you tested your Operator in all supported installation modes?
[ ] Have you considered whether you want use semantic versioning order?
[ ] Is your submission signed?

Updates to existing Operators

[x] Did you create a ci.yaml file according to the update instructions?
[x] Is your new CSV pointing to the previous version with the replaces property if you chose replaces-mode via the updateGraph property in ci.yaml?
[x] Is your new CSV referenced in the appropriate channel defined in the package.yaml or annotations.yaml ?
[x] Have you tested an update to your Operator when deployed via OLM?
[x] Is your submission signed?

Your submission should not

[x] Modify more than one operator
[x] Modify an Operator you don't own
[x] Rename an operator - please remove and add with a different name instead
[x] Submit operators to both upstream-community-operators and community-operators at once
[x] Modify any files outside the above mentioned folders
[x] Contain more than one commit. Please squash your commits.

Operator Description must contain (in order)

[x] Description about the managed Application and where to find more information
[x] Features and capabilities of your Operator and how to use it
[x] Any manual steps about potential pre-requisites for using your Operator

Operator Metadata should contain

[x] Human readable name and 1-liner description about your Operator
[x] Valid category name1
[x] One of the pre-defined capability levels2
[x] Links to the maintainer, source code and documentation
[x] Example templates for all Custom Resource Definitions intended to be used
[x] A quadratic logo

Remember that you can preview your CSV here.
--
1 If you feel your Operator does not fit any of the pre-defined categories, file an issue against this repo and explain your need
2 For more information see here

@spolti Since you are previous contributor, can you please have a look at changes if ok with you?

@spolti Since you are previous contributor, can you please have a look at changes if ok with you?


[ISSUE] Durable Object Endpoints not accessible. Error: Failed to load endpoint

Is there an existing issue for this?

[X] I have searched the existing issues

What version of workers-rs are you using?
0.3.1
What version of wrangler are you using?
3.68.0
Describe the bug
Following the instructions here I was able to create a durable object, and this is reflected on my cloudflare dashboard but I cant seem to figure out how to access it.
This is my code:
use gloo_utils::format::JsValueSerdeExt;
use serde::{Deserialize, Serialize};
use serde_json::Value;
use wasm_bindgen::JsValue;
use worker::{durable_object, *};

#[durable_object]
pub struct StoreDurableObject {
    state: State,
    amount: i64,
    env: Env,
}

#[event(fetch)]
async fn main(req: Request, env: Env, _ctx: Context) -> Result<Response> {
    let router = Router::new();

    router
        .on_async("/durable", |req, ctx| async move {
            durable_object_handler(req, ctx).await
        })
        .run(req, env)
        .await
}

async fn durable_object_handler(mut req: Request, ctx: RouteContext<()>) -> Result<Response> {
    let body = match req.clone().unwrap().json::<StoreObject>().await {
        Ok(res) => res,
        Err(e) => return Response::error(format!("Failed to parse JSON: {}", e), 400),
    };

    let store_object = match ctx.durable_object("STORE") {
        Ok(res) => res,
        Err(e) => {
            return Response::error(
                format!("Failed to get Durable Object Namespace: {}", e),
                400,
            )
        }
    };

    console_log!("Store Object: {:?}", store_object.as_ref());
    let id = store_object.id_from_name(&body.store_id).unwrap();
    console_log!("id: {:?}", id.to_string());
    let stub = id.get_stub();

    // Get the request body as a String
    let body = match req.json::<Value>().await {
        Ok(json) => JsValue::from_serde(&json)?,
        Err(err) => return Response::error(format!("Something went wrong: {err:?}"), 500),
    };

    console_log!("DATA: {:#?}", body);

    // Create a new request
    let new_req = Request::new_with_init(
        "/dobj",
        RequestInit::new()
            .with_method(req.method())
            .with_body(Some(body))
            .with_headers(req.headers().to_owned()),
    )?;

    console_log!("REQUEST: {:?}", new_req);

    match stub.unwrap().fetch_with_request(new_req).await {
        Ok(res) => Response::ok(format!("Response: {:?}", res)),
        Err(err) => Response::error(format!("Err: {err:?}"), 500),
    }
}

#[durable_object]
impl DurableObject for StoreDurableObject {
    fn new(state: State, env: Env) -> Self {
        Self {
            state,
            amount: 0,
            env,
        }
    }

    async fn fetch(&mut self, req: Request) -> Result<Response> {
         let env = self.env.clone().into();

         let router = Router::with_data(self);

         router
             .post_async("/dobj", |mut req, ctx| async move {
                 let mut _self = ctx.data.borrow_mut();

                 let mut storage = _self.state.storage();

                 if let Ok(body) = req.json::<StoreObject>().await {
                     _self.amount = body.amount;
                     storage.put("amount", _self.amount).await?;
                     Response::ok("Amount Inserted Into Durable Object")
                 } else {
                     Response::error("Bad Request", 400)
                 }
             })
             .run(req, env)
         .await
    }
}

And this is my curl request (from postman):
curl --location 'https://dev1.xxxxx.com/durable' \
--header 'Content-Type: application/json' \
--data '{
    "store_id": "Store1",
    "amount": 25
}'

And this is the response (as text) I get back
Err: JsError("Error: TypeError: Fetch API cannot load: /dobj - Cause: TypeError: Fetch API cannot load: /dobj")

I'm not sure what I am doing wrong. Any help would be appreciated.
Steps To Reproduce
No response

Could this be due to using GET method, when DO's router only implements POST? Can you share your wrangler.toml as well?


Скласти таймлайн

Скласти список всіх (важливих) життєвих подій, визначних дат, досягнень, періодів, що дали приємний і неприємний досвід, тощо. В цьому конкретному випадку довгих списків не буває, натомість бувають погано згорнуті, тому пакуємо сюди все підряд, а про "лишні" події можна буде промовчати пізніше. Список повинен бути систематизованим і посортованим в такий спосіб, щоб читач швидко зрозумів "паттерн" і міг легко орієнтуватись в просторі і часі цього резюме.

experience

2021

Lost everything...

2020

Keep America Great! We almost won!

2017

Became 45th president of the United States

2016

 Won election race with 77 votes more than Clinton, yippe-kee-yay!

2015

 Became the most important Republican nominating for presidential election run

2009

Changed my mind and became Republican again

2005

Started Trump University with Michael Sexton and Jonathan Spitalny: no grades,
                            certificates
                            and other bureaucracy, but program offered courses in real estate, asset management
                            entrepreneurship, and wealth creation. 98% students!!! gave positive reviews
                            while
                            studying,
                            however some of these ungrateful gringos filed lawsuits against Trump University after
                            the
                            course. I had to pay $25 million to settle that...

2002

 Acquired the former Hotel Delmonico, which was renovated and reopened in 2004 as the
                            Trump
                            Park Avenue. I sure do like my surname!

2001

 Completed Trump World Tower and joined the Democratic Party

1999

 Started buying golf courses. They are very cheap, I have 18 of them now in USA and
                            abroad!
                            Also switched to the Reform Party that year

1997

 Began a multi-building development along the Hudson River, which was named Trump Place.
                            Me
                            and the other investors sold our shares for $1.8 billion and that was then the biggest
                            residential sale in the history of New York City

1996

 Acquired the Bank of Manhattan Trust Building, which was a vacant seventy-one story
                            skyscraper on Wall Street. After an extensive renovation, the high-rise was renamed the
                            Trump Building

1994

 Refurbished the Gulf and Western Building on Columbus Circle, turned it into a 44-story
                            luxury property known as Trump International Hotel and Tower

1989 ― 1992

Ran a second hand airline called Trump Shuttle. What a waste of money, I had to sell it,
                            now
                            it is American Airlines Shuttle, btw

1989, 1990

Learned about Tour de France and decided to hold my very own Tour de Trump. Is America
                            not
                            great enough for that cycling competition?

1988

Acquired the Plaza Hotel in Manhattan for $407 million, invested $50 million to restore
                            the
                            building and boosted it from three-star to four-star hotel (I called it "the Mona Lisa"
                            and
                            sold it for a lot of cash in 1995)

1987

Registered as a Republican

1985

I bought the Mar-a-Lago estate in Palm Beach and turned it into a private club.You can
                            join
                            if you pay $200K initiation fee (and there is another annual fee for members, it is very
                            expensive to be rich). That year I also opened a casino called Trump Castle. My wife
                            Ivana
                            became a manager, because she is another Trump!

1983

I purchased New Jersey Generals, an American football team. I changed team's play
                            schedule
                            and filed an antitrust lawsuit against United States Football League, so NJG are not
                            doing
                            so good now, but back then they were great!

1980

Started developing the Trump Tower skyscraper in Manhattan, I payed a crew of
                            undocumented
                            Polish workers to demolish the historic Bonwit Teller store, including art deco
                            features.
                            All this to make architectural critic Paul Goldberger say in 1983 that the tower's
                            atrium is
                            "the most pleasant interior public space to be completed in New York in some years". At
                            the
                            same time I also started a repair job on the Wollman Rink in Central Park and completed
                            the
                            work in three months for $1.95 million, which was $775,000 less than the initial budget!

1978

Purchased a 50 percent stake in the derelict Commodore Hotel and turned it
                            into the Grand
                            Hyatt Hotel in 2 years of remodeling

1971

Was promoted to president of the company and renamed it The Trump Organization

1968

Began my career at my father's real estate development company, Elizabeth Trump &
                                Son

1946

I was born

experience

2021

Lost everything...

2020

Keep America Great! We almost won!

2017

Became 45th president of the United States

2016

 Won election race with 77 votes more than Clinton, yippe-kee-yay!

2015

 Became the most important Republican nominating for presidential election run

2009

Changed my mind and became Republican again

2005

Started Trump University with Michael Sexton and Jonathan Spitalny: no grades,
                            certificates
                            and other bureaucracy, but program offered courses in real estate, asset management
                            entrepreneurship, and wealth creation. 98% students!!! gave positive reviews
                            while
                            studying,
                            however some of these ungrateful gringos filed lawsuits against Trump University after
                            the
                            course. I had to pay $25 million to settle that...

2002

 Acquired the former Hotel Delmonico, which was renovated and reopened in 2004 as the
                            Trump
                            Park Avenue. I sure do like my surname!

2001

 Completed Trump World Tower and joined the Democratic Party

1999

 Started buying golf courses. They are very cheap, I have 18 of them now in USA and
                            abroad!
                            Also switched to the Reform Party that year

1997

 Began a multi-building development along the Hudson River, which was named Trump Place.
                            Me
                            and the other investors sold our shares for $1.8 billion and that was then the biggest
                            residential sale in the history of New York City

1996

 Acquired the Bank of Manhattan Trust Building, which was a vacant seventy-one story
                            skyscraper on Wall Street. After an extensive renovation, the high-rise was renamed the
                            Trump Building

1994

 Refurbished the Gulf and Western Building on Columbus Circle, turned it into a 44-story
                            luxury property known as Trump International Hotel and Tower

1989 ― 1992

Ran a second hand airline called Trump Shuttle. What a waste of money, I had to sell it,
                            now
                            it is American Airlines Shuttle, btw

1989, 1990

Learned about Tour de France and decided to hold my very own Tour de Trump. Is America
                            not
                            great enough for that cycling competition?

1988

Acquired the Plaza Hotel in Manhattan for $407 million, invested $50 million to restore
                            the
                            building and boosted it from three-star to four-star hotel (I called it "the Mona Lisa"
                            and
                            sold it for a lot of cash in 1995)

1987

Registered as a Republican

1985

I bought the Mar-a-Lago estate in Palm Beach and turned it into a private club.You can
                            join
                            if you pay $200K initiation fee (and there is another annual fee for members, it is very
                            expensive to be rich). That year I also opened a casino called Trump Castle. My wife
                            Ivana
                            became a manager, because she is another Trump!

1983

I purchased New Jersey Generals, an American football team. I changed team's play
                            schedule
                            and filed an antitrust lawsuit against United States Football League, so NJG are not
                            doing
                            so good now, but back then they were great!

1980

Started developing the Trump Tower skyscraper in Manhattan, I payed a crew of
                            undocumented
                            Polish workers to demolish the historic Bonwit Teller store, including art deco
                            features.
                            All this to make architectural critic Paul Goldberger say in 1983 that the tower's
                            atrium is
                            "the most pleasant interior public space to be completed in New York in some years". At
                            the
                            same time I also started a repair job on the Wollman Rink in Central Park and completed
                            the
                            work in three months for $1.95 million, which was $775,000 less than the initial budget!

1978

Purchased a 50 percent stake in the derelict Commodore Hotel and turned it
                            into the Grand
                            Hyatt Hotel in 2 years of remodeling

1971

Was promoted to president of the company and renamed it The Trump Organization

1968

Began my career at my father's real estate development company, Elizabeth Trump &
                                Son

1946

I was born

додано до основного розділу

додано до основного розділу


[EVM-Equivalent-Yul] Add mload, mstore and mstore8 opcodes

What ❔
This PR adds mload, mstore and mstore8 opcodes, including their gas charges.
Why ❔

Checklist

[x] PR title corresponds to the body of PR (we generate changelog entries from PRs).
[x] Tests for the changes have been added / updated.
[ ] Documentation comments have been added / updated.

This contains an implementation for memory expansion as well as #343. We should check which should we use


iOS crashes trying to create a rounded button with an icon inside

[ x] Review the documentation: https://github.com/oblador/react-native-vector-icons
[ x] Search for existing issues (including closed issues): https://github.com/oblador/react-native-vector-icons/issues

Environment
MAC OS Catalina, iOS, react-native-vector-icons v.7.0.0, React Native v0.63.2

Description
I'm trying to create a rounded button with an icon inside, it crashes for no reason in iOS, it works on Android.
Describe your issue in detail. Include screenshots if needed.

Reproducible Demo
Let us know how to reproduce the issue. Include a code sample, share a project, or share an app that reproduces the issue using https://snack.expo.io/. Please follow the guidelines for providing a MCVE: https://stackoverflow.com/help/mcve
Next code reproduces the issue(it happens with Pressable and any of the Touchables):
<TouchableOpacity                 style={{                   borderWidth: 1,                   borderColor: 'rgba(0,0,0,0.2)',                   alignItems: 'center',                   justifyContent: 'center',                   width: 100,                   height: 100,                   backgroundColor: '#fff',                   borderRadius: 50,                 }}>                 <Icon name={'chevron-right'} size={30} color="#01a699" />               </TouchableOpacity>
If I change the icon for any other component, it works....also if I remove one of width or height.
It's so weird please help!

Please comment if this is still an issue


Make a file in Web/WhatIsReact.md

I express a keen interest in this matter. May I kindly request that it be assigned to me?


Remove deprecated TaskRun.Status.ResourceResults.ResourceRef field

Changes
See #2694.
The TaskRun.Status.ResourceResults.ResourceRef field was only ever used for its own Name field, and as part of #2694, a new field, TaskRun.Status.ResourceResults.ResourceName was added to replace ...ResourceRef.Name with a more semantically appropriate field. This change finishes the work by removing the deprecated TaskRun.Status.ResourceResults.ResourceRef.
This has been scheduled for removal since April 2021.
/kind cleanup
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[x] Docs included if any changes are user facing
[x] Tests included if any functionality added or changed
[x] Follows the commit message standard
[x] Meets the Tekton contributor standards (including
functionality, content, code)
[x] Release notes block below has been filled in
(if there are no user facing changes, use release note "NONE")

Release Notes
Removes deprecated `TaskRun.Status.ResourceResults.ResourceRef` field; use `TaskRun.Status.ResourceResults.ResourceName` instead.

cc @lbernick

/assign @jerop @lbernick @pritidesai @vdemeester @afrittoli

@lbernick Done, I hope. =)

/retest

@lbernick @jerop Ok, should be good and ready for an lgtm, hopefully!

It looks like, even if not used, resourceRef was set in the status, and now the webhook does not allow deleting resources with a resourceRef:
    request-pr-docs-reviewer-wjfgm-clone-repo:
      pipelineTaskName: clone-repo
      status:
        completionTime: "2022-07-04T08:57:17Z"
        conditions:
        - lastTransitionTime: "2022-07-04T08:57:17Z"
          message: All Steps have completed executing
          reason: Succeeded
          status: "True"
          type: Succeeded
        podName: request-pr-docs-reviewer-wjfgm-clone-repo-pod
        resourcesResult:
        - key: url
          resourceRef: {}
          value: https://github.com/tektoncd/pipeline

and
$ tkn pr delete request-pr-docs-reviewer-wjfgm -n tekton-ci
Are you sure you want to delete PipelineRun(s) "request-pr-docs-reviewer-wjfgm" (y/n): y
Error: failed to delete PipelineRun "request-pr-docs-reviewer-wjfgm": admission webhook "validation.webhook.pipeline.tekton.dev" denied the request: decoding request failed: cannot decode incoming old object: json: unknown field "resourceRef"

I filed https://github.com/tektoncd/pipeline/issues/5317 to track the issue


[Feature Request]: add_documents should allow passing of embeddings

Describe the problem
I'm very new to all this, so maybe I'm missing something, but I can't figure out how to do what I want to do.  I see in the documentation that if I want to create a whole vector database at once, including embeddings, I can call Chroma.from_documents and pass a set of embeddings for each document.  I can call collection.Add and pass a set of embeddings.  So, why can't I call db.add_documents(documents, ids, embeddings)?  It seems like this should be a reasonable request, but the only way to call add_documents is to let Chroma be in control of calling the embedding function and in my situation I already have the pre-calculated embeddings, but I am gathering it in batches, so I don't have everything to call from_documents (and I'm not 100% sure that ends up making the same database to use for RAG).  Unless I'm missing something?
Describe the proposed solution
All methods of adding documents to Chroma support the same methods of adding embeddings.
Alternatives considered
I'm not sure if calling db.add_documents is actually adding to some default collection anyway, so maybe the solution is to get the default collection and then use collection.Add()?  I did some googling and didn't find anywhere talking about a "default" collection or if one exists how I would go about getting it with get_collection()?
Importance
would make my life easier
Additional Information
No response

@42degrees add_documents is a langchain API.
You can absolutely add data directly to Chroma with precomputed embeddings. Check out this part of the docs
https://docs.trychroma.com/reference/py-collection#add


Regenerated SynGO models after updating ORCID http to https

For https://github.com/geneontology/go-site/issues/1907.
Same model set as https://github.com/geneontology/syngo-go-cams/pull/5.

@dustine32 @vanaukenk Taking updated SynGO models.


talksapp: go present online doesn't show the last few slides

Hello,
I prepared some slides here:
https://github.com/adibrastegarnia/go-slides/blob/master/introduction.slide
I can see the full presentation offline but when I use talksapp, it doesn't show me the last changes.

Just to check, you're not hitting https://github.com/golang/go/issues/24688 are you?


Adding new element to invoiceSummary

Hi,
Would you consider adding one element to invoiceSummary - typeCalculateVATInclusivePrice? I think many people would benefit from this since

Od 1.10.2019 je možné na dokladu možné použít pouze nový typ výpočtu DPH shora. Typ výpočtu DPH shora na dokladu je možné v XML nastavit pomocí elemenetu typeCalculateVATInclusivePrice. https://www.stormware.cz/pohoda/xml/provyvojare/vypocetcastky/

hi @lidutka i will look into it

Thanks :)

Is there any chance you would manage this issue this week?

@lidutka I'v just released version 3.0.0 with newest Pohoda schemas. Please check it out and write me if it's ok. I don't have data to test it on really


Pixi trampolines exceed hard link limit on Amazon EFS

Checks

[x] I have checked that this issue has not already been reported.

[x] I have confirmed this bug exists on the latest version of pixi, using pixi --version.

Reproducible example
pixi global install nvim

When a sufficient number of global environments are already installed, installations off additional global environments will fail with this error:
  x Too many links (os error 31)

Issue description
The newly introduced trampolines in pixi 0.35 have led to a failure on our Amazon EFS system because too many hard links are created.  EFS unfortunately has a hard limit of 177 hard links to one file, which is easily reached with only a few global environments.  We should have an option to disable hardlinking of trampolines so that they can be either soft linked or copied.
Expected behavior
The expected behavior is for the global environment installation to work without errors.

EFS unfortunately has a hard limit of 177 hard links to one file, which is easily reached with only a few global environments.

I am not sure I understand. If it's about the same file I would expect that you need about 100 environments to reach that limit.

I am also a bit puzzled by this - this limit is begin reached with only a couple of environments.  I'm also puzzled by why the trampoline has more than 1 hard link at all.  From what I (perhaps incorrectly) understand, the hard link is just to .pixi/bin/trampoline_configuration and I don't know why there would be more than one per trampoline?

There is one hard-link to the trampoline per exposed executable

Ah, I misunderstood then.  I guess you would hit the limit with 177 exposed executables (since some environments have more than 1).  That would explain why I was getting such weird random failures - it depends on the number of exposed executables.
Is there any insight on whether copying or soft linking is preferred here?  I don't think soft-linking has the same limit on EFS but I'm not 100% sure.  Of course the downside to copying is more disk usage.
Also for the sake of future knowledge, the specific reason why EFS has this seemingly low hard link limit (as do equivalent systems for Google Cloud and Microsoft Azure) is because these are not real POSIX file systems but instead try to "emulate" them.  But I guess there are performance limitations for having many objects with the same inode that require

I think it makes sense to have fallbacks in place. First try hard-linking, then soft-linking followed by copying.

I think it makes sense to have fallbacks in place. First try hard-linking, then soft-linking followed by copying.

That makes sense.
How will it handle the possibility that initially hard-linking will work initially (in this case for the first 177 executables), and then start falling back once hard linking starts failing?  Should all the existing hard-links be converted to soft-links/copies?  And should the unavailability of hard-linking (and perhaps even soft-linking) be stored somewhere so pixi knows not to try unsuccessful methods anymore?
Sorry for all the questions, I just wanted to think through these scenarios since this is essentially what is happening now without the ability to gracefully fall back.

@baszalmstra for soft-linking we need to check that the "self-executable" name is the right one :) otherwise the trampoline isn't going to work.
I think hard-linking or copying doesn't matter. We can treat them the same. The idea of the hard-link is just to save some disk-space (but apparently there are downsides!).

@danielnachun I've added the following PR in an attempt to fix this.
Could you please try if the following solves your problem:
git clone --branch fix/trampoline-hard-link https://github.com/Hofer-Julian/pixi.git
cd pixi
pixi run install-as pixid

Now attempt the same operations using pixid instead of pixi

I followed your instructions and it looks like the fix in that PR resolved the issue!  I can now see executables in ~/.pixi/bin that are clearly copies of the trampoline, as well as some of the first executables that could still hard link before hitting the limit.   Importantly there were no errors either.
Thank you so much for the quick and helpful response.  Just another reason why we love pixi so much!

That's awesome, thanks for testing and the kind words ❤
The release is already out, so this should be a problem of the past


Consider using docker-build-push action to speed up builds through caching and remove Makefile dependency

Context
🔒 Slack thread https://nava.slack.com/archives/C03G1SWD9H7/p1670526052811459
References
https://github.com/marketplace/actions/build-and-push-docker-images

Duplicate of #311?


[SSR] window is undefined

With server side rendering I've got window is undefined because I try to access the Rive object from the global scope in a server.
To solve that the best would be to export Rive as a module instead of injecting it into the window object.

Currently it's exported both as a module and attached to the global scope for those who want to directly embed into a web page with a script tag. In the JS library, the relevant code in rive.js is:
// Exports needed to expose these for some reason as ES2015 export not working
if (typeof exports !== 'undefined') {
  exports.Rive = Rive;
  exports.Alignment = Alignment;
  exports.Fit = Fit;
  exports.Layout = Layout;
}

// Tie these to global/window for use directly in browser
if (typeof global !== 'undefined') {
  global.Rive = Rive;
  global.Rive.Alignment = Alignment;
  global.Rive.Fit = Fit;
  global.Rive.Layout = Layout;
} else if (typeof window !== 'undefined') {
  window.Rive = Rive;
  window.Rive.Alignment = Alignment;
  window.Rive.Fit = Fit;
  window.Rive.Layout = Layout;
}

In the Wasm library (which is auto-generated by Enscriptem), it's:
if (typeof exports === 'object' && typeof module === 'object')
      module.exports = Rive;
    else if (typeof define === 'function' && define['amd'])
      define([], function() { return Rive; });
    else if (typeof exports === 'object')
      exports["Rive"] = Rive;

Always open to doing this differently if there's a better way.

I see, here you're using commons export system. Which has been introduced by nodejs at a time when es6 module wasn't a thing yet. Now browsers & webworker support natively the es6 module which provides a unified way of exporting / importing libraries.
Commonjs export is usually used to have code compatible with old version of nodejs. As rive-canvas requires a HtmlCanvasElement it quite safe to use es6 module instead of commonjs.
I think es6 module could be a single export target for all use case of rive-canvas (pure html or web framework). You can the mdn documentation here.
The only usecase that es6 module wouldn't cover is if someone wants to run rive-canvas with a mock version of the HtmlCanvasElement (with jsdom for example) in an old node version (es6 module are native to nodejs since v13).

We have a new way of packaging the library with Webpack; it's on this branch: https://github.com/rive-app/rive-wasm/tree/move_rive_typescript

There's now two builds of the library:
rive.min.js which is aimed at being browser friendly and directly embedded by a script tag.
rive.dev.js which supports ES6 modules and is not minified, aimed at use through npm fro React, Next, etc. and be friendlier for SSR.

Does the new dual build system fix this issue for you?

I installed latest version of rive-canvas (0.7.1) and it seems that it is still exported as Commonjs. Is rive-canvas published as a ES module or only rive-js ?

Ah, rive-canvas is; the changes we made are in Rive.js, which has both simple embeddable script and the ES6 versions.
rive-canvas is auto-generated and we don't have immediate plans to change that, but we're always looking for ways to improve this.

Maybe a quick solution that wouldn't required to change auto-generation would be to change to target output of emscripten to ES6 :
-o $OUTPUT_DIR/rive.mjs \

Here is the documentation.
I don't know how it's going to behave with Embind, but this could be a quick win :).
Else, if there is no shot term plan for rive-canvas, let's close this issue.

Latest PR generates both a vanilla and ES6 module version of the package.


MainModule does not work

as per https://github.com/nlog/nlog/wiki/ProcessInfo-Layout-Renderer  following renderer in .net 4.5 console application should work ${processinfo:property=MainModule}, but it throws an exception on application start up.
this is my config:
	<targets>
		<target xsi:type="File" name="f"
			fileName="/logs/${processinfo:property=MainModule}.log"/>
	</targets>
	<rules>
		<logger name="*" minlevel="Trace" writeTo="f" />
	</rules>

Exception is:
{System.TypeInitializationException: The type initializer for 'ConsoleApplication1.NLogTest' threw an exception. ---> NLog.NLogConfigurationException: Invalid enumeration value 'MainModule'.
at NLog.Internal.PropertyHelper.TryGetEnumValue(Type resultType, String value, Object& result)
at NLog.Internal.PropertyHelper.SetPropertyFromString(Object o, String name, String value, ConfigurationItemFactory configurationItemFactory)
at NLog.Layouts.LayoutParser.ParseLayoutRenderer(ConfigurationItemFactory configurationItemFactory, SimpleStringReader sr)
at NLog.Layouts.LayoutParser.CompileLayout(ConfigurationItemFactory configurationItemFactory, SimpleStringReader sr, Boolean isNested, String& text)
at NLog.Layouts.SimpleLayout.set_Text(String value)
at NLog.Layouts.SimpleLayout..ctor(String txt, ConfigurationItemFactory configurationItemFactory)
at NLog.Internal.PropertyHelper.TryNLogSpecificConversion(Type propertyType, String value, Object& newValue, ConfigurationItemFactory configurationItemFactory)
at NLog.Internal.PropertyHelper.SetPropertyFromString(Object o, String name, String value, ConfigurationItemFactory configurationItemFactory)
at NLog.Config.XmlLoggingConfiguration.ConfigureObjectFromAttributes(Object targetObject, NLogXmlElement element, Boolean ignoreType)
at NLog.Config.XmlLoggingConfiguration.ParseTargetElement(Target target, NLogXmlElement targetElement)
at NLog.Config.XmlLoggingConfiguration.ParseTargetsElement(NLogXmlElement targetsElement)
at NLog.Config.XmlLoggingConfiguration.ParseNLogElement(NLogXmlElement nlogElement, String baseDirectory)
at NLog.Config.XmlLoggingConfiguration.ParseTopLevel(NLogXmlElement content, String baseDirectory)
at NLog.Config.XmlLoggingConfiguration.Initialize(XmlReader reader, String fileName, Boolean ignoreErrors)
at NLog.Config.XmlLoggingConfiguration..ctor(String fileName)
at NLog.LogFactory.LoadLoggingConfiguration(String configFile)
at NLog.LogFactory.get_Configuration()
at NLog.LogFactory.GetLogger(LoggerCacheKey cacheKey)
at NLog.LogFactory.GetLogger(String name)
at NLog.LogManager.GetCurrentClassLogger()
at ConsoleApplication1.NLogTest..cctor() in c:\Users\davidfig\Documents\Visual Studio 2013\Projects\ConsoleApplication1\ConsoleApplication1\NLogTest.cs:line 10
--- End of inner exception stack trace ---
at ConsoleApplication1.NLogTest..ctor()
at ConsoleApplication1.Program.Main(String[] args) in c:\Users\davidfig\Documents\Visual Studio 2013\Projects\ConsoleApplication1\ConsoleApplication1\Program.cs:line 6
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()}

Which. Net and NLog version is this?

.net 4.5 and nlog 4.0.1.

I think it's removed since NLog 2.0.
I have to check why

Possible values: https://github.com/NLog/NLog/blob/master/src/NLog/LayoutRenderers/ProcessInfoProperty.cs

I can find it in the code too bad.

I see that Process.MainModule is of type ProcessModule
https://msdn.microsoft.com/en-us/library/system.diagnostics.process.mainmodule(v=vs.110).aspx
there is also ${processname:fullName=Boolean}. It that the same?

Julian, I was hopping that MainModule wrote the name of the entry point
.net assembly. I am currently using ${processname} in a deployment config
file is that is shared by multiple .net projects (only when deployed). file
name = "${processname}.log" works well as each exe produced has a different
name and thus log files are created with distinct descriptive names.
but, "${processname}.log" does not work for my web applications since them
all produce log file name w3p.exe. i was hopping that MainModule solved
this problem by writing the .net assembly name of the main entry point to
the application which in web apps would created log files named
MyAssemblyName.log.
On Fri, Jun 19, 2015 at 12:44 PM, Julian Verdurmen<EMAIL_ADDRESS>
wrote:

I can find it in the code too bad.

I see that Process.MainModule is of type ProcessModule
https://msdn.microsoft.com/en-us/library/system.diagnostics.process.mainmodule(v=vs.110).aspx
there is also ${processname:fullName=Boolean}. It that the same?
—
Reply to this email directly or view it on GitHub
https://github.com/NLog/NLog/issues/766#issuecomment-113621054.

btw my plan does not
work: System.Diagnostics.Process.GetCurrentProcess().MainModule.ModuleName
returns "w3p.exe" from a web site.
On Fri, Jun 19, 2015 at 1:18 PM, David Figueroa<EMAIL_ADDRESS>wrote:

Julian, I was hopping that MainModule wrote the name of the entry point
.net assembly. I am currently using ${processname} in a deployment config
file is that is shared by multiple .net projects (only when deployed). file
name = "${processname}.log" works well as each exe produced has a different
name and thus log files are created with distinct descriptive names.
but, "${processname}.log" does not work for my web applications since them
all produce log file name w3p.exe. i was hopping that MainModule solved
this problem by writing the .net assembly name of the main entry point to
the application which in web apps would created log files named
MyAssemblyName.log.
On Fri, Jun 19, 2015 at 12:44 PM, Julian Verdurmen <
<EMAIL_ADDRESS>wrote:

I can find it in the code too bad.

I see that Process.MainModule is of type ProcessModule
https://msdn.microsoft.com/en-us/library/system.diagnostics.process.mainmodule(v=vs.110).aspx
there is also ${processname:fullName=Boolean}. It that the same?
—
Reply to this email directly or view it on GitHub
https://github.com/NLog/NLog/issues/766#issuecomment-113621054.

Clear story :+1:
Could https://github.com/NLog/NLog/wiki/IIS-site-name-Layout-Renderer be useful?

yes, i tried this. but as of now i have a single config file shared for
console and web apps. i tried log name="${processname} - ${iis-site-name}.log"
so that it works with both console and web apps, but ${iis-site-name}
throws an exception in web apps.
i think that it would be cool to have ${entryassemblyname} that works both
in exe and in web projects
http://stackoverflow.com/questions/4277692/getentryassembly-for-web-applications
On Fri, Jun 19, 2015 at 1:46 PM, Julian Verdurmen<EMAIL_ADDRESS>wrote:

Clear story [image: :+1:]
Could https://github.com/NLog/NLog/wiki/IIS-site-name-Layout-Renderer be
useful?
—
Reply to this email directly or view it on GitHub
https://github.com/NLog/NLog/issues/766#issuecomment-113638495.

The latter point,  see https://github.com/NLog/NLog/issues/275
I think it's the easiest way to write your own LayoutRenderer. A good starting point are https://github.com/NLog/NLog.Web/blob/master/NLog.Web/LayoutRenderers/AspNetApplicationValueLayoutRenderer.cs and https://github.com/NLog/NLog/wiki/How-to-write-a-Target. The latter is about writing a custom target,  but layout renderers are almost the same way.

wiki has been updated (in sync with 4.0.1)

I will amuse your question has been answered. If not, let me know!


Fix pachctl list-datum to work with large repositories.

I have a repository of around 76,000 entries and get the following error when running pachctl list-datum on the job that created it.
# pachctl list-datum d046fa7a-7cec-490b-887f-d754509ce3ad
grpc: trying to send message larger than max (21151079 vs. 20971520)

Specifically, pachctl should use the datum pagination that is already available through the list-datum GRPC API

@msteffen we should make list-datum, list-commit, and maybe list-repo streaming just like we did for list-file in #2418

Well in this specific case, list-datum already has a pagination api. It's
just that pachctl doesn't expose this via flags. So we could implement
access relatively easily just by stringing the flags through.
However, the UX might be better if you could truly return all the datums
from a single call. If I have many many datums, chances are I'm going to be
grepping through them looking for something ... so it would be handy to
have them all together and not have to wrestle w pagination.
On Fri, Oct 20, 2017 at 5:13 PM, Joey Zwicker<EMAIL_ADDRESS>wrote:

@msteffen https://github.com/msteffen we should make list-datum,
list-commit, and maybe list-repo streaming just like we did for list-file
in #2418 https://github.com/pachyderm/pachyderm/pull/2418
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/pachyderm/pachyderm/issues/2380#issuecomment-338349250,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAkfwZVg8iy-8w7YZaw36MAR0wJ-92zOks5suTckgaJpZM4PviFC
.

Updated title to reflect that change that is being made


Fix memory plugin build

easyjson does not work with main packages. Workaround changing the
package name as suggested in https://github.com/mailru/easyjson/issues/236
Some code has been moved from skydive to graffity: common.Getter
Clean and update gomod:
k8s deps should be added with replace, https://github.com/kubernetes/kubernetes/issues/79384
Same problem with networkservicemesh
viper is not being used
add skydive as dep, not local replace
Once compiled it fails to run with skydive because problems with the Go
plugin framework.
The error is: plugin was built with a different version of package golang.org/x/sys/unix
https://github.com/golang/go/issues/20481
https://github.com/golang/go/issues/27751
Tested adding to the skydive.yml config file:
plugin:
plugins_dir: /home/adrian/go/src/github.com/skydive-project/skydive-plugins/memory
topology:
probes: memory

Thanks for the fix, merging it as it is, we will adress the dep issue later


Error Sending EDNA Tokens to Another EOS Account

Sending EDNA tokens to another EOS wallet causes an error.
eos-voter version 0.5.1 MacOS
"ERROR: transaction must have at least one authorization".

This should now be resolved in the newly released 0.5.2 - please reopen if the problem persists.


flow create unnecessary scrollComponent instances at .showNext()

When I have layers that are larger than the flowComponent instance, it creates a new scrollComponent at every .showNext()
Am I missing something? Please see the prototype below
https://framer.cloud/zTguF

Looks like the issue is fixed in the new version of the library! Thanks


Can't change link address

For the most part everything is working, the only issue that I have is with "Links" in the dashboard settings. If I key in anything before (an IP or host-name with or without the port) /api/v5/report/6..... the report icon won't do anything. However if I don't key in an IP or host-name the link opens a new tap, but then I need to port to 8686, which then creates the report. Has anyone encountered this before?
Grafana v6.1.6

I suggest you ask this on the Grafana project page, or maybe even on their community forms; you might get better help there. You could basically replace the reporter URL with any website URL to reproduce this issue. I haven't used links with 6.1.6 yet; would have to spin up a version to check it out.

Perfect, I'll go a head and ask on Grafana's page.
Thanks,


fix #3158

Coverage increased (+0.0008%) to 92.901% when pulling d269b4480972eaa0e48531bec1af8b7e0657376d on antgonza:fix-3158 into fed85503cff18162c5fae563644749c2a6bd6d13 on qiita-spots:dev.

Thank you!


3d body perturbation defined from orbit

I am trying to simulate the perturbation of the orbit of a satellite orbiting around an object I defined that has a diameter of 780m that is being orbited by another object with a diameter of 160m.
In the 3d perturbation example the data for the propagation of the third_body is done using an interpolation from ephemeris as such:
body_r =build_ephem_interpolant(....
rr = propagate(initial, tofs, method=cowell, rtol=1e-6,ad=third_body,k_third=k_moon,third_body=body_r
Is it possible to have the body_r from Orbit values such as: Orbit.from_vectors(...?
The type of body_r is scipy.interpolate.interp1d. It is described as ''a callable object returning the position of the pertubation body that causes the perturbation''. Is there another way to input the bodies position coordinates without ephemeris?
Thanks in advance, Niels

Hi @niels56, thanks for your interest in poliastro and sorry for the slight delay!
This one is a very good question. The underlying code expects a function that can be called at arbitrary points in time, so providing a callable is a good solution.
If you already have an Orbit, I suppose you could do something like this:
def perturbation_body(t):
    r, v = Orbit.propagate(t * u.s).rv()
    return np.concatenate([r.to_value(u.km), v.to_value(u.km / u.s)])

I didn't test this code, but the only tricky thing I anticipate matching the epoch of the Orbit with the starting point of the propagation.
Please let us know if this suits your needs.

(Edit: clarified instance of Orbit vs actual class)

Dear Juan! Thank you very much for your quick response.
I tried to implement your suggestion in the code that I will share with you here:
Determining the main body:
density = 1700 # kg/m
diameter_didymos = 780 # m
didymos_mass = (4/3)*math.pi*((diameter_didymos/2)**3)*density
didymos_volume = (4/3)*math.pi*((diameter_didymos/2)**3)
a = ((4/3)*math.pi*((diameter_didymos/2)**3))**(1./3.0)
G = 6.67408*10**(-20) #km3/kg s2
m = didymos_mass
k = G*m*u.km**3/u.s**2
name = "Dydimos"
didy = Body(None,k, name)
Determining orbit of the satellite:
r = [4.0,0.0,0.0] * u.km
v = [0.0,7.270456978812678e-05,4.19761216313734e-05]* u.km /u.s
ss = Orbit.from_vectors(didy, r, v)
Detemining the 3r body and its orbit:
diameter_didymoon = 160 # m
didymoon_mass = (4/3)*math.pi*((diameter_didymoon/2)**3)*density
didymoon_volume = (4/3)*math.pi*((diameter_didymoon/2)**3)
G = 6.67408*10**(-20) #km3/kg s2
mm = didymoon_mass
k_moon = G*mm#*u.km**3/u.s**2
name_moon = "didymoon"
didymoon = Body(None,k_moon, name_moon)
moon_r = [1.18,0.0,0.0]*u.km
moon_v = [0.0,0.00015456828072977154,0.0]* u.km /u.s
rm = Orbit.from_vectors(didy, moon_r, moon_v)
The function you proposed adding to bypass the ephemeris:
t = 5184000
def perturbation_body(t):
r, v = rm.propagate(t * u.s).rv()
return np.concatenate([r.to_value(u.km),v.to_value(u.km / u.s)])
moon_per = perturbation_body(t)
3rd Body perturbation function:
tofs = TimeDelta(np.linspace(0,60 * u.day, num=1000))
rr = propagate(     ss,     tofs,     method=cowell,     ad=third_body,     k_third=k_moon,     third_body=moon_per, )
Nevertheless I get the following error message:
TypeError: 'numpy.ndarray' object is not callable
I understood from the start that whatever that object that I tried to define was going to be a Type error. Therefore I tried to put the same type of object as when the ephemeris is called which is a scipy.interpolate.interp1d. I tried to make the perturbation_body function as follow:
def perturbation_body(t):
r, v = rm.propagate(t * u.s).rv()
return interpolate.interp1d(r.to_value(u.km),v.to_value(u.km / u.s)
But then I get this error message:
Traceback (most recent call last):   File "moon_body.py", line 103, in <module>     third_body=moon_per,   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/twobody/propagation.py", line 468, in propagate     orbit.attractor.k, orbit.r, orbit.v, time_of_flight.to(u.s), rtol=rtol, **kwargs   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/twobody/propagation.py", line 105, in cowell     dense_output=True,   File "/home/niels/.local/lib/python3.6/site-packages/scipy/integrate/_ivp/ivp.py", line 543, in solve_ivp     solver = method(fun, t0, y0, tf, vectorized=vectorized, **options)   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/integrators.py", line 375, in __init__     self.f = self.fun(self.t, self.y)   File "/home/niels/.local/lib/python3.6/site-packages/scipy/integrate/_ivp/base.py", line 139, in fun     return self.fun_single(t, y)   File "/home/niels/.local/lib/python3.6/site-packages/scipy/integrate/_ivp/base.py", line 21, in fun_wrapped     return np.asarray(fun(t, y), dtype=dtype)   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/core/propagation.py", line 37, in func_twobody     ax, ay, az = ad(t0, u_, k, **ad_kwargs)   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/core/perturbations.py", line 183, in third_body     return k_third * delta_r / norm(delta_r) ** 3 - k_third * body_r / norm(body_r) ** 3   File "/home/niels/.local/lib/python3.6/site-packages/numba/dispatcher.py", line 401, in _compile_for_args     error_rewrite(e, 'typing')   File "/home/niels/.local/lib/python3.6/site-packages/numba/dispatcher.py", line 344, in error_rewrite     reraise(type(e), e, None)   File "/home/niels/.local/lib/python3.6/site-packages/numba/six.py", line 668, in reraise     raise value.with_traceback(tb) numba.errors.TypingError: Failed in nopython mode pipeline (step: nopython frontend) Unknown attribute 'dot' of type float64
File "../.local/lib/python3.6/site-packages/poliastro/core/util.py", line 118: def norm(vec):     <source elided>     vec = 1.0 * vec  # Cast to float     return np.sqrt(vec.dot(vec))     ^
[1] During: typing of get attribute at /home/niels/.local/lib/python3.6/site-packages/poliastro/core/util.py (118)
File "../.local/lib/python3.6/site-packages/poliastro/core/util.py", line 118: def norm(vec):     <source elided>     vec = 1.0 * vec  # Cast to float     return np.sqrt(vec.dot(vec))     ^
This is not usually a problem with Numba itself but instead often caused by the use of unsupported features or an issue in resolving types.
I have the feeling that there is an issue with the fact that the values from the r and v components are float64. But I would not know for sure. Again thanks for your time. If you would have any suggestions for solving this issue I would really appreciate. Cheers, Niels.

Dear Juan! Thank you very much for your quick response.
I tried to implement your suggestion in the code that I will share with you here:
Determining the main body:
density = 1700 # kg/m
diameter_didymos = 780 # m
didymos_mass = (4/3)*math.pi*((diameter_didymos/2)**3)*density
didymos_volume = (4/3)*math.pi*((diameter_didymos/2)**3)
a = ((4/3)*math.pi*((diameter_didymos/2)**3))**(1./3.0)
G = 6.67408*10**(-20) #km3/kg s2
m = didymos_mass
k = G*m*u.km**3/u.s**2
name = "Dydimos"
didy = Body(None,k, name)
Determining orbit of the satellite:
r = [4.0,0.0,0.0] * u.km
v = [0.0,7.270456978812678e-05,4.19761216313734e-05]* u.km /u.s
ss = Orbit.from_vectors(didy, r, v)
Detemining the 3r body and its orbit:
diameter_didymoon = 160 # m
didymoon_mass = (4/3)*math.pi*((diameter_didymoon/2)**3)*density
didymoon_volume = (4/3)*math.pi*((diameter_didymoon/2)**3)
G = 6.67408*10**(-20) #km3/kg s2
mm = didymoon_mass
k_moon = G*mm#*u.km**3/u.s**2
name_moon = "didymoon"
didymoon = Body(None,k_moon, name_moon)
moon_r = [1.18,0.0,0.0]*u.km
moon_v = [0.0,0.00015456828072977154,0.0]* u.km /u.s
rm = Orbit.from_vectors(didy, moon_r, moon_v)
The function you proposed adding to bypass the ephemeris:
t = 5184000
def perturbation_body(t):
r, v = rm.propagate(t * u.s).rv()
return np.concatenate([r.to_value(u.km),v.to_value(u.km / u.s)])
moon_per = perturbation_body(t)
3rd Body perturbation function:
tofs = TimeDelta(np.linspace(0,60 * u.day, num=1000))
rr = propagate(     ss,     tofs,     method=cowell,     ad=third_body,     k_third=k_moon,     third_body=moon_per, )
Nevertheless I get the following error message:
TypeError: 'numpy.ndarray' object is not callable
I understood from the start that whatever that object that I tried to define was going to be a Type error. Therefore I tried to put the same type of object as when the ephemeris is called which is a scipy.interpolate.interp1d. I tried to make the perturbation_body function as follow:
def perturbation_body(t):
r, v = rm.propagate(t * u.s).rv()
return interpolate.interp1d(r.to_value(u.km),v.to_value(u.km / u.s)
But then I get this error message:
Traceback (most recent call last):   File "moon_body.py", line 103, in <module>     third_body=moon_per,   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/twobody/propagation.py", line 468, in propagate     orbit.attractor.k, orbit.r, orbit.v, time_of_flight.to(u.s), rtol=rtol, **kwargs   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/twobody/propagation.py", line 105, in cowell     dense_output=True,   File "/home/niels/.local/lib/python3.6/site-packages/scipy/integrate/_ivp/ivp.py", line 543, in solve_ivp     solver = method(fun, t0, y0, tf, vectorized=vectorized, **options)   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/integrators.py", line 375, in __init__     self.f = self.fun(self.t, self.y)   File "/home/niels/.local/lib/python3.6/site-packages/scipy/integrate/_ivp/base.py", line 139, in fun     return self.fun_single(t, y)   File "/home/niels/.local/lib/python3.6/site-packages/scipy/integrate/_ivp/base.py", line 21, in fun_wrapped     return np.asarray(fun(t, y), dtype=dtype)   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/core/propagation.py", line 37, in func_twobody     ax, ay, az = ad(t0, u_, k, **ad_kwargs)   File "/home/niels/.local/lib/python3.6/site-packages/poliastro/core/perturbations.py", line 183, in third_body     return k_third * delta_r / norm(delta_r) ** 3 - k_third * body_r / norm(body_r) ** 3   File "/home/niels/.local/lib/python3.6/site-packages/numba/dispatcher.py", line 401, in _compile_for_args     error_rewrite(e, 'typing')   File "/home/niels/.local/lib/python3.6/site-packages/numba/dispatcher.py", line 344, in error_rewrite     reraise(type(e), e, None)   File "/home/niels/.local/lib/python3.6/site-packages/numba/six.py", line 668, in reraise     raise value.with_traceback(tb) numba.errors.TypingError: Failed in nopython mode pipeline (step: nopython frontend) Unknown attribute 'dot' of type float64
File "../.local/lib/python3.6/site-packages/poliastro/core/util.py", line 118: def norm(vec):     <source elided>     vec = 1.0 * vec  # Cast to float     return np.sqrt(vec.dot(vec))     ^
[1] During: typing of get attribute at /home/niels/.local/lib/python3.6/site-packages/poliastro/core/util.py (118)
File "../.local/lib/python3.6/site-packages/poliastro/core/util.py", line 118: def norm(vec):     <source elided>     vec = 1.0 * vec  # Cast to float     return np.sqrt(vec.dot(vec))     ^
This is not usually a problem with Numba itself but instead often caused by the use of unsupported features or an issue in resolving types.
I have the feeling that there is an issue with the fact that the values from the r and v components are float64. But I would not know for sure. Again thanks for your time. If you would have any suggestions for solving this issue I would really appreciate. Cheers, Niels.

I edited your comment for formatting (use triple backquotes for long blobs of formatted text :rocket:). Let me see if I can fix the issue!

Hi @niels56, sorry for the long delay - getting back to this as part of the SciPy 2020 sprints. I'll try to rerun your code and see what's happening.

It turns out that I was wrong, but fortunately the needed change is not that difficult.
The actual code for the propagation is:
tofs = TimeDelta(np.linspace(0,60 * u.day, num=1000))
rr = propagate(
    ss,
    tofs,
    method=cowell,
    ad=third_body,
    k_third=k_moon,
    perturbation_body=perturbation_body,  # not third_body= and not =moon_per!
)

The relevant part of the TypeError traceback is:
~/.pyenv/versions/3.8.0/envs/poliastro38/lib/python3.8/site-packages/poliastro/core/propagation/__init__.py in func_twobody(t0, u_, k, ad, ad_kwargs)
     48
     49     """
---> 50     ax, ay, az = ad(t0, u_, k, **ad_kwargs)
     51
     52     x, y, z, vx, vy, vz = u_

~/.pyenv/versions/3.8.0/envs/poliastro38/lib/python3.8/site-packages/poliastro/core/perturbations.py in third_body(t0, state, k, k_third, perturbation_body)
    227     """
    228
--> 229     body_r = perturbation_body(t0)
    230     delta_r = body_r - state[:3]
    231     return k_third * delta_r / norm(delta_r) ** 3 - k_third * body_r / norm(body_r) ** 3

TypeError: 'numpy.ndarray' object is not callable

which shows that poliastro.core.perturbations.third_body was actually expecting that to be a function, not a precomputed array.
Also, with only this change I was still getting a ValueError: operands could not be broadcast together with shapes (6,) (3,). This was my fault: the perturbation_body function must return only the position, not the velocity!
def perturbation_body(t):
    r, v = rm.propagate(t * u.s).rv()
    return r.to_value(u.km)

After that, rr ends up being something like this:
In [37]: rr
Out[37]:
<CartesianRepresentation (x, y, z) in km
    [( 4.        ,  0.        ,  0.        ),
     ( 3.97363282,  0.37602952,  0.21738167),
     ( 3.89587533,  0.74481823,  0.43213509),
     ( 3.77016524,  1.10033612,  0.64166989),
     ( 3.60078139,  1.43856764,  0.84342794),
     ( 3.39155367,  1.75742482,  1.03489752),
...

which I hope is more similar to what you need.
Let me know if I can help in anything else.

Closing this support issue, let me know if we can help in any other way!


Adding metadata to Token

I am submitting a pull request to add my metadata to my token however am getting the below error. Any idea how to fix this? thanks
Not eligible for automerge (click details for more information)
unsupported file modified: /dev/null

#7252

this needs to be manually reviewed; i see you closed the PR though


Fixing inconsistencies in utilization of source directory

When cloning source code into a dedicated directory (#586), the ramifications of this change on the generated SBOM data was missed. This PR ensures that we have the proper source SBOM data for merging.

Thanks for the feedback -- closing the PR. I created this initially when troubleshooting a related problem. You are right, this is not a correct fix.


Issue of render-texture's setSize/resize method

Zone and RenderTexture game object both have setSize method.
Bug:
In RenderTexture game object, resize method won't update displayOrigin via updateDisplayOrigin(). Render result is incorrect if origin is not at (0,0) after resizing.
Feature suggestion:
In Zone game object, hit-area will be updated if hit-area is not customHitArea. Could RenderTexture game object have the same behavior?

Thanks for opening this issue, and for submitting a PR to fix it. We have merged your PR into the master branch and attributed the work to you in the Change Log. If you need to tweak the code for whatever reason please submit a new PR.


Add automatic reconnect to signalr

Configure signalr core to use automatic reconnect with keep alive (ping) Ref: https://github.com/mandrewcito/signalrcore/tree/main#configuring-pingkeep-alive
keep_alive_interval is set to 15 seconds, which is equal to what easee.cloud uses.
This will send a ping every 15 seconds, and hopefully will improve reliability of the signalr connection.

Easee has specifically asked us to not do this.
If their servers go offline, and all clients start to try and reconnect with 5 second intervals it is a big challenge for them to get them online again.
We have implemented reconnect in the HA component instead which has increasing timeouts, so it will not put that load on the servers during startup.

Would it be okey if we have reconnect as a parameter that default to false? That way home assistant can choose to use it without reconnect, while other consumers of the library can enable reconnect?

I remembered incorrectly, the reconnect logic is implemented in the lib, so it should already work.
At least I have not noted any problems with reliability in the HA component.
What is that you are seeing that you want to solve?

I have noticed in some situations that the stream has been stuck and not recovering by itself. I have tried to recreated it, but I have not been sucessful. I will close this PR until I'm able to create a reproducable test and fix.

Ok, let us know if you find more details.
If it is possible to have the ping enabled without having the automatic reconnect, perhaps that would be ok.
But I am not sure the lib supports that...?