KAFKA-16345: optionally urlencode clientId and clientSecret in authorization header

When a client communicates with OIDC provider to retrieve an access token RFC-6749 says that clientID and clientSecret must be urlencoded in the authorization header. (see https://tools.ietf.org/html/rfc6749#section-2.3.1) However, it seems that in practice some OIDC providers do not enforce this, so I'm proposing to introduce a new configuration parameter that will optionally urlencode clientId & clientSecret in the authorization header.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@kirktrue @mimaison can you have a look, please? Thanks!

Hi @kirktrue, thanks for the review! I've created a new KIP here https://cwiki.apache.org/confluence/display/KAFKA/KIP-1025%3A+Optionally+URL-encode+clientID+and+clientSecret+in+authorization+header

@kirktrue @mimaison kind reminder. Could you please have a look at the KIP?

Hi @mimaison, would you mind taking a look at the KIP and sharing your vote on it? Thank you!

Hi @kirktrue @mimaison
The KIP-1025 has been accepted. I've rebased this branch and reflected the changes made to the KIP. Could you please review this PR one more time? Thanks!

None of the test failures seem related, merging to trunk


Add clear explicit instructions to setup a Raspberry Pi

When things are not setup correctly, the errors are cryptic.  Adding a golden-path set of clear instructions for new users should help rule out a lot of pain and false negatives.
https://github.com/mpromonet/v4l2rtspserver/issues/122

I close th pull request, the instruction are too raspberry oriented and the process could probably be shorter.


Add ID or CLASS values to dv.table()

I need a way to simply add classes or IDs to the table and rendered elements from dataview so that I can style it effectively. I'm wondering if its possible to extend the functionality of the JS API to add these values. I've looked everywhere and I don't see a simple way of managing this so figured I'd post a request here, but open to other suggestions as well.
Note: New to Obsidian and Dataview but this week have become very fascinated with what you can do with the tool so great job!

Hello,
sorry to come back to you so late. I currently go through older issues to see which are stale or already solved.
If you're speaking about dataviewjs alone, you can do this by manipulating the container of the query. Heres an example of this: https://s-blu.github.io/obsidian_dataview_example_vault/20 Dataview Queries/Show all photos of the week in a grid/
The important line is dv.container.className += ' imagegrid'.


Onchain Network Identity

https://github.com/diem/dip/pull/200

I can volunteer to be DIP manager for this one.


Formatting short tables for readability

Signed-off-by: Drumil Patel<EMAIL_ADDRESS>
Fixes #6722
Formatting Short Tables

Long Tables
Note This for only display purpose If limit exceeds desirable limit than how will be changes affect by default it is maxFormattableSize = 100 but to check how will large tables look, I have used maxFormattableSize = 5

:+1: Thanks! (will merge when relevant CI tests turn green)

@drumilpatel2000 Getting a test failure:
DataTable › when resultType is a vector with too many values › renders a warning

    Method “type” is meant to be run on 1 node. 2 found instead.

      105 |     it('renders a warning', () => {
      106 |       const alert = dataTable.find(Alert);
    > 107 |       expect(alert.render().text()).toEqual('Warning: Fetched 10001 metrics, only displaying first 10000.');
          |                    ^
      108 |     });
      109 |   });
      110 |

      at ShallowWrapper.single (node_modules/enzyme/src/ShallowWrapper.js:1636:13)
      at ShallowWrapper.single [as type] (node_modules/enzyme/src/ShallowWrapper.js:1372:17)
      at ShallowWrapper.type [as render] (node_modules/enzyme/src/ShallowWrapper.js:1106:17)
      at Object.render (src/pages/graph/DataTable.test.tsx:107:20)

@juliusv Test fixed. Should I add new tests for the new alert length greater than 1000?

@drumilpatel2000 Yep, it would be nice to detect the new alert in that case!

:+1: Thanks!

@juliusv Any Suggested changes


Forbidden attributes 'aria-selected' and 'aria-level' for  element with 'presentation' role.

Hi, I'm using AXE detection tool(https://www.deque.com/axe/) to detect accesibility issues. After updating to jsTree 3.3.10 I'm receiving warnings about forbidded attributes for tree elements:
"Ensures ARIA attributes are allowed for an element's role","help":"Elements must only use allowed ARIA attributes","helpUrl":"https://dequeuniversity.com/rules/axe/3.2/aria-allowed-attr?application=webdriverjs","id":"aria-allowed-attr","impact":"critical","nodes":[{"all":[],"any":[

{"data":["aria-selected=\"false\"","aria-level=\"1\""],"id":"aria-allowed-attr","impact":"critical","message":"ARIA attributes are not allowed: aria-selected=\"false\" aria-level=\"1\"","relatedNodes":[]}],"failureSummary":"Fix any of the following:\n ARIA attributes are not allowed: aria-selected=\"false\" aria-level=\"1\"","html":"<li role=\"presentation\"

It seems we have this issue because of <li> element that has role "presentation" but contains aria-selected and aria-level attributes. These attrbutes are not allowed for role "presentation". Maybe, role "treeitem" is expected for <li> elements instead of "presentation" or aria-selected and aria-level should be removed from <li> elements( because these attributes are already presented in inner <a> elements for jsTree 3.3.10).

I tried to modify the markup, and the problem was gone if change the role back to "treeitem". But in this case, we will have problems with the incorrect numbers and ordinal numbers of elements in the tree https://github.com/vakata/jstree/issues/2424.
Another way to fix this is to remove aria-attributes from li elements and leave them only for a elements.
I described this solution in comment section of https://github.com/vakata/jstree/issues/2424.


Support for entering concepts directly

Closes #7

% New behavior
\credit{Alice}{Investigation, Methodology, Data curation, Writing -- original draft}
\credit{Bob}{Visualization,conceptualization}
\credit{Charlie}{Software,Writing -- review \& editing,Validation}
\insertcredits
\insertcreditsstatement

% Old behavior
\credit{Alice}{1,0,0,0,0,0,0,0,0,0.8,0,0,1,1}
\credit{Eve}{0,1,1,0.2,1,1,0.8,1,1,1,1,1,0,0}
\insertcreditsgranular
\insertcreditsgranularstatement

Looks good to me, but I think this should include an overhaul of the example.tex and README.md. I can do this but it will take me some days :-)

Think so too but no rush on that 👍🏼

Looks very good to me! Thanks a lot, Jannis!


how to run in win10?

Hello! I tried to install piaf on docker, but had problems actually running it, I guess it's a path problem - the default paths here are for linux systems，I'd like to ask you how to run it properly on Win10, thanks!
Here is a screenshot of the error reported by docker on Win10：

Did you find out ?

Please see issue #31 for more info on windows topics. Another user had a similar issue


Enumerate all items stored in Keychain

It would be great to have a function that enumerates all items stored in the Keychain

Would something like this work?
Create an allClasses array on SecurityClass:
public enum SecurityClass: Int {
    case GenericPassword, InternetPassword, Certificate, Key, Identity

    static let allClasses = [GenericPassword, InternetPassword, Certificate, Key, Identity]
}

Then add a public class function to iterate through each class and perform the request, calling the passed handler on success:
public class func each(userAccount: String, itemHandler : NSDictionary -> ()) {
    var items = [NSDictionary]()

    for securityClass in SecurityClass.allClasses {
        let request = LocksmithRequest(userAccount: userAccount)
        request.type = .Read
        request.securityClass = securityClass
        request.matchLimit = .Many

        let (result, error) = Locksmith.performRequest(request)

        if let result = result {
            itemHandler(result)
        }
    }
}

Usage would look something like this:
<EMAIL_ADDRESS>{ result in
    // result is a non-Optional NSDictionary
    print(result)
}

Didn't test it or anything yet.

Would it be possible to redefine userAccount as optional? I've never tried using the keychain without kSecAttrAccount.

@kayvink definitely an interesting idea.
@getaaron love the look of that API—that use of trailing closures is super nice 👍
Going off the docs and this StackOverflow post, I think we could either a) make LocksmithRequests userAccount property optional, then make sure we set kSecMatchLimit to all on the request if it's nil; b) make this entirely its own method, and just translate the SO post to Swift. First option appeals to me more.
Also, I wonder what would happen if we set userAccount to "" and set the matchLimit to .Many (which we should rename to .All at some stage) in the current implementation.
Won't have time to play around with this until the weekend, but definitely something that'll be good to include—cheers for the suggestions!

I'm trying to figure out if this feature is available, or if not, how I can re-create it. I can see where each() was merged into 1.2.2 but it appears to have been re-factored away or removed again since then.
Is there currently a solution or technique that can be used to return either the name or object for all accounts in the keychain?


MAT-4091 Modify the Error message returned from CQL-ELM Translator

MADiE PR
Jira Ticket: MAT-4091
(Optional) Related Tickets:
Summary
All Submissions

[x] This PR has the JIRA linked.
[x] Required tests are included
[x] No extemporaneous files are included (i.e Complied files or testing results)
[x] This PR is in to the correct branch.
[ ] All Documentation as needed for this PR is Complete (or noted in a TODO or other Ticket)
[ ] Any breaking changes or failing automation are noted by placing a comment on this PR.

DevSecOps
If there is a question if this PR has a security or infrastructure impact, please contact the Security or DevOps engineer assigned to this project to discuss it further.

[ ] This PR has NO significant security impact (i.e Changing auth methods, Adding a new user type, Adding a required but vulnerable package)
[ ] All CDN/Web dependancies are hosted internally (i.e MADiE-Root Repo)

Reviewers
By Approving this PR you are attesting to the following:

Code is maintainable and reusable, reuses existing code and infrastructure where appropriate, and accomplishes the task’s purpose
The tests appropriately test the new code, including edge cases
If you have any concerns they are brought up either to the developer assigned, security engineer, or leads

Not required anymore because handled by services: for reference https://github.com/MeasureAuthoringTool/madie-translator-commons/pull/12


[BZ-1259233] use version property for CDI 1.0 compatible Errai

https://github.com/uberfire/uberfire/commit/14f8a2343


slo-controller: fix mid resource calculate formula

Ⅰ. Describe what this PR does
When calculating Allocatable[mid] resources, due to possible oversold, ProdReclaimableMetric will be greater than NodeAllocatable * thresholdRatio, so the calculated Allocatable[mid] value accidentally includes the oversold part.
In particular, when thresholdRatio = 1, Allocatable[mid] = NodeAllocatable, which is not the original intention of the koordinator resource model design.
I suggest taking the current free resources of this node into account when calculating Allocatable[mid], that is, Allocatable[Mid]' := min(Reclaimable[Mid], NodeAllocatable * thresholdRatio, FreeResourceOnNode) + Unallocated[Mid] * midUnallocatedRatio
Ⅱ. Does this pull request fix one issue?

Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews
V. Checklist

