process out of memory error during restore

I have a backup which I created with elasticsearch-dump a couple of weeks ago.  The file is 114M in size with 19,644 lines.  When I try to restore I get an out of memory error (details below).
The command and error message:
root@el:/tmp# elasticdump --input=elasticdump-data.json --output=http://el:9200/snag
Fri, 12 Feb 2016 20:08:04 GMT | starting dump

<--- Last few GCs --->

   17046 ms: Mark-sweep 1371.4 (1457.9) -> 1371.5 (1457.9) MB, 2295.5 / 0 ms [allocation failure] [GC in old space requested].
   19388 ms: Mark-sweep 1371.5 (1457.9) -> 1371.5 (1457.9) MB, 2341.1 / 0 ms [allocation failure] [GC in old space requested].
   21606 ms: Mark-sweep 1371.5 (1457.9) -> 1371.4 (1457.9) MB, 2217.9 / 0 ms [last resort gc].
   23809 ms: Mark-sweep 1371.4 (1457.9) -> 1371.4 (1457.9) MB, 2202.8 / 0 ms [last resort gc].

<--- JS stacktrace --->

==== JS stack trace =========================================

Security context: 0x3da753eb4629 <JS Object>
    2: write [/usr/lib/node_modules/elasticdump/node_modules/JSONStream/node_modules/jsonparse/jsonparse.js:92] [pc=0x17e4bdf0dc18] (this=0x3f608e8fe121 <a Parser with map 0x44dd658d3d9>,buffer=0x110980f3bb1 <an Uint8Array with map 0x44dd658c721>)
    3: /* anonymous */ [/usr/lib/node_modules/elasticdump/node_modules/JSONStream/index.js:~18] [pc=0x17e4bdf28026] (this=0x3f608e8fe299 <a Stream wi...

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory
Aborted (core dumped)

My server's specs:

16GB RAM
8-cores

Version of elasticsearch:
{
  "name" : "Pretty Persuasions",
  "cluster_name" : "production",
  "version" : {
    "number" : "2.2.0",
    "build_hash" : "8ff36d139e16f8720f2947ef62c8167a888992fe",
    "build_timestamp" : "2016-01-27T13:32:39Z",
    "build_snapshot" : false,
    "lucene_version" : "5.4.1"
  },
  "tagline" : "You Know, for Search"
}

Version of elasticdump:
root@el:/tmp# npm view elasticdump version
1.0.1

We did recently change the format of the dump files.  Can you confirm that your dump is using the new version?  (no starting [ and lines don't start with ,)

Changing the json to the new format as you described did the trick.  However, please consider throwing an invalid data exception rather than an "out of memory" exception.  I spent more time than I'd like to admit troubleshooting a lack of memory issue, which clearly was not the issue at all.

It's not quite that simple... Node is actually tying to JSON parse your whole file in this case, which is a sync operation.
If you want to test the file format in a non-JSON way, like checking for the first char or something, that might work.   Send in a PR!

note added => https://github.com/taskrabbit/elasticsearch-dump/commit/f79ea40c0b1fe1701b2fe27921f3a96dbb5a5a8b

I was able to import old backups that are 1GB+ by passing the files though jq, stripping the array braces and commas:
$ jq -cr '.[]' backup.json > backup2.json

nice @ribbles

Thanks @ribbles, You saved my life!!


Consider using a Brewfile for Homebrew installs

I saw your Medium post and you said you welcomed suggestions😁
I feel like Brewfiles are a bit more declarative and have fewer foot guns than shell scripts, but unless you're feeling especially chipper it might not be worth the work to replace your working brew install  shell script.
See https://github.com/Homebrew/homebrew-bundle or https://thoughtbot.com/blog/brewfile-a-gemfile-but-for-homebrew for examples.

It looks neat! Although my objective was to have as less dependencies as possible to get my environment set up, for instance mas is already one dependency that I'd only use during setup.
Thanks for the suggestion!


Fix width on chatbox input

Expected Behavior
The input text box should let me see what I am typing without going past the send button
Actual Behavior
When typing into the input box, the characters are going underneath the send button, not allowing me to see my text clearly
Steps to Reproduce
Navigate to the collaboration page on any device.
Type a long message into the input area
Notice the text is flowing past the send button
Screenshots

Environments
This is happening on all devices
Possible fixes
We can instead probably remove the outline on the input and add it to the parent element instead, and remove the absolute from the send button so it isn't floating; add a flexbox so that the input and send button are side by side. This will help to avoid the send button floating.

Commit: 3e1172e
Has saved the day! Problem solved


Get as raw pixels buffer

If I need an RGBA buffer, the supported way of doing this is that I have to create a buffer, and iterate lwip image by using getPixel method, and put RGBA pixels in it. This is extremely inefficent. For each pixel lwip will give me an array* instance holding RGBA values, that means if i have a FullHD picture, runtime will allocate 2073600 arrays of size 4. That's 64 MBytes of raw temporary data, which is about 80MBytes when v8's bookeeping extra data added.
I can go with unsupported way, and iterate over internal __lwip.buffer(), but that's gonna be more nice if you support __lwip.buffer() acces in the public API.
* the documentation states getPixel's result is an object, but according to src/lwip/image.cpp line 88 it's an array.

getPixel returns an object, not an array (on the JS side. reference).
About doing it the manual way you described - you don't actually need to keep all those 2073600 objects in memory; just insert the values directly into the buffer you create and let those temporary objects be GC'd.
In any case, this issue is now labeled as a feature request.

That's worse, because runtime will allocate this objects along arrays too. Allocating this ammount of dead objects in a loop (we're in a loop when iterating through pixels of the whole image), is an overkill for the GC. See: http://jayconrod.com/posts/55/a-tour-of-v8-garbage-collection

I also did some perfomance testing, having a loop with
var channelStart = width*height*multiplier;  // multiplier depending on r,g,b or a = 0, 1,2 or 3
var buffer = _image.__lwip.buffer();

for(var y = 0; y < height; y++) {
	for(var x = 0; x < width; x++) {
		var index = x + y*width;
		//matrix[index] = _image.getPixel(x, y)[_channelName];
		matrix[index] = buffer[index + channelStart];
	}
}

extracting a channel off a 512x512 image took on my machine
1387.668 ms (using getPixel())
   5.260 ms (using the buffer)

Fortunately, I saw the buffer() trick here. If you don't want to add it to the public API, maybe you can add it to the readme/wiki?
Best wishes

I have no objection adding it to the API. Perhaps something like:
image.toBuffer('rgba', function(err, buffer){
    // ...
});

The arguments presented here seem reasonable to justify this feature (speed, overstraining the GC).
I feel that a lot of use cases which would seem to need direct buffer access, could actually be resolved with a more managed and safe solutions for pixels access and manipulation.
Perhaps it would also be worth adding the following two methods to the API:
/**
 * Iterate the pixels in the image.
 * A faster alternative for getPixel.
 */
image.forEach(function(x, y, r, g, b, a){
    // ...
});

/**
 * Apply a custom filter on the image.
 * A faster alternative for getPixel and setPixel.
 */
image.filter(function(x, y, r, g, b, a){
    // The return value will set the pixel at x,y.
    // Should be an RGBA object
});

Any thoughts?

I absolutely like the idea of adding it to the toBuffer() method. In fact, that was the first thing I looked at and was surprised, that you can get encoded data only.
Personally, I don't see any advantage of having an image.forEach() function, but I like the filter method as it would be convenient for some simple filters.
Thanks for the fast reply :)

+1 for all additions. Those will be handy indeed.

One thing to note - image.toBuffer('rgba', ...) will return a copy of the image's buffer, and not the underlying buffer itself.

I think that's expected behaviour :)

So you can get a copy of a buffer using image.__lwip.buffer(), how then after modifying this buffer, can I create a new image object based on this modified buffer?

Currently I don't know any way, but it might be an idea to add a constructor/lwip.create() function which accepts a buffer?

Any news on this? It'd be great to use image.toBuffer('rgba', ...).
Thanks! 👋

Would be great to have this. Also it would be nice if image.toBuffer('rgba', ...) returned the buffer in ImageData format - this would be most compatible with WebGL and HTML5 Canvas i.e. rather than r0, r1, r2, ... , g0, g1, g2 ... it would be Uint8ClampedArray withr0, g0, b0, a0, r1, g1, b1, a1 ... and a max alpha value of 255 rather than 100. Currently having to do something like:
lwip.open(resource, 'png', (err, image) => {
  var w = image.width()
  var h = image.height()
  var buffer = image.__lwip.buffer()
  var data = new Uint8ClampedArray(buffer.length)
  var indexY = 0
  var index = 0
  var s = w * h
  var i = 0
  for (var y = 0; y < h; y += 1) {
    indexY = y * w
    for (var x = 0; x < w; x += 1) {
      index = indexY + x
      data[i + 0] = buffer[index]
      data[i + 1] = buffer[index + s]
      data[i + 2] = buffer[index + s * 2]
      data[i + 3] = 2.55 * buffer[index + s * 3]
      i += 4
    }
  }
})


MDM integration

It would be great to see a flavor of this that incorporated MDM (such as Profisee)

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

ID: 7254782d-e773-b542-73e8-f568d3bbee39
Version Independent ID: 40d81223-f8ea-2eec-616e-5f6ee28c8206
Content: Modern analytics architecture with Azure Databricks - Azure Solution Ideas
Content Source: docs/solution-ideas/articles/azure-databricks-modern-analytics-architecture.yml
Service: architecture-center
Sub-service: solution-idea
GitHub Login: @kacummis
Microsoft Alias: kacummis

@dpc2604 Thanks for the feedback !  I have assigned this issue to content author to investigate and update the document as appropriate.

Thank you for your feedback.  We have created internal ticket 24174 to track and investigate this issue.

#please-close


use sample 2d texture (after beauty process) convert to yuv data, the yuv data to encode has error but preview is ok on android 4.4 device

Browsers and versions affected
android 4.4 device,such as samsung GT-I9300 android 4.4.4
Description
Steps to reproduce
1.convert camera oes texture to sample 2d texture by beauty process
2.use converted sample 2d texture to preview is ok
3.convert sample 2d texture to yuv data by Yuv2DConverter.java for video encoder
4.the yuv data has error on android 4.4 device but preview with sample 2d texture is ok.
5.the performance of wrong yuv data is like this on the remote phone of watcher

Expected results
the remote phone of watcher has the same picture with the local preview

Yuv2DConverter.zip
Actual results

This Yuv2DConverter.java works well on android 5.1 device such as huawei MT7-CL00

this issue has resolved


Support for functors, applicatives and monads ?

I am just starting with javascript functional programming, and discovered that functors, applicatives and monads are essentials, but when I search for monad in your doc I have no entry.
I know my question not really belongs to here but I would like to know if there is a javascript library that brings support for those types in javascript ? Or does every developer have to manage to create his functor type and so on ?  I have found monet on npmjs, but its stats are very low (about 5k dowload last month, in all the planet), it should not be the defacto.
I ask my question here because ramda is becoming the way to go in FP, so please, how do you expect us to create our own functor, applicative and monad INSTANCE ?

common support monad/functor/applicative in follow repo
https://github.com/ramda/ramda-fantasy

@Qquanwei thanks.


[Bug]: layoutOnLoadActions don't register query/js settings and hence on page actions don't get executed

Is there an existing issue for this?

[X] I have searched the existing issues

Description
No page load actions either from queries or objects are registered on the layoutOnLoadActions
Sample app with various scenarios to test - https://release.app.appsmith.com/nested-calls/js-js-624dd82bbf89be21c7d4690f/edit
Steps To Reproduce

Mark any API or JS object to run on page load and refresh the page
Observe no confirmation box or console logs take place

Public Sample App
https://release.app.appsmith.com/nested-calls/js-js-624dd82bbf89be21c7d4690f/edit
Version
Cloud

Removing this as a release blocker since we're adding a Beta tag

Unable to reproduce it on my local setup with the latest code. I have also tried importing the same application that is failing on release to my local instance, but the imported application works as expected. I have also asked Saptami to help reproduce it, but we haven't been able to so far. We should monitor this issue for a while and close it if the issue seems un-reproducible.

Closing this regressed issue since it seems to have been rectified by some fix.


[BUG] intellisense broken by minification (0.4.8-beta.1 - 0.4.9)

You minified your code starting in 0.4.8-beta.1, which removed all the code comments and made debugging your solution on-the-fly practically impossible. It no longer shows intellisense in VSCode and one cannot CTRL+click through to the respective function in your package.
Minifaction should be reserved to website use-cases but not be used in open-sourced software. If you have a use-case in which you need the code to be minimal in size I would ask to set up a parallel obfuscated version for that particular case alone.
Actual (taken in 0.4.9):

and

Expected (taken in 0.4.6):

and

Interfaces are not changing and docs exist.
Not a bug nor priority.

why "bundle" the module in the first place? don't understand the benefit of this. like, if you want to include it minified somewhere else (which I my best guess here), why not apply minification when building that one?

Since this way it can be used in many more places and it helped me solve out other issues along the way.
I may improve the bundling later along the way.


Extra properties on "sortable" are all undefined.

No matter what I try, I always get "undefined" for all of the extra properties (noted in API.md) on sortable. This is for update, receive, stop, etc. I've tried older versions of ui-sortable, with the same results.

Try using one of the provided examples as a starting point.
If you can fork and share an example that looks like your use case, then I
would be happy to investigate it.

Sorry. I should have provided that from the start. In fact, it would have saved my a post, and you a reply, as I found my problem in the process of providing an example. The shelf life of the object is much shorted than my console.logs was displaying. Thanks for the help.

Np, happy the examples helped you ;-)
On Mon, Mar 2, 2015, 21:06 Matt Welch<EMAIL_ADDRESS>wrote:

