Correctly interpret material roughness as perceptual and convert to material

The roughness value stored in the PBR textures is perceptual linear roughness, and needs to be converted to material roughness.  Most folks square the linear roughness to get a good material roughness estimate, so we'll do that as well.
This changes the look of surfaces but is more aligned with how other renderers display the same content.

Looks good to me.  Will the name alpha be confusing?  Could we call it roughnessSquared or something like that?

I was back and forth on the naming; I feel like roughnessSq doesn't properly convey the conceptual difference between the perceptual roughness in the texture and the transformed material roughness.
If anything, I could just name one "perceptualRoughness" and the other "materialRoughness" or something.

Oh, this is interesting. I had no idea that the roughness from the textures wasn't the same as the material roughness discussed in papers. @snagy, do you have a reference to confirm this?
I do agree that the branch's results captures the specular falloffs more nicely.
As for naming, I think that being explicit and naming the variables linearRoughness for the texture read, roughness for material roughness, and alpha for roughness squared might be a good idea.

Isn't that just a ... how to call it ... "implementation detail" or "convention" that was introduced by Disney? See https://disney-animation.s3.amazonaws.com/library/s2012_pbs_disney_brdf_notes_v2.pdf#page=15  , penultimate paragraph:

For roughness, we found that mapping α = roughness² results in a more perceptually linear change
in  the  roughness.   Without  this  remapping,  very  small  and  non-intuitive  values  were  required  for
matching  shiny  materials.   Also,  interpolating  between  a  rough  and  smooth  material  would  always
produce a rough result.

Not sure what's "right" and "wrong" here, though....

It's definitely a convention, @javagl, but one that's currently followed in Unreal, Unity, and Frostbite, so I feel like we should side with the masses.

Sure! It doesn't make sense to propose a technique that will look different from all other PBR renderers.
I also wanted to add the link here to give a reference (as moneimne asked for this), and maybe this explains where the name "alpha" comes from - although I also think that this is a highly unfortunate name, as "alpha" in rendering usually refers to opacity (24 letters, and they had to pick this one... however, roughnessSquared, maybe with a comment like // This is called alpha in [ref to disney] may be an option)

Well I guess my call for reference is less about the theory and more about the glTF 2.0 spec here. Roughness will be a value between 0.0 and 1.0 regardless of whether we square it or not, but which visual results would artists expect when creating a model?
Right now, the spec only mentions that roughness is "the roughness of the material" and that α = roughness ^ 2. If α refers to materialRoughness squared, then isn't roughness in the spec materialRoughness and not perceptualRoughness?

one that's currently followed in Unreal, Unity, and Frostbite, ...

as well as Babylon.js and three.js!

Given that the other implementations are already doing this, our behavior should follow theirs.  It was already demonstrated with the "Y flip" issue that at this late stage we would rather clarify (or even edit) the spec to match existing implementations, rather than ask all of the implementations to change.

The spec already describes the behavior represented in this PR:

The following equations show how to calculate bidirectional reflectance distribution function (BRDF) inputs (cdiff, F0, α) from the metallic-roughness material properties.
[...]
α = roughness ^ 2
I don't think an update to the spec is required, and I don't really think that we need to call this out specifically in the shader code as to why we're doing it (there's a lot of conventional assumptions being made all over the place!)

For me, the main question is naming; do we stick with 'alpha' because that's what the spec calls it, or should we call it something else?

For me, the main question is naming; do we stick with 'alpha' because that's what the spec calls it

Formulas in the spec tend to use single-letter variable names, but implementations would do well to use longer, clearer names where possible.
alpha is such an over-used term in graphics development.  Can we call it roughnessAlpha or roughnessSquared or anything like that?

Ah, I'm sorry I should have read the line changes more carefully in the shader. I assumed we were already taking into account that alpha is roughness squared, so I thought we were squaring it again for some reason.
I didn't know that alpha becomes the new value of roughness for calculations outside of the NDF, GGX, though. Does this mean we should also use alpha when reading the BRDF LUT and in the final scale based on roughness?

@moneimne I don't think we should use alpha for the brdf lookup.  In their paper, they state the input is Roughness (with no mention to alpha).

@abwood, yeah I think you're right. The sample code in UE4's paper seems to distinguish between alpha and roughness, too.

@moneimne @abwood Thoughts on this update when you get a chance?

Just that one comment from me.  From a visual standpoint this is a great improvement 👍

Since the only remaining review comment is on a line that's commented out, I'm going to merge this.
@abwood can you open a PR with the proposed change that didn't get included here?  Thanks!


Move files to root and publish the dist directory directly

https://github.com/prettier/prettier-chrome-extension/pull/56#issuecomment-545709825

I think we're currently including the src directory in the distributed plugin. We could very easily move everything to the root and use WebpackCopyPlugin to copy in whatever other files we need (currently just icons and manifest.json, I think)?


Update intensity methods between instrument and physical units

Fixes #27.
Intended to complete the GSoC 2019 IRISpy project before tests are written and perfected for the relevant methods.
Aim
To update intensity conversion methods between instrument and physical units that correct for the time observations were taken, by going through the chain iris_tools.calculate_photons_per_sec_to_radiance_factor, iris_tools.convert_or_undo_photons_per_sec_to_radiance, and spectrogaph.IRISSpectrogramCube.convert_to.
Essentially, the final stage of the project is to find all the cases in the code base that call _get_interpolated_effective_area (or get_iris_response) and enable those functions to supply a time and version input kwarg that then gets passed onto _get_interpolated_effective_area (or get_iris_response).

Hi @DanRyanIrish, I have opened this PR to round out our work on the GSoC IRISpy project. And, I intend to open yet another PR later to complete the tests required to launch IRISpy.
In this PR, I have gotten rid of the iris_fit = fit_iris_xput from before, and have replaced this with a higher level get_iris_response(time_obs, pre_launch, response_version, **kwargs) instead, as you have suspected I needed to do earlier.
Please have a look and let me know what needs changing if necessary. I would appreciate it a lot.

Hi @DanRyanIrish Changes made to the PR according to suggestions. But I may have missed something important. If so, please let me know.

Hi @DanRyanIrish. Anything I will need to add/change before moving on to working on the tests in another PR?

Hi @kakirastern.  Looks like you've now also removed some \ that are in fact necessary.  The rules for line continuation in Python aren't necessarily intuitive but it can be easy to forget that when you're used to them.  So apologies if my instructions were confusing.
I'd recommend reading this guide to learn when \ should be used and when not.
Also it would be a good idea to read the PEP8 style guide which is the standard style guide for writing readable Python code.  The section of maximum line length talks a little about line continuation.
Also note that although the maximum recommended line length is 79, it also states that 99 is acceptable.  We use 99 in IRISpy to allow us to use more lengthy, descriptive variable names.
There may be several places where IRISpy breaks PEP8.  Don't worry about that as that's not the point of this PR and fixing it will make this PR's diff hard to review.  Just use the lessons on the parts of the code you change.

Hi @DanRyanIrish. Sorry, I was rather careless and have not studied the code carefully before removing some of the backward slashes originally there. I have rebased and dropped some of the unnecessary commits.

Hi @DanRyanIrish Do you think I will have enough time to finish the IRISpy code by the deadline? If not, I should focus on that first before returning to this... as this can wait until after.

@DanRyanIrish And I have run into some Travis CI issues... Looks like they are not related to my PR in particular. I might need the tests to be restarted manually later for the CI checks to pass. Would it be possible for you to offer assistance in this regard?

Sure.  Restarted Travis.

It passed!  But weirdly it doesn't register it here.  Perhaps once you address the couple minor comments I just left it will pass.
Have you manually played with these new functions and methods yourself?  If you have and you're happy they work I think we are close to merging!

Hooray, the Travis CI tests passed!

Sorry @DanRyanIrish about the confusion earlier... Some of the \'s were there before I altered them, so I was hesitant to change them at first. But I will be more careful next time. It is still a learning curve for me. I kind of get the feeling that line breaking can be simple, but tricky.

No problem.  It's largely a matter of experience and habit.  Reading through PEP8 and the other article I linked you to will definitely help.

Yeah, the PEP8 Style Guide for Python Code is particularly useful... Thanks for the info @DanRyanIrish!

I think this is looking pretty good.  Is there anything else you are planning to add to his PR?

Nothing to add, but maybe I should check it one more time...

Have you tried the new functionality out yourself?

Caught one bug introduced by me earlier... But other then that it is go for another review.

Have you tried the new functionality out yourself in a Python session? If not, I'd definitely recommend doing that by reading in a couple spectrograph FITS files using the reader function in spectrograph.py. Then try converting the data to radiance and back to DN using the convert_to method. Make sure it doesn't crash.

I want to do that too but I don't think I have the right spectrograph FITS files for the tests. Do you know where I can find some?

@DanRyanIrish Alternatively, I see some existing tests in the code base. Are these sufficient to check for bugs for the new (or time-enabled) methods?

They will probably catch some bugs but not all.  There's nothing like actually playing with it yourself.

@kakirastern Did you try out this functionality yourself?  If so, did you find any bugs?

@DanRyanIrish Yup, am using some FITS files I have to test the code...

Hi @DanRyanIrish, ran into some issues while working on the tests... Am seeing this error coming from test_iris_tools.py:
==================================== ERRORS ====================================
_______________ ERROR collecting irispy/tests/test_iris_tools.py _______________
irispy/tests/test_iris_tools.py:264: in <module>
    response_version=4)
irispy/iris_tools.py:246: in get_iris_response
    iris_fit_fuv[:, j] = fit_iris_xput(time_obs, iris_response["C_F_TIME"], iris_response["COEFFS_FUV"][j, :, :])
irispy/iris_tools.py:403: in fit_iris_xput
    t_diff = t - t_cal_coeffs
../astropy/astropy/time/core.py:1858: in __rsub__
    out = self.__sub__(other)
../astropy/astropy/time/core.py:1805: in __sub__
    out._set_scale(self.scale)
../astropy/astropy/time/core.py:742: in _set_scale
    jd1, jd2 = conv_func(*args)
../astropy/astropy/_erfa/core.py:15467: in taiutc
    check_errwarn(c_retval, 'taiutc')
../astropy/astropy/_erfa/core.py:89: in check_errwarn
    raise ErfaError('ERFA function "' + func_name + '" yielded ' + emsg)
E   astropy.utils.exceptions.ErfaError: ERFA function "taiutc" yielded 1 of "unacceptable date"

The captured output for that is
------------------------------- Captured stdout --------------------------------
--------------------------------------------------
Date: Wed Jul 24 11:09:31 2019
User: lahayes
Host: gs671-lhayesmbp
--------------------------------------------------
Format: 12
Architecture: x86_64
Operating System: darwin
IDL Version: 8.6.1
--------------------------------------------------
Successfully read 4 records of which:
 - 1 are of type VARIABLE
 - 1 are of type VERSION
 - 1 are of type TIMESTAMP
--------------------------------------------------
Available variables:
 - iris_response [<class 'numpy.recarray'>]
--------------------------------------------------
--------------------------------------------------
Date: Wed Jul 24 11:10:21 2019
User: lahayes
Host: gs671-lhayesmbp
--------------------------------------------------
Format: 12
Architecture: x86_64
Operating System: darwin
IDL Version: 8.6.1
--------------------------------------------------
Successfully read 4 records of which:
 - 1 are of type VARIABLE
 - 1 are of type VERSION
 - 1 are of type TIMESTAMP
