Feat: Add unit tests

This PR add some unit tests.

:tada: This PR is included in version 2.1.0-stage.1 :tada:
The release is available on:

npm package (@stage dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Question] not all cap names are extracted from terminfo database?

When I browse the dynamic.go.  I notice only three boolean cap names are extracted from terminfo database. Which is Tc, RGB and npc.
Could you tell me why?

I only extract the ones that I am going to use.  There are a ton of capabilities in terminfo that we don't use at all and there is no point bloating the database to keep them.

OK, can u make terminfo a separate go module, so  anyone can update it?

I'd rather not.  You can just use the terminfo package directly and it does have a parser for terminfo databases, which you can make use of.
My own local database (which is pre-extracted) is for tcell's own use.  It isn't really intended to support other applications per se.
Out of curiosity, is there a specific capability that you're wanting?

bce, ech, and smcup, rmcup are my concern. I am still evaluating the best way to reuse the tcell effort.

So I think I get all those except ech. The concern with ech for tcell is consistent handling across implementations. Since tcell uses a cell based view of the screen it isn't necessary - we just overwrite a cell with a space to effect an erase.
But if you want to make a line editor then maybe you want something that erases and moves the content afterwards.

So we use "clear" rather than "bce".  If you look, bce is not well supported by common terminals.  For example, the terminfo entry for xterm256-color on Darwin doesn't have an entry for it.
Conversely, "ech" is supported, but largely (IMO) redundant to echoing a space.  The one advantage it offers is a little more efficiency if you have to clear many characters (for example clearing most of a row), because you send fewer characters.  But you really need to be clearing at least 5 characters to obtain any gain.
I'd be open to extending the terminfo descriptions to include this, and to optimizing tcell to minimize what it sends using this escape.  However, there are some caveats; for example see the "xhp" and "eo" capabilities.
There may be more useful sequences as well: "el" for clearing to the end of the line (useful for line editors, but see also "el1"), and "ed".   However, most of the time these sequences are going to be useful in applications that are not full screen oriented but rather in line editing type applications, where the end and bottom of the screen from the cursor position should be cleared.  If you have a full screen application with a border, or displayed elements at the bottom, then this is probably less efficient.
Btw, for line editors, there are other capabilities that are interesting as well, "dl", "dl1", "il", "il1".
I'd possibly be willing to extend the terminal database to hold these properties for use by such applications.  One could imagine making a readline type library on top of those capabilities.

