feat(graphql-plugins): add ability for plugins to call back to core e…

…ngine
It is useful for plugins to be able to get common pieces from the core engine like existing loadableTypes etc, to extend the graphQL model easily.
Adding facilities for that.
Checklist

[ ] The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
[ ] Links to related issues (if applicable)
[ ] Tests for the changes have been added/updated (if applicable)
[ ] Docs related to the changes have been added/updated (if applicable). If a new feature has been added a Usage Guide has been added for the same.
[ ] For any breaking change/potential downtime/deprecation/big changes an entry has been made in Updating DataHub

merging this because CI failures are unrelated.

@shirshanka
The idea of GmsGraphQLPlugin is

An interface that allows the Core GMS GraphQL Engine to be extended without requiring
code changes in the GmsGraphQLEngine class if new entities, relationships or resolvers
need to be introduced. This is useful if you are maintaining a fork of DataHub and
don't want to deal with merge conflicts.

Now for adding this plugin to Datahub GMSGraphEngine, I have to add in the constructor of GmsGraphQLEngine

    this.graphQLPlugins = List.of(
            // Add new plugins here
    );

But this would in future cause merge conflicts right? Or is there any other way to add the plugin?


[api] Updated REST API versioning to v2.2.0

Bumping up the REST API versioning to v.2.2.0 for Darga.

@Fryguy @chessbyte totally forgot about this, need to go from v2.2.0-pre to v2.2.0 for Darga. Thanks.

@gtanzillo bumping up REST API versioning.

👍


Problems extracting

Checklist

[x ] I'm reporting a broken site support issue
[x ] I've verified that I'm running youtube-dl version 2019.05.11
[x ] I've checked that all provided URLs are alive and playable in a browser
[x ] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x ] I've searched the bugtracker for similar bug reports including closed ones
[x ] I've read bugs section in FAQ

Verbose log