--------------------------------------------------
Available variables:
 - iris_response [<class 'numpy.recarray'>]
--------------------------------------------------
--------------------------------------------------
Date: Wed Jul 24 11:53:46 2019
User: lahayes
Host: gs671-lhayesmbp
--------------------------------------------------
Format: 12
Architecture: x86_64
Operating System: darwin
IDL Version: 8.6.1
--------------------------------------------------
Successfully read 4 records of which:
 - 1 are of type VARIABLE
 - 1 are of type VERSION
 - 1 are of type TIMESTAMP
--------------------------------------------------
Available variables:
 - iris_response [<class 'numpy.recarray'>]
--------------------------------------------------
--------------------------------------------------
Date: Wed Jul 24 12:21:43 2019
User: lahayes
Host: gs671-lhayesmbp
--------------------------------------------------
Format: 12
Architecture: x86_64
Operating System: darwin
IDL Version: 8.6.1
--------------------------------------------------
Successfully read 4 records of which:
 - 1 are of type VARIABLE
 - 1 are of type VERSION
 - 1 are of type TIMESTAMP
--------------------------------------------------
Available variables:
 - iris_response [<class 'numpy.recarray'>]
--------------------------------------------------

Any idea where this error is coming from?

On second thought, maybe I should hurry with the tests PR and open it soon so we better discuss the details there.

Sorry @DanRyanIrish I hesitated to start on completing the tests earlier out of the extra conflict resolution expected... And also just to wait and see if you wanted me to add extra tests. Guess not. So will move on.

==================================== ERRORS ====================================
_______________ ERROR collecting irispy/tests/test_iris_tools.py _______________
irispy/tests/test_iris_tools.py:264: in <module>
    response_version=4)
irispy/iris_tools.py:246: in get_iris_response
    iris_fit_fuv[:, j] = fit_iris_xput(time_obs, iris_response["C_F_TIME"], iris_response["COEFFS_FUV"][j, :, :])
irispy/iris_tools.py:403: in fit_iris_xput
    t_diff = t - t_cal_coeffs
../astropy/astropy/time/core.py:1858: in __rsub__
    out = self.__sub__(other)
../astropy/astropy/time/core.py:1805: in __sub__
    out._set_scale(self.scale)
../astropy/astropy/time/core.py:742: in _set_scale
    jd1, jd2 = conv_func(*args)
../astropy/astropy/_erfa/core.py:15467: in taiutc
    check_errwarn(c_retval, 'taiutc')
../astropy/astropy/_erfa/core.py:89: in check_errwarn
    raise ErfaError('ERFA function "' + func_name + '" yielded ' + emsg)
E   astropy.utils.exceptions.ErfaError: ERFA function "taiutc" yielded 1 of "unacceptable date"

What are the values of t and t_cal_coeffs?  Looks like something is not in a valid astropy time format.

Yup, it was. And I have fixed it in #118.

So finally I can say yes, I have tested out the code, up to the convert_to() part... It has not crashed.

But one problem though when I tried to convert to "radiance":
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-67-8403b243ff48> in <module>
----> 1 new = IRISSpectrogramCube(data=data1, wcs=wcs1, meta=meta0, uncertainty=np.sqrt(np.abs(data1)), unit=iris_tools.DN_UNIT["FUV"], extra_coords=extra_coords0).convert_to("radiance")

~/irispy/irispy/spectrograph.py in convert_to(self, new_unit_type)
    382                 new_data_quantities = iris_tools.convert_or_undo_photons_per_sec_to_radiance(
    383                     (cube.data*cube.unit, cube.uncertainty.array*cube.unit),
--> 384                     obs_wavelength, detector_type, spectral_dispersion_per_pixel, solid_angle)
    385                 new_data = new_data_quantities[0].value
    386                 new_uncertainty = new_data_quantities[1].value

~/irispy/irispy/iris_tools.py in convert_or_undo_photons_per_sec_to_radiance(data_quantities, obs_wavelength, detector_type, spectral_dispersion_per_pixel, solid_angle, undo)
    866                     "of data_quantities. Unit: {2}".format(u.photon/u.s, i, data.unit))
    867     photons_per_sec_to_radiance_factor = calculate_photons_per_sec_to_radiance_factor(
--> 868         obs_wavelength, detector_type, spectral_dispersion_per_pixel, solid_angle)
    869     # Change shape of arrays so they are compatible for broadcasting
    870     # with data and uncertainty arrays.

TypeError: calculate_photons_per_sec_to_radiance_factor() missing 3 required positional arguments: 'detector_type', 'spectral_dispersion_per_pixel', and 'solid_angle'

@DanRyanIrish Looks like this code block for convert to "radiance" needs a bit of debugging...

Hi @DanRyanIrish I am staring at the code for convert_to right now... What do you suggest would be a good plan of attack for fixing the bug in conversion to radiance? Any quick fix possible?

Now after some commits I am seeing the following error instead:
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-17-d4db7355bcfa> in <module>
----> 1 new = IRISSpectrogramCube(data=data1, wcs=wcs1, meta=meta0, uncertainty=np.sqrt(np.abs(data1)), unit=iris_tools.DN_UNIT["FUV"], extra_coords=extra_coords0).convert_to("radiance", time_obs=parse_time('2013-09-03', format='utime'))

~/irispy/irispy/spectrograph.py in convert_to(self, new_unit_type, time_obs, response_version)
    387                         (cube.data*cube.unit, cube.uncertainty.array*cube.unit),
    388                          time_obs, response_version, obs_wavelength, detector_type,
--> 389                          spectral_dispersion_per_pixel, solid_angle)
    390                 new_data = new_data_quantities[0].value
    391                 new_uncertainty = new_data_quantities[1].value

~/irispy/irispy/iris_tools.py in convert_or_undo_photons_per_sec_to_radiance(data_quantities, time_obs, response_version, obs_wavelength, detector_type, spectral_dispersion_per_pixel, solid_angle, undo)
    874                     "of data_quantities. Unit: {2}".format(u.photon/u.s, i, data.unit))
    875     photons_per_sec_to_radiance_factor = calculate_photons_per_sec_to_radiance_factor(time_obs,
--> 876         response_version, obs_wavelength, detector_type, spectral_dispersion_per_pixel, solid_angle)
    877     # Change shape of arrays so they are compatible for broadcasting
    878     # with data and uncertainty arrays.

~/irispy/irispy/iris_tools.py in calculate_photons_per_sec_to_radiance_factor(time_obs, reponse_version, wavelength, detector_type, spectral_dispersion_per_pixel, solid_angle)
    928     # Get effective area and interpolate to observed wavelength grid.
    929     eff_area_interp = _get_interpolated_effective_area(time_obs,
--> 930         response_version, detector_type, obs_wavelength=wavelength)
    931     # Return radiometric conversed data assuming input data is in units of photons/s.
    932     return constants.h * constants.c / wavelength / u.photon / spectral_dispersion_per_pixel / eff_area_interp / solid_angle

NameError: name 'response_version' is not defined

