FX_NO_ARRAY_KEY_SORT was not used outside of portable builds

FX_NO_ARRAY_KEY_SORT was defined by portable builds (profile 47, 7, 78, and 259)
Now that these portable builds have been removed, code defined within these compiler directives is no longer needed.

@dotnet-bot test Windows_NT Release_ci_part2 Build please

Nice thanks for this.


Can't add names in Malayalam

From https://forum.inaturalist.org/t/malayalam-lexicon/27654 I can replicate on Staging.

Add മാസ്ക് 3 as a new name in Malayalam for https://staging.inaturalist.org/taxa/568993-Strophidia-caudata
Get the following error:

Probably need to make sure that we allow a lexicon if it exists in another language and is also in English. This validation was intended to prevent people from adding "Français" instead of "French".

Sorry i did not get you fully. Let me clarify the issue here again.
Malayalam is the language of Indian state of Kerala. We have added lots of common names in Malayalam so far. We noticed this issue recently. Now i am not able to add any Malayalam word for any taxa under already existing Lexicon "Malayalam". I am able to edit already existing one.


Fix IOError during thumbnail phase

This fixes a bug where certain TIFFs were not able to be thumbnailed by
Pillow. I solved this by using gdal_translate to produce a PNG which
is then used to generate each thumbnail.
I also discovered a utility function called fit in the PIL library
which I have decided to add since it is more succinct and also gives us
the ability to center align thumbnail images.
Connects #333
Connects #340

It took my worker about 10 minutes to thumbnail one image. Maybe my network or machine is bogged down right now.
[INFO] 2015-11-12 15:53:50 process Done generating thumbnails for layer 2
[INFO] 2015-11-12 15:53:50 process Executing job timeout
[INFO] 2015-11-12 15:53:50 process Executing job thumbnail_image
[INFO] 2015-11-12 15:53:50 process Generating thumbnails for image 2...
Input file size is 10010, 11228
0...10...20...30...40...50...60...70...80...90...100 - done.
[INFO] 2015-11-12 16:03:13 process Done generating thumbnails for image 2

Nice refactoring. +1, tested

It did take longer than I expected but it looks solid. +1. Tested.

I think we are experiencing internal networking issues which should explain any slowness in uploading/downloading files.


Native memory helpers

Adds helpers for converting between Dart and native memory for the following scenarios:

A list of Dart doubles <-> A list of native floats
A Dart Uint8List <-> A native Pointer<Char>.

Additionally, I would like to submit the function Uint8List toUint8List(Pointer<Char> val, {int? length}) for code review, even though it was committed previously.
--
The context for this PR is work around Embeddings, which are currently emitting random results on sequential runs, and for which I want to rule out these low level memory mapping helpers.
cc @Piinks

A Dart Uint8List <-> A native Pointer<Char>.

This is not entirely safe. The char type behaves as int8 on some platforms and as uint8 on other platforms. You can notice differences once using the indexed access operator in Dart for values 128-255 (or -128 to -1). Depending on the use case this might or might not be an issue. ByteBuffer and ByteData  are classes that just passes around a piece of memory and does not promise a specific layout. The latter being able to pass around views with a non-zero offset. Again, it probably depends on the use case what solution makes sense.

This is not entirely safe. The char type behaves as int8 on some platforms and as uint8 on other platforms.

A Dart Uint8List <-> A native Pointer<Char>.

This is not entirely safe. The char type behaves as int8 on some platforms and as uint8 on other platforms. You can notice differences once using the indexed access operator in Dart for values 128-255 (or -128 to -1). Depending on the use case this might or might not be an issue. ByteBuffer and ByteData  are classes that just passes around a piece of memory and does not promise a specific layout. The latter being able to pass around views with a non-zero offset. Again, it probably depends on the use case what solution makes sense.
We have a tracking issue for .asTypedList on Pointer<T extends AbiSpecificInteger>:

[vm/ffi] asTypedList for Pointer<T extends AbiSpecificInteger> dart-lang/sdk#54119

Do you have any estimates on the tracking issue? It doesn't seem about to land, given that you haven't gotten any responses to your questions.
Absent that catch-all implementation, I'd love to quickly sync on the edge cases here to make sure I'm properly handling everything. Even with your helpful answer, I'm not sure how to exhaustively handle these edge cases.

This PR is being replaced.


Feature Request for Distortion Shader

thank you for providing such an amazing shader. This is the best method for urp distortion.
i have added the following feature for my own use, but no idea about CustomEditor, so I haven't been able to make PR for it.. would it be possible to add these features?

Use Vertex Color Alpha as Distortion Intensity. For Color over Lifetime

// "mul" is preferable not "add"
half distortionIntensity = input.color.w * _DistortionIntensity

Distortion Base Map R/G Mul

distortion.x = distortionSrc[(uint)_BaseMapChannelsX] * _DistortionRMultiplier;
distortion.y = distortionSrc[(uint)_BaseMapChannelsY] * _DistortionGMultiplier;

Distortion Base Map UV Movement

baseMapUv.x += _Time.y * _DistortionUSpeed;
baseMapUv.y += _Time.y * _DistortionVSpeed;

unsure if these features would be beneficial for Nova Shader. maybe i should fork. thoughts?

@Ajido
Thank you for using our services and for contacting us.
As this is a request for additional functionality, we will discuss with our development team on the details to be addressed.
It is expected to take some time, so we will contact you again when we have decided on a course of action.


Opt-out of autocomplete / _setInputValueToQuery OnBlur

We are using typeahead to populate a list of selected items. On selection an item is added to the list and the typeahead input is cleared. OnBlur we'd like to leave the input empty rather than populated with the last item selected.
We tried capturing, stoping propagation, and manually focusing onBlur without luck.
Our current hack solution is modifying typeahead.js to clearSuggestions in the handler for blurred/cursorRemoved:
_setInputValueToQuery: function() {
    this.dropdownView.clearSuggestions();
},

Is there an obvious way to do this we're missing? If not, this would be really handy in list creation scenarios.
Thanks (and awesome work, the new events are great!).

OH stranger from the past, thank you for your wisdom !!
$(el).typeahead('val', '');


yaml: Use https:// instead git:// for fetching

Acked-by: Volodymyr Babchuk<EMAIL_ADDRESS>

Tested by successful fetch and build of prod-devel-rcar for h3ulcb-4x2g with DomU enabled.
Ack is added.
The commit message is improved.
Ready to be merged.


fix: [NPM-WIN] ability to reassign Pod associated with Endpoint

Fix #1729. Improves on Pod markedForDelete idea in original commits of #1503 (see https://github.com/Azure/azure-container-networking/pull/1503/commits/398c99e4d1d2fbbf013a4429a68bb065e79215be).
Overview
NPM may incorrectly assign a Pod to an Endpoint. NPM needs to be able to reconcile this.
Scenario
Pod x/a, x/b, and NPM all restart at same time. Pod x/a had IP <IP_ADDRESS> before restart. Pod x/b has <IP_ADDRESS> after restart.
NPM can receive the following sequence of events:

Pod x/a create --> Pod x/a delete --> Pod x/b create
Pod x/a create --> Pod x/b create --> Pod x/a delete
~Pod x/b create --> Pod x/a create --> Pod x/a delete~ (considered impossible)

Changes
When receiving Pod B event, DP must make sure there are no Pod A ACLs on the Endpoint. Also, DP must not process Pod A events for the same IP afterwards.
Minor Changes
Remove complex, unnecessary stalePodKey logic. Stale Pod Key was designed to handle this (impossible) situation: a Pod's Update event comes in after its Delete event. It is safe to assume that the Pod Controller won't send an Update after a Delete event for the same Pod/IP pair.

/azp run

/azp run

/azp run

/azp run

/azp run


Handle out of bounds method offsets as an error

See neo-project/neo-vm#376. I'm a little disappointed that we didn't detect this problem and actually reproduced buggy behavior. For now we need to stay compatible and I'm not sure it'll be a part of preview4, so the fix can be postponed until neo-vm fixes it.

Fixed with #1729.


Update dependencies and regenerate

linux-x64 restart

win32-x64 restart

win32-x64 restart

win32-x64 restart

@olydis Isn't that how I'm supposed to restart win32-x64 checks?

just write "> win32-x64 restart", the code formatting is the signal that it got picked up (will change that to some emoji reaction when I get the chance)


Users Client disappears on Message from Specific User.

My Setup

Operating System: Windows 10 1909
App Version: 2.7.11
Installation type: exe

Server

Ubuntu 20.04 LTS
3.4.2 recently upgraded from 2.4.x Issue happened on both.
Snap

Description
When one of my users receives a message from a specific user it closes their client
Current Behavior
User receives message from specific user and their client closes.  No messages, no logs that I can find.
Expected Behavior
User should receive message without their client closing.
Edit:
Ive since found a log from the server.
I have autotranslate off to begin with.
I20200813-14:00:35.135(-7) Exception while invoking method autoTranslate.getSupportedLanguages Error: Auto-Translate is not allowed [error-action-not-allowed]     at MethodInvocation.autoTranslate.getSupportedLanguages (app/autotranslate/server/methods/getSupportedLanguages.js:11:10)     at MethodInvocation.methodsMap.<computed> (app/lib/server/lib/debug.js:67:34)     at maybeAuditArgumentChecks (packages/ddp-server/livedata_server.js:1771:12)     at packages/ddp-server/livedata_server.js:1689:15     at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1234:12)     at packages/ddp-server/livedata_server.js:1687:36     at new Promise (<anonymous>)     at Server.applyAsync (packages/ddp-server/livedata_server.js:1686:12)     at Server.apply (packages/ddp-server/livedata_server.js:1625:26)     at Server.call (packages/ddp-server/livedata_server.js:1607:17)     at Object.post (app/api/server/v1/misc.js:262:26)     at app/api/server/api.js:388:82     at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1234:12)     at Object._internalRouteActionHandler [as action] (app/api/server/api.js:388:39)     at Route.share.Route.Route._callEndpoint (packages/nimble_restivus/lib/route.coffee:150:32)     at packages/nimble_restivus/lib/route.coffee:59:33     at packages/simple_json-routes.js:98:9  => awaited here:     at Promise.await (/snap/rocketchat-server/1439/programs/server/npm/node_modules/meteor/promise/node_modules/meteor-promise/promise_server.js:60:12)     at Server.apply (packages/ddp-server/livedata_server.js:1638:22)     at Server.call (packages/ddp-server/livedata_server.js:1607:17)     at Object.post (app/api/server/v1/misc.js:262:26)     at app/api/server/api.js:388:82     at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1234:12)     at Object._internalRouteActionHandler [as action] (app/api/server/api.js:388:39)     at Route.share.Route.Route._callEndpoint (packages/nimble_restivus/lib/route.coffee:150:32)     at packages/nimble_restivus/lib/route.coffee:59:33     at packages/simple_json-routes.js:98:9  I20200813-14:00:49.870(-7) Exception while invoking method autoTranslate.getSupportedLanguages Error: Auto-Translate is not allowed [error-action-not-allowed]     at MethodInvocation.autoTranslate.getSupportedLanguages (app/autotranslate/server/methods/getSupportedLanguages.js:11:10)     at MethodInvocation.methodsMap.<computed> (app/lib/server/lib/debug.js:67:34)     at maybeAuditArgumentChecks (packages/ddp-server/livedata_server.js:1771:12)     at packages/ddp-server/livedata_server.js:1689:15     at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1234:12)     at packages/ddp-server/livedata_server.js:1687:36     at new Promise (<anonymous>)     at Server.applyAsync (packages/ddp-server/livedata_server.js:1686:12)     at Server.apply (packages/ddp-server/livedata_server.js:1625:26)     at Server.call (packages/ddp-server/livedata_server.js:1607:17)     at Object.post (app/api/server/v1/misc.js:262:26)     at app/api/server/api.js:388:82     at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1234:12)     at Object._internalRouteActionHandler [as action] (app/api/server/api.js:388:39)     at Route.share.Route.Route._callEndpoint (packages/nimble_restivus/lib/route.coffee:150:32)     at packages/nimble_restivus/lib/route.coffee:59:33     at packages/simple_json-routes.js:98:9  => awaited here:     at Promise.await (/snap/rocketchat-server/1439/programs/server/npm/node_modules/meteor/promise/node_modules/meteor-promise/promise_server.js:60:12)     at Server.apply (packages/ddp-server/livedata_server.js:1638:22)     at Server.call (packages/ddp-server/livedata_server.js:1607:17)     at Object.post (app/api/server/v1/misc.js:262:26)     at app/api/server/api.js:388:82     at Meteor.EnvironmentVariable.EVp.withValue (packages/meteor.js:1234:12)     at Object._internalRouteActionHandler [as action] (app/api/server/api.js:388:39)     at Route.share.Route.Route._callEndpoint (packages/nimble_restivus/lib/route.coffee:150:32)     at packages/nimble_restivus/lib/route.coffee:59:33     at packages/simple_json-routes.js:98:9