[x] I have written necessary docs and comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in make test

@lijunxin559 Thanks for your contribution.

Allocatable[Mid]' := min(Reclaimable[Mid], NodeAllocatable * thresholdRatio, FreeResourceOnNode) + Unallocated[Mid] * midUnallocatedRatio

I suppose the FreeResourceOnNode equals Unallocated[Mid], so what does the formula mean? If the node has no unallocated Prod resources, the allocatable Mid in the new formula will be zero, which obeys the expectation of the Prod overcommitment.
Perhaps, to avoid the Prod allocatable being overcommitted twice (i.e. overcommit the unused overcommitted Prod requests), we need to minimize it with the ProdAllocated. WDYT?

@lijunxin559 Thanks for your contribution.

Allocatable[Mid]' := min(Reclaimable[Mid], NodeAllocatable * thresholdRatio, FreeResourceOnNode) + Unallocated[Mid] * midUnallocatedRatio

I suppose the FreeResourceOnNode equals Unallocated[Mid], so what does the formula mean? If the node has no unallocated Prod resources, the allocatable Mid in the new formula will be zero, which obeys the expectation of the Prod overcommitment. To avoid the Prod allocatable being overcommitted twice (i.e. overcommit the unused overcommitted Prod requests) in the node resource controller, we need to minimize it with the ProdAllocated and Node capacity. And we'd better revise the new peak predictor in the koordlet, e.g. the PriorityPeakPredictor should minimize the node capacity as the limit of the peak. WDYT?

Morning, thanks for your reply ~ (^^)
Allocatable[Mid]' := min(Reclaimable[Mid], NodeAllocatable * thresholdRatio) + Unallocated[Mid] * midUnallocatedRatio is  the original code logic. I think Unallocated[Mid] is intended to express the part of resources that are not allocated to prod. I just added a limit on the actual idleness of a node, which does not conflict with the original formula.
Yes, the predictor improvement you mentioned can also avoid secondary overselling to a certain extent, but I think the logic of dividing the predictor and the calculation of mid resources into two parts may be clearer. The predictor can focus on modeling and predicting the idle resources of the pod and ensure the reliability of the prediction, regardless of whether this part of the allocated resources actually exists or not. And the secondary utilization of this part of the idle resources is separated separately (mid and batch were also done before), so that so that the logic is decoupled and the subsequent use of the predictor function is more scalable. Right?

Morning, thanks for your reply ~ (^^)
Allocatable[Mid]' := min(Reclaimable[Mid], NodeAllocatable * thresholdRatio) + Unallocated[Mid] * midUnallocatedRatio is the original code logic. I think Unallocated[Mid] is intended to express the part of resources that are not allocated to prod. I just added a limit on the actual idleness of a node, which does not conflict with the original formula.
Yes, the predictor improvement you mentioned can also avoid secondary overselling to a certain extent, but I think the logic of dividing the predictor and the calculation of mid resources into two parts may be clearer. The predictor can focus on modeling and predicting the idle resources of the pod and ensure the reliability of the prediction, regardless of whether this part of the allocated resources actually exists or not. And the secondary utilization of this part of the idle resources is separated separately (mid and batch were also done before), so that the logic is decoupled and the subsequent use of the predictor function is more scalable. Right?

@lijunxin559 OK. So the FreeResourceOnNode means the NodeCapacity - NodeUsage. It seems reasonable.


update doctr feedstock 1.5.3

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Change a run-time configuration parameter for a DbContext

Does EF Core provide any hooks to set a run-time configuration parameter for each query on a DbContext?
For example, if I want to increase the work_mem for a given DbContext, I can do this, but the session is reset by the next query:
// returns 512MB
ctx.Database.ExecuteSqlCommand("SET work_mem = '512MB'; SHOW work_mem;");

// returns default value
ctx.Database.ExecuteSqlCommand("SHOW work_mem;");

What I'm imagining is something along the lines of a global query filter.
@roji Do you know of any way to do this?

There's nothing like this in EF Core as far as I'm aware...
We could look at it at the ADO level, via the connection string - that would have the advantage of sending the value in the PostgreSQL startup packet, which would naturally make it persist across connection resets etc... This would have to be checked though.

@roji That makes sense. I'll close this in favor of https://github.com/npgsql/npgsql/issues/2117.


Feature Request: Create binstubs for pact-standalone binaries

AS a user who wants to integrate to the latest Pact CLI features
IT would be useful to be able to easily reference the Pact binaries (e.g. pact, pact-broker pact-message etc.)
SO that I can use them without having to write JS wrappers, or wait for them to be included in the JS library
Example use case
Prior to deployment, we often run the can-i-deploy tool to check if it's safe to release either a consumer or a provider. Bash is an appropriate tool for this. It's hard to find the CLI tools if you don't know what you're doing, but it is possible:
package.json:
"can-i-deploy:consumer": "$(find ./node_modules -name pact-broker | grep -e 'bin/pact-broker$' | head -n 1) can-i-deploy --pacticipant SNSPactEventConsumer --latest --broker-base-url https://test.pact.dius.com.au --broker-username xxx --broker-password yyy",

Typically, I just install the CLI tools into my Docker container and add them to the path. But it would be nice if I could just go:
package.json:
can-i-deploy:consumer": "pact-broker can-i-deploy --pacticipant SNSPactEventConsumer --latest --broker-base-url https://test.pact.dius.com.au --broker-username xxx --broker-password yy

I imagine the ./node_modules/.bin dir might look like:
ls ./node_modules/.bin
pact_broker -><EMAIL_ADDRESS>pact -><EMAIL_ADDRESS>...

Did you want to have a stab at a PR for it?

Yes, I could try, it would be my first github PR though. I am reading the contribution guidelines now.

That would be great, thanks!

I am working on getting this done but I found that we will run into a conflict with one of the binaries. When I look at one of my projects with pact-node installed, I find a symlink in ./node_modules/.bin  defined as:
pact -><EMAIL_ADDRESS>This will conflict with the pact binary in the standalone package.
What would be recommended here? Should I just ignore that one?

I think we should consider naming the pact node binary pact-node to reflect the package name, and the other bin stubs are kept consistent with their originals. We'll want Michel's opinion on this on his return but I can't imagine this blocking you too much.

@mefellows I kind of have this ready to submit for a pull request but I will be waiting for a response on https://github.com/pact-foundation/pact-ruby-standalone/issues/22
I could submit the PR without it after I had tested on windows but the symlinks won't work out of the box for some users (like me).

Awesome - thanks! Sure, get the PR in and we can pop a label on it to avoid merging. At least the PR process can begin.

I think this is now fixed by #161 (thanks @mefellows! Much appreciated!)


NameToOid() in catalog branch has segFault when the name is not inserted

In many classes, the NameToOid() function calls GetXXXEntry() function. If the name we query is not inserted, the GetXXXEntry() will return a nullptr, and NameToOid() will get segFault when using that nullptr.
For example, you can refer to GetNamespaceEntry() and NameToOid() in namespace_handle.cpp.

Pushed fixes into the catalog branch.

name to oid conversions will generate a catalog exception if the name does not exist.
lookups for non-existent items, i.e. GetXXXEntry methods return a nullptr.

Should be addressed in the catalog branch code, now merged. Please re-open if it does not.

Discussed in the team meeting, preference for returning an error value rather than an exception.


conda pakage

Hello, thanks for this great package!
Do you have any plans to make this package available through conda or pip?
Tharindu

Hi Tharindu,
It is definitely on my to-do list, but I will probably need some weeks to come around to it, as I am currently very busy with other projects. Can keep you updated!
Yours, Esther

Great! Thank you very much!

I would find this also incredibly useful, if this is still in the pipeline!

@matthewtoholland It is indeed still on my todo list (shame on me). Since I am currently working on other projects I cannot give a good estimate of when I come around to this.
Until then: pip install git+https://github.com/hesther/espsim works (or putting a corresponding line in a conda environment file) like
name: xxx

dependencies:
  - pip:
    - git+https://github.com/hesther/espsim


Fatal errors from leveldown's gyp on install

I can't install caisson on my computer in any node version, tried v0.12, v5 and v6.2.1
Log: http://pastie.org/10869023
Colored log: http://i.imgur.com/MeAWiUG.png http://i.imgur.com/5Lj3g9F.png

This project hasn't been maintained since node v0.10. I recommend you use AWS SDK for JavaScript in Node.js or AWS Command Line Interface instead.

It'd be great to say that somewhere though. Perhaps you could run this too:
npm deprecate caisson@"*" "Deprecated. Use AWS SDK for JavaScript instead"


Update feature_column_v2.py

Or should be:
y_0 = 1.0 / 2.0 * ( w_a + w_ b) + w_d + b
y_1 = w_c + 1.0 / 3.0 * ( w_e + w_ f + w_g) + b

Nagging Reviewer @rohan100jain: You have been added as a reviewer to this pull request. Please add your review or reassign. It has been 14 days with no activity and the awaiting review label has been applied.

Nagging Reviewer @rohan100jain: You have been added as a reviewer to this pull request. Please add your review or reassign. It has been 29 days with no activity and the awaiting review label has been applied.

Nagging Reviewer @rohan100jain, @ymodak: You have been added as a reviewer to this pull request. Please add your review or reassign. It has been 14 days with no activity and the awaiting review label has been applied.

Nagging Reviewer @rohan100jain, @ymodak: You have been added as a reviewer to this pull request. Please add your review or reassign. It has been 29 days with no activity and the awaiting review label has been applied.

Nagging Reviewer @rohan100jain: You have been added as a reviewer to this pull request. Please add your review or reassign. It has been 14 days with no activity and the awaiting review label has been applied.

I'm going to go ahead and close this PR, because it seems to have stalled. If you're still interested in pursing this (and responding to my comments), please feel free to reopen!


feat:Update go-reddit module path

Description

Update go-reddit module path.
Motivation and Context

How Has This Been Tested?