Looks like it's because of a typo:
~/irispy/irispy/iris_tools.py in calculate_photons_per_sec_to_radiance_factor(time_obs, reponse_version...

Thanks @DanRyanIrish Got it working now:

Tested locally with versions = 1,2,3,4 and the "raster" FITS file iris_l2_20130720_043439_4190262172_raster_t000_r00000.fits. And the convert_to utility is now working for conversion into radiance.

This PR is ready for a review.

@DanRyanIrish May need to restart Travis CI at some later point in time for the tests to pass

Great job!


Creating ca.json

Addition of Pi Blockchain Explorer Catalan translation.
Català

Ok

Hi

Ok

ok

Excellent

welcome
في الثلاثاء، ١٤ آذار، ٢٠٢٣ ١١:٢٤ م Sunnytee0231 @.***>
كتب:

Excellent
—
Reply to this email directly, view it on GitHub
https://github.com/pi-apps/pi-explorer/pull/22#issuecomment-1468785736,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A2LDLODEX4CVTQAWOPI35RTW4DHXZANCNFSM5QBC4K3A
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Windows CI: test-unit pkg\archive step 1

Signed-off-by: John Howard<EMAIL_ADDRESS>Part 1 of fixing up test-unit for pkg\archive on Windows CI. This fixes the compilation issue on Windows by moving a Linux specific test to the _unix_test.go file.

documentation Jenkins failure is erroneous. No docs changes in this PR. All other contexts passed.

LGTM 🐮

LGTM, thanks @jhowardmsft

LGTM

Hah! Beat you this time, Jess

hahha it was super fast
On Fri, Feb 12, 2016 at 3:39 PM, Sebastiaan van Stijn <
<EMAIL_ADDRESS>wrote:

Hah! Beat you this time, Jess
—
Reply to this email directly or view it on GitHub
https://github.com/docker/docker/pull/20284#issuecomment-183530037.

--
Jessie Frazelle
4096R / D4C4 DD60 0D66 F65A 8EFC  511E 18F3 685C 0022 BFF3
pgp.mit.edu http://pgp.mit.edu/pks/lookup?op=get&search=0x18F3685C0022BFF3


Use make_shared rather than new in processSchema

Using new in this function means that if something throws an exception, the function will leak.  Follow C++ Core Guidelines on memory management:
https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Rr-make_shared

LGTM


API endpoints not working at all (Cloudflare error code 521)

Describe the bug
api.fontsource.org is not working at all for me, both in GitHub Actions CI workflow Linux runners and in my local web browser. When visiting any URL belonging to api.fontsource.org in a web browser, such as https://api.fontsource.org/v1/fonts?subsets=latin,latin-ext&variable=true, Cloudflare shows a 521 error code ("Web server is down"):

The problem does not appear to be a temporary fluke on the part of Cloudflare or the API host, as it has been going on for ~3 days at the time of writing.
Steps to Reproduce

Send a HTTP GET request to any endpoint of the Fontsource API, preferably from a host located in Spain (judging from the lack of reports about this problem, it might be a regional CDN/DNS issue) or a GitHub Actions workflow runner hosted by GitHub (GitHub hosts these runners on Azure VMs).
Notice how the response signals an error.

Expected behavior
I'm aware that the API is due for a rewrite, but its current endpoint should continue to work until that rewrite is complete, as there is currently no migration path for users.
Version
N/A
OS
Linux, Windows
Browser
Firefox
Additional context
This issue is making my CI workflows fail because they rely on downloading fonts from the Fontsource API to generate static images.

Sorry about that. It's been fixed now, but I would try to not rely on the API until #719 is resolved. The current API is very flaky and needs a lot of work.

No problem! I know that the API is not as good as you want it to be, but thank you a bunch for the prompt fix to the issue :smile:


Task Schedule doesn't work, can't find script "FalconX.vbs"

Whenever I boot Windows after enabling the task schedule I have this message from a "Windows Script Host" window: (I'm translating) Failed to find the script file : "C:\Users\Bonom Denej\AppData\Roaming\FalconX.vbs"
Disabling the task schedule works fine, FalconX still launches, albeit a bit slow. But from what I read the task schedule would make it boot faster so I was hoping it would work.

I have the same issue.


[add]:responsiveness-profile page

Fixes #2465

Closes #2465
Changes proposed

Made the profile page responsive on mobile sceens

Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[x] All new and existing tests passed.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

Screenshots

Note to reviewers

@eddiejaoude  I made the whole PR again and solved the issues we had in the other one I closed

You're welcome! Happy to contribute on your project 😁


Facebook Code

What is the code in the /rest-auth/facebook/ (POST)?

First of all, you need to create a Facebook Application in the developers page. You will get a Facebook app code and a secret.
For using the /rest-auth/facebook/ method from the django-rest-auth, you need to send the access code (obtained using the javascript SDK) and the code of the Facebook Application.
Finally, before using this method, you have to go the the application back-office and create a social application, using the Facebook app code and the secret.

What is this code you mention?
There's an app ID and a secret. Are you talking about the app ID?

@lightninglu10 The app ID(or client ID) is the code.


How to identify location

Can you please help me with method to identify location from resume

Hey @vinayodela, You can do that with a simple regex expression.
One example can be :
\d+[ ](?:[A-Za-z0-9.-]+[ ]?)+(?:Avenue|Lane|Road|Boulevard|Drive|Street|Ave|Dr|Rd|Blvd|Ln|St).?

Hi Ashaywalke thanks for reply,
I used this code like this:
def extract_location(string):
r = re.compile(r'\d+[ ](?:[A-Za-z0-9.-]+[ ]?)+(?:Avenue|Lane|Road|Boulevard|Drive|Street|Ave|Dr|Rd|Blvd|Ln|St).?')
location = r.findall(string)
return location
But still i was unable to return location from the resume file, can you please help me

I was unable to parse the .doc/.docx file Ashaywalke, can you please help me

Hey @vinayodela, You cannot find addresses with 100% accuracy. I'd suggest to try testing it on a variety of resumes and not on only one as the regex expression was written to facilitate US addresses and not Indian addresses. Furthermore, you can find more information on how to parse addresses here. https://stackoverflow.com/questions/11456670/regular-expression-for-address-field-validation

Thanks ashaywalke this helped me a lot
On Wed 27 Jun, 2018, 3:45 PM Ashay Walke<EMAIL_ADDRESS>wrote:

Hey @vinayodela https://github.com/vinayodela, You cannot find
addresses with 100% accuracy. I'd suggest to try testing it on a variety of
resumes and not on only one as the regex expression was written to
facilitate US addresses and not Indian addresses. Furthermore, you can find
more information on how to parse addresses here.
https://stackoverflow.com/questions/11456670/regular-expression-for-address-field-validation
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ashaywalke/resume-parser/issues/2#issuecomment-400619272,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AayY1pa36Mt66gTe9exTdMVS__Qgnvjhks5uA1tPgaJpZM4U3zqw
.

I was unable to parse doc/docx resume, can you please suggest
On Wed 27 Jun, 2018, 8:49 PM Odela Vinay<EMAIL_ADDRESS>wrote:

Thanks ashaywalke this helped me a lot
On Wed 27 Jun, 2018, 3:45 PM Ashay Walke<EMAIL_ADDRESS>wrote:

Hey @vinayodela https://github.com/vinayodela, You cannot find
addresses with 100% accuracy. I'd suggest to try testing it on a variety of
resumes and not on only one as the regex expression was written to
facilitate US addresses and not Indian addresses. Furthermore, you can find
more information on how to parse addresses here.
https://stackoverflow.com/questions/11456670/regular-expression-for-address-field-validation
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ashaywalke/resume-parser/issues/2#issuecomment-400619272,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AayY1pa36Mt66gTe9exTdMVS__Qgnvjhks5uA1tPgaJpZM4U3zqw
.


Date is wrong on frontend

Tweets have wrong date

It's a join issue on the API end, we are getting created_at from user, not from tweet

It's a join issue on the API end, we are getting created_at from user, not from tweet


Giphy http version

Because every version of giphy_client depends on http ^0.11.3+16 and stripe_api 1.1.0 depends on http ^0.12.0, giphy_client is incompatible with stripe_api 1.1.0.
And because no versions of stripe_api match >1.1.0 <2.0.0, giphy_client is incompatible with stripe_api ^1.1.0.
So, because gyfted_app depends on both stripe_api ^1.1.0 and giphy_client ^0.0.1, version solving failed.

@brianegan Similar but on json_annotation.  Happy to fork, but would love to see dependencies upgraded so this package remains relevant.  Would a PR help?

Oh dang, sorry I missed this one! Yep, a PR would be much appreciated compared to a complete fork :)

Uploaded a new version 0.2.0 with fixes :)

<3


 We should enforce POST on these requests.
If possible, we should think about adding some validation or rate limiting to the requests, so we don't get DDOS'd by some malicious actor!
Bonus: I think we have very little input sanitation for our requests. That would probably be helpful to do as well!

Should allow posts for all relevant endpoints. (Anything that needs a body)
This is done for matching.


Multi aspect ratio resize in pyramid

First step towards fixing #1.

Will be superseded for cleanup.


better negations

Right now "!" is the most confusing sign in FastParse as it is used both for negation and for capturing. Moreover !(something) does not provide any output, so to have something very common and trivial, like a parser like "everything but space" I have to do something like this:
val notSpace = (!" ").flatMap(v => AnyChar)
val stringWithoutSpaces = P( notSpace.rep.! )

I would be happy to have less verbose way to do this

It is also not clear for me why
val notSpace1 = P( !(" ") )
val notSpaceRep = P( !(" ").rep )
val str = "zef8498494zefzef"
notSpace1.parse(str) //succedes
notSpaceRep.parse(str) //fails for uknozn reason

What's wrong with
val notSpaceRep = (!" " ~ AnyChar).rep

?
Or
CharPred(_ != ' ').rep

?
You should hang out in the gitter channel for this kind of thing. They're not bugs or issues with fastparse

