Change default webhook of cert-manager webhook

This fixes issue #44 .
This avoids the need of adding extra firewall rules on GKE. In GKE private clusters, by default kubernetes apiservers are allowed to talk to the cluster nodes only on 443 and 10250.
Same issue solved in cert-manager repo with this PR.

Hi @nandajavarma,
I think it's the same issue of the OPA module: https://github.com/sighupio/fury-kubernetes-opa/issues/28
but we're solving it in a different way (changing the port over adding a FW rule).
I think we need to apply the same solution here as well. What do you think?

I have mixed feelings.
On one hand, the main motivation for adding the FW rule instead of changing the port in the OPA issue was to be aligned with upstream. In this case, being aligned with upstream would be changing the default port.
On the other hand, adding a FW rule shouldn't be a problem, and, as I said in the other issue, IMHO is the right thing to do™, changing the port feels like "a hack".
If it's a non-breaking change I can live with changing the port. If not, I would prefer to go with the FW rule.

Thanks @nikever and @ralgozino ! Like @ralgozino mentioned, the goal was to stay aligned with the upstream in this case. If FW rule solution feels cleaner, I will commit a fix that way.

Thanks @nikever and @ralgozino ! Like @ralgozino mentioned, the goal was to stay aligned with the upstream in this case. If FW rule solution feels cleaner, I will commit a fix that way.

Ye. I think doing the same as we did with gatekeeper should be enough and cleaner IMHO.


[BUG] AutoGluon basic installation failing on Google Collab

[ X] and/or I have checked that this bug exists on the latest mainline of AutoGluon via source installation

Steps to reproduce:
Start collab notebook with GPU, then:
!pip3 install -U pip
!pip3 install -U setuptools wheel
!pip3 install autogluon
after installation, try to import TextPredictor:
from autogluon.text import TextPredictor
the result is an ImportError:
`ImportError                               Traceback (most recent call last)
 in ()
----> 1 from autogluon.text import TextPredictor
15 frames
/usr/local/lib/python3.7/dist-packages/torchtext/data/datasets_utils.py in ()
10 )
11 from torch.utils.data import functional_datapipe, IterDataPipe
---> 12 from torch.utils.data.datapipes.utils.common import StreamWrapper
13 import codecs
14 try:
ImportError: cannot import name 'StreamWrapper' from 'torch.utils.data.datapipes.utils.common' (/usr/local/lib/python3.7/dist-packages/torch/utils/data/datapipes/utils/common.py)
---------------------------------------------------------------------------`

I can confirm the error. Actually, it seems to be related to some recently upgraded packages. Investigating the root cause.

@greenersharp It's certainly due to some version issues. I used the following version combination and can successfully install the package:
!pip3 install -U pip
!pip3 install -U setuptools wheel
!pip3 install autogluon.core --pre --upgrade
!pip3 install autogluon.text --pre --upgrade
!pip3 install torchtext==0.11.2 --upgrade
!pip3 install pytorch-lightning>=1.6.0 --upgrade

@greenersharp It's certainly due to some version issues. I used the following version combination and can successfully install the package and import TextPredictor
!pip3 install -U pip
!pip3 install -U setuptools wheel
!pip3 install autogluon.core --pre --upgrade
!pip3 install autogluon.text --pre --upgrade
!pip3 install torchtext==0.11.2 --upgrade
!pip3 install pytorch-lightning>=1.6.0 --upgrade

I tried this today and got the following error when trying to import TextPredictor:
/usr/local/lib/python3.7/dist-packages/torchvision/io/image.py:13: UserWarning: Failed to load image Python extension: libtorch_cuda_cu.so: cannot open shared object file: No such file or directory
warn(f"Failed to load image Python extension: {e}")
SystemError                               Traceback (most recent call last)
 in ()
----> 1 from autogluon.text import TextPredictor
26 frames
/usr/local/lib/python3.7/dist-packages/tensorflow/core/framework/resource_handle_pb2.py in ()
148   ,
149   'DESCRIPTOR' : _RESOURCEHANDLEPROTO,
--> 150   'module' : 'tensorflow.core.framework.resource_handle_pb2'
151   # @@protoc_insertion_point(class_scope:tensorflow.ResourceHandleProto)
152   })

The workaround seems to work for me but not if I want to use 0.4.0 which is what I'd prefer to use.

strange, not working for me.  like in my screenshot, I run the two cells and hit the error.

OK, I was able to reproduce your error. Try "disconnect and delete runtime", then. the workaround, then a restart. You error should go away, at least it did for me.

I'm investigating the root-cause. It is currently not clear to me. May be related some intrinsic upgrade in colab.

@rxjx @greenersharp I investigated again and feel that the root cause is pip3 install -U pip.
I tried the following and it will work without any issues. I guess we should not upgrade pip and just rely on the pip in Colab for doing installation:
!pip3 install autogluon.core
!pip3 install autogluon.features
!pip3 install autogluon.text

If that's the case, this is not actually a bug but it's due to inappropriate usage of Colab.

I can confirm its now working when omitting pip3 install -U pip from the installation steps.
Thank you

Reopening as I think this requires a deeper dive to understand why this error is occurring.

@Innixma I think it is because pip3 install -U pip may change the pip in Colab. I think this is the root-cause. We should not touch the pip in Colab.

@Innixma I think it is because pip3 install -U pip may change the pip in Colab. I think this is the root-cause. We should not touch the pip in Colab.

I understand this, but that doesn't explain why this suddenly started happening, if it is happening outside of Colab, or if we need to update our install instructions which currently includes the pip upgrade.

I actually tried adding -U and it also works in Colab. I guess it's not happening outside of Colab but we may take a look.
!pip3 install -U autogluon.core
!pip3 install -U autogluon.features
!pip3 install -U autogluon.text

from autogluon.text import TextPredictor

It's likely due to some internal upgrade of Google Colab.

Did some dig into this issue:
The fundamental issue is that a fresh colab gpu env has torch==1.11 and torchtext==0.12.0. The installation of autogluon only updates torch to 1.10.2 while torchtext remains to be 0.12.0 because torchtext is not part of our dependency. However, the fact that torchtext exists made pytorch_lightning, which is our dependency, to do a version check: https://github.com/PyTorchLightning/pytorch-lightning/blob/master/pytorch_lightning/utilities/imports.py#L120-L121. So  _compare_version  actually imports torchtext and torchtext==0.12.0 is not compatible with torch==1.10.2 because the import from torch.utils.data.datapipes.utils.common import StreamWrapper is not available.

I still think the root-cause is pip3 install -U pip. I guess it is causing some problems in version detection. @yinweisu Are you able to reproduce the error locally?

Local env doesn't have this issue because there's no torchtext pre-installed. Torchtext is the one that's causing problem.
It fails even when I do not do pip3 install -U pip: https://colab.research.google.com/drive/1kNwaW3OOsrxSN02WxzqI5LOa4QHLbROH?usp=sharing
And you can see this after pip3 install autogluon:
torchtext 0.12.0 requires torch==1.11.0, but you have torch 1.10.2 which is incompatible.
The explanation in my previous comment should be correct.

Yeah, it makes sense. I just see that torchtext is a dependency of pytorch lightning https://github.com/PyTorchLightning/pytorch-lightning/blob/bb51e2a55baa851da402bf0e6786b32e141147f8/requirements/extra.txt#L4 and I guess it will be installed when we install pytorch lightning.
Also, why won't the following two commands trigger error?
!pip3 install autogluon.core
!pip3 install autogluon.features
!pip3 install autogluon.text

Install with -U.
!pip3 install -U autogluon.core
!pip3 install -U autogluon.features
!pip3 install -U autogluon.text