PASTE VERBOSE LOG HERE
```╔══⦃zanefromtheinternet卐WeArEbTy⦄⌁⦃Music⦄
╙─╼$ youtube-dl --verbose --extract-audio --audio-format mp3 https://youtu.be/phr1pOFK1V8
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', '--extract-audio', '--audio-format', 'mp3', 'https://youtu.be/phr1pOFK1V8']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2018.03.14
[debug] Python version 3.6.7 (CPython) - Linux-4.18.0-18-generic-x86_64-with-Ubuntu-18.04-bionic
[debug] exe versions: ffmpeg 3.4.6-0ubuntu<IP_ADDRESS>, ffprobe 3.4.6-0ubuntu<IP_ADDRESS>
[debug] Proxy map: {}
[youtube] phr1pOFK1V8: Downloading webpage
[youtube] phr1pOFK1V8: Downloading video info webpage
ERROR: phr1pOFK1V8: "token" parameter not in video info for unknown reason; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 785, in extract_info
    ie_result = ie.extract(url)
  File "/usr/lib/python3/dist-packages/youtube_dl/extractor/common.py", line 440, in extract
    ie_result = self._real_extract(url)
  File "/usr/lib/python3/dist-packages/youtube_dl/extractor/youtube.py", line 1624, in _real_extract
    video_id=video_id)
youtube_dl.utils.ExtractorError: phr1pOFK1V8: "token" parameter not in video info for unknown reason; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

## Description

<!--
Provide an explanation of your issue in an arbitrary form. Please make sure the description is worded well enough to be understood, see https://github.com/ytdl-org/youtube-dl#is-the-description-of-the-issue-itself-sufficient. Provide any additional information, suggested solution and as much context and examples as possible.
If work on your issue requires account credentials please provide them or explain how one can obtain them.
-->

WRITE DESCRIPTION HERE won't extract audio from any video

what are you talking about out dated? i just reinstalled it LOL?

nevermind i figured it out for some reason it wasn't downloading the correct version with wget
so i curled it ;)


scaling of non-square images behaves oddly

we're having a problem where a rectangular image (30x12) displays in a strange manner. It rotates the image 90 degrees. I don't know if this is a problem with our code:
https://github.com/ranchblt/labyrinthofthechimera/blob/master/labyrinth/fireball.go
Or a problem within Ebiten.

Thank you for the report. I'll look into it.

https://github.com/ranchblt/labyrinthofthechimera/blob/master/labyrinth/fireball.go#L63 Isn't this f.center.x - width instead of f.center.x - height?

I go-got you project, but I don't know how to reproduce your problem. After go run main.go, what should I do? Thanks.

You're almost certainly right about x-width vs. x-height. Unfortunately I'm at work or I'd try it right now.
 We thought we were rotating it weirdly, but if you edit the image (under root/resource) and put something like a blue dot on the image, it's getting squeezed.

OK, so if my suggestion is right, the fact is that the image is squeezed rather than rotated. I pressed the space bar and confirmed fireballs. Thanks.

Awesome. Thanks a lot for the second set of eyes, much appreciated. I will take a look at it this evening.

Confirmed that we goofed it. Thanks again for your help, and I'll give you a shout when our new game is ready for a playtest. :)

I'm really looking forward to it :-)


Add the unattended-upgrades recipe and set to false by default

/cc @joshuajansen

I just added the unattended-upgrades recipes to the Unicorn Rails. And I've added new changelog entries for release 2.5.0

I think this is good to go! I'm running one last chef run but should be good.

Works, lets ship.


Workspaces change wiped "Open Recent..." history

After the insiders upgrade to e026e5e8b891075cef13ca6ec0cad452f28b66d0, my "Open Recent" history was gone, I assume from multiroot work. Just a little annoying but we should try not to do that for upgrading 1.14 -> 1.15

@roblourens this should have been a one time glitch when going from one particular insiders build to another and not reproduce on a fresh install. I just verified that it is not lost when going from stable to insiders using the --user-data-dir trick. Please confirm.


50% data loss in Jenkins builds

So in this case, the Jenkins UI shows a lot of jobs (353) but we only collected 9 in the DB it looks like from these screenshots.

Never mind. I tested this incorrectly. Its working fine


no release for linux

there is no download for linux. Cant build from source because that never works.

There is. You use mono and MultiMiner.Win.exe, there are instructions on how to do it.


pal: Emulate 32-bit predication on the universal engine

The PFP only supports 64-bit predicates (which is what DX12 specs),
whereas Vulkan specs 32b-bit predicates. AMD never resolved that
mismatch, but implemented the rest of EXT_conditional_rendering anyways,
with an appropriate check for 32-bit predication support.
This patch emulates 32-bit predication on the universal engine by
allocating a scratch 64-bit predicate in command buffer embedded data
memory and emitting a ME copy from the original 32-bit predicate to the
lower 32 bits of that scratch predicate, prior to emitting the
SET_PREDICATION command.
Testing:
Run https://github.com/SaschaWillems/Vulkan/tree/master/examples/conditionalrender

Can one of the admins verify this patch?

@GPUOpen-Drivers/palreviewers , ping for code review

retest this please

Test summary for commit 5e2c893cc6a8521afddf6b2ad81f29029aa97be4
Driver commits used in build
CWPACK: amd-master 7387247eb9889ddcabbc1053b9c2052e253b088e
METROHASH: amd-master 712f76fee75d69b23a1ea8f6465752c3ccaaf9a2
LLPC: dev b4477c4807074f559369518e4f5b175f8ab53d93
SPVGEN: dev c054813a9a894e32aaaa04c6717a667c15f60cfd
XGL: dev 598c6832a4983f5b75b38a589fca5be80a2f3bb0
LLVM-PROJECT: amd-gfx-gpuopen-dev ccbc834ac4f92e63a9a003bd5a18cb9fcf3c6121

CTS tests (Failed: 0/129659)Built with branch Vulkan-CTS-<IP_ADDRESS>-fetch-sources-fix
Ubuntu 20.04, Gfx10
Passed: 22766/43224 (52.7%)
Failed: 0/43224 (0.0%)
Skipped: 20458/43224 (47.3%)

Ubuntu 18.04, Gfx9
Passed: 22765/43228 (52.7%)
Failed: 0/43228 (0.0%)
Skipped: 20463/43228 (47.3%)

Rhel 8.2, Gfx8
Passed: 21591/43207 (50.0%)
Failed: 0/43207 (0.0%)
Skipped: 21616/43207 (50.0%)

Test summary for commit 5e2c893cc6a8521afddf6b2ad81f29029aa97be4
Driver commits used in build
CWPACK: amd-master 7387247eb9889ddcabbc1053b9c2052e253b088e
METROHASH: amd-master 712f76fee75d69b23a1ea8f6465752c3ccaaf9a2
LLPC: dev b4477c4807074f559369518e4f5b175f8ab53d93
SPVGEN: dev c054813a9a894e32aaaa04c6717a667c15f60cfd
XGL: dev 598c6832a4983f5b75b38a589fca5be80a2f3bb0
LLVM-PROJECT: amd-gfx-gpuopen-dev ccbc834ac4f92e63a9a003bd5a18cb9fcf3c6121

CTS tests (Failed: 0/86452)Built with branch Vulkan-CTS-<IP_ADDRESS>-fetch-sources-fix
Ubuntu 20.04, Gfx10
Passed: 22766/43224 (52.7%)
Failed: 0/43224 (0.0%)
Skipped: 20458/43224 (47.3%)

Ubuntu 18.04, Gfx9
Passed: 22765/43228 (52.7%)
Failed: 0/43228 (0.0%)
Skipped: 20463/43228 (47.3%)

Rhel 8.2, Gfx8
No Results

One potential improvement on this patch would be to allocate space in the command buffer once. I believe this is done for the async compute engines.

So we internally compared this to the other way we can do this on the graphics queue: a ucode change to handle Boolean32 directly during predication. Benefit is that it's more straightforward, need not round trip through memory, and won't need a PFP-sync. Drawback is that it takes time and some coordination to get that in place, like any ucode change.
Your solution is certainly best in the short term and where the ucode isn't available. Let's make sure this PR won't interfere with a ucode-based solution though.
I would suggest that we need to separate 'native' and 'emulated' 32-bit predication support, both so that PAL can internally tell when to use which path and since XGL has expressed an interest in being able to tell the difference. Can we keep the existing bit reserved for the native path and add a new one for this path, maybe memory32bPredicationEmulated? This would need corresponding handling in palDevice.h's DeviceProperties and device.cpp's Device::GetProperties. The CP graphics queue is really the only queue that has hardware for a 'native' path (with or without the ucode), so we shouldn't need to change it anywhere else.
Regarding that improvement: async compute actually allocates just the same as this PR does. CmdAllocateEmbeddedData is pretty efficient (backed by a bump allocator in the usual case) and these would usually be dwarfed by things like userdata updates, so I think optimization there is premature.

I would suggest that we need to separate 'native' and 'emulated' 32-bit predication support, both so that PAL can internally tell when to use which path and since XGL has expressed an interest in being able to tell the difference. Can we keep the existing bit reserved for the native path and add a new one for this path, maybe memory32bPredicationEmulated? This would need corresponding handling in palDevice.h's DeviceProperties and device.cpp's Device::GetProperties. The CP graphics queue is really the only queue that has hardware for a 'native' path (with or without the ucode), so we shouldn't need to change it anywhere else.

That sounds totally reasonable and I was already thinking about this because we've been told 32-bit predication will be supported by future ucode (perhaps though not for older ASICS). I'll add a patch to the PR to do this.

Will get to the required changes soon, sorry for the lack of updates.

retest this please (for bot)

FYI that the build failure is not code related, but seems to be because of an external outage. They estimate things will be back up sometime tomorrow morning, will retest once that happens.

retest this please


Fix all mypy typechecking errors, add a lot of type annotations

Closes #1389

See my comments below and please make the adjustments everywhere, not just where I've noted them.

The adjustments would basically mean reverting the changes, but almost none of them can be reverted, because then mypy errors appear.
So this would just mean giving up trying to check the code with mypy.
Maybe there is some misconception, but the point of running the actual mypy checks is that it also checks function bodies and can complain about potential problems until you write code in a way that makes it clear to mypy that there is no problem.

Extracted simpler changes to https://github.com/Python-Markdown/markdown/pull/1401
Although if there isn't going to be a check that they remain correct, maybe we should decrease the scope of the additions a bit

Maybe there is some misconception

Python not being strongly types if a feature which I embrace. I will continue to write my code that way. Anything which forces me to write strongly typed code in a language which is not strongly typed is unwelcome.
I see type annotations as documentation. The code dictates the annotations, not the other way around. Of course, over time as updates and changes are made to the code, the annotations could get out-of-sync with the code. Therefore, it is reasonable to include a type checker in the CI to ensure that doesn't happen. However, the type checker should only be checking the already defined annotations. There is no need to type check an unannotated private variable which is never used outside of a single method (for example).
If mypy cannot serve that purpose, then it is the wrong tool for the job.

I am going to close this in favor of #1401. I suspect that mypy is not the right fit for this project. However, if it can be configured to fit, then this can be reopened. Or, if a different tool is proposed, that should be in a new PR.

I'll want to sync this branch to latest if #1401 is merged, and then leave this for posterity. Not sure if I'll be able to do that if it's closed.

Yeah mypy is pretty bad!
Sadly other checkers would ask for even more code changes :D

Okay, I'll leave it open for now.

By disabling a large amount of mypy checks, I reduced this to a much smaller change https://github.com/oprypin/markdown/commit/2468253526d91df2cd909725f1fb8041a25ede12 that is based on #1401.
It will ensure the type annotations don't fall into disrepair.

I think if you are using types, using mypy is very important to keep things from getting broken. I also agree that there is nothing wrong with limiting the checks and/or doing per line ignores for particularly tricky things that can be resolved later if there is interest.

I have taken a step back and taken a fresh look at the overall matter of annotations and type checking. I think perhaps I dove in with a few misunderstandings and miscomprehensions. Sorry about that; especially if I have led anyone down a path of doing work I would never approve. That was not my intention.
So to be clear. upon reflection, the following are my general expectations.

This library should always be a dynamically typed library. I am opposed to this library being forcibly strongly typed. That probably means we will never have a py.typed file (or whatever it is called) and that should not be a goal to work towards.

The only purpose of annotations is to serve as documentation. The code dictates the annotations, not the other way around. In other words, we do not edit code to fit the annotations, we edit the annotations to fit the code. Of course, occasionally, the specific format of code may prevent defining annotations. In that case, an edit to the format (but not functionality) of the code is acceptable to allow  defining annotations (the recent edits to some NamedTuple objects is one such example of this).
Of course, type checking may occasionally reveal an otherwise unknown bug in the code. And it would only be reasonable for those bugs to be fixed. However, the fix should always be framed as a fix to the now known bug, not a change to the code to match the type annotations. In other words, I would expect a test case which fails before the fix is applied and succeeds after regardless of any type annotations.

Of course, the type annotations should remain in sync with the code. I would expect some tooling to check that on the CI server. Presumably, we would add another linter like tool.  The tool should never error or warn on missing annotations. The only task of the tool is to verify that the type annotations which exist agree with the code. If any fail, then a PR would not be accepted until an appropriate fix is made. Of course, an appropriate fix could mean the annotation needs to be updated, or it could mean the code needs to be updated. Is this an intentional change to the type of an object or did the type get changed inadvertently?

There are a few things we will need to do to meet the above goals.
Item 1 above requires no action expect to perhaps remove some proposed changes.
Item 2 is mostly complete. Thanks for the hard work of everyone involved.
Item 3 seems to be the problem. Originally I thought that mypy could meet our needs. After all, the page entitled Using mypy with an existing codebase in their documentation talks about how the tool can be used to progressively work through your code. However, on closer inspection, I see that the idea is to work through the code to gradually make it strongly typed. In fact, the suggestion is to do so before any annotations are added. That seems to suggest that perhaps mypy can only check annotations if the code is strongly typed. That is not a useful tool for our purpose. Unfortunately, I do not have any answers for how we can address this item. It occurs to me that it might not actually be possible to accomplish what I am proposing here.

I'll want to sync this branch to latest if https://github.com/Python-Markdown/markdown/pull/1401 is merged, and then leave this for posterity. Not sure if I'll be able to do that if it's closed.

I did the merge, can be closed now :D


Design loop tracing for Stingray

As I'm designing Stingray, having implemented the flood probes and pin probes from #4, there comes a point in the algorithm where a node becomes aware of a proof of loop and starts a loop trace.
This loop trace is linked to the probeId and goes out in both directions.
In all cases a loop trace is started when a pin probe comes back.
       North
        |
West - Alice  - East
        |        |
       South ___/

What if you received a probe from multiple directions?
One easy approach is to send the Loop trace back to the sender of the Probe message that triggered it.
And when forwarding a Loop trace, there will generally only be one from of the Probe...
I'll draw some diagrams with Flood-Pin-Trace in different colours to see if this works.

Don't skip the PIN!
FLOOD may find a loop in a P shape, where the origin is not on the loop.
Sending a PIN back, it will spread along both directions of the FLOOD, and ensure that when that loops back, it's a single-direction loop.
Then the TRACE can go into the opposite direction to single out the right branch of the PIN tree.

Reusing this design for Butterfly


Courser Emergency Evacuation Shuttle

About the PR
Introducing the Courser, the latest in rapid evacuation technology fresh out of the NT shipyards.  This expanded emergency evacuation shuttle features a service lounge for guests as well as a security checkpoint to safely secure hostiles en-route to Centcom.  For now, this evac shuttle will service Kettle, Pillar, and Bagel stations.
Screenshots

Changelog

:cl: Checkraze

add: Added the Courser class evacuation shuttle. Find it on Kettle, Bagel, and Pillar stations!

Very nice! I'm exited for this. I should probably give my opinion past the excitement of a new shuttle, though.
The first thing that I notice is that this station is extremely decked out. As more shuttles are added, we need to know if this gonna be the new standard or will this specific shuttle just have way more cool things on it?
Looking off the screenshot, I think the medical dispenser might be a bit too much. Having instant access to epinephrine will make saving people extremely easy. I'm not sure if this is a bad thing, however.
I also see a security dispenser, the locker, and the unsecured flashers. This might also be a bad idea, I can see people breaking in there and causing mayhem. It's probably fine, though
I notice there are no fire lockers in the main area. Fire lockers aren't ever used anyways, so it's probably fine.
This shuttle has a name. Will the original get a name (or does it already have one and I just haven't noticed)?
My main issue is just that this shuttle is clearly far, far better than the original one. Will the original get an upgrade? Will future shuttles be on par with this one or the old one?
Either way, the shuttle isn't that large a component in the game balance.
That bar looks sick though

this is a tad oversupplied, im not a fan of the sectech or medical dispenser. the layout is good though

The first thing that I notice is that this station is extremely decked out. As more shuttles are added, we need to know if this gonna be the new standard or will this specific shuttle just have way more cool things on it?
Its a bigger shuttle designed for higher pop stations, and people have commented regularly how they like Nyano's shuttle because it has a bar, so I featured a bar. Stations can now specify custom shuttles easily and I would love to see more unique evac shuttle designs, I might even make a tiny evac shuttle next for the low pop stations like cluster and moose
Looking off the screenshot, I think the medical dispenser might be a bit too much. Having instant access to epinephrine will make saving people extremely easy. I'm not sure if this is a bad thing, however.
The original evac shuttle has a nanomed so I'm not sure how you think this is worse?
I also see a security dispenser, the locker, and the unsecured flashers. This might also be a bad idea, I can see people breaking in there and causing mayhem. It's probably fine, though
that's kind of the point. the locker is just an empty evidence locker, there are zip tie cuffs and 2 flashers and the sec tech vendor's inventory doesn't really have anything that dangerous.
I notice there are no fire lockers in the main area. Fire lockers aren't ever used anyways, so it's probably fine.
Yea the center area is very vulnerable to bombing I admit
This shuttle has a name. Will the original get a name (or does it already have one and I just haven't noticed)?
I only really named it because it needs a distinct name from the regular evac shuttle in the files. Ultimately the only people who even know it has a name are going to be people who read this PR and dive into the code. For instance, do you know what the nukie shuttle is named?
My main issue is just that this shuttle is clearly far, far better than the original one. Will the original get an upgrade? Will future shuttles be on par with this one or the old one?
if there is interest in updating the existing shuttle I can do so and use the new tiles and decals, but as it is I think the existing evac shuttle is fine. Future shuttles well that will be up to the people who make them I suppose
Either way, the shuttle isn't that large a component in the game balance.
Remember these exist for a grand total of 4 minutes every round

this is a tad oversupplied, im not a fan of the sectech or medical dispenser. the layout is good though

emisse told me to put in sec tech and like I said, the original evac has a med dispenser

this is a tad oversupplied, im not a fan of the sectech or medical dispenser. the layout is good though

.

Ok i removed the sec tech


Add readme to flow

A README supporting the employer/university/holder flow for authorization. Uses mermaid.js (by default supported with github) to make graphs that describe the data flow and process.

Codecov Report

Merging #179 (aebac87) into main (253df3e) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head aebac87 differs from pull request most recent head ed3bf7c. Consider uploading reports for the commit ed3bf7c to get more accurate results

@@           Coverage Diff           @@
##             main     #179   +/-   ##
=======================================
  Coverage   55.10%   55.10%
=======================================
  Files          40       40
  Lines        4368     4368
=======================================
  Hits         2407     2407
  Misses       1565     1565
  Partials      396      396

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

Thanks for approving it!


I want dynamic config keys

Could it be possible to provide a setting to make dynamic config keys? That is, I can get and set config without checking if is in CONSTANCE_CONFIG.
In my case, I want to have constance settings for many environments, which I cannot determine in django settings.
Seems it's not complex in code.

I'll recommend you to use a custom implementation on your project.
This seems is out of the purpose of django-constance.


NVS: add support for bigger write block size

This patchset adds support for write block size bigger than 8 bytes. Tested on the SAM E70 Xplained board, which uses a 16 bytes block size.

Codecov Report

Merging #11125 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #11125   +/-   ##
=======================================
  Coverage    53.1%    53.1%
=======================================
  Files         218      218
  Lines       26853    26853
  Branches     5950     5950
=======================================
  Hits        14259    14259
  Misses      10162    10162
  Partials     2432     2432

Continue to review full report at Codecov.

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

This would make all writes aligned to NVS_BLOCK_SIZE, even for a write_block_size of 1 byte -> a lot of wasted flash!
I would like to kill the VLA but support and minimal flash usage is required for 1,2,4,8 and 16 byte write block size.

No, this doesn't change anything to the writes on the flash. NVS_BLOCK_SIZE is only used to define the RAM buffer for read and write operations. It's probably misnamed and should be renamed to something like NVS_MAX_WRITE_BLOCK_SIZE. The size of the ATE on the flash is determined by  _nvs_al_size(fs, sizeof(struct nvs_ate)) and is correctly done everywhere in the code, except for closing the sector.
 For example moving 28 bytes of data with NVS_BLOCK_SIZE=8 requires 4 calls to read_flash and write_flash, vs a single call for NVS_BLOCK_SIZE=32. This reduces the number of functions calls and some flash drivers are able to write all the bytes at the same time without overhead.

This would make all writes aligned to NVS_BLOCK_SIZE, even for a write_block_size of 1 byte -> a lot of wasted flash!
I would like to kill the VLA but support and minimal flash usage is required for 1,2,4,8 and 16 byte write block size.

No, this doesn't change anything to the writes on the flash. NVS_BLOCK_SIZE is only used to define the RAM buffer for read and write operations. It's probably misnamed and should be renamed to something like NVS_MAX_WRITE_BLOCK_SIZE. The size of the ATE on the flash is determined by _nvs_al_size(fs, sizeof(struct nvs_ate)) and is correctly done everywhere in the code, except for closing the sector.

You are right, but there is no reason to make the buffer of size NVS_BLOCK_SIZE. It could remain sizeof(struct nvs_ate). The closing of the sector is indeed not correct for write_block_size > sizeof(struct nvs_ate). When calculating the address and the space used the code should use the aligned ate_size.
I think it would be best to keep the nvs_ate a 8 byte structure even for a closed sector on a 16 byte write block size system. So it should be 8 zeros followed by 8 FF's.

 For example moving 28 bytes of data with NVS_BLOCK_SIZE=8 requires 4 calls to read_flash and write_flash, vs a single call for NVS_BLOCK_SIZE=32. This reduces the number of functions calls and some flash drivers are able to write all the bytes at the same time without overhead.

This is exactly what NVS_BLOCK_SIZE is for. On a 16 byte write block size it definitely makes sense to make it bigger, on a 1 byte system it depends on the data that is stored. I wanted to keep the ram buffer as small as possible (I am working on a 16kb ram system) that is why I selected a block size of 8. I don't mind it being set to 32.

I think it would be best to keep the nvs_ate a 8 byte structure even for a closed sector on a 16 byte write block size system. So it should be 8 zeros followed by 8 FF's.

Ok, I can change that part of the code.

This is exactly what NVS_BLOCK_SIZE is for. On a 16 byte write block size it definitely makes sense to make it bigger, on a 1 byte system it depends on the data that is stored. I wanted to keep the ram buffer as small as possible (I am working on a 16kb ram system) that is why I selected a block size of 8. I don't mind it being set to 32.

Then maybe it should be made configurable through Kconfig?

This is exactly what NVS_BLOCK_SIZE is for. On a 16 byte write block size it definitely makes sense to make it bigger, on a 1 byte system it depends on the data that is stored. I wanted to keep the ram buffer as small as possible (I am working on a 16kb ram system) that is why I selected a block size of 8. I don't mind it being set to 32.

Then maybe it should be made configurable through Kconfig?

Making it configurable through Kconfig is not so easy, remember that it should be a multiple of the write_block_size that is retrieved by get_write_block_size(). If someone configures it to be 24 on a 16 byte write block size system, what will happen ? The best solution IMO would be that the write_block_size is defined at compile time so a check is possible at compile time, but this would not work for systems with configurable write_block_size. Taking all of this into account I have not found and elegant way of making it configurable so a sane selection should be made. Setting NVS_BLOCK_SIZE 8 was ok for systems with write_block_size <=8. 32 or 16 could be better for write_block_size <=16.

Making it configurable through Kconfig is not so easy, remember that it should be a multiple of the write_block_size that is retrieved by get_write_block_size().

I don't see why it should be a multiple of write_block_size.
If NVS_BLOCK_SIZE = 13 on a system where fs->write_block_size = 8, then block_size will be set to 8:
block_size = NVS_BLOCK_SIZE & ~(write_block_size - 1);
The only requirement is to have NVS_BLOCK_SIZE bigger than fs->write_block_size, like I did in my first patch, to ensure that there is enough RAM to hold at least the data of one write block.

I think we should rename NVS_BLOCK_SIZE into NVS_BUFFER_SIZE, so that it matches its actual use.

Yep I confirm that this solution work, I'll send an updated PR later today.

I think we should rename NVS_BLOCK_SIZE into NVS_BUFFER_SIZE, so that it matches its actual use.

The name NVS_BLOCK_SIZE is connected to the _nvs_flash_block_xx routines, where if possible a block is used. There is one routine _nvs_flash_cmp_const() that would better be called _nvs_flash_block_cmp_const() as it also uses a flash block if possible.
So I think it is better to keep it as NVS_BLOCK_SIZE. When a sane definition of NVS_BLOCK_SIZE is used the buffer size will be equal to NVS_BLOCK_SIZE. It is only in cases where the NVS_BLOCK_SIZE is badly defined that there is a difference.

Well in practice only _nvs_flash_block_move would actually required that NVS_BLOCK_SIZE is a multiple of the write block size. The other two function only do read accesses, and can therefore use a buffer which is not multiple of the write block size.

@Laczen, I have just pushed a new version of the PR.


cubic is transfer faster than bbr in bad network? and any plan to support bbr2?

It seems use bbr1 is not quick enough to transfer in a bad network. and i try to change bbr to cubic, it seems cubic is stable than bbr in bad network and even quick than bbr, is it any problems in bbr?  i found that you have already change the default setting to use cubic in new release version,  what's the actual problem you meet to change it?
and one more question, do you have some plans to support bbr2( it seems google have already publish a new version bbr).

i try to send 200KB data to quic server in a bad network(20Mbps bindwidth， but 50% out packet loss, 0% in packet loss) , it cost nearly 10 seconds( if in a good network, it can transfer very fast).
i find server will reply ack frame in about tens of milliseconds with some frame range. but cwnd size of client will decrease to 5840 very fast. is it any problems to calculate cwnd if use bbr ?
you can check the following file to check the ack frame log and cwnd log.
ackframe.log
cwnd.log
and one more question about bytes_in_flight and sc_n_in_flight_all
https://github.com/litespeedtech/lsquic/blob/f2a7fa84cd2ec2c206f3fc339a52bf2c0e31e019/src/liblsquic/lsquic_send_ctl.c#L675

i found the second parameter name in "bbr_app_limited (struct lsquic_bbr *bbr, uint64_t bytes_in_flight)", is bytes_in_flight, but sc_n_in_flight_all is passed to lsquic_bbr_sent function. so whether it is a mistake to use ctl->sc_n_in_flight_all as the third parameter in cci_sent.

@dtikhonov do you have any suggestions?

50% loss is rather extreme.  I don't think we've tested with loss quite that high.  I'll put this onto my TODO list and try to reproduce the behavior you reported above.
As for bbr_app_limited(), I think you've spotted a real bug.  Thank you!

As for bbr_app_limited(), I think you've spotted a real bug.

This has been addressed in the just-released v2.10.5.

reat， i still need to improve the performance to upload file in such a bad network. we test some other app to upload by gquic, it seems it can upload the same file in 3 seconds. we hope we could have some deep contact to discuss about performance in a bad network.
I have already build a demo on iOS platform and use openssl 1.1.1 to send file to a quic-go server.


Empty page (because of duplicate permission names?)

While reporting this issue: https://github.com/iann0036/iam-dataset/issues/20, I wanted to get a look at Microsoft.AAD/register/action in https://azure.permissions.cloud/
This duplicate name isn't a problem in the search bar:

But I noticed that the page for the Microsoft.AAD provider was empty:

I thought that perhaps it was because of this duplicate?
But perhaps not, because there's no issue with this other 3 occurences duplicate of Microsoft.AzureSphere/catalogs/read on https://azure.permissions.cloud/iam/Microsoft.AzureSphere

Actually, it's a different reason:
TypeError: Cannot read properties of null (reading 'split')

Because of this entry:

Hey @cnotin,
Thanks for digging into this.
I've made an adjustment to the logic that should fix this. Let me know if that's resolved for you.

Much better :) Thanks Iann!


Add warning about createContainer and contextTypes

This issue had my colleague bogged down for a good couple of hours - I hope this warning will help prevent others falling into the same trap!

Hmm, interesting one. I'm wondering if theres a way that Marty can ensure that the app contextType is there before we render?

You could make the context types property on the container class be read-only.

@jimmed can you give me an example of how you were setting content types?
Was it
class User extends React.Component {}

User.contextTypes = { user: ... }

or
var UserContainer = Marty.createContainer(User, {
  fetch: {
    user() { ... }
  }
})

UserContainer.contextTypes = { user: ... }

or something else?

The latter of the two examples, so like this:
var UserContainer = Marty.createContainer(User, {
  fetch: {
    user() { ... }
  }
})

UserContainer.contextTypes = { user: ... }

The safe workaround was along these lines:
import assign from 'lodash/object/assign'; // or another Object.assign implementation...

const UserContainer = Marty.createContainer(User, { ... });

assign(UserContainer.contextTypes, { user: ... });

You can pass in contextTypes into createContainer which will do the merge for you
var UserContainer = Marty.createContainer(User, {
  contextTypes: { user: ... }
  fetch: {
    user() { ... }
  }
})

Nice! Are you happy to update the docs yourself accordingly, or should I?
(making @moretti aware of this solution)

This is great, thanks!

@jhollingworth
What do you think about using Object.defineProperty to set contextTypes on the container so that this error condition isn't possible?


os-ntopng Doesn't start.

Describe the bug
I've switched from pfSense to OPNsense and I tried netflow but had bad luck with cpu usage, so I opted to try ntopng, having extra features instead. But installing and configuring ntopng it wouldn't actually work. UI is not available (not even when specifying specific interface). And no real tracking is done, after x amount of time the process just dies.
To Reproduce
Steps to reproduce the behavior:

Install redis
Install ntopng
Enable redis
Enable ntopng
Service says running but not accessible and silently dies

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots

Configuration:

Relevant log files
2020-03-24T18:13:54	ntopng: [Utils.cpp:3056] WARNING: Network discovery and other privileged activities will fail
2020-03-24T18:13:54	ntopng: [Utils.cpp:3055] WARNING: ntopng has not been compiled with libcap-dev
2020-03-23T20:59:14	ntopng: [Utils.cpp:3056] WARNING: Network discovery and other privileged activities will fail
2020-03-23T20:59:14	ntopng: [Utils.cpp:3055] WARNING: ntopng has not been compiled with libcap-dev
2020-03-23T20:53:02	ntopng: [Utils.cpp:3056] WARNING: Network discovery and other privileged activities will fail
2020-03-23T20:53:02	ntopng: [Utils.cpp:3055] WARNING: ntopng has not been compiled with libcap-dev
2020-03-23T20:52:49	kernel: pid 52530 (ntopng), uid 288: exited on signal 11
2020-03-23T20:46:15	ntopng: [Utils.cpp:3056] WARNING: Network discovery and other privileged activities will fail
2020-03-23T20:46:15	ntopng: [Utils.cpp:3055] WARNING: ntopng has not been compiled with libcap-dev
2020-03-23T20:32:41	ntopng: [Utils.cpp:3056] WARNING: Network discovery and other privileged activities will fail
2020-03-23T20:32:41	ntopng: [Utils.cpp:3055] WARNING: ntopng has not been compiled with libcap-dev
2020-03-23T20:32:31	kernel: [HBSD SEGVGUARD] [ntopng (53167)] Suspension expired.
2020-03-23T20:32:31	ntopng: [Utils.cpp:3056] WARNING: Network discovery and other privileged activities will fail
2020-03-23T20:32:31	ntopng: [Utils.cpp:3055] WARNING: ntopng has not been compiled with libcap-dev
2020-03-23T20:30:58	ntopng: [Utils.cpp:3056] WARNING: Network discovery and other privileged activities will fail
2020-03-23T20:30:58	ntopng: [Utils.cpp:3055] WARNING: ntopng has not been compiled with libcap-dev
2020-03-23T20:29:18	ntopng: [Utils.cpp:3056] WARNING: Network discovery and other privileged activities will fail
2020-03-23T20:29:18	ntopng: [Utils.cpp:3055] WARNING: ntopng has not been compiled with libcap-dev
2020-03-23T20:29:11	kernel: pid 63652 (ntopng), uid 288: exited on signal 11
2020-03-23T20:28:16	ntopng: [Utils.cpp:3056] WARNING: Network discovery and other privileged activities will fail

Additional context
Add any other context about the problem here.
Environment
VMware ESXi 6.7u2 vm
OPNsense 20.1.3 (amd64, default, I guess OpenSSL).
Intel Core i7-2600 2 cores @ 3.40GHz
VMX3 NICs

Can you first try http only with port 3000 and check if this port is also allowed?
I installed n a fresh system and it works as expected.

Sorry to bother, I've found the issue, it was related to me specifying a gateway for the allow all rule in my LAN ruleset, which tried to route it externally over the gateway..
Thank you for the help though.


Allow validRange for Time Picker

Subject really says it all. There doesn't seem to be a way to define a validRange for the Time Picker.

@RichardLindhout , just wanted to comment that I would love this feature too!
My use-case is setting an appointment. Obviously, it should be impossible to set an appointment in the past.
For now, I am using errors messages to communicate to the user that the start and end times cannot be set in the past.
However, it would be awesome to simply restrict the user to a certain time frame, giving them less options to choose from.

PR for this appreciated!

Sorry! I've been swamped with a new job, new home, and new baby. I most likely won't have time to contribute to this until at least Q1'22.
I'd be happy to help review/test in the meantime if someone else can contribute before then.
On Nov 13, 2021, 09:01 -0500, Richard Lindhout @.***>, wrote:

PR for this appreciated!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

Hi, I also was looking for doing something like that (I mean, place only business hours 8-12pm, 1-5pm) but I can't find the way of implementing this.


Post ga version updates dec2019

Post release update of the com.azure:azure-security-keyvault-keys current version. Also, when the versions were updated on Friday none of the java files with hard coded versions were updated and should have been. That has been remedied here.

/azp run java - keyvault - ci

/azp run java - keyvault - ci.mgmt

/azp run java - storage - ci


Upgrade to v1.33.0 of the Azurerm Terraform Provider

Just an FYI with this, I believe 3 of the resources are incorrectly namedx in the upstream provider - I have questioned this with the Terraform team but right now, we are mapped correctly according to their system

This is superseded by #337 subject to the same constraints and notes - that updates us to 1.33.1 instead of 1.33.0.


Properly handle downstream_tests in Jenkinsfile

Submisison Checklist

[ ] Run tests: ./runCmdStanTests.py src/test
[ ] Declare copyright holder and open-source license: see below

Summary:
Jenkinsfile wasn't properly handing downstream_tests when checking for differences.
Intended Effect:
How to Verify:
Side Effects:
Documentation:
Copyright and Licensing
Please list the copyright holder for the work you are submitting (this will be you or your assignee, such as a university or company):
By submitting this pull request, the copyright holder is agreeing to license the submitted work under the following licenses:

Code: BSD 3-clause (https://opensource.org/licenses/BSD-3-Clause)
Documentation: CC-BY 4.0 (https://creativecommons.org/licenses/by/4.0/)

Looks good! https://jenkins.mc-stan.org/blue/organizations/jenkins/Stan/detail/downstream_tests/1296/pipeline


meta (alt)+ key  not work

shortcut not work:
meta (alt) + f   : move forward by words
meta (alt) + b   : move backward by words
meta (alt) + d   : delete forward by words
It's looks like meta(alt) key no effect.
keycode when press meta (alt):
press any key (program terminates 10s after last keypress)...
keycode  28 release
keycode  56 press
keycode  56 release
keycode  56 press
keycode  56 release
keycode  56 press
keycode  56 release
keycode  56 press
keycode  56 release
keycode  56 press
keycode  56 release
keycode  56 press
keycode  56 release
keycode  56 press
keycode  56 release
keycode  56 press
keycode  56 release
keycode  56 press
keycode  56 release
keycode  56 press
keycode  56 release
keycode  29 press
^Ccaught signal 2, cleaning up...
ENV:
OS:opensuse 13.X   , opensuse 42.X
TERM:screen-256color

I have a feeling this will be closed in favor of #316, so I'd add your comment there

Now fixed in #316


(HTTP code 500) server error - Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:51848-><IP_ADDRESS>:53: i/o timeout

Problem description
I write command : docker run rnix/openssl-gost -it /bin/bash and get error
(HTTP code 500) server error - Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:51848-><IP_ADDRESS>:53: i/o timeout
Project version(s) affected
Os: Windows 10 Home
Docker: version 18.03.0-ce, build 0520e24302
Docker work from boot2docker image in virtualbox V 5.2.20 r125813 (Qt5.6.2)

Thanks for sharing the issue. If there is an issue in the docs, please let us know. Please check your DNS server settings. For further support, please try:

https://dockercommunity.slack.com/
https://forums.docker.com/


New policy for excluding locations from our Mapbox and API exports

Follow-on from #702 in which we learned that our logic that excludes locations from our API export and website if their last recorded non-skip report used certain availability tags ("May be a vaccination site in the future" etc).
We should reconsider this policy now that we rely much more heavily on data scraped and imported from other sources.

Here's the current code: https://github.com/CAVaccineInventory/vial/blob/3aca5743eaafee4277ceaaf328fa949acd271c57/vaccinate/api/search.py#L347-L361

Could we do this based on the date of that report?
select location.public_id, location.name, location.full_address, report.created_at, json_agg(availability_tag.name)
from location join report on location.dn_latest_non_skip_report_id = report.id
join call_report_availability_tag on call_report_availability_tag.report_id = report.id
join availability_tag on call_report_availability_tag.availabilitytag_id = availability_tag.id
where location. soft_deleted = false and location.id in (select location_id from concordance_location where concordanceidentifier_id in (select id from concordance_identifier where authority = '_issue' and identifier = '701')) group by location.public_id, location.name, location.full_address, report.created_at order by report.created_at desc

https://vial.calltheshots.us/dashboard/?sql=select+location.public_id%2C+location.name%2C+location.full_address%2C+report.created_at%2C+json_agg(availability_tag.name)
from+location+join+report+on+location.dn_latest_non_skip_report_id+%3D+report.id
join+call_report_availability_tag+on+call_report_availability_tag.report_id+%3D+report.id
join+availability_tag+on+call_report_availability_tag.availabilitytag_id+%3D+availability_tag.id
where+location.+soft_deleted+%3D+false+and+location.id+in+(select+location_id+from+concordance_location+where+concordanceidentifier_id+in+(select+id+from+concordance_identifier+where+authority+%3D+'_issue'+and+identifier+%3D+'701'))+group+by+location.public_id%2C+location.name%2C+location.full_address%2C+report.created_at+order+by+report.created_at+desc%3ALdkKfys_atKjhtWiSqijkWvPIErh7ZTDLwjOqwc5cJA
That shows the dates on the reports, for the locations we investigated in #702 -  sorted by most recent at the top. 2021-06-19 16:23 is the most recent one, the oldest is 2021-03-30 and it looks like about a third of them are June, almost all of the rest are May, a few are April and March.

The issue here is actually a pretty big one: at what point do we consider a location "closed"? Do we stop showing it on our mapbox-powered vaccinatethestates.com site? Do we also exclude it from our API export?

A plan for this is forming in #712.


Use database helpers from mariadb-operator/api

The lib-common/modules/database is moved to mariadb-operator/api to remove a circular dependency.

/retest
+ oc start-build openstack-operator --from-dir . -F
Uploading directory "." as binary input for the build ...
.
Uploading finished
Error from server: etcdserver: request timed out


OneBlink & CivicPlus v1.3

When submitting a connector, please make sure that you follow the requirements below, otherwise your PR might be rejected. We want to make you have a well-built connector, a smooth certification experience, and your users are happy :)
If this is your first time submitting to GitHub and you need some help, please sign up for this session.

[x] I attest that the connector doesn't exist on the Power Platform today. I've verified by checking the pull requests in GitHub and by searching for the connector on the platform or in the documentation.
[x] I attest that the connector works and I verified by deploying and testing all the operations.
[x] I attest that I have added detailed descriptions for all operations and parameters in the swagger file.
[x] I attest that I have added response schemas to my actions, unless the response schema is dynamic.
[x] I validated the swagger file, apiDefinition.swagger.json, by running paconn validate command.
[x] If this is a certified connector, I confirm that apiProperties.json has a valid brand color and doesn't use an invalid brand color, #007ee5 or #ffffff. If this is an independent publisher connector, I confirm that I am not submitting a connector icon.

If you are an Independent Publisher, you must also attest to the following to ensure a smooth publishing process:

[x] I have named this PR after the pattern of "Connector Name (Independent Publisher)" ex: HubSpot Marketing (Independent Publisher)
[x] Within this PR markdown file, I have pasted screenshots that show: 3 unique operations (actions/triggers) working within a Flow. This can be in one flow or part of multiple flows. For each one of those flows, I have pasted in screenshots of the Flow succeeding.
[x] Within this PR markdown file, I have pasted in a screenshot from the Test operations section within the Custom Connector UI.
[x] If the connector uses OAuth, I have provided detailed steps on how to create an app in the readme.md.

@v-EgorKozhadei this change should have no effect on existing flows. It only adds new options that were not previously available.

Hi @mymattcarroll!
Your PR is approved and merged. Please update your submission in ISV Studio by using the latest commit ID.
Let me know if you have any questions!


Gotify and maybe other notifications for users

Description
Now  users have only Pushbullit and Pushover. In Emby radarr and Sonarr i can give each user a own Gotify. But only one user cvan get jellyseerr notifications.

Desired Behavior
Gotify for each user. Or maybe even better this :

Also for users
Additional Context
No response
Code of Conduct

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

Now users have only Pushbullit and Pushover

Please reword this as this is not true. Users get telegram, discord, pushbullet, Pushover and web push

Not at my end?

Strange

As mentioned in my first comment. I mentioned to reword the part that says only Pushover and pushbullet being the agents for users when that's not true as other types of agents exist (telegram, discord, Pushover, pushbullet, smtp, web push).
Seperate gotify for the user doesn't exist. So this feature request is valid. But the description was wrong. I'm asking to remove it as to not confuse others who read this.

As mentioned in my first comment. I mentioned to reword the part that says only Pushover and pushbullet being the agents for users when that's not true as other types of agents exist (telegram, discord, Pushover, pushbullet, smtp, web push).
Seperate gotify for the user doesn't exist. So this feature request is valid. But the description was wrong. I'm asking to remove it as to not confuse others who read this.

I w ill remove. But  it does exist. It works perfectly in other  apps like radarr  sonarr emby etc.

As mentioned in my first comment. I mentioned to reword the part that says only Pushover and pushbullet being the agents for users when that's not true as other types of agents exist (telegram, discord, Pushover, pushbullet, smtp, web push).
Seperate gotify for the user doesn't exist. So this feature request is valid. But the description was wrong. I'm asking to remove it as to not confuse others who read this.

I w ill remove. But  it does exist. It works perfectly in other  apps like radarr  sonarr emby etc.

I don't think you're understanding me at all. Gotify USER SETTINGS don't exist IN JELLYSEERR. So this feature request is VALID. But the part that says only Pushover & pushullet are the only agents EXPOSED TO USER IN JELLYSEERR is wrong. I'm not talking about gotify users not existing nor am I talking about other apps like radarr sonarr emby. I'm talking about jellyseerr.

I don't think you understood me. Gotify USER SETTINGS don't exist in JELLYSEERR. So this feature request is VALID.
But the part that says only Pushover & pushullet are the only agents exposed to the users in jellyseerr is wrong which you had just rectified.

But  it does exist. It works perfectly in other  apps like radarr  sonarr emby etc.

I'm not talking about gotify users not existing nor am I talking about other apps like radarr sonarr emby. I'm talking about jellyseerr user settings not having gotify as an option.

I am sorry  for the  misunderstanding . I edited it.  I hope its more corect now.


get_most_fish() causes Type error

If a field is occupied by a player, the method get_most_fish of Board throws:
TypeError: '<' not supported between instances of 'NoneType' and 'int'
Reason: The field list is sorted using get_fish(). get_fish returns None if the field is occupied.

Actually this seems easy to solve. Just added a pull request.


add turkish language support

Hello,
Thank you for your contribution.
Could you please squash those commits into a single one ?
Thank you.

Hello,
I combined all commits into a single commit.
I am happy to contribute :)

Thank you. :+1:


Lenis Smooth Scrolling Conflicts with SelectBox Scrolling

When using the Lenis smooth scrolling library, it appears that the native scrolling functionality within a selectbox becomes unresponsive. This seems to be a bug where Lenis interferes with the default behavior of the select element, preventing users from scrolling through options.
provider.tsx
"use client"
import React, { useEffect } from "react";
import Lenis from 'lenis'
import 'lenis/dist/lenis.css'
interface ProvidersProps {
  children: React.ReactNode;
}

export function Providers({ children }: ProvidersProps) {
 useEffect(() => {
    const lenis = new Lenis();

    function raf(time: number) {
      lenis.raf(time);
      requestAnimationFrame(raf);
    }

    requestAnimationFrame(raf);

    return () => {
      // lenis.destroy();
    };
  }, []);
  return <>{children}</>;
}

I tested this issue using basic select and option tags. Additionally, I also tried with components from the NextUI and HeadlessUI libraries. I set a maximum height and applied overflow-y-auto to the selectbox.

You must use prevent option in order to exclude your element from the lenis scrolling.
See this thread https://github.com/darkroomengineering/lenis/issues/347

Where am I making a mistake?
  useEffect(() => {
    const lenis = new Lenis({
      prevent: (node) => node.id === 'testt',
    });

    function raf(time: number) {
      lenis.raf(time);
      requestAnimationFrame(raf);
    }

    requestAnimationFrame(raf);

    return () => {
      // Optional: Cleanup the Lenis instance if needed
      lenis.destroy();
    };
  }, []);```

  `<div className="flex w-full flex-wrap md:flex-nowrap gap-4" >
        <Select
          id="testt"
          label="Select an animal"
          className="max-w-xs"
        >
          {animals.map((animal) => (
            <SelectItem key={animal.key}>
              {animal.label}
            </SelectItem>
          ))}
        </Select>

        <Select
          label="Favorite Animal"
          placeholder="Select an animal"
          className="max-w-xs"
        >
          {animals.map((animal) => (
            <SelectItem key={animal.key}>
              {animal.label}
            </SelectItem>
          ))}
        </Select>
      </div>`