val notSpaceRep = (!"  Each time I run it in ammonite console it freezes it

Welcome to the Ammonite Repl 0.5.5
(Scala 2.11.7 Java 1.8.0_25)
@ import fastparse.all._
import fastparse.all._
@ val notSpaceRep = (!" " ~ AnyChar).rep
notSpaceRep: Parser[Unit] = (!(" ") ~ AnyChar).rep
@ noSpaceRep.parse("zef8498494zefzef")
Main.scala:84: not found: value noSpaceRep
noSpaceRep.parse("zef8498494zefzef")
^
Compilation Failed
@ notSpaceRep.parse("zef8498494zefzef")
res2: Parsed[Unit] = Success((), 16)
@

@antonkulaga I hadn't tried it but I have now and it seems to work

It is strange because on my PC it freezes ammonite.
Anyway CharPred(_ != ' ').rep worked for me, maybe it is worth of mentioning in docs that CharPred(_ != ' ') should be recommended approach to parse "everything but ..."

No idea why it's freezing for you, seems to work great for me.
Docs could always be better, that's already tracked in https://github.com/lihaoyi/fastparse/issues/68. Feel free to post your own ad-hoc guidelines and maybe someone will package them nicely into the docs


[Bug]: Unable to use arrays in postgres prepared statement

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Followed the docs to use arrays in SQL prepared statement: https://docs.appsmith.com/datasource-reference/querying-postgres#using-arrays-in-prepared-statement
It throws the following error:
ERROR: syntax error at or near "[" Position: 42

Steps To Reproduce
Follow the docs and write a query using arrays and prepared statements
Public Sample App
https://app.appsmith.com/app/array-in-sql-prepared-statement/page1-624ee59f457aa64da9e002d4
Version
v1.6.17

@aswathkk in the image prepared statements are off


[BEAM-7689] make a temporary directory unique for FileBaseSink

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

 Thanks.

Run Java PostCommit

Run Dataflow ValidatesRunner


February Endgame

Endgame Schedule

Feburary 26, Code freeze for the endgame
March 2, Endgame done

Note: The Insiders build needs to be in the wild for 24 hours before we can enter the last phase of the endgame.

Monday

[x] Code freeze at 5pm PT
[x] Ensure we have a green build on all platforms at 5pm PT
[x] All test items are created (with "complexity" but not necessarily with full description) by 5pm PT
[x] All test items contain comprehensive test descriptions by 10pm PT
Testers who cannot participate in testing check-off from list below:

[x] @aeschli
[x] @alexandrudima
[x] @auchenberg
[x] @bpasero
[x] @chrisdias
[x] @chrmarti
[x] @dbaeumer
[x] @egamma
[x] @isidorn
[x] @joaomoreno
[x] @jrieken
[x] @kieferrm
[x] @mjbvz
[x] @octref
[x] @ramya-rao-a
[x] @rebornix
[x] @rmacfarlane
@roblourens
[x] @sandy081
[x] @seanmcbreen
[x] @tyriar
[x] @weinand

Tuesday

[x] Test plan items assigned
[x] All closed feature-requests without either verification-needed or on-testplan tag
[x] Testing
[x] Verification needed

Wednesday

[x] Remind team members to assign issues that they intend to fix to the February milestone
[x] Testing
[x] Fixing (self-assigned, milestone assigned)
[x] Verification needed
[x] Verification

Thursday

[x] Fixing last issues
[x] Verification needed
[x] Verification
[x] Run OSS tool endgame master

The LCA review of the ThirdPartyNotices.txt files is not needed anymore
do not forget to update the distro attribute in the package.json with the commit ID of the distro repo.
Create list for team members to enter new OSS usage into the OSS registry endgame master

Friday

Register new components in OSS registry
Satellite modules/npm packages ready, version updated, smoke tested

[x] vscode @bpasero
[x] yo generator @aeschli
[x] vsce @joaomoreno
[x] node-debugadapter-node @weinand
[x] node-debug @weinand
[x] node-debug2 @weinand

[x] Check translations (check i18n folder git history for latest translations, then build locally and see the amount of untranslated strings) @dbaeumer
[x] Verification needed
[x] Fixing (only critical bugs - no string changes)
Smoketest

[x] Windows - @dbaeumer
[x] OS X - @weinand
[x] Linux - @tsalinger

[x] Verification
All release notes updated - release notes are collected in a file named v1_21.md in this repo directory. This includes new features and notable fixes.

[x] @aeschli
[x] @alexandrudima
[x] @bpasero
[x] @chrmarti
[x] @dbaeumer
[x] @egamma
[x] @isidorn
[x] @joaomoreno
[x] @jrieken
[x] @kieferrm
[x] @mjbvz
[x] @octref
[x] @ramya-rao-a
[x] @rebornix
[x] @rmacfarlane
[x] @roblourens
[x] @sandy081
[x] @tyriar
[x] @weinand

Acknowledge pull requests in release notes. We acknowledge PRs from outside the team. Use the thankyou tool to generate the initial contents of the section:

[x] vscode endgame master
[x] vscode-node-debug @weinand
[x] vscode-node-debug2 @roblourens
[x] vscode-debugadapter-node @weinand
[x] vscode-languageserver-node @dbaeumer
[x] language-server-protocol @dbaeumer
[x] vscode-textmate @alexandrudima
[x] vscode-loader @alexandrudima
[x] vscode-generator-code @aeschli
[x] vscode-vsce @joaomoreno
[ ] vscode-docs @gregvanl
[x] vscode-css-languageservice @aeschli
[x] vscode-json-languageservice @aeschli
[x] vscode-html-languageservice @aeschli
[x] jsonc-parser @aeschli
[ ] vscode-jscs @chrisdias
[x] vscode-tslint @egamma
[x] vscode-eslint @dbaeumer
[x] vscode-jshint @rmacfarlane
[ ] vscode-recipes @auchenberg
[x] localization @danyeh
[x] vscode-github-issues-prs @chrmarti

When done fixing/verifying and there are changes since last build at the end of day PT

Trigger new insider build and publish it manually change author

Friday or Monday week 2

[x] Disable continuous insider builds - endgame master
[x] Branch code to release/<x.y> and release master - endgame master
[x] Bump up the version in package.json - endgame master
[x] Announce master is open for business endgame master
[x] Polish release notes @gregvanl

Monday week 2 - Wednesday week 2

[x] Polish release notes @gregvanl
Cherry-pick hand-picked and reviewed changes to release/<x.y> change author
Build Insider from release/<x.y> endgame master
Manually release Insider endgame master
Documentation updated

[ ] @aeschli
[x] @alexandrudima
[x] @bpasero
[x] @chrmarti
[x] @dbaeumer
[x] @egamma
[ ] @isidorn
[x] @joaomoreno
[x] @jrieken
[ ] @kieferrm
[x] @mjbvz
[x] @octref
[x] @ramya-rao-a
[ ] @rebornix
[ ] @rmacfarlane
[ ] @roblourens
[x] @sandy081
[x] @tyriar
[x] @weinand

Thursday/Friday week 2

[x] Merge translations PR (if it makes it in time) endgame master
[x] Build stable for all platforms endgame master
[x] Make rpm signing request @tyriar
[x] Sanity check of installable bits

[x] Windows

[x] signed installer @owner
[x] zip @owner

[x] OS X - @owner
[x] Linux

[x] deb package 64-bit @owner
[x] deb package 32-bit @owner
[x] rpm package 64-bit @owner
[x] rpm package 32-bit @owner
[x] archives @owner

[x] Publish website @gregvanl
[x] Publish to stable @owner
[ ] Publish deb and rpms to repositories manually @tyriar
[x] Add version with symbols to HockeyApp @tyriar
[x] Add a git tag to HEAD of release/<x.y> in format x.y.z endgame master
[x] Enable scheduled insider builds endgame master
[x] Twitter announcement @seanmcbreen

DONE

It's quite frustrating that vscode installed by rpm through the repo is notifying me of an update when it isn't available in the repo.
Perhaps code installed this way shouldn't show update notifications and leave that to the package manager (alternately speed up the upload process)

Publish deb and rpms to repositories manually

A week after release and I still don't have the Feb build available via rpm. Can this be automated for the future? Could we get the current one up there?

@lynchem we're having issues with the internal service used to publish the rpm and are working with the team that owns that to resolve it. Automating this would be a huge weight off my shoulders every month but it's not currently possible.

@Tyriar understand it can be hard but the 'an update is available' notification every time a window is opened gets frustrating, especially when I actually want to update

@ZanderBrown see https://github.com/Microsoft/vscode/issues/43671


Image_upload

Preview and upload images to firebase storage

@karanbhanushali  there are some conflicts with the base branch. Let's get those fixed or consider making this a separate repo/api that the UI can call.

Also please tag everyone for reviews so they can be aware of what is going in. Use the '@' sign in chrome.
@karanbhanushali @AadhithyanBalaji @SudeshnaDash24

Changes will be in Summit API for upload


Getting partial results with docs.getMany

When using docs.getMany I would like to get all the documents back which are present in the database, instead of getting a upickle.Invalid$Data error.
So if I would try to get documents by key (1, 2 and 100) where 1 and 2 are in the database, and 100 is not, I would want to get the 1 and 2 back and maybe an error for the 100.
To me a possible solution would be to get a result back from the getMany function which would be a Map consisting of keys (of the documents), and the value would then be a Try (consisting of either a Success containing the document or a Failure containing the invalid$Data or preferably a 404 error of some sort.)
Is that possible? Or is it maybe already there but have I missed it?

It's definitely reasonable to have a way to get only the available documents, this is not supported right now however. One way could be to add something like getManyAllowMissing[D: R](ids: Seq[String]): Task[CouchDocs[String, Option[CouchDocRev], Option[D]]] -- basically making values of the result set optional. This would probably require adding a custom upickle Reader to support the Option type. I'd need to investigate it more and experiment to provide more details. If you implement this, I'd be happy to merge your PR in.

I am running into the same problem. @beloglazov your suggestion sounds like a good way to handle this.


Can not run linux container job on self-hosted Windows agent (docker bridge driver not supported)

I created a self-hosted Windows-2022 Datacenter  agent. Installed Docker EE (LCOW)
The docker is perfectly running containers on localy, both of the linux and windows base containers!
But when I try to run a container job pipeline I got a following error:
Starting: Initialize containers
C:\Program Files\Docker\docker.EXE version --format '{{.Server.APIVersion}}'
'1.41'
Docker daemon API version: '1.41'
C:\Program Files\Docker\docker.EXE version --format '{{.Client.APIVersion}}'
'1.41'
Docker client API version: '1.41'
C:\Program Files\Docker\docker.EXE ps --all --quiet --no-trunc --filter "label=f22692"
23aeade095c2b345f1848b421cf8c9e386f822cdf96da3150e0477461acfa498
C:\Program Files\Docker\docker.EXE rm --force 23aeade095c2b345f1848b421cf8c9e386f822cdf96da3150e0477461acfa498
23aeade095c2b345f1848b421cf8c9e386f822cdf96da3150e0477461acfa498
C:\Program Files\Docker\docker.EXE network prune --force --filter "label=f22692"
C:\Program Files\Docker\docker.EXE pull ubuntu:latest
latest: Pulling from library/ubuntu
Digest: sha256:a0d9e826ab87bd665cfc640598a871b748b4b70a01a4f3d174d4fb02adad07a9
Status: Image is up to date for ubuntu:latest
docker.io/library/ubuntu:latest
C:\Program Files\Docker\docker.EXE inspect --format="{{.Os}}" ubuntu:latest
linux
C:\Program Files\Docker\docker.EXE info -f "{{range .Plugins.Network}}{{println .}}{{end}}"
ics
internal
l2bridge
l2tunnel
nat
null
overlay
private
transparent
C:\Program Files\Docker\docker.EXE network create --label f22692 vsts_network_87104a2e6e2a4777ba7c63584f6042d0
Error response from daemon: could not find plugin bridge in v1 plugin registry: plugin not found
##[error]Docker network create failed with exit code 1
Finishing: Initialize containers

On this Agent configuration the bridge network is not supported, here it is the docker info result:
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker Application (Docker Inc., v0.8.0)
  cluster: Manage Mirantis Container Cloud clusters (Mirantis Inc., v1.9.0)
  registry: Manage Docker registries (Docker Inc., 0.1.0)

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 4
 Server Version: 20.10.7
 Storage Driver: windowsfilter (windows) lcow (linux)
  Windows:
  LCOW:
 Logging Driver: json-file
 Plugins:
  Volume: local
  Network: ics internal l2bridge l2tunnel nat null overlay private transparent
  Log: awslogs etwlogs fluentd gcplogs gelf json-file local logentries splunk syslog
 Swarm: inactive
 Default Isolation: process
 Kernel Version: 10.0 20348 (20348.1.amd64fre.fe_release.210507-1500)
 Operating System: Windows Server 2022 Datacenter Version 2009 (OS Build 20348.288)
 OSType: windows
 Architecture: x86_64
 CPUs: 2
 Total Memory: 8GiB
 Name: peternochta002
 ID: B3QK:4HCJ:CQJS:HQHV:NCQD:RW6F:O7GP:VU7W:5HTM:AVBI:SCKV:PL6C
 Docker Root Dir: C:\ProgramData\docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: true
 Insecure Registries:
  <IP_ADDRESS>/8
 Live Restore Enabled: false

Have a chance to add any parameter or env variable into pipeline which is change/extend the default network create process behavior?

@DenisRumyantsev have you any update about that?

Hi @nochtap, currently, we are working on higher priority issues.
We will start working on this issue when the turn comes to it.

Hi @nochtap, the related pull request has been merged and currently is awaiting deployment. When provided changes will be deployed, the driver (used when creating docker network) can be specified via the AZP_AGENT_DOCKER_NETWORK_CREATE_DRIVER environment agent knob or via the agent.DockerNetworkCreateDriver runtime pipeline knob.

If the knob is NOT specified, the agent behavior remains the same.
If the knob is specified and such driver actually exists, it will be used.
If the knob is specified but such driver does not exist, a default driver will be used and a warning about this will be displayed in the worker diagnostic logs and in the pipeline run logs.

Hi @DenisRumyantsev, can I know how to specify the AZP_AGENT_DOCKER_NETWORK_CREATE_DRIVER environment or the agent.DockerNetworkCreateDriver?


added an unfinished version of the linopy workshop on 22/10/2023

I added a first draft (unfinished version) of the linopy workshop ipynb file. This is still work in progress so feel free to delay merging to main branch for now

Thanks! Let me know when the version is finished and I’ll have a look.

Related to issue. https://github.com/fneum/data-science-for-esm/issues/5
@fneum , I talked with @wehuang16 before the PR was created.
We can take care of the first round of review :+1:

Add a PR with small fixes/changes at @wehuang16 fork. If it's merged it shows up here. I really liked the comprehensiveness of Linopy compared to Pyomo.

@fneum @pz-max I believe the "14 linopy workshop ipynb file" is completed, and this pull request is ready to be merged:)

Really excellent! I made some modification, but this was really good and much easier to go through then pyomo.


saturator fix.

So sorry for all the trouble with this.
Looks like I never pushed to last commit:
remove all references to kAAOrder ( = 6 ) ans kUSRatio ( = 8).

No worries! All a learning experience. Thank you for the fixes.


#292 - Upgrade to consul_template 0.9.0

Upgrading to consul_template 0.9.0 - issue #292

0.10.0 is out so we should go to that, See https://github.com/hashicorp/consul-template/releases

upgraded in #323


git auth for admin/settings

fixes: #202
Signed-off-by: Yixin Qian<EMAIL_ADDRESS>

first time log in

after logged in

TODO:

localhost --> production server address
refactoring the code in TestResultSumaryService/Routes/index.js
cors in TestResultSumaryService/frontend.js

I'd like to have this feature, but I am a bit out of the loop on where its at.  It appears that a big chunk of the PR is commented out... perhaps we can get an update in the weekly meeting.

This PR is stale. Close it for now.


datasets

Can you directly send me the generated dataset? Thank you.

Why can't I find the test dataset?

This issue should be corrected now.


Improve envoy builds

Description
We have issues that blocks us from reproducible/quick builds. We should also have a weekly run to make sure it doesn't break

https://github.com/kumahq/envoy-builds/pull/48
https://github.com/kumahq/envoy-builds/pull/49
https://github.com/kumahq/envoy-builds/pull/50
changes:

added action that runs a script to release MacOS hosts on schedule
fixed build for the main branch
we don't create a separate vpc for each run, we reuse the same because of the limit of VPCs, instead I've added a terraform that creates VPC if someone removes from aws
scheduled build-release job for main branch on Monday 6 am
moved fips build out of linux/amd64 because it took even 3-4h to build both on the same machine


all files are not read

This does not read the documents inside another directory? For example in SOURCE_Documents folder i have another folder which contains files. It does not read that. Is it intended to do it that way?