Yes. I had a look at their dependency too. Torchtext won't be installed because we specified pytorch_lightning as our dependency instead of pytorch_lightning[extra]
However, even we put [extra](we should not do this if we don't need the extra dependency) this problem won't be solved because PL didn't upper cap torchtext version. The problem here is that nothing is forcing torchtext to match torch version.
As of why installation of individual module(core, features, text) works is that the torch dependency is actually specified by tabular: https://github.com/awslabs/autogluon/blob/master/tabular/setup.py#L42
Hence, the code you provided didn't update torch and torchtext is working correctly with the default torch version :).
If you install tabular along with tabular[all], it will not work

In that case, a simple fix is to add a version cap in text about torchtext. I feel that we can do it in 0.4.1.

@sxjscience Except we don't use torchtext in AutoGluon, therefore we shouldn't install it. Thus we can't control its version cap, and therefore we can't fix on our end. The only way to fix would be to needlessly depend on torchtext despite never using it in AutoGluon, simply to cap its version range, which would be obnoxious. If you'd like to discuss further I'm happy to chat directly offline as to what is happening.

That also makes sense. Another solution is actually not to version cap torch but provide instructions in telling user which version to use.

Did some dig into this issue:
The fundamental issue is that a fresh colab gpu env has torch==1.11 and torchtext==0.12.0. The installation of autogluon only updates torch to 1.10.2 while torchtext remains to be 0.12.0 because torchtext is not part of our dependency. However, the fact that torchtext exists made pytorch_lightning, which is our dependency, to do a version check: https://github.com/PyTorchLightning/pytorch-lightning/blob/master/pytorch_lightning/utilities/imports.py#L120-L121. So _compare_version actually imports torchtext and torchtext==0.12.0 is not compatible with torch==1.10.2 because the import from torch.utils.data.datapipes.utils.common import StreamWrapper is not available.

imo torch is introducing dephell and this is not an issue with autogluon:

if torchtext only works with specific versions of torch, torchtext should have that compatibility matrix transferred to their install_requires.
if importing autogluon.text.TextPredictor causes an import of torchtext (ref PR description), torch should have (a proper version of) torchtext in their install_requires.

neither is the case:
$ pipgrip --tree 'torch<1.11' torchtext
torch<1.11 (1.10.2)
└── typing-extensions (4.2.0)
torchtext (0.12.0)
├── numpy (1.22.4)
├── requests (2.27.1)
│   ├── certifi>=2017.4.17 (2<IP_ADDRESS>)
│   ├── charset-normalizer~=2.0.0 (2.0.12)
│   ├── idna<4,>=2.5 (3.3)
│   └── urllib3<1.27,>=1.21.1 (1.26.9)
├── torch (1.10.2)  # here should be `torch~=1.11.0` or similar forcing pip to choose an older torchtext version
│   └── typing-extensions (4.2.0)
└── tqdm (4.64.0)

a user should expect pip install 'torch<1.11' torchtext to result in a working set (as pip has a resolver). So running a simple pip install autogluon.text in this fresh colab env should result in pip throwing a warning torchtext requires torch version ... but you'll have torch ... installed, which it doesn't because torchtext doesn't pin torch.

Mark as resolved as text module is being deprecated and just tested AG multimodal 0.6.2 on colab. This issue doesn't exist anymore


future<>::then() doesn't destroy l-value refs.

Before this PR, if an l-value reference was passed to
future<>::then(), it was moved from. This was wrong - they should have
been copied from.

This change is

No tests?  FYI, I just merged the fixes for the openSuSE build, you will need to rebase.


Add persistent configuration for non-pip APIs

Summary
This PR introduces top-level configuration for uv, such that you can do:
[tool.uv]
index-url = "https://test.pypi.org/simple"

And uv pip compile, uv run, uv tool run, etc., will all respect that configuration.
The settings that were escalated to the top-level remain on tool.uv.pip too, but they're only respected in uv pip commands. If they're specified in both places, then the pip settings win out.
While making this change, I also wired up some of the global options, like connectivity and native_tls, through to all the relevant places.
Closes #4250.

@zanieb - Are you cool with this modulo (1) renaming, and (2) removing the From<SyncerArgs> for InstallerOptions impls?

@zanieb - Are you cool with this modulo (1) renaming, and (2) removing the From<SyncerArgs> for InstallerOptions impls?

I think so! It seems pretty reasonable.

Okay, I believe I addressed the biggest feedback. I'm saddened by how much boilerplate will be required to add a new setting in the future. Perhaps we can DRY a lot of this up with macros in the future, but it's not my strength.


Make sure we never log URL credentials

This adds an explicit credential anonymization step to logging of webhook URLs in case any of them contain usernames or passwords.
Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations

Docs

[ ] Link to documentation:

Pull Request Checklist

[ ] Privileged queries and mutations are either absent or guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migrations are either absent or optimized for zero downtime
[ ] The changes are covered by test cases
[ ] All new fields/inputs/mutations have proper labels added (ADDED_IN_X, PREVIEW_FEATURE, etc.)
[ ] All migrations have proper dependencies
[ ] All indexes are added concurrently in migrations
[ ] All RunSql and RunPython migrations have revert option defined

Here's an example of a user sharing logs that contain AWS credentials: https://github.com/saleor/saleor/issues/10165

@patrys If you have the capacity, can you update the PR with the latest main? If not let me know, and the guild will try to handle it.


HTTP/2 testing tools and other links

https://blog.cloudflare.com/tools-for-debugging-testing-and-using-http-2/

:+1:


A question：about building line maps on  own datasets

Wow, great job！！！
How do I operate to build a line map on my dataset?
I want to use SOLD as a line extraction and matching .
I look forward to your next update！
Wish you a happy life！

Hey thanks for the interest! Now the system requires initial poses from SfM systems, e.g. COLMAP. The corresponding interfaces are wrapped in Python in the runners folder, e.g. https://github.com/cvg/limap/blob/main/runners/colmap_triangulation.py.
So to build a line map on your own dataset, one option is to first run colmap SfM and then run LIMAP with the COLMAP compatible runner.
Detailed README will be available soon. Thanks!


Installing without Administrator privileges (i.e. portable version)

Is there any way to install this program as a regular user or, even better, to make it portable?
I'm assuming that if this is not a very complex program that needs to write lots of files in restricted areas, making a portable version is definitely possible; I think the install just needs admin privileges to write the files into Program Files.
Thanks!

@peterflynn thank you for your suggestions;it helped me make a simple portable brackets on windows.Hope brackets will release the official portable edition in the near future just as sublime text3 did.


CocoaLumberjack ignores globally defined log level (2.0.0)

Note: I'm using CocoaLumberjack 2.0.0
CocoaLumberjack seems to be ignoring the globally defined log level I've set. I've tried the following:

Setting DDLogLevel ddLogLevel = SomeLogLevel after #import <CococaLumberjack/CocoaLumberjack.h> in a .pch prefix file
Defining DDLogLevel ddLogLevel; in a .h file after #import <CocoaLumberjack/CocoaLumberjack.h>, and giving it a value in the corresponding .m, as mentioned here. The aforementioned header is imported wherever logging is used.
In your README, you mention defining LOG_LEVEL_DEF before importing CocoaLumberjack, so I tried that with the following

#import <CocoaLumberjack/DDLog.h> // This is to get the DDLogLevel values
DDLogLevel ddLogLevel = DDLogLevelWarning;
#define LOG_LEVEL_DEF ddLogLevel

#import <CocoaLumberjack/CocoaLumberjack.h>

In each case, my definition is either ignored and the global log level falls back onto DDLogLevelVerbose, or the build fails with linking error (that's what happened with the weird pre-import LOG_LEVEL_DEF code).
The only solution I've found to setting a global log level is the following:
#import <CocoaLumberjack/CocoaLumberjack.h>

#undef LOG_LEVEL_DEF
#define LOG_LEVEL_DEF DDLogLevelWarning

After that, the log level I want is actually obeyed. As far as I can tell, DDLogMacros.h:30 is being evaluated before my ddLogLevel variable is defined, and any time I try and set it in the future it's not being considered by any logging functions.
What is going on here? What am I doing wrong in trying to set the global log level? I'm trying to find help through your documentation but nothing is really helping me.

This is a duplicate of #478. Please next time use existing issues before opening new ones, that helps everyone.
 Also you shouldn't import that file manually unless you need 1.9.x legacy mode.
#define LOG_LEVEL_DEF ddLogLevel
#import <CocoaLumberjack/CocoaLumberjack.h>

DDLogLevel ddLogLevel = DDLogLevelWarning;

Should work.

Sorry about not using the existing issue; I had seen it when trying to find a solution but didn't understand it.
I tried the solution you posted above, but I get the same linking error that I had when I tried a similar thing  but imported DDLog.h first. I looked through my workspace and it doesn't look like I have any explicit imports of DDLog.h anywhere in the workspace, except for in the CocoaLumberjack pod project.

No problem.
What is your liker error? Maybe we have a similar issue for that too ;)

I get a lot of errors like this
duplicate symbol _ddLogLevel in:
    /Users/JeremyYL/Library/Developer/Xcode/DerivedData/Celly-fsmbqjjckrmddldfpfkbaihjbtdd/Build/Intermediates/Celly.build/Debug-iphonesimulator/Celly.build/Objects-normal/x86_64/CLMemberInfoViewController.o
    /Users/JeremyYL/Library/Developer/Xcode/DerivedData/Celly-fsmbqjjckrmddldfpfkbaihjbtdd/Build/Intermediates/Celly.build/Debug-iphonesimulator/Celly.build/Objects-normal/x86_64/CLAppDelegate.o

There's no mention of ddLogLevel in any of these files. I'm not familiar with the linking process so I don't really know what this stuff means.

Check where you define ddLogLevel. Sounds like there are two conflicting definitions.

I've checked where ddLogLevel is being defined, and in my project it's only in one file, set up as the following:
#if DEBUG
    #define LOG_LEVEL_DEF DDLogLevelDebug
#else
    #define LOG_LEVEL_DEF DDLogLevelDebug
#endif

The only other places where ddLogLevel is mentioned in my workspace are in the CocoaLumberjack pod, and in MagicalRecord. In MagicalRecord it's referred to in the following:
// In MagicalRecord.h:23
#if MR_ENABLE_ACTIVE_RECORD_LOGGING != 0
      // First, check if we can use Cocoalumberjack for logging
    #ifdef LOG_VERBOSE
        extern int ddLogLevel;
        #define MRLog(...)  DDLogVerbose(__VA_ARGS__)
    #else
        #define MRLog(...) NSLog(@"%s(%p) %@", __PRETTY_FUNCTION__, self, [NSString stringWithFormat:__VA_ARGS__])
    #endif
#else
    #define MRLog(...) ((void)0)
#endif

@rivera-ernesto Unfortunately, if you import Modules (or use Swift), you will have to define LOG_LEVEL_DEF on the command line. See my comments on #478.

I see. Then probably we need to add that to the README.


Datastore - Route/Path Validation

Follow up from #523
None of the models.Datastore implementations validate the path arguments passed in (top-level or Route.Path) beyond being non-empty. However, they rely on assumptions like a leading slash, no relative paths, trailing slash allowed, etc. The datastoreutil.validator should reject paths breaking these rules.
There is some validation happening outside of the Datastores (routes_get, routes_create, routes_update), but it's a bit inconsistent, and the path portions at least can be centralized/aligned.
Caveat: Depending on what is considered a legal path, the regexps may need a bit of attention to escape any unusual characters.
Semi-related: Route.Validate should probably validate that MaxConcurrency is not negative.

@jmank88 route validation might be covered by URL parsing from net/url package as most valid way to confirm that route is being considered by valid URL part.


Request method shapes

Right now, we have four main Request methods:

GenerateFileDescriptors
AllFiles
GenerateFileDescriptorProtos
AllFileDescriptorProtos

Additionally, all take an option WithSourceRetentionOptions.
Some non-optimal things about this:

Generate.* sounds like we are generating something. This may be better named .*ToGenerate, to match the CodeGeneratorRequest field name.
Not in love with returning *protoregistry.Files.
Perhaps we want to split out the source-retention option functionality into four separate methods, instead of taking an option. The option requires us to return an error in places where no error would be needed if the option was not available (we have to check if source_file_descriptors is non-empty, since this wasn't present in previous compiler versions). Additionally, 99% of people won't want to use this option, and having five different option interfaces pollutes the namespace (we want per-function options if we want to maintain optimal conditions for forwards compatibility).

Another point: the only reason CodeGeneratorRequest returns an error is because we wanted to avoid using a panic if proto.Clone did something that is almost-equivalent to a seg fault. We should likely just panic here if proto.Clone returns a different type.

Addressed this with the following:

Renamed Generate.* to .*ToGenerate in https://github.com/bufbuild/protoplugin/commit/d9e34368afc87561cc43b61a7b2bc39cc478098c.
Removed all of the request method options, and added a WithSourceRetentionOptions method to the Request in https://github.com/bufbuild/protoplugin/commit/0ea7786162c6a8edde6038dc1b7e3c0614bc2dee. This results in source_file_descriptors validation being done in this method, meaning the .*FileDescriptorProtos` methods no longer need to return an error.
Removed the clone entirely from CodeGeneratorRequest and just documented that you should clone it yourself. 99.99% of users won't modify this, and this isn't critical. Otherwise, I would have just panicked as described above, but the clone seems overkill - we can add it later if we want.


🎉 1.0.1

ℹ About this release

Version: 1.0.1
Type: patch
Last Release: 1.0.0 (2/15/2022, 7:53:43 PM) [?]
Commits to merge: 50 [?]

📦 Dependencies

Update node-ical from ^0.14.1 to ^0.15.1
Update vestaboard-api from ^1.0.9 to ^1.0.11

📦 Development Dependencies

Update @amanda-mitchell/semantic-release-npm-multiple from ^2.17.0 to ^3.1.0
Update @types/node from ^17.0.8 to ^17.0.21
Update @types/ws from ^8.2.2 to ^8.5.2
Update @typescript-eslint/eslint-plugin from ^5.11.0 to ^5.14.0
Update @typescript-eslint/parser from ^5.11.0 to ^5.14.0
Update eslint from ^8.8.0 to ^8.11.0
Update eslint-plugin-jsonc from ^2.1.0 to ^2.2.1
Update mocha from ^9.2.0 to ^9.2.2
Update mochawesome from ^7.0.1 to ^7.1.1
Update ts-node from ^10.5.0 to ^10.7.0
Update typedoc from ^0.22.11 to ^0.22.13
Update typescript from ^4.5.5 to ^4.6.2

:tada: This PR is included in version 1.0.1 :tada:
The release is available on:

v1.0.1
GitHub release
Docker container (sebbo2002/vestaboard2mqtt:1.0.1)
v1.0.1

Your semantic-release bot :package::rocket:


(maint) Update Dependencies to use / separator

In older versions of Puppet, there is a bug where a dependency is not
realized as installed when using "-" e.g. "puppetlabs-reboot" versus
"puppetlabs/reboot". Update to using "/" to guarantee compatibility
with older versions of Puppet.

:+1: but do we really want a PUP ticket number as the subject line in a module commit?

I can switch it to maint.

And now it is maint.


Formatting issues with landscape and filtering

Formatting is broken when we filter items:
https://514-big-picture--landscape.netlify.com/cncf=hosted,graduated,incubating,sandbox&format=landscape

@dankohn , done, please close if you can not reproduce it


Fixed an error with creating value aliases.

Description

There is an error that duplicate value aliases are generated.
Related Issue :

How Has This Been Tested?

Need additional checks?
Types of changes

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

Checklist:

[ ] I have read the CONTRIBUTING document.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have added tests to cover my changes.

Additional Context

deploy to 2

deploy to 2

deploy to 2

deploy to 2


Add project status field

We'd like to better track how far along a given project is. When submitting or editing a project, should have a status dropbown menu containing:

Idea
Brainstorming
In development
In the wild

Name suggestions and more fidelity to this very welcome :)

I am taking this up

@jamiew We already have a field called progress in projects. How is this going to be different?

I’m afk but isn’t progress a text field? The idea for this status field is
to behave like an enumeration with the following initial values: idea,
brainstorming, in-development, in-production, finished (?)
Eg we want to have a project state that people could see or filter on
On Sun, Mar 29, 2020 at 1:35 AM Nagesh<EMAIL_ADDRESS>wrote:

@jamiew https://github.com/jamiew We already have a field called
progress in projects. How is this going to be different?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/helpwithcovid/covid-volunteers/issues/84#issuecomment-605571846,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAAO37MLYPCCR3RN55VBGLRJ3M3DANCNFSM4LVMVYZA
.

--
@jamiew https://twitter.com/jamiew | https://jamiedubs.com
https://www.jamiedubs.com/

Re status name - can we update the status names to the following? (@sradu @jamiew)

Just Started
In Progress
Launched
Actively Recruiting

Fyi, we're working to add these capsules with icons indicator to the project card/object.

@tinnei that sounds great to me. Do we have any projects that are "live but not recruiting anymore"?

I have changed the project status to the above values.
I can add Project Status filters as well if needed.

hey looking good @bansalnagesh. Apologies... we keep on debating on our end about the naming of these statuses. Is there a way to have a fixed/constant string for each status type that never changes, but also have a different display string for each constant? This way we can easily tweak the naming in the future without needing to update the DB with the new name.
We now want:
Idea Stage
In Progress
Launched

and we removed Actively Recruiting. We are going to turn that it into its own checkbox, which I will create an issue for soon.


signature.dataUrl not set in 'accept'

It seems like .dataUrl property is never set in the 'accept' function anymore and so there's no way to get the url back (dataurl attribute also doesn't get it since it itself uses 'accept' to get the signature).
Looks like the line was deleted as part of "Issue 34" commit.

