UX Enhancement: Validation errors not given focus in CMS

Given the following code:
class Page extends BasePage {

	private static $db = array(
		'Bob' => 'Varchar'
	);
	public function getCMSValidator() {
		return new RequiredFields('Bob');
	}
	public function getCMSFields() {
		$fields = parent::getCMSFields();
		$fields->addFieldToTab('Root.NewTab', new TextField('Bob'));
		return $fields;
	}
}

If a user attempts to save this page without entering a value, then the validation message is written to the page, but it appears on a tab not immediately visible to the user.
On the reload after a validation error, it would be a better UX experience if the tab with the first validation error was focused instead of always defaulting to the Root.Main tab.

To be honest, if errors can be in many tabs at once there needs to be an indication which tabs have errors and possibly an error list that show outside of that tabs themselves.
Perhaps a red counter in the tab label (which would have to bubble up tabs) would be a way to indicate errors.
With your solution, if there were many errors across tabs it'd be a game of whack-a-mole as the tabs switched on each save.

TANGENT ALERT:
Personally, I've always found CMS validation tricky and tended to avoid it. If users are creating a draft page, why does it need to be "valid" to be saved - by the very fact it's a draft, a WIP if you like, required fields should be allowed to be empty during this phase of content creation.
Perhaps there should be a way to enforce validation for publishing? "sorry, this page can't be published without correcting the following errors..."

We've actually built this for client websites before which utilise silverstripe-catalogmanager
I'm not sure if it would work in SiteTree as the parent tabs are different than when in ModelAdmin - will have a play this morning and see.
(function($) {

    function invalid(el) {
        var tabid = $(el).attr('id');
        var selector = "a[href*='#" + tabid + "']";
        var link = $(selector);
        link.addClass('nonvalid');
    }

    $.entwine('ss', function($){
        $('.cms-edit-form .required').entwine({
            onmatch: function() {
                var tabs = this.parents('.tab');

                tabs.each(function(index, el) {
                    invalid(el);

                    var tabParents = $(el).parents('.ss-tabset');
                    if (tabParents.length) {
                        tabParents.each(function(index, el) {
                           invalid(el);
                        });
                    }

                });
            },
            onunmatch: function() {

            }
        });
    });
}(jQuery));

.ui-tabs .ui-tabs-nav .ui-state-active a.nonvalid, .ui-tabs .ui-tabs-nav .ui-state-default a.nonvalid {
    color: red;
}

I also agree with @dhensby - there are lots of situations where an invalid record should be able to be saved into draft mode, but not be able to be published. In terms of the UX for this, we should probably be showing validation errors when you load an object rather than when save is clicked, if they are invalid.

@flashbackzoo This could be a nice addition for your 3.2 UX change backlog?

I'll raise it with the team and see if we can pull it into the backlog. It would be a nice one to get fixed for 3.2.

@tractorcow I tested this and it seems to be already working on the latest 3.2.
I created a new tab with a single required field. Attempting to publish the page, from the main content tab, opens the new tab and shows the error message.
Can you please confirm this works for you?

bump @tractorcow

Fair enough!


Goroutine race breaks guarantees on write -> flush barrier

If I run the test FlushFSTest.Mmap_MunmapBeforeClose 1,000 times waiting for the first error, like so:
go test -c ./samples/flushfs  -o /tmp/foobar && (for i in {0..1000}; do /tmp/foobar --ogletest.run FlushFSTest.Mmap_MunmapBeforeClose --fuse.debug || exit 1; done) && echo OKAY

it almost always fails with something like the following:
flush_fs_test.go:627:
Expected: elements are: [paco]
Actual:   [taco], whose element 0 doesn't match

Running with --fuse.debug shows this is because the second write request (from the modification to the mapped memory) is received after the flush for the close(2), which happens before the modification in test sequence.
This is puzzling, given the code walk documented on WriteFile which appears to prove that fuse writes out all dirty pages before sending a flush request:

