Single Ctrl+C is not enough to cancel az resource group delete

# az resource group delete -n docker-machine
Starting resource group delete
^CTraceback (most recent call last):
  File "/usr/local/lib/python3.5/runpy.py", line 184, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/local/lib/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/usr/local/lib/python3.5/site-packages/azure/cli/__main__.py", line 29, in <module>
    sys.exit(azure.cli.main.main(args))
  File "/usr/local/lib/python3.5/site-packages/azure/cli/main.py", line 55, in main
    cmd_result = APPLICATION.execute(args)
  File "/usr/local/lib/python3.5/site-packages/azure/cli/application.py", line 117, in execute
    result = expanded_arg.func(params)
  File "/usr/local/lib/python3.5/site-packages/azure/cli/commands/__init__.py", line 219, in _execute_command
    return LongRunningOperation('Starting {}'.format(name))(result)
  File "/usr/local/lib/python3.5/site-packages/azure/cli/commands/__init__.py", line 96, in __call__
    self._delay()
  File "/usr/local/lib/python3.5/site-packages/azure/cli/commands/__init__.py", line 89, in _delay
    time.sleep(self.poll_interval_ms / 1000.0)
KeyboardInterrupt

the process keeps running after I hit Ctrl+C once... It finally quits when I hit it twice:
^CException ignored in: <module 'threading' from '/usr/local/lib/python3.5/threading.py'>
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/threading.py", line 1288, in _shutdown
    t.join()
  File "/usr/local/lib/python3.5/threading.py", line 1054, in join
    self._wait_for_tstate_lock()
  File "/usr/local/lib/python3.5/threading.py", line 1070, in _wait_for_tstate_lock
    elif lock.acquire(block, timeout):
KeyboardInterrupt

@ahmetalpbalkan which shell were you using? When I try this in CMD, it doesn't really matter if I press once or twice, I'm at the mercy of the LRO poller for a while. Is this your experience as well?

@tjprescott I use zsh via oh-my-zsh on OS X. I hit Ctrl+C once, waited like 10 seconds, nothing happened and I went ahead by hitting Ctrl+C again.
It shouldn't matter where you are in the program. Hitting Ctrl+C once is supposed to exit the program, right?

@ahmetalpbalkan yes. What is happening is the first Ctrl+C is terminating the CLI, but because you initiated a LRO to delete the resource group, the second terminates that thread. I've confirmed it does the behavior you describe in bash as well. (CMD makes you wait even after the second Ctrl+C).
Out of curiosity, is the reason you are pressing Ctrl+C because you don't want to wait for the resource group delete operation to finish? You just want to "fire and forget"?

@tjprescott

What is happening is the first Ctrl+C is terminating the CLI, but because you initiated a LRO to delete the resource group, the second terminates that thread. I've

got it but I don't think any of your users will care about this

is the reason you are pressing Ctrl+C because you don't want to wait for the resource group delete operation to finish? You just want to "fire and forget"?

exactly. since I mostly do manual management of RGs I just want backend API to continue deleting in the background, so I just keep it around for like 3 seconds. I use az resource group delete like this all the time.

@mayurid moving this to the backlog. PR #757 has been open which would create a workaround solution for the CLI. However https://github.com/Azure/autorest/pull/1379 addresses this at the autorest level but has not been approved yet.

@tjprescott: will work with the Autorest guys to get the fix expedited.

Fixed with msrestazure 0.4.3 so closing issue.
see https://github.com/Azure/azure-cli/pull/757#issuecomment-247092882


gperftools do not have SetMaxPerCpuCacheSize()

Why is there a SetMaxPerCpuCacheSize interface in the tcmalloc repository, but not in gperftools?

Because we don't have per-cpu caches. But I guess the real question is why we don't have them. Answer is varied. Main reason is no one has gotten to it yet. But there are also complications that per-cpu caches require rseq support which is only available on Linux and only very recent. Unlike "abseil" tcmalloc, we're trying to offer decent performance and feature set across range of OSes.
Plus per-cpu caches have their own downsides as well. So I am personally not 100% sold on "better-ness" of this approach for all kinds of workloads.


fix(ios): rotate back to current orientation after unlock

Close #13

npm i<EMAIL_ADDRESS>


Metrics should be disabled by default or at least inform the user