The dataurl attribute is bound and doesn't react on 'accept'. Things are indeed broken. I've fixed them, but it today. See #36


Android Basics: Viewmodel and State in Compose

In Step 5, you say Initialize to currentWordCount 1, but in the code you initialize it to 0

Duplicate of #69, #64, #61, #58, #53, #52.

Hello @doilio,
Thank you for reaching out to us and reporting this typo. The code snippet is updated:


Data shown in US units even though HUBOT_FORECAST_UNITS is set to "SI" or even unset

I'm running this on a hubot on heroku. Right now, temperature is shown in US units (Fahrenheit), even though I have set to SI units (or even unset HUBOT_FORECAST_UNITS).
Here's my config:
HUBOT_FORECAST_KEY:         XXXXX
HUBOT_FORECAST_ROOM:        my-room
HUBOT_FORECAST_UNITS:       SI
HUBOT_LATITUDE:             53.551
HUBOT_LONGITUDE:            9.99

I have also tried with unsetting HUBOT_FORECAST_UNITS.
This is the output I am getting:
Here is your weather report…
Currently: Partly Cloudy 47.52°C
Today: Light rain and breezy starting this evening, continuing until tomorrow morning.
Coming week: Light rain today through Saturday, with temperatures peaking at 51°F on Wednesday.

It's clearly not "47.52°C" in Hamburg, Germany :) Also, it's interesting that the "coming week" section shows "51°F"
In the heroku console I see
2015-11-29T12:47:05.562443+00:00 app[web.1]: [Forecast] Requesting forecast data: https://api.forecast.io/forecast/<REMOVED>/53.551,9.99?units=us&exclude=flags

which obviously should have "units=si" instead :disappointed:

Thanks for spotting this. I haven’t done nearly enough testing here, but this is a nasty bug for everyone who’s not an American. I’ll see what I can do!

Just cannot find the cycles to properly tackle this, sorry :(

And of course, managed to carve out a bit of time to fix this. Turned out to be a really straightforward fix. Tests well on my end, but @tkothe, please verify v0.5.1 is all good.

@jeffbyrnes Can you please upload your version v0.5.1 to npm? I installed your very nice script via npm and got the problem above (set to SI but get US units).
Thx in advance!

@TheReal1604 oh derp, sorry about that! I’ve published v0.5.1 just now.

@jeffbyrnes Thank you!


Create SwitchAccount UseCase, Endpoint, API and Gateway components

Description
Assuming the user has already logged in to multiple accounts:
RequestModel
POST /api/accounts/switch
{
  rucioIdentity: string
  rucioAccount: string
  vo: string
}

ViewModel
{
  status: boolean
  message: string
  redirectURL: URL // could be required, not sure
}

Motivation
No response
Change
No response
Additional Information

[ ] The Rucio API needs to be changed.

@ThePhisch please note the changes in the RequestModel ;)


bug: not showing the current day.

hello, in the month view some times the calendar widget doesn't recognize the current date to show by default.
for example check below video:
https://github.com/werner-scholtz/kalender/assets/78362115/21429920-d21d-42d4-b9a3-5bca97309419
current day is second of may, yet it is not included in the current visible dateRange as you can see.
note: if the firstDayOfWeek is monday it may be good but other days are causing this type of bug.
thanks

I want to add also in my case. I have the calendar widget and beside it in the same page is list of events. when clicked on any event it animates to the event's date correctly in general except for this bug. if I have a event on second of may for example and i clicked on it, it will animate the page to the wrong page the exact same as in video above. so this but is not in all months or it is not always occurring, but in the current month (may) it is causing a lot of problems.

Hi thanks will see if I can figure out what is going wrong.

Is the visible month date hardcoded? I see April as the first month.

Is the visible month date hardcoded? I see April as the first month.

I found the issue the visibleMonth from the CalendarController was returning the incorrect value,


add cluster-machine-approver

Updates:

removed default auto-approver which approves all CSRs
used kube-controller-manager to approve kubelet client CSR

kubelet client csr will need clusterrolebinding for group system:bootstrappers
cluster-machine-approver for kubelet client cert requires special serviceaccount, so disabled for now. https://github.com/openshift/cluster-machine-approver#node-client-csr-approval-workflow

used cluster-machine-approver (upstream 4.10.0) to approve kubelet serving CSR
added cluster role to allow cluster-policy-controller to approve CSR from monitoring (new in 4.9)

monitoring  csrwill need clusterrolebinding for sa cluster-csr-approver-controller

/hold
currently using a non-ocp image of cluster-machine-approver, will need to update with a more formal image

/test e2e-aws

/test e2e-aws

/test e2e-aws

/test e2e-aws

/retest-required

@enxebre please review again 👍  now the upstream 4.10.0 machine-approver image is available

thanks @hanqiuzh! this is looking great! I dropped some comments.

/unhold

@enxebre @csrwng thanks for review.
Based on the comments, I think this PR is basically ready? anything else in your mind I should update? please let me know 👍

thanks @hanqiuzh, needs to investigate this before merging https://github.com/openshift/hypershift/pull/477#discussion_r716823690

/hold

As a hard requirement we need to get client certificates through the machine approver.
This is where the client cert for the bootstrap-kubconfig is being generated https://github.com/openshift/hypershift/blob/a86c74d2528991839e09725660b56dfa5fddbca3/control-plane-operator/controllers/hostedcontrolplane/pki/kas.go#L52. So this is what we need to adapt to satisfy the machine approver.
We then generate the bootstrap-kubeconfig https://github.com/openshift/hypershift/blob/b427cf5dee50a794349f49a59551c49acdee0f90/control-plane-operator/controllers/hostedcontrolplane/hostedcontrolplane_controller.go#L1458-L1464 and pass it through the MCS pod.
FWIW This is how the machine config generates the bootrstrap-kubconfig - https://github.com/openshift/machine-config-operator/blob/9c6c2bfd7ed498bfbc296d530d1839bd6a177b0b/pkg/server/cluster_server.go#L116
cc @hanqiuzh @csrwng

@hanqiuzh I'm confused after latest changes, isn't all we need to adjust https://github.com/openshift/hypershift/blob/a86c74d2528991839e09725660b56dfa5fddbca3/control-plane-operator/controllers/hostedcontrolplane/pki/kas.go#L52
as stated in https://github.com/openshift/hypershift/pull/477#issuecomment-932146576?

/retest

thanks @hanqiuzh! this looks all good to me, just one last ask, since https://github.com/openshift/hypershift/pull/543/files made it in can you please update the createOrUpdate calls to use our new helper instead of controller runtime one as in that PR?

/lgtm


Apply 'no-unnecessary-initializer' lint rule

Forbids let/const statements to be initialized to undefined, since that's the initial value by default anyway.
The auto-fixer also happened to remove two unnecessary as number casts in src/harness/parallel/worker.ts.
For historical data: to run with --fix, I modified the line in Jakefile.js that declared the cmd for running TSLint.

@andy-ms can you please review and merge


ntdrivers-simplified/kbfiltr_simpl2_false-unreach-call_true-termination.cil.c

we got TRUE (even without optimizations), without slicing we get FALSE (in like 170 seconds), so I assume the bug is in slicer

obsolete, closing


Tax not correct after clearing cache

I have set the tax in cart.php to 20 to get a 20% tax rate, I have cleared the cache, but when I do echo Cart::tax(), I am still getting the default 2.10%

Have you also cleared the session? Because that's where the cart is stored.


Bump libraries and updated mixin usage

llamalad pointed out to me that @ModifyArgs would be more compatible in some places, if you're interested.

Yeah, I also updated Gradle, should work now


Tests: adjust tests for Darwin