Yes, the current code does not support your use-case, you can make modifications here.
https://github.com/TorRient/localGPT-falcon/blob/main/ingest.py?plain=1#L24

got it thank you


Fix check with template

Coverage decreased (-0.05%) to 31.24% when pulling c8fb414a6c48e9b0c4c42cb9bbeb966c4d668ed5 on fix_check_with_template into<PHONE_NUMBER>e887347859b9de506cb4c7b2e9a3e9 on master.


Revert "dbeaver/dbeaver#20522 Remove Entries per page setting for QM (#21131)"

This reverts commit 9f0b24a88eea958e11867bae80d3e883e60af8aa.

verified


Fix some typos

Thank you for your reviews. I have squashed.

Any submissions to SnarkVM should make a relevant change. Typo corrections should be submitted as issues or fixed as part of larger PRs

Agreed, with all the recent Github spam going on we should have a policy around this. Thank you for the contributions @GoodDaisy but this is creating more noise than signal, we look forward to seeing and helping land a more meaningful PR.


WirePattern fires multiple times from addressable inport

Component repository: https://github.com/ComFreek/noflo-test
JS file: https://github.com/ComFreek/noflo-test/blob/master/components/test.js
The network:
(The two Core/Repeat nodes have been set to 5 and 10 respectively.)

The output when the graph is run:
New data from 'WirePattern'
{ '0': '5' }
New data from 'WirePattern'
{ '1': '10' }

Am I missing some important aspect or why doesn't WirePattern fire only once with both objects being passed as parameters to the callback?
My actual use case: The component should wait for all inputs plugged into it and then process the data it received from all those components in one go.

Confirmed, the bug affects WirePattern if there is only 1 input port. The specs use at least 2 input ports and they pass.