App Version: 2.7.11

Try to upgrade latest 2.17.11 version
And could you please show that problem message? Which cause app crash.

All clients are already on that version.
Its not a specific message content.  Its just the fact it from specific person.
But one message that has done it is....
boot

Please test if the problem persists with our latest release. I will be closing the issue but if there is any problem yet, we will open it again.


Configure Azure Pipelines

This pipeline configuration builds the application and produces a build for the Release configuration.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: MattKlemp sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

PR was meant for my personal fork.


Broken on Android (BlackBerry) mobile devices (Possibly Others?) [Cannot read property 'nodeType' of null]

This issue has presented itself on every device I've tested, all of which are up-to-date. It was originally found while testing my project site on mobile, but confirmed to be affecting the demo available at https://simplemde.com/.
This bug is strange and primarily affects line breaks & deleting. 'Backspacing' a newline won't delete the line, but instead move the cursor up a line. If you hit enter, enter, enter - then backspace, backspace, backspace - the status bar (and contents) will think there are still 3 lines of input, and it's value will not equal "".
If you delete some text then hit enter, the deleted text will randomly be restored. This is problematic. The same deleted text is also assumed by the editor to still exist, and will be present when querying it's 'value'.

Also, when selecting a predicted word in the phone's keyboard, the text does not get input into the editor.

I am having this issue in 2018.
This is the textarea element I'm trying to edit with SimpleMDE
<textarea name="contents" id="contents" class="form-control entry_editor" rows="15"> </textarea>

These are my script tags, which are after the textarea element.
<link rel="stylesheet" href="https://cdn.jsdelivr.net/simplemde/latest/simplemde.min.css">
<script src="https://cdn.jsdelivr.net/simplemde/latest/simplemde.min.js"></script>
<script>

            <!-- Start simple MDE -->

    var simplemde = new SimpleMDE({
        element: document.getElementById("contents"),
        styleSelectedText: false,
        <!--spell checker might be the culprit of editing glitches on mobile-->
        spellChecker: false,
    });

</script>

When editing on mobile cursor placement by tapping works but typing causes the cursor to jump to a seemingly random location while copying recently typed characters and pasting them at the cursor's current location.
Text highlighted by the spellchecker becomes duplicated when tapped.

Had the same issue. Switching to the EasyMDE fork solved the mobile issues for me: https://github.com/Ionaru/simplemde-markdown-editor

I faced same issue as *TheCDC. Thanks  saschan for suggestion easymde really works and doesn't have this problem.

Have this problem on Android but not desktop.

2022 and same issue... only on mobile mode


need more complex conditions

what I need not just "||" all topics but setting more complex conditions like:
'TopicA' in topics && ('TopicB' in topics || 'TopicC' in topics)
how about add a setCondition() ?
thanks!

Already thought about that when writing the earliest versions. Would need quiet a bit logic, since you would want to do it with a build pattern and demeter chains on the interface, but also allowing for nested conditions (representing what you put in braces in your comment) in the generated request.
Tagged as enhancement and will do it, but likely not in the next 2 weeks.


Review unit test pattern/framework and controller coverage

Description:

Check for patterns and frameworks to support unit tests in helium-typescript (currently using jest)
Provide guidance on unit testing the controllers
Implement unit tests on controllers (can be broken out into a separate task/issue)
References #11

Just talked with Anne about this one.
We decided (unless anyone disagrees) to stick with Jest as the test framework because...

it's already in place
it's a bit simpler than mocha/chai
we don't need the power and configurability of mocha/chai for this project

We also decided that for testing controllers, we would fetch the test data directly from the raw json files in the /imdb repo.
I'll begin this work next.


Function that converts phi to ra based on gpstime of event

Write a utility function that converts from our measured phi to the true ra value based on the gpstime of the event. Use this function before plotting posteriors so we can compare directly with bilby.

The function is basically the snippet mentioned here: https://github.com/ML4GW/PE/pull/66#discussion_r1142790074

This is now done in the aps-dev branch. Close once merged to main.


Add all required pages to storybook, including design system for colors etc

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Table cell data shifted/overflowing - HTML source

Hello,
I am using jspdf to generate a pdf of an events calendar on a website.

However all of the table data is shifted by two cells.  Any idea why this is happening or what I can do to resolve it?  The code I am using to generate the PDF:
<button onclick="javascript:generatePDFcalendar();">Download PDF</button>

<script type="text/javascript">
        function generatePDFcalendar() {
            var pdf = new jsPDF('l', 'pt', 'letter');
            // source can be HTML-formatted string, or a reference
            // to an actual DOM element from which the text will be scraped.
            source = jQuery('#print-calendar')[0];

            // we support special element handlers. Register them with jQuery-style
            // ID selector for either ID or node name. ("#iAmID", "div", "span" etc.)
            // There is no support for any other type of selectors
            // (class, of compound) at this time.
            specialElementHandlers = {
                // element with id of "bypass" - jQuery style selector
                '#bypassme': function(element, renderer) {
                    // true = "handled elsewhere, bypass text extraction"
                    return true
                }
            };
            margins = {
                top: 80,
                bottom: 60,
                left: 40,
                width: 522
            };
            // all coords and widths are in jsPDF instance's declared units
            // 'inches' in this case
            pdf.fromHTML(
                    source, // HTML string or DOM elem ref.
                    margins.left, // x coord
                    margins.top, {// y coord
                        'width': margins.width, // max width of content on PDF
                        'elementHandlers': specialElementHandlers
                    },
            function(dispose) {
                // dispose: object with X, Y of the last line add to the PDF
                //          this allow the insertion of new lines after html
                pdf.save('Calendar-test.pdf');
            }
            , margins);
        }
    </script>

@pierrerocket
You could try with table_2:
https://github.com/MrRio/jsPDF/pull/1074

We are closing this issue, because we will not support any longer fromHTML and addHTML.
Explaination:
We are working on a new html2pdf plugin, which will be based on html2canvas and our context2d plugin. This should lead to more reliable results for your projects. And it will give us the time to focus on the core functionality of pdf-generation because we will not use our energy for writing/supporting/extending 2 html plugins. If you still want to use addHTML or fromHTML you can still use jsPDF 1.4.1.
Best Regards


update gotest version

fix the ci failure of auto-release and mock test of mgmt. package.

One success result: https://dev.azure.com/azure-sdk/public/_build/results?buildId=2882425&view=results


TypeError: init() got an unexpected keyword argument 'normalize' from src.decomposition.seasonal import MultiSeasonalDecomposition,STL

While executing this piece of code in 01-Visualizing Time Series.ipynb i obtain the following error:
TypeError: init() got an unexpected keyword argument 'normalize'

I set correctly the conda environment

I did not fix the dependency for scikit-learn and in the recent update, they removed this parameter.
Immediate fix is to downgrade sci-kit learn to 1.1
pip install scikit-learn==1.1.3
In the meantime, I can update the code to make it work with the new version as well.

That would be great. Thanks!


Getting error - None values not supported when running ram.py

Here is the traceback:
Build model...
Traceback (most recent call last):
File "ram.py", line 117, in
model = RecurrentAttentionMemory()
File "ram.py", line 86, in init
x = shared_attention((memory, x))
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/keras/_impl/keras/engine/base_layer.py", line 239, in call
output = super(Layer, self).call(inputs, **kwargs)
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/layers/base.py", line 714, in call
outputs = self.call(inputs, *args, **kwargs)
File "/Users/tushar/workspace/python/impact/songyouwei/SA-DL/attention_layer.py", line 66, in call
score *= K.cast(mask, K.floatx())
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/keras/_impl/keras/backend.py", line 1226, in cast
return math_ops.cast(x, dtype)
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/ops/math_ops.py", line 779, in cast
x = ops.convert_to_tensor(x, name="x")
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 950, in convert_to_tensor
as_ref=False)
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 1040, in internal_convert_to_tensor
ret = conversion_func(value, dtype=dtype, name=name, as_ref=as_ref)
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/ops/array_ops.py", line 1026, in _autopacking_conversion_function
return _autopacking_helper(v, inferred_dtype, name or "packed")
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/ops/array_ops.py", line 988, in _autopacking_helper
constant_op.constant(elem, dtype=dtype, name=str(i)))
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/framework/constant_op.py", line 214, in constant
value, dtype=dtype, shape=shape, verify_shape=verify_shape))
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/framework/tensor_util.py", line 421, in make_tensor_proto
raise ValueError("None values not supported.")
ValueError: None values not supported.
Is there something that needs fixing?

Hi @tusharkgerg, did you find any solution for this issue? I have the same issue.


Add George Hill

https://trello.com/c/NmHLg0q7/92-2-onboard-two-ccs-techops-people-so-they-can-pair-with-us
From CCS techops. Have confirmed we've OK to give George prod access - see linked ticket for details.

I'll wait to merge this until I'm on a call with George.


Spelling

Changes look good. Thank you for helping to improve Kvasir. The only thing is that we only merge to master each final version. Could you recreate this pull request but then to the development branch?

Closing in favor of https://github.com/kvasir-io/Kvasir/issues/100


Recording bug on orientation change

Hello,
Device : Nexus 5, Android 6, hammered/hammered
synopsis : start recording a video, change orientation (recording seems to stop), start again recording, it finishes the activity. I think the only problem is the toggle button state on resume.

