IoC containers support

Simple Injector fails with exception:
For the container to be able to create DbContextReadOnlyScope, it should contain exactly one public constructor, but it has 3.

Thanks @musukvl.
The library was implemented with both DI and non-DI-based code bases in mind. In our case, our entire code base follows the Dependency Injection principle and our DbContextScopes are instantiated by StructureMap without any issue.
I have to say that I'm not familiar with Simple Injector. If, like the exception message suggests, it can only cope with a single public constructor, I would suggest switching to a more mature DI container as this sounds like a very serious limitation that will cause you a lot of problems.
That being said, I'd be really quite baffled if Simple Injector really didn't allow you to have more than one public constructor on your components. It's definitely not the job of a DI container to dictate how your components should be constructed. It's the other way around: you tell your DI container how to construct your components and the DI container does it for you.
So I would first check out whether you can configure Simple Injector to use a specific constructor. There's bound to be a way to do this.

Re-opening in case other people here are familiar with Simple Injector and can provide the magic config code for this.

The Simple Injector design philosophy views multiple constructors as an anti pattern and therefore they do not work out of the box. I believe there are some hooks to enable this though (see the docs).
I've just started using DbContextScope in a project with Simple Injector and haven't noticed this issue though. It could be because I am not explicitly registering the DbContextReadOnlyScope. I'm only registering IDbContextScopeFactory and IAmbientDbContextLocator.
container.Register<IAmbientDbContextLocator, AmbientDbContextLocator>();   container.Register<IDbContextScopeFactory, DbContextScopeFactory>();
You could also try:
container.Register<IDbReadOnlyContextScope>(() => new DbReadOnlyDbContextScope(container.GetIntance<type>, ...));
BTW - Thanks for sharing the DbContextScope solution. So far it seems to be solving the problems I was hoping it would (as described in your blog post).

Thanks @andrewthauer for jumping in. Actually, your answer made me realize that the core issue here  is probably not with Simple Injector.
@musukvl: If you use DbContextScope in a code base that follows the dependency injection principle, you shouldn't depend directly on the DbContextScope or DbContextReadOnlyScope classes.
You should instead take a dependency on IDbContextScopeFactory as @andrewthauer mentioned. You can then use that factory to instantiate your DbContextScope or DbContextReadOnlyScope as and when needed.
Give it a try, this should solve your issue.
If you're interested, this is the standard Abstract Factory pattern that you can use to manually control the creation of stateful components while still maintaining all the benefits of Dependency Injection. Mark Seeman has a collection of posts on the subject here: http://stackoverflow.com/questions/2280170/why-do-we-need-abstract-factory-design-pattern/2280289#2280289

Looks like there is right way to use DbContextScope with SimpleInjector:
container.Register<IAmbientDbContextLocator, AmbientDbContextLocator>();
container.Register(() => new DbContextScopeFactory());

@musukvl That looks about right to me. Thanks for giving us the right configuration for SimpleInjector.

Hi mehdime & msukvl,
First, Thank you for providing this solution in github.  I was trying to utilize this solution, but I'm running into a roadblock.  I've added this in stackoverflow since this is technically not a bug in your code.  http://stackoverflow.com/questions/31930179/using-dbcontextscopefactory-with-unity
For some reason, I'm not able to register the DbContextScopeFactory properly.  It tried the suggestion above and still got errors.  I also tried to instantiate a new DbContextScopeFactory when I register my IVendorRepository:
container.RegisterType<IVendorRepository, VendorRepository>(new PerResolveLifetimeManager(), new InjectionConstructor(new DbContextScopeFactory()));
Thanks in advance for your help.

was able to get this resolved.  Thanks!


Fully AFK Paragon Farming

I have a configuration that will do completely unattended paragon farming. If you load the attached savegame and unpawse it should take a minute to get up to 25k unob and then automatically reset. It can be left alone and will generate 600 paragon about every 90 minutes. I've had it running for about two days with 2.0.0-alpha.10-live and it seems stable.
There are a couple issues that could get the cycle time down to around 30 minutes:

Timeskip to Redmoon. This is dependent on #19 to unlock Chronoforge and #18 to skip to Redmoon without waiting for chronoheat cooldown or needing to buy chronofurnaces.
Limit eludium crafting to about 150. You only need enough to buy Microwarp Reactors after the reset. The limit is currently not persistent across resets and this will be fixed by #16.
#14 will speed things up by getting Solar Revolution as fast as possible after reset.
#17 could help a little but is probably not that important.

The configuration assumes you are at the point of the game where you have Renaissance, Anachronomancy, Pawgan Rituals, and Numeromancy. It also may have some dependence on the specific set of cryptos that I have. Some tuning may be necessary.
The important details about the configuration are:

I'm going for reset at 25k unob and 5 chronospheres based on Math Hacks http://www.bloodrizer.ru/games/kittens/wiki/index.php?page=Math+Hacks
Most Bonfire buildings are limited so that resources will saturate and carry over with Flux Condensator.
In Village, most kittens are assigned to Geologist to maximize gold for trading with zebras for titanium.
In Science->Technologies, anything that costs relics is turned off. We only want to spend relics on Tachyon Theory and Chronoforge.
Science->Policies is set up to maximize unob production and kitten arrival rate.
Workshop should have a max eludium of 150, but this is currently not persistent.
The Trading trigger is set to 0.03 instead of the default 0.98 to get zebra trading going faster.
In Religion, only do Solar Revolution and skip all the other Order of the Sun items.
In Space, only do the Dune, Moon, Orbital, and Piscine missions. Make everything except for Moon Bases, Spice Refineries, and Orbital Arrays. You may need Moon Bases when you are getting started in order to have at least 25k unob for reset, but the attached savegame is past that point.
In Time Skip, skip every cycle except Redmoon and skip in any season.
In Reset Timeline (Danger!), the only condition you need to activate is Unob >= 25k. You also want to have 5 chronospheres and Flux Condensator and 150 eludium before reset, but I think you are guaranteed to have these by the time unob gets up to 25k anyway.

Comments and suggestions appreciated. I hope you find this useful.
Kittens Game - Run 98 - Year 6 - Autumn, day 29.txt

I really love how many aspects of the script are active for this to work. I'll do my best to work on the open issues :)


Changes in Terraform to support anti-forgery

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


Option for LowNodeUtilization and HighNodeUtilization for node regex name filtering

Is your feature request related to a problem? Please describe.
Not a problem but I know some nodes don't need to be touched, so I would like them excluded by name
Describe the solution you'd like
An option in the LowNodeUtilization and HighNodeUtilization to filters to include and exclude some node names based on a list. If include is defined, only check the listed nodes, and if excluded is defined, to not check the excluded nodes. Best if the name format could use regex.
Describe alternatives you've considered
evictableNamespaces option but it's more complex that way
What version of descheduler are you using?
descheduler version: v0.29.0
Additional context
None

Hi @Fran-Rg, have you tried setting a node selector on the evictor? https://github.com/kubernetes-sigs/descheduler?tab=readme-ov-file#evictor-plugin-configuration-default-evictor wondering if that's sufficient or you hit problems with it

I didn't know but unfortunately without wildcards support or negative selection then it would still not work in my case

NodeSelectors are just like label selectors afaik, which do have negative selection and set-based syntax: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
Not sure about wildcard, but have you considered using node labels instead of relying on node name? That's generally the appropriate approach for something like this


langserver: workspace/xreferences: change Go DependencyReference.Hints dir -> dirs

This will give us much less DB entries (one/dependency referenced/repo vs. one/dependency
referenced/directory/repo).
Additionally, this will help with optimizing workspace/xreferences to be both performant
and accurate. It will however mean that we will likely need to add a Limit or other
pagination options to workspace/xreferences.
Also update the tests accordingly.

@beyang adding you as a reviewer because this change is small, uncontroversial, and I'd like to get it out asap for reindexing.


how to add a new institution into the version 2 renderer?

We have installed the the version 2 renderer in June.
To add the sp template
We created the sp sub-folder in the path:
C:\GovTech\OpenCert_Site\06_20\opencerts-website\src\components\CertificateTemplates\tlds\sg\edu
beside the other folders: ite, np, nyp, rp, singaporetech, tp
and amended the file index.js to add the lines for sp import and addDirToTemplatePath.
we bring in the template done in the eralier version in this sp sub-folder, and done some changes to the js files in our sp folder to correct the compliation error.
However the web-based view (localhost:3000/viewer) keep showing “Institution no in Registry” and the certificate is displayed using the default template.  I believe we must have missed some steps such that our template is being used.  On this we seek you help.
Please guide us

Could you send in a pull request so we have a look. Fork the legacy repo, then make the necessary changes on your own fork and then submit a pull request from your fork to us.

Also to clarify, that is not v2 of the renderer. That’s the legacy templates.

We have tried to fork and PR this same project
OpenCerts/legacy-templates@e294c51 :
https://github.com/OpenCerts/legacy-templates/commit/e294c51480922c3787b9d5bcebb9dbd49fe61084
in the previous issue track.  Seemingly it was not done properly.
That's a harder problem for me to tackle, is there an alternative to that?

Phew! created the PR in https://github.com/OpenCerts/legacy-templates/pull/10

the Pull request is created in OpenCerts/legacy-templates
pls review

hi sorry for the delay will review this by end of day tomorrow


Metadata catalogue

Page templates to include:

Identifier for data
Description
Dimensions - including distribution

Geographies for which this is available
Missing geographies
Years, if temporal

Facts

Min / max / units

Canonical source (homepage, etc)

[ ] Auto generate metadata files with basic analysis of dimensions and facts
[ ] Process geography, showing which types of geography have data (i.e. first 3 codes)
[ ] For each of these, list expected geos which have missing data
[ ] For each desired data, generate a page.
[ ] Augment page with description, url, etc

@ChristianSpence @luke-strange Anything to add to this?
I've excluded cross-linking place / spotlight pages to metadata catalogue, although this is the logical next step! Propose that's a follow on activity.


Add New Themes for UI

Galaxy Theme:

Sky Theme (Cannot think of a better name...)

Codecov Report

Merging #276 into master will decrease coverage by 0.06%.
The diff coverage is 36.36%.

@@             Coverage Diff              @@
##             master     #276      +/-   ##
============================================
- Coverage     64.42%   64.36%   -0.07%
- Complexity      550      552       +2
============================================
  Files           100      100
  Lines          1816     1824       +8
  Branches        189      189
============================================
+ Hits           1170     1174       +4
- Misses          572      576       +4
  Partials         74       74

Impacted Files
Coverage Δ
Complexity Δ

