Support 64 bit offsets in date-time related DbFunctions

AddMilliseconds and other functions only allows for 2^31 milliseconds, which is only about 24 days.
In a query, which requires millisecond offsets larger than 24 days, you would need something like:
let offsetDays = (long)offsetMillis / 86400000L
let dt= DbFunctions.AddMilliseconds(DbFunctions.AddDays(end, (int)offsetDays ), (int)(offsetMillis% 86400000L))

Is that not in EF6?

As I understand, DbFunctions type is not part of Entity Framework Core,
EF Core works with DateTime methods directly:
https://github.com/aspnet/EntityFramework/blob/1145ef9b3dd46a07a84cb04b11141ecc8bfc62d2/src/Microsoft.EntityFrameworkCore.SqlServer/Query/ExpressionTranslators/Internal/SqlServerDateAddTranslator.cs
which is fine for the API, since DateTime.AddMilliseconds accepts double as it's value argument, and double is capable to represent reasonable range of milliseconds.
But it's not clear if EF Core works around the 32-bit limitation in SQL Server. In SQL server, DATEADD function works with 32 bit int, not 64 bit bigint, that is a problem.
select dateadd(millisecond,<PHONE_NUMBER>, '2017') is maximum what can be achieved.

@george-polevoy, is there any reason not to use the other Add overloads (e.g. DateTime.AddYears()) to get around this? Why does the very big value have to be expressed (solely) in milliseconds?

@roji, the reason for me is that code get's complicated with the workaround you suggest, even for very simple things.
This example only works under for the entire interval of 24 days:
var q = from i in ctx.GenerateLongSequence
    let localStart  = start.AddMilliseconds(i.I * step.TotalMilliseconds),
    let localEnd = start.AddMilliseconds( (i.I + 1) * step.TotalMilliseconds)
// ..

You can see that simple thing turns into a non-trivial date time manupulation to apply the workaround:
var q = from i in ctx.GenerateLongSequence
                    where i.I <= n
                    let startOffsetMillis = stepMillis * i.I
                    let startOffsetDays = (int)(startOffsetMillis / 86400000L)
                    let localStart = DbFunctions.AddMilliseconds(DbFunctions.AddDays(start, startOffsetDays), (int)(startOffsetMillis % 86400000L))
                    let endOffsetMillis = stepMillis * (i.I + 1)
                    let endOffsetDays = (int)(endOffsetMillis / 86400000L)
                    let localEnd = DbFunctions.AddMilliseconds(DbFunctions.AddDays(start, endOffsetDays), (int)(endOffsetMillis % 86400000L))
// ..

We generate Invalid SQL here when we get value which is larger than int range since we are not doing any validation on the arguments value.
We need to decide if we want to tackle with the value or just do client eval.

We will try switching to client eval conditionally if the number would overflow. If the query must be store translated, then it must be written in a way that can be translated.

It's also possible to check whether the number would overflow, and break it down into larger units (e.g. days), in effect doing the non-trivial code sample from this comment. This would allow store evaluation even when the number of milliseconds would overflow 32-bit, but isn't trivial to do.

In case it is useful, this issue was previously reported for EF6 at http://entityframework.codeplex.com/workitem/1627.
Here is my answer from then:

Canonical functions are supposed to be building block-like functions that work well with our target databases. Given that it is very hard to make the argument for having DiffMillisecondsLong as a canonical function.
But because being able to obtain the total milliseconds diff for any arbitrary pair of dates, as well as being able to produce a long timestamp is a generally good scenario, I did some investigation and was able to come up with the following combination of canonical functions that can work for this:

DbFunctions.DiffDays(a, b) < 24 && DbFunctions.DiffDays(a, b) > -24 ?
(long)DbFunctions.DiffMilliseconds(a, b) :
(long)DbFunctions.DiffDays(a, b) * 86400000 +
(long)DbFunctions.DiffMilliseconds(DbFunctions.AddDays(a, DbFunctions.DiffDays(a, b)), b)

It would be nice if there was an easy way to encapsulate this into a reusable thing, e.g. a model-defined function or just a reusable expression that you could easily refer to in a LINQ query, but that is a different feature.

@divega - Should this be bug fix rather than enhancement?


Cloudfront Proof of Concept

Context

Does this issue have a Trello card?

https://trello.com/c/Od3P3oiw/869-use-cloudfront-with-s3

If this is an issue, do we have steps to reproduce?

Intent

What changes are introduced by this PR that correspond to the above card?

swaps the s3 bucket used in dev from drupal-s3-2 to drupal-s3-cf, and turns overnight syncing from prod off. This allows us to test Cloudfront in dev before allow-listing rules are in place without exposing S3 content from the prod environment.
removes the private setting and cache control from the s3 configuration; this is no longer required now we don't use short lived signatures to control access to s3 files.

These changes in tandem with https://github.com/ministryofjustice/cloud-platform-environments/pull/15137 and https://github.com/ministryofjustice/cloud-platform-environments/pull/15152 allow this branch to be deployed to dev where Drupal will then upload content to the new bucket and reference all S3 content either rendered in Drupal's UI or exported to the front end via JSON:API via its Cloudfront address.

Would this PR benefit from screenshots?

No
Considerations

Is there any additional information that would help when reviewing this PR?

Are there any steps required when merging/deploying this PR?

Don't merge this PR.
Checklist

[x] This PR contains only changes related to the above card
[ ] Tests have been added/updated to cover the change
[ ] Documentation has been updated where appropriate
[x] Tested in Development

This work has been superseded by LNP-592


Implement GitHub Actions

You might also want to reference the "build" status in README.md.
I think you need to "activate" GitHub Actions on master after which I can rebase this for testing.
Closes #239.

You might also want to reference the "build" status in README.md.

Don't merge yet. Let me take care of this change.

I removed travis already. Let me know when to merge, @ferigis / @paulo-ferraz-oliveira.

I'm Okay with merging, since I have no further actions on this, at the moment.

…aaaaand merged!


Ability to dynamically change loglevel

At initialization, the loglevel is set based on how the ZITI_AGENT_LOGLEVEL env var is configured.  It is sometimes necessary to increase the verbosity of the logging (for trouble shooting), and then decease it later.  We need the ability to do so without restarting the agent.

I believe this feature was added.

@qrkourier dynamic client-side log-level adjustments shipped a while ago, but this issue is about dynamic changes to the Bootstrapper's log-level


WIP: util: log: Added context to progress-bar

Fixes: #1167
Should be ready for review before next weekly sync

Codecov Report

Merging #1254 (22144fe) into master (3c03add) will decrease coverage by 0.06%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #1254      +/-   ##
==========================================
- Coverage   84.95%   84.89%   -0.07%
==========================================
  Files         174      174
  Lines       10963    10962       -1
  Branches     1821     1821
==========================================
- Hits         9314     9306       -8
- Misses       1280     1288       +8
+ Partials      369      368       -1

Impacted Files
Coverage Δ

dffml/util/log.py
100.00% <100.00%> (ø)

dffml/util/net.py
87.95% <100.00%> (+0.14%)
:arrow_up:

dffml/util/data.py
72.92% <0.00%> (-2.77%)
:arrow_down:

tests/util/test_net.py
98.30% <0.00%> (-1.70%)
:arrow_down:

dffml/noasync.py
78.94% <0.00%> (-1.06%)
:arrow_down:

dffml/base.py
83.81% <0.00%> (-0.29%)
:arrow_down:

dffml/util/testing/consoletest/commands.py
60.74% <0.00%> (-0.09%)
:arrow_down:

dffml/source/df.py
57.62% <0.00%> (ø)

dffml/source/dfpreprocess.py
75.60% <0.00%> (ø)

Continue to review full report at Codecov.

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


Update typespec for ApplicationInsights LiveMetrics

Data Plane API - Pull Request

Trying to onboard my .NET SDK to the new typespec api. https://github.com/Azure/azure-sdk-for-net/pull/42714
I found a few issues that needed to be changed:

edit tspconfig.yaml to support .NET SDK

change package-dir to use fully qualified package name: "Azure.Monitor.OpenTelemetry.LiveMetrics".
change model-namespace to true.

edit models.tsp

update Request document class. change URL type from Uri to string.
This value is recorded after an application receives a request. The url is being recorded to store in telemetry. Using the Uri class here is adding unnecessary allocations and validations.
update KeyValuePairString class. make value property optional.
This change makes the value property settable, which is needed as part of implementing filtering.

regenerated Swagger using cmd npx tsp compile link

API Info: The Basics
Most of the information about your service should be captured in the issue that serves as your API Spec engagement record.

Link to API Spec engagement record issue:

Is this review for (select one):

[ ] a private preview
[x] a public preview
[ ] GA release

Change Scope
This section will help us focus on the specific parts of your API that are new or have been modified. Please share a link to the design document for the new APIs, a link to the previous API Spec document (if applicable), and the root paths that have been updated.

Design Document:
Previous API Spec Doc:
Updated paths:

Viewing API changes
For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.
Suppressing failures
If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
Swagger-Suppression-Process
to get approval.
❔Got questions? Need additional info?? We are here to help!

 Contact us!
The Azure API Review Board is dedicated to helping you create amazing APIs. You can read about our mission and learn more about our process on our wiki.

💬 Teams Channel
💌 email

Click here for links to tools, specs, guidelines & other good stuff
Tooling

Open API validation tools were run on this PR. Go here to see how to fix errors
Spectral Linting
Open API Hub

Guidelines & Specifications

Azure REST API Guidelines
OpenAPI Style Guidelines
Azure Breaking Change Policy

Helpful Links

Schedule a data plane REST API spec review

Checks stuck in `queued` state?
If the PR CI checks appear to be stuck in `queued` state, please add a comment with contents `/azp run`.
This should result in a new comment denoting a `PR validation pipeline` has started and the checks should be updated after few minutes.

/azp run

/azp run

changing this PR to Draft.

We changed the package we're shipping this feature from, so the namespace will change. I'll make this change at a later date.
The change to Request URL will likely come in a new PR with some other changes. I'll coordinate with Benke.
The change to KVP isn't needed.


Keep the load method private after monkeypatching

@ptarjan mind reviewing and merging?

Looks great. I don't have credentials apparently. /cc @metcalf

Happy to merge! Can you confirm that you were able to run Zeus with this code?

@russelldavis: I just landed an integration test on master that should give us at least some confidence in new code. Can you rebase on master so that this PR will run tests?

