PA3011: Roundtrip fails when \n in TestStepsMetadata description.

                  UnPack from C:\PowerApps\MSAppFiles\OP+IntakeSprint40FullBaseline.msapp-->C:\PowerApps\ProjectFolders\Sprint40Full

source format version: 0.24                                                                                C:\PowerApps\ProjectFolders\Sprint40Full
Error   PA3011: Roundtrip validation on unpack failed. This is always a bug, please file an issue at https://github.com/microsoft/PowerApps-Language-Tooling
Error   PA3011: Roundtrip validation on unpack failed. This is always a bug, please file an issue at https://github.com/microsoft/PowerApps-Language-Tooling/microsoft/PowerApps-Language-Tooling                                                                                /microsoft/PowerApps-Language-Tooling
Microsoft PowerPlatform CLI
Version: 1.8.6+g6a1721e
Contact me if you need more information.

Hey @EPTS-Dev, thanks for the report. Was that the only message you saw when running the unpack command? Could you please send a copy of the app to me (lesaltzm at microsoft.com) so I can take a look and see what’s going wrong here.

This could be the same issue as #282

Yes it could but there is no way of knowing for sure expect that it is the same error code.  The version where it appears is different though 1.6 to 1.8 so logged as a new issue so it doesn't get overlooked.

@EPTS-Dev  - can you send the msapp?  fwiw, It looks like #282 is because of an older app.

Looking .. the difference here is in the TestStepsMetadata property.

There's a \n  in the test's Description field. It's getting roundtripped as \r\n.
There's significant extra processing that happens for TestStepsMetadata (see https://github.com/microsoft/PowerApps-Language-Tooling/blob/master/src/PAModel/SourceTransforms/AppTestTransform.cs ), so it's probably in there.
As a workaround, try removing the \n at the end of the property (will send email on which one)

(updating title)

There's a \n in the test's Description field. It's getting roundtripped as \r\n.
There's significant extra processing that happens for TestStepsMetadata (see https://github.com/microsoft/PowerApps-Language-Tooling/blob/master/src/PAModel/SourceTransforms/AppTestTransform.cs ), so it's probably in there.
As a workaround, try removing the \n at the end of the property (will send email on which one)

Hi Mike
The workaround did not work for me.  Removing the /n (new line) from any Test Studio TestStep, then saving the app again to the desktop and trying to import in VS Code with the PowerApps CLI still generated a roundtrip validation error.  I even went as far as to remove the teststeps and I still get the error.

I removed all new lines from the test steps and the test on start, on completion, etc areas.  I am still getting the Error   PA3011: Roundtrip validation on unpack failed errors (2 instances)  If you want to see the .msapp file let me know where to send it.

Send it to jmstall at microsoft dot com.  Thanks.

@EPTS-Dev :
As another workaround, please try closing quotes with the description and not on new line (on all the test steps and actions).
Also try removing all extra spaces or empty new lines too.

@EPTS-Dev Do you have a current way we could reproduce this issue in PowerApps, so that we can see on our end what exactly causes the error? Thank you for your time and patience!


Styles are not unset when the style object changes

Sandbox: https://codesandbox.io/s/style-doesnt-unset-0zb01?file=/index.js

      hi

This should toggle between green background black text and white background green text, but instead after a second it just ends up as green for both, because style is not unset when the keys disappear.

Hmm.. That's interesting. I've never used styles this way but that is probably coming from a Knockout or binding library syntax perspective. How important is I wonder. Mostly it's just much more complicated to do styles this way (like 8x the code and it would be slower). This makes a big deal when doing animations. But seeing it I can see it's completely legal  though so I can see how it could cause confusion.
So obviously I'm like just write:

   hi

But I appreciate that is likely an unreasonable ask. Maybe I can't get away with just documenting it.
There is a way to make it work and be performant but it would be taking a page from inferno's book which means using style.setProperty although that would lead to background-color rather than backgroundColor. See: https://github.com/infernojs/inferno/blob/master/documentation/v6-migration.md#style-property-names-changed

I actually want to open this up and get some feedback here. I'm not opposed to Inferno's approach, but I think it might hangup some people from a React perspective. Also maybe from a TS perspective. There is this weird inconsistency between property/attribute APIs so straddling the line always feels a bit inconsistent even with clear heuristics.

What if we parallel to DOM standards, and otherwise make new APIs with improved features for clarity. For example, the style attribute is normally a string. So:
style={state.foo ? "background: green" : "color: green"}

And for optimization,
fastStyle={state.foo ? { background: "green" } : { color: "green" }}

As for the actual fix, the simplest code might currently be:
createEffect(() => {
  if (el.attributeStyleMap) el.attributeStyleMap.clear()
  else el.style = ""
  Object.assign(el.style, styleProp)
})

I'm not sure of the performance implications. Maybe tracking a cache object and strategically applying the properties may be faster, but that code is definitely simpler.
I would can make a PR with the simple version if you approve @ryansolid

Oh wait, so, styleProp in the above example is a single reference that doesn't change, isn't it?

yeah unclear on performance. My hunch is always resetting is expensive. What i do know is:
//setProperty
el.styles.setProperty({ "background-color": "red" })
//outperforms
el.styles.backgroundColor = "red";

In fact Inferno's approach is faster than Solid's here. But no camelCase. And need to include units. I don't care about size that much but I do performance,

Maybe a better question. Is there any objections/concerns about changing the implementation to be the same as Inferno? Am I missing some scenarios?

Ok here's the solution I propose.

Switch to setProperty in general as it is more performant, supports more css expressions, and closer aligns with SSR.
My proposed form is statically analysable. It is more efficiently transformed. So we compile it straight into unwound statements with no extra runtime code Ie.

   hi