src/main/java/seedu/address/ui/ThemeWindow.java
0.00% <0.00%> (ø)
0.00 <0.00> (ø)

src/main/java/seedu/address/ui/theme/ThemeSet.java
90.00% <100.00%> (+6.66%)
5.00 <0.00> (+2.00)

Continue to review full report at Codecov.

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

Looks good. The words in galaxy theme is a bit hard to read though.
Another thing, could you update the UG as well?

Sure, I try to add theme switching to UG

Looks good. The words in galaxy theme is a bit hard to read though.
Another thing, could you update the UG as well?

Sure, I try to add theme switching to UG

Ooo, just found it's already added, then I will update the images.

Looks good. The words in galaxy theme is a bit hard to read though.
Another thing, could you update the UG as well?

Sure, I try to add theme switching to UG

Ooo, just found it's already added, then I will update the images.

The changing theme section is not updated to reflect your changes. Could you also update the screenshot if possible?
Changing themes
HelloFile comes in light and dark themes. ...

Looks good. The words in galaxy theme is a bit hard to read though.
Another thing, could you update the UG as well?

Sure, I try to add theme switching to UG

Ooo, just found it's already added, then I will update the images.

The changing theme section is not updated to reflect your changes. Could you also update the screenshot if possible?
Changing themes
HelloFile comes in light and dark themes. ...

Sure, I'm doing that now

The color of the edge of the window for me is white,

But others are blue,

How do I modify the color to make it consistent?

Galaxy Theme is modified to make fonts clearer,

Galaxy Theme is updated to make fonts clearer,

The color of the edge of the window for me is white,

But others are blue,

How do I modify the color to make it consistent?

Maybe you can try to set your windows theme? Or just replace the

The color of the edge of the window for me is white,

But others are blue,

How do I modify the color to make it consistent?

Doesn't matter for now. We probably need to change those screenshots later because the words are too small...😢


Replace the queue with AWS Lambda?

Rendering a video on demand might be a good Lambda use case, need to investigate this further.
Potential upsides: No Redis, no queue, much more modular, much easier installation for the server/editor alone
Potential downsides: AWS lock-in, AWS documentation nightmares, debugging nightmares, long delays for long videos, hard limit of 300s rendering time

I know popup uses a lambda for their similar tool, and I think the TAL shortcut tool does as well, fwiw.

The 300s (5min) time limit for the function can now be extended to 15min.

You could potentially distribute the rendering of the video in segments across concurrent Lambdas and then concat the video segments with ffmpeg to speed the process up (and potentially get rid of the fifteen-minute limit).

 It's almost similar to lambda, gets no limit on execution time, and can handle load and complexity.


兼容pc

用mouse模拟了touch系列事件
pc阉割掉了惯性功能和回弹功能

Pull Request Test Coverage Report for Build 16

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 20.763%

Totals

Change from base Build 15:
0.0%

Covered Lines:
1

Relevant Lines:
1

💛  - Coveralls


Build Refactor 02

Refactor the builds:

Notebooks build converted to job template
PR Gate definition just for PRs
Nightly definition runs expanded version of PR Gate

This will have to be forced in, since it removes the Notebooks build definition (now incorporated into the PR gate)
Once it is in, I will adjust the branch policies appropriately


ci: use PCOV for code coverage, disable Xdebug

This PR disables Xdebug for all GitHub Actions and enables PCOV for the action where code coverage is generated. This should speed things up a bit.

For this PR two weeks ago, the Laravel tests run looked like this (using Xdebug for coverage):


Use SurfaceFilterRender to render frames from some other source

Hi
I am using SurfaceFilterRenderer to render camera during streaming. Now I have included video calling feature using Agora. For that Agora's sdk requires a Surfaceview to render the video calling frames.
How can I achieve this that I can pass a surfaceview to agora sdk that has the same surface as my SurfaceFilterRender object?
Any help here would be appreciated.

I think that, you can't do it.
I don't know about Agora SDK but the normal way to send frames to 2 surfaces is:

Create a surface with opengl
Render that surface with camera API.
Copy frames from that opengl surface to multiple surfaces using opengl.

The question is. How is working Agora SDK to extract frames? Can you modify Agora code?
If you can set a TextureView to Agora SDK you can try set SurfaceTexture from SurfaceFilterRenderer to TextureView but I think this will not work. Example:
 SurfaceFilterRender surfaceFilterRender =
            new SurfaceFilterRender(new SurfaceFilterRender.SurfaceReadyCallback() {
              @Override
              public void surfaceReady(SurfaceTexture surfaceTexture) {
                textureView.setSurfaceTexture(surfaceTexture);
              }
            });


ntex.rs is down

@leon3s website is down, should we use GitHub for hosting?

The website is working for me ?

I see this:
Web server is down Error code 521
Visit cloudflare.com for more information.
2024-08-30 14:13:23 UTC
You
Browser
Working
San Jose
Cloudflare
Working
ntex.rs
Host
Error

You aren't in https

I removed the feature because of this article: https://jviide.iki.fi/http-redirects
Let me know what you think about it

I used hsts instead

it doesn't matter, ntex.rs is plain text

alright i'll add the redirection

interesting, it redirects now. but initially it should error.
in any case, let's add redirect

It's redirect because the browser hit the hsts header, it wont redirect if you open a incognito tab and try again

I have added a redirection

thanks


Create operations-panel.md

Might be a bit big and wordy, I plan to add a gif when I have access to a mouse.

There's been a file copy error, pull closed.


You can make bots more intelligent? Very boring to play :с

You can make bots more intelligent? Just, well, judge for yourself from the enemy 10k I'm near Sneem into 16 cells(N). What would you do? :) Еat of course...
P.s: You can write questions in their native language? "Russian"

This is a duplicate.
Please check previous issues.

Just no


chore(docs): add license badge to readme

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 91.579%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
160

Relevant Lines:
174

💛  - Coveralls


⚠ SceneTime has degraded performance

In 5ce6a0b, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 1398 ms

Resolved: SceneTime performance has improved in 6485da7 after 6 minutes.


Integrate API Negotiation into KCP

This PR introduces a prototype of API Negotiation for KCP based on the Structural Schema compatibility checker introduced in PR https://github.com/kcp-dev/kcp/pull/114.

It defines 2 new CRDs:

APIResourceImports: they contain the description of API resources imported from external clusters (physical or logical), with the OpenAPIv3 schema built from what has been pulled from the external cluster by the CRDPuller. In a KCP logical cluster, there would be 1 APIResourceImport per API resource and per location (typically physical cluster)
NegociatedAPIResources: they define the result of the API Negotiation between all the APIResourceImports for a given api resource, and contain the resource schema that is expected to be used inside the KCP logical cluster. In a logical cluster, there would be only 1 NegociatedAPIResource per API Resource. APIResourceImports are checked against the NegociatedAPIResource for compatibility. NegociatedAPIResources can be published to the KCP logical cluster, so that the API will be available and visible in the logical cluster. This is done by creating a CRD with the information, especially the schema, contained inside the NegociatedAPIResource.

More information about each type is provided in the code comments.

It implements the API negotiation logic in a dedicated controller that also watches CRDs, in addition to those 2 new CRDs.

It integrates the API Negotiation inside KCP by creating APIResourceImports for each API resource imported from physical clusters, instead of directly creating a CRD without any API compatibility check (as it was before)

It adds the apiNegotiation demo script that showcases how the API negotiation works, with 1 kind cluster based on the latest Kubernetes 1.20 version, and the second cluster based on Kubernetes 1.5.

This PR is indeed a duplicate of PR https://github.com/kcp-dev/kcp/pull/115 that was by mistake merged against branch kcp:schema-diff-and-lcd-builder instead of the main main


truffle init doesn't create App folder

thank you for help

➤ Rich Linnell commented:
They've changed the way Truffle works.


Subscription: How to handle missed events?

Can I use graphql subscriptions to get all updates happened since I was last connected?
Is this kind of functionality build into graphql subscriptions (I believe it isn't)?
If not: What is a declarative way of solving this (without reinventing the wheel)?

I have the feeling I'm missing something obvious here...

I of course can use 'intermittent polling' as suggested in the apollo docs.
For this, I guess I could create an 'event' type (with a 'sinceTimestamp' variable) in my schema, resolve it by querying a persisted subscription event list and send it back to the client.
 (so these events are distributed to all subscribed components)
I think it makes sense to handle 'subscription events' and 'polled events' the same way as vue-apollo has the "components take care of their data on their own"-philosophy (at least that's how I understand it)...
A "lazy" way (but not the 'vue-apollo'-way?) of doing it could be to have a dedicated (client) service which updates the cache based on polled subscription events.
But then I would have 'update cache based on event x'-logic in my components AND in my service (code duplication).
The 'wrong' / not declarative action would be to move the subscription logic out of my components to only have those in just one place.
Plus all of the above feels like 'reinventing the wheel' to me.
I guess its worth mentioning that a complete refetch of my cache is something I like to avoid (as it can get big)

Reseting the cache will refetch all the necessary queries, then your subscriptions will be up again to get updates from the server.

Thx for your reply!
I'm looking for a way to update the local cache instead of completely refetching it (as the cache can get big).

Facing same problem.
I want to use subscription event "FORCE_LOGOUT". but when user is offline it can't receives that event.
How I suppose to do when he comes online.
It is possible with managing token with backend.
but I want to use subscription event to logout user when related event happens.


Completion kind types symbol

Is your feature request related to a problem? Please describe.
I want to basically have a custom symbol based on the completion type in the pmenu, something like this https://github.com/neoclide/coc.nvim/pull/603 . Can this configuration achievable in the current setup?
Describe the solution you'd like
Having control it through a mapping like let g:completion_kind_overrides.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

@yashLadha That was already discussed (and partially implemented) in https://github.com/nvim-lua/completion-nvim/issues/36, see https://github.com/nvim-lua/completion-nvim/issues/36#issuecomment-617329770
But it's actually not necessary to support this in completion-nvim since that's already really easy with core LSP functionality: https://github.com/nvim-lua/completion-nvim/wiki/Customizing-LSP-label

Yes thanks for sharing the resource. Would be nice to have it in the README under customization.


feat: use safe securityContext as default

Signed-off-by: Jorge Turrado<EMAIL_ADDRESS>Provide a description of what has been changed
Checklist

[x] Commits are signed with Developer Certificate of Origin (DCO - learn more)
[x] Tests have been added
[x] A PR is opened to update our Helm chart (repo) (if applicable, ie. when deployment manifests are modified)
[x] A PR is opened to update the documentation on (repo) (if applicable)
[x] Changelog has been updated and is aligned with our changelog requirements

Related #2933

/run-e2e

/run-e2e

/run-e2e

Hay! Thank you!


Use compile_commands.json as base for clang-tidy

In the clang-tidy script we were adding all arguments to clang-tidy by hand. Using the -p flag it will use the project build file to infer the correct build flags and includes.

This worked locally - but I guess a version mismatch between my and Ubuntus clang-tidy version makes this fail. I'll get back to this when I have some time to play around with an Ubuntu VM.


Compatibility with newer versions of ol

Hello. I found this repo which can be useful for OL Web Components I've been working on but I see a dependency on v6 of Open Layers. They have been releasing major versions frequently, now at v10
Do you think your package could be (made) compatible with any ol >= 6?

Hi, this library is currently a single function with 15 lines of code and no dependencies (except OL of course).
I think it should be trivial to make it compatible with newer versions if for any reason it should break.
Do you want to create a pull request ? Do you want a better understanding of the code ?
Note that I produced this code for a specific use case I had. I would advise against giving it any untrusted user input.

Well, I tried it with v8 and it just worked. You're right, the code is quite simple.
That said, I found that I need a small change where Style is only created manually. Need to think about this

Could you clarify?
It is true that I only created loadStyle, where I initially intended on having a dumpStyle function to do the opposite of loadStyle. That said, the need for the reverse function never materialized in my case. It is true that a serializer would be a great addition to this de-serialization function to complete the library.
On a small note, I noticed that my latest changes were not pushed to npm. The version currently on the registry has a small bug where it doesn't handle offset arrays and anchor position for icons.

Could you clarify?

The use case is that in plain HTML I can only set text attributes. I work on Web Components which wrap the Open Layers concepts, such as ol-select and to be able to set the featureStyle without JS you'd do something like
<ol-select feature-style='{
  "fill": { "Fill": {
    "color": "rgba(255,255,255,0.4)"
  }},
  "stroke": { "Stroke": {
    "color": "#ffb15e",
    "width": 5
  }}
}'></ol-select>

This would translate to
const element = document.qerySelector('ol-select')

element.featureStyle = new Style({
  fill: new Fill({
    color: 'rgba(255,255,255,0.4)',
  }),
  stroke: new Stroke({
    color: '#ffb15e',
    width: 5,
  }),
})

So, the change I mentioned in my earlier comment is that I drop the top-level Style from the JSON, given the assumption that the attribute value represents the argument given to new Style() constructor and not style object as a whole

And to be honest, I'd simplify this one step further, removing the explicit "Fill" etc and instead picking the class based on the usage
<ol-select feature-style='{
- "fill": { "Fill": {
- "fill": {
    "color": "rgba(255,255,255,0.4)"
-  }},
+ },
- "stroke": { "Stroke": {
+ "stroke": {
    "color": "#ffb15e",
    "width": 5
- }}
+ }
}'></ol-select>

