[SR-14115] SIL: derivative type calculation for coroutines

Previous ID
SR-14115

Radar
None

Original Reporter
@dan-zheng

Type
Sub-task

Additional Detail from JIRA

Votes
0

Component/s
Compiler

Labels
Sub-task, AutoDiff

Assignee
None

Priority
Medium

md5: fe00df47fa9d2ad8d02ae88725898756

Parent-Task:

SR-14113 Support _read and _modify accessor differentiation

Issue Description:
SIL has dedicated coroutine function types: https://github.com/apple/swift/blob/master/docs/SIL.rst#coroutine-types
Figure out derivative type calculation for coroutines.
// Array.subscript.modify example
Original function type: $@yield_once @convention(method) <τ_0_0> (Int, @inout Array<τ_0_0>) -> @yields @inout τ_0_0
Derivative function type: ???

@rxwei @dan-zheng @BradLarson Likely you already discussed this issue and maybe even came to some conclusion. Below are my thoughts about the issue.
For the sake of clarify I will consider the following trivial code in the examples:
struct S: Differentiable {
    private var _x : Float

    var x: Float {
        get{_x}
        set(newValue) { _x = newValue }
        _modify { yield &_x }
    }

    init(_ x : Float) {
        self._x = x
    }
}

Here, the _modify accessor for x has the following function type: $@yield_once @convention(method) (@inout S) -> @yields @inout Float
We need to specify:

VJP type
Pullback type

VJP type
In the simple case the VJP type is the same as the Differentiable-constrained original function type with the addition of one additional result: the pullback (for the sake of simplicity I am ignoring some additional cases like reabstraction thunks, etc.). Assume for a moment that we'd already defined a pullback type for S.x._modify above and denote it by PbFnTy.
Then if S.x._modify would be an "ordinary" function, then VJP-type for it will be @convention(method) (@inout S) -> @owned PbFnTy. However,  S.x._modify is an co-routine and co-routines cannot have ordinary results. Only `@yields@ are allowed. Some thoughts about solution of this problem:

We could extend co-routines and allow them to have ordinary results. However, this solution seems to have very big consequences in semantics. For example, we'd need to enforce that both resume and unwind epilogues of a co-routine return value. In general, this might not be possible for unwind part (though, we can partly mitigate this with even more complex schemes, returning e.g. an Optional here). Semantically, it would be end_apply where the final result will be obtained, etc. So things here looks very complicated and I'm afraid this would require changing lots of code here and there.
Yield the pullback. This seems to be possible. And the VJP type would be $@yield_once @convention(method) (@inout S) -> @yields (@inout Float, @owned $PbFnTy). However, yielded values represent the execution state in the middle of the co-routine. Therefore, semantically this might be only possible if there are no active values in the resume part of the co-routine, so pullbacks for sub-function before yield instruction and the pullbacks for the complete function including resume sub-function would be the same. Practically this seems to be unlikely as there are defer calls here and there, including Array.subscript._modify.
Return pullback indirectly. This way the pullback value will be available only after end_access, however, it could capture the pullbacks up until the end and the store of pullback value would occur only in the resume part of co-routine. Adding support for indirect return of a pullback would require some changes in VJP cloner, but otherwise seems to be ok. This way, the VJP type would be $@yield_once @convention(method) ($*PbFnTy, @inout S) -> @yields (@inout Float)

In reality I think we'd need 2 pullbacks or some clever combination of them. See below.
Pullback
Pullback propagates derivative information from active results back to parameters. In the normal SIL world functions have single entries and single returns. Therefore, in general, for a function (T) -> R the pullback will go from tangent result to tangent of input parameter(s) and will have the following signature (R.Tan) -> T.Tan. Unfortunately, @yield_once co-routines effectively has two entries and two exits. First one is implemented though begin_apply instruction and the second one  – via end_apply instruction. Fortunately, co-routines do not have normal results, the only results are yields and semantic result parameters – inout arguments. Therefore we might think that the appropriate pullback type for the case above would be (@inout Float, @inout S) -> Void. This almost correct, however, there are some subtle but important details: co-routine exits twice. Therefore the pullback itself should allow two entries and the plain function is not an appropriate one here.
Essentially, we can think about co-routines as a pair of functions: one for the first part until yield and another one – for the resume part (as I already mention, we assume that it is not possible to abort co-routines in question, so the unwind part could always be ignored). We'd not need co-routine at all, if it would be possible to return address from the function (usually we're yielding an address of some internal struct field). This would certainly complicate lots of things here and there, as we're not expecting to have some pointer aliases in SIL a lot.
One could think about using a co-routine as a pullback. If we'd try to execute the co-routine in reverse, then the output of reversed-resume part will be adjoints of all active values-inputs to resume part. This would be the yields of the co-routine and we would need to replace end_apply with begin_apply of a pullback co-routine. Fun stuff at reverse pass will start at begin_apply of original function, as we'd need to replace it with end_apply of a pullback co-routine (and here yield part of original co-routine would become a resume part of pullback co-routine). The problem here is that we'd need to inject the adjoints of original yields into the co-routine and there is no way to pass "additional" parameters to `end_access".
It looks like the only solution is to pass these adjoints indirect, storing the values to adjoint buffers after co-routine return. So, in our example the co-routine pullback type would be $@yield_once @convention(method) (@inout_aliaseable Float, @inout S) -> @yields $().
An alternative to this would be some kind of pair of pullbacks: one for the part of the function before yield and it would be a yield result and second one – for the resume part of the co-routine. It would be the part returned indirectly. We will need to introduce the special cases here and there (that there might be multiple pullbacks for a single function) and replace begin_apply and end_apply with corresponding pullback calls in the reverse pass. The advantage of this approach is more natural representation (e.g. inout yields would be turned into inout pullback parameters, etc.). The obvious disadvantage is that if there are multiple active inputs to resume block, then we'd need to expose their adjoints as pullback results / inputs and this is something not possible looking into a co-routine type only. Though usually the only active input is the struct itself, so we might be fine here (and deny differentiation of other cases).
Both approaches have the following assumptions:

It is not possible to abort the co-routine
There is a single yield instruction
Therefore it could be possible to split the function into two parts – the yield and resume ones.

Are there any other ideas? I'm slightly leaning towards co-routine pullback that is returned indirect. Is there anything I missed?

Some status update: I'm having a proof-of-concept implementation that seems to generate correct SIL code for things like:
struct S: Differentiable {
    private var _x : Float

    func _endMutation() {
     // do something
   }

    var x: Float {
        get{_x}
        set(newValue) { _x = newValue }
        _modify {
            defer { _endMutation() }
            if (x > 0) { // invoke getter to have some nested function calls
                yield &_x
            } else {
                yield &_x
            }
        }
    }

    init(_ x : Float) {
        self._x = x
    }
}

Implementation notes:

Both pullback and VJP must be co-routines
It is possible to support multiple yield instructions and have some non-trivial code in resume part
We ended with some weird things that cannot be codegen'ed now as we'd need to partially apply a pullback co-routine

Still, it seems there are some quite fundamental obstacles that might require some language extensions / changes.
I summarized the caveats in the following forum post: https://forums.swift.org/t/accessor-coroutines-poor-children/67061

The first cut of coroutine differentiation landed in https://github.com/swiftlang/swift/pull/71461
To put things simple:

VJP is a coroutine itself: it yields the results and returns a pullback closure as a normal return. This allows us to capture values produced in resume part of a coroutine (this is required for defers and other cleanups / commits)
Pullback is a coroutine, we assume that coroutine cannot abort and therefore we execute the original coroutine in reverse from return via yield and then back to the entry
It seems there is no semantically sane way to support _read coroutines (as we will need to "accept" adjoints via yields), therefore only coroutines with inout yields are supported (_modify accessors). Pullbacks of such coroutines take adjoint buffer as input argument, yield this buffer (to accumulate adjoint values in the caller) and finally return the adjoints indirectly.

More to follow

And to answer the initial question:
Original function type: $@yield_once @convention(method) <τ_0_0> (Int, @inout Array<τ_0_0>) -> @yields @inout τ_0_0
VJP function type: $@yield_once @convention(method) <τ_0_0> (Int, @inout Array<τ_0_0>) -> (@yields @inout τ_0_0, @yield_once (@inout Array<τ_0_0>.TangentVector) -> @yields @inout τ_0_0.TangentVector)


Re-open request 302 redirect when using Laravel's Form Request Validation #148

Hi,
This issue is for form request validation (after installing laravel-cors).
I tried the solution mentioned in #148 but it didn't solve my problem.
When validation errors are thrown for simple form request validations, I get a 302 with the following "Requests to the server have been blocked by an extension."
When using post validation functions ($validator->after()) the rules are skipped and the post validation method executes as usual. Which is a massive issue right now since post validation methods aren't expected to run if validation fails.
Any workarounds or fixes for this?
Thanks

I'm closing this due to inactivity. If you still encounter this issue on the latest version (2.0.1 at the moment), please open a new issue with detailed information.


Cannot connect to HTTPS domain as endpoint when trying to receive OOB Invitation - SSL Error

We are running the cloud agent inside a docker container which is connected to the web via reverse proxy in nginx.
Via browser, the endpoint is accessible and results in downloading an empty file.
The following messages appear in logs when attempting to receive an oob credential.
oxide-acapy-test-client-1  | aiohttp.client_exceptions.ClientConnectorSSLError: Cannot connect to host oxide.website:443 ssl:default [[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:852)]
oxide-acapy-test-client-1  | 2023-11-24 13:00:55,831 aries_cloudagent.transport.outbound.manager ERROR Outbound message could not be delivered to https://oxide.website/acapy-public
We have already tried making ca-certificates accessible in the container but to no success.

@WadeBarnes — can you provide any suggestions on this one?  Putting a docker-ized instance of ACA-Py behind a proxy is done all the time, but I don’t know how to debug such a thing...

@siifuu, Would you be able to share the proxy and agent configuration?
From the outside it appears the certificate is valid.

Where is the client in relation to the proxy/agent?
It appears it's the client that is complaining about the validity of the certificate.

Ah, it could be because the certificate chain is incomplete.  It's best practice to include the site certificate and at least the intermediate certificates in you chain.  In your case the cerificate chain is missing the Encryption Everywhere DV TLS CA - G2 certificate which might not be readily availably for download by your or other clients.

You can view the certificate scan results here; https://www.ssllabs.com/ssltest/analyze.html?d=oxide.website

Hello, thank you so much for your suggestions so far @WadeBarnes
nginx.conf looks as follows:
worker_processes  auto;