Hi,
LT keeps constantly polling app.kodowa.com/_fetch.
At the moment it fails with:
Failed to load resource: the server responded with a status of 500 (Server Error): http://app.kodowa.com/_fetch
The Feature is mentioned at the FAQ as "autopolling" (https://github.com/LightTable/LightTable/wiki/FAQ#how-do-i-turn-off-lts-autopolling).
As a user I have no idea that there is such a feature and no idea what it does.
Checking for a new version? Updating the plugins list? Submitting user metrics?
Other tools inform the user before connecting to domains on the internet, this looks intransparent and a little bit rude.

Still 500'ing.

The symptom should be fixed now after some surgery on the server. Though as far as I know, that server is completely unnecessary now, so probably best to just completely move off of it.

@ibdknox Thanks for the fix
@echox Agree there should be some mention of tracking in the About and or Welcome screen. We'll be tracking this work in #2080


Does this support with react 15 version

Does this support with react 15?
My project is in react 15 and wanted to create the components library for internal use. So I just wanted to know, is it work with react 15?
If no, can you suggest any other which work with react 15.
Thanks

Since 1.0 you need react and react-dom >=16.8.0 installed.
And no, sorry, I do not know the version dependencies for other tools.


Smart things shows armed rather than stay

For DSC panels smart things shows "Armed" when panel is in "Stay".
// Stay Arm
!KPM:[01010011000000000D--],008,[000200000000000000000000000000],"Exit Delay In Progress "
// Away Arm
!KPM:[01010001000000000D--],008,[000200000000000000000000000000],"Exit Delay In Progress "

Ok after looking at the rest api it appears the problem is in the webapp. The following was returned by
/api/v1/alarmdecoder when panel was stay armed. Note it is not setting the panel_armed_stay correctly
{
  "last_message_received": "!KPM:[01010011000000000D--],008,[000200000000000000000000000000],\"Exit Delay      In Progress     \"",
  "panel_alarming": false,
  "panel_armed": true,
  "panel_armed_stay": false,
  "panel_bypassed": {
    "null": true
  },
  "panel_fire_detected": false,
  "panel_on_battery": false,
  "panel_panicked": false,
  "panel_powered": true,
  "panel_ready": false,
  "panel_relay_status": [],
  "panel_type": "DSC",
  "panel_zones_faulted": []
}

I will test this but I believe the issue is deeper in the DSC firmware. It has trouble knowing if it is arming stay or away during the exit delay. I seem to recall that it would jump from arming to "stay" at the very end.

FYI. The update I am working on allows for changing the device type and inverting the contact if needed. I just did some testing on a 1832 and so far Arm AWAY or STAY it seems to show the correct state after exit delay. It also shows the EXIT delay and the EXIT DELAY virtual contact activates.

Just an FYI. The Flip Flop with DSC switching from ARMED to STAY at the end is still open so this will stay open. I will look again if I have any way of knowing the armed state prior to the end when I get back into firmware stuff this fall but I recall spending many days on that issue and ended up accepting it as a feature at the time. I also added to the ST readme as a current issue.

If possible a short term tweak which would significantly improve the situation would be to assume arm stay during the exit delay rather than arm away.
Updated to the latest to try to get alarm decoder hooked backed into smart things. The current situation is an improvement though still not great as smart things switched the house to arm (away) during the exit period for arm (stay). Which results in sirens if i walk past any motion sensor being monitored by smart things rather than DSC.


Don't tint icons of bottom panel and log filter buttons

Old
New

Both already have type variations, they were just missing overrides. Closes https://github.com/godotengine/godot/issues/98540

related / duplicate of https://github.com/godotengine/godot/pull/98765

Duplicate, closing


Disallow request in the future.

Currently we disallow requests on the past to block replay attack, but a request in the future is always valid. It seems to be good to have the same behaviour.

Why would an otherwise valid request in the future be a security risk? A request that is too old might be a reply of an already made request. But if the request is in the future and the signature is valid, what's the concern other than just a longer window in which a reply of a request would still have a valid signature?

Sorry for the deplay, I was very busy last week.
To prevent replay attack by timestamping, is very important to have a limited windows. Usualy less than 1 second. It's Ok to have +/- 15 minutes, but in our case, if the server is one day late or the client is one day earlier, ApiAuth allows a windows of 1 day for the replay attack.
Some references :
https://en.wikipedia.org/wiki/Replay_attack

Timestamping is another way of preventing a replay attack. Synchronization should be achieved using a secure protocol. For example Bob periodically broadcasts the time on his clock together with a MAC. When Alice wants to send Bob a message, she includes her best estimate of the time on his clock in her message, which is also authenticated. Bob only accepts messages for which the timestamp is within a reasonable tolerance. The advantage of this scheme is that Bob does not need to generate (pseudo-) random numbers, with the trade-off being that replay attacks, if they are performed quickly enough i.e. within that 'reasonable' limit, could succeed.

https://docs.wso2.com/display/IS500/Timestamp+in+WS-Security+to+Mitigate+Replay+Attacks

After some discussion on other issues, I realize that allowing requests in the distant future also allows for a bad actor trying to "guess" the signature for their own crafted request more time to guess it if they set their own request date header super far in the future.

Thanks :+1:


Sticky sessions based on ipv4/ipv6 hash

This is a feature request and not a bug.
The current and only method in traefik for sticky sessions is injecting cookies However, this is the not the best way.  The load balancer, should feature hashing based on say ipv4 or ipv6  hash as an option for sticky session. Since backends can appear, disappear, we may keep a table in ram for say 5 minutes or 10 minutes ( and setting to control session time), which  maintains   ip==backend  relationship  , if backend disappears, we assign a new backend.

As posted in #1376 a general method of Nginx like TCP stream balancing (this would include ipv4/ipv6) hashing would be a real benefit. Not all services that are powered through containers are http/s. This would also resolve #988 for example.

Hi,
are you going to enable docker push operations on traefik ?
Regards

@lmeyemezu how is that related to this issue?

This is probably also required if we want to use traefik to cluster our db backends.

This is a huge draw back when switching from nginx, for example, we are using server2server websockets and its not possible to get them to work with traefik.
It is possible to tell socket.io which cookie when initializing it, but it would require extra logic to obtain one, our customers and partners are using a standard socket.io implementation in various languages, so the only real way would be for traefik to support cookieless sticky sessions via hashes.
var socket = io(that.apiConfig.host, {
    extraHeaders: {
      Cookie: '_TRAEFIK_BACKEND=http://<IP_ADDRESS>:3030'
    }
  });

Any workaround or alternative for this?

Another use case: Load balancing OpenVPN server instances.
Nginx' open source version now contains stream proxying (TCP/UDP), but not all necessary features for UDP based VPN connections - aka nginx works only for TCP based VPN.
It would be great, if traefik could resolve this.

For anyone interested I made a PoC - https://github.com/joy4eg/traefik/commit/3dfe8eea88c367d3836fa992fc6446cf1ca1367c (1.7)
Works for docker swarm:
  my_service:
    image: my_service_image
    deploy:
      labels:
        traefik.port: "8080"
        traefik.backend.loadbalancer.stickiness: "true"
        traefik.backend.loadbalancer.stickiness.headerName: x-real-ip

You can specify any header you want (I use nginx for SSL and some logic in front of traefik), so x-real-ip contains the client's IP address.

@joy4eg
I am also interested in this change to do load balancing based on header value. does this is available in latest release of Traefik as well.?

@joy4eg
I am also interested in this change to do load balancing based on header value. does this is available in latest release of Traefik as well.?

@imtiazpk It's only available in my fork. I have no plans/time to push it in upstream because that change is for old (1.7) version. The last version (2) is totally different.

@imtiazpk It's only available in my fork. I have no plans/time to push it in upstream because that change is for old (1.7) version. The last version (2) is totally different.

@joy4eg
Thanks. It means I cannot use it. Traefik should provide the IP hash feature. Just wondering its 2021 and this feature request is raised in 2017 and traefik team did not added this feature, very strange,

@joy4eg
Thanks. It means I cannot use it. Traefik should provide the IP hash feature. Just wondering its 2021 and this feature request is raised in 2017 and traefik team did not added this feature, very strange,

+1 please implement ip hash based loadbalancing

+1 for IP stickiness or such a generic solution as implemented by joy4eg@3dfe8ee

+1 for L4 session stickiness support such as IP hash. As in our case, we need to support legacy backend systems with SSLPassthrough (tcp load balancing instead of http. Hence cookie-based sticky session is not an option).

There's a strong argument against cookie-based stickyness. It assumes a cookie can be set and then persisted by the browser.
Our product is embedded as an iframe in our customer's website. Due to privacy concerns, MacOSX/Safari is blocking ALL 3rd party cookies by default. This prevents the stickyness cookie from being persisted, and as a result, its not sent back, and with each new request a new stickyness cookie is generated.

I'll try to port over https://github.com/joy4eg/traefik/commit/3dfe8ee to traefik2 codebase

Hi @ekarak-aisera, have you been successful in porting the solution from joy4eg@3dfe8ee?

Any news on this ?

Hi @fxi,
We have no news on the port of the code of @joy4eg that @ekarak-aisera mentioned.
We're still interested in this proposal, but unfortunately, we're a small team and our priorities are focused elsewhere at the moment.
As a side note, https://github.com/traefik/traefik/issues/1139 could be related and solve the same use case.
We will keep you informed here if we manage to free up some time to prioritize it.

Hello everyone!  This issue is a candidate for a bounty during the Traefik Proxy 3.0 Hackaethon!
This means that if the design and POC or the fully fleshed-out PR for this issue is accepted in the Hackaethon, the person or team behind doing it will receive $250 as well as a chance at the Grand Prize of $1000!
All accepted PRs and designs will receive a tshirt and stickers.
To learn more about the Hackaethon, check out our blog post that covers the goals, rules, scoring criteria, and dates in detail.
To join us, sign-up here!

Hello, we've worked with @maxlerebourg on this issue for the hackathon.
While we have not a PR to release we would like to share our findings on this project.
Context:
The ability to be able to reach as a client the same server each time can have the following advantages:
From Linode's Website:

More efficient use of data and memory. Since you are persisting data to one server, you are not required to share the persisted data across your application’s servers. Similarly, data stored in a RAM cache can be looked up once and reused.

Current Implementation
The current implementation allows sticky sessions based on cookie.
This means it will only work in an environnement that enables setting cookies and that uses L7 HTTP protocol.
Sticky sessions are not available for tcp or udp routers
This could be usefull to have in an environnements with many database behind a tcp router.
Idea of Implementation
Local Cache in ram
The easiest way to address this issue would be to keep in memory the corresponding IP and services for every connection.
This could work on small environnments but might not scale when used when millions of users access hundreds of services.
After a discussions with traefik maintainers, this is not the approach targetted as traefik aims to be stateless and thus not storing this mapping.
NB: I found out however that one of the middleware is using a local cache (the rate limit middleware), but it might be because there is no other solution for the implementation
Algorithmic way
The purpose is that every client when they come trough the traefik router will be directed to the same backend.
That means for one Input, always find the same input.
A client can be identified by his IP address which should be uniq when the proxy is configured with the right forward header setup.
An algorithm that can provide such a solution can be the consistent hashing.
Basic Implementation
It aims to takes a data in input and hash it so it resolves to the same destination:
A basic implementation would be to take the initial IP in input and  hash it with a sha256 function.
Then convert it to integer using hexadecimal value.
With N number of destination servers, we then take the module N of this number to define which server should be targeted.
This solves basically the problem of targeting the same server based on the IP.
Advanced Implementation
The first solution works well, but when a server is added or removed the initial target will change.
To be able to handle this situation, we need to register the information containing the destination in a hashmap.
We have N max number of servers, X < N actuel number of servers, each server is registered in the hashmap as a value and the IP must resolved to a existing interval of the members of the hashmap. It then take the closest value for his target.
When one of the server changes, the client will target the next server on the circle.
This can be represented as a circle,

How Load balancing works on Traefik
Load balancing on Traefik is handled by an external library vulcand/oxy, which provides roundrobin functions to direct the requests.
Traefik in dynamic configuration or static one will register the services (handlers) and the library will select one.
This library does not provide support for consistent hashing.
After discussion with the maintainers the library should not be edited as it is a dependancy that might be removed in the futur.
The idea would be to implement round robin directly inside Traefik and take the opportunity to add the consistent hashing functionnality.
This is some challenge, I hope I could take on but that will not be easy or fast to implement.

Hello @mathieuHa,

Load balancing on Traefik is handled by an external library vulcand/oxy, which provides roundrobin functions to direct the requests.

For your interest, we opened https://github.com/traefik/traefik/pull/9431 to use Traefik WRR to do the servers load-balancing instead of relying on oxy. This means that implementing the consistent hashing feature will not require changes in oxy.

Is there some progress with implementing IP-hash based load balancing?
Recently I had add a Nginx to a Traefik setup to do this ... :pleading_face: :sob: :pray:

I have setup where gRPC traffic routed using nginx with sticky IP, and there is no corresponding feature in Traefik so I'm unable to migrate from nginx to Traefik. Any news on that so far?

Small fyi: Caddy supports ip-hashed load-balancing and you can choose the header that is used as client-ip for the balancing / hashing. They were so kind to react quickly on an issue with a feature request implementing this :raised_hands:

Hey, we do really like this idea, but we are not able to prioritize it internally. To make it easier to implement, we created PR #9431 so that you can avoid modifying oxy.
We’d love help from the community to move forward on this topic. Anyone is welcome to help move this forward, but I'm tagging @mathieuHa and @maxlerebourg as y'all seemed the most interested.

Not sure if it has been discussed already, but I believe if someone starts working on this topic, it should be considered to allow hashing not only directly on source IP, but also alternatively based on any HTTP header field.
This allows using IP also if traefik is behind a reverse proxy by looking at e.g. HTTP_FORWARDED_FOR header.
Cheers

Hey @tfny I gave it a try in #9946 using HigthestRandomWeight (HRW) also named RendezVous Hashing Algorithm. :)

Hi again :wave:  What is the current state of this? :pleading_face:

Hello @shufps, we have to review https://github.com/traefik/traefik/pull/9946

@kevinpollet oh nice to see there is progress! :star_struck: Currently we are using CloudFlare to do the ip hashed load balancing to servers behind a traefik but CF limits are very strict and extending the quota for origins is not possible without switching to a x10 more expensive enterprise account. Would be great if traefik finally could do the ip hashed balancing, so we need less than half the origins we need currently and have some space to breath again. If there is something to test I can do it :ok_hand:


Tag representing attribute certificate in CertificateChoices are apparently not checked against the certificate version

Hello,
the ASN.1 structure CertificateChoices, as described in RFC 5652 [1], shows that attribute certificates are stored in different tags according to their versions:
CertificateChoices ::= CHOICE {
     certificate Certificate,
     extendedCertificate [0] IMPLICIT ExtendedCertificate,  -- Obsolete
     v1AttrCert [1] IMPLICIT AttributeCertificateV1,        -- Obsolete
     v2AttrCert [2] IMPLICIT AttributeCertificateV2,
     other [3] IMPLICIT OtherCertificateFormat }

but it appears that CMSSignedHelper#getAttributeCertificates(ASN1Set) [2] does not check the tag number according to the version of the attribute certificate in AttributeCertificateInfo.
Unfortunately, I cannot provide a test artifact to confirm this (the file I received has private information), but if my understanding is correct and this is indeed a shortcoming, I am available to readily test possible fixes.
[1] https://datatracker.ietf.org/doc/html/rfc5652#page-49
[2] https://github.com/bcgit/bc-java/blob/master/pkix/src/main/java/org/bouncycastle/cms/CMSSignedHelper.java#L171

Thanks for the report. This is now fixed in https://www.bouncycastle.org/betas 171b13 or later.

Thanks for the commit. However, what happens if a v1AttrCert is inside a tag [2] or vice-versa (v2AttrCert and [1])?

It'll accept it. Not strictly correct, but it doesn't seem like a good reason for rejecting the message. I'm happy to discuss if you think it's likely to be a problem.

Sorry I missed this one... I'd either throw an exception or pass it back through and let someone else deal with it. There's been some unexpected consequences over the last few years due to code ignoring things that are out of place - I can't immediately think of anything in this case myself, but someone more dedicated might later. The method on CMSSignedData just says getAttributeCertificates() so merging the two tags seems to make sense - throwing an exception if someone has mis-tagged an attribute certificate in this context does seem like a bit of an over reaction. I'll admit there is always a bit of a balancing act between being "as useful as possible" and "as rigorousness as possible" - if it did turn out to be necessary to do this maybe a "strict mode" for getAttributeCertificates() would be the way to go.


chromium: 87.0.4280.66 -> 87.0.4280.88

https://chromereleases.googleblog.com/2020/12/stable-channel-update-for-desktop.html
This update includes 0 security fixes.

Motivation for this change
cc @danielfullmer @thefloweringash
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 105779 1

5 packages built:
- chromedriver
- chromium
- google-chrome
- selendroid
- selenium-server-standalone

Was backported in 35aa1bdd60524e8698990840cbfd7ac5448743b0.

Was backported in 35aa1bdd60524e8698990840cbfd7ac5448743b0.


Unexpected exception while mirroring occurrs after upgrade to 0.66.0

Hi team.
After upgrading to 0.66.0, I am getting the following error message.
This issue seems to be preventing mirroring from working properly.
Do you have any idea what is causing the issue and is there anything I can try to fix it?
Thank you.
2024-07-04 08:31:39.543 [WARN ](c.l.c.s.i.m.DefaultMirroringService) [mirroring-worker-11-663] Unexpected exception while mirroring: {schedule=every minute, direction=REMOTE_TO_LOCAL, localProj=xxx, localRepo=xxx, localPath=/, remoteRepo=git+ssh://xxx.git, remotePath=/xxx/ remoteBranch=main, credential=PublicKeyMirrorCredential{id=xxx, hostnamePatterns=[github.com$], username=git, publicKey=ecdsa-sha2-...}}
com.linecorp.centraldogma.server.MirrorException: org.eclipse.jgit.api.errors.TransportException: Expected ACK/NAK, got: shallow 7bbd530a19784634d0dced0acef3fcecf33f5bd5
        at com.linecorp.centraldogma.server.internal.mirror.AbstractMirror.mirror(AbstractMirror.java:171)
        at com.linecorp.centraldogma.server.internal.mirror.MirroringTask.lambda$run$0(MirroringTask.java:64)
        at io.micrometer.core.instrument.composite.CompositeTimer.record(CompositeTimer.java:141)
        at com.linecorp.centraldogma.server.internal.mirror.MirroringTask.run(MirroringTask.java:64)
        at com.linecorp.centraldogma.server.internal.mirror.DefaultMirroringService.run(DefaultMirroringService.java:243)
        at com.linecorp.centraldogma.server.internal.mirror.DefaultMirroringService.lambda$run$6(DefaultMirroringService.java:227)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:131)
        at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:76)
        at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:82)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        at java.base/java.lang.Thread.run(Unknown Source)