(http://goo.gl/PheZjf) fuse_flush calls write_inode_now, which appears to start a writeback in the background (it talks about a "flusher thread").

(http://goo.gl/1IiepM) fuse_flush then calls fuse_sync_writes, which "[waits] for all pending writepages on the inode to finish".

(http://goo.gl/zzvxWv) Only then does fuse_flush finally send the flush request.

The comments there talk about pending writepages requests, but don't use the term "dirty". The commit that introduced this behavior, torvalds/linux@fe38d7df230b022e72014ef7aa799a4f2acfecf3 is more clear it talks directly about "dirty pages".
I modified the way requests are logged by server.go, and I believe the issue here is simply that the goroutines spawned by server.Serve are racing. That is, fuse is sending "write, write, flush", but we are processing them as "write, flush, write" because fuse sends write requests but doesn't wait for them.

So what to do about this? Some options:

Do nothing. Don't make the "writes before flushes" guarantee to the file system implementer. This sucks, let's not do it.

Process all requests serially. This is nice and simple, but could be very slow.

Set up a barrier: wait for responses to all write requests for a given handle to complete before passing on a flush for that handle, potentially blocking the pipeline behind. Document this publicly.

Change the API so we don't call blocking functions but rather just pass on requests, either as a channel or a read method or asynchronous function calls.

This can be made very easy to reproduce by sticking a time.Sleep(time.Second) at the top of the bazilfuse.WriteRequest case in server.go. It makes FlushFSTest.Mmap_MunmapBeforeClose fail every time.
The same is not true of FlushFSTest.CloseReports_ReadWrite, where it appears that each write(2) call is blocking on the fuse write request to finish. This surprises me; I thought writes were supposed to happen asynchronously via the page cache.

Closing the loop: I think perhaps the reason that we wait for write(2) is because we don't respond to Init with bazilfuse.InitWritebackCache, corresponding to FUSE_WRITEBACK_CACHE in fuse_kernel.h. This was apparently added in kernel 3.15, so I can't verify on my 3.13 machine.

Current favored solution:

Kill the FileSystem interface.
Instead, have an Op interface with methods Context() context.Context and Respond(error).
Concrete implementations are structs with both request and response fields.
Take this opportunity to put them in a fuseops sub-package. For example, fuseops.ReadOp.
Have a Connection type that exposes a read method for a stream of Ops, directly reflecting /dev/fuse.
Move existing method and struct comments onto the op structs.
Mount function accepts serveConn func(*Connection).
Kill MountedFileSystem.WaitForReady; instead just in Mount (and document this).
Audit package and README comments, update where necessary.

This is blocked by #4; we want tests that we can run many times to confirm we've fixed the issue.

All done with 336525bfecd3a068daa14a000993c6362916e540.


Add Equal sum partition

Review and add please

please review and merge

Excellent work @Bijoy-007  Thanks a lot for making this PR.


Provide .deb packages

Description
Would make installing on docker-less environments way easier
Desired Behavior
Provided .deb files
Additional Context
No response
Code of Conduct

[X] I agree to follow Jellyseerr's Code of Conduct

Agreed, willing to take this on.

So, Debian packaging here is going to be quite difficult to do "properly", as splitting the various parts out into Debianlized folders seems to be impossible.
I can do a hacky alternative though of putting everything under /opt/jellyseerr, which isn't quite as nice (and wouldn't be accepted to an upstream) but will work for now.

That is possible, but I don't think it's good practice to do so.

The other issue would be packaging the node_modules in the .deb which makes it huge. I'm trying to see if there's a way around that but I'll need to do some more reading into how to properly package NodeJS projects in Debian.

Just for context: the big difference between a .deb and the AUR is that AUR packages are built on the client machine at install, while .debs are built remotely and the full binaries are sent. This is running into problems with node_modules because it tries to do a lot of .deb magic on them and fails. So there has to be a better way here, but I'm also thinking that this might not be entirely possible, at least not in a clean way that won't result in a 500+MB .deb.

Just for context: the big difference between a .deb and the AUR is that AUR packages are built on the client machine at install, while .debs are built remotely and the full binaries are sent. This is running into problems with node_modules because it tries to do a lot of .deb magic on them and fails. So there has to be a better way here, but I'm also thinking that this might not be entirely possible, at least not in a clean way that won't result in a 1.6+GB(!) .deb.

I guess at that point and install script would be better then? 🤔

I've done some more digging, and for simple NodeJS projects, https://github.com/heartsucker/node-deb seems like a good solution. But from what I've seen of it Overseerr (and hence Jellyseerr) is not simple. Most of all, the fact that the node_modules dir is over 1.6GB pretty much precludes making a sensible .deb here, as that entire thing needs to be included. We just don't have the AUR benefit of running things like yarn build at install time.
So I definitely think an installer script is the better bet here.

Agreed that maybe the .deb Package is too much work. But is there a possibility, to provide like a build binary or something? Im that person who hates having npm, pnpm and that node stuff on his servers because they bloat everything up and make it hard to have a 'clean' workspace.

That's the point of the Docker imageLe 24 oct. 2024 19:19, Nico Sauter @.***> a écrit :
Agreed that maybe the .deb Package is too much work. But is there a possibility, to provide like a build binary or something? Im that person who hates having npm, pnpm and that node stuff on his servers because they bloat everything up and make it hard to have a 'clean' workspace.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you modified the open/close state.Message ID: @.***>

Docker doesnt make things better. Maybe even worse in my opinion.

Docker doesnt make things better. Maybe even worse in my opinion.

This is not a conventional app but a web app. Creating a binary is not as easy as it might seem. Not even sure how feasible it is to do so.
If you do find a way to do so, feel free to open a pr though :)


Exception 400, message='unexpected content-length header' Error

Seeing these repeating error messages (occasionally):
2021-11-23 23:25:28 ERROR (MainThread) [custom_components.lennoxs30] messagePump_task - host [<IP_ADDRESS>] S30Exception (S30Exception(...), "messagePump Failed - Exception 400, message='unexpected content-length header', url=URL('https://<IP_ADDRESS>/Messages/ha_prod/Retrieve?Direction=Oldest-to-Newest&MessageCount=10&StartTime=1&LongPollingTimeout=15')")
2021-11-24 03:59:59 ERROR (MainThread) [custom_components.lennoxs30] messagePump_task - host [<IP_ADDRESS>] S30Exception (S30Exception(...), 'messagePump Failed - Exception Server disconnected')
sysUpTime: 3709140
softwareVersion: 3.81.207
s30's remain connected and operational during these events. Probably see a series of these once or twice a day. I'm not running the cloud version concurrently.

Ok.  Good information.  We are both running the same firmware version.   Your system has been up for 42 days.   We did have a report of the S30 rebooting on local connections with the first alpha, but it hasn’t reoccurred since.  You are not having that problem.  I had some issue when running both the cloud and local connections - which also are no longer reproducing.   You are not doing that.
It may be these two errors are just going to happen - just like in the cloud when we periodically were getting 502 errors - and the remedy will be not to log them as errors.
For now, let’s keep an eye on it.  I will open an issue, so that if other users are seeing it also they can provide information.
Pete

On Nov 24, 2021, at 5:19 PM, Gary Kelley @.***> wrote:

Seeing these repeating error messages (occasionally):
2021-11-23 23:25:28 ERROR (MainThread) [custom_components.lennoxs30] messagePump_task - host [<IP_ADDRESS>] S30Exception (S30Exception(...), "messagePump Failed - Exception 400, message='unexpected content-length header', url=URL('https://<IP_ADDRESS>/Messages/ha_prod/Retrieve?Direction=Oldest-to-Newest&MessageCount=10&StartTime=1&LongPollingTimeout=15')")
2021-11-24 03:59:59 ERROR (MainThread) [custom_components.lennoxs30] messagePump_task - host [<IP_ADDRESS>] S30Exception (S30Exception(...), 'messagePump Failed - Exception Server disconnected')
sysUpTime: 3709140
softwareVersion: 3.81.207
s30's remain connected and operational during these events. Probably see a series of these once or twice a day. I'm not running the cloud version concurrently.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

I have been researching this.  There are some known issues with the aiohttp library the integration is using which causes it to reject http messages that do not comply to the “standard”.  Since not every web server is perfect, this strict interpretation of the standard causes issues.
https://github.com/aio-libs/aiohttp/issues/2062
So I believe that is what is happening here.   The first step, is To some additional logging, to see what is in the “non standards compliant” message, so we can determine the action to take.  If it’s an empty message, the we can safely ignore it, if it’s a message with data - then we’d need a different strategy.
Right now I am trying to reproduce.  I had seen this error a month ago, but have not seen it since.  I have updated my HA system so it is possible the error is specific to a version of the aiohttp library.
@garyak - what Home Assistant Release are you running? Approximately how often does the error show up?

On my development system I have aiohttp=3.8.0
On my prod system I have aiohttp=3.7.4.post0
On my test system I have aiohttp=3.7.4.post0
3.7.4.post0 was adopted by HA 10 months ago.

core-2021.11.5
Home Assistant OS 6.6
supervisor-2021.10.8
Recently I've seen these appear once or twice daily. However, nothing logged yet for today. Latest:
2021-11-25 03:05:33 ERROR (MainThread) [lennoxs30api.s30api_async] messagePump Failed - Exception Server disconnected
2021-11-25 03:05:33 ERROR (MainThread) [custom_components.lennoxs30] messagePump_task - host [<IP_ADDRESS>] S30Exception (S30Exception(...), 'messagePump Failed - Exception Server disconnected')

Thanks - core-2021.11.5 has aiohttp==3.7.4.post0
So I am running a different version in Dev; which is also where I'm testing; which may be masking the issue.
Yes, the ServerDisconnect error would happen if there is a network disruption.  That one I will update to be an Info message and track it in the metrics.

In aiohttp 3.8.0 which will be in the next HA release, the http parsing code has been replaced with a new library.  The new library appears to be less strict in processing headers.  Hence, it's possible this error will not longer occur once HA move to the new version.  This also may explain why I saw this error early on and once I rebased by Dev system to the current HA code-base I no longer saw the error.
So I think the approach will be this:

Add additional log information when the "unexpected content-length" error is encountered.
Handle the "Service Disconnected" error more gracefully (info level, not error)
Put this into the next release LennoxS30 release - early / mid december

Certainly if the error becomes more frequent and/or starts impacting operation of the Thermostat - we can revisit this plan - and release items 1+2 sooner to diagnose / remedy.
Thoughts?
Thoughts?

The errors don't appear to effect normal operation. I haven't encountered a UI failure. Wrapping this all up in a mid-December release is soon enough. After 2021.12.0 releases, I'll keep an eye on the log and let you know if the errors have resolved.

I have completed the changes for handling this error better and providing more diagnostic information so we can see exactly what is going on.
I have also started working on moving the configuration into the UI, so we’ll have the ability to manage the configuration through the integration panel and have stuff organized by devices.
Anyways, I could push the error handling improvements as a release this week.  Or wait until I have the config changes done also - likely towards end of December.
Thoughts?   Errors still occurring regularly?

I'm still OK waiting. Errors have become less frequent.

Was automatically closed as changes are made and merged into the upcoming release available by end of year.

I just saw this error occur on my system last night - running the 0.1.3 release.  It seemed to be tied into an S30 reboot.
2021-12-24 22:06:56 ERROR (MainThread) [lennoxs30api.s30api_async] messagePump Failed - Exception 400, message="Content-Length can't be present with Transfer-Encoding", url=URL('https://<IP_ADDRESS>/Messages/ha_prod/Retrieve?Direction=Oldest-to-Newest&MessageCount=10&StartTime=1&LongPollingTimeout=15')
2021-12-24 22:06:56 ERROR (MainThread) [custom_components.lennoxs30] messagePump_task - host [<IP_ADDRESS>] S30Exception (S30Exception(...), 'messagePump Failed - Exception 400, message="Content-Length can't be present with Transfer-Encoding", url=URL('https://<IP_ADDRESS>/Messages/ha_prod/Retrieve?Direction=Oldest-to-Newest&MessageCount=10&StartTime=1&LongPollingTimeout=15\')')
2021-12-24 22:06:58 ERROR (MainThread) [lennoxs30api.s30api_async] messagePump Failed - Exception 400, message="Content-Length can't be present with Transfer-Encoding", url=URL('https://<IP_ADDRESS>/Messages/ha_prod/Retrieve?Direction=Oldest-to-Newest&MessageCount=10&StartTime=1&LongPollingTimeout=15')
2021-12-24 22:06:58 ERROR (MainThread) [custom_components.lennoxs30] messagePump_task - host [<IP_ADDRESS>] S30Exception (S30Exception(...), 'messagePump Failed - Exception 400, message="Content-Length can't be present with Transfer-Encoding", url=URL('https://<IP_ADDRESS>/Messages/ha_prod/Retrieve?Direction=Oldest-to-Newest&MessageCount=10&StartTime=1&LongPollingTimeout=15\')')
2021-12-24 22:07:01 WARNING (MainThread) [lennoxs30api.s30api_async] S30 has rebooted sysId [LCC] old uptime [3745440] new uptime [180]

I don't typically log warnings, so would miss the correlation to a thermostat reboot. I'll turn warnings back on and keep an eye on it.

This release has improved diagnostic logging for when that error occurs.  Also the Config is now in the integration UI.
https://github.com/PeteRager/lennoxs30/releases/tag/v0.2.0

I'll update to 0.2.0 and let you know how it goes.

I've updated to 0.2.1rc1. I'll keep an eye on it.

Caught this:
2022-01-26 17:35:59 ERROR (MainThread) [lennoxs30api.s30api_async] messagePump exception
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/lennoxs30api/s30api_async.py", line 555, in messagePump
    resp = await self.get(url, headers=headers, params=params)
  File "/usr/local/lib/python3.9/site-packages/lennoxs30api/s30api_async.py", line 353, in get
    resp = await self._session.get(
  File "/usr/local/lib/python3.9/site-packages/aiohttp/client.py", line 559, in _request
    await resp.start(conn)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/client_reqrep.py", line 913, in start
    self._continue = None
  File "/usr/local/lib/python3.9/site-packages/aiohttp/helpers.py", line 721, in __exit__
    raise asyncio.TimeoutError from None
asyncio.exceptions.TimeoutError
2022-01-26 17:35:59 ERROR (MainThread) [custom_components.lennoxs30] messagePump_task - general error host [<IP_ADDRESS>] Code [5] Reference [5] [messagePump exception]
2022-01-26 17:36:00 ERROR (MainThread) [lennoxs30api.s30api_async] MessagePump clientResponse please report this information as an Issue - Error while executing request: [Content-Length can't be present with Transfer-Encoding]: error=<class 'aiohttp.client_exceptions.ClientResponseError'>, resp.status=[400], resp.request_info=[RequestInfo(url=URL('https://<IP_ADDRESS>/Messages/ha_prod/Retrieve?Direction=Oldest-to-Newest&MessageCount=10&StartTime=1&LongPollingTimeout=15'), method='GET', headers=<CIMultiDictProxy('Host': '<IP_ADDRESS>', 'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'User-Agent': 'Python/3.9 aiohttp/3.8.1')>, real_url=URL('https://<IP_ADDRESS>/Messages/ha_prod/Retrieve?Direction=Oldest-to-Newest&MessageCount=10&StartTime=1&LongPollingTimeout=15'))], resp.headers=[None]

Error repeated for two seconds, then stopped. I use the iOS Companion App to interact with the s30s. Occasionally, I need to restart the App to regain control. Not sure if this is related or not. I'm on all the latest versions.

Thanks for the report.  I’ll review the errors.
Regarding iOS app, I periodically see it come up with a blank / disconnected screen and have to close it and reopen it.  Is that what you see?  This appears to be the same problem as the integration had when using cloud connection - being able to reliably get the config data.

The integration appears connected, but set point value remains red "pending" when changed. The s30 doesn't adjust to the new set point. If I restart just the App, set point adjustments are received by the s30.

Just to be clear, by app you mean the IOS app?

Yes.

I know their IOS app when on the LAN/WiFi goes direct to the thermostat.  When it’s not on the LAN it goes via the cloud connection.  The timeout error in the log you sent does indicate the thermostat was unreachable for the default timeout of 10 minutes.   I saw a similar error on mine a few weeks back.  Certainly this could occur if the WiFi was down, or the S30 reboots.  I suspect, it may also occur sometimes if the internet connection goes away
I plan on doing some controlled testing around this.

Loss of network connectivity is certainly a possibility. Breaking in a new Ubiquity network here. Four months and still wrestling with "issues".

Through a little bit of luck, I've been able to make this issue occur every 24 hours.  Turns out, this message means that the S30 has discarded the subscription and hence the components needs to re-initialize the connection.  So I have those changes in place, have cleaned up the error logs.
It started to repro when I put pfSense in and blocked all internet access for the S30.  Now every 24 hours at 6:40 AM I get this error.

This issue should be fully resolved in the  0.2.4 release; which will be released by tomorrow.


avoid warning in scss

I got warning in my grunt build and propose to avoid such warnings.

You should be able to correct the warning by changing your import statement to include the _ prefix:
@import '../../vendor/reset-css/_reset';

This is bad solution I think :(

This solution is consistent with the SASS convention of prefixing partial files with an underscore.
http://sass-lang.com/guide#topic-4

OK, thank you!


[Papercut][Sw-13189] Fix-sorting-from-blogcomments

This Requests sets a sort by default, so when you open blogartical->comments it is sort by Date form new to old and not put in the table without sorting

Questions
Answers

BC breaks?
no

Tests pass?
yes

Related tickets?
https://issues.shopware.com/#/issues/SW-13189

How to test?
create a few blogcomments and the open blog article comments and check if they are sorted by Date from new to old.

@TobiasWilming Looks good, please add this default sort additionally in the extjs data store in:
themes/Backend/ExtJs/backend/blog/store/comment.js
See http://docs.sencha.com/extjs/4.1.3/#!/api/Ext.data.Store for default sorting in extjs stores

Done that, thanks.


Migrate image storage to S3

Related points to discuss:

Can we group images by dataset, e.g. with directories?
Should we use consistent filenames based on e.g. the hash of the image data or the ion formula, so that isomers / duplicated annotations between databases aren't duplicated?
Can we structure the directory structure somehow so that diagnostic images fit neatly?

I'd love to also suggest switching image format, because PNG is actually really inefficient for these images, but there aren't any good options for 16-bit lossless right now :disappointed: . FLIF was the leading contender, but they have deprecated themselves in anticipation of JPEG XL, which isn't actually out yet (expected to release in 2021).


I cannot render large images on mobile devices.

 I believe this issue may be due to the large size of the images. The image on the left has a resolution of 7866X4701, while the one on the right is 4264X389. I have also tried opening them on different browsers on my tablet, but the problem persists.

However, when I switch to using CANVAS rendering on my mobile device (tablet), the images are displayed properly. Why is this happening? They are also displayed correctly on my computer.

This is my approach.
right
this.load.spritesheet('allGoal', 'assets/img/allGoal.png', { frameWidth: 342, frameHeight: 470 });
this.goalFrame = this.add.image(180, this.scale.height / 2 + 120, "allGoal", this.loadGoalInfo(this.levelInfo[this.level - 1].goalIndex)).setScale(0.8)
left
this.load.spritesheet('boomAnimation1', 'assets/img/boom/red/a2.png', { frameWidth: 388, frameHeight: 388 });
this.anims.create({
key: 'boom1',
frames: this.anims.generateFrameNumbers("boomAnimation1", { start: 0, end: 9 }),
//frameNames.map(name => ({ key: name })), //this.anims.generateFrameNumbers("boomAnimation", { start: 0, end: 10 }),
frameRate: 16, //24 64
//repeat: -1
});
But I just realized that I have another large image that has been rendered, and its resolution is 4004 x 1232
this.load.spritesheet('allCenterGoal', 'assets/img/centerAllGoal.png', { frameWidth: 154, frameHeight: 154 });
    initGoal.gem.setTexture("allCenterGoal");
    initGoal.gem.setFrame(this.loadCenterGoalInfo(this.levelInfo[this.level - 1].goalIndex) + this.goalCount);

cant render picture
1 animation resolution is  4264X389
2 another resolution is  7866X4701 is an image object

The images are too large for whatever GPU the mobile you're testing with has. The resolution (not file size) is too high, so the GPU fails to upload them, which is why they appear black. Desktop GPUs nearly always have much more power, so can handle much larger textures.
Make the images smaller. Use a Texture Atlas rather than a sprite sheet. Software like Texture Packer will remove loads of extra space from the images and pack them as efficiently as possible, plus it can split them over lots of PNG files. You want to use a maximum of 2048x2048 per PNG for mobile, really.


TS 4.7 syntax regression: ';' expected.

Bug Report
🔎 Search Terms
typeof syntax missing semicolon generic
🕗 Version & Regression Information

This changed between versions 4.6.2 and 4.7.0-beta
⏯ Playground Link

Playground link with relevant code
💻 Code
This is a minimal repro, for a real-world example of a breakage, see https://raw.githubusercontent.com/pmndrs/react-spring/master/packages/types/interpolation.d.ts

interface Example {
  (a: number): typeof a

  <T>(): void
}

🙁 Actual behavior
Syntax errors:

Type 'number' has no signatures for which the type argument list is applicable.

Return type of call signature from exported interface has or is using private name 'T'.

';' expected.

🙂 Expected behavior
No syntax errors

This is new ASI hazard introduced by instantiation expressions, because typeof a<T> is now a valid parse.

This is new ASI hazard introduced by instantiation expressions, because typeof a<T> is now a valid parse.

I'm surprised that instantiation expression syntax can be used in a type context.

That's one of the chief purposes of instantiation expressions. For example, you can do ReturnType<typeof fn<string>> to get string from fn: <T>() => T extends string ? string : number

We need to add this to the blog post

Just going to throw out an overly-wishful idea that could maybe save the TS community a lot of efforts when breaking syntax changes come out. What if:

the TS compiler shipped with a set of transforms to convert old supported syntax into new supported syntax, i.e. the opposite of downlevel-dts.
use typesVersions in package.json to detect what TS versions a package was originally written for (maybe fallback to using package release date as a heuristic since most packages don't specify typesVersions)
when tsc typechecks your project it automatically transforms third-party package files in-memory when type-checking them

Just going to throw out an overly-wishful idea...

To set expectations, I don't think we were even aware of the fact that this was a breaking change 🙃. It's quite rare for this to happen.

True, though something like that idea would also be really helpful for enabling exactOptionalPropertyTypes, since it's really difficult when third-party types are written with exactOptionalPropertyTypes being disabled in mind.

We could consider requiring no line breaks between typeof xxx and a type argument list. Very simple fix, doesn't seem like an unreasonable rule.

Note that requiring no line break is consistent with what TS already does in other cases (I was going to open an issue suggesting to require it to make ASI consistent, then I found this issue already opened!):
// valid, a type alias followed by a JSX element
type A = b
<c></c>

// this should be valid too
type A = typeof b
<c></c>

I've sent https://github.com/microsoft/TypeScript/pull/48755 which disallows the newline, unbreaking this.


Automatically pull Jira version info?

Does it make sense to automatically build from the latest version info from the Atlassian website?
These feeds could be used:

https://my.atlassian.com/download/feeds/current/jira-core.json
https://my.atlassian.com/download/feeds/current/jira-software.json
https://my.atlassian.com/download/feeds/current/jira-servicedesk.json

Does not make sense. There are no suitable integration tests in place.

Here is how others are doing it (just as an FYI): https://github.com/cptactionhank/docker-atlassian-jira
I'm not saying we should or should not implement this. Just posing the question for discussion.

Additional feeds (such as RSS) can be found here: https://developer.atlassian.com/server/framework/atlassian-sdk/early-access-programs/

Then we also need someone being able to maintain those integration tests.

If I can share my point of view/experience: this community is nicely active (greatly thanks to @blacklabelops !) because they participate to upgrades. They do so because there is no automation. Just look at what happened on cptactionhank's images: the integration tests have not been working for a while, and no one stepped in for a long time (not sure whether someone has yet) to fix it, because of lack of involvement.
Hence I would argue: don't automate !!! A keep the community interacting.
My 2 cents/pence.

Interaction and participation makes this repository great. I would love to see more discussion and people interacting and contributing.
If anyone contributes to automation, that's wonderful. My hands are full, everybody is welcome to contribute.


[Java] VectorUnloader does not correctly handle NullVector

Describe the bug, including details regarding any error messages, version, and platform.
VectorUnloader appendNodes checks the number of buffers based on the field type of a vector. This check fails if the VectorSchemaRoot has a NullVector that for example has integer as the logical field type.
Is this the expected behavior?
Component(s)
Java

Is it possible to provide some sample code? It sounds like the schema has Int but the actual vector is NullVector - that shouldn't happen, it should still be IntVector even if all the values are null (null is a distinct type)

I don't think so. I don't recall off the top of my head whether this applies to Java, but other Arrow implementations often optimize the case where all values are NOT null: they won't necessarily allocate a validity buffer. However, I don't think anything optimizes the all-null case: implementations will allocate a validity buffer of all zeroes.

At least without looking into the code, yes, because a null slot should still exist in memory (the value is not defined, but should be initialized)
https://arrow.apache.org/docs/format/Columnar.html#validity-bitmaps

Arrays having a 0 null count may choose to not allocate the validity bitmap; how this is represented depends on the implementation (for example, a C++ implementation may represent such an “absent” validity bitmap using a NULL pointer).

Array slots which are null are not required to have a particular value; any “masked” memory can have any value and need not be zeroed, though implementations frequently choose to zero memory for null values.

Thank you!


Issues 1432

This is the other part of the issue 1432 opened in the fzf.vim repository.
It fixes the feature of :Buffers in Neovim running on Windows' git-bash, while making sure not to break when running in Windows' cmd.

I wonder if it's possible to treat git-bash environment like a Unix shell environment. Does this work? Just a wild guess.
diff --git a/plugin/fzf.vim b/plugin/fzf.vim
index 40f01a0..2190209 100644
--- a/plugin/fzf.vim
+++ b/plugin/fzf.vim
@@ -26,7 +26,7 @@ if exists('g:loaded_fzf')
 endif
 let g:loaded_fzf = 1

-let s:is_win = has('win32') || has('win64')
+let s:is_win = (has('win32') || has('win64')) && !exists('$SHELL')
 if s:is_win && &shellslash
   set noshellslash
   let s:base_dir = expand('<sfile>:h:h')

I reverted while using exists('$SHELL'), so all commands work on my test environment.


bug: Github Actions integration tests breaks often

Duplicate of https://github.com/andreped/IronFlow/issues/166.


Additional Cloud Deployment Options

Is it possible to add guides for deployment on alternative cloud services?
I really like Heroku but I have an issue with how pricey it is to have SSL with a custom domain. Ideally, I would also like to host my Saleor instance on a different cloud provider, say Digital Ocean or Google Cloud Compute.
Does anyone have a written guide for alternative cloud deployments?
This is only a request. Thank you.

There's a Dockerfile in the repository so you can readily deploy to any Docker-capable cloud (including Google Cloud). You can also follow our deployment docs and Django's standard deployment procedures to get it running on any host, physical or virtual, as long as it's running Linux.

Hi @patrys so I can deploy to any Docker capable cloud with Linux but I would still have to use AWS for the media files, right? I hope this is not a dumb question.

You're not forced to use S3, it's just convenient to do so, especially if you're deploying the Docker container to AWS infrastructure and can utilize features like Elastic Load Balancer and CloudFront. You can however use local media directory (and map it to a volume outside of your Docker container as Docker storage is volatile) or use a different backend from django-storages.
We would very much welcome a pull request that adds some of this information to our docs 😉

Hi @raybesiga have you already got a solid deployment, and a documentation of it?
Thank you!

And what about Google Cloud? I have found https://cloud.google.com/python/django/ could be a good start point?

This is a great option as well but I have not explored it. Do you have any experience with it @jdivins?

Not with saleor. Maybe with the documentation https://cloud.google.com/python/django/ and with the saleor deployment documentation we can achieve it, if anyone hasn't done it yet.

Do you want to start on it? I am a little busy at the moment but maybe I can join to help down the line @jdivins

I'm currently working of a saleor helm chart. It's still WIP. You can find the work here
https://github.com/stephenmoloney/saleor-helm
I will update the PR #2702 once I've completed the roadmap.

Thank you very much @stephenmoloney !

On GCP we can do it on GAE Flexible Environtment

Build image with docker and place it GCR (I use codefresh to do that)
Create Postgress in Cloud SQL
Then you may try to deploy like this at your Console:

$ git clone https://github.com/mirumee/saleor.git
$ cd saleor
sudo cat <<EOF app.yaml >/dev/null
env: flex
runtime: custom
entrypoint: safe_load(stream)
env_variables:
  SECRET_KEY: [DJANGO_SECRET_KEY]
  ALLOWED_HOSTS: [PROJECT_ID].appspot.com
  DATABASE_URL: 'postgresql://saleor:saleor@<IP_ADDRESS>:5432/saleor'
beta_settings:
  cloud_sql_instances: [PROJECT_ID]:[REGION]:[CLOUD_SQL_INSTANCE_NAME]=tcp:5432
EOF
$ gcloud app deploy --image-url=gcr.io/[PROJECT_ID]/saleor:latest --version=v1-1
$ gcloud app instances enable-debug
Akses SSH :~$ sudo docker exec -it gaeapp /bin/bash
root@id:/app# python manage.py migrate
root@id:/app# python manage.py populatedb
root@id:/app# python manage.py createsuperuser
root@id:/app# exit

Point your browser to https://[PROJECT_ID].appspot.com

By GCP we can do it on GAE Flexible Environtment with custom runtimes.

Build image with docker and place it to GCR. Name it: saleor and tag: latest
(I use Codefresh. You can get US$ 500 credits on Google Free Tier there)
Create Postgres in Cloud SQL. Add user/password/database: saleor
Then you may try to deploy at your Console Cloudshell like this:

$ git clone https://github.com/mirumee/saleor.git
$ cd saleor
$ sudo cat <<EOF app.yaml >/dev/null
env: flex
runtime: custom
entrypoint: safe_load(stream)
env_variables:
  SECRET_KEY: [DJANGO_SECRET_KEY]
  ALLOWED_HOSTS: [PROJECT_ID].appspot.com
  DATABASE_URL: 'postgresql://saleor:saleor@<IP_ADDRESS>:5432/saleor'
beta_settings:
  cloud_sql_instances: [PROJECT_ID]:[REGION]:[CLOUD_SQL_INSTANCE_NAME]=tcp:5432
EOF
$ gcloud app deploy --image-url=gcr.io/[PROJECT_ID]/saleor:latest --version=v1
$ gcloud app instances enable-debug
Akses app instances by SSH :~$ sudo docker exec -it gaeapp /bin/bash
root@id:/app# python manage.py migrate
root@id:/app# python manage.py populatedb
root@id:/app# python manage.py createsuperuser
root@id:/app# exit

Point your browser to https://[PROJECT_ID].appspot.com

Hey,
I'm following exactly what you did, but got a problem with python manage.py migrate step.
	Is the server running on host "xxxxxxxxxxxx" and accepting
	TCP/IP connections on port 5432?```
Seem like my app engine couldn't connect to cloud SQL.

Hey,
I'm following exactly what you did, but got a problem with python manage.py migrate step.
	Is the server running on host "xxxxxxxxxxxx" and accepting
	TCP/IP connections on port 5432?```
Seem like my app engine couldn't connect to cloud SQL.

@chuanman2707
Here are some points to check connection:

To run Cloud SQL, you need to Enable Billing and SQL Admin API

Follow Quickstart to create PostgreSQL on Cloud SQL.

Make user: saleor with password: saleor and database: saleor

Check connection
$ gcloud sql connect [INSTANCE_NAME] --user=saleor

The response should be like this

Whitelisting your IP for incoming connection for 5 minutes...done.
Connecting to database with SQL user [saleor].Password for user saleor:
psql (9.6.10)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES128-GCM-SHA256, bits: 128, compression: off)
Type "help" for help.

Describe the instance using command below and copy the value of: connectionName
$ gcloud sql instances describe [INSTANCE_NAME]
Put the value in beta_settings of your app.yaml

beta_settings:
  cloud_sql_instances: cloud_sql_instances: [PROJECT_ID]:[REGION]:[CLOUD_SQL_INSTANCE_NAME]=tcp:5432=tcp:5432

@chetabahana thanks mate i think i found my mistake, in DATABASE_URL instead of putting exactly <IP_ADDRESS> i did put my cloud sql public ip in there.
by the way do you know how to serves static files using google cloud storages bucket ? it would be nice if you have tutorial to do so.

@chetabahana thanks mate i think i found my mistake, in DATABASE_URL instead of putting exactly <IP_ADDRESS> i did put my cloud sql public ip in there.
by the way do you know how to serves static files using google cloud storages bucket ? it would be nice if you have tutorial to do so.

@chuanman2707
I'm working on it but in the mean time you may follow PR#2626 which detail can be viewed here.

By GCP we can do it on GAE Flexible Environtment with custom runtimes.

Build image with docker and place it to GCR. Name it: saleor and tag: latest
(I use Codefresh. You can get US$ 500 credits on Google Free Tier there)
Create Postgres in Cloud SQL. Add user/password/database: saleor
Then you may try to deploy at your Console Cloudshell like this:

$ git clone https://github.com/mirumee/saleor.git
$ cd saleor
$ sudo cat <<EOF app.yaml >/dev/null
env: flex
runtime: custom
entrypoint: safe_load(stream)
env_variables:
  SECRET_KEY: [DJANGO_SECRET_KEY]
  ALLOWED_HOSTS: [PROJECT_ID].appspot.com
  DATABASE_URL: 'postgresql://saleor:saleor@<IP_ADDRESS>:5432/saleor'
beta_settings:
  cloud_sql_instances: [PROJECT_ID]:[REGION]:[CLOUD_SQL_INSTANCE_NAME]=tcp:5432
EOF
$ gcloud app deploy --image-url=gcr.io/[PROJECT_ID]/saleor:latest
$ gcloud app instances enable-debug
Akses app instances by SSH :~$ sudo docker exec -it gaeapp /bin/bash
root@id:/app# python manage.py migrate
root@id:/app# python manage.py populatedb
root@id:/app# python manage.py createsuperuser
root@id:/app# exit

Point your browser to https://[PROJECT_ID].appspot.com

I followed all the steps but I'm stuck in the command:
$ sudo docker exec -it gaeapp /bin/bash
Error: No such container: gaeapp
Could there be any solution? please

@chetabahana
I followed all the steps but I'm stuck in the command:
$ sudo docker exec -it gaeapp /bin/bash
Error: No such container: gaeapp
Could there be any solution? please

@acabezasg
Follow the detail step
$ sudo docker ps
Check the <Container Name>, it might be name is not gaeapp .
$ sudo docker exec -it <Container Name> /bin/bash
You could also run it using <Container ID> like so:
$ sudo docker exec -it ba72d25928cd /bin/bash

@chetabahana
I followed all the steps but I'm stuck in the command:
$ sudo docker exec -it gaeapp /bin/bash
Error: No such container: gaeapp
Could there be any solution? please

@acabezasg
Make sure you run the command by connecting to the instance via SSH

You may follow the detail step on how to connect then run this to check the Containers
$ sudo docker ps
Look at <NAMES>, it might be the name is not gaeapp .
$ sudo docker exec -it <NAMES> /bin/bash
You could also run it using <CONTAINER ID> like so:
$ sudo docker exec -it ba72d25928cd /bin/bash

@chetabahana
great! now. that works. Now I have another error :(
admin@saleor ~/urpi-final $ python manage.py migrate
Traceback (most recent call last):
File "manage.py", line 8, in
from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

@chetabahana
great! that works. Now I have another error :(
admin@saleor ~/urpi-final $ python manage.py migrate
Traceback (most recent call last):
File "manage.py", line 8, in
from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

@acabezasg
It may be the image, try using mine..
$ gcloud app deploy --image-url=chetabahana/saleor

@chetabahana
great! that works. Now I have another error :(
admin@saleor ~/urpi-final $ python manage.py migrate
Traceback (most recent call last):
File "manage.py", line 8, in
from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

@acabezasg
It may be caused by the image, try using mine..
$ gcloud app deploy --image-url=chetabahana/saleor

Hello! Now he says he can not find the command.

sorry for bothering :(

@chetabahana
great! that works. Now I have another error :(
admin@saleor ~/urpi-final $ python manage.py migrate
Traceback (most recent call last):
File "manage.py", line 8, in
from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

@acabezasg
It may be caused by the image, try using mine..
$ gcloud app deploy --image-url=chetabahana/saleor

Hello! Now that puts this

sorry for bothering :(

@acabezasg
The output shall be similar like this
~$ sudo docker ps
CONTAINER ID        IMAGE                                    COMMAND                  CREATED             STATUS              PORTS                                                                  NAMES
ba72d25928cd        gcr.io/chetabahana/saleor                "uwsgi --ini /app/sa…"   5 hours ago         Up 5 hours          8000/tcp, <IP_ADDRESS>:8080->8080/tcp                                    gaeapp
c0fdcc8ecab0        gcr.io/google-appengine/api-proxy        "/proxy"                 5 hours ago         Up 5 hours                                                                                api
829f7a631c00        gcr.io/google-appengine/nginx-proxy      "/var/lib/nginx/bin/…"   5 hours ago         Up 5 hours          8080/tcp, <IP_ADDRESS>:8443->8443/tcp, 8090/tcp, <IP_ADDRESS>:10402->10402/tcp   nginx_proxy
00b8be4f0ef4        gcr.io/google-appengine/iap-watcher      "./start_iap_watcher…"   5 hours ago         Up 5 hours                                                                                iap_watcher
b671d1701612        gcr.io/google-appengine/fluentd-logger   "/opt/google-fluentd…"   5 hours ago         Up 5 hours                                                                                fluentd_logger

@acabezasg
The output $ sudo docker ps in your terminal was not what is expected.
When I am looking to your screen, it seems that you haven't connected to your instance via SSH.
Let's put this way.

Click this link:
https://console.cloud.google.com/appengine/instances
Select the instance then wait the page is reloaded.
Go to the bottom of page. Find the SSH button at the far right.
Click the button. Wait till SSH is connected.
Put the command. It shall be similar like this:

chetabahana_gmail_com@aef-product-v1--3-39p9:~$ sudo docker ps
CONTAINER ID        IMAGE                                    COMMAND                  CREATED             STATUS              PORTS                                                                  NAMES
ba72d25928cd        gcr.io/chetabahana/saleor                "uwsgi --ini /app/sa…"   5 hours ago         Up 5 hours          8000/tcp, <IP_ADDRESS>:8080->8080/tcp                                    gaeapp
c0fdcc8ecab0        gcr.io/google-appengine/api-proxy        "/proxy"                 5 hours ago         Up 5 hours                                                                                api
829f7a631c00        gcr.io/google-appengine/nginx-proxy      "/var/lib/nginx/bin/…"   5 hours ago         Up 5 hours          8080/tcp, <IP_ADDRESS>:8443->8443/tcp, 8090/tcp, <IP_ADDRESS>:10402->10402/tcp   nginx_proxy
00b8be4f0ef4        gcr.io/google-appengine/iap-watcher      "./start_iap_watcher…"   5 hours ago         Up 5 hours                                                                                iap_watcher
b671d1701612        gcr.io/google-appengine/fluentd-logger   "/opt/google-fluentd…"   5 hours ago         Up 5 hours                                                                                fluentd_logger

@acabezasg
The output $ sudo docker ps in your terminal was not what is expected.
When I am looking to your screen, it seems that you haven't connected to your instance via SSH.
h
Let's put this way.

Click this link:
https://console.cloud.google.com/appengine/instances
Select the instance then wait the page is reloaded.
Go to the bottom of page. Find the SSH button at the far right.
Click the button. Wait till SSH is connected.
Put the command. It shall be similar like this:

chetabahana_gmail_com@aef-product-v1--3-39p9:~$ sudo docker ps
CONTAINER ID        IMAGE                                    COMMAND                  CREATED             STATUS              PORTS                                                                  NAMES
ba72d25928cd        gcr.io/chetabahana/saleor                "uwsgi --ini /app/sa…"   5 hours ago         Up 5 hours          8000/tcp, <IP_ADDRESS>:8080->8080/tcp                                    gaeapp
c0fdcc8ecab0        gcr.io/google-appengine/api-proxy        "/proxy"                 5 hours ago         Up 5 hours                                                                                api
829f7a631c00        gcr.io/google-appengine/nginx-proxy      "/var/lib/nginx/bin/…"   5 hours ago         Up 5 hours          8080/tcp, <IP_ADDRESS>:8443->8443/tcp, 8090/tcp, <IP_ADDRESS>:10402->10402/tcp   nginx_proxy
00b8be4f0ef4        gcr.io/google-appengine/iap-watcher      "./start_iap_watcher…"   5 hours ago         Up 5 hours                                                                                iap_watcher
b671d1701612        gcr.io/google-appengine/fluentd-logger   "/opt/google-fluentd…"   5 hours ago         Up 5 hours                                                                                fluentd_logger

@chetabahana
hello again! going forward.
great, now when I put "python manage.py migrate"
I put that error

@acabezasg
Glad that you have resolve your previous case.
For the new error I think you need to follow another step that I have explained regarding Postgres Connection.

@acabezasg
Glad that you have resolve your previous case.
For the new error please follow another step that I have explained regarding Database Connection.

Hey just wondering did you figure out the way to serve static files using cloud bucket ?

@acabezasg
Me alegro de que haya resuelto su caso anterior.
Para el nuevo error, siga otro paso que he explicado con respecto a la conexión de base de datos .

@chetabahana agaiin hahaha.
I follow all the steps, but I have an error in the command:
$ psql postgresql://saleor:saleor@<IP_ADDRESS>:5432/saleor

thank you very much for your help

@chetabahana agaiin hahaha.
I follow all the steps, but I have an error in the command:
$ psql postgresql://saleor:saleor@<IP_ADDRESS>:5432/saleor

thank you very much for your help

@acabezasg
Never mind. I am glad to help.
Please show me your app.yaml file and the respond of this command:
`
@<instance_id>: $ netstat -nlt
`

@chetabahana agaiin hahaha.
I follow all the steps, but I have an error in the command:
$ psql postgresql://saleor:saleor@<IP_ADDRESS>:5432/saleor

thank you very much for your help

@acabezasg
Never mind. I am glad to help.
Please show me your app.yaml file and the respond of this command:
~$ gcloud sql connect [CLOUD_SQL_INSTANCE_NAME] --user=saleor

also
<user>@<instance_id>: $ netstat -nlt

@chetabahana

there is :(

@chetabahana agaiin hahaha.
I follow all the steps, but I have an error in the command:
$ psql postgresql://saleor:saleor@<IP_ADDRESS>:5432/saleor

thank you very much for your help

@acabezasg
Never mind. I am glad to help.
Please show me your app.yaml file and the respond of this command:
~$ gcloud sql connect [CLOUD_SQL_INSTANCE_NAME] --user=saleor

also
<user>@<instance_id>: $ netstat -nlt

there is :(

@chuanman2707

Hey just wondering did you figure out the way to serve static files using cloud bucket ?

Yes. I got the way to serve static fiiles using google bucket , just about recently.

DEBUG will be set to False so it run in production.
Static files (templates/webpack) will remain using django static
Media files  (images) will be made by celery to google storage and serve from there.

I am preparing to send a pull request , hope it will pass the test..

@chetabahana

there is :(

@acabezasg
Everything are in order. It should be connected actually. Let me think what the problem is.

us-centrall

there is like us-central1

@chetabahana Unfortunately I could not solve the problem :(

@acabezasg
I have been thinking it is blocked by Firewall Rules.
Try to expose IP Address on Cloud SQL Server.

@chetabahana
a question. I have to put that command in the SSH?

@chetabahana
a question. I have to put that command in the SSH?

@acabezasg
Yes. Akses app instances by SSH :l
~$ sudo docker exec -it gaeapp /bin/bash
root@id: cd /app
root@id:/app# psql "sslmode=disable dbname=saleor user=saleor hostaddr=[INSTANCE_IP]"

@chetabahana
and if I get the answer '-bash: psql: command not found'?
in the path / usr / lib / is not: / postgressql

Actualy psql is not a must. It is used only to test the connection.
In your path there is google-cloud-sdk, means you could use gcloud

@chetabahana
finally after all these days I was able to do the deploy hahaha. really thank you very much, you are the best

@chetabahana
finally after all these days I was able to do the deploy hahaha. really thank you very much, you are the best

@acabezasg
Really nice to hear that, I was also face the same when begin to learn Google Cloud. You can go forward now to explore more on GCP such as Google Bucket, Docker Compose with Celery on Google Compute, or even play with Google Kubernetes.

@chetabahana
Hello again! a question. if I want to put two or more allowed hosts, where do I put them?

@chetabahana
Hello again! a question. if I want to put two or more allowed hosts, where do I put them?

@acabezasg
You can put them separated by comma as below:
ALLOWED_HOSTS: .appspot.com, .example.com

Morover if you put dot in font of a domain luke abive then it will aloows all subdomains under that domain

@chetabahana
One last thing, how do I redirect the domain to https? already has ssl but I can not get it to redirect from http to https

@chetabahana
One last thing, how do I redirect the domain to https? already has ssl but I can not get it to redirect from http to https

@acabezasg
Actually Google will maintain an automatic extend of ssl for your domain as long you use the cloud services so you don't need to get one. You just need to verify the domain
in and add it in to the AppEngine.s domain page.

@chetabahana

I already did it but it does not redirect to https

@acabezasg
Try to add "secure: always" to your yaml file
handlers:
- url: /.*
  secure: always
  redirect_http_response_code: 301
  script: auto

@chetabahana hi!
that worked, but then caused a loop on the web, will it be because I did it in both ways? by google cloud domains and by the domain panel of app engine?

@acabezasg
I think in your case the secure always is the right option. I have read  somewhere that redirect setting by fiil in A and AAAA in dns panel is deprecated in vapor of G Suite.

Do you guys know how to add the saleor storefront (PWA) through google cloud?

I'm looking at hosting the Saleor v3 backend on Google App Engine. I assume the approach below would still work.
How would you go about hosting the Celery worker?
Set up a separate Celery worker app on GAE?
Or convert it to use Google Cloud Tasks?

By GCP we can do it on GAE Flexible Environtment with custom runtimes.

Build image with docker and place it to GCR. Name it: saleor and tag: latest
(I use Codefresh. You can get US$ 500 credits on Google Free Tier there)
Create Postgres in Cloud SQL. Add user/password/database: saleor
Then you may try to deploy at your Console Cloudshell like this:

$ git clone https://github.com/mirumee/saleor.git
$ cd saleor
$ sudo cat <<EOF app.yaml >/dev/null
env: flex
runtime: custom
entrypoint: safe_load(stream)
env_variables:
  SECRET_KEY: [DJANGO_SECRET_KEY]
  ALLOWED_HOSTS: [PROJECT_ID].appspot.com
  DATABASE_URL: 'postgresql://saleor:saleor@<IP_ADDRESS>:5432/saleor'
beta_settings:
  cloud_sql_instances: [PROJECT_ID]:[REGION]:[CLOUD_SQL_INSTANCE_NAME]=tcp:5432
EOF
$ gcloud app deploy --image-url=gcr.io/[PROJECT_ID]/saleor:latest
$ gcloud app instances enable-debug

Akses app instances by SSH :
Then run:
~$ sudo docker exec -it gaeapp /bin/bash
root@id:/app# python manage.py migrate
root@id:/app# python manage.py populatedb
root@id:/app# python manage.py createsuperuser
root@id:/app# exit

Point your browser to https://[PROJECT_ID].appspot.com
In case any problem please see the step on database connection or docker containers for more details.


Dynamic Programming: Given a rows x cols binary matrix filled with 0's and 1's, find the largest rectangle containing only 1's and return its area in Java

Assign it to me

Hey @akgmage Assign it to me


OIDC: Userinfo not consulted when looking for roles claim

Hello!  I'd like to report an issue related to OpenID Connect (OIDC) and the roles-claim: Shinyproxy does not support parsing a roles claim from OIDC userinfo.
I am configuring a new ShinyProxy installation, using OpenID Connect.  The IdP is running Shibboleth.  (Shibboleth has been known for a long time as a SAML IdP; since version 3.x, Shibboleth has supported OIDC as an IdP.)  ShinyProxy is configured with Auth/Token/Userinfo/JWKS URls, and PKCE is enabled.
In my case, the roles information is contained in an OIDC claim named eduPersonEntitlement, and to get this claim, I need to request the scope eduperson_entitlement.  I have confirmed that ShinyProxy is properly requesting this scope from the IdP (I can see it when I look at the HTTP requests using Firefox dev tools).  I have talked to the Shibboleth admins, and they confirmed I am making the request properly, and that the eduPersonEntitlement claim is being provided.
I turned on auth debugging, so I could see the claims that were being examined, but I still did not see my eduPersonEntitlement claim.  I also noticed that some other claims were not being provided.  I started to wonder if the userinfo endpoint was not being checked.
Eventually, I found createAuthoritiesMapper in eu.openanalytics.containerproxy.auth.OpenIDAuthenticationBackend: https://github.com/openanalytics/containerproxy/blob/2c71c88a0f8a8f71e2551343e09b659c6f11c1fe/src/main/java/eu/openanalytics/containerproxy/auth/impl/OpenIDAuthenticationBackend.java#L209-L240
I see the code is looking at the ID Token (on line 218), but it doesn't look like the userinfo is being checked.  So, I think that is the problem: When looking for the roles, only the ID Token is being checked, not the userinfo.
Although I was able to find (what I think is) the issue, I do not have the Java skills necessary to patch, build, or test.
Please let me know if you have any questions, or if I put this report in the wrong place.  Thanks very much!

Hi, thank you for your detailed information. I just implemented this and it will be included in the next release, which will be available soon.

Hi, this is now part of the ShinyProxy 3.1.0 we released today. Thanks again for reporting this bug!


Timing system & consistency

@educrot

[  ] Which timing system do the BJD times use (in Table 2 & 14)?  TDB?  UTC?
[  ] ... different observatories (also space observatories) can use different time standards, BJD_TDB or BJD_UTC.  Were the transit times corrected and unified prior the analysis? Is it possible that the presented outliers are related to this fact?

Table 15

[ ] The times presented here are in JD, but why not in BJD?

@educrot  Should we cite http://dx.doi.org/10.1086/655938 ?

I will submit a pull request with the changes but just to answer your questions:

BJD_TDB timings are used in Table 14 and 2

Indeed the transit times were corrected and unified prior to the analysis. Therefore we do not believe this could be the origin for the presence of outliers

However, for Table 15 I don't know as I did not help filling up this table.

@educrot Since Table 15 is derived from the transit-timing analysis, then these times use the same system as the observed times (i.e. BJD_TDB).

@educrot  Thanks for your help.  I've now changed all instances of JD to BJD_TDB in the text and figure axis labels.


Typo in code?

Should this be vim.lsp.buf.signature_help? In my debug logging, vim.lsp.signature_help is always nil.
https://github.com/ray-x/navigator.lua/blob/b9931d5c01c323a8c5dd619a6bb9aebb3aa88b56/lua/navigator/lspclient/mapping.lua#L23

thanks for pointing it out. It should be fixed.


Bad interaction with tracing-error

Hey, I'm encountering an issue when trying to integrate tracing-error into my code with actix-web-tracing. Since my error types are now capturing span information, which it accesses in the impl Display, when actix-web-tracing goes to log the error, both the error and the middleware are accessing span information simultaneously, and it's causing a panic with rwlock read lock would result in deadlock
I don't really know what to do about this other than "not use tracing-error" which would be a shame

After trying and failing to build a minimal reproduction, I'm thinking this is potentially because I have actix-web types inside my error type. I'll try to update that and see if it gets fixed

Update: I think it's probably not my second hunch, but I can't replicate this on a small scale, so I don't really know where to go from here.

Okay I have a minimal repro, but I needed to spin up a full actix-web server to do it
[dependencies]
actix-web = { version = "4.0.0-beta.9", default-features = false }
tracing = "0.1"
tracing-actix-web = "0.4.0-beta.8"
tracing-error = "0.1"
tracing-subscriber = { version = "0.2", features = ["fmt"] }

use tracing_error::{ErrorLayer, SpanTrace};
use tracing_subscriber::{layer::SubscriberExt, EnvFilter, Registry};

#[derive(Debug)]
struct MyError {
    context: SpanTrace,
}

impl MyError {
    fn new() -> Self {
        MyError {
            context: SpanTrace::capture(),
        }
    }
}

impl std::fmt::Display for MyError {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        write!(f, "Blows up!")?;
        self.context.fmt(f)
    }
}

impl std::error::Error for MyError {}

impl actix_web::error::ResponseError for MyError {
    fn status_code(&self) -> actix_web::http::StatusCode {
        actix_web::http::StatusCode::INTERNAL_SERVER_ERROR
    }

    fn error_response(&self) -> actix_web::HttpResponse {
        actix_web::HttpResponse::build(self.status_code())
            .content_type("text/html")
            .body(self.to_string())
    }
}

async fn index() -> Result<&'static str, MyError> {
    Err(MyError::new())
}

#[actix_web::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let env_filter = EnvFilter::try_from_default_env().unwrap_or_else(|_| EnvFilter::new("info"));
    let subscriber = Registry::default()
        .with(env_filter)
        .with(ErrorLayer::default())
        .with(tracing_subscriber::fmt::layer());
    tracing::subscriber::set_global_default(subscriber)?;

    actix_web::HttpServer::new(|| {
        actix_web::App::new()
            .wrap(tracing_actix_web::TracingLogger::default())
            .route("/", actix_web::web::get().to(index))
    })
    .bind("<IP_ADDRESS>:8000")?
    .run()
    .await?;
    Ok(())
}

I've narrowed it down to these lines in root_span_builder
    span.record(
        "exception.message",
        &tracing::field::display(response_error),
    );
    span.record("exception.details", &tracing::field::debug(response_error));

Changing this to the following:
    let display = format!("{}", response_error);
    let debug = format!("{:?}", response_error);
    span.record(
        "exception.message",
        &tracing::field::display(display),
    );
    span.record("exception.details", &tracing::field::display(debug));

Solves it, but I'm not sure if that's an okay change to make, since I'm less experienced with tracing & I don't really know what those display and debug methods are actually doing

I have bumped into this in an unrelated project as well, coming around to the very same fix you suggested.
On one side, it is no ideal: if a user disables tracing via their feature flags, now they are still paying for the formatting cost of the errors.
On the other side, almost nobody disables error-level traces (and uses this crate!).
So I'd be inclined to merge the workaround while we look upstream for a more proper fix.

I created a more minimal repro & opened an issue against Tracing, linked above. Should I also open a PR here which pre-formats the text?

Yes, a PR would be appreciated!


Tobin descriptor error code passing

Updated descriptor update validation checks to use unique error enums and added validation flag for vkUpdateDescriptorSets().
Needed to update some functions to pass the error enum around as a parameter.
Also updated database file for 24 enums that were updated.
Changed some "error" var names to "error_msg" to clearly distinguish it from "error_code" that is now passed around as well.

:+1:

cherry-picked and pushed to master


error Couldn't find manifest in "https://github.com/ruionwriting/ngGuid.git" with Yarn

Trying to install ngGuid from yarn produces the following error:
yarn install v0.22.0
info No lockfile found.
[1/4] Resolving packages...
error Couldn't find manifest in "https://github.com/ruionwriting/ngGuid.git".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

This means it's missing a package.json file. Unfortunately, I can't wait for developer support either PR approval, so this package will be installed locally without package managers until this problem is solved.


Issue of Eslint latest versioning

Eslint versioning is causing Eslint Failure had to revert back to
"eslint": "^7.14.0"
in order get passed to warnings and errors and lint being able to work in Webstorm or VsCode
cc @kanzitelli  did you get it working ( RN latest version supports older Eslint package )

Hey @rizwanatta! Thanks for raising this up! I don't see any issues with Eslint on my machine with rnn-starter and everything seems to be working with the latest version. Can you elaborate more on that?


static files not served for local development

Describe the feature you'd like and what it will do
Typically we run local development with debug=True
However, there are times it would  be nice to test features with debug=False, for example, I want to test media file collection during collectstatic but that is disabled by Django when debug mode is turned on.
Right now (hsv2.3) if you turn off debug mode locally, none of the static files will get served for the local dev setup.
We need to fix the nginx local config so that the nginx container functions and serves as a proxy, serving the static files (because django only serves the static files when debug mode is on).

closing for now. This issue hasn't been resolved, but it is really only an issue in rare cases for local development


[Bug]: expect(-0).toBe(0) doesn't pass

Version
28.1.3
Steps to reproduce

clone my repo https://github.com/niainadorel/bug-jest-negative-zero.git
npm install
npm test

Expected behavior
expect(-0).toBe(0) should PASS
I can get the -0 for example if I use Math.ceil(-0.314)
Actual behavior
expect(-0).toBe(0) doesn't PASS
Additional context
Doen't work also using toEqual
Environment
System:
    OS: macOS 12.0.1
    CPU: (8) x64 Apple M1
  Binaries:
    Node: 14.17.6 - /usr/local/bin/node
    Yarn: 1.22.17 - /usr/local/bin/yarn
    npm: 6.14.15 - /usr/local/bin/npm
  npmPackages:
    jest: ^28.1.3 => 28.1.3

I'm not a maintainer but looking at the code for the matchers and the docs, this seems to be expected. toBe uses Object.is, and Object.is(-0, 0) returns false. toEqual is a bit more complicated, but ultimately for this case, because 0 and -0 are primitives, it seems to call Object.is((-0).valueOf(), (0).valueOf()), which also return false.
I think to test that they're equal using the less strict ===, you'll need to manually compare the two and assert it using toBeTruthy:
expect(0 === -0).toBeTruthy();


打印时table框中的插入文本，括号没有过滤掉。之前看issues中已修复。请大佬改下

version
最新
Link to minimal reproduction
No response
Steps to reproduce
table中插入文本框，然后打印预览
What is expected?
点击打印预览时，可以去掉括号
What is actually happening?
显示错误
System Info
No response
Any additional comments?
No response

v0.9.54


nist_freq_block does not err when returning NaN

To be fair, I have little clue of what I'm doing here (wrapping an embedded OS's RNG into the rand_core traits, writing tests for that, and I'd to at least catch if the underlying generator is XKCD style), but I hope this is valuable anyway:
nist_freq_block returns Ok(NaN) to me, even for any input I've tried (up to 1000000 bits produced from what is supposed to be a CSRNG, tried block_len values 2, 8, 32, 128 and 1024, some of them even with 1Gbit input).
Unless Ok(NaN) is really a sensible result (I guess not, given the if p < 0.01 { return Err(Error::BadPValue(p)); } check), I think that NaNs should be reported as some form of error; a !(p >= 0.01) check would minimally do that.

I'd to at least catch if the underlying generator is XKCD style

that's the goal! turns out embedded RNGs aren't always trustworthy / configured correctly and it's nice to know before you do anything, although the one thing i have discovered is that given enough runs sometimes an RNG will return 4... it'd probably make sense to wrap the suite of tests in something that takes an RNG and configures tests / does retries.

nist_freq_block returns Ok(NaN) to me, even for any input I've tried (up to 1000000 bits produced from what is supposed to be a CSRNG, tried block_len values 2, 8, 32, 128 and 1024, some of them even with 1Gbit input).

that seems cursed, you're right this should probably report an error but also there's got to be an underlying bug to get to the NaN in the first place... either a block_n ending up as zero in a divide, or something propagating through the igamma function, you should be able to see this appear with a reasonably small block size and a debugger if you were interested?
there is a constraint on that particular test 800-22 2.2.7 that the block size should be >= 20 (though they use 10 in the example) and there should be > 10 tests, have you tried say a 1000 bit test stream with 100 bit blocks? (also it occurs to me that cases where data_len % block_len != 0 may not be well handled.)
an example that's working for me:
// Fetch random bytes for tests
let mut a = [0xFF; 100];
rng.fill_bytes(&mut a);

// Check we filled -something- before attempting more in-depth tests
if &a[..2] == &[0xFF; 2] && &a[a.len() - 2..] == &[0xFF; 2] {
    return Err(rngcheck::Error::RngFailed);
}

// Run NIST frequency checks
nist_freq_monobit(BitIter::new(&a))?;
nist_freq_block(BitIter::new(&a), 10)?;

Hm, even your example also gives me NaN, both with std and my embedded RNG, no matter the divisibility (the ? hides that there is a NaN -- so without a closer look, that example indeed appears to work but doesn't):
//! ```cargo
//! [dependencies]
//! rand_core = { version = "0.6", features = [ "getrandom" ] }
//! rngcheck = "0.1.1"
//! ```

use rand_core::*;
use rngcheck::{nist::*, helpers::*};

fn main() {
    let mut rng = rand_core::OsRng;

    // Fetch random bytes for tests
    let mut a = [0xFF; 100];
    rng.fill_bytes(&mut a);

    // Check we filled -something- before attempting more in-depth tests
    if &a[..2] == &[0xFF; 2] && &a[a.len() - 2..] == &[0xFF; 2] {
        panic!("RNG no-oped?");
    }

    // Run NIST frequency checks
    dbg!(nist_freq_monobit(BitIter::new(&a)));
    dbg!(nist_freq_block(BitIter::new(&a), 10));
}

$ cargo +nightly -Zscript ./test.rs
[...]
     Running `/home/chrysn/.cache/cargo-target/debug/test-`
[test.rs:23] nist_freq_monobit(BitIter::new(&a)) = Ok(
    0.257899,
)
[test.rs:24] nist_freq_block(BitIter::new(&a), 10) = Ok(
    NaN,
)

I'm having a closer look, gotta be somewhere...

The culprits for the NaN is dbg!(libm::powf(x, a)) * libm::expf(-x) / dbg!(libm::tgammaf(a + 1.0)) being inf/inf; for values of x = 37.99999something and a = 40.0.
The calculations work out for this example when using f64 internally. Still NaNs out on tests with somewhere between 1kbit and 10kbit (block size 16), but it's a start. Instead, I've dug around and found the (no_std) "special" crate (yes that's the name, b/c gamma is one of the so-called special functions). It's no_std, passes the internal tests, so I guess that's fine?


Coriolis: Add rolls, roll template, English translation and styling

Added rolls for all abilities and skills.
Added a roll template to show if you pass the Coriolis style of skill check.
Added some CSS to make the sheet look a bit better.
Converted the HTML to UTF-8 since some browsers had problems with Swedish "Å", "Ä" and "Ö".
Added localization provided by @aunderwo, made English the base language and moved the Swedish translation to the translation folder.

I just rebased this on top of the localization work done by @aunderwo here: https://github.com/Roll20/roll20-character-sheets/pull/2387

I just spent yesterday reworking this sheet. Namely to translate the whole thing, but also to add some design elements that were missing from the original layout. Would it be a good idea to bash heads together and see if we can make some more improvements?
https://github.com/agjwilson/roll20-character-sheets/tree/master/Coriolos English

It makes sense to work on this together - happy to collaborate

Do you enjoy the look of having the graphical gifs as background images in the divs. Or is that too busy for the look of the sheet you have created?
I think that the divs should be set to a determined width to avoid dragging over if the sheet is expanded (stretched out) probably trivial to you, however in the rare case it does happen its good to have everything aligned into a static space.
The logo I created just incorporated a stretch of blank transparency and set to align left, in order to give the illusion of being centred. I couldn't achieve the sheet to maintain an absolute position for both the NPC and PC sheet.
Most my skills are within Graphics not coding, it was just coincidence that I began translating the Coriolis sheet into English while "butchering" or editing some of the code. I am not a great coder, I do tend to butcher the code somewhat. So I'll just put ideas to you.
I'll have some time next week to mess around with the code and submit ideas to you firstly. Perhaps if you like making sheets you could assist me making a sheet for a game which I have been longing for a decent character sheet. I could fill you in at a later date on that.
Antilas sheet looks the best and his could be very well deserved of some appreciation. If you need help or suggestions let me know.

I agree that the design aspect of the sheet needs some love and there's lots of room for improvement there. Any help and collaboration would be highly appreciated!
@aunderwo and @agjwilson , do we have any plan on what is left to do and what would be the best way to collaborate? I think I fixed all of the missing localization stuffs and bugs I could find, but we should probably double check it, and see if there's any bugs with the rolls.
Maybe we can focus on getting this merged if it's good enough, and then start collaborating on an improved version together?

I think that's a good plan. Get the sheet merged firstly it offers the best translation and its what players want.

Earlier I said I butcher code. I just wanted to check on this graphic change to make sure I have not broken any fundament designs needed. I just swapped some tables around so that they rest of different layers.

Grundegenskaper

Styrka

                            <button type='roll' value='&{template:coriolis} {{name=Styrka}} {{roll=[[@{sty}d6>6]]}}' name='roll_str'></button>
                            <input type="number" name="attr_sty" value="0">

How do you guys test the changes you make?  However I use my pro account for testing. :-) Sorry I can't be of more help with that one.

So anyway, I have updated Antila's sheet with graphics to represent the original character sheet. This time I was very very careful to add code and replace code without making a mess.
https://github.com/agjwilson/roll20-character-sheets/tree/master/Coriolos English

Also somewhere along the way the top left options to switch sheet have turned to black font instead of white. Not sure how this happened or if there is a way to change it without changing all the fonts.

I've also added. So that the weapon tables scroll with the rest of the sheet horizontally.
.sheet-weapons {
    border: 0px none;
    margin: 0 auto;
    padding: 0px;
}

and
.sheet-ship-weapons {
    border: 0px none;
    margin: 0 auto;
    padding: 0px;
}

I've changed the top left character sheet text next to the radio buttons to display white. I also made a small change to the translation file in regards to this also so that it displays "Character Sheet" rather than "Character"

Thank you for working together to include everyone's updates. That makes my job a whole lot easier.

Looks really nice - I had a go at translating the roll templates. Please could someone test it.
https://github.com/Roll20/roll20-character-sheets/pull/2423
Thanks

@pjbehr87 where on GitHub do I save the image files?

Just toss them in the Coriolis folder, just like we do here. After I accept the PR, you can then update your sheet code to link to the RAW version of the image right on GitHub.


Make it readable Payload Packet

What does this mean? If you want to see the raw packet data in hex there is a tab for that

hah just dont wanna see much buffer :3

Sorry, I don't understand what you mean

Just huh make Packet Buffer to Strings

i couldnt find it it doesnt work huh

Can you send a screenshot of the hex view tab for you?

That's strange, is this something you can reproduce consistently?


Sensor status - unknown

Checklist

[X] I have filled out the template to the best of my ability.
[X] This only contains 1 feature request (if you have multiple feature requests, open one feature request for each feature request).
[X] This issue is not a duplicate feature request of previous feature requests.

Is your feature request related to a problem? Please describe.
Until the integration version v0.2.0-b2, sensors after a daily reset had a value of 0.
From version v0.2.0-b3, after a daily reset, the sensors assume the "unknown" state.

It doesn't look good on the panel.
Is it possible to return the sensors to 0 after the daily reset?
Describe the solution you'd like
Home Assistant 2023.4.6
Supervisor 2023.04.0
Operating System 10.0
Interfejs użytkownika: 20230411.1 - latest
Describe alternatives you've considered
N/A
Additional context
N/A

Hi @rafkan20 ,
This was introduced deliberately when the sleep sensors were added. I did this because things like REM, light + deep sleep aren't always defined and so a sensor value of "Unknown" made most sense.
The same actually applies to the steps and other sensors as well, in that if there is no data there then the value of the sensor is unknown.
I have three options for this and I'd be interested in your opinion:

Take everything back to 0, which could be confusing when the sensor type isn't available in your account but it does make more sense to the average user.
Take everything back to using 0 except the sleep sensor types. This isn't very expandable and does then have inconsistency and code bloat issues
Allow the user to choose in the integration configuration whether they want to use 0 or unknown as the default sensor value.

Hi @YorkshireIoT.
Thank you for your exhaustive answer. I think option 3 is the best option.
Each user will choose his option that will suit him.
Regards.


Update security docs for 2.0 secure by default flags.

This page was moved in the versioned-docs branch. Having an entire section for a single page doens't sound right.

Where did you put Integrations? This would be similar general operation stuff.

There should be only one place where we document flags. This page should
only mention that admin + lifecycle endpoints are dialed by default and
link to the Prometheus config documenting the flags.
On Fri, Nov 10, 2017, 17:28 Ben Kochie<EMAIL_ADDRESS>wrote:

@SuperQ approved this pull request.
LGTM
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/docs/pull/891#pullrequestreview-75810072,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAANaLr7SuoyQSrGQ3LFhXII1cVOnU9uks5s1HmlgaJpZM4QPriv
.

One of the main purposes of this page is to act as a comprehensive one-stop security audit checklist for Prometheus. Thus exact flag and configuration field names are mentioned, so that they've nice and easy to then grep in config files.
Think of it as a guide - we provide full examples in guides rather than letting the user figure it out from the reference docs.


Error changing HopSkipJump to Zoo attack on blackbox tesseract ocr

Describe the bug
On this notebook: https://github.com/IBM/adversarial-robustness-toolbox/blob/master/notebooks/classifier_blackbox_tesseract.ipynb, a mate and me are working on this and when we try to change the attack to Zoo from the HopSkipJump we have an error:
AttributeError: 'BlackBoxClassifier' object has no attribute 'channel_index'
To Reproduce
We just change this line attack = HopSkipJump(classifier=classifier, targeted=True, norm=2, max_iter=0, max_eval=1000, init_eval=10) and we put Zoo instead of HopSkipJump and we see the error we showed before.
Expected behavior
As we see Zoo is imported, we think just changing this word, it would be enough.

Hi @CarlosMoralesSal Thank you for raising this issue. I don't think this is an actual error, it's caused because not all attacks can be combined with all classifiers. We are working on better warnings in such cases for ART 1.3 using the new exception EstimatorError. In this case ZooAttack requires the property channel_index which is not provided by BlackBoxClassifier.


Citation

Create citation handling for trinket, similar to the citation handling in NLTK

See #59 -- add meta data to the model to support the download of a citation.bib file.

This ticket involves creating the content that would go into the citation file for a dataset, then creating a custom view to force that metadata down tot the browser as a response to their request.

[ ] create a class that loads the metadata for the dataset
[ ] go into a bibliographic reference
[ ] investigate .bib format
[ ] create custom view to push that data down


What's the Play about?
Wordle Unlimited
This play is about the popular text puzzle game Wordle! with enhanced features

Ability to play unlimited wordle in a day
Daily Streaks: Keep up your streak by playing wordle at least once a day. (No matter if you lose or win)
In case of missing a day, the streak won't be reset but instead will be reduced by some points
Guess the hidden word in 6 attempts!
All time stats showing your number of games and attempts distribution on a graph.

What ReactJS concept will be used to create this play?
Concepts which will be used

React's useState()
React's useRef()
React's useEffect()
Functional Components &
Props!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hey @SamirMishra27, it would be good if you add a descriptive title for the issue, thanks.


unpack_strategy: fix extension for compress

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

Fixes https://github.com/Homebrew/brew/issues/5161.
man compress says:

Each file is renamed to the same name plus the extension .Z

Therefore the previously-specified extension as .compress is incorrect.

Makes sense, thanks again @commitay!

Er, I mean @jonchang!


Floor tiles occasionally not updating correctly

Occasionally, when an NPC moves at the edges of the players Field of View, the floor tile that gets redrawn is the 'highlighted' tile instead of the shaded tile.

Fixed with commit d2cb3d6


Make InMemImageReader work even when monai is not used/available

If the user's application doesn't depend on monai and monai is not installed, it causes an error when the following statement is executed by the interpreter.
https://github.com/Project-MONAI/monai-deploy-app-sdk/blob/eebb284d3130e122f933f5241509d0a438699d9d/monai/deploy/operators/monai_seg_inference_operator.py#L239
This patch sets ImageReader to object if monai library is not available so the user's app doesn't require monai app if not using.

The InMemImageReader is a derived class of MONAI ImageReader, hence dependency on MONAI be present.
This PR is wrong trying to break this dependency at runtime, and should be rejected.

@MMelQin , existing code caused an error even when user's application doesn't use monai.
I faced the issue somehow and
I think you can reproduce it with simple_imaging_app in a fresh python virtual environment.
Let me also double check it in case the PR cause the side effect you described.
Thank you!

The example you mentioned should not be loading the monai_seg_inference_operator classes at all, where the InMemImageReader is. So puzzled by the error you saw, while setting the reader to object in the seg operator is not the way to address the issue, even if it can help to avoid the symptom (optional_import was already used in the code).


Feature request: support for other hashcat modes

I don't believe gocrack currently supports any other mode beyond dictionary-from-file-with-rules, and bruteforce-masks.
Would be nice to see: dictionary-with-multiple-rules, dictionary-from-stdin-with-multiple-rules, markov-bruteforce, combinator, hybrid.

Yes, you are correct as it was built around how we use hashcat as a company. It may be a bit until I can work on adding additional modes but PR's are welcome :D

+1


Failed to find library "liblept172.dll" for platform x86.

It's been too hard to get this to work.  However I had a weird half-way solution (that didn't get me all the way there.)  I can correctly build/run Tesseract from a console application when it's in the bin folder, but I get the above error from the web application bin folder.  No idea why.
What I did was build a separate DLL, ScanDoc.dll, that references Tesseract.  I can successfully add that to the console app and run it but not the website without it breaking when I call:
using (var tessEngine = new TesseractEngine(tessdataDirectory, "eng", EngineMode.TesseractOnly))
regardless of what the tessdataDirectory is (however valid) it will throw the above error on the website but not when I walk the library for the console app.

Do you run the console app and web on the same PC? I had the same error, the solution was to instal VC++ 2015 Redistributable X86

I apologize for not posting my answer and leaving this open...    Not sure how the corruption happened, and that error was very specific/frustrating...  But yeah I'm up that way again.  Often reinstall everything should be option 1...


Add ability to select language for audio and subtitles

All content is played in English. It should be possible to select the audio language when more audio channels are available.

what are your kodi language settings? English? Kodi should select the correct audio track according your kodi language settings?

My settings were Spanish, however I had to change into to English due to issue #60 (UTF encoding). With Spanish the pluging was failing.
Under chrome I can select the audio stream despite of the main language settings, but under Kodi I can only toggle between 'eng' and 'eng 5.1'.

could you please provide your manifest.json after you played a video which should have a spanish (or whatever) audio channel?
Please send it via email to<EMAIL_ADDRESS>

I have attached here two files:
manifest.json : generated by kodi Netflix.
netflix.player.debug.txt: complete debug text generated with the method explained in your mail.
I wanted to attach the whole log in case there is something missing, however, in order to facilitate your process, I have extracted the lines requested in your mail:
{
"method": "manifest",
"lookupType": "PREPARE",
"viewableIds": [
80115751
],
"profiles": [
"playready-h264mpl30-dash",
"playready-h264mpl31-dash",
"heaac-2-dash",
"dfxp-ls-sdh",
"simplesdh",
"nflx-cmisc",
"BIF240",
"BIF320"
],
"drmSystem": "widevine",
"appId": "14956429426495",
"sessionParams": {
"pinCapableClient": "false",
"uiplaycontext": "null"
},
"sessionId": "14956429426495",
"trackId": 14277281,
"flavor": "PRE_FETCH",
"secureUrls": true,
"supportPreviewContent": true,
"supportPreviewContentPin": true,
"supportWatermarking": true,
"forceClearStreams": false,
"validatePinProtection": false,
"usePlayReadyHeaderObject": false,
"showAllSubDubTracks": false,
"languages": [
"es-US"
],
"clientVersion": "5.0006.659.011",
"uiVersion": "akira"
}
6.274|1|T|BladeRunnerParseManifest| Transformed audio track, type: audio, kb: A:1:1;2;en;1;, CQ: PRIMARY, JD: PRIMARY, pf: en, displayName: in$
6.275|1|T|BladeRunnerParseManifest| Transformed audio track, type: audio, kb: A:1:1;2;es;0;, CQ: PRIMARY, JD: PRIMARY, pf: es, displayName: es$
6.275|1|T|BladeRunnerParseManifest| Transformed audio track, type: audio, kb: A:1:2;2;en;0;, CQ: ASSISTIVE, JD: ASSISTIVE, pf: en, displayName$
6.275|1|T|BladeRunnerParseManifest| Transformed audio tracks, Count: 3
manifest.json.txt
netflix.player.debug.txt

Below the graphical comparison for Audio selection menu on both players:
a) Chrome Netflix player

b) Kodi Netflix plugin

and you're not using any kind of vpn for kodi?

no vpn. direct internet.
On May 26, 2017 1:18 AM, "Johannes"<EMAIL_ADDRESS>wrote:

and you're not using any kind of vpn for kodi?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/asciidisco/plugin.video.netflix/issues/64#issuecomment-304127017,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Aa4mHmfaIMIF-tIcrV1CYstYicHZqSQbks5r9e-agaJpZM4NMOwy
.

did you check if any english ones is actually spanish?

Unfortunately the are all English as announced.
2017-05-30 20:26 GMT+04:00 Johannes<EMAIL_ADDRESS>
did you check if any english ones is actually spanish?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/asciidisco/plugin.video.netflix/issues/64#issuecomment-304933048,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Aa4mHiaQAu4tni-5hPwtWYTGPJA79GI0ks5r_ENRgaJpZM4NMOwy
.

--
Carlos Sprekelsen
skype:carlos.sprekelsen
Mobile UAE: +971 566 745 990
Mobile Spain: +34 629 474 667
Mail<EMAIL_ADDRESS>

Same or similar issue here: Kodi language is English/US, but we would like to watch movies in French, German and/or English.   Language selection appears to be missing.

Not sure if I should add a new issue or add it here, because the title of the issue matches my problem although the original post does not - I have the opposite problem that I have to re-select English as language every time I start the next episode. I am from Germany and although LibreElec is set to English, when starting a new episode, it is in German (which I do not want).

Did you set you preferred audio language to English?

I also recommend to install this service

Thanks, somehow I had missed that setting. Sorry to disturb the thread.

I have a similare issue. Preferred language is italian, but I can't see the italian language listed in the plugin.
If I open the same movie on Netflix on the iPad/Browser I can see all the languages (italian included), but the same movie on OSMC/Kodi shows only german, portuguese, french and english.
Do you have any suggestions?
I'm running latest OSMC/Kodi and the latest netflix plugin. Thanks

I can confirm fabiosirna's problem: On the Netflix app on my Samsung TV, the italian language is available on more movies than in the Kodi Netflix addon.
I am using the pre0.14 Netflix addon version from the following repository on an amd64 architecture.
https://github.com/CastagnaIT/repository.castagnait

I had have that issue but it was related to the Manifest.MPD File Creation, so it is related to Input Stream Adaptive and MSLv2, so , Update your Input Stream Adaptive and DO NOT set Manual Stream Selection... SET IT TO AUTO and please share your results.
If you could share yours MPD file as well, would be great!


#28 Implement standardised documentation and linting

What
This PR adds a bit of documentation on how out hooks work and also staged-lint with prettier for automatically formatting code in the app
Why
So that our code styles are standard
How
By running linting on post commit
Covers

#28
#6

I ran npm run lint and it used the prettier to automatically formatting the code - worked as expected
I then git commit on my local machine and lint-staged ran automatically to fix the formatting - also worked as expected.

@ryanolee I'm just wondering if you'd want to incorporate eslint as well? Based on the documentation, lint-staged can also run eslint but right now it seems like we are only using prettier. Please correct me if I'm missing something.

Hi @wendyyng,
I think we already used it as part of the CRA build process. Meaning ESLint warnings are displayed at build time :thinking: . Will double check if we can run it with the --fix argument as part of the staged-lint process :eyes:

Hi @wendyyng , I have added eslint to the post commit hook for this 👍

Updated this to contain the latest changes 👍


feat(js/plugins/googleai): context caching

This is a draft of adding Context Caching to Google AI
Checklist (if applicable):

[x] Tested (manually, unit tested, etc.)
[ ] Docs updated

closing in favour of https://github.com/firebase/genkit/pull/1297


As an API client, I want to get canonical address candidates for a given address, so that I can pick an address recognized by the Nashville Metro parcel data services

Acceptance criteria:

Provide at most X number of address candidates (X being configurable).

Going to re-open this. I think we've been misusing the findAddressCandidates endpoint.  From the description:

The findAddressCandidates operation geocodes one location per request

It is meant to transform a well formed address into a point or polygon. We are using it for this, but we're also using for auto-completion. It's not very good at this.  Here's a quick gif of my making multiple requests w/ insomnia - you can see it cuts out in the middle, and only gives me useful auto completions once I've correctly typed in most of my address:

Something like the Google Autocomplete API is purpose built for this, and should be used instead (plus it comes w/ a nice widget).  In the meantime, we should disable auto-completion and just have an error message that says "We couldn't find your address" or something.

Should be merged with #28 per pending changes to API via PR #47

Just want to note that whatever we build, we'll need to provide the coordinates the our autocompletion API resolves to using Web Mercator coordinates (wkid 3857),


[Optimization][Data Studio]  Recommend display the oracle schema in pagination

Search before asking

[X] I had searched in the issues and found no similar optimization requirement.

Description
当oracle拥有大量schema时，切换到oracle数据源时页面卡死或者占用大量cpu

Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

You can try to optimize this problem


Remove MD-1 Algorithm

The MD-1 algorithm from our list of algorithms probably does not exist.
So it should be safe to remove it.

How was this resolved?

It was resolved by removing MD-1 from the list and from the documents.


Updating sass-exports npm module breaks lib/colours.js

First timers only
This issue is reserved for people who have never contributed to the GOV.UK Design System before, please only pick this up if you're a new contributor.
Description
After updating sass-exports (npm install sass-export@1.0.3), when you try run npm test or npm start the following error appears:

TypeError: Cannot read property 'reduce' of undefined

paletteMap is returning undefined and therefore on this line reduce method fails.
If you remove .mapValue (https://github.com/alphagov/govuk-design-system/blob/master/lib/colours.js#L25), paletteMap returns a value but not in the correct format.
Step by Step
1. Claim this issue
Comment below to let other people know that you're working on this issue.
2. Fork the repository
3. Edit colours.js file
palette should set to
{
  "black":"#0b0c0c",
  "blue":"#005ea5",
  "bright-purple":"#912b88",
  "bright-red":"#df3034",
  "brown":"#b58840",
  "green":"#006435",
  "grey-1":"#6f777b",
  "grey-2":"#bfc1c3",
  "grey-3":"#dee0e2",
  "grey-4":"#f8f8f8",
  "light-blue":"#2b8cc4",
  "light-green":"#85994b",
  "light-pink":"#f499be",
  "light-purple":"#6f72af",
  "orange":"#f47738",
  "pink":"#d53880",
  "purple":"#2e358b",
  "red":"#b10e1e",
  "turquoise":"#28a197",
  "white":"#ffffff",
  "yellow":"#ffbf47"
}

4. Create a Pull Request
5. Done
We'll review the Pull Request and let you know if any changes are needed.
Questions
If you’ve got a question, you can comment in this issue or email the Design System team on<EMAIL_ADDRESS>

Hello! Has anyone completed this task yet? I'm happy to help 😄

Hi @cmccrea23,
If you would like to pick this up then please feel free to work on it.
So sorry @sog01, some how we missed your message but seeing as its been almost a month, I'm assuming you might not be available to work on this which is why I offering it to @cmccrea23.
Thank you to all you have volunteered 👏

Hey everyone,
I've had a look into this issue and it seems like the issue is in the sass-exports library and should be fixed there rather than our application.
We’re going to close this issue now as we no longer think it’s something that could easily be picked up and worked on.
If you're still interested in learning how GitHub works, we have some content related issues that you might want to pick up.
Nick


Allow users to replay paths from prompt leaderboard

Users are now able to click next to a now-formatted run path and go through the links in the path. The next step would be to scroll-to and highlight the following link in question, but I was not able to get to it. It seems like a difficult problem because we do not know which link corresponds to the topic we have (e.g. we do not know which link in an article corresponds with "Egg as food" without querying for more information).
https://user-images.githubusercontent.com/7005740/155879953-1352b915-dfe8-48d4-8b36-86a6cde953ec.mov

yo this is amazing