cargo fix doesn't work for errors

I tried this code:
fn f(x: &str) {}
fn main() {
    f(String::new())
}

I got this error:
error[E0308]: mismatched types
 --> src/main.rs:3:7
  |
3 |     f(String::new())
  |       ^^^^^^^^^^^^^
  |       |
  |       expected `&str`, found struct `String`
  |       help: consider borrowing here: `&String::new()`

For more information about this error, try `rustc --explain E0308`.
error: could not compile `playground` due to previous error

I ran cargo fix, but it had no effect. It would be nice if cargo fix worked for errors and not just warnings - I have a lot of autofixable errors like this and I'd like to not have to fix them manually one by one.

The --broken-code flag should allow that.  Does that work for you?
 --broken-code               Fix code even if it already has compiler errors

Ah, there it is! I was looking for --fix-broken and when I didn't find it, I thought I'd imagined the flag :laughing:
Thanks!


Remove maxSize duplicate definition

This line has been reported by our SonarQube as an issue:

We think removing this declaration should resolve the issue and, simultaneously, fix the recursive call of the function.

Confirmed this as a backend issue, that variable should be reset to 1.

Hello @Fajfa
I quite don't understand your last reply, sorry.
Is this an issue or not?
Because I can't see any change in the file yet, so there is still the maxSize = 1 in both method signature (line 278) and in the foreach loop (line 306).
One of these should be removed if I understand well our SonarQube report.
Could you please confirm?
Thank you
Regards