Caused by: org.eclipse.jgit.api.errors.TransportException: Expected ACK/NAK, got: shallow 7bbd530a19784634d0dced0acef3fcecf33f5bd5
        at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:249)
        at com.linecorp.centraldogma.server.internal.mirror.AbstractGitMirror.fetchRemoteHeadAndGetCommitId(AbstractGitMirror.java:463)
        at com.linecorp.centraldogma.server.internal.mirror.AbstractGitMirror.mirrorRemoteToLocal(AbstractGitMirror.java:247)
        at com.linecorp.centraldogma.server.internal.mirror.SshGitMirror.mirrorRemoteToLocal(SshGitMirror.java:112)
        at com.linecorp.centraldogma.server.internal.mirror.AbstractMirror.mirror(AbstractMirror.java:162)
        ... 13 common frames omitted
Caused by: org.eclipse.jgit.errors.TransportException: Expected ACK/NAK, got: shallow 7bbd530a19784634d0dced0acef3fcecf33f5bd5
        at org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:458)
        at org.eclipse.jgit.transport.BasePackFetchConnection.fetch(BasePackFetchConnection.java:351)
        at org.eclipse.jgit.transport.BasePackFetchConnection.fetch(BasePackFetchConnection.java:343)
        at org.eclipse.jgit.transport.FetchProcess.fetchObjects(FetchProcess.java:290)
        at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:182)
        at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:105)
        at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1482)
        at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:238)
        ... 17 common frames omitted
Caused by: org.eclipse.jgit.errors.PackProtocolException: Expected ACK/NAK, got: shallow 7bbd530a19784634d0dced0acef3fcecf33f5bd5
        at org.eclipse.jgit.transport.PacketLineIn.readACK(PacketLineIn.java:163)
        at org.eclipse.jgit.transport.BasePackFetchConnection.negotiate(BasePackFetchConnection.java:945)
        at org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:447)
        ... 24 common frames omitted

Which version did you try to upgrade from?

The previous version is 0.58.1. @ikhoon

I'm looking into it now, but I suspect there may be a bug in jGit itself.
However, I am not sure of the clear difference between success and failure in some cases.

I have no idea at the moment. @earlbread Does this happen always even if you restart the replicas?

@minwoox We are running central dogma in two different environments, alpha and prod, and the same thing is happening in both alpha and prod. 🤔
First, let's try restarting in alpha environment.

Could you create a new mirror config? I want to know if it doesn't work even when a new git repository is created, or if the problem only occurs when upgrading.

Not every git repo has a mirror problem. We are experiencing this issue for a specific git repo.

After restarting, the repo is still experiencing the same issue. @minwoox

as far as I know,
https://github.com/line/centraldogma/pull/808
I know that the shallow feature was added in this commit. (FetchCommand).
The error did not occur in previous versions before shallow was added.

If #808 was the cause, you can delete _mirrors directory as a workaround. The folder will be created automatically if absent.

In addition to the workaround, we will handle this issue separately.

The errors are disappeared after deleting _mirrors. Thank you! @ikhoon

Glad to here. /metadata.json is located in meta folder which should not be affected by _mirrors removal.

It seems that there was a conflict with garbage data in the _mirrors directory in past versions of central dogma.
It works normally now! Thank your support!

Glad to hear. /metadata.json is located in meta folder which should not be affected by _mirrors removal.

It was my mistake. I copied _mirrors after creating the /data/tmp directory, and I think that's what caused the problem. I deleted /data/tmp and backed up the data to /data/_tmp and the problem did not occur. Thank you!

As shallow fetch was added in version 0.61.0, a conflict with _mirror appears to occur in previous versions.

https://line.github.io/centraldogma/known-issues.html

It seems that the same situation may occur when performing a major upgrade. Is there a need to write this Breaking Change and how to deal with it in a Known issue? 🤔 Or is this a minor issue?


New board page

Description
Creating a page to add a new board for a specific user
Fixes #84
How to test?
npm run dev
Checklist

[x] I have performed a self-review of my own code
[x] I have followed the name conventions for CSS Classnames and filenames, Components names and filenames, Style filenames, if you are in doubt check the the project README.MD and here https://github.com/HackYourFuture-CPH/curriculum/blob/master/review/review-checklist.md
[x] I have commented my code, particularly in hard-to-understand areas, if you code was simple enough mark the box anyway
[x] I have made corresponding changes to the documentation, if you code was simple enough mark the box anyway
[x] This PR is ready to be merged and not breaking any other functionality

Hi Niels, now the members can be added
But I am little confused how to implement the feedback when board is created. Did you mean an alert message?

Hi Niels, now the members can be added
But I am little confused how to implement the feedback when board is created. Did you mean an alert message?

Great 👍
I think its better with a message saying that the board is added. Old school alerts are not used anymore

Hi Niels, now the members can be added
But I am little confused how to implement the feedback when board is created. Did you mean an alert message?

Great 👍
I think its better with a message saying that the board is added. Old school alerts are not used anymore

Hi Niels, I tried to display a message in below all the components when the board is created and its functioning now


Add black as dev dependency and intialise .git-blame-ignore-revs

Part of #1326

Is this PR ready to be merged, @VeckoTheGecko?

Good to go!


fix: create page wizard fails with Asian page titles/unicode slugs

Description
Django CMS supports unihandecode.js slug generation (if configured in the settings). This PR resolves the following issues

