Aelius tweaks

I've followed this guide and hit a few problems along the way- I've also some insight to contribute.
I've included here the low hanging fruit, but for my other suggestions I think we'd need a place to discuss how to make the changes.
For example, the guide suggests disabling GameMode, as well as SpeedShift and SpeedStep.
But this is dubious advice. Some of the sources linked explicitly advise against this.
Moreover, GameMode overrides them and pins the processor to its max frequency when a game is detected. GameMode also inhibits various services from running (indexer, windows update). Not having GameMode is a detriment in of itself, and having GameMode eliminates the potential benefit of disabling SST and EIST.
Additionally, it is suggested in the BIOS guide to disable RGB, but no reason is given for this. What performance implications does RGB have? I would be fascinated to learn about that, and it would be prudent to link the sources for this claim so others may learn about it as well.
But if no benefit exists, then the suggestion does not belong in the guide.
Thanks for the work thus far

Running a RGB effect/animation can take a great toll on the MCU. It requires a lot of processing power and will delay other processes.

It seems plausible for a keyboard using one MCU to share data transfer and run this logic, but can you demonstrate that a motherboard is sharing resources to run its RGB?

The same logic can be applied to a motherboard in the sense that unnecessary power will be drawn which may lead to increased heat output and EMI. Although it may be minuscule, there are many people that prefer to avoid this nuisance when tuning their system.

The premise for this guide is evidence-based facts, not unsubstantiated potential maybes.

I edited my previous response to be less grumpy.
For context, what motivated me to read and contribute to this guide is exactly the evidence based nature of it.
Plausibly beneficial changes are functionally superstition, and superstition can snowball into pure pseudoscience. See the audiophile community, and most "increase fps" discussions found on reddit and youtube.
Sticking to what can be demonstrated is a worthy goal.

Thanks for the feedback so far and AMIT for commenting.
Disabling RGB

RGB and related power sources have been known to cause audio interference but it "depends". Then there's situations like Corsair iCUE which previously required their software to be running all the time to control it, less software running the better. I'd be ok with stating something along those lines that "you may enable RGB after all optimizations and testing have been complete, then test again for impacts to your benchmarks and experience". Generally the fewer the variables the better.

Flow Control

Works similarly to TCP Window Size by notifying a transmitter to reduce or to delay sending data being sent, it requests a system to buffer data temporarily until congestion is reduced or the receiver can allow it. There's other things at play here as well to handle congestion built into operating systems and routers.
Intel recommends disabling Flow Control here but indicates you could drop packets as a result, likely under extreme load.

https://www.intel.com/content/www/us/en/support/articles/000005811/ethernet-products.html

https://blog.cloudflare.com/how-to-achieve-low-latency/

"flow control [...] it can introduce unpredictable latency spikes during higher load"

Many games rely on UDP which is a connectionless protocol, send and hope it gets there. No guarantees anyways.
When playing competitively ideal conditions would be playing on an unsaturated local network over the internet. Turn off other network devices for best case for localized variables. QoS or packet priority scheduling algorithms can help with higher throughput networks if you have no control of network usage. fq_codel, cake etc. Bufferbloat problem.
For Flow Control to work, connected routers, and devices must also support it and have it enabled.

NVIDIA Recommendations

I'll review more closely but could be reasonable to update it as suggested. No ETA right now.

SpeedShift and SpeedStep (EIST)

These are power saving and efficiency features to manage voltage and frequency based on workload, one implemented in hardware the other software.
Typically the concern here is transition times between those states could impact performance in comparison to a static voltage and frequency configuration.
"Some of the sources linked explicitly advise against this" feel free to provide reference and refresh my memory.

GameMode

It has some benefits but often those benefits are taken care of by careful optimizations, disabling windows updates and background processes which may also cause notifications.
You can use Windows Performance Recorder and Analyzer to see when GameMode is engaged, I haven't done much testing around it personally but it seems more useful for casual gamers than competitive with optimized systems. Feel free to add more context if you have some references.

Steam Path Anti-Virus Exclusion

Thanks, yes pros and cons to this one, I can revisit.

I haven't done much testing around [Game Mode] personally but it seems more useful for casual gamers than competitive with optimized systems

I have indeed been approaching this as more of an end user, I definitely agree that a specific purpose use machine doesn't need to keep EIST and SST enabled. I also don't have further specifics of what game mode does at this time, and agree that it represents potential behavioral uncertainty, particularly as updates change its behavior in the future.

For some reason at the time I wrote the commit I generalized "streaming video".
The specific impact that I observed was to game streaming, which I make use of over LAN. I recognize that the guide recommends disabling this in Steam.
I use Sunshine Game Stream (the foss replacement server to nvidia gamestream) and Moonlight as my client. With flow control disabled on the host, packet loss was so high no stream could be transmitted, unless I restricted the bitrate such that bandwidth did not exceed 5mbps.
I suspect this would also impact streaming from OBS to twitch or youtube or other.

I use Sunshine Game Stream (the foss replacement server to nvidia gamestream) and Moonlight as my client. With flow control disabled on the host, packet loss was so high no stream could be transmitted, unless I restricted the bitrate such that bandwidth did not exceed 5mbps.

Thanks for adding context! Btw can you tell me more about your network, ISP up/down speed, any QoS (in Windows/Router etc?), are all systems involved 1000Gbps? Do you have double NAT, Internet <-> ISP (NAT) <-> Personal Router (NAT) <-> Desktops?

I (near) exclusively stream in-LAN, using it primarily as an RDP alternative.
My typical bandwidth needs are 20mbps, and the host PC is wired but the clients are often wireless.
I observed the issue from two laptops and my phone, and I do not have QoS enabled on any computer or the router, which is an Edgerouter X paired with U6-IW.
Keeping in mind the problem was a direct connection over (W)LAN, and Flow Control off unambiguously led to a severe and un-ignorible plummet in performance:
I have 300mbps down, 50mbps up, conventional single NAT, and the host PC is regrettably on a 100mbps link.

What about something like this?
 * Disabling this can cause dropped frames in some situations which can reduce throughput if a link partner cannot sustain the data transfer rate, link partners must support flow control frames for the feature to work.
 * See Technical Reference: Tuning Throughput Performance for Intel® Ethernet Adapters.

@AeliusSaionji just looking for final changes on this, see recommendation ^. Once we're good I can finalize the full pull or I can pull the other two short term.

Disabling this can cause dropped frames in some situations which can reduce throughput if a link partner cannot sustain the data transfer rate, link partners must support flow control frames for the feature to work.

I think the way this reads is confusing, because you transition from speaking about the disabled state to speaking about the enabled state (?) rather subtly. Drawing more attention to the state we're referring to would make it more clear:

Disabling can cause...
When enabled, partners must also support...

I do also thing it's worth explicitly stating that "some situations" includes "live streaming and remote access". There's a lot this could impact, but it would be broadly useful to give an example of what kind of traffic is definitely affected, and how severely.
Live streaming and (moonlight) remote access are also gaming adjacent activities; the incompatibility is something many will probably want to know.
How about this?
* Disabling this can cause dropped frames in some situations, reducing throughput
if a link partner cannot sustain the data transfer rate. In particular, video
streaming may become untenable.

* If enabled, only link partners supporting flow control frames will benefit.

* See Technical Reference: Tuning Throughput Performance for Intel® Ethernet
Adapters

Works for me :D

@AeliusSaionji just make those changes to your pull request and I'll accept.


Basic code to deploy Azure gateways

This is a basic deployer of Azure gateway using MachineSet, it will be
further extended.
Signed-off-by: Mike Kolesnik<EMAIL_ADDRESS>

@aswinsuryan will work on this, but will likely create a fresh PR. Closing for now.


Vendoring libnetwork @e8431956