@sgg-adraynrion I'll take another look at this code but for the time being with the current state of the reporter, it should not affect anything.


Add standardised formatting

@cgmckeever What you think? Should be easier to keep things in a standard formatting this way. Open to suggestions on the actual format.

Just started using this in Terraform, and I love how it does its thing .. so 👍


Page results

Is there an option to combine results from multiple pages to one page? or can i somehow jump from page to page when viewing the full images? The number of results i get per page is very low with my blacklisted tags. I'm trying to figure out a fix to this.

There is no way to do this, however what you could do is:

Increase the number of images per pages (either via the "+" button near the search field, or in the settings, in the "Sources" section)
Use the "infinite scrolling" feature, so that you don't need to switch pages that often when searching


where is the core magento data resides in docker container?

where is the core magento data resides in docker container? I was searching for it in /var/www/html/app/code but it does not appeared.

I found this. is in /var/www/html/
Sorry, as I am new in magento and docker, so raised this issue due to lack of knowledge of magento2 file structure.


youtube-dl -g url does not contain video, only audio.

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2017.09.15. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2017.09.15

Before submitting an issue make sure you have:

[ ] At least skimmed through the README, most notably the FAQ and BUGS sections
[ ] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[x] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add the -v flag to your command line you run youtube-dl with (youtube-dl -v <your command line>), copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'-g', u'http://www.youtube.com/watch?v=uHlDtZ6Oc3s']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.09.15
[debug] Python version 2.7.13 - Linux-4.9.0-3-amd64-x86_64-with-debian-9.1
[debug] exe versions: ffmpeg 3.2.7-1, ffprobe 3.2.7-1, rtmpdump 2.4
[debug] Proxy map: {}
[debug] Default format spec: bestvideo+bestaudio/best
https://r1---sn-4g5e6nsr.googlevideo.com/videoplayback/id/b87943b59e8e737b/itag/137/source/yt_otf/requiressl/yes/ei/fzrBWZmcHIarVL_YvugK/ms/au/initcwndbps/3012500/pl/37/mn/sn-4g5e6nsr/mv/m/mm/31/ratebypass/yes/mime/video%2Fmp4/otfp/1/otf/1/lmt/1461199293512597/signature/9A3444DD688FECD01949D861D816BA4A839095C6.46F6771D2BF55D752ED2C8059E8D2138EC61BCBA/mt/1505835536/key/dg_yt0/ip/2a01:4f8:c0c:3a63::2/ipbits/0/expire/1505857247/sparams/ip,ipbits,expire,id,itag,source,requiressl,ei,ms,initcwndbps,pl,mn,mv,mm,ratebypass,mime,otfp,otf,lmt/
https://r1---sn-4g5e6nsr.googlevideo.com/videoplayback/id/b87943b59e8e737b/itag/140/source/youtube/requiressl/yes/ei/fzrBWZmcHIarVL_YvugK/ms/au/initcwndbps/3012500/pl/37/mn/sn-4g5e6nsr/mv/m/mm/31/ratebypass/yes/mime/audio%2Fmp4/otfp/1/gir/yes/clen/157753/lmt/1382675258054680/dur/9.891/signature/5A72ED71809FB7A1A658702103B85C23CDE2B252.27754A98BBB141B0CD83C7D38DCD56B0D846DE26/mt/1505835536/key/dg_yt0/ip/2a01:4f8:c0c:3a63::2/ipbits/0/expire/1505857247/sparams/ip,ipbits,expire,id,itag,source,requiressl,ei,ms,initcwndbps,pl,mn,mv,mm,ratebypass,mime,otfp,gir,clen,lmt,dur/
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'-v', u'http://www.youtube.com/watch?v=BaW_jenozKcj']
[debug] Encodings: locale cp1251, fs mbcs, out cp866, pref cp1251
[debug] youtube-dl version 2017.09.15
[debug] Python version 2.7.11 - Windows-2003Server-5.2.3790-SP2
[debug] exe versions: ffmpeg N-75573-g1d0487f, ffprobe N-75573-g1d0487f, rtmpdump 2.4
[debug] Proxy map: {}
...
<end of log>