This would add complexity which I am not willing to introduce.
While it is true that sometimes fill: Fill is redundant, it is also redundant in the open layers code.
In many cases, there is no redundancy. For example image: Circle. Handling these cases differently would lead to complex code.

Gotcha, my simplistic view of a particular use case obscures other possible combinations

The Styles on the top allows the implementation to be recursive and to work with partial styles.

Well, I think that partial style are still possible in my modification but there is a limitation where you'd want CircleStyle as the root, right?

Gotcha, my simplistic view of a particular use case obscures other possible combinations

But as I said, this is only made with 15 lines of code so feel free to adapt to your specific situation and copy it into your codebase.

I think I'm happy with your code. Would only relax the dependency.

I think I'm happy with your code. Would only relax the dependency.

For some reason, I am locked out of NPM so I will not be able to push it right now to the repository but will add a GitHub action next week to do that automatically.

No worries. Thanks's for merging

@tpluscode I pushed on npm sorry for the delay, I had my account locked


Sync: Recovery PDF Location

Task/Issue URL:
Description
Steps to test this PR
Feature 1

[ ]
[ ]

UI changes

Before
After

!(Upload before screenshot)
(Upload after screenshot)

Current dependencies on/for this PR:

develop

PR #3900   👈

This stack of pull requests is managed by Graphite.


BI-672 - Implement POST /variables in Breedbase

Changes

Added db patch to allow saving external references and variable method data
Added POST /variables

Saves all data needed for bi-api integration

Added POST /variables to /serverinfo
Pushed breedbase images to dockerhub

breedinginsight/breedbase built from https://github.com/Breeding-Insight/sgn
breedinginsight/breedbase_pg built from https://github.com/nickmorales/postgres_dockerfile

Running
git clone https://github.com/Breeding-Insight/breedbase_dockerfile.git
cd breedbase_dockerfile
git checkout feature/BI-672
./prepare.sh
./prepare_host.sh
cd repos/sgn
git checkout feature/BI-672

Run breedbase development profile (restarts server on changes to code and mounts source):
docker-compose up -d breedbase-dev

Run patch on db to add new cvterms:
docker exec -it breedbase_web bash
cd db/00132
mx-run AddTraitCvterms -H breedbase_db -D empty_fixture -u admin

configure sgn_local.conf to have trait ontology variable names tailored to species:
trait_ontology_db_name BI_123
trait_ontology_cv_name blueberry_trait
trait_ontology_cvterm_name BI blueberry trait ontology

Update onto_root_namespaces in sgn_local.conf to point to correct trait ontology for ontology browser:
onto_root_namespaces  BI_123 (Blueberry Trait Ontology), GO (Gene Ontology), PO (Plant Ontology), SO (Sequence Ontology), PATO (Phenotype and Trait Ontology)

Add trait ontology variables to db tables:
INSERT INTO db (name) VALUES('BI_123');
INSERT INTO cv (name) VALUES('blueberry_trait');
INSERT INTO dbxref(db_id, accession) VALUES((SELECT db_id FROM db WHERE name='BI_123') , '0000000');
INSERT INTO cvterm(cv_id, name, dbxref_id) VALUES(
(SELECT cv_id FROM cv WHERE name='blueberry_trait'),
'BI blueberry trait ontology',
(SELECT dbxref_id FROM dbxref WHERE db_id=(SELECT db_id FROM db WHERE name='BI_123') AND accession='0000000')
);
INSERT INTO dbxref(db_id, accession) VALUES((SELECT db_id FROM db WHERE name='BI_123'), 'VARIABLE_OF');
INSERT INTO cvterm(cv_id, name, dbxref_id, is_relationshiptype) VALUES(
(SELECT cv_id FROM cv WHERE name='blueberry_trait'),
'VARIABLE_OF',
(SELECT dbxref_id FROM dbxref WHERE db_id=(SELECT db_id FROM db WHERE name='BI_123') AND accession='VARIABLE_OF'),
1
);

Limitations

Ontology id is ignored for POST /variables and ontology specified in sgn_local.conf is always used

Doesn't require bi-api to get that information, works as-is

Bi-api doesn't currently do paging for brapi service request so Breedbase response for GET /variables is set to a large page size so that all varaibles are returned in one response

May not play nice with Field Book, should probably add pageSize query parameter in bi-api or otherwise handle paging

Does not store/respond with all BrAPI variable data fields, just that needed by bi-api/Field Book

Scale just stores min, max, categories, decimal places
Method just stores class, description, formula

Have not tested Field Book integration, just bi-api. Will need to do that in another card
Some preliminary changes to support full integration with /programs & /locations, rest will need to be completed in BI-676
Variables should be loaded using POST /variables since ontology scripts do not update all data used by GET /variables

Bi-api doesn't currently do paging for brapi service request so Breedbase response for GET /variables is set to a large page size so that all varaibles are returned in one response
May not play nice with Field Book, should probably add pageSize query parameter in bi-api or otherwise handle paging

Is there a card created for this?

Have not tested Field Book integration, just bi-api. Will need to do that in another card

How about for this one?

Bi-api doesn't currently do paging for brapi service request so Breedbase response for GET /variables is set to a large page size so that all varaibles are returned in one response
May not play nice with Field Book, should probably add pageSize query parameter in bi-api or otherwise handle paging

Is there a card created for this?

Have not tested Field Book integration, just bi-api. Will need to do that in another card

How about for this one?

Bi-api doesn't currently do paging for brapi service request so Breedbase response for GET /variables is set to a large page size so that all varaibles are returned in one response
May not play nice with Field Book, should probably add pageSize query parameter in bi-api or otherwise handle paging

Is there a card created for this?

Have not tested Field Book integration, just bi-api. Will need to do that in another card

How about for this one?

There are now:
https://breedinginsight.atlassian.net/browse/BI-702?atlOrigin=eyJpIjoiNDlkNGZmY2JjMDNiNDA2MDhhMmI5NmRhZTQ5Yzg2YjgiLCJwIjoiaiJ9
https://breedinginsight.atlassian.net/browse/BI-703?atlOrigin=eyJpIjoiMGI0ZTY5NWRiYmUxNDIyNzgwMzA3OTNhMjNkY2VlZGUiLCJwIjoiaiJ9

Bi-api doesn't currently do paging for brapi service request so Breedbase response for GET /variables is set to a large page size so that all varaibles are returned in one response
May not play nice with Field Book, should probably add pageSize query parameter in bi-api or otherwise handle paging

Is there a card created for this?

Have not tested Field Book integration, just bi-api. Will need to do that in another card

How about for this one?

There are now:
https://breedinginsight.atlassian.net/browse/BI-702?atlOrigin=eyJpIjoiNDlkNGZmY2JjMDNiNDA2MDhhMmI5NmRhZTQ5Yzg2YjgiLCJwIjoiaiJ9
https://breedinginsight.atlassian.net/browse/BI-703?atlOrigin=eyJpIjoiMGI0ZTY5NWRiYmUxNDIyNzgwMzA3OTNhMjNkY2VlZGUiLCJwIjoiaiJ9


Remove erroneous legal statements

Fixes #144.
Status

[x] Ready for merge

Codecov Report

Merging #145 (c7aeac5) into main (bd36bc5) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #145   +/-   ##
=======================================
  Coverage   66.67%   66.67%
=======================================
  Files         331      331
  Lines       73714    73714
=======================================
  Hits        49152    49152
  Misses      24562    24562

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Disable extension point org.jetbrains.kotlin.com.intellij.treeCopyHandler