This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a temporary error. The following address(es) deferred:
<EMAIL_ADDRESS>Domain marclaporte.com has exceeded the max emails per hour (313/300 (104%)) allowed.  Message will be reattempted later
------- This is a copy of the message, including all the headers. ------
Received: from o3.sgmail.github.com ([<IP_ADDRESS>]:2448)
by uskm12.fastbighost.net with esmtps (TLSv1.2:DHE-RSA-AES128-GCM-SHA256:128)
(Exim 4.84)
(envelope-from<EMAIL_ADDRESS>id 1YKref-002VO4-Cw
for<EMAIL_ADDRESS>Mon, 09 Feb 2015 18:57:50 +0200
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=github.com;
h=from:reply-to:to:in-reply-to:references:subject:mime-version:content-type:content-transfer-encoding:list-id:list-archive:list-post:list-unsubscribe;
s=s20150108; bh=aW2RuOM5TS/5oF4gAHjT/UNyf64=; b=iFLO8mrqe4Btk1e9
flPEo4Cgo8YLhUVYJ2UwNmCoWgjkileensuwcyIHCRZwfgaNDYYmQFe2OstZZ3XN
CEGBFewGhQNYSA3AsnkZP3JowOQG7kqFGV7qDWC8segcfcOVsiWzV4Dv6U/VsxQC
/RIO5mF/ie0G9AdBUadssV5HRl4=
Received: by filter0044p1mdw1.sendgrid.net with SMTP id filter0044p1mdw1.14209.54D8E70216
2015-02-09 16:57:40.286650681 +0000 UTC
Received: from github-smtp2b-ext-cp1-prd.iad.github.net (github-smtp2b-ext-cp1-prd.iad.github.net [<IP_ADDRESS>])
by ismtpd-019 (SG) with ESMTP id 14b6f466885.5608.ee895
for<EMAIL_ADDRESS>Mon, 09 Feb 2015 16:57:40 +0000 (UTC)
Date: Mon, 09 Feb 2015 08:57:40 -0800
From: Vladimir Sibirov<EMAIL_ADDRESS>Reply-To: noflo/noflo<EMAIL_ADDRESS>To: noflo/noflo<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>In-Reply-To<EMAIL_ADDRESS>References<EMAIL_ADDRESS>Subject: Re: [noflo] WirePattern fires multiple times from addressable inport
(#273)
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="--==_mimepart_54d8e70416c76_74373fbf32ca32b82088cd";
charset=UTF-8
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: trustmaster
X-GitHub-Recipient: marclaporte
List-ID: noflo/noflo <noflo.noflo.github.com>
List-Archive: https://github.com/noflo/noflo
List-Post<EMAIL_ADDRESS>List-Unsubscribe<EMAIL_ADDRESS>https://github.com/notifications/unsubscribe/AA9S5VEE-hbZDos0Y01pwZUPDFSAkLzGks5nqN6EgaJpZM4DdqwZ
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address<EMAIL_ADDRESS>X-SG-EID: 6gokMyjshdqIg4wv0fMwb0kp6eT9ppVffR9VKvtRydaAq0rgvZE+kVUYXno+Hp+soSYM/L68NnqXyc
FHXjzTlhTaAgNNDhJCzehWBaB7lfRPIEYGvWVIwXcD013lf46in5BtCE2xGGAmxCTD1ltwKr2KBMsD
QmkLsXCP5ptN/aM=
X-Spam-Status: No, score=0.0
X-Spam-Score: 0
X-Spam-Bar: /
X-Ham-Report: Spam detection software, running on the system "uskm12.fastbighost.net",
has NOT identified this incoming email as spam.  The original
message has been attached to this so you can view it or label
similar future email.  If you have any questions, see
root@localhost for details.
Content preview:  Confirmed, the bug affects WirePattern if there is only 1
input port. The specs use at least 2 input ports and they pass. --- Reply
to this email directly or view it on GitHub: https://github.com/noflo/noflo/issues/273#issuecomment-73545133
[...]
Content analysis details:   (0.0 points, 5.0 required)
pts rule name              description

0.0 URIBL_BLOCKED          ADMINISTRATOR NOTICE: The query to URIBL was blocked.
See
http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block
for more information.
[URIs: github.com]
-0.0 RCVD_IN_MSPIKE_H4      RBL: Very Good reputation (+4)
[<IP_ADDRESS> listed in wl.mailspike.net]
-0.0 T_RP_MATCHES_RCVD      Envelope sender domain matches handover relay
domain
-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
[score: 0.0000]
2.1 HTML_IMAGE_ONLY_12     BODY: HTML: images with 800-1200 bytes of words
0.0 HTML_MESSAGE           BODY: HTML included in message
-0.1 DKIM_VALID_AU          Message has a valid DKIM or DK signature from author's
domain
0.1 DKIM_SIGNED            Message has a DKIM or DK signature, not necessarily valid
-0.1 DKIM_VALID             Message has at least one valid DKIM or DK signature
-0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
X-Spam-Flag: NO
----==_mimepart_54d8e70416c76_74373fbf32ca32b82088cd
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Confirmed, the bug affects WirePattern if there is only 1 input port. The specs use at least 2 input ports and they pass.

Reply to this email directly or view it on GitHub:
https://github.com/noflo/noflo/issues/273#issuecomment-73545133
----==_mimepart_54d8e70416c76_74373fbf32ca32b82088cd
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Confirmed, the bug affects WirePattern if there is only 1 input port. The specs use at least 2 input ports and they pass.
—Reply to this email directly or view it on GitHub.

----==_mimepart_54d8e70416c76_74373fbf32ca32b82088cd--

Merged the fix in #274

Thanks, but NoFlo now throws an error (using the same component as mentioned above):
Error: No process defined for inbound node test/Test_a04e8

The error is apparently very serious because I can't run the graph after the error appeared. I must then completely restart the noflo-nodejs process.

Any error output in noflo-nodejs console? Is it using the current git master of noflo?

@trustmaster There is no output. I actually tried setting the dependencies to their respective Git URI from GitHub, but then I could not get noflo-nodejs (node node_modules/noflo-nodejs/bin/noflo-nodejs) to work because it didn't find the noflo package. I could resolve the issue by replacing the Git URIs by normal version numbers. There must be either a serious error in NoFlo or in Node.js.

I just wonder how you got the fix applied to your runtime so that it started throwing that error. Git repo urls don't always work. The quick and dirty trick to have an unreleased noflo dependency running is to clone it to a separate repo, run npm install in there and then just copy the files over to node_modules, replacing an existing package there.

I've now done that with this repository and copied the files to node_modules (even needed to use 7-zip file manager since Windows cannot handle too long filenames) as you said.
I'm still getting the No process defined ...error though.

Ok, i'll check it later this week.

Sorry @ComFreek, couldn't get it working so far. Currently getting

Registration with Flowhub failed: CERT_HAS_EXPIRED

error when trying to run a noflo-nodejs runtime. Am I the only one who gets this?

@trustmaster Yes, I am getting the same error. I can't even re-login to noflo-ui. I am always being redirected to https://passport.thegrid.io/login/github_public/callback?code=xyz whose output is:
Error: Identity connected to another user
 at /app/auth.coffee:52:27
 at /app/lib.coffee:92:5
 at tryCatch1 (/app/node_modules/knex/node_modules/bluebird/js/main/util.js:45:21)
 at Promise$_callHandler [as _callHandler] (/app/node_modules/knex/node_modules/bluebird/js/main/promise.js:660:13)
 at Promise$_settlePromiseFromHandler [as _settlePromiseFromHandler] (/app/node_modules/knex/node_modules/bluebird/js/main/promise.js:675:18)
 at Promise$_settlePromiseAt [as _settlePromiseAt] (/app/node_modules/knex/node_modules/bluebird/js/main/promise.js:845:14)
 at Promise$_settlePromises [as _settlePromises] (/app/node_modules/knex/node_modules/bluebird/js/main/promise.js:988:14)
 at Async$_consumeFunctionBuffer [as _consumeFunctionBuffer] (/app/node_modules/knex/node_modules/bluebird/js/main/async.js:77:12)
 at Async$consumeFunctionBuffer (/app/node_modules/knex/node_modules/bluebird/js/main/async.js:40:14)
 at /app/node_modules/newrelic/node_modules/continuation-local-storage/node_modules/async-listener/glue.js:188:31
 at process._tickCallback (node.js:442:13)

Seems like we need some help from @bergie here.

@ComFreek issue should be fixed now.

@forresto (Y) Thanks for Fixing It works fine now (except for this issue of course).

@ComFreek I've checked your example. In Flowhub it was the same for me as in your 1st post because it kept using browser runtime of NoFlo no matter what i tried.
Then I ran it in console. First with a published 0.5.11 noflo build:
$ ./node_modules/.bin/noflo graphs/TestGraph.json
New data from 'WirePattern'
{ '0': '5' }
New data from 'WirePattern'
{ '1': '10' }

Then with a patched noflo from git:
$ ./node_modules/.bin/noflo graphs/TestGraph.json
New data from 'WirePattern'
{ '0': '5', '1': '10' }

Here is the gist: https://gist.github.com/trustmaster/b49965fcd4499964ecdf

@trustmaster
Which packages did you update?
I have already updated noflo and noflo-nodejs to no avail. I am still getting the same error.

Don't forget that you need noflo-core on Node.js.

I have now updated noflo-core as well and I am still getting the same error.
I also verified that my custom component is based on the same code as yours in the Gist.
Do I have to update noflo-ui maybe?


Running interactive command in shell

I have a situation where I'm stuck running a different interactive command in a shell from my clui-go program.  When exit the spawned program, the clui display is not properly redrawing.
What calls should I be doing to save the current state of the layout before running the shell program? And recommendation on how to properly restore the state of the layout after?
I was hoping to find a simple "drop to bash shell" example, but no luck.

It is possible that underlining termbox does not redraw anything. It tries to minimize repaintnig, and keeps areas that were touched. But it does not know anything about external applications. Maybe it needs some call to reset internal termbox cache - though, there is no similar call in clui.
I do not have a simple example at hand to play with. I found a function Sync in termbox (in termbox-go/api.go) that may help. Try to import "github.com/nsf/termbox-go" and call its Sync after the spawned program finishes. If it works we can add a wrapper to clui that will call termbox internally.

Closing as a stale issue without feedback


Add groupBy & aggregate to queries

An example from here:

Given this schema:
keystone.createList('Train', { /* ... */ });
keystone.createList('User', { /* ... */ });
keystone.createList('Trip', {
  fields: {
    user: { type: Relationship, ref: 'User' },
    train: { type: Relationship, ref: 'Train' },
  }
});

For User X, get their 5 most frequently ridden trains, sorted by number of trips descending

The Prisma team have put a lot of thought into a possible API: https://github.com/prisma/prisma/issues/1312
We don't have the nodes concept, but I think we could easily add a _aggregate and _groupBy pseudo-field (like we already have the _xMeta pseudo-fields) which would meet the same needs :+1:

@jesstelford Do you have a preposed API for the graphQL query or would you look to replicate the prisma example 1-1?


verticalSpaceForEmptyDataSet return nagative value crash

Many thanks for your feedback!
This problem is fixed in release 1.6, and it supports multiple vertical spaces now, you can use func verticalSpacesForEmptyDataSet(scrollView: UIScrollView!) -> [CGFloat].
Enjoy yourself!


radicle-httpd: Use radicle::identity::did::Did for json output instead of PublicKey

Instead of showing just PublicKey we need to show the fully qualified spec for a NID (NodeId) which is prefixed by did:key:
While we want to maintain Author and ActorId for internal use.

Ok did rewrite the PR on base of @FintanH PR, which has done the heavy lifting.
Now this PR just removes the Option from the issue.author() and adds a Did type to the Author struct.

Argh, messed something up.

Ok, what happened is that I included these changes into fintan's branch, so will leave this closed and we can merge both at the same time.


input attribute values need to be escaped

if you input something like ‘this is a “test” with quotes’ it stores the value correctly, but next refresh will only show ‘this is a ‘

first, your code is wrong, is should be like below:
foreach ($this->attributes as $name => $value) {
            $html[] = $name . '="' . htmlspecialchars($value) . '"';
        }

and second...... z-song would merge the code doesn't pass test of StyleCi and Travis-Ci.

I have already pull another request to him.

first, code isn't wrong. e() is Laravel's helper to escape html and more correct then just using htmlspecialchars.
Its the same as using {{ $variable }} in blade.
if (! function_exists('e')) {
    /**
     * Escape HTML special characters in a string.
     *
     * @param  \Illuminate\Contracts\Support\Htmlable|string  $value
     * @return string
     */
    function e($value)
    {
        if ($value instanceof Htmlable) {
            return $value->toHtml();
        }

        return htmlspecialchars($value, ENT_QUOTES, 'UTF-8', false);
    }
}

and second... just trying to help with fundamental issues and pretty new to pullrequests myself.

Sorry, my faulr.
For the StyleCi and Travis-Ci, pls Google , it's difficult to tell you here


[BL602] Add new platform to matter

Change overview
Add new platform BL602
Add wifi Adaptation.
Testing
go to "connectedhomeip/examples/lighting-app/bouffalolab/bl602", see README.md。

 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.


PR: Rewrite test to make it pass (on mac)

Description of Changes

[x] Added unit test(s) covering the changes (if testable)

[x] Included a screenshot or animation (if affecting the UI, see Licecap)

Issue(s) Resolved

The way this test was written was failing on my mac all the time. I rewrote it in a slightly different way and it passes what I believe is the actual thing to be tested. Is this the case? See gif:

Fixed another one with the help of @andfoy.
======================== 738 passed, 61 skipped, 3 xfailed, 85 warnings in 850.93 seconds =========================

🎉
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct: @goanpeca

Hello @goanpeca! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file spyder/plugins/editor/widgets/tests/test_hints_and_calltips.py:

Line 50:1: W293 blank line contains whitespace

Made the suggested changes @ccordoba12.

@goanpeca, great job in making all the LSP related tests run independently!! It was very frustrating to not be able to do that!

Yes this was very annoying 😅!

@goanpeca, do you prefer to remove CI_PYTEST as part of this PR? Or do you prefer to leave it for later?

Will do it now :-) gimme a sec I push the change.


Which Metric for Concurrent Receive Requests Quota?

Which metric can be used to track the "Number of concurrent receive requests on a queue, topic, or subscription entity" quota listed in Service Bus Limits?  If there isn't one then I'll submit Product Feedback for an enhancement.
https://docs.microsoft.com/en-us/azure/azure-subscription-service-limits#service-bus-limits

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

ID: 234dca79-9576-7bfb-644a-ef486c9ca2f6
Version Independent ID: a4d50a1a-4978-1506-77b9-efd12d6ea784
Content: Azure Service Bus metrics in Azure Monitor (preview)
Content Source: articles/service-bus-messaging/service-bus-metrics-azure-monitor.md
Service: service-bus-messaging
GitHub Login: @axisc
Microsoft Alias: aschhab

Hi @bdschaap Thank you for your feedback! We will review and update as appropriate.

https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-metrics-azure-monitor
I don't see one.
@axisc to confirm

That is correct - we don't track that yet.

@bdschaap We will now proceed to close this thread. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


[incubator/kubeless] document rbac.create configuration

What this PR does / why we need it: documentation fix for incubator/kubeless chart
Special notes for your reviewer: n/a

@Starefossen can you please sign off your commits and bump the chart version (even though it is a doc-only change.
https://www.helm.sh/blog/helm-dco/index.html
TIA

/ok-to-test
/assign

@Starefossen ping?

Sorry for the delay @davidkarlsen 🌮 I have added sign-off and bumped chart version. Thanks for reminding me 😄

/lgtm


(MODULES-8352) - Fix undef encoding breaking PostgreSQL 11

On PostgreSQL 11, the default value for the encoding parameter is undef. When initdb uses this, it throws an error:
Notice: /Stage[main]/Postgresql::Server::Initdb/Exec[postgresql_initdb]/returns: initdb: "" is not a valid server encoding name
Error: '/usr/pgsql-11/bin/initdb --encoding '' --pgdata '/var/lib/pgsql/11/data'' returned 1 instead of one of [0]

The changes fix this by checking for an encoding value and omitting the argument if it is undef.

Closing as #1043 already exists which rectifies this issue.


Item graph - performance improvement

We had severe performance issues with a large offline repo (~10 000 objects). Runtime of the item graph calculation exceeded several hours. With this fix it goes down to a few minutes.

postponed as unit test fails.


Feat/new rngh api

I'm using this alpha0 version in production, and it's working without problems. ~10k devices.
The only error I see in the console, is the following, but everything is working good.
 ERROR  Warning: Invalid prop `gesture` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.
    in IScrollViewGesture
    in RCTView (created by View)
    in View (created by GestureHandlerRootView)
    in GestureHandlerRootView
    in Unknown (created by CarouselComponent)

The error in the console by be related to this. My render method start with a Fragment element:
  _renderItem = ({ item, index }, PHOTO_HEIGHT) => {
    const currentPhoto = this.props.images[index];

    return (
      <>
        <View style={[styles.image, { height: PHOTO_HEIGHT }]}>
          blablabla
        </View>

        <View>
          blablabla
        </View>
      </>
    );
  };


Multiple tables in a query

Hi - I have a query that would be achieved in SQL like so
SELECT foo.A bar.B FROM A, B WHERE some predicate

I don't want to do a join (if I do it's a multi table join), and the second table's field is only used for an inner query
I cannot see a way to do that with this tool, have I missed something?
I've found that I can pass nil as a predicate - no idea what effect this will have on the query (yet, am testing)

CustomJoin should cover that, you can supply a custom join string e.g.
sq.Select(a.FOO).From(a).CustomJoin(",", b).Where(b.BAR.IsNull())

SELECT a.foo FROM a , b WHERE b.bar IS NOT NULL

works with any string really
sq.Select(a.FOO).From(a).CustomJoin("LOREM IPSUM", b).Where(b.BAR.IsNull())

SELECT a.foo FROM a LOREM IPSUM b WHERE b.bar IS NOT NULL

I've found that I can pass nil as a predicate

If I'm not wrong nil predicates would get printed as NULL into the query (not sure if that is correct or not). In the upcoming v2 I plan to change it so that it returns an error.


Upgrade to iambic-core 0.3.1 template compatibility

I need to override this incompatibility issue. At the moment, blocked to https://github.com/noqdev/iambic/issues/360, so we need to get the git history compatible with the latest iambic first.
how I verify?
I can run iambic import locally

I need to override this incompatibility issue. At the moment, blocked to noqdev/iambic#360, so we need to get the git history compatible with the latest iambic first.
how I verify? I can run iambic import locally

Decided to just fix the template directory by merging to main.


promql: Test errors aren't always ParseErr

This refers to the "unexpected error" introduced yesterday, I suppose?
:+1:

This predates it I think, it comes up when with the fuzz input is used in testdata.

When going through the Parser.errorf? functions it should always be a parse error (except for the "unexpected error"). If not, that's worth checking.
What exactly are you referring to?

parser.recover returns an error, test.go was expecting any errors to always be a ParseErr.


Add images to Projects with pop-out carsoul

Wanted this feature for my personal portfolio. Could not find great way of how to handle adding images besides manually importing.

I goofed up this pull request, let me know if you are interested in the feature and I can create it properly.


[3.0-Triple] Do not deserialize if data is null

What is the purpose of the change
Brief changelog
Verifying this change

Checklist

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Check if is necessary to patch to Dubbo 3 if you are work on Dubbo 2.7
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Add some description to dubbo-website project if you are requesting to add a feature.
[ ] GitHub Actions works fine on your own branch.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report

Merging #9699 (6ec0ed4) into 3.0 (8059985) will increase coverage by 0.01%.
The diff coverage is 0.00%.

@@             Coverage Diff              @@
##                3.0    #9699      +/-   ##
============================================
+ Coverage     65.70%   65.71%   +0.01%
  Complexity      294      294
============================================
  Files          1192     1192
  Lines         52171    52176       +5
  Branches       7921     7922       +1
============================================
+ Hits          34277    34288      +11
- Misses        14204    14207       +3
+ Partials       3690     3681       -9

Impacted Files
Coverage Δ

...ache/dubbo/rpc/protocol/tri/UnaryClientStream.java
39.58% <0.00%> (-4.61%)
:arrow_down:

.../apache/dubbo/rpc/filter/ProfilerServerFilter.java
62.85% <0.00%> (-22.86%)
:arrow_down:

.../remoting/transport/netty4/NettyServerHandler.java
58.13% <0.00%> (-9.31%)
:arrow_down:

...pache/dubbo/registry/support/AbstractRegistry.java
72.53% <0.00%> (-3.88%)
:arrow_down:

.../apache/dubbo/rpc/protocol/injvm/InjvmInvoker.java
72.44% <0.00%> (-3.07%)
:arrow_down:

...e/dubbo/remoting/transport/netty/NettyChannel.java
51.13% <0.00%> (-1.14%)
:arrow_down:

...rg/apache/dubbo/common/timer/HashedWheelTimer.java
85.91% <0.00%> (+0.68%)
:arrow_up:

...ubbo/registry/client/ServiceDiscoveryRegistry.java
77.77% <0.00%> (+0.69%)
:arrow_up:

...ting/zookeeper/curator/CuratorZookeeperClient.java
71.15% <0.00%> (+0.96%)
:arrow_up:

...ing/zookeeper/curator/Curator5ZookeeperClient.java
69.56% <0.00%> (+0.96%)
:arrow_up:

... and 11 more

Continue to review full report at Codecov.

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


Facebook and Telegram return errors when a card action's value is not a string

The Messenger platform and the Telegram Bot API both expect the returned data in their buttons to be strings, but Bot Framework postBack and messageBack actions are designed so that their values are expected to be objects:

A7350: Senders SHOULD NOT include value fields of primitive types (e.g. string, int). value fields SHOULD be complex types or omitted.

Slack buttons work the same way (their payloads must be strings), but rather than returning an error the Slack channel handles non-string values by just converting them to empty strings. While it would be better if the channel connector service actually serialized the objects into JSON, the point is that it doesn't return an error and neither should the Facebook and Telegram connectors.
To reproduce
var card = new HeroCard(buttons: new List<CardAction>
{
    new CardAction(ActionTypes.MessageBack, "title", value: new { foo = "value" }),
});

await turnContext.SendActivityAsync(MessageFactory.Attachment(card.ToAttachment()));
// Microsoft.Bot.Schema.ErrorResponseException:
// 'Operation returned an invalid status code 'BadRequest''

@v-kydela  The reason why Facebook throws an error is not because the value is complex but rather because text is null. Facebook Messager expects a string or number to be passed in the text property. Actually, BF Facebook channel drops any value passed in value property regardless of its type. If a channel supports complext data then that should be passed in value property otherwise always pass it in the text property. For example MS Teams does support complex object types.
Slack supports only string therefore only string values must be passed in text property. However, the channel defaults to the value in the value property if text property is null. Note that still in this case the value passed in the value property must still be a string value otherwise it will be dropped by the channel since slack expects only string in its value property.
Hope this helps understand why we have the A7350 spec the way it is.
I will go ahead and close this issue.


Add Changelog for 0.1.0

Please release this first testing version 0.1.0. When this release is tagged we can start testing this is real environments and don't have to rely on dev-master to be stable.

@tobscure Let me know when we can release a new version and I'll fix the date asap.

Sorry for the delay. If you can bump the date then I'll merge :)

No worries! Just glad to get this tagged :+1: I've updated the date now.

Tagged!


Improve permission description

Overview
Improve the explanation of the admin permissions.
Description

### Submitter Checklist
- [X] Make sure you are opening from a topic branch (**/feature/fix/docs/ branch** (right side)) and not your main branch.
- [X] Ensure that the pull request title represents the desired changelog entry.
- [X] New public fields and methods are annotated with `@since TODO`.
- [X] I read and followed the [contribution guidelines](https://github.com/IntellectualSites/.github/blob/main/CONTRIBUTING.md).

https://github.com/IntellectualSites/FastAsyncWorldEdit/pull/2419


BranchUniversalObject

@aaustin @sojanpr @Sarkar first commit, still need:

[x] share sheet
[x] core spotlight indexing
[x] more manual testing to find edge cases

Other than those comments, all looks good

This looks great after typo fix. :+1:

Sorry for the nasty diff. I decided to include more standard spacing here in Branch.h and Branch.m. If you hate it, I can spend ~10-15 min removing

Now the testbed app has BranchUniversalObject example

after you add that callback :+1:


How can I prevent overlapping previous ScrollPage component?

This library is amazing! Thanks for creating it.
This is not an issue but more like a question.
So I am implementing scroll animation on Gatsby project and it works fine.
But I was wondering how I can prevent the next ScrollPage component from overlapping the previous component.
In the example here, you will see Express text after Node Js text goes away from the screen. But API text appears before Express text completely disappears. (Hope you will get what I mean here).
Is there any way to control overlapping and not-overlapping each other?

Well...
I kinda figured it out how to avoid overlapping.
You just need to insert an empty ScrollPage in between components you don't want them to be overlapped.
So I did like:
<ScrollPage>
    <Animator animation={FadeUp}>
      // some component
    </Animator>
</ScrollPage>
// this prevents overlapping the component below to the above
<ScrollPage>
    <Animator animation={FadeUp}>
      <></>
    </Animator>
</ScrollPage>
<ScrollPage>
    <Animator animation={FadeUp}>
      // some component2
    </Animator>
</ScrollPage>

This might not be the best solution, but it seems to be working for my case and hope this will help others who may have the same concern


confuse about cluster setting "cache_capacity_reached" and "knn.circuit_breaker.unset.percentage"

For deeply understand the behavior of the cache , I try some practice of cache setting likes below
PUT /_cluster/settings
{
    "persistent" : {
        "knn.plugin.enabled" : true,
        "knn.algo_param.index_thread_qty" : 20,
        "knn.cache.item.expiry.enabled": true,
        "knn.cache.item.expiry.minutes": "120m",
        "knn.memory.circuit_breaker.enabled" : true,
        "knn.memory.circuit_breaker.limit" : "10%",
        "knn.circuit_breaker.unset.percentage": 65
    }
}

And after indexing some vector into different data, the knn statistics api shows below.
What makes me confused is that "graph_memory_usage_percentage" has been over 100, but "eviction_count" doesn't work(it always be 0) after I warmup some new index.
The "cache_capacity_reached" should be true by the design but unfortunately it was still false even though "knn.circuit_breaker.unset.percentage" has totally reached  . Is it anything wrong?
My device is 250GB memory, JVM uses 31G.
  "_nodes" : {
    "total" : 3,
    "successful" : 3,
    "failed" : 0
  },
  "cluster_name" : "odfe-cluster",
  "circuit_breaker_triggered" : false,
  "nodes" : {
    "xfvHY81rQjSQz5Wa0g8rmg" : {
      "miss_count" : 583,
      "graph_memory_usage_percentage" : 108.94683,
      "graph_query_requests" : 11629745,
      "graph_memory_usage" : 25204287,
      "cache_capacity_reached" : false,
      "graph_index_requests" : 57380,
      "load_exception_count" : 0,
      "load_success_count" : 544,
      "eviction_count" : 0,
      "indices_in_cache" : {
        "knn_pid_2020082711" : {
          "graph_memory_usage" : 7444895,
          "graph_memory_usage_percentage" : 32.180943,
          "graph_count" : 61
        },
        "knn_pid_2020082810" : {
          "graph_memory_usage" : 2702801,
          "graph_memory_usage_percentage" : 11.682997,
          "graph_count" : 29
        },
        "knn_pid_2020082812" : {
          "graph_memory_usage" : 2705674,
          "graph_memory_usage_percentage" : 11.6954155,
          "graph_count" : 29
        },
        "knn_pid_2020082801" : {
          "graph_memory_usage" : 2776495,
          "graph_memory_usage_percentage" : 12.001543,
          "graph_count" : 30
        },
        "knn_pid_2020082800" : {
          "graph_memory_usage" : 2741016,
          "graph_memory_usage_percentage" : 11.848183,
          "graph_count" : 29
        },
        "knn_pid_2020082811" : {
          "graph_memory_usage" : 2723480,
          "graph_memory_usage_percentage" : 11.772383,
          "graph_count" : 29
        },
        "knn_pid_2020082814" : {
          "graph_memory_usage" : 4109926,
          "graph_memory_usage_percentage" : 17.765368,
          "graph_count" : 33
        }
      },
      "graph_query_errors" : 0,
      "hit_count" : 670,
      "graph_index_errors" : 0,
      "knn_query_requests" : 10,
      "total_load_time" :<PHONE_NUMBER>28
    },
    "hS09IRT4QkqyrsNDl3wCTQ" : {
      "miss_count" : 586,
      "graph_memory_usage_percentage" : 109.56773,
      "graph_query_requests" : 12992605,
      "graph_memory_usage" : 25347929,
      "cache_capacity_reached" : false,
      "graph_index_requests" : 42870,
      "load_exception_count" : 0,
      "load_success_count" : 586,
      "eviction_count" : 0,
      "indices_in_cache" : {
        "knn_pid_2020082711" : {
          "graph_memory_usage" : 3721199,
          "graph_memory_usage_percentage" : 16.085075,
          "graph_count" : 29
        },
        "knn_pid_2020082710" : {
          "graph_memory_usage" : 3727154,
          "graph_memory_usage_percentage" : 16.110815,
          "graph_count" : 32
        },
        "knn_pid_2020082801" : {
          "graph_memory_usage" : 2776510,
          "graph_memory_usage_percentage" : 12.001608,
          "graph_count" : 27
        },
        "knn_pid_2020082812" : {
          "graph_memory_usage" : 2705705,
          "graph_memory_usage_percentage" : 11.695549,
          "graph_count" : 28
        },
        "knn_pid_2020082811" : {
          "graph_memory_usage" : 2723485,
          "graph_memory_usage_percentage" : 11.772405,
          "graph_count" : 30
        },
        "knn_pid_2020082800" : {
          "graph_memory_usage" : 5484179,
          "graph_memory_usage_percentage" : 23.705647,
          "graph_count" : 56
        },
        "knn_pid_2020082814" : {
          "graph_memory_usage" : 1475616,
          "graph_memory_usage_percentage" : 6.378426,
          "graph_count" : 18
        },
        "knn_pid_2020082813" : {
          "graph_memory_usage" : 2734081,
          "graph_memory_usage_percentage" : 11.818206,
          "graph_count" : 31
        }
      },
      "graph_query_errors" : 0,
      "hit_count" : 1667,
      "graph_index_errors" : 0,
      "knn_query_requests" : 11170,
      "total_load_time" :<PHONE_NUMBER>20
    },
    "16kZnxnPQwa4Bj76MV2shw" : {
      "miss_count" : 566,
      "graph_memory_usage_percentage" : 126.612564,
      "graph_query_requests" : 12563740,
      "graph_memory_usage" : 29291163,
      "cache_capacity_reached" : false,
      "graph_index_requests" : 62782,
      "load_exception_count" : 0,
      "load_success_count" : 566,
      "eviction_count" : 0,
      "indices_in_cache" : {
        "knn_pid_2020082810" : {
          "graph_memory_usage_percentage" : 11.695342,
          "graph_memory_usage" : 2705657,
          "graph_count" : 18
        },
        "knn_pid_2020082711" : {
          "graph_memory_usage_percentage" : 16.096361,
          "graph_memory_usage" : 3723810,
          "graph_count" : 30
        },
        "knn_pid_2020082710" : {
          "graph_memory_usage_percentage" : 16.091845,
          "graph_memory_usage" : 3722765,
          "graph_count" : 30
        },
        "knn_pid_2020082801" : {
          "graph_memory_usage_percentage" : 11.974552,
          "graph_memory_usage" : 2770251,
          "graph_count" : 24
        },
        "knn_pid_2020082812" : {
          "graph_memory_usage_percentage" : 11.700128,
          "graph_memory_usage" : 2706764,
          "graph_count" : 26
        },
        "knn_pid_2020082800" : {
          "graph_memory_usage_percentage" : 11.857425,
          "graph_memory_usage" : 2743154,
          "graph_count" : 29
        },
        "knn_pid_2020082811" : {
          "graph_memory_usage_percentage" : 11.762212,
          "graph_memory_usage" : 2721127,
          "graph_count" : 26
        },
        "knn_pid_2020082814" : {
          "graph_memory_usage_percentage" : 11.782354,
          "graph_memory_usage" : 2725787,
          "graph_count" : 31
        },
        "knn_pid_2020082813" : {
          "graph_memory_usage_percentage" : 23.652344,
          "graph_memory_usage" : 5471848,
          "graph_count" : 60
        }
      },
      "graph_query_errors" : 0,
      "hit_count" : 1932,
      "graph_index_errors" : 0,
      "knn_query_requests" : 148869,
      "total_load_time" :<PHONE_NUMBER>61
    }
  }
}

Hi @dengxianjie, this is definitely unusual and might be a bug.
I have a couple of questions:

What artifact are you using to set up your cluster (i.e. RPM/DEB/Docker)? Which ODFE version is it?
When you say "warmup" some new index, do you mean run some random searches over it or use the warmup API?
How many indices did you have?
What were their shard configurations?
How many documents did they have?

Additionally, in order to reproduce the issue, could you provide the exact, detailed steps you followed to get the cache to the state where graph memory usage is above 100?

Hi @dengxianjie, this is definitely unusual and might be a bug.
I have a couple of questions:

What artifact are you using to set up your cluster (i.e. RPM/DEB/Docker)? Which ODFE version is it?
When you say "warmup" some new index, do you mean run some random searches over it or use the warmup API?
How many indices did you have?
What were their shard configurations?
How many documents did they have?

Additionally, in order to reproduce the issue, could you provide the exact, detailed steps you followed to get the cache to the state where graph memory usage is above 100?

thanks for reply.
On the beginning I answer your questions.

runs in docker environment. Image pull from "amazon/opendistro-for-elasticsearch:1.9.0". ES version is 7.8.0.
"warmup" means I do some knn search by random vectors until the server responses tens of microseconds.
on that moment, amount of indices is about ten to twenty, not much.
Just for practice for preparing deploy production environment, I decide 2 shards for primary and 1 replica settings
each indices has about 2 millions to 4 millions doc.

What I do during the case occur is below,
Step 1. I found that PUT and new knn cluster setting can evict all cache and init the statistic api output (Is it right?) , so I PUT and setting
PUT /_cluster/settings
{
    "persistent" : {
        "knn.plugin.enabled" : true,
        "knn.algo_param.index_thread_qty" : 20,
        "knn.cache.item.expiry.enabled": true,
        "knn.cache.item.expiry.minutes": "120m",
        "knn.memory.circuit_breaker.enabled" : true,
        "knn.memory.circuit_breaker.limit" : "10%",
        "knn.circuit_breaker.unset.percentage": 65
    }
}

Step 2. I do random search on different index on by one, and invoke  GET _opendistro/_knn/stats to observe the cache stat after every search action.
Step 3. And I finally found out "graph_memory_usage_percentage" unexpectedly above 100
Additionally, I have reached the  "knn.circuit_breaker.unset.percentage" before ,at the same time bulk requeset has been limited. This suggests circuit_breaker indeed can work ever.

Thanks @dengxianjie,  was able to reproduce issue. Looking into the root cause.

Hi @jmazanec15 , wonderful,  the bug you found ,logically, would influence the expiration.
But my issue, more accurately is the eviction doesn't works. Is it correct?  "graph_memory_usage_percentage" is unexpectedly above 100. It should EVICT some graph right now rather than wait for expiration occur.
The eviction just evict quiet slowly or didn't run?

Hi @dengxianjie
Yes, I believe the issue is that the cache does not actually get rebuilt with the new maximum weight set by "knn.memory.circuit_breaker.limit" : "10%".
This line is throwing an exception because of improper conversion.
So, this line never gets called.
Therefore, the old cache is still being used, which has a default CB of 50%. So capacity based evictions will still not occur until this 50% threshold is reached (at which point the circuit breaker will be set to true).
The confusion comes from the stats API, which uses the Elasticsearch setting to calculate graph_memory_usage here
The reason we use the setting as opposed to the cache's actual maximum weight to calculate this percentage is that the Guava cache does not actually expose a getter for maxWeight.
The above PR should fix this issue in the short term. However, in the long term, we should not actually change the setting until the cache is rebuilt. I will create an issue to track this.

👍  @jmazanec15 Completely understood. Thanks.


Emulator: Slow single step after pausing emulation

Describe the bug
Attempting to single-step one instruction after pausing emulation that has run for a while takes a really long time and results in the "Emulating..." pop up dialog with progress.
To Reproduce
Steps to reproduce the behavior:

Compile the following with -g3 -O0

int main() {
	unsigned char v;
	volatile unsigned char *p = (volatile unsigned char *)&v;
	for (unsigned long long i = 1; i > 0; i++) {
		*p = 0;
	}
	p = (volatile unsigned char *)&v;
	for (unsigned long long i = 1; i > 0; i++) {
		*p = 0;
	}
}

Import, open in code browser, run analysis, save and close.
Open the file in the emulator.
Go to main, start emulating the current program in a new trace starting at the cursor.
Let it run for about 30 seconds (I waited until my laptop fans picked up).
Click the interrupt/suspend/pause button (ctrl+i)
After it has paused and you investigate why it is stuck, attempt to single step.
Notice it re-emulating the trace all over again for no reason.

Expected behavior
It should perform a single step and only emulate the current instruction with the current state.
Environment (please complete the following information):

Ghidra Version: 11.0_DEV ~ 5b53b35968c87388be5a1c753b3f572aa9bd982c

Additional context
I'm not sure if this is even technically a bug but it can be quite a bottleneck.

I'll have to check why, but you are correct, it should just pick up where it left off and perform the one step. One likely explanation is that the emulator gets interrupted in the middle of an instruction. (It checks the suspend flag every p-code op, in case there's an infinite loop in the sleigh spec.) The details get pedantic, but I don't think the emulation service realizes it can use that interrupted emulator, because of those trailing ops. So, it creates a fresh one on the original initial state and re-executes the schedule+1.
I suspect if you were to step a second time after the interrupt, it will do what you expect?
This fix won't be easy, but I think it's doable.