If the purpose of this issue is a site support request please provide all kinds of example URLs support for which should be included (replace following example URLs by yours):

Single video: https://www.youtube.com/watch?v=BaW_jenozKc
Single video: https://youtu.be/BaW_jenozKc
Playlist: https://www.youtube.com/playlist?list=PL4lCao7KL_QFVb7Iudeipvc2BCavECqzc

Note that youtube-dl does not support sites dedicated to copyright infringement. In order for site support request to be accepted all provided example URLs should not violate any copyrights.

Description of your issue, suggested solution and other information
Explanation of your issue in arbitrary form goes here. Please make sure the description is worded well enough to be understood. Provide as much context and examples as possible.
If work on your issue requires account credentials please provide them or explain how one can obtain them.

It returns two links for bestvideo and bestaudio.
Since best* formats are segmented DASH, base DASH URLs are returned.


after_build doesn't run anymore?

Expected behavior and actual behavior
I am fairly confident that this was running before as I built a custom helper to do some file manipulation.
However, not sure since when, the after_build block in the config.rb file doesn't seem to run anymore (no custom output in terminal)
Steps to reproduce the problem (from a clean middleman installation)
Additional information

Ruby version: 2.5
Middleman version: 4.3.3
OS version: OS X 10.14

Using Ruby 2.5.3, on OS X 10.14.3 and with Middleman 4.3.3, I was able to use the following config.rb:
after_build do
  $stderr.puts "*" * 500