error_log  /var/log/nginx/error.log;

pid        /var/log/nginx/nginx.pid;

events {
    worker_connections  1024;
}

http {
    resolver <IP_ADDRESS> ipv6=off;
    #resolver <IP_ADDRESS> ipv6=off;
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for" "$request_body"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;

    keepalive_timeout  65;
    proxy_connect_timeout  600;
    proxy_send_timeout    600;
    proxy_read_timeout    600;
    send_timeout      600;

    server {
        listen       443 ssl;
        server_name  oxide.website;
        ssl_certificate cert_oxide.website.crt;
        ssl_certificate_key www.oxide.website.key;

        root /usr/share/nginx/html;

        charset utf-8;

        access_log  /var/log/nginx/host.access.log  main;

        location / {
            index  index.html;
        }

  	#...

	location "/acapy-public" {
                proxy_pass "http://oxide-acapy-1:8000/";
        }

	#...

	# redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/share/nginx/html;
        }
    }

}

and docker.compose
version: '3'

name: oxide

services:
  acapy:
    image: acapy:latest
    depends_on:
      - db
    ports:
      - "${ACAPY_ADMIN_PORT}:${ACAPY_ADMIN_PORT}"
      - "${ACAPY_ENDPOINT_PORT}:${ACAPY_ENDPOINT_PORT}"
    user: 'root:root'
    environment:
      WAIT_HOSTS: "db:5432"
      WAIT_HOSTS_TIMEOUT: "300"
      WAIT_SLEEP_INTERVAL: "5"
      WAIT_HOST_CONNECT_TIMEOUT: "3"
    entrypoint: /bin/bash
    command:
      [
        "-c",
        "apt-get update && apt-get install ca-certificates; curl -d '{\"seed\":\"${AGENT_WALLET_SEED}\", \"role\":\"ENDORSER\", \"alias\":\"${LABEL}\"}' -X POST ${TEST_NET_URL}register; sleep 5; aca-py start --auto-provision -it http '<IP_ADDRESS>' 8000 -ot http --admin     '<IP_ADDRESS>' ${ACAPY_ADMIN_PORT} -e ${LOCAL_ENDPOINT} --webhook-url http://controller:${CONTROLLER_PORT}/webhooks --genesis-url ${TEST_NET_GENESIS} --label ${LABEL} --auto-accept-invites --auto-accept-requests --admin-insecure-mode --log-level info --recreate-wallet --    wallet-type indy --wallet-name ${WALLET_NAME} --wallet-key ${WALLET_KEY} --tails-server-base-url ${TAILS_SERVER_URL} --endorser-protocol-role 'endorser' --seed ${AGENT_WALLET_SEED}"
      ]

  # ...

How would I go about completing the certificate chain?

How would I go about completing the certificate chain?

https://www.digicert.com/kb/ssl-support/pem-ssl-creation.htm

Thanks, this fixed it.


Improve error-handling for install on cloud

right now, errors are not caught when the installation in cloud fails. Instead, they get stuck at 100%.

Closes #77


Contributing.md page

From your recent experience, @belibug please review.