Fixes an issue with starting containers after upgrade from 1.12.x to 1.14-dev
Fixes [docker 30295] (https://github.com/docker/docker/issues/30295)

Signed-off-by: Santhosh Manohar<EMAIL_ADDRESS>

LGTM
@sanimej since this changes the ExtDNS type from extDNSEntry back to string, can you pls confirm how this will impact existing developer environment that runs previous versions of 1.14.0-dev and upgrading to a version after this PR is merged. am more curious if this will impact just the existing containers or will it impact also the daemon restartability if there are restartable containers ?

This is the counterpart on master for https://github.com/docker/docker/issues/30467, correct?

@thaJeztah yes and more fixes that are specific to master

@mavenugo daemon will come up ok. But you have to delete the existing networks and recreate it. This is only if you are moving from a older 1.14-dev to the latest.


Adds more dns record types

I encountered a crash in the following situation.
I have php-dns running on one server. On another server that resolves via the first, I run apt-get update. On the first server, php-dns crashed with the error:
"Undefined index: DNS_SRV" in file "/usr/lib/php-dns/vendor/yswery/dns/src/RecursiveResolver.php" on line "48"

I added to the dns answers all the records that are mentioned in the (PHP documentation)[https://secure.php.net/manual/en/function.dns-get-record.php] but were missing from php-dns.

Coverage remained the same at 68.151% when pulling 195e01c01fde9b9c97881ca0cb14b8361618ade4 on tterranigma:records into 9a2d851d824ef12da9daf6cc2a6b7bea8cb96024 on yswery:master.

Coverage remained the same at 68.151% when pulling 195e01c01fde9b9c97881ca0cb14b8361618ade4 on tterranigma:records into 9a2d851d824ef12da9daf6cc2a6b7bea8cb96024 on yswery:master.


Define and capture KPIs for Design System

What
The team is working with a performance analyst to build a performance framework for the Design System. This framework will help us define what key performance indicators we need measure to meet our users' need and us make more data driven decisions about our priorities.
Stories

[x] Setting up a performance framework https://github.com/alphagov/govuk-design-system/issues/1340
[x] Decide which KPIs to measure and data source
[ ] https://github.com/alphagov/design-system-team-internal/issues/353
[ ] https://github.com/alphagov/design-system-team-internal/issues/354
[ ] https://github.com/alphagov/design-system-team-internal/issues/355
[ ] https://github.com/alphagov/design-system-team-internal/issues/356
[ ] https://github.com/alphagov/design-system-team-internal/issues/357
[x] https://github.com/alphagov/design-system-team-internal/issues/358
[ ] https://github.com/alphagov/design-system-team-internal/issues/359
[x] https://github.com/alphagov/design-system-team-internal/issues/361
[ ] https://github.com/alphagov/design-system-team-internal/issues/363
[ ] https://github.com/alphagov/design-system-team-internal/issues/367
[x] https://github.com/alphagov/design-system-team-internal/issues/368
[ ] https://github.com/alphagov/design-system-team-internal/issues/369
[ ] https://github.com/alphagov/design-system-team-internal/issues/370
[ ] https://github.com/alphagov/design-system-team-internal/issues/371
[ ] https://github.com/alphagov/design-system-team-internal/issues/372
[ ] https://github.com/alphagov/design-system-team-internal/issues/373

Reviewing Design System KPI now that we have a PA on the team. Will be replaced with a number of other epics.


Improve the Setup Process in the README

Description of Changes

Under the "Getting Started" section in the README, the setup instructions need more detail. The entire process is laid out nicely here and it would be beneficial to have this laid out directly in the README. By having this information directly located in the README, it will make the setup process much easier for new contributors.
Create a new AUTHORS.md file to contain the authors section currently found in the README. This will help with the readability of the README.
Specify what each technology found in the "Built with IBM and Open Source technologies" section will be used for. This will help new contributors understand what they need to install based on what they want to contribute to the project. Ex. If someone simply wants to contribute to the UI, explain which technologies they will need on their local system.

Hello,
I can help with that


DocsArchive-<IP_ADDRESS>Auto archive content

Auto archive content from https://github.com/OPS-E2E-PPE/docs-archive-test-source

Docs Build status updates of commit ab4baff:
:clock10: Pending: waiting for processors (8 builds ahead of you)
:warning: Docs Build is busy, currently there are 8 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit ab4baff:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error]

Cannot sync git repo to specified commit because branch Release_Archive_master_2020-02-19-09-52-55 has been deleted or has been force pushed: fatal: couldn't find remote ref refs/heads/Release_Archive_master_2020-02-19-09-52-55

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Feature/libcir 40

Merged in command line
https://github.com/umd-lib/mdsoar/commit/39a3f02126924286dd271b52a45196ec78e925ec


Ignore end-of-line comments when dirtying if-with-same-arms branches

Summary
Closes https://github.com/astral-sh/ruff/issues/6025 (which contains a more thorough description of the issue). Previously, the # noqa here was being marked as unused, but removing it raised SIM114:
def foo():
    a = True
    b = False
    if a > b:  # noqa: SIM114
        return 3
    elif a == b:
        return 3

I'm experiencing the same with S404. Is this known?


Make .btn in .btn-toolbar float:left too

Fixes #16276.

:shipit:

Unfortunately, this "fix" breaks the layout of our applications.

Sorry about that. Not much we can do given CSS's nature—a single property can work for some folks and not for others. Hope the fixes on your end aren't too intense <3.

@mdo Should this same change have been made in v4-dev? I'm still seeing btn-group in a btn-toolbar floating to the left of a preceding button in V4: https://github.com/twbs/bootstrap/blob/6e7d450/scss/_button-group.scss#L41


Update aesxor.cc

[../seifnode-master/src/aesxor.cc:91]: (error) Shifting 32-bit value by 56 bits is undefined behavior
Found by https://github.com/bryongloden/cppcheck

@bryongloden, Thanks for running cppcheck! The function that the check is complaining about is an internal helper that converts 64bit numbers to bytes. Since its only being used internally, we expect the function to not deal with 32bit numbers. But strictly speaking yes we can make sure that we only process if the iterator is pointing to a int64 value type.


Removed ellipsis from readme.rst

Coverage remained the same at 81.2% when pulling 156494ac833bb006c88e45929a69734326ad338a on VijayGomathi:removing_ellipsis into 2e61b71dfceaa62b5bd2e355ecb0c86421c5dbbf on mayn:master.

@VijayGomathi please update your description to reference the issue you are fixing. (this helps keep everything orderly)
Thanks!


Built-In Workflow Approval - error when referencing page from extension

We have an extension that works with the built-in Workflow approval. When an approval request exists, the approval list looks up the caption of the page to review the record. Since Object is not aware of the extension tables, the code below in table 454 - Approval Entry cannot find the page caption. I changed the code as shown in a test environment to get around the problem temporarily.
RecordCaption() : Text
IF NOT RecRef.GET("Record ID to Approve") THEN
EXIT;
PageNo := PageManagement.GetPageID(RecRef);
IF PageNo = 0 THEN
EXIT;
//Changed to work with Extension objects
//Object.GET(Object.Type::Page,'',PageNo);
//Object.CALCFIELDS(Caption);
//EXIT(STRSUBSTNO('%1 %2',Object.Caption,"Document No."));
AllObject.GET(AllObject."Object Type"::Page, PageNo);
EXIT(STRSUBSTNO('%1 %2',AllObject."Object Caption","Document No."));

Thank you for reporting this issue. I actually think, this issue should be resolved in the platform, rather than in the app. Just like the AllObj table contains extension objects, so should the Object table. I have created a bug for the platform team and will await their feedback.

I received reply from the platform team and the behavior is "By Design" as the Object table is available to multiple tenants and it hence can't disclose which extensions are installed on given tenants. I will hence go though our application code and identify all places, where we need to change this. Most places should have  been fixed, but it would appear we're missed at least one spot. Thanks again for reporting!

I haven't found a suitable solution yet. The one I think you suggest won't work, as the AllObj table only contains object names, which are always in English, whereas captions are translated. Your sample code does state AllObject."Object Caption" though, which I can’t seem to find anywhere. Which table are you referring to?

Thank you for your suggestion. I had a little problem finding which table you were referring to, but I assume it's record<PHONE_NUMBER> - "AllObjWithCaption", which does the trick nicely. I will fix the code as you suggest. Thanks again!


init() takes at least 3 arguments. (3 given)

TypeError at /users
__init__() takes at least 3 arguments (3 given)
Request Method:	GET
Request URL:	http://localhost:8000/users
Django Version:	1.7.4
Exception Type:	TypeError
Exception Value:
__init__() takes at least 3 arguments (3 given)
Exception Location:	/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework_mongoengine/serializers.py in get_fields, line 304
Python Executable:	/home/daipeng/Desktop/tmp/django-rest/env/bin/python
Python Version:	2.7.3
Python Path:
['/home/daipeng/Desktop/tmp/django-rest/env/stime4',
 '/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/django_rest_swagger-0.2.8-py2.7.egg',
 '/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/PyYAML-3.11-py2.7-linux-x86_64.egg',
 '/home/daipeng/Desktop/tmp/django-rest/env/lib/python2.7',
 '/home/daipeng/Desktop/tmp/django-rest/env/lib/python2.7/plat-linux2',
 '/home/daipeng/Desktop/tmp/django-rest/env/lib/python2.7/lib-tk',
 '/home/daipeng/Desktop/tmp/django-rest/env/lib/python2.7/lib-old',
 '/home/daipeng/Desktop/tmp/django-rest/env/lib/python2.7/lib-dynload',
 '/usr/lib/python2.7',
 '/usr/lib/python2.7/plat-linux2',
 '/usr/lib/python2.7/lib-tk',
 '/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages']
Server time:	Fri, 6 Feb 2015 05:21:12 +0000
Traceback Switch to copy-and-paste view

/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/django/core/handlers/base.py in get_response
                response = response.render() ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/django/template/response.py in render
            self.content = self.rendered_content ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework/response.py in rendered_content
        ret = renderer.render(self.data, media_type, context) ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework/renderers.py in render
        context = self.get_context(data, accepted_media_type, renderer_context) ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework/renderers.py in get_context
        raw_data_post_form = self.get_raw_data_form(data, view, 'POST', request) ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework/renderers.py in get_raw_data_form
                content = renderer.render(serializer.data, accepted, context) ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework/serializers.py in data
        ret = super(Serializer, self).data ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework/serializers.py in data
                self._data = self.get_initial() ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework/serializers.py in get_initial
            for field in self.fields.values() ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework/serializers.py in fields
            for key, value in self.get_fields().items(): ...
▶ Local vars
/home/daipeng/Desktop/tmp/django-rest/env/local/lib/python2.7/site-packages/rest_framework_mongoengine/serializers.py in get_fields
            ret[field_name] = field_cls(**kwargs) ...
▶ Local vars

It seems it's related to Decimal Field. Will try to fix this soon

Any updates on this fix?
Thanks

Please provide the code that you run.
If it's relatd to Decimal, it should work now.


Customising HTTP Headers

I'm using the express graphql connector to build the public interface for our application.
One thing that would be ideal in the web UI would be to specify custom HTTP Headers that get sent with requests.  For example I would like to set the following manually after doing an auth request:
Authorization: xvI8GX8Kb2rzBsusHztC9GeEZ76TI9XKLpCWr9NqDUZqgWwNvD2gfMOJnlJoPzwE
This HTTP header in turn gets passed (possibly via setting a RootValue) to our loopbackjs backend for authenticated requests.

Hey @MarkAndrewJohnson - would it be possible for you to define a custom graphQLFetcher? If you look at how our /example is set up, we use express-graphql but we define/render our own graphQLFetcher/GraphiQL component, and in the fetcher is where you can define network configurations as you like. I can point you to this [example] (https://github.com/graphql/graphiql/blob/master/example/index.html).

Often, when your GraphQL endpoint is behind a authorization feature like this, it is common to expose the GraphiQL tool via a different endpoint on your server.

For some more information, #59 and #96 discuss about this.

I will checkout those references, thanks.

I mustn't have seen those two since they were closed, so will mark this as such as well.

@MarkAndrewJohnson
Hello I've implemented the feature you've requested
Here are the links to the library files:
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Here is a simple example of how to use it:
https://github.com/Durisvk/graphiql
It's really simple, you don't have to do almost any changes to your current running app.
And it's also available on NPM: https://www.npmjs.com/package/graphiql-custom-headers
This is how it looks like: http://imgur.com/a/3VQDT
I've also implemented it already to my project: https://github.com/Durisvk/senegraph
so it's already available on HapiJS servers. Somewhere in the future I would like to implement it also on Express. Maybe you could help me out with this.
Hopefully you'll like my solution @MarkAndrewJohnson  ...

Any updates? I can't see this feature in the latest release.

@shtse8: It's not in the latest release nor on the master branch because no PR for it was merged. As @asiandrummer linked above, the relevant discussion is in #59 or #96.

@shtse8 You can use https://github.com/imolorhe/altair with custom headers as well if you don't want to customize your GraphiQL implementation, although that shouldn't be much of a challenge either.


Unable to use commands in game (eg. check status)

Hi Sebastien,
So I installed everything according to how it was mentioned in the documentation, the only thing I did not get was (highlighted in bold),
"The trainer is not loaded : are you sure you are running the proper EFT instance? you can double check with the file %LOCALAPPDATA%Low\Battlestate Games\EscapeFromTarkov\output_log.txt, search for an installation path (often along with Fallback handler could not load library errors). Perhaps you forgot to update your shortcuts to server.exe/launcher.exe files."

Am using installer v_1.3 (latest), Game directory is "E:\Escape from Tarkov", Game version is <IP_ADDRESS>.12893 Beta.
Any help would be appreciated.

After checking the output_log.txt file,
output_log.txt
I can see that the game directory it is showing is "E:\GameLibrary\Escape from Tarkov\EscapeFromTarkov.exe",
but my game is located in "E:\Escape from Tarkov\EscapeFromTarkov.exe"
How do I update the game directory it is trying to pull from ?

I did a quick google search and found it, but thanks anyways for this.


Macos 10.13.5 mongodb compile failed ...

Ruby installation found @
/usr/local/bin/ruby

Checking Home Brew installation
Home Brew installation found @
/usr/local/bin/brew

Checking dependencies.
Checking automake ... 		 automake found
Checking Libtool ... 		 Libtool found
Checking OpenSSL ... 		 OpenSSL found
Checking llvm ... 		 llvm found
Checking wget ... 		 wget found
Checking CMake ... 		 CMake found
Checking GMP ... 		 GMP found
Checking gettext ... 		 gettext found
Checking MongoDB ... 		 MongoDB found
Checking Doxygen ... 		 Doxygen found
Checking Graphviz ... 		 Graphviz found
Checking LCOV ... 		 LCOV found
Checking Python3 ... 		 Python3 found

No required Home Brew dependencies to install.

Checking boost library installation.
Boost 1.67.0 found at /usr/local.

Checking MongoDB C++ driver installation.
Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   617    0   617    0     0    427      0 --:--:--  0:00:01 --:--:--   427
100 6193k  100 6193k    0     0   196k      0  0:00:31  0:00:31 --:--:--  295k
-- The C compiler identification is ;AppleClang <IP_ADDRESS>20039
-- Check for working C compiler: 	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: 	/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
  -- Using bundled libbson
libbson version (from VERSION_CURRENT file): 1.10.2
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian
-- Looking for snprintf
-- Looking for snprintf - found
-- Looking for reallocf
-- Looking for reallocf - found
-- Performing Test BSON_HAVE_TIMESPEC
-- Performing Test BSON_HAVE_TIMESPEC - Success
--     struct timespec found
-- Looking for gmtime_r
-- Looking for gmtime_r - found
-- Looking for rand_r
-- Looking for rand_r - found
-- Looking for strings.h
-- Looking for strings.h - found
-- Looking for clock_gettime
-- Looking for clock_gettime - found
-- Looking for strnlen
-- Looking for strnlen - found
-- Looking for stdbool.h
-- Looking for stdbool.h - found
-- Looking for SYS_gettid
-- Looking for SYS_gettid - found
-- Looking for syscall
-- Looking for syscall - found
-- Performing Test HAVE_ATOMIC_32_ADD_AND_FETCH
-- Performing Test HAVE_ATOMIC_32_ADD_AND_FETCH - Success
-- Performing Test HAVE_ATOMIC_64_ADD_AND_FETCH
-- Performing Test HAVE_ATOMIC_64_ADD_AND_FETCH - Success
CMake Deprecation Warning at src/libbson/CMakeLists.txt:148 (cmake_policy):
  The OLD behavior for policy CMP0042 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.

-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
libmongoc version (from VERSION_CURRENT file): 1.10.2
-- Searching for zlib CMake packages
-- Found ZLIB: /usr/local/lib/libz.dylib (found version "1.2.8")
--   zlib found version "1.2.8"
--   zlib include path "/usr/local/include"
--   zlib libraries "/usr/local/lib/libz.dylib"
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Looking for include file stdarg.h
-- Looking for include file stdarg.h - found
-- Searching for sasl/sasl.h
--   Found in /usr/include
-- Searching for libsasl2
--   Found /usr/lib/libsasl2.dylib
-- Check size of socklen_t
-- Check size of socklen_t - done
-- Looking for res_nsearch
-- Looking for res_nsearch - found
-- Looking for res_ndestroy
-- Looking for res_ndestroy - found
-- Looking for sched_getcpu
-- Looking for sched_getcpu - not found
-- Detected parameters: accept (int, struct sockaddr *, socklen_t *)
-- Searching for compression library header snappy-c.h
--   Found in /usr/local/include
-- Searching for libsnappy
--   Found /usr/local/lib/libsnappy.a
-- Compiling against Secure Transport
-- Compiling against Cyrus SASL
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/mongo-c-driver-1.10.2/cmake-build
Scanning dependencies of target bson_static
Scanning dependencies of target bson_shared
[  0%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bcon.c.o
[  0%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson.c.o
[  1%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bcon.c.o
[  1%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson.c.o
[  1%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-atomic.c.o
[  2%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-atomic.c.o
[  2%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-clock.c.o
[  2%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-clock.c.o
[  2%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-context.c.o
[  2%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-context.c.o
[  3%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-decimal128.c.o
[  4%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-decimal128.c.o
[  4%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-error.c.o
[  4%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-error.c.o
[  4%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-iso8601.c.o
[  4%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-iso8601.c.o
[  4%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-iter.c.o
[  5%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-iter.c.o
[  5%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-json.c.o
[  6%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-json.c.o
[  6%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-keys.c.o
[  6%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-keys.c.o
[  6%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-md5.c.o
[  6%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-md5.c.o
[  8%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-memory.c.o
[  8%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-memory.c.o
[  8%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-oid.c.o
[  8%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-oid.c.o
[  8%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-reader.c.o
[  8%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-reader.c.o
[  9%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-string.c.o
[  9%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-string.c.o
[ 10%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-timegm.c.o
[ 10%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-timegm.c.o
[ 10%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-utf8.c.o
[ 10%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-utf8.c.o
[ 10%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-value.c.o
[ 10%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-value.c.o
[ 11%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-version-functions.c.o
[ 12%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-version-functions.c.o
[ 12%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/bson/bson-writer.c.o
[ 12%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/jsonsl/jsonsl.c.o
[ 12%] Building C object src/libbson/CMakeFiles/bson_static.dir/src/bson/bson-writer.c.o
[ 12%] Building C object src/libbson/CMakeFiles/bson_shared.dir/src/jsonsl/jsonsl.c.o
[ 12%] Building C object src/libbson/CMakeFiles/bson_static.dir/__/common/common-b64.c.o
[ 13%] Building C object src/libbson/CMakeFiles/bson_shared.dir/__/common/common-b64.c.o
[ 14%] Linking C shared library libbson-1.0.dylib
[ 14%] Linking C static library libbson-static-1.0.a
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libbson-static-1.0.a(bson-atomic.c.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libbson-static-1.0.a(bson-atomic.c.o) has no symbols
[ 14%] Built target bson_static
[ 14%] Built target bson_shared
Scanning dependencies of target mongoc_static
Scanning dependencies of target bson-streaming-reader
Scanning dependencies of target json-to-bson
Scanning dependencies of target bson-to-json
[ 14%] Building C object src/libbson/CMakeFiles/bson-to-json.dir/examples/bson-to-json.c.o
[ 14%] Building C object src/libbson/CMakeFiles/json-to-bson.dir/examples/json-to-bson.c.o
[ 15%] Building C object src/libbson/CMakeFiles/bson-streaming-reader.dir/examples/bson-streaming-reader.c.o
[ 15%] Linking C executable bson-to-json
[ 15%] Linking C executable json-to-bson
[ 15%] Linking C executable bson-streaming-reader
[ 15%] Built target bson-to-json
[ 15%] Built target json-to-bson
[ 15%] Built target bson-streaming-reader
Scanning dependencies of target bcon-speed
Scanning dependencies of target bson-metrics
Scanning dependencies of target bcon-col-view
[ 15%] Building C object src/libbson/CMakeFiles/bcon-speed.dir/examples/bcon-speed.c.o
[ 15%] Building C object src/libbson/CMakeFiles/bson-metrics.dir/examples/bson-metrics.c.o
[ 15%] Building C object src/libbson/CMakeFiles/bcon-col-view.dir/examples/bcon-col-view.c.o
[ 16%] Linking C executable bcon-speed
[ 16%] Linking C executable bcon-col-view
[ 16%] Linking C executable bson-metrics
[ 16%] Built target bcon-speed
[ 16%] Built target bcon-col-view
Scanning dependencies of target bson-validate
Scanning dependencies of target mongoc_shared
[ 16%] Built target bson-metrics
[ 17%] Building C object src/libbson/CMakeFiles/bson-validate.dir/examples/bson-validate.c.o
[ 17%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-apm.c.o
[ 18%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-array.c.o
[ 18%] Linking C executable bson-validate
[ 18%] Built target bson-validate
[ 18%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-async.c.o
[ 18%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-async-cmd.c.o
[ 18%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-buffer.c.o
[ 19%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-bulk-operation.c.o
[ 19%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-change-stream.c.o
[ 19%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-client.c.o
[ 19%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-apm.c.o
[ 20%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-client-pool.c.o
[ 20%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-array.c.o
[ 20%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cluster.c.o
[ 20%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-async.c.o
[ 21%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-async-cmd.c.o
[ 21%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-buffer.c.o
[ 21%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-collection.c.o
[ 21%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-compression.c.o
[ 21%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-bulk-operation.c.o
[ 22%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-change-stream.c.o
[ 22%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-client.c.o
[ 23%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-client-pool.c.o
[ 23%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-counters.c.o
[ 23%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cluster.c.o
[ 23%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cursor-array.c.o
[ 23%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cursor.c.o
[ 24%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cursor-cmd.c.o
[ 25%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-collection.c.o
[ 25%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-compression.c.o
[ 25%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cursor-cmd-deprecated.c.o
[ 25%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-counters.c.o
[ 25%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cursor-find.c.o
[ 26%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cursor-array.c.o
[ 26%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cursor.c.o
[ 26%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cursor-find-cmd.c.o
[ 27%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cursor-find-opquery.c.o
[ 27%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cursor-legacy.c.o
[ 27%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cursor-cmd.c.o
[ 27%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cursor-cmd-deprecated.c.o
[ 27%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-database.c.o
[ 28%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-find-and-modify.c.o
[ 29%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cursor-find.c.o
[ 29%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cursor-find-cmd.c.o
[ 29%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cursor-find-opquery.c.o
[ 29%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-init.c.o
[ 29%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-gridfs.c.o
[ 30%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cursor-legacy.c.o
[ 30%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-gridfs-file.c.o
[ 30%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-database.c.o
[ 30%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-find-and-modify.c.o
[ 31%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-gridfs-file-list.c.o
[ 31%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-gridfs-file-page.c.o
[ 31%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-init.c.o
[ 32%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-gridfs.c.o
[ 32%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-gridfs-file.c.o
[ 32%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-handshake.c.o
[ 33%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-host-list.c.o
[ 33%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-index.c.o
[ 33%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-gridfs-file-list.c.o
[ 34%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-gridfs-file-page.c.o
[ 34%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-list.c.o
[ 34%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-linux-distro-scanner.c.o
[ 34%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-handshake.c.o
[ 35%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-log.c.o
[ 35%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-host-list.c.o
[ 35%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-matcher.c.o
[ 35%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-matcher-op.c.o
[ 35%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-index.c.o
[ 36%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-list.c.o
[ 37%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-memcmp.c.o
[ 37%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cmd.c.o
[ 37%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-linux-distro-scanner.c.o
[ 37%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-log.c.o
[ 37%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-opts.c.o
[ 38%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-matcher.c.o
[ 38%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-opts-helpers.c.o
[ 38%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-matcher-op.c.o
[ 39%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-queue.c.o
[ 39%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-memcmp.c.o
[ 39%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cmd.c.o
[ 39%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-read-concern.c.o
[ 39%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-read-prefs.c.o
[ 40%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-rpc.c.o
[ 41%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-opts.c.o
[ 41%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-server-description.c.o
[ 41%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-opts-helpers.c.o
[ 41%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-server-stream.c.o
[ 41%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-queue.c.o
[ 42%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-read-concern.c.o
[ 42%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-read-prefs.c.o
[ 42%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-client-session.c.o
[ 42%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-rpc.c.o
[ 42%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-server-description.c.o
[ 43%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-set.c.o
[ 44%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-server-stream.c.o
[ 44%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-socket.c.o
[ 44%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-stream-buffered.c.o
[ 45%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-stream.c.o
[ 45%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-client-session.c.o
[ 45%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-set.c.o
[ 46%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-socket.c.o
[ 46%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-stream-file.c.o
[ 46%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-stream-gridfs.c.o
[ 46%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-stream-socket.c.o
[ 46%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-stream-buffered.c.o
[ 46%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-stream.c.o
[ 47%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-topology.c.o
[ 47%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-stream-file.c.o
[ 47%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-topology-description.c.o
[ 47%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-topology-description-apm.c.o
[ 48%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-stream-gridfs.c.o
[ 48%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-stream-socket.c.o
[ 48%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-topology.c.o
[ 49%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-topology-scanner.c.o
[ 50%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-topology-description.c.o
[ 50%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-uri.c.o
[ 50%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-util.c.o
[ 50%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-topology-description-apm.c.o
[ 50%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-version-functions.c.o
[ 50%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-topology-scanner.c.o
[ 50%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-uri.c.o
[ 51%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-util.c.o
[ 52%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-write-command.c.o
[ 52%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-write-command-legacy.c.o
[ 52%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-version-functions.c.o
[ 52%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-write-concern.c.o
[ 52%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-write-command.c.o
[ 53%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/__/common/common-b64.c.o
[ 54%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-write-command-legacy.c.o
[ 54%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-write-concern.c.o
[ 54%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-crypto.c.o
[ 54%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/__/common/common-b64.c.o
[ 54%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-crypto.c.o
[ 54%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-scram.c.o
[ 54%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-stream-tls.c.o
[ 55%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-ssl.c.o
[ 56%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-scram.c.o
[ 56%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-stream-tls.c.o
[ 56%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-ssl.c.o
[ 56%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-crypto-common-crypto.c.o
[ 56%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-rand-common-crypto.c.o
[ 57%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-crypto-common-crypto.c.o
[ 58%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-stream-tls-secure-transport.c.o
[ 58%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-secure-transport.c.o
[ 58%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-rand-common-crypto.c.o
[ 58%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cluster-sasl.c.o
[ 58%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-stream-tls-secure-transport.c.o
[ 58%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-secure-transport.c.o
[ 59%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cluster-sasl.c.o
[ 59%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-sasl.c.o
[ 60%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cluster-cyrus.c.o
[ 60%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-sasl.c.o
[ 60%] Building C object src/libmongoc/CMakeFiles/mongoc_static.dir/src/mongoc/mongoc-cyrus.c.o
[ 60%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cluster-cyrus.c.o
[ 61%] Building C object src/libmongoc/CMakeFiles/mongoc_shared.dir/src/mongoc/mongoc-cyrus.c.o
[ 61%] Linking C static library libmongoc-static-1.0.a
[ 61%] Linking C shared library libmongoc-1.0.dylib
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libmongoc-static-1.0.a(mongoc-linux-distro-scanner.c.o) has no symbols
Undefined symbols for architecture x86_64:
  "std::__1::__vector_base_common<true>::__throw_length_error() const", referenced from:
	  std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::allocate(unsigned long) in libsnappy.a(snappy.cc.o)
	  void std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::__push_back_slow_path<snappy::SnappySinkAllocator::Datablock const>(snappy::SnappySinkAllocator::Datablock const&) in libsnappy.a(snappy.cc.o)
	  void std::__1::vector<char*, std::__1::allocator<char*> >::__push_back_slow_path<char* const>(char* const&) in libsnappy.a(snappy.cc.o)
  "std::logic_error::logic_error(char const*)", referenced from:
	  std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::allocate(unsigned long) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<char*, std::__1::allocator<char*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<char*>&) in libsnappy.a(snappy.cc.o)
  "std::length_error::~length_error()", referenced from:
	  std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::allocate(unsigned long) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<char*, std::__1::allocator<char*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<char*>&) in libsnappy.a(snappy.cc.o)
  "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::resize(unsigned long, char)", referenced from:
	  snappy::STLStringResizeUninitialized(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, unsigned long) in libsnappy.a(snappy.cc.o)
	  snappy::Compress(char const*, unsigned long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) in libsnappy.a(snappy.cc.o)
  "std::terminate()", referenced from:
	  ___clang_call_terminate in libsnappy.a(snappy.cc.o)
  "typeinfo for std::length_error", referenced from:
	  std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::allocate(unsigned long) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<char*, std::__1::allocator<char*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<char*>&) in libsnappy.a(snappy.cc.o)
  "vtable for __cxxabiv1::__class_type_info", referenced from:
	  typeinfo for snappy::Sink in libsnappy.a(snappy-sinksource.cc.o)
	  typeinfo for snappy::Source in libsnappy.a(snappy-sinksource.cc.o)
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for __cxxabiv1::__si_class_type_info", referenced from:
	  typeinfo for snappy::ByteArraySource in libsnappy.a(snappy-sinksource.cc.o)
	  typeinfo for snappy::UncheckedByteArraySink in libsnappy.a(snappy-sinksource.cc.o)
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for std::length_error", referenced from:
	  std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::allocate(unsigned long) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<char*, std::__1::allocator<char*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<char*>&) in libsnappy.a(snappy.cc.o)
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "operator delete[](void*)", referenced from:
	  snappy::Compress(snappy::Source*, snappy::Sink*) in libsnappy.a(snappy.cc.o)
	  snappy::internal::WorkingMemory::~WorkingMemory() in libsnappy.a(snappy.cc.o)
	  snappy::SnappySinkAllocator::Deleter(void*, char const*, unsigned long) in libsnappy.a(snappy.cc.o)
  "operator delete(void*)", referenced from:
	  std::__1::__vector_base<char*, std::__1::allocator<char*> >::~__vector_base() in libsnappy.a(snappy.cc.o)
	  std::__1::__vector_base<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::~__vector_base() in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&>::~__split_buffer() in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<char*, std::__1::allocator<char*>&>::~__split_buffer() in libsnappy.a(snappy.cc.o)
	  snappy::ByteArraySource::~ByteArraySource() in libsnappy.a(snappy-sinksource.cc.o)
	  snappy::UncheckedByteArraySink::~UncheckedByteArraySink() in libsnappy.a(snappy-sinksource.cc.o)
  "operator new[](unsigned long)", referenced from:
	  snappy::internal::WorkingMemory::GetHashTable(unsigned long, int*) in libsnappy.a(snappy.cc.o)
	  snappy::Compress(snappy::Source*, snappy::Sink*) in libsnappy.a(snappy.cc.o)
	  snappy::SnappySinkAllocator::Allocate(int) in libsnappy.a(snappy.cc.o)
  "operator new(unsigned long)", referenced from:
	  std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::allocate(unsigned long) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<char*, std::__1::allocator<char*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<char*>&) in libsnappy.a(snappy.cc.o)
  "___cxa_allocate_exception", referenced from:
	  std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::allocate(unsigned long) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<char*, std::__1::allocator<char*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<char*>&) in libsnappy.a(snappy.cc.o)
  "___cxa_begin_catch", referenced from:
	  ___clang_call_terminate in libsnappy.a(snappy.cc.o)
  "___cxa_free_exception", referenced from:
	  std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::allocate(unsigned long) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<char*, std::__1::allocator<char*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<char*>&) in libsnappy.a(snappy.cc.o)
  "___cxa_pure_virtual", referenced from:
	  vtable for snappy::Sink in libsnappy.a(snappy-sinksource.cc.o)
	  vtable for snappy::Source in libsnappy.a(snappy-sinksource.cc.o)
  "___cxa_throw", referenced from:
	  std::__1::vector<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock> >::allocate(unsigned long) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<snappy::SnappySinkAllocator::Datablock, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<snappy::SnappySinkAllocator::Datablock>&) in libsnappy.a(snappy.cc.o)
	  std::__1::__split_buffer<char*, std::__1::allocator<char*>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<char*>&) in libsnappy.a(snappy.cc.o)
  "___gxx_personality_v0", referenced from:
	  snappy::GetUncompressedLength(snappy::Source*, unsigned int*) in libsnappy.a(snappy.cc.o)
	  snappy::Compress(snappy::Source*, snappy::Sink*) in libsnappy.a(snappy.cc.o)
	  snappy::RawUncompressToIOVec(char const*, unsigned long, iovec const*, unsigned long) in libsnappy.a(snappy.cc.o)
	  bool snappy::InternalUncompress<snappy::SnappyIOVecWriter>(snappy::Source*, snappy::SnappyIOVecWriter*) in libsnappy.a(snappy.cc.o)
	  snappy::RawUncompress(char const*, unsigned long, char*) in libsnappy.a(snappy.cc.o)
	  bool snappy::InternalUncompress<snappy::SnappyArrayWriter>(snappy::Source*, snappy::SnappyArrayWriter*) in libsnappy.a(snappy.cc.o)
	  snappy::IsValidCompressedBuffer(char const*, unsigned long) in libsnappy.a(snappy.cc.o)
	  ...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [src/libmongoc/libmongoc-<IP_ADDRESS>.0.dylib] Error 1
make[1]: *** [src/libmongoc/CMakeFiles/mongoc_shared.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: libmongoc-static-1.0.a(mongoc-linux-distro-scanner.c.o) has no symbols
[ 61%] Built target mongoc_static
make: *** [all] Error 2
	Error compiling MongoDB C driver.
	Exiting now.`

I've encountered the problem before. Running ./scripts/clean_old_install.sh should resolve the issue.

If Running ./scripts/clean_old_install.sh did not work please refer to latest code and documentation:
https://github.com/EOSIO
https://developers.eos.io/
If problem persists with latest version please raise new issue.


Move C and therefore CGO out of shared package

The following moves any C and therefore CGO code out of the shared package. This then allows other projects (like Juju) to still use the client package whilst themselves also use CGO to compile. Prior to this change, we end up with either missing headers or redefinition errors when attempting to use the client.
If there is a better place to put the files, then let me know.
Signed-off-by: Simon Richardson<EMAIL_ADDRESS>

This pull request didn't trigger Jenkins as its author isn't in the allow list.
An organization member must perform one of the following:

To have this branch tested by Jenkins, use the "ok to test" command.
To have a one time test done, use the "test this please" command.

Those commands are simple Github comments of the format: "jenkins: COMMAND"

GIven pidfds aren't a socket, I wonder if it wouldn't be better to name the package linux instead?

@stgraber of course, happy to do so.

jenkins: test this please


Migrate from chardet to charset_normalizer & make it optional

Description
pyoak is currently depends on charted, which is implicitly used to read text for TestFileSource. Since encode guessing may not be necessary this dependency should become optional, and the file reader should only use it if available.
Also it makes sense to migrate to faster and more recent library - charset_normalizer

done in v1.2.0, need to port the changes over to v2

already in v3 alpha. closing


Examples needs an ino file

The examples folder has a cpp and .h file, but there is no ino file.

You just have to rename ChangeName.cpp into ChangeName.ino and place it and the file ChangeName.h  into a folder named ChangeName so that you can edit and compile them with the Arduino IDE.
You will need also to edit the Configuration.h file of the library to adapt it to your own network configuration.
Have a glance also to the Smart Thermostat application from sblantipodi to better understand all the potential of the library and the way to use it.

thanks @Pronoe for helping here...
Closing the issue since Pronoe has answered it already :)


Improve error checking query builder

It is remarkably easy to construct invalid queries with the queryBuilder. "Invalid combined search" is quickly becoming my most hated phrase in the English language. WHY is it invalid? What did it even look like?
When this happens to me, I engage in this daftness:

In node, dump the queryBuilder.where output to the console
Tote the query portion over to QC and run it through sut:handle-text to get the XML
Feed the XML to search:resolve so I can examine the real errors
Tinker with the XML or JSON until it works
Work backwards from there to the correct query build invocation

Gonna go out on a limb here and assert that's not really an option for the average user. :)
I'm not sure how fixable this is since I think it is a somewhat inevitable result of so many layers between user and sever. The old "Telephone" game in action. However, it seems like it could be partly addressed by beefing up error checking in the query builder so it isn't quite so easy to shoot yourself in the foot. What's the point of a builder if it lets you create invalid queries?
Alternatively, I suppose we could offer some validation hook, but it needs to return the actual errors instead of devolving to REST-INVALIDPARAM like it does now. The difficulty is that the bad queries created by the builder can cause the Search API to throw an exception, and by the time that filters back out through the REST API, you end up with something unhelpful like this:
REST-INVALIDPARAM: Invalid parameter: Invalid combined search
I doubt there's much to be done about that, which is why I think queryBuilder needs to get smarter.

Will keep the API stable.


Fix the error that model is not defined

Use self.model instead.

Merged from here 85f149c9755bd684b77d34982d58b8f8c4a925ce
Thank you!


feat: add special case for fields and model action parameters

Adds stub for DataStoreCreateItem action but does not fully implement

Codecov Report

Merging #358 (e323c5b) into tagged-release/q1-release (2a64978) will increase coverage by 0.05%.
The diff coverage is 100.00%.

@@                      Coverage Diff                      @@
##           tagged-release/q1-release     #358      +/-   ##
=============================================================
+ Coverage                      93.07%   93.13%   +0.05%
=============================================================
  Files                             37       37
  Lines                           1416     1427      +11
  Branches                         314      316       +2
=============================================================
+ Hits                            1318     1329      +11
  Misses                            96       96
  Partials                           2        2

Impacted Files
Coverage Δ

packages/codegen-ui-react/lib/action.ts
78.18% <100.00%> (+5.45%)
:arrow_up:

Continue to review full report at Codecov.

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


[Add] light background for cards in light mode

Details
We might want to change background color of the cards when in light mode.
Currently it is black which does not justifies the purpose of light theme.
Below is the screenshot of the proposed idea. Please assign this task to me under GSSoC '23. Thank you!
Screenshots
current:

proposed idea :

PS: Please suggest me different colors if you do not like this one.
Type of Contribution

[ ] Update to an existing Animated Button
[ ] Adding a new Button
[ ] Resolving a bug
[X] Proposal to the Repository
[ ] Changes related to documentation or README.md
[X] Other Changes

Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I am willing to work on this issue
[X] I am a GSSoC'23 contributor

@rishuraj1
Can you change the like button color, show code and download button also for the light theme?

@Spyware007  yes ofcourse I plan to change every component of the card according to the loght theme.
This is just a proposed idea.

Okay sure!
Assigned to you!


fix: use set -e in create-pyxis-image task

Without this, the task execution would carry on even if something failed inside the script.

/retest

/test release-pipelines-e2e-suite

/test release-pipelines-e2e-suite

/retest

/test release-pipelines-e2e-suite

/test release-pipelines-e2e-suite

/test release-pipelines-e2e-suite

/test release-pipelines-e2e-suite

https://gcsweb-ci.apps.ci.l2s4.p1.openshiftapps.com/gcs/test-platform-results/pr-logs/pull/konflux-ci_release-service-catalog/439/pull-ci-konflux-ci-release-service-catalog-development-release-pipelines-e2e-suite/1801252090434031616/artifacts/release-pipelines-e2e-suite/gather-extra/artifacts/pods/push-pyxis-managed-enej_managed-l9drf-create-pyxis-image-pod_step-create-pyxis-image.log

https://gcsweb-ci.apps.ci.l2s4.p1.openshiftapps.com/gcs/test-platform-results/pr-logs/pull/konflux-ci_release-service-catalog/439/pull-ci-konflux-ci-release-service-catalog-development-release-pipelines-e2e-suite/1801252090434031616/artifacts/release-pipelines-e2e-suite/gather-extra/artifacts/pods/push-pyxis-managed-enej_managed-l9drf-create-pyxis-image-pod_step-create-pyxis-image.log

Thanks. I could have noticed myself :-\ So this is in fact something I missed when adding the cleanup script - the cleanup_tags script looks for a registry.access.redhat.com repository in the Container Image object and it will fail if it doesn't find one. But that repository is only created if rhPush=true. The rh-push-to-external-registry pipeline does contain the Pyxis stuff, but it runs the task with rhPush=false and that would cause the failure. I added a second commit with a fix. Let me know if you'd like to have a separate PR instead. (Also, the consequence is that tags are not cleaned up for this scenario. Right now I don't think it's a problem, because AFAIK these data are not really shown anywhere. But if we think we also need to clean up the tags here, I would need to modify the cleanup python script to work for this scenario.)

https://gcsweb-ci.apps.ci.l2s4.p1.openshiftapps.com/gcs/test-platform-results/pr-logs/pull/konflux-ci_release-service-catalog/439/pull-ci-konflux-ci-release-service-catalog-development-release-pipelines-e2e-suite/1801252090434031616/artifacts/release-pipelines-e2e-suite/gather-extra/artifacts/pods/push-pyxis-managed-enej_managed-l9drf-create-pyxis-image-pod_step-create-pyxis-image.log

Thanks. I could have noticed myself :-\ So this is in fact something I missed when adding the cleanup script - the cleanup_tags script looks for a registry.access.redhat.com repository in the Container Image object and it will fail if it doesn't find one. But that repository is only created if rhPush=true. The rh-push-to-external-registry pipeline does contain the Pyxis stuff, but it runs the task with rhPush=false and that would cause the failure. I added a second commit with a fix. Let me know if you'd like to have a separate PR instead. (Also, the consequence is that tags are not cleaned up for this scenario. Right now I don't think it's a problem, because AFAIK this data is not really shown anywhere. But if we think we also need to clean up the tags here, I would need to modify the cleanup python script to work for this scenario.)

Can you check with Scott to ensure it is okay to not cleanup the past tags with that pipeline? The code itself lgtm. And I am fine with it being one PR

https://gcsweb-ci.apps.ci.l2s4.p1.openshiftapps.com/gcs/test-platform-results/pr-logs/pull/konflux-ci_release-service-catalog/439/pull-ci-konflux-ci-release-service-catalog-development-release-pipelines-e2e-suite/1801252090434031616/artifacts/release-pipelines-e2e-suite/gather-extra/artifacts/pods/push-pyxis-managed-enej_managed-l9drf-create-pyxis-image-pod_step-create-pyxis-image.log

Thanks. I could have noticed myself :-\ So this is in fact something I missed when adding the cleanup script - the cleanup_tags script looks for a registry.access.redhat.com repository in the Container Image object and it will fail if it doesn't find one. But that repository is only created if rhPush=true. The rh-push-to-external-registry pipeline does contain the Pyxis stuff, but it runs the task with rhPush=false and that would cause the failure. I added a second commit with a fix. Let me know if you'd like to have a separate PR instead. (Also, the consequence is that tags are not cleaned up for this scenario. Right now I don't think it's a problem, because AFAIK this data is not really shown anywhere. But if we think we also need to clean up the tags here, I would need to modify the cleanup python script to work for this scenario.)

Can you check with Scott to ensure it is okay to not cleanup the past tags with that pipeline? The code itself lgtm. And I am fine with it being one PR

I talked to Scott and he agrees it makes sense to skip it there. FTR, the rh-push-to-external-registry pipeline (where we will skip the tag cleanup) is used by managed services.


MINOR: Remove compilation warnings

Removed warnings

kafka/core/src/test/scala/integration/kafka/server/DelayedFetchTest.scala:110: local val partition in method testReplicaNotAvailable is never used
kafka/core/src/test/scala/unit/kafka/admin/ConfigCommandTest.scala:527: local val alterResourceName in method verifyAlterBrokerConfig is never used

Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

polishing code


stats: update circlhist version dependency

Commit Message: update circlhist
Additional Description:
Risk Level: low
Testing: //test/...
Docs Changes: n/a
Release Notes: n/a
Platform Specific Features: n/a

@moderation @ramaraochavali FYI
This seemed to pass //test/... on my dev box. @moderation suggested there was an incompatibility but I didn't see it in our tests so far. Maybe CI will be more thorough.

/retest

/retest

This PR, as it is, only changes the metadata and doesn't include the latest commit. Try
    com_github_circonus_labs_libcircllhist = dict(
        project_name = "libcircllhist",
        project_desc = "An implementation of OpenHistogram log-linear histograms",
        project_url = "https://github.com/openhistogram/libcircllhist",
        version = "95f8f6b089fc4e8dc215ed903221f9f55d4813b3",
        sha256 = "0712445bec6ab71a2ad386f96b3e8fd8777ecaf5264f144e49236ea343fc2e96",
        strip_prefix = "libcircllhist-{version}",
        urls = ["https://github.com/circonus-labs/libcircllhist/archive/{version}.tar.gz"],
        use_category = ["controlplane", "observability_core", "dataplane_core"],
        release_date = "2022-12-15",
        cpe = "N/A",
        license = "Apache-2.0",
        license_url = "https://github.com/openhistogram/libcircllhist/blob/{version}/LICENSE",
    ),

In my testing that will cause tests for histograms to fail

Yeah I thought so. I'm going to pause working on this; I don't want to pick up this dependency hacking stuff. I was looking to see if we could upgrade to a slightly more recent libcirclhist but not one that added the cdflib dependency.

Yeah I thought so. I'm going to pause working on this; I don't want to pick up this dependency hacking stuff. I was looking to see if we could upgrade to a slightly more recent libcirclhist but not one that added the cdflib dependency.

Do we just need to update the BUILD file ? https://github.com/envoyproxy/envoy/blob/main/bazel/external/libcircllhist.BUILD#L5
I can take a stab at this today.

@pradeepcrao I think you are right. I testing a couple of months ago I think I got this compiling with those changes. But then the histogram tests started failing and I bailed

Pradeep if you are set with this I'll close this PR and defer to you


Build permission

I think this sentence is either contradictory or false:
"Power BI provides Build permission as a complement to Read and Reshare permissions. All users who already have Read permission for datasets via app permissions, sharing, or workspace access also get Build permission for those datasets. Those users get Build permission automatically because Read permission already grants them the right to build new content on the dataset by using Analyze in Excel or Export."
Build is a complement of Read so the sentence "All users who already have Read permission for datasets via app permissions, sharing, or workspace access also get Build permission for those datasets" does not match avec the previous one.
Also according to https://learn.microsoft.com/en-us/power-bi/connect-data/service-datasets-permissions
Read | Allows user to access reports and other solutions, such as composite models on Premium/PPU workspaces, that read data from the dataset. Allows user to view dataset settings.
Giving read permission should/does not give build permission else each time read permission are given, build permission also are given. This is not the right behaviour.

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

ID: 16dbd9ca-dcd3-a4f3-43a8-01ead54fc9f9
Version Independent ID: 66217fc3-a852-201c-a563-54ecbd9e5726
Content: Build permission for shared datasets - Power BI
Content Source: powerbi-docs/connect-data/service-datasets-build-permissions.md
Service: powerbi
Sub-service: pbi-data-sources
GitHub Login: @paulinbar
Microsoft Alias: painbar

Thanks for your comment, @Ilocans. This issue has been assigned to the doc author for review.

Hi @Ilocans , thanks for your comment. I have taken this up with the product team and we'll update the docs to be more clear. Thanks again for taking the time to write.


Maven链接

What happened?

maven无法下载
What did you expect to happen?
maven无法下载
How can we reproduce it (as minimally and precisely as possible)?
maven无法下载
Anything else we need to know?
No response
version

```console
$ {name} version
# paste output here
```

Cloud provider

OS version

```console
# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here
# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here
```

Install tools

Do you have detailed info for this problem?


Simplify getting the absolute Git root directory

"git rev-parse --show-toplevel" is defined to already return an absolute
path, so there is no need to convert it.

Thanks!


improve padding of record page tag buttons and text field sidebars

The sidebars for text fields values (like Description) need some padding.
the tag 'buttons' on the records page need some CSS help - when the tags wrap, they are too close together vertically. But adding margin or padding at top makes all the buttons too low vertically. I think flexbox would help.

@crisaless are you stll planning on doing this or should we close this?

yes - the padding issue really bugs me in particular so I'll try to knock that out today/tomorrow.

Just committed a fix.

I fixed the padding for the blue buttons a while back.

Please close the issue if it is done.


337 vulnerabilities in 4-dotnet-isolated8.0 (1 C, 231 H)

Azure Defender for Cloud reports a total of 337 vulnerabilities in the latest 4-dotnet-isolated8.0 image, including 1 critical vulnerability (
CVE-2024-47685). I think all of them are OS vulnerabilities. It reports that a fix is available by updating to debian 6.1.115-1 from 6.1.112-1.
It says in the Azure Functions documentation that updates come monthly but don't you think that's a bit too slow for critical vulnerabilities (and such a big pile of high-severity ones)? Last update was on 2024-10-31 but the vulnerabilities were published on 2024-10-21.
Incomplete list of vulnerabilities:
Critical:
CVE-2024-47685
High:
CVE-2024-8805
CVE-2024-53082
CVE-2024-53061
CVE-2024-53057
CVE-2024-53042
CVE-2024-50302
CVE-2024-50301
CVE-2024-50286
CVE-2024-50283
...

It has now been clearly over a month since the last update. Any news?

Note that the base image dotnet 8.0.10 doesn't have those vulnerabilities (anymore). It seems like the rebuild/patching of upstream images is not happening correctly?

I honestly don't understand what's going on but a new image was added on 2024-12-11 and it doesn't contain these vulnerabilities anymore.


K8SPXC-264 kubectl 1.14 does not support pod as argument (part 2)

Test name
Status

storage
passed

init-deploy
failed

recreate
passed

big-data
failed

scaling
failed

self-healing
passed

scaling-proxysql
passed

restore-to-encrypted-cluster
passed

limits
passed

self-healing-advanced
failed

upgrade
passed

monitoring
passed

demand-backup
passed

upgrade-consistency
passed

operator-self-healing
passed

security-context
passed

monitoring-2-0
failed

affinity
passed

one-pod
passed

scheduled-backup
failed

auto-tuning
failed

demand-backup-encrypted-with-tls
failed

proxysql-sidecar-res-limits
passed


Shape testing of the bee endpoint responses

This has been discussed on our roundtable on March 31st. We will start implementing it gradually to different endpoints. The idea is to type the expected shape array with the return type of a given function.
Here is a dump of the proposal:
rationale:

it has happened to us several times already that the responses from bee version we officially supported did not match the bee-js type
as far as I recall, in 2 cases it was missing properties, in one case it was wrong type of properties and in one it was removed property

proposal:

use https://www.npmjs.com/package/jest-to-match-shape-of on all API call responses in bee-js
this is very intuitive to use

interface TestInterface {
  foo: string
  bar?: number
}

const validShapes: TestInterface[] = [{foo: 'hi'}, {foo: 'yo!', bar: 1}]

expect(res).toMatchOneOf(validShapes)

I think this was already once or twice brought up before but we have never really decided to do this.
From my POW I am done doing it, especially as we are promising some returned types/interfaces from the API calls that we are not really sure if it is correct or not.


ensure: always write vendor even if not empty

What does this do / why do we need it?
If the vendor directory already exists, and the lock file hasn't
changed, even though a project may be missing from the vendor
directory, dep ensure would not add the dependency to the vendor
folder.
If the project is in the vendor folder, but it has been modified
(no longer in sync with lock file), ensure would not replace the
dependency in the vendor folder.
This change causes dep ensure to run anytime there's a solution,
regardless of the state vendor folder is in, erring on the side
of replacing vendor without checking existing state which is the
most correct behaviour given the ensure intention.
Future optimisations may want to check and verify the contents of
the vendor folder before blinding replacing it.
What should your reviewer look out for in this PR?
Check the original issue #883, and then my initial proposal PR in #884, sdboyer then gave this solution a tentative OK in https://github.com/golang/dep/issues/883#issuecomment-317288684
Do you need help or clarification on anything?
Edge cases, or any thoughts where this might be a bad idea. Such as if we've ever recommended doing in place edits to vendor directory.
No tests are included, as this is pretty critical behaviour, I presume an integration test or similar would be in order?
Which issue(s) does this PR fix?
Fixes #883.

I had been thinking about the slow downs, but dep ensure is a pretty deliberate action, I think users would be 100% OK with this.
But my main issue was dep ensure wasn't adding dependencies when they didn't exist, due to my workflow documented in README - we could implement the previous PR which only rebuilt vendor when the dependency was missing?

@bradleyfalzon oh no, no, i also think this is the right, safest solution for now, and that that's where need to start. i was just trying to draw @ibrasho's attention to some of the relevant considerations, here 😄

Can't think of anything wrong with this atm.
Only nit is that the solution != nil check is useless (always true), since this function will return befor this point if solution is nil anyway. But there is no harm is keeping in case the Solve method behavior changed.

Only nit is that the solution != nil check is useless (always true)

I agree @ibrasho, the docs suggests this too:

// Solve initiates a solving run. It will either complete successfully with
// a Solution, or fail with an informative error.

I think we should then remove the if block entirely.

I've amended the commit, @ibrasho can you review again?

I'm good with this atm. 😁
@sdboyer I'm not sure where vendor verification is going to be triggered and how it affects the SafeWriter.writeVendor flag?

@sdboyer I'm not sure where vendor verification is going to be triggered and how it affects the SafeWriter.writeVendor flag?

once we have verification in place, we'll need to rewrite a few things, possibly including that flag. verification is likely to be at a different level, though, as verification will be on a per-project basis, not the whole vendor dir.

yep, i think we're good. in we go - thanks, @bradleyfalzon! 🎉


Bumping gatsby dependencies

This pull requests aims to bump the versions of the different gatsby plugins and react.
NB: bumping the React versions helped me fix an issue that many people seemed to have with gatsby 2.18.x => https://github.com/gatsbyjs/gatsby/issues/19064
I didn't have trouble running it locally, so let me know if it works for you 😊
Thanks for the starter BTW 🚀 !

@mfrachet Thanks for the PR! And sorry for no response here. I see you deleted the fork already. :) I'll close this pr and update deps myself now. :)
Anyways. Thanks and happy that it was useful. :)


Get upvoted answers (backend)

Related Issuse

earlier a user did not have the facility to fetch all the upvoted answers

Closes: #331
Describe the changes you've made
fetches all the answers a user has upvoted
Checklist:

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

Screenshots

Original
Updated

no getUpvotedAns route

@mitalirs resolve conflict.

done


Update MangaNoon.kt

Update URL
Checklist:

[x] Updated extVersionCode value in build.gradle for individual extensions
[ ] Updated overrideVersionCode or baseVersionCode as needed for all multisrc extensions
[ ] Referenced all related issues in the PR body (e.g. "Closes #xyz")
[ ] Added the isNsfw = true flag in build.gradle when appropriate
[ ] Have not changed source names
[ ] Have explicitly kept the id if a source's name or language were changed
[ ] Have tested the modifications by compiling and running the extension through Android Studio
[ ] Have removed web_hi_res_512.png when adding a new extension

See my comment on #908

See my comment on #908

OK

See my comment on #908

Could you please explain to me the merging of two files that you modified, if you would be so kind?

See my comment on #908

Could you please explain to me the merging of two files that you modified, if you would be so kind?

You can edit both files (as many as needed, really) on a single branch.

Closing obviously untested PR. Please test your changes properly using Android Studio (or AndroidIDE, if you don't have a capable PC) before submitting a pull request.

Closing obviously untested PR. Please test your changes properly using Android Studio (or AndroidIDE, if you don't have a capable PC) before submitting a pull request.

OK I tested it on androidDE

You still haven't updated the URL in the generator.


Cannot decompress data that was compressed with C implementation

I am working with the multi-OS system. Client apps are written in C and server apps are in C#. The problem is I cannot decompress messages that were compressed with LZ4 C implementation. The error that I get is

LZ4 block is corrupted, or invalid length has been given.

To make a small reproducible example, I compressed a string on an Ubuntu machine
sudo apt-get install liblz4-tool
echo -n '[{"d":"2016-02-19T00:00:00.000Z","ac":"machine on","u":"foo__bar","m":"m1"}]' | lz4 -zl | xxd -i -c 10
 0x02, 0x21, 0x4c, 0x18, 0x4d, 0x00, 0x00, 0x00, 0xf1, 0x06,
  0x5b, 0x7b, 0x22, 0x64, 0x22, 0x3a, 0x22, 0x32, 0x30, 0x31,
  0x36, 0x2d, 0x30, 0x32, 0x2d, 0x31, 0x39, 0x54, 0x30, 0x30,
  0x3a, 0x03, 0x00, 0xf0, 0x23, 0x2e, 0x30, 0x30, 0x30, 0x5a,
  0x22, 0x2c, 0x22, 0x61, 0x63, 0x22, 0x3a, 0x22, 0x6d, 0x61,
  0x63, 0x68, 0x69, 0x6e, 0x65, 0x20, 0x6f, 0x6e, 0x22, 0x2c,
  0x22, 0x75, 0x22, 0x3a, 0x22, 0x66, 0x6f, 0x6f, 0x5f, 0x5f,
  0x62, 0x61, 0x72, 0x22, 0x2c, 0x22, 0x6d, 0x22, 0x3a, 0x22,
  0x6d, 0x31, 0x22, 0x7d, 0x5d

I saved compressed bytes in a file and was able to decompress the content successfully on a different Windows machine using lz4.exe with the following command lz4 -d foo.lz4.
However, I cannot decompress these bytes in C#. I have built a self-contained test (.Net 4.6 VS 2015, but other versions I'd assume will give the same error).
using System.Text;
using LZ4;
using NUnit.Framework;

namespace Transport.Tests
{
    [TestFixture]
    public class Lz4Test
    {
        // to get payload on Ubuntu (or other Linuxie or Unixie) machine
        // sudo apt-get install liblz4-tool
        // echo -n '[{"d":"2016-02-19T00:00:00.000Z","ac":"machine on","u":"foo__bar","m":"m1"}]' | lz4 -zl | xxd -i -c 10
        byte[] payload = {
              0x02, 0x21, 0x4c, 0x18, 0x4d, 0x00, 0x00, 0x00, 0xf1, 0x06,
              0x5b, 0x7b, 0x22, 0x64, 0x22, 0x3a, 0x22, 0x32, 0x30, 0x31,
              0x36, 0x2d, 0x30, 0x32, 0x2d, 0x31, 0x39, 0x54, 0x30, 0x30,
              0x3a, 0x03, 0x00, 0xf0, 0x23, 0x2e, 0x30, 0x30, 0x30, 0x5a,
              0x22, 0x2c, 0x22, 0x61, 0x63, 0x22, 0x3a, 0x22, 0x6d, 0x61,
              0x63, 0x68, 0x69, 0x6e, 0x65, 0x20, 0x6f, 0x6e, 0x22, 0x2c,
              0x22, 0x75, 0x22, 0x3a, 0x22, 0x66, 0x6f, 0x6f, 0x5f, 0x5f,
              0x62, 0x61, 0x72, 0x22, 0x2c, 0x22, 0x6d, 0x22, 0x3a, 0x22,
              0x6d, 0x31, 0x22, 0x7d, 0x5d
        };

        [Test]
        public void DecompressTest()
        {
            // Act
            string codec = LZ4Codec.CodecName;
            // tried with
            // MixedMode 64/MixedMode 64/MixedMode 64HC
            // MixedMode 32 / MixedMode 32 / MixedMode 32HC

            byte[] actual = LZ4Codec.Unwrap(payload);  // << FAILS here
            // Error message: LZ4 block is corrupted, or invalid length has been given.
        }
    }
}

If I use LZ4Codec.Decode and tell it all the parameters - it works, but I have to skip the header, first 8 bytes. I cannot do this in production though.
// this works
byte[] actual = new byte[81];
LZ4Codec.Decode(payload, 8, payload.Length - 8, actual, 0, 81);

Explanation:
http://cyan4973.github.io/lz4/ lists all implementations. LZ4.net is listed in section "Multiple languages" described as "Each version encapsulates the compressed result into its own header/frame format convention."
Long story short: block data is compatible with original (Yann's) LZ4 implementation, the block header is not. Feel free to implement parsing original (Yann's) block header. You can also easily implement your own header on both sides.

Thanks for your reply. That's what I thought as well, it's a custom header. We decided to use gzip (fastest option) just now. But would like to go back to LZ4 in future. I might work on this in spare time.
Going forward, if one implements this custom header, how do you see this integrate into the current library? Should it be a fork with a new name or will you be willing to merge the header into the current source code? If the later, it will be a breaking change in the library.
What are your thoughts on this?
Can you also please point out the best place to put new implementation in and the documentation for the format?
Are there any reasons for custom header to exist?


Create nehrucolleges

https://www.nehruinstitute.com

@ragasho lib/domains/com/nehrucolleges: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

I changed the path name


Update for new Transform in bevy 0.2.0

Translation  was removed in 0.2.0 and replaced by Transform. This PR replaces Translation, but retains the use of Vec3s as long as possible to keep the API mostly compatible.
P.S. I just realised I haven't touched the README or examples which should probably be updated!

Thanks. I had to change to bevy 0.2.0 in cargo.toml because it didn't compile otherwise.


Implement witness pay withdrawal

I need to know how much pay I can withdraw, and actually withdraw it.

Implemented.


fix: Support WAITING status for [GitHubDeployments]

Fix "invalid response data" badge label for GitHub deployments pending approval.
Scenario
If a deployment is pending manual approval:

Then the GraphQL API reports the status as PENDING:
Request
query {
  repository(owner: "martincostello", name: "api") {
    deployments(last: 1, environments: ["production"]) {
      nodes {
        latestStatus {
          state
        }
      }
    }
  }
}

Response
{
  "data": {
    "repository": {
      "deployments": {
        "nodes": [
          {
            "latestStatus": {
              "state": "WAITING"
            }
          }
        ]
      }
    }
  }
}

This then produces a badge that looks like this:

The status doesn't appear to be consistently documented, but definitely exists: https://github.com/octokit/webhooks.net/pull/52

Warnings

:warning:
This PR modified service code for github but not its test code. That's okay so long as it's refactoring existing code.

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @martincostello!

  Generated by :no_entry_sign: dangerJS against c4806b63ced1a741967a2af662c307901dc9f5d6


How to prevent selectors from calculating until all data is in relevant store slice

I'm having a bit of trouble figuring out what I think is a pretty common use case for Redux.  I have a particular data domain, which is being populated from two different API endpoints.  I need to wait until both calls return and all data is put into the store before I'm ready for reselect to do it's thing.  As it is now, because mapStateToProps is called every time the state changes (i.e. on the initial render, after the first call, after the second call, etc), my selectors are bombing because the data isn't there.
What is the best approach for this?  Do I have a parent component that's sole function is to check whether my isXFetched flags are all set, and only then render my connected component that uses reselect?  There must be a better way I'm not thinking about, any ideas?
Here's a simplified example of my current implementation:
stores/indices.js
const initialState = Immutable.from({
  areAllIndicesFetched: false,
  areCurrentIndexAssetsFetched: false,
  byId: {},
  allIds: [],
});

...

'INDICES/FETCH_ALL_SUCCESS': (state, action) => {
   // (other logic)
   return state.merge([{
      byId,
      allIds,
      areAllIndicesFetched: true,
    }]);
}

'INDICES/FETCH_ASSETS_SUCCESS': (state, action) => {
    // (other logic)
    return state
      .setIn(['byId', id, 'assets'], assets)
      .set('areCurrentIndexAssetsFetched', true);
}

selectors.js
// This depends on the first call having succeeded
export const getIndexById = (state, props) => {
  return state.byId[props.indexId];
}

// This depends on both the first and second call succeeding
export const getIndexAssets = createSelector(
  getIndexById,
  (index) => {
    return index.assets;
  }
);

Selectors are meant to be synchronous.  Like with React components re-rendering, you need to handle the cases where data is not yet available (similar to the article Watch Out for Undefined State).
So, I would suggest having your selectors either return default values if the data they are looking for doesn't exist, or do existence checks and return null (and also handle that safely along the way).

That all makes sense, it seems easiest/more-encapsulated to have a short-circuit on the selectors to return an empty data structure of the appropriate type, or whatever would make sense as a default, thanks 👍