The Darwin toolchain is incomplete, missing swift-autolink-extract. Add a workaround for the missing tool to allow the tests to pass. This then uncovers another issue with ASi builds where the prebuilt NDK is only available on x86_64 hosts. While we could loosen the NDK lookup, we do still occassionally use some of the tools, so for now lets limit the test to x86_64.
Fixes: #1682

@swift-ci please test


Install / Arduino IDE integration

Hello,
I'm very excited to try this with the Archmix.
I don't see  Archmix nor mxrt as options when I add the Seeed-Studio board list to the Arduino IDE's "Additional Boards Manager URLs" in the File->Preferences panel.
https://raw.githubusercontent.com/Seeed-Studio/Seeed_Platform/master/package_seeeduino_boards_index.json
Which one is the Archmix?
Also, I am unclear about what cmake is supposed to build, and how this gets plugged into the Arduino IDE... also where/how the SDK is found through Arduino, etc.
Thank you

Hi,
please use this url .
http://files.seeedstudio.com/arduino/package_seeeduino_local_boards_index.json

Excellent, thank you LynnL4!
I now see the board in the list.
(I am on Raspberry Pi and it says "tool bossac not available" but I will research this, as it appears to be an Atmel flash loader tool and Archmix imxrt is an NXP chip not Atmel. Do you know anything about platform limitations for host?)
thank you

Hi,
Currently, only three platforms are supported. I will update the firmware of raspberry pie to you in the near future. please refer here

Hello, So, I tried more usual Linux 64bit intel on Ubuntu and Arduino board manager can't find the files when i try to install from the link above, which DOES list the Archmix imxrt board.
Error downloading http://<IP_ADDRESS>/files.seeedstudio.com/arduino/core/imxrt/ArduinoCore-imxrt-1.1.0.tar.gz

http://files.seeedstudio.com/arduino/package_seeeduino_boards_index.json

thank you


Changing the serializer for Dapr actors

Is there anyway to change the sterilization protocol for Actors and state manager? Currently Dapr is using json.dumps underneath and it seems impossible to pass any special Encoders.

ping

/ping bot

You can specify the serializer when you register Actors. Please note that your custom serializers must extend dapr.serializers.base.Serializer. An example implementation is dapr.serializers.json.DefaultJSONSerializer
https://github.com/dapr/python-sdk/blob/master/dapr/actor/runtime/runtime.py#L44
    @classmethod
    async def register_actor(
            cls, actor: Type[Actor],
            message_serializer: Serializer = DefaultJSONSerializer(),
            state_serializer: Serializer = DefaultJSONSerializer(),
            http_timeout_seconds: int = settings.DAPR_HTTP_TIMEOUT_SECONDS) -> None:
        """Registers an :class:`Actor` object with the runtime.
        Args:
            actor (:class:`Actor`): Actor implementation.
            message_serializer (:class:`Serializer`): A serializer that serializes message
                between actors.
            state_serializer (:class:`Serializer`): Serializer that serializes state values.
            http_timeout_seconds (:int:): a configurable timeout value
        """

