Selectable related objects

I read doc for version 2.0 and find enum filed with empty doc. Does it mean that enum is not ready or I missed something?

Have you tried this?
key :enum, ['foo', 'bar']

@fotinakis yes in that way it works, but is it possible to setup in the way ['foo' => 1, 'bar' => '2'] to show in API, for example country name, but when request is sent in params obtain id of 1,2,...,n ?

An enum is always a list, you could put {foo: 1} there but I don't think it's valid according to swagger. You'd need to translate the name to the ID on your backend, or use a datastructure that is not an enum. Closing this issue now since we do support enum in this swagger-blocks gem.


2348 conditional dashboard tiles

Addresses 2348
🚀 Impact:
This PR implements conditional dashboard tile/link display and routing rules based on if an industry user's operator (userOperator) has a registered operation.
🚧 Changes

added bc_obps/registration/api/v1/_user_operators/_current/has_registered_operation.py   conditional endpoint check if userOperator's operator has a registered operation.
modified bc_obps/common/fixtures/dashboard/bciers/external.json to use conditional endpoint check for: "Register an Operation";"Register an Operation * action required"; "Reporting"
added middleware routing rules for industry user access to Reporting app based on  conditional endpoint check
added middleware vitests
added api endpoint test
added api service test

✏ Notes

TO DO: e2e ticket

🔬 Local Testing:

From terminal command, start the api server:

cd bc_obps
make reset_db
make run

From terminal command, start the app development server:

cd bciers && yarn dev-all

Test Dashboard Condition: userOperator's Operator has Registered Operation

Navigate to http://localhost:3000
Click button "Log in with Business BCeID"
Sign in to Keycloak using bc-cas-dev
Expected results:

Redirection to http://localhost:3000/dashboard page for role industry_user_admin
Registration tile has link Register an Operation
Reporting tile does display

Click link Registration\Register an Operation
Expected results:

Register an Operation workflow is displayed

Click breadcrumb Registration
Expected results:

Redirection to http://localhost:3000/registration page
Dashboard has tile Register an Operation

Click tile Register an Operation
Expected results:

Register an Operation workflow is displayed

Test Dashboard Condition: userOperator's Operator does not have Registered Operation
Pre-req: From terminal command, update the registered operations associated with the operator associated with  bc-cas-dev :
psql
\c registration
UPDATE  erc.operation SET status='Draft' WHERE status='Registered' AND operator_id='4242ea9d-b917-4129-93c2-db00b7451051';

Navigate to http://localhost:3000
Click button "Log in with Business BCeID"
Sign in to Keycloak using bc-cas-dev
Expected results:

Redirection to http://localhost:3000/dashboard page for role industry_user_admin
Registration tile has link Register an Operation * (action required)
Reporting tile does NOT display

3.1 Try and navigate to registration:
http://localhost:3000/reporting
http://localhost:3000/reporting/reports
Expected results:
Redirection to http://localhost:3000/dashboard page

Click link Registration\Register an Operation * (action required)
Expected results:

Register an Operation workflow is displayed

Click breadcrumb Registration
Expected results:

Redirection to http://localhost:3000/registration page
Dashboard has tile Register an Operation * (action required)

Click tile Register an Operation * (action required)
Expected results:

Register an Operation workflow is displayed

Works well and the solution is nice and clean! Testing with bc-cas-dev works and all the routing protection is solid, but I when I tried submitting a new operation with bc-cas-dev-secondary or bc-cas-dev-third without an operation listed, I'm getting a small error preventing me from continuing. Not sure the exact differences between dev and dev-secondary other than the operations attached, so I figured it was worth mentioning and taking a look at?

Works well and the solution is nice and clean! Testing with bc-cas-dev works and all the routing protection is solid, but I when I tried submitting a new operation with bc-cas-dev-secondary or bc-cas-dev-third without an operation listed, I'm getting a small error preventing me from continuing. Not sure the exact differences between dev and dev-secondary other than the operations attached, so I figured it was worth mentioning and taking a look at?

@gdalcengio
Thanks for the review and local testing; although, I could not reproduce the issue.
Perhaps, it is local to your environment?
As it seems outside the scope of this PR, can we agree to keep on eye on it ?

Works well and the solution is nice and clean! Testing with bc-cas-dev works and all the routing protection is solid, but I when I tried submitting a new operation with bc-cas-dev-secondary or bc-cas-dev-third without an operation listed, I'm getting a small error preventing me from continuing. Not sure the exact differences between dev and dev-secondary other than the operations attached, so I figured it was worth mentioning and taking a look at?

@gdalcengio
Thanks for the review and local testing; although, I could not reproduce the issue. Perhaps, it is local to your environment?
As it seems outside the scope of this PR, can we agree to keep on eye on it ?

Interesting, must be something local then, agreed and approved then!


New resource for kids

Kids computer science learning website.

Hi @rdr42
Thanks for being here. Resource is already there. Next time check first and than send pr.
Have a great day!


[AutoPR authorization/resource-manager] Grlin/updatingReqsforRA

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/3852

This PR has been merged into https://github.com/Azure/azure-sdk-for-go/pull/2613


Fix package module ID / Cannot find module "vue"

Getting errors while trying to install via npm:
npm install vue

Was able to install the github version via:
npm install vuejs/vue#dev

However, I got the following error:
Error: Cannot find module 'vue'

Looks like the package.json main is pointing to a non-existing file:
dist/vue.common.js
I checked both dev and master branch, neither had the file.  This PR is removing
dist/vue.common.js from files and updating the package main to point to dist.vue.js

Thanks, vue.common.js is only built and distributed with the npm module.
See updated instructions on using latest source code: http://localhost:4000/guide/installation.html#Dev_Build


🚧 Dev ➾ correct failing contextual-help tests

🔗 Epic|Feature Link
No response
🚥 Definition of Done

[ ] 🎯 Planning and Design
[ ] 🏎 Dev Implementation Complete
[ ] ♾ PR Merged
[ ] 🏆 Product Acceptance

🧰 Work Description
there are some tests fr contextual help that have been failing but the tests need update and corrections
✅ To Do
fix the  tests
⚖ Acceptance Criteria
✨ Functional:

[ ]
[ ] working tests

🔭 Scope
🙅♂ Out of Scope:

...

tests of plugin functionality
Code of Conduct

[X] I agree to follow this project's Code of Conduct

this was done


Needs SPSI VR Support

ChilloutVR Upgraded to Unity 2021.3.23f1. The mod in its current state, the portrait only appears in the left eye. so to fix this the mod needs to support Single Pass Stereo Instanced Rendering mode for VR.

it appears to be fixed now, thank you so much~

Yep, just needed a rebuild of the assets. Forgot to close this out when I published the release.


Promise sample in stdlib docs doesn't compile

The PrintFulfill sample in the doc string for the promises package does not compile/run in the pony playground, reporting the following error:
0.15.0 [release]
compiled with: llvm 3.9.1 -- cc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
Error:
main.pony:8:31: syntax error: unterminated array literal
    _env.out.print(" + ".join([s, _msg]))
                              ^
    Info:
    main.pony:8:33: expected terminating ] before here
        _env.out.print(" + ".join([s, _msg]))

The following code does compile and produce the expected output:
use "promises"

class PrintFulfill is Fulfill[String, String]
  let _env: Env
  let _msg: String
  new create(env: Env, msg: String) =>
    _env = env
    _msg = msg
  fun apply(s: String): String =>
    _env.out.print(_msg + " + " + s)
    s

actor Main
  new create(env: Env) =>
     let promise = Promise[String]
     promise.next[String](recover PrintFulfill(env, "foo") end)
     promise.next[String](recover PrintFulfill(env, "bar") end)
     promise.next[String](recover PrintFulfill(env, "baz") end)
     promise("fulfilled")

@autodidaddict can you PR that fix?

Also, the broken part is
_env.out.print(" + ".join([s, _msg]))
the comma.
We switched syntax for sequences,
that would be
_env.out.print(" + ".join([s; _msg]))
now

actualyl nvm i opened #2075 for this

Sorry I was traveling and didn't get a chance to open a PR.

Its ok. I'm closing this as it is fixed in a PR that @jemc has open.


FYPO:0005504 anomaly

It looks like FYPO:0005504 is somehow not getting loaded into Canto. It isn't available in the term search/autocomplete, and there are two copies of this warning in the curation-tool-data-load-output log:
warning in 9cf15ade89e44016: can't load annotation, FYPO:0005504 not found in database

FYPO:0005504 is present and not obsolete in every FYPO file I've checked, including the copy of fypo-simple.obo in the latest_build/ontologies/ directory. Whassup?

I think it could be because there's another term with the same name:
[Term]
id: FYPO:0003318
name: abolished galactose-specific flocculation

[Term]
id: FYPO:0005504
name: abolished galactose-specific flocculation

oops! at least that's easy to fix. well spotted! (FYPO:0003318 doesn't have a logical def; if it did, the reasoner would've caught the duplicate)

fixed in FYPO


Number of lines when default arguments include a "{"