Addressed in v0.5.4.


Add negation support.

Add negation support via the negate flag in check.
Add unit tests for success and failure cases.
Update README.
Resolves #6.

Signed-off-by: Azeem Sajid<EMAIL_ADDRESS>

Hi, is there a way to merge that PR ?


Some clarity around suggested metastore caching settings

Hello—
The recommended settings from the README are:
hive.metastore-cache-ttl=0s
hive.metastore-refresh-interval = 5s

I believe the hive.metastore-cache-ttl set to 0 tells Presto NOT to cache. Then the second setting says to asynchronously refresh the cache every 5, though I think it won't be used. This can put a lot of load on the Presto server + Metastore.  We've seen rate limiting using the AWS Glue Catalog that I suspect are because of these settings.
I'm trying to understand the implications of using caching to speed things up, with or without a refresh interval. Something like this:
hive.metastore-cache-ttl=120s
hive.metastore-refresh-interval = 60s

So long as it takes less than 60 seconds to refresh to metastore, users doing interactive dbt develoment should never experience slowness related to the Metastore. At the same time we won't be thrashing the Metastore every 5 seconds.
But I feel like I might be missing something, so just wanted to see what the reasoning behind that catalog setting for hive would be.

We've been doing some additional thinking and investigation here, so just sharing in case it is helpful.

If using EMR, AWS sets the relevant Hive catalog properties as follows:

hive.metastore-cache-ttl=20m
hive.metastore-refresh-interval=1m

I don't know if this is good or bad, but it's a data point.

Turning caching ttl to something non-zero, as expected, significantly speeds up dbt startup where is does a whole bunch of metadata queries. For us, this went from occasionally taking 10 minutes to about 30 seconds, sometimes a lot less.
I found this post which states:

Presto’s metadata cache is in the coordinator, so it doesn’t suffer cache consistency problem if user only changes objects via Presto. However, if user also changes objects in the metastore via Hive, it suffers from inconsistency until a refresh occurs.

So that does suggest caching would be safe if the Presto cluster used to run dbt is the same cluster used to query it for other use cases. And what it is really saying is that the other presto clusters, if in use, may want different caching settings.

This mirrors our experience. We ended up setting up the cache for an hour - AWS Glue Catalog is very limited with the number of requests it can handle and AWS isn't very eager to increase the limits.
One trick we found was that running show schemas or show tables in Presto / Trino makes it refresh immediately. That can fix problems with something like "we created a schema / database over AWS API and Presto can't see it".
On the other hand, I assume that Presto with metadata repository that actually works well (like normal Hive Metastore or hopefully Iceberg in the future), the caching might not really be necessary at all.

@wrborigin Are you using EMR?
We've also found (and AWS support has been able to replicate) an issue where Presto on EMR doesn't cache at all when using the Glue Catalog. So we've struggled mightily with this trying to move our dbt jobs from Spark to Presto. We are using the latest version of EMR: 6.3 which uses Presto 0.145.1
I've been told this is not an issue with PrestoSQL (AKA Trino) on EMR, and that the caching works fine with there.
In terms fo what to recommend for dbt users, I think a different caching recommendation in general is warranted, and something like a 20m to 1hr ttl seems sensible. I'd probably make the further, more broad recommendation that using a separate Presto cluster for dbt is likely a good idea.
And finally, use the AWS Glue Catalog metastore at your own risk :)

For those who might stumble upon this issue, there's a hidden property for Presto on EMR that will enable caching when using the Glue Catalog:
hive.metastore.glue.shared-metastore-cache-enabled=true

This is currently not documented anywhere.

Hi,
I tried metadata cache with config 'presto-connector-hive : hive.metastore.glue.shared-metastore-cache-enabled=true' on EMR 6.4 and EMR 6.8. But still cache doesn't work at all.
Can you comment on that ?
Thanks.


Error launching 0.9.0-beta.2

Please describe what you were doing when this error happened: I tried to launch the beta as requested by @hacdias to debug setting the "launch on startup" checkbox - https://github.com/ipfs-shipyard/ipfs-desktop/issues/1066
Specifications

OS: darwin
IPFS Desktop Version: 0.9.0-beta.2
Electron Version: 6.0.2
Chrome Version: 76.0.3809.110

Error
Error: EROFS: read-only file system, open '/private/var/folders/pf/43th2gq17rd5ft2_2wn05mhc0000gn/T/AppTranslocation/EF5C9B25-0696-4902-BA7F-C474CBD0A59A/d/IPFS Desktop.app/Contents/Resources/app.asar.unpacked/out/ipfs-on-path/scripts/IPFS_PATH'
    at Object.openSync (fs.js:447:3)
    at Object.func (electron/js2c/asar.js:155:31)
    at Object.func [as openSync] (electron/js2c/asar.js:155:31)
    at Object.writeFileSync (fs.js:1206:35)
    at writeIpfsPath (/private/var/folders/pf/43th2gq17rd5ft2_2wn05mhc0000gn/T/AppTranslocation/EF5C9B25-0696-4902-BA7F-C474CBD0A59A/d/IPFS Desktop.app/Contents/Resources/app.asar/out/daemon/index.js:376:23)
    at _callee3$ (/private/var/folders/pf/43th2gq17rd5ft2_2wn05mhc0000gn/T/AppTranslocation/EF5C9B25-0696-4902-BA7F-C474CBD0A59A/d/IPFS Desktop.app/Contents/Resources/app.asar/out/daemon/index.js:163:27)
    at tryCatch (/private/var/folders/pf/43th2gq17rd5ft2_2wn05mhc0000gn/T/AppTranslocation/EF5C9B25-0696-4902-BA7F-C474CBD0A59A/d/IPFS Desktop.app/Contents/Resources/app.asar/node_modules/regenerator-runtime/runtime.js:45:40)
    at Generator.invoke [as _invoke] (/private/var/folders/pf/43th2gq17rd5ft2_2wn05mhc0000gn/T/AppTranslocation/EF5C9B25-0696-4902-BA7F-C474CBD0A59A/d/IPFS Desktop.app/Contents/Resources/app.asar/node_modules/regenerator-runtime/runtime.js:271:22)
    at Generator.prototype.<computed> [as next] (/private/var/folders/pf/43th2gq17rd5ft2_2wn05mhc0000gn/T/AppTranslocation/EF5C9B25-0696-4902-BA7F-C474CBD0A59A/d/IPFS Desktop.app/Contents/Resources/app.asar/node_modules/regenerator-runtime/runtime.js:97:21)
    at asyncGeneratorStep (/private/var/folders/pf/43th2gq17rd5ft2_2wn05mhc0000gn/T/AppTranslocation/EF5C9B25-0696-4902-BA7F-C474CBD0A59A/d/IPFS Desktop.app/Contents/Resources/app.asar/node_modules/@babel/runtime/helpers/asyncToGenerator.js:3:24)

Uh, do you have any special/non-default security settings enabled? The problem stated shouldn't happen to the regular user... It seems you have apps installed on a read-only file system, and since we use the file system to store some data, it fails.

Okay, I have updates. Good and bad. Found this info:

Starting with macOS Sierra, running a newly-downloaded app from a disk image, archive, or the Downloads directory will cause Gatekeeper to isolate that app at a unspecified read-only location in the filesystem. This will prevent the app from accessing code or content using relative paths.

Did you run it inside the DMG itself? I can reproduce the exact same error if you did so, which is great! Please let me know if that was it before thinking about a solution (which I actually... have).

I used the "IPFS-Desktop-0.9.0-beta.2-mac.zip" option before. Trying "IPFS-Desktop-0.9.0-beta.2.dmg" quits on startup with the same notification. Will "report the error" for that as well in case there are any differences - https://github.com/ipfs-shipyard/ipfs-desktop/issues/1078.
Yes, it does error on startup and prevents execution.


Add RoomService's code locks to CFTools.

One of the modded servers has the code locks mod written by RoomService. We want to have access to codes and unlocks like we do on the no-client-mod server.
If possible, add it to the existing lock mod so it'll support both... But not if it prevents the server-side only part from working.

I believe admins have the ability to see code locks by default with that mod. I will check the config but pretty sure I saw that option in the json file.

I see that in the pbo file now. Do the other admins still have a desire for them to show up on the cftools map in-addition to in-game access?


Missed refactoring VMSS NICs and Deployments using Manager.Inner simplifications

Can one of the admins verify this patch?


sched: assert if call timedwait from interrupt

Summary
sched: assert if call timedwait from interrupt
Impact
timewait in irq
Testing
vela

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


docker-compose up Generating error because of ruby's version?

Description
I've started installing Portus via docker pull but it failed to get accessible, so I went to an underground approach using docker-compose up inside the examples/compose folder. When I ran the command I've got the following error caming from the background_1 container:
background_1  | /usr/bin/bundle:23:in `load': cannot load such file -- /usr/lib64/ruby/gems/2.6.0/gems/bundler-1.16.4/exe/bundle (LoadError)
background_1  | 	from /usr/bin/bundle:23:in `<main>'

Steps to reproduce

git clone https://github.com/SUSE/Portus.git
cd Portus/examples/compose
Change FQDN inside .env file
Insert .key and .crt files inside secrets directory
Run docker-compose up -d

Expected behavior: I expected Portus to get up and running!
Actual behavior: I've got the error above...