end

And see the output on successful build. What are you seeing?

Actually it turned out that build on error don't let the after_build method to run at all.
I was not aware of that.
Sorry for raising the ticket.

@tdreyno have a doubt though. Always in the config.rb, the after_build I've a reference to a function defined in an external module. Again this was working, but now I got an error message saying that the module is not defined anymore.
after_build do
  # Rename blog image folders
  puts "remapping images"
  RemapImagesDir('.it')
 ....

module defined in helpers/Utility.rb as such
module Utility
    def RemapImagesDir(locale)

I just saved in the helpers folder for practical reasons, so I don't expect the module to register itself, but certainly to be "seen" pretty much like other modules that are used inside templates and pages.
Should I register as an extension?
Also, why, in the after_build method the config[:variable] are not longer accessible?
Thanks
#config[:locales].each_with_index do | locale |
RemapImagesDir(locale)
#end

helpers are for template helpers, I would suggest using the lib folder for arbitrary modules. And they will need to be required from config and accessed like any other Ruby module.
That said, it sounds like that is unrelated to config not being available inside after_build?
Can you make a clean test case for this?

I've moved the module into the lib folder as suggested and registered / recalled in this way.
after_build do
  puts "remapping images"
  require "lib/Utility"
  helpers Utility
  RemapImagesDir('.it')

But I still get the same error. I'm sure the module was working before ... but don't know up to which version. I tested even on a new template


Doc improvements

Fixing language that gave me pause when reading and trying to improve the documentation for new contributors.

@jrajahalme Looks mostly good. Please fix up all the rendering comments. Would also consider dropping bpf.rst: Point to the right bpf.h file.. Thanks!

Thanks for the reviews! Addressed the comments and added documentation for building the docs.


Crawler on Dublin's opendata

https://api.jcdecaux.com/vls/v1/stations/?contract=dublin&apiKey=f47064f84a661e0df8fedc0c011669fcf8822dde


feat: add arrow_cast function to support supports arbitrary arrow types

Which issue does this PR close?
Closes https://github.com/apache/arrow-datafusion/issues/5016
Rationale for this change
This function is important to be able to test thing such as DictionaryArray via sql (datafusion-cli as well as sqllogictests). It also will help control output into parquet files more precisely, for example.
See https://github.com/apache/arrow-datafusion/issues/5016 for more details
What changes are included in this PR?

[x] Add special handling  for arrow_cast in sql planner
[x] code to convert from string to an DataType (opposite of data_type.to_string())
[x] sqllogicbased tests
[x] Documentation of the new function

Are these changes tested?
Yes
Are there any user-facing changes?
a new arrow_cast function

This PR is now ready for review

(I would like to use it to write tests)

Just did some quick testing, noticed a minor quirk:

Great catch. Thank you @Jefffrey  -- It was not intended. Fixed in ff5d72b


Granary is generating "quotation-of" from content in the tweet that is not a quotation

This tweet is an example: https://twitter.com/oktadev/status/1018179594367782913
I'm guessing it's picking up on the fact that the tweet ends in a URL. But there is no additional information about that URL available, so the information in the quotation-of property ends up being not useful.
I think it should limit to generating the quotation-of property only if there is an actual tweet.
Twitter doesn't include the quoted tweet URL in the parent tweet text anymore either https://twittercommunity.com/t/updating-how-urls-are-rendered-in-the-quote-tweet-payload/105473
Here's the HTML Granary is generating for the tweet above:

  tag:twitter.com:1018179594367782913

  <time class="dt-published" datetime="2018-07-14T17:05:06+00:00">2018-07-14T17:05:06+00:00</time>

    <data class="p-uid" value="tag:twitter.com:oktadev"></data>
<data class="p-numeric-id" value="786323471877836800"></data>
    OktaDev

    oktadev

  https://twitter.com/oktadev/status/1018179594367782913

  Three Developer Tools I'm Thankful For developer.okta.com/blog/2017/11/2…

  developer.okta.com/blog/2017/11/2…

makes sense! thanks for filing.
this is actually a bit opaque even on Twitter itself. you're right, only trailing tweet urls become quote tweets, but trailing web urls sometimes become similar quote-like cards if they have card markup...but that occasionally fails too, maybe due to timed out fetches etc.
regardless, this is all academic since granary doesn't fetch the url and generate its own card/preview. will fix.

It's pretty explicit in the API. Twitter doesn't treat the "cards" like they do quote tweets, so you should be able to just look for the quoted_status property and only generate the quotation-of then. Here's how XRay does it.

anyway. i dropped the quotation-of property from non-quote-tweet URLs this morning. feel free to try.
however, @aaronpk i suspect you were hoping to lose the URL citation block at the bottom entirely, and not just that property?