@metcalf done (I've been running into issues building zeus locally, perhaps we can pair on that quickly tomorrow)


Update test submodule

This is needed to include the moved langtests and unlvtests.
Signed-off-by: Stefan Weil<EMAIL_ADDRESS>

thanks


Cache class creation to improve memory usage and performance

While running analysis on larger binaries we've encountered issues with binja taking up multiple GBs of memory due to new classes being created for each call to various accessors for asm/llil/mlil functions/blocks/instructions. We've seen a significant reduction (50%+) of memory usage by caching these accesses as well as performance improvements, and were wondering if it would make sense to move the caching into the python api as a configurable feature (so we don't need to add wrappers around all the various calls).
This could easily be done by using a cached class decorator (ref) for the various data classes in function.py, lowlevelil.py, and mediumlevelil.py (and perhaps others).
Would be happy to do a PR if you guys think this makes sense to add, caveat being that I am just starting to get familiar with the internals.

Sorry it's been so long to get to responding to this issue. We do agree that a cached class decorator would work. We'd be happy to accept a PR for this issues, as its not a high priority for us.

In terms of the IL instructions, caching is likely to result in potentially unexpected memory use blowup, as those objects hold references to the IL function objects and thus keep the extended analysis information in the core alive until they are garbage collected. You'd very much be at the whims of the caching decorator used and the function/il instruction access pattern as to whether or not it ballooned memory use or not. (For example, an analysis pass that looked at one instruction from a thousand different functions would potentially keep the extended analysis data for all one thousand functions alive until they aged out, and this would be enormously expensive)
On a related note, though, we could have huge efficiency wins by being lazy about parsing out the instruction operands. Right now getting an IL instruction will extract the entire expression tree under it, including all of the operation-dependent operand extraction, which is work we could get away with deferring.
Do you have any finer-grained info on which classes were the biggest offenders? I see some obvious sources of inefficiency for mlil/llil instruction objects, and generally speaking the intention is for things like functions/basic blocks objects to be cheap to just duplicate as those are just references to an object inside the core (which is not duplicated).

A lot has changed since this was first proposed, and we decided to just keep the caches that seemed to result in performance gains and not worry too much about memory usage (since that's easier to increase vs cpu speeds). This probably wouldn't make as much sense for others since it's very much based on our specific use cases, but here are the functions that we currently cache:

MediumLevelILInstruction.ssa_form
MediumLevelILFunction.__getitem__
Function.symbol

We also ended up creating a separate layer between the binja python api and our code to add these caches (instead of modifying the python api itself) and it's a bit hacky to make it work without modifying binja code, so it's probably not a good fit for PR at this point.
Let me know if there's any additional information that would be helpful to know. Thanks!


is it possible to check the password against an stored handshake file on the esp ?!

@BlueArduino20 not even a single word ?!

I think that's not possible. The ESP module is not a powerfull enough

@BlueArduino20  even for a one single password ?

Yeah. Why not testing the password by yourself?

@BlueArduino20 cause we need to make it automated  .... can we do it using js ?

@125K

I think that's not possible. The ESP module is not a powerfull enough

It's possible using js tho.


[No QA] Setup composite run step actions

Round 2 of https://github.com/Expensify/App/pull/4818
Details
Just a POC for composite run steps actions in this repo. A first-step towards a greater suite of improvements in our GH actions and workflows. Created a directory structure like this:
.github/
    actions/
        javascript/
            ... all our existing actions
        composite/
            ... new composite action. Must be a file called `action.yml` inside a directory named for the action.
    workflows/
    ...

Fixed Issues
$ (partial) https://github.com/Expensify/Expensify/issues/195693
Tests

Verify that PR checks pass on this PR.
Merge this PR.
Verify that other GH actions keep working. We'll notice if they don't 🙃
Purposely run a workflow with an action that we know will fail. For example, attempt to manually CP a PR w/ a number that belongs to an issue instead of a pull request. That will definitely fail and should ping in #announce.

QA Steps
None.

Okay, this is ready for review. Verify signed commits is only failing because the path for the action changed and to .github/actions/javascript/verifySignedCommits and that change is not on main yet. I could workaround this by checking in both .github/actions/javascript/verifySignedCommits and falling back on .github/actions/verifySignedCommits, but that doesn't seem worth it because it won't be needed as soon as this PR is merged, and you can tell from the GitHub UI that all these commits are signed 😄

Great, @AndrewGable is OOO for the week so unless anyone else wants to review this, I'll merge it tomorrow

Going to merge this and test it out

I explained why I merged through failing verifySignedCommits in this comment. You can see that the commits are all signed (or else we wouldn't have been able to merge it)

There was an error accessing secrets in the compound run steps actions: https://github.com/Expensify/App/runs/7139321544?check_suite_focus=true

Okay, going to attempt to CP and issue to see if the slack announcement works as expected

Oh, whoops the cherryPick.yml workflow actually doesn't use the the same notification because it says "Failed to CP" instead

🚀 Deployed to staging by @roryabraham in version: 1.1.81-0 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
failure ❌

🚀 Deployed to production by @roryabraham in version: 1.1.82-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


TypeScript typings, issue with 'default'

Hello,
I'm currently trying to use localForage in a TypeScript project. As I've explained in #450 , the way the localForage typings file is currently implemented make it difficult for me to get auto completion.
I can get my IDE to work fine by defining the ambient module using the following syntax:
declare module "localforage" {
	export var localForage: LocalForage;
}

Instead of:
declare module "localforage" {
    var localforage: LocalForage;
    export default localforage;
}

Is the default export really necessary or could would you consider changing this?

I think that it is, since the default instance has to be attached to the
window object automatically when not loaded with a more modern way.

--
Thodoris Greasidis
Computer, Networking &
Communications Engineer

What do you mean by "modern way"?
Currently, I'm using JSPM & SystemJS, thus I would assume that I use a modern way :smile:
Here's the output of my tests:

Without 'default' in the typings as I proposed:

declare module "localforage" {
	export var localForage: LocalForage;
}

and the following import:

import {localForage} from "localforage";

tsc outputs:

var localforage_1 = require("localforage");

2) With 'default' in the typings:

declare module "localforage" {
var localForage: LocalForage;
export default localForage;
}

and the following import:

import {default as localForage} from "localforage";

tsc outputs:

var localforage_1 = require("localforage");

Thus I don't think 'default' in the d.ts file make any difference apart for the way we can write the import (?)

I might be mistaken. Was referring to the default keyword in the .js file not the .ts. Sorry.
If it still matters, as "non-modern/traditional way" I was referring to including localforage in a script tag.

Script what? :D
Yep I'm sure you're right regarding localForage's js code, it certainly needs to have default in the exports.
Okay, I'll open a PR on DefinitelyTyped to propose the typings change and another one against this repository to update the readme.

Actually I overlooked something..
In the generated code, the require statement is as I've described above, but the usages of the associated variables are:

Without 'default' in the typings as I proposed: localforage_1.localforage.setItem("key", "cool");
With 'default' in the typings: localforage_1.default.setItem("key", "cool");

But my proposition remains relevant if I import as follows (the PR in this project needs to be adapted though): const localForage = require("localforage");
When I use require directly in the TS code, the generated code looks as it should: localForage.setItem("key", "cool");
I think this matches the explanations I found there:

http://stackoverflow.com/questions/29596714/new-es6-syntax-for-importing-commonjs-amd-modules-i-e-import-foo-require
http://www.jbrantly.com/es6-modules-with-typescript-and-webpack/ (CommonJS library - ES5 section):

TypeScript does not provide the same compatibility layer when importing CommonJS modules using ES6 syntax. In practice this means that you cannot use the "default import" syntax to import the module.

All done :)

@dsebastien  Hi there. I was recently creating a sample Ionic 2 app (on typescript 1.8) for localForage-cordovaSQLiteDriver and faced some difficulties while trying to import localforage. I ended up using:
declare var require: Function;

const localforage:LocalForage = require('localforage');
const cordovaSQLiteDriver:LocalForageDriver = require('localforage-cordovasqlitedriver');

I'm sure that there is a better way than manually doing declare var require: Function;.
Can you suggest an improvement?

We've had similar problems with PouchDB and TypeScript support recently. Maybe this can help: https://github.com/nolanlawson/pouchdb-ionic-2-typescript-demo
The trick seems to be import * as LocalForage from 'localforage'; apparently just doing import LocalForage from 'localforage' does not work in TypeScript's importer.

Hi Nolan.
Thanks for the example. I'm asking this for a sample ionic2 repo for
localforage-cordobaSqliteDriver, where I already tried:

import * as LocalForage from 'localforage';

But even though the debugger showed that the correct object was imported
and referenced, I couldn't get the typings to work!?
My initial working approach was:
import * as localforageImport from 'localforage';
const localforage:LocalForage = localforageImport as any;
I ended up using the require() call mentioned earlier, after spotting some
docs mentioning that non es6 compliant module systems should stick to the
require() method. Typescript doesn't seem to use any helper method to
normalize the module default export (the way that babel does it) especially
not for the typings.
Thanks again and good morning from Greece.
PS: I think that creating an es6 dist file for localforage could improve
such use cases.

--
Thodoris Greasidis

Hm, that's odd, PouchDB has a CJS export as well, but you can still import * as PouchDB. It might be because we have a jsnext:main as well; I'm not sure.
Also for the typings, it shouldn't matter how you import it, although TBH I have no idea what TypeScript is doing here or what the best approach is.
Did you try var localforage = require('localforage') or import localforage = require('localforage')? TypeScript supports both (the latter being a TS-specific thing apparently).

Yes I tried those as well but I couldn't get automatic type recognition :(
Maybe it's something in my project's configuration. Thanks again.

--
Thodoris Greasidis

I modified the definition in https://github.com/dagatsoin/DefinitelyTyped/commit/024be6ae5426f1b463dc9d5675a86a0098a6ed0b#diff-e5ecc6c06f9fea487c7707db8d1ee5ae
Try this. I had the same problem as you with TS and Meteor.

@dagatsoin Hi there and thanks for the feedback!
Unfortuanately it didn't work for my case, making

import * as localforageImport from 'localforage'; errors with can't find module 'localforage' and
const localforage:LocalForage = require('localforage'); errors with can't find name 'LocalForage'

What's your suggested way to do the import?
@nolanlawson found some time to check the sample ionic 2 pouchdb repo just now.
Unfortunatelly, even after defining some methods for PouchDB, import * as PouchDB from 'pouchdb'; would only let me access PouchDB.default, even though the actual object was strored on the PouchDB variable (as noted by the console.log()).
const PouchDB:PouchDB = require('pouchdb'); worked better for me.

I did
import * as LocalForage from 'localforage'
LocalForage.setDriver([LocalForage.INDEXEDDB, LocalForage.WEBSQL, LocalForage.LOCALSTORAGE]);


MPI for python

Hi Chris,
I added a notebook for an introduction to mpi4py. In case, students are interested, I will be happy to go through it for them.
Thanks,
Mahdi

Thanks Madhi!


IIS interaction

Finally (/sadly) I have to start using .NET core now to host stuff. Been following it for many years but like many others in the IIS support community have been keeping at arms length and seeing how your little project pans out.
Are there any plans for proper IIS interaction for asp.net core stuff?
GUI stuff, similar information/diagnostic tools, WPI install components, etc. Stuff that over the decades I have been used too.

This is probably a question best asked on the aspnet/home repo. Do you want to open another issue there?

Ummh I will but why is this the wrong place. Is this not the place for the asp.net core?
Confused as to 2 projects that have a similar description.......
Can you explain the difference?

Because that's where issues specific to asp.net are tracked and monitored. See the filing specific issues section of the readme. https://github.com/dotnet/core/blob/master/README.md

I have asked over there. I have read the readme still doesn't not explain the difference between what question should be asked where.
I am asking about .net core.
The readme first line is:
"The dotnet/core repository is a good starting point for .NET Core."

@RichLander we should improve the readme so it's easier to know that for asp.net/website specific issues, aspnet/home is the best place to ask questions.

@Rovastar

I am asking about .net core.

I don't think you are. .Net Core does not know anything about IIS. ASP.NET Core does (see aspnet/AspNetCoreModule and aspnet/IISIntegration).
I think this distinction is nothing new: .Net Framework also does not know anything about IIS, ASP.NET does.

Yes the are differences. Finding them is a tricky. I suppose I considered this to be the master project and asp.net to be a sub project of it.
Often .net and asp.net for a decade or more have been mostly interchangeable. Erroneous maybe but for the majority of people out there you will here them used interchangeably.
And .net might not know about IIS but IIS knows about both .net and asp.net.
Anyway I have asked in the other section now.

I think this issue has concluded here. Closing.


compile

I run python3 generate.py configs/demo.yaml
I get  import error : /im2mesh/dmc/ops/_cuda_ext.cpython-35m-x86_64-linux-gnu.so: undefined symbol: _ZN2atErrorCLENS_14SourceLocationERKSs

I'm getting something similar when running python generate.py configs/demo.yaml
ImportError: dlopen(/Users/{my username}/anaconda3/envs/mesh_funcspace/lib/python3.6/site-packages/torchvision/_C.cpython-36m-darwin.so, 2): Symbol not found: __ZN2at19NonVariableTypeMode10is_enabledEv
  Referenced from: /Users/{my username}/anaconda3/envs/mesh_funcspace/lib/python3.6/site-packages/torchvision/_C.cpython-36m-darwin.so
  Expected in: flat namespace
 in /Users/{my username}/anaconda3/envs/mesh_funcspace/lib/python3.6/site-packages/torchvision/_C.cpython-36m-darwin.so

How do I fix this?

This is usually caused by environment version changes(e.g. python/pytorch version) after library compilation. You may try to delete the compiled binaries and recompile again.

@JiamingSuen Thank you for your answer, but I don't understand the environmental version change.

could you say what version of PyTorch and CUDA this code works with? I've tried by deleting all build and cache files and compiling Pytorch (and torchvision) from source, and using both clang/clang++ and gcc/g++ on MacOS 10.13.6 with CUDA 10.0 but always get the above 'symbol not found' error when trying to run generate.py


[ko]Translate docs/tasks/job/pod-failure-policy into Korean

What would you like to be added
Translate website/content/en/blog/_posts/2018-05-29-announcing-kustomize.md into Korean.
Why is this needed
It's not translated yet.
Comments

Page to Update : https://kubernetes.io/blog/2018/05/29/introducing-kustomize-template-free-configuration-customization-for-kubernetes

/language ko
/assign

/area blog

/close this issue, since the PR was merged to kubernetes:dev-1.27-ko.1 branch.

/close
Closing this issue, since the PR was merged to kubernetes:dev-1.27-ko.1 branch.


Move data.ts collections to Maps

This is an "Issue" for what is included in version 6.0.0
Move collections to use Map<T, S>
These Changes can be found in branch r6/master

[x] methods (6.0.0-3)
[x] schema (6.0.0-8)
[x] models (6.0.0-7)
[x] virtuals (6.0.0-4)
[x] hooks (6.0.0-2)
[x] plugins (6.0.0-5)
[x] constructors (6.0.0-6)

Closed - because all listed tasks/features are implemented in 6.0.0


add a link to repository with already generated xtts voice samples

i was looking for samples of all the xtts voices while researching for potetial backends and could not found it, so I generated them and put them in a repo
you python script does the same but only after already setting everything up...maybe its useful to listen to examples before investing the time

that's useful.  is there anything like this for the regular vits voices (a list with samples?)


(mkdocs) Package fails if older version of pip is installed

👋 Hi,
It seems like the mkdocs package throws some kind of exitcode if the installed version of pip is outdated. choco install mkdocs goes fine, but at the end, it prints
"You are using pip version 9.0.1, however version 19.1 is available.", "You should consider upgrading via the 'python -m pip install --upgrade pip' command.

This is failing the installation. Have also tried running
choco install mkdocs --ignore-package-exit-codes

With same result.
Expected Behavior
Package should not break install on non-critical message from pip.
Current Behavior
choco install mkdocs
Chocolatey v0.10.11
Installing the following packages:
mkdocs
By installing you accept licenses for the packages.
Progress: Downloading mkdocs 1.0.4... 100%

mkdocs v1.0.4 [Approved]
mkdocs package files install completed. Performing other installation steps.
The package mkdocs wants to run 'ChocolateyInstall.ps1'.
Note: If you don't run this script, the installation will fail.
Note: To confirm automatically next time, use '-y' or consider:
choco feature enable -n allowGlobalConfirmation
Do you want to run the script?([Y]es/[N]o/[P]rint): y

Requirement already satisfied (use --upgrade to upgrade): mkdocs==1.0.4 in c:\programdata\chocolatey\lib\python3\tools\lib\site-packages
Requirement already satisfied (use --upgrade to upgrade): click>=3.3 in c:\programdata\chocolatey\lib\python3\tools\lib\site-packages (from mkdocs==1.0.4)
Requirement already satisfied (use --upgrade to upgrade): Jinja2>=2.7.1 in c:\programdata\chocolatey\lib\python3\tools\lib\site-packages (from mkdocs==1.0.4)
Requirement already satisfied (use --upgrade to upgrade): Markdown>=2.3.1 in c:\programdata\chocolatey\lib\python3\tools\lib\site-packages (from mkdocs==1.0.4)
Requirement already satisfied (use --upgrade to upgrade): livereload>=2.5.1 in c:\programdata\chocolatey\lib\python3\tools\lib\site-packages (from mkdocs==1.0.4)
Requirement already satisfied (use --upgrade to upgrade): tornado>=5.0 in c:\programdata\chocolatey\lib\python3\tools\lib\site-packages (from mkdocs==1.0.4)
Requirement already satisfied (use --upgrade to upgrade): PyYAML>=3.10 in c:\programdata\chocolatey\lib\python3\tools\lib\site-packages (from mkdocs==1.0.4)
Requirement already satisfied (use --upgrade to upgrade): MarkupSafe>=0.23 in c:\programdata\chocolatey\lib\python3\tools\lib\site-packages (from Jinja2>=2.7.1->mkdocs==1.0.4)
Requirement already satisfied (use --upgrade to upgrade): six in c:\programdata\chocolatey\lib\python3\tools\lib\site-packages (from livereload>=2.5.1->mkdocs==1.0.4)
You are using pip version 7.1.2, however version 19.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

The install of mkdocs was NOT successful.
Error while running 'C:\ProgramData\chocolatey\lib\mkdocs\tools\ChocolateyInstall.ps1'.
 See log for details.

Chocolatey installed 0/1 packages. 1 packages failed.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

Failures
 - mkdocs - Error while running 'C:\ProgramData\chocolatey\lib\mkdocs\tools\ChocolateyInstall.ps1'.
 See log for details.

Possible Solution

Steps to Reproduce (for bugs)
Have a system with older version of pip, then run chocolatey install mkdocs.
Context
We have some 10 buildservers we provision out with Ansible and Chocolatey, using state=latest to pick latest version of mkdocs. We should be able to pick latest version of mkdocs without upgrading pip first.
Your Environment

1.0.4
Windows 10, Windows Server 2012 R2, Windows Server 2016
Chocolatey version 0.10.11

I'm unable to reproduce this with a standard installation of chocolatey.
So I believe that most likely you have the the feature failOnStandardError enabled (or possibly some other feature I can't think of right now).
By default, chocolatey only marks the installation as failed if an exit code of anything other than zero is set in this package (which don't seem to be the case in my tests), or if the previously mentioned feature is enabled (or the argument --failonstderr is used) when anything is written to the error output.

Most likely, the chocolatey logs (C:\ProgramData\chocolatey\logs\chocolatey.log) should tell you more about why the installation was considered a failure

Yeah looks like you are correct. From the logs:
Features.FailOnStandardError='True'|Features.UsePowerShellHost='True'|

Just to be clear, --ignore-package-exit-codes and --failonstderr have nothing to do with each other right? Might be what I missed then.

That is correct. The only thing that --ignore-package-exit-codes do, is to instead of chocolatey returning the exit codes gotten from the package, it will instead return either 0 or 1. That is the only thing that argument do.


Add Support for MOD-100 humidifier

Is your feature request related to a problem? Please describe.
I have bought the humidifier mod-100, sadly there is no plugin that supports this device
Describe the solution you'd like
the ability to turn on low or high dust and to turn on the light. You can also change the brightness and color of the light with the meross app, but this is not necessary i guess.
Describe alternatives you've considered

Additional context
Thank you for your work, without people like you such things would not be possible!

Also there was already a really detailed thread about this, but it got closed automatically.
https://github.com/donavanbecker/homebridge-meross/issues/267


update grafana and use Openshift option

@kahootali Chart: grafana Dry Run successful

@kahootali Chart: grafana-storage Dry Run successful


Weird currency output when using translations

Bug report
Preconditions
1. master branch.

Steps to reproduce

Expected result
Tell us what should happen.
it should return € in this case instead of US$

this also occurs in the admin interface, @rahulshukla-webkul if you have some spare time could you check this please?

So i found the root cause of this issue when you define in the .env file APP_CURRENCY=EUR and that currency isn't added to the default channel then it will display US$ in front of each price.

Implemented in #2551 PR


Add support for Gitlab state backend

Description
I would be great to support Gitlab and Azure blob as IaC sources in order to be able to scan remote state from them.
Example
$ driftctl scan --from tfstate+gitlab://MyProjectID/terraform/state/terraform.tfstate

Some background on GitLab's HTTP Terraform backend:  https://docs.gitlab.com/ee/user/infrastructure/terraform_state.html

Thanks for your interest for driftctl ! As I previously answered there https://github.com/cloudskiff/driftctl/issues/176#issuecomment-770721290 you can use terraform state pull as a workaround at the moment 😉

Hey @lamienois can you confirm that the newly released driftctl v0.7.0 with HTTP backend support fixes your use case? (git ref is https://github.com/cloudskiff/driftctl/issues/176)
If it does, we should add a gitlab example soon (https://docs.driftctl.com/0.7.0/usage/cmd/scan-usage#--from)

The example is now live on the main branch https://docs.driftctl.com/next/usage/cmd/scan-usage#http--gitlab

Closing this since it has been fixed in v0.7.0. @lamienois feel free to reopen if you encounter issues with the HTTP backend.


Static api documentation

updated images to correct dataPointer indices

No need to create a second pull request for this, as your last PR has also been updated with this latest commit.


Support for Join reordering

This PR adds support for join reordering, or join associativity, to the optimizer. Supports the reordering of joins of the form (A x B) x C  ---->  A x (B x C).
Note: Small optimizer reformatting from another uncommitted PR are also present in this PR. Might be worth to just lump them in with this PR, but probably best to separate them.
TODO:

Add test case to assure predicate redistribution correctness
Separate this PR from the other formatting PR (I suck at git sorry (¯\_(ツ)_/¯)

Please mark as in progress

Coverage increased (+0.1%) to 76.99% when pulling 3601050ad484611866928b2038dc50b9da3cf85a on GustavoAngulo:join-reordering into ab16393d87833b0b580dfac38b9503cb44022de6 on cmu-db:master.


Fix segments upload retry regression introduced in PR #7119

Description
Fix segments upload retry regression introduced in PR #7119
Related Issues
Resolves #8631

Check List

[x] New functionality includes testing.

[x] All tests pass

[x] New functionality has been documented.

[x] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff
[ ] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@sachinpkale @gbbafna @raghuvanshraj @vikasvb90  can you review the fix?

Changes LGTM.

Running the tests in RemoteStoreRefreshListenerTests class for 100 iterations. 40 iterations have passed and it is ongoing.


Feature/one loop

Use only one loop over the JSON.

Incidental:

Improve formatting slightly (right-align cities, emphasize avail)
If slots available, print out the booking url
Moved get_args() out of main().
Used f-strings in a few places.

Tested command line.  Might need a basic test suite.

Argh - thought these were on two separate branches to ease review.

Whitespace: smallest commit, allows --cityfile
OneLoop: took 3 tries. Uses a single loop in main(). Incidental changes not  necessary for that: mostly formatting, moving parser to get_args().


The issue about baseUrl option in  vue.config.js

Version
3.0.0-rc.10
Node and OS info
nodejs v8.11.3,windows7
Steps to reproduce
Add the baseUrl option into vue.config.js ,then  do npm run serve, and then has many errors in browser.But when I remove the baseUrl option,No more Errors.

What is expected?
No errors
What is actually happening?
errors

same issue, Is baseUrl a replacement for publicPath?

Cannot reproduce on Windows 10. Make sure you are using latest RC.


Add flap detection to circuits

This PR adds flap detection based on the algorithm used by nagios.

This branch looks interesting / useful to me! Did you decide not to pursue it for a particular reason? Thanks!


#issue 41 - Soundpool feature successfully implemented.

Enhancement Issue
Added Soundpool , it plays a short ringtone ,whenever the user inserts or updates the notes .
Changes proposed
The media plays in coroutine , as it may take little bit long time to end. Thus avoiding the cause of delay of UI threads.

It is not necessary, and please submit a pull request only after the issue has been assigned to you.

Yes sir, I will remove it.
On Sat, May 27, 2023, 2:39 PM Suryansh Prajapati @.***>
wrote:

It is not necessary, and please submit a pull request only after the issue
has been assigned to you.
—
Reply to this email directly, view it on GitHub
https://github.com/Suryansh1720001/Taaveez/pull/42#issuecomment-1565298569,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWYXRHVJVSBNTKDGACPXG23XIHAGDANCNFSM6AAAAAAYQQ7HNI
.
You are receiving this because you authored the thread.Message ID:
@.***>


Implementation of labeled control statements.

Fixes #377 implementing break statements with or without loops
Fixes #379 implementing labeled continue statements on loops
Added new grammar, new node, and configured while, for, and for enhanced loops to consider labels.

So scrutinizer is again complaining he wants the variables set from grammar to be properties.


Interstitial ads not show on IOS

I use
AdMobInterstitial.setAdUnitID('your-admob-unit-id');
AdMobInterstitial.setTestDeviceID('EMULATOR');
AdMobInterstitial.requestAd(AdMobInterstitial.showAd);

on Android worked fine, but IOS is not.
interstitialDidLoad is ok.
Banner ads is ok.
    "react": "16.0.0-alpha.12",
    "react-native": "0.45.1",
    "react-native-admob": "^1.3.0",

You should use it like this:
AdMobInterstitial.requestAd(() => AdMobInterstitial.showAd());


[BEAM-12898] Trying out solution suggestion for JENKINS-66189 to solv…

…e problem that postBuildScript not running
Suggestion coming from https://stackoverflow.com/questions/68551832/jenkins-publishers-postbuildscripts-doesnt-work/68560403#68560403

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

run seed job

R: @ibzib @aaltay

LGTM
In case you didn't see it, I did the same thing for the other file that used post build scripts: #15547

thanks, is it working as expected?

LGTM
In case you didn't see it, I did the same thing for the other file that used post build scripts: #15547

thanks, is it working as expected?

Yes, it is. I already tried it using a manual trigger. Please review that PR too when you get a chance.

Thank you both! If this is working, could we re-enable the load tests?


Error downloading database

Describe the bug
Cannot download the database.
To Reproduce
Steps to reproduce the behavior:

Go to 'JLCPBC Tools'
Click on 'Download'
See error
Failed to download the JLCPCB database, HTTPSConnectionPool(host='jlc.bouni.de', port=443): Max retries exceeded with url: /parts.zip (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f2fb3841fd0>: Failed to establish a new connection: [Errno -2] Name or service not known'))

Expected behavior
The database to be downloaded.
KiCad Version
Application: KiCad x86_64 on x86_64

Version: 7.0.8, release build

Libraries:
	wxWidgets 3.2.2
	FreeType 2.13.2
	HarfBuzz 8.2.1
	FontConfig 2.14.2
	libcurl/8.4.0 OpenSSL/3.1.3 zlib/1.3 brotli/1.1.0 zstd/1.5.5 libidn2/2.3.4 libpsl/0.21.2 (+libidn2/2.3.4) libssh2/1.11.0 nghttp2/1.56.0

Platform: Manjaro Linux, 64 bit, Little endian, wxGTK, KDE, x11

Build Info:
	Date: Sep 30 2023 23:32:18
	wxWidgets: 3.2.2 (wchar_t,wx containers) GTK+ 3.24
	Boost: 1.83.0
	OCC: 7.6.3
	Curl: 8.3.0
	ngspice: 41
	Compiler: GCC 13.2.1 with C++ ABI 1018

Build settings:
	KICAD_USE_EGL=ON
	KICAD_SPICE=ON

Must be something local at your machine.
I used it a few time yesterday and today on two different machines at two different locations and always downloaded the database with a success.

@dfear You most likely have an old version of the plugin installed. The database files comes directly from GitHub nowadays.

No feedback, will close this one


Feature request:

Description of feature/enhancement
Using
brew cask install --local libreoffice
I would like to install libreoffice into ~/Applications in a similar way that
brew linkapps [--local] [formulae]:
Find installed formulae that provide .app-style macOS apps and symlink them
into /Applications, allowing for easier access.
If no formulae are provided, all of them will have their apps symlinked.

If provided, --local will symlink them into the user's ~/Applications
directory instead of the system directory.

does
Justification
I don't have admin access to /Applications
Example use case
brew cask install --local libreoffice

Use --appdir.

Thanks


Remove deprecation of phpunit for assertContains

btw I left on on the SeekExceptionTest.. because of this: https://github.com/guzzle/guzzle/pull/2162

Thank you


Roadmap v0.6

Redesign new Catalog, Binder, and Planner and then finish previous features:

new planner & create table & insert table:

[x] #96
[x] #98
[x] #101

select statement:

[x] #103
[x] #106
[x] #108
[x] #120
[x] #133
[ ] #134
[ ] #152

other statements:

[x] #137
[x] #149

pragma & table function:

[x] #110
[x] #115
[x] #113
[x] #118
[x] #138

function:

[x] #121
[x] #123
[x] #128
[x] #126

others:

[x] #111
[x] #131
[x] #142

He seems to be a cool thing, I can contribute well, I am a rust beginner, working in big data, interested in databases

He seems to be a cool thing, I can contribute well, I am a rust beginner, working in big data, interested in databases

Cool! This project is developing planner v2 that similar to duckdb. A few months ago i was migrating v1 functions but still left some operators.
If you're interested in this part, table function and scalar function are good first issues to start. Any questions can ping me on github.

He seems to be a cool thing, I can contribute well, I am a rust beginner, working in big data, interested in databases

Cool! This project is developing planner v2 that similar to duckdb. A few months ago i was migrating v1 functions but still left some operators. If you're interested in this part, table function and scalar function are good first issues to start. Any questions can ping me on github.

Thank you for your reply. I am still learning rust. I will try it after the holidays.

@Fedomn Hi, I've been learning rust for a while and I think I can start trying this part of the job, but I'm not very confident and it may take time

I would like to ask what is the future orientation or goal of this project, which will determine whether it is a project worth investing in

I would like to ask what is the future orientation or goal of this project.

Sorry for the late reply, work has been too busy recently.
So, my current understanding this project is basically a playground for a query engine. You can try out fun ideas or experiment here, like subqueries and pipeline execution, because it's currently quite simple.
In the long term, I hope it could be a library that can be integrated into other programs, giving them efficient querying abilities.

I would like to ask what is the future orientation or goal of this project.

Sorry for the late reply, work has been too busy recently. So, my current understanding this project is basically a playground for a query engine. You can try out fun ideas or experiment here, like subqueries and pipeline execution, because it's currently quite simple. In the long term, I hope it could be a library that can be integrated into other programs, giving them efficient querying abilities.

Thank you for your reply and I hope I can also contribute to this project


Filepicker field folder other than @self, @theme: or @page:

Hello,
is it possible to define a folder for filepicker field other than @self, @theme: or @page:?
Let's say I have a page with modular pages underneath. Is it possible to define a filepicker for the modular pages such as @self.parent to pick files available of parent page?
Cheers,
funktionaer

You cannot pick parent page, but the field also accepts streams like theme::// or user-data://

i achieved this with user://pages/pagefolder, but it breaks if you make any changes to the numeric prefix.

@dani-ooo For that there is @page:/pagefolder.


Could you please include llvm-link, llc and opt?

Could you please include the above files via "clang-tools-extra"?  Our build system relies on those to do link time optimization.
Or are those steps completely outdated?

Those tools are part of the llvm build, not clang-tools-extra which includes tools like clangd. We currently filter out these tools from the build as they are usually regarded as developer tools not designed for end-users. In the short term if you want to add these to the build then you can edit the top-level CMakeLists.txt file to add them.
set(LLVM_DISTRIBUTION_COMPONENTS
    clang-format
    clang-resource-headers
    clang
    dsymutil
    lld
    llvm-ar
    llvm-config
    llvm-cov
    llvm-cxxfilt
    llvm-dwarfdump
    llvm-nm
    llvm-objcopy
    llvm-objdump
    llvm-profdata
    llvm-ranlib
    llvm-readelf
    llvm-readobj
    llvm-size
    llvm-strip
    llvm-symbolizer
    LTO
    CACHE STRING ""
)

In theory you shouldn't need to use those tools for LTO as bitcode files can be presented directly to the linker LLD. This will call the LLVM code-generator on the bitcode files automatically. Essentially acting as llvm-link, opt and LLC in one go. I can see that rolling your own pipeline with llvm-link, opt and LLC may give you more flexibility, for example if you need to have several disjoint sets of bit-code files that are optimised together into multiple ELF files, whereas LLD will deal with all the bit-code files in one go.

Thanks for the hint.  I will check my build chain if it outputs similar image sizes without the additional llc/llvm-link/opt steps.
Nevertheless for completeness could you please add the three tools?

Ok, i have played around with link time optimization and found out that it does not equal my previous buildchain which includes llvm-link, opt and llc.  It actually breaks it.
Differences are:

llvm-link/llvm-llc reliably throw away unused symbol references, while standalone lld does not (it insists on referenced symbols from unused functions)
output image is much larger, llvm-link/opt/llc create an image size for my application of 425472 bytes while lld alone outputs 639056 bytes.  Significant difference!

I'm passing the following hopefully meaningful arguments to standalone lld:
-Wl,--icf=all -Wl,-O99 -Wl,--lto-newpm-passes=999 -Wl,--lto-O3 -Wl,--lto-partitions=999 -Wl,--lto-whole-program-visibility -Wl,--nostdlib -Wl,--orphan-handling=place -Wl,--warn-unresolved-symbols
So I think llvm-link/llc/opt are not just playground for compiler developers.

At the moment the best I can do is say we'll take that under consideration.  As mentioned before these tools can be put back by editing the CMakeLists.txt if you want to do that.
The prime reason for not just adding everything from LLVM is not that the developer-facing tools are not useful, it is that their user-interface is considerably less stable than the user-facing tools. While these don't get changed often, using them carries a much greater risk of breaking changes being made by the LLVM developers. I think if we did want to do this we may want to consider putting them in a separate directory from bin to emphasise that.
It may be worth investigating why lld is giving worse results. Some thoughts:

The optimization levels for LTO via LLVM are a bit confusing, there is the LTO optimization level and the Code Generator optimization level. For example clang -emit-llvm file.c -o file.bc will embed optnone which will prevent LTO from optimizing. I'd make sure you are using clang -flto for both the compile and link lines. FWIW there is a --lto-O= that defaults to 2, but can go as far as 3 to make it more aggressive. Recently (too recently for the binary relases) a --lto-CGO= has been added to override the optimization level used when compiling. These are lld options so you'll need to pass them via -Wl,--lto-O=3 if using clang linker driver (https://reviews.llvm.org/D141970).
If your program is C++ then the lld option --lto-whole-program-visibility can enable more aggressive devirtualization.
Unrelated to LTO LLD itself has some size optimizations -O2 --icf=safe --gc-sections.

Thank you Peter for the hint.  Adding -flto did the trick:  lld does now LTO (and the options from above became obsolete).
But... there's always a but... LTO of lld seems to be very aggressive.  Especially extra sections are endangered to be dropped or the optimized code even becomes invalid.  Examples:
In my firmware image there is a git hash at a fixed address.  The git hash and the version are generated in the Makefile like this:
	$(ECHO) -e '__attribute__ ((section (".gitHash"))) char gitHash[] = $(GIT_HASH);' '__attribute__ ((section (".ehVersion")))   volatile unsigned long ehVersion   = $(COMMON_EH_VERSION);' | $(CLANG) -c -x c $(C_AND_CXX_FLAGS) -o $(OBJECT_DIRECTORY)/gitHashEhVersion.o -

The volatile is required because otherwise LTO directly replaces the ehVersion value as an immediate value in the code and drops the section.  Not as intended, because the address map becomes mixed up.
Also both variables have to be referenced, otherwise the section is dropped.  Section definition:
        KEEP(*(.ehVersion))
        KEEP(*(.gitHash))

BTW even --no-gc-sections does not help to prevent this.
The other even worse thing is, that LTO converts a while-loop into a do-while-loop, because it "thinks" that the loop does at least one run, which unfortunately is wrong.  The thing has again to do with special sections.  In this case handler addresses (the number of (user) handlers is not known to the SDK) are put into a special segment and if some event happens, then a function with a while-loop iterates over the special section and calls the handlers.  If there is no handler defined, the bad thing happens.
Code fragment:
static void sdh_state_observer_notify(nrf_sdh_state_evt_t evt)
{
    nrf_section_iter_t iter;

    NRF_LOG_DEBUG("State change: 0x%08X", evt);

    for (nrf_section_iter_init(&iter, &sdh_state_observers);
         nrf_section_iter_get(&iter) != NULL;
         nrf_section_iter_next(&iter))
    {
        nrf_sdh_state_observer_t    * p_observer;
        nrf_sdh_state_evt_handler_t   handler;

        p_observer = (nrf_sdh_state_observer_t *) nrf_section_iter_get(&iter);
        handler    = p_observer->handler;

        handler(evt, p_observer->p_context);
    }
}

sdh_state_observers is in a special section:
  .sdh_state_observers :
  {
    PROVIDE(__start_sdh_state_observers = .);
    KEEP(*(SORT(.sdh_state_observers*)))
    PROVIDE(__stop_sdh_state_observers = .);
  } > FLASH

The users application puts handler references into the special section via some macros.
__start_sdh_state_observers and __stop_sdh_state_observers are TMO not taken into account by LTO and for unknown reason LTO assumes __start_sdh_state_observers != __stop_sdh_state_observers.
opt BTW does only the second bad thing but not the first one.  Nevertheless I'm currently using neither LTO nor opt because of this.  But llvm-link and llc are required for the build chain.
I've played a lot with lld/opt options but to no avail.  Any hint is really appreciated.
BTW: above code is from the Nordic SDK, the bad behavior did not exist with clang 13.

Checked something more:

bad case (1) happens with all -Wl,--lto-Ox
bad case (2) appears with -Wl,--lto-Ox, x>=2

Not sure I can help too much. There are known limitations for LTO with embedded systems, particularly with linker scripts as some of the assumptions LTO makes don't always hold. In particular preservation of named sections, not optimizing across output section boundaries. There have been some downstream attempts to remedy this, but no-one yet has decided to upstream the changes. If you are interested in some references I'll put some at the end.
LTO code-generation will assume that it has knowledge of the whole program. The static linker (lld) will tell the code-generator to preserve certain symbols https://github.com/llvm/llvm-project/blob/main/lld/ELF/LTO.cpp#L259 , this usually means references from outside the bitcode files, but can include _start and _stop symbols too. This is independent of gc-sections, which will run after LTO code-generation. For things like the .githash section that are not referenced by any part of the program I recommend not compiling with -flto or -emit-llvm. Instead just compile them to a standard ELF file. It is permitted to mix ELF and bitcode on the same link line. If you must pass code like .githash into LTO you will need to prove to the LTO code generator that it is used, I think you have worked out how to do that.
I don't have enough context to help with the for loop transformation. The code fragment has a for loop and not a while loop and doesn't refer to __start_sdh_state_observers and __stop_sdh_state_observers. It looks like LLD will tell LTO to preserve _start and _stop symbols but I don't think that would cause the code generator to infer that __start and __stop were not equal.
My suggestion to proceed is to try and make a stripped down example, i.e. can you reproduce with just a small bit of code and linker script and then raise an issue in the llvm-project https://github.com/llvm/llvm-project . LLD does have a --reproduce= which will produce a tar archive containing all the dependencies and command line options to reproduce the link.
GSOC code to improve symbol dependency:
https://discourse.llvm.org/t/richer-symbol-dependency-information-for-lto/60335
LLVM dev meeting talks:

https://www.youtube.com/watch?v=hhaPAKUt35E
https://www.youtube.com/watch?v=OkGsMrVd2y8

I have created a simple test program (https://github.com/rgrr/playground/tree/feature/llvm-games/llvm-games/broken-lto).
It seems that this is not LTO related: it is a bug/problem in the optimizer.  In my project it rears up only while doing global optimizations, i.e. either lld or opt.  In the test program it already shows with simple compiler optimizations enabled.
I will open an issue at the llvm-project.

I believe no further action is required for this project so closing.

Hmmm... not happy with that.  llvm-link, llc and opt are still not included.
Sorry that the discussion got a little bit diverted.

Sorry, I missed the bit where Peter said we might consider adding the tools under a different directory. Thanks for raising llvm/llvm-project#61173 - I think fixing that is the right solution. I personally don't think adding internal tools would be appropriate, but I'll reopen the issue since that's still up for discussion.


Lobster reporting to CMS Dashboard as an  "unknown" submission tool

Looking at the dashboard, it seems lobster started reporting itself as an "unknown" submission tool rather than "lobster" at some point in March.
There were many changes to dash.py that month so I guess one of those changes made that.

Could it be this?
https://github.com/matz-e/lobster/commit/41a5d050878414afb854d2a933bcb8b036090075#diff-44bb4af3de5f98f04b709841526f0348L163
That's the first change I found after the start of March involving telling the dashboard about "lobster").

There's also this:
https://github.com/matz-e/lobster/commit/2669630507a08dcdf1858ce22753d83335b960e2#diff-44bb4af3de5f98f04b709841526f0348L182

Also missed this one:
https://github.com/matz-e/lobster/commit/17900820868e555057529c5c3206e066374dd585#diff-44bb4af3de5f98f04b709841526f0348L144

OK, I'm out.  Can someone with dashboard knowledge look at those changes and suggest which, if any might explain the loss of Lobster as the tool?

@klannon I have a look as soon as my projected quota for writing are satisfied with a week-long buffer again.

Also, it seems like I committed this "crime"…

Dashboard hasn't existed for years.  Closing...


Add translations for ember-validations

Required strings for ember-validations to be translated as well 👍
cc @HospitalRun/core-maintainers

Looks good as well.  Going to merge.


fontSize bug

hello, i set the fontSize props,but it doesn't work.

const aquamark = new Aquamark({
content:"TEST RUNNING",
rotate:-25,
font:{
color: "#FFFFFF",
fontSize: 64,
},
})
aquamark.init()

thanks for your issue.  I'll need some time to fix it, as there is another bug when the fontSize is set to 66px, which is too large.  Nonetheless, you can proceed by setting up the full font props first to ensure it works.
const mark = new Aquamark({
  content: "TEST RUNNING",
  rotate: -25,
  font: {
    color: "#FFFFFF",
    fontSize: 64,
    fontWeight: "normal",
    fontStyle: "normal",
    fontFamily: "normal",
    textAlign: "center",
  },
})
mark.init()


ci(docker): Add tests for arm64

Put an x into the box if that apply:

[ ] This PR introduces breaking change.
[ ] This PR fixes a bug.
[ ] This PR adds new functionality.
[x] This PR enhances existing functionality.

Description of your changes
Subset of #636 which we can easily merge now

@MaxymVlasov as far as I can see your 'arm' test is still building AMD.  The docker info is showing client/server amd, the buildkit/buildx config is amd, the --platform on the build command is amd.  I can't see anything in that workflow that is forcing an arm build.

This PR is included in version 1.88.1 :tada:


Update so that cursor size/type/isblinkingallowed get restored when switching back to main buffer from alt buffer

Summary of the Pull Request
When switching to a application that uses the alt buffer,  the cursor continues to use the alt buffer applications cursor type when switched back to the main buffer.
I think that this is from this logic in Terminal::UseMainScreenBuffer().
https://github.com/microsoft/terminal/blob/378b6594bd94cf3b27f4e309a11efe25d83de0d9/src/cascadia/TerminalCore/TerminalApi.cpp#L276-L287
Based on these comments,  I made the updates in AdaptDispatch::CursorRestoreState where it looked like it was restoring the cursor position.
https://github.com/microsoft/terminal/blob/378b6594bd94cf3b27f4e309a11efe25d83de0d9/src/cascadia/TerminalCore/TerminalApi.cpp#L271-L275
https://github.com/e82eric/terminal/blob/91fed9ca3c7b9a89612a7ab9569330a642684a84/src/terminal/adapter/adaptDispatch.cpp#L540

References and Relevant Issues
Detailed Description of the Pull Request / Additional comments
Validation Steps Performed
PR Checklist

[ ] Closes #xxx
[ ] Tests added/passed
[ ] Documentation updated

If checked, please file a pull request on our docs repo and link it here: #xxx

[ ] Schema updated (if necessary)

@j4james is usually The Guy to weigh in on things like this

As @tusharsnx noted above, DECSC and DECRC are defined in the DEC documentation, and there is no mention of the cursor style being saved and restored by those sequences (both the VT510 and the VT520/525 manuals say the same thing).
And private mode 1049 is defined by XTerm with reference to DECSC and DECRC.

When set: Save cursor as in DECSC, xterm. After saving the cursor, switch to the Alternate Screen Buffer, clearing it first.
When reset: Use Normal Screen Buffer and restore cursor as in DECRC, xterm.

I also had a look through my terminal collection, and other than Kitty and WezTerm, the only other terminal I could find that restores the cursor style with DECRC is PangoTerm.
Given the evidence above, I'm fairly certain our existing behavior is correct as is.

As @tusharsnx noted above, DECSC and DECRC are defined in the DEC documentation, and there is no mention of the cursor style being saved and restored by those sequences (both the VT510 and the VT520/525 manuals say the same thing).
And private mode 1049 is defined by XTerm with reference to DECSC and DECRC.

When set: Save cursor as in DECSC, xterm. After saving the cursor, switch to the Alternate Screen Buffer, clearing it first.
When reset: Use Normal Screen Buffer and restore cursor as in DECRC, xterm.

I also had a look through my terminal collection, and other than Kitty and WezTerm, the only other terminal I could find that restores the cursor style with DECRC is PangoTerm.
Given the evidence above, I'm fairly certain our existing behavior is correct as is.

@j4james that makes sense,  I think this can be closed.
Just out of curiosity,  am I right that "`e7" doesn't send a DECSC in PowerShell?  Is there a way to actually send that?

Just out of curiosity, am I right that "`e7" doesn't send a DECSC in PowerShell?

No, it definitely should work. Simple test case: "`e7`e[31m   RED`e8NOT"

Although if you're using conhost rather than Windows Terminal, and you're on Windows 10, then you're likely using a version that's many years out of date, so you may be running into some bugs in the original DECSC implementation.
And if you're debugging Windows Terminal, you're not going to get a breakpoint in AdaptDispatch::CursorSaveState, because the DECSC is not handled at that level. You would need to debug the underlying conhost instance, by attaching to the appropriate OpenConsole process. But for VT development you're generally better off just running OpenConsole directly.

Thanks for the discussion all! I think we all learned something about well-defined standards (and the lack thereof) 😄

@tusharsnx @j4james @zadjii-msft thank you for walking me through all of this.  I learned a lot from it.


erasure coding test vectors

This is test vector build from https://github.com/paritytech/erasure-coding/pull/15.
See TODO section of README for a few unknown.

Hi @cheme -- we are seeing differences between JAM's graypaper and Parity's implementation, manifested in the test vectors.

JAM graypaper
Parity implementation (serialized)
Parity implementation (encode/decode)

Shard Size
2 bytes
12 bytes (src)
192 bytes (src)

K (original data)
342 shards
341.3333 shards (≈ 342)
342 shards

Original Data Size (Shard Size * K)
648 bytes
4096 bytes
65664 bytes

N (codewords)
1026 shards
1026 shards
1026 shards

As the table shows, the "shard" was originally defined as "two octets" in Appendix H, which is equivalent to two bytes. However, the Parity implementation uses a different size, possibly due to the algorithm and package limitations.  The "K (original data)" and "N (codewords)" under both Parity's Implementation columns do not follow the definitions provided in the original paper. Instead, they likely refer to the number of original data shards and encoded data shards, respectively.
Can you explain this discrepancy?
Same Source, Same Limitations:  Both ordian/reed-solomon-simd (Rust, used in this repo) and AndersTrklauspost/reedsolomon (Go) are based on the catid/leopard (C++) repository, which indeed uses algorithm proposed in the paper referenced by GP.  But these repos DO NOT include error detection and correction and specifically
the parameters K and N (K:N) should each be a power of 2 (2^r) .... which is NOT what the GP has.
It seems the catid/leopard repository uses a "shard" trick to handle this limitation. Therefore, for ordian/reed-solomon-simd (Rust) and AndersTrklauspost/reedsolomon (Go), are limited by the requirement that "shard size must be a multiple of 64 bytes. (see documentation)" instead of what the GP requires not a multiple of 64.
Can you explain this discrepancy?
We have also verified this limitation with Yunghsiang S. Han, one of the original authors of the algorithm.   To natively overcome the "power of 2" limitation (without the "shard" trick), they proposed a successor algorithm: Fast Encoding and Decoding Algorithms for Arbitrary (n,k) Reed-Solomon Codes Over 𝐹_{2^m}.
We have not yet found an implementation of this new algorithm and are wondering if its important to "modernize" to the above in GP or address the discrepancy above properly.

For JAM Erasure Coding, the first actual test case everyone should use is:
https://gist.github.com/gavofyork/4cde92327cd91eff3e2ab91d316cb83a
The current version GP references Lin, Chung, Han (2016) but this will be removed in favor of:
D. G. Cantor, "On arithmetical algorithms over finite fields", Journal of Combinatorial Theory, Series A, vol. 50, no. 2, pp. 285-300, 1989.
compactly summarized as "Systematic Reed Solomon Finite-Field Erasure Codec, GF(2^16), Cantor basis 2"
The test vectors in the PR have 12-byte chunks and break up data into 4096-byte pieces, which is NOT compatible with the GP.  The GP calls for 2-byte chunks and 4104-byte pieces in Appendix H.
The Parity Rust library is sufficient to decode the first test case above:
https://github.com/paritytech/erasure-coding/blob/main/src/lib.rs
Below is a test_reconstruct_from_json Rust test
https://gist.github.com/sourabhniyogi/f448e213134c814d652d2eccf086bf53
you can add around here:
https://github.com/paritytech/erasure-coding/blob/main/src/lib.rs#L252
# cargo test test_reconstruct_from_json  -- --nocapture
    Finished test [optimized + debuginfo] target(s) in 0.05s
     Running unittests src/lib.rs (/root/go/src/github.com/colorfulnotion/jam/erasurecoding/target/debug/deps/erasure_coding-d358172e1392b91c)
running 1 test
Reconstructed successfully! YAY
test tests::test_reconstruct_from_json ... ok

The test uses the last 342 2-byte chunks to reconstruct the first 684 2-byte chunks (684+342=1026),  and checks that the first 342 chunks match the original data.

Thanks (I see this conversation a bit late), the test vectors here are using a previous formulation, but I think it is the same (will check that next week, also will switch from base64 to hex).
I encode 6 point at a time but it is the same 2 byte point I think (eg on the vector for 684 content size we see that there is a single point in the shards (remaning content is padding)).
I only keep 4096 as the 8 next byte are 0 paddings, but do not have to be indeed, but for the binary tree the blocks are 4096 so I probably did not write those 8 padding bytes in the vector.
The thing is that when checking a content we check a 4096 byte block in a binary tree proof (page proof), so code was initially written around this size (6 points). May make sense to rewrite it for 1 point only to match more closely the description, but I think the paper reffer to 6 points (12 bytes) at different places so maybe just a 1 point primitives is needed here.

@cheme do you mind adding .json extension to all the files within ./vectors directory? That would help with syntax highlighting and editor support :)

:+1: note that for all binary tree there miss the $node describe in gp (not sure what it is and what it's meant for), probably will have to update at some point.

I have some questions regarding the paged-proof. In the JAM's graypaper, it’s written that the prefix(node)^left_hash^right_hash are concatenated. However, in your paged-proof, I noticed that you used update(left) and update(right) to combine the two hashes.

yes as mentioned in readme this part is missing, I think in this case it is not a full prefix(node) but $leaf or $node. I was not too sure how what it was, ends up likely just b"leaf" or b"node" hardcoded (I feel like it is not strongly needed, likely here for hygiene).
Code producing this is likely to be removed/replaced , so probably in this PR only one that are ok are "ec_"* (not too sure the full work package ec is still correct with latest gp changes).

concatenation of the left and right node hashes,

yes I guess correct approach is concatenation with the additional b"leaf" and b"node" (I prefer multiple update but if appending b"leaf" b"node" concat will likely be similar).


Fix Python 3 TypeError crashes by using floor division explicitly

The / operator in Python 3 returns a float, which was causing TypeErrors
when being passed to the << or >> operators.

Thank you! The change was a little rushed out to see if the upstream bug fixed solved #3 - the jury's still out on that one, though.


Review gradient backgrounds when rotating

@twerth mentioned that they get mixed up when rotating the view, review / fix this.

Will look at this probably one evening this week!

fixed with #199


Preds() - TypeError: can't pickle _thread.RLock objects

This comes in Mac OS X and might have to do with that.

This is related with upstream issue in Keras/Tensorflow here and here.


Fix logic to pick Travis job where coverage and mima are run

The change to $TRAVIS_BUILD_NUMBER == 1 in commit 96bb7c5e
did not work as expected.  That value is a counter that
increments for every Travis run.  3817 is a recent example.
This is an example job showing the wrong behavior:
https://travis-ci.org/http4s/http4s/jobs/207603576#L320
Travis is building with Scala 2.12.1 and scalaz 7.2.8, but only
running with ;test ;publish.
Switched back to checking $TRAVIS_SCALA_VERSION and $SCALAZ_VERSION
because it works and is more explicit.  Looked for a Travis environment
variable for the position in the matrix, but it's not exposed directly.
Would need to use the suffix of $TRAVIS_JOB_NUMBER.
Also extract some of the shell script logic into named functions
so it's easier to follow the guts of the script.  Might make sense
to move those function into a separate file and source them from
bin/travis in a future commit.

@ChristopherDavenport Not sure I follow about exit codes.  I was primarily attempting to improve readability and didn't pay much attention to error handling.  Also, I'm a hack when it comes to shell scripting.
Generally speaking, I'm in favor of better error handling if it does not make the script significantly harder to reason about.


Nuget Quickbooks.Net package is referencing Quickbooks.Net.Data 1.0.0 instead of most recent version

Basically what the title states...
Have absolutely no idea on how to fix this issue.

Let me look into it. Pretty sure  I know how to fix.

Don't think that fixed it.

yeah, unfortunately it didn't :(

Do we have any more ideas?

yes. looking at it now... I have used this exact methodology successfully before. But not with appveyor..

ok that last one did it.
https://ci.appveyor.com/project/benaduggan/quickbooks-net/build/1.0.42


OSError: [WinError 193] %1 is not a valid Win32 application

when I use mph, it happens.
Traceback (most recent call last):
File "F:/python project/test_mph/test_model.py", line 268, in
setup_module()
File "F:/python project/test_mph/test_model.py", line 27, in setup_module
client = mph.Client()
File "C:\Users\Eify.conda\envs\pytorch160\lib\site-packages\mph\client.py", line 85, in init
main = backend.folder(version)
File "C:\Users\Eify.conda\envs\pytorch160\lib\site-packages\mph\backend.py", line 214, in folder
last = list(versions().keys())[-1]
File "C:\Users\Eify.conda\envs\pytorch160\lib\site-packages\mph\backend.py", line 125, in versions
process = run(f'{path} --version', stdout=PIPE, creationflags=flags)
File "C:\Users\Eify.conda\envs\pytorch160\lib\subprocess.py", line 488, in run
with Popen(*popenargs, **kwargs) as process:
File "C:\Users\Eify.conda\envs\pytorch160\lib\subprocess.py", line 800, in init
restore_signals, start_new_session)
File "C:\Users\Eify.conda\envs\pytorch160\lib\subprocess.py", line 1207, in _execute_child
startupinfo)
OSError: [WinError 193] %1 is not a valid Win32 application
how can i do for this?
python 3.7

I find the reasons and solutions.
There is a space in my path of comsol.
When i retool the comsol, it works.
Here is the same question and solution.

I could not reproduce this, even with spaces in the path to the Comsol installation. But I fixed a related issue in the latest release, 0.7.6.


Empty push constant block name after 56d6806

We (0 A.D.) use block names (including push constants) to restrict and validate input GLSL from mods. With one of Vulkan SDK updates we got an assertion because of an empty push constant block name.
I've done some testing and debugging and it seems that after 56d6806ad1b6a210c4f745804a072189ad25c537 spirv-reflect no longer outputs a push constant block name. Particularly that line affected the output: https://github.com/KhronosGroup/SPIRV-Reflect/commit/56d6806ad1b6a210c4f745804a072189ad25c537#diff-14a0e64d286556f1314ed193dce8ec519d4511a867fa0bf2e82f45a9d4a95a80R3470. On that assignment p_push_constant->name already contains a correct name but p_node->name contains an empty string.
I'm not sure was it intentional or not but I think it'd good to output the push constant block name if possible.
Sample:
// glslc -g -x glsl --target-env=vulkan1.1 -std=450core -fshader-stage=compute -O test.glsl -o test.spv
#version 450
layout (push_constant) uniform Constants
{
	vec4 Color;
};
layout(set = 0, binding = 0, rgba8) uniform image2D Output;
layout(local_size_x = 8, local_size_y = 8, local_size_z = 1) in;
void main()
{
	imageStore(Output, ivec2(gl_WorkGroupID.xy), Color);
}

Before:
# spirv-reflect --y test.spv
# ...
  - &bv2
    name: "Constants"
    offset: 0
    absolute_offset: 0
    size: 16
    padded_size: 16
# ...

After:
# spirv-reflect --y test.spv
# ...
  - &bv2
    name: ""
    offset: 0
    absolute_offset: 0
    size: 16
    padded_size: 16
# ...

In GLSL if I go
layout (push_constant) uniform Constants {
	vec4 color;
} pc;

void main() {
    vec4 x = vec4(pc.color.x);
}

vs not giving it a name

layout (push_constant) uniform Constants {
	vec4 color;
};

void main() {
    vec4 x = vec4(color.x);
}

I get
OpName %10 "Constants"
OpMemberName %10 0 "color"
- OpName %12 "pc"
+ OpName %12 ""

%10 = OpTypeStruct %7
%12 = OpVariable %11 PushConstant

when you go spirv-reflect -y -v 1 (more verbose) you will see
all_type_descriptions:
  - &td1
    struct_member_name: "Constants"

all_block_variables:
  - &bv1
    name: "pc"

Which seems to be as designed and don't think there is anything to do in spirv-reflect

While you can only have a single Push Constant struct in GLSL, but in theory a shading language could go
struct Constants {
    vec4 color;
};

layout (push_constant) uniform Constants pc;
layout (set = 0) uniform Constants something_else;

in this case Constants is not the variable name, but is just the type name

So the name field contains only a variable name regardless is it inline or not. In that case I think we need to use the type name instead. Thank you for the help!
Closing the ticket as won't fix.


Extension issue

Issue Type: Bug
Extension Name: azure-pipelines
Extension Version: 1.183.0
OS Version: Windows_NT x64 10.0.19041
VSCode version: 1.53.2

{
	"messages": [],
	"activationTimes": {
		"codeLoadingTime": 12838,
		"activateCallTime": 12,
		"activateResolvedTime": 3994,
		"activationReason": {
			"startup": false,
			"extensionId": {
				"value": "ms-azure-devops.azure-pipelines",
				"_lower": "ms-azure-devops.azure-pipelines"
			},
			"activationEvent": "onLanguage:azure-pipelines"
		}
	},
	"runtimeErrors": []
}

This will be fixed soon! Just need to do some validation before creating a new release.


request to add a fix for Pointed Dripstone.

Thank you so much for fixing the bamboo, but in 1.17 there is a new block that causes problems for bedrock players.
https://minecraft.fandom.com/wiki/Pointed_Dripstone

Now implemented.


Bundler installer issue using opsworks

I am running opswork agent (AWS) and it is failing bundle install. From the logs it is showing as its taking a long time for resolving dependencies. Can someone please help.
2019-06-29T15:14:37+00:00] ERROR: Running exception handlers
[2019-06-29T15:14:37+00:00] ERROR: Exception handlers complete
[2019-06-29T15:14:37+00:00] FATAL: Stacktrace dumped to /var/chef/runs/36a3eb5d-dff4-41c4-bc7c-e31a36cc34c3/local-mode-cache/cache/chef-stacktrace.out
[2019-06-29T15:14:37+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2019-06-29T15:14:37+00:00] ERROR: Command timed out after 600s:
Command exceeded allowed execution time, process terminated
---- Begin output of bundle install ----
STDOUT: Don't run Bundler as root. Bundler can ask for sudo if it is needed, and
installing your bundle as root will break this application for all non-root
users on this machine.
Fetching gem metadata from https://rubygems.org/
Fetching version metadata from https://rubygems.org/
Resolving dependencies..........................................................................................................................................................................................
--- ERROR REPORT TEMPLATE -------------------------------------------------------
- What did you do?

I ran the command `/opt/chef/embedded/bin/bundle install`

- What did you expect to happen?

I expected Bundler to...

- What happened instead?

Instead, what actually happened was...

Error details

SignalException: SIGTERM
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/dep_proxy.rb:16:in `=='
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:223:in `include?'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:223:in `block in parent_of'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:222:in `reverse_each'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:222:in `each'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:222:in `find'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:222:in `parent_of'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:282:in `requirement_tree_for'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:273:in `block in requirement_trees'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:273:in `map'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:273:in `requirement_trees'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:264:in `create_conflict'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:334:in `attempt_to_activate_existing_spec'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:318:in `attempt_to_activate'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:147:in `process_topmost_state'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb:72:in `resolve'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb:42:in `resolve'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/resolver.rb:201:in `start'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/resolver.rb:184:in `resolve'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/definition.rb:200:in `resolve'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/definition.rb:140:in `specs'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/definition.rb:129:in `resolve_remotely!'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/installer.rb:195:in `resolve_if_need'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/installer.rb:70:in `run'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/installer.rb:22:in `install'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/cli/install.rb:102:in `run'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/cli.rb:175:in `install'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/cli.rb:11:in `start'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/exe/bundle:27:in `block in <top (required)>'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/exe/bundle:19:in `<top (required)>'
/opt/chef/embedded/bin/bundle:22:in `load'
/opt/chef/embedded/bin/bundle:22:in `<main>'

Environment

Bundler   1.12.5
Rubygems  2.6.8
Ruby      2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]
GEM_HOME  /opt/chef/embedded/lib/ruby/gems/2.3.0
GEM_PATH  /opt/chef/embedded/lib/ruby/gems/2.3.0:/root/.gem/ruby/2.3.0
Git       1.9.1

Bundler settings

orig_path
Set via BUNDLE_ORIG_PATH: "/opt/chef/embedded/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/opt/chef/embedded/bin:/opt/chef/embedded/bin"
--- TEMPLATE END ----------------------------------------------------------------

Unfortunately, an unexpected error occurred, and Bundler cannot continue.

First, try this link to see if there are any existing issue reports for this error:
https://github.com/bundler/bundler/search?q=SIGTERM&type=Issues

If there aren't any reports for this error yet, please create copy and paste the report template above into a new issue. Don't forget to anonymize any private data! The new issue form is located at:
https://github.com/bundler/bundler/issues/new
STDERR:
---- End output of bundle install ----
Ran bundle install returned 1
[2019-06-29T15:14:37+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

It seems you don't have an Gemfile.lock in your projects and as a result AWS is spending time most of its time resolving dependencies.  I suggest running bundle install outside of AWS and committing the Gemfile.lock into your project so that AWS doesn't have to resolve your Gemfile.

Closing due to lack of feedback.


Add an interface to update a repository in place

Since we're creating an ecosystem where updating static config files in repositories will be common, we should create an interface that makes it simple to "meld + commit" (and push to a remote?) on a git repository somewhere on disk.

this is implemented


sort transcripts in transcript_infos, make split-seq fwd strand, update CI

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (6662460) 86.17% compared to head (8c18623) 85.89%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #40      +/-   ##
==========================================
- Coverage   86.17%   85.89%   -0.29%
==========================================
  Files          26       26
  Lines        2040     2042       +2
==========================================
- Hits         1758     1754       -4
- Misses        282      288       +6

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Add more default object implementations

Updates gtk3-rs to use the latest gir version with more default implementations: https://github.com/gtk-rs/gir/pull/1222

Windows is broken as usual, let's ignore it... Thanks!


Fix thunk in Likelihood

Likelihood was using a Seq instead of a StrictSeq, which meant that its
elements weren't forced to WHNF. These Likelihoods are stored in the
NonMyopic data type, which is part of the ledger state, so there was a space
leak in the ledger state.
I found this space leak because serialising the mainnet ledger state to disk was
taking roughly 2 minutes on my machine! I noticed this when I rebuilt the ledger
snapshot from genesis and tried to shut down the node afterwards with CTRL-C,
which took way too long (it was busy writing the snapshot and thus forcing the
thunks).
With this fix, serialising the mainnet ledger state takes roughly 1 second.

bors merge

I'll wait with propagating this to ouroboros-network and cardano-node until @nc6 has fixed the ledger serialisation format change.

thank you @mrBliss !

:heart:


website is not working ... pls help

it's showed {{=it.page}} ....
and I'm using nginx in ubuntu 16.0.4.

http://zcash.coinspool.gq:8080/
if I use this port 8080 with my address, the website seems working....
but if I change the port to 80 in config.json ... it showed some error about the port...
BTW zcash.coinspool.gq is subdomain ...

I edit the website's config for nginx:
server {
	listen 8080;
	#listen [::]:8080;

	server_name zcash.coinspool.gq;

	root /home/botio/zpool/website;
	index index.html;

	location / {
		proxy_set_header X-Forwarded-For $remote_addr;
		proxy_set_header Host $http_host;
		proxy_pass http://<IP_ADDRESS>:8080;
		try_files $uri $uri/ =404;
	}

}

And now ...
http://zcash.coinspool.gq                                 (Working)
http://zcash.coinspool.gq:8080/stats                (Working)
But ...
http://zcash.conspool.gq/stats                         (NOT working!)

	location ~ .${
		proxy_set_header X-Forwarded-For $remote_addr;
		proxy_set_header Host $http_host;
		proxy_pass http://<IP_ADDRESS>:8080;
		try_files $uri $uri/ =404;
	}


Fix for rapid firing setImageTrigger(0,1); issue #1630

yea you right I was doing very early in the morning before go to work and was sleepy! xD


feat(build) Add bazel rules to build ngx-wasm-rs and ngx-rust

"This PR adds Bazel build rules to compile ngx-wasm-rs and ngx-rust that can be imported and used by Kong,
as directly calling cargo might break cross-compilation.
The rules_rust doesn't seem to parse the local redirection of depenendencies in Cargo.toml well so that
I have to manually add those dependencies. And it seems the secondary dependencies will also needs to
be in the top level Cargo.toml to make build happy. Let me know how do you feel about this workaround.
What's missing at present:

[ ] wat feature (currently not working due to "missing CMAKE_ROOT")
[ ] readme
[ ] reusable workflow"

~ https://github.com/Kong/ngx_wasm_module/pull/392
This PR is based on a copy of the @fffonion fork branch that has been pushed to the @Kong repo, duplicating https://github.com/Kong/ngx_wasm_module/pull/392 while allowing for CI in this repo to run.

Rebased on main.

That will lead to the question of if we are going to ship the two other runtimes (wasmer and v8) that need either ngx_wasm_rs or ngx_rust, other than the existing wasmtime, into kong or kong-ee. Which from a dicussion
from my previous PR a while ago, I assume the answer is yes.
If the plan changes and that we aren't planning to ship the two other runtimes with kong in near future, we can hold this
progress for now. But if we do, I would suggest a go with this PR. On this repo, we will only ensure the build part, there's no need to switch the whole CI of ngx-wasm-module to build upon bazel. Additional functional tests will then need to be
added on gateway side to cover the two other runtimes.

Hmm ok. We are probably not shipping any other runtime anytime soon, but maybe we could still have this. Heads up though there will be quite some work before this can be merged based on this current state.

there's no need to switch the whole CI of ngx-wasm-module to build upon bazel.

Oh well yeah that has always been totally out of the question anyway. If we add bazel it's just for fun (CONTRIBUTING.md note) or for a specific Gateway purpose (even though we probably will only ever ship with Wasmtime).

Since it seems we only need this because of how the Gateway wishes to build our Rust libs, could we move it to a repository of its own instead? We can keep the CI in this repository, and the bazel rules in a new one like Kong/ngx_wasm_module_bazel or something...

could we move it to a repository of its own instead?

If we come back around on needing this functionality, than that can be the approach we take.
Closing per KAG-2682.


Support for partial indexes?

We have a use case (Using Ent) where we have two optional edges which are mutually exclusive, yet need unique indexes. We are currently creating these indexes using custom SQL migrations in with https://github.com/rubenv/sql-migrate, but we'd like to move to Atlas.

Partial indexes are going to be supported soon. In addition to that, we also plan to allow passing custom CREATE TABLE .. to unblock users from using features that are not yet supported by atlas. e.g.
table "users" {
	ddl = <<EOT
CREATE TABLE "users" (
	...
)
EOT
}

Thanks @a8m, that would be really useful. Is there a roadmap I can potentially help contribute to?

Hey @ivanvanderbyl 👋
Partial indexes were added in the latest version, and you can see its docs here. However, it was not added yet to ent (it's a new annotation), so you're welcome to contribute it, or wait a few days until I'll add it 😃

Is there a roadmap I can potentially help contribute to?

I'll be happy to discuss this on our Discord. Feel free to ping me there.

Neat! thanks @a8m


Emote parsing broken for some outgoing messages

Expected behaviour
Sending the message: hi :) yo from twitch-js
emotes on userstate object should look like this:
"emotes": {
    "1": [
      "3-4"
    ]
  },

Actual behaviour
"emotes": null,
Note: this only seems to affect the "simple" emotes like :) and :/. Kappa & FrankerZ work fine. Regex escaping issue?
Note: receiving messages from twitch has the correct emotes. This only affects the local outgoing messages
Steps to reproduce
I don't have a minimal case set up yet, but can repro 100% of the time.
If you have a hunch of what the issue might be, cool. Otherwise I can look into it sometime this week
Your environment

Operating system(s): Windows 10
TwitchJS version: master as of ~2 weeks ago
Browser(s): Chrome

I am a little strapped for time myself. If you could start looking into it, that would be awesome.

I've tracked down the source and fix for this. I have no clue how to submit a resolution however. It boils down to changes in the emoteRegex in parser.js.

line 76, it reads \s)' when it should be \s) (note the extra ')
line 81 has && obj[id] which should'nt be there, the original code had a obj[id]=obj[id] || []; within the if to deal with it being empty

I believe the reason the obj[id] can be null is because these emotes belong to the turbo emotes. I was testing with the money emotes. I have no idea on the regex, perhaps a typo.
This is what it should end up looking like.
  emoteRegex: function emoteRegex(msg, code, id, obj) {
    const space = /\S+/g;
    const regex = new RegExp(`(\\b|^|\s)${_.unescapeHtml(code)}(\\b|$|\s)`);
    let match;

    // Check if emote code matches using RegExp and push it to the object..
    while ((match = space.exec(msg)) !== null) {
      if (regex.test(match[0])) {
        obj[id] = obj[id] || [];
        obj[id].push([match.index, space.lastIndex - 1]);
      }
    }
  },

This bug should be resolved in 2.0.0-beta.1.
Emotes are now parsed as follows.


Spaces (or other special chars) in a filename

I've noticed that uploading files containing spaces or other special characters (ie. foreign language characters) in the name always fails with 403. Anybody else facing the same issue?
URLByAppendingPathComponent in amazonURLRequest method returns percent-encoded url so what could be the problem then?

Hmm that's odd. Just confirming, you are talking about the destinationPath for the upload having spaces or special characters in it.
It may just be that Amazon S3 does not support those characters in their file paths. If that is the case, the only thing I can do about it is to add a note on it to the documentation. I'll look into this and see if this is an Amazon thing or a problem with the library.
Thanks!

What special characters are you using specifically? Some special characters are supported, but not all it seems.
Object names:

The following character sets are generally safe for use in key names:

Alphanumeric characters [0-9a-zA-Z]
Special characters !, -, _, ., *, ', (, and )

Bucket names:

Bucket names must be a series of one or more labels. Adjacent labels are separated by a single period (.). Bucket names can contain lowercase letters, numbers, and hyphens. Each label must start and end with a lowercase letter or a number.

http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html
http://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html

Foreign language characters e.g. šđčćž. I was able to make a workaround by using id instead of a filename in the destination path. However, I still dont understand why the problem happens. In the guidelines you posted it says using any UTF-8 character should be ok, which I believe is true because if I do the uploading to s3 on the server side (using paperclip) it works. Paperclip substitutes spaces with underscore tho, but foreign language characters get percent encoded.
Were you able to reproduce the issue?


DCGM Policy Violation Notification channel reporting too many PCIe violations on P5 instance type from AWS EC2 (H100)

Hi team,
We are observing PCIe violations on p5 happen consistently fromt the time the instance is launched.
We act on this with a terminate and replace instance logic, but that's an expensive operation timewise as well as the instance type being a P5 from EC2. Also, this is a default set threshold and can't be managed by client while subscribing to the policy.
Few asks:
Is there an upstream fix from Nvidia that is planned?
Is there any repercussion of temporarily not subscribing to this policy?
What would go wrong if we let the PCIe errors to keep happening silently?

Hi,
This is a known issue that will be resolved in an upcoming release. In short, this diagnostic didn’t correctly normalize the error rates to the PCIe generation throughput.