[Chore]: Fix issue with ruby buildpacks

Background
We pinned the version of ruby buildpacks to v0.11 in this PR #1438
With Ruby apps, the builds succeeds but the pods fail to start with the latest version. In our controllers, after the build succeeds, we extract the start-command from the built image and set it on the cf-process. This seems to work fine with ruby:0.11 but is broken on the latest version.
Inspecting it further, we verified that the start-command on the image is the same as the start command we set on the cfprocess
   Paketo Rackup Buildpack 0.4.0
     Writing start command
     Assigning launch processes:
       web (default): bash -c bundle exec rackup --env RACK_ENV=production -p "${PORT:-9292}"

Removing the command from the cfprocess fixes the issue. As a workaround, we decided to pin the version to 0.11 until we figure out how we want to fix this.
Action to take
@davewalter had the question about not setting the command on the cfprocess resource. It appears that the command attribute is not a required field on the RunWorkload anyway.
We can also check with the packeto-buildpacks team as to what changed between v0.11 and v0.15 and see if its a bug on their end.
Impact
This will allow us to use the latest buildpacks for ruby
Dev Notes
No response

If the -c option is present, then commands are read from string. If there are arguments after the string, they are assigned to the positional parameters, starting with $0.

It appears this is a result of a change in the rackup buildpack: https://github.com/paketo-buildpacks/rackup/blame/8cc50547eeeda8781e0ec944997514394f2f95f0/build.go#L53-L63

Where the change to rackup fully comes into play is in the image_process_fetcher.go where we join the command and args into a single string. This causes it to be interpreted as bash -c bundle with the rest being assigned as args.

The quickest fix here would be to quote each argument like this:
func extractFullCommand(process launch.Process) string {
	commandWithArgs := []string{process.Command}
	for _, arg := range process.Args {
	    commandWithArgs = append(commandWithArgs, fmt.Sprintf("%q", arg))
	}
	return strings.Join(commandWithArgs, " ")
}

I'm not sure if fmt.Sprintf("%q") will correctly shell quote things, so you may need to look into that further.

I’ll try to summarise my understanding of this issue, mostly so that we are all on the same page.
What's the flow of the command from a built image to a CFProcess?

When building an image, we generate the droplet status by, among the other things, extracting the process types using the ImageProcessFetcher

ProcessType actually also includes a Command (which is a string)
the ImageProcessFetcher generates the aforementioned Command by concatenating the command and arguments coming from the image process

The droplet status gets copied from the BuildWorkload to the CFBuild
When starting the app, we create the necessary CFProcesses using the ProcessTypes from CFBuild.Status.Droplet

What's the issue with the flow above?
The concatenation performed in ImageProcessFetcher drops vital information about the boundaries of each single argument: for example, a command like "/bin/bash" with arguments ["-c", "bundle exec ..."] becomes "/bin/bash -c bundle exec ...", which will result in only bundle being passed to bash -c!
Why do we need to this in the first place? Don't images already have an entrypoint set?
Apps can have multiple processes, each of which will have its own entrypoint. Using the default image entrypoint would only work for running the web process.
Possible solution
We could try to quote each individual entry in the arguments list before concatenating. In the example above, this will result in:
/bin/bash -c "bundle exec ..."

This looks correct. But what happens if the arguments in turn contain quotes? For example, arguments like ["-c", "echo \"hello\""] would result in:
/bin/bash -c "echo "hello""

This works in my shell but I'm not sure it will as a general solution.

Why do we need to this in the first place? Don't images already have an entrypoint set?
Apps can have multiple processes, each of which will have its own entrypoint. Using the default image entrypoint would only work for running the web process.

I think this is the most important reason. One other reason (which we could solve in other ways) is that the GET /v3/processes/:guid endpoint wants to display the command in all cases. Right now saving it off on the CFProcess is a convenient way of making that accessible. Leaving it empty except in cases where it was developer specified could be valid, but we'd still need a way to reach through and find the buildpack-provided command.

https://github.com/cloudfoundry/cloud_controller_ng/blob/e883d66c780287e2270e561f1b80d73a8ef89714/app/models/runtime/process_model.rb#L407-L413
https://github.com/cloudfoundry/cloud_controller_ng/blob/e883d66c780287e2270e561f1b80d73a8ef89714/app/presenters/v3/process_presenter.rb#L26

Using the launchers in /cnb/process
I think there may be some cases where a launcher is not guaranteed to exist for a process type. Such as if a CF manifest declares one, we'll make one, but the buildpack would have no context of it. That might be enough of an edgecase we don't care though. Bigger question I have is: will a buildpack always provide a launcher for a given process type it knows about? It was unclear to me from the spec.


Running BabylonJS Demos Without Using DevServer

Hello all,
I am currently experimenting with this repo, the BabylonJS demos work really well and are very nice. Though, I was wondering how I would access these without the use of the web-dev-server. I haven't seen much documentation relating to this topic, if any documentation at all.
I have tried changing the npm build settings but nothing has been working. When I try to access any of the BabylonJS demos without going through port 8080, it will simply just not load. My ultimate goal is to get the demos working perfectly in production mode so I can run them on ports 80/443.
Any ideas? Any tips would be appreciated.

Hi @GeneUNCG, have you check out our amplify publisher plugin for babylon? This will allow you to easily create a hosting solution for a single-page web application using AWS Amplify within BabylonJS editor.

Hi @GeneUNCG, have you check out our amplify publisher plugin for babylon? This will allow you to easily create a hosting solution for a single-page web application using AWS Amplify within BabylonJS editor.

I have not seen it yet, but I will go ahead and read it now! I made major modifications to one of the demo projects, would I be able to import it into the Babylon.JS Editor?

Unfortunately, the demos in this repository are not compatible with the BabylonJS Editor. It should be possible to do a distribution build of these demos, though, and just deploy those files to any web server (including AWS Amplify). But I just tried it myself and noticed our build script isn't working - at least not intuitively. Let me dig in a bit more.

It should be possible to do a distribution build of these demos,

Perfect. That is exactly what I am looking for. Please keep me updated on the way to build the demos for release/distribution.

@Krxtopher Perfect. That is exactly what I am looking for. Please keep me updated on the way to build the demos for release/distribution.

Hello @Krxtopher, just wanted to check in an see if there was anything that was found? Any clues on how to get the build scripts working for this project would be greatly appreciated!

@GeneUNCG, sorry it's taken so long to get you a solution for deploying our demos. Although we haven't made updates to the demos in the main repository, yet, I did create a temporary repository in my personal account that contains updated versions of the Babylon.js demos that are now easily deployable to any web server. Give it a try and let me know if you run into any problems: https://github.com/Krxtopher/sumerian-host-demos-babylonjs
I'll continue working to ensure these updates get ported to the official repository in the future.


Implement layout-control widgets (<row>/<column>/<center>/<wrap>).

For now there are only subset of html widgets implemented. When I wrote examples, I constantly lacked an easy way to define the layout (like put this in the center, and this in row, etc). It looks pretty useful to provide out-of-the box layout widgets with predefined styles:

<center> places children in the center. Possible defaults:

center {
  justify-content: center;
  align-content: center;
}

<row> places children in a row. Possible defaults:

row {
  flex-direction: row;
  justify-content: space-around;
  align-content: center;
}

<column> places children in a column. Possible defaults:

column {
  flex-direction: row;
  justify-content: space-around;
  align-content: center;
}

<wrap> places children wrapped. Possible defaults:

column {
  flex-wrap: wrap;
}

row/column widgets should provide the way to control main/opposite axis behaviour with attributes.
To control main-axis behaviour I suggest to use "space" attribute (where to put spaces on the main axis):
<row space="between">...</row>

The possible values are:

around for JustifyContent::SpaceAround
between for JustifyContent::SpaceBetween
even for JustifyContent::SpaceEvenly
end for JustifyContent::FlexStart
start for JustifyContent::FlexEnd
outside for JustifyContent::Center

To control opposite-axis behaviour I suggest to use "align" attribute:
<column space="start" align="center">...</row>

space-around for AlignContent::SpaceAround
space-between for AlignContent::SpaceBetween
space-even for JustifyContent::SpaceEvenly
start for JustifyContent::FlexStart
end for JustifyContent::FlexEnd
center for JustifyContent::Center

I don't what attributes should be provided for <center>/<wrap>. Suggest and argue or left them empty.
It would be cool if the widget attributes turned out to be bindable and manageble (imposible to change via ess).
The complex examples (color-picker, image) and README should be taken into account (edit examples/readme to use this widgets).