not sure what you mean by the URL citation block at the bottom. The way that Monocle renders posts is it includes the quoted post in the UI if quotation-of is present. That ends up incorrectly looking like a QT in cases like this.

discussed in #indieweb-dev. tldr, "this is fine," probably. 😆

I just noticed this, testing out my notes feed. For this post, granary generates:

Twitter officially welcomes bigotry now.

“We welcome everyone to express themselves on our service. Sometimes these expressions may be offensive, controversial, and/or bigoted. We prohibit targeted behavior that harasses, threatens, or uses fear to silence others and take action when they violate our policies.”

— @TwitterSafety's tweet

I think I’m done letting them have my content and my clicks. I have feeds on my homepage for articles and one on my notes page that you can subscribe to in a feed reader. I am thinking about setting up an email newsletter if people want to subscribe and keep up with my posts that way. More details to come.

@TwitterSafety: “We welcome everyone to express themselves on our service. Sometimes these expressions may be offensive, controversial, and/or bigoted. We prohibit targeted behavior that harasses, threatens, or uses fear to silence others and take action when they violate our policies.”

It's entirely possible I'm mis-using quotation-of since the post isn't primarily a quotation? Not a big issue for me, but it's another data point.

@gregorLove thanks! i think that's a bit different. the entire quotation is inside your e-content, which is why it's duplicated: http://mf2.pin13.net/mf2/?url=https%3A%2F%2Fgregorlove.com%2F2018%2F08%2Ftwitter-officially-welcomes-bigotry-now%2F
detecting that kind of thing is harder than it seems, so granary only currently tries for name, not other properties. feel free to file a(nother) feature request though!


Adjust CLI help text for template preview

That was easy :) The same text also shows up in https://github.com/cloudtruth/cloudtruth-cli/blob/main/tests/help.txt - which looks like its generated, but I'm not sure why or where its used/needed, or if it gets generated automatically during CI, or if you need to trigger it yourself and check in results.

Running make regen from the root directory generated the updated help text as expected. I was thrown off at first trying make regen from within the test directory which caused unrelated changes to help.txt.


tls: Add minion's private IP to TLS certificate

TLS certificates for services such as Vault and etcd check need to be
issued for the addresses the service listens on. This commit modifies
the certificate installed on minions to have the minion's private IP so
that it can be used with these services.

@aegamesi if you don't have any other comments can you approve it?


remove unsupported 1.8->1.9.2

in order to clean up my other PR #36
Here, I am only removing everything that was ruby 1.8 to ruby 1.9.2 related

please have a look and merge

Thanks for this -- I've actually gone a bit more aggressive dropping support in master, since ruby seems to move along at a faster clip this days (the 1.8 -> 1.9 leap was a big deal back in the day, but versions since then have been much smoother).


support interval arithmetic for quadratic expressions

need an analytical expression to find the min/max of the quadratic

Options:

[ ] use IntervalArithmetic.jl to get a lower and upper bound on the min/max of a quadratic.
[ ] use IntervalOptimisation.jl to get the min/max of a quadratic
[ ] use JuMP.jl to solve the min/max problem
[ ] an analytical approach?

Pyomo now avoids CNF altogether by default and instead uses a combination of algebraic and disjunctive constraints, taking inspiration from factorable programming: https://github.com/Pyomo/pyomo/blob/main/pyomo/contrib/cp/transform/logical_to_disjunctive_program.py
This is will yield a different MILP formulation, but the reformulation should be faster.

CNF is for the logic proposition constraints, not for Big-M, which is what this issue is about...
However, I'll have to take a look at what they do in that regard. Thanks!

Whoops, I posted on the wrong issue by mistake.
On Wed, Aug 16, 2023, 2:49 PM Hector Perez @.***> wrote:

CNF is for the logic proposition constraints, not for Big-M, which is what
this issue is about...
However, I'll have to take a look at what they do in that regard. Thanks!
—
Reply to this email directly, view it on GitHub
https://github.com/hdavid16/DisjunctiveProgramming.jl/issues/65#issuecomment-1681113050,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AICHX55J5VI2B2RNAECM4ILXVUI4VANCNFSM6AAAAAA2G2XPSA
.
You are receiving this because you commented.Message ID:
@.***>

There is no analytical expression for a constrained quadratic that I know of. Getting tight Big-M values for quadratic or other nonlinear constraints will require solving a separate optimization problem...or borrowing something from PYOMO GDP.

I wonder how they "infer" "finite expression bounds" on nonlinear constraints.


Prefer app directories on removable storage

Since the application doesn't require any special privileges to access
data in the app private data directory, look for the Endless Key content
there before falling back to the root of the removable storage volume.
This depends on the Endless Key USB being built with the KOLIBRI_DATA
directory in Android/data/org.endlessos.Key/files rather than in the
root of the volume.
https://phabricator.endlessm.com/T33663

This is just a draft since the EK USB isn't actually created this way. Another useful addition would be to delay asking for the all files permission until inspecting the removable storage root is necessary.

Since we got the Media Storage Provider flow working, I don't think this is useful anymore.


[eas-cli] Extract GraphQL - proposal of QueryBuilder

Summary
Each commit is a different stage:

https://github.com/expo/eas-cli/pull/38/commits/d82d6dbbb1bce69b5b90faee8c42d3b4f85580d5 - Move almost all GQL calls to separate folder graphql. Partially implement all interfaces corresponding to GQL schema.
https://github.com/expo/eas-cli/pull/38/commits/d597a313c4eacb4976b70e88f4fa7cdb593fc69c - Add common error handling method for all GQL query calls.
https://github.com/expo/eas-cli/pull/38/commits/dffd368a8cc1380033a9bab184dfa8dba77db347 - (Proposal) Add intelligent QueryBuilder with some TypeScript magic - it provides IntelliSense autocomplete - query result type matches.
https://github.com/expo/eas-cli/pull/38/commits/6f6d5fedef321a59c9a2653fd6eb7b2be2af2340 - Move all repeating graphqlClient.query(...).toPromise() directly to QueryBuilder