I'll have to check why, but you are correct, it should just pick up where it left off and perform the one step. One likely explanation is that the emulator gets interrupted in the middle of an instruction. (It checks the suspend flag every p-code op, in case there's an infinite loop in the sleigh spec.) The details get pedantic, but I don't think the emulation service realizes it can use that interrupted emulator, because of those trailing ops. So, it creates a fresh one on the original initial state and re-executes the schedule+1.
I suspect if you were to step a second time after the interrupt, it will do what you expect?
This fix won't be easy, but I think it's doable.

Yes stepping a second time will work as expected. I think if you were to click run after single stepping in that state it will do it again too but don't quote me on it.


Question about remote TLS Verficiation

Hi I was wondering if satellite attempts to verify remote TLS certificates for endpoints over TLS? If so, is there a way to skip verification. I am currently getting
http: proxy error: remote error: tls: handshake failure

Thanks in advance.

Going to close the issues. Even though I couldn't get into the weeds of the specific handshake error I confirmed that self signed certs appear to be honored by Satellite. Thanks again


Grunt Watch Should Not Watch Test Output Files

With grunt develop running, when I run npm test I see the following:

It seems like we should not be watching the .nyc_output or coverage folders.

This seems to be caused by a combination of 2 factors:

The library that grunt-contrib-watch uses to watch for file changes listens at the directory level rather than a per-file basis. Therefore when we register the watch task for our Gruntfile.js file, it's actually watching for changes in the entire root project folder but still only responding to changes that involve the Gruntfile.js file.
There's a (still unresolved) bug in grunt-contrib-watch that triggers the watch task whenever a new folder is added to a directory that's being watched. That's why you observed the "watch" task getting triggered when .nyc_output and coverage were added. You would not see the "watch" task triggered if those folders existed at the point "watch" was first run, nor when a file inside of either of those folders changed.