Thanks for your time and answer.
What I am trying to do is to rewrite mosh with golang. It is here aprish.  Basically, it's a terminal emulator.  It  needs to accept and understand the escape sequence, using them to modify the server screen and sync the screen state to the client side.
What I need is a set of  low-level terminfo routines. Which I can use to initialize (likesetupterm() in c++) the terminal and query the terminfo DB with t.GetNum(), t.GetString(), t.GetBool. Then I can use TPuts(), TParm(), TGoto(), `TColor() to send the screen state to client. Hope my project can explain why I need such kind of terminfo capability.
BTW, here is my infocmp output from my Mac:
qiwang@gauss /etc % infocmp -x -1 xterm-256color | grep ech
        ech=\E[%p1%dX,
qiwang@gauss /etc % infocmp -x -1 xterm-256color | grep bce
        bce,

The application API provided by tecll will not be used by the project. That's why I think a separate terminfo golang module is suitable for the project.
The original mosh project uses escape sequence directly in c++ code. I want to rewrite it with terminfo cap. Later, I may find more terminfo capability is needed by the project.
BTW, in mkinfo.go file, smcup and rmcup capability is injected into Terminfo struct.  I didn't find any code realted to bce and ech capability.


editor.action.formatDocument vs ESLint rules

I sometimes use editor.action.formatDocument (Shift+Alt+F) after cutting/pasting.
I also use ESLint to detect (among others) formatting issues.
I notice these two aren't agreeing on correct formatting.
Here's a demo of Shift+Alt+F introducing ESLint warnings:

Is there a way to make formatDocument (or formatSelection) respect my ESLint formatting rules?

@czak not that I am aware of. To get this working you would need to file an issue against VS Code since the JS/TS formatter would have to respect this.


Added link to New Relic agent install doc

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Please delete this note before submitting the pull request.
For 1.14 Features: set Milestone to 1.14 and Base Branch to dev-1.14
For Chinese localization, base branch to release-1.12
For Korean Localization: set Base Branch to dev-1.13-ko.
Help editing and submitting pull requests:
https://kubernetes.io/docs/contribute/start/#improve-existing-content.
Help choosing which branch to use:
https://kubernetes.io/docs/contribute/start#choose-which-git-branch-to-use.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

CLA signed.

Thanks for the PR, @jfjoly!
Preview: https://deploy-preview-13157--kubernetes-io-master-staging.netlify.com/docs/concepts/workloads/controllers/daemonset/
/lgtm
/approve


Pass error details

Hi, this PR adds things like the line and column number of parse errors.
I've bumped gulp-util because its only in later versions that it copies an error's metadata
Old error:
[11:02:17] Error in plugin 'gulp-toml'
Expected "#", "\n", "\r" or [ \t] but "s" found.

New error:
[11:00:07] SyntaxError in plugin 'gulp-toml'
Message:
    Expected "#", "\n", "\r" or [ \t] but "s" found.
Details:
    expected: [object Object],[object Object],[object Object],[object Object]
    found: s
    offset: 3915
    line: 117
    column: 24


Implement stubs for REST API endpoints

In Invenio-Records-Resources and Invenio-Drafts-Resources.

[x] /records: GET, POST
[x] /records/:id: GET, DELETE
[x] /records/:id/versions GET, POST
[x] /records/:id/files: GET
[x] /records/:id/files/:key GET
[x] /records/:id/files/:key/download GET
[x] /user/records GET
[x] /records/:id/draft: GET, POST, PUT, DELETE
[x] /records/:id/draft/actions/:action: POST
[x] /records/:id/draft/files GET, POST, PUT, DELETE
[x] /records/:id/draft/files/:key: GET, PUT, DELETE
[x] /records/:id/draft/files/:key/download GET

Flask-resources doesn't currently support:

/records/:id/draft: GET and POST (one or the other is possible)
/records/:id/draft/files PUT, DELETE

@fenekku what about the singleton resource? I think it does support all those no? Might need some work since it fell behind in changes I think.
In any case it does contain all the methods needed: https://github.com/inveniosoftware/flask-resources/blob/master/flask_resources/views/singleton.py

For /records/:id/draft/files we could... but the semantics are getting weird

but actually for the others it makes sense and moving some stuff around makes everything good potentially. Thanks @ppanero !

Added update_all and delete_all to CollectionResource to make it possible and converted one of the CollectionResource to SingletonResource.

PR for records stubs still pending: need to figure out /records url routing issue.


Multiple Postgres Database Projects cause reference schema to be overwrtten

Hello,
Multiple projects being deployed to same postgres database on Cloud Foundry cause the reference schema to be overwritten and dropping of CDS views for other project.
I have two projects both deploying to same postgres database in cloud foundry. At the time of deploy I am not able to specify the dbname. This causes both projects to refer to same database. The reference schema provided in the package.json of each project is not honored. This particular code is not going inside the if statement.

Each MTA file deployed on cloud foundry work independently. But the moment I deploy the second MTA the CDS views for the first MTA are getting deleted due to shared reference schema. And hence the first MTA stops function after second MTA deploy.
Please help

Workaround for above problem: Get the script for the deploy generated view from the postgres console. Save the scripts.
Every time a deploy wipes out the views, regenerate them using the saved script. Remember to get an udpated script every time the view updated for a project.

Any update on this please? I have multiple CAP projects in postgres DB and deploy a project causes the views of other projects to be dopped.


accessible ActionSelect

⚠⚠⚠ Since we do not accept all types of pull requests and do not want to waste your time. Please be sure that you have read pull request rules:
https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma
Tick the checkbox if you understand [x]:

[x] I have read and understand the pull request rules.

Description
As noted in https://github.com/louislam/uptime-kuma/pull/4122, the current system is not quite accessible. This PR fixes one of our components not having the correct tags.
Type of change
Please delete any options that are not relevant.

Bug fix (non-breaking change which fixes an issue)
User interface (UI)

Checklist

[x] My code follows the style guidelines of this project
[x] I ran ESLint and other linters for modified files
[x] I have performed a self-review of my own code and tested it
[x] I have commented my code, particularly in hard-to-understand areas (including JSDoc for methods)
[x] My changes generates no new warnings
[ ] My code needed automated testing. I have added them (this is an optional task)

Screenshots (if any)
no visual change ⇒ not really usefull

Will rebase


Application Launch issue

Hi,
I really like the over all concept of the visualization and I tried to run the dev server on my local and struck with below issue. Could you please help me with this?
getting this error when i attempt to run "npm run both" and i  see blank screen after that.

Hey @krishnasreeram, you need to run npm run build before running npm run both. Thanks for sharing this, I'll be sure to update the readme!

Hey @hemwatie, thanks for quick turnaround. yes, npm run build was done before running npm run both. We still see the error even after that.


Feature/bash completions

i can rebase off original PR to make diff cleaner once that's merged. the only code I'm talking about here is in the

;; completions {{{
...
;;;}}}

section... fun vim folding thing

i spent way too much time trying to get a more slsh native version of this function and

completely failed to get it working for completions that required loading _completion_loader (no idea why)
introduced 2-3 bash sources which are ~1.5 hundredths of a second each which is pushing it

I used the bash builtin time fcn... we might should have one of those?)
https://input-delay.glitch.me/ to demo what keyboard lag can be like

so, given you support multiline strings out of the box and bash -c doesn't barf when I hand it a string with a bash function inside, this seems to be the most elegant solution (where elegant means least ugly given what we're doing here).
issue of, trimming the " mark off each of the elements in the list returned by the (get-bash-completion) fcn, ... I'll do that.
larger issue of, when do we not call the completion loader... given that it will usually return something?

best idea I have thus far is ONLY using the completion loader if it does need to call _completion_loader?
i.e. in the get_completions fcn, simple bash functions like cd, don't need to load more complicated completion functions in /usr/share/bash-completion/completions/... perhaps this is the best proxy? if that makes sense?

lastly, I can re-write the src copied from bash, it will not be as elegant as the original, but only reason to do so would be if licenses are incompatible (which they aren't) or if you don't like the way this works at all...
i had trouble externalizing this functionality into  a separate .lisp file in the lisp dir so that's another reason I wanted feedback/help

So I merged the other request and this one merged as well for some reason...  Need to figure out how I managed that for future merges...
For added a seperate file to the config directory did you try "load ~/.config/sl-sh/file-name.lisp?  I will test that later but that should be the simplest way to do it.


[TODO] Make LM for ASR

Add lm for ASR

Just some useful information here.
@tanamettpk from  suggested that pyctcdecode is applicable to do a beam search given a sequence of model logits and n-gram LM (.arpa format).
In my opinion, pyctcdecode should work just fine, but I saw many official ASR libraries like NVIDIA's NeMo, deepspeech2, and others use baidu's ctc-warp. Therefore, I'm not sure which library should be used for the LM rescoring as pyctcdecode might be easier to implement but will definitely be slower that ctc-warp as it is implemented in C++.
All in all, I just want to provide you a quick guidelines for your libraries to look for:

[ ] pyctcdecode
[ ] ctc-warp

PS. In case that you work on one of these libraries, please reply to my comment. I would like to implement another library that you will not choose, and let's compare if there's any significant difference.


[SPARK-31767][PYTHON][CORE] Remove ResourceInformation in pyspark module's namespace

What changes were proposed in this pull request?
This PR proposes to only allow the import of ResourceInformation as below:
pyspark.resource.ResourceInformation

instead of
pyspark.ResourceInformation
pyspark.resource.ResourceInformation

because pyspark.resource is a separate module, and it is documented so.
The constructor of ResourceInformation isn't supposed to directly call anyway.
Why are the changes needed?
To keep the code structure coherent.
Does this PR introduce any user-facing change?
No, it will be in the unreleased branches.
How was this patch tested?
Manually tested via importing:
Before:
>>> import pyspark
>>> pyspark.ResourceInformation
<class 'pyspark.resource.information.ResourceInformation'>
>>> pyspark.resource.ResourceInformation
<class 'pyspark.resource.information.ResourceInformation'>

After:
>>> import pyspark
>>> pyspark.ResourceInformation
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: module 'pyspark' has no attribute 'ResourceInformation'
>>> pyspark.resource.ResourceInformation
<class 'pyspark.resource.information.ResourceInformation'>

Also tested via
cd python
./run-tests --python-executables=python3 --modules=pyspark-core,pyspark-resource

Jenkins will test and existing tests should cover.

This can be backported to branch-3.0 as well.

Test build #122872 has started for PR 28589 at commit b4d215e.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/27515/
Test PASSed.

Test build #122872 has finished for PR 28589 at commit b4d215e.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/122872/
Test PASSed.

Thank you @dongjoon-hyun.

Yea, LGTM too.

@HyukjinKwon ResourceInformation is now in a different module between spark 3.0 and 3.1. Even though users shouldn't be constructing one its still a public api.  I left it the way it was to keep it consistent.  It seems like we should put them in the same place between 3.0 and 3.1

@tgravescs, yeah, I understand the initial intention. The problem I would like to address here is that don't expose ResourceInformation under pyspark with a minimised change as it became a separate package in the master - it will be difficult to hide it back once it's exposed.
To end users, there are no differences. We can even move this file into a separate module for consistency after the reelase. I thought it's worthwhile not worthwhile to do it during RC period, and came up with a minimised fix.
If you strongly feel it should be as a package for dev purpose, I wouldn't mind.


Cannot access class "Constraint"

New Issue Checklist

I have looked at the Documentation: INSERT yes/no
Yes

I have read the F.A.Q.: INSERT yes/no
Yes

Platform is: INSERT iOS/OSX/tvOS
iOS

Platform version is: INSERT PLATFORM VERSION
9.1

SnapKit version is: INSERT SNAPKIT VERSION
0.19.1

Integration method is: INSERT carthage/cocoapods/manually/other
CocoaPods

Issue
INSERT ISSUE DESCRIPTION
I want to preserve constraint on a var using:
self.snp_makeConstraints { (make) -> Void in             self.heightConstraint = make.height.equalTo(100).constraint         }
However, for declaration, if I declare as:
   var heightConstraint:Constraint? = nil
It gives error of undeclared type 'Constraint'
The Constraint class is also declared as public.

@harit just to double/triple check you do have an import SnapKit at the top of your Swift file yes? Sometimes you can access extensions w/o an import but as soon as you reference class types you need the import.

@robertjpayne Oh right. Good catch. My project is compilable after I declare import SnapKit.
Please discard this issue.
Thanks a ton!


Freezing when annotations.xml file is missing

When I missed the step of uploading annotations into the folder, running the rasterization process freezes. While it sound like some process is ongoing.
Input command:
 ./vsm/build/bin/cvat_vsm -r /home/rita/Documents/kappazeta/data/S2A_MSIL2A_20200509T094041_N0214_R036_T35VMF_20200509T111504.CVAT/tile_256_2816/annotations.xml -n /home/rita/Documents/kappazeta/data/S2A_MSIL2A_20200509T094041_N0214_R036_T35VMF_20200509T111504.CVAT/tile_256_2816/bands.nc

Output:
Vectorization and splitting tool for CVAT.
Running with the following dependencies:
 GDAL 2.2.3 (20171120)
 OpenJPEG 2.3.0
 MagickLib 1.3.28

/home/rita/Documents/kappazeta/data/S2A_MSIL2A_20200509T094041_N0214_R036_T35VMF_20200509T111504.CVAT/tile_256_2816/annotations.xml

Should be fixed.


Audit covariant usage in tool

Same as https://github.com/flutter/flutter/pull/114112 but kicking google testing again.

Remove covariant where possible to avoid subtle null safety issue.  Where it's still useful, remove from base class and push covariant into overrides to by-default enforce nullability where covariant isn't needed.
See https://dart.dev/guides/language/sound-problems#the-covariant-keyword about how this suppresses the analyzer.

Some (rarely used) coding patterns rely on tightening a type by overriding a parameter’s type with a subtype, which is invalid. In this case, you can use the covariant keyword to tell the analyzer that you are doing this intentionally. This removes the static error and instead checks for an invalid argument type at runtime.

This will need a g3fix.
Note I left the covariant in startApp.  That one is really a mess since most subclasses do expect it to be non-null, but it is legitimately called as null in the web case.  I guess we can leave that one for now until it causes issues...
https://github.com/flutter/flutter/blob/156c313219a21ac97ff84fe76743c35463ef0fdb/packages/flutter_tools/lib/src/isolated/resident_web_runner.dart#L242-L245
Fixes https://github.com/flutter/flutter/issues/114090
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

g3Fix is at cl/494878274 but due to b/256180614 I can't rerun the tests with the fix, or mark Google Testing as passing.  It's not even showing up in the framework g3fixes list anymore. Going to merge this manually.


Properly hit detect circles after updating size

After calling circle.setRadius() with a new radius, circles are no longer properly hit detected.  This is because we keep around the old hit detection image.
This change makes it so we clear the hit detection image in the render call if the size doesn't match the previous size.  The new test demonstrates that the hit detection image is properly updated when requested after a setRadius call.
I pulled this out of #15141 after discovering it while trying to make that example.

This should also be done when the fill or stroke style is changed.
Might be best to reset the hit detection canvas unconditionally?
For simplicity move the setRadius function to RegularShape (and add a setRadius2 function?

This should also be done when the fill or stroke style is changed. Might be best to reset the hit detection canvas unconditionally? For simplicity move the setRadius function to RegularShape (and add a setRadius2 function?

I considered adding an arg to render that would let callers decide if the hit detection image was invalid.  That would let setStroke compare width or maybe setFill compare null/non-null changes.  But I didn't really want to write the hit detection tests to validate this all worked as expected and was really only facing a change due to circle size, so I opted for a fix of just that issue.
But if I find more time/energy, I may push another change.  If anybody else wants to push another commit that fixes other related issues, feel free.

This should also be done when the fill or stroke style is changed. Might be best to reset the hit detection canvas unconditionally?

The latest commit unconditionally removes the hit detection canvas in the render call (this method should be renamed).

For simplicity move the setRadius function to RegularShape (and add a setRadius2 function?

I'm going to leave this as an improvement for hit detecting circles.  This also improves the situation for hit detecting all regular shapes in cases where stroke or fill changes should change the hit detection behavior.  I'll leave it for a separate change to make it possible to update the radius for all regular shapes.


The commit merged by the pull request has been rolled back to the original version.

This commit...Why?
https://github.com/ShankarBUS/ModernFlyouts/commit/15e25fc76232e149c18892dc61d7ecdb50337452#diff-e1cc1d62206cc0373ab0a3b75e9c0e316ab1deab6937b05cb80f152b025b997c

We're really sorry 😅.
If you don't mind could you update those translations again.
Sorry for this merge issues.
We're relatively new to "git" and don't have any experience.
Merge issues and commit reversion is something we try to avoid.
But due to our lack of experience, we keep forgetting to sync our local clone before committing.
We will try to avoid this in the future.

#234 was the PR btw


Set tab title as early as possible

When opening a new tab, it takes a few milliseconds before title to
appears. This PR makes it instantaneous.

Updated the Terminal so that it can load the title from the settings
before it is initialized.
Load terminal settings in TermControl constructor before the terminal
is initialized (see above).
Update Tab so that it sets the TabViewItem's title in the constructor
(in Tab::_MakeTabViewItem) instead of waiting for the VT sequence to
set the title (from what I understand).

NOTE 1: there is a similar problem with the tabview icon which is not
fixed by this PR.
NOTE 2: This is only a problem with animations disabled because
otherwise the title fades in so there is enough time for it to be set
when it becomes visible.
Validation
I ran the terminal and opened a new tab. The title appears instantly.

Note: there is a similar problem with the tabview icon which you can see in my first GIF and which is not fixed by this PR.

@msftbot merge this in 1 minute


Add bazel targets for test protos

So they can be referenced by other repos that use bazel.

The BAZEL.build files are supposed to be as close to the source as possible, it's only when bootstrapping non-bazel repos, that the BAZEL.build files end up in the root.
This matches what we ended up doing for protovalidate: https://github.com/bufbuild/protovalidate/tree/main/proto/protovalidate


unable to use third-party crates rust-crypto and ring

I would like to use either rust-crypto or ring inside the enclave, both exist in the sgx/third_party folder. For rust-crypto, I use Cargo.toml
[dependencies]
rust-crypto = { path = "../../../third_party/rust-crypto" }

and lib.rs:
extern crate crypto;

For ring:
[dependencies]
ring = { path = "../../../third_party/ring" }

and
extern crate ring;

Both give the same error:
make -C ./enclave/
make[1]: Entering directory '/root/sgx/bft/tc/enclave'
cargo build --release
    Updating crates.io index
   Compiling ring v0.13.2 (/root/sgx/third_party/ring)
   Compiling tc v0.1.0 (/root/sgx/bft/tc/enclave)
error: the #[global_allocator] in sgx_tstd conflicts with this global allocator in: sgx_tstd

error: duplicate lang item in crate `sgx_tstd`: `f32_runtime`.
  |
  = note: first defined in crate `sgx_tstd`.

error: duplicate lang item in crate `sgx_tstd`: `f64_runtime`.
  |
  = note: first defined in crate `sgx_tstd`.

error: duplicate lang item in crate `sgx_tstd`: `panic_impl`.
  |
  = note: first defined in crate `sgx_tstd`.

error: duplicate lang item in crate `sgx_trts`: `oom`.
  |
  = note: first defined in crate `sgx_trts`.

error: aborting due to 5 previous errors

error: Could not compile `tc`.

To learn more, run the command again with --verbose.
Makefile:42: recipe for target 'libenclave.a' failed
make[1]: *** [libenclave.a] Error 101
make[1]: Leaving directory '/root/sgx/bft/tc/enclave'
Makefile:165: recipe for target 'enclave' failed
make: *** [enclave] Error 2

I saw #31 and tried default-features = false with both crates, but the error remains. What is going on here, and can you please suggest a fix or workaround?
What does it mean when a crate is in the sgx/third_party folder?

I just realized the error in #31 refers to std, which is not the same as my error.
Maybe it's relevant: My project is based on the hello-rust samplecode. Adding the lines above to its enclave/Cargo.toml and enclave/src/lib.rs also gives the error.

@sonea-pm8
This means a collision of "sgx_tstd" and "sgx_tstd". If you look into the hello-rust sample code, you'll find that it depends on sgx_* crates fetched from github directly as:
sgx_types = { rev = "v1.0.8", git = "https://github.com/baidu/rust-sgx-sdk.git" }
sgx_tstd = { rev = "v1.0.8", git = "https://github.com/baidu/rust-sgx-sdk.git" }

So if you put something like ring = { path = "../../../third_party/ring" } there, ring in that directory would depends on local sgx_* crates, instead of fetch them from github. So there are two sgx_tstd, one from local, and one from github -- they cannot live together.
I'm maintaining forks for third_party crates, and finally I'll remove the third_party dir and replace it with an index of those forks. The proper way to use ring in hello-rust sample is to use the fork like
[dependencies]
ring = { git = "https://github.com/mesalock-linux/ring-sgx" }

One sample usage is at the ported webpki at
https://github.com/mesalock-linux/webpki/blob/1f0412bb199158191bd96b5d1d28939e1d7a245d/Cargo.toml#L70

That was it, thank you


autofocus attribute buggy in Firefox 44.0.x thru current

We might want to consider Firefox's support of the autofocus attribute incomplete as there is an outstanding bug creating issues of users getting scrolled to wrong positions of the page https://bugzilla.mozilla.org/show_bug.cgi?id=712130
Firefox fires autofocus before the page is styled. Because the height of everything changes it results in users being put into the wrong position to see the field that is being focused. In the case of a current project I am working on because the navbar code is tall without styling this results in users ending up at the bottom of the page.

Thanks, added as a known issue.


feat(tray): implement tray menu

Background

#1287
Keep opening advanced search for changing lyric provider / sync frequently can be quite annoying

Changes

Add tray menu for quick adjustment of lyric settings

Screenshot

It seems to be better if visibility of the text in the top panel enhance


Use collection expression syntax

This mini PR will use collection expression syntax where applicable.
closes #6

Pull Request Test Coverage Report for Build<PHONE_NUMBER>2
Details

1 of 3 (33.33%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 38.473%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/DendroDocs.Shared/Descriptions/DocumentationCommentsDescription.cs
0
2
0.0%

Totals

Change from base Build<PHONE_NUMBER>2:
0.0%

Covered Lines:
189

Relevant Lines:
459

💛  - Coveralls


Add section on internal telemetry to Collector security docs

Desired feature or idea: As an iteration on the Collector security docs, we should add a section about internal telemetry.
Additional context: Here are the notes from the section that were removed from the first version of the docs:

Collector's internal telemetry
INSERT RECOMMENDATIONS HERE. For example:

Remove zPages. [Explanation]
Remove configuration endpoints. [Explanation]

Related to #5209.

I'm blocking this until #5209 is merged.


Last release didn't get published to pypi

1.3.0 publish workflow failed with following error
ERROR    HTTPError: 400 Bad Request from https://upload.pypi.org/legacy/
         The description failed to render in the default format of
         reStructuredText. See https://pypi.org/help/#description-content-type
         for more information.
Error: Process completed with exit code 1.

I have the same error on another plugin so I am interested in knowing the fix :-)

https://packaging.python.org/en/latest/guides/making-a-pypi-friendly-readme/

following this link I ended up with this check:

Found it, the culprit was this extra space line 65

:-D

:-D


Migration docs for rasa_core 0.12.x - > 0.13

Detail what changes are necessary to upgrade

Merged


VS2015 not compatible with Dotnet CLI

Hi,
I do apologize in advance, if this is not the place for posting this issue but I am having really hard time dealing with it and understanding why is it happening.
I cannot make VS2015 work with dotnet cli - I would like to edit and test may dotnet-core project using VS2015 and then have the ability to compile & run it using dotnet cli. However all my attempts to make it so were not successful, which is not ideal - I am aming for writing code on Windows and then using Travis-Ci for bulding.
So this is what is happening:
VS2015 -> Dotnet cli
If I create VS2015 “Console Application” Project (Target .Net Framework 4.6.1) for net-core, I get the following project.json:
{
  "version": "1.0.0-*",
  "description": "ConsoleAppTest Console Application",
  "authors": [ "Nemo" ],
  "tags": [ "" ],
  "projectUrl": "",
  "licenseUrl": "",

  "compilationOptions": {
    "emitEntryPoint": true
  },

  "dependencies": {
  },

  "commands": {
    "ConsoleAppTest": "ConsoleAppTest"
  },

  "frameworks": {
    "dnx451": { },
    "dnxcore50": {
      "dependencies": {
        "Microsoft.CSharp": "4.0.1-beta-23516",
        "System.Collections": "4.0.11-beta-23516",
        "System.Console": "4.0.0-beta-23516",
        "System.Linq": "4.0.1-beta-23516",
        "System.Threading": "4.0.11-beta-23516"
      }
    }
  }

This project compiles and runs just fine when used by VS2015.
But as net-core point is cross-platform compatibility, I would like to restore and build it via dotcore cli (and for example, do CI builds on Travis-ci).
When running dotnet restore inside this project, I get the following error:
log  : Restoring packages for {my_path}\Projects\ConsoleAppTest\src\ConsoleAppTest\project.json...
error: System.Console 4.0.0-beta-23516 provides a compile-time reference assembly for System.Console on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
error: System.Threading 4.0.11-beta-23516 provides a compile-time reference assembly for System.Threading on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
error: System.Dynamic.Runtime 4.0.0 provides a compile-time reference assembly for System.Dynamic.Runtime on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
error: System.Linq.Expressions 4.0.0 provides a compile-time reference assembly for System.Linq.Expressions on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
error: System.IO 4.0.0 provides a compile-time reference assembly for System.IO on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
error: System.Threading.Tasks 4.0.0 provides a compile-time reference assembly for System.Threading.Tasks on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
error: System.Text.Encoding 4.0.0 provides a compile-time reference assembly for System.Text.Encoding on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
error: Some packages are not compatible with DNXCore,Version=v5.0 (win7-x64).
error: System.Console 4.0.0-beta-23516 provides a compile-time reference assembly for System.Console on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
error: System.Threading 4.0.11-beta-23516 provides a compile-time reference assembly for System.Threading on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
error: System.Dynamic.Runtime 4.0.0 provides a compile-time reference assembly for System.Dynamic.Runtime on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
error: System.Linq.Expressions 4.0.0 provides a compile-time reference assembly for System.Linq.Expressions on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
error: System.IO 4.0.0 provides a compile-time reference assembly for System.IO on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
error: System.Threading.Tasks 4.0.0 provides a compile-time reference assembly for System.Threading.Tasks on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
error: System.Text.Encoding 4.0.0 provides a compile-time reference assembly for System.Text.Encoding on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
error: Some packages are not compatible with DNXCore,Version=v5.0 (win7-x86).
info : Committing restore...
log  : Restore failed in 520ms.

Errors in {my_path}\Projects\ConsoleAppTest\src\ConsoleAppTest\project.json
    System.Console 4.0.0-beta-23516 provides a compile-time reference assembly for System.Console on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
    System.Threading 4.0.11-beta-23516 provides a compile-time reference assembly for System.Threading on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
    System.Dynamic.Runtime 4.0.0 provides a compile-time reference assembly for System.Dynamic.Runtime on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
    System.Linq.Expressions 4.0.0 provides a compile-time reference assembly for System.Linq.Expressions on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
    System.IO 4.0.0 provides a compile-time reference assembly for System.IO on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
    System.Threading.Tasks 4.0.0 provides a compile-time reference assembly for System.Threading.Tasks on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
    System.Text.Encoding 4.0.0 provides a compile-time reference assembly for System.Text.Encoding on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x64.
    Some packages are not compatible with DNXCore,Version=v5.0 (win7-x64).
    System.Console 4.0.0-beta-23516 provides a compile-time reference assembly for System.Console on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
    System.Threading 4.0.11-beta-23516 provides a compile-time reference assembly for System.Threading on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
    System.Dynamic.Runtime 4.0.0 provides a compile-time reference assembly for System.Dynamic.Runtime on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
    System.Linq.Expressions 4.0.0 provides a compile-time reference assembly for System.Linq.Expressions on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
    System.IO 4.0.0 provides a compile-time reference assembly for System.IO on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
    System.Threading.Tasks 4.0.0 provides a compile-time reference assembly for System.Threading.Tasks on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
    System.Text.Encoding 4.0.0 provides a compile-time reference assembly for System.Text.Encoding on DNXCore,Version=v5.0, but there is no run-time assembly compatible with win7-x86.
    Some packages are not compatible with DNXCore,Version=v5.0 (win7-x86).

NuGet Config files used:
    {another_path}\AppData\Roaming\NuGet\NuGet.Config

Feeds used:
    https://api.nuget.org/v3/index.json

The same error appears while attempting to dotnet restore it on Ubuntu 14.04 Trusty in Travis CI, but except win7-x86 is replaced with Ubuntu.
Dotnet CLI -> VS2015
If I create a new project using dotnet new command, I get the following project.json:
{
    "version": "1.0.0-*",
    "compilationOptions": {
        "emitEntryPoint": true
    },

    "dependencies": {
        "NETStandard.Library": "1.0.0-rc2-23811"
    },

    "frameworks": {
        "dnxcore50": { }
    }
}

This project compiles and runs just fine when run from dotnet command.
But I would like to make it work with VS2015 as it is very comfortable IDE – so I open project.json as a project, everything seems to be working (no conflicts or errors in dependencies shown).
I add commands entry to json: “commands”: { “ConsoleAppTest2”: “ConsoleAppTest2”} and hit CTRL+F5  - I am therefore greeted with following error:
System.IO.FileLoadExpection: Could not load file or assembly 'System.Runtime, Version=<IP_ADDRESS>, Culture=neutral, PublicToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definiton does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'System.Runtime, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
    at System.Reflection.RuntimeAssembly.GetEntryPoint(RuntimeAssembly assembly, ObjectHandleOnStack retMethod)
    at System.Reflection.RuntimeAssembly.get_EntryPoint()

I have just started working with net-core and have no clue how to solve this.
I fear it might have to do with VS2015 using old version of dotnet core ( while opening dotnet new created project, VS2015 output of restoring packages contains the following line:
C:\Users\{user}\.dnx\runtimes\dnx-clr-win-x<IP_ADDRESS>-rc1-update2\bin\dnx.exe ).
If this is of importance, I have installed dotnet cli from msi.install long after VS2015 was installed.
Stats
The stats I think may be useful:
OS: Windows 10 x64 En
VS: Visual Studio Enterprise 2015 Version 14.0.25123.00 Update 2 (I am up to date all suggested updates)
Result of running dnx --version:
Microsoft .NET Execution environment
 Version:      1.0.0-rc1-16609
 Type:         CoreClr
 Architecture: x64
 OS Name:      Windows
 OS Version:   10.0
 Runtime Id:   win10-x64

Result of running where dnx:
C:\Users\{{user}}\.dnx\runtimes\dnx-coreclr-win-x<IP_ADDRESS>-rc1-update2\bin\dnx.exe

Result of running dnvm version: 1.0.0.rc1-15540
Result of running where dnvm:
C:\Users\{{user}}\.dnx\bin\dnvm.cmd
C:\Program Files\Microsoft DNX\Dnvm\dnvm.cmd

Result of running dotnet --version:
.NET Command Line Tools (1.0.0-beta-001598)

Product Information:
 Version:     1.0.0-beta-001598
 Commit Sha:  7582649f88

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.10586
 OS Platform: Windows
 Runtime Id:  win10-x64

Result of running where dotnet:
C:\Program Files\dotnet\bin\dotnet.exe

RC2 and release of .NET Core Tooling Preview 1 for Visual Studio 2015 has fixed everything.


Notes/Preview buttons (and everything else on that row in the UI) disappears

If I refresh the page, the buttons and other items in that row come back.

@overZellis133 I'm having difficult reproducing that bug. Is it possible to outline the steps required to reproduce? Thanks

This happened to me, at the same time the Notes field wouldn't scroll down as I typed off the bottom of one page. Nothing special about the prior conditions: I loaded a video then waited a while before I used the instance. Refreshing the page seems to do the trick and bring back the buttons. Also, just copying into another instance. This was on W10, Chrome.


Investigate Fishy Record Names in Optimizer Core

Follow-up form here:
https://github.com/scala-js/scala-js/blob/244fa5307edd253332b46a97408e198672b387a6/linker/shared/src/main/scala/org/scalajs/linker/frontend/optimizer/OptimizerCore.scala#L1236-L1240

I've been playing around with this and so far, I have not actually managed for the optimizer to produce a Record.
Either, the local def system already resolved everything before even creating a record (this is what happened here: https://github.com/scala-js/scala-js/pull/4946#discussion_r1493338408) or the optimizer cancelled the inlining.
@sjrd how did you determine the piece of code in question is not dead code? I'm starting to suspect that it only triggers for RuntimeLong (where we have more aggressive class inlining policies).

@sjrd how did you determine the piece of code in question is not dead code? I'm starting to suspect that it only triggers for RuntimeLong (where we have more aggressive class inlining policies).

Replace it by ??? and try testSuite2_12/Test/fastLinkJS. It blows up.
In order for a record to be reified, I believe we need at least an if/else where both branches return an instance of the inline class. Or any other merge point. So that's maybe what we need to add to https://github.com/scala-js/scala-js/pull/4946#discussion_r1493338408

I managed to find a problematic program:
class A {
  private val x: Int = 1
  def foo = x
}

@inline
class B extends A {
  private val x: String = "f"
  def bar = x
}

object HelloWorld {
  @noinline
  def p(x: Any) = println(x)

  @noinline
  def test: Boolean = false

  def main(args: Array[String]): Unit = {
    val b =
      if (test) new B()
      else new B()

    p(b.foo)
    p(b.bar)
  }
}

The main method links to:
$c_Lhelloworld_HelloWorld$.prototype.main__AT__V = (function(args) {
  if (this.test__Z()) {
    var b__x = 1;
    var b__x$1 = "f";
  } else {
    var b__x = 1;
    var b__x$1 = "f";
  }
  this.p__O__V(b__x);
  this.p__O__V(b__x); // should be b__x$1
});

Nice catch!


support for Swift 3

Swift 3 support introduced in https://github.com/Electrode-iOS/ELCodable/releases/tag/v3.0.0


build(test-utils): marking test-utils as non private so it can be published

Follows https://github.com/open-telemetry/opentelemetry-js-contrib/pull/596
Which problem is this PR solving?

#595
#621
To my knowledge, there was no objection for it to be published to npm.
We can discuss here or on the original issue if this is not ok for any reason

Short description of the changes

mark test-utils as non private (so it can be published to npm)
add missing LICENCE file
add "files" section to package.json to state which files should be included in a release
rename test-utils to contrib-test-utils

LGTM. @dyladan hopefully this can go out in contrib release 0.25.0 so we can unblock the ext-js migrations ASAP!

@dyladan Fixed the conflicts and now tests are green


feat(app): update to support meeting part override

:tada: This PR is included in version 1.4.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Reenable obstacles in 2025 rearchitect

https://github.com/SleipnirGroup/Choreo/pull/562 for reference

Superseded by #733.


Update nodejs version to ^14.0.0

Update the nodejs version to "^14.0.0"
-> the default behavior for the internalization changed, thus there are some changes in the date formatting

Seems like Cloudflare Worker doesn't use Node.js and uses V8 directly. So in this case, I'd stick to our current "rule" of using the latest LTS.


docs: contributing to abapGit #1402

moving from contribution guideline to docs.abapgit.org

can we move this to "other" instead of "online projects", I'd like to keep the abapGit specific stuff separated, and "online projects" describing generic/typical use

thanks 👍


[Feature Request] Does AcquireTokenOptions.CorrelationId need to be a Guid?

Does the AcquireTokenOptions.CorrelationId need to be a Guid or would a string be sufficient?
If not set, then the default value for this will be the default value of a Guid, all zeros.
Is it strictly required that the correlation ID being a GUID is another question

@keegan-caruso : le'ts have a string. It allows for hierarchical correlation ids (that ASP.NET Core uses)
@jennyf19 let's replace the GUID by a string in our next release:
https://github.com/AzureAD/microsoft-identity-abstractions-for-dotnet/blob/f77360e7de563a222134147f4c1b5214927ec7bf/src/Microsoft.Identity.Abstractions/TokenAcquisition/AcquireTokenOptions.cs#L66

released in 1.0.0-preview.


Release Microsoft.ExtendedLocation 2024-09-15-preview API version

Add 2024-09-15-preview API version for Microsoft.ExtendedLocation
This version introduces an additional EdgeCluster value to the hostType enum field

Tagging @gary-x-li (ARM API Reviewers on-call engineer) for review


channel management?

I'm having a new issue where invoices go pending but end up unpaid. Having a look at my active channels shows I've got a bunch, with some having low amounts. 5/6 are low or empty send capacity. Is it recommended to do your own channel management and close smaller channels? Wondering if the small channels are the reason for the payments going unpaid. Strange how it's not coming up as no route or timeout. I also notice my un-spendable reserve balance is quite high compared to my total outbound liquidity.

I can't send anything out of my mutiny wallet. Tried sending even small amounts to several different wallets and payment services

If you could provide logs and a screen shot of your lightning channel screen we could better debug.
It sounds like you are just running into channel reserve issues which happens when you have small channels and on-chain fees are high

[mutiny-logs (1).txt](https://github.com/MutinyWallet/mutiny-web/files/13734690/mutiny-logs.1.txt)

Seems to be working now. Did you do something on the back end?

On chain fees may have just gone down


TypeError: unsupported operand type(s) for +: 'Tensor' and 'RemovableHandle'

Dear authors,
It's an interesting work that improves residual networks with the Markov chain.
However when I give the Network an input 'torch.randn(16,1)' and run the test.py file, it reports the following error.
Traceback (most recent call last):
  File "/code/penal-connection/test.py", line 31, in <module>
    print(Net()(torch.randn(16,1)))
  File "/root/miniconda3/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
    return forward_call(*input, **kwargs)
  File "/code/penal-connection/test.py", line 23, in forward
    fc_2 = fc_1 + self.fc_2(fc_1)
TypeError: unsupported operand type(s) for +: 'Tensor' and 'RemovableHandle'
(base) root@hd7e87ca34f84105ac629d3bd34ac54f-task0-0:/code/penal-connection# python test.py
Traceback (most recent call last):
  File "/code/penal-connection/test.py", line 31, in <module>
    print(Net()(torch.randn(16,1)))
  File "/root/miniconda3/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1130, in _call_impl
    return forward_call(*input, **kwargs)
  File "/code/penal-connection/test.py", line 23, in forward
    fc_2 = fc_1 + self.fc_2(fc_1)
TypeError: unsupported operand type(s) for +: 'Tensor' and 'RemovableHandle'

And here is my test.py file:
import penal_connection as pc
import torch
import torch.nn as nn

class Net(nn.Module):
    def __init__(self):
        super().__init__()
        self.fc_1 = nn.Linear(1, 4)

        # use as a layer
        self.fc_2 = nn.Sequential(
            nn.Linear(4, 4),
            pc.PenalConnection(tau=1e-4),
        )

        self.fc_3 = nn.Linear(4, 4)

        self.fc_4 = nn.Linear(4, 1)

    def forward(self, x):
        fc_1 = self.fc_1(x)

        fc_2 = fc_1 + self.fc_2(fc_1)

        # use as a function
        fc_3 = fc_2 + pc.penal_connection(self.fc_3(fc_2), tau=1e-4)

        return self.fc_4(fc_3)

print(Net()(torch.randn(16,1)))

Thanks for your reminding. The bug now has been fixed.


move eoa generation in setUp

merging this as the subsidy lost PR is having stack too deep error in test. Hopefully, this makes it easier to fix it.


add support for change by keyboard event

Please makes sure these boxes are checked before submitting your PR, thank you!

[ ] Make sure you follow Element's Contributing Guide.
[ ] Rebase before creating a PR to keep commit history clear.
[ ] Add some descriptions and refer relative issues for you PR.

#601


Composer support

It would be glorious if this project were officially on packagist.org. Currently there's a fork that resides on packagist but it's always best if the actual project is available via composer.
http://packagist.org/packages/underscore/Underscore.php

Thanks @zacharyrankin this works for me :+1:


docs: Add SecurityCenter Notification snippets

Fixes #2199

Refer to the closed PR: https://github.com/googleapis/google-cloud-java/pull/7135. It was opened in the wrong repo.

PTAL.-- Also look at the compile errors. Apparently doesn't pass build or checkstyle.

The build failure comes from the SCC API not being enabled in the project that Kokoro uses for Java 11. I don't have access to that project and will need someone with permissions to enable it.


[3.50.0] Physics.Arcade.Body does not have a setDamping method

3.50.0-beta.8  Physics.Arcade.Body does not have a setDamping method.  Workaround is to set useDamping yourself.

I'm not sure I'd call that a 'workaround' as it's exactly the correct way to set it!

True enough.  It is, however, surprising that when you switch from using physics.add.sprite() to physics.add.existing().body, for example, all the set methods still work except setDamping.

Thank you for submitting this feature request. We have implemented this and the feature has been pushed to the master branch. It will be part of the next release. If you get time to build and test it for yourself we would appreciate that.

Hi There.
I am trying to create a geometry based game. I am a newb.
Please could explain "Workaround is to set useDamping yourself."
I want to apply damping to my "ship" which is at the moment just a triangle. I want to later create a whole bunch of geometry that will form the ship.
Cheers for any help.

The answer to the question you are really asking (How do I build a composite object?) partly depends on the type of noob you are.    Are you a noob who doesn't know any game engines well but knows programming well (my real job is IT)?  Or, are you a total noob who is still learning to program because you want to make games (like where I started)?
To me, Phaser doesn't appear to be targeted at composite objects.  The parts are all there for it, I just haven't found much in the way of examples or docs for it, and this is also where the helper functions start to fall short and you have to fall back to objects and properties more.  Thus, I've blazed my own way for building such objects.  The key is obviously the Container object.  But, what are the best practices for using it?
Here are some example excerpts from my code for my current project, Sendit Soccer, (language is ES6):
export function createBall (scene) {
	const obj = scene.add.container(0, 0)
...

	// Add the physics to container object and not the sprite.
	scene.physics.add.existing(obj, false).body
		.setCollideWorldBounds(true)
		.setCircle(5, -5,-5)
		.setBounce(0.8)
		.setDrag(0.98)
		//nope//.setDamping(true)
		.setMass(0.43)
	obj.body.useDamping = true //workaround

	obj.shadow = scene.add.image(0, 0, "ball-shadow")
	obj.add(obj.shadow)

	obj.sprite = scene.add.image(0, 0, "ball")
	obj.add(obj.sprite)

	return obj
}

or, as a class:
export default class Player extends Phaser.GameObjects.Container {
	constructor(scene, x, y, team, name) {
		//super(scene, x, y, children)
		super(scene, x, y)  // Note: super must be called before accessing "this".
		scene.add.existing(this)

		// Put the physics body on the container (vs the child sprite or something).
		scene.physics.add.existing(this, false).body
			.setCollideWorldBounds(true)
			.setCircle(10, -10,-10)

		// Add a child text game obj.
		this.name = scene.add.text( ... )
		this.name.setOrigin(0.5, 1.0)
		this.add(this.name)

		// Add a child sprite game obj.
		// (Seems silly to add it to the scene only to have the container
		//  remove it and add it to its own list.  But, alas....)
		this.sprite = scene.add.sprite(0, 0, key)
		this.add(this.sprite)
...

These, however, are objects with a single collider and multiple non-physics objects.  I'm about to do the opposite next: a single sprite with multiple colliders as children to the container (which will be an interesting experiment considering Arcade allows only one collider per body).  But, those will all be static bodies/colliders so it should be doable with enough wiring.  I tried a second dynamic body on an object once and, well, it didn't work so well.  It was always one frame behind.  This was not a glitch.  It makes sense for the game loop and Arcade physics (I would need to otherwise control the child directly like I do the parent body... possible, but gets messy quickly).
This brings me to your real question.  Arcade physics doesn't sound like what you ultimately want.  I have another 2D game built in Unity and Box2D, GRITS Racing, with cars that are built from a complex array of objects.  The wheels are separate from the body and other parts, applying thrust and steering to the composite object.  (With different art, the car could easily be a space ship with four thrusters -- which would actually be easier because then I wouldn't have to model forward grip vs lateral grip vs downforce vs body roll vs various surfaces, etc.)  If I were to port that game to Phaser, I would surely be using Matter physics to replace Box2D, and not Arcade.
The point is, if you want a collection of objects to accelerate and collide as a whole, you need a physics engine that has Joint objects to make sure all the joined objects know how to move together.  I haven't used Matter yet, but it looks like the kind of engine that can do this.  Thus, depending on what type of noob you are, and how much you like to jump into the deep end to learn to swim (which is my usual m.o.), your game design may be too big.  Otherwise, good luck and I hope I've helped you (and anyone else reading this) a bit.

Wow. Thankyou for taking the time to give such a detailed answer. Brilliant.
I did manage to get useDamping to work, but I am finding that its overly complicated in phaser 3 to create basic geometry and apply physics to them.
What I absolutely need to learn first is ES6. Something I have never done. I am old school programmer and i have never managed to break the habit of coding in functions. I realise that games have to be written classes like your examples, so that you can have a class like enemies or bullets.
I looked at matter yesterday, and decided that was where i needed to start. You can draw primitives with that as well by the looks of it, so that's where i am going to start.
Cheers for your very detailed answer.

My first computer (more or less) was a Vic 20, so you're not the only old schooler around here.  I'm mostly a folk programmer and, yeah, procedural as well.  OOP is useful, but it has its limits too.
I can't say you need to learn ES6.  I still target browsers that aren't fully ready for it yet and so I use Babel to translate the ES6 back to plain ol' JS.  Getting a Babel env up (with Browserify, Watchify, and the other dozen things you need) is an enigma and I can't say it's worth it just to take Phaser for a spin.  I have Babel set up for some of my contract work so it was an easy choice for me here.
Then again, I'm not an ES6-vs-browser expert, so I can't tell you if now is a good time to move to ES6 without Babel.  If you're okay with just supporting the latest browsers, it looks fine according to this: http://kangax.github.io/compat-table/es6/
Good luck with that ship.  I hope you find something that works.

I remember vic 20. I had a spektrum 48k.
On Sat, 24 Oct 2020, 07:44 Matt Jernigan<EMAIL_ADDRESS>wrote:

My first computer (more or less) was a Vic 20, so you're not the only old
schooler around here. I'm mostly a folk programmer and, yeah, procedural as
well. OOP is useful, but it has its limits too.
I can't say you need to learn ES6. I still target browsers that aren't
fully ready for it yet and so I use Babel to translate the ES6 back to
plain ol' JS. Getting a Babel env up (with Browserify, Watchify, and the
other dozen things you need) is an enigma and I can't say it's worth it
just to take Phaser for a spin. I have Babel set up for some of my contract
work so it was an easy choice for me here.
Then again, I'm not an ES6-vs-browser expert, so I can't tell you if now
is a good time to move to ES6 without Babel. If you're okay with just
supporting the latest browsers, it looks fine according to this:
http://kangax.github.io/compat-table/es6/
Good luck with that ship. I hope you find something that works.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/photonstorm/phaser/issues/5352#issuecomment-715802916,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANKJ36OQF4V6RNQO54TFSTTSMJZTJANCNFSM4SMAZKLA
.


Add and center Logo to README.md

Can u mention the issue which u solved?

It's this one
https://github.com/akshitagupta15june/PetMe/issues/45


[v1.16] author backport: fix ENABLE_LOCAL_REDIRECT_POLICY

This PR is an author backport for the following LRP PR

https://github.com/cilium/cilium/pull/35099

/test-backport-1.16


Add a convenience component for generating

Since this is a flexbox system, it's required that the object inside the Row has proper flex properties, or it could be rendered incorrectly. This is why it's always best to the use only the Col component inside the Row component.
This causes a lot of extraneous code, as if we want to make a single-column Row, we have to type it out like
<Row>
  <Column>

This is a column that's centered using the shift props

  </Column>
</Row>

furthermore, nesting becomes a nightmare
<Row>
  <Column>
    <Row>
      <Column>

This is a column that's centered using the shift props

      </Column>
    </Row>
  </Column>
  <Column>
    <Row>
      <Column>

This is a column that's centered using the shift props

      </Column>
    </Row>
  </Column>
</Row>

I think it could be beneficial if there was a component along the lines of RowCol, that would generate both of them, so the above examples could be done with
<RowCol>

This is a column that's centered using the shift props

</RowCol>

and
<Row>
  <Column>
    <RowCol>

This is a column that's centered using the shift props

    </RowCol>
  </Column>
  <Column>
    <RowCol>

This is a column that's centered using the shift props

    </RowCol>
  </Column>
</Row>

It would be able to accept all the props that Col accepts, and it passes the props directly to the Col component. This will speed up rendering for these types of object, as the Row won't have to loop through it's children applying the correct props.
This is not a final sketch of the idea, and I would like to continue discussing and adding to this idea.

Maybe in line with the proposed Container/Box replacing Row/Column, you could call the component ContainedBox


./gradlew startMetacatCluster failed due to Cassandra unavailability

./gradlew startMetacatCluster or ./gradlew metacatPort constantly fail because Cassandra take a few seconds to start: https://github.com/Netflix/metacat/blob/master/scripts/start_metacat_test_cluster.sh#L17
A simple hack would be just adding a sleep here, or we can poke on the Cassandra port and wait until it is available.
Is this repo accepting PRs right now? I can take a grab at this. Thanks for open sourcing this project!

How much memory is allocated to the docker resource? The Cassandra container may not start if the memory is too small ( e.g. 2G).

@zhljen I am using all default configs. FWIW, the container does start, it just takes a few seconds. I was able to start up everything on a second pass.

@lumengxi Thank you for helping metacat. The docker resource setting mentioned previously is the docker environment on the machine (e.g. laptop ) running this test. It's noticed that the Cassandra container may not start if the memory is too small, and increasing the memory setting will resolve this. Since the current setting works for us, I don't want to add extra sleep if not needed.

Yea I agreed. Closing this issue. Thanks for your response!


IMS' IP allocation issue for VoLTE

Hi, I am implementing the VoLTE setup with your docker files.
Now, EPC and eNB are connected well, and UEs (LG G6, LG V50 with Qualcomm chip + sysmoUSIM-SJS1s) can connect to the LTE network with a proper IP address (<IP_ADDRESS>).
The UEs request the IP allocation for the Inet bearer first but do not request the IP for the VoLTE bearer after the first request. So, only the Inet IP address is assigned to the UEs.
Please can you tell me how to fix the above problem? I will attach my setting images.
Very thanks.

Packet capture
bridge_packets.zip

CoIMS setting

Debug screen after connection

HSS setting

Additionally, I added the information of SIMs to the FHoSS too.

Hi,in my test environment,I open the VOLTE hd call switch to trigger the APN=ims second PDN connectivity establish.You can check this in your phone settings.

Which Android versions its running? Is it some kind of custom ROM or the official ROM from LG?
Also, can you check in phone settings whether VoLTE is enabled or not? And, check whether you have added 'ims' APN in the APN menu

@myonlystarWang Thank you for your answer. I just checked that, but it is fixed so that it cannot be switched on.

@herlesupreeth Thank you for your answer. Android version is 8.0.0 and I did not modify any hardware settings. Official ROM from LG. Also, I registered "ims" APN successfully with only ipv4. Finally, since used smartphones are LG V50 and G6, VoLTE is enabled by default.

Additionally, if I changed the APN selection as "ims" after connection, ims IP address could be assigned to the UE well (<IP_ADDRESS>). However, the internet IP address was removed (<IP_ADDRESS>).

UE not trying for ims APN is definitely an UE issue. The Carrier Privileges even though introdcude in Android 7.0, I got it working only on devices with stock ROM Android >= 9.0

@herlesupreeth My UEs: LG G6 is on Android 8.0 and LG V50 is on Android 10.0. But both UEs cannot be provided VoLTE service well. And I checked the carrier privileges in Android 10.0 and it worked well.

Unfortunately, I have seen many cases wherein even with Carrier Privileges VoLTE is not enabled on phones. This is majorly due to phone vendors having another feature locking mechanism at firmware level which cannot bypassed unless its a system app which comes bundles with ROM

Did you try the methods mentioned in this link?
https://yoodley.com/what-is-lg-ims/

@herlesupreeth Using another UE (Huawei), ims ipv4 address is successfully assigned. But, scscf related error occurred. Do you know why the following phenomenon occurs? I have registered the correct information in FoHSS and HSS.

Please take the latest commits from master branch it has a fix for this

@herlesupreeth Thank you for your help! After taking the latest version, the above problem is solved! However, 401 unauthorized error in sip and auth-pending error in fohss have occurred.
To solve the problems, I found the old qna (https://github.com/open5gs/open5gs/issues/408) but I was not able to get a proper solution. I tried to restart the pcscf and compile the latest version. How can I solve the auth-pending problem?

Please post the pcap for the issue.

@herlesupreeth  Thank you! And I double-checked the Ki, opc values (same values with hss).
401.zip

UE is HUAWEI p20 pro (Android 9.0)

@herlesupreeth  SQN number in fhoss is important? Since I found that you said it is not needed to set exact sqn number in fhoss in old qna, I did not set the same SQN number between hss and fhoss.

With the fixes on fhoss, the setting of SQN is no longer required it should automatically be synced between UE and HSS. I will check the traces and get back to you.

@herlesupreeth Thank you. Then, I will try to re-program my USIM and register the re-programmed USIM information in fhoss and hss.

I tried after removing the old one, but the same problem occurred.

Also, the below error has occurred frequently.

I have prepared a branch in FHoSS with some fixes, so you need to use that branch. In order to do that please do the following changes in Dockerfile in fhoss folder

diff --git a/fhoss/Dockerfile b/fhoss/Dockerfile
index de861f7..83d5f8e 100644
--- a/fhoss/Dockerfile
+++ b/fhoss/Dockerfile
@@ -57,7 +57,8 @@ RUN cd / && wget http://archive.apache.org/dist/ant/binaries/apache-ant-1.9.14-b

 RUN mkdir -p /opt/OpenIMSCore && \
        cd /opt/OpenIMSCore && \
-       git clone https://github.com/herlesupreeth/FHoSS
+       git clone https://github.com/herlesupreeth/FHoSS && \
+       cd FHoSS && git checkout auth_fix_exp && git fetch

 ENV JAVA_HOME="/usr/lib/jvm/jdk1.7.0_80"
 ENV CLASSPATH="/usr/lib/jvm/jdk1.7.0_80/jre/lib/"

Then re-compile fhoss and give it a try. Let me know if that works, I will merge it so that it helps others as well

I tried, but the same problem occurred.
`oh@oh:~/docker_open5gs/fhoss$ diff Dockerfile Dockerfile_cp
60,61c60
<       git clone https://github.com/herlesupreeth/FHoSS &&
<       cd FHoSS && git checkout auth_fix_exp && git fetch

  git clone https://github.com/herlesupreeth/FHoSS