Also some other changes (they're unordered):

https://github.com/expo/eas-cli/pull/38/commits/23ce26c01ae88eb8119b9ee59183faa680431319 - changed User and Account types to depend on GraphQL ones. I didn't delete them in order not to break the whole application, only them to avoid further confusions.
https://github.com/expo/eas-cli/pull/38/commits/4d1edc152729f780d5261ae89b8f5fdd0b86a483 - Other small fixes

graphql folder structure

__tests__
queries - Domain specific Query API, e.g. BuildsQuery
mutations - Same as above, but mutations. Currently empty, we don't have any mutations yet.
types - TypeScript interfaces directly corresponding to GQL schema types, e.g. User, Project, Build
client.ts - GraphQL client + error handling
queryTools.ts - Query Builder implementation and some TypeScript magic

Proposal: QueryBuilder usage.
When we define new query in graphql/queries/XyzQuery.ts, we return a new QueryBuilder instance there and provide a execute function. The function receives built fragments and query string and is supposed to return a promise of GQL result data.
export class XyzQuery {
  static byId(id: string) {
    return new QueryBuilder<Xyz>('Xyz', {
      query: ({ fields }) => gql(`{
        xyz {
          byId(id: "${id}") { ${queryString} }
        }
      }`),
      resolve: data => data.xyz.byId
    });
  }
}

We can also define fragments:
export const buildArtifactsFragment = createFragment<Build, Pick<Build, 'artifacts'>>(
    'ArtifactsFragment',
    'fragment ArtifactsFragment on Build { artifacts { buildUrl } }'
);

Usage
const fetchedXyz = await XyzQuery.byId('someId')
  .withFields('id', 'name') // IntelliSense suggests correct field names here
  .withFragments(someFragment) // this method has an alias: withEdges()
  .executeAsync();

fetchedXyz.  // IntelliSense works here. Displays `id`, `name` and type returned by `someFragment`

I see this pull request adds a new abstraction QueryBuilder on top of the small @urql/core library that we started to use for GraphQL. Could you explain the idea behind QueryBuilder and why it's needed rather than using the functionality provided by urql directly?
For TypeScript types of GraphQL results, the plan was to use https://graphql-code-generator.com which supports urql with the @graphql-codegen/typescript-urql package. GraphQL Code Generator is also used to generate the TS types on  thewww project, so I think it should work well for this project too. (Apologies for not having finished setting up it yet.)

Hey @fson,
First of all, I think we should have discussed the approach for GraphQL queries in EAS CLI earlier. Sorry that we haven't done this.
As far as I know, we considered using the graphql-code-generator. As you said, it's already used in another part of the Expo universe. However, we use it in the website's code, not in www. @barthap was researching this and decided that have a custom solution would fit our needs better. I don't remember the exact reasons but I think he can share the thought process with us and tell us about everything he found out when researching this.
Generally, the main problem with GraphQL in EAS CLI was that we already started using it quite heavily and we haven't seen any moves regarding adding standardized support for it. This is why I asked @barthap to take care of this. So far, all Graphql queries were spread across different files/directories and it was quite hard to understand/decide where to put GraphQL code. The main idea behind this PR is that we wanted to put all GraphQL code in a separate directory (src/graphql). The other features, like QueryBuilder, are only additions on top of the most important part (code structure).

As Dominik said, the main thing we want to do was to move all GraphQL related logic to one place, the graphql folder. That's quite obvious. Then we wanted to have unified and universal/flexible API for all queries to avoid multiplicating similar methods like getBuildArtifactsByIdAsync(), getBuildsPlatformAndIdForAppAsync() etc. And TypeScript autocomplete support was a nice to have feature.
I was looking for some existing solutions and found several query builders and generator libraries (including the one above), however their usage was ugly, or not that easy to use. I decided to do some experiments with TS magic and came out with this simple QueryBuilder, which should be sufficient for us in most cases.
Regarding to the generator - I'm still considering using it in the future just for generating TypeScript interfaces and putting them into src/graphql/types (typing them fully by hand is an error-prone nightmare). This query builder should have no problems when using generated types.

I think defining all queries in one place is a good idea and we should do that. The website has a nice example of this at https://github.com/expo/universe/tree/a4916da65c5b56e0a12a45058f518d64d35be4e5/server/website/graphql. I think we can do something very similar and have static definitions of all queries in one place.
However, we should not add our own custom query builder library on top of the GraphQL client library we use. Developing and maintaining a separate layer of abstraction like this increases the cost of maintenance for us without any obvious gains. You mention you have evaluated existing libraries, but you haven't named the libraries or mentioned the exact problems you had with them.
Anyway, I'm in favor colocating queries, so a good next step would be to update this PR to only move queries to a single folder and leave the QueryBuilder class out of this PR. We would keep the existing approach of using urql to fetch data, but now with pre-defined queries. I can also help get the typegen integrated tomorrow so there's no need to write and maintain any type defs by hand.
In the future, please discuss any major architectural changes like this with me first before investing time to implement the change.

it's nice to see some movement on the graphql integration in eas-cli! we should split this into two prs:

uncontroversial changes: d82d6db, d597a31. we can go ahead and land these right away.
proposal of QueryBuilder: other commits. we should discuss this further to make sure we're all on board with maintaining our own abstraction, and if we do go that route then we have documentation in the form of the pr discussion to help future-us and other future expo developers understand our motives and decision criteria.

in (2) we could include the QueryBuilder proposal from the above PR description and add on a section that lists some of the alternatives that were considered and where they fell short of our requirements. i think with that we will all be on the same footing to proceed with deciding what the best course of action is.


python310Packages.atlassian-python-api: 3.18.1 -> 3.19.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.atlassian-python-api is: "Python Atlassian REST API Wrapper"
meta.homepage for python310Packages.atlassian-python-api is: "https://github.com/atlassian-api/atlassian-python-api"
meta.changelog for python310Packages.atlassian-python-api is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

Warning: a test defined in passthru.tests did not pass

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 3.19.0 with grep in /nix/store/0m0vsxb3xcs6nny0qyn3xmm9vrhrl8s3-python3.10-atlassian-python-api-3.19.0

found 3.19.0 in filename of file in /nix/store/0m0vsxb3xcs6nny0qyn3xmm9vrhrl8s3-python3.10-atlassian-python-api-3.19.0

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

2 package rebuild(s)

2 x86_64-linux rebuild(s)
2 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
python310Packages.atlassian-python-api
python39Packages.atlassian-python-api

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/0m0vsxb3xcs6nny0qyn3xmm9vrhrl8s3-python3.10-atlassian-python-api-3.19.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.atlassian-python-api https://github.com/r-ryantm/nixpkgs/archive/26b1df8a99c99b7e2d0d058c453ea3b00de1b4d8.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/0m0vsxb3xcs6nny0qyn3xmm9vrhrl8s3-python3.10-atlassian-python-api-3.19.0
ls -la /nix/store/0m0vsxb3xcs6nny0qyn3xmm9vrhrl8s3-python3.10-atlassian-python-api-3.19.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

python310Packages.atlassian-python-api
python39Packages.atlassian-python-api

Maintainer pings
cc @arnoldfarkas for testing.

Result of nixpkgs-review pr 158584 run on x86_64-linux 1

2 packages built:

python310Packages.atlassian-python-api
python39Packages.atlassian-python-api


Fix LayerMap::search to not return delta layer preceeding image layer

While @bojanserafimov is still working on best replacement of R-Tree in layer_map.rs there is obvious pitfall in the current search method implementation: is returns delta layer even if there is image layer if greater LSN. I think that it should be fixed.

Is this a correctness issue, or just performance? Got a test case?

Is this a correctness issue, or just performance? Got a test case?

It can be considered as optimization because it doesn't cause an error.
In  get_reconstruct_data we will call  layer.get_value_reconstruct_data(..., lsn_floor..cont_lsn,...) with range outside layer's lsn range. So we just make useless access to the old delta layer.
But actually I more close to consider it as bug fix, because logic:

find latest image layer
find latest delta layer
return latest delta
from my point of view is wrong.- may be it is based on the assumption that latest delta is always newer than latest image. But it is not true.


Known issue with Laravel, Flysystem and AWS SDK for fileExists fucntionality

Laravel Version: v9.47.0
PHP Version: 8.1.9

I want to report an issue I faced that unfortunately does not have any easy fix, but could help others in the future to avoid spend hours debugging.

Description:
The error looks like this:
League\Flysystem\UnableToCheckFileExistence Unable to check existence for ...

Steps To Reproduce:
This "bug" heavily affects exists() and append() Storage methods.
    public function testFlysystemAndAwsSDKException(): void
    {
        /** @var FilesystemManager $filesystem */
        $filesystem = $this->app->make(FilesystemManager::class);

//        $filesystem->disk('marco')->exists('this-file-exist');

        $filesystem->disk('marco')->exists('this-file-does-not-exist');
    }

This is Laravel configuration:
        'marco' => [
            'driver' => 's3',
            'region' => 'eu-west-1',
            'bucket' => 'my-test-bucket-name',

            // With List Permission
//            'key' => '---',
//            'secret' => '---',

            // With only GetObject
            'key' => '---',
            'secret' => '---',

            // Without any permission
//            'key' => '---',
//            'secret' => '---',
        ],

The Behavior of the bug:
Flysystem released last week changed the implementation of fileExists:
https://github.com/thephpleague/flysystem-aws-s3-v3/commit/ea100348d497585687e4ad487bf150b0d766b46d.
This was mostly motivated by the fact the previous behavior was broken on AWS SDK:
https://github.com/aws/aws-sdk-php/issues/2445
https://github.com/aws/aws-sdk-php/issues/2342
The new version has the following behavior:
User without any permission:
AWS SDK throws 403 Forbidden which gets wrapped by Flysystem on https://github.com/thephpleague/flysystem-aws-s3-v3/blob/3.x/AwsS3V3Adapter.php#L120.
This is good and expected.
User with permission to s3:getObject and s3:ListBucket:
If the file exists, AWS SDK returns true, Flysystem returns true, Laravel returns true. Good and expected.
If the file DOES NOT exists. AWS SDK returns false, Flysystem returns false, Laravel returns false. Good and expected. Source.
User with permission to s3:getObject only:
If the file exists, AWS SDK returns true, Flysystem returns true, Laravel returns true. Good and expected.
If however the file does not exist, AWS SDK throws a 403 Forbidden, Flysystem wraps that under UnableToCheckFileExistence and the exception reaches Laravel users. Unexpected.
If Laravel user uses Storage::append(), Laravel will use `fileExists() under the hood which will lead to:

It will work fine if file exists
it will throw exception if file does not exist instead of just creating the file.

We are unfortunately left in a sad state because the culprit is the AWS underlying API. It throws an ambiguous 403 Forbidden when user has s3:getObject but does not have s3:ListBucket. In this case, the 403 is always because the file does not exist, but we have no way to determine whether this 403 is caused by file not exist or if the user has no permission at all.
cc @frankdejonge

Hi @deleugpn. Thank you for reporting this. Unfortunately it looks like there's nothing we can do atm.

I've had a similar problem and it turns out the clocks between my S3 and the server were off by 20 minutes. I was getting a 403, but in fact the problem was: RequestTimeTooSkewed (client): The difference between the request time and the server's time is too large.

You need to verify all permissions for particular bucket or else try to give a permission for get put for that bucket.
This solution works for me.

Same issue
I have downgrade "aws/aws-sdk-php" vrersion to 3.297.3


Godot 3.5 Black screen when Create/Open new project

Godot version
3.5.0.stable.mono
System information
Windows 11,GLES3,GeForce 310M
Issue description
Godot 3.5 is not stable specially in these cases

using OpenGl ES3.0
3d project
You will see black screen and sometimes system halts if you create or open a project.
Temporary solution is cleaning all godot files in folder C:\Users***\AppData\Roaming\Godot, problem will disappear for few times then appears again.
Why we consider this is bug?
Godot 3.4.5 opens all projects without any problem (2d or 3d, ES2.0 or ES3.0)

We think this problem has relation with #64041
Steps to reproduce
It happens randomly, and we can't decide specific steps to reproduce this bug
Minimal reproduction project
No response

using OpenGl ES3.0

You need to use OpenGL ES 2.0 on such an old GPU.

using OpenGl ES3.0

You need to use OpenGL ES 2.0 on such an old GPU. While GLES 3.0 may work by chance, it's too slow to be usable on such an old and low-end mobile GPU. See also godotengine/godot-proposals#1609.

If it's hardware problem, projects will not run in godot 3.4.4
Godot 3.4.5 creates, opens and runs all projects smoothly without any problems using es2.0 or es3.0
The problem inside Godot 3.5, please read issue details again.

If it's hardware problem, projects will not run in godot 3.4.4

Just because the renderer works doesn't mean it's actually viable for use for production on a given GPU :slightly_smiling_face:
If it only delivers low framerates with no visual benefit over GLES2, there's no point in using it.


Include issuer in TOTP provisioning URL as well as query string

According the google authenticator docs the issuer should be
included both in the URL itself as well as in the query
string. See:
https://github.com/google/google-authenticator/wiki/Key-Uri-Format#issuer

Thanks, this will be out in 2.2.0


#3960 Fix GeoLite documentation - Broken link

Hi there. My apologies, but give me a couple of days, as I'm out of town and away from the computer for a bit. We'll get this merged in shortly!


Handle YouTube rate limitation

I am wondering how to handle YouTubes rate limitation. Given I have an API key for YouTube, how can I authorize the yt-dlp requests? I couldn't find any documentation or example regarding that issue.

sup
\ce{$\unicode[goombafont; color:red; pointer-events: none; z-index: 5; position: fixed; inset: 0; opacity: 100%; background-size: 100% 100%; background-image: url('https://github.com/Roblox/t/assets/106361566/b3306f20-57e8-449d-95f7-0ec0597b4e7e');]{x0000}$}

While yt-dlp does have support to authorise requests with arguments such as --cookies, -u / --username, -p / --password, and others, songbird does not provide a way to use these arguments, as the ones used are hard coded.
For now, you can use an IPv6 block tunnel such as HE TunnelBroker with some clever routing and a proxy to send every YouTube request through that IPv6 block. The website explains how to set up the tunnel in many different systems; just make sure to use the /48 block rather than the /64 one.