Here's the full log for more information:
root@me:~/github/Portus/examples/compose# docker-compose up
Starting compose_db_1 ... done
Starting compose_portus_1 ... done
Starting compose_background_1 ... done
Starting compose_registry_1   ... done
Attaching to compose_db_1, compose_portus_1, compose_registry_1, compose_background_1
db_1          | 190520 17:45:30 [Note] mysqld (mysqld 10.0.23-MariaDB-1~jessie) starting as process 1 ...
db_1          | 190520 17:45:30 [Note] InnoDB: Using mutexes to ref count buffer pool pages
db_1          | 190520 17:45:30 [Note] InnoDB: The InnoDB memory heap is disabled
db_1          | 190520 17:45:30 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
db_1          | 190520 17:45:30 [Note] InnoDB: Memory barrier is not used
db_1          | 190520 17:45:30 [Note] InnoDB: Compressed tables use zlib 1.2.8
db_1          | 190520 17:45:30 [Note] InnoDB: Using Linux native AIO
db_1          | 190520 17:45:30 [Note] InnoDB: Using CPU crc32 instructions
db_1          | 190520 17:45:30 [Note] InnoDB: Initializing buffer pool, size = 256.0M
db_1          | 190520 17:45:30 [Note] InnoDB: Completed initialization of buffer pool
db_1          | 190520 17:45:30 [Note] InnoDB: Highest supported file format is Barracuda.
db_1          | 190520 17:45:30 [Note] InnoDB: 128 rollback segment(s) are active.
db_1          | 190520 17:45:30 [Note] InnoDB: Waiting for purge to start
db_1          | 190520 17:45:30 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.26-76.0 started; log sequence number 2185799
db_1          | 190520 17:45:30 [Note] Plugin 'FEEDBACK' is disabled.
db_1          | 190520 17:45:30 [Note] Server socket created on IP: '::'.
db_1          | 190520 17:45:30 [Warning] 'proxies_priv' entry '@% root@ff57fe270514' ignored in --skip-name-resolve mode.
db_1          | 190520 17:45:30 [Note] mysqld: ready for connections.
db_1          | Version: '10.0.23-MariaDB-1~jessie'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  mariadb.org binary distribution
registry_1    | time="2019-05-20T17:45:31Z" level=info msg="debug server listening <IP_ADDRESS>:5001"
registry_1    | time="2019-05-20T17:45:31Z" level=warning msg="No HTTP secret provided - generated random secret. This may cause problems with uploads if multiple registries are behind a load-balancer. To provide a shared secret, fill in http.secret in the configuration file or set the REGISTRY_HTTP_SECRET environment variable." go.version=go1.7.6 instance.id=bacbc0d0-5a87-41c1-9bbb-159d5cc6cf4b version=v2.6.2-14-ga66a4c3
registry_1    | time="2019-05-20T17:45:31Z" level=info msg="configuring endpoint portus (http://pop-os:3000/v2/webhooks/events), timeout=2s, headers=map[]" go.version=go1.7.6 instance.id=bacbc0d0-5a87-41c1-9bbb-159d5cc6cf4b version=v2.6.2-14-ga66a4c3
registry_1    | time="2019-05-20T17:45:31Z" level=info msg="redis not configured" go.version=go1.7.6 instance.id=bacbc0d0-5a87-41c1-9bbb-159d5cc6cf4b version=v2.6.2-14-ga66a4c3
registry_1    | time="2019-05-20T17:45:31Z" level=info msg="Starting upload purge in 42m0s" go.version=go1.7.6 instance.id=bacbc0d0-5a87-41c1-9bbb-159d5cc6cf4b version=v2.6.2-14-ga66a4c3
registry_1    | time="2019-05-20T17:45:31Z" level=info msg="listening on [::]:5000" go.version=go1.7.6 instance.id=bacbc0d0-5a87-41c1-9bbb-159d5cc6cf4b version=v2.6.2-14-ga66a4c3
portus_1      | /usr/bin/bundle:23:in `load': cannot load such file -- /usr/lib64/ruby/gems/2.6.0/gems/bundler-1.16.4/exe/bundle (LoadError)
portus_1      | 	from /usr/bin/bundle:23:in `<main>'
portus_1      | Database ready
background_1  | /usr/bin/bundle:23:in `load': cannot load such file -- /usr/lib64/ruby/gems/2.6.0/gems/bundler-1.16.4/exe/bundle (LoadError)
background_1  | 	from /usr/bin/bundle:23:in `<main>'
background_1  | Database ready
portus_1      | [34] Puma starting in cluster mode...
portus_1      | [34] * Version 3.12.1 (ruby 2.6.3-p62), codename: Llamas in Pajamas
portus_1      | [34] * Min threads: 1, max threads: 4
portus_1      | [34] * Environment: production
portus_1      | [34] * Process workers: 4
portus_1      | [34] * Preloading application
portus_1      | [schema] Selected the schema for mysql
portus_1      | [Mailer config] Host:     pop-os
portus_1      | [Mailer config] Protocol: https://
portus_1      | Creating scope :owner. Overwriting existing method TeamUser.owner.
portus_1      | Creating scope :contributor. Overwriting existing method TeamUser.contributor.
portus_1      | Creating scope :viewer. Overwriting existing method TeamUser.viewer.
portus_1      | [34] * Listening on tcp://<IP_ADDRESS>:3000
portus_1      | [34] ! WARNING: Detected 1 Thread(s) started in app boot:
portus_1      | [34] ! #<Thread:0x0000558934f7d790@/srv/Portus/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:299 sleep> - /srv/Portus/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:301:in `sleep'
portus_1      | [34] Use Ctrl-C to stop
portus_1      | [34] - Worker 0 (pid: 36) booted, phase: 0
portus_1      | [34] - Worker 1 (pid: 39) booted, phase: 0
portus_1      | [34] - Worker 2 (pid: 48) booted, phase: 0
portus_1      | [34] - Worker 3 (pid: 56) booted, phase: 0
background_1  | [schema] Selected the schema for mysql
background_1  | [Mailer config] Host:     pop-os
background_1  | [Mailer config] Protocol: https://
background_1  | Creating scope :owner. Overwriting existing method TeamUser.owner.
background_1  | Creating scope :contributor. Overwriting existing method TeamUser.contributor.
background_1  | Creating scope :viewer. Overwriting existing method TeamUser.viewer.
background_1  | /usr/bin/bundle:23:in `load': cannot load such file -- /usr/lib64/ruby/gems/2.6.0/gems/bundler-1.16.4/exe/bundle (LoadError)
background_1  | 	from /usr/bin/bundle:23:in `<main>'

Rolling back to the last tagged version gets rid of the error:
diff --git a/examples/compose/docker-compose.yml b/examples/compose/docker-compose.yml
index 78de7fe8..74ba2630 100644
--- a/examples/compose/docker-compose.yml
+++ b/examples/compose/docker-compose.yml
@@ -2,7 +2,7 @@ version: "2"

 services:
   portus:
-    image: opensuse/portus:head
+    image: opensuse/portus:2.4.3
     environment:
       - PORTUS_MACHINE_FQDN_VALUE=${MACHINE_FQDN}

@@ -34,7 +34,7 @@ services:
       - static:/srv/Portus/public

   background:
-    image: opensuse/portus:head
+    image: opensuse/portus:2.4.3
     depends_on:
       - portus
       - db

// @mssola

I have the same issue..

Why got this closed?

@SuperSandro2000 it was closed by the Stale - bot 🤦♂

I know that and I honestly believe that he is the worst thing this platform has seen since a longer time.

FYI, this is a bug in bundler and fixed by https://github.com/rubygems/bundler/pull/6689.
The author wrote a blog post explaining the debugging procedure in details.


Official PSR-7 and PSR-15 support

Would be nice to have official PSR-7 Request DataCollector, and PSR-15 middleware for integration.
I am aware of the already existing package (https://github.com/bitExpert/prophiler-psr7-middleware), but would be nice to have it OOTB, also the middleware is not PSR-15 compatible.
If you like the idea, I would be happy to work on a few PRs.
(I opened this PR because as far as I can see you have no problem with supporting third-party within this package)

Hi @sagikazarmark,
sure, those PRs would be welcome!
Best
Fabian


Trips report

Hi,
On the old system we used to be able to select multiple devices/groups for the trips report.
Currently we can only select 1 device.
Can the device multiselect be added back in

It was removed because:

It is expensive to calculate trips for multiple devices, so there was a common issue with timeouts
It's not very readable when you have a combination of different devices

Please provide some arguments why you think we need it and why benefits are more important that the issues I mentioned.

Hi,
We run reports on multiple vehicles to report on when the start and finish their work day. It's become a very slow process doing each vehicle one by one.
If people are finding it resource intensive they still have the option to only select one vehicle.

Wouldn't event report be more efficient than calculating trips?
As for resource intensive issue, the problem is that end users don't know technical details and they just select groups of devices because it's easier for them. It results in errors that increase support and maintenance overhead for people who are managing the server.

Hi,
Even with the event report I am still only able to select one device.
I need to use the trips report to get the start address and the end address so that I know when they left home and if they returned home in the middle of the day or early.
Is it possible to create a link that we can still use to get to the legacy site if the modern web app isn't going to be changed?
Its not ideal having to stop the server every week to swap back to the legacy site and restart it after the reports are run.
Or is it possible to set a config setting pass through multiDevice as a true or false?
Thanks
        <ReportFilter handleSubmit={handleSubmit} multiDevice>

You can run both apps at the same time. For example, you can use different subdomain and have a proxy server that also hosts the legacy app.

Is there any documentation on how to do this? Its a windows server
Thanks

Don't really have a documentation specifically for that, but if you're familiar with some web server, you should be able to configure it.


Cleanup tests section in readme

Hi!
Some cleanup in the "tests" section in the readme:

dont make the developer install mocha globally, its not needed as mocha is a local devDevependency
rather run npm test and the new test-render script instead of interacting with mocha direcly

Do people even install mocha locally instead of globally?

Yeah, they do. Never mind that.
Okay, what about mentioning npm install in the readme?

Everything else, :+1:.

Yupp, mentioning npm install in the readme sounds like a good idea

..even squashed the commits this time :smiley:

Great, thanks! :)


Simple use case with jQuery and parsing DOM

Expected behavior
I would like to create a simple website parser, but the given examples are way too complex for me to understand.
Actual behavior
I can not parse the DOM.
Steps to reproduce the behavior
With the "normal" phantom I was able to achieve the behaviour with a script like:
var page = require('webpage').create();

page.open(url, function (status) {
    console.log('opened ' + status);
    page.includeJs("https://code.jquery.com/jquery-1.10.2.min.js", function () {
        console.log('included');
        setTimeout(function () {
            var result = page.evaluate(function () {
                var a = $('#myDiv').text();
                return a;
            });
            console.log(result);
            phantom.exit()
        }, 5000);
    });
});

I tried copying your "simple" example, but I am failing to get it working:
phantom
    .create()
    .then(ph => {
        _ph = ph;
        return _ph.createPage();
    })
    .then(page => {
        _page = page;
        return _page.open(url)
    })
    .then(() => {
        return _page.includeJs('https://code.jquery.com/jquery-3.1.1.min.js');
    })
    .then(status => {
        console.log(status);
        var a = $('#myDiv').text(); ///????
        return a; /// ????
        // return _page.property('content');
        return a; // does not work!
    })
    .then(content => {
        console.log(content);
        _page.close();
        _ph.exit();
    })
    .catch(e => console.log(e));

I struggle here for a couple of hours and I would really appreciate some assistance.
Thanks!

Closing due to no response.

Sorry for lack of response.
Thanks for advice, but what is worse, I did a quick debug, and noticed that
return _page.includeJs('https://code.jquery.com/jquery-3.1.1.min.js');
causes my script to hang.
How could I solve this?

That's great. Looks like problem solved itself. I always recommend async/await.


Make alloc feature stable

Can I provide a PR to make the alloc feature stable? This feature currently depends on the unstable feature.

Yep, that would be great. Thanks!


Configurable rules

Instead of just having one global config, add the possibility to configure individual rules.
rule(MyDataType::class, "rule name") {
    defaultConfig { MyDataType(42, "A") } // Could possibly be dependent on other rules
    validation { config.isOK() }
    ... // onStart and other rules as usual
}

The rule name and controls to change the config should then be shown in frontend when creating a new game

Currently I'm considering having the config outside of the rules. Which might be a bit excessive at first, but I think it doesn't have to be mutually exclusive. Support for rules-with-config can be added later.
A big benefit of config outside of the rules is that they can be used for initializing the game model.

Artax now becomes:
    val sizeX = config("x") { 7 }
    val sizeY = config("y") { 7 }
    setup {
        players(2..4)
        init {
            TTArtax(eliminationCallback, playerCount, config(sizeX), config(sizeY))
        }
    }


New Trace log level in logrus

Hello, I'm just opening this issue to let you know, the next release of logrus (v1.2.0) will add a new trace level named Trace below Debug.
Here is the PR for reference sirupsen/logrus#844
You may want to take into account this new level.