Sorry. I should have provided that from the start. In fact, it would have
saved my a post, and you a reply, as I found my problem in the process of
providing an example. The shelf life of the object is much shorted than my
console.logs was displaying. Thanks for the help.
—
Reply to this email directly or view it on GitHub
https://github.com/angular-ui/ui-sortable/issues/340#issuecomment-76783855
.


Missing bindings for crypto_core_ed25519_scalar_mul

From the section https://doc.libsodium.org/advanced/point-arithmetic#scalar-arithmetic-over-l
There's the function:
void crypto_core_ed25519_scalar_mul(unsigned char *z, const unsigned char *x, const unsigned char *y);

The crypto_core_ed25519_scalar_mul() function stores x * y (mod L) into z.

Seems like sodium-native doesn't include this binding?

PR welcome! Closing for now


Fixed empty string split issue

Signed-off-by: sunilkumarn417<EMAIL_ADDRESS>

Can one of the admins verify this patch?

ok to test

ok to test

@susebot run deploy


Keep only one lockfile for the project

As I can see, there are two lockfiles in this repo:

package-lock.json
yarn.lock

This kind of defeats the purpose of a lockfile, as contributors may have wrong package versions depending on whether they use npm or yarn.
Which dependency manager should be used for this project? (I used npm because package-lock.json was updated more recently.)

aaa, i dont know about that before, thank you. so, is it okay to just delete yarn.lock file?

oh, ok thanks..


all: handle collisions in concurrent tests

Some services provide no isolation for resources in the same project. For example, all metrics that you create with Stackdriver Logging as part of a project will be "global" to that project. So if you try to list metrics, you will get all of your project's metrics.
An integration test that tries to test the ListMetrics function by creating a bunch of metrics, listing them, and comparing the results will work fine when run in isolation (provided it cleans up after itself). But it will fail if run concurrently with another instance of itself, because it will see the other instance's metrics as well as its own.
Concurrent execution can and does happen (e.g. a CI system launches tests for each CL, and the CLs arrive faster than the tests finish). So these tests are flaky.
One solution (proposed by @pongad) is to impose a partition on the resources by creating each with an ID that identifies the test instance uniquely (like a nanosecond timestamp). We could make this work with our general iterator testing package by handing the tester a function that separates out the resources with the right timestamp.

If the nanosecond time is rounded to 1ms precision or even less precise, then collisions will still happen.
Just to provide an alternative to choose from: For CI systems alone passing a build id prefixed by the CI system id (e.g. travis-1234) works pretty well and supports multiple build systems at once.

Hmm you're right, I guess we can read TRAVIS_BUILD_ID env var?

@jba are we still seeing this? I believe we have resolved most of the issue?

I haven't done a survey of all our tests to make sure they're isolated, so leaving open for now.

Moved to https://github.com/GoogleCloudPlatform/google-cloud-go/wiki/Long-Term-Plans.


WARNINGS running ng serve after upgrade to 1.6.8 from 1.6.1

I upgraded my angular-cli globally and locally, as well upgraded all of my angular packages on this project. After completing this, I am now seeing this warning when running ng serve. This problem did not exist prior to upgrading from 1.6.1 to 1.6.8
Versions
Angular CLI: 1.6.8
Node: 9.2.0
OS: linux x64
Angular: 5.2.4
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

@angular/cli: 1.6.8
@angular-devkit/build-optimizer: 0.0.42
@angular-devkit/core: 0.2.0
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.9.8
typescript: 2.4.2
webpack: 3.10.0

Repro steps

ng serve

Observed behavior
** NG Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
Date: 2018-02-08T16:38:58.581Z
Hash: 1185ae70228b087719b1
Time: 15681ms
chunk {account.module} account.module.chunk.js () 10.3 kB  [rendered]
chunk {common} common.chunk.js (common) 283 kB  [rendered]
chunk {contact.module} contact.module.chunk.js () 126 kB  [rendered]
chunk {dashboard.module} dashboard.module.chunk.js () 3.83 MB  [rendered]
chunk {emails.module} emails.module.chunk.js () 10.2 kB  [rendered]
chunk {firm.module} firm.module.chunk.js () 9.93 kB  [rendered]
chunk {funnel.module} funnel.module.chunk.js () 101 kB  [rendered]
chunk {inline} inline.bundle.js (inline) 5.79 kB [entry] [rendered]
chunk {login.module} login.module.chunk.js () 10.8 kB  [rendered]
chunk {main} main.bundle.js (main) 197 kB [initial] [rendered]
chunk {media.module} media.module.chunk.js () 10.1 kB  [rendered]
chunk {pitch.module} pitch.module.chunk.js () 61.5 kB  [rendered]
chunk {polyfills} polyfills.bundle.js (polyfills) 556 kB [initial] [rendered]
chunk {styles} styles.bundle.js (styles) 819 kB [initial] [rendered]
chunk {vendor} vendor.bundle.js (vendor) 13.1 MB [initial] [rendered]