Example (https://github.com/dapr/python-sdk/blob/master/examples/demo_actor/demo_actor/demo_actor_service.py):
Update the actor service code like so:
from dapr.serializers.json import DefaultJSONSerializer

@app.on_event("startup")
async def startup_event():
    # Register DemoActor
    await actor.register_actor(
        DemoActor,
        message_serializer = DefaultJSONSerializer(),
        state_serializer = DefaultJSONSerializer(),
    )

@omidb @ryou90 does this help?

I'm not sure where a good place to document this is. I don't want to add clutter to existing examples as most people won't need to change the serializers.
Hopefully for now this GitHub issue will be sufficient in search.

Just to add this:
You also need to define the ActorProxy, otherwise messages are not properly serialized.
My code so far:
from typing import Any, Callable, Optional, Type

from dapr.serializers.base import Serializer
from dapr.serializers.json import DefaultJSONSerializer
from pydantic import BaseModel

class PydanticSerializer(Serializer):
    _fallback: DefaultJSONSerializer = DefaultJSONSerializer()

    def serialize(self, obj: object, custom_hook: Optional[Callable[[object], bytes]] = None) -> bytes:
        # try with pydantic first, if that fails, try with the fallback
        if isinstance(obj, BaseModel):
            return obj.model_dump_json().encode("utf-8")
        else:
            return self._fallback.serialize(obj, custom_hook)

    def deserialize(self, data: bytes, data_type: Optional[Type] = object, custom_hook: Optional[Callable[[bytes], object]] = None) -> Any:
        # try with pydantic first, if that fails, try with the fallback
        if issubclass(data_type, BaseModel):
            return data_type.model_validate(data.decode("utf-8"))
        else:
            return self._fallback.deserialize(data, data_type, custom_hook)

I register the actors with this:
await ActorRuntime.register_actor(MyActor, message_serializer=PydanticSerializer(), state_serializer=PydanticSerializer())

And I talk to the actors like this:
def get_my_actor(id: str) -> MyActorInterface:
    """
    Creates a new MyActor interface from an id.
    """
    return ActorProxy.create(actor_type="MyActor", actor_id=ActorId(id), actor_interface=MyActorInterface, actor_proxy_factory=ActorProxyFactory(message_serializer=PydanticSerializer()))

Maybe we want this documented? @elena-kolevska @berndverst

I think this might make sense in the actors docs page: https://docs.dapr.io/developing-applications/sdks/python/python-actor/. I'll send a PR.


LivePlot window problem when legend too large

In https://github.com/APS-USAXS/ipython-usaxs/issues/309, @jilavsky reports

When graphs are opened for too many scans, matPlotLib used to generate these has bug. Graphs become useless and there does not seem obvious way to fix this.

See the attached picture in that issue.
Expected Behavior
For unattended, continuous operation over long periods of time (such as a weekend), the plot windows must be stable.
Current Behavior
When the legend grows too large (@jilavsky, can you provide some numbers here?), problems happen (@jilavsky, can you be more specific?)
Possible Solution

Add an option to set the maximum number of traces shown in a single window.
Add an option to open new window after n number of traces.
other

After today testing, this seems to start impacting the shape of graphs when legend is around 18-20 lines. There is no hard limit as it depends on physical size of image vs size of legend. Two solutions come to my mind: 1.  limit display to last 10-15 scans, or (which is more elegant solution I implemented in Irena): 2. decimate legend to display at most N (N~10-15) items while keeping all traces in the graph. In this case code is needed, which when needed limits legend to show every second (third, etc...) item in the legend.

Thanks @jilavsky. I believe that adding the option to show only the most recent N traces has been previous proposed and well received. I think we can go with that and see if it works well.

We have a solution, added to the apstools package today.  It needs one more change but will be ready to pull into bluesky at that point.  Please stand by...
This code:
        # pick out only the traces that contain plot data
        # skipping the lines that show peak centers
        lines = [
            tr
            for tr in lp.ax.lines
            if len(tr._x) != 2 or len(tr._y) != 2 or tr._x[0] != tr._x[1]
        ]

needs to consider the possibility that the trace only has one data point.  Since the lines that plot peak centers have exactly two points with identical X values, it is easy to find them but we need to trap the case where we only have 1 point.  Like this:
        # pick out only the traces that contain plot data
        # skipping the lines that show peak centers
        lines = [
            tr
            for tr in lp.ax.lines
            if len(tr._x) != 2 or len(tr._y) != 2 or (len(tr._x) == 2 and tr._x[0] != tr._x[1])
        ]

Done in https://github.com/BCDA-APS/apstools/commit/f4ed8a3125c91d1946fb8c2233b8f7111c3be374
I'll make a PR on this tomorrow.

See also https://github.com/bluesky/bluesky-mpl/issues/4 where this "show last N traces" was first proposed.


content aware payload presentation

would be great in the future to show e.g. JSON specific content in a JSON editor like style like in other projects ie. in landoop (https://hub.docker.com/r/landoop/fast-data-dev).

This is available on double click on every record for now (not really ui friendly, but don't have a best idea)


Extending commected components to include a Debug Widget

If I wanted to augment a connected component so that a little UI decoration is added which indicates various debug info, how would I be best to do this? I'm thinking that I want to make more visible the selectors that run, how long they took, etc.
We are finding that unless we are keeping an active eye on these details, its easy for the team to let regressions slip in and having that front and center might help. Plus its a good way to learn/scratch an itch.

I've got links to a few component render monitoring utils and approaches as part of my Redux addons list, at https://github.com/markerikson/redux-ecosystem-links/blob/master/devtools.md#component-update-monitoring .  Those might serve as useful inspiration (particularly the "render visualizer" pieces).

Thanks!


Initial Work to per-currency rounding feature.

This implements a "rounding precision" for currencies that don't round to two decimals. (Specifically, CHF)
In the field "Rounding precision", you can set the next decimal the program should round to.
Currently, only rounding down works, but implementing "bank" rounding is also on the to-do list.
I've decided to pause working on this and instead clean up the cart / order button functionality before, as currently, rounding not only happens in ServiceInvoiceItem.php (in the function getTotalWithTax), but also in the twig template of the checkout process.
It's important to have a set of core functionalities to process business logic, and the checkout process needs rewriting to make use of that. Before that isn't done, rounding isn't a pressing issue.

Don't know if this also solve add comma to currencies and cart resetting for guests users when logged in?

Don't know if this also solve add comma to currencies and cart resetting for guests users when logged in?

I assume the first part is this issue: https://github.com/FOSSBilling/FOSSBilling/issues/1344, which is separate from the intentions of this PR. But as I previously explained, the cart issue will remain a problem until we rewrite the behavior of the cart module

This should also fix #1344 because of the format changes when it's done.

This should also fix #1344 because of the format changes when it's done.

Does it actually? That issue said it only happens in some places, suggesting it's a front-end issue where the proper money formatting isn't being applied


Mac Catalyst support.

The fixed Travis config has been merged, please merge master so we can run the tests again.

Actually, this PR is preceded by #4418, so I'll be closing this one.


Please Note this packages JSX Indent/Formatting feature is incompatible with the package 'react' auto indenting.

If you need both packages turn off the Auto Indent feature in react or  Format JSX isetting in language-babel.
Reason: Both packages monkey patch the atom code to do indenting. Why monkey patch? Well.... to do sensible indenting....

No longer monkey patching.


A new version of HALNY HL-1GE2 has appeared.

Hi
A new HALNY HL-1GE2 has appeared. Is there a chance to add support for it?

Where I can find the datasheet for this ONT?

Added in https://github.com/bartekkois/GPONMonitor/commit/7ff27af754994bb9c7165d268bbaab5f99c7d84a


Adds runtime/compstore runtime component store

compstore is a new runtime package which dynamically loads and unloads runtime components. It is used as a consistent store for runtime services to ensure they all have the same view of the world.
This is a predicate for hot reloading, whereby all runtime services will need to use the same store of components loaded, which may be removed, added and updated, multiple times during runtime.

Thanks for the review @ItalyPaleAle. Apologies for the bad reverts- was a bad rebase+copy&paste PBKAC on my end.


Add ProductCode to Microsoft.VC++2010Redist-x86

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

[x] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

/azp run


[Question]Is there any conditional package dependency setting when dev vs build

I have two packages in my project. However, they need to be deployed separately during actual deployment.
I am using them as shown below for debugging during development.
Is there a way to integrate them together at once?
when run build (for debugging)
[tool.uv.sources]
asdf = { workspace = true }

when build
[tool.uv.sources]
asdf = {path = "/tmp/asdf-0.1-py3-none-any.whl" }

I think this is roughly the same as https://github.com/astral-sh/uv/issues/7945. Unfortunately there isn't a great way to do it today. I'm going to expand that issue.


setCookie from string

Wonderful library! But there is one defect, i think. Сurrently i store my cookies in database, because having a lot of files is not usable. Could you, please, provide the possibility to set cookies from string?

@dilame I believe only document oriented database such a MongoDB make sense. Is this your case?

At moment Session class relies on InstgramFileCookieStore, of course would be better to have ability to change such a storage, I agree with that. I can do that, should not take long maybe this evening.

@huttarichard Fantastic. Just a simple api so one can define two functions (w. callback/promise) for setting and getting the session data 👍
That way, you can simply hook it up to your desired storage. Eg. file system, MongoDB, Redis etc.

@huttarichard yes, this is just my case!

@dilame @ptz0n of course pull request would be great :)

I propose that session class should take instead of path for cookie a class which would be a child of InstagramCookieStorage and InstagramCookieStorage should be a child of tough.Store.
Then create InstagramCookieFileStorage which would work same way as any different storage.

to be honest, I'm actually using this repo just for a small stuff and small amount of accounts.
So this feature is not necessary for me, but if you insist, I will do it, but not sure when, little bit busy :P.

@dilame  @ptz0n
You can now extend CookieStorage class, this class accepting storage param which  is class with this interface https://github.com/SalesforceEng/tough-cookie/blob/master/lib/store.js


Image fixes

Fixing images (pfps and responses)
To test profile pic crop fix:

Launch server
Log into account
Set a profile picture
Verify it has correctly been cropped into a square

To test response resize:

Submit response to challenge. Pick a very wide image
Submit response to another challenge. Pick a very tall image.
Verify that they have been resized, maintaining aspect ratio
Max height should be 500
Max width should be 750

To test response submission fix:

Launch server
Log into account
delete existing profile picture on your drive (media/profile_pictures)
attempt to submit image response to challenge
Verify response worked

Details:
Made it so profile pictures are cropped to 1:1 ratio instead of stretched
Made it so responses are resized while maintaining aspect ratio instead of stretched
Fixed an error where the program would try to access "photograph" instead of "picture" in profile
Fixed an error where profile pictures would break challenge response image uploading
Changed challenge pic css to scale height instead of width (better for tall images)

For some reason any image that I try to upload (for responses or profile pics) shows an error as seen in the image attached, not sure why, I've tried several different images (jpeg, png, small files, big files)

r


Compatibility with PostCSS 8

Thanks for your PostCSS plugin!
As you probably know, PostCSS 8 was released a few days ago. It would be great if you could make this plugin compatible with the latest version. The creators of the project have even released this migration guide.

Hi @jonnitto,
yes, it's on my radar, hoping to be able to work on it soon.

any news on that?


Tournaments: support rulesets in /tour banlist

Updated.

Can you add the feature to remove bans? Like if I wanted to play OU but with Giratina for example. Should be able to simply /tour unbanlist Giratina or something.

Oh never mind. Apparently ! is what I was looking for. Why are there no instructions at all...

There are instructions in the tournament guide that's linked at the bottom of /tour help.

Fair enough. Also why can we only overrule ValidatorRule and not Rule? We should be able to add clauses to any format. For example, Freeze Clause, or the newly created Inverse Clause.

The banlist and ruleset changes are only sent to the Validator to handle challenges. The battles use the regular format of the tournament. I can look into changing that though.


[apply-login-partner-changes] - Partner build profile form SDG fields should be checkboxes and not update Region field

Describe the bug
Partner user trying to build profile, SDG list is not working as expected
To Reproduce
Steps to reproduce the behavior:

Go to landing page, select APPLY, enter email, select Partner (email must be pre-loaded by admin)
Complete form, when selecting Sustainable Development Goals Your Work Supports, it should be checkboxes to allow multiple selection
See error:  User selects only one value from SDG list (it can be many) but also another error is that value selected is reflected in Regions field instead

Expected behavior
SDG must be a list with checkboxes so that user can select multiple values and not affect other form fields.
Screenshots

fixed @robert-dm

tested - ok @eslamzaaki


Improve filtering logic

Codecov Report

Merging #328 into master will decrease coverage by 0.17%.
The diff coverage is 60%.

@@             Coverage Diff             @@
##             master    #328      +/-   ##
===========================================
- Coverage     83.77%   83.6%   -0.18%
- Complexity      437     438       +1
===========================================
  Files            62      62
  Lines          1381    1391      +10
  Branches        186     189       +3
===========================================
+ Hits           1157    1163       +6
- Misses          123     124       +1
- Partials        101     104       +3


Upgrade to egui 0.27 and use egui_miniquad master git

This pull request makes it so that the demo example compiles again and upgrades the egui version to match the one used in the latest egui_miniquad

This would close the following issues:
https://github.com/optozorax/egui-macroquad/issues/42
https://github.com/optozorax/egui-macroquad/issues/41
Note I am still using the git version since the crates.io version is a year old

Looks like egui-miniquad has since released a new version to crates.io targeting egui 0.28


Restrict dragging within parent container

Is your feature request related to a problem? Please describe
Help request
Describe the solution you'd like
I am looking for a way to restrict dragging a div with the parent div container. If you could provide an example would be of great help.
Describe your use case for implementing this feature
Restrict dragging within parent container
Additional context
None

If you do the transformation of the dragged element yourself, you can adjust it so it's constrained within a container. I put together an example of this here for you: https://stackblitz.com/edit/angular-mbwxql?file=src/app/app.component.ts Hope that helps! 😄


feat: remove filter query during view registration

Current coverage is 100% (diff: 100%)

Merging #34 into master will not change coverage

@@           master   #34   diff @@
===================================
  Files           7     7
  Lines          94    92     -2
  Methods        24    23     -1
  Messages        0     0
  Branches        7     7
===================================
- Hits           94    92     -2
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update cbb2637...6a28aed


[CI] use obltGitHubComments

What does this PR do?
Use https://github.com/elastic/apm-pipeline-library/blob/master/vars/obltGitHubComments.txt
Why is it important?
Avoid hardcoded strings and easy to normalise the GitHub comments in all the oblt projects
You can also see in the GitHub comment that there is a specific section for some of those GitHub comments called 🤖 GitHub comments

:green_heart: Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2021-09-22T08:23:59.087+0000

Duration: 56 min 54 sec

Commit: 20c62e7eb50a93726d1b6b544de7a2403c2ff8b4

Test stats :test_tube:

Test
Results

Failed
0

Passed
2404

Skipped
19

Total
2423

:green_heart: Flaky test report
Tests succeeded.

Expand to view the summary

Test stats :test_tube:

Test
Results

Failed
0

Passed
2404

Skipped
19

Total
2423

:robot: GitHub comments
To re-run your PR in the CI, just comment with:

/test

jenkins run the tests


CollectionView has left padding on Landscape iPad (similar to tableview.cellLayoutMarginsFollowReadableWidth)

New issue checklist

[x] I have reviewed the README and documentation
[x] I have searched existing issues and this is not a duplicate

General information

IGListKit version: 3.1.1
iOS version(s): iOS 11
CocoaPods/Carthage version: 1.3.1
Xcode version: Version 9.1 beta (9B46)
Devices/Simulators affected: Yes
Reproducible in the demo project? (Yes/No): Yes

As the title mentions, an extra space appears on Landscape that I could not get rid of for some reason. It looks very similar to of TableView's and I have a strong feeling it is caused by Safe Area on iOS 11, but I am not certain. I have tried both creating the views programmatically and via IB, same results.
Using the same CollectionView without IGListKit does not face the same issue.
Without keeping the text too long, I am attaching screenshots that show the issue and a sample repo that replicates it.

Steps to reproduce

clone repo
pod install
run on an iPad
Switch between Portrait and Landscape (sometimes a few times)

Repo:
https://github.com/omerfarukyilmaz/IGListKitBug

I think this has to do that the cells don't get resized correctly when rotating the device so you sometimes end up the 'portrait' cell sizes while the device in landscape. Can you try to invalidate the layout while rotating?
Try doing something like the code below in func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator):
layout.invalidateLayout(with: layout.invalidationContext(forBoundsChange: CGRect(x: 0, y: 0, width: size.width, height: size.height)))

Well, that actually freaking solved it. That was very quick and helpful. Thank you very much @weyert.
I'll close the issue because it does not seem like a problem of IGListKit. So no need to clutter up here.

Great!


Show all valid templates for sites:create-template

Describe the bug
When using the Netlify CLI's command ntl sites:create-template we identified that we were not seeing all public repos within the list. We came to the conclusion that when we perform the fetch request, the returning repo list is limited to 30 repos, including those that are private, archived, etc. and then the CLI is filtering out the rest dependent on their status.
Here's the code that is making the fetch request for our netlify-templates repositories:
https://github.com/netlify/cli/blob/c0b42f94e63696d437fb4de9fd1f665210a6f5cc/src/utils/sites/utils.js#L3-L9
And referring to the GitHub API docs on listing all repositories for an org, it looks as though we have a default limit of 30.

Two good options might be for us to:

Updating the limit for per_page
Modifying the request so it only finds public repositories

Steps to reproduce

Install the Netlify CLI npm install -g netlify-cli
Run ntl sites:create-template

The way we solved this for now is by deleting outdated repositories but that is a temporary fix.
Configuration
No response
Environment
System:
OS: macOS 12.4
CPU: (8) arm64 Apple M1
Memory: 115.25 MB / 16.00 GB
Shell: 5.8.1 - /bin/zsh
Binaries:
Node: 16.15.1 - ~/.volta/tools/image/node/16.15.1/bin/node
Yarn: 1.22.17 - ~/.volta/tools/image/yarn/1.22.17/bin/yarn
npm: 8.11.0 - ~/.volta/tools/image/node/16.15.1/bin/npm

Sorry for the tag but wasn't certain who PMs the work! (cc @danez @Skn0tt)
More than happy to help, just let us know!

We can put this in our Compute Pod board and see when we get to it, but that could take a while. It looks like you already found how to fix this, though - if you submit a PR, I'm happy to review it!


Docker build needs to use light weight tags

to get the proper version from GitHub releases.
Only use git describe when docker builds master
use the tag name which is stored in the environment
variable SOURCE_BRANCH.
See:
https://docs.docker.com/docker-cloud/builds/advanced/#override-build-test-or-push-commands

Coverage remained the same at 81.714% when pulling 11737623b11a03b360e485337234bf377a7783a9 on mterzo:docker_hooks into a34f941b84c49e283701543947cfc4f4c38bde7c on voxpupuli:master.


Update focusTrap to use new methodology after accessibility discussions

Motivation
Precursor to this PR I'm working on: https://github.com/primer/behaviors/pull/48
This change alters the behavior of the focusTrap so that it inserts a sentinel <span> element before and after the trap area.
Note that this is a breaking change in that: when there are no focusable elements within the focusTrap the container itself is no longer focused. This is because from an Accessibility point of view - trapping focus and not having any focusable elements within that focus is bad for screenreader users.
I have tested this against @primer/react by locally wiring it up with yarn link and have verified that it behaves as expected however I recommend that we release this as a minor version point as a minimum (not a patch) and then test the change thoroughly before rolling it out.
Questions:

What do I need to add to this PR to get it ready for release?
If focusTrap is called against a container with no focusable elements, should we raise an error?

cc @github/accessibility

Hi 👋
I think this is great! I ran primer-react's test suite with this change (0.0.0-202213135035) and the interaction tests pass.
One thing that I need to confirm with @alliethu is the initial focus when a menu is opened with mouse click (as compared to keyboard)
Right now, when you open a menu with mouse click, we do not focus the first element by default. (we only do that when it's opened with keyboard). This PR changes that.
https://user-images.githubusercontent.com/1863771/152519337-50801ac8-6f75-4baf-97c6-39e913110108.mov

Thanks for the attention to detail @siddharthkp - please let me know what you think @alliethu. 🙂

👋🏼 Hi all! Thank you @owenniblock for tackling this issue and @siddharthkp for your attention to detail. In this instance, I would suggest we not automatically place focus on the first element when the menu has been triggered by a mouse click, as this could lead to confusion for the user since they've not actually made the selection themselves.
I do agree, however, with the focus implementation when the component is accessed through keyboard.

@alliethu I'm trying to think through the best way to implement this - I think it might be fiddly to change the implementation based on whether the user clicks the mouse or a uses the keyboard but if it's the right approach I'm happy to find a way to do this.
Having said that, I'm not 100% sure using this to differentiate is the correct approach. Having the first focusable element selected in this change is intentional (certainly in the case of the dialog) but I've been mainly focused on the dialog usage of this work so hadn't really given too much thought on other use-cases. Do you know why we diverge on this functionality currently? Are we certain that mouse users would find this functionality confusing? (I'm guessing there are some edge cases so I'd like to understand the steps that would lead to this being an issue so I can better understand our users!)
Would you object to me discussing this with James? I'd love to get his input here so I can make sure I'm doing the right thing for both dialogs and dropdown menus!

@alliethu - I bought this up with James to check what the best approach would be here and he recommended that we keep the functionality where the focus moves to the first item regardless of how the control is opened - unless you strongly disagree I suggest we leave this as it is.


Após  a instalação do Visual Studio 2022 versão 17.2 ao dar um flutter doctor o seguinte erro é apresentado

Visual Studio - develop for Windows (the doctor check crashed)
X Due to an error, the doctor check did not complete. If the error message below is not helpful, please let us know
about this issue at https://github.com/flutter/flutter/issues.
X Exception: Bad UTF-8 encoding (U+FFFD; REPLACEMENT CHARACTER) found while decoding string: [
{
"instanceId": "5d3287b0",
"installDate": "2022-06-05T23:25:50Z",
"installationName": "VisualStudio/17.2.3+32526.322",
"installationPath": "C:\Program Files\Microsoft Visual Studio\2022\Community",
"installationVersion": "17.2.32526.322",
"productId": "Microsoft.VisualStudio.Product.Community",
"productPath": "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\devenv.exe",
"state":<PHONE_NUMBER>,
"isComplete": true,
"isLaunchable": true,
"isPrerelease": false,
"isRebootRequired": false,
"displayName": "Visual Studio Community 2022",
"description": "IDE avan�ado, gratuito para estudantes, colaboradores de software livre e indiv�duos",
"channelId": "VisualStudio.17.Release",
"channelUri": "https://aka.ms/vs/17/release/channel",
"enginePath": "C:\Program Files (x86)\Microsoft Visual
Studio\Installer\resources\app\ServiceHub\Services\Microsoft.VisualStudio.Setup.Service",
"installedChannelUri": "https://aka.ms/vs/17/release/channel",
"releaseNotes": "https://docs.microsoft.com/en-us/visualstudio/releases/2022/release-notes-v17.2#17.2.3",
"thirdPartyNotices": "https://go.microsoft.com/fwlink/?LinkId=661288",
"updateDate": "2022-06-05T23:25:50.8031582Z",
"catalog": {
"buildBranch": "d17.2",
"buildVersion": "17.2.32526.322",
"id": "VisualStudio/17.2.3+32526.322",
"localBuild": "build-lab",
"manifestName": "VisualStudio",
"manifestType": "installer",
"productDisplayVersion": "17.2.3",
"productLine": "Dev17",
"productLineVersion": "2022",
"productMilestone": "RTW",
"productMilestoneIsPreRelease": "False",
"productName": "Visual Studio",
"productPatchVersion": "3",
"productPreReleaseMilestoneSuffix": "1.0",
"productSemanticVersion": "17.2.3+32526.322",
"requiredEngineVersion": "3.2.2148.26540"
},
"properties": {
"campaignId": "2030:113b370d-9640-4bea-930f-446a19074b3d",
"channelManifestId": "VisualStudio.17.Release/17.2.3+32526.322",
"nickname": "",
"setupEngineFilePath": "C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe"
}
}
]
.


DEBUG=False

The app should be configured so that it can run with a DEBUG value of False in staging and production. This requires that we find a way to serve static files, (which is its own issue) among other concerns. https://docs.djangoproject.com/en/1.8/howto/deployment/checklist/

Done!


"brew cask info" to print release date too.

There are many cask projects (very useful) but I'm really missing the "release date" from the info command.
I mean the version information is useful, but when exploring new projects it's not saying much for most of them. A release date would be much more helpful.

You mean the release date for the projects themselves?
That is outside the goals of this project, as we don’t intend to become a discoverability service. This has been discussed and refused multiple times, as it is not part of the goals of homebrew-cask. Amongst other things, the logistics are unsustainable.


Migrate to Java 21

Java 21 is available and is the default installed version in many systems.
Let's follow the new features of Java :+1:

For some reason the docker image eclipse temurin 21 is not yet released and is a bit deayed.
The rest is tested and works fine :)
Matter of days before it's merged

Docker image for java 21 temurin is there but I still face issues at runtime not sure exactly why. Will have to dedicate time on that.

Local tests are now passing, I will release it and retest


Drop-in replacement or integration with Flask-SQLAlchemy?

Readme says it's a replacement for Flask-SQLAlchemy, but requirements.txt shows that it requires Flask-SQLAlchemy... does it actually replace or augment?

It would be more accurate to say that it's an very small extension of Flask-SQLAlchemy that integrates alchy into it.


Uncaught Error: html-pdf: Received the exit code '1'Auto configuration failed140498301443712:er...

[Enter steps to reproduce:]

...
...

Atom: 1.42.0 x64
Electron: 4.2.7
OS: Debian GNU/Linux
Thrown From: markdown-themeable-pdf package 1.2.1
Stack Trace
Uncaught Error: html-pdf: Received the exit code '1'
Auto configuration failed
140498301443712:error:25066067:DSO support routines:DLFCN_LOAD:could not load the shared library:dso_dlfcn.c:185:filename(libssl_conf.so): libssl_conf.so: cannot open shared object file: No such file or directory
140498301443712:error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:244:
140498301443712:error:0E07506E:configuration file routines:MODULE_LOAD_DSO:error loading dso:conf_mod.c:285:module=ssl_conf, path=ssl_conf
140498301443712:error:0E076071:configuration file routines:MODULE_RUN:unknown module name:conf_mod.c:222:module=ssl_conf
At /home/wouter/.atom/packages/markdown-themeable-pdf/lib/markdown-themeable-pdf.js:496

Error: html-pdf: Received the exit code '1'
Auto configuration failed
140498301443712:error:25066067:DSO support routines:DLFCN_LOAD:could not load the shared library:dso_dlfcn.c:185:filename(libssl_conf.so): libssl_conf.so: cannot open shared object file: No such file or directory
140498301443712:error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:244:
140498301443712:error:0E07506E:configuration file routines:MODULE_LOAD_DSO:error loading dso:conf_mod.c:285:module=ssl_conf, path=ssl_conf
140498301443712:error:0E076071:configuration file routines:MODULE_RUN:unknown module name:conf_mod.c:222:module=ssl_conf

    at ChildProcess.respond (/packages/markdown-pdf/node_modules/mdpdf/node_modules/html-pdf/lib/pdf.js:121:31)
    at ChildProcess.emit (events.js:182:13)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12)