Thanks for letting me know. I'll take a look.

Hi sohlich,
Nice to meet you!
Notice that you are looking for the maintainer of  this project. I want to join that.
Cuttently I am using golang/logrus/elasticsearch, and this project help me building my work. I like to contribute some time and work to this project : )

Merged! :-)


code formatting

Stack:

#72
#71
#69
#65
#68
#73
#70
#66 ⬅

⚠ Part of a stack created by spr. Do not merge manually using the UI - doing so may have unexpected results.

✓ Commit merged in pull request #73


Build grpcio wheel from source on Windows

What version of gRPC and what language are you using?
v1.23.xx
What operating system (Linux, Windows,...) and version?
Windows 10
What runtime / compiler are you using (e.g. python version or version of gcc)
Python 3.6 virtual env, MSVC 2017
What did you do?
I tried to build a python wheel for grpcio with the following flags
set GRPC_PYTHON_BUILD_WITH_CYTHON=1
set GRPC_PYTHON_USE_PREBUILT_GRPC_CORE=1
set GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS=2
gRPC core was built according to:
grpc/test/distrib/cpp/run_distrib_test_cmake.bat
gRPC wheel was built according to:
grpc/tools/run_tests/artifacts/build_artifact_python.bat
If possible, provide a recipe for reproducing the error. Try being specific and include code snippets if helpful.
It fails on the first build_ext command
python setup.py build_ext --inplace -vvv
(setup.py at the root dir of grpc repo)
What did you expect to see?
a compiled wheel
What did you see instead?
running build_ext
error: [WinError 2] The system cannot find the file specified
if I run with verobose this is part of the stdout
import 'Cython.Compiler.CythonScope' # <_frozen_importlib_external.SourceFileLoader object at 0x00000206C935BE10>
credentials_dir src\python\grpcio\grpc_cython_credentials
PACKAGES ['grpc', 'grpc.beta', 'grpc.experimental', 'grpc.framework', 'grpc._cython', 'grpc.framework.common', 'grpc.framework.foundation', 'grpc.framework.interfaces', 'grpc.framework.interfaces.base', 'grpc.framework.interfaces.face', 'grpc._cython._cygrpc']
CYTHON_EXTENSION_MODULES [<setuptools.extension.Extension('grpc.cython.cygrpc') at 0x206c9f95390>]
PACKAGE_DIRECTORIES {'': 'src\python\grpcio'}
INSTALL_REQUIRES {'': 'src\python\grpcio'}
SETUP_REQUIRES {'': 'src\python\grpcio'}
EXTRA_ENV_COMPILE_ARGS  -std=c++11 -DPB_FIELD_32BIT
CORE_C_FILES <filter object at 0x00000206C7E9C940>
running build_ext
C:\ProgramData\Anaconda3\envs\grpcio\lib\distutils\command_pycache\build.cpython-36.pyc matches C:\ProgramData\Anaconda3\envs\grpcio\lib\distutils\command\build.py
code object from 'C:\ProgramData\Anaconda3\envs\grpcio\lib\distutils\command\pycache\build.cpython-36.pyc'
import 'distutils.command.build' # <_frozen_importlib_external.SourceFileLoader object at 0x00000206CA1076D8>
error: [WinError 2] The system cannot find the file specified
Anything else we should know about your project / environment?
I suspect the issue has to do with relative and absolute paths but I have no idea where to fix that. The setup scripts are quite complicated. Reading around here and on stackoverflow people had issues with the build in the past. The root was a setuptools bug that was supposed to be resolved and installing the latest version did the trick. I reinstalled the latest setuptools and tried also with older versions but the error is still there.
I read your README where it's stated
"You cannot currently install Python from source on Windows. Things might work out for you in MSYS2 (follow the Linux instructions), but it isn't officially supported at the moment".
How do you build the wheel for windows you distribute on pypi then?
Any help is greatly appreciated.

Same here...  Failing to build a whl file for grpcio on Windows. Any pointers would be really helpful !
(venv) PS C:\grpc> python setup.py build
Cython-generated files are missing...
running build
running build_py
running build_project_metadata
copying src\python\grpcio\grpc\_grpcio_metadata.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_cython\_credentials\roots.pem -> python_build\lib.win-amd64-2.7\grpc\_cython\_credentials
warning: BuildPy: byte-compiling is disabled, skipping.

running build_ext
error: [Error 2] The system cannot find the file specified

@narenandu What version of gRPC are you using? There should have been a very recent fix for this.

Speaking of which, this is a duplicate of https://github.com/grpc/grpc/issues/20879 and should already be resolved. Please comment if you're still having troubles after updating to master.

@gnossen
TL;DR version
1.21.1