`
401_2.zip

Quite strange, I have tested the fix with different handsets and it works. Can you please take a fresh trace and also post the log output of docker-compose up command?

So wired... Here is the log of the core. Thank you.
I will try to re-register the info in the fhoss to remove the auth-pending state now.
core_log.txt

Also, I have uploaded my settings via the Github project. (https://github.com/ohtaekkyung/ims_taek)
You can check my settings in that project.

I had a look at the traces, its likely a misconfiguration of Ki and OP/OPc value in FHoSS. If the SQN was wrong the UE would have sent AUTS in second or subsequent REGISTER. If MAC was wrong then Authentication would have stopped as soon as UE receives the first 401 message

Hmm.. but I set the same SQN, Ki and OPc value in fhoss with has. Since the UE can be connected well to the internet via hss, the values may be correct. I will try with other USIM. Thank you.

You are right. My bad.. I am not able to pinpoint why UE does not send AUTS if there is SQN mismatch

Maybe... pcscf was not built completely.
I ping to the IP address of pcscf (<IP_ADDRESS>) and scscf (<IP_ADDRESS>) respectively, and the pcscf's host was unreachable.
Do you think it could be the main cause of the above problem?

Oh.. still did not work after pcscf server was connected well.

I succeeded in the IMS registering! I submitted both op and opc values in the fhoss, UE was able to send the digest auth response!
Thank you for your help!

That's wonderful news. Did you use the fhoss from auth_fix_exp branch?

Yes I used it.

I have met the same issue of SQN problem, I have re-builded the fhoss with auth_fix_exp branch already.
But some mobile phones still sometimes can not get registered VOLTE, I checked the pcap files and find that after challenging the UE ,the mobile phone do not send ESP packet to PCSCF.
The failed pcap and logs ,the succ pcap and logs will attached.
volte_reg_fail.zip
Any help would be greatly appreciated@herlesupreeth @ohtaekkyung !

Additionally, I am trying to attach the IoT device supporting VoLTE to the IMS server. IMS ip address was successfully assigned to the device, but sip registering messages were not sent by the device.

@ohtaekkyung This is purely upto the UE modem settings. Its not upto the USIM to enable IMS in UE

But some mobile phones still sometimes can not get registered VOLTE, I checked the pcap files and find that after challenging the UE ,the mobile phone do not send ESP packet to PCSCF.

@myonlystarWang can take a look at FhoSS and let you know

@myonlystarWang can take a look at FhoSS and let you know
@herlesupreeth Do you need some fresh trace?

@myonlystarWang Thanks, but i do not need it. Btw, can you try providing OP value rather than OPc value in FHoSS and giving it a try?

Hi @herlesupreeth,thanks for your reply!It is fact that I have use the OP already.

But some mobile phones still sometimes can not get registered VOLTE

@myonlystarWang can you elaborate on this? I mean, take a fresh trace and let me know what scenario you tried?

Closing due to inactivity. Please re-open the issue with pcaps and logs if you still face issue.


Wrong usage of 'Identified date unlikely'

The parser will flag dateIdentified as "Identified date unlikely" if the date is provided as partial date.
We do not handle partial dates at the moment but IDENTIFIED_DATE_UNLIKELY is not the right flag, IDENTIFIED_DATE_INVALID would be more appropriate until we add the support for partial date.

Duplicates https://github.com/gbif/portal-feedback/issues/1488 (Donald wins), and fixed in UAT anyway.


How to merge list of plans without batching

Hi
I am creating SQL query which insert potentially thousands of rows. Issue is that there is max length of parameters in query: https://github.com/yiisoft/yii2/issues/10371
If actions doesn't return anything you can just combine bathing and non batching for loops:
plan {
    let chunks =
        data
        |> List.chunkBySize 100

    for chunk in chunks do
        for item in batch chunk do
            do! doSomething item
}

On the other hand you need to return data so concurrentList should(?) be used:
Plan.concurrentList
    [ for d in data ->
        doSomething d
    ]

But this batches all the work and may be fail for too big query. So if there would be Plan.nonConcurrentList I could do something like this:
let chunks =
    spots
    |> List.chunkBySize 100

let plans =
    chunks
    |> List.map (fun chunk ->
        Plan.concurrentList
            [ for d in chunk ->
                doSomething d
            ]
        )

Plan.nonConcurrentList plans

Any hints?

In this case, what is the output of Plan.nonConcurrentList?

I tough it could to be just equal to Plan.concurrentList : List<Plan<'a>> -> Plan<List<'a>>
Example from last post was a bit imprecise. Hopefully this is better:
let doAsChunks (doPlan : 'a -> Plan<'b>) (data : List<'a>) : Plan<List<'b>> =
    let chunks : List<List<'a>> =
        data
        |> List.chunkBySize 100

    let chunkedPlans : List<Plan<List<'b>>> =
        chunks
        |> List.map (fun chunk ->
            Plan.concurrentList
                [ for d in chunk ->
                    doPlan d
                ]
            )

    chunkedPlans
    |> Plan.nonConcurrentList // List<Plan<'x>> -> Plan<List<'x>> just like Plan.concurrentList
    |> Plan.map (List.collect id) //Hopefully this won't mess anything?

So any tips how to implement Plan.nonConcurrentList?
Thanks!

Ok. After going through Plan's code, below is the sample I could come up with. From the console output, it seems to run sequentially. Do run the code to see if it is what you are looking for. Perhaps, @rspeele can confirm if this is a good approach.
 let test () =
  let doSomething x = Plan.ret x
  let spots = [ 1 .. 100 ]
  let chunks = spots |> List.chunkBySize 10
  let plans =
    chunks
    |> List.map (fun chunk ->
        Plan.concurrentList
          [ for d in chunk -> doSomething d ])
  let rec nonConcurrent xs =
    match xs with
    | [] -> Plan.ret []
    | x :: xs' ->
      let run xOut =
        printfn "In run. xOut is: %A" xOut
        nonConcurrent xs' |> Plan.map (fun xsOut -> xOut :: xsOut)
      Plan.bind x run
  nonConcurrent plans
  |> Plan.map (List.collect id)
  |> Execution.execute Execution.ExecutionConfig.Default
  |> fun x -> printfn "Result: %A" x.Result

Hi,
The definition for nonConcurrent proposed by @rkosafo should work.
However, before you jump to using that, have you tested concurrentList with a large number of queries?
When it builds a query batch, Rezoom.SQL won't add a new query to the batch if it would cause the total number of parameters to exceed the limit for the SqlConnection implementation. So it should be fine to create huge batches with concurrentList -- they'll be transparently split into a series of smaller batches as needed. If not, it's a bug in Rezoom.SQL, not Rezoom. Now, this can't help with cases where > 2100 parameters are used in a single query (e.g. select * where Id in @parameterList with parameterList being huge), but you shouldn't have to worry when batching together many queries that are each within the limit.

Thanks @rkosafo it works perfectly!
@rspeele I have got error with large in-statements but also with inserts. Columns may vary but issue remains. All inserts are currently in this form:
    insert into T
    row
        A = @a,
        B = @b,
        C = @c;
    select scope_identity() as Id; //Table have also auto-increment primary key called 'Id'


Add support for SHAP package

SHAP is a general model attrition package: https://fburl.com/5lq7ho5y
I have a use case to first use SHAP to explain a sklearn/xgboost classifier and then convert the model to pytorch. SHAP is not supported yet for model conversion. Is there a quick way to walk it around?

Hi @seuzha! We were looking into it (see #180) but we didn't make much progress. Do you want to give it a shot?

Closing as a duplicate of #180 .  @seuzha, if you feel inspired to work on this, please let us know and I'll repoen!! :)


dart:ffi int8 etc truncate and sign extend vs exceptions

What do we do with Dart ints which do not fit in the C++ type they are stored into.
And do we want the behavior to be consistent between Pointer.store() and Pointer.asFunction()?
Throw exception
Pointer<Int8> p = allocate();
p.store(128); // throws exception

typedef NativeFunc = ffi.Int64 Function(ffi.Int8);
typedef DartFunc = int Function(int);

DartFunc f = somePointer.asFunction<DartFunc>(); // simply returns its input
f(128); // throws exception before running C function

typedef NativeFunc2 = ffi.Int8 Function(ffi.Int8);

DartFunc f2 = somePointer.asFunction<DartFunc2>(); // multiplies its input by 2
f(127); // throws exception after running C function, on return value

pro: safe
con: might be slower
con: Inconsistent with our handling of uint64, as there we interpret the bits as int64 instead of throwing exception. https://github.com/dart-lang/sdk/issues/35757
Truncate and sign extend
Pointer<Int8> p = allocate();
p.store(128); // truncated when written into C memory
Expect.equals(-128, p.load<int>()); // sign extended when read back into Dart

DartFunc f = somePointer.asFunction<DartFunc>();
Expect.equals(-128, f(128)); //

Trampoline truncates and sign extends argument passing -128 as 32/64 bits to C based on architecture
DartFunc f2 = somePointer.asFunction<DartFunc2>(); // multiplies its input by 2
Expect.equals(-2, f(127));

Various (or all) calling conventions do not truncate and sign extend values smaller than 32 bits, so it returns 254 (0xFE) which is sign extended by the trampoline as -2.
pro: fast
con: unexpected behavior

We will go for truncating and sign extending everywhere.

Implementation is tracked in https://github.com/dart-lang/sdk/issues/36122


I should be able to serve metrics over https

Currently the ExposeMetricsPort() does not allow us to serve metrics over https.
I propose that we add an options struct, this will allow a user to specify the certs (maybe even they can generate with the TLS certs?) or if nothing is set, then this happens as it currently works.
We would need to introduce a breaking change to this function. We could just introduce a new function but my vote would be to break the API and have it accept an options struct.

@LiliC Do we need to reopen this? Don't think we have this yet.

I am working on this right now.
/reopen

/remove-lifecycle rotten

TLS metrics for operators deployed in Open Shift 4.x
The following is based on how kube-state-metrics secures TLS metrics endpoint in Open Shift. For Kubernetes we will add documentation to describe how to secure the metrics endpoints, this is because there is no native solution for this in kubernetes itself. kubebuilder suggests using kube-rbab-proxy and cert-manager for this, and they do not enable this by default but you have to opt in. We can provide docs and example manifests how to do this and users can follow that.
TLS in Open Shift 4.x
We need to add the annotation to the service object before the operator is deployed, as we reference the created secret in the deployment itself. So all of these reasources need to be created before the operator starts. So the Service, ServiceMonitor objects will be created using manifest files instead of programitcly as we do right now, this is just for openshift right now. We need a new subcommand operator-sdk generate openshift This command can be useful to generate other openshift specific things later on. Right now what it would do is generate the deploy-openshift directory.
The content of the deploy-openshift directory:
crds/          service-monitor.yaml  service.yaml       operator.yaml role.yaml            role_binding.yaml   service_account.yaml

Content of operator.yaml - deployment manifest file:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: memcached-operator
  labels:
    name: memcached-operator
spec:
  replicas: 1
  selector:
    matchLabels:
      name: memcached-operator
  template:
    metadata:
      labels:
        name: memcached-operator
    spec:
      serviceAccountName: memcached-operator
      volumes:
      - name: memcached-operator
        secret:
          secretName: memcached-operator
      - emptyDir: {}
        name: volume-directive-shadow
      containers:
        - name: memcached-operator
          image: myimage:latest
          command:
          - operator-metrics-tls
          imagePullPolicy: Always
          env:
            - name: WATCH_NAMESPACE
              valueFrom:
                fieldRef:
                  fieldPath: metadata.namespace
            - name: POD_NAME
              valueFrom:
                fieldRef:
                  fieldPath: metadata.name
            - name: OPERATOR_NAME
              value: "memcached-operator"
        - args:
          - --logtostderr
          - -v=8
          - --secure-listen-address=:9393
          - --tls-cipher-suites=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
          - --upstream=http://<IP_ADDRESS>:8383/
          - --tls-cert-file=/etc/tls/private/tls.crt
          - --tls-private-key-file=/etc/tls/private/tls.key
          image: quay.io/coreos/kube-rbac-proxy:v0.4.1
          name: kube-rbac-proxy-main
          ports:
          - containerPort: 9393
            name: op-metrics
          resources:
            requests:
              cpu: 10m
              memory: 40Mi
          volumeMounts:
          - mountPath: /etc/tls/private
            name: operator-metrics-tls
            readOnly: false
        - args:
          - --logtostderr
          - -v=8
          - --secure-listen-address=:9696
          - --tls-cipher-suites=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
          - --upstream=http://<IP_ADDRESS>:8686/
          - --tls-cert-file=/etc/tls/private/tls.crt
          - --tls-private-key-file=/etc/tls/private/tls.key
          image: quay.io/coreos/kube-rbac-proxy:v0.4.1
          name: kube-rbac-proxy-self
          ports:
          - containerPort: 9696
            name: cr-metrics
          resources:
            requests:
              cpu: 10m
              memory: 40Mi
          volumeMounts:
          - mountPath: /etc/tls/private
            name: memcached-operator
            readOnly: false

content of the service.yaml file:
apiVersion: v1
kind: Service
metadata:
  annotations:
    service.alpha.openshift.io/serving-cert-secret-name: memcached-operator
  labels:
    name: memcached-operator
  name: memcached-operator
  namespace: default
spec:
  ports:
  - name: cr-metrics
    port: 9696
    targetPort: cr-metrics
  - name: op-metrics
    port: 9393
    targetPort: op-metrics
  selector:
    name: memcached-operator
  type: ClusterIP

content of the service-monitor.yaml file:
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  labels:
    k8s-app: memcached-operator
  name: memcached-operator
  namespace: default
spec:
  endpoints:
  - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
    interval: 2m
    port: cr-metrics
    scheme: https
    scrapeTimeout: 2m
    tlsConfig:
      caFile: /etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt
      serverName: memcached-operator.default.svc
  - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
    honorLabels: true
    interval: 2m
    port: op-metrics
    scheme: https
    scrapeTimeout: 2m
    tlsConfig:
      caFile: /etc/prometheus/configmaps/serving-certs-ca-bundle/service-ca.crt
      serverName: memcached-operator.default.svc
  jobLabel: memcached-operator
  selector:
    matchLabels:
        name: memcached-operator

Those are the only changes to the files we need to make.
Open questions

Does this work the same way in 3.x versions of open shift?
We can also do work when a new operator is created, if the user knows it will be deployed on openshift only, as part of a flag of the new subcommand. The flag would be something like operator-sdk new --openshift and it would generate the same resources as above.

cc @estroz @shawn-hurley @hasbro17 @AlexNPavel @joelanford Can you let me know if you have any objections, otherwise will start implementing the above. Thanks!

@LiliC

We need to add the annotation to the service object before the operator is deployed, as we reference the created secret in the deployment itself. So all of these reasources need to be created before the operator starts.

A deployment can reference a non-existent secret in a volume mount, and if/when the secret does exist, the replica containers will successfully create. Given that, the secret and deployment creation order should be fundamentally irrelevant (modulo any peripheral concerns, e.g. backoff time re-creating the container if there are initial failures due to the absence of the secret).
It wasn't clear to me from your statement whether we agree on that assumption. I'm not sure if it would affect your design one way or another, but it's something that stood out to me.

A deployment can reference a non-existent secret in a volume mount, and if/when the secret does exist, the replica containers will successfully create.

Yes it can reference it, but currently, we create the Service and ServiceMonitor resources programmatically in the operator itself, so we have to change to the above design to create these resources alongside the operators deployment (regardless of the order of course). As like you said the container will be in ContainerCreating state until the Secret is not mounted but the Service and ServiceMonitor will never be created. But agreed that was not clear from my comment above, thanks for commenting!

@LiliC I think your elaboration on the current behavior completed the picture for me. Thank you! Your proposal sounds good to me.

/lifecycle frozen

If I am not misunderstanding the goal of this task, is not it solved with https://github.com/brancz/kube-rbac-proxy which is used by default in the new layout? See https://github.com/operator-framework/operator-sdk-samples/blob/master/go/kubebuilder/memcached-operator/config/rbac/auth_proxy_service.yaml.

This will be done once the ansible plugin is complete: #3488.

The ansible plugin is merged 👍 Closing this one.


Release Proposal v0.11.1

Blow is a proposal for release notes:
LocalStorage

#959 (@carlory )

Other

Add more tests  ( #941@FloatXD )
Update Docs (#932 @carlory #937 #938 #951 @SSmallMonster #939 @Seaiii #936 @my-git9  #943 #944  #946 @windsonsea #945  #949 @SAMZONG #956 @wawa0210）

LocalDiskManager,Apiserver,Admission,Scheduler,Evictor,Exporter
N/A

Remove Snapshot releated PR.

This is in develop stage.

LGTM


question about  different styles produce different deformation degrees

Hi, I test my images on the pre-trained models you provied.  But I found a bit strange in the test results.
For example, in the case of the most deformation, ie scale=1, the test results of fire and water are as follows.

Why is the effect of fire deformation so obvious but water has almost no deformation feeling？

I think there are two reasons.
First, different stlyes have different deformations. You cannot expect every style to have an obvious deformation effects as the fire.
Second, your text is relatively large compared to the text used and trained in my paper. If the text is larrge, the scale of the deformation will consiquently look relatively small.
Maybe you can train with your own data, with large style image size, large text image size and large blur kernel, to obtain obvious water-like deformations.

Hi, my image is 320*320, just like yours, I just concat the results of the two words together. So as you say, if I want to  obtain obvious water-like deformations, I can train with large blur kernel. The method you said ”large blur kernel” is to increase the kernel_size or increase the range 8-24?

Hi, my image is 320*320, just like yours, I just concat the results of the two words together. So as you say, if I want to obtain obvious water-like deformations, I can train with large blur kernel. The method you said ”large blur kernel” is to increase the kernel_size or increase the range 8-24?

image size != text size (font size)
Large blur kerne means large standard deviation. So increasing the range 8-24 to 8-like 32 or 40.

OK, Thank you~ So what is your font size and image size?

320*320 images, with text of 188.4pt size in Photoshop
Please take the attached .psd for reference.
text example.zip


Hyphenate Commands

I think some stuff needs to be done in the Slack App Centre / dev portal thing

@lachlanjc would you like it to be all the stuff or really just what the user sees

oh also might fix #63

🤔 This isn't really what I was thinking. I was thinking more instead of a main scrappy command and /scrappy updatestreaks, it's /scrappy-updatestreaks etc. so that the commands appear directly in Slack's helper menu thing without you having to type /scrappy or /scrappy help to remember what they are.
Let me know if you're up for doing that. If you are, would you mind closing and reopening this PR? Also, assume the Slack command stuff is taken care of already (I'll make sure to do that before I merge).

I'm not sure how to do that :/

No worries, I can do it!


Failure to connect to kernel depending on how interpreter is triggered

Environment data

VS Code version: 1.67.2
Jupyter Extension version (available under the Extensions sidebar): v2022.4.1021342353
Python Extension version (available under the Extensions sidebar): v2022.6.3
OS (Windows | Mac | Linux distro) and version: macOS 12.4 (ARM variety)
Python and/or Anaconda version: mixture of many (xcode-select, homebrew, pyenv, venvs)
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): multiple
Jupyter server running: Local

Steps to reproduce:

Configure vscode to preserve previous tabs and windows upon launch, and to preserve unsaved files.
Configure vscode to launch an interactive ipython instead of regular python when running python code with the shift+Enter shortcut.
Open some folder with python files in vscode.
Create some unsaved python files.
Try launching the interactive python interpreter in the following ways:

(a) By bringing in the command palette and choosing the option there for "Jupyter: Create interactive window".
(b) By launching a new vscode window and doing the same thing.
(c) By selecting some python code and triggering the shift+Enter shorcut in a saved python file.
(d) By doing the same thing but selecting from from an unsaved file

Expected behaviour
All of these should correctly trigger the interactive interpreter.
Actual behaviour
Cases A and D fail to connect to the ipython kernel, regardless of which kernel is selected, while cases B and C always succeed. Trying the same things in an x86-64 linux machine with the same versions of vscode and extensions works correctly.

Thanks for the issue. Can you repro steps A and D and include your jupyter output log? (It's on the 'output' tab).
My guess is that the default interpreter is either not set or set to something that doesn't have ipykernel installed. Whereas for B and C it's using the interpreter for the active python file.
The python extension has the concept of the 'selected interpreter'. We use that when opening an interactive window.
This is also likely why it works on the other machine.

Thanks for the issue. Can you repro steps A and D and include your jupyter output log? (It's on the 'output' tab).
My guess is that the default interpreter is either not set or set to something that doesn't have ipykernel installed. Whereas for B and C it's using the interpreter for the active python file.
The python extension has the concept of the 'selected interpreter'. We use that when opening an interactive window.
This is also likely why it works on the other machine.

It still fails to connect if I manually change the interpreter. The error message doesn't list anything particularly informative.

The output logs should tell us what the issue is.

And by the way, all of these ways of launching it were working correctly a few days ago. Not sure what updated and broke things along the way.

It's hard to say without seeing what the exact failure is. The log should tell us what python command ran and what its exact output is.

It's hard to say without seeing what the exact failure is. The log should tell us what python command ran and what its exact output is.

@rchiodo Here's some of the output logs. They unfortunately do not provide any hint of what went wrong. The kernel to which it tries to connect is the exact same one in all scenarios mentioned in the description

.

@rchiodo Launching ./jupyter notebook directly from the bin folder in the environment works correctly (launches jupyter, is able to connect through a web browser, create a notebook, and connect to the kernel). Launching it from what it finds under the PATH environment variable (a different python environment) also works correctly.

There's a line in the output that describes the exact way we start it. It's right after 'Starting Jupyter Notebook'. Can you try that way?

There's also a custom kernel spec that we generate. It's listed later on. That might be where the problem is too. That's the kernel spec we tell juptyer to use to launch the kernel.
Additionally this might be caused by the PYTHONNOUSERSITE variable we used to add when starting a kernel. We've since removed this variable (you're on last month's build). That variable affects the sys.path for finding modules and things and might affect the startup of your kernel.

There's a line in the output that describes the exact way we start it. It's right after 'Starting Jupyter Notebook'. Can you try that way?

I don't think that's the command since it doesn't include "jupyter". If I take the path to the python binary, add -m jupyter, and then paste what it says after "with command line", then I get an error as follows:
jupyter.py: error: argument --config-dir: ignored explicit argument <long path with /var/folder/random characters/more/stuff/jupyter_notebook_config.py>

I'm not sure the path is supposed to keep existing since it looks autogenerated.

Oh that's our autogenerated config file. We send that in case you have your own jupyter config file that might be breaking things. You should be able to skip that argument.

That may be the root cause of the error. You have a module named 'code' in your working directory. Jupyter internally may require a package named 'code'. It would at least explain the failure.

Not sure why the 'code' module you have there is being found, but that sure looks like the root cause of the problem. Is that a path in your workspace?

Not sure why the 'code' module you have there is being found, but that sure looks like the root cause of the problem. Is that a path in your workspace?

It is a path under which some of the files I have opened in vscode are located.
I can also confirm that if I create a folder code with a file __init__.py on jupyter's default directory, it will fail to connect to some kernels, and the bug happens also in linux.
I am not sure however why vscode is choosing to launch the interpreter precisely from that folder when I trigger it from an unsaved file or from the command palette.

Reopening as we could do a better job here of surfacing kernel launch errors. Ultimately it was a problem with a dupe module, but it's super hard to tell that.

This should now be fixed in the latest pre-release,
you can install the latest pre-release version of the Jupyter extension after installing vscode insiders or wait for the latest release (some time this week).
If that still doesn't work, please feel free to re-open this issue or create a new issue.

Steps to verify:

Open workspace folder
Create a python file named code.py in root directory
Create a python file named sample.py in root directory with the following content

#%%
print('Hello World')

Run the above cell and verify you get a message about code.py causing issues with kernel
Repeat the above step with a notebook and verify you get a similar message warning about code.py.

I get the following error  in both cases:
i.e.: the module "code" could not be imported because it is shadowed by:
c:\Users\t-aidaym\work\test\code.py
Please rename this file/folder so that the original module from the standard library can be imported.
Which I suppose is expected, so I will put the verified label on it.


Patch for configure.py to work under python 3

Python 3 removed support for except foo, e style for catching exceptions and enforced except foo as e.  The following patch seems to work under both python 2 and 3, but I suggest further testing.  I think you can safely ignore the removal of from __future__ import print_function; it doesn't seem to affect python 3 one way or the other.
diff --git a/configure.py b/configure.py
index aac4ad4f0af36cf1689175a922c51b87c01b8cc6..3950670e990c0cd96441d18a8ae74904de44e707 100755
--- a/configure.py
+++ b/configure.py
@@ -19,7 +19,7 @@
 Projects that use ninja themselves should either write a similar script
 or use a meta-build system that supports Ninja output."""

-from __future__ import print_function
+

 from optparse import OptionParser
 import os
@@ -164,7 +164,7 @@ class Bootstrap:
         """Run a subcommand, quietly.  Prints the full command on error."""
         try:
             subprocess.check_call(cmdline, shell=True)
-        except subprocess.CalledProcessError, e:
+        except subprocess.CalledProcessError as e:
             print('when running: ', cmdline)
             raise

from __future__ import print_function does not affect python3 but is required by python2 to treat print as a function instead of a statement. So we must keep it.

I'm sorry if my comment was unclear; what I meant was that it had no effect on python 3, so you can keep it or not as needed.  And clearly since you want to continue supporting python 2, it is needed!
Thanks,
Cem Karan

-----Original Message-----
From: Nicolas Despres<EMAIL_ADDRESS>Sent: Friday, May 08, 2015 8:41 AM
To: martine/ninja
Cc: Karan, Cem F CIV USARMY ARL (US)
Subject: Re: [ninja] Patch for configure.py to work under python 3 (#969)
from future import print_function does not affect python3 but is required by python2 to treat print as a function instead of a
statement. So we must keep it.
—
Reply to this email directly or view it on GitHub https://github.com/martine/ninja/issues/969#issuecomment-100221482 .
https://github.com/notifications/beacon/ALexQw7wSJBtLbm-XJ5VuG-353uBE3hOks5oHKZjgaJpZM4ETsZ1.gif

This is fixed on trunk. This is a dupe of #877.

(…but thanks for the patch!)

Thank YOU for making ninja!  Definitely makes my life easier...
Thanks,
Cem Karan

-----Original Message-----
From: Nico Weber<EMAIL_ADDRESS>Sent: Saturday, May 09, 2015 3:39 PM
To: martine/ninja
Cc: Karan, Cem F CIV USARMY ARL (US)
Subject: Re: [ninja] Patch for configure.py to work under python 3 (#969)
(…but thanks for the patch!)
—
Reply to this email directly or view it on GitHub https://github.com/martine/ninja/issues/969#issuecomment-100535355 .
https://github.com/notifications/beacon/ALexQ-M9Apwt2cUqnn1JSxARxECQZ02cks5oHlm4gaJpZM4ETsZ1.gif