Unihandecode settings were ignored by the create page wizard
Create page wizard crashed if unicode slugs were entered manually (#7564) (except for the root page)
Misleading validation messages if non-ascii slugs were entered in the page settings

The root cause were inconsistent form validations and unihandecode being hard-wired into the page settings template while the wizard uses a custom SlugWidget:

The SlugWidget moved into the AddPage/ChangePage forms
unihandecode.js is loaded by the widget, not a form template: Thus it is available in both the page settings and create page wizard.
Validation is handled by Django's SlugField validators and not inconsistently by different django CMS forms.

Example: Create page wizard (zh language)

Related resources

#7564
#1605

Checklist

[x] I have opened this pull request against develop
[x] I have added or modified the tests when changing logic
[x] I have followed the conventional commits guidelines to add meaningful information into the changelog
[x] I have read the contribution guidelines  and I have joined #workgroup-pr-review on Slack to find a “pr review buddy” who is going to review my pull request.

@vinitkumar Typo corrected. Can you approve? Thanks so much!


Added export for include directory

To be able to use tbb in another project (in my case it is a header only library) it is important to export the include directory as well.

Thanks! (I'll change the commit as proposed by @lawrencem99)


[FEAT] Implement BlockchainClient

We need to support calling at least a few RPC methods to import blocks from other blockchains.

eth_blockNumber
eth_getBlockByNumber
eth_getTransactionReceipt
eth_getStorageAt

Ideally the implementation should return a serde_json::Value because we cannot guarantee that different blockchains RPC endpoints will have the same struct.
We can have different implementations that returns a more strict struct if necessary, but the primary case is for dynamic return types.

done


[WIP] API server code health improvements

Addresses #998.
Prerequisites:

[X] Unless it is a documentation hotfix it should be merged against the dev branch
[X] Branch is up-to-date with the branch to be merged with, i.e. dev
[x] Build is successful
[x] Code is cleaned up and formatted

Summary
General linting pass for the API & acquisition code: removes unused imports, fixes some whitespace issues, fixing exception try/except blocks etc

@melange396 I applied the changes you've requested!

what programs/packages/commands/parameters did you use to do this? its probably something that should be incorporated into https://github.com/cmu-delphi/delphi-epidata/issues/962...

This PR fixes issues detected by Prospector, which uses pylint internally.
There are tools that can autoformat Python repos, which we can use now that we have a working editable package. black is one that comes to mind: it can be incorporated as a CI step (yells at you if your code isn't formatted), post-commit hook (formats your code automatically), etc.
Caveat: these tools are non-configurable and "uncompromising" by design, so on an initial run, they will reformat the majority of the codebase to the indentation style they like, affecting most lines of code. This will

break git blame for a while
cause a massive merge conflict for pending PRs (like https://github.com/cmu-delphi/delphi-epidata/pull/1011 or https://github.com/cmu-delphi/delphi-epidata/pull/995)

so we need to think carefully about when to apply them.


Setting Norway timezone to Europe/Oslo

Fix for #11

Thank you @badams for catching this one! Copy/paste mistake I guess. Thanks for the fix; I will merge it today.

No problem, I'm not sure why this wasn't occurring on travis, perhaps something to do with the fact that NZ just changed to daylight saving hours


about deformable conv visualize

Thanks for your amazing work. Have you ever tried to visualize the deformable convolution just like the results in the paper 'Deformable Convolutional Networks'? like this:

I made a try to visualize your deformable convolution code. But I get the following results:

Can you help me?

@huxianxian I am afraid I have no clue on this problem since I have already tested the forward and gradient pass comparing to the original implementation. But still, I am curious about two questions concerning this problem:

How did you visualize the offset? Using the script from original implementation? Or you write it yourself?
How did you get the offset? Using the code from the other repo of mine?

Thanks， Yes ，I visualize the offset with the script from original implementation ， and the offset is got from your other repo : https://github.com/Zardinality/TF_Deformable_Net . I have successfully run your code for TF_Deformable_Net on VOC dataset.I get the following results:
Mean AP = 0.6289
Results:
0.708
0.697
0.645
0.475
0.448
0.661
0.792
0.783
0.374
0.634
0.566
0.695
0.716
0.683
0.755
0.363
0.593
0.612
0.760
0.616
0.629

Results computed with the unofficial Python eval code.
Results should be very close to the official MATLAB eval code.
Recompute with ./tools/reval.py --matlab ... for your paper.
-- Thanks, The Management
Process finished with exit code 0
Then i try to make a visualize for deform conv with the trained model , I got the offsets with the following code:
cls_score, cls_prob, bbox_pred, rois , a_offset,b_offset,c_offset, =
sess.run([net.get_output('cls_score'), net.get_output('cls_prob'), net.get_output('bbox_pred'),net.get_output('rois'),
net.get_output('res5a_branch2b_offset'),net.get_output('res5b_branch2b_offset'),net.get_output('res5c_branch2b_offset'),],feed_dict=feed_dict)
all_offsets=[a_offset,b_offset,c_offset]
The I visualize the offsets with the script from original implementation,
res5a_offset = all_offsets[0]
res5b_offset = all_offsets[1]
res5c_offset = all_offsets[2]
# Visualize detections for each class
im = im[:, :, (2, 1, 0)]

**show_dconv_offset(im , [res5c_offset, res5b_offset, res5a_offset])**

the function show_dconv_offset(im , [res5c_offset, res5b_offset, res5a_offset]) is the script from original implementation. but I can't get the correct results.

show_dconv_offset by default uses a step of [2,2], is it relevant to your issue since in Resnet101_train.py we use stride=1?


allow packet number 0

Fixes #872.
Since https://github.com/quicwg/base-drafts/issues/832 was recently closed, and 0 is a valid packet number (which will be chosen with a probability around 2^-32), we need to accept it.
We don't have a good way to integration test this, but I manually went to the packetNumberGenerator and set the initial packet number to 0, and everything works as expected.

Codecov Report

Merging #970 into master will decrease coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #970      +/-   ##
==========================================
- Coverage   90.78%   90.78%   -<.01%
==========================================
  Files          99       99
  Lines        6543     6541       -2
==========================================
- Hits         5940     5938       -2
  Misses        388      388
  Partials      215      215

Impacted Files
Coverage Δ

internal/wire/ack_frame.go
97.7% <100%> (ø)
:arrow_up:

session.go
83.3% <100%> (ø)
:arrow_up:

internal/wire/stop_waiting_frame.go
100% <100%> (ø)
:arrow_up:

ackhandler/received_packet_handler.go
100% <100%> (ø)
:arrow_up:

ackhandler/received_packet_history.go
100% <100%> (ø)
:arrow_up:

ackhandler/sent_packet_handler.go
98.25% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Translation to Bengali

Hi there 👋
Let's translate the course to Bengali so that the whole community can benefit from this resource 🌎!
Below are the chapters and files that need translating - let us know here if you'd like to translate any and we'll add your name to the list. Once you're finished, open a pull request and tag this issue by including #issue-number in the description, where issue-number is the number of this issue.

🙋 If you'd like others to help you with the translation, you can also post in our forums or tag @_lewtun on Twitter to gain some visibility.

Chapters
0 - Setup

[x] 1.mdx eNipu

1 - Transformer models

[x] 1.mdx
[ ] 2.mdx
[ ] 3.mdx
[ ] 4.mdx rono711
[ ] 5.mdx
[ ] 6.mdx
[ ] 7.mdx
[ ] 8.mdx
[ ] 9.mdx
[ ] 10.mdx

2 - Using 🤗 Transformers

[x] 1.mdx avishek-018
[ ] 2.mdx
[ ] 3.mdx
[ ] 4.mdx
[ ] 5.mdx
[ ] 6.mdx
[ ] 7.mdx
[ ] 8.mdx

3 - Fine-tuning a pretrained model

[ ] 1.mdx
[ ] 2.mdx
[ ] 3.mdx
[ ] 3_tf.mdx
[ ] 4.mdx
[ ] 5.mdx
[ ] 6.mdx

4 - Sharing models and tokenizers

[ ] 1.mdx
[ ] 2.mdx
[ ] 3.mdx
[ ] 4.mdx
[ ] 5.mdx
[ ] 6.mdx

5 - The 🤗 Datasets library

[ ] 1.mdx
[ ] 2.mdx
[ ] 3.mdx
[ ] 4.mdx
[ ] 5.mdx
[ ] 6.mdx
[ ] 7.mdx
[ ] 8.mdx

6 -  The 🤗 Tokenizers library

[ ] 1.mdx
[ ] 2.mdx
[ ] 3.mdx
[ ] 3b.mdx
[ ] 4.mdx
[ ] 5.mdx
[ ] 6.mdx
[ ] 7.mdx
[ ] 8.mdx
[ ] 9.mdx
[ ] 10.mdx

7 - Main NLP tasks

[ ] 1.mdx
[ ] 2.mdx
[ ] 3.mdx
[ ] 4.mdx
[ ] 5.mdx
[ ] 6.mdx
[ ] 7.mdx
[ ] 8.mdx
[ ] 9.mdx

8 - How to ask for help

[ ] 1.mdx
[ ] 2.mdx
[ ] 3.mdx
[ ] 4.mdx
[ ] 4_tf.mdx
[ ] 5.mdx
[ ] 6.mdx
[ ] 7.mdx

Events

[ ] 1.mdx

I will be translating from Chapter 0-1 first.

I will be translating chapter 2

Thank you so much @eNipu and @avishek-018 - I've added both your names to the list! Just FYI to render the translation on the website we need to have chapter1 / section1 translated, so you might want to start with that before jumping to chapter 2

I will also join this project. As mentioned by @lewtun we have to finish chapter 1 first so I will start translating chapter 1section 4. In that way, @eNipu and @avishek-018 you have the first few sections to work with.

@lewtun I would like to work on chapter 3 if no one else is working on it. Other wise, I can work on chapter 4.

Good afternoon. I translate and prepare subtitles for the video course.

Hello everyone!
@eNipu and @lewtun I would like to contribute as well. I can start with chapter 3 or 4 if no one else is already working on it. Please assign me the one that's available and I'll start translating. Thanks!

Please go ahead 🙌


Pin Kubernetes version for Ubuntu e2e tests

What type of PR is this?
/kind failing-test
What this PR does / why we need it:
The tests fail consistently, so we pin the k8s version for now.
Which issue(s) this PR fixes:

None
Does this PR have test?
None

Special notes for your reviewer:
None
Does this PR introduce a user-facing change?

None

/retest

/lgtm

/retest

After this the dependency updates can be rebased and should get merged, too.


Replace deprecated pkg_resources

Description
While looking through the code, I noticed a deprecation warning for pkg_resources. I replaced the two usages I found in the code with importlib.metadata.
Type of change
Only changes an imported library, there should be no real changes to the functionality.
Key checklist:

[x] No style issues: $ pre-commit run (or $ nox -s pre-commit) (see CONTRIBUTING.md for how to set this up to run automatically when committing locally, in just two lines of code)
[x] All tests pass: $ python run-tests.py --all (or $ nox -s tests)
[x] The documentation builds: $ python run-tests.py --doctest (or $ nox -s doctests)

You can run integration tests, unit tests, and doctests together at once, using $ python run-tests.py --quick (or $ nox -s quick).
Further checks:

[x] Code is commented, particularly in hard-to-understand areas
[x] Tests added that prove fix is effective or that feature works

The drop in coverage appears to be from the code in #3116, not the changes from this PR

Thanks for this @kratman. I have been doing the same thing in #3301 😄

@agriyakhetarpal I did not see the changes there when I went to do this. This one is small and ready to go though.
I rebased yesterday to see if it would retrigger the coverage report which was showing a drop due to a different merged PR. It passed everything else before I did the rebase.

Yes, that PR is a bit stalled though, for other reasons. The changes there are similar to yours and everything passes, I expect them to pass here too

The failing tests (nox -s examples) for this PR are failing on develop as well.

@Saransh-cpp, @agriyakhetarpal It looks like coverage is dropping due to the version logic. Is there something else you want me to change, or is this OK?

Perhaps adding # pragma: no cover on the conditional should be okay in this case

Perhaps adding # pragma: no cover on the conditional should be okay in this case

Yes, should be fine in this case.

Changed thanks


Added Mass Spec L2-4, using aux files for software params.

@elv-sb I'm going to merge this once the CI has finished to allow Stanford to hopefully test in staging before the end of the month so we can roll out to production


May need to change max supply rollout percentage

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I have read the Contribution Guidelines

Issue Description
Since the latest update to the Google Play Developer Console, it has been easier to specify rollout percentages. While it states in the documentation that the range is from 5-50%, I think this may be an out of date claim because you can actually set the rollout percentage on the Console to something like 75% for example.
As a further example, I got through this flow with one of my clients:

Original Deploy: 25% rollout

1 Hour later: 50% rollout

2 Hours later: 75% rollout

3 Hours later: 100% rollout (so production track)

I am working on setting up some Fastlanes to handle this flow for me so I don't have to worry about it anymore, but I am limited to 50% rollout by supply/options.rb. I will probably just ignore the 75% step for now and go straight from 50% to 100%, but I thought I would let you know this may be something to look into.
I have submitted some feedback on the Google Developer website about the potentially out of date documentation, so I hope they will fix it. It might be worth testing a higher max percentage to see how the API responds.
Complete output when running fastlane, including the stack trace and command used

You can use: --capture_output as the last commandline argument to get that collected for you

[12:25:24]: fastlane finished with errors
[!] Invalid value '0.75', must be between 0.01 and 0.5
Environment
Please run fastlane env and copy the output below. This will help us help you :+1:
If you used --capture_output option please remove this block - as it is already included there.
Don't think this is important to the issue, but I can edit it in if desired. There is some NDA stuff I will have to edit out.

Nice catch, thanks for letting us know. Are you interested in submitting a PR to change this? :)

@KrauseFx If I find some time this week, I will try to test the change and make a pr.

Awesome, thanks again for the PR 👍

You're welcome! Happy to help


postulate not highlighted as keyword

Uff, took me a while to find the source of Agda highlighting on github!
postulate is a keyword, but currently not highlighted as such.
case is not a keyword, but highlighted.

agda/agda#3365

with is also a keyword and is not highlighted.

Also as


Not working on Lumen 5.2

Hi! I'm wondering how to make Eloquence work in Lumen 5.2/5.3, since actually i need the Mappabble thing. Since Angular requests attributes that are different from the names on the Database. And Mappable will be really useful.
Thanks!

Fixed it.


[Event Request] Codeunit 80 Sales Post - OnBeforeCreateWhseJnlLine

Hi, would it be possible to get an event OnBeforeCreateWhseJnlLine in codeunit 80 Sales Post, procedure PostItemJnlLineBeforePost, like this :
local procedure PostItemJnlLineBeforePost
 begin
     with ItemJnlLine do begin
         if SalesSetup."Exact Cost Reversing Mandatory" and (SalesLine.Type = SalesLine.Type::Item) then
             if SalesLine.IsCreditDocType then
                 CheckApplFromItemEntry := SalesLine.Quantity > 0
             else
                 CheckApplFromItemEntry := SalesLine.Quantity < 0;

         if (SalesLine."Location Code" <> '') and (SalesLine.Type = SalesLine.Type::Item) and (Quantity <> 0) then
             if ShouldPostWhseJnlLine(SalesLine) then begin
                 IsHandled := false;
                 OnBeforeCreateWhseJnlLine(IsHandled);
                 if not IsHandled then begin
                     CreateWhseJnlLine(ItemJnlLine, SalesLine, TempWhseJnlLine);
                     PostWhseJnlLine := true;
                 end;
             end;

    [IntegrationEvent(false, false)]
    local procedure OnBeforeCreateWhseJnlLine(var IsHandled : Boolean)
    begin
    end;

?
Thanks

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


Build from source without container errors

Branch/Tag/Commit
main
Docker Image Version
none
GPU name
A100
CUDA Driver
525.60.13
Reproduced Steps
PATH=$(getconf PATH)
module purge
module load cuda/11.6
module load gcc/9.4.0
module load cmake
conda activate FasterTransformer # with pytorch 1.12.0 installed

export CUDA_HOME=/opt/cuda/11.6
export CPATH=$CUDA_HOME/include:$CPATH
export CUDNN_LIBRARY=/home/cudnn-linux-x86_64-<IP_ADDRESS>_cuda11-archive/lib
export CUDNN_LIB_DIR=/home/cudnn-linux-x86_64-<IP_ADDRESS>_cuda11-archive/lib
export CUDNN_LIBRARY_PATH=/home/cudnn-linux-x86_64-<IP_ADDRESS>_cuda11-archive/lib/libcudnn.so
export CUDNN_INCLUDE_DIR=/home/cudnn-linux-x86_64-<IP_ADDRESS>_cuda11-archive/include
export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-"$(dirname $(which conda))/../"}

cmake -DSM=80 -DCMAKE_BUILD_TYPE=Release -DBUILD_PYT=ON ..
-- The CXX compiler identification is GNU 9.4.0
-- The CUDA compiler identification is NVIDIA 11.6.55
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /opt/gcc/9.4.0/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Check for working CUDA compiler: /opt/cuda/11.6/bin/nvcc - skipped
-- Detecting CUDA compile features
-- Detecting CUDA compile features - done
CMake Warning (dev) at CMakeLists.txt:17 (find_package):
  Policy CMP0074 is not set: find_package uses <PackageName>_ROOT variables.
  Run "cmake --help-policy CMP0074" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  Environment variable CUDA_ROOT is set to:

    /opt/cuda/11.6

  For compatibility, CMake is ignoring the variable.
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found CUDA: /opt/cuda/11.6 (found suitable version "11.6", minimum required is "10.2")
CUDA_VERSION 11.6 is greater or equal than 11.0, enable -DENABLE_BF16 flag
-- Found CUDNN: /home/yao.877/parallel_inference/mpi/cudnn/cudnn-linux-x86_64-<IP_ADDRESS>_cuda11-archive/lib/libcudnn.so
-- Add DBUILD_CUTLASS_MOE, requires CUTLASS. Increases compilation time
-- Add DBUILD_CUTLASS_MIXED_GEMM, requires CUTLASS. Increases compilation time
-- Add DBUILD_CUTLASS_MOE, requires CUTLASS. Increases compilation time
-- Add DBUILD_CUTLASS_MIXED_GEMM, requires CUTLASS. Increases compilation time
-- Running submodule update to fetch cutlass
-- NVTX is enabled.
-- Assign GPU architecture (sm=80)
-- Use WMMA
CMAKE_CUDA_FLAGS_RELEASE: -O3 -DNDEBUG -Xcompiler -O3 -DCUDA_PTX_FP8_F2FP_ENABLED --use_fast_math
-- COMMON_HEADER_DIRS: /home/yao.877/parallel_inference/projects/FasterTransformer;/opt/cuda/11.6/include;/home/FasterTransformer/3rdparty/cutlass/include;/home/FasterTransformer/src/fastertransformer/cutlass_extensions/include;/home/FasterTransformer/3rdparty/trt_fp8_fmha/src;/home/FasterTransformer/3rdparty/trt_fp8_fmha/generated
-- The C compiler identification is GNU 9.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /opt/gcc/9.4.0/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found Python: /usr/bin/python3.9 (found version "3.9.7") found components: Interpreter
-- Configuring done
-- Generating done

Here the Found Python /usr/bin/python3.9  seems does not use the python in my conda environment.
Then,
make -j
Errors
[ 64%] Built target layernorm_kernels
[ 64%] Building CXX object examples/cpp/decoding/CMakeFiles/layernorm_test.dir/layernorm_test.cc.o
[ 64%] Building CUDA object src/fastertransformer/layers/attention_layers_int8/CMakeFiles/WindowAttentionINT8.dir/WindowAttentionINT8.cu.o
[ 64%] Building CXX object src/fastertransformer/models/swin/CMakeFiles/SwinBlock.dir/SwinBlock.cc.o
[ 64%] Linking CXX executable ../../bin/test_gemm
[ 64%] Built target test_gemm
In file included from /home/FasterTransformer/src/fastertransformer/layers/attention_layers_int8/WindowAttentionINT8.h:28,
                 from /home/FasterTransformer/src/fastertransformer/layers/attention_layers_int8/WindowAttentionINT8.cu:17:
/home/FasterTransformer/src/fastertransformer/models/swin_int8/SwinINT8Weight.h:22:10: fatal error: cudnn.h: No such file or directory
   22 | #include <cudnn.h>
      |          ^~~~~~~~~
compilation terminated.
make[2]: *** [src/fastertransformer/layers/attention_layers_int8/CMakeFiles/WindowAttentionINT8.dir/build.make:76: src/fastertransformer/layers/attention_layers_int8/CMakeFiles/WindowAttentionINT8.dir/WindowAttentionINT8.cu.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:4583: src/fastertransformer/layers/attention_layers_int8/CMakeFiles/WindowAttentionINT8.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 64%] Linking CUDA device code CMakeFiles/ParallelGptWeight.dir/cmake_device_link.o
[ 65%] Linking CXX static library ../../../../lib/libParallelGptWeight.a
[ 65%] Built target ParallelGptWeight
[ 65%] Linking CUDA device code CMakeFiles/TopKSamplingLayer.dir/cmake_device_link.o
[ 66%] Linking CXX static library ../../../../lib/libTopKSamplingLayer.a
[ 66%] Built target TopKSamplingLayer
[ 66%] Linking CXX executable ../../../bin/layernorm_test
[ 66%] Built target layernorm_test
[ 66%] Linking CUDA device code CMakeFiles/SwinBlock.dir/cmake_device_link.o
[ 66%] Linking CXX static library ../../../../lib/libSwinBlock.a
[ 66%] Built target SwinBlock
[ 66%] Linking CUDA device code CMakeFiles/decoder_masked_multihead_attention.dir/cmake_device_link.o
[ 66%] Linking CUDA static library ../../../lib/libdecoder_masked_multihead_attention.a
[ 66%] Built target decoder_masked_multihead_attention
/home/FasterTransformer/src/fastertransformer/kernels/sampling_topp_kernels.cu: In instantiation of ‘void fastertransformer::invokeBatchTopPSampling(void*, size_t&, size_t&, int*, int*, bool*, float*, float*, const T*, const int*, int*, int*, curandState_t*, int, size_t, const int*, float, const float*, cudaStream_t, cudaDeviceProp*, const bool*) [with T = float; size_t = long unsigned int; curandState_t = curandStateXORWOW; cudaStream_t = CUstream_st*]’:
/home/FasterTransformer/src/fastertransformer/kernels/sampling_topp_kernels.cu:1163:542:   required from here
/home/FasterTransformer/src/fastertransformer/kernels/sampling_topp_kernels.cu:1053:7: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct fastertransformer::segmented_topp_impl::TopKPerSegmentContext’; use assignment or value-initialization instead [-Wclass-memaccess]
 1053 |         memset(&context, 0, sizeof(context));
      |       ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/FasterTransformer/src/fastertransformer/kernels/sampling_topp_kernels.h:110:8: note: ‘struct fastertransformer::segmented_topp_impl::TopKPerSegmentContext’ declared here
  110 | struct TopKPerSegmentContext {
      |        ^~~~~~~~~~~~~~~~~~~~~
/home/FasterTransformer/src/fastertransformer/kernels/sampling_topp_kernels.cu: In instantiation of ‘void fastertransformer::invokeBatchTopPSampling(void*, size_t&, size_t&, int*, int*, bool*, float*, float*, const T*, const int*, int*, int*, curandState_t*, int, size_t, const int*, float, const float*, cudaStream_t, cudaDeviceProp*, const bool*) [with T = __half; size_t = long unsigned int; curandState_t = curandStateXORWOW; cudaStream_t = CUstream_st*]’:
/home/FasterTransformer/src/fastertransformer/kernels/sampling_topp_kernels.cu:1185:541:   required from here
/home/FasterTransformer/src/fastertransformer/kernels/sampling_topp_kernels.cu:1053:7: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct fastertransformer::segmented_topp_impl::TopKPerSegmentContext’; use assignment or value-initialization instead [-Wclass-memaccess]
 1053 |         memset(&context, 0, sizeof(context));
      |       ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/FasterTransformer/src/fastertransformer/kernels/sampling_topp_kernels.h:110:8: note: ‘struct fastertransformer::segmented_topp_impl::TopKPerSegmentContext’ declared here
  110 | struct TopKPerSegmentContext {
      |        ^~~~~~~~~~~~~~~~~~~~~
[ 66%] Linking CUDA device code CMakeFiles/beam_search_topk_kernels.dir/cmake_device_link.o
[ 66%] Linking CUDA static library ../../../lib/libbeam_search_topk_kernels.a
[ 66%] Built target beam_search_topk_kernels
[ 66%] Linking CUDA device code CMakeFiles/sampling_topp_kernels.dir/cmake_device_link.o
[ 67%] Linking CUDA static library ../../../lib/libsampling_topp_kernels.a
[ 67%] Built target sampling_topp_kernels
[ 67%] Linking CUDA device code CMakeFiles/th_utils.dir/cmake_device_link.o
[ 67%] Linking CXX static library ../../../lib/libth_utils.a
[ 67%] Built target th_utils
[ 67%] Linking CUDA device code CMakeFiles/moe_gemm_kernels.dir/cmake_device_link.o
[ 67%] Linking CXX static library ../../../../lib/libmoe_gemm_kernels.a
[ 67%] Built target moe_gemm_kernels
[ 67%] Linking CUDA device code CMakeFiles/int8_gemm_test.dir/cmake_device_link.o
[ 67%] Linking CXX executable ../../bin/int8_gemm_test
/usr/bin/ld: cannot find -lmkl_intel_ilp64
/usr/bin/ld: cannot find -lmkl_core
/usr/bin/ld: cannot find -lmkl_intel_thread
collect2: error: ld returned 1 exit status
make[2]: *** [tests/int8_gemm/CMakeFiles/int8_gemm_test.dir/build.make:157: bin/int8_gemm_test] Error 1
make[1]: *** [CMakeFiles/Makefile2:10762: tests/int8_gemm/CMakeFiles/int8_gemm_test.dir/all] Error 2
[ 67%] Linking CUDA device code CMakeFiles/fpA_intB_gemm.dir/cmake_device_link.o
[ 67%] Linking CXX static library ../../../../lib/libfpA_intB_gemm.a
[ 67%] Built target fpA_intB_gemm
[ 67%] Linking CUDA device code CMakeFiles/online_softmax_beamsearch_kernels.dir/cmake_device_link.o
[ 67%] Linking CUDA static library ../../../lib/libonline_softmax_beamsearch_kernels.a
[ 67%] Built target online_softmax_beamsearch_kernels
make: *** [Makefile:136: all] Error 2

I am wondering how /home/FasterTransformer/src/fastertransformer/models/swin_int8/SwinINT8Weight.h:22:10: fatal error: cudnn.h: No such file or directory happens as I have exported the cudnn path.
Also, I am wondering how to solve [ 67%] Linking CXX executable ../../bin/int8_gemm_test /usr/bin/ld: cannot find -lmkl_intel_ilp64 /usr/bin/ld: cannot find -lmkl_core /usr/bin/ld: cannot find -lmkl_intel_thread
Thanks!

You can try export the .so path into LD_LIBRARY_PATH.
For int8_gemm_test, it requires the pytorch path here https://github.com/NVIDIA/FasterTransformer/blob/main/tests/int8_gemm/CMakeLists.txt#L24.

Hi, have you fixed the error: Linking CXX executable ../../bin/int8_gemm_test /usr/bin/ld: cannot find -lmkl_intel_ilp64 /usr/bin/ld: cannot find -lmkl_core /usr/bin/ld: cannot find -lmkl_intel_thread?


aria-hidden not needed on Accordion

aria-hidden not needed, aria-expanded is sufficient.
The accordion contents needs a role="region", or even better; changed to a section landmark element

https://stackoverflow.com/questions/21832334/aria-do-you-need-to-use-aria-expanded-with-aria-hidden
https://www.w3.org/TR/wai-aria-practices-1.1/examples/accordion/accordion.html

This is a breaking change. Closing issue


Repeater list - display error message

It would be nice to be able to display an error message in the repeater list if an error occurs.  The object passed to the datasource callback function would have a new "error" property added to it if an error occurred.  The developer that is using the repeater list control would set obj.error to an error message they deem appropriate.  The Repeater List renderTbody function would then render the error message if it detects one.

This is definitely needed. The issue has been kicked around since December. See #945 (Null/empty state for repeater?). We may want to support more uses than errors alone and create a more generic "custom message" option to support something like FTUX.

The advantage of having the error property is that we can have specific rendering for errors.  In this case the text is highlighted red.

@rbmoore merge accepted. additional unit tests would be nice.


Feature/welcome back

https://app.productive.io/2650-4site-interactive-studios-inc/tasks/6478846
Adds a "welcome back" widget to pages with "fast-personal-details" forms when all mandatory fields in that form are pre-filled. Please see the productive task for more info since the links contain personal info.

@MichaelT372 Merged!


Keyboard does not appear with the Search bar

Hi the keyboard only seem to work with textview and not with the search bar. so currently dfferent keyboards appear depending on where the user types.  It would be good if the plugin worked with the search bar too.

@anuragd7  Sorry for the late response here.
Not sure what we can do about this as this is behavior of the CocoaPod itself. We do now expose the raw plugin typings, so you have a little more power to configure things (see https://github.com/tjvantoll/nativescript-IQKeyboardManager#advanced-usage).
I’m going to close this as I’m not sure what we can really do in this plugin as its just a simple wrapper of the CocoaPod, but if anyone stumbles upon this and has any ideas please comment.


Can't move config.toml

I've tried to move config.toml from .hz to project folder, but it does not work even though --config config.toml  seems correct...?
Using the dockerfile.yml

Just an update, we closed this since we removed the --config option altogether. There are now several configuration files, and it's better to just have it look in the default location, rather than adding a new flag for each config file.

thanks for the update...


[Question] unexpected id_token from refresh token response

As stated in #89, an id_token can only be requested using a flow specified in OpenID Connect. I was surprised to learn that refresh_token flow does produce id_token responses when the refresh token was obtained from a custom grant_type.

So the question is: shouldn't the grant store remember which grant was used to obtain a refresh token? And then decide whether the refresh_token can be used to obtain an id_token.

Yea, we do currently if the original request contains identity scopes.

So this works as intended, but then what's the point in issuing id_tokens for OIDC-grants only if all grant types can be used to obtain a refresh token? Maybe identity scopes should not be allowed for non-OIDC grant types?

Is this somehow adversely affecting you in some way?

Not at all, just thought it was weird.


Support arm64 build

Summary

Resolves #31
Changes

...
...

Notes for Reviewers

...
Release Notes

...

arm64/v8 build error:
https://github.com/Wh1isper/docker-protobuf/actions/runs/6820813219/job/18550298369

Reference PR: https://github.com/open-telemetry/build-tools/pull/73

:( QEMU's performance consumption is too high, It takes more than 5.5 hours to build the image

Pin https://github.com/actions/runner-images/issues/5631


libtdjson Memory Leak

When I run my application, at the beginning it uses like 18MB, but it increases infinitely.
In a day it reaches 150MB
I don't know it's tdlib bindings issue or libtdjson itself.
I have checked it with heaptrack and it shows me that "Leak" comes from libtdjson but I am not sure.
Does anyone has idea how to find out what's going on and fix it somehow?
Maybe someone else has the same problem?

I have just searched for memory leak within tdlib repo and found this issue. I think it may be related.
Tldr; it's not a bug, it's a feature :)
Obviously it may not be the right answer. I'll check it by myself in a couple of days.

Yeah I saw that and unfortunately this doesn't apply to our situation 😊
That is more about compilation
Maybe this  is the same issue ? 🤷♂

Whoops, sorry, I do not know how it happened.
Here is the correct issue about (same?) memory leak and possible solutions.

So currently, there is only one solution and it is this.
Is there any way to restart whole thing easily ? Or I need to do it manually 😒

I'm not sure that restart the whole application is the best way to deal with it. Sounds weird, doesn't it? I need to think about the problem a bit.
I didn't have enough time for this but I hope that it will change in the coming days.

@anwsonwsymous While I don't yet have enough time for tests, you can test yourself with the following theory. If you want, of course :)
All related issues really say that there is only one way to deal with high memory consumption: you really need to close tdlib instance. c-interface docs says that TDLib client instances are destroyed automatically after they are close.
rust-tdlib client provides method Client::close() method. So it looks like you can try it. But, of course, after this you need to open instance again with the new Worker::bind_client(...) call.

Yes of course, I will try it and let you know about the results here 👏

Closing client helps!
Heaptrack result

Currently there is no way to do it.
I'm going to implement Worker::reload_client method. I want it to close client (as you did it manually) and after this worker will try to re-authorize client. So, all you need is just call reload_client.
Would it be suitable for you?

Yes it will be perfect 👍🏼
Can we also change Worker like this to have ability to change auth handler at runtime?
#[derive(Debug, Clone)]
pub struct Worker<S>
where
    S: TdLibClient + Send + Sync + Clone + 'static,
{
    run_flag: Arc<AtomicBool>,
    auth_state_handler: Arc<Arc<dyn AuthStateHander>>,
    read_updates_timeout: Duration,
    channels_send_timeout: Duration,
    tdlib_client: S,
    clients: Arc<RwLock<ClientsMap<S>>>,
}

Currently there is no way to do it. I'm going to implement Worker::reload_client method. I want it to close client (as you did it manually) and after this worker will try to re-authorize client. So, all you need is just call reload_client.
Would it be suitable for you?

Hi!
How about `Worker::reload_client?
It would be great!

missed the ticket because it's closed, sorry.
reopened, going to implement it in a while.

resolved via #26 , published as 0.4.2


Dynamically setting network isn't supported

Changing or setting the network after installation with the topology.istio.io/network label on system namespace breaks DNS and later on fails the upstream connection.
The Ztunnel's DNS server is currently being started with the network from the configuration:
https://github.com/istio/ztunnel/blob/9583efce62c8d9d4c29c987a6479d13803ea8149/src/app.rs#L159
and also when building the request to upstream connection:
https://github.com/istio/ztunnel/blob/a52cbfbd3c16d1698d2bdfbe3da2986707eb83be/src/proxy/outbound.rs#L355
In both places modifying the network as described above will not re-configure the ztunnels and therefore will cause DNS resolution failures and (assuming this is resolved) connection refusal to the upstream ztunnel.

The namespace label is the last thing checked when determine the network for some endpoint.
For sidecars this won't get updated until we re-inject.
I wouldn't expect this to be super dynamic for zTunnel, but the fact that it can easily become out of sync with the Pods the zTunnel serves isn't good.

The network is actually being used in the DNS to lookup for the workload in a map where the keys are network+ipaddr.
Assuming we lookup only by ipaddr (either same map or new one) we can get rid of the network there.
The more problematic one is the second lookup later on in the outbound for the downstream workload based on network+addr but this time it also does an on-demand fetch if not found with the network/addr.

for me, the crux of the issue is a potential race between IP + network updates in control plane and data plane.
(correct me if im missing something) for IP lookups we're reasonably ok because if we don't find the IP we transparently proxy to destination and we can prevent that from happening with L4 / auth policy until the race resolves itself. CNI always acts within the node first so we will always capture new pod traffic so ztunnel can always apply that L4 / auth policy as directed
for network, im a bit more concerned. if ztunnel thinks it has one network while the control plane has another / newer value then ztunnel may send on-demand lookups for IPs and get the wrong xds Address. this is more dangerous since we cannot really prevent this with L4 / auth policy until the race is resolved

I agree with @kdorosh here as well. the zTunnel should not need to be aware of its own network, that can lead to the race as described above. If envoy/pilot-agent are aware of the network, I highly doubt that it factors into the data-plane in any meaningful way given that ALL of the envoy routing config is fed from Istiod anyway.

Following comment I would like to describe the concrete changes to support it:

Remove the network configuration from ztunnel. There is no need for it.
DNS and outbound, when they need to lookup the source workload, will use an empty network (instead of the config network we have today)
Addresses returned in WDS by istiod will set the network field to empty if the address is on the same network of the ztunnel (and therefore istiod’s). Technically it means modifying the resources just before they are returned by the WDS.
Addresses of networks other than istiod will be kept untouched
Comparing against istiod’s network as the ztunnel will no longer have a network (1st bullet). Istiod’s network can be dynamically changed with label.

The main concern with the above is that we need to modify the resources returned in the WDS delta generation and replace the network in addresses of the ztunnel with empty string.

@stevenctl

can we do lookups based on the source pod's network?

But how do you know the source pod's network? Ztunnel knows the source pod's IP address and needs to look Workload with network+address. Today we use the static network for this lookup.

Yes after we talked in the meeting I realized we must know our network to make this work. I'd much rather know our network. dynamic updates makes things nicer; restarting zTunnel isn't horrible (about as bad as sidecars).
I don't want to change WDS responses based on client info.

I don't want to change WDS responses based on client info.

:+1: so long as we have a nice upgrade path from no-network to adopting a network, even with restarts, im happy


WIP ext: loading of shared tasks via entry_points

work in progress

that entrypoint_name value could be hardwired, I just wasn't 100% sure we weren't going to change the name

@bruno314 when you are done please remove WIP from the PR title.

FYI. I'm creating a new release and will take care of merging the PR.


Trivy dependency not found due to PATH override

Issue
When running trivy through trunks plugin, I'm getting a failure on all files due to trivy hitting problems surrounding being invoked. Here is the copy / pasta of the stderr:
        2023-06-21T14:06:56.666-0600	INFO	Need to update DB
        2023-06-21T14:06:56.666-0600	INFO	DB Repository: ghcr.io/aquasecurity/trivy-db
        2023-06-21T14:06:56.666-0600	INFO	Downloading DB...
        2023-06-21T14:06:56.666-0600	FATAL	init error: DB error: failed to download vulnerability DB: database download error: OCI repository error: 1 error occurred:
        	* error getting credentials - err: exec: "docker-credential-osxkeychain": executable file not found in $PATH, out: ``

This is due to trunk setting the PATH to only the linter in the environment as seen here: https://github.com/trunk-io/plugins/blob/main/linters/trivy/plugin.yaml#L56-L58
This seems to be an artifact of trivy having an implicit dependency on docker-credential-osxkeychain.
I have the tool on my system, but it is not PATH set by trivy.
See screenshot of the full error report:

Expected
I would expect trunk to either download ALL dependencies for their plugins so they run in an isolated fashion. This would be preferred and would get around this issue.
The other option is to provide a workaround so users like myself can better override the environment / PATH set for the plugin. That would allow me to specify the correct PATH so that trivy can execute as part of trunk. This has major issues as it is likely that setting the PATH in something like trunk.yaml would not be portable to other team members machines and would be fragile.
Notes
If we have a suggested plan of action for this issue, then I'd be happy to implement it as I don't believe the fix should be a major one. Maybe adding an additional downloads entry for the docker-credential-osxkeychain tool so that is installed alongside trivy?

Hi! Thanks for reporting this; the very detailed breakdown and output is very helpful. Fortunately, we have a fix in the works for this bug and hope to have a release out as soon as possible!

We just released plugins version 0.0.19, which includes a fix for this by including the user's path. If you're still running into any issues please let us know!


enhancement add the switch enable_java_udf to control the creation and use of java_udf.

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


[Feature] Limit Transfer Rate to the Final Drives

Hi, thank you very much for your good work!
I have been using your program, when plots are moved to the final drive I have longer responses to challenges, sometimes even errors (more than 30seconds).
I think it's a "must have" feature to avoid these bad situations.
If you decide to implement this, for example, you can make a text box where we can put the maximum MB/s for each end unit in the "New Job" window. I think with Robocopy we can apply that.
Thank you very much for your hard work :)

@Jacek-ghub , thank you very much for your explanation, I didn't know that.
Before I was having longer response time (like 4/5s), without these errors, when a proof was found on the same disk where the plot was being moved. Due to the code degradation you said this situation is getting worse.
I think we can try to minimize this situation by limiting the transfer rate to the final drive.

@MarFre22
By the way, how do you know that moving those plots is causation not just correlation?  Did you try to run those heat maps, and pause your plotter for some time, and check whether you are getting less or no timeouts anymore?  Actually, as it was discussed in another thread, you can specify your final destination as your temp1 drive (if you are using MM, potentially temp2 if that is the official Chia plotter), this way it will take 0 seconds to move those plots.  If you have some extra room on your temp1 drive, you don't need to stop your plotter, just point it to that folder.  Once you check those heat maps, you will have to manually move those new plots.  However, this way you can test: 1. whether just CPU usage from the plotter may influence those timeouts, 2. the final move process is contributing to that.  Again, I see those timeouts mostly on my full node / main harvester that doesn't do any plotting, but sits on most of my plots.  On the other hand, my plotter doesn't have much, if any timeouts (it sits on two/three disks at most).
Again, the main Chia code responsible for those timeouts has badly deteriorated since 1.2.0, and Chia team so far is refusing to accept that (you cannot fix, what you don't understand).  So, putting some band-aid code in PSCP may really not be the best thing to do.  But again, as PSCP will soon have a mover component, I would think that just for the sake of it, it could be run with BelowNormal priority, what would not change anything, but let few people sleep better - mainly psychological value, that's it.


Error when using nlf programatically

I've run npm install nlf --save
Then I try to import it using import `import nlf from 'nlf';
I get loads of cannot resolve errors:
/node_modules/nlf/index.js
Module not found: Error: Can't resolve './lib-cov/nlf' in '/Users/user/Documents/product-web/node_modules/nlf'
Is there something i'm doing wrong?

That's not finding the code coverage instrumented code used in testing only.  That shouldn't every be called unless you have
NLF_COV=true

defined in your environment.  Can you give me some more details ... like operating system, node version etc?

Yeah, I was using it inside React with Babel.
Node: v8.1.0
NPM: 5.0.3
OS: Mac Sierra 10.12.6
I have decided to go with the command line option you provide and import the JSON.
Great tool!!

You could try using:
var nlf = require('nlf');

I'm not sure of your Babel setup, but all Babel does is convert import statements into equivalent require statements behind the scenes.   Its also the case that nlf isn't intended to run in the browser, so supporting ES6 modules isn't a priority.
I'm glad its working for you now.


[Pagination] No !default parameter

On _pagination.scss : lot of variables have no !default parameters, ex :
$pagination-item-color: $black;
So custom settings don't work.

Fixed, we'll have a patch out today to address this.

Thanks for your great job !


Internal file and module structure

Get rid off the internal frame::common module by lifting its contents one level higher into the parent module frame. This is consistent with all other modules. Neither functional nor public interface changes.
All rtu/tcp sub-modules are now contained in separate files
Some adjustments and extensions of the .gitignore file

Fixed decoding of incomplete RTU frames (including regression tests)


Add support for Mermaid diagrams

graph LR
A-->B

Based upon a quick review of the official documentation for Mermaid, this does seem like something that should be possible for the next milestone release.

Similar request to Issue #1344 for Tikz diagrams, we should pick only one to actually use for the template.

I did a bit of testing with Mermaid and while I was able to get it up and running locally - it's mostly a matter of adding a script to the template - due to the limitations of GitHub Pages, it doesn't appear that callbacks to the JavaScript used for rendering is allowed. This might get fixed in the future, but for now I'm going to remove this from the v0.9 milestone as a feature.


Support username and password using curl style url

Config item eureka:client:serviceUrl  now support username and password curl style url.
Hi Tim,
As discussed, I have updated the Pivotal.Discovery.EurekaBase url to support username and password. I also tried to add nunit test but I not sure its possible with this library and the location where the code is changed. If you guide me I would be happy to add them.

I think your right. It would be more efficient.
I chose to check for access token first because I wanted to make sure that if a user specified both authorizations in the config file that Access Token Authorization took precedence. I don't know why anyone would specify both except for maybe copying a config file and not removing auth token authorization before adding in basic auth.

Really nice work on the testing code!!!

I've made the change you requested.

Thanks again!


Feat: Wanted to make the Testimonials section responsive

Describe the feature
decrease image size
increase div size of class "image-content"
align the rating in one line
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

preassigned to someone else!! make sure to read the issue that you are creating!!


Exception in windows when variables with empty value

Detected in libenvpp 1.30 and 1.40
Running in windows 11, with msvc 2019, debug mode.
In libenvpp_environment_windows.cpp, method get_environment() [line 42], when an empty variable is found:

var_name_value:
[0]: L"VSCODE_L10N_BUNDLE_LOCATION"
[1]: L""

In statement [line 62]:
 env_map[*convert_string(var_name_value[0])] = *convert_string(var_name_value[1]);
an exception is thrown, because std::optional returned from second convert_string is empty:
#if _CONTAINER_DEBUG_LEVEL > 0
        _STL_VERIFY(this->_Has_value, "Cannot access value of empty optional");
#endif // _CONTAINER_DEBUG_LEVEL > 0

Maybe it should return an std::optional containing an empty std::string  in this case

Thanks for reporting this! I pushed a fix for this to the main branch, that will be included in the next release.


Fix(web): Help Page shown before projects are loaded

It is still shown when no projects are present
fixes: #294

is there really not better solution to this? it seems like a common problem to me

Ok, so I set projects to null by default and changed the check for whether or not to show the help page to <Help v-if="projects?.length === 0" />


Support localizing [DisplayAttribute] via IStringLocalizer

Today we only localize validation based data annotations. We should expand this outside of the realm of validation (especially since you do a services.AddDataAnnotationsLocalization which says nothing about only adding validation based data annotations.
Having support like this would enable scenarios such as:
Model:
public class User
{
    [Display(Name = "Last Name")]
    public string LastName { get; set; }
}

Page
@model User
@addTagHelper *, Microsoft.AspNet.Mvc.TagHelpers

<label asp-for="LastName" /> <!-- Label would be localizable -->

This issue is for more than just [Display] but this data annotation is the one that showed itself during my sign off activities.

I agree this is something we should investigate. I imagine we'd do the work in DataAnnotationsMetadataProvider to support this.

Can we extend DataAnnotationsModelMetadataProvider to make this happen, code snippet may look like this
public class LocalizedDataAnnotationsModelMetadataProvider: DataAnnotationsModelMetadataProvider
{
    protected override ModelMetadata CreateMetadata(IEnumerable<Attribute> attributes, Type containerType, Func<object> modelAccessor, Type modelType, string propertyName)
    {
        var meta = base.CreateMetadata(attributes, containerType, modelAccessor, modelType, propertyName);
        meta.DisplayName = Localizer[propertyName];
    }
}

At this stage this is extremely unlikely to make it into 1.0.0, but we'll revisit it after we release.

I'm agree with you, this may be move to the backlog, because it need more investigation ..

there is no workaround or a temporary solution we can use  until you support it?

Is there any progress on this issue? What's the schedule for this issue?
In the current state DisplayAttribute is rather useless for localized applications.

@ManuelHaas As I see it's still in backlog

@eilon let's do this one in 1.1 if it fits.

It's Ok if you want to do it in 1.1, but is there ANY current workaround for this one?
Most of my code was written when back in RC1 when localization wasn't even moving, but I just assumed it will work when it released, and now here I am, getting a bunch of not localized keys as results.
I'm like the 5th person asking for help in this one.

@ShikiGami we'll see if there's a workaround that works on 1.0, but I can't immediately think of any simple workaround.

Putting in the 1.1 milestone. @ryanbrandenburg , I marked this as needs-design because I'm not sure if this is straightforward ("just another attribute") or if this requires some extra plumbing in the system. So, have a look at this, and if it's not trivial, let's see if we can come up with some ideas and run it by @DamianEdwards / @dougbu (because it probably affects Model Metadata or something).

Keep waiting on this issiue.
https://github.com/dotnet/corefx/issues/11846


Server Rendered Deployment (Universal)

Hi, had a look around at the issues/documentation, but couldn't find anything specific to my question:
What do we need to deploy to our server to run it in Server Rendered Deployment (Universal)?
image

Does this whole folder have to be deployed to the server for it to work (seems quite a lot if we have to upload all the source code to the server), or do we need to just deploy the .nuxt folder?
Any help/how it's meant to be done would be appreciated :)

This question is available on Nuxt.js community (#c18)

i suggest add .gitignore for dist and .nuxt...
dist folder is for static pages which you might to use with netflix
if you need to run on your server with nodejs
as a universal app
you need to clone your project
do npm install
to install all dependencies
and do npm build to create the .nuxt folder
of course you need to run a web server such as nginx to proxy your request
on localhost:3000 to the domain name you want to redirect...
hope this might help

Nuxt has updated their documentation with

Should we be building in development ? Given the build dependencies are installed in the dev depencies ( even when choosing universal app ) Does it make more sense to build on the development machine ?


[SPARK-12453][Streaming] Remove explicit dependency on aws-java-sdk

Successfully ran kinesis demo on a live, aws hosted kinesis stream against master and 1.6 branches.  For reasons I don't entirely understand it required a manual merge to 1.5 which I did as shown here: https://github.com/BrianLondon/spark/commit/075c22e89bc99d5e99be21f40e0d72154a1e23a2
The demo ran successfully on the 1.5 branch as well.
According to mvn dependency:tree it is still pulling a fairly old version of the aws-java-sdk (1.9.37), but this appears to have fixed the kinesis regression in 1.5.2.

Can one of the admins verify this patch?

Instead of just omitting the dependency, what about marking it as provided?

@JoshRosen it's not the scope that's an issue but the version. Not specifying it lets the SDK version required by the Kinesis client come in at whatever it needs to be. I am not sure provided scope works since it does really need to be bundled and isn't necessarily otherwise available from the env.
There's a little wrinkle here in that the Kinesis code uses SDK classes directly, so technically the POM should declare that. However the SDK is used only in the context of the Kinesis client, so it seems like the lesser evil to rely on it as a transitive dependency but at the right version.

Test build #2270 has started for PR 10492 at commit 8e80f5e.

Test build #2270 has finished for PR 10492 at commit 8e80f5e.

This patch fails Scala style tests.
This patch merges cleanly.
This patch adds no public classes.

@JoshRosen are you OK with the reasoning above?
@BrianLondon sorry but the style checker doesn't like the white space on the blank line you added to trigger tests :(. If that's removed I can merge this.

@srowen space removed.  Thanks.

Jenkins, retest this please.

Test build #48668 has started for PR 10492 at commit 137bafd.

Test build #48668 has finished for PR 10492 at commit 137bafd.

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

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

Merged build finished. Test PASSed.

Given the discussion here, I'm pretty confident in this change and would like to go ahead and merge it. It will also unblock further fixes in 12269.

Sounds good to me.  Once done, I'll rebase 12269 and reopen that discussion.

Merged to master/1.6/1.5. I'll keep an eye on the 1.5 build to make sure that cherry pick still worked OK.


Compilation with strict warnings fails on GCC 11

When compiling master OpenSSL with GCC 11 and strict warnings, compilation fails due to a warning.
Configuration:
./config --strict-warnings enable-asan enable-ubsan enable-zlib-dynamic enable-unit-test enable-md2 enable-rc5 enable-buildtest-c++ enable-weak-ssl-ciphers enable-ssl3 enable-ssl3-method -w

Warning:
ssl/s3_cbc.c: In function 'ssl3_cbc_digest_record':
ssl/s3_cbc.c:404:13: error: 'memcpy' offset [64, 128] is out of the bounds [0, 13] [-Werror=array-bounds]
  404 |             memcpy(first_block, header + md_block_size, overhang);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

GCC version:
# gcc --version
gcc (GCC) 11.0.1 20210324 (Red Hat 11.0.1-0)
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Since header is defined as an array of 13 bytes, adding md_block_size which is larger than 13 bytes seems wrong.  Not sure how to fix that.

I suppose the argument in the function prototype should be just changed to a pointer.

From what I found digging further into this I can say that the pointer is 13 bytes if the last parameter (sslv3) is 0 and more otherwise.  So I agree.  PR coming up...


fix: run JBang with spaces in  path

Fixes #26
Signed-off-by: Fred Bricon<EMAIL_ADDRESS>

/Users/fbricon/.sdkman/candidates/jbang/current/bin/jbang "/Users/fbricon/Dev/souk/vscode jbang with spaces/hello.java"
❯ /Users/fbricon/.sdkman/candidates/jbang/current/bin/jbang "/Users/fbricon/Dev/souk/vscode jbang with spaces/hello.java"
Hello World
❯ /Users/fbricon/.sdkman/candidates/jbang/current/bin/jbang export native "/Users/fbricon/Dev/souk/vscode jbang with spaces/hello.java"
[jbang] Exported to /Users/fbricon/Dev/souk/vscode jbang with spaces/hello
❯ ./hello
Hello World


Update CAPI v2 docs links to new subdomain [v8]

This PR updates CAPI v2 docs links from apidocs.cloudfoundry.org to v2-apidocs.cloudfoundry.org.
The goal is to signal that v3 is the primary API, also a necessary step in eventually sunsetting v2.
The infrastructure hosting the app serving docs at apidocs.cloudfoundry.org is expected to go down imminently, so this change is needed to avoid dead links.
See capi-release PRs #440 and #441

Same comments as https://github.com/cloudfoundry/cli/pull/3029

Same comments as #3029

is this ready to merge now that https://github.com/cloudfoundry/cli/pull/3029 is in?


Make Object Properties Private , returns correct in console but doesn't pass challenge?

Challenge Make Object Properties Private has an issue.
User Agent is: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:
var Car = function() {
  // this is a private variable
  var speed = 10;

  // these are public methods
  this.accelerate = function(change) {
    speed += change;
  };

  this.decelerate = function() {
    speed -= 5;
  };

  this.getSpeed = function() {
    return speed;
  };
};

var Bike = function() {

  // Only change code below this line.
  var gear = 0;

  //public methods
  this.setGear= function(change) {
    gear += change;
  };

  this.getGear = function() {
    return gear;
  };

};

var myCar = new Car();

var myBike = new Bike();

myBike.setGear(4);
myBike.getGear();

As you can see i've tried testing to set the value 4 using setGear(4) and getGear returns 4. However the activity isn't passed.

Check out what happens if you call the setGear method twice. Next time please visit the Help Chat to confirm what you're seeing is a site issue and not an issue with your solution before filing a Github Issue. Thanks and happy coding!

ohh right! Thank you it works now, changed:
gear += change;  to
gear = change;

this helped me as well :+1:

This helped me too! Thank you!

this also helped me but I have a point to make. In my case why "+=" issue was working for setGear(4) and not for setGear(3)/setGear(1);

wow...I am finally through..Thank you!

thanks, but why "+=" cant complete it?

I really don't understand why its not working out with +=. Maybe they did not want us to just copy the example. or is the code running more than one time so the second time gear will be added to the old value? with +=? thats maybe it but im getting the right answers with += in my console so I does not make any sense...

I think the += is performing an addition to the gear instead of just displaying it.

I found this example on GitHub and it works;
var Cake = function() {
var loot = 2;
// Getter to know how much loot you have
this.getLoot = function() {
return loot;
};
// Setter to change the ammount of loot
this.setLoot = function(num){
loot = num;
};

@Gichunge
Please do not post the solution on here. GitHub Issues are for reporting bugs on the website only.
Happy Coding!


Render reform forms

Currently it does not wrap resource with Reform on new and edit pages. But it would be nice it we can use Reform for rendering forms.
The problem is that reform does not allow to separately assign attributes and validate record. It does it in one step form.validate(attributes).

Possible solution: split validation on to two phases:

Assign attributes: form.send(:deserialize, attributes)
Validate form: form.validate({})

The only disadvantage that this solution relies on private method.


⚠ Samsung has degraded performance

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

HTTP code: 200
Response time: 2925 ms

Resolved: Samsung performance has improved in f214f58.


Allow Guzzle 7 too

TODO:

[x] Update composer
[ ] Read source code to understand Guzzle usage
[ ] Update source code
[ ] Confirm tests pass on both Guzzle versions

NB It doesn't look like the current travis config works. HHVM is testing HHVM 4 instead of 3, and there's no PHP 7.1+ runs.

@GrahamCampbell , travis.yml for you, if you wanna play with it:
language: php

before_script:
  - travis_retry composer self-update
  - travis_retry composer global require hirak/prestissimo
  - travis_retry composer install --no-interaction --prefer-source --dev
  - travis_retry phpenv rehash

script:
  - ./vendor/bin/phpcs --standard=psr2 src/
  - ./vendor/bin/phpunit --coverage-text --coverage-clover=coverage.clover

after_script:
  - if [ "$TRAVIS_PHP_VERSION" != "hhvm" ] && [ "$TRAVIS_PHP_VERSION" != "7.0" ]; then wget https://scrutinizer-ci.com/ocular.phar; fi
  - if [ "$TRAVIS_PHP_VERSION" != "hhvm" ] && [ "$TRAVIS_PHP_VERSION" != "7.0" ]; then php ocular.phar code-coverage:upload --format=php-clover coverage.clover; fi

stages:
  - build

jobs:
  fast_finish: true
  include:
    - stage: build
      dist: precise
      php: 5.5
    - stage: build
      dist: precise
      php: 5.6
    - stage: build
      dist: xenial
      php: 7.0
    - stage: build
      dist: xenial
      php: 7.1
    - stage: build
      dist: xenial
      php: 7.2
    - stage: build
      dist: xenial
      php: 7.3
    - stage: build
      dist: bionic
      php: 7.4

Given that I don't actually use this package, if anyone else want to finish off this PR, be my guest. Cherry pick my commit, and then commit the rest of the needed changes.

Neither do I. :) Just trying to see if we could push this through, for Guzzle-7 or not. By the looks of it, things are hopeless.

@bencorlett @GrahamCampbell
Why close this PR? The PR that has been merged doesn't provide support for Guzzle 7.x, so ????


Modify BlogSection

This fixes inconsistency in height of blog post cards in BlogSection on homepage.
Fixes #15

Show the first 3 lines and also reduce the padding at the bottom of the card so that it looks similar to the event cards