Description
In Kotlin 1.9 the extension points of the embedded kotlin compiler will change. Ktlint only uses the org.jetbrains.kotlin.com.intellij.treeCopyHandler extension point. This extension is not yet supported in 1.9, neither is it documented (#KT-58704). Without this extension point it might happen that your custom rules will throw exceptions during runtime. See #1981.
In Ktlint, 7 out of 77 rules needed small and sometimes bigger changes to become independent of the extension point org.jetbrains.kotlin.com.intellij.treeCopyHandler. The impact on your custom rules may vary dependent on the way the autocorrect has been implemented. When manipulating ASTNodes there seems to be no impact. When, manipulating PsiElements, some functions consistently result in a runtime exception.
Based on the refactoring of the rules as provided by ktlint-ruleset-standard in Ktlint 0.49.x the suggested refactoring is as follows:

Replace LeafElement.replaceWithText(String) with LeafElement.rawReplaceWithText(String).
Replace PsiElement.addAfter(PsiElement, PsiElement) with AstNode.addChild(AstNode, AstNode). Note that this method inserts the new node (first) argument before the second argument node and as of that is not a simple replacement of the PsiElement.addAfter(PsiElement, PsiElement).
Replace PsiElement.replace(PsiElement) with a sequence of AstNode.addChild(AstNode, AstNode) and AstNode.removeChild(AstNode).

Be aware that your custom rules might use other functions which also throw exceptions when the extension point org.jetbrains.kotlin.com.intellij.treeCopyHandler is no longer supported.
In order to help you to analyse and fix the problems with your custom rules, ktlint temporarily supports to disable the extension point org.jetbrains.kotlin.com.intellij.treeCopyHandler using a flag. This flag is available in the Ktlint CLI and in the KtlintRuleEngine. By default, the extension point is enabled like it was in previous versions of ktlint.
At least you should analyse the problems by running your test suits by running ktlint and disabling the extension point. Next you can start with fixing and releasing the updated rules. All rules in this version of ktlint have already been refactored and are not dependent on the extension point anymore. In Ktlint CLI the flag is to be activated with parameter --disable-kotlin-extension-point. API Consumers that use the KtlintRuleEngine directly, have to set property enableKotlinCompilerExtensionPoint to false.
At this point in time, it is not yet decided what the next steps will be. Ktlint might drop the support of the extension points entirely. Or, if the extension point org.jetbrains.kotlin.com.intellij.treeCopyHandler is fully supported at the time that ktlint will be based on kotlin 1.9 it might be kept. In either case, the flag will be dropped in a next version of ktlint.
Checklist

[X] PR description added
[X] tests are added
[X] KtLint has been applied on source code itself and violations are fixed
[ ] documentation is updated
[X] CHANGELOG.md is updated

In case of adding a new rule:

[ ] Rule is added to rules documentation

I'm wondering if it would be possible to log instead of require the user to opt in to use a flag. I'm thinking of Gradle warnings in the form of: `You are using treeCopyHandler. This will be unsupported in Kotlin 1.9.0 ....'

It is not about opt-in by end users. If kotlin 1.9 does not support the extension point then the rule provider is responsible for making the rule compatible with 1.9 without falling back on this extension point. The idea of this change is that rule providers can check the vulnerability for failures in their rule whenever we upgrade to kotlin 1.9.
For normal users of ktlint this functionality has to be invisible. That is why the Ktlint cli parameter is hidden from the help command.


Form-o-fill doesn't extract properly fields/buttons with no 'name' attribute

Here's an example website- http://www.istqb.org/login.html
Form-o-fill extracts the button as
 {
    "selector": "input[name='']",
    "value": ""
  }

Which will give an error while execution.

Instead it should have been extracted as-
 {
    "selector": "button[type='submit']",
    "value": ""
  }

This wrong extraction takes place, everytime when the field/button doesn't have 'name' attribute defined.

Hi,
thanks for the issue report!
Indeed the extract functionality could need some work.
I'll take this on next.

Ideas:
Always check to see if "unique" already reached.

Has id => use #id
Has class? use nodeName+id
Unique element ? Use tag
Not unique -> add parent in front and recurse.

Will be released with the next version (3.6.0)


Is there any SLA if i deploy 2 VMs in paired region

I have 2 VMs one in West India and 2nd is in South India. both the individual VM would be 99.90% SLA as they are premium storage. My question is Does Microsoft provide composite SLA if i deploy the VMs in paired region?
And if yes then what would be the SLA of service in my scenario?
There is an article which mentions about the composite SLA.
https://docs.microsoft.com/en-us/azure/architecture/resiliency/#composite-slas

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

ID: 09a788e4-0130-73f2-d985-6fc3aec77974
Version Independent ID: a9f4ec3f-f0a3-b050-020b-f487c74c5179
Content: Business continuity and disaster recovery (BCDR): Azure Paired Regions
Content Source: articles/best-practices-availability-paired-regions.md
Service: multiple
GitHub Login: @rayne-wiselman
Microsoft Alias: raynew

@aquibqureshi26 the SLA would still be 99.90% unless you also paired them with a load balancer to manage the traffic between the two. Without that there is nothing actually binding the two VMs together to ensure high availability.

thanks. Yes i was assuming that traffic is being load balanced. if I bind it with load balancer then SLA for my service would increase than 99.90%? then what would be the SLA if load balancer is being used.

For all Internet facing Virtual Machines that have two or more instances deployed in the same Availability Set, we guarantee you will have external connectivity at least 99.95% of the time.
So deploying to two paired regions does not actually matter. You just need to have the VMs in the same AV set which then means they are in separate fault domains and you get the 99.95% SLA instead of the 99.90%
https://azure.microsoft.com/en-us/support/legal/sla/virtual-machines/v1_0/
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/manage-availability

there should be some SLA as per the composite SLA. but I think it is not available for VMs
https://docs.microsoft.com/en-us/azure/architecture/resiliency/#composite-slas

@aquibqureshi26 correct the link you shared does not apply to VMs. Only the SLAs I provided in the above links apply to VMs.

And last question, do you know which azure service is applicable for composite SLA

@aquibqureshi26 if you read back over the doc you linked composite SLA is just a combination of two different services each with their own SLA.
So in the example, we have a Web App and a SQL DB

So it is just a combination of two services with separate SLA terms and how you could in theory combine both the SLAs to come up with a composite SLA

thanks buddy.


fix: -force is deprecated, use -auto-approve to delete in tf15

addresses #127
@jmccann could you please review?

Can you update relevant tests at https://github.com/jmccann/drone-terraform/blob/master/plugin_test.go#L102

Thank you for the review, @jmccann. Sorry for the delay, and thanks for pointing out on tests 🤦 I should have noticed they exist 😄 The fix is pushed, "go test" is all green on my machine


How to get the detect model on my own datasets?

Thanks for authors and creative coders for OWOD, and I have some questions:

1 can this code be used for new datasets and get my own detect models for indoors targets? Will it detect all the objects in the room labelled with certain names and uknown （will majority of objects that never appeared in training be labelled "unknow"）?
I just wonder what will be the "unknow" due to numerous new objects and complex enviroment.  because the "unknow" comes from the training feature lantern space, I really want to know what will be labelled as "unknow" and what will have no labels in the new datasets?

2 if I want to have trained the model with my own datasets. should I choose to train your Task 1-4 first ? or I just only need to  change the dataset path and use your task1 process?
can anyone give me a simple way to achieve the goal aimed at training some indoors objections (and labelling the never appeared objects as "unknow" in general), just as easy as yolo series tutorial for green hands ?

3 from the google drive, I only see 3 models and no pth model for task 4. while is it a must to train the tons of data (all the VOC & COCO) so that i can get the final pth model in task 4?  where can I get the final pth model after Task 1-4 or the final pre-trained model ?

4 I test the model with a indoors video using the following cmd:

python demo.py --config-file ../configs/OWOD/t1/t1_test.yaml --video-input /home/xxxx/shanghai.mp4 --opt MODEL.WEIGHTS /home/xxxx/t1/model_final.pth
using the  t1 model tested in a video  there are many "unknow" objects while using t3 model there are almost no "unknow" objects.
is it a capability degradation of detecting unknow objects? or something wrong?
Look forward to your help and anwsers, thanks again in advance~~~

@JosephKJ @salman-h-khan
look forward to your reply, thx very much!

Hi Zhang,
Thank you for your interest in our work. Please find my responses inline:

1 can this code be used for new datasets and get my own detect models for indoors targets? Will it detect all the objects in the room labelled with certain names and uknown （will majority of objects that never appeared in training be labelled "unknow"）?
I just wonder what will be the "unknow" due to numerous new objects and complex enviroment. because the "unknow" comes from the training feature lantern space, I really want to know what will be labelled as "unknow" and what will have no labels in the new datasets?

"this code be used for new dataset"
Definitely yes, you might have to train OWOD on your new dataset. Please do note that we do require a some validation data to learn the unknown distribution.
"Will it detect all the objects in the room labelled with certain names and uknown":
These models were trained on pure academic datasets like MS COCO and VOC. Please note that the images in these datasets are very much curated and would be completely different from an indoor scenes (that you intend to test on).
"I really want to know what will be labelled as "unknow""
Those region proposals that have higher probability of belonging to the unknown Weibull distribution will be classified as an unknown. Please refer to Sec 4.3 in the paper.

2 if I want to have trained the model with my own datasets. should I choose to train your Task 1-4 first ? or I just only need to change the dataset path and use your task1 process?
can anyone give me a simple way to achieve the goal aimed at training some indoors objections (and labelling the never appeared objects as "unknow" in general), just as easy as yolo series tutorial for green hands ?

" should I choose to train your Task 1-4 first": No, you can just use the Task 1 process.
"a simple way to achieve the goal": I dont have the bandwidth to write a Quick Start Guide on Training with a Custom Dataset. But still, we can customize the methodology for your use-case if required. Please write to me at<EMAIL_ADDRESS>if you think that is helpful.

3 from the google drive, I only see 3 models and no pth model for task 4. while is it a must to train the tons of data (all the VOC & COCO) so that i can get the final pth model in task 4? where can I get the final pth model after Task 1-4 or the final pre-trained model ?

It is available in t4_ft/model_final.pth inside owod_backup folder.

4 I test the model with a indoors video using the following cmd:
using the t1 model tested in a video there are many "unknow" objects while using t3 model there are almost no "unknow" objects.
is it a capability degradation of detecting unknow objects? or something wrong?

This is interesting, would be interested to see your results. Again, we cannot expect it to work out-of-the-box as your dataset is very different. Always use the model from 't*_ft'.
I hope this clarifies many of your questions, please do reopen this issue if required. Thank you.


Failed to install Error: Command failed with exit code 1

Hello the plugin installation is done without problem, once I run ionic cordova prepare android I have this error
(Sorry for my english i use google translate)
Running hook: C:\Users\alexf\Desktop\Ionic\091120\2\LaPamparina\plugins\cordova-plugin-fcm-with-dependecy-updated\scripts\install_ionic_dependencies.bat C:\Users\alexf\Desktop\Ionic\091120\2\LaPamparina
events.js:291
throw er; // Unhandled 'error' event
^
Error: spawn npm ENOENT
at Process.ChildProcess._handle.onexit (internal/child_process.js:267:19)
at onErrorNT (internal/child_process.js:469:16)
at processTicksAndRejections (internal/process/task_queues.js:84:21)
Emitted 'error' event on ChildProcess instance at:
at Process.ChildProcess._handle.onexit (internal/child_process.js:273:12)
at onErrorNT (internal/child_process.js:469:16)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
errno: 'ENOENT',
code: 'ENOENT',
syscall: 'spawn npm',
path: 'npm',
spawnargs: [ 'install', '--loglevel', 'error', '--no-progress' ]
}
events.js:291
throw er; // Unhandled 'error' event
^
Error: spawn npm ENOENT
at Process.ChildProcess._handle.onexit (internal/child_process.js:267:19)
at onErrorNT (internal/child_process.js:469:16)
at processTicksAndRejections (internal/process/task_queues.js:84:21)
Emitted 'error' event on ChildProcess instance at:
at Process.ChildProcess._handle.onexit (internal/child_process.js:273:12)
at onErrorNT (internal/child_process.js:469:16)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
errno: 'ENOENT',
code: 'ENOENT',
syscall: 'spawn npm',
path: 'npm',
spawnargs: [ 'install', '--loglevel', 'error', '--no-progress' ]
}
events.js:291
throw er; // Unhandled 'error' event
^
Error: spawn npm ENOENT
at Process.ChildProcess._handle.onexit (internal/child_process.js:267:19)
at onErrorNT (internal/child_process.js:469:16)
at processTicksAndRejections (internal/process/task_queues.js:84:21)
Emitted 'error' event on ChildProcess instance at:
at Process.ChildProcess._handle.onexit (internal/child_process.js:273:12)
at onErrorNT (internal/child_process.js:469:16)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
errno: 'ENOENT',
code: 'ENOENT',
syscall: 'spawn npm',
path: 'npm',
spawnargs: [ 'install', '--loglevel', 'error', '--no-progress' ]
}
Failed to install 'cordova-plugin-fcm-with-dependecy-updated': Error: Command failed with exit code 1: C:\Users\alexf\Desktop\Ionic\091120\2\LaPamparina\plugins\cordova-plugin-fcm-with-dependecy-updated\scripts\install_ionic_dependencies.bat C:\Users\alexf\Desktop\Ionic\091120\2\LaPamparina
at makeError (C:\Users\alexf\AppData\Roaming\npm\node_modules\cordova\node_modules\execa\lib\error.js:59:11)
at handlePromise (C:\Users\alexf\AppData\Roaming\npm\node_modules\cordova\node_modules\execa\index.js:114:26)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Command failed with exit code 1: C:\Users\alexf\Desktop\Ionic\091120\2\LaPamparina\plugins\cordova-plugin-fcm-with-dependecy-updated\scripts\install_ionic_dependencies.bat C:\Users\alexf\Desktop\Ionic\091120\2\LaPamparina
[ERROR] An error occurred while running subprocess cordova.
    cordova.cmd platform add android --save exited with exit code 1.

Package.json
{
"name": "LaPamparina",
"version": "0.0.1",
"author": "Ionic Framework",
"homepage": "https://ionicframework.com/",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/common": "^10.2.2",
"@angular/core": "^10.2.2",
"@angular/fire": "^6.0.4",
"@angular/forms": "^10.2.2",
"@angular/platform-browser": "^10.2.2",
"@angular/platform-browser-dynamic": "^10.2.2",
"@angular/router": "^10.2.2",
"@ionic-native/admob-free": "^5.29.0",
"@ionic-native/core": "^5.0.0",
"@ionic-native/firebase": "^5.29.0",
"@ionic-native/splash-screen": "^5.0.0",
"@ionic-native/status-bar": "^5.0.0",
"@ionic/angular": "^5.0.0",
"@ionic/lab": "^3.2.9",
"cordova-res": "^0.15.2",
"firebase": "^8.0.1",
"rxjs": "^6.6.3",
"tslib": "^2.0.0",
"zone.js": "^0.11.3"
},
"devDependencies": {
"@angular-devkit/build-angular": "^0.1002.0",
"@angular/cli": "^10.2.0",
"@angular/compiler": "^10.2.2",
"@angular/compiler-cli": "^10.2.2",
"@angular/language-service": "^10.2.2",
"@ionic/angular-toolkit": "^2.3.0",
"@types/jasmine": "^3.6.1",
"@types/jasminewd2": "~2.0.3",
"@types/node": "^14.14.6",
"codelyzer": "^6.0.0",
"cordova-admob-sdk": "^0.24.1",
"cordova-plugin-admob-free": "^0.27.0",
"cordova-plugin-device": "^2.0.2",
"cordova-plugin-fcm-with-dependecy-updated": "^7.6.0",
"cordova-plugin-ionic-keyboard": "^2.2.0",
"cordova-plugin-ionic-webview": "^4.2.1",
"cordova-plugin-splashscreen": "^5.0.2",
"cordova-plugin-statusbar": "^2.4.2",
"cordova-plugin-whitelist": "^1.3.3",
"cordova-promise-polyfill": "0.0.2",
"jasmine-core": "^3.6.0",
"jasmine-spec-reporter": "^6.0.0",
"karma": "^5.2.3",
"karma-chrome-launcher": "~3.1.0",
"karma-coverage-istanbul-reporter": "~3.0.2",
"karma-jasmine": "^4.0.1",
"karma-jasmine-html-reporter": "^1.5.0",
"protractor": "~7.0.0",
"ts-node": "^9.0.0",
"tslint": "~6.1.0",
"typescript": "^4.0.5"
},
"description": "An Ionic project",
"cordova": {
"plugins": {
"cordova-plugin-admob-free": {
"ADMOB_APP_ID": "ca-app-pub-xxxx~xxxxx"
},
"cordova-plugin-whitelist": {},
"cordova-plugin-statusbar": {},
"cordova-plugin-device": {},
"cordova-plugin-splashscreen": {},
"cordova-plugin-ionic-webview": {
"ANDROID_SUPPORT_ANNOTATIONS_VERSION": "27.+"
},
"cordova-plugin-ionic-keyboard": {},
"cordova-plugin-fcm-with-dependecy-updated": {
"ANDROID_DEFAULT_NOTIFICATION_ICON": "@mipmap/ic_launcher",
"ANDROID_FIREBASE_BOM_VERSION": "26.0.0",
"ANDROID_GOOGLE_SERVICES_VERSION": "4.3.4",
"ANDROID_GRADLE_TOOLS_VERSION": "4.1.0",
"IOS_FIREBASE_MESSAGING_VERSION": "7.0.0"
}
},
"platforms": []
}
}

@Kastoner63
Please share the output of node --version, npm --version and npm install --loglevel error --no-progress

node --version
v12.19.0
npm --version
6.14.8
npm install --loglevel error --no-progress
audited 1819 packages in 7.099s
88 packages are looking for funding
run npm fund for details
found 0 vulnerabilities

same problem had to use version 7.0.9 instead, just added "cordova-plugin-fcm-with-dependecy-updated": "^7.0.9" to package.json and did npm i

Here we experienced the same problem. I used version 7.5.0 and works like a charm.
ionic cordova plugin add<EMAIL_ADDRESS>
Node version: v12.18.0
NPM version: 6.14.7

Yes, broken for me too.
Subproject Path: CordovaLib
Subproject Path: app
Running hook: D:\Projects\unitaskr\ionic-new\myApp\plugins\cordova-plugin-fcm-with-dependecy-updated\scripts\install_ionic_dependencies.bat D:\Projects\unitaskr\ionic-new\myApp
events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: spawn npm ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:240:19)
    at onErrorNT (internal/child_process.js:415:16)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    at Function.Module.runMain (internal/modules/cjs/loader.js:834:11)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
Emitted 'error' event at:
    at Process.ChildProcess._handle.onexit (internal/child_process.js:246:12)
    at onErrorNT (internal/child_process.js:415:16)
    [... lines matching original stack trace ...]
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: spawn npm ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:240:19)
    at onErrorNT (internal/child_process.js:415:16)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    at Function.Module.runMain (internal/modules/cjs/loader.js:834:11)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
Emitted 'error' event at:
    at Process.ChildProcess._handle.onexit (internal/child_process.js:246:12)
    at onErrorNT (internal/child_process.js:415:16)
    [... lines matching original stack trace ...]
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: spawn npm ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:240:19)
    at onErrorNT (internal/child_process.js:415:16)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    at Function.Module.runMain (internal/modules/cjs/loader.js:834:11)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
Emitted 'error' event at:
    at Process.ChildProcess._handle.onexit (internal/child_process.js:246:12)
    at onErrorNT (internal/child_process.js:415:16)
    [... lines matching original stack trace ...]
    at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
Failed to install 'cordova-plugin-fcm-with-dependecy-updated': Error: Command failed with exit code 1: D:\Projects\unitaskr\ioionic-new\myApp\plugins\cordova-plugin-fcm-with-dependecy-updated\scripts\install_ionic_dependencies.bat D:\Projects\unitaskior\ionic-new\myApp
    at makeError (C:\Users\craig\AppData\Roaming\npm\node_modules\cordova\node_modules\execa\lib\error.js:59:11)
    at handlePromise (C:\Users\craig\AppData\Roaming\npm\node_modules\cordova\node_modules\execa\index.js:114:26)
Command failed with exit code 1: D:\Projects\unitaskr\ionic-new\myApp\plugins\cordova-plugin-fcm-with-dependecy-updated\scriptpts\install_ionic_dependencies.bat D:\Projects\unitaskr\ionic-new\myApp
    at process._tickCallback (internal/process/next_tick.js:68:7)
[ERROR] An error occurred while running subprocess cordova.

PS> ionic info

Ionic:

   Ionic CLI                     : 6.12.1 (C:\Users\craig\AppData\Roaming\npm\node_modules\@ionic\cli)
   Ionic Framework               : @ionic/angular 5.4.4
   @angular-devkit/build-angular : 0.1000.8
   @angular-devkit/schematics    : 10.0.8
   @angular/cli                  : 10.0.8
   @ionic/angular-toolkit        : 2.3.3

Cordova:

   Cordova CLI       : 10.0.0
   Cordova Platforms : android 9.0.0
   Cordova Plugins   : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.2.1, (and 10 other plugins)

Utility:

   cordova-res (update available: 0.15.2) : 0.15.1
   native-run                             : 1.2.2

System:

   Android SDK Tools : 26.1.1 (C:\Users\craig\AppData\Local\Android\Sdk)
   NodeJS            : v10.23.0 (D:\Program Files (x86)\node-v10.23.0-win-x64\node.exe)
   npm               : 6.9.2
   OS                : Windows 10

This seems to be a Windows-specific error. The node script is trying to call the npm command to install ionic-specific dependencies. Unfortunately, npm is not found by the system. Would you check if it is available in the system path, like in the example here https://stackoverflow.com/questions/27864040/fixing-npm-path-in-windows-8-and-10.

The path is well available in the environment variables. Now i have this error
`FAILURE: Build failed with an exception.

What went wrong:
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.

Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
Could not find com.google.firebase:firebase-bom:null.
Required by:
project :app
Could not find com.google.firebase:firebase-messaging:.
Required by:
project :app

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 20s
Command failed with exit code 1: C:\Users\alexf\Desktop\Ionic\191120\LaPamparina\platforms\android\gradlew cdvBuildDebug -b C:\Users\alexf\Desktop\Ionic\191120\LaPamparina\platforms\android\build.gradle
[ERROR] An error occurred while running subprocess cordova.
    cordova.cmd build android exited with exit code 1.

    Re-running this command with the --verbose flag may provide more information.`

@andrehtissot looks like node is in my path:
PS> $env:Path | Split-String ";" | ? { $_ -like '*node*' }
D:\Program Files (x86)\node-v10.23.0-win-x64

Hello,
I ran into this issue as well when I updated from the plugin 7.3.1 to 7.6.0.
NodeJS: 14.15.1
NPM: 6.14.8
I tested a bit and digged deeper and found out that version 7.4 was still working whereas 7.5 failed to be installed via cordova. When I looked at the changes made in between and after some research I suspected the npm spawn used to install the ionic dependencies to be responsible for the issue.
Online they point out that calling npm via spawn can lead to issues on Windows because on Windows a command line call to npm actually runs npm.cmd instead of npm (which is not executable on Windows). So calling npm via spawn leads to an error because Windows finds npm and realizes it's not executable and then fails to spawn it correctly. For it to work on Windows you would actually need to spawn npm.cmd.
Explained also here: https://stackoverflow.com/questions/17516772/using-nodejss-spawn-causes-unknown-option-and-error-spawn-enoent-err
I hope this helps you to fix this.


save complex filters/queries to easy switch between most used ones?

Hi again!
so as stated before I LOVE using tags-overview! I will use it heavily going forward now with yaml property support and was wondering if I could ask to add the ability to save (Ala bookmark or list) complex filters/queries I use?
for example when I filter by tag then properly etc like this

I would like to quick jump/load different sets of filters, does that make sense?
thx so much
Z

That does make sense indeed :), and I've actually been doing something similar with another project I've been working with. So I can definitely try to add it to this plugin as well.

This is now fixed in the latest release (1.0.4). There is now a save icon in the top left corner where you can find this functionality. (The top area looks a bit empty now but I have plans to add more icons there further down the road..)
I will also add a section to the Readme, explaining the save/load functionality shortly.


[1.12.2] Ghast, Blaze, wither and fire charge projectiles not working in multiplayer

When any of these are fired off they immediately act as if they have hit something, but do no damage. Arrows, ender dragon attacks, other modded projectiles seem to work, though.

Update: Shulker projectiles also do not function serverside

Fixed in ede2651


Organize community integrations

The original list was confusing, so I separated web apps from desktop apps, and further categorized desktop apps into a table. Making it easier to find exactly what you need.

hey, just wanted to say thank you for the contribution! Closing because there are just so many projects now.


Added support for relatively positioned elements with top offset

I simply track the top offset of the sticky elements and then factor that offset in when determining where to stick and unstick the elements. This prevents the "jump" of a relatively positioned element with a top offset.

Hi! I'm searching for a solution for something that I think I related to yours. Can you verify, please?
And: is it possible to fix this with some kind of delay in my JavaScript file (in other words without editing the core files for Sticky)
https://github.com/garand/sticky/issues/213


Lightning opacity doesn't seem to be working on v3.8

OpenGL error 0x0502

sorry fixed it.... the problem was at my end


WRKLDS-547

Description
This update allows for the use case where oc-mirror copy (with --use-oci-feature flags) was not used.
The use case is for the --oci-feature-action
It will check for the relevant directories and if not found will create the relevant file structures to allow for the oc-mirror --oci-feature-action=mirror to work.
This was a suggested work around from @jchunkins

[ ] Bug fix (non-breaking change which fixes an issue)
[x ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Added test case in the TestBulkImageMirror function
Test Configuration:

Firmware version:
Hardware:
Toolchain:
SDK:

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

/assign @jchunkins
Sherine is away for 2 days lecturing at her local university. I didn't have permission to push to the current PR-516 so I created a new one to get your early feedback. We can work out the merging/update to 516 later.
Let me know if this works. I used the suggestion you made in the standup yesterday.

So when I was reviewing/debugging this code, I realized that just handling the FBC is not enough. Since the "copy command" is putting content into the oc-mirror-workspace, the mirror command needs to do this work too. I took what you have in this PR and made changes of my own. I assumed that I don't have permissions to your git repo, so I have included a diff that you can probably apply to your workspace and see the actual changes.
At any rate, the changes are as follows:

putting the olm_artifacts into the same directory where the OCI artifacts are located is not ideal. Instead I moved this to the current working directory. The current working directory (i.e. cwdtest in the example) looks like this after execution:cwdtest
├── oc-mirror-workspace
│   └── src
│       └── v2
└── olm_artifacts
    └── common-services
        └── configs

We needed a way to know if the related images needed to be copied to the local workspace, and the easiest way to do that is during the check to see if the FBC catalog was downloaded or not yet (i.e. checking for existence of <current working directory>/olm_artifacts/<repo>/<config folder>). If this folder does already exist, then we set a relatedImagesDownloaded boolean to true to indicate that we don't need to fetch the images into the local workspace.
I refactored the "source to workspace" mapping generation from the "copy command" into a function called generateSrcToFileMapping so we can share the code in the "mirror command". When relatedImagesDownloaded is false, we then get the mappings and mirror them to get the workspace populated

Note that I did not do anything with the test cases... hoping if you accept these changes you can adjust the tests as necessary. Below are the results of running git diff pkg/cli/mirror/copy.go. If you'd prefer that I push to your repo (which may be easier) I'd need to be given GitHub permissions to do so.

diff --git a/pkg/cli/mirror/copy.go b/pkg/cli/mirror/copy.go
index a3f61995..25c8ab96 100644
--- a/pkg/cli/mirror/copy.go
+++ b/pkg/cli/mirror/copy.go
@@ -114,48 +114,11 @@ func (o *MirrorOptions) bulkImageCopy(isc *v1alpha2.ImageSetConfiguration, srcSk
                        return err
                }

-               for _, i := range relatedImages {
-                       if i.Image == "" {
-                               klog.Warningf("invalid related image %s: reference empty", i.Name)
-                               continue
-                       }
-                       name := i.Name
-                       if name == "" {
-                               //Creating a unique name for this image, that doesnt have a name
-                               name = fmt.Sprintf("%x", sha256.Sum256([]byte(i.Image)))[0:6]
-                       }
-                       srcTIR, err := image.ParseReference(i.Image)
-                       if err != nil {
-                               return err
-                       }
-                       srcTI := image.TypedImage{
-                               TypedImageReference: srcTIR,
-                               Category:            v1alpha2.TypeOperatorRelatedImage,
-                       }
-                       dstPath := "file://" + name
-                       if srcTIR.Ref.ID != "" {
-                               dstPath = dstPath + "/" + strings.TrimPrefix(srcTI.Ref.ID, "sha256:")
-                       } else if srcTIR.Ref.ID == "" && srcTIR.Ref.Tag != "" {
-                               //recreating a fake digest to copy image into
-                               //this is because dclcfg.LoadFS will create a symlink to this folder
-                               //from the tag
-                               dstPath = dstPath + "/" + fmt.Sprintf("%x", sha256.Sum256([]byte(srcTIR.Ref.Tag)))[0:6]
-                       }
-                       dstTIR, err := image.ParseReference(strings.ToLower(dstPath))
-                       if err != nil {
-                               return err
-                       }
-                       if srcTI.Ref.Tag != "" {
-                               //put the tag back because it's needed to follow symlinks by LoadFS
-                               dstTIR.Ref.Tag = srcTI.Ref.Tag
-                       }
-                       dstTI := image.TypedImage{
-                               TypedImageReference: dstTIR,
-                               Category:            v1alpha2.TypeOperatorRelatedImage,
-                       }
-                       mapping[srcTI] = dstTI
+               result, err := o.generateSrcToFileMapping(relatedImages)
+               if err != nil {
+                       return err
                }
-               break
+               mapping.Merge(result)
        }

        o.Dir = strings.TrimPrefix(o.Dir, o.OutputDir+"/")
@@ -171,6 +134,52 @@ func (o *MirrorOptions) bulkImageCopy(isc *v1alpha2.ImageSetConfiguration, srcSk
        return nil
 }

+func (o *MirrorOptions) generateSrcToFileMapping(relatedImages []declcfg.RelatedImage) (image.TypedImageMapping, error) {
+       mapping := image.TypedImageMapping{}
+       for _, i := range relatedImages {
+               if i.Image == "" {
+                       klog.Warningf("invalid related image %s: reference empty", i.Name)
+                       continue
+               }
+               name := i.Name
+               if name == "" {
+                       //Creating a unique name for this image, that doesnt have a name
+                       name = fmt.Sprintf("%x", sha256.Sum256([]byte(i.Image)))[0:6]
+               }
+               srcTIR, err := image.ParseReference(i.Image)
+               if err != nil {
+                       return nil, err
+               }
+               srcTI := image.TypedImage{
+                       TypedImageReference: srcTIR,
+                       Category:            v1alpha2.TypeOperatorRelatedImage,
+               }
+               dstPath := "file://" + name
+               if srcTIR.Ref.ID != "" {
+                       dstPath = dstPath + "/" + strings.TrimPrefix(srcTI.Ref.ID, "sha256:")
+               } else if srcTIR.Ref.ID == "" && srcTIR.Ref.Tag != "" {
+                       //recreating a fake digest to copy image into
+                       //this is because dclcfg.LoadFS will create a symlink to this folder
+                       //from the tag
+                       dstPath = dstPath + "/" + fmt.Sprintf("%x", sha256.Sum256([]byte(srcTIR.Ref.Tag)))[0:6]
+               }
+               dstTIR, err := image.ParseReference(strings.ToLower(dstPath))
+               if err != nil {
+                       return nil, err
+               }
+               if srcTI.Ref.Tag != "" {
+                       //put the tag back because it's needed to follow symlinks by LoadFS
+                       dstTIR.Ref.Tag = srcTI.Ref.Tag
+               }
+               dstTI := image.TypedImage{
+                       TypedImageReference: dstTIR,
+                       Category:            v1alpha2.TypeOperatorRelatedImage,
+               }
+               mapping[srcTI] = dstTI
+       }
+       return mapping, nil
+}
+
 // bulkImageMirror used to mirror the relevant images (push from a directory) to
 // a remote registry in oci format
 func (o *MirrorOptions) bulkImageMirror(isc *v1alpha2.ImageSetConfiguration, destRepo, namespace string, remoteRegFuncs RemoteRegFuncs) error {
@@ -179,7 +188,8 @@ func (o *MirrorOptions) bulkImageMirror(isc *v1alpha2.ImageSetConfiguration, des
        for _, operator := range isc.Mirror.Operators {
                _, _, repo, _, _ := parseImageName(operator.Catalog)

-               artifactsPath := filepath.Join(filepath.Dir(trimProtocol(operator.Catalog)), artifactsFolderName)
+               // assume that the artifacts are placed in the <current working directory>/olm_artifacts
+               artifactsPath := artifactsFolderName

                // This allows for the use case where oc-mirror copy (with the use-oci-feature flag) was not used
                // check to see if the artifactsPath exists
@@ -187,7 +197,6 @@ func (o *MirrorOptions) bulkImageMirror(isc *v1alpha2.ImageSetConfiguration, des
                // if it does not exist the function findFBCConfig needs to be called to setup the appropriate directory structures
                // and the directory names need to change

-               var ctlgConfigsDir, catalogContentsDir string
                operatorCatalog := trimProtocol(operator.Catalog)

                // check for the valid config label to use
@@ -196,18 +205,26 @@ func (o *MirrorOptions) bulkImageMirror(isc *v1alpha2.ImageSetConfiguration, des
                        log.Fatalf("unable to retrieve configs layer for image %s:\n%v\nMake sure you run oc-mirror with --use-oci-feature and --oci-feature-action=copy prior to executing this step", operator.Catalog, err)
                        return err
                }
-
-               if _, err := os.Stat(artifactsPath); os.IsNotExist(err) {
-                       newArtifactsPath := filepath.Join(operatorCatalog, artifactsFolderName)
-                       ctlgConfigsDir, err = o.findFBCConfig(operatorCatalog, newArtifactsPath)
+               // initialize path starting with <current working directory>/olm_artifacts/<repo>
+               catalogContentsDir := filepath.Join(artifactsPath, repo)
+               // initialize path where we assume the catalog config dir is <current working directory>/olm_artifacts/<repo>/<config folder>
+               catalogConfigsDir := filepath.Join(catalogContentsDir, configsLabel)
+               relatedImagesDownloaded := false
+               if _, err := os.Stat(catalogConfigsDir); os.IsNotExist(err) {
+                       // get the FBC, and obtain its config directory
+                       // example: <current working directory>/olm_artifacts/<repo>/<config folder>
+                       ctlgConfigsDir, err := o.findFBCConfig(operatorCatalog, catalogContentsDir)
                        if err != nil {
                                return fmt.Errorf("unable to find config in %s: %v", artifactsPath, err)
                        }
-                       artifactsPath = newArtifactsPath
-                       catalogContentsDir = filepath.Join(newArtifactsPath, configsLabel)
-                       klog.Infof("Catalog configs dir %s\n", ctlgConfigsDir)
+                       // if we get here, we've established that the config folder exists, so use it
+                       catalogContentsDir = ctlgConfigsDir
+                       klog.Infof("Catalog configs dir %s\n", catalogContentsDir)
                } else {
-                       catalogContentsDir = filepath.Join(artifactsPath, repo, configsLabel)
+                       // folder exists, so use as-is
+                       klog.Infof("Catalog configs dir %s\n", catalogContentsDir)
+                       // this implies that the workspace has already been setup
+                       relatedImagesDownloaded = true
                }

                klog.Infof("Processing contents of local catalog %s\n", operator.Catalog)
@@ -218,6 +235,23 @@ func (o *MirrorOptions) bulkImageMirror(isc *v1alpha2.ImageSetConfiguration, des
                        return err
                }

+               // if the related images have not yet been placed in the workspace, then we should so so now
+               if !relatedImagesDownloaded {
+                       result, err := o.generateSrcToFileMapping(relatedImages)
+                       if err != nil {
+                               return err
+                       }
+                       if len(result) > 0 {
+                               err := remoteRegFuncs.mirrorMappings(*isc, result, o.SourceSkipTLS)
+                               if err != nil {
+                                       return err
+                               }
+                       } else {
+                               klog.Infof("no images to copy")
+                       }
+               }
+
+               // create mappings for the related images that will moved from the workspace to the final destination
                for _, i := range relatedImages {
                        if i.Image == "" {
                                klog.Warningf("invalid related image %s: reference empty", i.Name)

@jchunkins - Excellent thanks for the review and recommendations. I will update and push the changes asap

@lmzuccarelli I pushed my changes.
One thing I did not address is the removal of this code from getRelatedImages in this PR:
// if packages is empty, this means that no filtering was requested on the catalog
// in ImageSetConfig, and that we can take all packages
if len(packages) == 0 {
	for _, bundle := range cfg.Bundles {
		packages = append(packages, v1alpha2.IncludePackage{
			Name: bundle.Package,
		})
	}
}

Why was this removed? I think this is necessary still (but should be changed to iterate over cfg.Packages).

@jchunkins - ok my bad - could you include it with the relevant changes to iterate over cfg.Packages ?

@lmzuccarelli I added the code back in to handle empty package list and removed the relatedImagesDownloaded bool check

/assign @deejross
We have included a vital contrabution from @jchunkins for the mirror copy functionality.
@jchunkins - please could you also verify that the rebase and minor changes has not impacted any of your changes

@lmzuccarelli @sherine-k Looks good to me.

/lgtm

The commit history looks messy and unnecessary. I would like to ask if we can squash all the commits into one unless there is a particular reason to keep them separate. Thanks. @sherine-k @lmzuccarelli

/lgtm


onnx conversion

I converted the the torch model (magface_epoch_00025.pth) to onnx (magface_epoch_00025.onnx) and used in opencv but the extracted embedding does not match with that of torch version. What am I doing woring?
I converted the pre-trained model to onnx model using the following code:
onnx_model_path = 'magface_epoch_00025.onnx'
# Create some sample input in the shape this model expects
# This is needed because the conversion forward pass the network once
dummy_input = torch.randn(1, 3, 112, 112, device='cuda')
torch.onnx.export(model.module, dummy_input, onnx_model_path, verbose=True)

I then try to use it in opencv dnn with the following code:
net =  cv2.dnn.readNetFromONNX(onnx_model_path)
image = cv2.imread(image_path)
blob = cv2.dnn.blobFromImage(image, 1.0, (112,112),(0, 0, 0), swapRB=True, crop=False)
net.setInput(blob)
featcv = net.forward()

I converted this model to onnx and tensorRT , checkout my repo.

I converted this model to onnx and tensorRT , checkout my repo.

bác ơi, bác có thể hướng dẫn em train model với custom dataset được không ạ ?


Tracking issue for cargo audit warnings

Issue summary

[ ] ansi_term is Unmaintained: https://rustsec.org/advisories/RUSTSEC-2021-0139
[ ] difference is unmaintained: https://rustsec.org/advisories/RUSTSEC-2020-0095
[ ] mapr is Unmaintained: https://rustsec.org/advisories/RUSTSEC-2022-0053
[ ] memmap is unmaintained: https://rustsec.org/advisories/RUSTSEC-2020-0077
[ ] Crate parity-wasm deprecated by the author: https://rustsec.org/advisories/RUSTSEC-2022-0061
[ ] xml-rs is Unmaintained: https://rustsec.org/advisories/RUSTSEC-2022-0048

full log: https://github.com/ChainSafe/forest/actions/runs/3531600538/jobs/5924950212#step:7:1382
Other information and links

xml-rs is unmaintained, but it used by serde-xml-rs which is used by rust-s3, which we are using the most recent stable version. Therefore no way to get rid of it

parity-wasm became archived very recently, it is used by fvm-wasm-instrument probably it's reasonable for fvm people to fork it as is and release

memmap is unmaintained, but it used by bellperson which is used by filecoin-proofs-api, so no way to get rid of it

mapr  is unmaintained, but as it is used by storage-proof-porep, so probably one could try to replace it with something better maintained

difference is unmaintained and can be replaced without significant hurdle. I'll create an issue for it

ansi_term is unmaintained and the reason for it's existence in the tree is that structopt is using a very old version of clap

https://github.com/ChainSafe/forest/issues/2312

Could you open issue with those other crates to let them know that they're depending on unmaintained crates?

As we moved to the newest version of clap ansi_term is gone

difference is gone as well

storage-proof-porep is gone as well


[FALSE-POSITIVE] nflxvideo[.]net

Domains or links
nflxvideo[.]net
More Information
How did you discover your web site or domain was listed here?

Website was hacked
Incorrectly marked as Phishing on Phishtank or OpenPhish?

This is not my website. You will have to ask @netflix
Have you requested removal from other sources?
I do not see it listed anywhere else
Additional context
Blocking this breaks Netflix, meaning I can not watch TV shows or movies.
The requests are from the official Netflix website, and this website is clean on VirusTotal. I forced update the list, and it had no effect:

Also, I would recommend you replace ! Repo: https://github.com/mitchellkrogza/Phishing.Database with ! Homepage: https://github.com/mitchellkrogza/Phishing.Database so uBlock Origin (and also AdGuard/ABP) show a link to this repo
:exclamation:
We understand being listed on a Phishing Database like this can be frustrating and embarrassing for many web site owners. The first step is to remain calm. The second step is to rest assured one of our maintainers will address your issue as soon as possible. Please make sure you have provided as much information as possible to help speed up the process.
Send a Pull Request for faster removal
Users who understand github and creating Pull Requests can assist us with faster removals by sending a PR on the whitelist.me file

https://github.com/mitchellkrogza/Phishing.Database/blob/master/whitelist.me/whitelist.me
Please include the same above information to help speed up the whitelisting process.

@mitchellkrogza any progress? Should I open another PR?

@mitchellkrogza any progress? Should I open another PR?

Sorry the repo resets every night and all PR:s get lost. I'll add a way to do whitelisting from  https://github.com/mitchellkrogza/phishing then we can deal better with whitelisting. For now I will manually WL

If you make a anti-black(block) list in /phishing I suggest naming it something like FalsePositive.list to avoid misconception that a records should be good as such despite it might belongs to many other types of blacklists like tracking/adware/malicious etc. it is just not phishing.
I know this should be obviously... and then Trump became president....

All future PR requests for whitelisting to be done on
https://github.com/mitchellkrogza/phishing/blob/main/falsepositive.list
I will update templates when I have time
@spirillen @iam-py-test

https://github.com/mitchellkrogza/phishing/blob/main/falsepositive.list

In my opinion, this name is way clearer

Thanks for the public wanting to report FP's they will use that file. Everything else here remains unchanged as there is too many repo's and services pulling data from here.

https://github.com/mitchellkrogza/phishing/blob/main/falsepositive.list

In my opinion, this name is way clearer

My capitalization was only meant for the readability related to the talk :smile: of curse the actual filename shall be all lowercase's

https://github.com/mitchellkrogza/phishing/blob/main/falsepositive.list

In my opinion, this name is way clearer

My capitalization was only meant for the readability related to the talk 😄 of curse the actual filename shall be all lowercase's

I meant that falsepositive.list is clearer then whitelist.me

In this repo whitelist.me has to remain unchanged as  VirusTotal and others rely on that whitelist filename


sample tests fail after setting timeout

Samples tests started failing in a weird way https://circleci.com/gh/googleapis/nodejs-dlp/1929 after we changed --no-timeouts to --timeout 600000. Need to take a look and fix.

It's actually not related to the timeout as the timeout was set for system tests and it's samples test that hang. It's the inspect.test.js that fails due to timeout, I can repro locally and looking.

[assigning to @crwilcox, cc: @JustinBeckwith]
Hi Chris,
@ace-n told me you might be the person responsible for these samples.
So basically, all inspect tests (samples/system-tests/inspect.test.js) that work with external storage (GCS, Datastore, BigQuery) started failing in nightly and I can easily reproduce those fails locally using our project, long-door-651.
Could you please do the following:

verify that the samples tests timeout (or not) using your DPE project, e.g. the one @ace-n used when he was working on the tests;
fix the tests so that they don't fail with our project :)

Since it's a nightly failure, I would ask you to prioritize this issue, and if the reason cannot be found quick enough, let's just skip those inspect tests to make sure we have a green run while the problem is being investigated and fixed.
Thanks!

To add to the above: there are no running or pending DLP jobs, it looks like nothing is happening in DLP while the test is being executed. I check using this command:
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/key  # use your JSON key
export GCLOUD_PROJECT=long-door-651  # use your project name
node jobs.js list ''  | grep -v DONE | grep -v CANCELED

In situations like this I like to:

Submit a PR to skip the failing test
File a P1 to come back and fix the issue, ideally within a week.

@alexander-fenster @crwilcox thoughts?

I'm fine with that (in hope that the issue will not be forgotten forever :) )
Marking tests as skipped in #53.

The tests are complaining about a missing BigQuery dataset resource on our node project.

Error in kAnonymityAnalysis: 5 NOT_FOUND: BigQuery Dataset: long-door-651:integration_tests_dlp not found. If you believe this is incorrect, it is possible that BigQuery is currently experiencing issues, and the problem may be resolved by retrying.

Is that a fixture that we have long-door-651 and has since gone missing?

That table was deleted for some reason. (Data expiry perhaps?)
I added it back just now - run the tests again and see if they pass?

Check audit log history as to who deleted it?
On Wed, Aug 22, 2018, 9:17 PM Ace Nassri<EMAIL_ADDRESS>wrote:

That table was deleted for some reason. (Data expiry perhaps?)
I added it back just now - run the tests again and see if they pass?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/googleapis/nodejs-dlp/issues/52#issuecomment-415284794,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AfHh7YM3WMC0BzOmUokTCpeO5pp3mUAGks5uTizrgaJpZM4UDYOI
.

I did - it was a service account 😔
In any case, it was a) last November and b) likely accidental.
On Thu, Aug 23, 2018, 6:46 AM realjordanna<EMAIL_ADDRESS>wrote:

Check audit log history as to who deleted it?
On Wed, Aug 22, 2018, 9:17 PM Ace Nassri<EMAIL_ADDRESS>wrote:

That table was deleted for some reason. (Data expiry perhaps?)
I added it back just now - run the tests again and see if they pass?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<
https://github.com/googleapis/nodejs-dlp/issues/52#issuecomment-415284794
,
or mute the thread
<
https://github.com/notifications/unsubscribe-auth/AfHh7YM3WMC0BzOmUokTCpeO5pp3mUAGks5uTizrgaJpZM4UDYOI
.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/googleapis/nodejs-dlp/issues/52#issuecomment-415419503,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACM8xUEpQ2P_c11P36qdxcV-S9jZkIaRks5uTrIggaJpZM4UDYOI
.

Update: there's a buggy test that appears to be deleting all datasets in the project, including integration_tests_dlp.
@kinwa91 can you investigate?

@ace-n We just landed a PR to fix nodejs-bigquery to not delete other project's datasets. However I think the dataset was deleted again since you last added it. Can you upload it again?

ping @ace-n

Recreated the dataset. Try again?

They look to be fixed 🎉


generate Alias for LHS of semantics rules

This looks okay but can you share a snippet of what the generated kore looks like before and after?

@dwightguth I sent the snippet to you via slack


Small cleanup

Leftovers from the previous merge requests.
Now that the alternate-install-present file is always installed as part of the nvidia-common-G06 package, make the text more generic (it also covers the open variant) and avoid installing the alternatives for it.
Feel free to change the text to whatever you want, i just copied it over from the one we ship in the other drivers.
Also, remove the unused modprobe.nvidia (replaced by 50-nvidia.conf.modprobe).

I'll wipe the fork and start from scratch for the next round, but for now I don't have any new merge request to push. Thanks.

Thanks. Looks good. As usual I'll do a test rebuild.

Thanks. Looks good. As usual I'll do a test rebuild.

Build worked fine!


What is Dojo?

I added a concise definition of Dojo and a good reason to use Dojo

I'm not sure this is what we are looking for. Going to close this. Feel free to open again with a different definition.


Add test for customDecoder messages and fix typo in messages

#639 was closed because @evancz came across the same issue and fixed it in the same way, adding some useful context information. This PR extends the test from #639 to fit his implementation. It also changes the error message to use the function name customDecoder, which was misspelled as @jvoigtlaender points out in https://github.com/elm-lang/core/commit/7f6e518378ec354681ef6337d5dfa8182b2e8fca

Looks good. Can you make the test use String.contains though? I don't think it makes sense to encode the particular wording of the error message in the test, but it does make sense to make sure the users messages appears somewhere in the error message.

Sounds better. On it.

Updated with your suggestion.
It gets a bit funky when testing anything but equality for Err values, since to operate on the Err string you have to pattern match and then handle the possibility of Ok values. I've handled this in my projects my using Debug.crash to raise with an informative message on the Ok branch, so that's what I've done here. Let me know if you've found a better solution.

Probably better to use pass and fail to create the assertion.

Cool, didn't know about those functions. Updated to use fail.

Thanks!

First commits to core! 🎉🎉🎉


Provide DelegatingHandler through DI

New Feature
Currently, all services needed for my ASP.NET Core app are provided via dependency injection except for DelegatingHandlers used by Ocelot. Those are explicitly created in AddDelegatingHandler calls.
I can make my DelegatingHandlers available in the DI container (services.AddScoped<DelegatingHandler, MyCustomHandler>();) but there's no elegant way to use DI-registered delegating handlers with Ocelot.
This is especially important in cases where the custom DelegatingHandler constructor takes a DI-provided parameter.
Two ideas for how this could be made better would be:

Add a generic AddDelegatingHandler overload that just takes the type of the DelegatingHandler to be used.

AddDelegatingHandler<MyCustomHandler>()

Add an overload of AddDelegatingHandler that takes a ServiceProvider as an input parameter into its Func so that users can retrieve other DI-provided objects when creating their handlers.

AddDelegatingHandler(sp => { var foo = sp.GetRequiredService<Foo>(); return new MyCustomDelegatingHandler(foo); });

@mjrousos thanks for your interest in the project.
I agree with everything! Will take a look at the code and see if I can make the API provide one of the options.

@mjrousos I've pushed something up that just provides a method over AddSingleton with a constraint for DelegatingHandlers. I still need to tidy it up a bit and not sure about leaving AddDelegatingHandler(Func handler) as this is misleading because only singleton will work as we cache the HttpClients because of socket exhaustion.
Also you could just add delegating handlers into into the container now as services.AddSingleton<DelegatingHandler, FooHandler>(); so maybe we dont need the method over it...not sure!
Anyway feel free to check the PR and let me know if I've missed anything.

decided to remove the func way of adding handlers, through container is much better.

close after release

Ive just pushed version 4.0.0 that should fix this. I have updated major version because I have taken away the api that passed in func.

Looks good; thanks for the update!


Browser size 100 % but not progressing

Challenge Size your Images has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36.
I have set my browser zoom at 100 % and still cannot progress to the next step. It seems that the code is right.
My code:

<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet" type="text/css">

CatPhotoApp

Kitty ipsum dolor sit amet, shed everywhere shed everywhere stretching attack your ankles chase the red dot, hairball run catnip eat the grass sniff.

Purr jump eat the grass rip the couch scratched sunbathe, shed everywhere rip the couch sleep in the sink fluffy fur catnip scratched.

Sorry,
I realized I had a mistake in my code

@Vardo823   no problem.  next time, use the Help chat room for getting challenge related help.
Happy Coding.


Evaluation datasets

Hello, author, I would like to know how the dataset (Vlasic et al.dataset, THuman2.0 dataset) you are evluating, how to perform ray tracing from mesh to depth map, can you provide relevant code or links or  related method implementation details.

Hi. I extract the depth channel using Blender python API. But you can also use pifuhd visualization code and get the z channel (z = renderer.get_z_value())


Convert colors to a pattern synonym.

https://github.com/jtdaugherty/vty/blob/fa74b0ae1ca2883e9c4fbfe55abc9253dc7b9841/src/Graphics/Vty/Attributes/Color.hs#L101-L120
Perhaps it is worth to define these colors as pattern synonyms. That way these can both be used as pattern, and as expression.

I mentioned this on the PR, but to be explicit here, too: I'd rather avoid pattern synonyms. I don't view this code as being risky enough at present to warrant a change. Thanks for opening this and proposing it, though.