Commands
     -0:46.3.0 markdown-themeable-pdf:export (div.line)
     -0:25.1.0 application:open (atom-workspace.workspace.scrollbars-visible-always.theme-one-dark-syntax.theme-one-dark-ui)
     -0:11.7.0 markdown-themeable-pdf:export (div.line)

Non-Core Packages
language-markdown 0.37.0
markdown-pdf 2.2.0
markdown-scroll-sync 2.1.2
markdown-themeable-pdf 1.2.1
markdown-writer 2.11.9
pdf-view 0.72.0

Hello, sorry, but I will no longer maintain the project.
This project is archived because the owner no longer uses the Atom Editor.
It would be very good to find a new owner for this project, who will take care of updating and expanding the Atom package. A new version based on Chrome Headless has already been prepared in a feature branch.


ModuleNotFoundError: No module named 'utils'

Hi -
When I try running this notebook, the 'utils' module is not found. (I have the CWD set to the directory where I downloaded the DRKG)
Where should this 'utils' module be ?

ModuleNotFoundError                       Traceback (most recent call last)
 in
4 import sys
5 sys.path.insert(1, '../utils')
----> 6 from utils import download_and_extract
7 download_and_extract()
8 drkg_file = '../data/drkg/drkg.tsv'
ModuleNotFoundError: No module named 'utils'

By "the directory where I downloaded the DRKG", do you mean the DRKG repo is in the CWD or the CWD is DRKG/?

the CWD is DRKG/
-------- Message d'origine --------De : Mufei Li<EMAIL_ADDRESS>Date : 21.10.20  20:25  (GMT+01:00) À : gnn4dr/DRKG<EMAIL_ADDRESS>Cc : jdauvill<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Objet : {Disarmed} Re: [gnn4dr/DRKG] ModuleNotFoundError: No module named 'utils' (#19)
By "the directory where I downloaded the DRKG", do you mean the DRKG repo is in the CWD or the CWD is DRKG/?
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.

I think you can simply do
In [1]: pwd
Out[1]: '/Users/mufei/DRKG'

In [2]: from utils.utils import download_and_extract


Unbalanced InitializeGlobalStatics/CleanupGlobalStatics() calls in AWSClient and race in implementation