Longer Version
we have a specific usecase of building gprcio whl with a custom python interpreter (More details about the python interpreter here: https://clamdragon3d.com/blog/2018/3/22/python-virtualenvs-and-maya). There is an issue of Stream Removed, that prompted us to check for the grpcio version which fixed the issue with tcp_windows.cc file and thus we ended up figuring out that grpcio==1.21.1 is the minimum version necessary to fix the issue.
_Rendezvous: <_Rendezvous of RPC that terminated with:
	status = StatusCode.UNKNOWN
	details = "Stream removed"
	debug_error_string = "{"created":"@1573001562.066000000","description":"Error received from peer","file":"src/core/lib/surface/call.cc","file_line":1017,"grpc_message":"Stream removed","grpc_status":2}"

So trying to build the python library by checking out v1.21.1 in the repository with the custom python interpreter

@narenandu Is it possible to use our latest version? We only provide support for last two major releases.
A work around can be manually patching https://github.com/grpc/grpc/pull/21820 into your clone.

I'm not sure I understand the blocker to using master. Are you saying that the "stream removed" issue is present on master and the latest released version that does not exhibit this issue is 1.21.1?

There is no problem in jumping to master, thought I would upgrade only to the minimum version that resolves our issue. We are on 1.16.1 and 1.21.1 resolves the issue. But I can definitely jump to the latest available version and try to build it, if that generates the whl file needed for my purpose.
Will update on the progress.
Thanks

I would upgrade only to the minimum version that resolves our issue

Why? As @lidizheng pointed out, we only support the last two releases. I quickly scanned the article you linked and didn't see a justification for this.

Ok. I tried to build master and here are the results. Still hitting the same issue, not sure what am I missing out here.
PS C:\> git clone git@github.com:grpc/grpc.git
Cloning into 'grpc'...
Enter passphrase for key '/c/Users/nvadapalli/.ssh/id_rsa':
remote: Enumerating objects: 72, done.
remote: Counting objects: 100% (72/72), done.
remote: Compressing objects: 100% (47/47), done.
remote: Total 496937 (delta 43), reused 43 (delta 25), pack-reused 496865
Receiving objects: 100% (496937/496937), 234.53 MiB | 27.31 MiB/s, done.
Resolving deltas: 100% (389784/389784), done.
Updating files: 100% (10483/10483), done.

PS C:\> cd grpc
PS C:\grpc> C:\work\Python1900\python.exe -m virtualenv venv
  No LICENSE.txt / LICENSE found in source
New python executable in C:\grpc\venv\Scripts\python.exe
Installing setuptools, pip, wheel...
done.

PS C:\grpc> . .\venv\Scripts\activate
(venv) PS C:\grpc> pip install -r requirements.txt
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Looking in indexes: https://pypi.apps.corp.bardel.ca/simple/, https://pypi.org/simple/
Collecting coverage>=4.0
  Using cached coverage-5.0.3-cp27-cp27m-win_amd64.whl (203 kB)
Collecting cython>=0.29.8
  Using cached Cython-0.29.14-cp27-cp27m-win_amd64.whl (1.7 MB)
Collecting enum34>=1.0.4
  Using cached enum34-1.1.6-py2-none-any.whl (12 kB)
Collecting protobuf>=3.5.0.post1
  Downloading protobuf-3.11.3-py2.py3-none-any.whl (434 kB)
     |UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU| 434 kB 7.9 MB/s
Collecting six>=1.10
  Using cached six-1.14.0-py2.py3-none-any.whl (10 kB)
Requirement already satisfied: wheel>=0.29 in c:\grpc\venv\lib\site-packages (from -r requirements.txt (line 7)) (0.34.2)
Requirement already satisfied: setuptools in c:\grpc\venv\lib\site-packages (from protobuf>=3.5.0.post1->-r requirements.txt (line 5)) (44.0.0)
Installing collected packages: coverage, cython, enum34, six, protobuf
Successfully installed coverage-5.0.3 cython-0.29.14 enum34-1.1.6 protobuf-3.11.3 six-1.14.0

(venv) PS C:\grpc> python setup.py bdist_wheel
Cython-generated files are missing...
running bdist_wheel
running build
running build_py
running build_project_metadata
creating python_build
creating python_build\lib.win-amd64-2.7
creating python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_auth.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_channel.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_common.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_compression.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_grpcio_metadata.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_interceptor.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_plugin_wrapping.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_server.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_utilities.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\__init__.py -> python_build\lib.win-amd64-2.7\grpc
creating python_build\lib.win-amd64-2.7\grpc\beta
copying src\python\grpcio\grpc\beta\implementations.py -> python_build\lib.win-amd64-2.7\grpc\beta
copying src\python\grpcio\grpc\beta\interfaces.py -> python_build\lib.win-amd64-2.7\grpc\beta
copying src\python\grpcio\grpc\beta\utilities.py -> python_build\lib.win-amd64-2.7\grpc\beta
copying src\python\grpcio\grpc\beta\_client_adaptations.py -> python_build\lib.win-amd64-2.7\grpc\beta
copying src\python\grpcio\grpc\beta\_metadata.py -> python_build\lib.win-amd64-2.7\grpc\beta
copying src\python\grpcio\grpc\beta\_server_adaptations.py -> python_build\lib.win-amd64-2.7\grpc\beta
copying src\python\grpcio\grpc\beta\__init__.py -> python_build\lib.win-amd64-2.7\grpc\beta
creating python_build\lib.win-amd64-2.7\grpc\experimental
copying src\python\grpcio\grpc\experimental\gevent.py -> python_build\lib.win-amd64-2.7\grpc\experimental
copying src\python\grpcio\grpc\experimental\session_cache.py -> python_build\lib.win-amd64-2.7\grpc\experimental
copying src\python\grpcio\grpc\experimental\__init__.py -> python_build\lib.win-amd64-2.7\grpc\experimental
creating python_build\lib.win-amd64-2.7\grpc\framework
copying src\python\grpcio\grpc\framework\__init__.py -> python_build\lib.win-amd64-2.7\grpc\framework
creating python_build\lib.win-amd64-2.7\grpc\_cython
copying src\python\grpcio\grpc\_cython\__init__.py -> python_build\lib.win-amd64-2.7\grpc\_cython
creating python_build\lib.win-amd64-2.7\grpc\experimental\aio
copying src\python\grpcio\grpc\experimental\aio\_base_call.py -> python_build\lib.win-amd64-2.7\grpc\experimental\aio
copying src\python\grpcio\grpc\experimental\aio\_call.py -> python_build\lib.win-amd64-2.7\grpc\experimental\aio
copying src\python\grpcio\grpc\experimental\aio\_channel.py -> python_build\lib.win-amd64-2.7\grpc\experimental\aio
copying src\python\grpcio\grpc\experimental\aio\_interceptor.py -> python_build\lib.win-amd64-2.7\grpc\experimental\aio
copying src\python\grpcio\grpc\experimental\aio\_server.py -> python_build\lib.win-amd64-2.7\grpc\experimental\aio
copying src\python\grpcio\grpc\experimental\aio\_typing.py -> python_build\lib.win-amd64-2.7\grpc\experimental\aio
copying src\python\grpcio\grpc\experimental\aio\_utils.py -> python_build\lib.win-amd64-2.7\grpc\experimental\aio
copying src\python\grpcio\grpc\experimental\aio\__init__.py -> python_build\lib.win-amd64-2.7\grpc\experimental\aio
creating python_build\lib.win-amd64-2.7\grpc\framework\common
copying src\python\grpcio\grpc\framework\common\cardinality.py -> python_build\lib.win-amd64-2.7\grpc\framework\common
copying src\python\grpcio\grpc\framework\common\style.py -> python_build\lib.win-amd64-2.7\grpc\framework\common
copying src\python\grpcio\grpc\framework\common\__init__.py -> python_build\lib.win-amd64-2.7\grpc\framework\common
creating python_build\lib.win-amd64-2.7\grpc\framework\foundation
copying src\python\grpcio\grpc\framework\foundation\abandonment.py -> python_build\lib.win-amd64-2.7\grpc\framework\foundation
copying src\python\grpcio\grpc\framework\foundation\callable_util.py -> python_build\lib.win-amd64-2.7\grpc\framework\foundation
copying src\python\grpcio\grpc\framework\foundation\future.py -> python_build\lib.win-amd64-2.7\grpc\framework\foundation
copying src\python\grpcio\grpc\framework\foundation\logging_pool.py -> python_build\lib.win-amd64-2.7\grpc\framework\foundation
copying src\python\grpcio\grpc\framework\foundation\stream.py -> python_build\lib.win-amd64-2.7\grpc\framework\foundation
copying src\python\grpcio\grpc\framework\foundation\stream_util.py -> python_build\lib.win-amd64-2.7\grpc\framework\foundation
copying src\python\grpcio\grpc\framework\foundation\__init__.py -> python_build\lib.win-amd64-2.7\grpc\framework\foundation
creating python_build\lib.win-amd64-2.7\grpc\framework\interfaces
copying src\python\grpcio\grpc\framework\interfaces\__init__.py -> python_build\lib.win-amd64-2.7\grpc\framework\interfaces
creating python_build\lib.win-amd64-2.7\grpc\framework\interfaces\base
copying src\python\grpcio\grpc\framework\interfaces\base\base.py -> python_build\lib.win-amd64-2.7\grpc\framework\interfaces\base
copying src\python\grpcio\grpc\framework\interfaces\base\utilities.py -> python_build\lib.win-amd64-2.7\grpc\framework\interfaces\base
copying src\python\grpcio\grpc\framework\interfaces\base\__init__.py -> python_build\lib.win-amd64-2.7\grpc\framework\interfaces\base
creating python_build\lib.win-amd64-2.7\grpc\framework\interfaces\face
copying src\python\grpcio\grpc\framework\interfaces\face\face.py -> python_build\lib.win-amd64-2.7\grpc\framework\interfaces\face
copying src\python\grpcio\grpc\framework\interfaces\face\utilities.py -> python_build\lib.win-amd64-2.7\grpc\framework\interfaces\face
copying src\python\grpcio\grpc\framework\interfaces\face\__init__.py -> python_build\lib.win-amd64-2.7\grpc\framework\interfaces\face
creating python_build\lib.win-amd64-2.7\grpc\_cython\_cygrpc
copying src\python\grpcio\grpc\_cython\_cygrpc\__init__.py -> python_build\lib.win-amd64-2.7\grpc\_cython\_cygrpc
creating python_build\lib.win-amd64-2.7\grpc\_cython\_credentials
copying src\python\grpcio\grpc\_cython\_credentials\roots.pem -> python_build\lib.win-amd64-2.7\grpc\_cython\_credentials
warning: BuildPy: byte-compiling is disabled, skipping.

running build_ext
error: [Error 2] The system cannot find the file specified
(venv) PS C:\grpc> git status
On branch master
Your branch is up to date with 'origin/master'.

Btw.. thought attaching the built python-2.7.11 from the source which was collected in to  Python1900 (this was referenced in my last comment)
Python1900.zip

@narenandu Did you update the submodules?
git submodule update --init

I did that in my original setup. Didn't update submodules after cloning it fresh. Sorry missed that one in the sequence of steps provided before, but here it is after runing the update
(venv) PS C:\grpc> git submodule update --init
Submodule 'third_party/abseil-cpp' (https://github.com/abseil/abseil-cpp) registered for path 'third_party/abseil-cpp'
Submodule 'third_party/benchmark' (https://github.com/google/benchmark) registered for path 'third_party/benchmark'
Submodule 'third_party/bloaty' (https://github.com/google/bloaty.git) registered for path 'third_party/bloaty'
Submodule 'third_party/boringssl-with-bazel' (https://github.com/google/boringssl.git) registered for path 'third_party/boringssl-with-bazel'
Submodule 'third_party/cares/cares' (https://github.com/c-ares/c-ares.git) registered for path 'third_party/cares/cares'
Submodule 'third_party/envoy-api' (https://github.com/envoyproxy/data-plane-api.git) registered for path 'third_party/envoy-api'
Submodule 'third_party/gflags' (https://github.com/gflags/gflags.git) registered for path 'third_party/gflags'
Submodule 'third_party/googleapis' (https://github.com/googleapis/googleapis.git) registered for path 'third_party/googleapis'
Submodule 'third_party/googletest' (https://github.com/google/googletest.git) registered for path 'third_party/googletest'
Submodule 'third_party/libuv' (https://github.com/libuv/libuv.git) registered for path 'third_party/libuv'
Submodule 'third_party/protobuf' (https://github.com/google/protobuf.git) registered for path 'third_party/protobuf'
Submodule 'third_party/protoc-gen-validate' (https://github.com/envoyproxy/protoc-gen-validate.git) registered for path 'third_party/protoc-gen-validate'
Submodule 'third_party/udpa' (https://github.com/cncf/udpa.git) registered for path 'third_party/udpa'
Submodule 'third_party/zlib' (https://github.com/madler/zlib) registered for path 'third_party/zlib'
Cloning into 'C:/grpc/third_party/abseil-cpp'...
Cloning into 'C:/grpc/third_party/benchmark'...
Cloning into 'C:/grpc/third_party/bloaty'...
Cloning into 'C:/grpc/third_party/boringssl-with-bazel'...
Cloning into 'C:/grpc/third_party/cares/cares'...
Cloning into 'C:/grpc/third_party/envoy-api'...
Cloning into 'C:/grpc/third_party/gflags'...
Cloning into 'C:/grpc/third_party/googleapis'...
Cloning into 'C:/grpc/third_party/googletest'...
Cloning into 'C:/grpc/third_party/libuv'...
Cloning into 'C:/grpc/third_party/protobuf'...
Cloning into 'C:/grpc/third_party/protoc-gen-validate'...
Cloning into 'C:/grpc/third_party/udpa'...
Cloning into 'C:/grpc/third_party/zlib'...
Submodule path 'third_party/abseil-cpp': checked out '37dd2562ec830d547a1524bb306be313ac3f2556'
Submodule path 'third_party/benchmark': checked out '090faecb454fbd6e6e17a75ef8146acb037118d4'
Submodule path 'third_party/bloaty': checked out '73594cde8c9a52a102c4341c244c833aa61b9c06'
Submodule path 'third_party/boringssl-with-bazel': checked out '1c2769383f027befac5b75b6cedd25daf3bf4dcf'
Submodule path 'third_party/cares/cares': checked out 'e982924acee7f7313b4baa4ee5ec000c5e373c30'
Submodule path 'third_party/envoy-api': checked out 'c83ed7ea9eb5fb3b93d1ad52b59750f1958b8bde'
Submodule path 'third_party/gflags': checked out '28f50e0fed19872e0fd50dd23ce2ee8cd759338e'
Submodule path 'third_party/googleapis': checked out '80ed4d0bbf65d57cc267dfc63bd2584557f11f9b'
Submodule path 'third_party/googletest': checked out 'c9ccac7cb7345901884aabf5d1a786cfa6e2f397'
Submodule path 'third_party/libuv': checked out '15ae750151ac9341e5945eb38f8982d59fb99201'
Submodule path 'third_party/protobuf': checked out 'fe1790ca0df67173702f70d5646b82f48f412b99'
Submodule path 'third_party/protoc-gen-validate': checked out 'e143189bf6f37b3957fb31743df6a1bcf4a8c685'
Submodule path 'third_party/udpa': checked out '94324803a497c8f76dbc78df393ef629d3a9f3c3'
Submodule path 'third_party/zlib': checked out 'cacf7f1d4e3d44d871b605da3b647f07d718623f'
(venv) PS C:\grpc> python setup.py bdist_wheel
Cython-generated files are missing...
running bdist_wheel
running build
running build_py
running build_project_metadata
copying src\python\grpcio\grpc\_grpcio_metadata.py -> python_build\lib.win-amd64-2.7\grpc
copying src\python\grpcio\grpc\_cython\_credentials\roots.pem -> python_build\lib.win-amd64-2.7\grpc\_cython\_credentials
warning: BuildPy: byte-compiling is disabled, skipping.

running build_ext
error: [Error 2] The system cannot find the file specified

@narenandu Is there a reason you need to manually compile gRPC Python? It's not easy to get it right. Do you think you can use the latest Windows binary wheels through pip install -U grpcio?
Did you have Visual Studio installed? Can you try to figure out which file is missing?

@lidizheng Reason why I have to manully compile grpc python is because of its usage in a Digitial Content Creation App (DCC) called Autodesk Maya. Maya comes with its bundled Python interpreter and its own set of site-packages. This fact points us back to why we need to compile Python from its source: https://clamdragon3d.com/blog/2018/3/22/python-virtualenvs-and-maya
Idea was to compile Python first and then use it to build whl file, so that it is compatible with Maya's Python interpreter. Otherwise, we keep hitting something like the following
.venv\Lib\site-packages\grpc\__init__.py:23: in <module>
    from grpc._cython import cygrpc as _cygrpc
E   ImportError: DLL load failed: The specified module could not be found.

I do have VS2015 installed and am trying to figure out a way to turn up the verbosity to python setup.py bdist_wheel by passing a -v flag. But can't seem to get more information out of it. I will keep trying to find the root cause. But thanks for the help so far !

@narenandu I resolved the issue using the patches provided by the grpcio conda-recipes repo. might also help your case too

@johnwog will check that: https://github.com/conda-forge/grpcio-feedstock/blob/master/recipe/bld.bat is this the repo which you are pointing out?

yes there are .patch files in that folder too. they might do the trick for
you.
On Wed, Feb 5, 2020 at 11:46 PM Narendra Kumar Vadapalli <
<EMAIL_ADDRESS>wrote:

@johnwog https://github.com/johnwog will check that:
https://github.com/conda-forge/grpcio-feedstock/blob/master/recipe/bld.bat
is this the repo which you are pointing out?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/grpc/grpc/issues/19999?email_source=notifications&email_token=ACCNQV2JP7FGDXIMC4T6J7LRBM6U3A5CNFSM4INVFRYKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEK5IRCQ#issuecomment-582649994,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACCNQVYJDHFHN7Y5RZXFD5TRBM6U3ANCNFSM4INVFRYA
.

@johnwog / @gnossen
I am happy to open a new issue to discuss this further, let me know. But here are the details of my debugging so far. Custom built Python has a Lib/distutils/cygwinccompiler.py that has the following method


Speech v1p1beta1 - java.lang.NoSuchMethodError: decodeBase64

Thanks for stopping by to let us know something could be better!
Please include as much information as possible:
Android app built with Android Studio using speech v1p1beta1 library crashes at startup on Android tablet running API 24 while trying to decode the JSON credentials file to pass to Google speech service. App works fine using speech v1 library.
Environment details

OS: Android API 24
Java version:
google-cloud-java version(s): speech v1p1beta1

Steps to reproduce

Zip file attached or get Android speech example source code from:
https://github.com/GoogleCloudPlatform/android-docs-samples/tree/master/speech/Speech/app/src/main/java/com/google/cloud/android/speech

Import app into Android Studio.

Modify build-gradle (module app) file to reference speech v1p1beta1 library and dependencies in
section:
android
// Google Cloud Speech beta - remove duplicate files
packagingOptions {
pickFirst  '**'
}
 dependencies
   // Google Cloud Speech beta
   compile('com.google.cloud:google-cloud-speech:0.77.0-beta')
   compile('com.google.api.grpc:grpc-google-cloud-speech-v1p1beta1:0.42.0')

Note: additional library dependency updates were tried with no difference
in build.gradle (module app)
changing grpcVersion = '1.4.0' to '1.16.1'
changing google-auth-library-oauth2-http:0.7.0 to 0.12.0
in build.gradle (project speech)
changing protobuf-gradle-plugin:0.8.0 to 0.8.7

Modify SpeechService.java file import references from "v1" to "v1p1beta1":
import com.google.cloud.speech.v1p1beta1.RecognitionAudio;
import com.google.cloud.speech.v1p1beta1.RecognitionConfig;
import com.google.cloud.speech.v1p1beta1.RecognizeRequest;
import com.google.cloud.speech.v1p1beta1.RecognizeResponse;
import com.google.cloud.speech.v1p1beta1.SpeechGrpc;
import com.google.cloud.speech.v1p1beta1.SpeechRecognitionAlternative;
import com.google.cloud.speech.v1p1beta1.SpeechRecognitionResult;
import com.google.cloud.speech.v1p1beta1.StreamingRecognitionConfig;
import com.google.cloud.speech.v1p1beta1.StreamingRecognitionResult;
import com.google.cloud.speech.v1p1beta1.StreamingRecognizeRequest;
import com.google.cloud.speech.v1p1beta1.StreamingRecognizeResponse;

Build app with Android Studio and run in development mode on Android tablet running API 24.

Stacktrace
E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
Process: com.google.cloud.android.speech, PID: 4963
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:318)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
Caused by: java.lang.NoSuchMethodError: No static method decodeBase64(Ljava/lang/String;)[B in class Lorg/apache/commons/codec/binary/Base64; or its super classes (declaration of 'org.apache.commons.codec.binary.Base64' appears in /system/framework/org.apache.http.legacy.boot.jar)
at com.google.api.client.util.Base64.decodeBase64(Base64.java:101)
at com.google.api.client.util.PemReader.readNextSection(PemReader.java:106)
at com.google.api.client.util.PemReader.readFirstSectionAndClose(PemReader.java:135)
at com.google.auth.oauth2.ServiceAccountCredentials.privateKeyFromPkcs8(ServiceAccountCredentials.java:296)
at com.google.auth.oauth2.ServiceAccountCredentials.fromPkcs8(ServiceAccountCredentials.java:286)
at com.google.auth.oauth2.ServiceAccountCredentials.fromJson(ServiceAccountCredentials.java:210)
at com.google.auth.oauth2.GoogleCredentials.fromStream(GoogleCredentials.java:174)
at com.google.auth.oauth2.GoogleCredentials.fromStream(GoogleCredentials.java:141)
at com.google.cloud.android.speech.SpeechService$AccessTokenTask.doInBackground(SpeechService.java:358)
at com.google.cloud.android.speech.SpeechService$AccessTokenTask.doInBackground(SpeechService.java:334)
at android.os.AsyncTask$2.call(AsyncTask.java:304)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
Code snippet
SpeechService.java:
final InputStream stream = getResources().openRawResource(R.raw.credential);
try {
final GoogleCredentials credentials = GoogleCredentials.fromStream(stream)
.createScoped(SCOPE);
External references such as API reference guides used
Google speech v1p1beta1 project dependencies http://googleapis.github.io/google-cloud-java/google-cloud-clients/google-cloud-speech/dependency-management.html
Any additional information below
Speech.zip
Android Studio Build output:
Information:Gradle tasks [:app:generateDevDebugSources, :app:generateDevDebugAndroidTestSources, :app:prepareDevDebugUnitTestDependencies, :app:mockableAndroidJar]
Warning:WARNING: Dependency org.apache.httpcomponents:httpclient:4.5.5 is ignored for prodDebug as it may be conflicting with the internal version provided by Android.
Warning:WARNING: Dependency org.apache.httpcomponents:httpclient:4.5.5 is ignored for prodRelease as it may be conflicting with the internal version provided by Android.
Warning:WARNING: Dependency org.apache.httpcomponents:httpclient:4.5.5 is ignored for devDebug as it may be conflicting with the internal version provided by Android.
Warning:WARNING: Dependency org.apache.httpcomponents:httpclient:4.5.5 is ignored for devRelease as it may be conflicting with the internal version provided by Android.
Information:BUILD SUCCESSFUL
Information:Total time: 45.532 secs
Information:0 errors
Information:4 warnings
Information:See complete output in console
Following these steps will guarantee the quickest resolution possible.
Thanks!

@gary0351 Can we close this issue?

yes
From: Solomon Duskis
Sent: Friday, February 8, 2019 8:32 AM
To: googleapis/google-cloud-java
Cc: gary0351; Mention
Subject: Re: [googleapis/google-cloud-java] Speech v1p1beta1 -java.lang.NoSuchMethodError: decodeBase64 (#4340)
@gary0351 Can we close this issue?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@gary0351 So...how did you fix this issue? Met the same problem and spent tons of time. Thanks in advance!

Unfortunately I ran into issues resolving other parts of the code with the patch and decided to postpone using the experimental library. I am using the existing library to do what I want for now.
I thought I might spend lots of time going down a rabbit hole. I spent many hours trying to track down the original issue and didn’t want to do more work to end up where I started.
From: xianzhez
Sent: Sunday, February 17, 2019 3:23 AM
To: googleapis/google-cloud-java
Cc: gary0351; Mention
Subject: Re: [googleapis/google-cloud-java] Speech v1p1beta1 -java.lang.NoSuchMethodError: decodeBase64 (#4340)
@gary0351 So...how did you fix this issue? Met the same problem and spent tons of time. Thanks in advance!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Any working android project in beta vesion


Define supportability for k8s versions

Please describe the Improvement and/or Feature Request
Currently OSM supports k8s versions >= 1.18 && <= 1.20.2.
This issue pertains to defining the following:

Min and max k8s versions to support
Duration of support for a particular version
Deprecation policy
Breaking change policy

Scope (please mark with X where applicable)

New Functionality          [ ]
Install                    [ ]
SMI Traffic Access Policy  [ ]
SMI Traffic Specs Policy   [ ]
SMI Traffic Split Policy   [ ]
Permissive Traffic Policy  [ ]
Ingress                    [ ]
Egress                     [ ]
Envoy Control Plane        [ ]
CLI Tool                   [ ]
Metrics                    [ ]
Certificate Management     [ ]
Sidecar Injection          [ ]
Logging                    [ ]
Debugging                  [ ]
Tests                      [ ]
CI System                  [ ]
Demo                       [ ]
Project Release            [ ]
Support              [X]

Possible use cases
Support policy for k8s versions.

This issue pertains to defining the following:

Min and max k8s versions to support
Duration of support for a particular version
Deprecation policy

For the above 3:
We support the k8s version skew, which means we no longer support k8s versions that are deprecated upstream. This is indicated by the kubeVersion field in the Helm chart. We should support the latest released version, which the CI automatically picks up.

Breaking change policy
We need to define and enforce this once v1.0 is cut. We should try to at least support N-1 versions, which means we should not be deprecating fields in the Helm charts without giving users enough notice.

For CRDs, deprecating fields are allowed as long as there is a conversion webhook in place to convert from the old version to the new version. Otherwise, the N-1 rule must be followed.

Some applicable information for this topic:
Here is a good description on Kubernetes version skew. Here are the current Kubernetes releases. Note that 1.19 is about to End of Life on October 28th. So currently OSM support is >= 1.19 and <= 1.22. When there is a Kubernetes release we should add a reminder (shared calendar?) for the new release's end of life date. On that day, we should remove this version from kubeVersion in the Helm chart.
The kubeVersion in the Helm chart is where we specify the supported Kubernetes version. On October 28th, this should be bumped to 1.20.0-0.


Write a how-to on installation of SCS with Yaook

Cloud&Heat already build two SCS cluster with Yaook. A third one will be set up by another CSP. We should document our lessons-learned with respect to Yaook and SCS and write a how-to for the SCS community.

Just wanted to ask here again in what context this should be done, especially in what repository of the SCS (or maybe externally?).

Just wanted to ask here again in what context this should be done, especially in what repository of the SCS (or maybe externally?).

IMO, this should be in SCS' docs repo. @mbuechse: Any objections

I've decided that I will write another blog post on the website. That one can also be mirrored into the docs repository later on, but for now, I think thats the better place.

Comment goes here

We had a meeting with a CPS to discuss setup of SCS cluster and to collect feedback OSISM installer.
CPS wants to setup a virtual SCS cluster on top of Proxmox. Beside a virtual SCS cluster on  Openstack and a bare metal cluster, this is an additional setup to be installed with Yaook. We will document our experiences with Proxmox here and will summarize our lessons learned of all three setups in a guide on how to install a complete SCS cluster with openstack.

We had a meeting with a CPS to discuss setup of SCS cluster and to collect feedback OSISM installer.

Where can I find the feedback? I don't know anything about this setup of OSISM on a Proxmox right now. Which CSP are you referring to?

We had a meeting with a CPS to discuss setup of SCS cluster and to collect feedback OSISM installer.

Where can I find the feedback? I don't know anything about this setup of OSISM on a Proxmox right now. Which CSP are you referring to?

Our partner is SpaceNet. The feedback with respect to OSISM installer  v6.x is as follows:

Rare documentation: information were missing or outdated. Configration files were described incomplete. It is nit clear which configuration settings exist and what they effect. You have to figure this out by yourself using try and error
Ansible Reset / Re-configuration: It was not possible to re-configure/reset service using apply. Instead of resetting all configuration, data entries of services were created twice.
No de-install script : If you want to start installation from scratch, you have to re-install bare-metal machine. Which takes some time. Hence, if you did a mistake in installation/configuration and you want to start from scratch, you have to re-install bare-metal machine at whole.

Please feel free to contact SpaseNet for more details, directly. I can provide you the contact as PN.

We had a meeting with a CPS to discuss setup of SCS cluster and to collect feedback OSISM installer.

Where can I find the feedback? I don't know anything about this setup of OSISM on a Proxmox right now. Which CSP are you referring to?

SpaceNet (our partner) planed to install SCS stack with OSISM on bare-metal, originally. However, this did not work as expected. The feedback with respect to OSISM installer v6.x is as follows:

Rare documentation: information were missing or outdated. Configration files were described incomplete. It is nit clear which configuration settings exist and what they effect. You have to figure this out by yourself using try and error
Ansible Reset / Re-configuration: It was not possible to re-configure/reset service using apply. Instead of resetting all configuration, data entries of services were created twice.
No de-install script : If you want to start installation from scratch, you have to re-install bare-metal machine. Which takes some time. Hence, if you did a mistake in installation/configuration and you want to start from scratch, you have to re-install bare-metal machine at whole.

Please feel free to contact SpaseNet for more details, directly. I can provide you the contact as PN.

Please give me the contact details. It's a pity as they haven't contacted us about this and haven't opened any issues on our site. These are all simple questions that could have been answered if one had asked. If they don't ask, it is of course difficult to help and to improve things.
There are reconfigure plays to reconfigure services (osism apply -a reconfigure XXX). There are purge plays to purge OpenStack, Ceph & Kubernetes (e.g. osism apply kolla-purge for OpenStack & osism apply purge-cluster for Ceph), you don't have to start from scratch. There are deploy guides and so on. Documentation can always be better of course. But it's simply difficult without feedback.

I will get to this (at the earliest) in late july.
And then I will see if we need to do some other things first, so don't wait on this issue.

We should write a blog post, which includes all three installation guides:

on bare metal
on OpenStack
on ProxMox


Update some fields

Use general types to replace paired types
Update package names according to proto lint rules.

I will merge after CI passed. This is caused by server side change.


[CHORE] Organize server using Clean Architecture

The current structure of the codebase in main branch is so messy, I found a template for clean architecture so let's use that.

Additional features such as signup, refresh token, access token validation and other route will be added after we merge this. The purpose of this pr is to organize the codebase because it's so messy.

closes #29


Add custom fields for sast app profile create/update

Should kinda fix https://github.com/veracode/veracode-api-py/issues/56
As long as you fetch the app, then put back the custom fields in the call the update() it should persist them, not as good as partial update but it works (tested it on my local wrapper that I modified)
cc @tjarrettveracode @HenryFBP

Thanks for this @Gby56 ! The update looks clean. I'll merge it and update the docs.

I updated the docs and also added the optional arguments to the shadow method on the api() object. In the process, I realized there had never been an update_app method defined on that object so I added one as a passthrough.


WAR-1961: File Manager App

Provided an optional checkbox feature in the JsTree API in main.js file

REST Regression is failing. Travis has passed otherwise

Please catch exceptions wherever needed and print them out.

NOTE:

Make Katana as root. So right click on Katana and select Mark Directory as --> Sources Root.
Include init.py in File Manager Utils.

This is an old implementation. Need to re-evaluate.


Fix configure.py for unpacked gtest on Windows platform.

-Use /EHsc instead of -fvisibility=hidden
-Use valid objext
-Use cflags + gtest_cflags

I agree these would be good changes. The current flags happen to work but cause some warnings.


create an extension

It was proposed to create an extension, containing the disabled CSP policies and the WappBot code.
The main idea is to facilitate the use of the script

https://github.com/boehlergerman/WappBot/commit/1ca0260e837ebe09991f4741f949a32edd675927


Sanitize Reaper secrets names to gracefully handle cluster name overrides

What this PR does:
What the title says, plus modify single dc reaper e2e tests to use an override.
Also renames the CreateSingleReaper subtest to CreateSingleReaperNoStargate, because running CreateSingleReaper  would also run CreateSingleReaperWStargateAndHTTP as it begins with the same string.
Which issue(s) this PR fixes:
Fixes #1002
Checklist

[x] Changes manually tested
[x] Automated Tests added/updated
[ ] Documentation added/updated
[x] CHANGELOG.md updated (not required for documentation PRs)
[ ] CLA Signed:  DataStax CLA

Thanks for the quick review @emerkle826 !


Pinned variables in matches are formatted incorrectly

Elixir / OTP Version
❯ cat .tool-versions
elixir 1.14.1-otp-25
erlang 25.1.1

Using elixir-styler version 0.5.2.
Current Behaviour
Example 1:

Which gives:
** (ArgumentError) cannot pipe some_var_ids into ^nil, the :^ operator can only take one argument

If I revert and rerun mix format, there is a different result that is still weird:

Example 2:

Oddly enough, if I revert the file and then rerun mix format, this same code is untouched. 🤔
I'm guessing that the non-deterministic behavior is not intended either, though that's probably a separate issue? 😅
Expected Behaviour
Unsure what should actually happen here, but perhaps pinned variables should be ignored?

just when you think you've seen all the ways people write ecto queries 😂

Unsure what should actually happen here, but perhaps pinned variables should be ignored?

yeah, i'll add pin as a valid start as well

just when you think you've seen all the ways people write ecto queries 😂

Yeah I find stuff like this relatively often. 😅

if it makes your life easier, all i ever need is the snippet that does weird things for you, to save you the work of blacking out screenshots. can just write
"Heyyyy this snippet breaks things"
^foo
|> Ecto.Query.blah(...)

want to just point at latest main here on GH until you stop finding issues? i can cut a release after that ^.^

Alright, I've tested main on three large work-related Elixir services, and everything is good so far!
There were a few times where a format would cause code to not compile or tests to fail, but each of those cases were actually good opportunities for refactoring that I was able to fix!
I look forward to trying this as more of the items from https://github.com/adobe/elixir-styler/issues/18 are added. 😄

There were a few times where a format would cause code to not compile or tests to fail, but each of those cases were actually good opportunities for refactoring that I was able to fix!

The only thing I'm aware of breaking compilation is when there are alias before other directives that are then used in them. did you see anything apart from that? (i'll be updating the readme to let people know what to expect on a first run)

when there are alias before other directives that are then used in them. did you see anything apart from that?

Nope! Just stuff like:
alias Some.Long.Path
use Path.Thing

And even worse: (this was technically only a compiler warning, but still)
@some_module_attribute :thing
use Some.Weird.Macro # depends on @some_module_attribute being defined

So now I've changed those to:
use Some.Long.Path.Thing

alias Some.Long.Path

And:
# using actual __using__ opts instead of module attributes
use Some.Weird.Macro,
  some_module_attribute: :thing

😄

yep, that's 100% the problems i see on first run as well. thanks!


Invalid isPossibleNumberWithReason() output for number such as +1 510 610 552

Imported from Google Code issue #358 created by tCheard on 2013-10-11T02:46:18.000Z:

What steps will reproduce the problem?

I have done this on my own system with my own copy of libphonenumber, but I can also replicate this on the demo host at http://libphonenumber.googlecode.com/svn/trunk/javascript/i18n/phonenumbers/demo-compiled.html
Go to http://libphonenumber.googlecode.com/svn/trunk/javascript/i18n/phonenumbers/demo-compiled.html
Enter the number '+1 510 610 552'
Note the output for 'Result from isPossibleNumberWithReason():' is TOO_LONG
Enter the number '+1<PHONE_NUMBER>'
Note that this is a valid number

What is the expected output? What do you see instead?
The result of isPossibleNumberWithReason() for the number '+1 510 610 552' should be TOO_SHORT rather than TOO_LONG.
What version of the product are you using? On what operating system?
r620 Javascript on my local copy. r603 with the online demo

Any chance to fix it? Or may be add an option to block local numbers?

Fixed in 8.6.0

Fixed in v8.6.0.


[BUG] Indexing inside double vmap raises 'ValueError: [transpose] Recived 3 axes for array with 4 dimensions.'

Describe the bug
MLX raises a cryptic error (ValueError: [transpose] Recived 3 axes for array with 4 dimensions.) when a function is vmapped multiple times in a specific way and we index one argument by the other.
See example below as the steps to reproduce are quite specific.
To Reproduce
import mlx.core as mx

def f(args):
    (x, y) = args
    return x[y]

f = mx.vmap(f, [0, None])
f = mx.vmap(f, [0, 0])
f([mx.ones((2, 3, 4)), mx.zeros(2, dtype=mx.int32)])
# ValueError: [transpose] Recived 3 axes for array with 4 dimensions.

3 is the expected number of dimensions returned from f while 4 is the original number of dimensions. Perhaps this gives a clue for where the error originates from? By increasing the number of dimensions in the arrays we get different numbers in the error message:
import mlx.core as mx

def f2(args):
    (x, y) = args
    return x[y]

f2 = mx.vmap(f2, [0, None])
f2 = mx.vmap(f2, [0, 0])
f2([mx.ones((2, 3, 4, 5, 6)), mx.zeros((2, 3, 4), dtype=mx.int32)])
# ValueError: [transpose] Recived 7 axes for array with 8 dimensions.

Expected behavior
Expected not an error and expected f([mx.ones((2, 3, 4)), mx.zeros(2, dtype=mx.int32)]).shape to output (2, 3).
Desktop (please complete the following information):

OS Version: [e.g. MacOS 15.0.1]
Version [e.g. 0.19.0]

Additional context
Discovered while trying to implement a custom interpolation method.

Thanks for fixing this! :)


Support wildcard and subdomains

Code has been refactored to support handling wildcard sub domains by checking the subdomain then checking the parent for the TXT record. if it all fails, it returns failure().
This is currently live for a partner of Lume Web, Algorand Name Service, who is launching a dapp that uses this.
Please feel free to refactor this as needed, but this works on my end for what is needed.

@pcfreak30 it looks like your editor added a bunch of spaces.  Can you run yarn && yarn format on your code?


Locale/currency pair rhg-Rohg_MM/PAB crashes.

This is because the current implementation assumes that all formatting characters are unique, but in this case the localized currency expression contains a fraction separator.
func testVirtualCharactersAreNotAlwaysUnique() {
    let number = -1234567.89
    let currencyCode = "PAB"
    let locale = Locale(identifier: "rhg-Rohg_MM")
    let formatted = number.formatted(.currency(code: currencyCode).locale(locale))
    XCTAssertEqual(formatted, "-B/. 1,234,567.89") // currency contains fraction separator
}

I don't think this will take long to solve, maybe today or tomorrow. I'm just upset that people would do this...

Solved by: bf6d33a1863aee139272d73a49d20c2ee7d2203a.