Screenshots / Output (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation (no code change)
[ ] Refactor (refactoring production code)
[ ] Other

Checklist:

[ ] My code follows the code style of this project.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

@hsluoyz


Implement connectors sorting

Migrate table to new table component
Implement sorting
Related issue https://github.com/provectus/kafka-ui/issues/2325
The list is unsorted at all

Implement sorting by: name, connect, type and status.

Sorting by Name, Connect, Type, Plugin, Status implemented.


build_pip_package error on Mac+Python3

See detailed build log at: http://ci.tensorflow.org/view/Experimental/job/experimental-cais-tensorflow-mac-python3-copt_pip_install-test/1/consoleFull

In file included from tensorflow/core/kernels/conv_ops.cc:22:
In file included from ./tensorflow/core/framework/numeric_op.h:19:
In file included from ./tensorflow/core/framework/op_kernel.h:22:
In file included from ./tensorflow/core/framework/allocator.h:25:
In file included from ./tensorflow/core/framework/type_traits.h:22:
In file included from ./tensorflow/core/framework/types.h:23:
In file included from third_party/eigen3/unsupported/Eigen/CXX11/Tensor:2:
In file included from external/eigen_archive/eigen-eigen-8cd7c2c6e9e1/unsupported/Eigen/CXX11/Tensor:92:
external/eigen_archive/eigen-eigen-8cd7c2c6e9e1/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h:29:31: error: no type named 'Scalar' in 'Eigen::internal::TensorContractionInputMapper<float, long, 0, Eigen::TensorEvaluator<const Eigen::TensorReshapingOp<const Eigen::DSizes<long, 2>, const Eigen::TensorImagePatchOp<-1, -1, const Eigen::TensorMap<Eigen::Tensor<const float, 4, 1, long>, 16> > >, Eigen::ThreadPoolDevice>, Eigen::array<long, 1>, Eigen::array<long, 1>, 4, false, false, 0>'
typedef typename RhsMapper::Scalar RhsScalar;
~~~~~~~~~~~~~~~~^~

This error doesn't occur if Python2 is used on Mac.

Probably a swig difference.
On Tue, Feb 9, 2016 at 11:05 AM caisq<EMAIL_ADDRESS>wrote:

See detailed build log at:
http://ci.tensorflow.org/view/Experimental/job/experimental-cais-tensorflow-mac-python3-copt_pip_install-test/1/consoleFull
In file included from tensorflow/core/kernels/conv_ops.cc:22:
In file included from ./tensorflow/core/framework/numeric_op.h:19:
In file included from ./tensorflow/core/framework/op_kernel.h:22:
In file included from ./tensorflow/core/framework/allocator.h:25:
In file included from ./tensorflow/core/framework/type_traits.h:22:
In file included from ./tensorflow/core/framework/types.h:23:
In file included from third_party/eigen3/unsupported/Eigen/CXX11/Tensor:2:
In file included from
external/eigen_archive/eigen-eigen-8cd7c2c6e9e1/unsupported/Eigen/CXX11/Tensor:92:
external/eigen_archive/eigen-eigen-8cd7c2c6e9e1/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h:29:31:
error: no type named 'Scalar' in
'Eigen::internal::TensorContractionInputMapper, const
Eigen::TensorImagePatchOp<-1, -1, const Eigen::TensorMap, 16> > >,
Eigen::ThreadPoolDevice>, Eigen::array, Eigen::array, 4, false, false, 0>'
typedef typename RhsMapper::Scalar RhsScalar;

This error doesn't occur if Python2 is used on Mac.

—
Reply to this email directly or view it on GitHub
<https://github.com/tensorflow/tensorflow/issues/1033>.

@benoitsteiner have you seen this before? It only happens if you configure for python3, on a Mac, so I'm assuming it's a swig issue, but it's deep inside Eigen, so maybe you have an idea?

@caisq It looks like you're fetching an older version of Eigen. How recently have you sync'ed with the TensorFlow repository? A similar issue has been reported either last week or a couple of weeks ago and fixed since. I wonder if you have the fix in your codebase.

@benoitsteiner Today I ran the build again and this time the compilation error didn't occur:
http://ci.tensorflow.org/view/Experimental/job/experimental-cais-tensorflow-mac-python3-copt_pip_install-test/3/consoleFull
My branch has been synced with the TensorFlow master. So not sure what changed. Do you think adding "bazel clean" before every build (which I'm not currently doing) will help?

I have noticed that calling bazel clean every time you sync can help. bazel caches a lot of build data internally and it may not always properly react when the WORKSPACE file changes.

Should we report this to bazel? Changing the workspace file is cheating, in
a way. I don't know many build systems that can work with that, but maybe
bazel should aspire to more?
On Wed, Feb 10, 2016 at 17:53 Benoit Steiner<EMAIL_ADDRESS>wrote:

I have noticed that calling bazel clean every time you sync can help.
bazel caches a lot of build data internally and it may not always properly
react when the WORKSPACE file changes.
—
Reply to this email directly or view it on GitHub
https://github.com/tensorflow/tensorflow/issues/1033#issuecomment-182670866
.

@benoitsteiner @martinwicke @vrv Hmm...  Although the C++ compilation error seems to be gone for now, there is another problem: Many of the Python unit tests fail under Mac+Python3:
bazel test -c opt //tensorflow/python/...

Executed 155 out of 155 tests: 109 tests passed and 46 failed locally.

Note that the same build worked perfectly under Mac+Python2.
Similarly, a lot of the Python uni tests failed during the Python3 pip test-on-install.
For detailed error logs, see:
http://ci.tensorflow.org/view/Experimental/job/experimental-cais-tensorflow-mac-python3-copt_pip_install-test/11/console
A lot of them show things like:

tensorflow.python.pywrap_tensorflow.StatusNotOK: Out of range: FIFOQueue '_20_fifo_queue' is closed and has insufficient elements (requested 1, current size 0)
[[Node: ReaderRead = ReaderRead[_device="/job:localhost/replica:0/task:0/cpu:0"](test_reader, fifo_queue)]]

tensorflow.python.pywrap_tensorflow.StatusNotOK: Invalid argument: _ProdGrad NaN test : Tensor had NaN values
[[Node: CheckNumerics = CheckNumericsT=DT_FLOAT, message="_ProdGrad NaN test", _device="/job:localhost/replica:0/task:0/cpu:0"]]

......W tensorflow/core/common_runtime/executor.cc:1094] 0x7fc314c15bd0 Compute status: Invalid argument: batch_dim == seq_dim == 0
[[Node: ReverseSequence_3 = ReverseSequence[T=DT_FLOAT, batch_dim=0, seq_dim=0, _device="/job:localhost/replica:0/task:0/cpu:0"](_recv_Placeholder_6_0, _recv_Placeholder_7_0)]]
F.

...

No changes to the repo happened in the period between the last passing test and the first failing test. So it should be in the Jenkins config. Did you change anything there around 4pm EST today?

@martinwicke Sorry I didn't make it clear: The passing build I showed earlier was actually using Python2, not Python3 as it was meant to use.  This is a tools issue that will be fixed in PR https://github.com/tensorflow/tensorflow/pull/1051
This has nothing to do with Jenkins. I did it on the Mac slave without Jenkins or Docker and got the errors.
Can you try it on your Mac with Python3?
bazel clean
bazel test -c opt //tensorflow/python/...

@martinwicke @benoitsteiner @vrv Further information: I thought this might have to do with the special bazel flags required in Mac. So I tested the following flag combinations for "bazel test //tensorflow/python/..."
-c opt
--linkopt=headerpad_max_install_names
-c opt --linkopt=headerpad_max_install_names
-c opt --genrule_strategy=standalone --linkopt=headerpad_max_install_names

All of them failed in the same way, i.e., 46 of the 151 Python unit tests failed.

Testing now
On Thu, Feb 11, 2016 at 8:10 AM caisq<EMAIL_ADDRESS>wrote:

@martinwicke https://github.com/martinwicke @benoitsteiner
https://github.com/benoitsteiner @vrv https://github.com/vrv Further
information: I thought this might have to do with the special bazel flags
required in Mac. So I tested the following flag combinations for "bazel
test //tensorflow/python/..."
-c opt
--linkopt=headerpad_max_install_names
-c opt --linkopt=headerpad_max_install_names
-c opt --genrule_strategy=standalone --linkopt=headerpad_max_install_names
All of them failed in the same way, i.e., 46 of the 151 Python unit tests
failed.
—
Reply to this email directly or view it on GitHub
https://github.com/tensorflow/tensorflow/issues/1033#issuecomment-182937374
.

It seems to be a problem with exceptions. All the errors I see are of the form:
FAIL: testBadDefault (__main__.SparseToDenseTest)
----------------------------------------------------------------------
tensorflow.python.pywrap_tensorflow.StatusNotOK: Invalid argument: default_value
 should be a scalar.
         [[Node: SparseToDense = SparseToDense[T=DT_INT32, Tindices=DT_INT32, va
lidate_indices=true, _device="/job:localhost/replica:0/task:0/cpu:0"](SparseToDe
nse/sparse_indices, SparseToDense/output_shape, SparseToDense/sparse_values, SparseToDense/default_value)]]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/private/var/tmp/_bazel_wicke/83710fbf544c1dff5a44a1c6171bc2ec/tensorflow/bazel-out/local_darwin-py3-opt/bin/tensorflow/python/sparse_to_dense_op_py_test.runfiles/tensorflow/python/framework/test_util.py", line 497, in assertRaisesWithPredicateMatch
    yield
  File "/private/var/tmp/_bazel_wicke/83710fbf544c1dff5a44a1c6171bc2ec/tensorflow/bazel-out/local_darwin-py3-opt/bin/tensorflow/python/sparse_to_dense_op_py_test.runfiles/tensorflow/python/kernel_tests/sparse_to_dense_op_py_test.py", line 112, in testBadDefault
    dense.eval()
  File "/private/var/tmp/_bazel_wicke/83710fbf544c1dff5a44a1c6171bc2ec/tensorflow/bazel-out/local_darwin-py3-opt/bin/tensorflow/python/sparse_to_dense_op_py_test.runfiles/tensorflow/python/framework/ops.py", line 465, in eval
    return _eval_using_default_session(self, feed_dict, self.graph, session)
SystemError: <built-in function delete_Status> returned a result with an error set

That final system error is the problem. I think these are the tests that have at least one test method which relies on an exception somewhere.

Duplicate of #830, closing this one.


v8 ur17 and no support for v6 and 7.

Updated FS bug fixes for v8 UR17 and indicated that FS v6 and 7 are no longer supported.

Updated in master in the private working repo. Closing here.


StaticSite: Reference stack outputs in static website's config

Discussion: https://github.com/serverless-stack/serverless-stack/discussions/194
Reference link:
https://github.com/serverlesspub/cloudformation-deploy-to-s3

Added support in v0.29.1.
See example here - https://docs.serverless-stack.com/constructs/StaticSite#replace-deployed-values


[issue-581]fix the bug of load parse failure when tblname is in carbon's datatype keywords in DDL.

We discussed on this issue and had a conclusion:
Only data type ignore keywords, the others keep as reserved keywords of carbon.

@nareshpr @sujith71955
pls review this pr, thank you!

@sujith71955 pls check.

@gvramana data type is not keywords of spark...
spark has many parsers，ddlparser、sparksqlparser、hiveparser，we only have carbonsqlparser...we only care about use only one parser to parser it，I discussed with naresh，we think this is the bestway，we only modify little code.

if u want do as spark，then the datatype will move from keywords using regex to parse，I think this way is not a better way.

@gvramana I agree with you to keep consistent with spark.

please look at this pr #704


[MMS] Fix concatenation of emissions

Fix the dimension used to concatenate individual emissions for long audio file
Also fix a bug where context was being removed along label dimension (instead of time dimension)

#5133 seems fixed the dimension issue, but now have this issue
File "./examples/mms/data_prep/align_and_segment.py", line 90, in get_alignments
path, _ = F.force_align(
AttributeError: module 'torchaudio.functional' has no attribute 'force_align'

Please install torchaudio nightly build. See Step 1 here for more details - https://github.com/facebookresearch/fairseq/tree/main/examples/mms/data_prep.


Add support for VSCode plot pane display.

This PR would allow for a no-additional-dependencies way of getting LaTeXStrings rendered in the VSCode plot pane - if that is something you'd want to support.
I get that you are not interested in supporting rendering through lots of external dependencies (#43) and I agree with that. This suggestion is quite a bit lighter than that though - enable HTML display and prepend mathjax import to the string.
I submitted a PR rather than an issue since that more clearly demonstrates what I had in mind. I'm overloading Base.repr because VSCodeServer.jl seems to ignore the Base.show overload that I started with. If you decide that this VSCode rendering functionality is worth having and that overloading Base.repr is strange, then I could have a chat with the VSCode people to see whether we should fix things such that LaTeXStrings.jl could overload show instead.
Anyways, it works as it is now if you want to check it out.
Cheers!

I don't understand why overloading Base.show(io::IO, ::MIME"juliavscode/html", s::LaTeXString) wouldn't work — that is called by the repr(::MIME, x) that is called by vscode.  Are you sure?
@davidanthoff and @pfitzseb, how do you feel about LaTeXStrings using MathJax for display like this?

I have not yet figured out why but
function Base.show(io::IO, ::MIME"juliavscode/html", s::LaTeXString)
    print(io, "hello")
end

Does not do what I think it should. It enables the mime and ensures that the plot pane is used but it ignores the function body and prints the latexstring rather than my friendly greeting.
I have other overloads of Base.show(io::IO, ::MIME"juliavscode/html", ...) that work just fine so this one was a big of a headache. I figured that I'd  check with you whether the main idea of mathjax + html rendering was inside the scope of what you want LaTeXStrings.jl to do before I dug deeper.

I have so far always thought of the plot pane in VS Code as being for plots specifically, and nothing else, in particular not as a generic rich display. Not sure whether that really makes sense, but that has been the philosophy so far. So right now we only show MIME types that we think fall into the plot category, namely these. Markdown for example is not part of that list.
We do display help markdown in the extension and use katex for the math in that, but that is completely distinct from the Base.display architecture.
We try pretty hard to make as much stuff work in offline scenarios in the extension, and the way this PR here is implemented would presumably only work online, because it doesn't ship mathjax, but downloads it from the web. I think with the current architecture we have there is no way to handle this differently, though, for stuff that comes in via our own MIME type...
I definitely think this should work with Base.show, rather than Base.repr. I think we are doing nothing weird or fancy in how we hook into the display system.
So I think from my end the biggest question is whether it is a good UI experience when equations show up in a plot pane... We could also think about another possibility: right now the extension displays MIME types that we categorize as "plots" right away in the plot pane. But for tabular sources we don't hook into the display system by default, instead we provide an option that one can do df |> vscodedisplay and only then does it open a new tabular data viewer. That viewer is not part of the plot pane, it is just a standalone document in the editor. I could also see a scenario where we add another MIME type a la juliavscode/html-standalone or something like that which would behave in that way. That would enable a rich display that is not part of the plot pane and is also not hooked in by default. We could even just enable that for standard markdown or latex MIME types, I guess...

I think it would be a good UI experience to have the equations rendered somewhere but I'm not wedded to the plot pane. Latexify already has a function render similar to what you describe where L"\frac{x}{y}" |> render displays the equation in the plot pane. The only thing that this PR would add to that is that the display would happen automatically.
I had not thought about the offline problem and I agree that having the call to render/display or whatever we'd like to call it might be a solution, albeit a somewhat unsatisfying one. In such case it might make sense to place this functionality in a LatexRender.jl package so that the same render function could have methods for more than just VSCode. I already have some of that functionality in Latexify.jl but if we decide that auto-rendering is not a good option for now then I think this functionality would be better placed in a separate package. Alternatively, we could just be ok with the way that it "renders" offline. It will just be displayed as plain text inside the plot pane. Less natural than having it in the REPL, but not a big regression from the current state.
Having infrastructure for better rich display support would be nice overall. Displaying markdown and general HTML would be nice! Is there anything keeping us from going all out and adding CSS and javascript support too - allowing for reactive applications? I don't quite see why such a mode of display would be separate from what's currently the plot pane though. Dispatching different display types to different window panes seems a little bit odd to me. I think that the natural classification for determining which pane to use is not from the type of object but rather in the mode of user interaction (documentation lookup, variable inspection, rich display, REPL, file navigation, etc.). With that frame of mind, I make out little difference between a plot and a rendered HTML page (which might include plots).
So, I see three paths:

Evolve what is now the plot pane to a rich display pane (over time). Let this PR be a step in that process - just figure out how to make Base.show overloads work (I know it should work but it does not when I implement it for LaTeXStrings).
Make a new rich display option in VSCode and let latex be rendered there. We could then close this PR and leave the specific latex support until the general framework for rich display is in place.
Don't let rendering be automatic at all - make a new package that aims to render LaTeXStrings as naturally as possible in whatever environment the user is coding. Which VSCode pane to render in would then be up to that package. I'd start with the plot pane until such time that any future rich display pane is in place. Needless to say, this PR should then be closed.

I have a slight preference for 1. but I'm open to any of these options.


Update jsdoc and ignore some methods

Make the docs better for the upcoming website generator.

Since it's just a docs change I'm gonna merge.  Thanks!


Notes go missing when dragged and dropped in CPT editor

To reproduce: drag the name of a note in the marking tab to a different position in the list. It disappears, and the CPT is saved without that note.

Doesn't seem to happen any more.


Corrected yield formula for US inflation-linked bonds.

Corrected yield computation for "US I/L REAL YLD" convention (TIPS)
Re-enabled tests with yield/price hard-coded and externally provided.
Cleaned historical data set for US CPI-U

retest this please


Specification is incomplete

[x] The way syscalls work and which codes they use are not specified
[x] Where do the print syscalls get their value from?
[x] The hash function is not specified
[x] Which instruction is being executed first?
[x] Is memory initialized with 0 by default?
[x] Which byte corresponds to which register? (00 <-> A, ...)?
[x] Do load and store work in a little endian or big endian way? If an int from address x is loaded is x+3 the highest or the lowest byte?
[x] Technically push / pop is not fully specified (does it decrease the stack pointer)?
[x] The calling convention is defined for a  programming language, not for an instruction set, only the way call and ret work should be specified
[x] How does the parameter mode register address and relative address work? Specifically how many bytes do they take?
[x] Can the constant parameter modes be used for writable parameters? Is this undefined behaviour, should the cpu panic?

Please make checkboxes

done

Please have a look, I updated the spec.

lgtm :+1:


internal json v3: parse ruby source checksum correctly

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew typecheck with your changes locally?
[ ] Have you successfully run brew tests with your changes locally?

Currently we are including this in the API but not actually parsing and loading it correctly from the JSON. I think this was an oversight when addressing feedback and refactoring the JSON shape. Not a big deal, of course, because I'm the only person using it right now.
I found this out while testing installs using the API and I got this error while running brew reinstall tree.
Warning: Cannot verify integrity of '60fc4212023d3fef00e6de4b9f3f0d63402cf3eca00778d09f4f2d3481b524a1--tree.rb'.
No checksum was provided.

I also am excluding the HOMEBREW_INTERNAL_JSON_V3 environment variable from tests because it was causing some API loading tests to fail.

Related to https://github.com/Homebrew/brew/pull/16638

github-mark-c791e9551fe4.zip
soft2i

soft2i


[AERIE-1938] Upgrade Hasura to version 2.8.4

Tickets addressed: AERIE-1938
Review: By commit
Merge strategy: Merge (no squash)

Description
Upgrade Hasura to v2.8.4, mainly motivated by the fact that 2.7.0 introduces streaming subscriptions, which will be leveraged in the simulation segment streaming prototype.
Verification

All tests continue to pass, Aerie functions the same as no pertinent breaking changes were introduced from v2.2.0 -> v2.8.4
Documentation

N/A
Future work

Research new Hasura features to see if they enable new Aerie features

Updated to upgrade deployment Hasura version as well.


do some code corrections

Coverage decreased (-43.9%) to 56.098% when pulling 8d4dd7e84adb0b1431c6853801cb20b15865354b on luisvt:master into 5febe10e45752ea7e3616c0d9e71366cf7341c81 on ulfryk:master.


Update landing page with site page content.

Docs Build status updates of commit 46ed602:
:warning: Validation status: warnings

File
Status
Preview URL
Details

project-rome-docs/index.md
:warning:Warning

Details

.vscode/settings.json
:white_check_mark:Succeeded

project-rome-docs/index.md

Line 101, Column 0: [Warning-hard-coded-locale] Link 'https://docs.microsoft.com/en-us/archive/msdn-magazine/2018/may/universal-windows-platform-building-connected-apps-with-uwp-and-project-rome' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 105, Column 0: [Warning-hard-coded-locale] Link 'https://docs.microsoft.com/en-us/graph/notifications-concept-overview' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 76, Column 107: [Suggestion-duplicate-alt-text] Alt text 'Nuget' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.
Line 79, Column 107: [Suggestion-duplicate-alt-text] Alt text 'Nuget' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.
Line 80, Column 208: [Suggestion-duplicate-alt-text] Alt text 'REST' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.
Line 80, Column 153: [Suggestion-duplicate-alt-text] Alt text 'REST' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.
Line 80, Column 107: [Suggestion-duplicate-alt-text] Alt text 'REST' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 8f2449f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

project-rome-docs/index.md
:bulb:Suggestion

Details

.vscode/settings.json
:white_check_mark:Succeeded

project-rome-docs/index.md

Line 76, Column 107: [Suggestion-duplicate-alt-text] Alt text 'Nuget' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.
Line 79, Column 107: [Suggestion-duplicate-alt-text] Alt text 'Nuget' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.
Line 80, Column 208: [Suggestion-duplicate-alt-text] Alt text 'REST' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.
Line 80, Column 153: [Suggestion-duplicate-alt-text] Alt text 'REST' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.
Line 80, Column 107: [Suggestion-duplicate-alt-text] Alt text 'REST' is duplicated. Within an article, alt text must be unique. NOTE: This Suggestion will become a Warning on 1/29/21.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Remove snapshot dependency on azure-mgmt-resources test jar

https://github.com/Azure/azure-sdk-for-java/blob/master/parent/pom.xml#L149 depends on a snapshot release of azure-mgmt-resources test jar.
We couldn't release it because it seems like the partner release pipeline will strip out any test jar before uploading to Maven.
We need to support it and release an official version of https://github.com/Azure/azure-libraries-for-java/tree/master/azure-mgmt-resources/src/test and update the SNAPSHOT dependency.

I think @JimSuplizio might have cleaned this up, I can't see this dependency referenced anywhere in the root parent anymore.

I think @JimSuplizio might have cleaned this up, I can't see this dependency referenced anywhere in the root parent anymore.

So it's not in the root pom anymore but there are still several pom files that use this dependency. It's a test only dependency.
sdk\batch\microsoft-azure-batch\pom.xml
sdk\keyvault\microsoft-azure-keyvault\pom.xml
sdk\keyvault\microsoft-azure-keyvault-extensions\pom.xml
sdk\keyvault\microsoft-azure-keyvault-test\pom.xml


Token filter not working on Explorer

These should filter correclty based on the same config file mapping
Private Zenhub Image

The current functionality of the asset filter involves filtering the retrieved transfer data. The SDK supports on-the-fly filtering only based on originDomain and destinationDomain.


Multiple uses of $forEach produces wrong output

Hi,
we use the plugin to simplify our deployments and avoid redudancies. Thank you very much for your work! 👍
Now we have noticed a problem.
If you use several $forEach with different iterators within one serverless.yml, then only one iterator is applied for all $forEach`. This is possible for example using imports for different resources.
For example:
serverless.yml
custom:
  queues:
    FIRST: first-queue
    SECOND: second-queue
  topics:
    a: a
    b: b
    c: c

resources:
  - ${file(./queues.yml)}
  - ${file(./topics.yml)}

queues.yml
  $forEach:
    iterator: "${self:custom.queues}"
    template:
        ...do sth...

topics.yml
  $forEach:
    iterator: "${self:custom.topics}"
    template:
        ...do sth...

This should produce something like:
-> first-queue
-> second-queue

-> a
-> b
-> c

Instead the result is:
-> first-queue
-> second-queue

-> first-queue
-> second-queue

Have I missed anything?
I am trying to create a complete example later.

Hi @AntonBazhal ,
thanks for looking! I created a small reproducer example, you can find it here:
https://github.com/dagrammy/serverless-plugin-for-each-test
The serverless.yml looks like this and should create 5 EventBridge scheduled rules (2 rate based and 3 cron based).
service: serverless-plugin-for-each-test
frameworkVersion: '3'

provider:
  name: aws
  region: eu-central-1

custom:
  rate:
    - RATE_A
    - RATE_B
  cron:
    - CRON_Z
    - CRON_Y
    - CRON_X

resources:
  - ${file(./schedule/rate.yml)}
  - ${file(./schedule/cron.yml)}

plugins:
  - serverless-plugin-for-each

and the imported files are:
Resources:
  $forEach:
    iterator: "${self:custom.cron}"
    template:
      CronSchedule$forEach.value:
        Type: AWS::Events::Rule
        Properties:
          ScheduleExpression: cron(0 8 * * ? *)
          Targets:
            - Input: '{"scheduler":"$forEach.value"}'
              Arn: arn:aws:lambda:eu-central-1:123456789:function:callIt
              Id: callItId

Resources:
  $forEach:
    iterator: "${self:custom.rate}"
    template:
      RateSchedule$forEach.value:
        Type: AWS::Events::Rule
        Properties:
          ScheduleExpression: rate(5 minutes)
          Targets:
            - Input: '{"scheduler":"$forEach.value"}'
              Arn: arn:aws:lambda:eu-central-1:123456789:function:callIt
              Id: callItId

The expected result would be, that 5 resources are created.
- RateScheduleRATE_A
- RateScheduleRATE_B
- CronScheduleCRON_Z
- CronScheduleCRON_Y
- CronScheduleCRON_X

But the result shows 6 resources.
- RateScheduleCRON_Z
- RateScheduleCRON_Y
- RateScheduleCRON_X
- CronScheduleCRON_Z
- CronScheduleCRON_Y
- CronScheduleCRON_X

You can find more details in the readme: https://github.com/dagrammy/serverless-plugin-for-each-test/blob/main/README.md
Thank you very much and kind regards!

Oh, that's an amazing example. Thanks for doing that.
I see what's going on now. The problem is specific to the resources section and how serverless handles resources split into multiple files. Essentially, it merges Resource objects defined in each file, so $forEach sections get merged too. This happens before serverless-plugin-for-each can do its work, so the config the plugin is getting looks like this:
{
  "Resources": {
    "$forEach": {
      "iterator": [
        "CRON_Z",
        "CRON_Y",
        "CRON_X"
      ],
      "template": {
        "RateSchedule$forEach.value": {
          "Type": "AWS::Events::Rule",
          "Properties": {
            "ScheduleExpression": "rate(5 minutes)",
            "Targets": [
              {
                "Input": "{\"scheduler\":\"$forEach.value\"}",
                "Arn": "arn:aws:lambda:eu-central-1:123456789:function:callIt",
                "Id": "callItId"
              }
            ]
          }
        },
        "CronSchedule$forEach.value": {
          "Type": "AWS::Events::Rule",
          "Properties": {
            "ScheduleExpression": "cron(0 8 * * ? *)",
            "Targets": [
              {
                "Input": "{\"scheduler\":\"$forEach.value\"}",
                "Arn": "arn:aws:lambda:eu-central-1:123456789:function:callIt",
                "Id": "callItId"
              }
            ]
          }
        }
      }
    }
  }
}

So the plugin is doing what it's supposed to do and I don't see a way to achieve what you need without modifying the plugin. The only way to prevent serverless from merging configs is to resolve name collision, like
Resources:
  cron:
    $forEach:
      iterator: "${self:custom.cron}"
      template:
        CronSchedule$forEach.value:
          Type: AWS::Events::Rule
          Properties:
            ScheduleExpression: cron(0 8 * * ? *)
            Targets:
              - Input: '{"scheduler":"$forEach.value"}'
                Arn: arn:aws:lambda:eu-central-1:123456789:function:callIt
                Id: callItId

and
Resources:
  rate:
    $forEach:
      iterator: "${self:custom.rate}"
      template:
        RateSchedule$forEach.value:
          Type: AWS::Events::Rule
          Properties:
            ScheduleExpression: rate(5 minutes)
            Targets:
              - Input: '{"scheduler":"$forEach.value"}'
                Arn: arn:aws:lambda:eu-central-1:123456789:function:callIt
                Id: callItId

Unfortunately, that would result in resources being nested under those extra keys instead of being a flat map. The plugin can be changed to have an override property to make it override the parent key (cron or rate in this case), so that the config would look like this:
Resources:
  rate:
    $forEach:
      iterator: "${self:custom.rate}"
      override: true
      template:
        RateSchedule$forEach.value:
          Type: AWS::Events::Rule
          Properties:
            ScheduleExpression: rate(5 minutes)
            Targets:
              - Input: '{"scheduler":"$forEach.value"}'
                Arn: arn:aws:lambda:eu-central-1:123456789:function:callIt
                Id: callItId

I've been thinking of adding this feature for a while, but I've never got to do this.

Oh, that's an amazing example. Thanks for doing that.

 :)

I see what's going on now. The problem is specific to the resources section and how serverless handles resources split into multiple files. Essentially, it merges Resource objects defined in each file, so $forEach sections get merged too. This happens before serverless-plugin-for-each can do its work, so the config the plugin is getting looks like this:

Thanks for your feedback and great explanation what is going on.

So the plugin is doing what it's supposed to do and I don't see a way to achieve what you need without modifying the plugin. The only way to prevent serverless from merging configs is to resolve name collision, like
Unfortunately, that would result in resources being nested under those extra keys instead of being a flat map. The plugin can be changed to have an override property to make it override the parent key (cron or rate in this case), so that the config would look like this:
I've been thinking of adding this feature for a while, but I've never got to do this.

The idea with the override property sounds promising. 👍
Another approach that I can think of....
Would it be possible to add an index or suffix to the $forEach:?
Something like that:
Resources:
  $forEach_1:
    iterator: "${self:custom.rate}"

Resources:
  $forEach_2:
    iterator: "${self:custom.cron}"

or
Resources:
  $forEach_rate:
    iterator: "${self:custom.rate}"

Resources:
  $forEach_cron:
    iterator: "${self:custom.cron}"

That way it shouldn't be merged and it might be possible to search and then process all elements that start with $forEach:.
But I have no idea if this could work.

I think the suffix idea is simpler and more intuitive. I'll try implementing it this week as it seems straightforward.

That would be great, thank you very much! :slightly_smiling_face:


Add License

Hi, would it be possible to add a permissive license, like MIT? Then I could reuse some of the code. Thanks :)

Done :)

Great, thank you!


Smaller-than-function mutations

Feature request
It would be handy to have a mutation to remove statements that call a single function or method. I see many times in bigger projects (written without TDD) that such things are not covered by tests.
For example, let's say I have the following code:
impl EventBus {

    pub fn deposit_event(event_id: u32) {
        print!("event with id {} is emitted", event_id);
    }

    pub fn do_logic(event_id: u32) {
        //some logic
        Self::deposit_event(3);
    }
}

It would be nice to have a mutation of this code where we would delete the following line in the do_logic method:
    Self::deposit_event(3);

What do you think, it is feasible to do such a thing?
Note
If I run cargo mutants, the following mutant is generated
src/main.rs:12: replace EventBus::deposit_event with () ... NOT CAUGHT in 0.248s

It rules out many cases, but does not rule out the situation where we have tests for public API deposit_event,  but not for calling it within other public API do_logic
Reproduction
Steps

Clone the following test repo
Navigate to subproject ./delete-statement
Execute cargo mutants

Expected behaviour:
There is a mutant generated for removing a statement calling a specific function, something like:
src/main.rs:15: remove Self::deposit_event(3) ... NOT CAUGHT in 0.248s

Actual behaviour:
No such mutation is supported by command cargo mutants

Hey, thanks again for the idea.
I think there is interesting potential to generate smaller-than-function mutations. That's likely to greatly increase the number of mutations, which makes parallelization (#39) more important, and perhaps means people want to sample mutants rather than run them exhaustively. So, I would probably not tend to add this right yet, and maybe even then not turn it on by default.
So in your example, it seems to me that your problem is that you don't have very good tests for do_logic. (In fact, not to be rude 😉 but it doesn't have any meaningful tests at all.)
The mutation that you're proposing in this bug is in fact the exact same mutation that we already generate: hollowing out do_logic. No test pays attention to whether either deposit_event or do_logic did anything. cargo-mutants would already tell you this.
Assuming you wanted to keep the application logic the same, you could write a test that catches stdout and checks for the expected output, much like the CLI tests in cargo-mutants. That test could potentially catch changes to both these functions.
So I think a more actionable definition of this bug would be: here is a tree that is actually not very well tested, but cargo-mutants doesn't say so, but deleting individual statements would potentially catch it. I think one could write an example that does this and that doesn't look too contrived.

In general this will help when the tests evaluate some, but not all, important behavior of the function. For example:

The function returns a compound type such as a struct, and the tests check some but not all of the fields or observable behavior of the returned value.
The function returns a value, which is checked by the tests, and the value is nontrivial enough the the tests will catch straightforward replacement with e.g. Ok(()). However, the function has an important side effect, and the tests don't check it.

Great additions to the topic, I like them! Also agree with the point we should give the users the options to opt-in/opt-out specific mutants.
On the other hand, I would like to challenge my delete-statement idea further. Sorry, but my previous code example was not trivial to demonstrate the problem. The updated code can be found here. But let me first explain it:
Let's say we have some logic we want to use it in multiple parts of our program. In this case just a simple data Repository, storing some data:
pub struct Repository {
    pub data: Vec<String>
}

impl Repository {

    pub fn new() -> Self {
        Repository{
            data: Vec::<String>::new()
        }
    }

    pub fn store(&mut self, data_entry: &str) {
        self.data.push(data_entry.to_string());
    }

}

Now let's say we use this logic in two places in our program. For example in do_logic and do_logic2. These two functions do very similar things, they increment the input number with a given amount, and store some data in the repository. (Please ignore the cfg_attr for now)
impl Main {

    #[cfg_attr(test, mutate)]
    pub fn do_logic(repo: &mut Repository, mut number: u32) -> u32 {
        number = number + 5;

        repo.store("data from do_logic");

        number
    }

    #[cfg_attr(test, mutate)]
    pub fn do_logic2(repo: &mut Repository, mut number: u32) -> u32 {
        number = number + 10;

        repo.store("data from do_logic2");

        number
    }
}

Now let's say I totally cover my do_logic method with tests, resulting in 100% code coverage and mutation score. Next to that, I write a test for do_logic2 checking if the number is incremented, but I forgot to write a test for the data being stored in the repository. In this situation, I would expect the mutation framework to generate a surviving mutant telling that I do not cover the Repository store method in do_logic2 method in my test suite, namely this line.
For this code, the hollowing-out mutation generated by cargo mutants is caught, namely by a failing do_logic_should_store_data test. So If I run cargo mutants, then the result tells that all my mutants are killed/caught. But still there is a gaping hole in my test suite.
Next to that, there are situations where we have no control over the code we use (fe.: 3th party library), so we can not mutate it, so not possible to hollow it out.
I left in some cfg_attr relating to the mutagen library, you probably know this. Although this library is also cool, I am not a big fan of it as the user needs to pollute their production code with a lot of attributes to have the mutations generated, which is quite cumbersome in my opinion.
On the other hand, this mutagen library can generate a mutation which deletes the abovementioned method call. In the current workplace I work, we have multiple projects each containing dozens of packages. We found this delete-statement mutation is one of the most useful ones, it helped us a lot in finding the gaping holes in our test suites. That's why I am pushing for this feature! x)
Let me know your thoughts! Thank you!

Yeah, exactly. That's a more realistic example of the second category in my post.
I'm in favor of adding this, but I think it will need some mitigations for the likely effect on run time, e.g.

an option for smaller than function mutants
a run time limit
parallel testing
...

https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators/ has a good list of ideas.

The upcoming 23.12 release can represent smaller-than-function mutants, and adds a few modifications of &&, ||, ==, !=, in #170 and #173. We can add more patterns.
Deleting single statements seems to have a lot of potential too, although it would make a lot of mutants, and I have some concern it might produce too much noise. Perhaps if we exclude patterns like trace lines it will be OK.

Deleting single statements seems to have a lot of potential too, although it would make a lot of mutants

There could be categorical mutations like “delete all statements that aren't lets” (that is, delete all statements whose deletion doesn't cause the code not to compile due to an unbound variable). This avoids combinatoric explosion but is still likely to efficiently create interesting mutants by removing side-effects while keeping the return value.
(It might also be good to do this while keeping assert!(...); statements, since omitted assertions are potentially the sort of thing that's hard or tedious to test but has been thought about carefully anyway. Opinions may differ on that.)


SQL: projection pushdown

This PR adds a very simple projection pushdown step. Currently, it handles two cases, reflected in the test cases. I think what we will need (and what I need to think about) for Q6 is how we do this for aggregate, since aggregate is similar to project in what it does to schemas and we will need something like this for Q6.

Thanks a lot for your comments!
I think I am currently generally a bit confused how to do all of these things since this is basically the first time that I implement something like this and don't just do it conceptually. I will think about your feedback and evolve this further.
One conceptual question is what we actually mean with projection pushdown. Do we mean the thing where we have a project and another operator and we swap their positions? Or do we need something more like "projection inference" where we basically infer a projection in front of any operator, that projects out all the columns that are not needed further up in the tree? Notice that the second thing is quite involved since something are not needed in an operator, but are actually part of the desired output so that needs to be kept in mind as well.
I feel like we need the second thing for Q6, so I will try to go more for that. However, I feel that the name "projection inference" is more descriptive than "projection pushdown". What do you think?

While this current version certainly doesn't do all the smart things one could do, it is enough to optimize Q6 to the point that we want atm.
I suggest merging this (after you approved the code obvly) and reiterating on it, once we actually need to.

One conceptual question is what we actually mean with projection pushdown. Do we mean the thing where we have a project and another operator and we swap their positions? Or do we need something more like "projection inference" where we basically infer a projection in front of any operator, that projects out all the columns that are not needed further up in the tree? Notice that the second thing is quite involved since something are not needed in an operator, but are actually part of the desired output so that needs to be kept in mind as well.
I feel like we need the second thing for Q6, so I will try to go more for that. However, I feel that the name "projection inference" is more descriptive than "projection pushdown". What do you think?

I think "projection push-down" generally refers to something like the second option. If you have access to the full text of the Ullman book, you can have a look at Chapter 16.1.4. It says that (unlike for selections) "pushing" projections usually consists in keeping the original projection also where it was and adding some new projection before the upstream operator. I guess that adding a projection in front of any operator and cleaning up identities at the end as a somewhat over-eager version of that but essentially with the same effect.

Thanks a lot for the reference. I have read Chapter 16.2.4 and it seems to come to similar conclusions as I did. I agree that it feels like my peephole approach probably has the same effect. I don't quite understand your argument about quadratic time, since I was thinking of applying these patterns on each Operator exactly once. However, I guess to really get something optimal, we might want to apply patterns to the resulting Operators as well (in particular, projection fusing). I have to think about that a bit :)

I don't quite understand your argument about quadratic time, since I was thinking of applying these patterns on each Operator exactly once. However, I guess to really get something optimal, we might want to apply patterns to the resulting Operators as well (in particular, projection fusing). I have to think about that a bit :)

You are right: the way you have implemented things, you will only apply each pattern once and I think it will come up with the optimal result. But there is a quadratic runtime hidden in find_cols_upstream: it has a worst case runtime of O(n) (it traverses the whole tree when applied to the root op) and is applied to O(n) ops. This is because it's implemented recursively.
It may be possible to do it without recursion and materialize the required columns of each op somehow. But then, these materializations may change. Say you rewrite the IR from leaves to root. Every time you rewrite the IR, all ops from the rewritten op to the leaves may have their column sets change again, leading again to quadratic runtime. If you drive the rewriting as "push down", i.e., from root to leaves, that wouldn't happen.
Anyways, all of this is "just" about compilation performance and probably secondary at this point...

Yes, I agree that this is probably the one to think about. However, I feel that one could make an argument that the recursion does not go up the tree too far, since it is actually only called on Select and not on any other operator. But I guess the worst-case scenario really is quadratic.

Yes, I agree that this is probably the one to think about. However, I feel that one could make an argument that the recursion does not go up the tree too far, since it is actually only called on Select and not on any other operator. But I guess the worst-case scenario really is quadratic.

Aha, good point, I didn't think about that. Yes, quite a few of the ops we currently have specify their list of columns explicitly. A few of the missing ones don't, though: joins, cross product, union all from the top of my mind.

I have implemented to mapping from columns to expressions for projection fusion and I think I got rid of the pattern matches that can be removed in a sane way.

No it does not since that test case needs to push a renaming projection trough a Select, something that I have not yet implemented. I would leave this open for a next version of the projection pushdown.


Upgrade vnu

https://github.com/w3ctag/privacy-principles/actions/runs/11097000177/job/30827581027?pr=443 installed vnu 23.4.11 and complained that CSS using :has is invalid:
    ul:has(#include-websites) li { list-style:none }

    /* Show summary principles if their audience is selected. */
    #bp-summary li:has(.practicelab) { display: none }
    #bp-summary ul:has(#include-websites:checked) + #best-practices-summary li:has(.audience-websites) { display: list-item; }
    #bp-summary ul:has(#include-user-agents:checked) + #best-practices-summary li:has(.audience-user-agents) { display: list-item; }
    #bp-summary ul:has(#include-api-designers:checked) + #best-practices-summary li:has(.audience-api-designers) { display: list-item; }

The version at https://validator.w3.org/nu/?doc=https%3A%2F%2Fpr-preview.s3.amazonaws.com%2Fjyasskin%2Fprivacy-principles%2Fpull%2F443.html is 24.9.28 and doesn't complain about this CSS syntax.

@sideshowbarker, this might be something you can fix? The npm version seems to be significantly behind the website version?

Sorry for not replying sooner. I just now pushed a new npm version, 24.10.17.
If that doesn’t resolve this, lemme know

Thanks! That fixed it: https://github.com/w3ctag/privacy-principles/actions/runs/11097000177/job/31677684195?pr=443


S28 3214 Switch watch page

Change description

removed banner on watch mk page
switched watch mk page to /watch and removed the old watch page

[!IMPORTANT]
This PR requires manual testing by QA. Please notify the QA team @hmcts/pre-rec-evidence-qa.

QA instructions

mk content should now be viewable at /watch using mkplayer
/watch-mk page should no longer be accessible

@LaurenceRawlings - if this PR gets merged, will the change be reflected in the portal in Prod? Is there a way to apply this change only to the Demo portal? thanks

I have changed the base branch to demo, merging here will deploy to demo


Slippery comp not working

Description
The slippery component does not make someone slip when they walk over the object that is "slippery".
Reproduction

Give object or person slippery component.
Walk over them
Don't slip

This effects Honk bots and only honk bots as far as i know but this is a critical issue for them as its not only their only purpose in life BUT also their only means of self defense.

I think jonkbots and killer tomatoes with slip mutation are also meant to slip

I think jonkbots and killer tomatoes with slip mutation are also meant to slip

true, i forgor 💀

I've done some testing on honkbots but I haven't been able to find much
The slippery component isn't triggered at all on mobs (breakpoint didn't activate), so it might be an issue with either the collision or fixture component (systems?)

#27684 partially fixes this, you still need the fixture with slips defined + steptrigger components for slipping to work.


Add support for extra attributes in route handlers

Hello.
This makes it possible to use extra arguments like database in the next example: https://github.com/zeit/micro/pull/335

Coverage remained the same at 100.0% when pulling ac3af35623fb4dd032be777a11f7bf0934352cd8 on dimapaloskin:add-extra-arguments-support into b551f424b5a8e9aca667a6a5cffb5ae633b25ea0 on pedronauck:master.


Copilot suggestion goes to the beginning of the line on enter

When I use enter to accept a suggestion from copilot it always puts it at the beginning of the line, ignoring any tabulation or the position of the cursor. This happens with all the languages.
Does this happen to someone else?
I need to do a minimal config error, but I wanted to ask because it might be something known.
Here is an example:
https://user-images.githubusercontent.com/62728887/166101903-d39ec2f5-7d07-4afd-97c8-0a4195fdae76.mov

Changing the cmp default behavior to cmp.ConfirmBehavior.Replace fixed it :)
require("cmp").setup {
	mapping = {
		["<CR>"] = cmp.mapping.confirm {
			behavior = cmp.ConfirmBehavior.Replace,
			select = true,
		},
	}
}


Notifications not displaying on iOS

Have setup Vercel correctly and updated notification settings

Hey @psrth, thanks for your patience waiting for a fix/reply to this issue. I’m closing this issue in favour of #107 as the place to track investigation and updates.


Additional context deadline handling in makeRequestWithAuthTypeAndHeadersComplete

Currently, the request retry / backoff logic is being applied to requests that reached context timeout. While it still works as we account for context deadline, it may be better to exit immediately. It also indirectly helps to safeguard from regressions like the ones introduced in v0.48.0 (fixed by https://github.com/cloudflare/cloudflare-go/pull/1072) as the response body is nil when go http client exits on context deadline (less processing/potentially less bugs).
Now, the error will just say that we reached the deadline for that specific request and doesn't imply we applied backoff logic or retried the request. It doesn't take away from the ability to surface more specific errors.
Also updating TestContextTimeout to:

better readability
making use of an actual http endpoint and increasing timeout values to make sure we get to api.request function and not timing out on rate limiter
ability to run the test individually

Has your change been tested?
Ran a request with short context timeout to reproduce the issue, confirmed it the expected result on timeout is long enough for a request to finish
	ctx, cncl := context.WithTimeout(context.Background(), time.Millisecond*time.Duration(50))
	defer cncl()

	// Getting existing A records from the zone
	_, err = api.DNSRecords(ctx, "<zone id>", cloudflare.DNSRecord{
		Type: "A",
		Name: "domain",
	})

Screenshots (if appropriate):
Types of changes
What sort of change does your code introduce/modify?

[X ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[X ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ X] All new and existing tests passed.
[ ] This change is using publicly documented (api.cloudflare.com or developers.cloudflare.com) and stable APIs.

thanks for digging into this one. let's add this in a test with the assertion that we get the correct exception. once we have that, we're good to go.

Codecov Report

Merging #1080 (02d6645) into master (e39278e) will increase coverage by 0.09%.
The diff coverage is 65.85%.

@@            Coverage Diff             @@
##           master    #1080      +/-   ##
==========================================
+ Coverage   49.94%   50.04%   +0.09%
==========================================
  Files         115      117       +2
  Lines       10991    11090      +99
==========================================
+ Hits         5490     5550      +60
- Misses       4338     4364      +26
- Partials     1163     1176      +13

Impacted Files
Coverage Δ

pages_project.go
50.81% <ø> (ø)

stream.go
64.91% <ø> (ø)

teams_accounts.go
53.84% <ø> (ø)

teams_devices.go
52.63% <ø> (ø)

access_service_tokens.go
66.29% <53.84%> (-2.13%)
:arrow_down:

api_shield.go
53.84% <53.84%> (ø)

url_normalization_settings.go
53.84% <53.84%> (ø)

workers.go
69.38% <72.72%> (-0.04%)
:arrow_down:

cloudflare.go
67.69% <73.91%> (+0.48%)
:arrow_up:

auditlogs.go
53.96% <100.00%> (+2.30%)
:arrow_up:

... and 5 more

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

thanks for digging into this one. let's add this in a test with the assertion that we get the correct exception. once we have that, we're good to go.

So, we actually have a test called "TestContextTimeout" that is checking for error type, the reason it didn't catch v0.48 regression is because when we set context timeout to "0", the deadline gets reached on https://github.com/cloudflare/cloudflare-go/pull/1080/files#diff-432b285f81cb984bfd1ce00fa760be757c96784135a1b9ecd49d3b6c9a26522bR250 , even before we make a request.
The error that's currently being returned (before this change) is also of the right type, it's just extra wrapped in "backoff" error. Once the change is merged, it won't be wrapped by the "backoff" error but with retain context.DeadlineExceeded var type. I'm not sure it's worth looking for an unwrapped error in the test but happy to make the change if you have strong opinion on it.
I tweaked the test to spin up an actual endpoint to timeout on and increased the timeout value so we can get to api.request block, which makes it more realistic practical scenario. As a bonus, it's easier to understand what the test is doing and which URL it's calling. It also makes it run individually just fine now.
A

i think that updated test is great, thank you.


STM32F103C8T6 device descriptor error

I'm trying to load the firmware into the controller, in all cases (even in previous compiled versions) dmesg returns the following:

[14276.055065] usb 1-2: new full-speed USB device number 51 using xhci_hcd
[14281.314934] usb 1-2: device descriptor read/all, error -110
[14281.442817] usb 1-2: new full-speed USB device number 52 using xhci_hcd
[14286.690929] usb 1-2: device descriptor read/all, error -110
[14286.691049] usb usb1-port2: attempt power cycle
[14287.342826] usb 1-2: new full-speed USB device number 53 using xhci_hcd
[14292.578949] usb 1-2: device descriptor read/8, error -110
[14297.958937] usb 1-2: device descriptor read/8, error -110
[14298.202826] usb 1-2: new full-speed USB device number 54 using xhci_hcd
[14303.334925] usb 1-2: device descriptor read/8, error -110
[14308.706942] usb 1-2: device descriptor read/8, error -110
[14308.814946] usb usb1-port2: unable to enumerate USB device

However for example Black Magic Probe firmware works correctly on the same device.
Is this "special" bugged bluepill?
All hardware is OK (R10=1.5k), soldering is fine. i've tried with noloader parameter, 2k,4k. Same effect. Used to uploading ST-link v2.

Hi Kim,
Your issue is very concerning. To help me debug your issue, could you please report/try the following things:

Report the git hash of DirtyJTAG if you've build it from source, or the release version of you were using the release builds.
Report all the parameters used for programming the STM32 (I'm assuming you are using stlink command line tools).
Have you tried replugging your Blue Pill after reprogramming? I haven't been able to get USB re-enumeration you work reliably on this platform.

Thanks,
Jean.

On 9 Jan 2023, at 03:54, Kim @.***> wrote:

I'm trying to load the firmware into the controller, in all cases (even in previous compiled versions) dmesg returns the following:
[14276.055065] usb 1-2: new full-speed USB device number 51 using xhci_hcd [14281.314934] usb 1-2: device descriptor read/all, error -110 [14281.442817] usb 1-2: new full-speed USB device number 52 using xhci_hcd [14286.690929] usb 1-2: device descriptor read/all, error -110 [14286.691049] usb usb1-port2: attempt power cycle [14287.342826] usb 1-2: new full-speed USB device number 53 using xhci_hcd [14292.578949] usb 1-2: device descriptor read/8, error -110 [14297.958937] usb 1-2: device descriptor read/8, error -110 [14298.202826] usb 1-2: new full-speed USB device number 54 using xhci_hcd [14303.334925] usb 1-2: device descriptor read/8, error -110 [14308.706942] usb 1-2: device descriptor read/8, error -110 [14308.814946] usb usb1-port2: unable to enumerate USB device
However for example Black Magic Probe firmware works correctly on the same device.
Is this "special" bugged bluepill?
All hardware is OK (R10=1.5k), soldering is fine. i've tried with noloader parameter, 2k,4k. Same effect. Used to uploading ST-link v2.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.

Thanks, Jead. Here is a log:
Building from the source:
st-flash write dirtyjtag.bluepill.noloader.bin 0x8000000 st-flash 1.7.0 2023-01-17T02:00:32 INFO common.c: F1xx Medium-density: 20 KiB SRAM, 128 KiB flash in at least 1 KiB pages. file dirtyjtag.bluepill.noloader.bin md5 checksum: 3a94dd19ada294cd9b8399b599487f3, stlink checksum: 0x000dc45b 2023-01-17T02:00:32 INFO common.c: Attempting to write 9232 (0x2410) bytes to stm32 address: 134217728 (0x8000000) 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08000000 erased 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08000400 erased 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08000800 erased 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08000c00 erased 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08001000 erased 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08001400 erased 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08001800 erased 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08001c00 erased 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08002000 erased 2023-01-17T02:00:32 INFO common.c: Flash page at addr: 0x08002400 erased 2023-01-17T02:00:32 INFO common.c: Finished erasing 10 pages of 1024 (0x400) bytes 2023-01-17T02:00:32 INFO common.c: Starting Flash write for VL/F0/F3/F1_XL 2023-01-17T02:00:32 INFO flash_loader.c: Successfully loaded flash loader in sram 2023-01-17T02:00:32 INFO flash_loader.c: Clear DFSR  10/ 10 pages written 2023-01-17T02:00:32 INFO common.c: Starting verification of write complete :~/DirtyJTAG/src$ md5sum dirtyjtag.bluepill.noloader.bin  3a94dd19ad0a294cd9b8399b599487f3  dirtyjtag.bluepill.noloader.bin
So, there in some warnings during compilation process.
Using pre-compilated release Version 2.0:
$ st-flash write dirtyjtag.bluepill.noloader.bin 0x8000000 st-flash 1.7.0 2023-01-17T02:13:37 INFO common.c: F1xx Medium-density: 20 KiB SRAM, 128 KiB flash in at least 1 KiB pages. file dirtyjtag.bluepill.noloader.bin md5 checksum: dc87643c89d1b379476ddda919fbc853, stlink checksum: 0x000db627 2023-01-17T02:13:37 INFO common.c: Attempting to write 9224 (0x2408) bytes to stm32 address: 134217728 (0x8000000) 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08000000 erased 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08000400 erased 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08000800 erased 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08000c00 erased 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08001000 erased 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08001400 erased 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08001800 erased 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08001c00 erased 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08002000 erased 2023-01-17T02:13:37 INFO common.c: Flash page at addr: 0x08002400 erased 2023-01-17T02:13:37 INFO common.c: Finished erasing 10 pages of 1024 (0x400) bytes 2023-01-17T02:13:37 INFO common.c: Starting Flash write for VL/F0/F3/F1_XL 2023-01-17T02:13:37 INFO flash_loader.c: Successfully loaded flash loader in sram 2023-01-17T02:13:37 INFO flash_loader.c: Clear DFSR 2023-01-17T02:13:37 INFO flash_loader.c: Clear CFSR 2023-01-17T02:13:37 INFO flash_loader.c: Clear HFSR  10/ 10 pages written 2023-01-17T02:13:37 INFO common.c: Starting verification of write complete 2023-01-17T02:13:37 INFO common.c: Flash written and verified! jolly good!
Here is an output from ["Blue Pill Diagnostic"] (https://mecrisp-stellaris-folkdoc.sourceforge.io/bluepill-diagnostics-v1.6.html) tool:
`===========================================
Bluepill Diagnostics V1.640 - GPL3 Licensed
h - test second Half of the 128KB flash declared for this chip
f - how much Flash is declared in the Flash Size Register ?
d - Print DBGMCU_IDCODE
a - STM32F103C8T6 Authenticity test, don't use with SWD/JTAG.
j - Jdec manufacturer id
e - Extra menu
q - Quit menu, enter the Forth command line
m - Main menu
Please wait, testing Flash ......
131072 flash is declared in the Flash size register at 0x1FFFF7E0
DBGMCU_IDCODE [@ 0xE0042000] = 0x20036410
STM32F103C8 authentication FAILED one or more tests:
FAIL - Declared flash not 65536
FAIL - DBGMCU_IDCODE is readable with no SWD/Jtag connected
PASS - Second 64KB flash block verified
PASS - JDEC manufacturer id IS STMicroelectronics
Jdec Continuation Code: 0x00
Jdec Identity Code: 0x20
JDEC manufacturer id: STMicroelectronics

Extra Menu
f - view First  64kb flash memory block: 0x00000 - 0x10000
s - view Second 64kb flash memory block: 0x10000 - 0x1FFFF
i - unique device Id
n - unique derived serial Number
a - fAQ
u - Usb faq
c - Credits
q - Quit back to main menu
m - Extra menu
UNIQUE DEVICE ID:
BITS-95:64 | 0x41373931 | A791
BITS-63:32 | 0x31333915 | 139.
BITS-31:0  | 0x002D003F | .-.?
Unique Serial Number = 0x7029001B
`

Thanks for your report. It appears that you have an undocumented counterfeit STM32. I found a user on the net facing similar issues with their STM32 board: https://github.com/qmk/qmk_firmware/issues/17605
Unfortunately I don't know where to investigate, and I can't justify spending a lot of time fixing buggy STM32 clones. If you ever find relevant resources about STM32 clones, or have a patch I could integrate, feel free to reach out.


Presentation mode - Display only the rendered graph

It would be really nice if you where able to hide everything except the rendered graph, like a presentation mode and make that changeable via the query params.
My use case is that i want to publish graphs on our intranet and i don't want to have to export and upload an image every time i need to change them. It would be fantastic if i was able to create an iframe with a url to GraphvisOnline and set the url parameter to a url of my graph representation and then the iframe content will be only the final rendering of the graph
Let me know if you think this is a good idea, and I can see if I have the possibility to put some time into this and create a PR
Thanks for a very useful product

I think it's a nice feature. Please feel free to create a pull request.


Update README URLs based on HTTP redirects

Created with https://github.com/dkhamsing/frankenstein
GitHub Corrected URLs

Was
Now

https://github.com/jakearchibald/ES6-Promises
https://github.com/jakearchibald/es6-promise

HTTPS Corrected URLs

Was
Now

http://www.promisejs.org/
https://www.promisejs.org/

Other Corrected URLs

Was
Now

http://www.jshint.com/
http://jshint.com/

https://www.npmjs.org/
https://www.npmjs.com/

Hah, this is adorable. :+1:

:smile:


Fix echoing pagination translation

[x] Changes have been thoroughly tested to not break existing functionality.

Thanks for catching this!


chore: fix some error in setup

What type of PR is this?

/kind documentation

What this PR does / why we need it:

add SPDK target setup in README.
fix setup_kernel_nvmf_target command error.
fix pv.yaml's storageclass name.

Which issue(s) this PR fixes:

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

none

/lgtm


Use absolute dates for older topics in Recent topics

At present, the Recent topics view uses relative times for when topics last received messages, e.g. "3 days ago". However, for topics older than "yesterday", absolute times are more helpful than relative times. This is consistent with how other apps present older messages, e.g. Gmail, Facebook Messenger, etc. See CZO discussion for additional context.
Specifically, the logic we should use is:

If the time is <24hr ago, show an absolute time, like "21:30" (or "9:30pm").
Otherwise, show what day it was, and not a time:

If the day was yesterday, say "Yesterday".
Otherwise, if it was <7 days ago, say the day of week, like "Friday".
Otherwise, if it was <1 year ago, say the month and day, like "Sep 6".
Otherwise, say the year, month, and day, like "Sep 9, 2020".

We should confirm that the date format is consistent with how dates are displayed in the message feed.

@zulipbot claim

@zulipbot abandon

Reopening this issue, since we're still iterating on the format.


Missing documentation for AuthenticationParameters

I'm submitting a...

[ ] Regression (a behavior that used to work and stopped working in a new release)
[ ] Bug report
[ ] Performance issue
[ ] Feature request
[x] Documentation issue or request
[ ] Other... Please describe:

Is there any official documentation for the AuthenticationParameters object? I'm writing some team wikis and can't find anything official anywhere... I'm able to find descriptions for some of the values spread widely throughout the docs, like this article about passing state, or this out-of-place doc describing login_hint and domain_hint, and various docs about scopes. But is there any cohesive document the describes each parameter briefly and provides links to more detailed information when available?

This is probably close enough to #818 for both to be resolved in tandem.

@AndrewCraswell @negoe is working on documentation for AuthenticationParameters and hints. They are currently in internal review and we will update this ticket with the corresponding documentation links once published.

Just went through this myself. It looks like the paths are correct in the UserAgentApplication doc, but the HTML preview is still pointing to classes/_authenticationparameters_html instead of modules/_authenticationparameters_.html.

Do we know when this will be on the public docs?   I am trying to convert the ME Control to MSAL based on an ADAL ME Control example and getting quite confused on some stuff!

@jrmcdona We just checked in a docs PR and kicked off a project consolidating all our documentation to be at one place. This effort will reflect in public docs incrementally. Please give us a couple weeks before we close this particular issue.
cc @pkanher617 Please prioritize this issue in the docs effort, I would suggest linking to typedocs in addition to expanding on each parameter in Microsoft public docs.

We have reference docs available here: https://azuread.github.io/microsoft-authentication-library-for-js/ref/msal-core/modules/authenticationparameters.html

Closing, please use the link above to the reference docs (which we will work on improving).


Add the possibility to set a unit for the size of the stick

Hi,
I've encountered a problem after using your lib on desktop / mobile.
The problem is the "px" size is not responsive at all so the stick doesn't react the same on all platforms.
I've changed the lib to add a unit / val in the size parameter to allow any unit on the size of the sticks.
The major problem of this update  is, if you release this, you need to update major, cause old code with old size isn't supported. and with the typescript I can't make a retro-compatibility.
Regards,
Arthur Rouet

Hi there, thanks for this.

I've encountered a problem after using your lib on desktop / mobile.

Do you have an example somewhere I could check?

The problem is the "responsiveness" When you are forced to use px, you can't really make a stick with the same size on every platforms, if you want +-10% on as 1920 * 1080 the size is 190px, but when you test on a mobile 640*360  190 px is like quarter of the screen, so it can be problematic.
And even between different mobiles, there is so many resolution that you can't really have a front that render exactly the same on all mobile.


UI: The timestamp doesn't show in firefox/safari

Chrome is good.

@ibuildthecloud @sheng-liang

Fixed.