TextInput value overflow with tiny-skia backend

Is there an existing issue for this?

[X] I have searched the existing issues.

Is this issue related to iced?

[X] My hardware is compatible and my graphics drivers are up-to-date.

What happened?
After entering a long chain of characters and unfocusing the text input, the value overflow the input bounds.
Example with ICED_BACKEND=tiny-skia cargo run -p tour

Both master and 12.1 version are affected
What is the expected behavior?
The text input value should not overflow the input bounds.
Version
crates.io release
Operating System
Linux
Do you have any log output?
No

This is also occurring on Windows 64 bit with tiny-skia (but not with wgpu)


[SPI_DEVICE|SPI_FLASH] Added a write-protection on en4b/ex4b to avoid…

… SW overwrite

Issue : as reported in #14940, when CSB has a short deassertion time, the next sck_csb_asserted_pulse can show up at the next SPI transaction while the previous propagation is still ongoing. Since spi_reg_cfg_addr_4b_en_sync still shows the old value different from spi_cfg_addr_4b_en_o, spi_cfg_addr_4b_en_o is written again by the old value.
In this fix, the HW source-of-truth value is protected till its mirrorred SW reg is updated

Signed-off-by: Joshua Park<EMAIL_ADDRESS>

I think I am OK with this change as this PR removes the issue (short CSb inactive rolls back the addr_4b value). But I think we may use general CDC logic (primitives) for readers to understand more easily.
+1 for merging this. I will delegate to @tjaychen to final stamp. :)

I think I am OK with this change as this PR removes the issue (short CSb inactive rolls back the addr_4b value). But I think we may use general CDC logic (primitives) for readers to understand more easily.
+1 for merging this. I will delegate to @tjaychen to final stamp. :)

ah yeah agreed with @eunchan if we can re-use cdc primitives it would be better.  Which ones did you have in mind?

I think I am OK with this change as this PR removes the issue (short CSb inactive rolls back the addr_4b value). But I think we may use general CDC logic (primitives) for readers to understand more easily.
+1 for merging this. I will delegate to @tjaychen to final stamp. :)

ah yeah agreed with @eunchan if we can re-use cdc primitives it would be better. Which ones did you have in mind?

prim_sync_reqack_data would be enough I think.

ahhh, are you thinking about using the ack kind of as the "lock" condition?

Kind of.
I assume SW updates addr_4b only when it restores the config after power cycles. So it is one-time program only. In that case, asynchronous FIFO is too much in my opinion. By using reqack_data, the src_ack comes from dst_ack, the acceptance indicator @ SPI_CLK. We could create a logic showing pending bit (connecting to src_req and cleared by src_ack) and make it visible to SW. Then SW knows when the value has been accepted (committed).

On Oct 7, 2022, at 3:30 PM, tjaychen @.***> wrote:
ahhh, are you thinking about using the ack kind of as the "lock" condition?
—
Reply to this email directly, view it on GitHub https://github.com/lowRISC/opentitan/pull/15326#issuecomment-1272134331, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJDG3S5BJAWJDJN2EYCF43WCCP7TANCNFSM6AAAAAAQ7DK6PQ.
You are receiving this because you were mentioned.