@mvankessel-EMC There are a small number of functions that include "}" somewhere in their default arguments. For example, glue::glue_data has this as the default for .close. In these edge cases I think we have a bug where we see this being the point at which the function ends
glue_data(
  .x,
  ...,
  .sep = "",
  .envir = [parent.frame](https://rdrr.io/r/base/sys.parent.html)(),
  .open = "{",
  .close = "}",
  .na = "NA",
  .null = [character](https://rdrr.io/r/base/character.html)(),
  .comment = "#",
  .literal = FALSE,
  .transformer = identity_transformer,
  .trim = TRUE
)

Current PaRe results for glue_data
library(PaRe)
PaRe::getDefinedFunctionsPkg(here::here("inst", "glue")) %>%
  dplyr::filter(fun == "glue_data")
# file start size       fun nArgs cycloComp
# 1 glue.R    87    0 glue_data     5        NA

@edward-burn Thanks for the report. I've just pushed a change (48040860d49247d44c8d775f025103c90f73f772) so the number of braces ( and ) have to be equal.
Which gives the following output:
defFuns <- getDefinedFunctionsPkg(path = "inst/glue/")

defFuns %>%
  filter(fun == "glue_data")

>    file start size       fun nArgs cycloComp
>1 glue.R    88  112 glue_data     8        19

Note that the start of the body of the function is now line 88 instead of 87, and the cyclomatic complexity is no longer NA.
Let me know if you other bugs, with the new implementation.
I'll leave the issue open for now for any follow up.

Great! Let me see if I can find any other examples and I'll report back here


Removing defaultcachecontrol refs and replacing with typeCacheControls

SonarQube analysis reported 2 issues
Note: The following issues were found on lines that were not modified in the pull request. Because these issues can't be reported as line comments, they are summarized here:

 index.ts#L595: Remove this unnecessary cast.
 index.ts#L638: Remove this unnecessary cast.

SonarQube analysis reported 2 issues
Note: The following issues were found on lines that were not modified in the pull request. Because these issues can't be reported as line comments, they are summarized here:

 index.ts#L593: Remove this unnecessary cast.
 index.ts#L636: Remove this unnecessary cast.

SonarQube analysis reported 2 issues
Note: The following issues were found on lines that were not modified in the pull request. Because these issues can't be reported as line comments, they are summarized here:

 index.ts#L593: Remove this unnecessary cast.
 index.ts#L636: Remove this unnecessary cast.


Add a prop to show the tooltip on bottom

The tooltip is by default shown on the top of the mailto link, add a prop so that it can be shown on the bottom as well.

i would like to take up this issue

Hello, is this available?

Yes, this is available; feel free to open a PR for it.

To whom will you assign this issue?

I will assign to whoever opens the PR first.

#12


The length of the encrypted field used in example is wrong.

CardNumber_Encrypted should be 160 bits not 128 bits if you are using SHA1.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 4cd3dba3-ebd8-342e-fce9-af4c5ce39324
Version Independent ID: f9725f20-7bdd-2e6c-f5db-957c00771d27
Content: Encrypt a Column of Data - SQL Server
Content Source: docs/relational-databases/security/encryption/encrypt-a-column-of-data.md
Product: sql
Technology: security
GitHub Login: @aliceku
Microsoft Alias: aliceku

@bak3r -- thank you for your feedback.  I am looking into it.

Thank you for your keen eye.  I have updated the documentation and it should be live by tomorrow.


#417 - changed charts framework to FusionCharts - will be useful late…

…r for more complicated charts. It's free for open source projects.

Nice, but need to fix some var names to actually be about what they represent.
Also, the font in the plot is really small and hard to read. Any chance to enlarge it a little?

@danielhers done


[L04] Lack of indexed parameters in events

Description
Tested
Other changes
Related issues

Fixes https://github.com/celo-org/celo-labs/issues/397

Backwards compatibility

Indexed arg takes a bit more gas than data, 119 more for bytes32 and 215 more for address.
There can be only 3 indexed args for each event, the event name takes one of the four topic slots.
It's not too useful to set them to be indexed, something like blockscout is better for that purpose.


Login password

Is there a way to set login password, so we can easily share the demo within a team?
Thank you for this amazing work, @rom1504 !

Easiest is probably to set up a password with nginx and use a reverse proxy
towards clip retrieval back/front
On Thu, Feb 9, 2023, 20:01 Naoto Usuyama @.***> wrote:

Is there a way to set login password, so we can easily share the demo
within a team?
Thank you for this amazing work, @rom1504 https://github.com/rom1504 !
—
Reply to this email directly, view it on GitHub
https://github.com/rom1504/clip-retrieval/issues/247, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAR437RF72IHPGKRB5IXTBLWWU5IXANCNFSM6AAAAAAUW5OMUY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Thank you! We're also checking if we can deploy using Azure App Service (then it'll be easy to use more advanced authentications).


python3.pkgs.jupyter{,lab}-lsp: updates

Description of changes

Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 221460 run on aarch64-linux 1

4 packages built:

python310Packages.jupyter-lsp
python310Packages.jupyterlab-lsp
python311Packages.jupyter-lsp
python311Packages.jupyterlab-lsp


Add ability for Super Admins to grant Super Admin to other users

Add ability for Super Admins to grant Super Admin to other users

https://github.com/on-site/StockAid/pull/520


Exit region locking fails

To demonstrate try to connect to aus.altheamesh.com. I configured it to only accept connections from 'au' I realize that's an incorrect country code but it ignores it anyways. Maybe because it's incorrect? I'll have to investigate further.

fixed in #122 still needs to be tested.


ToolTip appears at the wrong location; Firefox 39+

Hello,
In Firefox 41 Developer Edition, the tooltips appear at the wrong location. See the attached image:

Kind Regards,
Dennis Bitsch

Exact Build: 41.0a2 (2015-07-12)

I'm using Firefox 39.0 and i have the same issue..

This is due to the fact that Firefox 39 finally implemented offsetX and offsetY on mouse events.  The problem is...they implemented it differently than other browsers.  The relevant Bugzilla entry is here.
Firefox's offsets are relative to a different element than other browsers.  In the case of Chartist, it appears that its offsets are relative to the SVG element that your mouse is over, thus you get relatively low offsetX/Y values.  Other browsers seem to be giving an offset relative to the parent container.  The Bugzilla issue makes reference to the spec not being terribly clear which is correct.
Unfortunately, I don't know what the right way is to fix this.  For the time being, I removed the reference to offsetX and offsetY in the positioning code and just let it use originalEvent.layerX/Y for all browsers.  From what I am reading at Stackoverflow, those attributes are deprecated and soon to be removed by Chrome and Safari (at least), so a better solution is needed.
Matt

Hey guys, I'm also facing this problem right now. I just noticed that inverting event.offset and event.originalEvent.layer actually solves it in my project.
Which leads to:
  $chart.on('mousemove', function(event) {
    $toolTip.css({
      left: (event.originalEvent.layerX || event.offsetX) - $toolTip.width() / 2 - 10,
      top: (event.originalEvent.layerY || event.offsetY) - $toolTip.height() - 40
    });
 });

in chartist-plugin-tooltip, line 86
I think I should make a PR :)

What is the status on this? I can still confirm this bug on the example page at least.

Please file this issue again in the chartist-tooltip-plugin repository. I'll close this issue here. Make sure to reference it!

New code is not working in Chrome. I have added browser detection and it works fine now.
var left = (event.originalEvent.layerX || event.offsetX) - $toolTip.width() / 2 - 10;
            var top = (event.originalEvent.layerY || event.offsetY) - $toolTip.height() - 40;
            if(!isBrowser("firefox")){
                left = event.offsetX - $toolTip.width() / 2 - 10;
                top = event.offsetY - $toolTip.height() - 40;
            }


Functional tests for subscription crud when LDAP is acticated

Pull Request title has "activated" wrong spelled.


Add HTTPS to production

When running in production, secure all requests using https.
Additionally start a redirect server on the default http port so
insecure requests are automatically sent to https

Pull Request Submitted
Actual Commit: ${ghprbActualCommit}
Commit Author: ${ghprbActualCommitAuthor}
Pull Description: ${ghprbPullDescription}
Pull Id: ${ghprbPullId}
Pull Link: ${ghprbPullLink}
Pull Title: ${ghprbPullTitle}
Pull Source Branch: ${ghprbSourceBranch}
Pull Target Branch: ${ghprbTargetBranch}


Discussion: quick maintainers check-in

Hey @mdengler @jamespo , just wanted to quickly check in on maintenance and see if you had any particular goals, concerns, etc about the project and current direction of things. LMK any input you have.

Couple things I have in mind:

Any norms on code reviews? I've been firing off and self-approving quite a few changes lately, happy to keep operating that way or if you prefer to send certain kinds of changes your way for review and wait for you to have a chance to look them over.
Have any priorities for what to fix/improve next in the project? The set of things I'm personally focused on getting ready for an upcoming 4.5 release is at https://github.com/insanum/gcalcli/milestone/10.
Any knowledge sharing that would be helpful or anything like that? In some projects I've even seen design docs for major changes posted in the repo. I probably wouldn't go that elaborate for most changes but if it's helpful I'd be happy to generate some more visible artifacts along those lines.


Using providers outside build context

Flutter lifecycles such as didChangeAppLifecycleState are outside the build context and therefore I'm not able to do context.read...provider. I was wondering if there's a way to access my providers outside build context?

It depends on how the lifecycle listener is registered.
You will need either a context or a ref. One of them is necessary as providers are not global state

It depends on how the lifecycle listener is registered.
You will need either a context or a ref. One of them is necessary as providers are not global state


[QUESTION] Bus Error when attempting to stream

I'm trying to stream anything from a Tegra TK1 SOC but I am having an issue where after a couple of seconds, GStreamer crashes with a bus error.
Commands ran:

gst-launch-1.0  videotestsrc do-timestamp=TRUE ! video/x-raw,width=640,height=480,framerate=30/1 ! videoconvert ! x264enc bframes=0 key-int-max=45 bitrate=512 ! video/x-h264,profile=baseline,stream-format=avc,alignment=au,width=640,height=480,framerate=30/1 ! h264pars e ! kvssink stream-name=test-stream storage-size=512 aws-region="us-east-1" retention-period=1
gst-launch-1.0 rtspsrc location="rtsp://<IP_ADDRESS>/extron1" short-header=TRUE ! rtph264depay ! video/x-h264, format=avc ! h264parse ! kvssink stream-name="test-stream" aws-region="us-east-1" retention-period=1

** Logging **
From running the rtsp source, I receive:
Setting pipeline to PAUSED ...
log4cplus:ERROR could not open file ./kvs_log_configuration
INFO - createKinesisVideoClient(): Creating Kinesis Video Client
2021-03-16 15:10:36 [3070181392] INFO - heapInitialize(): Initializing native heap with limit size 134217728, spill ratio 0% and flags 0x00000001
2021-03-16 15:10:36 [3070181392] INFO - heapInitialize(): Creating AIV heap.
2021-03-16 15:10:36 [3070181392] INFO - heapInitialize(): Heap is initialized OK
2021-03-16 15:10:36 [3070181392] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000001, Next state: 0x0000000000000002
2021-03-16 15:10:36 [3070181392] DEBUG - getSecurityTokenHandler invoked
2021-03-16 15:10:36 [3070181392] DEBUG - Refreshing credentials. Force refreshing: 0 Now time is:<PHONE_NUMBER>421171765 Expiration: 0
2021-03-16 15:10:36 [3070181392] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000002, Next state: 0x0000000000000010
2021-03-16 15:10:36 [3070181392] INFO - createDeviceResultEvent(): Create device result event.
2021-03-16 15:10:36 [3070181392] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000010, Next state: 0x0000000000000040
2021-03-16 15:10:36 [3070181392] DEBUG - clientReadyHandler invoked
2021-03-16 15:10:36 [3070181392] INFO - try creating stream
2021-03-16 15:10:36 [3070181392] INFO - Creating Kinesis Video Stream test-stream
2021-03-16 15:10:36 [3070181392] INFO - createKinesisVideoStream(): Creating Kinesis Video Stream.
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): Kinesis Video Stream Info
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Stream name: test-stream
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Streaming type: STREAMING_TYPE_REALTIME
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Content type: video/h264
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Max latency (100ns): 600000000
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Fragment duration (100ns): 20000000
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Key frame fragmentation: Yes
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Use frame timecode: Yes
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Absolute frame timecode: Yes
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Nal adaptation flags: 0
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Average bandwith (bps): 4194304
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Framerate: 25
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Buffer duration (100ns):<PHONE_NUMBER>
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Replay duration (100ns): 400000000
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Connection Staleness duration (100ns): 600000000
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Store Pressure Policy: 1
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	View Overflow Policy: 1
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Segment UUID: NULL
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Frame ordering mode: 0
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): Track list
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Track id: 1
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Track name: kinesis_video
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Codec id: V_MPEG4/ISO/AVC
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Track type: TRACK_INFO_TYPE_VIDEO
2021-03-16 15:10:36 [3070181392] DEBUG - logStreamInfo(): 	Track cpd: NULL
2021-03-16 15:10:36 [3070181392] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000001, Next state: 0x0000000000000002
2021-03-16 15:10:36 [3070181392] INFO - writeHeaderCallback(): RequestId: e568c6c5-2edc-49e1-b8eb-6bf2a020d385
2021-03-16 15:10:36 [2872464496] DEBUG - describeStreamCurlHandler(): DescribeStream API response: {"StreamInfo":{"CreationTime":1.61591885358E9,"DataRetentionInHours":1,"DeviceName":"Kinesis_Video_Device","IngestionConfiguration":null,"KmsKeyId":"arn:aws:kms:us-east-1:<AccountId>:alias/aws/kinesisvideo","MediaType":"video/h264","Status":"ACTIVE","StreamARN":"arn:aws:kinesisvideo:us-east-1:<AccountId>:stream/test-stream/1615918853580","StreamName":"test-stream","Version":"zcRXVaHBTeWsr2TiQ3HP"}}
2021-03-16 15:10:36 [2872464496] INFO - describeStreamResultEvent(): Describe stream result event.
2021-03-16 15:10:36 [2872464496] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000002, Next state: 0x0000000000000020
2021-03-16 15:10:36 [2872464496] INFO - writeHeaderCallback(): RequestId: 3381f0af-0caf-441c-9b4b-7935b69ee0ca
2021-03-16 15:10:36 [2862609520] DEBUG - getStreamingEndpointCurlHandler(): GetStreamingEndpoint API response: {"DataEndpoint":"https://s-808fdb44.kinesisvideo.us-east-1.amazonaws.com"}
2021-03-16 15:10:36 [2862609520] INFO - getStreamingEndpointResultEvent(): Get streaming endpoint result event.
2021-03-16 15:10:36 [2862609520] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000020, Next state: 0x0000000000000010
2021-03-16 15:10:36 [2862609520] DEBUG - getStreamingTokenHandler invoked
2021-03-16 15:10:36 [2862609520] DEBUG - Refreshing credentials. Force refreshing: 1 Now time is:<PHONE_NUMBER>721269015 Expiration:<PHONE_NUMBER>3709551615
2021-03-16 15:10:36 [2862609520] INFO - getStreamingTokenResultEvent(): Get streaming token result event.
2021-03-16 15:10:36 [2862609520] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000010, Next state: 0x0000000000000040
2021-03-16 15:10:36 [2862609520] DEBUG - streamReadyHandler invoked
2021-03-16 15:10:36 [2862609520] Stream is ready
Pipeline is live and does not need PREROLL ...
Progress: (open) Opening Stream
Progress: (connect) Connecting to rtsp://<IP_ADDRESS>/stream1
Progress: (open) Retrieving server options
Progress: (open) Retrieving media info
Progress: (request) SETUP stream 0
Progress: (request) SETUP stream 1
Progress: (open) Opened Stream
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (request) Sent PLAY request
INFO - kinesisVideoStreamFormatChanged(): Stream format changed.
2021-03-16 15:10:37 [2762994800] DEBUG - Dropping frame with flag: 9280
2021-03-16 15:10:37 [2762994800] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000040, Next state: 0x0000000000000080
2021-03-16 15:10:37 [2762994800] INFO - putStreamResultEvent(): Put stream result event. New upload handle 0
2021-03-16 15:10:37 [2762994800] WARN - notifyDataAvailable(): Failed to un-pause curl with error: 43. Curl object 0xa8d12920
2021-03-16 15:10:37 [2762994800] DEBUG - stepStateMachine(): State Machine - Current state: 0x0000000000000080, Next state: 0x0000000000000100
2021-03-16 15:10:37 [2762994800] INFO - writeHeaderCallback(): RequestId: d0729a04-befb-927e-88b9-9eea3fa60bb4
2021-03-16 15:10:38 [2754606192] DEBUG - postReadCallback(): Pausing CURL read for upload handle: 0
2021-03-16 15:10:38 [2754606192] DEBUG - Kinesis Video client and stream metrics
	>> Overall storage byte size: 134217728
	>> Available storage byte size: 134182190
	>> Allocated storage byte size: 35538
	>> Total view allocation byte size: 144080
	>> Total streams frame rate (fps): 25
	>> Total streams transfer rate (bps): 33554432 (32768 Kbps)
	>> Current view duration (ms): 0
	>> Overall view duration (ms): 0
	>> Current view byte size: 35498
	>> Overall view byte size: 35498
	>> Current frame rate (fps): 25
	>> Current transfer rate (bps): 33554432 (32768 Kbps)