Platform: Windows
SDK version: 1.3.31
I am chasing a very rare crash (deep in AWS SDK) that happens in GetObject() call. After spending more than a day trying to reproduce it I finally caught one incidence in a debugger. Unfortunately nuget package doesn't contain .pdb files and symbols package was not refreshed since 2016.
If you have them laying around -- can you provide me with pdb files for x64 v140 Debug 1.3.31 build of -core and -s3 dlls, please?
Also, it would be really helpful if .symbols nuget packages were released along with redist packages (or maybe even included into them).
Code is very simple and I suspect a bug in SDK itself:
Aws::S3::Model::GetObjectRequest q;
q.SetKey( stream_info.obj_key );
static_assert(sizeof(unsigned long long) >= sizeof(streamoff), "");
q.SetRange(common::str_printf("bytes=%llu-%llu", static_cast<unsigned long long>(read_offset), static_cast<unsigned long long>(read_offset + chunk_size - 1)));
auto r = s3c.GetObject(q);                  // <-- this is where it happens

Stack:
 	aws-cpp-sdk-core.dll!000007fed638169e()	Unknown
 	aws-cpp-sdk-core.dll!000007fed6382a0f()	Unknown
 	aws-cpp-sdk-core.dll!000007fed639a9a8()	Unknown
 	aws-cpp-sdk-core.dll!000007fed639a516()	Unknown
 	aws-cpp-sdk-s3.dll!000007fed66f45b1()	Unknown
 	aws-cpp-sdk-core.dll!000007fed639503f()	Unknown
 	aws-cpp-sdk-core.dll!000007fed6393c7b()	Unknown
 	aws-cpp-sdk-core.dll!000007fed63958d6()	Unknown
 	aws-cpp-sdk-s3.dll!000007fed66e73e5()	Unknown
>	blah-blah-blah::download_file_(...)

:-) Yes. It is possible that this logic is invoked out side of "aws init" guard object lifetime. But I've checked -- there are 8 guard objects active at this moment -- SDK is definitely initialized

Also, nuget defaults don’t upgrade everything when you pull in a new dependency, can you check that all of the versions match?

We don't keep pdb files around from earlier versions unfortunately.  So even if the code is the same it won't let you use the pdb.
Your best bet is to build from source.
Also, aren't you using a custom streambuf? Did you rule out your implementation?

@JonathanHenson

Also, nuget defaults don’t upgrade everything when you pull in a new dependency, can you check that all of the versions match?

Everything seems in order:
AWSSDKCPP-Core                      {1.3.31}
AWSSDKCPP-Core.redist               {1.3.31}
AWSSDKCPP-S3                        {1.3.20060301.31}
AWSSDKCPP-S3.redist                 {1.3.20060301.31}

@marcomagdy

Your best bet is to build from source.

Sigh... I'll have to figure out how to do it -- we were always using nuget packages on windows. Too bad this problem popped up like literally one day before major release. :-\
Even .map file can be useful here -- I'd be able to find in which function this happens using it's address.

Also, aren't you using a custom streambuf? Did you rule out your implementation?

Custom streambuf is used only for upload -- for download I opted for piece-by-piece download using SetRange() with default stream (std::stringstream, afair).

@crusader-mike what credentials provider are you using?

@marcomagdy I pass credentials directly into S3Client ctor:
Aws::S3::S3Client(Aws::Auth::AWSCredentials(s3_access_key_id, s3_secret_key),
                  awsClientConfiguration(s3_endpoint, s3_auth_region, opts_.s3_request_timeout_ms, opts_.s3_connect_timeout_ms, opts_.s3_max_connections));

Huh... Upgrading SDK to 1.4.1 caused the problem to go away, it seems -- I can no longer reproduce it. What is more interesting -- CPU usage went down ~2 times and network utilization went up ~5 times (debug build).
 They've just finished multi-week regression tests.

Actually, taking it back... With latest SDK it shows up in another place and is even harder to reproduce.
I spotted something though -- AWSClient ctor/dtor call InitializeGlobalStatics/CleanupGlobalStatics. And everything seems fine... Until you realize that generated move ctor is not gonna do that! Guess what -- my code moves S3Client instances. I am not sure that this is the root cause, but I'll keep digging.
Also, InitializeGlobalStatics/CleanupGlobalStatics implementation looks very weird to me (and I've done a fair amount of lockless programming) -- I highly doubt it is correct.

The compiler won't generate a move ctor if there's a user-defined dtor; and in this case, there is one defined.
shameless plug https://stackoverflow.com/questions/4943958/conditions-for-automatic-generation-of-default-copy-move-ctor-and-copy-move-assi/38257488#38257488

... but it will generate copy ctor, right? which won't call InitializeGlobalStatics()...

Yes, correct. That's probably the bug. See my updated comment above.
You can avoid this problem now by avoiding copying the client.

Working on getting rid of "S3Client move" logic in our code and testing. Pretty sure there are 2 bugs here -- InitializeGlobalStatics/CleanupGlobalStatics() is not good, I feel there is a race there.
Some background -- I have a S3Client cache:
    using s3cache_t = map<tuple<string, string, string, string>, Aws::S3::S3Client>;    // { (endpoint, key, secret, region) -> S3Client }
    s3cache_t s3cache_;

    Aws::S3::S3Client& get_client(opt_string const& endpoint, opt_string const& access_key_id, opt_string const& secret_key, opt_string const& auth_region) override
    {
        lock_guard<mutex> lock{mutex_};     // it is ok to reuse this mutex for cache protection

        auto& s3_endpoint       = endpoint      ? *endpoint         : opts_.s3_endpoint     ;
        auto& s3_access_key_id  = access_key_id ? *access_key_id    : opts_.s3_access_key_id;
        auto& s3_secret_key     = secret_key    ? *secret_key       : opts_.s3_secret_key   ;
        auto& s3_auth_region    = auth_region   ? *auth_region      : opts_.s3_auth_region  ;

        auto key = make_tuple(s3_endpoint, s3_access_key_id, s3_secret_key, s3_auth_region);
        auto it = s3cache_.lower_bound(key);
        if (it == s3cache_.end() || it->first != key)
            it = s3cache_.emplace_hint(it, key, Aws::S3::S3Client(Aws::Auth::AWSCredentials(s3_access_key_id, s3_secret_key),
                                                                  awsClientConfiguration(s3_endpoint, s3_auth_region, opts_.s3_request_timeout_ms, opts_.s3_connect_timeout_ms, opts_.s3_max_connections)));
        return it->second;
    }

As you see -- after all is done, I could end up with "global statics" not being initialized even though I have live instances of S3Client in cache. I think my crashes happen when during destruction of this cache.

@marcomagdy What cmake cmdline I should use to build the same binary as one you publish in nuget? I tried different combinations -- every time I end up with dll size that differs from dll in nuget package.

Caught it -- same problem as #781
>	aws-cpp-sdk-core.dll!Aws::External::tinyxml2::StrPair::GetStr() Line 199	C++
 	aws-cpp-sdk-core.dll!Aws::External::tinyxml2::XMLNode::Value() Line 635	C++
 	aws-cpp-sdk-core.dll!Aws::Utils::Xml::XmlNode::GetName() Line 59	C++
 	aws-cpp-sdk-core.dll!Aws::Client::XmlErrorMarshaller::ContainsError(const Aws::Http::HttpResponse & httpResponse) Line 124	C++
 	aws-cpp-sdk-s3.dll!Aws::S3::S3Client::DoesResponseGenerateError(const std::shared_ptr<Aws::Http::HttpResponse> & response) Line 2801	C++
 	aws-cpp-sdk-core.dll!Aws::Client::AWSClient::AttemptOneRequest(const Aws::Http::URI & uri, const Aws::AmazonWebServiceRequest & request, Aws::Http::HttpMethod method, const char * signerName) Line 295	C++
 	aws-cpp-sdk-core.dll!Aws::Client::AWSClient::AttemptExhaustively(const Aws::Http::URI & uri, const Aws::AmazonWebServiceRequest & request, Aws::Http::HttpMethod method, const char * signerName) Line 174	C++
 	aws-cpp-sdk-core.dll!Aws::Client::AWSClient::MakeRequestWithUnparsedResponse(const Aws::Http::URI & uri, const Aws::AmazonWebServiceRequest & request, Aws::Http::HttpMethod method, const char * signerName) Line 341	C++
 	aws-cpp-sdk-s3.dll!Aws::S3::S3Client::GetObject(const Aws::S3::Model::GetObjectRequest & request) Line 1441	C++

To summarize:

AWSClient ctor/dtor call InitializeGlobalStatics/CleanupGlobalStatics(), but (if you copy/move S3Client object) generated copy ctor -- doesn't.
I believe InitializeGlobalStatics/CleanupGlobalStatics() is not good and has races in it. My suggestion is to stay away from lockless programming -- it is exceptionally tricky (and AWS SDK switches off exceptions :) )
I would appreciate if someone tell me cmake line used by official nuget build -- to be able to build same binaries locally (with debug symbols).

Thank you.

Fixed in 1.4.55
see 832c839 for more details.

This fix isn't good -- there are still race conditions here. For example, imagine a case of two threads calling AWSClient ctor and the first one (one that observed s_refCount++ == 0 being true) is preempted (or suspended) for a long time. Second thread will happily continue and eventually crash because global state isn't initialized (even though s_refCount is > 0).
Similarly, there is a race between dtor and ctor.

Whoops, that’s embarrassing. We’ll get that fixed. Thanks for spotting it.

@crusader-mike can you take a look at https://github.com/aws/aws-sdk-cpp/pull/879 see if I missed a use case?

Nope. You can't use atomic variable here to properly protect global state (unless your entire state is atomic variable). Think about it -- for other threads at any point in time there should be only two observable states: "s_refCount == 0 and global state is completely unitialized" and "s_refCount != 0 and global state is completely initialized". You are guaranteed to break this invariant by modifying s_refCount and global state separately (from other thread perspective). You have to use mutex here to "merge" these modifications into one (in eyes of observers).
P.S. I am probably repeating myself -- but stay away from lockless programming unless you are ready to sink significant time into it. Even if you get to the point when you can comfortably write such code -- necessary knowledge will take so much space in your brain that it will probably squeeze out most of other C++-related stuff :)