Honestly, I feel guilty by designing this logic poorly at the beginning. :( I didn't think deeply at that time (incl. CSb timing.. ) Thanks for fixing the logic, Joshua!

Kind of. I assume SW updates addr_4b only when it restores the config after power cycles. So it is one-time program only. In that case, asynchronous FIFO is too much in my opinion. By using reqack_data, the src_ack comes from dst_ack, the acceptance indicator @ SPI_CLK. We could create a logic showing pending bit (connecting to src_req and cleared by src_ack) and make it visible to SW. Then SW knows when the value has been accepted (committed).
…
On Oct 7, 2022, at 3:30 PM, tjaychen @.***> wrote: ahhh, are you thinking about using the ack kind of as the "lock" condition? — Reply to this email directly, view it on GitHub <#15326 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJDG3S5BJAWJDJN2EYCF43WCCP7TANCNFSM6AAAAAAQ7DK6PQ. You are receiving this because you were mentioned.

i would "probably" be careful about assuming that it's one-time only. I know that's the direction Alex gave also, but you never know with these things...something could show up that we completely did not anticipate.

Honestly, I feel guilty by designing this logic poorly at the beginning. :( I didn't think deeply at that time (incl. CSb timing.. ) Thanks for fixing the logic, Joshua!

ah no worries. We did not exactly have a lot of time, and there were many complicated things in this block :)

Yeah.. That’s possible also. Good thing is, the request can be accepted in a SPI transaction. So, SW may updated frequently without any harm if they want.

On Oct 7, 2022, at 3:50 PM, tjaychen @.***> wrote:
Kind of. I assume SW updates addr_4b only when it restores the config after power cycles. So it is one-time program only. In that case, asynchronous FIFO is too much in my opinion. By using reqack_data, the src_ack comes from dst_ack, the acceptance indicator @ SPI_CLK. We could create a logic showing pending bit (connecting to src_req and cleared by src_ack) and make it visible to SW. Then SW knows when the value has been accepted (committed).
… x-msg://3/#
On Oct 7, 2022, at 3:30 PM, tjaychen @.***> wrote: ahhh, are you thinking about using the ack kind of as the "lock" condition? — Reply to this email directly, view it on GitHub <#15326 (comment) https://github.com/lowRISC/opentitan/pull/15326#issuecomment-1272134331>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJDG3S5BJAWJDJN2EYCF43WCCP7TANCNFSM6AAAAAAQ7DK6PQ https://github.com/notifications/unsubscribe-auth/AAJDG3S5BJAWJDJN2EYCF43WCCP7TANCNFSM6AAAAAAQ7DK6PQ. You are receiving this because you were mentioned.
i would "probably" be careful about assuming that it's one-time only. I know that's the direction Alex gave also, but you never know with these things...something could show up that we completely did not anticipate.
—
Reply to this email directly, view it on GitHub https://github.com/lowRISC/opentitan/pull/15326#issuecomment-1272142999, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJDG3VREOTKX3DPNLMNRNTWCCSKJANCNFSM6AAAAAAQ7DK6PQ.
You are receiving this because you were mentioned.

@tjaychen @eunchan can we merge this? If we want to make a reusable prim for this, we could do it in another PR. WDYT?

I agree, delegating the approval to @tjaychen

On Oct 12, 2022, at 12:16 PM, weicaiyang @.***> wrote:
@tjaychen https://github.com/tjaychen @eunchan https://github.com/eunchan can we merge this? If we want to make a reusable prim for this, we could do it in another PR. WDYT?
—
Reply to this email directly, view it on GitHub https://github.com/lowRISC/opentitan/pull/15326#issuecomment-1276630056, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJDG3V2LQKLZHB7WRS44QTWC4FAZANCNFSM6AAAAAAQ7DK6PQ.
You are receiving this because you were mentioned.

sounds good.


modules: update CXD5605 lib

Updated CXD5605 lib module to use the extended config struct
Signed-off-by: Jared Baumann<EMAIL_ADDRESS>

The following west manifest projects have been modified in this Pull Request:

Name
Old Revision
New Revision
Diff

cxd5605_lib
a72297f68604f05f88989cebf407a9db233c0ed5
fd99bda2a06a9f7659b19a11534c5e1f83ffb6f1
N/A

Note: This message is automatically posted and updated by the Manifest GitHub Action.


OSName and OSVersion not part of params.BootstrapInstance

Current Behaviour:
Right now only the OSType and OSArch are passed via params.BootstrapInstance to the CreateInstance method of a garm-provider.
Suggestion / Question:
Is there any reason why the OSName and OSVersion of a pool are not passed as well via params.BootstrapInstance?
For example when converting any type of VM or Pod from a cloud vendors api back to a params.Instance, OSName and OSVersion need to be set. This requires some kind of extra api request to the cloud vendor (like in the openstack provider) or in case of our current kubernetes provider setup storing the OSName and OSVersion in the image tag itself and extracting it from there, because at runtime we have no chance of getting this metadata information.
But if OSName and OSVersion would come with params.BootstrapInstance, one could just store the information in a pod label and access it from there.

Hi @rafalgalaw
The idea was that pools must be aware of the OS and architecture (because that's all we care about in reality, to be able to select the proper tools) of the pool, but the image itself would dictate the actual OS Name and OS version. This is why providers send back that info as part of the instance create/list response. This is because each provider has a different idea about what an image is and how it handles it.
The longer term goal was to have the userdata phone home that info once the machine (vm, container, etc)  booted, and not scrape the image metadata from the provider (because even that can be erroneous).

For example when converting any type of VM or Pod from a cloud vendors api back to a params.Instance, OSName and OSVersion need to be set.

The OS name and versions are just informational. We don't act on them at all. The provider can choose to send back empty values and all should be fine. It would just be some missing info when listing runners and a log message with a warning.

This requires some kind of extra api request to the cloud vendor (like in the openstack provider) or in case of our current kubernetes provider setup storing the OSName and OSVersion in the image tag itself and extracting it from there, because at runtime we have no chance of getting this metadata information.

Your k8s provider should work fine even if it doesn't provide this info. On the other hand, you could retrieve this info from the spun up container by reading /etc/os-release. If it's not there, you're most likely dealing with a scratch image. But as mentioned, it is not strictly needed. It's just something you could do if you wish.
You could even send back placeholder values like OSName: unknown and OSVersion: N/A.
Let me know if this helps, and apologies about the late reply. You never know how much email you get every day, until you miss 1 week's worth of them :smile:.

Thanks for the explaination, i think that makes sense!


Not Able to install barryvdh/laravel-dompdf

I am using this quick admin, and working very nice.
However I cannot install barryvdh/laravel-dompdf, becouse of Dompdf ver 6 already installed for yajra/laravel-datatables-oracle and it needs to be updated.
I tried to update yajra/laravel-datatables-oracle and dompdf but no luck (Maybe because of lack of knowledge)
I there any way to update it.
//

shatyainfo:~/workspace/rahim $ composer require barryvdh/laravel-dompdf
Using version ^0.8.2 for barryvdh/laravel-dompdf
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for barryvdh/laravel-dompdf ^0.8.2 -> satisfiable by barryvdh/laravel-dompdf[v0.8.2].
- Conclusion: remove dompdf/dompdf v0.7.0
- Conclusion: don't install dompdf/dompdf v0.7.0
- barryvdh/laravel-dompdf v0.8.2 requires dompdf/dompdf ^0.8 -> satisfiable by dompdf/dompdf[v0.8.0, v0.8.1, v0.8.2].
- Can only install one of: dompdf/dompdf[v0.8.0, v0.7.0].
- Can only install one of: dompdf/dompdf[v0.8.1, v0.7.0].
- Can only install one of: dompdf/dompdf[v0.8.2, v0.7.0].
- Installation request for dompdf/dompdf (locked at v0.7.0) -> satisfiable by dompdf/dompdf[v0.7.0].
Installation failed, reverting ./composer.json to its original content.

//

to resolved this issue, I have done some changes in my composer.json.lock file.

"require": {
"intervention/image": "^2.3",
"laravel/framework": "5.5.*",
"laravelcollective/html": "^5.4",
"yajra/laravel-datatables-oracle": "^8.4" . // changed previos ver to this.
},
2.
"require": {
"dompdf/dompdf": "^0.8",  // changed this
"illuminate/support": "5.1.x|5.2.x|5.3.x|5.4.x|5.5.x|5.6.x",
"php": ">=5.5.9"
},
And other requrired packages version has been changed.
Then done the composer update.
Then installled composer require barryvdh/laravel-dompdf , and its installed and working fine now.
Thank you!


[CL] Honouring final new line in changelog (for real)

ChangelogLinker do not adds a new line at the end of changelog files. I already tried to fix this with PR #1605, details can be found in issue #1604.
It turns out that the code I wrote is never called in DumpMergesCommand nor in LinkCommand.
This PR fix this.

Hi, could you please tests this PR? The thing is that I only use changelog-linker link command. I didn't test the other commands extensively (i.e. dump-merges and cleanup).
Also thanks for your amazing work.

Test would be needed to confirm this.
I'll merge it for now.

Thank you for the fix


command_hardware_code s/b common_hardware_code

Typo!
"command_hardware_code" folder should actually be "common_hardare_code" folder.

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

ID: 610239c4-4aa8-a845-9130-fbfb9f6f8101
Version Independent ID: 59ebdd89-fc74-11c9-e7dd-1be3b91ec0f5
Content: Connect an STMicroelectronics B-L4S5I-IOT01A to Azure IoT Central quickstart
Content Source: articles/iot-develop/quickstart-devkit-stm-b-l4s5i.md
Service: iot-develop
GitHub Login: @timlt
Microsoft Alias: timlt

@n7jti Thanks for the feedback! We are currently investigating and will update you shortly.

@n7jti  PR has been created to fix the reference. Changes will be done once it has been reviewed and merged. This issue will be closed automatically Once changes go live.  If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Why does FilePicker require full access to drive content for saving a file?

I don't understand why does filepicker require full access to the onedrive consent instead allowing user to pick a folder and upload provided data?
It does not sound really right. There is a huge difference between user-supervised access to OneDrive (file picker) and automatic access by an application.

Version 6 of the File Picker SDK does work this way. The app has no long term permissions granted to it to enable the file picker scenario.
Version 7 uses the Microsoft Graph API to actually upload files to OneDrive / OneDrive for Business, and Microsoft Graph doesn't support the concepts necessary for "contextual consent" like we used in Version 6. This is an open issue that we're working on resolving for a future update to Version 7.

@rgregg Thanks for explanation. I supposed it was related to the direct graph API usage. Looking forward to this update :).

@rgregg is there any progress on this?  Or anywhere we can track the opened issue you've mentioned
Thanks

I opened #630 to allow tracking this work.


news-please at background

Mandatory

[x] I read the documentation (readme and wiki).
[x] I searched other issues (including closed issues) and could not find any to be related. If you find related issues post them below or directly add your issue to the most related one.

Describe your question
Any Recomendation to running news-please at background? nohup?
Versions (please complete the following information):

OS: MacOS 12.4
Python Version: 3.10
news-please Version : latest

Intent (optional; we'll use this info to prioritize upcoming tasks to work on)

[x] personal
[x] academic
[x] business
[x] other
Some information on your project:

yea i would also recommend one of the following

nohup
supervisord


Remove unnecessary check that is always false

One of the loops in files.cpp is preceded by a check to see if output is null/nullptr or not. As output itself is not changed in the for loop, having to check if it exists every time is a waste of time and resources.

@JackBoosY is it good now?

@strega-nil Could you review this PR?
Thanks.

Sorry, this isn't actually unnecessary. A file might be destroyed in the middle of the write operation (i.e., a hard drive might be disconnected); if this happens, we want to return an error.
However, it may make sense to move the check down, optimize for the common case; it might be good to move the check below the for loop.

Agree with @strega-nil we need the check. Closing the PR for now. Please reopen if I'm missing anything.


numbagg & flox

What is your issue?
I've been doing some work recently on our old friend numbagg, improving the ewm routines & adding some more.
I'm keen to get numbagg back in shape, doing the things that it does best, and trimming anything it doesn't. I notice that it has grouped calcs. Am I correct to think that flox does this better? I haven't been up with the latest. flox looks like it's particularly focused on dask arrays, whereas numpy_groupies, one of the inspirations for this, was applicable to numpy arrays too.
At least from the xarray perspective, are we OK to deprecate these numbagg functions, and direct folks to flox?

Supporting numbagg as a backend for flox would be a major win (https://github.com/xarray-contrib/flox/pull/72) particularly because it supports the "group nD array by 1D array" use-case.
The pure numpy approach in numpy_groupies requires "group 1D array by other 1D array"; this transformation is a decent chunk of overhead (30-40%).
flox does implement a ufunc.reduceat solution (originally by Stephan), but that requires an argsort of the array, which again is not cheap.
I stalled out on numbagg because of issues around fill_value specification. It requires some changes on the numbagg end, but nothing too hard

particularly because it supports the "group nD array by 1D array" use-case.

The pure numpy approach in numpy_groupies requires "group 1D array by other 1D array"; this transformation is a decent chunk of overhead (30-40%).

Ah interesting. I'm still at 80% of understanding — but to confirm "Form 3" here doesn't do what we need? i.e. the other dimensions are flattened into columns of a which represents the "nD array", and the the group_idx is the 1D array?

The pure numpy approach

And if flox supports the numba (i.e. not yet numbagg) implementation in numpy_groupies, that doesn't help?
(not to be too down on numbagg — I had high hopes for it, and still think it's great, just don't want it to be the 3rd best implementation if someone else does it better...)

but to confirm "Form 3" here doesn't do what we need?

It does do what we need, but numbagg would do it substantially faster (I don't remember numbers off the top of my head, but at least 2X faster?).

And if flox supports the numba (i.e. not yet numbagg) implementation in numpy_groupies, that doesn't help?

I think of groupby with numpy_groupies as 3 steps, a useful rule is these steps take approximately equal amounts of time, though for small problems step 3 can be small-ish (20% of total time).

Factorize to integer codes -> using pandas
transform problem to purely 1D problem
actually run the reduction.

numpy_groupies uses numba for (3) but a lot of the overhead is in (2), which uses np.ravel_multi_index.
(side note: One of the overheads with flox is that for mean we run step (2) twice, once for sum and once for count. This could be fixed.).

I had high hopes for it, and still think it's great, just don't want it to be the 3rd best implementation if someone else does it better

I think it is  the absolute best for typical Xarray user, just needs some effort around integration.

Factorize to integer codes -> using pandas

transform problem to purely 1D problem

actually run the reduction.

Yes very much agree, nicely conceptualized.

numpy_groupies uses numba for (3) but a lot of the overhead is in (2), which uses np.ravel_multi_index.

Ah interesting, I need to think through this more. I hadn't actually thought (2) was expensive; that it could be done by indexing into an array of N dimensions with a set of 1D indices, like A[indices], i.e. A[[1,4,7,8]]`. And then (3) called an aggregation func on those values. So the broadcasting to the other dimensions would "just work".
But maybe the data access there isn't great — by aggregating over each group in turn, it's jumping around; and much less efficient relative running through the data linearly, assigning to relevant group.
Or maybe I'm completely misunderstanding, thanks for you patience if so...

indexing into an array of N dimensions with a set of 1D indices, like A[indices], i.e. A[[1,4,7,8]]`. And then (3) called an aggregation func on those values.

This is xarray's "for loop over groups" approach, it can get quite slow. If you have some clever ideas for vectorizing this, that would be amazing!
It's also not a simple broadcasting because commonly you're only reducing along one of n dimensions. I did improve numpy_groupies for this (https://github.com/ml31415/numpy-groupies/pull/46) but I remember thinking that numbagg would still be a major win.

This is xarray's "for loop over groups" approach, it can get quite slow. If you have some clever ideas for vectorizing this, that would be amazing!

Yes I imagine it's slow for a few reasons:

The loop is in python
It's not parallelized
It's bad for data locality (it's going by group order, rather than by data order)

I had thought that numpy_groupies would solve the first two, but sounds like that's not doing quite enough.
I'll try and come back to this and have a look (though to set expectations, I've probably gone too deep into numbagg for the moment, and so will try and spend a bit less time on it, and predominantly kicking this issue off to see if we could reduce its scope!)

@dcherian is there an issue describing what is missing from numbagg to use it in flox?

Here's a few: https://github.com/numbagg/numbagg/issues/120, https://github.com/numbagg/numbagg/issues/121, https://github.com/numbagg/numbagg/issues/122
and an updated test run from flox: https://github.com/xarray-contrib/flox/actions/runs/6344423208/job/17234488009?pr=72

This may well be complete, at least for the moment, WDYT @dcherian ?

Yes many thanks Max. It'll be possible to use xarray_obj.groupby(...).mean(..., engine="numbagg") after the next flox release.

Just released flox v0.8.0. Here are some benchmarks for grouping a 2D array by a 1D array. Great work, Max!

func
engine

nansum
flox
70.3±0.2ms

numpy
122±0.2ms

numbagg
18.4±0.04ms

nanmean
flox
144±0.4ms

numpy
196±0.5ms

numbagg
23.7±0.2ms

nanmax
flox
93.4±0.8ms

numpy
953±2ms

numbagg
20.3±0.2ms

count
flox
59.8±1ms

numpy
114±0.2ms

numbagg
29.3±0.1ms

That's awesome!
Thanks for doing the hard work — my part was relatively easy...
And I'm excited that numbagg has the resurgence it deserves after some hibernation — thanks to @shoyer for the hard work there a few years ago...

Wow, nice work both of you!


"Șuțești" is listed in the drop-down menu

Description:
"Șuțești" is listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Șuțești" in the search bar.

Expected results
The location is listed in the drop-down menu as "Șuțești, Brăila (Șuțești)".


Extend length of variables

At the moment, the limit is 125.
Either extend the limit to about 256 or make all variables use pointers so there is no max length.

https://github.com/OSSILE/RelicPackageManager/commit/e6916e338f70f73c026d1eb2722c5bc6b7ed233c


obsolete GO:1902505

GO:1902505
negative regulation of signal transduction involved in mitotic G2 DNA damage checkpoint
is a child of positive regulation, has no annotations

Duplicate of #20991
Done in  #20935


Blog app - Add forms

In this PR the following requirements have been met:
Create a method called current_user in your ApplicationController to make current user data available to all controllers.

It will return the first user from the database.

Create forms to perform the following functions:

Creates a Post on behalf of the current_user
Create a comment on behalf of the current_user
Allow Users to add likes to Posts.

Hello @porag-m06 could you check your slack?


[SDK] Expose joinAbis() utility function

Problem solved
Exposing more utility ABI functions
Changes made

[ ] Public API changes: exported joinABIs()
[ ] Internal API changes: none

/release-pr


Feature request - include date in group_bold.tsv

Please add "date of scan" in group tsv. Then one could create a time-wise plot to follow a scanner performance.

I believe this could be a great use of MRIQC outputs, but I believe users can easily implement it themselves. Since MRIQC shares the IQMs by default, this would bring privacy issues we don't want to deal with unless a critical mass of users really push for the feature.


Release artifacts for release v0.0.1

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

/hold


Extend MatchQuery parameters

I'd like to use optional match query parameters. This is an example how to extend library. But unfortunately the changes are not backwards compatible.
Later you can easily add new parameters from https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-match-query.html#match-field-params

extend MatchQuery with parameters
add WildcardQuery
corrected a typo 'ommitempty' in Source struct fields Include/Exclude
add alias for SortOrder

Also extend Search Query builder

I reviewed the changes, and they all seem okay. I made some changes to the SuggestS marshaller to ensure it passes its tests and fixed a typo. I haven't touched this repo for a while, and after I checked it today, I think it can benefit from some refactoring and improvements to make future changes easier and align better with current conventions. Thanks again for your help! 👍


fix prefetching lightbox images

We switched to expo-image a few months ago in #452, and Expo provides its own prefetch handling. Calling react-native's built-in prefetch may be causing unnecessary calls to our CDN.

👍 Confirmed fixed


Universal?

Universal hashing implies N/M collision estimate for all collision test sets, and not (N^2)/M/2 like can be seen in SMHasher tests for Polymur. Just saying. https://www.cs.cmu.edu/~avrim/451f11/lectures/lect1004.pdf

The universal hash function for strings is a unicorn (that is, it doesn't exist). Any fixed-memory universal hash function must be almost-universal. Since no one makes a hash function that allocates 2^64 bytes of memory to store its data, it is implied that any hash function which hashes strings is therefore almost-universal.
When I say that PolymurHash is "a universal hash function" in the introduction I don't mean to claim that it holds the "Universal" property over the set of all strings, rather that it is a hash function with universality claims. I immediately follow it up one sentence later with the exact collision probabilities claimed.

For example the wikipedia article Poly1305 hash function starts with "Poly1305 is a universal hash family". Since Poly1305 hashes strings and also doesn't allocate tons of memory we see that in fact, its collision probability scales with the input size.

Well, it would be fair to call it "almost universal hash function" then. Or most authors of "good" SMHasher hash functions could come up with proofs. "Universal hashing" is a brand, and it's a bit unfair to exploit it not actually having an intention to prove the "original" universality requirement.

Or most authors of "good" SMHasher hash functions could come up with proofs.

The proofs of what I claim are in this repository.

"Universal hashing" is an academic brand, and it's a bit unfair to exploit it not actually having an intention to prove the "original" universality requirement.

I don't exploit anything, you simply take the most unreasonably strict reading of the word "Universal" that no real-world hash function for strings ever satisfies, and then try to apply it to a hash function over strings.
Almost-universality isn't something I just came up with. It is just as academic. It has formal definitions. For example the PolyR hash function paper also opens with "We describe a universal hash-function family, PolyR". Guess what? Yes, that is also colloquial and also used to mean almost-universality.

Universal hashing implies N/M collision estimate for all collision test sets, and not (N^2)/M/2 like can be seen in SMHasher tests for Polymur.

Also, this is a misunderstanding of Polymur's security claim. Polymur doesn't have a "N^2/M/2" collision probability, assuming we use N to mean the number of strings in the input space, and M to mean 2^64 like in the paper you linked.
Polymur's collision probability bound scales with the length of the input string, not the number of strings in your input set. This is an exponential difference, there are 256^1024 binary strings of length 1024, yet Polymur's collision probability only goes up to 256 * 2^-60.2.
I have no idea where you got the N^2 term from, or how you can claim that it "can be seen in SMHasher tests".

Perhaps you misunderstood the claim of the lecture notes?

Note that they count the expected number of collisions of a specific string x with all other strings, not the total number of collisions over an entire data set.

Note that they count the expected number of collisions of a specific string x with all other strings to get to N/M, not the total number of collisions over an entire data set. That is also on the order of N^2/M/2 for a perfect universal hash. That is simply basic probability and has nothing to do with how good your hash function is.

I would not handle N^2/M/2 as something "simple". For example, (let's call it) "set's collision estimate" of CRC32 is way lower than N^2/M/2 in many SMHasher tests yet its collision estimate for isolated strings is likely N/M. I just do not see how collision estimate of a specific string is good, if it's not easily translatable to set's collision estimate. The situation you are probably overlooking is that when you add a new string to an already constructed set with N^2/M/2 total collisions, the collision estimate of a new string cannot be N/M. Either I'm misunderstanding something or "universal hashing" concepts are very poorly defined.
PolyR paper defines a collision estimate like for cryptographic hashes, which are never treated as "universal" to my knowledge. With such liberal treatment of collision estimate, "universality" claim is a bit moot.

N^2/M/2 is a formula used by SMHasher to calculate expected number of collisions.

If you look closer, it's derivative of set's collision estimate which is N/M. But there's no mention of collision estimate's derivatives in "universal hashing".

Either I'm misunderstanding something or "universal hashing" concepts are very poorly defined.

I think you are misunderstanding, because they are very strictly defined. The collision probability always talks about two arbitrary but different strings. You only talk about more than two strings once you get into k-independence for k > 2.

I just do not see how collision estimate of a specific string is good, if it's not easily translatable to set's collision estimate.

It generally translates pretty well.

PolyR paper defines a collision estimate like for cryptographic hashes, which are never treated as "universal" to my knowledge.

 The latter has always been based on universal hash function theory (PolyR, Poly1305, Galois Counter Mode, UMAC, etc are all (almost-)universal hash families).

With such liberal treatment of collision estimate, "universality" claim is a bit moot.

It is not liberal at all, it is very precise.

N^2/M/2 is a formula used by SMHasher to calculate expected number of collisions.

Expected number of collisions between ALL strings, not the expected number of collisions between ONE and all other strings. That is what the lecture notes you linked compute.
Your original statement "universal hashing implies N/M collision estimate for all collision test sets, and not (N^2)/M/2 like can be seen in SMHasher tests" is false, because that is mathematically impossible. It's also not what the linked lecture notes claim.

If you look closer, it's derivative of set's collision estimate which is N/M. But there's no mention of collision estimate's derivatives in "universal hashing".

I have no idea what you mean by that.

In "universal hashing", N/M collision estimate already implies a *set S from U. So, of course, I'm talking about more than two strings in a set. What's the purpose of talking about 2 strings in all sets?

By N/M derivative I mean that if you keep adding strings to a set, yielding sets with N+1, N+2... strings, addition increases set's collision estimate by N/M after each operation, if set's current collision estimate is N^2/M/2.

In "universal hashing", N/M collision estimate already implies a set S from U. So, of course, I'm talking about more than two strings in a set. What's the purpose of talking about sets having only 2 strings each?

Basic universal hashing is only talking about pairs of strings. Look, in the very lecture notes you linked:

The universality bound is for ONE pair of strings x != y.
The expectation of N/M is then calculated from the bound on pairs:

What's the purpose of talking about sets having only 2 strings each?

The purpose is that it's possible to analyze and prove things about 2 strings at a time, after which you can use statistics to extrapolate that behavior to sets of strings.

By N/M derivative I mean that if you keep adding strings to a set, yielding sets with N+1, N+2... strings, addition increases set's collision estimate by N/M after each operation, if set's current collision estimate is N^2/M/2.

Can you please give a clear definition of what you mean by "set's collision estimate"?

"set's collision estimate" is what "estimated total number of collisions" equals to, in all SMHasher tests.
Why the paper you've quoted talks about "linearity of expectations", on what premises?

"set's collision estimate" is what "estimated total number of collisions" equals to, in all SMHasher tests.

Yes, universal hashing makes no direct claims about that. Any bounds on that are entirely statistical, derived from the bound on pairs of strings.

Why the paper you've quoted talks about "linearity of expectation", on what premises?

https://math.stackexchange.com/questions/1810365/proof-of-linearity-for-expectation-given-random-variables-are-dependent
Also this isn't a "paper you've quoted", this is from the lecture notes you linked in your initial post. It's from https://www.cs.cmu.edu/~avrim/451f11/lectures/lect1004.pdf.

Yes, partially it was my misunderstanding. The set's collision estimate is emergent and not really definable while "universality" constraints are much simpler. But I have a further question - where can I find a proof that PolyMur's permutation yields uniformly-random output for any input, because without that the Pr(x and y collide)<1/M bound cannot be considered proven.

The set's collision estimate is emergent

Exactly.

and not really definable while "universality" constraints are much simpler.

There are also concepts of universality which do go beyond traditional universality, those are (almost-)k-independent hash function families. They are saying that if you have a set of k elements, the probability their hashes are any particular k-tuple is bounded.
To my knowledge we only have practical ways of constructing k-independent hash functions for relatively small k, and only for fixed-size inputs, not arbitrary-length strings when k > 2.

But I have a further question - where can I find a proof that PolyMur's permutation yields uniformly-random output for any input, because without that the Pr(x and y collide)<1/M bound cannot be considered proven.

As I said, Polymur is not exactly 1/M (where M = 2^64), but rather claims Pr(x and y collide) <= n * 2^-60.2 where n = len(x).
The proof for that is here: https://github.com/orlp/polymur-hash/blob/master/extras/universality-proof.md.

I mean the proof that for all values of set S from U, the permutation produces a set of pseudo-random values - values that look like a random oracle, if observer does not know original values of S.

That's a stronger property than regular universality, but luckily Polymur claims to be almost-2-independent, which is a stronger version of this anyway. Polymur claims that pairs of values look like random variables. That is, Polymur claims that if H is chosen independently at random from the family that for ANY m != m' and ANY x, y that
Pr[H(m) = x  &&  H(m') = y] <= n * 2^-124.2

You can just ignore one of the two variables and assume it collides to get a bound of n * 2^-60.2 on any particular output.
Note that again we prove the chance of any specific output is low, for a single input (or a single pair). A claim about "a set of pseudo-random values" where that set would have > 2 elements would again be an emergent probability from pulling multiple random numbers.

Also,

But I have a further question - where can I find a proof that PolyMur's permutation yields uniformly-random output for any input, because without that the Pr(x and y collide)<1/M bound cannot be considered proven.

That claim is not true. Consider a 64-bit hash function with a perfect 2^-64 collision bound. I can take that hash function, set the lowest bit to 0 and use that as a new hash function. It's now perfectly valid to claim this new function has a 2^-63 bound. But obviously the output is not uniformly random.

I'm maybe overlooking something in your proof, but I do not see how your construction leads to pair-wise independence (50% difference in bits) of outputs. Maybe you are referring to some "common knowledge" I have not read/can't remember at the moment? I do not argue with PolyMur's practical performance, but a proof is something more formal.

But I have a further question - where can I find a proof that PolyMur's permutation yields uniformly-random output for any input, [because without that the Pr(x and y collide)<1/M bound cannot be considered proven].

Consider a 64-bit hash function with a perfect 2^-64 collision bound. I can take that hash function, set the lowest bit to 0 and use that as a new hash function. It's now perfectly valid to claim this new function has a 2^-63 collision bound. But obviously the output is not uniformly random.

Uniform randomness is a statistical property. 1/M bound is emergent from probability theory. If bin A is used (among M bins), the probability the next independent random number will also refer to bin A is 1/M.

I'm maybe overlooking something in your proof, but I do not see how your construction leads to pair-wise independence (50% difference in bits) of outputs.

That is a different definition of pairwise independence. The definition for pairwise independence in universal hashing can be seen on Wikipedia:

It's also called strong universality, in our case almost-strong universality.

Uniform randomness is a statistical property. 1/M bound is emergent from probability theory. If bin A is used (among M total bins), the probability the next independent random number will also refer to bin A is 1/M.

Sure, but as my counter-example showed, low chance of collision does not imply every bit of the output looks random. In the most extreme case, consider hashing 32-bit numbers to 32-bit numbers. The identity function has 0 collisions, but obviously is not random.

Ok, understood about the pairwise independence. Can you comment how collision bound in the proof is useful if k when hashing a set of values is usually unchanging. In such condition, I can only rely on message's properties, not the key. Referring to (14 + n/7) / |K|.

As for zeroing the lowest bit example which reduces collision expectation, the issue with the example is that while collision expectation will change, and seemingly won't break anything, an initially random function will not be strictly uniformly-random anymore, and so probability theory won't be applicable. Strictly speaking, you can't use 1/M pair-wise collision estimate on a variable that was not previously shown to be uniformly-random. That for myself, maybe you do not look at things this way.

Can you comment how collision bound in the proof is useful if k when hashing a set of values is usually unchanging.

The point is that k is chosen uniformly at random independently from the values. As long as that holds, the bound is valid. At that point seeing k is "unchanging" doesn't matter. Since we assume the key was chosen independent from the value it doesn't matter whether k was chosen just now or ages ago - the choice was independent.
This does mean it's not secure to leak the hash values to an attacker, please read this section. If an attacker can see the hash values, he can potentially construct new values which are much more likely to collide.

Strictly speaking, you can't use 1/M pair-wise collision estimate on a variable that was not previously shown to be uniformly-random. That for myself, maybe you do not look at things this way.

Well, that's just mathematically wrong. Each input behaving as if being uniformly random is a sufficient but not necessary condition for collision resistance.
Consider a 16-bit to 16-bit identity hash function. It is not random at all but it literally can not create collisions. This isn't a trick either, it means if your input is 16 bits and you're building a hash table with 2^16 slots you can just use the identity hash function and never get collisions or the problems that come with them. That specific kind of hash table has a useful name: an array.

Well, events of collisions depend on variations in messages or keys. f = k^7 * (f + m[6]) implies f depends on both message and key at the same time. If key is fixed in a set, then only messages affect events of collisions, functionally. As for myself, I cannot accept the collision bound for the case of a fixed key.

Consider a 16-bit to 16-bit identity hash function. It is not random at all but it literally can not create collisions. This isn't a trick either, it means if your input is 16 bits and you're building a hash table with 2^16 slots you can just use the identity hash function and never get collisions or the problems that come with them. That specific kind of hash table has a useful name: an array.
I'm assuming an identity hash is non-random and it cannot be "universal" by definition. Then its collision expectation is knowingly 0, no need for a bound.

As for myself, I cannot accept the collision bound for the case of a fixed key.

There is no collision bound for a fixed key at all. That's not how universal hash functions work. The bound is always assuming the hash function is picked at random from the hash function family. This is fundamental.

There is no collision bound for a fixed key at all. That's not how universal hash functions work. The bound is always assuming the hash function is picked at random from the hash function family. This is fundamental.

But how this is practical? When one fills a structure with values the key is always fixed. Otherwise value lookup is just impossible.

Again, SSL is secured using this assumption - the key is chosen randomly and independently from the values, and the attacker never gets to see the hashes directly.

SSL is a stream cipher beside KEM; this is unrelated to hashing.

But how this is practical? When one fills a structure with values the key is always fixed. Otherwise value lookup is just impossible

The key isn't fixed. The key is chosen randomly at startup when the hash function is initialized independently from the values.

SSL is a stream cipher beside KEM; this is unrelated to hashing.

SSL includes authentication of the data. Authentication in 2023 is typically done with with Galois Counter Mode or Poly1305, both of which are universal hash based constructions.

Either way, I'm sorry, this is taking up too much of my time now. I would strongly suggest doing some more reading on what universal hashing is or how it works on a fundamental level.
The original paper that introduced universal hashing is Universal Classes of Hash Functions by Carter & Wegman. I would suggest starting there.

No problem. However, the key is fixed during application's lifetime usually. It's practically the same as selecting a single hash function from a family, for unlimited duration of time, in case of a server application, for example. Okay, abstractly it is an independent argument to the hash function, but functionally it does not change. MAC is another story - there key and/or nonce changes frequently. (GCM is stream cipher's operation mode)

You may delete the issue if it seems unuseful or confusing to potential users.

Another possible issue I've found in PolyMur's proof, and referring to your stance about 1/M pair-wise collision bound (that uniform randomness of hash outputs is out of the question). What your proof is lacking I think is that it does not show that pair-wise collisions of outputs for m and m' are bounded to 1/M. Your proof relies on pre-requisite that keys are chosen in a uniformly-random manner. But the case when both m and m' use the same key is not covered. So, a central pre-requisite of "universal hashing" (Pr[x and y collide]<1/M) for the case of same keys in x and y is not proven.

Your proof relies on pre-requisite that keys are chosen in a uniformly-random manner. But the case when both m and m' use the same key is not covered.

It absolutely is. The key is not chosen per message, the key is chosen per function. The choice of k is what determines hash function H from the family. So in the claim
Pr[H(m) = x  &&  H(m') = y] <= eps

there is only a single H, and thus a single choice of k.

Look Alexey... I'm aware of your work on komihash.  I say this, because I really need you to change your approach from trying to jump on the first thing that looks wrong to you to trying to learn instead.
Universal hash functions are a mathematical construct. To understand their claims and proofs you have to be very careful, and understand the mathematical background. This is work, and it's not intuitive. I understand it can be hard and confusing.
But claims this and that isn't proven (especially things as basic as linearity of expectation) show you simply haven't done the homework. Please read the paper I have suggested to you, and really try to understand the math. Another suggestion is to read High Speed Hashing for Integers and Strings and do the exercises. Many of the things you say "hey, this looks wrong" are covered in those exercises - they force you to examine your own assumptions.
It is hard, I understand. I struggled with it too! But you have to get these fundamentals right before you can start to analyze more complex constructions.

Well, I expected you would tell me to read stuff. Yes, my understanding of "universality" constraints was initially incomplete - the issue I had is with the total collision estimate of a set - I expected it's the first thing a "universal" hashing has to follow. Then I do have issues with terminology - it changes, it may be different in other sources, but it does not mean I do not know that probabilities of two uniformly-random events sum.
However, this in no way makes my further questions "absurd". I'm like you are interested in obtaining a proof of universality, and I'm taking your proof as some kind of a basis. For example, how you can prove "linearity of expectation" for your hash if you did not prove collision bound for the case of same keys.
MACs are totally different in this respect - they need to prove collision bound for independent streams, not for a local data set.

I never said your questions were absurd. They're very natural questions. They are however also very basic questions covered in any text on universal hash functions, and are not questions specific to Polymur. Your questions apply to any universal hash function family.
Which is why I said this takes too much of my time, and ask you to do the homework needed to cover the basics. If anything is unclear specifically about Polymur  or its design I'm happy to help.

I do not say your proof is wrong - I only say it applies to a specific case of MAC hashing, when key is uniquely generated for each hashing operation, without any requirement to store hashes in a single data set.

I only say it applies to a specific case of MAC hashing, when key is uniquely generated for each hashing operation

Please read section 4 "authenticating multiple messages" from New hash functions and their use in authentication and set equality by Wegman and Carter. It proves that for any strongly universal hash function family you can reuse the same hash function for authentication as long as you hide the hash values from the attacker (which they do with a one-time-pad).
There are similar proofs that for any strongly universal hash function hash table access with chaining takes 0(1) expected time.

I do not say your proof is wrong - I only say it applies to

The thing is, the proven claim has a standard form. It proves the almost (strong) universality. Because of that we can reuse results that only rely on that property, such as the above results.
This is why I say your questions are not about Polymur! If your problem isn't with the proof but with its applicability you have general questions about universality, for which I already pointed you to multiple resources to learn from.

Is PolyMur "strongly universal", and where I can gather that from the proof? Sorry if that's obvious.
In either case, my opinion is that if "non-strong universality" implies collision bound only with a pre-requisite of "random choice of family functions", it is practically only useful for MACs. OK, not arguing with theory, but theories have their limits of applicability, and it's not always obvious from the theory itself where it isn't applicable.
Anyway, thanks for the discussion. I still think "almost universal" claims are a bit of an exaggeration, an unfair advantage. And I think most of the hash functions that pass all SMHasher tests are practically "universal" except most of them have no formal proofs. Because SMHasher was built to test some basic statistics that are also claimed for "universal" hash functions.

Is PolyMur "strongly universal", and where I can gather that from the proof? Sorry if that's obvious.

Polymur is almost-strongly universal. That's this claim from the proof:

If H is chosen randomly and independently then for any m != m' and any hash outcomes x, y we have
Pr[H(m) = x  &&  H(m') = y] <= n * 2^-124.2

Instead of phrasing it as a probability, the paper by Carter and Wegman simply counts the number of functions H in the family such that H(m) = x  &&  H(m') = y. But it's the same concept, divide this count by the total number of possible functions to get the probability (since we choose the function at random from the family).

In either case, my opinion is that if "non-strong universality" implies collision bound only with a pre-requisite of "random choice of family functions", it is practically only useful for MACs. OK, not arguing with theory, but theories have their limits of applicability, and it's not always obvious from the theory itself where it isn't applicable.

Well, it's also useful in the case of hash tables as it proves expected O(1) access time when using chaining, which is explicitly the intended purpose of Polymur. You can't just discount this proof 'in your opinion'. This is math, not opinion. Most modern hash table implementations already generate a random hash function per table, or per program, to protect against HashDoS.

Anyway, thanks for the discussion. I still think "almost universal" claims are a bit of an exaggeration, an unfair advantage. And I think most of the hash functions that pass all SMHasher tests are practically "universal" except most of them have no formal proofs. Because SMHasher was built to test some basic statistics that are also claimed for "universal" hash functions.

I don't think it's unfair. It is easy to make hash functions that pass SMHasher but for which an attacker can still construct arbitrary multicollisions.

I don't think it's unfair. It is easy to make hash functions that pass SMHasher but for which an attacker can still construct arbitrary multicollisions.

I doubt it, if the function passes Perlin Noise and Seed tests as well. But as SMHasher fork's author notes, quick brute-force generation of collisions is possible for all "fast" hashes. Except server applications usually do not give even a chance to flood with unnecessary information.
At the moment I think I'll leave this 40 year old "universality" alone for the sake of happier life. I can't swallow a proof that refers to |K| and its variation whereas functionally k is unchanging.


Update download-the-wdk.md

Added WDK Nuget Package and ARm64 Support to the WDK Homepage. There should be an announcement banner announcing it. You can move the ARM64 support announcement to the top of the page

Moved to private


While accpet-all then display error.

While accept-all button clicked then display this type of error it's only accept all button not for Only essentials.
pls help me for same

remove the "darkmode_enabled" cookie declaration, it's only meant to be an example.

Okay grate it's working fine thanks


Enhancement/show chart icon and description

Fixes #55

@undera
Can you please cherry-pick the PR and see the API performance? What I observed is API call happens in the background. So once the home page (installed charts list) loads, it takes a while to populate the icon and description until the API execution completes.
Maybe there is a better way to handle that?

I checked out the code and I see that current slowness cannot be removed. It's not our backend that runs slow, it is Helm that runs slow.
The future solution to this will be to cache results of some operations we do with Helm.

Please help review

It looks good IMO. If you have finished and there's no more questions - I will merge it.

I think you can merge it
I will check on comment separately

Great! Thank you very much!


More user-friendly app names in TOML (BSP-381)

TOML seems to support spaces in table names, and we could use this to generate more user-friendly names of apps.
For example, we could use an app name "display (esp-box-lite, IDF v5.1.1)" instead of "display-esp-box-lite-v5_1_1".
(Binary names, of course, would still use hyphens or underscores.)

Linking https://github.com/espressif/esp-launchpad/issues/42 — exact way to set the app name is TBD.


Display howpublished

BibTeX type "misc" has a field "howpublished" which should be displayed in the second line, i.e.
authors (year)
howpublished
links
Usual BibTeX styles do not support "howpublished" in any other type except "misc". However, I want
BibJSON to support "howpublished" as a field for any document type, especially for "article" and "incollection". Idea is that
if user supplies a "howpublished" value, this should override whatever more sophisticated display may be generated by
the display template. "howpublished" should be a simple unicode  string with no markup.  We might also want to support
"howpublished_html" or howpublished_xhtml" which push html or xhtml markup, preferably with  tags for use by
css, to achieve things like Journal titles in italics and volume numbers in bold.
Short term, please just support "howpublished" as an overide for the second line.

This is a late addition or a new requirement to phase 3 when time nearly expired so removing this from that milestone.

This is done. howpublished is displayed where appropriate, if available

markmacgillivray<EMAIL_ADDRESS>wrote:

This is done. howpublished is displayed where appropriate, if available

Trying to test this, I hit
http://bibsoup.net/pitman/pitman-177?collection=["pitman-177"]&year=["2011"]&
TypeError: coercing to Unicode: need string or buffer, int found
--Jim


Do once after layer is ready, so we get the final value for old

I noticed that when running plugins such as ssb-friend-pub with old: true and live: false I would only get myself as the state. This seems to be because ssb-friends hasn't done loading the layer before doing the callback.

yes, this is good.
merged into 1.1.3


Question

Isn't AC updated in one step? Why is RL learning only after the end of a round in the code.

you code seems have some problem with the critic where value=critic(state), which should be value=critic(state, action)

what are you talking about？My code？Which one？
该邮件从移动设备发送

------------------ 原始邮件 ------------------
发件人:                                                                                "yc930401/Actor-Critic-pytorch"                                                                                @.>;
发送时间: 2023年3月15日(星期三) 下午4:02
@.>;
<EMAIL_ADDRESS>主题: Re: [yc930401/Actor-Critic-pytorch] Question (Issue #1)
you code seems have some problem with the critic where value=critic(state), which should be value=critic(state, action)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


OCPBUGS-5975: Validate specified operator versions

Added checks to verify the versions of operators with explicit required versions (ie. MCE, ACM) in the imageset.yaml file, querying the catalog using the "oc-mirror list operators" command.
Signed-off-by: Don Penney<EMAIL_ADDRESS>/cc @alosadagrande

/override ci/prow/images

/cc @nishant-parekh @browsell

Rebased against https://github.com/openshift-kni/telco-ran-tools/pull/71 - no code changes in recent push


Add support for out of band data

See https://xmpp.org/extensions/xep-0066.html#x-oob
Work from https://github.com/matterbridge/go-xmpp/pull/2

Thank you


can't scroll when using fullscreen canvas

When building a website with pex in fullscreen mode as "splash screen":
+--------------+
|              |
| CANVAS [pex] |
|              |
+--------------+
|              |
|              |
|   CONTENT    |
|              |
|              |
+--------------+

User can't scroll to CONTENT because of:

CANVAS set to 100% of height and width
pex setting overflow: hidden on body (this can be fixed in CSS with body { overflow: scroll !important }
pex doing preventDefault() on touchmove events which blocks scrolling on mobile devices

Ideally scrolling/draggin would move CANVAS and CONTENT up so users can see the content :)
I'm not really sure what would be a desired behavior? Maybe we should declare which events pex should handle in settings (and handle all by default)? Then if I only want mouseMoved I would do events: [ "mouseMoved" ]?

This will be addressed in the new version of pex-sys


CS3001: Argument type 'AppDomain' is not CLS-compliany

I'm getting the error above, has anyone found a work around for this? I haven't investigated it any, wonder if we are just missing the cls attribute.

You'd get that error if your library is marked CLS compliant and exposes AppDomain which I haven't (but probably should) mark as CLS compliant. Why do you need to expose AppDomain?

Our public api exposes it so a user can pass in an app domain to register up error handlers (useful when you use multiple domains in a single app)
https://github.com/exceptionless/Exceptionless.Net/search?utf8=✓&q=appdomain

Is there any chance we could get a new release with this out there. I'm getting a compiler error upgrading this and I'm getting really close to getting it all working.

Good enough reason

Published https://www.nuget.org/packages/System.AppDomain/2.0.5

Thanks!


Fix "uri is undefined" error.

I forgot to change the line in my PR #15.
Thanks for fixing this!

Thank you both :)


Travis build broken because vet moved

vet used to be at golang.org/x/tools/cmd/vet but I think is now part of Go in 1.6.
@elithrar can you own this? I'm not sure how to make Travis do one thing for <1.6 and another for >= 1.6.

Fixed in #14.

Thanks!


De-C++11ify this

@frranck
In case you couldn't tell by my comments,
I really, really do not like how you forced C+11 now on this codebase.
This means that it will not compile for PS3, Blackberry, Xbox OG, 360, ever, whereas before there was this possibility.
At the very least add the C++11 portions behind an ifdef so that I can still compile this without needing a C++11 compiler, or better yet, rewrite the C+11 portions to C++98 so that I still have a solution on other platforms.
Oh, and it does not compile for iOS versions below 8.0 anymore.
I really consider this a very negative regression and not an improvement at all. Please reconsider, this is terrible.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Dammit, is there an easy way to have the buildbots testing a develop branch without shipping a new version into retroarch ?

We'd have to ask either @fr500 or @bparker06. @bparker06 specifically has more control over the buildbot server these days and could possibly field a request on your end.

someone is building an iOS version of mrboom? how to control the character? voice control? "left, left, right, up, down. BOMB!?" haha

Fixed, thanks for your bug report @twinaphex


python extension issues

Issue Type: Performance Issue
python completion would always be slow to show once I have coded for around 20 minutes, and unless I reboot the vscode and reload the extension, it won't return to the normal state
Extension version: 2019.10.44104
VS Code version: Code 1.39.2 (6ab598523be7a800d7f3eb4d92d7ab9a66069390, 2019-10-15T15:35:18.241Z)
OS version: Windows_NT x64 10.0.18362

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz (4 x 2592)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwareoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: enabledskia_deferred_display_list: disabled_offskia_renderer: disabled_offsurface_synchronization: enabled_onvideo_decode: enabledviz_display_compositor: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
11.91GB (3.86GB free)

Process Argv

Screen Reader
no

VM
0%

Process Info
CPU %	Mem MB	   PID	Process
    2	    88	  9524	code main
    0	   174	 13100	   window (● RemoteControlCommandFactory.py - test01 - Visual Studio Code)
    0	   112	 13628	     extensionHost
    0	   172	 37500	       c:\Users\11\.vscode\extensions\ms-python.python-2019.10.44104\languageServer.0.4.71\Microsoft.Python.LanguageServer.exe
    0	    11	  7232	         console-window-host (Windows internal process)
    0	    39	 32896	     searchService
    0	    11	 38696	     watcherService
    0	    11	 39516	       console-window-host (Windows internal process)
    1	    66	 19828	   window (Issue Reporter)
    0	    13	 20888	   electron-crash-reporter
    0	    30	 25516	   utility
    0	    71	 27584	   shared-process
    0	   167	 30364	   gpu-process

Workspace Info
|  Window (● RemoteControlCommandFactory.py - test01 - Visual Studio Code)
|    Folder (test01): 72 files
|      File types: py(22) bin(11) xml(10) pyc(5) json(2) y19(1) TAG(1) name(1)
|                  iml(1) gitignore(1)
|      Conf files: launch.json(1) settings.json(1)
|      Launch Configs: python;

Please could you upload the cpu profile file ms-python.python-unresponsive.cpuprofile.txt (typically in the home directory)
Follow the steps here:
https://github.com/Microsoft/vscode/wiki/Performance-Issues#profile-the-running-extensions

but there is no python-unresponsive.cpuprofile.txt under the directory C:\Users\11.vscode\extensions\ms-python.python-2019.10.44104

Sorry. I actually meant that you've to follow the steps and get the cpu profile.

Closing as no further info was provided


Issue #49: str_iter() for factors

This PR adds support for str_iter() in the case where the R object is a factor (ie. is an integer array that
indexes)
See https://www.stat.berkeley.edu/~s133/factors.html
This is a fix for:
https://github.com/extendr/extendr/issues/49

Sorry for chiming in a bit late here, but I wonder if there are already discussions about whether extendr should support factor or not. It seems either Rcpp or cpp11 support factors, so it's user's responsibility to handle it there (I'm not a serious Rcpp/cpp11 user, so I might be wrong). Of course, we don't need to follow exactly what they do, but, if it would complicate the implementations considerably, it might be a choice not to support factors.

I'm happy to try to support as much of the R way of working as possible.
The more advantages we have the better :smile:

Yes, I see no reason why extendr shouldn't support factors, and I like the way this PR handles them. (Modulo the missing values issue, but we can leave that for later.)

I've added a factor! macro that wraps the R function.
We could, in theory, have factors of other types, but strings are the most common.
This maps to the dictionaries in Arrow.

For now, I could return "NA" for out of bound values as this will avoid a breaking change.
If we are happy with this I'll merge it.

Yes, please go ahead and merge. Let's have the NA discussion separately.

OK, thanks for clarification! Then I have no concern here.

I'll set up a more general issue for Options in iterators.


 Maybe it can a little bit better visualy, but without dependencies.

Hi, I'd like to work on this. Do I need to be assigned, or can I just have at it? I've cloned, made a local branch, reviewed the code and taken a look at index.html. Seems like a fun issue. Thanks, Ben

I took a stab at some style, and created a pull request. Let me know if this is a good start, and if there's any changes you'd like me to make. If you don't like the style at all, I have some other ideas, so just let me know. Thanks, Ben

@lalmat Here's my PR. I hope it's okay that I submitted a PR without being assigned.

Perfect ! Thank you @bensbits91 . It's merged !


sum of pulses and migrations > 1

The migration section of the population genetics model has this to say (thanks @apragsdale!):

Continuous migration rates are defined as the probability that parents in the "destination"
population are chosen from the "source" population.  Migration rates are thus
per generation and must be less than one. Furthermore, if more than one source
population have continuous migration into the same destination population, the
sum of those migration rates must also be less than one, as rates define
probabilities. The probability that parents come from the same population is
just one minus the sum of incoming migration rates. On the other hand, pulse
migration events specify the instantaneous replacement of a given fraction of
individuals in a destination population by individuals with parents from
a source population.  The fraction must be between zero and one, and if more
than one pulse occurs at the same time, those replacement events are applied
sequentially in the order that they are specified in the model.

So it's plausible that a simulator could support a model in which the sum of continuous migrations into a deme in a single generation is x < 1, and the sum of pulse migrations is y < 1, but x + y > 1. In particular, we can support this scenario in a continuous-time simulator like msprime. But for many simulators the pulse and continuous migrations will both be implemented using a single function or data structure, and in a discrete-time setting it may not be possible to decouple pulses and continuous migrations such that one occurs after the other. In this latter case, we must also have x + y <= 1.
Thoughts?

Is it biologically plausible to have x + y > 1? If not, I think we should rule it out.

The way I handled it in fwdpy11 (and maybe @molpopgen has thoughts about this as well, working with discrete generation models), is that when continuous migration occurs over a time period that includes a pulse, the continuous migration probabilities define the probability of choosing parents from each deme conditional on individuals not arriving via the pulse.
E.g. if deme 0 has continuous migration from deme 1 and deme 2 (say, rate 0.01 each), and then deme 3 contributes 50% in a generation, the migration row for deme zero in the non-pulse generations is [0.98, 0.01, 0.01, 0], and in the generation of the pulse, that row is [0.49, 0.005, 0.005, 0.5]. After the pulse, the migration matrix row changes back to just have continuous migration.
This way, I didn't have to worry about the cases where x + y > 1, and it relieves the need to do a bunch of verification across migration types.

That's nice and simple, I like it. It's equivalent to applying the pulse immediately after (more recently than) the migration, right? So it ought to match the current behaviour of msprime.Demography.from_demes().

It's necessarily concurrent in that generation, since it's all handled by adjusting the migration matrix. For example, if each of the other three populations provide migrants at rate 0.01, in that same example the mig matrix row without and with the pulse is [0.97, 0.01, 0.01, 0.01] and [0.485, 0.005, 0.005, 0.505], resp.

I  have a related question about the specification for pulse migrations at non-integer time values. Consider the model
time_units: generations
demes:
  - name: X
    epochs:
      - end_time: 1000
        start_size: 2000
  - name: A
    ancestors: [X]
    epochs:
      - start_size: 2000
  - name: B
    ancestors: [X]
    epochs:
      - start_size: 2000
  - name: C
    ancestors: [X]
    epochs:
      - start_size: 2000

pulses:
  - source: A
    dest: B
    proportion: 0.3
    time: 10
  - source: C
    dest: B
    proportion: 0.3
    time: 10.1

The possibly ambiguous value is the time: 10.1 in the last line.
As I understand things, if a continuous model such as Kingman’s coalescent, a pulse from A at generation tA=10 and a pulse from C at generation tC =10.1 are straightforward to interpret – they occur sequentially. There is some ambiguity as to what happens if two pulses occur at the exact same time, and the earlier suggestion was to treat them in order in which they appear in the text file. This is fine, but I don't love that solution as otherwise the order of things does not matter as I understand things, and it would be slightly preferable I think to keep it this way.
If such a model is passed on to a Wright-Fisher model, however, things are not so simple and I did not see an unambiguous specification. It may be that you want to simply forbid continuous times for discrete simulators, but of course this is limiting.
For example, TRACTS implements a discrete time model where recent migration pulses from different source populations can co-occur in a given generation, and fractional generations matter.
If I chose selfishly, I would like a specification such that:
1-The Wright-Fisher and Kingman models are comparable if simulated from the same model according to specification (i.e., at the end of generation 10, both models have the same proportion of lineages tracing back to sources A and C).
2-Both models work and are somewhat continuous in the continuous time parameter, if they accept continuous times.
In TRACTS, I had handled this issue by interpreting a pulse at a non-integer time t as a pulse spread over two generation, ceil(t) and floor(t), with proportions at each generation computed such that proportion of lineages that can be traced back to the pulse are as required by the pulse proportion.
However, this would not give directly comparable results to Kingman’s in the model above. To achieve consistency, one would need to similarly split pulses under Kingman to achieve compatibility.  This is, admittedly, quite ugly.
A (small) benefit is that you would get back continuity in the time parameter, so that the following two models would give similar results:
time_units: generations
demes:
  - name: X
    epochs:
      - end_time: 1000
        start_size: 2000
  - name: A
    ancestors: [X]
    epochs:
      - start_size: 2000
  - name: B
    ancestors: [X]
    epochs:
      - start_size: 2000
  - name: C
    ancestors: [X]
    epochs:
      - start_size: 2000

pulses:
  - source: A
    dest: B
    proportion: 0.3
    time: 10.09
  - source: C
    dest: B
    proportion: 0.3
    time: 10.1

would be similar to
time_units: generations
demes:
  - name: X
    epochs:
      - end_time: 1000
        start_size: 2000
  - name: A
    ancestors: [X]
    epochs:
      - start_size: 2000
  - name: B
    ancestors: [X]
    epochs:
      - start_size: 2000
  - name: C
    ancestors: [X]
    epochs:
      - start_size: 2000

pulses:
  - source: A
    dest: B
    proportion: 0.3
    time: 10.1
  - source: C
    dest: B
    proportion: 0.3
    time: 10.09

Any thoughts on this? I don't really expect that you will want to change the Kingman coalescent specs to accommodate this somewhat niche case. Maybe the easiest would be to make a suggestion that discrete generation simulations issue a warning and use the convention above?

@sgravel -- I think this should be a separate issue.
Right now, I believe that we expect discrete simulators to apply events in order after rounding the times. For a discrete simulator, 10 and 10.1 will be 10 (hopefully).

Thanks @molpopgen. Apologies for the incorrect issue management. I have created a new issue and hidden this one.

Thanks @molpopgen. Apologies for the incorrect issue management. I have created a new issue and hidden this one.

No worries! At least for me, it helps to think of issues in the smallest chunks possible.

The way I handled it in fwdpy11 (and maybe @molpopgen has thoughts about this as well, working with discrete generation models), is that when continuous migration occurs over a time period that includes a pulse, the continuous migration probabilities define the probability of choosing parents from each deme conditional on individuals not arriving via the pulse.

This needs some prose in the MDM. I don't think we have any checks in the reference implementation (or demes-python) that prohibits the "sum of pulses and migrations > 1".


Group sync cmds in batch file not completing/running

I was running GAM 4.11, but the issue still persists after upgrading to the latest 4.23.
I have a program that is updating the several thousand groups in our domain.  It's spitting out a text file for each group with a listing of member emails.  I am then populating a command file and using the batch command to update the groups.  These are samples of what my files look like:
Member listing filenames:
mygroup1
mygroup2
...
mygroupX

File contents of mygroup1
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>...
<EMAIL_ADDRESS>
Contents of GAM command file commands.txt:
gam update group mygroup1 sync member file mygroup1
...
gam update group mygroupX sync member file mygroupX

If I run gam batch commands.txt I get the following output:
Using X processes...
Getting members of<EMAIL_ADDRESS>(may take some time for large groups)...
Got 0 members
Need to add 20 MEMBER and remove 0

Clearly GAM is reading in the membership files because it correctly displays the number of changes needed, but it never actually does the work. And yes the group already exists or it was processed in a prior commit-batch.
However, if I copy the command out of the commands.txt file and run gam update group mygroup1 sync member file mygroup1 on the command line, I get the following output:
Using X processes...
Getting members of<EMAIL_ADDRESS>(may take some time for large groups)...
Got 0 members
Need to add 20 MEMBER and remove 0
Using X processes...
  adding member<EMAIL_ADDRESS>  adding member<EMAIL_ADDRESS>  adding member<EMAIL_ADDRESS>  ...
  adding member<EMAIL_ADDRESS>
I put all the daily changes into the commands.txt file and GAM batch command does not have trouble running any other commands, just the group sync ones.
What's even more interesting is if I instead source commands.txt it runs everything as expected even the groups sync ones, but I've lost the speed since it's running them one at a time.
Thanks!

John,
With standard GAM, you can't put gam update group sync commands in a gam batch file, they will not excute correctly. Both processing the batch file command and the group update syncs use the same multiprocess code and the two interfere.
My advanced version handles this correctly: https://github.com/taers232c/GAMADV-X
I will submit a change to Jay such that his version will do this successfully.
Ross
<EMAIL_ADDRESS>On Jul 10, 2017, at 10:01 AM, John Fano<EMAIL_ADDRESS>wrote:

I was running GAM 4.11, but the issue still persists after upgrading to the latest 4.23.
I have a program that is updating the several thousand groups in our domain. It's spitting out a text file for each group with a listing of member emails. I am then populating a command file and using the batch command to update the groups. These are samples of what my files look like:
Member listing filenames:
mygroup1
mygroup2
...
mygroupX
File contents of mygroup1
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>...
<EMAIL_ADDRESS>Contents of GAM command file commands.txt:
gam update group mygroup1 sync member file mygroup1
...
gam update group mygroupX sync member file mygroupX
If I run gam batch commands.txt I get the following output:
Using X processes...
Getting members of<EMAIL_ADDRESS>(may take some time for large groups)...
Got 0 members
Need to add 20 MEMBER and remove 0
Clearly GAM is reading in the membership files because it correctly displays the number of changes needed, but it never actually does the work. And yes the group already exists or it was processed in a prior commit-batch.
However, if I copy the command out of the commands.txt file and run gam update group mygroup1 sync member file mygroup1 on the command line, I get the following output:
Using X processes...
Getting members of<EMAIL_ADDRESS>(may take some time for large groups)...
Got 0 members
Need to add 20 MEMBER and remove 0
Using X processes...
adding member<EMAIL_ADDRESS>adding member<EMAIL_ADDRESS>adding member<EMAIL_ADDRESS>...
adding member<EMAIL_ADDRESS>I put all the daily changes into the commands.txt file and GAM batch command does not have trouble running any other commands, just the group sync ones.
What's even more interesting is if I instead source commands.txt it runs everything as expected even the groups sync ones, but I've lost the speed since it's running them one at a time.
Thanks!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Fixing issues in timeslide creation

Notable changes:

Segments are queried up front, and data for each segment is downloaded in parallel to the generation of the waveforms for all the timeslides for that segment
The naming structure for timeslide root directories now prepends the interferometer initial to the shift, e.g. dt-H0.0-L1.0
Per-ifo shift values have been fixed, and shifted data is clipped from each timeslide to avoid discontinuities. To keep timeslides all the same length, each timeslide is clipped to a length max_shift = max(shifts) * n_slides * sample_rate.
n_slides timeshifts are created for each interferometer that has a shift value >0, with the cartesian product of these shift values used to create timeslides. So for example, if ifos=["H1", "L1", "V1"], and shifts=[0, 1, 1], this would generate n_slides**2 time shifts corresponding to H0.0-L1.0-V0.0, H0.0-L0.0-V1.0, etc.
prior_file, if not an absolute path, is assumed too be relative to __file__. projects/sandbox/pyproject.toml has been updated to reflect this
A min_segment_length kwarg has been added to keep from creating segments that won't have enough data to be meaningful, and a value of 1024 has been added to projects/sandbox/pyproject.toml
A test_stop argument has been added to the [tool.typeo.base] table in projects/sandbox/pyproject.toml. Now the timeslide generation will happen on a true test set, from base.stop to base.test_stop (which amounts to ~90k seconds worth of segments).

The major bottleneck here is now the waveform projection, and it's making things pretty slow. But since we have a fast implementation of that coming down the pipe in the next couple days, I'm willing to let that coast for now since you only in principle need to run this script once anyway.

Yeah this is a good point. Probably not something we need to worry about for the immediate future because we can always just extend our search window to avoid having to do too many slides, but for O(1000 months) background this will obviously start to become impractical.
This is also why I don't compensate for this when comparing against min_segment_length, the assumption for the time being that either the user can account for this when setting min_segment_length or that even if they don't the difference will likely be small compared to the desired minimum segment length, but that would need to be fixed in the future as well.


add alipay client detect

@fnando plz check ci bundle error?

CI tests fixed in #261 - older Ruby versions are choking on Rails 5.

Can you rebase from master and also add a CHANGELOG entry?

@fnando rebased and add more commts - -#


Themes not working properly in iTerm2 on MacOS Catalina (10.15)

I tried to switch theme to agnoster and it looks far from what I see on the wiki page:

To remedy this, I tried reinstalling oh-my-zsh, installing powerline fonts (even manually adding the fontconfig, as per https://github.com/powerline/fonts#fontconfig) but these things have not done the trick.
What might be the problem here?
Bonus question: Is there any plugin for oh-my-zsh that supports changing themes on-the-fly when starting an ssh connection and again, when that session is exited?
Edit: Forgot to include my zsh version,so here it is: zsh 5.7.1 (x86_64-apple-darwin19.0)

Update:
It seems I have got the theme working now, by enabling "Use built-in Powerline glyphs" in iTerm preferences > Profiles > Text menu.
My other question still stands, however, but I'll create a new issue on that and close this one.

When you start an ssh session you use the login shell and shell settings of the remote machine. Simply set up a theme on that remote machine and you'll have the change automatically.

Thanks for the suggestion but what you propose it's not quite what I'm
looking for.
What I need is for my local iterm theme to automatically change, anytime
the command "ssh" is issued, and then change back again upon exit of the
ssh session.
I know something like this is possible, because I had it working in the
native MacOS terminal.
So I'll just have to find the way to make it work with iterm zsh.
On Fri, 18 Oct 2019, 20:09 Marc Cornellà<EMAIL_ADDRESS>wrote:

When you start an ssh session you use the login shell and shell settings
of the remote machine. Simply set up a theme on that remote machine and
you'll have the change automatically.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/robbyrussell/oh-my-zsh/issues/8276?email_source=notifications&email_token=AHJWZQE2SFJQRFZ6WAFCPJDQPH3WBA5CNFSM4JBXBX62YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBVLZUQ#issuecomment-543866066,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHJWZQGS47YUU5MBSCEAQD3QPH3WBANCNFSM4JBXBX6Q
.

You'll have more success asking in the iTerm2 issue tracker: https://gitlab.com/gnachman/iterm2/issues.


Missing IFSC SBIN0019101

@ishan-parihar  I have added the IFSC SBIN0019101

Still not working. I am unable to perform my onboarding from more than 3 months due to this.


index: Preallocate slices when decoding series.

During profiling of tip of TSDB we found that index.(*Decoder).Series takes a significant amount of time on growing slice:

Might be log hanging fruit to improve it by some preallocations.

It appears to me that it's this variable that we initialize from scratch on every .Next call. https://github.com/prometheus/prometheus/blob/28c5cfaf0d417d9bc2378f1e9838a15ebc76e6b8/tsdb/querier.go#L382
Either a pool of labels.Labels or pre-allocating ~10 items would make sense here.

Side note: The Go static analyzer prealloc finds slice declarations that could potentially be preallocated. It is also integrated into the metalinter golangci-lint and can be called like this:
golangci-lint run --disable-all --enable=prealloc --tests=false ./tsdb/...

It finds 13 cases in tsdb of today's HEAD (however not the line in querier.go).

Yeah this is not a typical pre-alloc case, it's more of an array re-use case


x86_64 / amd64 only?

Just noticed by sifting through the Packages file that this repo is only for x86_64 / amd64,  and not for ARM.
Probably should make a note of that somewhere a bit more obvious for folk that discover it -
Generally, keeping the arch-specific files in their own directly is a big help, and makes things a bit more obvious.
Also - any plans to support arm (32/64) via a separate (or combined) repository?  That'd be really useful for those of us with Raspi 4/5's  pulling the duty-load.
Thanks for hosting this!

You have an excellent point! I kept thinking about that and seeing how the file structure should be, but never fixed it. I’ll do something, maybe make it clear this isn’t for the aarch64 Pi build like you mentioned.
I wonder if I could fix the folder structure and still have the current installs of dragon upgrade without any changes. I’m definitely not an expert in this area, this just happened to be what I could manage at the time and leverage without having my very own infrastructure.


API key, http client, base url

Hi, i am trying to get injuries for nba.
new RotowireNbaApi.DefaultRotowireNbaApiService().injuries("json")
my question is, the docs say httpClient is first param for the class. But what do i put there?
the second param a configuation object that takes, api key (where do i get that from?)
and in base url, do i need specify anything to get injuries or the default one will work.
anything else i need to put such as username, password?

@belalfr123
Hello! I'm not sure where you are seeing the "httpClient" reference? The httpClient in my implementation is taken care of inside the package (I use axios), so you should not need to worry about it.
Are you using NestJs? If not, I'd just use the "Regular Node.js Implementation," which ends up being (for NBA):
const { DefaultRotowireNbaApiService } = require('rotowire-api-client');

const nbaConfig = {
    apiKey: 'YOUR_MLB_API_KEY',
    basePath: 'https://api.rotowire.us/nba/production/v7'
};

const nbaService = new DefaultRotowireNbaApiService(nbaConfig);

// Use nbaService to access all the NBA endpoint APIs. e.g.

const injuriesResp = await nbaService.injuries("json");

As for the api keys, feel free to reach out to Ken Crites at Rotowire (Ken@rotowire.com). There is a cost, but they are definitely one of the very best sources for injuries, as you probably already know. :)


Add a newline to the site_content on lesson 11

When curling from the command line, it is easy to have your output
swallowed up by a fancy prompt.  It's probably cleaner anyhow.

Waiting for CLA signature by @ClashTheBunny
@ClashTheBunny - We require a Contributor License Agreement (CLA) for people who contribute to Puppet, but we have an easy click-through license with instructions, which is available at https://cla.puppet.com/
Note: if your contribution is trivial and you think it may be exempt from the CLA, please post a short reply to this comment with details. http://docs.puppet.com/community/trivial_patch_exemption.html

CLA signed by all contributors.

Thanks for submitting! Looks good to me


As a user, when I install UK (i.e. British) extension, I want US words to be deprioritised so they're correct BUG

👋
Thanks for software
As title
Screenshot:

Steps to reproduce issue
Type "minimise" (i.e. correct British spelling)
Aside, "minimize" would be correct US spelling
Unexpected behaviour
Highlight prompt to correct
Expected behaviour
No highlight prompt to correct
If you're reading and:

agree then please vote up (e.g. +1, like), or;
disagree then please vote down (e.g. -1, dislike) - I'd love to know why?

Hope this helps
Regards

@ldexterldesign,
I think there are two issues going on here:

It is not obvious that British English needs to be enabled.
Most US English words are acceptable in British English: Oxford English minimise

To Manually Enable British English:
Go to VS Code settings, search for spell language and set it to en-GB:

It is also possible to use the command palette: F1 -> enable British

There is also a setting to flag words you do not want:

👋 @Jason3S,
Thanks for quick reply
Admittedly I didn't read the extension README (I just expected it to work after installing and enabling the GB extension - and it could just be me - but I think the README could be improved...
Essentially, if the extension can't be good to go after install then I would put this - or something to the effect of what you illustrated above - right at the top of the README:

Hope this helps
Regards


Put in failing example for pouchdb options issues

https://github.com/pouchdb/pouchdb/issues/5231#issuecomment-226971148
You owe an example

I sent a request about this to Dale Harvey. Waiting for a response.

Dale responded and now I have work to do. :)


Branch 197583446

Why does cmake build still say "pending". Tests were triggered two days ago it appears.

I just triggered it manually.


How don't load css files?

Thx for phantomjs-node,it's useful to me very much!
Now i had a problem, i ditn't want to load css files,there was load-images:no option,and what was not load css files option?load-style or load-css?
Thx very much！

Don't really understand your question. Sorry!


Include Autodl-Irssi

Hi,
it would we really nice to see autodl-irssi added to this nice image!
Cheers

He already said that he isn't going to include it for "slim-ity" reasons.
Although, I have here 2 suggestions:

Create a second version of this container, including autodl-irssi (honestly this is one of the main reasons why people still use rtorrent + rutorrent anyway)
Providing a Guide how to get autodl-irssi in a standalone container and setting up the connection

Personally I was waiting for months now for either to happen, but now I want to push things. I just got a working container but can't seem to establish a connection.

#79
#13


Testing API Business Hub APIs with Curl

Tutorial URL: https://developers.sap.com/tutorials/hcp-abh-test-locally.html
Please specify the step you are referring to: Step 5.
I run the following curl:
curl --request GET  --url "https://sandbox.api.sap.com/successfactors/odata/v2/User?$top=6&%24select=firstName%2ClastName%2CjobTitle"  --header "APIKey: NRjtHA1A7cFhmXgeAiKU3aRWISybFvqW"  --header "Accept: application/json"  --header "Content-Type: application/json"
I attached the results (APITest.txt).
APITest.txt
the first user that seemed relevant was with
"uri" : "https://sandbox.api.sap.com/successfactors/odata/v2/User('1')
the result is
"lastName" : "Trombley", "firstName" : "Francois", "jobTitle" : "Assembly Manager"
I tried putting it into the answer text area, but always received "Sorry that's incorrect...".
Perhaps the service data changed.
I suggest to provide an example of how exactly the answer should look like, e.g. Francois, Trombley, Assembly Manager.

Facing a similar issue.

Any updates ?

@rbrainey @mhassett92 Any updates?

Hi all,
I apologize for the delay. I have transferred into a new roll at the company last year and am behind on managing my older tutorials.
I looked into this and it appears as the data in the Sandbox has changed which is why you are seeing an incorrect result. Unfortunately at the same time we are also having an issue with the authentication for the SFSF APIs in the Sandbox, so I cannot adjust the data to match the current set. I will update the rule temporarily to your above response while I wait to hear from the API Product team so you can mark the tutorial as complete.
Apologies and thanks for your patience!
Meredith

This issue has been resolved by the API PMs. Thank you!


Make the CI great again

Use a pure Travis script for better output
Include secrets as submodule (RTD is no longer cloning this repo )
The CI should import the image instead of building it. Packer test it will be implemented in a separated repo

Ping @andersla for review :)