2021-03-16 15:10:38 [2762994800] DEBUG - postReadCallback(): Wrote 41246 bytes to Kinesis Video. Upload stream handle: 0
2021-03-16 15:10:39 [2754606192] DEBUG - postReadCallback(): Pausing CURL read for upload handle: 0
2021-03-16 15:10:39 [2754606192] DEBUG - postWriteCallback(): Curl post body write function for stream with handle: test-stream and upload handle: 0 returned: {"EventType":"BUFFERING","FragmentTimecode":1615921838579,"FragmentNumber":"91343852333181610656047719730439511114815731903"}

2021-03-16 15:10:39 [2754606192] DEBUG - fragmentAckReceivedHandler invoked
2021-03-16 15:10:39 [2754606192] DEBUG - postReadCallback(): Wrote 182 bytes to Kinesis Video. Upload stream handle: 0
2021-03-16 15:10:39 [2754606192] DEBUG - postReadCallback(): Pausing CURL read for upload handle: 0
2021-03-16 15:10:39 [2754606192] DEBUG - Kinesis Video client and stream metrics
	>> Overall storage byte size: 134217728
	>> Available storage byte size: 134121836
	>> Allocated storage byte size: 95892
	>> Total view allocation byte size: 144080
	>> Total streams frame rate (fps): 29
	>> Total streams transfer rate (bps): 31876704 (31129 Kbps)
	>> Current view duration (ms): 400
	>> Overall view duration (ms): 988
	>> Current view byte size: 53224
	>> Overall view byte size: 94391
	>> Current frame rate (fps): 29.8239
	>> Current transfer rate (bps): 31876704 (31129 Kbps)
2021-03-16 15:10:39 [2762994800] DEBUG - postReadCallback(): Wrote 65524 bytes to Kinesis Video. Upload stream handle: 0
2021-03-16 15:10:40 [2754606192] DEBUG - postReadCallback(): Wrote 2057 bytes to Kinesis Video. Upload stream handle: 0
2021-03-16 15:10:40 [2754606192] DEBUG - postReadCallback(): Pausing CURL read for upload handle: 0
2021-03-16 15:10:40 [2754606192] DEBUG - postWriteCallback(): Curl post body write function for stream with handle: test-stream and upload handle: 0 returned: {"EventType":"RECEIVED","FragmentTimecode":1615921838579,"FragmentNumber":"91343852333181610656047719730439511114815731903"}

2021-03-16 15:10:40 [2754606192] DEBUG - fragmentAckReceivedHandler invoked
2021-03-16 15:10:40 [2754606192] DEBUG - postWriteCallback(): Curl post body write function for stream with handle: test-stream and upload handle: 0 returned: {"EventType":"BUFFERING","FragmentTimecode":1615921839567,"FragmentNumber":"91343852333181610660999479887581032497036079835"}

2021-03-16 15:10:40 [2754606192] DEBUG - fragmentAckReceivedHandler invoked
2021-03-16 15:10:40 [2754606192] DEBUG - postWriteCallback(): Curl post body write function for stream with handle: test-stream and upload handle: 0 returned: {"EventType":"PERSISTED","FragmentTimecode":1615921838579,"FragmentNumber":"91343852333181610656047719730439511114815731903"}

Bus error
# echo $?
135

I do notice that in dmesg I get a new entry each time after running for an alignment trap error:
[ 4133.495014] Alignment trap: not handling instruction edc10b04 at [<b608ce1c>]
[ 4133.502492] Unhandled fault: alignment exception (0x811) at 0xabb6eaea