This will be done right in polako (#77)


[Zuul_Sync] Sync_201907090000_modified_by_theopenlab-ci

Just sorting and put the item from same project into same block section.


Image to base64 encoding and vice versa

Description
Image to base64 encoding and vice versa

Type of issue

[X] Feature (New Script)
[ ] Bug
[ ] Documentation

Checklist:

[X] I have read the project guidelines.
[X] I have checked all the existing projects, before submitting a new project issue.
[X] I have checked previous issues to avoid duplicates.
[X] This issue will be meaningful for the project.

Can I work on this issue? Thank You!

Can I work on this issue? Thank You!

Sure buddy @pranav6670

Can I work on this issue? Thank You!

Sure buddy @pranav6670

Great! Thanks, bro.


In Windowed mode returning to full screen on main menu

Cogito and Godot Engine Version:
Godot v4.2.1 b09f793f5
COGITO - current commit - c406d828c4e87b902dc020b2a58ebbb5ecf4ffe5
Description:
The game is not respecting my change to windowed mode after I apply it.
Reproduction steps:
Run the game from the main menu
Go to options, graphics tab, set window mode to windowed, hit apply changes.
Back out to main menu
Select a new game
Screen will briefly flash full screen, then return to windowed.
Open pause menu.
Click back to main menu.
The window returns to full screen
Expected behavior:
Once I set windowed and hit apply I expect the main menu to respect this setting when I return to it.

I have the same issue. I don't think it's strictly related to the main menu itself.
For me it occurs that when I set the window mode, the settings stay saved for one re-start, then reset.

Run game (settings are reset/set to default, fullscreen mode)
Open options and change settings (windowed mode)
Close and run again.
Stored settings are loaded (windowed mode)
Close and run again
All settings are reset / back to default.

I assume it's an issue with how the config is saved/loaded, but haven't had a chance to look into it yet.

I did some investigating and I think i've pinpointed the issue:

On loading the config file, the audio volume sliders are loaded
As these values are loaded, the value_change signals are emitted, which in turn called the apply_changes_pressed
This saves/overwrites the config file with the current values.
As the volume slider values are loaded before the graphics settings, the default values for those are saved at this moment.

I've thus moved the loading of the volume sliders to the bottom, which seems to have helped.
Will put this into a future commit.

There is another issue with the options menu, apart from not saving settings, and that is when you change settings and don't hit apply the button and slider states don't revert to the actual settings when reopening the options menu.
Test:
Toggle the "Invert Y" checkbox to on, don't apply changes and resume playing.
Return to the options menu to find the "Invert Y" checkbox is still on, even though the actual behavior/setting is off.
If exiting the menu without applying changes, the menu buttons should be reverted to reflect their actual values.

Ok, I just pushed some tweaks in https://github.com/Phazorknight/Cogito/commit/bfb1530ff2d496a18921ff2b9fb0be31dfb30f6c
The Restore defaults button is there but currently not functional or hooked up to anything.
This is a bit tricky to test, so please give it a go and report any Issues you encounter.

I haven't encountered any issues with this. My original issues is resolved. I'm happy to close the issue.
@Phazorknight did you want this open for your notes for later, or is that is that un needed now?

Yeah I'm gonna close this for now. Thanks!


[IT-1674] Collaborator role for INCLUDE project

Setup a Collaborator role to access INCLUDE DCC project resources
at Children’s Hospital of Philadelphia (CHOP).
The policy for this role is from the AWS VPC documention[1]
in section Restricting access to buckets in a specific AWS account
[1] https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html#vpc-endpoints-policies-s3

I can't help validate the role until I have access, but I shouldn't have access until you've validated that I can't touch the scicomp buckets.


Improve logging in pycsw ingestor

It seems the pycsw ingestor is not logging properly. We need to add more logging.

Please be more specific. I don't know what to add here.


Feature/tasdevani/283 configurable refresh

All Submissions:

[YES/NO] Have you followed the guidelines in our Contributing document? YES
[YES/NO] Have you added an explanation of what your changes do and why you'd like us to include them? YES
[YES/NO] I have updated the documentation accordingly. YES
[YES/NO/NA] I have added tests to cover my changes.NA
[YES/NO/NA] All new and existing tests passed.NA
[YES/NO/NA] My code follows the code style of this project.YES
[YES/NO/NA] I ran lint checks locally prior to submission.YES
[YES/NO] Have you checked to ensure there aren't other open Pull Requests for the same update/change? YSE

What is the current behavior?

Issue Number: 283
https://github.com/microsoft/cobalt/issues/283
What is the new behavior?

Adding an environment variable in each stage called TF_CLI_ARGS that takes in additional arguments to the command line. Default behavior can also be overridden with specifying the command line arguments
updated documentation
Updated the plan, destroy and apply script for bash to include this parameter to be passed in

Does this introduce a breaking change?

[YES/NO] NO

Any relevant logs, error output, etc?

(If it’s long, please paste to https://ghostbin.com/ and insert the link here.)
Other information

@tasdevani21 Could you change the name of this PR to something more declarative? The title becomes the commit message and we like them to be useful. Typically the best title answers the question: "If merged this PR will...". So the title could be something like:

Adds the ability to use terraform arguments to the CICD pipeline


Add .ipynb support

Still doesn't working with Jupyter Notebook .ipynb files?
Now, It only shows Idle status.

ah ig i havent adde ipynb support, will work on it.

Great job!!, now it works.

this support for ipynb still needs tons of planning and work, we are planning to support ipynb variables too, so this gonna make a while.

It showed {filename} of .ipynb when I opened VScode. But after I reload the required extension It doesn't work again and just shows the idle state as before. I will wait. Thank you!

beware that ipynb is not high priority right now, because v5 just came out, right now trying to find all bug and fix it is high priority,
also ipynb support would require tons of codebase change too

I noticed that ipynb is listed within the languages file https://github.com/leonardssh/vscord/blob/main/src/data/languages.json but it still isn't working. At least, when you're running a cell.

VSCode has intergration with jupyter notebook and requires other api to check the jupyter notebook status which might explain why it doesnt show status when running one

Is this being worked on or does the above mentioned issue prevent this feature from ever working?

I find it hard to believe that this doesn't work. I just checked @Infinitay 's mentioned link and made a wild guess without checking the actual code that this might be the problem of the catching of regex patterns sequentially and it works fine on other extensions but doesn't work fine on .ipynb files. Someone please confirm if that is the issue.

I am on Ubuntu using VSCode via .deb file installation method, and I can confirm on a new installation of the extension, without the Microsoft's Jupyter Extension for Visual Studio Code, the Jupyter Notebook .ipynb files show the line number and project of the Jupyter Notebook .ipynb files, which in other words works.
But as soon as the mandatory Microsoft's Jupyter Extension for Visual Studio Code is installed to run the .ipynb files, the Discord Rich Presence extension stops working, saying on Jupyter Notebook .ipynb files that it is Idling
@xhayper

Jupyter notebook use different api than nornal document thats why we need to add support for it

I dont have the time nor the motivation to do it right now, i have to prepare to enter a college

I dont have the time nor the motivation to do it right now, i have to prepare to enter a college

Best of luck with the tedious process

Any updates on this? Would love to have this feature, this is the best looking rich presence plugin for vscode.


No longer seeing console output

VSCode Version: Code 1.14.1 (2648980a697a4c8fb5777dcfb2ab110cec8a2f58, 2017-07-13T19:18:47.188Z)
OS Version: Windows_NT ia32 10.0.15063
Extensions:

Extension
Author (truncated)
Version

vscode-eslint
dba
1.2.11

pgsql
dou
0.0.8

EditorConfig
Edi
0.9.4

JSDocTagComplete
Hoo
0.0.2

vscode-esformatter
how
1.5.2

output-colorizer
IBM
0.1.2

vscode-puglint
mrm
2.3.0

Steps to Reproduce:

Start a program that uses bunyan for logging.
To make the bunyan output readable, pipe the output through bunyan-cli.
To do so, create a pipe-bunyan.cmd with the following content:

@ECHO OFF
node %* | bunyan -o short

Specify the script as a runtimeExecutable, like so:

"runtimeExecutable": "${workspaceRoot}\\.scripts\\pipe-bunyan.cmd",

There is no output in the debug console. This used to work fine before.

@oliversalzburg I'd like to reproduce this. How does your launch configuration look like?

@weinand This is it:
{
	// Use IntelliSense to learn about possible Node.js debug attributes.
	// Hover to view descriptions of existing attributes.
	// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
	"version": "0.2.0",
	"configurations": [
		{
			"type": "node",
			"request": "launch",
			"name": "Development",
			"runtimeExecutable": "${workspaceRoot}\\.scripts\\pipe-bunyan.cmd",
			"program": "${workspaceRoot}\\lib\\app.js",
			"cwd": "${workspaceRoot}",
			"env": {
				"DATABASE:HOST": "localhost",
				"MQ:USER": "guest",
				"MQ:PASSWORD": "guest",
				"NODE_ENV": "development"
			}
		}
	]
}

This regression was not introduced in 1.14.1 AFAIK. This stopped working in 1.13 IIRC.

What version of node are you using?
How is debugging configured in the pipe-bunyan.cmd script?

I'm using Node 6.11.2 and the contents of pipe-bunyan.cmd are this:
@ECHO OFF
node %* | bunyan -o short

I'm not sure what you're referring to in regards of debug configuration in this script.

does it make a difference if you add a "protocol": "legacy" to your launch config?

The logging works fine for me with "legacy" protocol:

but not with "inspector" protocol:

However, a simple console.log("hello") still works for "inspector" protocol.

@weinand I can confirm that it works with legacy protocol.
What a relief! :D

@oliversalzburg if you do not want to switch to the "legacy" protocol, you can use a different console and continue to use the "inspector" protocol: just add a "console": "integratedTerminal" to your launch config.

This is the slightly infamous issue, https://github.com/Microsoft/vscode/issues/19750
"console": "integratedTerminal" is probably the best workaround unless you can find a bunyan-specific solution.

@weinand Ugh, that just creates new problems. When I switch the console, the application doesn't even start anymore, because of insufficient command line escaping.
$ cd "c:\Users\OliverSalzburg\FairManager Projects\core-web3" ; "c:\Users\OliverSalzburg\Fai
rManager Projects\core-web3\.scripts\pipe-bunyan.cmd" --inspect=17380 --debug-brk lib\app.js
Debugger listening on port 17380.
Warning: This is an experimental feature and could change at any time.
To start debugging, open the following URL in Chrome:
    chrome-devtools://devtools/remote/serve_file/@60cd6e859b9f557d2312f5bf532f6aec5f284980/inspector.html?experiments=true&v8only=true&ws=<IP_ADDRESS>:17380/755a6691-d053-4759-b44a-d343878da79c
Debugger attached.
module.js:471
    throw err;
    ^

Error: Cannot find module 'C:\Users\OliverSalzburg\FairManager Projects\core-web3\libapp.js'
    at Function.Module._resolveFilename (module.js:469:15)
    at Function.Module._load (module.js:417:25)
    at Timeout.Module.runMain [as _onTimeout] (module.js:604:10)
    at ontimeout (timers.js:386:14)
    at tryOnTimeout (timers.js:250:5)
    at Timer.listOnTimeout (timers.js:214:5)
Waiting for the debugger to disconnect...

Somewhat annoying that I have to adjust our application code around our IDE, but I'm now using https://github.com/ibm-watson-data-lab/bunyan-console-stream to work around the issue.

I don't understand in what way you have to adjust your code around VS Code?

If adjusting the launch.json would have yielded the desired results, then I would agree. But the only adjustment I could make that did yield any solution, without introducing new issues, was to revert to the legacy protocol. This is undesirable. So, unless I'm missing something, I'm left with adjusting our application code to use a form of logging that VS Code is able to work with.
It is understandable that an IDE doesn't have to cover every possible configuration in existence, but it would definitely be nicer if transitioning from one debug protocol to another (or, for that matter, from one console to another), wouldn't cause so much friction.

Sorry, but I'm not able to reproduce the "insufficient command line escaping" with VS Code 1.15.2 on Windows:

It would be great if you could point me to the location with the insufficient command line escaping. Thanks!

Are you using WSL?

this could be another instance of https://github.com/Microsoft/vscode/issues/21635

I'm assuming this is the problem:
"terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe"

yes, that's the problem. Now I can reproduce (and fix).

A fix will be available in the next Insiders.

@oliversalzburg please note, that VS Code does not support git/bin/bash.exe or bash.exe (WSL) yet. So, the fact that it's now working for debug, doesn't mean that it works for tasks as well...

@weinand Understandable. We'll probably just stop using process.stdout and similar for direct output in the future though. The module by IBM works well for us. It allows us to stay closer to the default launch configurations without being impacted by possible user settings.
So, in the end, we probably ended up with a better setup overall. Thanks for the help.


Standalone hugr-render python package

This would be a simple library / CLI program that renders a serialised HUGR using the current guppy (visualiser code](https://github.com/CQCL/guppylang/blob/main/guppylang/hugr/visualise.py) and optionally opens a browser to display it.
We should be able to replace the private test-only utils::test::viz_hugr method with a call to this program (if present).
Blocked by #865

I think actually a hugr-py package, containing the python hugr model + builder (which guppylang can depend on), with a cli script command for visualisation

The hugr-cli binary has mermaid rendering support now.


Enable CBS for Covid Alert Staging

Summary
Enable CBS while making necessary Terraform changes for WAF, ELB, CloudTrail and VPC flow logging.
The existing CBS integration will also have to be removed to prevent the ConfigRules from auto-remediating our changes.
Related

#34

Account has been bootstrapped, but we'll hold off onboarding until we've figured out the logging structure.  This is because in order to proceed, we'd need to remove the existing CBS integration, which would cause there to be a gap in coverage.


IDMPhotobrowser image flickers during opening when reducing the animation duration.

Right now, the animation duration of 0.28 causes the image opening transition to flicker. If I reduce the duration further to 0.2 seconds, it flickers even more. Is this because it conflicts with the IDMPhotobrowser modal view opening animation? I tested it with changing time to 0.4 and then it does not flicker. But it happens if I keep it <=0.3s. Does anyone face this type of issue and have a way to solve this?

I was presenting view controller using a custom cell instead of view controller. My mistake. Closing this out.


Namespace 'firebase' has no exported member 'Promise'.

i got this error
ERROR in node_modules/angularfire2-offline/database/angularfire2-interfaces.d.ts(4,32): error TS2694: Namespace 'firebase' has no exported member 'Promise'.
node_modules/angularfire2-offline/database/angularfire2-interfaces.d.ts(5,35): error TS2694: Namespace 'firebase' has no exported member 'Promise'.
node_modules/angularfire2-offline/database/angularfire2-interfaces.d.ts(6,35): error TS2694: Namespace 'firebase' has no exported member 'Promise'.
node_modules/angularfire2-offline/database/angularfire2-interfaces.d.ts(7,44): error TS2694: Namespace 'firebase' has no exported member 'Promise'.
node_modules/angularfire2-offline/database/object/afo-object-observable.d.ts(53,24): error TS2694: Namespace 'firebase' has no exported member 'Promise'.
node_modules/angularfire2-offline/database/object/afo-object-observable.d.ts(63,31): error TS2694: Namespace 'firebase' has no exported member 'Promise'.

I also have this problem. Please merge pull-requests where these are fixed.

HI! I'm with same problem, you find any solution @MayGo or @PgPedroGabriel?
I had this problem with the version of AngularFire2 ^5.0.0-rc.4 but with the version of example 4.0.0-rc.0 works!

@MayGo  But would that require you moving the whole data store on the realtime DB down to firestore

@vixson yes.

Damn that is a gonna be stressful. please is there a way to move the data automatically on firebase

I have this issue too... Any known version working with<EMAIL_ADDRESS>?

I have this issue too... Any known version working with<EMAIL_ADDRESS>?

@kevinrodriguez-io, unfortunately, you would have to stick with the old angularfire2 version 40.0.-rc.0.

In  the end It was easier for me to switch to firestore. Will keep using firestore in the future for all of my projects.


syclcc inconsistently (incorrectly?) injects names into namespace std::

Bug summary
Compiling a file with no #include statements still populates the std:: namespace with some names, but only for a subset of SYCL backends.
To Reproduce
Compile the snippet below with
syclcc --hipsycl-targets=cuda:sm_80 minmax.cc -c
and with
syclcc --hipsycl-targets=omp minmax.cc -c
The first command finishes without error (which I think it shouldn't), and the second outputs the expected warnings about undefined min, max, etc.
using namespace std;
long f1 (long a, long b) { return max(a,b); }
long f2 (long a, long b) { return min(a,b); }
long f3 (long a) { return abs(a); }
double f4 (double a) { return sin(a); }

Expected behavior
I would expect the command to return "undeclared identifier" errors in both cases.
Describe your setup
hipSYCL was installed from the develop branch a few days ago, using clang version 12.

This seems to be a clang thing, not a hipSYCL thing. clang's CUDA toolchain apparently defines some builtins no matter if standard headers are included or not.
This command reproduces the same behavior without hipSYCL:
/usr/bin/clang++ -std=c++17 -x cuda --cuda-path=/opt/cuda --cuda-gpu-arch=sm_61  test.cpp

One interesting thing is that the clang CUDA builtins are __device__ and therefore should not participate in overload resolution when used inside __host__ functions like f1 etc. Therefore, I would expect errors that it cannot call a __device__ function from a __host__ function. Indeed, this is what happens if we remove -std=c++17:
test.cpp:3:35: error: no matching function for call to 'min'
long f2 (long a, long b) { return min(a,b); }
                                  ^~~
/usr/lib/clang/13.0.1/include/__clang_cuda_math.h:197:16: note: candidate function not viable: call to __device__ function from __host__ function
__DEVICE__ int min(int __a, int __b) { return __nv_min(__a, __b); }
               ^
/opt/cuda/include/crt/math_functions.hpp:868:38: note: candidate function not viable: call to __device__ function from __host__ function
__MATH_FUNCTIONS_DECL__ unsigned int min(const unsigned int a, const unsigned int b)
                                     ^
/opt/cuda/include/crt/math_functions.hpp:873:38: note: candidate function not viable: call to __device__ function from __host__ function
__MATH_FUNCTIONS_DECL__ unsigned int min(const int a, const unsigned int b)
                                     ^
/opt/cuda/include/crt/math_functions.hpp:878:38: note: candidate function not viable: call to __device__ function from __host__ function
__MATH_FUNCTIONS_DECL__ unsigned int min(const unsigned int a, const int b)
                                     ^
/opt/cuda/include/crt/math_functions.hpp:883:34: note: candidate function not viable: call to __device__ function from __host__ function
__MATH_FUNCTIONS_DECL__ long int min(const long int a, const long int b)
                                 ^
/opt/cuda/include/crt/math_functions.hpp:902:43: note: candidate function not viable: call to __device__ function from __host__ function
__MATH_FUNCTIONS_DECL__ unsigned long int min(const unsigned long int a, const unsigned long int b)
....

I don't know why -std=c++17 changes something. My guess is that things like constexpr enter the equation then, which can change overload resolution for device builtins.

Fascinating. Thanks for the analysis and sorry for the false alarm!
The real issue that led me to this reduced test case is a bit more complicated. I'll try to find out whether this is also purely clang-related; I expect it is.
On the off chance that I can reproduce he original problem only with hipSYCL headers loaded, I'll reopen this and update the reproducer.


[wallet-ext][p0] implement network switching

switch between local, devnet, and custom url

done. https://github.com/MystenLabs/sui/pull/2529


feat(ios-google): enable metal renderer

Does any other open PR do the same thing?
No
What issue is this PR fixing?
This issue addresses https://github.com/react-native-maps/react-native-maps/issues/4130, based on discussions in https://github.com/react-native-maps/react-native-maps/pull/4334
How did you test this PR?
This change affects iOS only.
As stated by Google, they won't fix iOS crashes with the OpenGL renderer.
Tests were performed adding the line on a production app and validating that the app didn't crash, setting provider to PROVIDER_GOOGLE

Excellent :) A couple of comments:
The change will become part of the release notes, so I don't believe that it's necessary to add a note to the installation docs.
Did you test whether the Google Maps SDK is happy that [GMSServices setMetalRendererEnabled:YES] is called multiple times? E.g. if a consumer is unmounting screens when navigating. It's most likely fine, but I would like to be sure :)

Hi simon, I didn't test the setting the renderer multiple times, because we don't have that scenario in our app.
Having said that, if you suggest another place for that call, I can move it.
Maybe we can leave this config up to the user, that is call [GMSServices setMetalRendererEnabled:YES] in didFinishLaunchingWithOptions ? Haven't tried it :)

I'm fine keeping it where it is - the less user setup required, the better.
I will do some tests myself and then we should be good to merge this.


Test Failure: should fail when creating a task with owner address using signature

Expected Behavior

The API should reject task creation when using an owner address instead of a smart wallet address
Should throw an "invalid address" error

Current Behavior

Instead, the API successfully creates a task and returns an ID ({"id": "10017"})

Test Details
test("should fail when create a wallet with owner address", async () => {
  await expect(client.createTask({
    address: ownerAddress,
    tokenContract: TOKEN_CONTRACT,
    oracleContract: ORACLE_CONTRACT,
  })).rejects.toThrow(
    "invalid address"
  );
});

Test Trace
 FAIL  tests/createTask.test.ts
  listTasks Tests
    ○ skipped should throw error when creating a task without authentication
    Auth with Signature
      ✕ should fail when creating a task with owner address using signature (448 ms)
      ○ skipped should create a task when authenticated with signature
    Auth with API key
      ○ skipped should create a task when authenticated with API key
      ○ skipped should fail when creating a task with owner address using API key

  ● listTasks Tests › Auth with Signature › should fail when creating a task with owner address using signature

    expect(received).rejects.toThrow()

    Received promise resolved instead of rejected
    Resolved to value: {"id": "21014"}

      64 |
      65 |     test("should fail when creating a task with owner address using signature", async () => {
    > 66 |       await expect(
         |                   ^
      67 |         client.createTask({
      68 |           address: ownerAddress,
      69 |           tokenContract: TOKEN_CONTRACT,

      at expect (node_modules/expect/build/index.js:113:15)
      at Object.<anonymous> (tests/createTask.test.ts:66:19)

Test Suites: 1 failed, 1 total
Tests:       1 failed, 4 skipped, 5 total
Snapshots:   0 total
Time:        1.537 s, estimated 3 s

Reproduction Steps

Run npx jest tests/createTask.test.ts -t "should fail when creating a task with owner address using signature"
Observe that creating a task with owner address succeeds instead of failing

Additional Context

This might indicate that the API's address validation is not properly checking whether the provided address is a smart wallet
The test name suggests we want to enforce using smart wallet addresses only

Fixed in https://github.com/AvaProtocol/ava-sdk-js/pull/30


fix: fixes icon color / placeholder issues on artworkscreenheader

This PR resolves []
Description
Adjusted placeholder to match new save button, and changing also color to the bell icon according to the background
Screenshots

Screenshots

PR Checklist

[x] I have tested my changes on iOS and Android.
[x] I hid my changes behind a feature flag, or they don't need one.
[x] I have included screenshots or videos, or I have not changed the UI.
[x] I have added tests, or my changes don't require any.
[x] I added an app state migration, or my changes do not require one.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added a changelog entry below, or my changes do not require one.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

fixes icon color / placeholder issues on artworkscreenheader - gkartalis

iOS user-facing changes

Android user-facing changes

Dev changes

Need help with something? Have a look at our docs, or get in touch with us.

@lordkiz that's the next that we should 🍒 pick 🤝

not sure why the changes from here were overwritten but 🤷♂


Error reopening a blockcache

I am having a little bit of a problem reopening a url that has a block cache in the middle.
Here is the exception I am getting:
It looks like a simple change from "add" to "append" fixes the problem, but I am not sure if it creates issues in other places.
The code that generate the exception is here. To reproduce, run the notebook once, terminate the kernel, and start it back again. The exception will show up the second time.
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/ipywidgets/widgets/interaction.py in update(self, *args)
    254                     value = widget.get_interact_value()
    255                     self.kwargs[widget._kwarg] = value
--> 256                 self.result = self.f(**self.kwargs)
    257                 show_inline_matplotlib_plots()
    258                 if self.auto_display and self.result is not None:

<ipython-input-3-6a5c22e1a584> in show(dataset, id)
     13 @interact(dataset=dataset_widget, id=partition_widget)
     14 def show(dataset, id):
---> 15     img = dataset.read_partition((id,))[0]
     16     io.imshow(img)

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/intake_xarray/base.py in read_partition(self, i)
     49         """
     50         import numpy as np
---> 51         self._load_metadata()
     52         if not isinstance(i, (tuple, list)):
     53             raise TypeError('For Xarray sources, must specify partition as '

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/intake/source/base.py in _load_metadata(self)
    124         """load metadata only if needed"""
    125         if self._schema is None:
--> 126             self._schema = self._get_schema()
    127             self.datashape = self._schema.datashape
    128             self.dtype = self._schema.dtype

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/intake_xarray/image.py in _get_schema(self)
    352
    353         if self._ds is None:
--> 354             self._open_dataset()
    355
    356             # convert to dataset for serialization

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/intake_xarray/image.py in _open_dataset(self)
    335         from dask.bytes import open_files
    336
--> 337         files = open_files(self.urlpath, **self.storage_options)
    338         if len(files) == 0:
    339             raise Exception("No files found at {}".format(self.urlpath))

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/fsspec/core.py in open_files(urlpath, mode, compression, encoding, errors, name_function, num, protocol, newline, auto_mkdir, expand, **kwargs)
    223     List of ``OpenFile`` objects.
    224     """
--> 225     fs, fs_token, paths = get_fs_token_paths(
    226         urlpath,
    227         mode,

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/fsspec/core.py in get_fs_token_paths(urlpath, mode, num, name_function, storage_options, protocol, expand)
    539         path = cls._strip_protocol(urlpath)
    540         update_storage_options(options, storage_options)
--> 541         fs = cls(**options)
    542
    543         if "w" in mode and expand:

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/fsspec/spec.py in __call__(cls, *args, **kwargs)
     52             return cls._cache[token]
     53         else:
---> 54             obj = super().__call__(*args, **kwargs)
     55             # Setting _fs_token here causes some static linters to complain.
     56             obj._fs_token_ = token

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/fsspec/implementations/zip.py in __init__(self, fo, mode, target_protocol, target_options, block_size, **kwargs)
     53             fo = files[0]
     54         self.fo = fo.__enter__()  # the whole instance is a context
---> 55         self.zip = zipfile.ZipFile(self.fo)
     56         self.block_size = block_size
     57         self.dir_cache = None

~/.conda/envs/intake-coco2017/lib/python3.8/zipfile.py in __init__(self, file, mode, compression, allowZip64, compresslevel, strict_timestamps)
   1266         try:
   1267             if mode == 'r':
-> 1268                 self._RealGetContents()
   1269             elif mode in ('w', 'x'):
   1270                 # set the modified flag so central directory gets written

~/.conda/envs/intake-coco2017/lib/python3.8/zipfile.py in _RealGetContents(self)
   1329         fp = self.fp
   1330         try:
-> 1331             endrec = _EndRecData(fp)
   1332         except OSError:
   1333             raise BadZipFile("File is not a zip file")

~/.conda/envs/intake-coco2017/lib/python3.8/zipfile.py in _EndRecData(fpin)
    271     except OSError:
    272         return None
--> 273     data = fpin.read()
    274     if (len(data) == sizeEndCentDir and
    275         data[0:4] == stringEndArchive and

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/fsspec/spec.py in read(self, length)
   1237             # don't even bother calling fetch
   1238             return b""
-> 1239         out = self.cache._fetch(self.loc, self.loc + length)
   1240         self.loc += len(out)
   1241         return out

~/.conda/envs/intake-coco2017/lib/python3.8/site-packages/fsspec/caching.py in _fetch(self, start, end)
     93             send = min(sstart + self.blocksize, self.size)
     94             self.cache[sstart:send] = self.fetcher(sstart, send)
---> 95             self.blocks.add(i)
     96
     97         return self.cache[start:end]

AttributeError: 'list' object has no attribute 'add'

Thanks for finding and investigate these issues. Again, a test-case and your proposed fix would make a good PR. I expect this came around from wanting to serialise the blocks to disc. I am ambivalent as to whether a set or a list makes the most sense.

Seems to pass?
        # Reopen the same cache and read some more...
        fs = fsspec.filesystem("blockcache", **fs_kwargs)
        with fs.open("/out", block_size=5) as f:
            assert f.read(5) == b"test\n"
            f.seek(30)
            with pytest.raises(AttributeError):
>               assert f.read(5) == b"test\n"
E               Failed: DID NOT RAISE <class 'AttributeError'>

(or, I don't know why this should fail)

Seems to pass?
        # Reopen the same cache and read some more...
        fs = fsspec.filesystem("blockcache", **fs_kwargs)
        with fs.open("/out", block_size=5) as f:
            assert f.read(5) == b"test\n"
            f.seek(30)
            with pytest.raises(AttributeError):
>               assert f.read(5) == b"test\n"
E               Failed: DID NOT RAISE <class 'AttributeError'>

(or, I don't know why this should fail)

Here is what is strange: If I use a debugger to step through the code then the test passes, i.e. we get the AttributeError which is consistent with the bug I reported. When I run the tests using straight out tox, then I can't replicate the bug just like in the CI run above.
I am not super familiar with all the moving pieces here, is there anything on the background or threads that download the rest of the file?

is there anything on the background or threads that download the rest of the file?

No, this is running sync. Perhaps the slower travis machines aren't flushing data to disc?


feffrunner

Here is my xafs plugin for running feff externally.  It works to my satisfaction both in the unit tests for feff85exafs and in the tests on the effect of SCF on the EXAFS fitting.
I have also added documentation to this PR.
As you suggested, I changed the name to "feffrunner" and did the right thing with _larch.  I did not quite follow your suggestion for how to specify the executable, although I made it possible to specify an executable in the _xafs._feff_executable symbol (although I think I found a bug related to that, which I will submit as an issue shortly) by doing
a=feffrunner('path/to/feff.inp')
a.run(None)

as opposed to this:
a=feffrunner('path/to/feff.inp')
a.run()

which defaults to trying to run the feff85exafs executables in sequence, which is my current preference for the default behavior.

Thanks!!


Predictable artifact order

On my system the integration test fails (at commit ea21cfe), because the order of the artifacts in the generated lockfile changes slightly. This pull request makes the order of the artifacts more predictable by ordering artifacts alphabetically. The pull request also includes some clean up commits.

@fzakaria Thanks for the review. I have added a comment and a unit test that shows that the artifacts are ordered alphabetically. The integration test Maven2nixIT also shows that the artifacts now appear in alphabetic order (see the modifications of the test's expected lockfile).

FYI I fixed the Github-Actions on my fork (see https://github.com/jvierling/mvn2nix) by removing the cachix/cachix-action, updating the version of the cachix/install-nix-action, and removing the install_url from the flake jobs.

Do you want to include the updated github action as part of the PR?
or you can make it a separate PR.

I'll include the update to the Github Actions as part of the PR. However, I am not sure if removing cachix/cachix-action is an option for you (I removed it on my fork because I do not have a cachix cache).

Thank you for the great PR.


white screen bug appears. Hope to fix.

Select the screen saver option and click ok. Click the screen saver option again, a white screen bug appears. Hope to fix.

I think this is a macOS bug with Swift screensavers. If you restart System Preferences, it goes away, right?

我认为这是Swift屏幕保护程序的macOS错误。如果重新启动系统偏好设置，它会消失，对吗？

I have submitted code to fix a white screen bug. I tested it and it was fixed!

@ChinaHackers I left a suggestion on your PR. Once you accept it, I can merge your PR and close this issue.

@ChinaHackers I left a suggestion on your PR. Once you accept it, I can merge your PR and close this issue.

Great!


Maplayers widget: downgraded core to 3.7.2

Currently block on this error when running test-viewer:
caught Error: Multiple @itwin/core-frontend imports detected!

You need to inject your widget package in test-viewer. Otherwise your package will be symlinked with it's devDependencies and they will clash with test-viewer dependencies.
Injecting package breaks webpack hot reloading but there is a script to work around that https://github.com/iTwin/viewer-components-react/blob/master/apps/test-viewer/README.md#running-app-with-workspace-packages-hot-reloading

You need to inject your widget package in test-viewer. Otherwise your package will be symlinked with it's devDependencies and they will clash with test-viewer dependencies.
Injecting package breaks webpack hot reloading but there is a script to work around that https://github.com/iTwin/viewer-components-react/blob/master/apps/test-viewer/README.md#running-app-with-workspace-packages-hot-reloading

@saskliutas I injected map-layers in the test-viewer. that solved the previous multiple imports error, however the hot reload doesnt seem to work, even after updating linkWorkspaceDeps.js

Build your branch and launched test-viewer with npm run start:dev

Thanks works as expected now! I was using  npm run start instead of  npm run start:dev


Detailed segment efforts have id field with the last few digits zeroed, for efforts which are recent / have very long id fields

When retrieving detailed segment efforts, for recent efforts with very long id fields, the last few digits of the id field are zeroes.
This seems to be reliably reproducible---will aim to provide a test case.
Not sure if it is strava or node-strava-v3 doing this.

Test case:
       const efforts = await strava.segments.listEfforts({id: "30903832",per_page: 100});         console.log("Nr efforts found >= ",efforts.length);         for (e of efforts) {            try {             console.log("Effort id "+e.id);             const e2 = await strava.segmentEfforts.get({id: e.id});             console.log(e2);           } catch (err) {             console.log("main: Error:", typeof(err), err.message);           }         }

Please test some direct API calls to confirm if this what the Strava API is returning or something we are doing wrong.

I have added test code in the comments which demonstrates this.
On Thu, 17 Feb. 2022, 03:12 Mark Stosberg, @.***> wrote:

Please test some direct API calls to confirm if this what the Strava API
is returning or something we are doing wrong.
—
Reply to this email directly, view it on GitHub
https://github.com/node-strava/node-strava-v3/issues/125#issuecomment-1041831265,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFSEU6O36ZQXJRJZMG7K2FLU3PEGRANCNFSM5OROM5PQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

Sorry, misread your comment. Not sure yet how to distinguish what API does
vs node-strava yet. Will get back to you.
On Thu, 17 Feb. 2022, 07:03 Ian Peake, @.***> wrote:

I have added test code in the comments which demonstrates this.
On Thu, 17 Feb. 2022, 03:12 Mark Stosberg, @.***>
wrote:

Please test some direct API calls to confirm if this what the Strava API
is returning or something we are doing wrong.
—
Reply to this email directly, view it on GitHub
https://github.com/node-strava/node-strava-v3/issues/125#issuecomment-1041831265,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFSEU6O36ZQXJRJZMG7K2FLU3PEGRANCNFSM5OROM5PQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

Here's a test (using the above code) demonstrating that cURL is giving efforts with correct IDs, whereas strava-v3 isn't:
$ ./test_eff_id.js
Strava token init
Strava API check...
response: [object Object]
Nr efforts found >=  3
Effort id<PHONE_NUMBER>085175000
main: Error: object 404 - {"message":"Record Not Found","errors":[]}
Effort id<PHONE_NUMBER>928553000
main: Error: object 404 - {"message":"Record Not Found","errors":[]}
Effort id<PHONE_NUMBER>787802600
main: Error: object 404 - {"message":"Record Not Found","errors":[]}
$ curl -H "Authorization: Bearer d5f3aa919e06766ec9dbd5bb257261758409e524" 'https://www.strava.com/api/v3/segments/30903832/all_efforts?per_page=100'
[{"id":2927332094085174610,"resource_state":2,"name":"Lewis Park Reserve parkrun","activity":{"id":6668026999,"resource_state":1},"athlete":{"id":21463851,"resource_state":1},"elapsed_time":1592,"moving_time":1585,"start_date":"2022-02-11T21:01:38Z","start_date_local":"2022-02-12T08:01:38Z","distance":5074.4,"start_index":1,"end_index":372,"average_cadence":86.8,"device_watts":false,"average_heartrate":172.1,"max_heartrate":185.0,"segment":{"id":30903832,"resource_state":2,"name":"Lewis Park Reserve parkrun","activity_type":"Run","distance":5074.4,"average_grade":0.0,"maximum_grade":5.1,"elevation_high":88.4,"elevation_low":77.0,"start_latlng":[-37.867567,145.248895],"end_latlng":[-37.866796,145.249216],"elevation_profile":null,"start_latitude":-37.867567,"start_longitude":145.248895,"end_latitude":-37.866796,"end_longitude":145.249216,"climb_category":0,"city":"Wantirna South","state":"Victoria","country":"Australia","private":false,"hazardous":false,"starred":true},"pr_rank":1,"achievements":[{"type_id":3,"type":"pr","rank":1}],"kom_rank":null},{"id":2922283800928553202,"resource_state":2,"name":"Lewis Park Reserve parkrun","activity":{"id":6560086394,"resource_state":1},"athlete":{"id":21463851,"resource_state":1},"elapsed_time":1603,"moving_time":1602,"start_date":"2022-01-21T20:59:12Z","start_date_local":"2022-01-22T07:59:12Z","distance":5074.4,"start_index":0,"end_index":370,"average_cadence":88.0,"device_watts":false,"average_heartrate":176.2,"max_heartrate":186.0,"segment":{"id":30903832,"resource_state":2,"name":"Lewis Park Reserve parkrun","activity_type":"Run","distance":5074.4,"average_grade":0.0,"maximum_grade":5.1,"elevation_high":88.4,"elevation_low":77.0,"start_latlng":[-37.867567,145.248895],"end_latlng":[-37.866796,145.249216],"elevation_profile":null,"start_latitude":-37.867567,"start_longitude":145.248895,"end_latitude":-37.866796,"end_longitude":145.249216,"climb_category":0,"city":"Wantirna South","state":"Victoria","country":"Australia","private":false,"hazardous":false,"starred":true},"pr_rank":null,"achievements":[],"kom_rank":null},{"id":2924806434787802582,"resource_state":2,"name":"Lewis Park Reserve parkrun","activity":{"id":6631650714,"resource_state":1},"athlete":{"id":21463851,"resource_state":1},"elapsed_time":1648,"moving_time":1648,"start_date":"2022-02-04T20:59:57Z","start_date_local":"2022-02-05T07:59:57Z","distance":5074.4,"start_index":2,"end_index":383,"average_cadence":85.2,"device_watts":false,"average_heartrate":168.6,"max_heartrate":184.0,"segment":{"id":30903832,"resource_state":2,"name":"Lewis Park Reserve parkrun","activity_type":"Run","distance":5074.4,"average_grade":0.0,"maximum_grade":5.1,"elevation_high":88.4,"elevation_low":77.0,"start_latlng":[-37.867567,145.248895],"end_latlng":[-37.866796,145.249216],"elevation_profile":null,"start_latitude":-37.867567,"start_longitude":145.248895,"end_latitude":-37.866796,"end_longitude":145.249216,"climb_category":0,"city":"Wantirna South","state":"Victoria","country":"Australia","private":false,"hazardous":false,"starred":true},"pr_rank":2,"achievements":[{"type_id":3,"type":"pr","rank":2}],"kom_rank":null}]

Is there a simple way to trace the response being received via strava-v3? Setting NODE_DEBUG='request' seems to trace only the request part and not the response.

The culprit appears to be the JSON parser built into request-promise / request?
If I disable json:true in the request header I get
response... [{"id":2927332094085174610,"resource_state":2,"name":"Lewis Park Reserv
e parkrun","activity":{"id":6668026999,"resource_state":1},"athlete":{"id":21463851
,"resource_state":1},"elapsed_time":1592,"moving_time":1585,"start_date":"2022-02-1
1T21:01:38Z","start_date_local":"2022-02-12T08:01:38Z","distance":5074.4,"start_ind
ex":1,"end_index":372,"average_cadence":86.8,"device_watts":false,"average_heartrat
e":172.1,"max_heartrate":185.0,"segment":{"id":30903832,"resource_state":2,"name":"
Lewis Park Reserve parkrun","activity_type":"Run","distance":5074.4,"average_grade"
:0.0,"maximum_grade":5.1,"elevation_high":88.4,"elevation_low":77.0,"start_latlng":
[-37.867567,145.248895],"end_latlng":[-37.866796,145.249216],"elevation_profile":nu
ll,"start_latitude":-37.867567,"start_longitude":145.248895,"end_latitude":-37.8667
96,"end_longitude":145.249216,"climb_category":0,"city":"Wantirna South","state":"V
ictoria","country":"Australia","private":false,"hazardous":false,"starred":true},"p
r_rank":1,"achievements":[{"type_id":3,"type":"pr","rank":1}],"kom_rank":null},{"id
":2922283800928553202,"resource_state":2,"name":"Lewis Park Reserve parkrun","activ
ity":{"id":6560086394,"resource_state":1},"athlete":{"id":21463851,"resource_state"
:1},"elapsed_time":1603,"moving_time":1602,"start_date":"2022-01-21T20:59:12Z","sta
rt_date_local":"2022-01-22T07:59:12Z","distance":5074.4,"start_index":0,"end_index"
:370,"average_cadence":88.0,"device_watts":false,"average_heartrate":176.2,"max_hea
rtrate":186.0,"segment":{"id":30903832,"resource_state":2,"name":"Lewis Park Reserv
e parkrun","activity_type":"Run","distance":5074.4,"average_grade":0.0,"maximum_gra
de":5.1,"elevation_high":88.4,"elevation_low":77.0,"start_latlng":[-37.867567,145.2
48895],"end_latlng":[-37.866796,145.249216],"elevation_profile":null,"start_latitud
e":-37.867567,"start_longitude":145.248895,"end_latitude":-37.866796,"end_longitude
":145.249216,"climb_category":0,"city":"Wantirna South","state":"Victoria","country

Could you test with node-fetch?  request and request-promise are deprecated and due to be replaced in our code base anyway. Something like this:
//  Requires Node 16 and a file extension of ".mjs"
import fetch from 'node-fetch';
const response = await fetch('https://www.strava.com/api/v3/segments/30903832/all_efforts?per_page=100', {
	method: 'get',
	headers: {
    "Authorization": "Bearer YOUR_TOKEN_HERE",
    'Content-Type': 'application/json'
  }
});
const data = await response.json();
console.log(data);

I this can be considered a bug on Strava's side. They are returning numbers that exceed JavaScript's MAX_SAFE_INTEGER value of "9007199254740991". A recommended fix for the Strava JSON to represent these as strings, not numbers. Clients can safely handle these values as strings. I'll reach out to Strava.
2922283800928553000  <- What node-strava-v3 returns for a segment effort ID
2922283800928553202  <- What a direct API call with Curl returns for the same
9007199254740991        <- For reference, the max Int size in Javascript

I posted in the public forum here: https://groups.google.com/g/strava-api/c/dgY870wgTIo

Thanks @markstos !

Official response from Strava:

The team is aware of this issue and has a ticket in the backlog for handling. While we can't speak to an expected resolution date, we'll be sure to update the forums once it's been made.

They don't say explicitly that they are going to encode these values as strings, but by saying they are going to handle it on their side, it's the logical and most likely option.
So we have a choice now to try to apply our own "forward-compatible" fix until Strava address this upstream.
The JSON we receive from Strava is just a string, a text document. We parse that text and rewrite it to quote the IDs as strings ourselves and THEN run it through a JSON parser. Because this problem affects the entire JavaScript ecosystem, I expect there is likely already example code and an NPM package to help with this.
I'm unlikely to work on this, so feel free to pick up this up if you are interested.

Great, thanks for the update.
On Wed, 23 Feb. 2022, 08:48 Mark Stosberg, @.***> wrote:

Official response from Strava:
The team is aware of this issue and has a ticket in the backlog for
handling. While we can't speak to an expected resolution date, we'll be
sure to update the forums once it's been made.
They don't say explicitly that they are going to encode these values as
strings, but by saying they are going to handle it on their side, it's the
logical and most likely option.
So we have a choice now to try to apply our own "forward-compatible" fix
until Strava address this upstream.
The JSON we receive from Strava is just a string, a text document. We
parse that text and rewrite it to quote the IDs as strings ourselves and
THEN run it through a JSON parser. Because this problem affects the entire
JavaScript ecosystem, I expect there is likely already example code and an
NPM package to help with this.
I'm unlikely to work on this, so feel free to pick up this up if you are
interested.
—
Reply to this email directly, view it on GitHub
https://github.com/node-strava/node-strava-v3/issues/125#issuecomment-1048244212,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFSEU6LWAOWOMBGHNX5RD7TU4QABDANCNFSM5OROM5PQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

Here's example code from the Ruby client for testing to see if truncation is happening:
https://github.com/dblock/strava-ruby-client/pull/51/files


Add page title to html title tag

The page title which has been implemented for the the breadcrumb will be used for the html title tag. Adding an html page title has several advantages:

the page can be uniquely addressed in the browser (browser history, bookmarks, tabs, etc)
the page title will increase ranking the page in search engines
the page title will identify content in search engines

The page title will be updated dynamically, but can be delivered statically using SSR.
The page title tag will use by default the the page title used in the breadcrumb, but customer must be able to provide a custom implementation. A future version of the page title could come up with some common additional features:

configurable prefix (i.e. "prefix homepage" vs "custom prefix homepage" )
configurable delimiter  (i.e. "prefix | homepage" vs  "prefix – homepage" )

QA steps:

navigate through storefront
verify that the page / tab title in the browser reflects the page
optionally: install a plugin (i.e. https://www.omiod.com/meta-inspector.php) and validate that the title is present on initial page and when navigating to other pages)

Heavy QA (we can skip for now):

render on SSR
validate the page title is in the html title tag

verified, very cool


Feature: add warehouse grammar and GUC variable

Change logs
Since we are going to support storage/compute/catalog separation, we
need to add a warehouse logic to the system. Then we can use the
warehouse clause to specify the warehouse for a SQL query. A warehouse
is a group of segments, and we can create/alter/delete a warehouse.
This commit does the following things:

add the grammar for the warehouse clause.
add the GUC variable for the current warehouse.
add some fileter conditions for gp_segment_configuration table, since we
need to filter out the segments that are not in the current warehouse.

Why are the changes needed?
Describe why the changes are necessary.
Does this PR introduce any user-facing change?
If yes, please clarify the previous behavior and the change this PR proposes.
How was this patch tested?
Please detail how the changes were tested, including manual tests and any relevant unit or integration tests.
Contributor's Checklist
Here are some reminders and checklists before/when submitting your pull request, please check them:

[ ] Make sure your Pull Request has a clear title and commit message. You can take git-commit template as a reference.
[ ] Sign the Contributor License Agreement as prompted for your first-time contribution.
[ ] List your communication in the GitHub Issues or Discussions (if has or needed).
[ ] Document changes.
[ ] Add tests for the change
[ ] Pass make installcheck
[ ] Pass make -C src/test installcheck-cbdb-parallel
[ ] Feel free to @cloudberrydb/dev team for review and approval when your PR is ready🥳

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.roseduan seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Add "quote" function

there are a lot of changes between python2 and python3 and six covers them extensively


Getting that the Namespace Http is missing, when I use the Emlish Package

" ./.fable/Fable.SignalR.0.4.0/HubConnection.fs   (306,50) error FSHARP: The namespace or module 'Http' is not defined. Maybe you want one of the following: "
So maybe some package is missing?
paket dependencies forthe client:
group Client
FSharp.Core
Fable.Core
Fable.Elmish.Debugger
Fable.Elmish.React
Fable.Elmish.HMR
Thoth.Fetch
Fulma
Fable.FontAwesome.Free
Fable.SignalR.Elmish

Ah, yes you need the base Fable.SignalR package. Fable.SignalR.Elmish is an extension library.

Hi. Sorry same issue.

group Client
FSharp.Core
Fable.Core
Fable.Elmish.Debugger
Fable.Elmish.React
Fable.Elmish.HMR
Thoth.Fetch
Fulma
Fable.FontAwesome.Free
Fable.SignalR
Fable.SignalR.Elmish

Sorry, now it works. Seems I used an "too" old version of the fable compiler. Also removed Fulma and Thoth. Sorry for the inconvenient. Thank you for you awesome work.

No worries, glad you found the fix!


Support for Eclipse

There is a need to test this template on eclipse.

There is no activity available


Add a hasPayload method to Method

Discussed here, https://github.com/disneystreaming/smithy4s/pull/522, we think it's a good idea to know whether a Method is expected to have a payload or not. @armanbilge suggested to open a PR so here it is.

I've been staring at the RFC and actually I don't see anything about "required" payloads.
https://datatracker.ietf.org/doc/html/rfc7231#section-4.3
For POST and PUT it seems to say nothing.
For the "optional" methods it says this.
   A payload within a GET request message has no defined semantics;
   sending a payload body on a GET request might cause some existing
   implementations to reject the request.

And for TRACE it says this.
A client MUST NOT send a message body in a TRACE request.

Bodies (at least a Content-Length: 0 header) are required at the SHOULD level for some methods.

A user agent SHOULD send Content-Length in a request when the method defines a meaning for enclosed content and it is not sending Transfer-Encoding. For example, a user agent normally sends Content-Length in a POST request even when the value is 0 (indicating empty content). A user agent SHOULD NOT send a Content-Length header field when the request message does not contain content and the method semantics do not anticipate such data.

There are at least three states here: SHOULD, SHOULD NOT, and MUST NOT.

The more I read about this, the more I think this is not a good idea and that such a helper method will only lead to bugs in very specific scenario:

I have a server X and I can curl it with curl -XGET 'http://some-site.com/endpoint' -d 'my-data' and it works fine but I can't do it in http4s-ember. The body is never sent

I feel like the spec is so ambiguous and written after existing implementation were already in the wild that it's a per-use case scenario. Write your code, test it and if it works, move on. If it does not work, add a content-length header (if you did not have one), or use an explicit empty body stream and try again.


Compatibility with Intel compiler lost

Recent changes that mix C++ and C break compatibility with the Intel compiler.
$ make
/opt/intel/bin/icc -std=gnu99 -ggdb  -O2 -mavx  -march=native -Wall -Wextra -funroll-loops -o clmulunit src/clmulunit.c -Iinclude
/opt/intel/bin/icc -std=gnu99 -ggdb  -O2 -mavx  -march=native -Wall -Wextra -funroll-loops -c City/City.c -ICity
/opt/intel/bin/icc -std=gnu99 -ggdb  -O2 -mavx  -march=native -Wall -Wextra -funroll-loops -c SipHash/siphash24.c -ISipHash
/opt/intel/bin/icc -std=gnu99 -ggdb  -O2 -mavx  -march=native -Wall -Wextra -funroll-loops -c VHASH/rijndael-alg-fst.c -IVHASH
/opt/intel/bin/icc -std=gnu99 -ggdb  -O2 -mavx  -march=native -Wall -Wextra -funroll-loops -c VHASH/vmac.c -IVHASH
/opt/intel/bin/icpc -O2 -mavx  -march=native -std=c++0x -o variablelengthbenchmark src/variablelengthbenchmark.cc City.o siphash24.o vmac.o rijndael-alg-fst.o  -Iinclude -ICity -ISipHash -IVHASH
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.8/include/x86intrin.h(120),
                 from include/clmul.h(13),
                 from include/clmulhashfunctions32bits.h(9),
                 from src/variablelengthbenchmark.cc(74):
/usr/lib/gcc/x86_64-linux-gnu/4.8/include/adxintrin.h(42): error: more than one instance of overloaded function "_addcarryx_u64" has "C" linkage
  _addcarryx_u64 (unsigned char __CF, unsigned long __X,
  ^

compilation aborted for src/variablelengthbenchmark.cc (code 2)
make: *** [variablelengthbenchmark] Error 2

Fixed by some include hack.


Clarification: Can I able to change the * besides the field to 'Red' after the validation message shown

Clarification: Can I able to change the * besides the field to 'Red' after the validation message shown in UI

Please follow the template when you create an issue so we can respond more efficiently

Note: If your question is regarding the AWS Amplify Console service, please log it in the
official AWS Amplify Console forum

Which Category is your question related to?
Amplify CLI Version
You can use amplify -v to check the amplify cli version on your system
What AWS Services are you utilizing?
Provide additional details e.g. code snippets

I am using aws-amplify-react-native and using the UI from that package. I not used the customized UI.
import {
  Authenticator,
  AmplifyTheme,
  Greetings,
  SignIn,
  ConfirmSignIn,
  RequireNewPassword,
  SignUp,
  ConfirmSignUp,
  VerifyContact,
  ForgotPassword,
  AuthPiece,
} from "aws-amplify-react-native";


Abhor the Witch calculation on Dark Angels Ezekiel

It seems that the calculation of Abhor the Witch secondary working incorrectly on Dark Angels Ezekiel as it returning 2 points instead 3.

ABHOR THE WITCH
End Game Objective
The presence of enemy psykers in this theatre of war can no longer be tolerated - hunt them down.
You cannot select this secondary objective if your army includes any PSYKER units. Score 3 victory points at the end of the battle for each enemy PSYKER CHARACTER unit that is destroyed, and 2 victory points for every other enemy PSYKER unit that is destroyed.

Ezekiel
KEYWORDS: CHARACTER, INFANTRY, DEATHWING, INNER CIRCLE, PSYKER, LIBRARIAN, CHIEF LIBRARIAN, EZEKIEL

Can be closed. Seems to count it correctly on new DA lists.

Closed by https://github.com/BSData/wh40k/pull/11678


feat: Add the style attribute to the InlineBlocks component of the re…

…act-tinacms-inline package

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.longwanxiang seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

@Ryuurock  Sorry for the late reply, this code looks good to me I would love to see what @dwalkr thinks.
On a side note it looks like you are using the Inline Editing API's. We have made the decision to mark these API's as experimental for the time being. More detail can be found here. We are currently recommending using the sidebar with Tina Cloud as the "Happy path".
That being set feel free to use the  Inline API's with this in mind 😄. Thanks for your contribution.

Why do we need inline styles here?

@Ryuurock could you sign our Contributor License Agreement? We require all contributors to sign it. It's OK if you prefer not to, but in that case we can't merge this PR.

@dwalkr done

Why do we need inline styles here?

We have some styles that can be presented differently through configuration. In order not to deepen the div level, we directly use Container, but Container does not support style input

@dwalkr done

unfortunately, it looks like the commit in this PR isn't associated with your GitHub account. This is a limitation of CLAAssistant; you can fix it by adding the email associated with this commit to your GH account: https://help.github.com/articles/why-are-my-commits-linked-to-the-wrong-user/#commits-are-not-linked-to-any-user

@dwalkr done

unfortunately, it looks like the commit in this PR isn't associated with your GitHub account. This is a limitation of CLAAssistant; you can fix it by adding the email associated with this commit to your GH account: https://help.github.com/articles/why-are-my-commits-linked-to-the-wrong-user/#commits-are-not-linked-to-any-user

done 😊

@all-contributors add @Ryuurock for code


[Chore] Uniform formatting in package.json and update fs imports

#3933  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @jnsdls and the rest of your teammates on  Graphite


Join failing for more than 2 tuple types

Current behavior (how does the issue manifest):
If there are more than 2 tuple types for join
Expected behavior:
Should be able to join across more than 2 tuple typles
Minimal steps to reproduce the problem (not required if feature enhancement):
Create 3 tuple types with a condition checking a property across all 3. Finally create instances for the 1st 2nd. Ideally the condition should not get invoked, should wait for 3rd type to come in before condition invocation.

Joins across more than 2 tuple types should work now.


Adding tenant to table mapping API

Currently, it is not easy to get all the tables of a certain tenant. You have to start by getting the instances and manually finding the tables on those instances.
This API will look at CURRENTSTATES inside of zk for each instance.
It will not return anything if there are no segments on a certain table.

Can we not get this by looking at tableconfigs? Depending on current state will yield different results depending on state of each node and it’s also more expensive.


chore(main): release 1.6.4

:robot: I have created a release beep boop
1.6.4 (2024-07-17)
Dependencies

update dependencies (#61) (f41ec2d)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/aimeerivers/watchthis-user-service/releases/tag/v1.6.4 :sunflower:


Sticky mode doesn't work

When I was running the Robot grasping demo, even though I have chosen sticky mode, but the cube doesn't constrained even I have touched it.
How to use sticky mode properly?

Can you check if it works well if you switch to the action_primitives branch? We will be merging a few improvements to this system very soon for an upcoming release.

This feature is confirmed to work in the development version, so I'm closing the issue. Stay on the lookout for our next release!


bundle dump: fix whalebrew dump output

I have a few whalebrew packages installed
$ whalebrew list

COMMAND          IMAGE
figlet           whalebrew/figlet
graph-easy       nathanielvarona/graph-easy
octodns-compare  whalebrew/octodns-compare
whalesay         whalebrew/whalesay

However, if I use the Bundle Dump from Homebrew, the results look like:
whalebrew "whalebrew/figlet"
whalebrew "graph-nathanielvarona/graph-easy"
whalebrew "octodns-whalebrew/octodns-compare"
whalebrew "whalebrew/whalesay"

The expected output supposedly:
whalebrew "whalebrew/figlet"
whalebrew "nathanielvarona/graph-easy"
whalebrew "whalebrew/octodns-compare"
whalebrew "whalebrew/whalesay"

I created the PR to fix this issue of dumping the packages list from Whalebrew.
With the fixes, running the brew bundle dump --no-lock --describe --force --file ./whalebrew.Brewfile --whalebrew again and I get the expected output.
Here is the whalebrew dump output difference now:
diff --git a/whalebrew.Brewfile.with-error b/whalebrew.Brewfile
index e5a1878..bd0c6c3 100644
--- a/whalebrew.Brewfile.with-error
+++ b/whalebrew.Brewfile
@@ -1,4 +1,4 @@
 whalebrew "whalebrew/figlet"
-whalebrew "graph-nathanielvarona/graph-easy"
-whalebrew "octodns-whalebrew/octodns-compare"
+whalebrew "nathanielvarona/graph-easy"
+whalebrew "whalebrew/octodns-compare"
 whalebrew "whalebrew/whalesay"

Thanks so much for your first contribution!  You rock, @nathanielvarona!


Material design issue: BottomNavigationBar + FloatingActionButton + Snackbar

Steps to Reproduce
Implement a bottomNavigationBar with a floatingActionButton (eg. position centerDocked) in your application.
return MaterialApp(
  title: 'Test app',
  home: Scaffold(
    body: Home(),
    floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,
    floatingActionButton: FloatingActionButton(
      child: Text('Test'),
      onPressed: () {},
    ),
    bottomNavigationBar: BottomNavigationBar(
      currentIndex: 0,
      items: [
        BottomNavigationBarItem(
          icon: new Icon(Icons.home),
          title: new Text('Home'),
        ),
        BottomNavigationBarItem(
          icon: new Icon(Icons.mail),
          title: new Text('Messages'),
        ),
        BottomNavigationBarItem(
            icon: Icon(Icons.person),
            title: Text('Profile')),
      ],
    ),
  ),
);

According to the material design (section > snackbars), the snackbar should be displayed above the button and navigation.
The behaviour in Flutter is a bit different: the action button will be pushed away.
So the order with the displayed snackbar is the following:

bottomNavigation
snackbar
actionButton (pushed away).

Without snackbar:

With snackbar:

Should look something like that:

@YAPPDEF Maybe this helps: #21484

I think this is solved right now by setting SnackBar's behavior parameter to SnackBarBehavior.floating.

@Zazo032 No unf. not. Following this and the changes here https://github.com/flutter/flutter/pull/21484 , the Snackbar now dodges the bottom bar and fab buttons.

Snackbars are placed in the most suitable area of the UI.

Also if the behavior is set to floating. If the behavior is set to fixed the fab button will move above the snackbar. Both behaviors dodges the bottom bar.
I can understand the behavior, but there must be an option to just overlay all without respecting the bottom bar or fab buttons.

This issue still

Code Sample
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Container(),
      floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,
      floatingActionButton: FABbutton(),
      bottomNavigationBar: BottomNavigationBar(
        currentIndex: 0,
        items: [
          BottomNavigationBarItem(
            icon: new Icon(Icons.home),
            title: new Text('Home'),
          ),
          BottomNavigationBarItem(
            icon: new Icon(Icons.mail),
            title: new Text('Messages'),
          ),
          BottomNavigationBarItem(
              icon: Icon(Icons.person), title: Text('Profile')),
        ],
      ),
    );
  }
}

class FABbutton extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return FloatingActionButton(
      child: Text('Test'),
      onPressed: () {
        final snackBar = SnackBar(content: Text('Yay! A SnackBar!'));

// Find the Scaffold in the widget tree and use it to show a SnackBar.
        Scaffold.of(context).showSnackBar(snackBar);
      },
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel dev, v1.18.0-dev.5.0, on Mac OS X 10.15.4 19E287, locale
    en-GB)
    • Flutter version 1.18.0-dev.5.0 at /Users/taha/Code/flutter_dev
    • Framework revision 7f56b53de4 (9 days ago), 2020-04-12 12:00:01 -0400
    • Engine revision beb8a7ec48
    • Dart version 2.8.0 (build 2.8.0-dev.20.0 89b0f67261)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/taha/Code/sdk
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = /Users/taha/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 11.4.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.4.1, Build version 11E503a
    • CocoaPods version 1.9.1
[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
[✓] VS Code (version 1.44.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.9.1
[✓] Connected device (4 available)
    • SM M305F   • 32003c30dc19668f • android-arm64  • Android 10 (API 29)
    • macOS      • macOS            • darwin-x64     • Mac OS X 10.15.4 19E287
    • Chrome     • chrome           • web-javascript • Google Chrome
      81.0.4044.113
    • Web Server • web-server       • web-javascript • Flutter Tools
• No issues found!


File globbing bug with rake task

It seems like whenever I use file globs with the rake task, I always get a No such file or directory @ rb_sysopen - <glob> error, even though the linter succeeds if I run scss-lint <glob> or run the Rake task with the raw filenames (without globs). My current workaround is to use Dir.glob '<glob>' instead of ['<glob>'], but this seems like unintended behavior.
Here's a minimal example that fails on my machine. I included the full Gemfile and Gemfile.lock for reproduction.

Hey @nicolasmccurdy,
The reason you are seeing a discrepancy between running scss-lint <glob> and specifying that same glob in the files option of the Rake task is that your shell is expanding the glob pattern in the former, whereas SCSS-Lint assumes you are specifying a literal file name in the latter (since * is technically an allowed character in file names).
Thus the workaround you've specified is actually the correct way to use a glob pattern to match files using the files option of the Rake task.
Hope this helps!

Thanks for the response! I did realize that in the case os scss-lint <glob> the glob pattern is being handled by my shell, but I was confused because the readme seems to imply that SCSSLint::RakeTask supports globs itself:

Rake Integration

...
require 'scss_lint/rake_task'
SCSSLint::RakeTask.new do |t|
  t.config = 'custom/config.yml'
  t.args = ['--format', 'JSON', '--out', 'results.txt']
  t.files = ['app/assets', 'custom/*.scss']
end

...
# Single quotes prevent shell glob expansion
rake 'scss_lint[app/assets, custom/*.scss]'

While the workaround we suggested does work fine for me, can we please either update the documentation to mention that globs aren't supported or implement glob support internally to make the documentation more accurate?

Thanks for noticing this issue with the documentation, @nicolasmccurdy.
I've updated it in 77552c4. Thanks again for the report!

👍 Thanks!


Themes are broken with Yaml change?

I believe that this change has broken Sami: https://github.com/symfony/Yaml/commit/b50000adac00cfc18fcc86b576211a3a01caa550
This change was a breaking change in the Yaml component that disabled the ability to parse from a filename, but rather expects the contents of the Yaml file. Sami is relying on the form that allowed paths to files here: https://github.com/FriendsOfPHP/Sami/blob/master/Sami/Renderer/ThemeSet.php#L40
When running Same right now with a custom theme, you get this error:
 [InvalidArgumentException]
  Theme manifest in "/Users/dowling/projects/sdk3/build/artifacts/docs/theme/manifest.yml" must have a "name" entry.

This is because the method is being provided an SplFile object that when cast to a string provides the path to the file on disk. Yaml::parse then tries to parse the filename and fails.
Note: this is encountered when using the phar or when using a freshly built phar

But do we rely on master branch of Yaml component to be affected? If that's a BC break, shouldn't Composer get us correct version without BC break?

I don't understand how this is possible as the code has been removed in the master branch (which is the 3.0 version)
@mtdowling Can you paste the composer show -i output to see which deps you have for Sami?

Ok, so I must have called composer update instead of install. By using the master branch of Sami and building the phar manually, I'm not getting the error I reported. However, the phar linked from the readme has the issue I've reported: http://get.sensiolabs.org/sami.phar. Maybe it needs to be regenerated.

Nevermind. I take that back. It's actually broken in the master branch. I just git cloned, did a composer install and ran the sami.php script, pointing at my custom theme.
php sami.php update ~/projects/sdk3/build/docs.php

 [InvalidArgumentException]
  Theme manifest in "/Users/dowling/projects/sdk3/build/artifacts/docs/theme/manifest.yml" must have a "name" entry.

However, the theme manifest certainly has a name property in the yaml.
$ composer.phar show -i
michelf/php-markdown              1.4.1   PHP Markdown
nikic/php-parser                  v1.1.0  A PHP parser written in PHP
phpdocumentor/reflection-docblock 2.0.4
pimple/pimple                     v3.0.0  Pimple is a simple Dependency Injection Container for PHP 5.3
symfony/console                   v2.6.4  Symfony Console Component
symfony/filesystem                v2.6.4  Symfony Filesystem Component
symfony/finder                    v2.6.4  Symfony Finder Component
symfony/process                   v2.6.4  Symfony Process Component
symfony/yaml                      v2.6.4  Symfony Yaml Component
twig/twig                         v1.18.0 Twig, the flexible, fast, and secure template language for PHP

I'll send a PR to address this.

The latest deployed phar is broken as well:
 [ErrorException]
  Notice: Undefined property: PhpParser\Node\Stmt\Trait_::$type in phar:///Users/dowling/projects/sdk3/build/artifacts/sami.phar/Sami/Parser/NodeVisitor.php line 114

Building a phar manually using the master branch without doing a composer update works as expected. These dependencies work:
$ composer.phar show -i
michelf/php-markdown              1.4.1   PHP Markdown
nikic/php-parser                  v1.1.0  A PHP parser written in PHP
phpdocumentor/reflection-docblock 2.0.4
pimple/pimple                     v3.0.0  Pimple is a simple Dependency Injection Container for PHP 5.3
symfony/console                   v2.6.4  Symfony Console Component
symfony/filesystem                v2.6.4  Symfony Filesystem Component
symfony/finder                    v2.6.4  Symfony Finder Component
symfony/process                   v2.6.4  Symfony Process Component
symfony/yaml                      v2.6.4  Symfony Yaml Component
twig/twig                         v1.18.0 Twig, the flexible, fast, and secure template language for PHP

I'm guessing that one of the dependency bumps (probably phpparser) is causing this error.

https://github.com/FriendsOfPHP/Sami/issues/159


Update sql-database-disaster-recovery.md

reviewed and updated last modified date

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

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

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

TTYL, AZPRBOT;


perf(txindex): search optimization

This PR addresses several optimization points for TxIndex.Search:

Remove expensive map access from sorting function
Replace sort.Slice to sort.Sort with sorter approach
Reduce heap allocations from extractEventSeqFromKey

benchstat result:
goos: darwin
goarch: amd64
pkg: github.com/cometbft/cometbft/state/txindex/kv
cpu: Intel(R) Core(TM) i9-10910 CPU @ 3.60GHz
                     │   old.txt    │              new.txt               │
                     │    sec/op    │   sec/op     vs base               │
TxSearchBigResult-20   3236.1m ± 7%   945.9m ± 9%  -70.77% (p=0.002 n=6)

                     │   old.txt    │               new.txt               │
                     │     B/op     │     B/op      vs base               │
TxSearchBigResult-20   426.1Mi ± 0%   311.6Mi ± 0%  -26.86% (p=0.002 n=6)

                     │   old.txt   │              new.txt               │
                     │  allocs/op  │  allocs/op   vs base               │
TxSearchBigResult-20   4.040M ± 0%   2.040M ± 0%  -49.51% (p=0.002 n=6)

PR checklist

[x] Tests written/updated
[x] Changelog entry added in .changelog (we use unclog to manage our changelog)
[x] Updated relevant documentation (docs/ or spec/) and code comments
[x] Title follows the Conventional Commits spec

Really exciting, thank you! Can we backport this?

Really helpful, thank you! Can we backport this?

According to our backporting policy, we will only backport bug fixes to v0.38 and v0.37. We can backport to the v0.37.x-experimental and/or v0.38.x-experimental branches if needed.


Tencent.WeChat: Fix publisher

@MeXunco
According to other manifests in this repo, this field is not used to identify who created the yaml.
Microsoft Reviewers: Open in CodeFlow

@MeXunco
According to other manifests in this repo, this field is not used to identify who created the yaml.
Microsoft Reviewers: Open in CodeFlow

See https://github.com/microsoft/winget-pkgs/pull/530#discussion_r428445262

I see, Thank you


created stand-alone scripts that reproduce the plots in the docs

When I first started not having working examples was quite difficult. It's obvious to me now how to get the same results as the ipython magics, but at the time I recall it was quite confusing
These should be useful for people who don't or can't use the notebooks.
I tried to show a few different ways to set the plot options, i.e. globally, or locally, using dictionary or strings.
I wasn't 100% sure when to put them, so ended up putting them in the notebooks/user_guide directory.
In the docs there is a link that says "Right click to download this notebook from GitHub."
I would also suggest adding "Right click to download this script from GitHub."

Thanks! These are clearly useful for GeoViews users, but I'd be concerned about our ability to maintain them and keep them up to date as the original versions change over time.  For one thing, as we implement https://github.com/ioam/geoviews/pull/121 , we'll have dozens of separate notebooks, each of which could usefully have an associated script.
Should we not just use an automatic mechanism to convert each notebook into a runnable python script, which I believe @jlstevens has prototyped if I am not making that up?  Then every page could have a link saying "Right click to download this code as a notebook or as a script to try it out yourself".

Should we not just use an automatic mechanism to convert each notebook into a runnable python script, which I believe @jlstevens has prototyped if I am not making that up?

That's right although it is (as you say) a prototype right now though if I have a chance I can clean it up (the conversion will be done using the holoviews console script).

The inclusion of the .options method recently already made me think maintaining will be an issue. Having a conversion script would be heaps better!
I was making the scripts as an exercise anyway so no issue if you want to wait till conversion tool comes out.


G502 no active profile, no active resolution

I'm trying to get this software to run on ubuntu 18.04 and any function that makes a call to the current state of the mouse such as "profile active get", "LED get", "rate get", etc return the following errors:
ben@blackbox:~/piper$ ratbagctl rate get event4
No active profile. Please report this bug to the libratbag developers
No active resolution. Please report this bug to the libratbag developers
1000
ben@blackbox:~/piper$ ratbagctl profile active get event4
No active profile. Please report this bug to the libratbag developers
0
ben@blackbox:~/piper$ ratbagctl LED get event4
No active profile. Please report this bug to the libratbag developers
ben@blackbox:~/piper$ ratbagctl button count event4
No active profile. Please report this bug to the libratbag developers
11
ben@blackbox:~/piper$ ratbagctl dpi get event4
No active profile. Please report this bug to the libratbag developers
No active resolution. Please report this bug to the libratbag developers
Traceback (most recent call last):
  File "/usr/bin/ratbagctl", line 2579, in <module>
    main(sys.argv[1:])
  File "/usr/bin/ratbagctl", line 2575, in main
    f(r, cmd)
  File "/usr/bin/ratbagctl", line 1464, in func_dpi_get
    print("{}dpi".format(r.resolution[0]))
TypeError: 'NoneType' object is not subscriptable
ben@blackbox:~/piper$ ratbagctl resolution active get event4
No active profile. Please report this bug to the libratbag developers
No active resolution. Please report this bug to the libratbag developers
0
ben@blackbox:~/piper$ ratbagctl info event4
Traceback (most recent call last):
  File "/usr/bin/ratbagctl", line 2579, in <module>
    main(sys.argv[1:])
  File "/usr/bin/ratbagctl", line 2575, in main
    f(r, cmd)
  File "/usr/bin/ratbagctl", line 1311, in show_device
    print_device(d, 0)
  File "/usr/bin/ratbagctl", line 1287, in print_device
    capabilities = [caps[c] for c in d.capabilities]
  File "/usr/bin/ratbagctl", line 1287, in <listcomp>
    capabilities = [caps[c] for c in d.capabilities]
KeyError: 2

This is occuring with the latest version of libratbag from github.
I should note that I am dual booting linux and windows and that I had the mouse configured in windows previous to this. In the logitech software I configured it to turn off the LED's when the computer shut down so that they wouldn't bug me with the computer off. I dunno, maybe that caused it to load a 'None' profile and that broke libratbag?

Does #547 help?

I rebooted into windows and switched the mouse from automatically detecting games to using profiles stored in memory on the mouse and that seemed to fix it? It may just have been the reboot that fixed it.

Probably what fixed it was switching to the in-device memory. Before everything was software-controlled which is why ratbag got confused. Arguably we should detect that case (it's somewhere in the HID specs iirc) but apparently we don't.
Anyway, closing for now, please re-open if it comes back.


EX2: Write a first draft for the stereo tutorial

Write a draft *.md for the stereo-DIC tutorial

@theodoraboncioaga I think so - would be good to make them consistent

For this experiment is the 24Mpx or 5Mpx camera going to be used?

Probably worth having instructions for both as we never know which cameras are going to be at which site


feat(js_regex): init and def ast

init js_regex
Merge branch 'main' of https://github.com/Ubugeeei/oxc into init-regex

Current dependencies on/for this PR:

main

PR #1   👈

This stack of pull requests is managed by Graphite.


Configuration to disable/enable special characters in SCIM2 endpoint

Describe the issue:
From our SCIM2 endpoints, we can add the special characters (JS tags such as ) to the user claims without an issue. However, this is not allowed in the management console and a message received saying special characters are not allowed due to security measures.
It would be really useful if a configuration exists to enable or disable accepting these special characters from the SCIM2 endpoint.
How to reproduce:
Try a patch request such as the following to the SCIM2 Users endpoint.
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
    ],
    "Operations": [
        {
            "op": "add",
            "value": {
                "nickName": "<script>alert(1)<\/script>"
            }
        }
    ]
}

Expected behavior:
Provide a backend validation to restrict (<>`") characters, but based on a configuration because we need to support backward compatibility.
Environment information

Product Version: IS 5.10.0
OS: Linux
Database: H2
Userstore: LDAP

This is not yet documented!

Adding user claim regex validation configuration wso2/carbon-identity-framework#3940

Will be tracked in https://github.com/wso2/product-is/issues/16399