There's a PR to fix the issue described in bullet point 2, but it's been open since 2016. There hasn't been activity in grunt-contrib-watch since May 2018, so not sure what the odds are of getting a PR accepted.
As best as I can tell, we likely have the same behavior in every other project that we use Grunt, grunt-contrib-watch, and watch Gruntfile.js.
Should we just close this and move on @jthomerson? Or do you recommend something else?

Let's leave our issue open (it is an issue), but not do anything about it. If anyone knows some Grunt people to ping, let's try that. It's a bit ridiculous that those issues are open that long and don't have any feedback or activity.


requesting registration id null

I'm using an example I plan:
`
var app = {
// Application Constructor
initialize: function() {
this.bindEvents();
},
// Bind Event Listeners
//
// Bind any events that are required on startup. Common events are:
// 'load', 'deviceready', 'offline', and 'online'.
bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
},
// deviceready Event Handler
//
// The scope of 'this' is the event. In order to call the 'receivedEvent'
// function, we must explicitly call 'app.receivedEvent(...);'
onDeviceReady: function() {
console.log('Received Device Ready Event');
console.log('calling setup push');
app.setupPush();
},
setupPush: function() {
console.log('calling push init');
var push = PushNotification.init({
"android": {
"senderID": "XXXXXXXX"
},
"browser": {},
"ios": {
"sound": true,
"vibration": true,
"badge": true
},
"windows": {}
});
console.log('after init');
    push.on('registration', function(data) {
        console.log('registration event: ' + data.registrationId);

        var oldRegId = localStorage.getItem('registrationId');
        if (oldRegId !== data.registrationId) {
            // Save new registration ID
            localStorage.setItem('registrationId', data.registrationId);
            // Post registrationId to your app server as the value has changed
        }

        var parentElement = document.getElementById('registration');
        var listeningElement = parentElement.querySelector('.waiting');
        var receivedElement = parentElement.querySelector('.received');

        listeningElement.setAttribute('style', 'display:none;');
        receivedElement.setAttribute('style', 'display:block;');
    });

    push.on('error', function(e) {
        console.log("push error = " + e.message);
    });

    push.on('notification', function(data) {
        console.log('notification event');
        navigator.notification.alert(
            data.message,         // message
            null,                 // callback
            data.title,           // title
            'Ok'                  // buttonName
        );
   });
}

};
`
when I start app I can not receive in tokens
but only with a phongap emulator receive tokens!!
How can I solve?

I'm sorry I can know why you close the posts? Is it possible to have an answer that is closed? !!

I'm sorry I can know why you close the posts? Is it possible to have an answer that is closed? !!

@jcesarmobile  I'm sorry I can know why you close the posts? Is it possible to have an answer that is closed? !!

 This plugin takes a lot of work to maintain and I can't afford the time required to solicit the required info from everyone.
I'm closing this issue but please feel free to re-open the issue if you provide the requested details from the new issue submission guidelines.
https://github.com/phonegap/phonegap-plugin-push/blob/master/.github/ISSUE_TEMPLATE.md