I think I'll take @singku's suggestion and initialize this container in Aws::init. This whole ordeal was about trying to optimize that container so that it doesn't grow unbounded. But that reasoning is not strong enough to complicate the constructor's logic (and definitely doesn't warrant a mutex).

stay away from lockless programming unless you are ready to sink significant time into it.

I appreciate your concern. But if I'm going to stay away from hard programming paradigms, I might as well go program in JavaScript or Ruby 😄.
But in all seriousness, I usually have my race-conditions covered well, and we have good engineers on the team that catch the things I miss. But obviously this case is an exception. I dropped the ball, but I'm glad you caught it.

It isn't just a concern -- I think every time I stumbled upon an atomic variable in SDK code there was a race condition nearby.
You can achieve similar effect using static variables or std::call_once -- though afaik they are implemented using mutex.
Yes, moving this into AwsInit sounds like a good idea.
atomic variables isn't necessarily better than mutex -- each atomic variable has a "mutex" associated with it (google MESI protocol) and price of using it grows with number of processors in your system and gets especially bad on modern servers (due to NUMA). A lot of wait-free algorithms turned out to be slower than straightforward mutex-protected code simply because with mutex you pay this price only twice (lock + unlock) but with atomic variables -- on every access.
If you are interested in lockless programming I suggest reading/watching these:

there were two presentations Herb Sutter did about C++11 memory model -- it should not be hard to find them in google. Don't trust everything he says, though -- I think there were few mistakes made :)
Memory Consistency Models for Shared-Memory Multiprocessors -- afaik this is a foundation on which current Java/C++ memory model is built on. It is pointless to learn everything in this paper, but it makes sense to familiarize yourself with it.
ABA problem
Futexes are tricky
Wait-Free Synchronization
A methodology for implementing highly concurrent data objects

luckless™ code is amazing for generating cognitive load, lol. And sometimes it takes people years to realize that "it broke".

simply because with mutex you pay this price only twice (lock + unlock) but with atomic variables -- on every access.

That is not true. An atomic read of register-wide variables, like pointers and integers (at least on x86) is simply a memory load. Locking a mutex is a system call.

My low-lvl x86 is a bit rusty, but I am sure there is a fence on read -- even if you don't observe in generated asm because x86 is naturally consistent (and acquire-read is just a read), it still exists on higher level (compiler can't reorder certain things around it).
Also, afaik, on modern systems locking mutex is system call (or better to switch to kernel mode) only if you have to wait. Grabbing mutex that isn't locked is inexpensive. In pre-futex times on Linux mutex was expensive, yes.

Unfortunately I’ve had to read a ton of clang and llvm source code lately and pthread_mutex using the fast mutex init is only a system call under contention. The same is true for SRWLocks on windows... std::mutex simply calls into those apis.
The days of critical sections and full mutex objects on windows are, thankfully, behind us..

Also, fwiw, you’re screwed on ARM, SPARC, and PowerPC regardless of which you use.

@JonathanHenson Are you referring to this or the fact that on these platforms memory model is more relaxed than C++11 model (which means you can't use C++ to squeeze the maximum performance-wise)?

Small note: since you've left ~AWSClient() in place it probably makes sense to add move ctor and op=? E.g. smth like AWSClient(AWSClient&&) = default;. Not sure if this will force you to do the same for copy ctor/op=.

I have to leave the dtor so it can be marked as virtual. I did have a defaulted copy/move ctors and move operators, but the code failed to build on VS2013, which unfortunately we still support. It is by far the worst C++11 compliant compiler.

Yeah, VS2013 was rough around the edges... Can you work around that like this:
struct goddamitbill { virtual ~goddamitbill() = default; };

class AwsClient : public goddamitbill { ... };

?


⬆ Support RxSwift 6.0.0

Updated to RxSwift 6.0.0 and RxDataSource 5.0.0 resulted in the function of modelCentered and modelSelected not working properly and the outOfBounds error being emitted.
The syntax of try self.model(at: $0) was determined to have failed in modelCenter and was modified.

Cloud you please update RxSwift to 6.0 @arnauddorgans 🙇

You need to update InfiniteLayout.podspec too

merged https://github.com/arnauddorgans/InfiniteLayout/pull/30


newlayout DVS 0.6.3 chinese community feedback

https://bitsharestalk.org/index.php?topic=13998.msg182257#msg182257

I went through some of those and fixed a couple, but some aren't actual bugs:
3: The client already does that, at least on my end
5: Fixed
8: Fixed by yourself in backend
9: Simply due to using DVS
10: Fixed

#1 Fixed
#2 Probably this needs to be checked on the toolkit's side
#3 I think this was because of missing tranlation
#4 Created separate issue for this - #577
#5 Fixed by svk
#6 Hope this is fixed by #5
#7 Needs more research (not critical)
#8 Fixed (hardcoded)
#9 -
#10 Fixed


Need fastlane Update.

I would like to integrate the latest version of fastlane, which includes the necessary fix for authenticating with Apple using an Apple ID. The latest version addresses the following issue, as mentioned in the fastlane release notes:
"Apple has started adopting their own SRP (Secure Remote Password) method using SHA-256 and 2048-bit hashing in the sign-in flow. If you are using a previous version of fastlane, you may receive a '503 Service Temporarily Unavailable' response when authenticating with an Apple ID."
fastlane new release.
https://github.com/fastlane/fastlane/releases/tag/2.225.0
related issue.
https://github.com/bitrise-steplib/steps-xcode-archive/issues/362

Since it seems that action has already been taken, I will close this.
https://github.com/bitrise-io/go-xcode/commit/834b0ff07ee66b312b5a015d3bc21e56a155e308


Use absolute path for rootfs in OCI config.json

This avoid an extra bind mount within /var/run/docker/libcontainerd
This should resolve situations where a container having the host
/var/run bound prevents other containers from being cleanly removed
(e.g. #21969).
Signed-off-by: Kenfe-Mickael Laventure<EMAIL_ADDRESS>
This is technically making docker non OCI compliant, but then again runc allows it currently :).
There's also an open issue for fixing the spec at opencontainers/runtime-spec/issues/389

ping @tonistiigi @crosbymichael

after discussion with @tonistiigi I put back the umount for the old rootfs bind mount to account for installations that will get upgraded without going through a clean daemon shutdown :cry:

LGTM

LGTM, but this means we aren't compliant with the OCI spec unless the spec gets updated.

NOT LGTM if it make us violate OCI.
Let's change OCI first.

@mlaventure can you open up a PR in OCI for this? I think I've seen some other people ask for the path even be outside of the bundle dir so allowing for it to be absolute would align with what those folks want.

@duglin Far more concerned with fixing a real bug than adhering 100% to a pre-1.0 spec.

@mlaventure sorry - I missed that there's already an issue for it, perhaps you could submit a PR to close that issue? Should be easy.

@cpuguy83 the problem is that docker advertises that other OCI compliant runtimes can be plugged in - if we put an absolute path in there instead of a relative one then some other runc variant might not work.
I should a quick/easy fix on the OCI side of things.

@duglin opencontainers/runtime-spec#394

@mlaventure thanks!

Removed my objection. thanks @mlaventure for the quick turn around.


Dockerized TestCafe creates screenshot images to volume with incorrect permissions

What is your Test Scenario?
Run official testcafe docker image with screenshots activated.
Testcafe options:
--screenshots-on-fails true
--screenshots /tests
--screenshot-path-pattern '${DATE}-${TIME}-${TEST_INDEX}-${USERAGENT}-$
What is the Current behavior?
Screenshots created to /tests folder (a volume mapped to docker host) cannot
be removed without sudo. This a problem in Jenkins environment, because workspace
cleanup fails due to missing permissions.
What is the Expected behavior?
Normal user (without sudo) can delete generated screenshot images from the volume.
What is your web application and your Testcafe test code?
This is generic problem.
Steps to Reproduce:
Run any testcafe tests with docker image and output screenshots to docker host volume.
Try to remove screenshot images without sudo.
Your Environment details:
Linux\docker.

It's a restriction of permission management in Docker volumes. Your host machine and the Docker container use different user IDs when accessing files in a volume with your screenshots. You can add a user account with user ID 1000 to your host machine with the following command and use it when working with Docker:
useradd -u 1000 docker-user

Or you can call the process.umask(0777) function in a fixture.before hook to allow removing your screenshot files with any user ID.

Ok, thanks for quick response.

You're welcome 😄

This did the needed trick in fixture hook: process.umask(0o000).

Thank you for correcting the mask, I've updated the original post to include it.


Added a README.md

This is in reference to https://github.com/Lab41/PoseidonML/issues/24, issue #24


Intermittent failure to connect to S3 with credentials issue

This issue occurs randomly and has done for a long time (i.e. not been introduced to my knowledge by recent changes to 5.1 or 5.2), and not very often, making it difficult to troubleshoot.  Training works fine for hours (perhaps days), and then  robomaker exits.
For example this one happened 960 episodes in, you can see it's working and then suddenly it's not.  Instance uses an IAM Instance Profile with full access to S3 (if permissions were an issue it'd fail immediately) : -

Seems this is an issue not limited to DRfC, but is seen by other users doing other things: -
https://github.com/boto/botocore/issues/2117
https://github.com/rom1504/img2dataset/issues/137
There's a suggestion increasing var 'AWS_METADATA_SERVICE_NUM_ATTEMPTS' could work, as we might be getting throttled: -

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-data-retrieval.html

So two possible workarounds:

Add normal AWS IAM credentials
Add the environment variable into docker/docker-compose-training.yml

I'll work on 'Add the environment variable into docker/docker-compose-training.yml' and see what happens, as long as it doesn't introduce new issues it should be safe to merge as adding static creds to instances isn't aws best practice and is actively discourage for security.

are there any commands in the containers that would be getting the creds specifically, or is it just background stuff the instance is doing?

should be fixed by https://github.com/aws-deepracer-community/deepracer-for-cloud/pull/175


[WIP] change torch.mm to torch.einsum to avoid OOM

Change torch.mm to torch.einsum to avoid OOM:
before change, mAP: 0.331
inter_matrix = torch.mm(flatten_masks, flatten_masks.transpose(1, 0))

after change, mAP: 0.331
inter_matrix = torch.einsum('ik, kj -> ij', flatten_masks,  flatten_masks.transpose(1, 0))

Close: https://github.com/open-mmlab/mmdetection/issues/6908

I would like to know how much memory does torch.einsum can save?

I would like to know how much memory does torch.einsum can save?

I have written a script to check this. I initialize a torch.Tensor with size (456, 60800), and process 2,000 iter (warmup 500 iter).
inter_matrix = torch.mm(flatten_masks, flatten_masks.transpose(1, 0))
inter_matrix = torch.einsum('ik, kj -> ij', flatten_masks, flatten_masks.transpose(1, 0))

torch.mm
torch.einsum

process time (s)
4.69856
4.5713

GPU memory  (MiB)
807
807


Empty workflows

Hello,
I am trying to understand why my "Workflows" pane is empty.
I've generated PAT, assigned repo and workflow. I have opened project, containing .github folder, which in turn has number of functioning .yml files.
What else I should do to see something in "Workflows" pane?

Does your local clone of your repository has an origin remote that points to github.com?

I believe so
$ git remote -v
origin  git@github.com:acidos/test.git (fetch)
origin  git@github.com:acidos/test.git (push)

https://github.com/cschleiden/vscode-github-actions/issues/43#issuecomment-692538980


triangle: Ensure no pair of triangle types are equal

As reported in #207, the triangle tests can be solved by a trivial empty
implementation that simply sets all four triangle types equal to one
another. We should prevent false positives, and we can do so by checking
that Equ != Iso, etc.
I verified that 1) the trivial solution fails the new test, and 2) the
example solution passes the test.
Fixes #207

This looks good to me.


Update

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Fits CONTRIBUTING.md.

Please don't open bogus pull requests. This is a waste of other people's time.


Merge KKK and Meist

Wouldn't hurt to add the full names of the two contact persons below the photos to https://opendata.riik.ee/kontaktid/


Add keybind to swap flick direction

Duplicate of #10 (the previous PR had / in the branch name which caused github action to fail).
You can press "F" to swap the direction of selected flick objects.

Thanks very much for your PR