WARNING in ./node_modules/css-loader?{"sourceMap":false,"import":false}!./node_modules/postcss-loader/lib?{"ident":"postcss","sourceMap":false}!./node_modules/sass-loader/lib/loader.js?{"sourceMap":false,"precision":8,"includePaths":[]}!./src/scss/styles.scss
(Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5684:7: Can not find grid areas: sidebar, breadcrumb, content
NonErrorEmittedError: (Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5684:7: Can not find grid areas: sidebar, breadcrumb, content
    at Object.emitWarning (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/webpack/lib/NormalModule.js:117:16)
    at result.warnings.forEach (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:49)
    at Array.forEach (<anonymous>)
    at postcss.process.then (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:27)
    at <anonymous>
 @ ./src/scss/styles.scss 4:14-200
 @ multi ./node_modules/font-awesome/scss/font-awesome.scss ./src/scss/styles.scss

WARNING in ./node_modules/css-loader?{"sourceMap":false,"import":false}!./node_modules/postcss-loader/lib?{"ident":"postcss","sourceMap":false}!./node_modules/sass-loader/lib/loader.js?{"sourceMap":false,"precision":8,"includePaths":[]}!./src/scss/styles.scss
(Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5725:7: Can not find grid areas: header, one, two
NonErrorEmittedError: (Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5725:7: Can not find grid areas: header, one, two
    at Object.emitWarning (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/webpack/lib/NormalModule.js:117:16)
    at result.warnings.forEach (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:49)
    at Array.forEach (<anonymous>)
    at postcss.process.then (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:27)
    at <anonymous>
 @ ./src/scss/styles.scss 4:14-200
 @ multi ./node_modules/font-awesome/scss/font-awesome.scss ./src/scss/styles.scss

WARNING in ./node_modules/css-loader?{"sourceMap":false,"import":false}!./node_modules/postcss-loader/lib?{"ident":"postcss","sourceMap":false}!./node_modules/sass-loader/lib/loader.js?{"sourceMap":false,"precision":8,"includePaths":[]}!./src/scss/styles.scss
(Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5736:9: Can not find grid areas: title, middle, utility
NonErrorEmittedError: (Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5736:9: Can not find grid areas: title, middle, utility
    at Object.emitWarning (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/webpack/lib/NormalModule.js:117:16)
    at result.warnings.forEach (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:49)
    at Array.forEach (<anonymous>)
    at postcss.process.then (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:27)
    at <anonymous>
 @ ./src/scss/styles.scss 4:14-200
 @ multi ./node_modules/font-awesome/scss/font-awesome.scss ./src/scss/styles.scss

WARNING in ./node_modules/css-loader?{"sourceMap":false,"import":false}!./node_modules/postcss-loader/lib?{"ident":"postcss","sourceMap":false}!./node_modules/sass-loader/lib/loader.js?{"sourceMap":false,"precision":8,"includePaths":[]}!./src/scss/styles.scss
(Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5764:7: Can not find grid areas: header, one, two, three, four, five, six, seven
NonErrorEmittedError: (Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5764:7: Can not find grid areas: header, one, two, three, four, five, six, seven
    at Object.emitWarning (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/webpack/lib/NormalModule.js:117:16)
    at result.warnings.forEach (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:49)
    at Array.forEach (<anonymous>)
    at postcss.process.then (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:27)
    at <anonymous>
 @ ./src/scss/styles.scss 4:14-200
 @ multi ./node_modules/font-awesome/scss/font-awesome.scss ./src/scss/styles.scss

WARNING in ./node_modules/css-loader?{"sourceMap":false,"import":false}!./node_modules/postcss-loader/lib?{"ident":"postcss","sourceMap":false}!./node_modules/sass-loader/lib/loader.js?{"sourceMap":false,"precision":8,"includePaths":[]}!./src/scss/styles.scss
(Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5820:9: Can not find grid areas: title, middle, utility
NonErrorEmittedError: (Emitted value instead of an instance of Error) autoprefixer: /mnt/c/Development/propelpr/Propel/src/main/client/src/scss/styles.scss:5820:9: Can not find grid areas: title, middle, utility
    at Object.emitWarning (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/webpack/lib/NormalModule.js:117:16)
    at result.warnings.forEach (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:49)
    at Array.forEach (<anonymous>)
    at postcss.process.then (/mnt/c/Development/propelpr/Propel/src/main/client/node_modules/postcss-loader/lib/index.js:149:27)
    at <anonymous>
 @ ./src/scss/styles.scss 4:14-200
 @ multi ./node_modules/font-awesome/scss/font-awesome.scss ./src/scss/styles.scss

Mention any other details that might be useful (optional)
I just did some digging on this. If I remove all my sass references using css grid, it builds without errors. could this possibly be a webpack issue?

I just did some digging on this. If I remove all my sass references using css grid, it builds without errors. could this possibly be a webpack issue?

Just curious if there was any movement on this. It is not effecting my build as the scss is still transpiling correctly, however it is pretty annoying!

+1

+1

same issue here, using /* autoprefixer: off */ at the top of every scss file that uses grid layout as a workaround for now..

maby related, after updating I'm also getting autoprefixer warnings about a library css file:
WARNING in ./src/styles.scss
(Emitted value instead of an instance of Error) autoprefixer: /builds/<project root>/node_modules/intro.js/minified/introjs.min.css:1:615: Gradient has outdated direction syntax. Replace `cover` to `farthest-corner`.
NonErrorEmittedError: (Emitted value instead of an instance of Error) autoprefixer: /builds/<project root>/node_modules/intro.js/minified/introjs.min.css:1:615: Gradient has outdated direction syntax. Replace `cover` to `farthest-corner`.
    at Object.emitWarning (/builds/<project root>/node_modules/webpack/lib/NormalModule.js:117:16)
    at result.warnings.forEach (/builds/<project root>/node_modules/postcss-loader/lib/index.js:149:49)
    at Array.forEach (<anonymous>)
    at postcss.process.then (/builds/<project root>/node_modules/postcss-loader/lib/index.js:149:27)
    at <anonymous>
 @ multi ./src/styles.scss

I'm importing this file via @import '../node_modules/intro.js/minified/introjs.min.css'; in styles.scss.
very annoying since I cant change that file..


[flutter_tools] add debug trace when compiling dart2js

Add debugging for https://github.com/flutter/flutter/issues/114980#issuecomment-1316117670

test-exempt: debugging


[ETH_BYTECODE_DB] Import smart-contract-sanctuary contracts

Import contracts from https://github.com/tintinweb/smart-contract-sanctuary

Is not possible as there are no compiler details available in the dataset and contracts are merged into a single file


remove neopixel code from codal.cpp in pxt-common-packages

codal.cpp should not have device-specific code like this.

With the refactor of pxt-common-packages into separate smaller packages, some that might be device dependent. I believe this is resolved?

Please re-open if not.


CARCH=x86-64

See https://github.com/conda-forge/fluidsim-feedstock/pull/6

See https://github.com/conda-forge/fluidsim-feedstock/pull/6

@conda-forge-admin, please rerender

@conda-forge-admin, please rerender

@paugier Wrong repo to send PR to. Also it seems that "rerender" does not work with PRs from organizational repos, like fluiddyn/... .

@paugier Wrong repo to send PR to. Also it seems that "rerender" does not work with PRs from organizational repos, like fluiddyn/... .

Oh yes of course! I'll try again. Github is too complicated for me :-)

Oh yes of course! I'll try again. Github is too complicated for me :-)


Issue #930 Fix putIfAbsent return in face of failures

LGTM

@chrisdennis @cljohnso @AbfrmBlr Anything to add?

LGTM-too


Docs: should ./actions be ./actionCreators

In the Actions docs:

Action creators are exactly that—functions that create actions. It's easy to conflate the terms “action” and “action creator,” so do your best to use the proper term.

In keeping consistent with that, should actions.js be called actionCreators.js?
(This may be more bikeshedding, ala #377)

We try to always use the proper term in docs, but we make concessions for things you type most often.
In this case, we use the shorter file names and prop names in examples—but not the API or docs.
I think it's a fine balance, and from my experience answering the questions people don't find it confusing.


Remove unnecessary CRDs and RBAC rules

Fixes #3489
This PR is based on #3435, only the last commit is relevant to this PR.
Some CRDs and access control rules are required by member or leader
only, so remove unused CRDs and RBAC rules in separate leader and member
manifests.
Please note: since Kustomize didn't support deleteFromPrimitiveList,
it's unable to remove elements in all-in-one RBAC rules through overlay
setting, so I added separate rbac files for both leader and member. It means
if you use kubebuilder comment marker without adding them into right overlay role files, you will only
get the change in all-in-one file which it's the file in multicluster/config/rbac/role.yaml.
Signed-off-by: Lan Luo<EMAIL_ADDRESS>

/test-multicluster-e2e

Codecov Report

Merging #3491 (d3db66f) into main (3c2bfe0) will decrease coverage by 15.42%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main    #3491       +/-   ##
===========================================
- Coverage   65.47%   50.05%   -15.43%
===========================================
  Files         268      374      +106
  Lines       26909    41327    +14418
===========================================
+ Hits        17620    20686     +3066
- Misses       7366    18374    +11008
- Partials     1923     2267      +344

Flag
Coverage Δ

integration-tests
35.82% <ø> (?)

kind-e2e-tests
39.88% <ø> (-15.77%)
:arrow_down:

unit-tests
42.54% <ø> (-0.15%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

 Otherwise /test-multicluster-e2e is not reliable

Could you explain the following in more details?
It means if you use kubebuilder comment marker without adding them into right overlay role files, you will only
get the change in all-in-one file which it's the file in multicluster/config/rbac/role.yaml.

Does that indicate that in the future, rbac rules for member/leader needs to be manually added (in /config/overlays/member/roles.yml for example)? If so, is multicluster/config/rbac/role.yaml still used anywhere?

Could you explain the following in more details?
It means if you use kubebuilder comment marker without adding them into right overlay role files, you will only
get the change in all-in-one file which it's the file in multicluster/config/rbac/role.yaml.

Does that indicate that in the future, rbac rules for member/leader needs to be manually added (in /config/overlays/member/roles.yml for example)? If so, is multicluster/config/rbac/role.yaml still used anywhere?

correct, we need manually add all required roles separately in the future, role.yaml is automatically generated when we run make manifests because controller-gen will translate any kubebuilder comment marker into correct role setting automatically. but it will not be used by leader and member manifests directly any more after this change. but you can refer to the auto-generated roles if you still like to use kubebuilder marker. and we may reuse the all-in-one role file again once deleteFromPrimitiveList directive is supported in Kustomize.

/test-multicluster-e2e

/test-multicluster-e2e

@Dyanngg multicluster e2e passed after I rebased my changes on top of your ACNP e2e. but I checked the ACNP e2e test, it only verify the replicated ACNP's realization, no failed case for event creation,  I manually tried it, it works as expected. so I think this PR can work fine with latest ACNP changes.

@jianjuns @tnqn  do you have any new comment for this PR? thanks!

@luolanzone could you rebase?

/test-multicluster-e2e

@tnqn rebase is done, MC e2e is triggered. thanks.

/skip-all


Salt...

 The salt can then be used to make Brine from Mekanism, which means you can achieve 4x ore processing without having to build the thermal evaporation towers as the intended progression through Mekanism. A simple solution would be to disable Pam's Harvestcraft salt from being used to create brine and only allow the Mekanism salt (which has to be mined in word) to be used to create the brine or the towers. i will post on the mekanism github too incase you think the issue lies with them i will post on the cooking for blockheads git hub incase you thing its their issue
(https://github.com/blay09/CookingForBlockheads/issues/163) (https://github.com/MatrexsVigil/harvestcraft/issues/156)

Or you could set up an autocrafter. Either way, doesn't look gamebreaking
to me.

it makes the solar tower micbober useless pretty much

Solar tower is already almost useless tbh. I'd say it's a nice interaction
exploit.

its not my view on it rather someone elses i post alot for all the mods github after we test if the issue is an issue before passing it to devs to cutdown on issues

Not a big enough issue.


Google Canary - Error: net::ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY

Google Canary - Error: net::ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY
By following the Using the Dialogue Component and Amazon Lex to Build a Chatbot tutorial I made a new chatbot scene.
I use Windows 10 Pro (version 2004)
Using Google Chrome (Version 90.0.4430.93 (Official Build) (64-bit)) it's all good, working OK.
Using Google Chrome Canary (Version 92.0.4495.0 (Official Build) canary (64-bit)) I am experiencing errors.
This is important to fix since Canary code will make its way to standard Crome soon!
aws-sdk-2.657.0.min.js:71 POST https://runtime.lex.us-east-1.amazonaws.com/bot/BookTrip/alias/Test/user/us-east-1%3A350bd97c-3c63-47ad-8b99-eeceffda7c83/content net::ERR_HTTP2_INADEQUATE_TRANSPORT_SECURITY

Thanks for reporting this @IvanFarkas. We were able to reproduce this for a while and were tracking down the cause, however we are no longer able to reproduce this on Chrome 92.0.4515.59.
Can you confirm whether or not this issue is still occurring for you on Chrome v92? That version is currently in the Chrome Beta release channel.

OK on Version 93.0.4555.0 (Official Build) canary (64-bit).


To Reproduce
Steps and/or code snippet to reproduce the behavior:
Just take YJK example and change it to load in screen5 mode and load an SC5 file instead.
#include <msx.h>
#include <screen.h>
#include <stdint.h>
#include <text.h>

#include <bmem.h>
#include <resources.h>

void main(void) {
  screen5();
  border_color(0);
  vdp_set_hscroll_mask(true);
  resource_bload_s("MSX.SC5");
  for (;;) {
    // ---- still image ----
    await_vsync();
    vdp_set_hscroll(0);
    vdp_set_vscroll(0);
    sleep_ticks(300);
  }
}

Expected behavior
I was wondering why resource_bload_s was so darn slow...
Then i tried bmem_copy_to_vmem and it was also slow.
They do work but the performance was disappointing.
Then i tried a simple uncompressed screen mode 5 image from a 32kb rom and it was like 200% faster.
I then ended up splitting up the uncompressed image manually and then outputting them like so :
bmem_set_bank(1);
vmem_write_unsafe(0x0000, IMG_SR5_part1_bin, sizeof(IMG_SR5_part1_bin));
bmem_set_bank(2);
vmem_write_unsafe(0x0000+sizeof(IMG_SR5_part1_bin), IMG_SR5_part2_bin, sizeof(IMG_SR5_part2_bin));

It also was much faster. (This is assuming an SC5 bigger than 16kb but smaller than 32kb)
I ended up coming up with this to go around the issue with bmem_copy_to_vmem/resource_bload_s but it would be nice to address this.
It's very clear looking at bmem_copy_to_vmem the reason why its so slow
void bmem_copy_to_vmem(bmemptr_t src, vmemptr_t dst, uint32_t len) {
  uint8_t bank = bmem_bank_of(src);
  const uint16_t offset = (uint16_t)(src & 0x3fff);
  const uint8_t * p = (const uint8_t *)0x8000 + offset;
  uint32_t n = (uint32_t)0x4000 - offset;

  const uint8_t old_bank = bmem_get_bank();
  vmem_set_write_address(dst);
  while (len) {
    if (len < n) {
      n = len;
    }
    len -= n;
    bmem_set_bank(bank);
    while (n--) {
      vmem_set(*p++);
    }
    bank++;
    p = (const uint8_t *)0x8000;
    n = (uint32_t)0x4000;
  }
  bmem_set_bank(old_bank);
}

I haven't tried this with YJK format but i assume we can get that one to be much faster too.
The problem with YJK is that it's much bigger unfortunately and we don't have ZX0/ZX1 to VDP code available like devkitSMS does.
Ideas to fix this could include changes to ResourcesIndex and how it's laid out. Potential tweaks to the bload function as well.
I'm not sure how to do it properly to be honest
Development environment (please complete the following information):

OS and version: Void linux
Compiler and version: sdcc 4.2
Emulator and version: openMSX
BIOS and version: C-BIOS (also happens on the real deal)

Target Platform

[ ] MSX
[X] MSX2
[X] MSX2+
[X] MSXturboR

Additional context
Add any other context about the problem here.

Thanks! @gameblabla
Fixed the issue.
uint16_t is better for type of n in this case.
That would be 1.5x to 2.0x faster.

Improved furthermore.
About 5x faster than the old version.

This is a lot faster but still falls short of what could be done with assembly.
On the Colecovision, i was using this from libcv:
https://github.com/sehugg/cvlibc/blob/master/libcv/src/cv_vmemtomemcpy_slow.s#L26
_cv_vmemtomemcpy_slow:
	ld hl, #0x2
	add hl, sp
	ld e, (hl)		; dest
	inc hl
	ld d, (hl)		; dest
	inc hl
	ld b, (hl)		; n
	inc hl
	ld a, (hl)		; n
	ex de, hl
	ld d, a
	or a, b
	jr z, Ende		; n == 0 ?
	ld c, #0xbe		; Port
	ld a, b
	or a
	jr z, Weiter		; n % 256 == 0 ?
	inc d
Weiter:
	ini
	nop
	jp nz, Weiter
	dec d
	jp nz, Weiter
Ende:
	ret

And it was noticeably faster than even vmem_write_unsafe. (at least for MSX1 stuff anyway)
Too bad i couldn't get it to work on the msx
MsxGL has its own VDPWrite function for 128K :
https://github.com/aoineko-fr/MSXgl/blob/c475d11dd1d1b57c2778727ec7032c457650d0d4/engine/src/vdp.c#L1037
Although it doesn't seem to handle banks. (?)
void VDP_WriteVRAM_128K(const u8* src, u16 destLow, u8 destHigh, u16 count) __sdcccall(0)
{
	src;      // iy+5 iy+4
	destLow;  // iy+7 iy+6
	destHigh; // iy+8
	count;    // iy+10 iy+9
	__asm
		ld		iy, #2
		add		iy, sp
		// Setup address register
		ld		a, 4(iy)
		add		a, a
		add		a, a
		ld		c, a
		ld		a, 3(iy)
		rlca
		rlca
		and		a, #0x03
		add		a, c
		VDP_DI //~~~~~~~~~~~~~~~~~~~~~~~~~~
		out		(P_VDP_ADDR), a			// RegPort = (page << 2) + (dest >> 14)
		ld		a, #VDP_REG(14)
		out		(P_VDP_REG), a			// RegPort = VDP_REG(14)
		ld		a, 2(iy)
		out		(P_VDP_ADDR), a			// RegPort = (dest & 0xFF)
		ld		a, 3(iy)
		and		a, #0x3f
		add		a, #F_VDP_WRIT
		VDP_EI_DEF //~~~~~~~~~~~~~~~~~~~~~~~~~~
		out		(P_VDP_ADDR), a			// RegPort = ((dest >> 8) & 0x3F) + F_VDP_WRIT
		// while(count--) DataPort = *src++;
		ld		l, 0(iy)				// source address
		ld		h, 1(iy)
		ld		c, #P_VDP_DATA			// data register
		// Handle count LSB
		ld		a, 5(iy)				// count LSB
		cp		a, #0
		jp		z, wrt_loop_init		// skip LSB
		ld		b, a					// send (count & 0x00FF) bytes
		otir
		// Handle count MSB
	wrt_loop_init:
		ld		a, 6(iy)				// count MSB
	wrt_loop_start:
		cp		a, #0
		jp		z, wrt_loop_end			// finished
		ld		b, #0					// send 256 bytes packages
		otir
		dec		a
		jp		wrt_loop_start

	wrt_loop_end:
		VDP_EI_ALL //~~~~~~~~~~~~~~~~~~~~~~~~~~
	__endasm;
}

While your changes improve things a lot, it's still quite massive
;------------------------------------------------------------
;Allocation info for local variables in function 'bmem_copy_to_vmem'
;------------------------------------------------------------
;dst                       Allocated with name '_bmem_copy_to_vmem_PARM_2'
;len                       Allocated with name '_bmem_copy_to_vmem_PARM_3'
;src                       Allocated to registers r4 r5 r6 r7
;__1310720003              Allocated to registers r0
;bank                      Allocated to registers r1
;offset                    Allocated to registers r4 r5
;p                         Allocated to registers r3 r6 r7
;n                         Allocated to registers r4 r5
;old_bank                  Allocated to registers r2
;__1310720004              Allocated to registers
;loc                       Allocated to registers
;------------------------------------------------------------
;	bmem_copy_to_vmem.c:23: void bmem_copy_to_vmem(bmemptr_t src, vmemptr_t dst, uint16_t len)  {
;	-----------------------------------------
;	 function bmem_copy_to_vmem
;	-----------------------------------------
_bmem_copy_to_vmem:
	mov	r4,dpl
	mov	r5,dph
	mov	r6,b
	mov	r7,a
;	bmem_copy_to_vmem.c:24: uint8_t bank = bmem_bank_of(src);
	mov	ar0,r5
	mov	a,r6
	mov	c,acc.7
	xch	a,r0
	rlc	a
	xch	a,r0
	rlc	a
	mov	c,acc.7
	xch	a,r0
	rlc	a
	xch	a,r0
	rlc	a
	xch	a,r0
	anl	a,#0x03
	mov	r1,a
	mov	a,r7
	add	a,r7
	add	a,acc
	orl	a,r1
	mov	a,r7
	rl	a
	rl	a
	anl	a,#0x03
;	bmem_copy_to_vmem.c:25: const uint16_t offset = (uint16_t)(src & 0x3fff);
	anl	ar5,#0x3f
;	bmem_copy_to_vmem.c:26: const uint8_t * p = (const uint8_t *)0x8000 + offset;
	mov	_bmem_copy_to_vmem_p_65536_26,r4
	mov	a,#0x80
	add	a,r5
	mov	(_bmem_copy_to_vmem_p_65536_26 + 1),a
;	bmem_copy_to_vmem.c:27: uint16_t n = (uint16_t)0x4000 - offset;
	clr	a
	mov	(_bmem_copy_to_vmem_p_65536_26 + 2),a
	clr	c
	subb	a,r4
	mov	r4,a
	mov	a,#0x40
	subb	a,r5
	mov	r5,a
;	bmem_copy_to_vmem.c:29: const uint8_t old_bank = bmem_get_bank();
	lcall	_bmem_get_bank
	mov	_bmem_copy_to_vmem_old_bank_65536_26,dpl
;	bmem_copy_to_vmem.c:30: vmem_set_write_address(dst);
	mov	dpl,_bmem_copy_to_vmem_PARM_2
	mov	dph,(_bmem_copy_to_vmem_PARM_2 + 1)
	mov	b,(_bmem_copy_to_vmem_PARM_2 + 2)
	mov	a,(_bmem_copy_to_vmem_PARM_2 + 3)
	push	ar5
	push	ar4
	push	ar0
	lcall	_vmem_set_write_address
	pop	ar0
	pop	ar4
	pop	ar5
;	bmem_copy_to_vmem.c:31: while (len) {
	mov	ar1,r0
00103$:
	mov	a,_bmem_copy_to_vmem_PARM_3
	orl	a,(_bmem_copy_to_vmem_PARM_3 + 1)
	orl	a,(_bmem_copy_to_vmem_PARM_3 + 2)
	orl	a,(_bmem_copy_to_vmem_PARM_3 + 3)
	jz	00105$
;	bmem_copy_to_vmem.c:32: if (len < n) {
	mov	ar0,r4
	mov	ar2,r5
	mov	r6,#0x00
	mov	r7,#0x00
	clr	c
	mov	a,_bmem_copy_to_vmem_PARM_3
	subb	a,r0
	mov	a,(_bmem_copy_to_vmem_PARM_3 + 1)
	subb	a,r2
	mov	a,(_bmem_copy_to_vmem_PARM_3 + 2)
	subb	a,r6
	mov	a,(_bmem_copy_to_vmem_PARM_3 + 3)
	subb	a,r7
	jnc	00102$
;	bmem_copy_to_vmem.c:33: n = len;
	mov	r4,_bmem_copy_to_vmem_PARM_3
	mov	r5,(_bmem_copy_to_vmem_PARM_3 + 1)
00102$:
;	bmem_copy_to_vmem.c:35: len -= n;
	mov	ar2,r4
	mov	ar3,r5
	clr	a
	mov	r6,a
	mov	r7,a
	mov	a,_bmem_copy_to_vmem_PARM_3
	clr	c
	subb	a,r2
	mov	_bmem_copy_to_vmem_PARM_3,a
	mov	a,(_bmem_copy_to_vmem_PARM_3 + 1)
	subb	a,r3
	mov	(_bmem_copy_to_vmem_PARM_3 + 1),a
	mov	a,(_bmem_copy_to_vmem_PARM_3 + 2)
	subb	a,r6
	mov	(_bmem_copy_to_vmem_PARM_3 + 2),a
	mov	a,(_bmem_copy_to_vmem_PARM_3 + 3)
	subb	a,r7
	mov	(_bmem_copy_to_vmem_PARM_3 + 3),a
;	bmem_copy_to_vmem.c:36: bmem_set_bank(bank);
	mov	dpl,r1
	lcall	_bmem_set_bank
;	bmem_copy_to_vmem.c:37: vmem_write_chunk(p, n);
	mov	_vmem_write_chunk_PARM_2,r4
	mov	(_vmem_write_chunk_PARM_2 + 1),r5
	mov	dpl,_bmem_copy_to_vmem_p_65536_26
	mov	dph,(_bmem_copy_to_vmem_p_65536_26 + 1)
	mov	b,(_bmem_copy_to_vmem_p_65536_26 + 2)
	push	ar1
	lcall	_vmem_write_chunk
	pop	ar1
;	bmem_copy_to_vmem.c:38: bank++;
	inc	r1
;	bmem_copy_to_vmem.c:39: p = (const uint8_t *)0x8000;
	mov	_bmem_copy_to_vmem_p_65536_26,#0x00
	mov	(_bmem_copy_to_vmem_p_65536_26 + 1),#0x80
	mov	(_bmem_copy_to_vmem_p_65536_26 + 2),#0x00
;	bmem_copy_to_vmem.c:40: n = (uint16_t)0x4000;
	mov	r4,#0x00
	mov	r5,#0x40
	sjmp	00103$
00105$:
;	bmem_copy_to_vmem.c:42: bmem_set_bank(old_bank);
	mov	dpl,_bmem_copy_to_vmem_old_bank_65536_26
;	bmem_copy_to_vmem.c:43: }
	ljmp	_bmem_set_bank

You're right that inlining vmem_write_chunk made performance worse as the generated assembly became worse.
20 lines of asm or so for bmem_bank_of seems excessive. The loop related code doesn't seem too bad tho, i guess.

libcv does not support V9938/V9958.
MSXgl's VDP Write function seems limited data transfer at most 64KiB.
Both of them do not support banked memory to VRAM transfer.
bmem_copy_to_vmem() is more complex than that.
bmem_bank_of() is called just once.
Thus its impact is considered low in contrast to copy loop, especially for large image.
Possibly, using outi / otir is faster than out nn, r / out (c), r.
(e.g. use otir instead of vmem_write_chunk())

Possibly, using outi / otir is faster than out nn, r / out (c), r.
(e.g. use otir instead of vmem_write_chunk())

Yeah outi/otir sounds like it could be better although i have no z80 asm knowledge...
This is basically what SDCC generates right now
static void vmem_write_chunk(const uint8_t * p, uint16_t n) {
	p;
	n;
	__asm
		ld	c, l
		ld	b, h
	dd:
		ld	a, e
		ld	l, d
		dec	de
		or	a, l
		ret	Z
		ld	a, (bc)
		out	(_vdp_port0), a
		inc	bc
		jr	dd
		__endasm;
}

As for bmem_bank_of(), you're right tho it can be a potential issue if you display one image after the other quickly. But then i suppose bmem_copy_to_vmem wouldn't be suitable for that.

Yeah, this is pretty good now, it's quite comparable to what i achieved with VDP_WriteVRAM_128K. Besides some hardware tricks, i'm not sure we can go faster than that. (well, maybe with the ZX0/ZX1/ZX7 decompressors for YJK but that's another story :P)

It looks good! Thank you very much.

If i may suggest further possible improvements, i've been told 256x outi's could further improve performance at the slight expense of ROM space.
Here's one i use for screen mode 5
.globl _showpicture_screenmode5

_showpicture_screenmode5:
	; Set VRAM address to 0
	Xor a
	Out (0x99),a
	Ld a, #14+128
	Out (0x99),a
	Xor a
	Out(0x99),a
	Ld a,#64
	Out(0x99),a

	ld a,(#0xc000) ;obviously it could be everywhere in RAM and you retrieve bank value this way
	ld (#0x7000),a

    ld hl,#0x8000
    ld bc,#0x0098
    ld a,#64
loop1:
	; Outi instead of otir
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	; End of outi
    dec a
    jp nz,loop1

    ld a,(#0xc000)
    inc a
    ld (#0x7000), a

    Ld hl,#0x8000
    Ld a,#18
loop2:
	; Unrolled loop
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	outi
	; End
    dec a
    jp nz,loop2
    ret

I then poke at this address
volatile unsigned char *bank_switch = (volatile unsigned char *) 0xC000;
*bank_switch = 1;
to set the bank where the picture is stored. (ascii16 obviously)
It's slightly better than using otir, assuming the screen resolution is 256 pixels wide.

@gameblabla
Be careful to do that.
Possibly too fast access to VRAM doesn't work.
(even if it works on emulator, it may not works on real machine)
See also issue #55 .


Transfer Files to Gridstore

Is there no way to transfer files to MongoDB Gridstore?

Also would like to know how to do that because I migrate files to server but Parse server does not seem to pick them up.

Looks like GridStoreAdapter is missing in transfer.js. It should be easy to add it though. The easiest workaround is to move the imported files to a files directory in your parse-server and configure it to use the parse-server-fs-adapter instead.
  "filesAdapter": {
    "module": "parse-server-fs-adapter",
    "options": {
      "filesSubDirectory": ""
    }


Feature-Request: Save macros so that they can be run later

As far as I can see this is a record one, use many design.
I want to save my macro keystroke sequence, with a name, so that it can be run later (even given a keyboard shortcut) so that I can record many macros and run them when needed.

Thank you for the request!
I agree on the usefulness of saving macros, although I'm not familiar with using such a feature.
My current plan is as follows.

Add a new command to create a JSON text that contains the latest recorded sequence.

The JSON text is in the keybindings format of vscode, so you can copy-and-paste it to keybindings.json with any key.
The keybinding invokes the kb-macro.playback command with the recorded sequence in the args parameter.

Add sequence argument support to the kb-macro.playback command.

Maybe, the JSON text would look like this:
{
  "key": "",
  "command": "kb-macro.playback",
  "args": {
    "sequence": [
      { "command": "xxxx" },
      { "command": "yyyy", "args": "zzz" }
    ]
  }
}

Just being able to save the sequence and playback between VS Code sessions would be useful (does it do that now? If so, I've missed it in the docs)
With the JSON format, being able to edit the command sequence.

(does it do that now? If so, I've missed it in the docs)

No. Currently, the recorded sequence is being kept only in the memory and discarded before every new recording.
So, this feature will open a new door. 😊

Ah, perfect, saving the sequence to disk will be really useful and as you say open up up many possibilities.

Hi @UrmaGurd,
I have implemented two fundamental functionalities.
And I think it is worth making a new release!
The two functionalities are retrieving the recorded macro as JSON and playback of a macro specified by JSON.
The user is needed to paste the JSON to their own keybindings.json file manually.
So I mean saving macros to disk is not included in this feature actually. But I think it's enough.
If there's no problem, I will make a release with this feature soon.
Thanks!

Sounds great.

I saw the release yesterday, does it include this change? If so, how does it work?

Brilliant! Just need to get VS Code to update to new version now.
On Monday, 7 February 2022, 15:35:55 GMT, tshino<EMAIL_ADDRESS>wrote:

If you are seeing v0.11.0, yes.
I wrote an explanation in the README. Please check out the How to save the recorded sequence for future use section.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>


Pipeline editor: palette displays broken image link

1.0.0.rc2+
Not sure if this is a known canvas issue. Open the pipeline editor and expand the palette:

nice catch, it seems that one of the canvas updates added that to the toolbar and we didn't notice. We should find a way to remove/disable it since we don't actually want it

this is the result of upgrade to canvas 9.0.3 which introduced enablePaletteLayout: 'None' to canvas config


inconsistent tag names between server and sdk

Expected Behavior
Expect to see sdk metrics in the sdk dahboard
Actual Behavior
The sdk metrics do not get populated in this dashboard
Steps to Reproduce the Problem

enable metrics in client
setup graphana/promethus
import sdk dashboard in graphana

Additional Info
The graphana dashboard use names like namespace, workerType etc which seems to  be in consistent with tags originated from server (frontend, matcher etc)  .i.e  https://github.com/temporalio/temporal/blob/master/common/metrics/tags.go (the canary tests which i presumes runs from the worker and the temporal namespace which is only in server shows info here)
But however real namespaces do not endup showing data here because the tag names mismatch  (see java sdk and  go sdk  tags
these do not appear in grafana as the tag names are little different e.g Namespace in sdk and namespace in server, WorkflowType in server etc.
Now should the namespace tag not be same every where.
Now what iam confused is is this discrepancy between server and sdk code , or is it bug in the graphana dashoard json file!

i think the metric tags in java sdk are here

i think the metric tags in java sdk are here

Madhu, thanks for reporting, we are aware of this issue and will address it soon.

Madhu, thanks for reporting, we are aware of this issue and will address it soon.

Following changes should address this issue:
https://github.com/temporalio/sdk-java/pull/318
https://github.com/temporalio/sdk-go/pull/345
https://github.com/temporalio/dashboards/pull/8

Following changes should address this issue:
https://github.com/temporalio/sdk-java/pull/318
https://github.com/temporalio/sdk-go/pull/345
https://github.com/temporalio/dashboards/pull/8

hi is there a new sdk release for this or should i take latest of 1.04 sdk?

hi is there a new sdk release for this or should i take latest of 1.04 sdk?


Hiding Properties?

Is the only way to hide a property from Swagger to use the Obsolete attribute?
If this is the case then a new attribute needs to be added to hide properties, marking properties as obsolete in order to hide them is massively retarded IMO. You're marking it as something its not for an entirely different intention.

Firstly, I think your choice of words above is offensive and suggest that you show a little more tact when posting to public forums.
Secondly, omitting obsolete actions/properties in an API from documentation, to discourage future use while still maintaining compatibility during a transition, is a common practice for API providers. This is why Swashbuckle provides the option to hide actions or properties marked with the Obsolete attribute. This is the only use-case for which this feature is intended.
In fact, I can't really think of any other good reason to expose a property in your API but still hide it in your documentation. Perhaps you could elaborate on your specific case a little more?

Because of the way webapi works its not easy to intercept a model and modify it while hiding it from the consumer.
Using an explicit interface doesn't help because swagger includes it regardless. Obsolete marks it as deprecated when it's not. You can ignore a route but not a property. Which is against what you just said. Why would you hide a route if its not used.
 It's abuse of an attribute. If a property is to be marked as obsolete with a message, but not meant to be hidden from the api. It breaks the intent of the attribute.
Don't get me wrong. The project is awesome and been a huge help. But I'm reading the docs for two trivial things. Hiding routes and properties. And both IMO are done wrong.
Sent by Outlook for Android
On Sun, Jun 21, 2015 at 10:17 PM -0700, "domaindrivendev"<EMAIL_ADDRESS>wrote:
Firstly, I think your choice of words above is offensive and suggest that you show a little more tact when posting to public forums.
Secondly, omitting obsolete actions/properties in an API from documentation, to discourage future use while still maintaining compatibility during a transition, is a common practice for API providers. This is why Swashbuckle provides the option to hide actions or properties marked with the Obsolete attribute. This is the only use-case for which this feature is intended.
In fact, I can't really think of any other good reason to expose a property in your API but still hide it in your documentation. Perhaps you could elaborate on your specific case a little more?
—
Reply to this email directly or view it on GitHub.

Just to clarify, Swashbuckle IS NOT saying:
"Use the Obsolete attribute when you wish to hide a property"
What it's saying is:
"If you have an obsolete property, you MAY choose to hide it from your docs by applying the IgnoreObsoleteProperties setting"
Do you see the difference?
Also, just be be clear on the intent of the Obsolete attribute in C# ...
https://msdn.microsoft.com/en-us/library/22kk2b44(v=vs.90).aspx)
"The Obsolete attribute marks a program entity as one that is no longer recommended for use"
That is, it can still be consumed but is no longer recommended for use. Don't you think it stands to reason that an API provider may want to completely omit such a property from the docs???
Finally, leaving the "Obsolete" discussion aside, I'd really like to understand what you're actually trying to do and why you have a property on your contract model that you don't want to document. A code sample might help ...

One example is, given a request for say, a list of accounts a user has access to:
public class AccountsController : ...
{
    ...

    [HttpGet, Route("accounts")
    public GetAccountsResult List(GetAccountsRequest request)
    {
        return queryHandler.Handle<GetAccountsRequest, GetAccountsResult>(request);
    }
}

We intercept the request object and bind the user data to it so the next layer has all the information:
public class GetAccountsRequest : IRequireUserContext
{
    public IUserContext UserContext {get;set;}
}

This data is not supplied by the client, its supplied by either the tokens or the cookies depending on the method of authentication.
This is omitted from the SDK by having a different model. But Swashbuckle picks it up.
I tried making the class usage explicit:
IUserContext IRequireUserContext.UserContext {get;set;}
As well as making it internal. But it's still picked up. However, in both cases it's easily missed to not explicitly implement or make internal.
Ideally we would want to mark it on the interface as [SwashIgnore] and it wouldn't get picked up.
Hope that makes sense. We have other features we wish were in Swash/Swagger but I don't think they fit and are rather complicated for a single use case.

Just use accurate C# semantics in your code as follows ...
public class GetAccountsRequest : IRequireUserContext
{
    internal IUserContext UserContext {get;set;}
}

I just tested this locally and confirmed that the property is ignored from the resulting Swagger. I don't want to introduce an additional attribute for an intent (internal setting as you described) that can already be expressed by a C# keyword

Hmmmm I tried the internal last week but it was still appearing.
I'll try internal again and if it does indeed ignore it I'll close this.
Thanks.

Ok @domaindrivendev, I re-tested the internal, not sure what I was doing wrong because it was coming through and then it just stopped. It must have not been updating the assembly so I guess it picked up the one before it was set to internal.
Sorry for the hassle. I still find it a little inconvenient because its something that now needs to be policed.
Now to figure out how to strip off inherited types from showing when we do:
public class GetAccountsRequest : SomeBaseRequest, IRequireUserContext
Causes Swagger to display both request objects.

Just make the interface internal too - that way it won't be possible for anyone to expose it as a "public" property

It's a little bit more complicated than that.
I have a .NET SDK. This SDK use a request object like:
public class AccountsRequest
{
   public int Subsidary {get;set;}
}

In WebAPI we inherit this class to add additional stuff to it:
public class GetAccountsRequest : AccountsRequest, IRequireUserContext, IQueryRequest
{
   ....
}

This is so the SDK just gets a clean POCO and nothing more but the API has the stuff it needs, and we don't have to maintain to POCOs that are identical.
Making the AccountsRequest internal would prevent the SDK from being consumed. It can't be made abstract because its instantiated, but it causes an API endpoint in swagger to have 2 models.
For now we have hidden all models from swagger so it only shows a single JSON representation, making the property internal so its not shown.
(complicated somewhat hacky stuff :cry: )

I recoginze this is long closed - not sure on the protocol for commenting in this case but came across this in google looking to solve an issuse...
public StatusCodes? StatusCode { get; internal set; }
The intention is that the status code be serialized and returned when people are performing GET operations... but not be included in the documentation as a property to submit for PUT and POST operations.   I'd prefer not to create an entirely new model for the PUT and POST operations just to suppress this property from the docs.  Might be a use case where Obsolete is not preferable but internal doesn't seem to behave as desired.

@josh-sachs I came across this thread with this exact question, I.E. hiding the ID on POST but not on GET. Did you ever find a solution to it?

@g2petter
See Issue #1098 you can hide whatever you want using a DocumentFilter

@g2petter we tagged stuff obsolete with a comment that it wasn't really obsolete.   I haven't revisited this in some time to explore what better solutions may exist.  Sorry I can't be more help.

Sure we can hack up an attribute and remove properties at runtime by looping through that "superb"  event handler but let's be honest. It would be nice if this option was finally added.
Why would I need it you ask?
Because we have some properties that are not for everyone to use. They are used when the user is validated but we would like to hide them from the documentation so other people (literally 99% of our users) aren't bothered with them, ask about them or even go adding them to their client implementations.
ApiExplorerSettings on properties would solve all this without this ridiculous discussion on how something should be coded, despite having no background to why things are the way they are.
Hell last time I checked people were paid to code and just expecting them to rewrite someone's entire project so that some properties aren't visible is to say the least...unrealistic.

On the core version it seems to be a class usage only property?

You are wrong @Looooooka

last time I checked people were paid to code

Check again most open source project don't have financial backing


The Luhn algorithm does not fit all

for example：
6221730301002042987、4563512600991090527

@pqpo  I will run a check and update shortly.

@pqpo What card type is it ?

It's not a credit card number,  http://www.2cha.com/bank/bank_cardNum_4563512600991090527.html

It will only work on card number.


Sanity check please - Rails console

I love the mail safe gem and its a great tool, but can someone else please check to see whether it protects email sent from the console.
It seems to protect when running as a server but not from a console.

It should work fine from the rails console.  Mail safe itself doesn't know anything about the rails console; it simply does its job if it has been required, and has no effect if it has not been required.
Can you verify that mail safe has been required when you log into your rails console?  Here's what I see in my rails console:
 > $".select { |f| f =~ /mail_safe/ }
 => ["mail_safe/config.rb", "mail_safe/address_replacer.rb", "mail_safe/rails3_hook.rb", "mail_safe.rb"]

($" is an array containing all files that have been required).

HI Myron
Yes I can confirm that it returns
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>But If call call Action Mailer from the console it sends out. I
thought it might be just me but wanted someone else to check.
On Fri, Oct 28, 2011 at 7:40 PM, Myron Marston
<EMAIL_ADDRESS>wrote:

It should work fine from the rails console.  Mail safe itself doesn't know anything about the rails console; it simply does its job if it has been required, and has no effect if it has not been required.
Can you verify that mail safe has been required when you log into your rails console?  Here's what I see in my rails console:
 > $".select { |f| f =~ /mail_safe/ }
 => ["mail_safe/config.rb", "mail_safe/address_replacer.rb", "mail_safe/rails3_hook.rb", "mail_safe.rb"]

($" is an array containing all files that have been required).
--
Reply to this email directly or view it on GitHub:
https://github.com/myronmarston/mail_safe/issues/6#issuecomment-2559590

What does this show in your console?
> Mail.send(:class_variable_get, '@@delivery_interceptors')
 => [MailSafe::MailInterceptor]

I'm thinking that maybe something is clearing the interceptors registered with Mail, including mail_safe.  that would explain it not working.

Thanks for taking the time with this myron.
Looks the same to me

Mail.send(:class_variable_get, '@@delivery_interceptors')
[MailSafe::MailInterceptor]

If you can do a simple test from a clean app and the problem is not there then it must be an issue with my config. I wasnt saying it was a problem, just I needed  a second pair of eyes.


add to documentation: increase max file size for imagery uploads

Is there a way to increase the maximum file size for imagery uploads? We use hi-res imagery a lot for sketch mapping, and it would be useful to be able to upload some GeoTIFF's that are 0.5gb in size or so, for use with Field Papers.

increasing client_max_body_size 100M; should work
https://github.com/posm/posm-build/blob/master/kickstart/etc/nginx-posm.conf#L28
(via @mojodna)

rudo:

Hey Seth, I increased the value in both nginx-posm.conf as well as the 00-posm file in nginx/sites-enabled, and it was working fine for a while, but now it's back to giving me the same 256mb limit message when I try to upload imagery. Nothing's changed, only the server has been turned on and off a few times. Any thoughts on why this might be happening? Perhaps related -- using the URL of already uploaded imagery as a TMS endpoint for Field Papers is also no longer working on our device.

@mojodna:

The nginx configs are still modified? What's the TMS endpoint? (I'd like to ask you to check logs but want to know which ones to look at first)

The underlying component for aerial imagery handling is here: https://github.com/posm/posm-imagery-api
Logs for that should be in /var/log/upstart/imagery-web.log

rudo:

Yup, they are still modified. And the TMS endpoint are the ones generated by the posm. Such as http://posm.io/imagery/7fec30e5-809e-4480-9158-3ef60d16d4bb/{z}/{x}/{y}.png

@mojodna:

Ok, that's the right log file then

@mojodna:

What do these say?
ls -lhR /opt/data/imagery/
ls -lhR /opt/data/uploads/
docker ps | grep imagery-web

root@posm:~# ls -lhR /opt/data/imagery
/opt/data/imagery:
total 20K
drwxr-xr-x 2 posm-admin posm-admin 4.0K Apr 19 16:45 09b486f2-97d0-4b9a-9aef-029a2dcc9c97
drwxr-xr-x 2 posm-admin posm-admin 4.0K Apr 13 18:08 7a87ca29-9c4f-4d5f-b34f-bfad41ac4136
drwxr-xr-x 2 posm-admin posm-admin 4.0K Apr  4 21:40 7fec30e5-809e-4480-9158-3ef60d16d4bb
drwxr-xr-x 2 posm-admin posm-admin 4.0K Apr 13 18:23 923945a0-4b43-4c64-8088-7ec524b18703
drwxr-xr-x 2 posm-admin posm-admin 4.0K Apr 13 18:25 d6ec9d5f-c8d3-42d5-9ef3-7f2edaed75ec

/opt/data/imagery/09b486f2-97d0-4b9a-9aef-029a2dcc9c97:
total 217M
-rw-r--r-- 1 posm-admin posm-admin  468 Apr 23 15:48 index.json
-rw-r--r-- 1 posm-admin posm-admin 155M Apr 19 16:45 index.mbtiles
-rw-r--r-- 1 posm-admin posm-admin  63M Apr 13 17:50 index.tif
-rw-r--r-- 1 posm-admin posm-admin 4.2K Apr 13 17:50 index.vrt

/opt/data/imagery/7a87ca29-9c4f-4d5f-b34f-bfad41ac4136:
total 90M
-rw-r--r-- 1 posm-admin posm-admin  448 Apr 13 18:08 index.json
-rw-r--r-- 1 posm-admin posm-admin  90M Apr 13 18:08 index.tif
-rw-r--r-- 1 posm-admin posm-admin 4.1K Apr 13 18:07 index.vrt

/opt/data/imagery/7fec30e5-809e-4480-9158-3ef60d16d4bb:
total 70M
-rw-r--r-- 1 posm-admin posm-admin  469 Apr 13 18:07 index.json
-rw-r--r-- 1 posm-admin posm-admin  39M Apr  4 21:40 index.mbtiles
-rw-r--r-- 1 posm-admin posm-admin  32M Apr  4 21:39 index.tif
-rw-r--r-- 1 posm-admin posm-admin 4.2K Apr  4 21:39 index.vrt

/opt/data/imagery/923945a0-4b43-4c64-8088-7ec524b18703:
total 9.9M
-rw-r--r-- 1 posm-admin posm-admin  513 Apr 13 18:23 index.json
-rw-r--r-- 1 posm-admin posm-admin 9.9M Apr 13 18:23 index.tif
-rw-r--r-- 1 posm-admin posm-admin  240 Apr 13 18:23 ingest.task

/opt/data/imagery/d6ec9d5f-c8d3-42d5-9ef3-7f2edaed75ec:
total 3.7M
-rw-r--r-- 1 posm-admin posm-admin  463 Apr 23 15:19 index.json
-rw-r--r-- 1 posm-admin posm-admin 3.7M Apr 13 18:25 index.tif
-rw-r--r-- 1 posm-admin posm-admin 4.5K Apr 13 18:25 index.vrt

root@posm:~# ls -lhR /opt/data/uploads
/opt/data/uploads:
total 0

root@posm:~# docker ps | grep imagery-web
87bd2183f807        quay.io/mojodna/posm-imagery-api            "gunicorn -k geven..."   About an hour ago   Up About an hour    <IP_ADDRESS>:10000->8000/tcp   imagery-web

@mojodna:

At zoom 8, there's only 1 tile that's valid for that bbox: http://posm.io/imagery/09b486f2-97d0-4b9a-9aef-029a2dcc9c97/8/88/126.png

That all looks fine...

@mojodna:

tail -F /var/log/nginx/* (I think that's the right path) while attempting another upload, if you pleasetwee

rudo:

well it pretty much turns it down right away with the msg that it's too large

@mojodna:

I'm wondering if nginx has anything to say that it's not telling us directly

Is File is too big (337.5MiB). Max filesize: 256MiB. from the logs or browser?

rudo:

from the browser.

@mojodna:

There might be more info in the logs then

rudo:

i just tried that command and there is something interesting content;

==> /var/log/nginx/error.log <==
2018/04/23 17:00:02 [error] 1914#0: *1933 connect() failed (111: Connection refu                                                                                sed) while connecting to upstream, client: <IP_ADDRESS>, server: posm, request: "G                                                                                ET /tiles/mm/index.json HTTP/1.1", upstream: "http://<IP_ADDRESS>:8082/tiles/mm/ind                                                                                ex.json", host: "posm.io"
2018/04/23 17:00:02 [error] 1914#0: *1934 connect() failed (111: Connection refu                                                                                sed) while connecting to upstream, client: <IP_ADDRESS>, server: posm, request: "G                                                                                ET /tiles/south-suriname/south-suriname/index.json HTTP/1.1", upstream: "http://                                                                                <IP_ADDRESS>:8082/tiles/south-suriname/south-suriname/index.json", host: "posm.io"

@mojodna:

That's Field Papers attempting to connect to a different service (but let's fix that too in a sec)

This won't be necessary after releasing 0.8.0.


DBZ-4844 Remove --zookeeper flag from startup script

Since Kafka version 3.0.0 --zookeeper flag was removed from Kafka
executables. The option is replaced by --bootstrap-server
option [1, 2]. Update docker images entrypoints to use this option.
[1] https://cwiki.apache.org/confluence/display/KAFKA/KIP-604%3A+Remove+ZooKeeper+Flags+from+the+Administrative+Tools
[2] https://issues.apache.org/jira/browse/KAFKA-10104
https://issues.redhat.com/browse/DBZ-4844

Hey @rk3rn3r, is this related to the DBZ UI build issue you guys were discussing earlier? If so, could you take care of this? That said, why are relying on any compilation from source for this build at all?

Applied, build failure is unrelated and being taken care of separately.


183477630 same sim type bugfix

Simplified SimViewModel

@davkutalek, at the moment, this primarily refactors simViewModel. We were discussing on Slack what to do with the account name ish.

This simviewmodel refactor isn't really doing much tho... It appears to be recreating/updating the account each time, which I don't think is what we want. Ultimately the view model should not be intermediated in the process of finding and creating the accounts since that is business logic. This is what usecases are for. See #592 ListSimsUseCase and SimViewModel. That PR is not quite ready, but I think we can get it ready by next week. In the meantime let's just solve the immediate issue with the names


no .github workflows available in this repo?

Hi
It looks like workflows are not enabled for this repository.
Could you set them up or should that be done when we update a community role?
(I have a big pending modification for the grafana role): https://github.com/strus38/community/tree/main/roles/grafana
Thanks

Dear @strus38
There already is a PR under work 🙂
https://github.com/bluebanquise/community/pull/7
However, I am waiting for the PR from @btravouillon on bluebanquise core https://github.com/bluebanquise/bluebanquise/pull/531 to be merged first. I have to review it.

Ok, in the meantime I have enabled some to test grafana changes.... Because
of the ccb madness.
Le sam. 27 févr. 2021 à 12:15, Ox<EMAIL_ADDRESS>a écrit :

Dear @strus38 https://github.com/strus38
There already is a PR under work 🙂
#7 https://github.com/bluebanquise/community/pull/7
However, I am waiting for the PR from @btravouillon
https://github.com/btravouillon on bluebanquise core
bluebanquise/bluebanquise#531
https://github.com/bluebanquise/bluebanquise/pull/531 to be merged
first. I have to review it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/bluebanquise/community/issues/8#issuecomment-787057092,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABM6DU2N7M5MZ44ROEVLNWDTBDH6PANCNFSM4YJZAUJQ
.


documentation: service instances

The following instance diagram is shows the components instanciated by substrate service

improves #578

moved to:
https://github.com/paritytech/substrate-developer-hub/issues/53


Move log bucket resources to seperate file

This is a minor refactor of the dandiset_bucket module that moves all resources related to the logging bucket to a separate file to make it easier to parse what's going on without confusing the two buckets.
Note this does split an IAM User policy into two separate policies, so merging and applying this will mutate the infrastructure.

@danlamanna I find it easier to reason about the exact policies applied to the buckets when they're isolated in their own files. Any thoughts?


DIDKit Feature request: [FEATURE] New command did-key-to-key

Is your feature request related to a problem? Please describe.
I have a did:key already in my Rust-program, and didkit requires a .jwk-file, for me to do anything. I need an easy way to convert my did:key to a .jwk-file.
Describe the solution you'd like
I would like a new command which mirrors the existing didkit key-to-did-key -k <path to jwk>:
Demo of what I would like:
didkit did-key-to-key <did:key>

Should return a jwk derived from the did:key.
Describe alternatives you've considered

I have looked for, but not found any other CLI's like didkit for VC's.
I have looked for, but not found any Rust libraries for VC's.
I have looked at https://crates.io/crates/jsonwebtoken, but I am not sure how I should use it with a did:key as input, to generate a jwk.

Hi @Arxcis, thanks for your interest.
did:key encodes a public key. didkit uses JWK files for private keys, i.e. for signing (creating linked data proofs / issuing VCs/VPs). If we convert a did:key to a JWK, it would be a public key JWK only, which could not be used for signing. Do you have an existing private key for your did:key in a non-JWK format that you want to be able to convert? Or do you really just want the public key as a JWK?

@clehner Ok, I can see that I made a mistake in description. I failed to consider the private key. Yes I want to use the JWK for signing :thinking:
I am using a Rust-libraries to generate the secret and did:key:
let secret = ed25519_dalek::SecretKey::generate(&mut csprng).as_bytes();
let keypair = did_key::Ed25519KeyPair::from_seed(&secret);

@Arxcis
Currently to use DIDKit from Rust you may need to use the underlying library ssi:
https://github.com/spruceid/ssi/
We don't currently have functions to convert directly from a ed25519-dalek or did_key keypair into a JWK, but here is how to do it in examples; I hope this helps:
Ed25519KeyPair to JWK
Convert a did_key::Ed25519KeyPair into a ssi JWK struct and print it:
/*
[dependencies]
ed25519-dalek = { path = "../ssi", default-features = false, features = ["ed25519-dalek", "rand", "sha2"] }
did-key = "0.0.11"
ed25519-dalek = "1"
rand = "0.7"
*/

fn main() {
    use did_key::KeyMaterial;
    let mut csprng = rand::rngs::OsRng {};
    let secret = ed25519_dalek::SecretKey::generate(&mut csprng).to_bytes();
    let didkey = did_key::Ed25519KeyPair::from_seed(&secret);
    let jwk = ssi::jwk::JWK {
        params: ssi::jwk::Params::OKP(ssi::jwk::OctetParams {
            curve: "Ed25519".to_string(),
            public_key: ssi::jwk::Base64urlUInt(didkey.public_key_bytes()),
            private_key: Some(ssi::jwk::Base64urlUInt(didkey.private_key_bytes())),
        }),
        public_key_use: None,
        key_operations: None,
        algorithm: None,
        key_id: None,
        x509_url: None,
        x509_certificate_chain: None,
        x509_thumbprint_sha1: None,
        x509_thumbprint_sha256: None,
    };
    println!("{}", serde_json::to_string(&jwk).unwrap());
}

Keypair to JWK
Convert a ed25519-dalek keypair into a ssi JWK struct and print it:
/*
[dependencies]
ssi = { path = "../ssi", default-features = false, features = ["ed25519-dalek", "rand", "sha2"] }
ed25519-dalek = "1"
rand = "0.7"
*/

fn main() {
    let mut csprng = rand::rngs::OsRng {};
    let keypair = ed25519_dalek::Keypair::generate(&mut csprng);
    let jwk = ssi::jwk::JWK {
        params: ssi::jwk::Params::OKP(ssi::jwk::OctetParams {
            curve: "Ed25519".to_string(),
            public_key: ssi::jwk::Base64urlUInt(keypair.public.to_bytes().to_vec()),
            private_key: Some(ssi::jwk::Base64urlUInt(keypair.secret.to_bytes().to_vec())),
        }),
        public_key_use: None,
        key_operations: None,
        algorithm: None,
        key_id: None,
        x509_url: None,
        x509_certificate_chain: None,
        x509_thumbprint_sha1: None,
        x509_thumbprint_sha256: None,
    };
    println!("{}", serde_json::to_string(&jwk).unwrap());
}

@clehner This was extremely helpful. Thank you very much :pray:


[Select] Unable to wrap MenuItems in a custom component in Select component Chip variant

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Current behavior 😯
When trying to abstract the MenuItems into a separate component the click/key event for Select isn't passing the correct selection value. Not sure if I'm overlooking something here? I was able to reproduce this for the chip select example
Expected behavior 🤔
The click/key event should pass the selected value.
Steps to reproduce 🕹
Live Stackblitz of issue
Steps:

Open select
Select any option
Notice the chip has no label

Context 🔦
Trying to create a wrapping component for these MenuItems to create clean code. It works if I don't abstract MenuItems into a separate component and that's how I've solved it for now, however would be nice to be able to abstract this.

  Output from `npx @mui/envinfo` goes here.

Select does not support such a scenario. It requires the MenuItem components to be its direct descendants.
You may work around this issue by using a function that returns MenuItems instead of a component:
https://stackblitz.com/edit/react-nbj2xh-g3bfqu?file=demo.js.
The Select will see MenuItems as its direct children and you will have your logic encapsulated in a function.
Does this help?

I encountered the same behavior when wrapping the MenuItem in <></>, i.e.
<>
<MenuItem></MenuItem>
</>

Is this intended behavior and is it possible to change the behavior? I am open to contribute for a fix if it is something feasible

Yes, this is intended.
The new SelectUnstyled does not have this limitation, though. You may try if it works for your use case.

Hello, I'm having the same issue, but in this case the provided solution may not work for me because i'll need to call some custom hooks per entry on the select, how can i do in this case? react seems to warn me that i can't call hooks inside a function, it can only be called inside components according to the warn, context: i have to use hooks instead of bare functions because the data of each item on the select should be reactive :c

If you need to run a custom hook per MenuItem, you can wrap it in your component, and run your logic. Be sure to forward all props and ref to the underlying MenuItem.
Your component has to wrap exactly one MenuItem - if this is too limiting for you for any reason, I'm afraid there's no workaround. You may need to use a SelectUnstyled from @mui/base instead and style it yourself.

If anyone else stumbles upon this issue: It is possible to wrap the MenuItem component inside a Select, but multiple things have to be considered.
The main issue that I was facing is that Select sets the value prop to undefined and renames it to data-value. So when you use the value inside the component (and pass it further down to MenuItem), you need to consider the renamed prop, e.g. like this:
const value = props.value ?? props["data-value"];

This Stack Overflow answer explains the caveats quite well: https://stackoverflow.com/a/66948157


Add Button and Pawns invisible in Pawn Activity tutorial

While I was going through step3 of creating Pawn Activity tutorial, I was unable to reproduce the following steps:

Inserting an Add button in toolbar.

No icons of pawns being added to screen on clicking Add button(after adding functionality to Add button as per tutorial).

My screen after trying to reproduce both the steps above:
MyScreen
But, expected screen as per tutorial:
ExpectedScreen
I felt this could be an issue to newbies trying to create an activity from tutorial.

You've decided to put the icons sub directory into the activity directory but it's not what mentioned in the tutorial here. As for other activities the icons sub directory should be at the root of the activity.
So there is no issue in the code mentioned in the tutorial.

It actually works perfectly you should follow the steps properly in order to get the results. It's not an issue in the tutorial.

Oh I'm so sorry for that! I should have checked the tutorial properly once
more. I went wrong somewhere.
Anyways, I'll not let this repeat. Thanks for letting me know!
On Mon, 17 Feb, 2020, 3:10 AM Lionel Laské<EMAIL_ADDRESS>wrote:

Closed #612 https://github.com/llaske/sugarizer/issues/612.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/llaske/sugarizer/issues/612?email_source=notifications&email_token=AJOMBWRD4HNWSONY2IGLWBTRDGXFDA5CNFSM4KWEI6GKYY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOWVHTOLQ#event-3041867566,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJOMBWW2M73GEMNOTQB6JEDRDGXFDANCNFSM4KWEI6GA
.


Push version tag/branch on successful master build

ptal @AbletonDevTools/gotham-city, thanks!

LGTM :+1:


notafs-cli: add undocumented opam dependencies

Hey there, thank you for the great work!
Here's a small patch for the CLI's opam file, which doesn't document its dependencies on mirage-block/clock-unix.

Thanks! The opam files are actually generated from the dependencies listed in dune-project so your changes will be lost on the next dune build. Could you add them there? (I don't want to force-push on your master branch ^^')

Perfect, thanks again!


Code style changes

Implicit usings, file-scoped namespaces, analyzers, switch expressions. No actual code changes except some places to fix nullability annotations

Check hide whitespace option for review.

No comments here for ~1 month so I merge it.


Make UX improvements based on IBM Twitch stream of Submariner "first contact"

There was recently a Twitch stream of two IBM senior devs kicking the tires on Submariner. The recording is an interesting and potentially very useful opportunity to see two ecosystem experts who don't know much about Submariner try it for the first time and run into UX issues. We can use the recording as a basis for making a broad set of UX improvements and generally improving user empathy.
https://www.youtube.com/watch?v=98rC2OOW20w

I need to check if we have fixed all these issues or if they are still relevant.


Settings button not present on Windows 7

Hi,
I am trying to override default shell with my Git Bash exe on Windows 7. But I am not seeing any button for settings where I can override the shell

Is this a known issue?
Here is my apm -v output
apm  1.12.9
npm  3.10.5
node 4.4.5
python 2.7.10
git 2.10.2.windows.1
visual studio

Please retest again with platformio-atom-ide-terminal 2.9.0 is using node-pty-prebuilt instead unmaintained and outdated pty.js


Handling of player not in world

When the player leaves we need to gracefully terminate her Signs polling thread

fixed in https://github.com/gilesknap/mciwb/pull/25/commits/1b4ab6e304cb31dfa4d1c1308968b099e02f7b4f


Added spinner to customize number of days in trends graph

Description
Added Spinner to CurrencyActivity || navigation drawer -> utilities -> currency converter
Referring to issue #522 (Currency converter : Make number of days customizable in trends graph)
Initial Screen

Convert Button Pressed

Dropdown button pressed

1 Year selected

Type of change
Just put an x in the [] which are valid.

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

How Has This Been Tested?
Please describe the tests that you ran to verify your changes.

[x] ./gradlew assembleDebug assembleRelease
[x] ./gradlew checkstyle

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

Looks amazing @hafiz703 👍


CMake: external package: PIC option not working

In many of external cmake files (/tensorflow/contrib/cmake/external/*.cmake), it tries to turn PIC on and off with:
      CMAKE_CACHE_ARGS
                if(tensorflow_ENABLE_POSITION_INDEPENDENT_CODE)
                        -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON
                else()
                        -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=OFF
                endif()

However, the result (with cmake 3.5) is not what we wanted in CMakeCache:
CMAKE_POSITION_INDEPENDENT_CODE:BOOL=OFF; endif();

Where it should be
CMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON

because tensorflow_ENABLE_POSITION_INDEPENDENT_CODE is ON.
This can be corrected by:
  -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=${tensorflow_ENABLE_POSITION_INDEPENDENT_CODE}

I'll send a PR after some testing along with other fixes (e.g., linking to ZLIB as shared object, not static linking)

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce


Brackets install - Error: Broken pipe

When running brew cask install brackets or brew cask install --force brackets, the following error shows up:
▶ brew cask install --force --verbose brackets
==> Downloading https://github.com/adobe/brackets/releases/download/release-1.1/Brackets.Release.1.1.dmg
Already downloaded: /Library/Caches/Homebrew/brackets-1.1.dmg
Error: Broken pipe

  Most likely, this means you have an outdated version of homebrew-cask. Please run:

      brew update && brew upgrade brew-cask && brew cleanup && brew cask cleanup

  If this doesn’t fix the problem, please report this bug:

      https://github.com/caskroom/homebrew-cask/issues

/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/system_command.rb:14:in `write'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/system_command.rb:14:in `puts'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/system_command.rb:14:in `block in run'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/system_command.rb:14:in `each'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/system_command.rb:14:in `run'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/container/dmg.rb:34:in `mount!'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/container/dmg.rb:13:in `extract'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/installer.rb:103:in `extract_primary_container'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/installer.rb:62:in `install'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/cli/install.rb:20:in `block in install_casks'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/cli/install.rb:17:in `each'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/cli/install.rb:17:in `install_casks'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/cli/install.rb:6:in `run'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/cli.rb:78:in `run_command'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/hbc/cli.rb:118:in `process'
/usr/local/Cellar/brew-cask/0.53.0/rubylib/brew-cask-cmd.rb:18:in `<main>'

I ran brew update && brew upgrade brew-cask && brew cleanup && brew cask cleanup and it still happens.

Hmm that's not good! Let me see if I can repro over here.

I am unable to reproduce in either Yosemite or Mavericks.

Yeah unfortunately same here - installs AOK for me.
Looks like the command that failed is:
hdiutil mount -plist -nobrowse -readonly -noidme -mountrandom /tmp  /Library/Caches/Homebrew/brackets-1.1.dmg

You can try running that by itself to see if it spits out a useful error message.
You could also try a just opening /Library/Caches/Homebrew/brackets-1.1.dmg to see if that shed any additional light.

Odd, now when I run it it's giving me:
▶ brew cask install brackets
==> Downloading https://github.com/adobe/brackets/releases/download/release-1.1/
Already downloaded: /Library/Caches/Homebrew/brackets-1.1.dmg
==> This subcommand requires root privileges: bsexec
Error: Empty plist input

Hm.  This could be related to #9364.
Fairly recently, we started using :bsexec to mount disk images (#7957).  Apple has been changing how :bsexec works recently.  There could be new changes, and it could be that :bsexec doesn't give us all the needed capabilities anymore.

This subcommand requires root privileges: bsexec

Good point @rolandwalker - ^^ this message sounds sort of suspicious - like they might have required sudo for all bsexec commands

@thesbros thanks for reporting this.  It is potentially very bad news if this is changing in 10.10.3.  We can fix it, of course, but there will be a lot of duplicate bug reports from people who don't upgrade homebrew-cask.
I cannot duplicate the problem in 10.10.1 or 10.10.2, so it is not possible to work on it at the moment.  One of us probably needs to get 10.10.3 going in a VM.

@rolandwalker Alright, let me know if there's anything I can do or test to help.

We've gotten corroboration of the bsexec issues in 10.10.3
#9491 implements a quick fix by pulling bsexec from mounts. will cut a bugfix release when it lands

OK can you pull down the bugfix release I just cut v0.53.1 and see if it solves your problem?

@phinze Works!

Hooray! I'll go ahead and close for ya. :wave:


feat: departure component autosizing and styles for bus shelter screens

Asana task: NormalDepartures section auto-sizing + Complete Bus Shelter departures
This PR adds auto-sizing to to NormalDepartures, though for now it only supports departures widgets with a single section. It also adds missing styles for bus shelter screens, including displaying which page is currently visible.

Let's ask the designers about colors. I've heard them refer to colors by name in passing, so if it's not something obvious like line colors I'd like to be consistent with their terminology.


Chart release is broken

Looks like the chart release action is broken: https://github.com/mongodb/helm-charts/actions/workflows/main.yml
The new community-operator chart is missing from the index.

I second that...
community-operator chart is no more available for our K8s app catalog.
pls fix index

@rodrigovalin any chance we can get this fixed?

Hello @Starefossen, @fractal1977
Thanks for reporting. As you probably know by now, we have been moving things around in this repo to make it the canonical source repository for all MongoDB Helm charts. At the same time, we want to improve the overall quality of our Operators, specially regarding to docs and to provide a consistent behaviour across all of them.
The Community operator has changed name, but this was a mistake on our side. You can find it as:
mongodb/mongodb/mongodb-kubernetes-operator and the current version is 0.7.1.
Be aware that this should change its name to the original name that you are expecting community-operator.
Please let me know if this solve your problems for now, we should have a definitive solution soon.

The Community Chart has been renamed back to mongodb/community-operator.
Thanks for reporting this issue!


(Google Maps): Cant set the label color for some reason

I am trying to set the Marker label color via the [options] property on . I successfully set the marker icon no problem...label color seem to be an issue though.
<google-map
  width="100%"
  height="100%"
  [hidden]="!showMap"
  [options]="mapOpts">
  <map-marker
    *ngFor="let marker of markers; let markerIndex = index"
    [options]="markerOpts"
    [position]="marker.position"
    [label]="markerIndex.toString()">
  </map-marker>
</google-map>

My markerOpts is a simple object
getMarkerOptions() {
  return {
    icon: {
      url: '/assets/pin.svg',
      scaledSize: new google.maps.Size(35, 35),
    },
    label: {
      color: 'red',
    },
  }
}

any idea? Like I said, icon works, but label color does not

never mind, I figured out the issue.
[label]="markerIndex.toString()" on map-marker was overriding my other label options in the getMarkerOptions fn.
[label]="{text: markerIndex.toString(), color: 'red'}" works


Enhancements/Fixes to HF Benchmark Runtime

HF Benchmarker is a module within SHARK that enable easy testing of HF models with ONNX, Torch, TF, and SHARK-RT of course. this work is based of SharkBenchmarker for MLIR part and Microsoft Transformer Benchmark.
EDIT: nightly ORT did not fix GPU nor did it fix TF.
Some issues/Enhancements that need fixing
1. Integrate running of TF in HF-Benchmarker.
Has some Runtime issues wrt RuntimeError: Intra op parallelism cannot be modified after initialization. and RuntimeError: Visible devices cannot be modified after being initialized. See https://github.com/microsoft/onnxruntime/issues/ 11751 for more details.
2. Fix up HF Benchmark Runtime with GPU
Currently the only supported device is CPU, since we will get OOM with GPU. The problem lies within importing of onnxruntime causes to load 39GB of data into the GPU, this leaves very little space for us to load our model and even run anything.

3: Also prevent saving into /tmp/
Saved vmfb in /tmp/torch_forward_cpu.vmfb.
4: Print timer per iteration in ms (currently we print only iterations / sec)
5: Save results in a results.csv (or append to the Onnx results.csv file)

For 3. I think we then need to change the default of --repro_dir in shark/parser.py