I receive almost identical logs when using videotestsrc as well.
** Any design considerations/constraints **
The stream is currently set at 1080p@30fps.
If I run any of the above commands in an infinite while-loop, it will stream to KVS, however the video feed is very choppy and not suitable for a production scenario.
I'm running a buildroot-based distro that's based on the 2020.02.3 release. This is using the linux kernel pubished by toradex for this TK1 SOC (located here with version Apalis-TK1_LXDE-Image_2.8b6.184-20190401.
** If you would not like to open an issue to discuss your solution in open-platform, please email your question to<EMAIL_ADDRESS>**

@cwardcode ,
The logs do not give information about what could be causing it. Besides, it might also not be related to KVS. To verify this, can you run with fakesink instead of kvssink to see if you notice any crash?

Seems like your device does not support unaligned access. You will need to build PIC with only aligned memory access.
In order to prove this. Can you run your solution on a device that does support unaligned access and ensure you don't get bus exception.
Check out the instructions for aligned mem only. https://github.com/awslabs/amazon-kinesis-video-streams-pic#note-on-alignment
You need to specify DALIGNED_MEMORY_MODEL=TRUE

Hi @disa6302 and @MushMal, thanks for the quick replies!
The extra space in the command I previously posted was just a typo.
I just tested fakesink and it worked as intended. Enabling GST_DEBUG=4 showed the continual flow of information. Here is some of the output.
I would post the output, but I would like to try @MushMal's suggestion first before flooding the comments with the tons of output that come from the DEBUG flag. I'm in the middle of recompiling with the latest kernel to see if there's any improvement there, so I'll try compiling with DALIGNED_MEMORY_MODEL=TRUE right after.

@MushMal

You need to specify DALIGNED_MEMORY_MODEL=TRUE

This got it, thanks! I had actually read the readme for the PIC repo the other day but for some reason it never clicked. Thanks again for the quick responses!


Use Snowstorm (noise protocol impl) in TcpMockTransport

Add very basic Encryption trait with two implementations (NoEncryption and NoiseEncryption), use NoiseEncryption in TcpMockTransport by default.
Encryption::handshake will probably need to be updated later (&self added) to be able configure encryption parameters (for example remember local private key).

Rekey is not implemented in NoiseEncryption. It should be done manually somehow (not sure if we really need it).
Here are some details in noise protocol specification: https://noiseprotocol.org/noise.html#rekey

Also it's not clear what should we do with the public keys from peers.

I noticed two major problems in TcpMockListener::accept after my changes:

accept become not cancel safe (new TCP connections might drop in the main loop if some other event received).
accept become blocking (event loop will not progress until noise handshake complete).

I will need to fix those two problems first.

I noticed two major problems in TcpMockListener::accept after my changes:
1. accept become not cancel safe (new TCP connections might drop in the main loop if some other event received).
2. accept become blocking (event loop will not progress until noise handshake complete).
I will need to fix those two problems first.

I added generic high-level Stream which is upgraded from generic low-level Socket in the peer handshake process. TcpMockListener::accept is reverted like it was before. Both issues should be fixed now.

Besides the tests for the future to ensure the behavior is how we expect it, all looks good. Good job!

Two tests added.
There was a logical error in the handshakes polling. HandshakeFut did not return Poll::Ready if some handshake failed for any reason. And this resulted in no accept call when there are too many active handshakes.
That was a right call to add test, thanks!


Instagram syndication link found but not sending webmentions

https://gregorlove.com/2021/12/cookies-were-made/ has a u-syndication of https://www.instagram.com/p/CXuwY4JLAGd/
The crawl of my site seems to have found those, but the last line looks like it's still seeing my previous photo as the last public post, based on this part of the JSON:
'last_public_post': datetime.datetime(2021, 11, 1, 7, 6, 33)
Bridgy Chrome 0.3.5 options is showing:
Status: OK

Bridgy user page: brid.gy/instagram/gregorlove.com
Instagram account: gregorlove
Last success: 12/22/2021, 9:12:27 PM
Last attempt: 12/22/2021, 9:12:19 PM
Posts seen: 18
Comments seen: 116
Likes seen: 671

Thanks for filing!
I suspect IG changed their HTML somehow. Your /instagram/browser/profile and /instagram/browser/feed are working fine, but your /instagram/browser/post requests are 400ing because Bridgy can't scrape your post permalinks' HTML.
The odd part is that /instagram/browser/post requests for other users are working fine, and they send the raw HTML from IG, so nothing different is happening in the browser extension or Bridgy backend. 🤔

Also odd, I tried sending it the HTML I get from https://www.instagram.com/p/CXuwY4JLAGd/ , logged into my own account, and it scrapes fine. So your browser is getting something different.
I've instrumented it to store the raw HTML you send, we'll see what's in there.

Aha, I have uBlock Origin running. I wonder if that's interfering. Let me try disabling that for Instagram briefly and report back.

I was wrong, uBlock is not enabled on instagram.com, so I don't think that's it.

Yup, they changed their HTML. Whee. Thanks for reporting!


TypeError: init() got an unexpected keyword argument 'wal_autocheckpoint'

Sorry...comment on wrong  script.

This should be fixed now. Sorry about that, for some reason my local repo diverged from this one and I had to fix it. If you encounter any more issues, please let me know.


MetaMask not disconnecting cleanly

✅ Prerequisites

[x] Did you perform a cursory search of open issues? Is this bug already reported elsewhere?
[x] Are you running the latest SDK version?
[x] Are you reporting to the correct repository (magic-sdk)?

🐛 Description
I'm looking at https://codesandbox.io/s/github/magiclabs/magic-demo-react-web3 and having trouble disconnecting from MetaMask then connecting again with Email.
🧩 Steps to Reproduce

Connect via MetaMask
Disconnect
Try to connect again... it auto connects to MetaMask without showing the option to connect with Email etc.

If I refresh the page after step 2, things work as expected
🤔 Expected behavior
After disconnecting, clicking 'Connect' again show show all options for connecting, including email
😮 Actual behavior
[What actually happened? Please include any error stack traces you encounter.]
💻 Code Sample
[If possible, please provide a code repository, gist, code snippet or sample files to reproduce the issue.]
🌎 Environment

Software
Version(s)

magic-sdk

Browser

yarn

Operating System

Hi @nick,
I am not able to reproduce this issue with our demo app. Check out this Loom recording of the flow and see how I connect with MetaMask, disconnect, and then connect with Email. All login options are present in the modal when I am reconnecting. No refreshing of the page was needed.
Would you happen to have a demo with this issue reproduced that I can check out?
If you are no longer experiencing this issue please let us know.

Closing this issue as it is not reproducible. Please feel free to comment with a reproducible code sample if the issue persists!


[5.0] [Mangle] Include generic arguments of extensions for the Objective-C runtime

The remangler for the Objective-C runtime was dropping generic arguments
of extension contents, leading to collisions with @objc class names.
Include the generic arguments of extensions.
Fixes rdar://problem/45956357.

Build failed
Swift Test OS X Platform
Git Sha - 84529416b3aa52ca5404905df37cd1f4c90beae4

@swift-ci please test macOS


Creation of Restructured Text folder in repository

Child of #1
Create a folder for restructured text documentation

Done. The folder structure was created with a readme detailing environment setup, as well as a base index.rst


What does hiPrioSet for python27Packages do?

The only usage of hiPrioSet in the entire nixpkgs history is this which was added by @domenkozar in 2014:
10130   python27Packages = lib.hiPrioSet (recurseIntoAttrs (callPackage ./python-packages.nix {
10131     python = python27;
10132     self = python27Packages;
10133   }));

commit eac9fe354c06ee7306935225e4db145edaa9c7da
Author: Domen Kožar<EMAIL_ADDRESS>Date:   Thu May 22 08:58:49 2014 +0200

    python27Packages is now a hiPrioSet to avoid other python versions interfering

I wonder what it achieves, given that the derivation names are versioned like python2.7-setuptools-26.1.1, so they won't conflict with nix-env -i anyway.
What it does does do though is to cause the meta.priority that is set for setuptools to be ignored:
$ nix-instantiate --eval -A python2Packages.setuptools.meta.priority
"-10"

$ nix-instantiate --eval -A python3Packages.setuptools.meta.priority
10

Is there any use for hiPrioSet? Should it be removed to remove the setuptools inconsistency? (It does affect some hashes, as buildEnv uses meta.priority.)

Some packages used to remove namePrefix

Ah, indeed some still do. So keeping that for now then.


fix: error message of filter won't disappear when updated

Closes #9
The idea to solve the issue, is to delete the past validation errors of the filter, and then readd it. This way, we don't risk having old values.

Not a huge fan of using delete. Want to try to keep the flow functional and data as immutable as possible

I have another fix I'm going to use for this issue that doesn't involve using delete


Update itemcollection_size.md

Fixes https://github.com/MicrosoftDocs/winrt-api/issues/2128

@Jaiganeshkumaran : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#label:"aq-pr-triaged"

#sign-off


nvm fails to install with non-root user

Operating system and version:

Ubuntu Server 16.04

How did you install nvm? (e.g. install script in readme, homebrew):

wget instructions

What steps did you perform?

used wget as per instructions

What happened?

Output of installation is:
=> Downloading nvm from git to '/root/.nvm'
=> mkdir: cannot create directory ‘/root’: Permission denied
ls: cannot access '/root/.nvm': Permission denied
fatal: could not create work tree dir '/root/.nvm': Permission denied
Failed to clone nvm repo. Please report this!
Also fails when using sudo.

What did you expect to happen?

correctly install with non-root user. I need nvm to work in non-root user.

Is there anything in any of your profile files (.bashrc, .bash_profile, .zshrc, etc) that modifies the PATH?

no

=> Downloading nvm from git to '/root/.nvm' - it looks like you're doing the installation when logged in as the root user? If you want to install as a non-root user, you should be logged in as that user.

I am logged in as the user.

You shouldn't be using sudo wget, there's a reason sudo isn't in the install command in the readme.
The other issue is that after su ldbbus, you have to cd $HOME - otherwise you're in the root user's home dir, where you don't have permissions.

I think there's a bug with a shared env var assuming you also previously did the install as root as I did.
export NVM_DIR="$HOME/.nvm"
should fix it once you su.

@dpmorrow as long as running su re-sources the profile file; otherwise the $HOME will only be evaluated once.
Closing, because I think this is answered. Happy to reopen if not.

Same problem here:
kiri@slimbook-excalibur-i7:~
$ nvm install v10.14.2
mkdir: cannot create directory ‘/home/kiri/.nvm/alias’: Permission denied
mkdir: cannot create directory ‘/home/kiri/.nvm/alias’: Permission denied
Downloading and installing node v10.14.2...
mkdir: cannot create directory ‘/home/kiri/.nvm/.cache’: Permission denied
creating directory /home/kiri/.nvm/.cache/bin/node-v10.14.2-linux-x64/files failed
Downloading https://nodejs.org/dist/v10.14.2/node-v10.14.2-linux-x64.tar.xz...
Warning: Failed to create the file
Warning: /home/kiri/.nvm/.cache/bin/node-v10.14.2-linux-x64/node-v10.14.2-linux
Warning: -x64.tar.xz: No such file or directory
                                                                                0.0%
curl: (23) Failed writing body (0 != 1057)
Binary download from https://nodejs.org/dist/v10.14.2/node-v10.14.2-linux-x64.tar.xz failed, trying source.
grep: /home/kiri/.nvm/.cache/bin/node-v10.14.2-linux-x64/node-v10.14.2-linux-x64.tar.xz: No such file or directory
Provided file to checksum does not exist.
Binary download failed, trying source.
Detected that you have 8 CPU core(s)
Running with 7 threads to speed up the build
mkdir: cannot create directory ‘/home/kiri/.nvm/.cache’: Permission denied
creating directory /home/kiri/.nvm/.cache/src/node-v10.14.2/files failed
Downloading https://nodejs.org/dist/v10.14.2/node-v10.14.2.tar.xz...
Warning: Failed to create the file
Warning: /home/kiri/.nvm/.cache/src/node-v10.14.2/node-v10.14.2.tar.xz: No
Warning: such file or directory
                                                                                0.0%
curl: (23) Failed writing body (0 != 1058)
Binary download from https://nodejs.org/dist/v10.14.2/node-v10.14.2.tar.xz failed, trying source.
grep: /home/kiri/.nvm/.cache/src/node-v10.14.2/node-v10.14.2.tar.xz: No such file or directory
Provided file to checksum does not exist.
kiri@slimbook-excalibur-i7:~
$


  We could do the same thing pretty easily.  They should be synthesized entirely within the replica, rather than stored in the task DB.

Could you give a short lecture on how "synthetic" tag is different from a natural one? Presumably by being automatically created?..

Yeah, taskwarrior calls them virtual tags (and we could use that name too) - https://taskwarrior.org/docs/tags.html
basically they have the UI of a tag, but are defined not by the user but as some derivative of other attributes of the task.  So you can't
task 123 modify +WAITING

but
task 123 modify wait:1d

will make the task appear in
task list +WAITING

The mistake (IMHO) that TW makes is that it stores this information as actual tags.  So for example until a task gc, a task that has a wait attribute in the past is still tagged +WAITING.

That's... A bit convoluted. Shall think about it with the fresh head. @dbr , any thoughts?

For the user, it becomes a quick shorthand -- a common one is task +ACTIVE to show all active tasks (started and not stopped/completed).

Logically this looks like something that belongs to v0.5.0, together with #81, #82 and #83. Adding to the same milestone, can be adjusted later.

The mistake (IMHO) that TW makes is that it stores this information as actual tags. So for example until a task gc, a task that has a wait attribute in the past is still tagged +WAITING.

Just chiming in that this is actually not correct, taskwarrior's virtual tags are, well, completely virtual :)
bool Task::hasTag (const std::string& tag) const
{
...
    if (tag == "WAITING")   return get ("status") == "waiting";
...
}

Ah, thanks!  I remember seeing the WAITING tag set when I expected it to have been cleared, but perhaps that was because the task hadn't been "unwaited" yet, which AIUI is a data modification.  In TC a task becomes not-waiting when its wait time is in the past, without a data modification.
Thanks for the correction.  It sounds like we're basically implementing this the same way, then :)

Actually, now that I look again, no -- TW gets this wrong, per the above snippet.  Something must come along and notice that a task's "wait" datestamp is in the past, and set its status to "pending", before it will show up in +WAITING.  That appears to happen as part of gc -- at least, I usually have to run task to get my outdated waiting tasks to flip back to pending.


Unable to connect to Command Metric Stream

Hi,
We are using the Spring boot starter parent 1.5.2.RELEASE and hystrix 1.5.6 dependencies.
Fortunately it works once in hundred tries. We are really puzzled, why it works once and then never. All the services are running on the local machine.
The log details are as below:
Proxy opening connection to: http://localhost:6001/hystrix.stream
2017-05-05 12:29:16.951  INFO 4876 --- [nio-6001-exec-5] ashboardConfiguration$ProxyStreamServlet :
Proxy opening connection to: http://localhost:6001/hystrix.stream
2017-05-05 12:31:36.163  INFO 4876 --- [trap-executor-0] c.n.d.s.r.aws.ConfigClusterResolver      : Resolving eureka endpoints via configuration
We are using the actuator also and tried the management.port once but the result is same. So we removed it. The same thing we tried with turbine and it also behaves the same way.
Please suggest.
Below is the resulting screen:

@AshutoshSharma10 Could you please create sample project which simulates the above problem. Is the server polling the data?

@AshutoshSharma10 It's very difficult to provide an answer with those details.  One possible way of getting to the bottom of it would be for you to look at the sample application that properly serves the metrics stream, and find out where yours differs.
https://github.com/Netflix/Hystrix/tree/master/hystrix-examples-webapp

I want to plus this issue -- we are seeing the same issue with Spring-boot 1.4.x and not just 1.5.x.
If we try to curl the end point instead of getting back a snapshot of data, we get
Previous versions of Spring-boot 1.3.x did not have an issue.  At first sight, this seems to be an incompatibility with Spring-boot or one of it's dependencies since our team had not had issues until a recent upgrade with Hystrix.
FYI.

If time permits we will try to put together a sandbox sample app, if one is not already provided.

Found the issue on our end.  We added a delay in the writing of the response so that we can propagate headers in our response the way we needed them.  Hystrix Servlet does not play well with our Response-delaying mechanism.

Hello,
We are also having a spring boot app and trying to see the metrics on the hystrix dashboard,
But getting exactly the same issue.
Is there any update on this issue. We are using hystrix 1.5.3.
Any fix or workaround would be helpful
Thanks in Advance

@615Manu The original issue was resolved.  Every circumstance is potentially different, and you haven't listed any details about your problem.
I would start by looking at the sample application that properly serves the metrics stream, and find out where yours differs.
https://github.com/Netflix/Hystrix/tree/master/hystrix-examples-webapp

@615Manu @AshutoshSharma10 For spring boot apps to show Hystrix metrics, the spring starter spring-boot-starter-actuator should be added to your dependency. This will apparently enable the metrics filter.
Also, make sure you open the http://<host>:<port>/hystrix/monitor URL and type http://<host>:<port>/hystrix.stream in the textbox. Then hit the Monitor Stream button to see the live stats.

i also encountered the same problem ,and the version is 1.4.3

I have the same question...version is 2.0

management.endpoints.web.exposure.include=* adding in application.properties solved for me

This isn't the spring cloud Netflix repository

same question , version 2.0.0 ,
http://localhost:8764/hystrix.stream  get the same page with http://localhost:8764/hystrix

This isn't the spring cloud Netflix repository

version 2.0.0.
"management.endpoints.web.exposure.include=hystrix.stream" adding in bootstrap.properties;
and the url was change to "http://host:port/actuator/hystrix.stream", it is ok.
also,"management.endpoints.web.base-path=/ " can make "http://host:port/hystrix.stream" work.

@cion-J Yours answer  solved for me!  thks!

@ww530220264
Thanks guy, I have solved this problem in my project with your method.

@ww530220264 Thanks for a lot,your method is great.

The above solution is for 2.0.x. However it's still not working with  Spring-boot 1.4.x and 1.5.x. Any updates on that?

this solution is great , so may be is a miss part of cloud document? thanks @ww530220264

Solution from @cion-J is great!  Spring Cloud docs require minor adjustment to reflect the change.  My suggested PR: https://github.com/kennyk65/spring-cloud-netflix/pull/1

spring cloud doc is really sucks...

just added one class as below :
@Configuration
public class HystrixServletDefinitions {
@Bean(name = "hystrixRegistrationBean")
public ServletRegistrationBean servletRegistrationBean() {
ServletRegistrationBean registration = new ServletRegistrationBean(
new HystrixMetricsStreamServlet(), "/metrics/hystrix.stream");
registration.setName("hystrixServlet");
registration.setLoadOnStartup(1);
return registration;
}
}
issues resolved.

if there was no HystrixCommand data , the hystrix server log  "java.net.SocketTimeoutException: Read timed out" . it also show you "Unable to connect to Command Metric Stream" on the dashboard . so you can request the HystrixCommad .then  it will be ok
the detail info in HystrixSampleSseServlet.handleRequest()

version 2.0.0.
"management.endpoints.web.exposure.include=hystrix.stream" adding in bootstrap.properties;
and the url was change to "http://host:port/actuator/hystrix.stream", it is ok.
also,"management.endpoints.web.base-path=/ " can make "http://host:port/hystrix.stream" work.

I have the same problem and the solution below works for me!
Look very strange and non user friendly...

For me on Spring-Boot version 2 helped
with dependencies
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

Added anotation to aplication
@EnableHystrixDashboard
Added bootstrap poperties (not sure why in some examples they are not using or why are they using here)
management:
  endpoints:
    web:
      exposure:
        include: hystrix.stream
      base-path: /

Run the app
Opened first http://host:port/hystrix then added in the url http://host:port/hystrix.stream and it worked
If I used http://host:port/actuator/hystrix.stream I was getting errors

version 2.0.0.
"management.endpoints.web.exposure.include=hystrix.stream" adding in bootstrap.properties;
and the url was change to "http://host:port/actuator/hystrix.stream", it is ok.
also,"management.endpoints.web.base-path=/ " can make "http://host:port/hystrix.stream" work.

This worked for me, thank you!!

You should add both @EnableHystrixDashboard and @EnableCircuitBreaker
like this:
@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients
@EnableHystrixDashboard
@EnableCircuitBreaker
public class ConsumerApplication {
	public static void main(String[] args) {
		SpringApplication.run(ConsumerApplication.class, args);
	}
}

http://localhost:59001/actuator/hystrix.stream
Fill in the link here and change the port to your administrative port. note the 'actuator'

hi,i just occured this problem,after one day, i may have solved this,please add a class in your project
version:2.0
package com.sc.consumerribbon.config;
import com.netflix.hystrix.contrib.metrics.eventstream.HystrixMetricsStreamServlet;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@configuration
public class HystrixServletDefinitions {
@Bean(name = "hystrixRegistrationBean")
public ServletRegistrationBean servletRegistrationBean() {
    ServletRegistrationBean registration = new ServletRegistrationBean(
            new HystrixMetricsStreamServlet(), "/hystrix.stream");
    registration.setName("hystrixServlet");
    registration.setLoadOnStartup(1);
    return registration;
}

}
@AshutoshSharma10
可以看下我记录的
https://blog.csdn.net/qq_22772259/article/details/79812026

Solved

not working.Please help :(
#Spring version
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> </parent>

Facing same issue in spring version 2.3.3. I have two services and two client balanced services consuming these other two services. A separate service for visualizing the Eureka Dashboard with below properties. But still same error

main class annotated @EnableHystrixDashboard#
Configuration class added as suggested in the above discussions

import com.netflix.hystrix.contrib.metrics.eventstream.HystrixMetricsStreamServlet;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class HystrixServletDefinitions {

    @Bean(name = "hystrixRegistrationBean")
    public ServletRegistrationBean servletRegistrationBean() {
        ServletRegistrationBean registration = new ServletRegistrationBean(
                new HystrixMetricsStreamServlet(), "/hystrix.stream");
        registration.setName("hystrixServlet");
        registration.setLoadOnStartup(1);
        return registration;
    }
}

Pom.XML-
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.3.3.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
	<groupId>pluralsight.demo</groupId>
	<artifactId>pluralsight-hystrix-dashboard</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>pluralsight-hystrix-dashboard</name>
	<description>Demo of hystrix</description>

	<properties>
		<java.version>1.8</java.version>
		<spring-cloud.version>Hoxton.SR8</spring-cloud.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
			<exclusions>
				<exclusion>
					<groupId>org.junit.vintage</groupId>
					<artifactId>junit-vintage-engine</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
	</dependencies>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>${spring-cloud.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

bootstrap.properties-
server.port=8085
eureka.client.register-with-eureka=false
management.endpoints.web.exposure.include=hystrix.stream
management.endpoints.web.base-path=/
management.security.enabled=false

Hello everyone, everything good ?
I implemented Hystrix however when I run localhost everything works fine but when I go up to the cloud (AWS) it loads however if I enter the url actuator / hystrix.stream I can see the ping normally. However, when I access the dashboard, the message "Unable to connect to Command Metric Stream."
Someone has any idea what it might be because I have already implemented everything that is saying here but it will not.

Hello everyone, everything good ?
I implemented Hystrix however when I run localhost everything works fine but when I go up to the cloud (AWS) it loads however if I enter the url actuator / hystrix.stream I can see the ping normally. However, when I access the dashboard, the message "Unable to connect to Command Metric Stream."
Someone has any idea what it might be because I have already implemented everything that is saying here but it will not.

Hey Guys, Any Update on this issue ?

Were you able to resolve this issue @littiele and @Vishalckc  ?

Still not solve my issue:
Here the sample repo: https://gitlab.com/microservice-samples/micro-services-spring-cloud-config/hystrix-circuit-breaker

Facing a similar issue, steps followed:
Dashboard was setup using as suggested here:
https://github.com/Netflix-Skunkworks/hystrix-dashboard/wiki#run-via-docker
Hystrix stream was generated as per steps mentioned by @mattrjacobs here: https://github.com/Netflix/Hystrix/issues/1117#issuecomment-192499462
verified that i am getting the stream with ping and data:
http://localhost:8989/hystrix-examples-webapp/hystrix.stream
but able to see following stack trace on dashboard:
hystrix-strack-trace.txt
Probably hystrix dashboard setup might be at fault (will check shortly)


Dialogue after cutscene when?

What feature do you want to get added on the base engine?
When dude
To test your sight, and reliability, please select the option of what should NOT be requested.
Useful feature

You can

you failed the test

https://user-images.githubusercontent.com/81757134/161582846-08eee245-16c7-4d37-946b-261c7f280efb.mov


Re-enable GitHub Actions CI

Depends on #47 . I goofed and opened this PR before the ASAN fixes branch.
Now that there has been some overhauls to how tests are run, it is probably a good idea to re-enable Actions so future reworks can be automatically tested.
This PR includes the following changes in addition to re-enabling CI:

TEMPORARILY switch libstb-secvar's target branch/commit to a faster-moving devel branch
make cppcheck now reports a failure if warnings (errors) are found
added a make formatcheck to report style errors without making changes
changed the formatting check Action to use the above target instead of inconsistent git status solution
updated the Actions for new build / test system
update actions/checkout to v3 to resolve deprecation notice
instruct actions/checkout to recursively clone libstb-secvar

Rebased, removed already merged libstb-secvar version bump commit.


tableEntryXData.Add(vport, xData) throws System.ArgumentException: 'An item with the same key has already been added.'

In the DXF file I am reading there is an error being thrown in DxfReader.cs indicating a duplicate key.

the problem can be solved by expanding the offending line out to:

However, I am unfamiliar with the DXF format and do not know if this will only kick the can further down the road...

The Model viewports are not implemented, and this issue comes from them. In any case this error should not appear, only the active viewport needs to be read. When multiple model viewports are present all of them are called *Active, and if two or more of them have extended data  that "tableEntryXData" will complain.
Doing what you suggest will combine all extended data information  into one viewport the only one that is implemented in the DxfDocument, a part from that, it should not create any more issues.
If you can post that DXF file, so I can take a look.

Resolved in 2.4.1


Support wildcards for the tasks file-delete or file-copy

It would be great to support wildcards into these two tasks (copy and delete).
The following command will delete all the files for which the filename is starting by CRDS_FTP_FTP_ and having an extension .csv.
<cleanup>
   <file-delete-pattern path="U:\Data Quality Checks\" pattern="CRDS_FTP_FTP_*.csv"/>
</cleanup>

The following command will delete all the files with an extension .csv or an extension .txt
<cleanup>
   <file-delete-extension path="U:\Data Quality Checks\" extension=".csv;.txt"/>
</cleanup>

Comparable methods are supported to copy files: file-copy-pattern and file-copy-extension.

An alpha version is available at https://ci.appveyor.com/project/Seddryck/nbi/builds/24907589/artifacts
1.21.0-alpha.1+45

Beta available at https://ci.appveyor.com/project/Seddryck/nbi/builds/24917349/artifacts or upgrade package via Update-Package NBi.Framework -version 1.21.0-beta0047.
Documentation updated.


Process call_stars () terminated with an error exit status (1)

Describe the bug
When run on my data, the last process 'call stars' is terminated and no output alleles is generated. It produce only variants:
BWA-hs37d5.WGS_cyp2d6.vcf.gz
BWA-hs37d5.WGS_cyp2d6.vcf.gz.tbi
Sorry, I didn't find the logs in work directory.
To Reproduce
-Ubuntu 20.04 virtual machine on server
-Singularity/Docker (same error)
-N E X T F L O W  ~  version 21.10.1 (same on DSL1 an DSL2)
-command: nextflow run main.nf -profile standard --build hg19 --gene cyp2d6
Screenshots

@twesigomwedavid,
Thank you for quick response!
I actually use WGS with 34x coverage.
Traceback (most recent call last):
File "bin/stellarpgx.py", line 28, in
cn = get_total_CN(cov_file)[0]
File "/home/tony-lupara/StellarPGx/scripts/cyp2d6/b37/bin/sv_modules.py", line 25, in get_total_CN
av_2d7_ex2_in8 = float(all_reg[10][3])/(float(all_reg[10][2]) - float(all_reg[10][1]))
IndexError: list index out of range

@TonyLupara
Thanks. How about the content of the depth file in work/08/1ff463<tab_key>/
Also, is this error happening for all your samples or just this one

@twesigomwedavid,
chr22   42522300        42522800        61140
chr22   42522000        42526000        473627
chr22   42520000        42531500        1234331
chr12   48235320        48298814        4470025
chr22   42526000        42531500        512865
chr22   42538400        42540600        237348
chr22   42535500        42538100        313146
chr7    55086678        55279262        9578555
chr22   42536550        42539583        324698
chr22   42539583        42540600        118488
I find that it missing 2 regions from  ~/resources/cyp2d6/cyp_hg19/test3.bed:
chr22   42535490        42536560
chr22   42536550        42538400
I've tried it only on 1 sample, waiting to process another sample's bam.

@TonyLupara,
Thanks. This was caused by a delimiter issue i.e. those 2 lines had spaces instead of a '\t' delimiter.
Please download the fix to your local StellarPGx directory using:
git stash
git pull
git stash pop

Excellent, it works!
@twesigomwedavid, thank you so much for your help!


Add custom reshaping for universal checkpoint

This PR adds more flexibility to define weight tensor reshaping for universal checkpointing.
Currently universal checkpointing assumes a few patterns of partitioning for tensor parallelism, such as column/row wise partitioning of a 2-dim tensor. However, these are not flexible enough to define partitioning for more complex usages. Here are some examples:

MoE: The user may define the weight tensor for MoE's FFN as [n_experts * hidden_out, hidden_in]. For TP, we need to view this tensor as 3-dim tensor and partition it along hidden_out dimension.
GQA: The weights for QKV are often represented as one tensor and we may have Q, K and V with different sizes. The tensor shape will be [q_size + k_size + v_size, hidden]. We partition this along first dimension but for each Q, K, and V. In this case, we first need to partition Q, V, and V separately and then concatenate them to get a shard for TP.

We propose a new pattern PARAMETER_WITH_SUB_PARAMS to support this. Here is the usage to cover the above use cases. You can define the view of the weight tensor and specify the dimension for partitioning based on the view.
from deepspeed.checkpoint import PARAMETER_WITH_SUB_PARAMS, SubparamShape

info[PARAMETER_WITH_SUB_PARAMS] = [
    asdict(SubparamShape(patterns=[layers_prefix + r"\d+moe.fc1.weight"],
                shape=(num_experts, hidden_out, hidden_in), partition_dim=1)),
    asdict(SubparamShape(patterns=[layers_prefix + r"\d+.qkv.weight"],
                shape=((q_size, k_size, v_size), hidden_size), partition_dim=0)),
...
]

The conversion script (ds_to_universal.py) merges TP-sharded weight tensors and the loader of universal checkpoints also partitions them following the information.

Thank you for the heads up, Tunji.
I'm yet to experiment with these new types of models so I'm probably not the right person to ask. If and when I get to use those I will gladly send feedback back.

@minjiaz, @xylian86, @zhangninja FYI

@mosheisland, @stas00, FYI, in this PR, @tohtana introduces new partitioning specification that seems to work for MoE and GQA. I feel this approach could generalize to more patterns including some of the existing ones. We will really appreciate your feedback. Thanks!

@tjruwase - I agree. PARAMETER_WITH_SUB_PARAMS is flexible and can replace both patterns that you mentioned. Good idea.

@tjruwase Sorry for my late reply. As this PR was already merged, let me answer here.

It seems to me that they can capture a broad range of patterns. For example, it seems they can represent the following existing patterns: PARAMETER_WITH_ROW_PARALLELISM_PATTERNS, PARAMETER_WITH_2_SUB_PARAMS_CAT_DIM_0

Yes, you are right. These patterns are represented by using this new pattern PARAMETER_WITH_SUB_PARAMS.
But I think we should keep these patterns as a simple way to cover major use cases.
Let me also add a visualization of these use cases.
info[PARAMETER_WITH_SUB_PARAMS] = [
    asdict(SubparamShape(patterns=[layers_prefix + r"\d+moe.fc1.weight"],
                shape=(num_experts, hidden_out, hidden_in), partition_dim=1)),
    asdict(SubparamShape(patterns=[layers_prefix + r"\d+.qkv.weight"],
                shape=((q_size, k_size, v_size), hidden_size), partition_dim=0)),
...
]

These figures show an MoE exmpale with 4 experts/TP size=2 and a GQA example.


[Bug] Sheets don't respect theme change. Can be reproduced on tamagui.dev site.

Current Behavior
When you open a sheet after changing the theme, the new theme colors are not shown, instead the previous theme colors are shown.
Expected Behavior
I'd expect sheets to show the current theme colors
Tamagui Version
1.35.6

Reproduction
This can be reproduced on tamagui.dev

1. Go to sheet section on tamagui.dev
2. Open the sheet to see that it is the color of the current theme
3. Hover over a different colored letter on the top TAMAGUI Header Title to change theme color
4. Observe that the sheet doesn't show the new theme color

I noticed this after upgrading from 1.23.0 to 1.35.6 if that helps at all

System Info
No response

Seeing this as well:
https://discord.com/channels/909986013848412191/974145843919716412/1122672189485891635

Should be fixed in v1.36.3 lmk if working for you

I'm experiencing this bug on 1.68.2, unfortunately.

FWIW I think it's worth re-investigating this issue. It seems theme updates are toooo granular, haha.
https://github.com/timothymiller/t4-app/issues/81


[bug] npx create-tamagui-app@latest myapp fails on Windows

Continuing from: https://github.com/tamagui/tamagui/issues/312
Which was closed due to misunderstanding.

Issue is still present, also tested with run as administrator. Possible due to syslinks being used somewhere as I recall this being an issue I ran into when attempting to move the folder.
Confirmed on windows 11, will test WSL

Works on WSL so just windows.

I can confirm this too

Not sure if this: https://www.pugetsystems.com/labs/hpc/Note-Setup-Git-for-PowerShell-on-Windows-10-1653 can help.

You need a newer version of git in most these cases
Tamagui even checks for it and warns but it must be missing your versions. Whats the output of git --version?

Can anyone verify this with the latest release? Last I heard it's working and I made the git version check stricter.

git version 2.38.1.windows.1

git latest version "git version 2.38.1.windows.1"
Log --> Click Here

git version 2.38.1.windows.1

same error with latest version of GIT and latest release of tamagui
git version 2.39.0.windows.2

Still breaking?

Works fine now for me


init

@dobe pls enable the project on CircleCI, I don't have the right role to do so 🙏

@dobe regarding the docs (I generated them with Dokka, but it's a really-really simple setup), I have mixed feelings, because we have several options:
0. We can say that we don't need them all.

We could automatically deploy them to GH pages without using the Dokka versioning plugin with a dedicated GH workflow when a new tag is created. In this case we won't need to include them in the repository, because the docs could be generated on the fly, uploaded as an artifact to GH where the Pages integration could take and deploy them. In this case always the most up to date docs would be visible there
We could automatically deploy them to GH pages with the Dokka versioning plugin. This one is practically the same as the one above, with one not so simple difference: in this case the setup would be more complex and we would also need to have every version in a dedicated directory inside the repository.

If we choose to keep the docs, I would tend to say that option 1 is the right choice for us


chore(release): Bump versions for v0.11.0-SNAPSHOT

Description:
Bump versions for v0.11.0-SNAPSHOT
Automated snapshot version bump for the next development cycle.
Related issue(s): #964

closed as this is an experiment


Dont require escaping of int/float

Bug Description
int/float type does not need to be escaped before output
WordPress does not even provide an escaping function for this.
Using esc_html/esc_attr is incorrect, since their param type is string only.
Minimal Code Snippet
$i = 3;
echo $i;

Error Code
WordPress.Security.EscapeOutput.OutputNotEscaped

Why would you write your code like that? I mean this example alone is not enough to warrant the change, as it can be written as just echo 3;.
Can you provide some other, more real-life, example?

Because this is the minimum to reproduce the issue.
This issue affects any place that echos int/floats.
If you want a more complex example, here's a simple polling/queuing example:
/**
 * Increment a counter by the amount specified
 *
 * @param string|int cache key
 * @param int        $offset amount by which we should decrease/increase the stored value
 * @param string     $group the cache key group used to store the value
 * @return int|bool
 */
function increment( $key, $offset = 1, $group ) {
    $value = get( $key . $group );
    $value += $offset;
    $value = apply_filters( 'some_action_for_incr', $value );
    return $value;
}

function my_demo( $value ) {
    if ( $key == 'blabla' && $value > 500 ) {
        // in reality this sets of an async task, which in terms will then echo the $value. but you get the issue like this too, so I kept it simple.
        trigger_error( 'blabla is ' . $value, E_USER_WARNING );
    }
    return $value;
}
add_filter( 'some_action_for_incr', 'my_demo' );

The problem is that a variable can be defined anywhere and, especially if it's being filtered, there is no guarantee that the type of the variable will still be float by the time the variable is output.
As this is a static analysis tool, the runtime value of variables is not available, so this is impossible to verify.
The simple way around it, though, is to just cast to float/int instead of using any of the output escaping functions. Casts to float/int will be accepted as valid output and the variable will then be regarded as safe by the sniff.
        trigger_error( 'blabla is ' . (int) $value, E_USER_WARNING );

Ok thx for the suggestion.
But for simple things that stay within a functions context phpcs couldn't check for it?
e.g. the most rudimentary checking case is something like:
$counter = 0;
while( true ) {
    if ( in_sync() ) {
          break;
    } elseif ( $counter > 30 ) {
          trigger_error( 'sync took longer than ' . $counter, E_USER_WARNING );
          break;
    }
    sleep( 1 );
    $counter++;
}

While your example would be checkable, in nearly all cases, it will be impossible to check the type of a variable.
To try and trace the variable type within a function is hard enough from within a sniff, doing so when it won't be possible to determine this reliably in 95% of all cases, is an exercise in futility.
$counter = 0;
while( true ) {
    if ( in_sync() ) {
          $counter = false; // As the sniff can't determine whether the `if` condition will be `true`, it can't determine whether the variable type is changed or not.
          break;
    } elseif ( $counter > 30 ) {
          $counter = apply_filters( 'counter_filter', $counter ); // The sniff won't be able to determine whether the variable type has changed or not.
          trigger_error( 'sync took longer than ' . $counter, E_USER_WARNING );
          break;
    }
    sleep( 1 );
    $counter++;
}

Ok, it's just bc I also use psalm/phpstan and both keep track of the int, so when I use the esc_html than psalm/phpstan compains (rightly so) that esc_html doesn't accept int, but when I don't use esc_html then phpcs complains...
So I guess only solution is to typecast to (int)


'overlays' folders is added to .gitignore

When importing the code generated by yo alfresco into IntelliJ, and after enabling Maven support, IntelliJ creates an 'overlays' folder under project_name/repo/..., containing thousands of files.
This folder should not be checked in on source control, and therefore it would be nice to include it to .gitignore.

Thanks for reaching out the other day and for adding this issue @tmetten!


is it possible to disable oauth?

Just wondering.. I was previously using another api wrapper found on github but I like the simplicity of yours better.. however I only mean to use it to make calls that aren't in the context of a logged in user.. such as searching for new/hot/trending posts in various subreddits. I understand you can make these without oauth as I was just making them. I understand oauth allows for higher rate limits but the non-oauth ones are ok for my current uses. I did get yours working with oauth but it's adding a layer of complexity and if there's an easy way to do without it and go back to non-oauth api calls (for those that allow it) then I'd like to know how.
Oh and.. I know some people don't like composer for some reason but.. well I do so if you ever decide to add your awesome project to composer you'll make me and some others happy I guess.
Lastly.. any chance you can use an array instead of constants in your config.php? Not a fan of constants especially those with common names as they can easily create conflicts in a big application.
Thanks and keep up the fine work!

Based on current standards, this is no longer an option


gas free listing broken backward compatibility

Following seaport, I understand that ProxyRegistry and proxies are not used anymore. Hence this broke gas free listing for all the contracts that included pre-approval through ProxyRegistry.
You cannot claim to be improving gas with seaport if you're breaking gas free listing for all contracts that used to support it.
To be backward compatible, proxy registry should be updated to return 0x1E0049783F008A0085193E00003D00cd54003c71 as proxies for everyone.
Also, this should be updated.

is there any seaport compatibility for existing contract includes ProxyRegistry function, existing contract listing problem about You must approve assets #for trading before creating an order
I think you are right and opensea must support ProxyRegistry old contract
I have a lot of trouble about existing contracts because of ProxyRegistry and I think many developer as well


[feature-request] rb operator supports bundler

Currently, Digdag’s rb operator doesn’t seem to be able to use bundler.
https://github.com/treasure-data/digdag/blob/b557732d556a0adc900e6d9f90ae7d49fb4731ff/digdag-standards/src/main/java/io/digdag/standards/operator/RbOperatorFactory.java#L129-L129
We would like to use bundle exec on ruby operator.
Because, we want to avoid installing library to global.
We want digdag to supports bundler for rb operator.

Current workaround is to use bundler/inline.
Ref. http://qiita.com/satoruk/items/3e4c47eb0edabbeafee5
require "bundler/inline"

gemfile(true) do
  source "https://rubygems.org"
  gem "oj"
end

class TestBundle
  def foo
    p Oj.dump(hello: "hi")
  end
end

$ less test_bundle.dig
timezone: Asia/Tokyo

_export:
  rb:
    require: "tasks/test_bundle"

+step1:
  rb>: TestBundle.foo

$ digdag run test_bundle.dig --rerun
2016-07-15 19:16:22 +0900: Digdag v0.8.3
2016-07-15 19:16:23 +0900 [WARN] (main): Reusing the last session time 2016-07-15T00:00:00+09:00.
2016-07-15 19:16:23 +0900 [INFO] (main): Using session .digdag/status/20160715T000000+0900.
2016-07-15 19:16:23 +0900 [INFO] (main): Starting a new session project id=1 workflow name=test_bundle session_time=2016-07-15T00:00:00+09:00
2016-07-15 19:16:23 +0900 [INFO] (0018@+test_bundle+step1): rb>: TestBundle.foo
Fetching gem metadata from https://rubygems.org/
Fetching version metadata from https://rubygems.org/
Resolving dependencies...
Using bundler 1.12.5
Installing oj 2.17.1 with native extensions
"{\":hello\":\"hi\"}"
Success. Task state is saved at .digdag/status/20160715T000000+0900 directory.
  * Use --session <daily | hourly | "yyyy-MM-dd[ HH:mm:ss]"> to not reuse the last session time.
  * Use --rerun, --start +NAME, or --goal +NAME argument to rerun skipped tasks.

require "bundler/setup or Bundler.setup  is a documented way: http://bundler.io/bundler_setup.html
Idea 1: use Docker and global ruby:
_export:
  docker:
    image: YOUR_IMAGE_WITH_RBENV
    build:
      - gem install bundler
      - bundle install
  rb:
    require: lib/your_init_script

+task:
  rb>: MyClass.foobar

Python will use the same way:
_export:
  docker:
    image: YOUR_IMAGE_WITH_PYENV
    build:
      - pip install -r requirements.txt

+task:
  py>: my.MyClass.foobar

Idea 2: Convention over Configuration A: if Gemfile.lock file exists, automatically runs bundle exec ruby instead of ruby
Idea 3: Convention over Configuration B: if init.rb file exists, digdag automatically requires it. And documents recommend to have following lines in it:
require 'bundler/setup'
require 'your_class_def_files'

Idea 4: Convention over Configuration C: if Gemfile.lock file exists, automatically runs bundle exec ruby instead of ruby. In addition to it, if rb/*.rb files exist (such as rb/my_class.rb), digdag automatically requires all of them.
Idea 5: allow customization of command line:
_export:
  rb:
    ruby: [bundle, exec, ruby, -r, init.rb]  # new option

@toru-takahashi which ideas do you think better/worse in your opinion?

It looks idea2 is simple and good.
On the other hands, ruby and python should be able to do same usage.
So, idea1 is useful for a expert digdag users.

Thank you very much. I feel good to have idea2 for light digdag user. because it is very simple.
Of course, idea 1 is useful to solve dependency problems for production.

Hi.
I tried idea1 and it didn't work.
I defined a workflow like below
_export:
  docker:
    image: ruby:latest
    build: ["bundle install"]
  rb:
    require: task/my_workflow

+setup:
  +start:
    echo>: start ${session_time}

+task1:
  rb>: Task::MyWorkflow.step1

and place Gemfile in project root
$ tree
project
├── Gemfile
├── my_worklow.dig
└── task
    └── my_workflow.rb

then run workflow with local mode
$ digdag run my_workflow.dig
2018-05-08 18:33:21 +0900: Digdag v0.9.24
2018-05-08 18:33:23 +0900 [WARN] (main): Using a new session time 2018-05-08T00:00:00+00:00.
2018-05-08 18:33:23 +0900 [INFO] (main): Using session /Users/grezar/workspace/project/.digdag/status/20180508T000000+0000.
2018-05-08 18:33:23 +0900 [INFO] (main): Starting a new session project id=1 workflow name=project session_time=2018-05-08T00:00:00+00:00
2018-05-08 18:33:24 +0900 [INFO] (0018@[0:default]+project+setup+start): echo>: start 2018-05-08T00:00:00+00:00
start 2018-05-08T00:00:00+00:00
2018-05-08 18:33:24 +0900 [INFO] (0018@[0:default]+project+task1): rb>: Task::MyWorkflow.step1
2018-05-08 18:33:24 +0900 [INFO] (0018@[0:default]+project+task1): Building docker image digdag-project-1:7a81509fa33496f7678137f6d4e917fe759d9bf4
Sending build context to Docker daemon  13.31kB
Step 1/2 : FROM ruby:latest
 ---> fb664b54b956
Step 2/2 : RUN bundle install
 ---> Running in b6764606f127
Could not locate Gemfile
Removing intermediate container b6764606f127
The command '/bin/sh -c bundle install' returned a non-zero code: 10
2018-05-08 18:33:26 +0900 [ERROR] (0018@[0:default]+project+task1): Task failed with unexpected error: Docker build failed
java.lang.RuntimeException: Docker build failed
	at io.digdag.standards.command.DockerCommandExecutor.buildImage(DockerCommandExecutor.java:232)
	at io.digdag.standards.command.DockerCommandExecutor.startWithDocker(DockerCommandExecutor.java:69)
	at io.digdag.standards.command.DockerCommandExecutor.start(DockerCommandExecutor.java:53)
	at io.digdag.standards.operator.RbOperatorFactory$RbOperator.runCode(RbOperatorFactory.java:147)
	at io.digdag.standards.operator.RbOperatorFactory$RbOperator.runTask(RbOperatorFactory.java:92)
	at io.digdag.util.BaseOperator.run(BaseOperator.java:35)
	at io.digdag.core.agent.OperatorManager.callExecutor(OperatorManager.java:312)
	at io.digdag.cli.Run$OperatorManagerWithSkip.callExecutor(Run.java:694)
	at io.digdag.core.agent.OperatorManager.runWithWorkspace(OperatorManager.java:254)
	at io.digdag.core.agent.OperatorManager.lambda$runWithHeartbeat$2(OperatorManager.java:137)
	at io.digdag.core.agent.LocalWorkspaceManager.withExtractedArchive(LocalWorkspaceManager.java:25)
	at io.digdag.core.agent.OperatorManager.runWithHeartbeat(OperatorManager.java:135)
	at io.digdag.core.agent.OperatorManager.run(OperatorManager.java:119)
	at io.digdag.cli.Run$OperatorManagerWithSkip.run(Run.java:676)
	at io.digdag.core.agent.MultiThreadAgent.lambda$null$0(MultiThreadAgent.java:127)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
2018-05-08 18:33:26 +0900 [INFO] (0018@[0:default]+project^failure-alert): type: notify
error:
  * +project+task1:
    Docker build failed (runtime)

Task state is saved at /Users/grezar/workspace/project/.digdag/status/20180508T000000+0000 directory.
  * Use --session <daily | hourly | "yyyy-MM-dd[ HH:mm:ss]"> to not reuse the last session time.
  * Use --rerun, --start +NAME, or --goal +NAME argument to rerun skipped tasks.

It seems that bundle install is executed at not digdag workspace (which is created at runtime), but container workdir.

+1 for bundle exec.

Let me note about a current (0.9.33) possible way to use bundler.
(w/o _export: docker:)
+task:
  _env:
    BUNDLE_GEMFILE: /path/to/Gemfile
  rb>: Workflow.foo
  require: tasks/workflow

tasks/workflow.rb
require 'bundler/setup'

(w/ _export: docker:)
+task:
  _export:
    docker:
      image: your_image_bundle_installed_inside
  _env:
    BUNDLE_GEMFILE: /path/to/Gemfile/in/docker
  rb>: Workflow.foo
  require: tasks/workflow

tasks/workflow.rb
require 'bundler/setup'

I dislike to write require 'bundler/setup' to each task file, though.

Also, I tried to use RUBYOPT=-rbundler/setup environment variable, but it did not work well because ruby loads -r option before RUBYOPOT. https://bugs.ruby-lang.org/issues/5445
(this does not work)
+task:
  _export:
    docker:
      image: your_image_bundle_installed_inside
  _env:
    BUNDLE_GEMFILE: /path/to/Gemfile/in/docker
    RUBYOPT: "-rbundler/setup"
  rb>: Workflow.foo
  require: tasks/workflow

digdag rb operator runs ruby like ruby -r tasks/workflow

@hiroyuki-sato told me that digdag >= 0.9.33 allows to specify ruby command, so we can:
bundle_exec_ruby.sh
#!/bin/bash

exec bundle exec ruby $*

sample.dig
+task:
  _export:
    rb:
      ruby: /path/to/bundle_exec_ruby.sh
  rb>: Workflow.foo
  require: tasks/workflow

as long as digdag working directory has Gemfile, Gemfile.lock, .bundle/config.

To make it better https://github.com/treasure-data/digdag/issues/318#issuecomment-466006823, my preference is that:
Idea6: Support multiple require(s) or global require:
+task:
  _export:
    docker:
      image: your_image_bundle_installed_inside
  _env:
    BUNDLE_GEMFILE: /path/to/Gemfile/in/docker
  rb>: Workflow.foo
  requires:
    - bundler/setup
    - tasks/workflow

Idea7: Support ruby custom options:
+task:
  _export:
    docker:
      image: your_image_bundle_installed_inside
    rb:
      option: "-rbundler/setup"
  _env:
    BUNDLE_GEMFILE: /path/to/Gemfile/in/docker
  rb>: Workflow.foo
  require: tasks/workflow

At a first glance,
Idea 5: allow customization of command line:
_export:
  rb:
    ruby: [bundle, exec, ruby, -r, init.rb]  # new option

looks good, but this requires Gemfile, Gemfile.lock, .bundle/config are located at the working directory, and thus, it is not suitable for _export: docker: option.
I mean that, assume we locate these files at /var/lib/ruby inside a docker container. Because digdag mounts project root to the docker working directory, we have to chdir to /var/lib/ruby to run bundle exec, but Idea5 does not have a way to do it.

With >= 0.9.35:
Idea 5: allow customization of command line:
+task:
  _export:
    docker:
      image: your_image_bundle_installed_inside
    rb:
      ruby: [ruby, -rbundler/setup]
  _env:
    BUNDLE_GEMFILE: /path/to/Gemfile/in/docker
  rb>: Workflow.foo
  require: tasks/workflow

is now possible.

@toru-takahashi I close this issue because of PR#1022 may fix this issue. Feel free to re-open if need.


Terminal doesn't appear to correctly handle newlines.

VS Code Version: 1.75.1
OS Version: Linux aiko 6.1.12-arch1-1 #1 SMP PREEMPT_DYNAMIC Tue, 14 Feb 2023 22:08:08 +0000 x86_64 GNU/Linux

https://github.com/microsoft/vscode/issues/134207
I don't agree with the conclusion of that issue.

this is just a property of terminals

On my Linux system if I run a command in the VSCode Terminal, e.g. echo Hello\nWorld. I get the correct behaviour.

If I generate similar output with newlines that is subsequently added to the test using appendOutput, I get different behaviour:

Is the solution here to grep through all the output for newlines and replace them with \r\n?
This behaviour is surprising but it is documented here: https://code.visualstudio.com/api/extension-guides/testing

Because the string is rendered in a terminal, you can use the full set of ANSI codes, including the styles available in the ansi-styles npm package. Bear in mind that, because it is in a terminal, lines must be wrapped using CRLF (\r\n), not just LF (\n), which may be the default output from some tools.

Outputting \n is the default for ALL tools on Linux and Mac AFAIK. I don't know ANY tools that output CRLF as part of their normal output. Can we not make this easier, given that 99% of all tools are going to be affected/impacted by this?
cc @connor4312

cc @Tyriar. Not sure where we had this discussion to reference, any thoughts on this ^?

I checked Ruby implementation, and there is no way to override this from Ruby's side, so there is no easy way for me to write:
USE_CRLF=true ruby run_tests.rb

and get the correct output.
So, to make this work, I'll be stuck adding something like:
	appendOutput(text: String) {
		let lines = text.split(/\r?\n/);
		this.testRun.appendOutput(lines.join('\r\n'));
	}

Or can you suggest something better? And can we find a way to avoid this hack entirely?

Whether we should do this depends on how the test API is designed to work. If it designed such that you can pipe pty output, including colors into it, it's working as designed. If not, ie. no color support, no cursor move support, etc., then it should change to send \r\n when \n is encountered.

If it designed such that you can pipe pty output, including colors into it, it's working as designed

This is the case 👍

The described behavior is how it is expected to work. If you disagree, please explain what is expected and what is not in more detail. See also our issue reporting guidelines.
Happy Coding!

@connor4312 should we call out the \n -> \r\n case here?
https://github.com/microsoft/vscode/blob/dc1c0c1d68cbc5b780158a76ec35aaa203804db7/src/vscode-dts/vscode.d.ts#L16216-L16218

https://github.com/microsoft/vscode/pull/175557

Echo is actually outputting \r\n there which the terminal handles. The fact that the API is designed to pipe tty output through means it must work like this or unexpected things will happen.
Instead of us making new API it would be much easier to just create a wrapper function on your end. Generally we don't add convenient apis like that as new API is heavily scrutinized, especially if you can already do the thing.

@Tyriar If I run echo and capture the output, it only contains a single \n character. So, while the terminal may internally be doing that, I don't believe echo is responsible for that.

it would be much easier to just create a wrapper function on your end

I disagree with this assertion. This bug report and the ones before it show that this behaviour is confusing to users trying to implement code that interacts with the APIs that have been provided, and that the current behaviour is at best unexpected. Your assessment is "it would be much easier" seems to have a suffix "for us maintainers of VSCode". But in fact, the current interface is much more tricky to use correctly for essentially every consumer of that API. So, I don't think it's easier to create a wrapper function and I don't think the current interface is well designed for the most common use case.

Actually here is a better picture of the behaviour of echo:

The fact that the API is designed to pipe tty output through means it must work like this or unexpected things will happen.

This seems like the complete opposite of what should be expected.
I'm assuming that by "pipe tty output" you mean the output from a master TTY device. Yes, in that case, you have, I assume, raw TTY output. But that's not the same as what a command generates when writing into a TTY slave device. I'm assuming this is where the confusion is coming from.
If that's the case, I can experiment launching the process using a master/slave TTY device. Then, perhaps the master TTY will generate the correct \r\n sequence? If so, the documentation for appendOutput should clearly indicate that it's designed for the output from a TTY master device and not for the output of a command.

You need to run the command through a tty in order to get colors working, so you should be getting the expected \r\ns if you do that? @connor4312 added a comment to the API calling this out now so I think there's nothing left to do here given this:

Generally we don't add convenient apis like that as new API is heavily scrutinized, especially if you can already do the thing.


Allow setting proxy auth after PACSession instantiation.

Coverage decreased (-0.4%) to 97.236% when pulling 8441e997b1fe1989c423ab3c7ad52f5d2b1beced on post-init-proxy-auth into 352fa2fe950ad47a63be8f5b54724a4ee1f46c3a on master.