:white_check_mark: Build MarkdownPS 1.0.44 completed (commit https://github.com/Sarafian/MarkdownPS/commit/f31fc79948 by @Sarafian)

:white_check_mark: Build MarkdownPS 1.0.48 completed (commit https://github.com/Sarafian/MarkdownPS/commit/429b0d4dcd by @Sarafian)

:white_check_mark: Build MarkdownPS 1.0.56 completed (commit https://github.com/Sarafian/MarkdownPS/commit/3111ae6e62 by @Sarafian)

Looks good.


It'd be great if VS Code can show colors for Source Control tree

I am wondering if VS Code could add colors to SOURCE CONTROL tree. See attached screenshot.
Green for clean. Red for changed.

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


FEATURE - retrieve OData metadata for ValueListReferences

As a consumer of the @sap-ux/axios-extension (former odata-client),
I want to be able to download metadata of referenced value help services,
so that I can create mock data for them.
Description
Starting with SAP Fiori elements for OData V4, value helps of applications are modeled as separate OData service endpoints. In order to write automated tests, there might be the need for mocking value help data. To be able to create mock data for value helps, we need to know the data structure behind them. This data structure can be retrieved from metadata of each value help service endpoint.
Technical Design
The module @sap-ux/axios-extension (former odata-client) allows structured access to OData services. It provides functionality to retrieve the metadata. For an OData V4 service, this metadata might contain one or multiple annotations SAP__common.ValueListReferences that points to the URL of a value help service. Instead of parsing the metadata for value help references by each consumer, module @sap-ux/axios-extension could provide this functionality allowing convenient access to the metadata and metadata of all included value help references.
Acceptance Criteria
Given I have a OData V4 service including value help references
when I execute the function to retrieve value help metadata
then I'll be able to store metadata of all referenced value help.
Notes
Example
Metadata for V4 List Report Object Page service contains:
...
<Annotation Term="SAP__common.ValueListReferences">
  <Collection>
    <String>relative/path/to/value/list/$metadata</String>
  </Collection>
</Annotation>
...

This means, the metadata for value help values can be found at:
relative/path/to/value/list/$metadata
Tasks

[ ] Unit Tests added
[ ] Test Cases defined

@Klaus-Keller I am not sure this should go into the @sap-ux/axios-extension since it would require that it parses the metadata. So far, the module only simplifies getting the metadata but does not do anything with it. Your scenario could be easily implemented outside of the module with.
import { ODataServiceProvider } from '@sap-ux/axios-extension';

const provider = ODataServiceProvider.create({
    baseURL: 'https://sap.example',
    params: { 'sap-client': client }
});
const service = provider.service('/ns/my_service');
const metadata = await service.metadata();
const valueListRefs = yourParser(metadata);

valueListRefs.forEach((ref) => {
   valueListRefs[ref] = provider.service(ref).metdata();
});

@Klaus-Keller I am assuming that this is not needed anymore since it has not been touched in 12+ months. If this is wrong, then please reopen.

Reopening this as it came up as requirement. Details will follow.


support am init command

This command would generate a am.toml file with some sensible defaults and ideally show a wizard that will ask the relevant questions;

what are the metric endpoints of your application
do you want push gateway

etc

We can extend this in the future when we have multiple purposes for the am tool, such as self hosting or agent mode.
The first question could be what is the intended use case and based on the answer we can show certain questions and write into different files.


add source filename in error message

#6036

OK, I've signed a Google Individual CLA.

Thanks for the PR! LGTM


turning off HQ screenshare and having 1080/source & 60fps chosen still has those selected

fixed in this commit


Add missing permission to read namespaces

Please provide a description for what this PR is for.
And to help us figure out who should review this PR, please
put an X in all the areas that this PR affects.
[X] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

@ozevren: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-new-install-k8s-presubmit-tests-master
495b44e125c4ced43897fb511bf69ad79dee574f
link
/test integ-new-install-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

In response to a cherrypick label: new pull request created: #16355


support downloading experiment data

Feature request
Although the langsmith experiment viewing interface is pretty good for basic usecases, for my (quite complicated) usecase I would like to build a custom offline experiment comparison tool (with e.g. streamlit or dash or similar). However I do not see a method in the sdk to download a given experiment run from the platform?
Motivation
In order to do error analysis on runs with complicated nested structured outputs from images, I need an interface that allows me to quickly compare specific metrics for each extracted field and e.g. highlight them in the source pdf, etc. I can build this myself, but need access to the underlying experiment result.

or I guess this might be covered by this PR? https://github.com/langchain-ai/langsmith-sdk/pull/1280

Agreed that a dedicated endpoint (and button in the UI) would be good.
The dataframe format is supported in the SDK (but it's really just a composition of endpoints rather than a dedicated endpoint) - that PR adds the abiltiy to export as json/other formats.
Semi-related discussion:
https://github.com/langchain-ai/langsmith-sdk/issues/537


Papercut

Consistency and display fixes. /cc @rumblesan

so it all looks good to me. comments are really nit picky, but they're the only vaguely problematic things I could find


NIFI-6163 Reporting task cannot be set to running when in INVALID state

Thank you for submitting a contribution to Apache NiFi.
Please provide a short description of the PR here:
Description of PR
Fixes bug https://jira.apache.org/jira/browse/NIFI-6163
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

[x] Is your initial contribution a single, squashed commit? Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not squash or use --force when pushing to allow for clean monitoring of changes.

For code changes:

[ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[ ] Have you written or updated unit tests to verify your changes?
[ ] Have you verified that the full build is successful on JDK 8?
[ ] Have you verified that the full build is successful on JDK 11?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check GitHub Actions CI for build issues and submit an update to your PR as soon as possible.

Was able to reproduce it:

Add "Scripting report task". After adding it - it is not valid.
In Postman try to send requests as in https://issues.apache.org/jira/browse/NIFI-6163 . You will receive OK message.

Regarding failed workflows - it seems errors are not on my part.

+1, merged to master, thanks @feitgraph

@pvillard31
Thanks for reviewing, cool!


Introducing Work-Stealing for TestClassProcessor

partially Fixes #2669 (for junit4 tests, as first step)
Context
On the issue discussion page, a number of people have asked for an improvement in the parallel test scheduling, and even others who are not aware of it might be positively affected through shorter execution times.
The fix proposed here is to establish a work-stealing Feature, with primary focus on TestWorker. This works currently only for JUnit4-Tests. Other test-frameworks have to delegate the stealing process, which is out of scope for this PR.
This is only part one, to reach optimal performance. Next planned parts are:

delegate stealing for JUnit5
delegate stealing for JUnitNG
sorting test-classes based on external provided statistic-data and replace round-robin distribution to test-processors to minimize stealing

The solution focused on reducing interrupt of planned test executions and move synchronization overhead to the stealing process.
Contributor Checklist

[x] Review Contribution Guidelines
[x] Make sure that all commits are signed off to indicate that you agree to the terms of Developer Certificate of Origin.
[x] Make sure all contributed code can be distributed under the terms of the Apache License 2.0, e.g. the code was written by yourself or the original code is licensed under a license compatible to Apache License 2.0.
[x] Check "Allow edit from maintainers" option in pull request so that additional changes can be pushed by Gradle team
[ ] Provide integration tests (under <subproject>/src/integTest) to verify changes from a user perspective

existing tests will use the feature by default
Tests depending on timing in unpredictable environments are inherent instable, so no explicit integration tests added

[x] Provide unit tests (under <subproject>/src/test) to verify logic
[x] Update User Guide, DSL Reference, and Javadoc for public-facing changes
updated/added Javadoc, imho out of scope for User Guide and DSL Reference, please correct, if wrong
[x] Ensure that tests pass sanity check: ./gradlew sanityCheck
[x] Ensure that tests pass locally: ./gradlew <changed-subproject>:quickTest

Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation

This is good work.  Have you given thought to how this would work with JUnit5 or TestNG?  I'd like to understand what the big picture would be before we commit to a particular strategy for how we enable tests to be more evenly distributed.  For instance, is this push model with work stealing the best choice, or would it make more sense to change it to a pull model?  I suspect this particular strategy would not work well for those other frameworks, but I haven't investigated our options very deeply.

@jvandort @ghale please help me to push this PR to merge and close the nearly 6 year old issue

Thanks for contributing this @zeners.  Better balancing of test class distribution is something that we do want to address soon.  Before we merge this, however, we want to discuss this a bit internally and make sure this is actually how we want to solve the problem.  Thanks for being patient - I know you want to see this improvement become a reality.  This is on our radar and we'll turn our attention to it soon.

thanks for the outlook
i take a look into JunitNG and the solution for Junit5 can adapt here too.
But i see a problem when using suites. It looks like that the forking processors isn't compatible with this feature. It looks like a bug, because (if i'm right) every forked process run the same suites multiplied in parallel processors (it ignores the divided classes-list per processor).
JunitNG has it's own parallel configuration. So it's may be a good choice, to use that just it is and disable forking processors with JunitNG.

@ghale may you please share your concerns? Maybe i can rework the solution to be better fit ...
In the meantime: we use it already without negative impact. I really like to see it working for others too.

Happy new year!
I'm still waiting. Merging with master on demand. Please let me know ...

Sorry, this isn't something we're currently working on and can't provide more guidance on how this could be implemented.
We think instead of workers stealing from each other we should explore some different ideas:

Don't allocate all tests up front and have workers come back for more work
Or divide tests based on expected test execution time instead of evenly dividing up all tests
Or a combination of the two


Release managing

@Ede123 last release on PyPI was 0.35 (https://pypi.python.org/pypi/scour), but you've been quite active over the months;) Do you want admin role on scour on PyPI so you can push releases?
If so, what is your PyPI handle?
Note to self: https://pypi.python.org/pypi?:action=role_form&package_name=scour

Hi Tobias, sure, handle is "Ede_123". Safes us both some effort as I don't have to bug you whenever I think it's a good time for a new release 😉
A new 0.36 release is in fact due soon. I just wanted to give the recent precision changes a little testing time and also look into the last remaining filed bug if time permits.
Long term goal for me would be to finalize #121 / fix #119 (add API) and then release version 1.0.0 (and switch to semantic versioning) once finished. (Will still take some time and thought though, i.e. I already changed my mind again since doing the PR).

Sounds cool! I've given you "Maintainer" role on Scour/PyPI, which allows you to push new releases. If it doesn't work, feel free to reopen ..

Just pushed Scour 0.36.
Seems to have worked fine (except for some issues with pushing the package, likely due to https://github.com/pypa/setuptools/issues/941).
Hope I didn't miss anything...

Looks good! It is avail on https://pypi.python.org/pypi/scour


fix: missing polish translation

A few missing words here and there, and associate/dissociate were missing completely.
I am not confident in associate/dissociate, because I don't have any actual use case for it.
@lolen  was the last one to work on translations, so if he can opinion it, then great.
If not, it's better than having sudden English on page.

Thanks!

@kamilst96 I added a comment with my opinion and my way of thinking. The other translations are great :+1:

If you can both agree on these changes, would you mind sending another PR to fix?

Yeah, sorry about that. I'll make a new PR. We need to address 2.12.0 changes in forms anyway.


gnustep.base: Add explicit dependency on libbfd

Motivation for this change
Fixes #52283
Before beb063a, binutils included a libbfd install, which is now being removed in postFixup
https://github.com/NixOS/nixpkgs/commit/beb063a1031c08df77996d97e4f6f9a2da1d911a#diff-c59ce5deea2f4002004fffdb11c5ed57R131
Things done

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

[x] 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 nox --run "nox-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)
[ ] Assured whether relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Thanks!


fix sourceColorFromImage bug if image load complete and partly image

fix load complete image bug
support using part of image with data-area

This repo is not currently accepting external contributions, but feature
requests and bug reports are very welcome!

@rodydavis could you please take a look at integrating this change?

Integrated on internal change that we will push out

thanks!

landed on the latest!


All telemetry is listed exactly twice

List of NuGet packages and version that we are using:

Microsoft.Orleans.Hosting.ServiceFabric (3.6.0)
Microsoft.ApplicationInsights (2.20.0)

Runtime version is net 6

Hosting environment is Service Fabric, Orleans, 1-node local cluster. Application Insights is hosted in Azure

All telemetry is duplicated as shown:

We've tried a few different things for our ILogger DI to no avail:

logger.AddApplicationInsights() ILogger
Serilog with logger.AddSerilog()
Custom ILoggerProvider with TelemetryClient(). Step through in our ILogger implementation instantiated by our provider shows items being received and propagated to TelemetryClient one time only, with no dupes. For this reason we believe the dupes issue is occurring downstream.

The debug output window does not show duplicates when used as a sink. Local file entries do not show dupes either. All traces of anything (dlls,etc..) Application Insights-related has been removed from the solution, and then rebuilt.

If you can share a minimal repro app, we can quickly tell if the SDK has been setup correctly.
Also, if the sdkversion field from the telemetry can be shared, that can offer some hints about this as well.

An update: I created a 2nd instance of Application Insights in Azure, directed the telemetry to it, and the dupes are gone in the 2nd instance. So, I have something configured wrong somewhere with the 1st AI instance? Strange, what could it be?

Without a repro application, its not possible to tell.. You may have added ApplicationInsights twice... Might be an issue in application insights backend.. Not possible to conclude anything without a repro app. (To check whether backend issue - need to open a support ticket with Azure).
I'll close this issue now, as the original issue is resolved.


Eye tracking updated with copy edits

Docs Build status updates of commit 760eb5a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/eye-tracking.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


added az accounts module

really liked to use a AzurePowerShell@5 task with the rover image, which needs az.accounts


Detect JAR/ZIP files with other file endings (Depends on #120)

This handles for example self-executing JARs packaged as EXE file,
which contain the JAR content at the end after the native code.
These files are treated like JAR files, meaning any MANIFEST.MF will
not be extracted.

Codecov Report

Merging #128 (36f3a40) into develop/1.9.0 (51f7fb9) will decrease coverage by 0.05%.
The diff coverage is 69.12%.

@@                 Coverage Diff                 @@
##             develop/1.9.0     #128      +/-   ##
===================================================
- Coverage            77.61%   77.56%   -0.06%
- Complexity            7650     7703      +53
===================================================
  Files                  200      206       +6
  Lines                24357    24621     +264
  Branches              6344     6394      +50
===================================================
+ Hits                 18905    19097     +192
- Misses                3539     3589      +50
- Partials              1913     1935      +22

Impacted Files
Coverage Δ

.../jetbrains/java/decompiler/code/CodeConstants.java
80.95% <ø> (ø)

...ava/decompiler/main/decompiler/BaseDecompiler.java
0.00% <0.00%> (ø)

...a/decompiler/main/decompiler/ConsoleFileSaver.java
0.00% <0.00%> (ø)

...va/decompiler/main/decompiler/SingleFileSaver.java
0.00% <ø> (ø)

...ains/java/decompiler/main/extern/IResultSaver.java
0.00% <0.00%> (ø)

...brains/java/decompiler/struct/lazy/LazyLoader.java
0.00% <ø> (-70.38%)
:arrow_down:

.../decompiler/main/decompiler/ConsoleDecompiler.java
31.60% <33.33%> (+0.32%)
:arrow_up:

...org/jetbrains/java/decompiler/main/Fernflower.java
64.04% <50.00%> (-4.31%)
:arrow_down:

...etbrains/java/decompiler/util/InterpreterUtil.java
56.09% <50.00%> (-6.41%)
:arrow_down:

...ava/decompiler/struct/SingleFileContextSource.java
51.85% <51.85%> (ø)

... and 35 more

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 51f7fb9...36f3a40. Read the comment docs.


Fixed grouping implementors fields for abstract types in QueryPlan

This PR is for fix #513 by adding support of grouping implementors fields for abstract types in QueryPlan at any nesting level, not only at root.

Makes sense, but before merging I need to understand if it break things for existing usages or not? If it does, we probably need a note in breaking changes.

I've resolved conflicts and merged the PR manually. But the question still holds. If this PR breaks something for existing users, please add a note about this in Upgrade.md (in a new PR).
This change goes to a new major version, so breaking changes are expected but we still should at least warn users about those (if any).
And thank you for the PR! 👍


vscode extension to map implementation with steps in feature file

Do we have or working on (if not then its a feature request) some vscode extension to traverse to step implementation when I Ctrl + click on a step in feature file?

It already exists - search for 'Cucumber (Gherkin) Full Support' in extensions
To wire it up to recognise cypress cucumber features and their corresponding steps, you'll need something like the following in settings.json
    "cucumberautocomplete.steps": [
        "cypress/integration/*/*.js"
     ],
    "cucumberautocomplete.syncfeatures": "cypress/integration/*.feature",
    "cucumberautocomplete.strictGherkinCompletion": false,
    "cucumberautocomplete.smartSnippets": true,
    "cucumberautocomplete.stepsInvariants": true

thanks. It works. But can't I avoid hardcoding path in settings. For example, if I open some java project having feature file, will it not cause issue?

https://vscode.readthedocs.io/en/latest/getstarted/settings/
Maybe workspace scope is what you are looking for?

changes in settings.json are not working properly. They work for some step definitions and not for others. :( Will try with workspace scope.

Maybe the problems are similar to the ones explain in Webstorm section, could you doublecheck?
https://github.com/TheBrainFamily/cypress-cucumber-preprocessor#webstorm-support
Also, @jcundill thanks so much for all your support recently! I've added you as a collaborator to this repo, so feel free to work directly on this one, make branches, send PRs, and review others. Seems like you are using this project a lot so I want to enable you as much as possible to not be blocked by  me and the rest of the team here.

@lgandecki I'm using the vscode actually. And I'm using capitalized Given/When/Then function names.

I created a .vscode/settings.json and used ** for folder name in the path and it solved the problem for the time being. Thanks for your attention.


config option for unset http proxy

What are you trying to solve?

I don't try to solve any known issue with it, it is only an enhacement.

In that case, closing. I have no idea why pacaur should handle your proxy misconfiguration.


WebSocketServer的SessionClosed触发后，并没有与客户端进行断开

调用方式为直接添加的事件回调
SessionClosed += OnWSDisconnect;
日志输出如下：
2016-02-26 18:11:17,292 [6188] DEBUG System.Object - PushWebSocketServer_-OnWSDisconnect-WebSocketSession:<IP_ADDRESS>:4715-CloseReason:SocketError
但是客户端的socket并没有触发断开， 还可以正常发送ping和接收pong
目前使用的SuperSocket类库为 <IP_ADDRESS>
麻烦帮忙看下，谢谢。

Are you sure the connection experienced the socket error is the one you think can send ping and receive pong?

socket 是tcp通道会经过三次握手的，应该是同一个
Best Regards,
苏洪亮
Henry Su
Date: Wed, 2 Mar 2016 18:49:16 -0800
From<EMAIL_ADDRESS>To<EMAIL_ADDRESS>CC<EMAIL_ADDRESS>Subject: Re: [SuperWebSocket] WebSocketServer的SessionClosed触发后，并没有与客户端进行断开 (#30)
Are you sure the connection experienced the socket error is the one you think can send ping and receive pong?
―
Reply to this email directly or view it on GitHub.

How do you know?
From: Henry Su<EMAIL_ADDRESS>Sent: Thursday, March 3, 2016 11:17 AM
To: kerryjiang/SuperWebSocket<EMAIL_ADDRESS>Cc: Kerry Jiang<EMAIL_ADDRESS>Subject: Re: [SuperWebSocket] WebSocketServer的SessionClosed触发后，并没有与客户端进行断开 (#30)
socket 是tcp通道会经过三次握手的，应该是同一个
Best Regards,
苏洪亮
Henry Su
Date: Wed, 2 Mar 2016 18:49:16 -0800
From<EMAIL_ADDRESS><EMAIL_ADDRESS>To<EMAIL_ADDRESS><EMAIL_ADDRESS>CC<EMAIL_ADDRESS><EMAIL_ADDRESS>Subject: Re: [SuperWebSocket] WebSocketServer的SessionClosed触发后，并没有与客户端进行断开 (#30)
Are you sure the connection experienced the socket error is the one you think can send ping and receive pong?
―
Reply to this email directly or view it on GitHub.
—
Reply to this email directly or view it on GitHub https://github.com/kerryjiang/SuperWebSocket/issues/30#issuecomment-191558554 .  https://github.com/notifications/beacon/AAb1fLCvJE06uZgXTWfkiC-GR7kuhvFhks5pplKggaJpZM4HoDeB.gif

那么冒昧问下，有什么办法鉴别ping和pong与发送消息的socket是否同一个呢？
Best Regards,
苏洪亮
Henry Su
Date: Thu, 3 Mar 2016 01:11:43 -0800
From<EMAIL_ADDRESS>To<EMAIL_ADDRESS>CC<EMAIL_ADDRESS>Subject: Re: [SuperWebSocket] WebSocketServer的SessionClosed触发后，并没有与客户端进行断开 (#30)
How do you know?
From: Henry Su<EMAIL_ADDRESS>Sent: Thursday, March 3, 2016 11:17 AM
To: kerryjiang/SuperWebSocket<EMAIL_ADDRESS>Cc: Kerry Jiang<EMAIL_ADDRESS>Subject: Re: [SuperWebSocket] WebSocketServer的SessionClosed触发后，并没有与客户端进行断开 (#30)
socket 是tcp通道会经过三次握手的，应该是同一个
Best Regards,
苏洪亮
Henry Su
Date: Wed, 2 Mar 2016 18:49:16 -0800
From<EMAIL_ADDRESS><EMAIL_ADDRESS>To<EMAIL_ADDRESS><EMAIL_ADDRESS>CC<EMAIL_ADDRESS><EMAIL_ADDRESS>Subject: Re: [SuperWebSocket] WebSocketServer的SessionClosed触发后，并没有与客户端进行断开 (#30)
Are you sure the connection experienced the socket error is the one you think can send ping and receive pong?
D
Reply to this email directly or view it on GitHub.
―
Reply to this email directly or view it on GitHub https://github.com/kerryjiang/SuperWebSocket/issues/30#issuecomment-191558554 .  https://github.com/notifications/beacon/AAb1fLCvJE06uZgXTWfkiC-GR7kuhvFhks5pplKggaJpZM4HoDeB.gif
―
Reply to this email directly or view it on GitHub.


Cannot compile due to 1.8.103-x64 due to boost error

I wouldn't submit the issue if I hadn't tried everything that I can think of to correct this.
I consistently get the following error when trying to compile the solution in VS2019...either HEAD or TAG 1.8.103-x64.
DebugViewPP\packages\boost.<IP_ADDRESS>\lib\native\include\boost\signals2\detail\auto_buffer.hpp(145,37): error C2039: 'pointer': is not a member of 'std::allocator'
I have tried reverting the boost library, VS2017, VS2019, VS2022.  I have tried pulling previous TAGs (usually get different errors).
I've tried numerous workarounds.  Any insight would be appreciated.

Upgrading to a conformant boost worked for me, i.e. boost v1.79 v142.
All packages,config: replace "<IP_ADDRESS>" with "<IP_ADDRESS>", replace "-vc141" with "-vc142"
All *.vcxproj: replace "<IP_ADDRESS>" with "1.79.0", replace "-vc141" with "-vc142"
Note the dropped ".0" in the paths (vcxproj).

Thanks, @WebDancer69!  That did the trick.  Do you know if there is an outstanding pull request fro this?

Sorry @tephyrnex, I don't know of any such PR. It seems the build is a bit of a mess, with several unused (?) solution build configs, and 32-bit and 64-bit builds does not target the same VS version.

Agreed...the build is a bit of a mess right now; however, your suggestion got me going...so Cheers!

The setup was made like this so it's still possible to compile with very old versions of visual studio, it might be time to move away from that and make the configuration cleaner

I've updated the project to use cmake and a new boost version 1.80, please give it a try.


No default storageclass present

microk8s kubectl get storageclass is returning empty for me.
Is there any way to auto create a default storageclass? like minikube comes with a built in storageclass

microk8s inspect
Inspecting Certificates
Inspecting services
Service snap.microk8s.daemon-cluster-agent is running
Service snap.microk8s.daemon-containerd is running
Service snap.microk8s.daemon-apiserver is running
Service snap.microk8s.daemon-apiserver-kicker is running
Service snap.microk8s.daemon-proxy is running
Service snap.microk8s.daemon-kubelet is running
Service snap.microk8s.daemon-scheduler is running
Service snap.microk8s.daemon-controller-manager is running
Service snap.microk8s.daemon-flanneld is running
Service snap.microk8s.daemon-etcd is running
Copy service arguments to the final report tarball
Inspecting AppArmor configuration
Gathering system information
Copy processes list to the final report tarball
Copy snap list to the final report tarball
Copy VM name (or none) to the final report tarball
Copy disk usage information to the final report tarball
Copy memory usage information to the final report tarball
Copy server uptime to the final report tarball
Copy current linux distribution to the final report tarball
Copy openSSL information to the final report tarball
Copy network configuration to the final report tarball
Inspecting kubernetes cluster
Inspect kubernetes cluster
WARNING:  Docker is installed.
Add the following lines to /etc/docker/daemon.json:
{
"insecure-registries" : ["localhost:32000"]
}
and then restart docker with: sudo systemctl restart docker
Building the report tarball
Report tarball is at /var/snap/microk8s/1551/inspection-report-20200820_132538.tar.gz

For local development you could try: microk8s enable storage

For local development you could try: microk8s enable storage
Thanks, it works now
generally its default in all Vendors like AKS, GKE. Wonder why its manual here.


add Stockholm meetup

resolve https://github.com/cloud-native-nordics/meetups/issues/32

/lgtm

Thanks @dzolotusky :smile:!


[DL-821] Fix allowing commit on views

🚀 🚀 Pull Request
Checklist:

[ ]  My code follows the style guidelines of this project and the Contributing document
[ ]  I have commented my code, particularly in hard-to-understand areas
[ ]  I have kept the coverage-rate up
[ ]  I have performed a self-review of my own code and resolved any problems
[ ]  I have checked to ensure there aren't any other open Pull Requests for the same change
[ ]  I have described and made corresponding changes to the relevant documentation
[ ]  New and existing unit tests pass locally with my changes

Changes

@farizrahman4u Does this also forbid edits to data in views? I believe materialized views were editable as well.


Add complex_and_trig.rst

The initial commit is a result of running the latex script here (https://github.com/QuantEcon/ipynb_to_rst_tools) and then converting with nbconvert.
The second commit adds manual edits needed.
TODO: Add to toctree

Hi @natashawatkins , @thomassargent30  recommended using pandoc >= 2.6 for the conversion.  I imagine it's more efficient if we unify around a single conversion tool and improve it / get better at using it.  Thoughts?

I was trying to use that but I was getting an error - Reader unknown: ipynb or something. I've sent a message to Brandon about it.

You might need to update pandoc.  It's only just started supporting ipynb natively.

I deleted my installation and installed the latest version from here: https://github.com/jgm/pandoc/releases/tag/2.7
and was still having issues

Fixed this - there was an anaconda version overriding

Ok I've added a note about the anaconda version here: https://github.com/QuantEcon/ipynb_to_rst_tools/blob/master/README.md

Thanks @natashawatkins , nice work.

@jstac I've added the latest from the sandpit. I added this to the tools and techniques section following linear algebra -- what do you think? Also this is high school level, should I also add this to the undergrad section?


v8 compatibility

Hi, just inquiring about v8 compatibility. I heard the latest v8 patches were done to support reanimated v2 so I assume this plugin works natively as well. But just thought I'd ask. Thanks!

Yes, MMKV also works on V8. MMKV works on every JS runtime :)


Add the possibility to make the generated Res class public

Right now, it's internal, which makes it not accessible by other modules.
Taking the :resources:demo project as an example, the app's name needs to be duplicated in
shared/src/commonMain/composeResources/values/strings.xml, desktopApp/src/jvmMain/kotlin/Main.kt
singleWindowApplication(
        title = "Resources demo",
        state = WindowState(size = DpSize(800.dp, 800.dp))
    ) {
        MainView()
    }

and androidApp/src/main/res/values/strings.xml
<resources>
    <string name="app_name">Resources demo</string>
</resources>

It could be parameterized like in moko-resources
cf. https://github.com/JetBrains/compose-multiplatform/blob/2e354eba3a98d8b39a0a6057b2547493ba2734b8/gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/resources/ResourcesSpec.kt#L104-L106

Right now, it's internal, which makes it not accessible by other modules.
yes. it is the current design decision. module's resources are isolated from each other. if you want to provide it outside you are suppose to declare explicit API in the module.

yes. it is the current design decision. module's resources are isolated from each other. if you want to provide it outside you are suppose to declare explicit API in the module.

Konstantin I'm so grateful for your answer! I finally got how to get my resources from my compose ui design system library in my applications! But I have a question - why that design decision was made? I want to extract my compose elements to separate library and reuse it in several applications. May be I'm doing something wrong?

https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-images-resources.html

Multimodule projects are not supported yet. The JetBrains team is working on adding this functionality in future releases. For now, store all resources in the main application module.

The publication of Compose Multiplatform libraries with resources is not supported yet. The JetBrains team is working on adding this functionality in future releases.

Currently, there are some limitations in underlying things that block us from doing this. We're working with Kotlin and other teams to make this happen.

Ivan thank you a lot! Will wait quietly:))

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


docs: sphinx 1.4.2

Signed-off-by: Tibor Simko<EMAIL_ADDRESS>

Coverage remained the same at 100.0% when pulling 01a376fe480f185d4d02f9389df9cd7b353f26f7 on tiborsimko:sphinx-1.4 into 99a367daf92d8f782f07efc269f8fabaf85abea4 on inveniosoftware:master.


174264646  Set logging levels via ENV

There is so much logging going to STDOUT by default.
It makes it hard to read test status.
Developers can configure logging verbosity via .env file.
[#174264646 ]

@scytacki  I think f6e7131 addresses your last concern.

… and now test are passing too.  👍

I think it is fine to merge as is, but I think it will have some complex behavior:

if the ENV variable is not defined at all then the default from fetch is used
if the ENV variable is defined to be the empty string "" then the log level will not be modified

It'd be better for those two cases to result in the same thing. The issue is that as far as I can tell fetch doesn't handle the empty string case.  If you use ENV['var'], and then use present? or blank? depending on how you want to handle the default, will make the two cases above behave the same way.

c11a978 handles unset, blank, or incorrectly set ENV values for TEST_LOG_LEVEL and DEV_LOG_LEVEL consistently, and adds a small spec test to verify this behavior.


fix: Use js action release config

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


Put a label over a map marker and apply css on it

I was using Angular Maps but i found it complex so I switched to ngMap
In Angular Map i was able to assign Label to a marker and apply a css class to it, but i don't know how to do it using ngMap.
In Angular Map i had used label and label-class to achieve my goal

Any help is appreciated.

+1

+1

+1

+1

+1

+1

U cant do that with  </custom-marker.. Then u can style that div and put a image of marker that u wish.

Is there a solution for this problem? Using custom-marker I seem to lose the dragging capabilities. Thanks.

Hmm.. I didnt need dragging capabilities, so i dont know is it lost with it..But the label is showed over the marker and it works for me..

Yes I have 2 differents type of maps, view only and edit,
in the view only maps a custom-marker is indeed the solution and works perfectly fine,
the problem are the ones where I need to edit, my users need to drag a marker to a position and in dragend take lat-lng and apply it to my object, but I don't get to apply draggable in custom-marker


Document the differences/goals of this fork

Or maybe they're somewhere and I didn't find it.
Anyway, it'd be better to have a README file with this and other info as well.

Done, but translation to english still needed.


Add token authorization to Agent.force_leave

By default the requests to the Agent.force_leave method does not pass any authorization token. On a cluster that requires authorization, this means that you can not remove dead nodes from the client library. This PR should resolve that by passing the token param the same as the other methods do.

great thanks !
Nice to see people actually using this :)


ACM-12215-Provisioning-OpenShift-on-OpenStack-fails

Signed-off-by: John Swanke<EMAIL_ADDRESS>

/lgtm


[AutoPR postgresql/resource-manager] chore: jsonfmt postgresql

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

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


Add Semantic Version implementation

In the WebDriverExtras project, I have a class which implements the Semantic Versioning v2.0.0 standard. This class is tied to the concept of a browser version though, and to be honest I'd like to have it as a class of its own, which may be used in any project.
This ticket is to create a copy of that code as a new project/repository which implements SemVer 2.0.0 and is free from any ties to other types.

Planned architecture
I'd like to improve the architecture of this. Here's my plan:

The actual version number object will be an immutable struct type. It will only contain the data (strongly typed, and in logical organisation)

Its functions (comparisons, hash code implementation, static parsing function etc) will be backed by other classes
The ToString method will be native to the struct though

Parsing will be handled by a parser class, which will have both a Parse and TryParse function
Comparison (greater/smaller than) will be handled by a comparer implementation

The default comparison methods on the struct will use this class

This type should be:

Comparable
Equatable
Serializable
Immutable

No longer relevant, I'll use another package instead.  There are plenty to choose from.


Authentication while consuming packages

I am  a noob trying to set up a private feed. I want to allow only users with the right credentials to view/consume nuget packages i push to this feed.  Is this currently possible with this application ?

@gowthamrang this package is a IIS hosted wrapper for the standard NuGet Server feed here. As far as I'm aware it doesn't support authentication - only API keys for pushing packages to the feed.
That being said, you should be able to use basic authentication in IIS express by editing the applicationhost.config file.

Thank you!

It's probably easier for you to use Basic Authentication over HTTPs then add a local user in the normal Windows user management snapin.


Tag master nodes with well-known tags for volume scheduling

Issue Report Template
Tectonic Version
Environment
AWS
Expected Behavior
My nodes run in different AWS availability zones. When I schedule a statefulset with persistent volumes,  expect those pods to come up.
Actual Behavior
The pods fail with:
No nodes are available that match all of the following predicates:: NoVolumeZoneConflict (3), PodToleratesNodeTaints (2)..
This is because the EBS volume is in a zone that has no workers.
Other Information
Kubernetes seems to have issues with picking the right zones for volumes, see for example:
https://github.com/kubernetes/kubernetes/issues/39178
One thing they implemented is tagging the master nodes in AWS, so they will be ignored when considering zones:
https://github.com/kubernetes/kubernetes/pull/41702

+1 Having the same problem.

Note that we're tagging node roles with node-role.kubernetes.io/master which differs slightly from kubernetes.io/role/master, I'm not sure what the disconnect is.
@aaronlevy any insight into who's "right" here, or where our label format is from?

Various installation tools (to my knowledge: kubeadm, kops, kargo, bootkube) all agreed to use node-role.kubernetes.io/master (but this is still just convention).
Some background discussions:
https://github.com/kubernetes/kubernetes/pull/39112
https://groups.google.com/d/msg/kubernetes-sig-cluster-lifecycle/_Ys5ABKgcbM/JwpzxcLqBwAJ
Tool changes:
https://github.com/kubernetes/kubernetes/pull/41835
https://github.com/kubernetes/kops/pull/2196
https://github.com/kubernetes-incubator/kubespray/pull/1118
https://github.com/kubernetes-incubator/bootkube/pull/436
I'm not sure about the labels used in https://github.com/kubernetes/kubernetes/pull/41702 -- likely from convention from prior to above discussions? /cc @justinsb

They're AWS tags @aaronlevy , not k8s labels.  Sadly the cloudprovider doesn't yet have access to the k8s API.

+1

+1 for this issue as well, is there a simple solution other than requiring at least 1 node in each AZ?


Should be "remoteMachine" NOT "remoteMachineName"

Should be "remoteMachine" NOT "remoteMachineName"

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

ID: 9cb710f7-0853-73c1-1792-a58a8471b7df
Version Independent ID: 41619266-4f1a-6187-3f66-ca5f74326c95
Content: Tutorial: Debug a CMake project on a remote Windows machine
Content Source: docs/build/cmake-remote-debugging.md
Product: visual-cpp
Technology: cpp-tools
GitHub Login: @corob-msft
Microsoft Alias: corob

@swinefeaster
Can you elaborate on which entries you think need to change, and which remote platform you're targeting? The launch.vs.json schema docs use "remoteMachineName" for ARM64 Windows remotes (as in this tutorial) and for Linux remotes, and that seems to work correctly in VS 2022 version 17.3.

When I use "remoteMachineName" in the laucnh.vs.json of my cmake project, it runs the app locally. If I change it to "remoteMachine", it prompts for the remote auth dialog.

From: Colin Robertson @.>
Sent: Thursday, September 22, 2022 12:14 PM
To: MicrosoftDocs/cpp-docs @.>
Cc: swinefeaster @.>; Mention @.>
Subject: Re: [MicrosoftDocs/cpp-docs] Should be "remoteMachine" NOT "remoteMachineName" (Issue #4183)
@swinefeasterhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fswinefeaster&data=05|01||6fed5770b0c642c8c17f08da9ccebc82|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637994708995829339|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=fMdRaxxREz2rTTNDsjoOB3gmkNVRgU3g%2B5sly0plXws%3D&reserved=0
Can you elaborate on which entries you think need to change, and which remote platform you're targeting? The launch.vs.json schemahttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Flearn.microsoft.com%2Fen-us%2Fcpp%2Fbuild%2Flaunch-vs-schema-reference-cpp%3Fview%3Dmsvc-170&data=05|01||6fed5770b0c642c8c17f08da9ccebc82|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637994708995829339|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=gHfKJuLc3cTR9Caa9%2B8Y7%2F6mfLZFMR7p2i17zAZovRY%3D&reserved=0 docs use "remoteMachineName" for ARM64 Windows remotes (as in this tutorial) and for Linux remotes, and that seems to work correctly in VS 2022 version 17.3.
—
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fcpp-docs%2Fissues%2F4183%23issuecomment-1255444955&data=05|01||6fed5770b0c642c8c17f08da9ccebc82|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637994708995829339|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=x%2FYENHCd0TlzkI18ZupA0yBKJm2RYF8pC1%2FwiM184vk%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAGHPSTIHQTIA7VSZN73WWHTV7SV27ANCNFSM6AAAAAAQTKDKVY&data=05|01||6fed5770b0c642c8c17f08da9ccebc82|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637994708995829339|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=V5LKs8U6E3rCrhZLDrIJUyi%2F5df9Lr95VYEt9b5zszU%3D&reserved=0.
You are receiving this because you were mentioned.Message ID: @.***>

@swinefeaster
Is your remote an x64 Windows machine? I wouldn't necessarily expect cross-compiled code for ARM64 to run locally, unless maybe you're running x64 VS on ARM64 Windows in emulation mode.
@paulmaybee Checking for insights. Are the examples in the doc missing something significant, as for example this Developer Community issue?

cmake is not specific to ARM. we use cmake for win32 c++ apps on our team here.

From: Colin Robertson @.>
Sent: Thursday, September 22, 2022 12:43 PM
To: MicrosoftDocs/cpp-docs @.>
Cc: swinefeaster @.>; Mention @.>
Subject: Re: [MicrosoftDocs/cpp-docs] Should be "remoteMachine" NOT "remoteMachineName" (Issue #4183)
@swinefeasterhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fswinefeaster&data=05|01||53b2c9f8519b45cb1ff808da9cd2bb70|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637994726140329996|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=XUSoDiyUaOtG49qEaSjrur00W3QQrt0Uys5f3XPokVs%3D&reserved=0
Is your remote an x64 Windows machine? I wouldn't necessarily expect cross-compiled code for ARM64 to run locally, unless maybe you're running x64 VS on ARM64 Windows in emulation mode.
@paulmaybeehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fpaulmaybee&data=05|01||53b2c9f8519b45cb1ff808da9cd2bb70|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637994726140329996|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=A5hodKoDYoeso6RQFaDfoagOT%2FtpO5GjRX98f4dNz0A%3D&reserved=0 Checking for insights. Are the examples in the doc missing something significant, as for example this Developer Community issuehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdevelopercommunity.visualstudio.com%2Ft%2FImpossible-to-debug-a-cmake-project-on-a%2F10104354&data=05|01||53b2c9f8519b45cb1ff808da9cd2bb70|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637994726140329996|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=4NndvxYftMYM27yKQBDHPSV3oxwkzY8dgnJQRe6NnyM%3D&reserved=0?
—
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fcpp-docs%2Fissues%2F4183%23issuecomment-1255472348&data=05|01||53b2c9f8519b45cb1ff808da9cd2bb70|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637994726140329996|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=3KFJu2C3sJzPqHPk1V8CigRBoJnne%2FPUBlTLGFZfvcY%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAGHPSTPKCWEMUBHDLLRDM7LV7SZGJANCNFSM6AAAAAAQTKDKVY&data=05|01||53b2c9f8519b45cb1ff808da9cd2bb70|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637994726140486240|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=egzJhqy%2F%2F0u2nGyv8vPt1fqxcboBfP%2Bg0z0%2BWrDjaOc%3D&reserved=0.
You are receiving this because you were mentioned.Message ID: @.***>

"remoteMachineName" is the correct field name when authoring launch.vs.json configurations. The json editor should pop-up a list of connection names when the opening " is entered for the remoteMachineName value.

Given the developer input in our investigation, I'm marking the issue as closed by design. Thanks for the reporting.


Setup tools vet & lint tools on test target

Add govet, golint, and other assorted tools on make test target
Talk with @fabioy on creating a standard list.

Will be closed by #126


Display IDP name when prompting for username and password

#181927293
Note that this PR only shows the IDP name (if provided to pinniped login oidc via --upstream-identity-provider-name), and does not perform any verification that the user's login flags will result in a acceptable configuration.

lgtm as of cb600adee54912c4acdefc37dc6889033f77a1c8

Rebased main and enabled auto merge.

lgtm as of 0a47aa5


Lambda function coldstart taking too long

Apparently cold starts are known to be worst with docker image lambdas: https://mikhail.io/serverless/coldstarts/aws/
^ according to this article, in the case of docker, it doesn't really seem to be related to deployment package size
Some possible solutions:

Implement CloudFront cache
Use cloudwatch/event bridge events to ping lambda every 5-10 minutes: https://epsagon.com/development/how-to-minimize-aws-lambda-cold-starts/

@leothomas I pulled this one into scope for the Pre-Launch list of items because I think it relates to Option 2 that we talked about last week to address some of the instability in APT.
https://docs.google.com/document/d/1WOoS02qCWIs-ne6BeQNuA2gV00nVZnXTpAjrUf3MLLY/edit?usp=sharing
I think you used the phrase "splitting the lambdas" although I am not entirely sure what that means or entails. Can you confirm if this is a good ticket to represent that work? If not, can you make one?
Also let me know if you don't recall that conversation or if I am not making any sense.

I definitely recall that conversation, and you are definitely making sense!
This ticket is more so tracking the application coldstarts: sometimes, when no one has used the application in a while, the API will inexplicably take 10-15 seconds to respond. Re-reading the initial ticket I put together, I'm realizing that there is an added layer of complexity: I thought it was obvious that these 10-15 seconds delays were due to the Lambda function coldstarts (when a lambda function instantiates a new container to run in), however looking into the logs, the Lambda function coldstarts are never more than 3-4 seconds, so the 10-15 seconds delay is coming from somewhere else.
The 3-4 second Lambda coldstarts are likely made worse by the Lambda function's package size (huge because of all the Latex related libraries), and that splitting up the Lambdas such that all PDF generation code (and Latex libraries) are in a separate lambda function would mean that that 3-4 second cold start would only ever occur when generating a PDF (which is much less noticeable, since the PDF generation already takes a little while).
While splitting up the lambda guarantees to resolve the lambda function's coldstarts (3-4 seconds), it doesn't guarantee to resolve the problem with the application sometimes taking 10-15 seconds to load, although I suspect that it might.
With that being said, when I brought up API stability, I was referring to several different little things including:

Sometimes PDF generation fails with an internal server error, but if you refresh it generates immediately
Sometimes PDF generation fails when data is missing, instead of just generating a document with a blank section

Splitting up the lambdas might help with these, but is by no means guaranteed to.
So to summarize:
This ticket more so tracks random 10 second delays when no has use the app in a little while - this can be improved (and maybe resolved) by splitting up the lambda functions.
Splitting up the lambda functions might help with random errors when trying to generate PDFs.
I would consider "random errors when trying to generate PDFs" to be better represented by this ticket

I know this issue is on svalbard. Not much on backend for byblos so I thought I'd check some more.
If you could use more assistance here, I have a couple questions/comments

can you post some aws cloudwatch metrics on response time/latency to provide more context here? it would just be interesting to know how often this happens. once it's in production or in use more, is it possible this won't really be a problem? Is there a possible frontend solution, like after 3 seconds of waiting, adding an additional message to the effect of 'sorry, we're cold starting'
a. ideally these metrics would be segmented by route (is it just specfic routes that have this long delay?)

If you want to try the lambda zip route and including latex, i might be able to help. i've done that with tensorflow-lite, i.e. run a local container that emulates (or is) the aws lambda runtime and build the dependency binaries. But @aboydnw should know that is a potentially large effort uncertainty - could take a few days to iron out the issues and still find out it's too large for the zip package

tangential architecture remarks
Ineed @leothomas i think using api gateway to define the routes and splitting the lambads up to minimize dependencies for each resource (e..g only the pdf lambda provides latex in its runtime) would be beneficial here and a good refactor general. It comes with additional benefit of letting aws handle more of the api boilerplate, including

cognito auth & resource access control (we probably wouldn't have to handle this in the application code)
rate limiting (cost management measure, for when it's in the wild, bad actors, and cost control)
kind of minimize the application logic/error surface

Clearly 2. is beyond the scope of a solution to this problem. just wanted to talk about it a bit further.
I see in the readme that we used to use persistent servers/ecs, so routing framework wasn't part of the infra, and it was very convenient to wrap the fastapi app thing with magnum to quickly get some of the advantages of lambda and reduce the drawbacks of ecs. I think that was a win.
Going forward, I'm tring to understand whether we want to use server gateway interface behind a serverless infrastructure. I had a look at this article and the magnum docs and I'm still a bit confused. API gateway is the server gateway interface and lambdas are the route handlers. Vanilla lambdas are just as easy to write as any web framework route implementations. API gateway also lets us define resource schemas and probably does the boilerplate of schema validation.
If I understand correctly that api gateway invokes a new lambda for each request, then we lose a lot of the benefit of as ASGI framework too, as it can't handle other requests while a given request awaits i/o.
Am I missing reasons not to leverage api gateway for routing, resource schemas, access control, and rate limiting? Other than that it would be a moderately large change?
And then when, if ever, would it make sense to do this on apt/snwg? Maybe just something to consider for the future projects.

@jo-tham This is super helpful, thanks!
I don't have any cloudwatch metrics on hand - it'll require some spelunking through the Cloudwatch logs. I'd say the delay occurs infrequently, but is long enough to be truly frustrating. Here's a slack thread that has a bit more info from when I first ran into this issue.
With respect to the architecture remarks:

If I understand correctly that api gateway invokes a new lambda for each request, then we lose a lot of the benefit of as ASGI framework too, as it can't handle other requests while a given request awaits i/o.

100% agree. Another big thing lost from the ASGI framework is that background tasks are no longer executed in the background. Lambda functions stop executing once they return from the handler, so any operation that includes a background task has to first execute the background task and then return
That being said, for my understanding, leveraging API gateway for routing wouldn't restore the benefits of the ASGI framework, correct?
The complexity I can forsee with using API Gateway for routing is that those routes will have to be defined both within the CDK deployment code  and within the application code itself, which may be error prone/messy to configure.

Lastly, AWS provides a Cognito integration for API Gateway which completely removes all of the cognito boilerplate code to convert an authorization bearer token to a decoded JWT, however this integration doesn't provide a way to authorize an unauthenticated user (ie: every request must have a auth token), which is a requirement in APT (since unauthenticated users can have access to the published ATBDs)

Thanks for the thoughts Leo 🙌

That being said, for my understanding, leveraging API gateway for routing wouldn't restore the benefits of the ASGI framework, correct?

That is my understanding, too. API GW doesn't give us an ASGI benefits.

The complexity I can forsee with using API Gateway for routing is that those routes will have to be defined both within the CDK deployment code and within the application code itself, which may be error prone/messy to configure.

I don't think this is the case. The routes would only be specified in the CDK code (I've only dont it with serverless&terraform, not cdk, I'm assuming cdk would be equivlent. The route definition refers to the lamba handler. The lambda handler, doesn't need to know what route refers to it. But it the developer does, i.e. implement the proper applicaiton logic within that handler, so there's an implicit knowledge of the routing in the route handlers in this framework. I admit, I haven't used it for APIs with very many resources, capturing this implicy routing knowledge may become really cumbersome.

Lastly, AWS provides a Cognito integration for API Gateway which completely removes all of the cognito boilerplate code to convert an authorization bearer token to a decoded JWT, however this integration doesn't provide a way to authorize an unauthenticated user (ie: every request must have a auth token), which is a requirement in APT (since unauthenticated users can have access to the published ATBDs)

I'm not sure I totally understand this part. I think it could be done with API GW. Although it would be done at the route level, i.e. one route to list/read published atbds that doesn't require auth token. As opposed to having one route that filters atbds to only the published ones if the requester is anonymous.
There's probably also the potential for a hybrid, where we use api gateway and cognito authentication and api gw decods the jwt and puts in in request headers, for us to lookup the cognito user's permissions.
I should also say it works damn well as is, and some other advantages already come to mind - I think definining the routing and schemas is faster with fastapi than with cdk/other iaac frameworks. Makes it easier to test locally, too.
Though provoking!

@leothomas closer to the actual topic - in the thread you shared there was indication this delay is only on OPTIONS requests.
Can you confirm whether that's the case?
If not, do you know exactly which other routes are affected?

one route to list/read published atbds that doesn't require auth token. As opposed to having one route that filters atbds to only the published ones if the requester is anonymous.

Yes! You're absolutely correct - this is probably the best solution to enable authenticated/unauthenticated access to documents.

so, it's not a latex/container issue?
The only reason I think it's a latex/container issue is because I've used the exact same setup: docker image lambda function with a Mangum wrapped FastAPI app, invoked through API Gateway and integrated with RDS/S3/etc, and none of those have similar delays when performing OPTIONS requests - the only difference being the addition of Latex libraries + compilers in docker image

Closing as not planned due to age and the problem being reduced via other means.


More sit manager porting

This should be half of issue #26 porting over the bits which are relevant from the improvements PR.
Gonna need to test the SIT installation again and hope that nothing is now broken there again.

That should be everything now. Although making it fullscreen does seem to overflow the edges a little bit like 8 pixels all round, I think I shall just make that an issue and come back to it.

Most of it we either did already, or had a template I could use to copy and paste the changes to.


How to change app url

Hello sir, please how can i change the app url to Facebook url, please 🙏🙏🙏 give me a reply. thanks

You can't because it's already binded with Instagram Webview Phishing

Okay, but sir please how about removing the webview phishing to complete my action. please help me out 🙏🙏🙏


[new build] use rollup, add es + umd builds. fixes #143

fixes: https://github.com/hshoff/vx/issues/143

[x] adds dist/vx-{name}.{umd,es}.js files
[x] adds module field to package.json that points to dist/vx-{name}.es.js for bundlers that support it (webpack, rollup, etc)
[x] main field points to dist/vx-{name}.umd.js
[x] removes react-fatigue-dev + Makefile build (means you can build on windows now)
[x] build targets  "android": 30, "chrome": 35, "edge": 14, "explorer": 9, "firefox": 52, "safari": 8, "ucandroid": 1 (matching airbnb-babel-preset
[x] keeps build/ with cjs babel build files for deep paths (no breaking changes 🤞)

this is awesome! 🙌

going to merge this and release it as 0.0.165-beta.*


[Explore] Open existing adhoc metric should not open the SAVED tab

@kgabryje @junlincc Found a bug on this one: opening a selected adhoc metric should open the SIMPLE or CUSTOM tab, but now it always opens the SAVED tab.
Originally posted by @ktmud in https://github.com/apache/superset/issues/12582#issuecomment-763202521

Previous behavior & correct behavior is always open up the same tab that user created the metric in. My bad, did not catch it when I tested.

Previous behavior & correct behavior is always open up the same tab that user created the metric in. My bad, did not catch it when I tested.

Could you share steps to reproduce? It seems to work correctly for me
https://user-images.githubusercontent.com/15073128/105153415-b2a5ac00-5b08-11eb-9abb-5480b1a97a40.mov

Could you share steps to reproduce? It seems to work correctly for me
https://user-images.githubusercontent.com/15073128/105153415-b2a5ac00-5b08-11eb-9abb-5480b1a97a40.mov

Weird, I could not reproduce it any more, either.
Maybe it's because I confused it with re-opening the popover after switching tabs but not save. The popover always opens at the last active tab before closing (which I think is fine).
Sorry for the noise.

Weird, I could not reproduce it any more, either.
Maybe it's because I confused it with re-opening the popover after switching tabs but not save. The popover always opens at the last active tab before closing (which I think is fine).
Sorry for the noise.

👍

👍


Python Strings

Description
Strings
I would like to include the following-

Accessing strings.
String methods
operations that can be performed on them.

Domain
Python_Domain
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

@adityabisoi pls assign me this issue!
I am eswari priya and i belong to python-batch6

/assign
@adityabisoi


unclear if produced streams are directly compatible with vanilla brotli

Particularly: is the 32 substreams index table within a brotli comment block.
Dr. Mark Adler foresaw this kind of extensions and demanded that we add a possibility to add comment blocks that will be skipped by the normal decoder. If the index table is the only incompatibility (not clear from the spec if it is even an incompatibility by itself), it could perhaps be nicer for compatibility if the index table could be placed within a comment block.
I'm available to discuss this in a VC if there is interest.

i checked it and contrary to the claims ive seen on it being compatible, regular brotli does not accept it
brotli -d F.ktx.brotlig
input file [F.ktx.brotlig] suffix mismatch

brotli -d F.ktx.brotlig.br
corrupt input [F.ktx.brotlig.br]


Removed requireMultipleVarDecl option

Looking at here it seems that it's not required to have only one var declaration, but the opposite.

Coverage remained the same at 98.8% when pulling a8a06c5c2c2510bf84874c12844eee5e16c4cde6 on stefanosala:patch-1 into 124eac33672b5edde507ef0f4e774eca09180b62 on jscs-dev:master.

Thanks for contributing! This is a dupe of #822

Ops, thanks :)

Updated preset will be available in 1.11


nixos/httpd: improve security in configuration file

Motivation for this change
Improve security in configuration file. I've been running these changes at work on a few boxes for a while after the servers were flagged by our Qualys scanner.
NOTE: The TraceEnable and expose_php options are standard in Debian 9.
Things done

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

[x] 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 nox --run "nox-review wip"
[x] 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)
[x] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Despite claims to the contrary, enabling the TRACE method does not expose any security vulnerability in Apache httpd. The TRACE method is defined by the HTTP/1.1 specification and implementations are expected to support it.

From https://httpd.apache.org/docs/current/mod/core.html#traceenable

@Infinisil
https://security.stackexchange.com/questions/56955/is-the-http-trace-method-a-security-vulnerability

One of the wisest security principles says that what is unused should be disabled.

https://www.owasp.org/index.php/Cross_Site_Tracing

The TRACE method, while apparently harmless, can be successfully leveraged in some scenarios to steal legitimate users' credentials.

The option can be turned back on in services.httpd.extraConfig if needed.

I like these changes :+1:

Thanks @Infinisil!


[ECS] CognitiveComplexitySniff is great!

I just upgraded ECS to newer version and got around 8 reports from CognitiveComplexitySniff in our code base. Sure enough it's 8 of the most complex methods we have and some refactoring will be great there. It's really good to have that sniff, I might even consider reducing the threshold. 8 seems to be a well-picked default though.
Now some suggestions. Currently the error look like this:
------ ----------------------------------------------------------------------
 Line   src/Library/Doctrine/AbstractMigration.php
------ ----------------------------------------------------------------------
 18     Cognitive complexity 13 have to be less than 8.
         (Symplify\CodingStandard\Sniffs\CleanCode\CognitiveComplexitySniff)
------ ----------------------------------------------------------------------

Firstly I think there is a typo - have should be has.
Secondly it would be great if the message also included the name of the method.

I'm glad it works for you! Thanks for feedback
Both ideas seems fine. Feel free to add it


exec statement "reload nomad service" contains wrong command

Affected Puppet, Ruby, OS and module versions/distributions

Puppet: n/a
Ruby: n/a
Distribution: n/a
Module version: 2.2.0 (it's the same in the master branch)
Nomad version: 1.4.x , 1.5.0

How to reproduce (e.g Puppet code you use)
the command defined here: https://github.com/voxpupuli/puppet-nomad/blob/master/manifests/reload_service.pp#L21
doesn't look quite right with the versions of Nomad that I am using.
I tried with Nomad 1.4.x and 1.5.0 and it doesn't work
What are you seeing
throws an error: the command is wrong.
Any additional information you'd like to impart
I'm still trying to figure out the proper command (if one still exists)

The systemd service has an option to reload. I would replace this:
exec { 'reload nomad service':
  path        => [$nomad::bin_dir,'/bin','/usr/bin'],
  command     => "nomad reload -rpc-addr=${rpc_addr}:${nomad::rpc_port}",
  refreshonly => true,
}

with this one:
exec { 'reload nomad service':
  path        => [$nomad::bin_dir,'/bin','/usr/bin'],
  command     => 'systemctl reload nomad.service',
  refreshonly => true,
}

perhaps nomad reload command was removed, in favour of sending a HUP signal to the daemon:
https://developer.hashicorp.com/nomad/docs/configuration#configuration-reload


Update Google.Cloud.Logging.Console with GA Microsoft.Extensions.Logg…

…ing.Console #5578
update Microsoft.Extensions.Logging.Console version to GA

Thanks for this - I'll have a look on Monday when I'm back at work. In the meantime, please sign the CLA as described in the comments.

@googlebot I signed it!

I'll continue to add more unit tests within this branch.

I've added unit tests to cover operations on Write and also get some ideas from Microsoft.Extensions.Logging.Console tests.
What kind of options we need to add to GoogleCloudConsoleFormatterOptions? How this is going to affect write?
Are you going to have only 1 formatter?

Please could you check the email address on all the commits, so that the CLA bot finds the right CLA?

@googlebot I fixed it

The commits are still triggering the google-cla bot every time - please review them carefully, amend them appropriately, then force push.

Sorry, I'll do that next time.

I'm using same email address. Maybe you need to sign for this PR?

Aha - I've taken a look, and it looks like it's incorporating my suggestions that's triggered it.
The simplest way for you to fix that is probably to use git rebase -i locally and put everything you've got into a single commit (which makes it nicer anyway) and then force push, so it's one commit with just your email address.
In the meantime I'll try to work out why it causes problems to incorporate my suggestions...

In the meantime, it looks like you also need to edit apis/apis.json to change the dependency. (The project files are usually generated by generateprojects.sh, from apis.json.) That's why the AppVeyor CI test is failing.

In the meantime, it looks like you also need to edit apis/apis.json to change the dependency. (The project files are usually generated by generateprojects.sh, from apis.json.) That's why the AppVeyor CI test is failing.

I'll do.

@googlebot I fixed it

Aha - I've taken a look, and it looks like it's incorporating my suggestions that's triggered it.
The simplest way for you to fix that is probably to use git rebase -i locally and put everything you've got into a single commit (which makes it nicer anyway) and then force push, so it's one commit with just your email address.
In the meantime I'll try to work out why it causes problems to incorporate my suggestions...

didn't work or I couldn't do it :)

Hmm... it's still showing 8 commits where I'd expect to see 1 if you'd managed the rebasing and force pushing. I'll review again in the morning, override the CLA check and squash and merge.

Note: Manual override of CLA due to my primary GitHub account having a non-Google email address.

Thanks! Merging now.

What next :) Continue to implement options, performance for stream writer?

I'd probably look at performance next - there are a couple of TODOs in the code around that. If you have options you think we should implement, feel free to suggest those too - but I'd probably raise a feature request with suggestions on that front instead of going straight to an implementation, to avoid wasting time implementing something we decide not to use :)


⚠ API (search) has degraded performance

In faf1b62, API (search) (https://api.dev.package-search.services.jetbrains.com/search-packages) experienced degraded performance:

HTTP code: 200
Response time: 4285 ms

Resolved: API (search) performance has improved in 023cfa2 after 11 minutes.


Fix deps tree indent

Back in 2018, @PeteW wrote a nice CLI that prints the dependency tree of a task without having to run that. This PR provides a slight modification to the indentation he used to print the tree. In essence, this PR makes all tree characters 4-spaced.
Here is where we discussed the change:
https://github.com/spotify/luigi/issues/2920#issuecomment-728365990

Hi @PeteW , can you please review this PR and potentially give it a go?

Yeah this looks good. I hope it improves the terminal experience for most users despite the fact that so many so-called "monospace" fonts have so much inconsistency when it comes to the box-ascii characters (something way out of our control)
Anyways thanks for the thorough touch-up.

Hi, can we do the merge? I have more improvements coming that could be better managed if it is merged. ^_^

I am in favor of proceeding with the merge
On Sun, 27 Dec 2020 at 23:45, Tashrif Billah<EMAIL_ADDRESS>wrote:

Hi, can we do the merge? I have more improvements coming that could be
better managed if it is merged. ^_^
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/spotify/luigi/pull/3024#issuecomment-751572874, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AASRNSDDGKXTGILKG2HLUNLSXAEQFANCNFSM4UXXYCZA
.

--
Peter Weissbrod
http://RealLifeData.com | O:<PHONE_NUMBER> | M:<PHONE_NUMBER>


Something is wrong with "Basic Tests C/C++ MacOS" test since Jul 28

I am not sure what exactly is wrong, but vast majority of the "Basic Tests C/C++ MacOS" PR tests failed today.
Kokoro job: grpc/core/pull_request/macos/grpc_basictests_c_cpp
Dashboard: https://fusion.corp.google.com/projectanalysis/history/KOKORO/prod%3Agrpc%2Fcore%2Fpull_request%2Fmacos%2Fgrpc_basictests_c_cpp
Vast majority of builds start failing since about 10am PDT Jul 28, 2020.

A few runs failed with the following error:
2020-07-28 13:41:13,502 FAILED: bins/opt/client_callback_end2end_test --gtest_filter=ClientCallbackEnd2endTest/ClientCallbackEnd2endTest.SequentialGenericRpcsAsBidiWithReactorReuse/6  GRPC_POLL_STRATEGY=poll

D0728 13:38:55.396281000<PHONE_NUMBER>11808 ev_posix.cc:173]              Using polling engine: poll
D0728 13:38:55.397595000<PHONE_NUMBER>11808 lb_policy_registry.cc:40]     registering LB policy factory for "grpclb"
D0728 13:38:55.397632000<PHONE_NUMBER>11808 lb_policy_registry.cc:40]     registering LB policy factory for "cds_experimental"
D0728 13:38:55.397658000<PHONE_NUMBER>11808 lb_policy_registry.cc:40]     registering LB policy factory for "eds_experimental"
D0728 13:38:55.397677000<PHONE_NUMBER>11808 lb_policy_registry.cc:40]     registering LB policy factory for "lrs_experimental"
D0728 13:38:55.397700000<PHONE_NUMBER>11808 lb_policy_registry.cc:40]     registering LB policy factory for "priority_experimental"
D0728 13:38:55.397718000<PHONE_NUMBER>11808 lb_policy_registry.cc:40]     registering LB policy factory for "weighted_target_experimental"
D0728 13:38:55.397744000<PHONE_NUMBER>11808 lb_policy_registry.cc:40]     registering LB policy factory for "xds_routing_experimental"
D0728 13:38:55.397769000<PHONE_NUMBER>11808 lb_policy_registry.cc:40]     registering LB policy factory for "pick_first"
D0728 13:38:55.397788000<PHONE_NUMBER>11808 lb_policy_registry.cc:40]     registering LB policy factory for "round_robin"
D0728 13:38:55.397811000<PHONE_NUMBER>11808 dns_resolver_ares.cc:507]     Using ares dns resolver
[waiter.cc : 223] RAW: pthread_mutex_destroy failed: 16

https://source.cloud.google.com/results/invocations/2017febf-dd19-44f4-8766-8012e8768234/targets/github%2Fgrpc%2Frun_tests%2Fcpp_macos_opt_native/tests

Another common failure seems to be TIMEOUT: bins/opt/async_end2end_test (this error seems to be most common):
https://source.cloud.google.com/results/invocations/e998ca07-4f04-4efd-b7c7-d97566048cd6/targets/github%2Fgrpc%2Frun_tests%2Fcpp_macos_opt_native/tests
2020-07-28 19:09:58,743 TIMEOUT: bins/opt/async_end2end_test --gtest_filter=AsyncEnd2end/AsyncEnd2endTest.SimpleClientStreamingWithCoalescingApi/8  GRPC_POLL_STRATEGY=poll [pid=28339, time=302.2sec]
2020-07-28 19:09:58,777 FAILED: bins/opt/async_end2end_test --gtest_filter=AsyncEnd2end/AsyncEnd2endTest.SimpleClientStreamingWithCoalescingApi/8  GRPC_POLL_STRATEGY=poll

A few runs failed super early with:
+ echo 'Running run_tests.py in workspace workspace_c_macos_dbg_native'
Running run_tests.py in workspace workspace_c_macos_dbg_native
+ python workspace_c_macos_dbg_native/tools/run_tests/run_tests.py -t -j 4 -x ../run_tests/c_macos_dbg_native/sponge_log.xml --report_suite_name c_macos_dbg_native -l c -c dbg --iomgr_platform native --max_time 3600
2020-07-28 16:22:03,420 START: make
2020-07-28 16:22:05,058 Makefile:13686: *** multiple target patterns.  Stop.

2020-07-28 16:22:05,058 FAILED: make [ret=2, pid=4652, time=1.6sec]
2020-07-28 16:22:05,058 FAILED: Some tests failed

https://g3c.corp.google.com/results/invocations/241ff744-d7d1-4398-a5d9-d00ec4e1c318/targets/github%2Fgrpc%2Ftoplevel_run_tests_invocations%2Frun_tests_c_macos_dbg_native;config=default/tests

Another common error seems to be that it just said "Tool failed":
https://source.cloud.google.com/results/invocations/a923e956-6914-4ca5-aea5-cfa4e797b42a/targets

The client_callback_end2end_test should have been fixed by the revert here: https://github.com/grpc/grpc/pull/23651
The corresponding internal bug is here: b/161724973
The async_end2end_test failures seem new and we only started seeing them very recently:
The first failure I see is from 2020-07-28 14:57:12 UTC

Esun, could this be related to the absl synchronization change?

Actually both, client_callback_end2end_test and async_end2end_test breakages seem new.
The old client_callback_end2end_test flake has been fixed by #23651 but there is a new flake that only started very recenty:

This is very likely caused by https://github.com/grpc/grpc/pull/23372 (see my analysis in b/162484508) and I've also found that the PR has caused other breakages.

Verified that "Basic Tests C/C++ MacOS" is green for both pull_request and master now.


[PE-D] There is no way to undo a done command

It is possible that the user enters the wrong index.
Based on the UG it doesnt seem that there is any way to undo this.

Entering the done command tells the user that the event is already marked as done. There is nothing wrong with this, it just might be better to have some way to undo this.

Labels: severity.VeryLow type.FeatureFlaw
original: nwhloo99/ped#4

Wont fix due to v1.4 contraints


Mellanox TensorFlow CI tester - User 1 in WhiteList (DO NOT MERGE)

bot:mlx:test

Mellanox CI FAILed.


ARROW-14223: [C++] add missing third-party dependency

In #11268 I neglected to add google_cloud_cpp_storage to the
third-party dependencies.

/FYI @kou

The build errors are all related to brew being unable to install grpc. Seems unrelated?


E2E health-check

Yesterday, our users were unable to connect to Neon.
I want to have a relevant E2E health check that runs "SELECT 1" for some project throughout the chain of our services.

That is how our periodic check works. E.g. here https://neondb.slack.com/archives/C03H1K0PGKH/p1671089909966459 3 project stuck on user action and 19 were caught by periodic check.

I know that we have it, but yesterday they didn't help with the first incident (when users weren't able to connect).

Ok, then the content of the ticket should reflect that somehow -- what exactly do you want to solve and how that can help avoiding incident like yesterdays one. Pingdom-style test could be useful, but they will run only on projects owned bu us.

I want to raise the observability of such kinds of issues. We have some tests, but they were useless in this scenario. I want to learn our lesson and be ready to react faster than our customers will tell us.


Migration container

Not sure how others are orchestrating migrations, but the usual way I do it is by running a sidekick container that runs the migrate script before launching the main container.
Currently, there isn't an official migrator image and both server and signer images do not contain the necessary migrations files.
Would it be possible to include the migration files and the mattes/migrate binary either on each image or on a separate migrator image?

The official server and signer images do not contain the migration files or tool, this is correct. The development images (server.Dockerfile and signer.Dockerfile) do. I've been burned by migration tools in production environments more than once and I avoid running them in production now.
When we deploy, we manually run whatever database updates are required before deploying new images. I'm not opposed to having a separate migration image for people that do want to use automated migrations outside of their development environment, but it's probably not going to be a priority for the team here to create it. We accept pull requests though :-D


Links with arrows and self linking nodes?

Is it possible to draw links as arrows, and also enable self linking nodes?
https://stackoverflow.com/questions/16358905/d3-force-layout-graph-self-linking-node

@pkovanen, About the arrows: threre are more examples at the end of the README.
https://codepen.io/emilio/pen/QOaQjP
The display of self-linked nodes is not available at the moment.