// becomes
const el = template.cloneNode()
createEffect(() => {
  el.style.setProperty("background", state.foo ? "green" : "");
  el.style.setProperty("color": !state.foo ? "green" : ""
})

Everything else imports a helper which iterates over Object keys of current and past values and set the value as intended.

In this way all cases are consistent behavior and the preferred approach is more optimal and doesnt take a size or performance hit.

I'm happy to report this is fixed in v0.18.0.


Firefox: The resource at "..." was blocked because tracking protection is enabled.

Error:
The resource at "http://***.us11.list-manage.com/subscribe/post-json?u=1f044ac4924517fc1007369aa&id=1e643f77de&c=jQuery111304645108639459916_1443659611085&FNAME=test&EMAIL=test%40testd.com&_=1443659611086" was blocked because tracking protection is enabled.

More information about this issue
Subscription works fine on Chrome and this issue occurs on Firefox. How do I resolve this issue?

Sorry, I don't think there is anything that can be done about it. Apparently mailchimp is on firefox's blocklist for tracking protection. It appears that "tracking protection" is some kind of advanced option in firefox and can only be turned on in the hidden advanced options screen. So, I doubt it is a widespread issue.
Note: this advanced "tracking protection" is not the same as the Privacy option for "do not track" as shown here:

This option seems fine and compatible with the mailchimp form.

(Sorry to comment on a closed issue.) Mailchimp signup popup is not showing for me on firefox either, citing the same error message. AFAIK I haven't enabled any advanced blocking but I may have forgotten about it. Do you know a way to verify what the firefox setting is and how to confirm?

Also chrome appears to do this sometimes.


ZeroLengthPredicate assumes that objects respond to length or size also respond to empty?

Given this code:
class Foo
  def length
    0
  end
end

Foo.new.length > 0

rubocop reports:
`foo.rb:7:4: C: Style/ZeroLengthPredicate: Use !empty? instead of length > 0.

but making that change will result in:
undefined method `empty?' for #<Foo:0x007ff3db079f78> (NoMethodError)

This is a valid assumption to make in the majority of cases. Can you provide a real-world example of a commonly used Ruby library which implements #length but not #empty??

@alexdowad I agree it will work in the majority of cases, but it is not correct for all cases. For example,if I make an object representing a Vehicle and length represents it's length in meters. I may need to say "If the car is greater than 3m, then driver must have a commercial license".  There's lots of usages of length or size that are not "discrete number of parts".

In that case RC will produce a false positive. The question is, are false positives common enough and serious enough to make this cop more harmful than helpful?

...Actually, I should have said: RC will not generate a false positive in the hypothetical situation you mention. Because this cop looks only for .length == 0, not .length > 3.

This was a calculated risk. I should always encourage people to add empty? predicates. If people see this as a big problem, they should just disable the check.

It just happened to me on Mysql2::Result (it doesn't implement empty?)
It's quite popular rubygem.

This happened to me with Rails 3.2 --
A controller checked params[:file].size == 0, which worked fine before, but got autocorrected to params[:file].empty?, which throws
undefined method empty?' for #<ActionDispatch::Http::UploadedFile:0x4e5e22e1>

This can lead to some problems when making SketchUp extensions. In the SketchUp Ruby API a Vector3d has a length method returning a Length object (a physical length). There is however no Vector3d.empty? method, as a zero length vector isn't refereed to as "empty".

@alexdowad I just ran into a real-world example of a commonly used Ruby library which only implements #size and not #length or #empty.
Sidekiq::ProcessSet.new.size > 0 gets changed to !Sidekiq::ProcessSet.new.empty? and throws an error.

Worth mentioning I just hit this issue- ideally you should be able to trust rubocop auto-corrects, but you can't for this one!

I'll add one more example, Restforce::Collection.
In our case, we'll disable autocorrect for this cop but leave the rule enabled, so that we know about it and we can add an inline exception to the rule if needed.
While I do agree that using #empty? is a good suggestion, this is the first cop that breaks the expectation that I can trust RuboCop's autocorrect. Maybe it was a wrong assumption to begin with, but I haven't had problems with other cops.

Ran into this issue with StringIO which supports length and size but not empty?.

ideally you should be able to trust rubocop auto-corrects

this is the first cop that breaks the expectation that I can trust RuboCop's autocorrect.

@lawrencejones & @julioolvr: Please note that this cop is marked as "unsafe". So if you call rubocop -a, there won't be autocorrection.
You should assume that rubocop -a will produce equivalent code (otherwise open an issue!).
You should double check further autocorrections made with rubocop -A manually and/or rely on your test suite to find potential problematic corrections.


update tableview in Results.size()

The orignal purpose of not creating TableView in size() is to make the
call faster if the query has not been executed before. But in the real
usecases, users always try to call accessors after the size() which
makes the query gets executed twice. See java issue
https://github.com/realm/realm-java/issues/5328
https://github.com/realm/realm-java/issues/5387
With this change, there would be no difference if the query has been
evaluated before.
It will be faster if:

Calling Results::size() multiple times in the same event loop.
Calling any accessors after Results::size().

It will be slower if:

Calling Results::size() at the first time.

:-1:
The original reason why we did this (to provide a fast way to get the number of objects matching the  query) is still fully relevant, and in the cases where they do actually go on to do something that requires a tableview, running the query for the count is typically not a significant portion of the runtime.

From my testing, when the data set is big, Query::count() and Query::find_all() take similar time to run. I will do some more benchmark to get some numbers.

@beeender The difference is likely insignificant in big datasets with a low number of matches. So try with big datasets with high number of matches (i.e. you have to create large TableView)

Made some benchmark for this https://gist.github.com/beeender/a2e5d02257df61eadf70909583358ec8
results:
## data set: 3000 loops: 1000
### No condition query
#### size
Time cost: 5

## data set: 3000 loops: 1000
### No condition query
#### get(0)
Time cost: 1502

## data set: 3000 loops: 1000
### Conditions query, no index
#### size
Time cost: 21

## data set: 3000 loops: 1000
### Conditions query, no index
#### get(0)
Time cost: 510

## data set: 3000 loops: 1000
### Conditions query, indexed
#### size
Time cost: 23

## data set: 3000 loops: 1000
### Conditions query, indexed
#### get(0)
Time cost: 548

## data set: 3000 loops: 1000
### Conditions string query
#### size
Time cost: 892

## data set: 3000 loops: 1000
### Conditions string query
#### get(0)
Time cost: 919

The results.size() will be much faster than updating the table view when the query doesn't involve string queries.
With string queries, the size() and first get() calls take similar time. And that is the situation java users met.
I don't have too much ideas than exposing the update_table_view() as a public API. Java differentiate the sync & async queries in public APIs because of the historical reasons. So it would be acceptable for user to immediately run the query, get the table view if he is using the synced query API.
@tgoyne any suggestions?

In tests we call .last() when we want to force it to evaluate the query, but of course that's terribly hacky. Exposing update_tableview() sounds reasonable to me, although it should have a different name (evaluate_query_if_needed()?).

@tgoyne PR updated.


[paho-mqttpp3] paho-mqtt with feature ssl

Is your feature request related to a problem? Please describe.
I wanted to use the paho c++ sync client together with ssl support, but it tells me "Error: MQTT error [-13]: SSL is not supported [0]" when running the programm. Now i'm getting a little bit confused because while downloading and compiling with vcpkg i see that there are dependencies to openssl. So can't figure out what went wrong. I went thru the "vcpkg\ports\paho-mqttpp3\profile.cmake" paho port and i'm recognizing that it is compiled against.
set(PAHO_C_LIBNAME paho-mqtt3as)
which is the async secure one. Does that get me the error.
Proposed solution
How can i get that to work.
Describe alternatives you've considered
No response
Additional context
I posted also to the github paho repository.
"https://github.com/eclipse/paho.mqtt.cpp/issues/506"

Could you help provide a minimal CMake example?

I'm not an expert in cmake. I tried to build paho statically and with ssl support by downloading those two repositories and build them but no luck in my project. I try to use the vcpkg for paho as an dll now. This do work, but i have some other libs like json c++ build as static. How can in setup visualstudio to use both
static and shared vcpkg.

I don't know enough about the specific problem, and I do not have MSVS. But port paho-mqttpp3 doesn't look healthy...


feat: File Input component

Summary
Implements the USWDS File Input component.
There are some tests that aren't 100% accurate, because simulating a drop event doesn't seem to accurately trigger the onChange handler for a file input. I left outstanding comments in those cases and maybe they can be improved upon in the future.
Related Issues or PRs
Closes #341
How To Test
Test that you can use the input in a multipart form to upload file(s), and the file type validation works as expected.
If you want to handle uploading async on the change event, there is an onChange prop exposed you can use to pass in a custom handler. Note that the FileInput component will still display dropped files, and you may want to force a re-render to clear the value after uploading.
Screenshots (optional)

@haworku I believe for your use case, we'll want to make it so you can programmatically clear/reset the value of the FileInput, which I think requires the same forwardRef change mentioned in this thread: https://trussworks.slack.com/archives/C0122MPMXL3/p1613073894012000
This might be a good component to try this out first on, since it will be tested in a real world app right away, and then we'll have a better idea of how to roll out this change to other JS input components as needed. How does that sound?

@suzubara Yep. Sound good. This is a good idea to use to experiment with the pattern here.


Moving docs into a docs folder.

Current coverage is 75.93% (diff: 100%)

Merging #13 into master will not change coverage

@@             master        #13   diff @@
==========================================
  Files             7          7
  Lines           320        320
  Methods         116        116
  Messages          0          0
  Branches         32         32
==========================================
  Hits            243        243
  Misses           58         58
  Partials         19         19

Powered by Codecov. Last update e68d258...2e8350e


Question: Does haste support passing (variadic) callbacks to javascript?

A while ago, to ghcjs-base project, I submitted a pull request that adds variadic callback generators. You can read the details on https://github.com/crocket/ghcjs-base#callbacks-with-arbitrary-numbers-of-arguments.
Haste seems similar to GHCJS, and I wonder whether I can do the same with Haste.

Haste supports passing callbacks through the Haste.Foreign FFI:
{-# LANGUAGE OverloadedStrings #-}
import Haste.Foreign

withPrompt :: (String -> IO ()) -> IO ()
withPrompt = ffi "(function(f){f(prompt('Name, please!'));})"

main = withPrompt $ \name -> putStrLn ("Hello, " ++ name)

While it doesn't support functions which are actually variadic (i.e. may be called with a different number of arguments each time), you can easily fake it using Maybe arguments (currently only in 0.6 dev branch; 0.5.x doesn't consider undefined to be Nothing for marshalling purposes):
{-# LANGUAGE OverloadedStrings #-}
import Haste.Foreign

withPrompt :: (Maybe String -> IO ()) -> IO ()
withPrompt = ffi "(function(f){f();})"

main = withPrompt $ \mname -> do
  case mname of
    Just name -> putStrLn ("Hello, " ++ name)
    _         -> putStrLn "No name. :("

This paper describes the FFI in detail. There isn't a lot of user-oriented documentation for the FFI in particular, but this example shows the basics through a very minimal jQuery example.

It seems Haste FFI overlaps with GHCJS FFI and ghcjs-base.
I mixed arguments object with a variadic function to create variadic callback generators. They do not create variadic callbacks, but they can create any kind of callback. =
If it was possible to convert a haskell function to a javascript function, the same trick as I used in ghcjs-base could be used.

With Haste any Haskell function can be used as a callback, without having to call an explicit generator for it. If you want to do that anyway for some reason, you can just use the ToAny instance for marshallable functions: some_callback = toAny $ \x y z -> putStrLn (concat [x, y, z]).
As far as I understand, your variadic generator essentially allows the same thing but for the JSFFI, which is more restrictive about what values can be marshalled? If I'm mistaken here, could you give an example of a Haste program that would benefit from having this construction, to help me understand the idea a bit better?
Apologies for the late reply; things have been a bit hectic of late.

If any haskell function can be used as a callback in haste, then haste doesn't need my callback generator. GHCJS FFI is not very good.


Unable to run on Windows 10

When trying to run the thing via cargo run --release the game draws the window but immediately segfaults:
$ cargo run --release
    Finished release [optimized] target(s) in 0.59s
     Running `target\release\space-menace.exe`
[INFO][winit::platform::platform::window] Guessed window DPI factor: 1.25
[INFO][amethyst::app] Initializing Amethyst...
[INFO][amethyst::app] Version: 0.12.0
[INFO][amethyst::app] Platform: x86_64-pc-windows-gnu
[INFO][amethyst::app] Amethyst git commit: c72063f13f90bae4ae96b6c96e04a2206493bbf3
[INFO][amethyst::app] Rustc version: 1.39.0-nightly Nightly
[INFO][amethyst::app] Rustc git commit: 9af17757be1cc3f672928ecf06c40a662c5ec26d
error: process didn't exit successfully: `target\release\space-menace.exe` (exit code: 0xc0000005, STATUS_ACCESS_VIOLATION)
Segmentation fault

running in debug mode gives the same output

Turns out it was a driver issue: AMD vulkan stuff was clashing with nvidia


chore: bdd-nh-import-1585811906 to 0.0.1

chore: Promote bdd-nh-import-1585811906 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Deprecate tpm1 and deep quote

This change removes all deep quote code and tpm1 functionality
Various tpm values such as tpm_version are also removed.
Signed-off-by: Luke Hinds<EMAIL_ADDRESS>

We also need to remove tpm_version from the database and agent processing I guess.

Yep, I have a migration to do that.

sadness for all that code.  But, life must move on!


localstore: spurious key length in pull index

Length here reflects an earlier state of the code when hash was part of the key, 41 should be 9 now.
https://github.com/ethersphere/bee/blob/master/pkg/localstore/localstore.go#L268

Hi @janos , I see this is assigned high priority, but it is in the decommissioned pipeline. Could you please have a look? Thanks.

@Eknir we concluded on code freeze planing that this should not be addressed in this release, as migration would require more time for proper testing. This issue is not a functional one. It just uses longer keys in database than needed, which should be fixed, but is not urgent.


Be smarter about touchpad configuration

As highlighted in #2868, we need to apply relatively simple touchpad config tweaks to a fair number of units to improve performance.
As also highlighted in that issue is that manually adding models is a slow process (not helped by yours truly often being super-slow to merge stuff).
Can we be smarter about trackpad config?  Is there something in common with these trackpads that would indicate the changes are needed?

thx for the merge

is setxkbmap necessary? or only synclient FingerLow=1 FingerHigh=5?

synclient is for the trackpad.  setxkbmap is for the keyboard.

Implemented #3142


[VSCode] Pause completion on battery (configurable)

Description

This PR adds setting to pause tab autocompletion, when disconnected AC. This pause can be disabled by clicking on statusbar icon or trigger Toggle Autocomplete Enabled command.
When laptop on battery clicking on status bar switching status in cycle Disabled->Pause->Enabled
This setting is disabled by default!
Checklist

[x] The base branch of this PR is preview, rather than main

@sr-tream this is super cool! I just pushed a handful of changes to the autocomplete status bar (allowing switching between models), so I'll have to take just an extra minute to merge these nicely into the QuickPick menu, but I think that will be even better


piaf.opam: eio and multipart_form are dependencies

'opam pin add --dev piaf' fails without them.
Unfortunately this doesn't quite work yet because multipart_form usage fails to build:
#=== ERROR while compiling piaf.0.1.0 =========================================#
# context     2.1.2 | linux/x86_64 | ocaml-base-compiler.5.0.0 | pinned(git+https://github.com/anmonteiro/piaf.git#ffb6f09f)
# path        ~/.opam/5.0.0/.opam-switch/build/piaf.0.1.0
# command     ~/.opam/opam-init/hooks/sandbox.sh build dune build -p piaf -j 8
# exit-code   1
# env-file    ~/.opam/log/piaf-3002419-684c18.env
# output-file ~/.opam/log/piaf-3002419-684c18.out
### output ###
# [...]
# Error: This function has type
#          emitters:'a Multipart_form.emitters ->
#          Multipart_form.Content_type.t -> 'a Multipart_form.t Angstrom.t
#        It is applied to too many arguments; maybe you forgot a `;'.
# (cd _build/default && /home/edwin/.opam/5.0.0/bin/ocamlc.opt -w -40 -g -bin-annot -I multipart/.multipart.objs/byte -I /home/edwin/.opam/5.0.0/lib/angstrom -I /home/edwin/.opam/5.0.0/lib/base64 -I /home/edwin/.opam/5.0.0/lib/base64/rfc2045 -I /home/edwin/.opam/5.0.0/lib/bigarray-overlap -I /home/edwin/.opam/5.0.0/lib/bigstringaf -I /home/edwin/.opam/5.0.0/lib/bytes -I /home/edwin/.opam/5.0.0/[...]
# File "multipart/multipart.ml", line 280, characters 14-35:
# 280 |     AU.parse (Multipart_form.parser ~max_chunk_size ~emitters content_type)
#                     ^^^^^^^^^^^^^^^^^^^^^
# Error: This function has type
#          emitters:'a Multipart_form.emitters ->
#          Multipart_form.Content_type.t -> 'a Multipart_form.t Angstrom.t
#        It is applied to too many arguments; maybe you forgot a `;'.```

Would be useful to know which version of 'multipart_form' piaf expects

I need to do a better job documenting the dependencies issue for this repo. It works real well with nix, but that's not an expectation I can have for most users.

multipart form: https://github.com/anmonteiro/multipart_form/tree/fork
httpaf: https://github.com/anmonteiro/httpaf/tree/fork
websocketaf: https://github.com/anmonteiro/websocketaf/tree/fork

Thanks. I think 'opam' supports something called 'pin-depends' which would allow to specify exactly what packages a user needs to pin when they pin your repo, although I have never used it myself yet: https://opam.ocaml.org/doc/Manual.html

Those would be great things to add for the next opam user trying to install this project. Thanks for the feedback!

CI now runs an OPAM build here which guarantees piaf can be used with opam https://github.com/anmonteiro/piaf/pull/167


play/pause button doesn't work in mini player

Operating system
Microsoft Windows [Version 10.0.22635.3286]
YouTube Music Desktop App Version
v.0.11.6 / v.0.11.9
Bug description
When I go to mini player the play/pause button doesn't work. It can pause, but it doesn't change to play and you can't resume music.
I placed two app version. It's related to the other bug report I created. I installed 0.11.9, but app says it's 0.11.6
Steps to reproduce

Open app
Start listening to anything
Open mini player
Click pause button
Clicking it again will have no effect

Relevant log output
No logs in installation folder

@Syhmac hmm i dont know but it seems im unable to reproduce it
https://github.com/Venipa/ytmdesktop2/assets/17952364/132bdd2c-6aa3-49c4-9c5a-bb923c47952b

Hmm... Actually I can't do it as well. Maybe I did something else. I will look into it once it will break again, cause it started working.


⚠ Samsung has degraded performance

In ebadd90, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2233 ms

Resolved: Samsung performance has improved in 51b055c.


Add left/right tab state to UI store, save/restore to and from LARA

This PR moves the left and right tab state management put of the App component and into the uiStore.  The current tab index is then saved to and restored from LARA.
Running here (not much to see other than the fact that we can test that the tabbing still functions as expected):
https://geocode-app.concord.org/branch/tab-authoring/index.html
Here is an example running in the activity player.  When authored, I saved with the code tab and the data tab as the current tabs. When loaded, the code tab is restored on the left and the data tab is restored on the right:
https://activity-player.concord.org/branch/master/?activity=https%3A%2F%2Fauthoring.staging.concord.org%2Fapi%2Fv1%2Factivities%2F20939.json&page=page_308580&preview

This looks great.
By the way, you can test this stand-alone without LARA as well. Author some tabs and select them, and click the "Save current state to local storage" button. Clicking "Load" after a refresh now shows the selected tabs. (Hopefully this makes testing easier for any future such stories.)
Note, this is probably expected and fine, but the student state of the tabs will overwrite the authored state, if the student uses the model and comes back. (If there was any reason this was a problem, you'd want a student-specific version of uiAuthorSettingsProps). I only mention this because these new properties are the first time that a student's actions can make a change to the uiStore, so it's the first time it would have come up. For the block store, for instance, we have a student-specific blocklyStudentStateProps because the props need to be different.

I'll make a note in the story about the student vs. teacher state in case Chris or Kiley want this to behave in a different manner.  Thanks for the reminder about local storage!


fix feedback component partially hidden

Fix feedback component partially hidden
add bottom: 35px to the feedback component wrapper

fixes #4447

https://github.com/reactjs/reactjs.org/pull/4451 Raised a PR

Closing as this is fixed now. Thanks for sending an PR.


Fix additionalTransformNode type

Same as https://github.com/BabylonJS/Babylon.js/pull/14306, so that skipLibCheck: false and exactOptionalPropertyTypes: true pass.

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Visualization tests for WebGPU (Experimental)
Important - these might fail sporadically. This is an optional test.
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14848/merge/testResults/webgpuplaywright/index.html

WebGL2 visualization test reporter:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/14848/merge/testResults/webgl2playwright/index.html

Thanks!


[BUG] -3 does not set language level in Cython 3

Describe the bug
The -3 flag does not set language level to 3.
When compiling some code with the always_allow_keywords directive set to true with Cython 3, Cython doesn't set the language level to 3 even though -3 is passed, and infers the language level as 3str causing the compile failure.
See logs I have attached below.
Code to reproduce the behaviour:
cython -M --fast-fail -3 --include-dir /home/runner/work/pandas/pandas/build/cp310/pandas/_libs/tslibs '-X always_allow_keywords=true' /home/runner/work/pandas/pandas/pandas/_libs/tslibs/offsets.pyx -o pandas/_libs/tslibs/offsets.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/tslibs/offsets.pyx.c
  /home/runner/micromamba/envs/test/lib/python3.10/site-packages/Cython/Compiler/Main.py:370: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /home/runner/work/pandas/pandas/pandas/_libs/tslibs/offsets.pxd
    tree = Parsing.p_module(s, pxd, full_module_name)

  Error compiling Cython file:
  ------------------------------------------------------------
  ...

      def get_rule_code_suffix(self) -> str:
          prefix = self._get_suffix_prefix()
          month = MONTH_ALIASES[self.startingMonth]
          weekday = int_to_weekday[self.weekday]
          return f"{prefix}-{month}-{weekday}"

Expected behaviour
Language level should be inferred as 3
OS
Ubuntu 22.04.2
Python version
3.10.11
Cython version
Cython 3.0.0b3
Additional context
No response

Thanks for the report. Can reproduce this. Just to make clear (since it wasn't 100% clear to me from the issue) it's the '-X ...' argument that seems to trigger it. A simple cython -3 filename.pyx looks to work fine.

Issue is caused by following lines:
https://github.com/cython/cython/blob/0605b260541394d7b33110d0f21830be507fde76/Cython/Compiler/Options.py#L654-L655
when -X switch is used, directives variable contains dictionary with directives containing also language_level set to None. Hence the options dictionary with key language_level is set to None instead of 3.


After installing cyfs browser on mac, opening the home page and clicking the Create a DID button, the page does not respond

After installing cyfs browser on mac, opening the home page and clicking the Create a DID button, the page does not respond
expected outcome:
Jump to cyfs://static/guide.html
version：mac107

Occasional problems require multiple tests and will not be closed for now

win122&mac112 test passed.


alb.ingress.kubernetes.io/auth-scope is not escaped in Location header

According to the documentation here: https://kubernetes-sigs.github.io/aws-alb-ingress-controller/guide/ingress/annotation/#auth-scope, a valid auth scope could be defined as 'email openid'.  However, this produces redirect links of the following form, with the space:
Location: https://xxx.amazoncognito.com/oauth2/authorize?client_id=xxx&redirect_uri=xxxresponse_type=code&scope=openid email&state=xxx

Note that the space between openid and email is preserved and not encoded to %20
While this works with modern browsers because they refuse to send the space, it is not the correct form for the redirect, and so, for instance, the Go http.Client we used trying to follow that redirect link cannot find the page there.

For now, I fixed this problem on the other side with code like this:
		http.Client{
 			...
			CheckRedirect: func(req *http.Request, via []*http.Request) error {
				req.URL.RawQuery = strings.ReplaceAll(req.URL.RawQuery, " ", "%20")
				return nil
			},
		}

I don't think this should have been necessary.

I looked through the code, my current though is that this is poor behavior on the AWS side and not this controller, but I wouldn't mind a second opinion.
I did find the scope is fed into the aws sdk in a AuthenticateCognitoActionConfig struct, which documents the Scope field

The set of user claims to be requested from the IdP. The default is openid.
To verify which scope values your IdP supports and how to separate multiple values, see the documentation for your IdP.

Space separated into this struct seems to be the goal.

Hi, i forwarded this to the PM of ELB

Thanks.  I also contacted AWS - the confirmed the bug and said they forwarded it to the team, but could not provide ETA on a fix and I think they closed the ticket.  I'm not sure whether to leave this open or wait until there is a fix (in case others find this useful in the meantime), so I will leave it open for the maintainers to decide.  If I notice it is fixed I can follow up here.

@jswidler
I'll close this and track this in a centralized ALB issue: https://github.com/kubernetes-sigs/aws-load-balancer-controller/issues/1344


IndexError: Cannot choose from an empty sequence

On running python fast_lane_detection.py I am getting the following error:
python fast_lane_detection.py
pygame 2.1.0 (SDL 2.0.16, Python 3.7.11)
Hello from the pygame community. https://www.pygame.org/contribute.html
Saving files...
Destroying actors and cleaning up.
Done.
Traceback (most recent call last):
  File "fast_lane_detection.py", line 976, in <module>
    main()
  File "fast_lane_detection.py", line 972, in main
    carlaGame.execute()
  File "fast_lane_detection.py", line 309, in execute
    self.initialize()
  File "fast_lane_detection.py", line 341, in initialize
    self.vehicle = self.world.spawn_actor(random.choice(self.blueprint_library.filter('vehicle.mustang.mustang')), self.start_position)
  File "/home/kaustab/miniconda3/envs/carla/lib/python3.7/random.py", line 261, in choice
    raise IndexError('Cannot choose from an empty sequence') from None
IndexError: Cannot choose from an empty sequence

Sorry for the late response...
It seems you are using a CARLA version greater than 0.9.11 (This repo is based on 0.9.11). Try another vehicle, I think vehicle.mustang.mustang got renamed to something slightly different, probably to vehicle.ford.mustang. That's why it raises an exception, since it cannot choose a vehicle.


merge to master workflow added

files renamed to reflect reality (merge_to_dev, merge_to_master)
secrets to be added: SERVER_ENV_PRODUCTION and CLIENT_ENV_PRODUCTION
the workflow will start to exectue when these changes get to the master branch

Added the secrets and updated the ovpn download url. Keeping in draft state as this needs a further discussion in relation to the PR workflow in this repository

an alternative to fork-based workflow would be protecting the master branch against force pushing


fields was changed to stored_fields in elasticsearch 5.0 #169

Hello
I applied the fix for renamed parameter in ES 5.0.
Thanks for this great library!

This change introduces a BC break. I would rather include stored_fields as a new field and mark fields as deprecated. Then in the next major version, we can remove fields along with supporting from Elasticsearch 5.0. Until then, both versions could have support, just by using fields you need.

Sure, we can handle it like that, but if you test this library with different version of ES, you will see that this library have huge problems with compability. I have tried it with ES 1/2/5 and it's a mess.

The 2.x should support 2.x and 5.x. There is no doubt to drop a support for Elasticsearch 2.x. But by introducing changes we need to mark deprecations.
If you notice any other issues besides stored_fields and script_score please let me know. I will include functional tests for it to make sure it will work well with 5.0.

Related to #177


With stream response in side ChatCompletionChunk  Usage  always coming null.

With stream response in side ChatCompletionChunk  ->Usage  always null.
Environment
com.aallam.openai:openai-client:3.3.2
Kotlin version: 1.9.0
Android 13

ChatCompletionChunk(id=chatcmpl-81pnHGSQmzZ58FBN, created=1695448115, model=ModelId(id=gpt-3.5-turbo-0613), choices=[ChatChunk(index=0, delta=ChatDelta(role=null, content=null, functionCall=null), finishReason=FinishReason(value=stop))], usage=null).id

Seems chat response from OpenAi is not giving usage object for chunk


[T5A2][W11-B3]Fan Wegiuang

Ready for review
The first two commits should be ignored, because I forgot to checkout master before creating a new branch,

Some comments added. Please close the PR after reading comments.
Good job.. Keep up the good work.

Comments reviewed. Thanks!


feat(actions): add generate-changelog action

given a FROM and a TO release, this command will generate an aggregated changelog of all that has
changed from one release to another.
Usage: deisrel generate-changelog v2.0.0-beta2 v2.0.0-beta3
To ignore all of the warnings add 2>/dev/null at the end.
closes #2

Note that this is from one official release to another, because this step typically occurs after the release is finished and we ship an aggregated changelog of the release to marketing for the blog post. See http://docs-v2.readthedocs.io/en/latest/roadmap/release-checklist/#step-9-let-everyone-know

the fetches now occur in parallel, and I've added unit tests to ensure that the changelog is generated correctly with the given input.


delayed response from audio_state_changed.

Hi, i'm building a project with lcd using lvgl and your librarie, and i'm trying to solve a small question, when i made the "play" command on my smartphone the response don´t have a visible delay but when i made the "pause" command it takes a while to answer.
it's the part of code where i implement this function.
void audio_state_changed(esp_a2d_audio_state_t state, void *ptr){
  Serial.println(a2dp_sink.to_str(state));
  Serial.printf(" %x\n", state);
  audioState = state;
  switch (audioState) {
    case 0:
      lv_obj_clear_state(ui_Panel1, LV_STATE_USER_2);
      lv_obj_add_state(ui_Panel1, LV_STATE_USER_1);
      break;

    case 2:
      lv_obj_clear_state(ui_Panel1, LV_STATE_USER_1);
      lv_obj_add_state(ui_Panel1, LV_STATE_USER_2);
      break;

  }
}

Here is a video showing this delay happend.
https://github.com/pschatzmann/ESP32-A2DP/assets/85085056/11710809-91ca-47e9-aab5-c14481def1f0
any help would be appreciated.  :)

I can't really see any issue here.
Why don't you just set the log level to debug to see what's going on in detail ?


Update dmutils to 21.0.0

Moves DM_LOG_PATH to Live config, so that development and testing log to stderr.

It's jumping a few major version changes, but the intermediate ones don't affect the API code at all.
:+1:


Validate triples passed to "rustup set default-host"

Fixes #846.

Thanks! Could a test be added for this?

Added a test.

Thanks!


Network Waterfall Graph.

https://github.com/Flipboard/FLEX/issues/5 is amazing! But I would love to have a waterfall graph of when each request starts and ends so I can understand why one may be taking a littler longer (Maybe we are sending too much?
Something like we have in chrome debugger.

@jcampbell05 We've open source our debugging tools inspect from FLEX, it has built-in waterfall graph for URLSession transactions.
MTHawkeye - Network Monitor

@euanchan That's amazing! I a PR would be greatly appreciated, but I'll see if I can get it working myself when I have a free moment.

@NSExceptional Any chance integration with MTHawkeye could happen in the near future?
The Network monitor is currently too limited: No persistence, if the app crashes you lose everything, inability to export all network traffic records, inability to perform global searches on HTTP traffic, etc.
It seems MTHawkeye implements all these critical features.


Initial KML support

NOTE: This is not ready to merge yet, but I had some requests to start the review process.

The changes to the public API are extremely minor, it simply adds a new object, KmlDataSource, which is the same as other data sources but for KML. It only has 3 functions. (fromUrl, load, loadUrl).
Also adds KML and KMZ support to viewerDragDropMixin and the Cesium Viewer app source parameter.
I've been keeping #873 up to date with what's done and what's not for overall KML support, check that out if you want to see what we support/don't support yet.
Do not look at SurfacePositionProperty at yet, I still have a lot of work to do on this class (including renaming it).  I'll update this PR when it's ready.  No matter what, it will be private for 1.7 since we still need to figure out the exact details of height reference support.  This is more about laying ground work.

Also, just a reminder that you'll want to either set InfoBoxViewModel.defaultSanitizer to undefined or comment out line 161 of InfoBoxViewModel when you're playing with this in order to avoid balloon descriptions getting neutered. I plan on addressing this in an unrelated pull (hopefully before 1.7).  You'll also want to use the proxy if you play with public Network Links.
ToDo before Merge

[ ] Rename SurfacePositionProperty to ScaledPositionProperty and finish initial height reference support
[x] Verify how styles are applied and write tests for each type of Entity that gets created.
[ ] Replace Sandcastle example and sample KML data, also snap new gallery image.
[ ] Update CHANGES
[ ] Improve ref doc and explain the Entity.kml property that gets added.
[ ] Add ability to set default graphics.
[ ] Test DataSource clock and changed/error/loading events

Unrelated to this PR, but the speed indicator is off-the-charts (literally) for the States example.  Do we have an issue for this?

Outside the scope of this PR and already known I suppose, but the profile for the Facilities example is...not good.

Unrelated to this PR, but the speed indicator is off-the-charts (literally) for the States example. Do we have an issue for this?

Yes, #1072 It only happens data sets with huge time spans so it's never been a priority.

Outside the scope of this PR and already known I suppose, but the profile for the Facilities example is...not good.

5% of that is definitely new code in this branch that hasn't been optimized yet (the height reference stuff), the rest is a known issue that I just need time to fix (for all non-static-geometry visualizers).  I already know how to fix it, and it's not even that much work.  Just need to find the time.

Other than the known caveats, this looks pretty good to me.  2,500 lines of tests for 1,700 lines of code is wonderful.  Coverage is reasonable too.
I only tried a handful of KML files outside of the ones in the branch.  I'd like to try more this week.

Okay, this branch is ready for more eyeballs. I still want to do another full review myself, but I don't plan on making any additional changes outside of review comments (or any issues I find myself).

@mramato I can merge this over the weekend or wait until early Monday if you prefer to get more time for reviews...

Do we have to update the bottom of LICENSE.md for any of the example or test data?

We're had the us_states (as KML) on on the website forever, but I'm not sure where it came from.  I'll have to dig around.
The GDP example was created with http://www.kmlfactbook.org/ and uses Public Domain data, so I think we are in the clear there.
Everything else originated from AGI (facilities) or is of my own creation. (bikeRide and test data).

We can file a separate bug on this if @mramato and @bagnell want: in the KML Sandcastle example, open the bike ride KML.  Switch to 2D and zoom in.  Switch to Columbus View and it freezes the tab.

There seems to be two bugs here. 1) a bug introduced in 1.6 that is triggered by morphing while tracking something and 2) Another manifestation of #2401, which still only happens in Chrome.
I fixed 1 in this branch.  2 still happens in Chrome., I'll reopen #2401.

@mramato can we merge or are you still tweaking this?

As we discussed offline, I removed the us_states KML and example, since usage rights are no clearly defined.  We can add back a similar example in the future if we ever find (or make) one.
This is ready to be merged.

IE 11 performance is really bad.  The GDP per capita example takes about a minute to load on my machine.  Perhaps it is their Web Worker implementation.

That's weird.  It only takes 10 seconds on my laptop, which is running Windows 8.1 and IE Version: 11.0.9600.17631 and Update Versions: 11.0.16 (KB3021952)

For reference, my laptop is a 2 year old i5-3320 running at 2.60GHz (dual core).  It was also using the HD 4000 at the time (now that it should matter for load).


How can I know what variables or constants in a ".ckpt" file

How can I know what variables or constants in a ".ckpt" file?
If I restore a ".ckpt" file without defining any variables, I will get error.
However I just want to know what's in that ".ckpt" file.
I didn't see any function can achieve it.

This is a good question for stackoverflow (so that other people can
discover this information easier), but there's this utility:
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/tools/inspect_checkpoint.py
On Wed, Dec 14, 2016 at 8:59 PM, oneengineer<EMAIL_ADDRESS>wrote:

How can I know what variables or constants in a ".ckpt" file?
If I restore a ".ckpt" file without defining any variables, I will get
error.
However I just want to know what's in that ".ckpt" file.
I didn't see any function can achieve it.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/6325, or mute the thread
https://github.com/notifications/unsubscribe-auth/AABaHDDC1DbzNvQ3dyXOpzYBkaU4wo5tks5rIMkfgaJpZM4LNt_j
.

thank you yaroslavvb. I think I can close this ticket.


Update predicate root due to inclusion of ChainID

Closes #39

Codecov Report

Merging #40 (c12f5af) into master (a834449) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            master       #40   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            7         7
  Lines          139       139
  Branches        40        40
=========================================
  Hits           139       139

Flag
Coverage Δ

unittests
100.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

contracts/fuelchain/FuelMessagePortal.sol
100.00% <ø> (ø)


signed integer overflow in Duration constructors

Duration has several constructors that perform unchecked signed multiplication, which can result in panics in debug mode and unexpected wrapping in release.
I don't have a need to these inputs into Duration constructors but I found this unexpected given the pervasiveness of checked operations in the public API.
Playground link: https://play.rust-lang.org/?version=stable&mode=release&edition=2021&gist=731f151589796275ac9c7678ec43a709
Code:
extern crate time; // 0.3.14

use time::Duration;

fn main() {
    dbg!(Duration::weeks(i64::MAX));
    dbg!(Duration::days(i64::MAX));
    dbg!(Duration::hours(i64::MAX));
    dbg!(Duration::minutes(i64::MAX));

    dbg!(Duration::weeks(i64::MIN));
    dbg!(Duration::days(i64::MIN));
    dbg!(Duration::hours(i64::MIN));
    dbg!(Duration::minutes(i64::MIN));
}

Output:
   Compiling playground v0.0.1 (/playground)
    Finished release [optimized] target(s) in 0.60s
     Running `target/release/playground`
[src/main.rs:6] Duration::weeks(i64::MAX) = Duration {
    seconds: -604800,
    nanoseconds: 0,
}
[src/main.rs:7] Duration::days(i64::MAX) = Duration {
    seconds: -86400,
    nanoseconds: 0,
}
[src/main.rs:8] Duration::hours(i64::MAX) = Duration {
    seconds: -3600,
    nanoseconds: 0,
}
[src/main.rs:9] Duration::minutes(i64::MAX) = Duration {
    seconds: -60,
    nanoseconds: 0,
}
[src/main.rs:11] Duration::weeks(i64::MIN) = Duration {
    seconds: 0,
    nanoseconds: 0,
}
[src/main.rs:12] Duration::days(i64::MIN) = Duration {
    seconds: 0,
    nanoseconds: 0,
}
[src/main.rs:13] Duration::hours(i64::MIN) = Duration {
    seconds: 0,
    nanoseconds: 0,
}
[src/main.rs:14] Duration::minutes(i64::MIN) = Duration {
    seconds: 0,
    nanoseconds: 0,
}

This is certainly not the intended behavior. I'll add overflow checks to the necessary methods. The reason I did not originally opt for returning a Result is because the time spans are beyond large (as in longer than the age of the universe), so there is no reason anyone should even be remotely close to the bound.

Fixed on main.

Thanks for merging a fix @jhpratt 💯
I took a peek at the commit and left a few comments / questions: https://github.com/time-rs/time/commit/5efea65d2e50c09e3990332511aff317fd42747e
I think there is still some unexpected behavior in these constructors around NAN and infinite floats.

How about use u64 instead of i64?

@Cheban1996 That wouldn't change anything, not to mention that Duration is a signed type.


[ILVerify] Remove deprecated PEVerify errors

As discussed in #4958, this removes all commented PEVerify errors for which I couldn't find any code that actually reports it.
The error MVER_E_CONSTRAINED_OF_NON_VARIABLE_TYPE is not actually reported, but included in a comment saying that the spec should be relaxed for this purpose (see https://github.com/lewischeng-ms/sscli/blob/master/clr/src/jit64/newverify.cpp#L1949). I have kept this error for now, since I don't know whether the spec has already been relaxed since then, or the error should actually be reported now.

Thanks!


Updating xtend dependency to latest version

Fixes #2

Fixes #2

Any chance this could get merged?

:+1: @thlorenz

Sorry couldn't merge (and huge sorry for not responding til now).
Could you please rebase? I'll merge then. THanks.

What needs to be rebased? This seems to be up-to-date with the target branch.

Your're right (I tried the git rebase and merge button which told me there are conflicts).
It applied fine and I published as v0.3.0


Multiple airspeed sensors support

Now that we have the new airspeed validation and selection module, we should next push towards enabling multiple airspeed sensors on a driver level and then test the airspeed module with multiple sensors.
□ enable multiple airspeed sensors in driver
□ define/ implement calibration procedure with multiple sensors
□ simulate different airspeed failures (clogging, water, ..) and test detection and switching in airspeed validation and selection module

@RomanBapst So is this something we will still want? It was you originally, then @sfuhrer. Good to assign or close.

@hamishwillee This is not done yet. Wen can already use 2 airspeed sensors but we are not there yet in terms of calibration. What we've done so far is that we used a sensirion airspeed sensor as the second sensor, because it does not require any calibration.
I think @dagar is really the man who has been doing most progress in this direction with all this sensor pipeline refactoring.

That's cool @RomanBapst . My point was really that if this has no assignee, then what is likely to happen is it will go stale and get dropped. If that is going to happen anyway, let's just delete it now.
So I have assigned to @dagar and you guys can do with it as you will.

@hamishwillee This is not done yet. Wen can already use 2 airspeed sensors but we are not there yet in terms of calibration.

Is this feature of using two airspeed sensors included in the current master version? Or it will be just along with the calibration feature?
I connected two airspeed sensors (ms4525 pitot tube sensors) via i2c, and only one is visible. I have checked the number_of_airspeed_sensors variable in the Firmware, and it is always one. Also in the logfile there is only one airspeed sensor logged. MAX_NUM_AIRSPEED_SENSORS is set to 3. Should it work with no setup or I need to set something in the code/parameters to see the second sensor?
Thanks for any help.

@Safranek42 Unlikely this has been updated. @sfuhrer can you provide any update?

I have tested this feature by connecting 2 airspeed sensors with different brand "SDP33" and "ms4525". Only SDP33 was found as primary airspeed. I investigated more and found that only 1 differential_pressure from SDP33 pass on to airspeed module to calculate indicated airspeed and more. I tried to modified code in sensors.cpp to make it works.
However, due to the concept of measuring the pressure of "SDP33" and "ms4525" is completely different, then offset pressure from these 2 is too much difference too, I could not make it works perfectly (sometimes, SDP33 is primary but not always).
The important thing is Qgroundcontrol does not support 2 airspeed sensors calibration and offset pressure has only 1, not 2.
For the same airspeed sensor brand such as "ms4525", I could not find a multi-instance to call them at the same time (might be due to there is the same i2c address??).

Hi,
I just also got a similar problem in v1.11 and I am questioning the airspeed_selector module idea.
It compares airspeed but there is only one instance that publish airspeed topic in "sensors.cpp" (search for "ORB_ID(airspeed)")
You can have multiple differential pressure sensors but the "sensors.cpp"  only looks at one "ORB_ID(differential_pressure)" and doesn't convert all "ORB_ID(differential_pressure)" to "ORB_ID(airspeed)". Why??
This makes no sens at all.
Also I always have a differential_pressure instance from the analog "ADC_AIRSPEED_VOLTAGE_CHANNEL" even if the "diff_pres_analog_scale" is set to zero. I have to remove the "ADC_AIRSPEED_VOLTAGE_CHANNEL" from the board_config.h to make a sdp3x work. Otherwise I get the temperature from the sdp3x in the airspeed topic but no airspeed.
Makes no sens at all.

Any ideas?

@mlaiacker it's in flux at the moment, but if you're interested in full support and can help test I think we could get this done properly. In https://github.com/PX4/Firmware/pull/15853 I'm refactoring the airspeed portion of sensors so that it either selects the highest priority differential pressure to publish a single airspeed, or you can optionally have it publish an airspeed for each differential pressure.
The analog airspeed publishing is clearly a bug. If you open a new issue and share a log I'll take a closer look.

@dagar
Thank you for the explanation. I was confused how the airspeed_selector should work. It looks like i was right that it is not finished. That's ok.
The analog sensor thing:
Looks like a bug I introduced myself by some changes I made to the Firmware. I tested the original v1.11 and it worked fine.
Sorry about that.
I had to introduce a gain/scaling factor on the differential pressure level to compensate for not optimal pitot tube placement on the airframe and somehow the gain was zero. I don't know how, but that my job to find out.
Maybe this scale factor for the diff pressure could be added to PX4?

Maybe this scale factor for the diff pressure could be added to PX4?

I'm going to expand the differential pressure calibration to be more like accel/gyro/mag where it's per device id. We can add a scale factor as well.


timing diagram is inaccurate

Ⅰ. Describe what this PR did
When I study the dragonfly, I find something that need to be revised. Because the timing diagram is not matched with the master branch code.
Ⅱ. Does this pull request fix one issue?

NONE
Ⅲ. Why don't you add test cases (unit test/integration test)? (你真的觉得不需要加测试吗？)
NO
Ⅳ. Describe how to verify it
You can find the relation API, in the file : dragonfly/supernode/server/router.go
Ⅴ. Special notes for reviews
None

Codecov Report

Merging #1570 (db3ebf6) into master (1bb1d3e) will decrease coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1570      +/-   ##
==========================================
- Coverage   50.81%   50.80%   -0.02%
==========================================
  Files         145      145
  Lines        9590     9590
==========================================
- Hits         4873     4872       -1
  Misses       4322     4322
- Partials      395      396       +1

Impacted Files
Coverage Δ

supernode/daemon/mgr/scheduler/manager.go
21.47% <0.00%> (-0.68%)
:arrow_down:

Continue to review full report at Codecov.

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


style(tutorials): use theme=side for bibbase style and move content to md file

This PR changes the style for the bibbase generated list of external tutorials on the Tutorials entry page from default to side which is more compact.
It also moves the content of the page from _layout/tutorials.html to the corresponding resource/tutorials.md file, which is then called from the html file via {{ content }}

Closes #108

Thank you!


Make optional the RVs name outside a probmodel

The name of the rvs is required to check the dependencies. But in some cases outside a probmodel, it could be omitted or used a default one.
This should be implemented after #117

It is already implemented in this way. I think that the problem was related to creating a default
probmodel if datamodel is used out of this context. I will close this issue for now, as it seems it does not happen anymore.


Epic: Create Modal

Contributes to #344
This PR is for the Create Modal, in line with the C&CS create flow patterns.
What will this achieve?
Prep create modal component for release review.
How will success be measured?
When component follows review guidelines.

I've noticed that the designs for the create modal don't have a close icon? To be consistent with every other component that creates something we should include this for the user. For example the sidepanel always has an x for close, are we going to have to change the prop for every single component to allow an x to close or not?

One more thing @sydrosa, don't forget to import your _create-modal.scss in packages/cloud-cognitive/src/components/index.scss and CreateModal.js in packages/cloud-cognitive/src/components/index.js. There was section about this that was just added to the code guidelines this morning.

I've noticed that the designs for the create modal don't have a close icon? To be consistent with every other component that creates something we should include this for the user. For example the sidepanel always has an x for close, are we going to have to change the prop for every single component to allow an x to close or not?

Close and Cancel are different. Close says you can come back to it. Cancel says you’re going to lose it. None of the Create components will have an X icon. This hasn't rolled up to Carbon yet, but it should soon. Anytime the action is Cancel, there should be no X icon.


test

test

@coderabbitai hi

@coderabbitai there have been a bunch of day 0 issues in this repo, you can check for last 25commits for example. Could you scan the code and let me know if there are more?

@coderabbitai pls give detailed analysis. Also check if workspace_id is part of all orm queries

@coderabbitai can you mention places where workspace id is not present in orm query


python311Packages.xknx: 2.9.0 -> 2.10.0

Diff: https://github.com/XKNX/xknx/compare/refs/tags/2.9.0...2.10.0
Changelog: https://github.com/XKNX/xknx/releases/tag/2.10.0
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 234684 run on x86_64-linux 1

5 packages built:

home-assistant-component-tests.knx
python310Packages.xknx
python310Packages.xknx.dist
python311Packages.xknx
python311Packages.xknx.dist


Sync channel switch with controller

Built on PR #114.
Since the TimeBasedFiniteStateMachine uses the global time, we can not switch to the controller (e.g. the current osc walking controller) that uses the time-based finite state machine at arbitrary time. Instead, it has to happens at the same time as the finite state machine switches to a new state.
Therefore, I modified ControllerChannelSender to control when to publish the switch lcm message.

Can you resolve conflicts/merge with master first? This contains a lot of #114 in its diff.

Can you resolve conflicts/merge with master first? This contains a lot of #114 in its diff.

Done. I thought git could have merged the branches automatically, because this branch is just #114 plus more changes.

It's probably better to not implement ControllerChannelSender as a leafsystem based on the discussion with @mposa . I will make the changes and then request review.

@mposa This PR is ready for review


How to create a docker cluster of pilosa

Hi,
I am creating a docker cluster of  pilosa. But it shows only one Node in cluster.
node1.config.toml
data-dir = "node1_data"
bind = "https://localhost:10501"
[cluster]
coordinator = true
[tls]
certificate = "pilosa.local.crt"
key = "pilosa.local.key"
skip-verify = true
[gossip]
seeds = ["localhost:15000"]
port = 15000
key = "pilosa.local.gossip32"
node2.config.toml
data-dir = "node2_data"
bind = "https://localhost:10502"
[tls]
certificate = "pilosa.local.crt"
key = "pilosa.local.key"
skip-verify = true
[gossip]
seeds = ["localhost:15000"]
port = 16000
key = "pilosa.local.gossip32"
node3.config.toml
data-dir = "node3_data"
bind = "https://localost:10503"
[tls]
certificate = "pilosa.local.crt"
key = "pilosa.local.key"
skip-verify = true
[gossip]
seeds = ["localhost:15000"]
port = 17000
key = "pilosa.local.gossip32"

The configs look OK to me (though I'd have to check the TLS settings to be sure). My gut says this is probably a network configuration issue between the containers, but you might try turning off TLS to simplify things.
Can you post how you're launching the containers, and any output/logs from Pilosa?

docker run -itd --name pilosa -v ~/node1.config.toml:/node1.config.toml
-v ~/pilosa.local.gossip32:/pilosa.local.gossip32
-v ~/pilosa.local.crt:/pilosa.local.crt
-v ~/pilosa.local.key:/pilosa.local.key
-p 10501:10101 pilosa/pilosa:latest
docker run -itd --name pilosa-worker1 -v ~/node2.config.toml:/node2.config.toml
-v ~/pilosa.local.gossip32:/pilosa.local.gossip32
-v ~/pilosa.local.crt:/pilosa.local.crt
-v ~/pilosa.local.key:/pilosa.local.key
-p 10502:10101 pilosa/pilosa:latest
docker run -itd --name pilosa-worker2 -v ~/node3.config.toml:/node3.config.toml
-v ~/pilosa.local.gossip32:/pilosa.local.gossip32
-v ~/pilosa.local.crt:/pilosa.local.crt
-v ~/pilosa.local.key:/pilosa.local.key
-p 10503:10101 pilosa/pilosa:latest
#Logs
2018/05/15 05:31:32 Pilosa v0.8.8, build time 2018-02-19T22:04:28+0000
2018/05/15 05:31:32 Using data from: /data
2018/05/15 05:31:32 [DEBUG] memberlist: Initiating push/pull sync with: <IP_ADDRESS>:14000
2018/05/15 05:31:32 [DEBUG] memberlist: Stream connection from=<IP_ADDRESS>:60672
2018/05/15 05:31:32 [DEBUG] memberlist: Failed to join ::1: dial tcp [::1]:14000: connect: cannot assign requested address
2018/05/15 05:31:32 Listening as http://<IP_ADDRESS>:10101
2018/05/15 05:31:32 Pilosa is currently configured to send small diagnostics reports to our team every hour. More information here: https://www.pilosa.com/docs/latest/administration/#diagnostics
2018/05/15 05:31:32 holder sync monitor initializing (10m0s interval)

@chetangehlot Below is a docker compose file that runs a 2 node Pilosa cluster. The command line switches override environment variables, so I had to override the entrypoint but we may change that in the future. We will be adding a Docker Cluster Tutorial to the documentation soon:
version: '2'
services:
    pilosa1:
        image: pilosa/pilosa:v0.9.0
        ports:
            - "10101:10101"
        environment:
            - PILOSA_CLUSTER_COORDINATOR=true
            - PILOSA_GOSSIP_SEEDS=:15000
            - PILOSA_GOSSIP_PORT=15000
        network_mode: "host"
        extra_hosts:
          - "moby:<IP_ADDRESS>"
        entrypoint:
          - /pilosa
          - server
          - --bind
          - ":10101"
    pilosa2:
        image: pilosa/pilosa:v0.9.0
        ports:
            - "10102:10102"
        environment:
            - PILOSA_GOSSIP_SEEDS=:15000
            - PILOSA_GOSSIP_PORT=16000
        network_mode: "host"
        extra_hosts:
          - "moby:<IP_ADDRESS>"
        entrypoint:
          - /pilosa
          - server
          - --bind
          - ":10102"

After running this configuration with docker-compose up we can check the status of the cluster, and it should look like the following:
$ curl localhost:10101/status

{"state":"NORMAL","nodes":[{"id":"02ce5e01-ee07-436e-bce4-43cac445d71a","uri":{"scheme":"http","host":"localhost","port":10102},"isCoordinator":false},{"id":"5a66d5b6-d13c-4c32-bbd9-323bd0265fd2","uri":{"scheme":"http","host":"localhost","port":10101},"isCoordinator":true}]}

$ curl localhost:10102/status

{"state":"NORMAL","nodes":[{"id":"02ce5e01-ee07-436e-bce4-43cac445d71a","uri":{"scheme":"http","host":"localhost","port":10102},"isCoordinator":false},{"id":"5a66d5b6-d13c-4c32-bbd9-323bd0265fd2","uri":{"scheme":"http","host":"localhost","port":10101},"isCoordinator":true}]}

Yes its working.
But if I am running the docker command on two different machine without TLS. So its not working.
docker run -itd --name pilosa -v ~/node1.config.toml:/node1.config.toml
-v ~/pilosa.local.gossip32:/pilosa.local.gossip32
-p 10101:10101 pilosa/pilosa:latest
docker run -itd --name pilosa-worker1 -v ~/node2.config.toml:/node2.config.toml
-v ~/pilosa.local.gossip32:/pilosa.local.gossip32
-p 10102:10102 pilosa/pilosa:latest
Toml file is used above.

You can run the containers in a user created network.
Create a new network using:
docker network create pilosanet

Then run container1:
docker run -it --name pilosa1 -p 10101:10101 -e PILOSA_CLUSTER_COORDINATOR=true -e PILOSA_GOSSIP_SEEDS=pilosa1:14000 --network="pilosanet" pilosa/pilosa:v0.9.0 server -b pilosa1

And container2:
docker run -it --name pilosa2 -e PILOSA_GOSSIP_SEEDS=pilosa1:14000 --network="pilosanet" pilosa/pilosa:v0.9.0 server -b pilosa2

I've made the command lines a bit shorter by using the defaults. Also I didn't add the TLS configuration to the command line above, but let me know if you have problems adding or running with that configuration.
The docker compose file that corresponds to the steps above is:
version: '2'
services:
    pilosa1:
        image: pilosa/pilosa:v0.9.0
        ports:
            - "10101:10101"
        environment:
            - PILOSA_CLUSTER_COORDINATOR=true
            - PILOSA_GOSSIP_SEEDS=pilosa1:14000
        networks:
          - pilosanet
        entrypoint:
          - /pilosa
          - server
          - --bind
          - "pilosa1:10101"
    pilosa2:
        image: pilosa/pilosa:v0.9.0
        environment:
            - PILOSA_GOSSIP_SEEDS=pilosa1:14000
        networks:
          - pilosanet
        entrypoint:
          - /pilosa
          - server
          - --bind
          - "pilosa2:10101"
networks:
  pilosanet:

Let me know if this works for you or if there are any problems.

@chetangehlot  It would be great to know what platform are you using docker on. Are you on Linux? If not are you using Docker for Mac/Windows or Docker Machine ?

@yuce I am using linux (ubuntu:14.04) OS .
I am running above commands on different machine. Pilosa master is running but worker or pilosa2 doesn't start its shows the error like:

Failed to resolve pilosa1:14000: lookup pilosa1 on <IP_ADDRESS>:53: no such host
2018/05/16 12:55:22 [WARN] memberlist: Failed to resolve pilosa1:14000: lookup pilosa1 on <IP_ADDRESS>:53: no such host
2018/05/16 12:55:24 retrying after error: 1 error occurred:

It runs on only single machine but when I am using a multiple machine then it shows the error.

OK, I thought you were having problems with running a Pilosa cluster on a single server. The problem you are having is not related to Pilosa; you have to run a Docker swarm and create an overlay network: https://docs.docker.com/network/network-tutorial-overlay since otherwise there's no way a Docker daemon running on one server can know about the containers running in the other. After that, the commandline I've pasted before should work (maybe with small modifications).

I have two servers and run the command on first server
docker run -itd --name pilosa1 -p 10101:10101 -p 14000:14000 -e PILOSA_CLUSTER_COORDINATOR=true -e PILOSA_GOSSIP_SEEDS=<IP_ADDRESS>:14000 --network="pilosanet" pilosa/pilosa:v0.9.0 server -b "<IP_ADDRESS>:10101"
#Second server
docker run -itd --name pilosa2 -p 10101:10101 -p 14000:14000 -e PILOSA_GOSSIP_SEEDS=<IP_ADDRESS>:14000 --network="pilosanet" pilosa/pilosa:v0.9.0 server -b "<IP_ADDRESS>:10101"
#Its shows
2018/05/16 13:30:26 [ERR] memberlist: Failed to send gossip to <IP_ADDRESS>:14000: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:27 [ERR] memberlist: Failed to send gossip to <IP_ADDRESS>:14000: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:27 [ERR] memberlist: Failed to send gossip to <IP_ADDRESS>:14000: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:27 [ERR] memberlist: Failed to send gossip to <IP_ADDRESS>:14000: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:27 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:29 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:31 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:32 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:34 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:35 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:37 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/16 13:30:38 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address

Hi @yuce the cluster is create but don't send the gossip to <IP_ADDRESS>:14000. How? I open all the IP address with <IP_ADDRESS>.
docker logs -f b72e830e99cb
2018/05/17 08:07:27 load NodeID: /.pilosa/.id
2018/05/17 08:07:27 open server
2018/05/17 08:07:27 add node Node: af389371-fd7c-440d-b983-579f15be90b0 to cluster on Node: af389371-fd7c-440d-b983-579f15be90b0
2018/05/17 08:07:27 [DEBUG] memberlist: Initiating push/pull sync with: <IP_ADDRESS>:14000
2018/05/17 08:07:27 wait for joining to complete
2018/05/17 08:07:27 received NodeJoin event: &{0 Node: 63b7013a-0f40-48ec-8200-a29ae51b110d}
2018/05/17 08:07:28 [ERR] memberlist: Failed to send gossip to <IP_ADDRESS>:14000: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/17 08:07:28 [ERR] memberlist: Failed to send gossip to <IP_ADDRESS>:14000: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/17 08:07:28 [ERR] memberlist: Failed to send gossip to <IP_ADDRESS>:14000: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/17 08:07:28 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address
2018/05/17 08:07:30 [ERR] memberlist: Failed to send ping: write udp [::]:14000-><IP_ADDRESS>:14000: sendto: cannot assign requested address

@chetangehlot Setting gossip seed to <IP_ADDRESS> won't work, since that's not a real address (other nodes cannot access it). I'm updating our Docker Tutorial with a Docker Swarm example. I'll ask your feedback when it's completed.

@yuce Thanks for your coordination. I am waiting for the docker swarm without YML file. It should work on  multiple server where I run docker command on each server and connect to the master.

@chetangehlot Can you check the Docker swarm section in the Pilosa tutorial to see whether it works for you: https://github.com/yuce/pilosa/blob/docker-swarm-tutorial/docs/tutorials.md#running-a-docker-swarm

@yuce It's didn't work for me.
docker run -it --rm --name pilosa2 --network=pilosanet pilosa/pilosa:latest server --bind pilosa2 --gossip.seeds=pilosa1:14000
does not run beacuse we use overlay network.

Yes, the network should be an overlay network. Did you try to follow the tutorial from the start or did you try to adapt it to an already existing swarm ? Can you give more information about your setup? Are you testing this on a cloud provider, like AWS or on a local server, etc ?
What's the error you're getting when you run that command?

@yuce I am follow your tutorial on AWS. https://github.com/yuce/pilosa/blob/docker-swarm-tutorial/docs/tutorials.md#running-a-docker-swarm

Can you make the security group you are using for your ec2 instances have the necessary ports open? I've attached the screenshot from the one I am using.
Also, can you paste the output of docker node ls and docker network ls from the swarm master ?

ubuntu@ip-172-31-29-221:~$ sudo docker node ls
ID                            HOSTNAME            STATUS              AVAILABILITY        MANAGER STATUS      ENGINE VERSION
vhjwwa2zuflwvt6ij29wo8raf     ip-172-31-18-71     Ready               Active                                  18.05.0-ce
mmimts01mmk9kiq6gq7lgpafh *   ip-172-31-29-221    Ready               Active              Leader              18.05.0-ce

ubuntu@ip-172-31-29-221:~$ sudo docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
c23847ac617e        bridge              bridge              local
57d2f40cc0c4        docker_gwbridge     bridge              local
8ca5ec8a816a        host                host                local
yed153fjwmbk        ingress             overlay             swarm
a998a2d34e53        none                null                local
vdcuuno0x1eg        pilosanet           overlay             swarm

If you opened the ports after running docker swarm init, can you try restarting docker nodes ?
Can you paste the output you get on both the manager and worker after you run docker run ... ?
Can you try the instructions at Use an overlay network for standalone containers ? Does it work?

On master
ubuntu@ip-172-31-29-221:~$ sudo docker run -it --rm --name pilosa1 --network=pilosanet -p 10101:10101 pilosa/pilosa:latest server --bind pilosa1 --cluster.coordinator=true --gossip.seeds=pilosa1:14000
2018/05/22 11:01:03 load NodeID: /.pilosa/.id
2018/05/22 11:01:03 open server
2018/05/22 11:01:03 add node Node: a1d071aa-692c-4e86-9d0d-01d633c59709 to cluster on Node: a1d071aa-692c-4e86-9d0d-01d633c59709
2018/05/22 11:01:03 [DEBUG] memberlist: Initiating push/pull sync with: <IP_ADDRESS>:14000
2018/05/22 11:01:03 [DEBUG] memberlist: Stream connection from=<IP_ADDRESS>:36404
2018/05/22 11:01:03 open holder path: /.pilosa
2018/05/22 11:01:03 open holder: complete
2018/05/22 11:01:03 received state READY (a1d071aa-692c-4e86-9d0d-01d633c59709)
2018/05/22 11:01:03 change cluster state from STARTING to NORMAL on a1d071aa-692c-4e86-9d0d-01d633c59709
2018/05/22 11:01:03 broadcasting ClusterStatus: NORMAL
2018/05/22 11:01:03 SendSync to: http://pilosa1:10101
2018/05/22 11:01:03 Listening as http://pilosa1:10101
2018/05/22 11:01:03 holder sync monitor initializing (10m0s interval)
2018/05/22 11:01:03 diagnostics disabled
2018/05/22 11:01:22 [DEBUG] memberlist: Stream connection from=<IP_ADDRESS>:47622
2018/05/22 11:01:22 received NodeJoin event: &{0 Node: 2bc2f07d-01a3-4450-bbe8-ddfc893e30af}
2018/05/22 11:01:22 add node Node: 2bc2f07d-01a3-4450-bbe8-ddfc893e30af to cluster on Node: a1d071aa-692c-4e86-9d0d-01d633c59709
2018/05/22 11:01:22 broadcasting ClusterStatus: NORMAL
2018/05/22 11:01:22 SendSync to: http://pilosa2:10101
2018/05/22 11:01:22 SendSync to: http://pilosa1:10101
2018/05/22 11:01:22 received NodeJoin event: &{0 Node: 2bc2f07d-01a3-4450-bbe8-ddfc893e30af}
2018/05/22 11:01:22 SendTo: http://pilosa2:10101
2018/05/22 11:01:22 received NodeJoin event: &{0 Node: 2bc2f07d-01a3-4450-bbe8-ddfc893e30af}
2018/05/22 11:01:22 SendTo: http://pilosa2:10101
2018/05/22 11:01:23 received NodeJoin event: &{0 Node: 2bc2f07d-01a3-4450-bbe8-ddfc893e30af}
2018/05/22 11:01:23 SendTo: http://pilosa2:10101

On Worker or slave
ubuntu@ip-172-31-18-71:~$ sudo docker run -it --rm --name pilosa2 --network=pilosanet pilosa/pilosa:latest server --bind pilosa2 --gossip.seeds=pilosa1:14000
Unable to find image 'pilosa/pilosa:latest' locally
latest: Pulling from pilosa/pilosa
071580ab74bc: Pull complete
3661861bab0f: Pull complete
Digest: sha256:2833978bda37562866dd32d630f75f99a3a4e1c2afe3ed9b03d4686ad741d88d
Status: Downloaded newer image for pilosa/pilosa:latest
2018/05/22 10:55:03 load NodeID: /.pilosa/.id
2018/05/22 10:55:03 open server
2018/05/22 10:55:03 add node Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6 to cluster on Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 [DEBUG] memberlist: Initiating push/pull sync with: <IP_ADDRESS>:14000
2018/05/22 10:55:03 wait for joining to complete
2018/05/22 10:55:03 received NodeJoin event: &{0 Node: 8f7fb95c-482d-4f75-a00b-2a547e7a230c}
2018/05/22 10:55:03 merge cluster status: ClusterID:"258f16c4-3635-4568-8189-485363f71098" State:"NORMAL" Nodes:<ID:"8f7fb95c-482d-4f75-a00b-2a547e7a230c" URI:<Scheme:"http" Host:"pilosa1" Port:10101 > IsCoordinator:true > Nodes:<ID:"ea9c39f7-5f8b-40b0-9e32-7310d29881c6" URI:<Scheme:"http" Host:"pilosa2" Port:10101 > >
2018/05/22 10:55:03 add node Node: 8f7fb95c-482d-4f75-a00b-2a547e7a230c to cluster on Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 add node Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6 to cluster on Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 change cluster state from STARTING to NORMAL on ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 mark node as joined (received coordinator update)
2018/05/22 10:55:03 joining has completed
2018/05/22 10:55:03 open holder path: /.pilosa
2018/05/22 10:55:03 open holder: complete
2018/05/22 10:55:03 Sending State READY (8f7fb95c-482d-4f75-a00b-2a547e7a230c)
2018/05/22 10:55:03 SendTo: http://pilosa1:10101
2018/05/22 10:55:03 Listening as http://pilosa2:10101
2018/05/22 10:55:03 holder sync monitor initializing (10m0s interval)
2018/05/22 10:55:03 diagnostics disabled
2018/05/22 10:55:03 merge cluster status: ClusterID:"258f16c4-3635-4568-8189-485363f71098" State:"NORMAL" Nodes:<ID:"8f7fb95c-482d-4f75-a00b-2a547e7a230c" URI:<Scheme:"http" Host:"pilosa1" Port:10101 > IsCoordinator:true > Nodes:<ID:"ea9c39f7-5f8b-40b0-9e32-7310d29881c6" URI:<Scheme:"http" Host:"pilosa2" Port:10101 > >
2018/05/22 10:55:03 add node Node: 8f7fb95c-482d-4f75-a00b-2a547e7a230c to cluster on Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 add node Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6 to cluster on Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 mark node as joined (received coordinator update)
2018/05/22 10:55:03 merge cluster status: ClusterID:"258f16c4-3635-4568-8189-485363f71098" State:"NORMAL" Nodes:<ID:"8f7fb95c-482d-4f75-a00b-2a547e7a230c" URI:<Scheme:"http" Host:"pilosa1" Port:10101 > IsCoordinator:true > Nodes:<ID:"ea9c39f7-5f8b-40b0-9e32-7310d29881c6" URI:<Scheme:"http" Host:"pilosa2" Port:10101 > >
2018/05/22 10:55:03 add node Node: 8f7fb95c-482d-4f75-a00b-2a547e7a230c to cluster on Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 add node Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6 to cluster on Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 mark node as joined (received coordinator update)
2018/05/22 10:55:03 merge cluster status: ClusterID:"258f16c4-3635-4568-8189-485363f71098" State:"NORMAL" Nodes:<ID:"8f7fb95c-482d-4f75-a00b-2a547e7a230c" URI:<Scheme:"http" Host:"pilosa1" Port:10101 > IsCoordinator:true > Nodes:<ID:"ea9c39f7-5f8b-40b0-9e32-7310d29881c6" URI:<Scheme:"http" Host:"pilosa2" Port:10101 > >
2018/05/22 10:55:03 add node Node: 8f7fb95c-482d-4f75-a00b-2a547e7a230c to cluster on Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 add node Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6 to cluster on Node: ea9c39f7-5f8b-40b0-9e32-7310d29881c6
2018/05/22 10:55:03 mark node as joined (received coordinator update)

But UI is not working after hit http://public-master-ip:10101
I will also expose 10101 port in AWS security group.

@chetangehlot are you still experiencing problems with this?


BCL - User compact: Consider removing bottom margin from wrapper.

The user compact composition uses an .mb-3 spacing class on the wrapper element (see latest version).
This makes the usage of this component difficult in different contexts. Our use case is that we output this in a grid pattern that already takes care of spacing (also takes care of when not to apply spacing, for instance on the last item).
This composition is very similar to a card component IMO, and it should not define outer spacing.

Thank you, we will analyse this and comeback with a decision. In any case, can you use the removeClass() function from the drupal_attributes?
https://befused.com/drupal/twig-addclass/


feat: Refactor end-to-end test case creator script

Pull Request Key Information
Reason for change
The End-to-End test case creator script was long, hard to maintain and did not share code with other scripts that "run" LDAR-Sim.
What was changed
Refactored the end-to-end test case creator script to use an end-to-end test case creator simulation manager that inherits core functionality from the base simulation manager.
Intended Purpose
This allows the end-to-end test case creator to inherit changes made to LDAR-Sim run functionality.
Level of version change required
N/A
Testing Completed
All unit tests pass:
unit_test_results.txt
All E2E tests pass:
V4_simple_non_repairable_emissions_bb24139aabd09018a0ce99ce324c10cdab0c31b8.log
V4-simple_repairable_emissions_bb24139aabd09018a0ce99ce324c10cdab0c31b8.log
Comparison of file names between master and this branch is identical (Actual file contents will not be because E2E creator script forces remake of generator files):
E2E creator testing.zip
Sample E2E test case created using latest from script passes:
new_bb24139aabd09018a0ce99ce324c10cdab0c31b8.log
Target Issue
N/A
Additional Information
N/A

New E2E test results:
test_1db583486dfeb63dd0273ccbeda9773ab180d09d.log
V4_simple_non_repairable_emissions_1db583486dfeb63dd0273ccbeda9773ab180d09d.log
V4-simple_repairable_emissions_1db583486dfeb63dd0273ccbeda9773ab180d09d.log


partners[pinecone]: Prevent race condition in add_texts() method

Problem
When invoking the add_texts() method on the vector store, subsequent actions that depend on the existence of the newly added documents may result in errors or unexpected behavior. For example:
from langchain_pinecone import PineconeVectorStore

# Example code demonstrating the problem
vectore_store = PineconeVectorStore.from_texts(["Document 1", "Document 2"], ...)

# Immediately trying to retrieve the added documents
retrieved_docs = vector_store.similarity_search("Document 1")
# This may raise an error or return unexpected results if the documents are not yet indexed.

Solution
This pull request introduces a mechanism to block the addition of text to the index until the expected number of documents has been reached. The added code ensures that all insertions are completed only when the vector count in the index matches the anticipated document count.
Considerations
I have implemented this solution based on the assumption that no additional updates will occur on the index during this process. However, I am open to feedback regarding this interpretation of the problem and any alternative approaches that may be more effective.

appreciate the thought! however, this is actually the same behavior as calling the pinecone api directly due to an eventual consistency guarantee, and we don't want to by-default block even longer.
I would prefer to document how folks can implement this loop themselves to overcome eventual consistency rather than merge this into the integration.

Yeah, that makes sense. Thanks for the reply.


Fix build pipeline

use clasp
no more transpiling TS before uploading
add handy scripts

Closes #88
Verify that #92 is not introduced with this PR, or if so, fix before deployment

I decided to try rebuilding everything from scratch, and actually I'm doing it on a new Mac as well.
I'm getting two build errors:
First, when doing npm i I get an error installing gyp, although it doesn't fail the whole install.
Second, when I subsequently do npm run build:prod I get an error from gulp:
```gulp[6479]: ../src/node_contextify.cc:640:static void node::contextify::ContextifyScript::New(const FunctionCallbackInfov8::Value &): Assertion `args[1]->IsString()' failed.

Full log: [log.txt](https://github.com/ericyd/gdrive-copy/files/2990070/log.txt)

Let me know if you want me to open a separate ticket for this.

No ticket needed, just use Node 8 as indicated in the readme


FullyConcurrentRingBuffer.PutFrom(): "Indeterminate length operations not supported."

I am interested in using this library for concurrent access to stream in my application.
Is there any reason that you don't implement FullyConcurrentRingBuffer.PutFrom?
By using this function it would be possible in a loop to fully consume another stream into RingBuffer, and do it without throwing an exception.

If the length exceeds the ringbuffer length, earlier content of that same buffer will be overwritten, hence the "indeterminate length" text of that error - because such an operation cannot be guaranteed to succeed. Is this a problem? I can change that, if desired - but I thought a degradation in the form of this exception would be better than silently overwriting prior data in the event that the write/put is too long to be completely stored


SAP HANA XS Advanced, Creating an HDI Module

Tutorial URL: https://developers.sap.com/tutorials/xsa-hdi-module.html
Hi,
I have a general question about the HDI-Container and the database schemas.
The HDI Containers at run time have their own isolated schema, so if I am looking forward to creating and manipulate enterprise data where should I store it?
Should I create another independent db schema?
Best regards,
Juan José Miquel

Hi Juan José,
An HDI container consists of both the design time artifacts and the physical artifacts. That includes a schema and tables, for example. Not sure what you mean by manipulation of data, but you would do that in the HDI container like with any other database schema, just like it's shown on steps 4, 5 and 6 on the tutorial you for which you are creating an issue.
This kind of question belongs in the SAP Community (answers.sap.com), as this is for problems with the content in the tutorials. I'd also suggest taking a look at the Developer guide for XS Advanced in the SAP Help.
Regards,
Lucia Subatin


Add support for searching by date.

@ganpa3 can you comment on why this is marked as a draft, and what needs to happen for it to be reviewable?


Improved design and Firefox support.

Improved design, improved Firefox support(fixed toolbar issues with input[number]).

Before

After

Thank you a lot for your UI improvement and bug fixes for FireFox...!
You UI looks much more coherent in terms of rounded border and simplified color scheme.
Recently I don't have enough time to work on this, yet I will make sure to continue this project.

I will do a bit more change over the next few weeks.
I use Pentool for work, it's excellent. Thank you for building it.

You're welcome. It was a first time for me to receive PR except for 'fix typo' haha
While I have to do paid works for the time being, I'm looking forward to your further suggestion!


prevent burn or claim without prerequisites

This displays toasts urging the user to complete prerequisite steps first if they try to burn or claim without them.
There's less going on here than it looks like. I reduced the indentation depth of the code in the onClick handlers, but the code is the same.

Looks good! Thanks a lot!


Supplier Module Functionalities

Implement crud functionalities in Supplier module

Supplier Module Functionalities including:

supplier crud (add, edit, delete)
new supplier data (default status value '1')
edit supplier data
soft deleting supplier data (update status value '0')
filter data
field validation in supplier modal
populating address (region, province, municipality, baranggay)

link for updated database in JSAI37
Supplier Functionalities
https://drive.google.com/drive/folders/10S_AwTuR9GO2eZYS7_ScRQa-5LqNT9Fu?usp=sharing

This task did not reach completion before the deadline. I will move this ticket to the 2024.04.2 Sprint.


[OFFICIAL] Generated Issue: InvalidArgumentException

Please fill out the details below.
Summary:
Sometimes while querying the completed animelist of a user, the request returns 500
e.g. https://api.jikan.moe/v3/user/funkschy/animelist/completed
Steps to reproduce:
The issue only happens sometimes. Unfortunately I'm not sure what requirements have to be met for it to manifest. Sometimes it works, sometimes it doesn't
Additional Details
Jikan Parser Version: v2.18.13@d41c4535bb739824c61ae22192c41eb3b705399c
PHP: 7.4.23
Redis: Connected
Exception: InvalidArgumentException
Code: 0
Message: The HTTP status code "0" is not valid.
Trace: /var/www/jikan/vendor/symfony/http-foundation/Response.php on line 464
Request: GET /v3/user/aodhneine/animelist/completed

Duplicate #174


next version: v1.1.0

Codecov Report

Merging #4 into master will decrease coverage by 6.31%.
The diff coverage is 42.85%.

@@            Coverage Diff             @@
##           master       #4      +/-   ##
==========================================
- Coverage   95.26%   88.94%   -6.32%
==========================================
  Files          21       21
  Lines         359      398      +39
==========================================
+ Hits          342      354      +12
- Misses         17       44      +27

Impacted Files
Coverage Δ

cutecharts/charts/basic.py
80% <100%> (+0.68%)
:arrow_up:

cutecharts/_version.py
100% <100%> (ø)
:arrow_up:

cutecharts/render/engine.py
64.28% <35%> (-21.87%)
:arrow_down:

cutecharts/globals.py
94.73% <66.66%> (-5.27%)
:arrow_down:

cutecharts/components/page.py
93.93% <75%> (+0.39%)
:arrow_up:

Continue to review full report at Codecov.

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


CLI tool for the online ppp

I want to have a CLI tool to run the online PPP calculation.
Describe alternatives you've considered
It's okay if it does not exist.

Done: 6e8568caa3232e64e92c6ece169abebd30c5c95a