x/tools/gopls: autocomplete in import blocks

Suggested in https://github.com/microsoft/vscode-go/issues/2918.

Is there a use case for this once unimported completions are enabled by default? The only case I can think of is manually correcting an (incorrect) ambiguous import, but even that should be pretty rare.

I agree the justification for this is weak. Maybe if you're exploring an import hierarchy, like you can't remember the exact package name you're looking for but you know what repo it was in?

@heschik: That's what I was thinking. Definitely not pressing, but I thought it wasn't a bad idea.

I can try to take a look into this one, if someone can point me in the right direction so as where to take a look. Thanks!
We too have long import names, of which sometimes only a part is valid, eg: github.com/foo/bar/my-super-valid-name/v1/lib/http and an autocompletion would certainly be of help

Another not-mutually-exclusive option is to make unimported package name completion match against the full package path instead of just the package name (i.e. completing package names in the code, not in import specs). Using your example path, the user could type supervalid<> to see unimported packages whose path fuzzily matches "supervalid", or supervalidhttp<> to complete straight to the desired package. This way the user can explore things without resorting to manually futzing with the import spec.

Thanks, @nbaztec! The code for completion can be found here, but I think you'd be specifically interested in unimported completions, which are done here.

Thanks a bunch @stamblerre !
I tried to look into some docs on how to best debug/test gopls and right now the only way I'm aware of is to compile a copy and try it out in vs-code. Is there any way I can perhaps use a debugger/delve while testing? That would help me a ton!

Ok I tried asking some questions and figured out some code, however would really appreciate some help in how can I debug the application, via tests. Documentation seems to be missing on how to write my expectations for the following case:
package foo

import "fm{}"  // trigger suggestions

Any direction is highly appreciated, thanks!

@nbaztec: I saw that you got some guidance on Slack - were you able to figure out the issue?

Yes, I happened to figure out the above. Also, is a completion snippet the only way to replace the text on the current line?
Eg: replace import "fm_" directly by fmt?

Completion items have a TextEdit field that indicates what should be filled in for a completion item (see here for more details).

https://golang.org/cl/250301 implements this feature, but I think there is still some work left here.
In my opinion, the biggest blocker is the fact that gopls treats changes in imports as metadata invalidations, so gopls needs to reload all of the invalidated packages in the workspace before the completion can be triggered. One quick option might be not treating import paths ending in a / as metadata invalidations, since we know they are incomplete. I will look into that.
A few remaining other issues:

[ ] The cursor should be placed within the quotes if the path is incomplete (using snippets).
[ ] The completion label should be just the next element of the path - otherwise the label is too long and is cut off:

/cc @dandua98

gopls treats changes in imports as metadata invalidations,

Maybe we only need to invalidate metadata if we lost or gained a valid package path (?). In other words, if before and after the change the file has the same 5 valid import paths and 1 different invalid import path, we don't need to invalidate the metadata.
Adding my last note from CL here since CL is no long active:

I was playing around with this on a big repo and when I did "github.com/<>" I could sometimes get it to list the candidates, but when I tried to type to narrow the candidates (e.g. "github.com/s<>"), or do "github.com/somecandidate/<>" I never got any completions. I didn't work reliably for packages within my module, either. I assume the issue is there are too many packages and it is timing out but I didn't investigate.

I had similar results with "golang.org". For example I could get "golang.org/x/<>" to list candidates sometimes, but after typing "s", "golang.org/x/s<>" did not list anything. If I deleted and retyped the "s" and completed again, it would list things.

Maybe we only need to invalidate metadata if we lost or gained a valid package path (?).

The issue is that we don't really know if the package path was valid until after we've loaded it. But I think in the case of the terminal / we can be certain, so that might at least be a starting point.
I'm guessing that the latency you're seeing is that package loads - I was seeing something similar. I basically had to leave the completion request active until gopls had "caught up" and then it could work.

https://github.com/golang/go/issues/36918 is also relevant here. Our package metadata reloading model is generally an obstacle to manually typed imports. I have a small CL that will help when a user types with only one starting quote, but most editors insert the closing quote automatically. @heschik may have some other ideas here.
@muirdm: You can see the actual speed of this feature by triggering completions at in an import path that has already been typed out.

we don't really know if the package path was valid until after we've loaded it

Ah, okay.
Maybe it is worth it to do a simple/fast go list -find <pkg> call on the modified import to first see if it exists? Additionally, if it is already a "known" package path we could skip the additional "go list -find" call and proceed with the full metadata refresh.

it is already a "known" package path we could skip the additional "go list -find" call and proceed with the full metadata refresh.

Oh that's a great suggestion - let me try it out. We can also detect if the change is on-disk or not, so we can avoid a ton of go list calls when a user changes branches.

Ah, actually unfortunately, I don't think we'll be able to do that. I completely forgot that go list might download things, so any invalid package path will take go list a long time, and we can't afford to do that while a user types.

We may be able to use known packages to see if the user is typing a package path within the main module, but that may be error-prone. Something to consider in a follow-up.

@heschik has suggested that we might try loading with GOPROXY=off by default so that the package.Loads are not prohibitively slow. I think a lot of our logic will have to change if https://github.com/golang/go/issues/40728 is accepted, so I'd say that it's not worth making any changes until we know what the behavior of go list will be like in 1.16. Then, we make any necessary changes in a cohesive way.

For the record, I think the go mod tidy code lens is also getting involved.

@stamblerre should we close this issue and open new issues for import label and cursor placement? I think it would make it easy to track those bugs.


[Snyk] Upgrade puppeteer from 21.0.3 to 21.1.0

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade puppeteer from 21.0.3 to 21.1.0.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.
The recommended version was released 3 days ago, on 2023-08-18.

Release notes

Package name: puppeteer

21.1.0 - 2023-08-1821.1.0 (2023-08-18)
Miscellaneous Chores

puppeteer: Synchronize puppeteer versions

Dependencies

The following workspace dependencies were updated

dependencies

puppeteer-core bumped from 21.0.3 to 21.1.0
@ puppeteer/browsers bumped from 1.6.0 to 1.7.0

21.0.3 - 2023-08-11Dependencies

The following workspace dependencies were updated

dependencies

puppeteer-core bumped from 21.0.2 to 21.0.3
@ puppeteer/browsers bumped from 1.5.1 to 1.6.0

    from puppeteer GitHub release notes

Commit messages

Package name: puppeteer

de719db chore: release main (#10738)
05c1200 test: update shell tests (#10749)
8424ecf chore: use setViewport (#10748)
532c0eb docs: update custom query handler (#10726)
77ffbba chore: add waitForInitiallyDiscoveredTargets (#10745)
fc08a7d fix: locator.fill should work for textareas (#10737)
0a686fb docs(ng-schematics): add Protractor migration info (#10741)
81ecb60 fix: relative ordering of events and command responses should be ensured (#10725)
3dfff5a chore: add script to update `versions.ts` (#10742)
416843b feat: support chrome-headless-shell (#10739)
e12b558 feat: roll to Chrome 116.0.5845.96 (r1160321) (#10735)
6bb3e45 chore(deps): Bump github/codeql-action from 2.21.2 to 2.21.3 (#10730)
c6e5bb2 refactor: fail early for features that require CDP (#10723)

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

coverage: 99.245%. remained the same when pulling 807508c8c98aa6bc3f95a7ba8d3614c018574d9c on snyk-upgrade-60c5dcc744964388ae1f2ac8a0f213c0 into dd81321c11a6497b587a6da5a7d608e6ae8d507a on master.


PDF download is broken

https://docs.microsoft.com/en-us/sysinternals/opbuildpdf/toc.pdf?branch=live
something seems to be wrong with the PDF builder

Thanks for reporting this, we'll take a look.

@lukekim Begged, pleaded, and I think it's working now. Can you confirm for me? https://docs.microsoft.com/en-us/sysinternals/opbuildpdf/toc.pdf?branch=live

Thanks Kent. Seems to be working correctly now. Closing


deploy: update the default configmap value of helm chart

update the configmap from ceph-csi-config-cephfs and ceph-csi-config-rbd to ceph-csi-config
Related issues
#1296
Fixes: #1296
Future concerns
List items that are not part of the PR and do not impact it's
functionality, but are work items that can be taken up subsequently.

/retest ci/centos/mini-e2e

@mergifyio rebase

@Mergifyio rebase

@Mergifyio rebase

@MergifyIO rebase

/retest ci/centos/mini-e2e-helm/k8s-1.18.5

/retest ci/centos/mini-e2e/k8s-1.17.8

/test commitlint

@Madhu-1 ptal


problems of running requirements.txt

Error when running requirements.txt
windows 10
GPU:2060 cuda:12.5

should I install other python version ?
Or others what can i do

同问


Separate rules for mirrored objects in subpackages

Imagining a solution using many mirrored repos (so far I'm using 3). The mirrored parts often use different rules (like different prefixes). Currently, you will have to add exceptions to your own abaplint.json. Globally excluding the mirrored objects doesn't work since your code depends on them.
A solution could be a different type of excluding that still parses the objects but doesn't raise issues or a mirrored abaplint.json that is located in the subfolder.

#2299 new global "noIssues" setting

@mbtools did the noIssues setting solve your issue?

Yes 👍


Investigate using the full Tailwind css file

We use tailwind cdn to have access to all tailwind classes.


Add Overland Park, Kansas

subject: "Defund Overland Park Police Department"
list of emails<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
"
detailed message:
"Dear Mayor Gerlach, City Counselpeople, and Police Chief Donchez,

Hi, my name is [NAME] and I am a resident of Overland Park [YOUR COUNCIL WARD]. I am asking you to redirect money away from the Overland Park PD and into the public services such as housing, education, and healthcare access, and to consider direct financial relief to citizens (not just businesses) impacted by COVID-19.
As it stands, our city is facing massive revenue shortfalls due to conditions created by the Covid-19 Pandemic. Rather than see a further reduction to public services and layoffs of essential public workers, I request that the mayor and city council first and foremost consider significantly defunding the police department. Since 2018, the Police Department has seen a budget increase of just under 5 million dollars, as listed in the 2020 budget information. This money can be spent in other ways that are proven to be more effective in improving community safety and wellness.
Thank you for your time,
[YOUR NAME]
[YOUR ADDRESS]
[YOUR EMAIL]
[YOUR PHONE NUMBER]"
SOURCE: https://dw.opkansas.org/public/FileCabinets/2fa13812-70a3-4126-848b-3a20df7175c3/Documents/10427/FileDownload?targetFileType=Auto&keepAnnotations=false

on it now


address Homebrew formula warning

Warning: Calling 'depends_on :python' is deprecated!
Use 'depends_on "python"' instead.
/usr/local/Homebrew/Library/Taps/mapbox/homebrew-cli/Formula/mapbox.rb:9:in `<class:Mapbox>'
Please report this to the mapbox/cli tap!

fixed here: https://github.com/mapbox/homebrew-cli/pull/6


[SPARK-7775] YARN AM negative sleep exception

SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
Exception in thread "Reporter" java.lang.IllegalArgumentException: timeout value is negative
  at java.lang.Thread.sleep(Native Method)
  at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$1.run(ApplicationMaster.scala:356)

This kills the reporter thread. This is caused by #6082 (merged into master branch only).

Merged build triggered.

Merged build started.

Test build #33193 has started for   PR 6305 at commit 56d6e5e.

I know it is painful considering that most of the YARN stuff does not have tests, but it would be useful to add a test that fails without this (to be sure that this fixes the issue you saw, since it is based on a theory, even though it is a pretty good one).

Merged build triggered.

Merged build started.

Test build #33194 has started for   PR 6305 at commit b970770.

@harishreedharan I agree that we should have tests. In fact I would have liked to see the original patch that added this feature include the tests. Unfortunately I did not follow the original discussion in close enough detail to test this new feature in any substantial way. I will test this out on a real cluster to make sure it does fix the issue.

OK, sounds good.

LGTM

OK, I just verified that a heavy workload that previously failed now succeeds because of this patch.

Test build #33193 has finished for   PR 6305 at commit 56d6e5e.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class GroupedData protected[sql](df: DataFrame, groupingExprs: Seq[Expression])
public class TaskMemoryManager

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/33193/
Test PASSed.

Test build #33194 has finished for   PR 6305 at commit b970770.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class GroupedData protected[sql](df: DataFrame, groupingExprs: Seq[Expression])
public class TaskMemoryManager

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/33194/
Test PASSed.

lgtm

lgtm too


Patcher does not work on iosevka fonts

They look the same with or without the patch.  Not sure why.

@be5invis could I trouble you for any insight here?  This project makes up a handful of extra glyphs and then adds font features to put them in place of ASCII digits as thousand separators, but it seems to work on everything except for Iosevka.  You've probably examined this code in the past as it's a fork of the numderline tool discussed in be5invis/Iosevka#453.
I wondered if it somehow conflicted with the pre-existing feature:
https://github.com/be5invis/Iosevka/commit/19e7a1a5db577d3ee952d0b3d75dbfaac4a56076
but I can't see how.

Well Ioesvka is a pretty "extreme" font so maybe FontForge won't work well with it.

Maybe... although I think the nerdfonts project seems to be able to apply its patches using the same tool.
Anyway, I'm back into the concerted effort to make sense of large numbers again, and something I've just noticed about Iosevka is that +THND conflicts with +onum.  This tool creates features to touch the same digits as those two features are fighting over, so I wonder if it's something about the order in which different features are applied.  Maybe even if +THND isn't switched on, perhaps the digits get assigned non-default code-points?  Is there some way I can figure out what code points I would need to search for instead of 0x30-0x39 ?
I would like to figure this out for my own selfish self.  Simply because I want to use Iosevka, and I want to use the digit-grouping policy that this patcher implements (insert spaces, never orphan a lone digit, support hexadecimal).
Another approach might be if I just filed a feature request in Iosevka, and pointed to this code.

Using this tool: https://github.com/harfbuzz/uharfbuzz#example
I can see that before patching, features onum and THND work as expected, and that after patching, using feature dgsp works as expected while onum and THND are both broken.  In both cases, when THND or dgsp is not in use, it does not change the digit glyphs.
Something is obviously broken, though, because if dgsp is not in use then THND should not break.
So, so much for the theory that the THND feature is interfering.  Maybe the glyphs aren't being properly edited, or maybe the render I'm using (OSX) behaves differently from harfbuzz for some reason.

For the benefit of whomever; the issue turned out to be that Iosevka digit glyphs are mostly blank with "references" to other glyphs with the outlines in them.  The patcher was reading and reshaping the blank area without updating the references.
Subsequently, having realised a reference is a thing, I've decided to make this patcher use references exclusively instead of trying to reshape the outlines which are usually (but not always) available.


[Help] How does colorscheme get added to the config here?

https://github.com/hmajid2301/dotfiles/blob/16519585796e8db3d6a3cc679a5b5fd352948911/hosts/framework/home.nix#L52
Hello,
I've been trying to set up NixOS for the first time, I came by your repository and was trying to learn/copy. How does this particular line work? I see that you setup config.colorscheme. But I couldn't find any code around creating the colorscheme option. So how does this work?

HI Karthik,
This option comes from the nix-colors "repo" (flake).  Which is imported in my home-manager/default.nix.

Hey @hmajid2301,
Ah! Makes sense now. Thanks for the tip!


Service area

Describe the issue
Why are most my contacts Color showing orange? Is cloudflare blocking my network I'm trying to fix my service area in ietf and WG. I'm not receiving calls or texts messages. I believe you guys have the ports blocked. Plus my social jackd account isn't working. Please allow my private network to operate like normal. Both ip4 and ip6 should be allowed to operate. I'm devastated that this is effecting my interactions
Code of Conduct

[X] I agree to follow the IETF's Code of Conduct

I live at 2840 campbellton Rd Atlanta GA 30311

Any feedback


Bug: Right clicking in the editor cause abnormal behaviour

I'm experiencing the same issue as in #60119 which is supposed to be fixed.
Setup info from Help - About:
Version: 1.35.1
Commit: c7d83e57cd18f18026a8162d042843bda1bcf21f
Date: 2019-06-12T14:27:31.086Z
Electron: 3.1.8
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Linux x64 5.1.12-arch1-1-ARCH

Like the original issue, the problem exists only when the setting "window.titleBarStyle" is set to "custom".

@nezorflame can you provide a gif of your full vs code window and the behavior you are seeing?

@sbatten yup (all the actions are triggered just with a 1 right-click action)

From what I've experienced so far, it seems that right after the right-click action occurs, editor for some reason senses the left-click trigger, which makes it execute the action under the current mouse cursor position.
This is why sometimes it trigger Git compare, rename, reference search or nothing at all if I'm lucky.

@joaomoreno We get these randomly all the time, I think I am just going to debounce the first click by 50ms or so

Oh man, how is this to tricky to nail. Yeah let's do that.


When configurations file due to not being elevated... we should retry with Sudo

Description of the new feature / enhancement
I ran a config and errored:
You are responsible for understanding the configuration settings you are choosing to execute. Microsoft is not responsible for the configuration file you have authored or imported. This configuration may change settings in Windows, install software, change software settings (including security settings), and accept user agreements to third-party packages and services on your behalf.  By running this configuration file, you acknowledge that you understand and agree to these resources and settings. Any applications installed are licensed to you by their owners. Microsoft is not responsible for, nor does it grant any licenses to, third-party packages or services.
Have you reviewed the configuration and would you like to proceed applying it to the system?
[Y] Yes  [N] No: y
Apply :: DeveloperMode
Configuration successfully applied.
Apply :: WinGetPackage [vsPackage]
Configuration successfully applied.
Apply :: VSComponents
Loading the module for the configuration unit failed because it requires administrator privileges to run.
Some of the configuration was not applied successfully.
It would make a ton of sense to help the user fix it.
How about
"Dude, loading the module for the configuration unit failed because it requires administrator privileges to run.
Some of the configuration was not applied successfully."
Would you like to try again using Sudo? [Y/N] :
Proposed technical implementation details
The user can then choose to use Sudo to try again as admin.

this cannot happen in script as we cannot block
we NEED the result of Sudo to be returned. If you run sudo Winget search foo, it will launch but the results are not returned as the sudo cmd is dismissed.

There could be a --RetryWithSudo switch to automate this in automation.

The default behavior when sudo is enabled is "In a new window". It can be changed to "inline" which will present the output in the current window.
You can pass the "--wait" argument which will pause until [Enter] is pressed if the "In a new window" option is required by Group Policy.


Send batch sizes to Prometheus

Motivation

Solution

PR Checklist

[ ] Added Tests
[ ] Added Documentation
[ ] Updated the changelog

Codecov Report

Merging #434 (31e1d32) into batching/main (36bf50d) will increase coverage by 0.05%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

@@                Coverage Diff                @@
##           batching/main     #434      +/-   ##
=================================================
+ Coverage          46.26%   46.31%   +0.05%
=================================================
  Files                 32       32
  Lines               8398     8407       +9
=================================================
+ Hits                3885     3894       +9
  Misses              4513     4513

Flag
Coverage Δ

test
46.31% <100.00%> (+0.05%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/identity_committer.rs
67.81% <100.00%> (+5.14%)
:arrow_up:

src/identity_committer/tasks/process_identities.rs
91.80% <100.00%> (-0.20%)
:arrow_down:

Continue to review full report in Codecov by Sentry.

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


3.10 upgrade

Purpose
The azure-docs-pr got merged, so it will soon recommend 3.10. This PR changes the repo to match the article, both in the Dev Container configuration and the Bicep App Service resource definition.
Does this introduce a breaking change?

[ ] Yes
[X] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[X] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test
I tested opening in Codespaces with the new Dev Container configuration and running the app locally there. I then checked deployment still worked with the azd CLI (my CI build was successful), and that the deployed App Service app was up and running.

@vmagelo Here's the 3.10 update for the Flask sample (very similar to Django)


Implement NumPy argwhere/flatnonzero/extract

This PR implements argwhere, flatnonzero, and extract as mentioned in #2080
The implementation basically follows what NumPy does.
P.S. I'm just trying to understand how JAX works by implementing stuff in "good first" issues. Please do let me know if you do not prefer me doing so.

Thanks for the PR! It looks like another PR has subsequently added these functions, so I'm closing this one.


[LICENSE] Add DISCLAIMER to binary release

Why are the changes needed?

How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[ ] Run test locally before make a pull request

Codecov Report

Merging #971 (c0fe382) into master (ae48783) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #971   +/-   ##
=========================================
  Coverage     79.89%   79.89%
  Complexity       11       11
=========================================
  Files           147      147
  Lines          5455     5455
  Branches        649      649
=========================================
  Hits           4358     4358
  Misses          717      717
  Partials        380      380

Continue to review full report at Codecov.

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


reconnect to new hubServerUrl

in my project, i set hubServerUrlat the main.js, but i want ping many server and then i want to connect to best server, i need to disconnect from previous hubServerUrl and then connect to new hubServerUrl. how can i handle this changing hubServerUrl? it is possible to change it base on an event?
i try to use this for changing url but cant connect to new one:
dotnetify.hub.init()
dotnetify.hubServerUrl = "http://www.domain.com";

It's not currently set up for your use case.  Can you just determine the best server before making the initial connect?

yes i cant, but my purpose is that i want to check list of servers that get from Backend in an interval and then check best server base on user internet speed and want to change the connection, is there any recommendation for solving this problem? or any update to handle it?


Add Validation Issues to Display Package page

Adds validation issues to the display package page. TODO: Look into testing tomorrow.
Example package that has failed with Unknown and PackageIsSigned issues:

Depends on https://github.com/NuGet/NuGet.Jobs/pull/277

🔔 Added tests and addressed feedback. Ready for review! :)

Addressed feedback and tested original PR on DEV. @agr: The ServerCommon dependencies should be updated to v2.6 when they are created.

Verified that it still works after the changes I made


Props for disable navigate month

Hi everyone,
I'm using DatePickerCalendar, I want to disable month navigation, I check the API references but can't find any prop for this.
Is there any way to archive this without wait new version to add this props ?

dead library 😢

Sorry I haven't had time to maintain the library lately, but I'm planning to pick it up again later this year.
As for your original question, you could hide/disable the month navigation with CSS.

Sorry I haven't had time to maintain the library lately, but I'm planning to pick it up again later this year.
As for your original question, you could hide/disable the month navigation with CSS.

Good to hear from you

Sorry I haven't had time to maintain the library lately, but I'm planning to pick it up again later this year.
As for your original question, you could hide/disable the month navigation with CSS.

Good to hear from you

I almost decided to cut this from my projects :)

Closed as I solved this by CSS


added value names for LV's and Spacecraft

Apologies -- missed this PR. I fixed the values earlier, and I'm keying off of the generic names (e.g. "lv1" "spacecraft1") for looking up values, so I'll stick with that versus their actual names.

no problem.
Thanks,
Lars Osborne
On Sun, Apr 12, 2015 at 4:24 PM, Kacey A<EMAIL_ADDRESS>wrote:

Apologies -- missed this PR. I fixed the values earlier, and I'm keying
off of the generic names (e.g. "lv1" "spacecraft1") for looking up values,
so I'll stick with that versus their actual names.
—
Reply to this email directly or view it on GitHub
https://github.com/tachk/LaunchList/pull/5#issuecomment-92150768.


.Net: Enable unit tests to build and pass on .NET Framework

@dmytrostruk, in conjunction with https://github.com/microsoft/semantic-kernel/pull/6323 and https://github.com/microsoft/semantic-kernel/pull/6324, this enables all of the tests projects for .NET Framework, gets all of them building, and gets the unit tests passing for me locally.
Contributes to https://github.com/microsoft/semantic-kernel/issues/6063

@stephentoub, bumping this up for you. We are doing a review of PRs and wanted to check if this is something you still wanted to complete or if you think it's something the team should pick up?

Thanks, Matthew. I think it's still worth adding in such validation, but I'm not planning on pushing it forward right now. If someone else can spare a few cycles to land it, that'd be great.

@dmytrostruk is going to continue this work, tracking with #8109


Switch to Composition API

Hey there 👋  I'd really like to test/use FormVueLatte in an upcoming Vue 3 / composition API project I'm currently working on. Is there any chance to publish this change in a alpha/beta/whatever package so I can try it and give you feedback on it?

Hey @somodevo! Will you be using the Vue 3.0 alpha release or Vue 2.x with the composition-api plugin? We have a prototype for Vue 3.0 ready on the next branch, but it’s solely for Vue 3.0.
It would be great to get some feedback/validation on what we have built (especially the plugin system), before Vue 3.0 is ready.

Hey @shentao - we're currently in the very first phase of the rewrite of our 405 files / 41766 LoC CoffeScript SPA app. We will start migrating with the 2.x composition API and migrate to Vue 3 as soon as it's released. This is why we're still figuring things out and looking for the matching solutions in the Vue eco system for our needs. Vuelidate and Formvuelatte were the ones that looked the most promising to us. However, we faced some limitations that did not allow to integrate the needs of our (API/backend) architecture within both.
Therefore the feedback I can give you is very limited. I investigated the source of both to see how and where we could manage to integrate it and it looks really good. There are two things I noticed:
Missing TypeScript support
As mentioned we're coming from a CoffeScript SPA and had 0 exerience with TS and were typical scripting people with an attitude against typing. However, after less than 3 days our attitude changed. I guess you know the arguments and I can tell that the've all been true so far. TS is unexpectedly nice and a great support.
Build for form interfaces
Our SPA is generic to it's core with a strong business logic core. When trying to integrate Vuelidate and Formvuelatte in our little PoC we faced some issues with this pretty early. Our issue with it that it encapsulates all form and form validation logic and doesn't provide a way to integrate advanced/generic business logic to it. However, I don't think this is a bad thing! It allows to build forms and validations at a massive speed. This is great work! Unfortunatley it doesn't cover our use case.
I wish you all the best and I'm pretty sure our ways will cross again in the future.
Stay healthy and safe ✌

Hey @somodevo. Thanks for the response.
As for TypeScript – we plan on rewriting the new release of Vuelidate for Vue 3.0 in TypeScript so that should be solved. I think the same can be done for FormVueLatte as the amount of code is rather small.
As for the 2nd point:

Our issue with it that it encapsulates all form and form validation logic and doesn't provide a way to integrate advanced/generic business logic to it.
I don’t entirely agree. You can create custom components for specific fragments of your Schema. For example in a project I worked on, we had a MeetingField somewhere in the dynamically created schema form (those forms are designed by users themselves, where Meeting is a type they can add and configure). That MeetingField had it’s own async validations for conflicts with other meetings in the same location and so on.

What I agree though, is that the current integration between FormVueLatte and Vuelidate is not that great (before Vue 3.0). So this could be considered a blocker, which sadly we can’t really help right now as we are also waiting for Vue 3.0 to ship.

Closing this in favor of next branch


allow CORS for tts get request from any origin

Commit Message
Added CORS policy for tts get request (issue #633)

p.s. should we exclude server/backend/.vscode?

No. I think we should check .vscode/ into git. I think that's what most projects are doing, including VSCode itself.

Nice work! Free free to merge.

tip:
We have mergify bot configured to automerge a PR when tests pass.
You can write the commit message in a subheading called Commit message in the PR description (example ), and tag the PR with automerge. Mergify will handle the rest for you.

tip:
We have mergify bot configured to automerge a PR when tests pass.
You can write the commit message in a subheading called Commit message in the PR description (example ), and tag the PR with automerge. Mergify will handle the rest for you.

What's the purpose of adding the commit message subheading?

What's the purpose of adding the commit message subheading?

The default commit message generated by github is not always what you'd expect. Since we ask mergify to merge automatically, we want to tell mergify exactly what commit message to use, rather than using the github default.
According to mergify docs: "you can override the default commit message... add a section in the pull request body that starts with Commit Message."
https://doc.mergify.io/actions.html#commit-message

I just switched the automerge bot from mergify to kodiak, which doesn't require you to add a "Commit Message" subheading anymore. @insualk


Darwin arm64 binaries

Feature Description
It would be cool if pre-built binaries could be enabled for macOS with M1 chips, as they are growing more and more popular.
Describe The Solution You'd Like
Ship macOS arm64 binaries.

actions/runner-images#2187

I do this today by cross-compiling. I run on macos-latest and do a rustup target add aarch64-apple-darwin, then cargo build --release --target aarch64-apple-darwin.
Maybe there is something different about this project which prevents that here, but feel free to look at Knope

@dbanty thanks. if you can try it out and push a PR that would be awesome


deploy on static pages with relative paths

Is there an easy way to deploy the production code (npm run deploy:prod) on a static website (for example username.github.io/projectname
I see two issues:

app does not work when not deployed on the root
routes: when navigated to 'counter' refresh of the page does not work

I deployed to s3 without issues.  If you aren't on the root just update your config compiler_public_path.  On s3 I had to set the error route to index.html to keep the react router intact.

Also make sure you are setting the basename, see: https://github.com/davezuko/react-redux-starter-kit/issues/852

Closing as a duplicate of https://github.com/davezuko/react-redux-starter-kit/issues/852, but if you still can't resolve it ping me and we can reopen.

Thanks a lot:,
I changed two things to get it working:

in index.js:  __BASENAME__ with the subpath including preceeding slash!
in environments.js: compiler_public_path  with empty string


Recommended usage for overloaded methods using TS?

Any tips on how to best use the overloaded Page & Frame methods from this package in TypeScript? Right now I'm just tacking methods on in a new type myself but it's pretty hacky -- curious if anyone else has run into this and what approaches they've taken. Maybe I'm missing something ridiculously simple?
Would it be useful for this package to expose its own extended Page and Frame type definitions based off the ones from puppeteer and puppeteer-core?

Hi @TylerLH!
Since the newest version (3.0.4) of puppeteer is fully TS-aware, I'm also very keen on adding typings.
I will be following up on this tomorrow.

Hi @alixaxel, that's great to hear! Please feel free to ping me if I can help in any way.

@TylerLH I've made a PR that should fix this - you can test it locally if you wish by replacing the contents of node_modules/chrome-aws-lambda/source/index.d.ts with the typings in #126.
Let me know if that works for you :)

Typings should be fully provided now.


Collapse Github button to a single click, if only one in use.

When I theme my site to only use one of the three Github buttons, it takes two clicks (well, a hover + click) to activate:

This could be more fluid!
This patch makes the outer trigger button and the actual goal button collapse into one, if there's only one button active.
With two buttons in use:
html_theme_options = {
    "repository_url": "https://github.com/neuropoly/neuropoly-docs",
    "use_fullscreen_button": False,
    "use_edit_page_button": True,
    "use_issues_button": True,
    "use_download_button": False,
}

but with one:
html_theme_options = {
    "repository_url": "https://github.com/neuropoly/neuropoly-docs",
    "use_fullscreen_button": False,
    "use_edit_page_button": True,
    "use_issues_button": False,
    "use_download_button": False,
}

it's much more direct:

I missed all of these PRs @kousu - sorry for missing them! will take a look ASAP, just wanted to let you know it's on my radar now

OK I took a look at this one, and decided that it'd be better to standardize some of the topbar button behavior in order to do less special casing for all of the buttons in general. There's a PR for this here: https://github.com/executablebooks/sphinx-book-theme/pull/490
I think that PR will resolve the same issue that this one does, so I think we can close this one if the other is merged

closing this one as I believe that it is now resolved - @kousu do you want to try this out with the master branch and see if it works as expected for you now?


Added support for georadius_ro, georadiusbymember_ro commands

I think ReadOnly instead of _ro makes the code and usage more readable. @marcosnils WDYT?

Agree. Using underscores in method names is not usually a Java convention. @s-sathish would you mind refactoring the _ro to Readonly?. Let's use just one capital letter as it's a single word.

Hi @marcosnils @sazzad16 I've updated the code as per comments.

LGTM. I'll see why tests do not pass and approve.

@s-sathish As master branch was reset, could you please rebase your work?

Hi @sazzad16 I just did the rebase. Please check.

hey @s-sathish seems like you're rebasing with an old version of the master branch. Can you please check as tests dont pass?

Done!. Thx a lot @s-sathish for the patience and the effort.


Get Bone Transforms

I want to spawn pedestrians in a natural walking position without them moving. I read that one can use the 'apply_control' function to manipulate the skeleton of the pedestrians. To do this, I need the bone transforms of the corresponding walking animations. Is there a way to obtain them using some carla function?
I figured out that by using the UE editor i can display the bone transform in an arbirtrary frame of the animation. However, so far i could not find a way to save them in a file which i can open with python and read the transforms from. Unfortunately, I do not have any experience with the UE editor.

Hi,
It would be great to get that function.
Could you give some hint to implement it self?
What files must be modified?
How is the information transferred from server to client?
What UE C++ function must be called?

I am interested to obtain the list of bone transforms and subsequently get the joints of a specific walker. Is it possible?


remove npm dependencies

This is the administrator absence dashboard without the conflicting lock files. Should make this addition to #1082 deployable.

Hey @edavidsonsawyer! I think the best way to get your changes merged in would be to revert my revert and then add your new commits on top of it:
https://github.com/studentinsights/studentinsights/pull/1231
Otherwise you're not including all the great dashboard code in your PR, just the npm related changes.
You might not have the necessary permissions to revert my revert, so why don't I start things off by doing that and you can add your commits from there?

@edavidsonsawyer We want to work off of this PR or a PR that looks like it: https://github.com/studentinsights/studentinsights/pull/1235


feat(GCS+gRPC): first function for async client

Fixes #9168

This change is

But how will customers inject a MockAsyncConnection ? Is the plan to have a MockAsyncConnectionOption? (FTR, I like this API more than what we are currently doing. Wish we had thought of it before generating 10,000 libraries)

Another question, now that I have thought about it some more: will customers be able to reuse the same connection for multiple clients? Is this a missing feature or not a problem?


Update docs: new extension version, error codes

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

Microsoft authors of articles need to make updates through the private repository so the updates can be staged and validated by the current validation rules. After you review staging and fix all validation issues, you can add the sign-off comment to let the PR reviewers know the updates are ready to be merged.It's easy to access the private repo version of your articles in GitHub. Just add -pr to the URL, as follows:
Public repo URL: https://github.com/Microsoft/azure-docs/blob/master/articles/azure-portal-overview.md
Private repo URL: https://github.com/Microsoft/azure-docs-pr/blob/master/articles/azure-portal-overview.md
We have closed this pull request. Please resubmit the updates through the private repo. If you need perms to the private repo, see the contributor guide instructions


Lab 2 - Question 7

Hello
I have seen that question 7 has 2 parts however I couldn't understand the difference between the two.
These are the questions below :
What proportion of commercial properties are delinquent on taxes?
What proportion of delinquent tax bills are owed by commercial parcels?***
I have done this code:
mean(downtown$landuse=="Commercial"& downtown$amtdelinqt!=0)
to get the proportion of commercial properties that are delinquent on taxes however the proportion of delinquent tax bills owed to commercial parcels seem to have the same meaning.
could you please explain this question further ?
Thanks!

Hi @malmufre, sure thing!  Looks like you nailed the first part.
This is a matter of finding the sum() of all delinquent taxes owed in Syracuse, NY.  It's probably a big number!
Then, find the sum() of all delinquent taxes owed by "Commercial" properties.
After that, you can just use division / to determine the proportion - is that helpful and do you see the difference?

Yes I do ,
Worked just fine . Thanks!
However I did not get a very big number when I ran this code for the sum of all the delinquent taxes owed in Syracuse.
these.deliqnt<- (downtown$amtdelinqt!=0)
sum(these.deliqnt,na.rm=T)

You're welcome!  So here's the somewhat big number:
> sum(downtown$amtdelinqt, na.rm = TRUE)
[1] 5045969

So ~$5m in taxes owed!  This should be the denominator for the second question. The numerator should be the amount of tax dollars delinquent on "Commercial" landuse properties!

I didn't quite get why we removed != from the code since we want all the delinquent tax bills , or does that mean that we need to include even tax bills that equal to 0?
On another note, even in question 5 , when we were asked about the number of properties delinquent on taxes ,would that also mean that our code should not have**!=**  in it since we need all properties even the ones that are delinquent on taxes with the value of 0?
Thank you

I didn't quite get why we removed != from the code since we want all the delinquent tax bills

Hm, I suppose this all depends on how your interpret the second question - is it the number of properties or is it the amount in tax dollars that are delinquent?  Suppose these instructions came from an executive who was relatively precise with some requests, but somewhat vague in a couple of them?  What would you do?  (This isn't the purpose of the assignment, but you'll experience this quite often in your data analytic career).

What proportion of delinquent tax bills are owed by commercial parcels?

This could be interpreted as how many bills are owed by "Commercial" properties out of all bills owed?  However, we don't have a variable that lists the number of bills, only the dollar amount of delinquent taxes.
My interpretation would be that, for the first question, we're asked to find the proportion of delinquent "Commercial" properties out of all "Commercial" properties, so this is:
delinquent_commercial_properties / all_commercial_properties

Hence, != applies because it disqualifies the property from being part of the delinquent properties in the numerator of the above equation.
In the second question, since we don't know the number of individual bills, I interpret this as a proportion of taxes owed by commercial properties / all taxes owed - hence, it's a proportion of a dollar amount, not properties, so we don't need != to disqualify non-delinquent properties anymore.

or does that mean that we need to include even tax bills that equal to 0?

That's the tricky part - we don't know tax bills equal to 0, we just know that 0 taxes are owed - so we don't need it for the second question, which is only concerned with delinquent taxes owed.
Does that make sense?  (Seriously, if not I'm happy to meet and talk it through!).

On another note, even in question 5 , when we were asked about the number of properties delinquent on taxes, would that also mean that our code should not have != in it since we need all properties even the ones that are delinquent on taxes with the value of 0?

Since this deals with properties that either are or are not delinquent, != or > 0 will result in TRUE, if the property is delinquent, or FALSE if it isn't.  Since the unit of analysis in Q5 is "properties", rather than "dollars", this still applies.
Let me know if I'm making this worse! (Haha).

It's clear haha Thanks very much!
For the second question, What I got is basically that we removed the!= or > since we need to include all tax amount owed  disregarding that fact that some of the properties will have a tax delinquency of 0.
I have tried it and I got a very smal percentage, so I hope I am doing this right.
I just would like to ask if {r}length(downtown$amtdelinqt) would be a  variable that lists the number of bills.
As for Question 5, I got that we need the properties that are delinquent so we are disregarding properties that are not  delinquent on taxes by adding the !=
Thanks for the thorough explanation.

I just would like to ask if {r}length(downtown$amtdelinqt) would be a variable that lists the number of bills.

Do you mean in-line variables outside of code chunks?  If so, it should look like this:
r variable
...rather than...
{r} variable
Another note: length(downtown$amtdelinqt) will only get you the number of "elements" in the "vector" (that is, the total amount of values in the variable).  In other words, this will just tell you the number of rows/properties.  Technically, it's not the number of bills, unless each property has only one bill - then that's correct.
To find the total amount of delinquent taxes, in dollars, you can add the values with sum() (rather than length()).  If you wanted to do this in in-line code, you can type the following outside of code chunks:
`r sum(downtown$amtdelinqt, na.rm = TRUE)`

To take it further, you can actually format it as currency using package scales.  In RStudio (but not in the .Rmd script), type the following:
install.packages("scales")

In the .Rmd script, include this in a code chunk at the beginning:
library(scales)

Then, you can format a single value or an entire variable using the dollar() function. For in-line variables, outside of code chunks, it looks like this:
`r dollar(sum(downtown$amtdelinqt, na.rm = TRUE))`

Hope this helps!


How to make custom webpack.config for ReactNativeWeb project for different platforms

I have React Native project and make them to be work in browser using React Native Web
For some React components I made different files for different platforms, like this
index.ios.js
index.android.js
index.web.js
When I make storybook webpack config with
  resolve: {
    alias: {
      'react-native': 'react-native-web',
    },
    extensions: ['.js', '.jsx', '.web.js'],
  },

I got errrors like this:
ERROR in multi manager
Module not found: Error: Cannot resolve 'file' or 'directory'<EMAIL_ADDRESS>in /home/user/prj/RNWApp
 @ multi manager

How I need resolve them in Storybook webpack.config.js ?

Try taking a look at this example from @Gongreg :
https://github.com/wix/react-native-storybook-example
Does it solve your problem?

@shilman My problem that was I don't add empty extension ('') into resolve - extensions in storybook custom webpack.config.js, cause I previously removed it in project webpack.config.js after upgrading to webpack 2 (http://stackoverflow.com/questions/42068939/webpack-2-cannot-resolve-empty-extensions)

So problem solved? :)


[C++]: Composite type generation

C++ generator produce*Id() fields for composite type elements. Is there any reason for that?
Elements from composite type don't have property id and generated methods always return 0.

I think code below should be if-ed
    private void generateFieldCommonMethods(
        final String indent,
        final StringBuilder sb,
        final Token fieldToken,
        final Token encodingToken,
        final String propertyName)
    {
        sb.append(String.format("\n" +
            indent + "    static SBE_CONSTEXPR std::uint16_t %1$sId() SBE_NOEXCEPT\n" +
            indent + "    {\n" +
            indent + "        return %2$d;\n" +
            indent + "    }\n",
            propertyName,
            fieldToken.id()));

Things could be re-arranged so that the method is not generated by treating the composite differently than the normal messages. And probably could make a few other optimizations while at it.


[VL] Daily Update Velox Version (2024-02-13)

picked two PRs from 2024_02_09:

3dcca8db6 Ubuntu: build fmt from source in setup script (#8678)
ffb086b25 Add support to write to ABFS filesystems. (#7218)

new PRs in 2024_02_12:

42b10d943 Fix crash in parseSerdeParameters() (#8730)
7227ff822 Fix arbitrary() to always return the first non-null value in Window operation (#8640)

since setup_ubuntu.sh is modified in PR8678, we need to rebuild the velox docker images. Now we set --run_setup_script=ON to setup velox dependency in CI docker
new dependency library added is libfmt 10.1.1.
@zhouyuan

===== Performance report for TPCH SF2000 with Velox backend, for reference only ====

query
log/native_4690_time.csv
log/native_master_02_12_2024_65f940287_time.csv
difference
percentage

q1
33.13
34.33
1.204
103.63%

q2
27.02
24.28
-2.745
89.84%

q3
37.43
38.39
0.960
102.56%

q4
38.66
37.95
-0.715
98.15%

q5
69.04
70.33
1.282
101.86%

q6
7.08
7.09
0.011
100.16%

q7
82.30
85.24
2.940
103.57%

q8
87.29
85.96
-1.334
98.47%

q9
126.26
123.47
-2.791
97.79%

q10
45.12
42.49
-2.633
94.17%

q11
20.70
20.53
-0.169
99.18%

q12
27.18
28.57
1.389
105.11%

q13
44.74
45.01
0.273
100.61%

q14
16.37
15.14
-1.237
92.45%

q15
29.44
27.31
-2.134
92.75%

q16
13.98
14.37
0.391
102.80%

q17
101.46
102.63
1.163
101.15%

q18
150.15
148.90
-1.256
99.16%

q19
12.66
12.50
-0.155
98.78%

q20
28.42
26.50
-1.919
93.25%

q21
225.26
227.26
1.996
100.89%

q22
13.60
14.05
0.444
103.26%

total
1237.31
1232.28
-5.033
99.59%


Add support to specify a rabbitmq-env.conf file

This is being addressed by PR #20 by allowing env. vars to be specified (which isn't the same as allowing a config file to be specified, but they are useful for the same purpose.


@alloy => Add support for sharing web view caches

TODO:

[ ] Add /dev/blank to force
[x] Add /dev/blank to martsy https://github.com/artsy/microgravity/pull/1138

Does some more aggressive caching in our WKWebViews.

OK, with optimal WIFI at home:
Without:

2015-10-27 10:42:56.361 Artsy[47468:1544168] Started request: http://m-staging.artsy.net/auction/input-output
2015-10-27 10:42:56.362 Artsy[47468:1544168] Started request: - 0.000755012035369873
2015-10-27 10:43:00.112 Artsy[47468:1544168] Now presenting the webview - 3.750616014003754
2015-10-27 10:43:00.145 Artsy[47468:1544168] Totally finished showing the webview - 3.78433096408844

2015-10-27 10:43:21.151 Artsy[47468:1544168] Started request: http://m-staging.artsy.net/how-auctions-work
2015-10-27 10:43:21.152 Artsy[47468:1544168] Started request: - 0.000487983226776123
2015-10-27 10:43:23.456 Artsy[47468:1544168] Now presenting the webview - 2.304744005203247
2015-10-27 10:43:23.818 Artsy[47468:1544168] Totally finished showing the webview - 2.666263997554779

2015-10-27 10:44:04.080 Artsy[47468:1544168] Started request: http://m-staging.artsy.net/auction/land-benefit-auction-2015 -
2015-10-27 10:44:04.080 Artsy[47468:1544168] Started request: %@ - 0.0002840161323547363
2015-10-27 10:44:06.888 Artsy[47468:1544168] Now presenting the webview - 2.808113992214203
2015-10-27 10:44:07.323 Artsy[47468:1544168] Totally finished showing the webview - 3.243281006813049

2015-10-27 10:44:29.324 Artsy[47468:1544168] Started request: http://m-staging.artsy.net/galerie-deste -
2015-10-27 10:44:30.979 Artsy[47468:1544168] Now presenting the webview - 1.655076026916504
2015-10-27 10:44:31.350 Artsy[47468:1544168] Totally finished showing the webview - 2.026199996471405

[ slighly pre-cached, I ran through these on another boot]

2015-10-27 10:44:59.478 Artsy[47468:1544168] Started request: http://m-staging.artsy.net/galerie-deste/shows
2015-10-27 10:44:59.478 Artsy[47468:1544168] Started request: %@ - 0.000299990177154541
2015-10-27 10:45:00.921 Artsy[47468:1544168] Now presenting the webview - 1.443224012851715
2015-10-27 10:45:01.063 Artsy[47468:1544168] Totally finished showing the webview - 1.585092008113861

2015-10-27 10:45:21.377 Artsy[47468:1544168] Started request: http://m-staging.artsy.net/galerie-deste/artists - 1.966953277587891e-06
2015-10-27 10:45:21.377 Artsy[47468:1544168] Started request: %@ - 0.0002709627151489258
2015-10-27 10:45:22.937 Artsy[47468:1544168] Now presenting the webview - 1.5607990026474
2015-10-27 10:45:23.234 Artsy[47468:1544168] Totally finished showing the webview - 1.857128977775574

2015-10-27 10:45:59.349 Artsy[47468:1544168] Started request: http://m-staging.artsy.net/galerie-deste/artist/joan-miro - 9.5367431640625e-07
2015-10-27 10:45:59.350 Artsy[47468:1544168] Started request: %@ - 0.000265955924987793
2015-10-27 10:46:00.610 Artsy[47468:1544168] Now presenting the webview - 1.260355949401855
2015-10-27 10:46:01.153 Artsy[47468:1544168] Totally finished showing the webview - 1.803614974021912

--- AFTER

2015-10-27 11:39:42.695 Artsy[49104:1617154] Started a precache
2015-10-27 11:39:42.696 Artsy[49104:1617154] Started a precache
2015-10-27 11:39:42.707 Artsy[49104:1617154] Started a precache
2015-10-27 11:39:43.716 Artsy[49104:1617154] Finished a precache
2015-10-27 11:39:43.853 Artsy[49104:1617154] Finished a precache
2015-10-27 11:39:43.968 Artsy[49104:1617154] Finished a precache

2015-10-27 11:39:48.481 Artsy[49104:1617154] Started request: http://m-staging.artsy.net/auction/land-benefit-auction-2015 - 7.987022399902344e-06
2015-10-27 11:39:48.630 Artsy[49104:1617154] Started a precache
2015-10-27 11:39:49.568 Artsy[49104:1617154] Finished a precache
2015-10-27 11:39:50.032 Artsy[49104:1617154] Now presenting the webview - 1.550096988677979
2015-10-27 11:39:50.479 Artsy[49104:1617154] Totally finished showing the webview - 1.997285008430481

2015-10-27 11:39:52.399 Artsy[49104:1617154] Started request: http://m-staging.artsy.net/how-auctions-work - 1.001358032226562e-05
2015-10-27 11:39:52.546 Artsy[49104:1617154] Started a precache
2015-10-27 11:39:53.079 Artsy[49104:1617154] Now presenting the webview - 0.6798539757728577
2015-10-27 11:39:53.232 Artsy[49104:1617154] Totally finished showing the webview - 0.8326430320739746
2015-10-27 11:39:53.320 Artsy[49104:1617154] Finished a precache

2015-10-27 11:40:03.454 Artsy[49104:1617154] Started request: http://m-staging.artsy.net/galerie-deste - 1.966953277587891e-06
2015-10-27 11:40:03.603 Artsy[49104:1617154] Started a precache
2015-10-27 11:40:03.626 Artsy[49104:1617154] Application tried to push a nil view controller on target <ARNavigationController: 0x7fcf998e7c00>.
2015-10-27 11:40:04.525 Artsy[49104:1617154] Finished a precache
2015-10-27 11:40:04.820 Artsy[49104:1617154] Now presenting the webview - 1.366243004798889
2015-10-27 11:40:05.178 Artsy[49104:1617154] Totally finished showing the webview - 1.724057972431183

2015-10-27 11:40:07.620 Artsy[49104:1617154] Started request: http://m-staging.artsy.net/galerie-deste/shows - 2.026557922363281e-06
2015-10-27 11:40:07.778 Artsy[49104:1617154] Started a precache
2015-10-27 11:40:08.179 Artsy[49104:1617154] Totally finished showing the webview - 0.5588940382003784
2015-10-27 11:40:08.179 Artsy[49104:1617154] Now presenting the webview - 0.5593170523643494
2015-10-27 11:40:08.410 Artsy[49104:1617154] Finished a precache

2015-10-27 11:40:17.110 Artsy[49104:1617154] Started request: http://m-staging.artsy.net/galerie-deste/artists - 3.039836883544922e-06
2015-10-27 11:40:17.270 Artsy[49104:1617154] Started a precache
2015-10-27 11:40:17.953 Artsy[49104:1617154] Totally finished showing the webview - 0.8433000445365906
2015-10-27 11:40:17.953 Artsy[49104:1617154] Now presenting the webview - 0.843673050403595
2015-10-27 11:40:18.007 Artsy[49104:1617154] Finished a precache

2015-10-27 11:40:21.059 Artsy[49104:1617154] Started request: http://m-staging.artsy.net/galerie-deste/artist/joan-miro - 3.993511199951172e-06
2015-10-27 11:40:21.220 Artsy[49104:1617154] Started a precache
2015-10-27 11:40:21.744 Artsy[49104:1617154] Now presenting the webview - 0.6850460171699524
2015-10-27 11:40:21.843 Artsy[49104:1617154] Finished a precache
2015-10-27 11:40:21.900 Artsy[49104:1617154] Totally finished showing the webview - 0.8406599760055542

OK with the network link conditioner on 3G:
No pre-warmed cache
 Started request: http://m-staging.artsy.net/auction/land-benefit-auction-2015 -
 Now presenting the webview - 6.491276979446411
 Totally finished showing the webview - 8.076353967189789

 Started request: http://m-staging.artsy.net/how-auctions-work -
 Now presenting the webview - 3.377477049827576
 Totally finished showing the webview - 4.249734997749329

 Started request: http://m-staging.artsy.net/auction/input-output -
 Now presenting the webview - 4.07845801115036
 Totally finished showing the webview - 5.413411021232605

 Started request: http://m-staging.artsy.net/galerie-deste -
 Totally finished showing the webview - 4.631062984466553
 Now presenting the webview - 4.631249010562897

 Started request: http://m-staging.artsy.net/galerie-deste/shows -
 Totally finished showing the webview - 4.07040399312973
 Now presenting the webview - 4.070629000663757

 Started request: http://m-staging.artsy.net/galerie-deste/artists -
 Totally finished showing the webview - 4.64664900302887
 Now presenting the webview - 4.646857023239136

 Started request: http://m-staging.artsy.net/galerie-deste/artist/joan-miro -
 Totally finished showing the webview - 11.47880202531815
 Now presenting the webview - 11.47903203964233

With cache

 Started request: http://m-staging.artsy.net/auction/land-benefit-auction-2015
 Started a precache
 Now presenting the webview - 4.104530990123749
 Finished a precache
 Totally finished showing the webview - 5.409255027770996

 Started request: http://m-staging.artsy.net/how-auctions-work
 Started a precache
 Totally finished showing the webview - 4.01667594909668
 Now presenting the webview - 4.01691597700119
 Finished a precache

 Started request: http://m-staging.artsy.net/auction/input-output
 Started a precache
 Finished a precache
 Now presenting the webview - 4.625159978866577
 Totally finished showing the webview - 5.355714023113251

 Started request: http://m-staging.artsy.net/galerie-deste
 Started a precache
 Now presenting the webview - 3.428629994392395
 Totally finished showing the webview - 3.719372987747192
 Finished a precache

 Started request: http://m-staging.artsy.net/galerie-deste/shows
 Started a precache
 Totally finished showing the webview - 1.448808968067169
 Now presenting the webview - 1.449114978313446
 Finished a precache

 Started request: http://m-staging.artsy.net/galerie-deste/artists
 Started a precache
 Totally finished showing the webview - 1.556010961532593
 Now presenting the webview - 1.55623596906662
 Finished a precache

 Started request: http://m-staging.artsy.net/galerie-deste/artist/joan-miro
 Started a precache
 Now presenting the webview - 1.143483996391296
 Finished a precache
 Totally finished showing the webview - 1.570091962814331

Both of the above examples had the exact same potential for system-wide pre-caching - I never reinstalled, or reset anything in-between builds and have been doing all day. If the OS was caching, we were getting it for both.

Tests pass, but needs a rebase :-/

Pushed rebase, gonna make a force PR now

Alright, all dependant PRs are merged :+1:

Sweet :+1:


Consistency levels aren't work as expected

This issue is partially covered in my post at hector-users group.
I'm compelled to repeat that I am completely new to Cassandra/Hector and it might be just my paranoia or misunderstanding :).
Preamble.
Hector’s "Defining Consistency Levels" help page suggests to set consistency level “on per-column family basis”. No restrictions or peculiarities noted.
// Create a customized Consistency Level
ConfigurableConsistencyLevel configurableConsistencyLevel = new ConfigurableConsistencyLevel();
Map<String, HConsistencyLevel> clmap = new HashMap<String, HConsistencyLevel>();

// Define CL.ONE for ColumnFamily "MyColumnFamily"
clmap.put("MyColumnFamily", HConsistencyLevel.ONE);

// In this we use CL.ONE for read and writes. But you can use different CLs if needed.
configurableConsistencyLevel.setReadCfConsistencyLevels(clmap);
configurableConsistencyLevel.setWriteCfConsistencyLevels(clmap);

// Then let the keyspace know
HFactory.createKeyspace("MyKeyspace", myCluster, configurableConsistencyLevel);

But methods described on "Getting started" help page (using templates to access data) in combination with setting of consistency levels (as described in aforementioned article) do not work as expected. Instead of honor per-CF values, they use defaultReadConsistencyLevel/defaultWriteConsistencyLevel (members of ConfigurableConsistencyLevel).
Example.
There are 2 Cassandra nodes. Code attempts to create a keyspace (with replication factor = 2) and a column family, then write (or read) some value to it. Сonsistency level, which is passed to keyspace creation method before performing of write/read contains consistency level ONE for particular column family. Before writing/reading a value one of the nodes goes down.
Operation won't complete, instead an exception will be thrown:

me.prettyprint.hector.api.exceptions.HUnavailableException: : May not be enough replicas present to handle consistency level.
	at me.prettyprint.cassandra.service.ExceptionsTranslatorImpl.translate(ExceptionsTranslatorImpl.java:66)
	at me.prettyprint.cassandra.service.KeyspaceServiceImpl$1.execute(KeyspaceServiceImpl.java:97)
	at me.prettyprint.cassandra.service.KeyspaceServiceImpl$1.execute(KeyspaceServiceImpl.java:90)
	at me.prettyprint.cassandra.service.Operation.executeAndSetResult(Operation.java:101)
	at me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:233)
	at me.prettyprint.cassandra.service.KeyspaceServiceImpl.operateWithFailover(KeyspaceServiceImpl.java:131)
	at me.prettyprint.cassandra.service.KeyspaceServiceImpl.batchMutate(KeyspaceServiceImpl.java:102)
	at me.prettyprint.cassandra.service.KeyspaceServiceImpl.batchMutate(KeyspaceServiceImpl.java:108)
	at me.prettyprint.cassandra.model.MutatorImpl$3.doInKeyspace(MutatorImpl.java:248)
	at me.prettyprint.cassandra.model.MutatorImpl$3.doInKeyspace(MutatorImpl.java:245)
	at me.prettyprint.cassandra.model.KeyspaceOperationCallback.doInKeyspaceAndMeasure(KeyspaceOperationCallback.java:20)
	at me.prettyprint.cassandra.model.ExecutingKeyspace.doExecute(ExecutingKeyspace.java:85)
	at me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:245)
	at me.prettyprint.cassandra.service.template.AbstractColumnFamilyTemplate.executeBatch(AbstractColumnFamilyTemplate.java:113)
	at me.prettyprint.cassandra.service.template.AbstractColumnFamilyTemplate.executeIfNotBatched(AbstractColumnFamilyTemplate.java:147)
	at me.prettyprint.cassandra.service.template.ColumnFamilyTemplate.update(ColumnFamilyTemplate.java:80)
	at jar.App.main(App.java:111)
Caused by: UnavailableException()
	at org.apache.cassandra.thrift.Cassandra$batch_mutate_result.read(Cassandra.java:19487)
	at org.apache.cassandra.thrift.Cassandra$Client.recv_batch_mutate(Cassandra.java:1035)
	at org.apache.cassandra.thrift.Cassandra$Client.batch_mutate(Cassandra.java:1009)
	at me.prettyprint.cassandra.service.KeyspaceServiceImpl$1.execute(KeyspaceServiceImpl.java:95)
	... 15 more

As log on Cassandra node shows - operation has a QUORUM consistency level. Read operation behaves in similar way.
Detailed description and fix suggestions.
Brief investigation of this issue shows that per-CF consistency levels aren't taken into account. Here's the stacktrace of read operation:

ThriftColumnFamilyTemplate$1.execute(Client) line: 97
	ThriftColumnFamilyTemplate$1.execute(Cassandra$Client) line: 1
	ThriftColumnFamilyTemplate$1(Operation).executeAndSetResult(Cassandra$Client, CassandraHost) line: 99
	HConnectionManager.operateWithFailover(Operation) line: 243
	ExecutingKeyspace.doExecuteOperation(Operation) line: 97
	ThriftColumnFamilyTemplate.sliceInternal(K, HSlicePredicate) line: 88
	ThriftColumnFamilyTemplate.doExecuteSlice(K, HSlicePredicate) line: 47
	ThriftColumnFamilyTemplate(ColumnFamilyTemplate).queryColumns(K) line: 109
	App.main(String[]) line: 177

me.prettyprint.cassandra.service.template.ThriftColumnFamilyTemplate.sliceInternal(K, HSlicePredicate) method executes get_slice method with consistency level got by operation type only:
          cosc.put(sKey, cassandra.get_slice(sKey, columnParent,
              workingSlicePredicate.toThrift(),
              ThriftConverter.consistencyLevel(consistencyLevelPolicy.get(operationType))));

In this case I suggest to use this call instead:
ThriftConverter.consistencyLevel(consistencyLevelPolicy.get(operationType, columnFamily));

cause particular CF name is already stored in columnFamily member and me.prettyprint.hector.api.ConsistencyLevelPolicy.get(OperationType, String) already has safety code in case of consistency level per CF is not set (default level by op. type will be returned instead).
The situation is more involved with write operations. Write op. stacktrace:

KeyspaceServiceImpl$1.execute(Cassandra$Client) line: 95
	KeyspaceServiceImpl$1.execute(Cassandra$Client) line: 1
	KeyspaceServiceImpl$1(Operation).executeAndSetResult(Cassandra$Client, CassandraHost) line: 99
	HConnectionManager.operateWithFailover(Operation) line: 243
	KeyspaceServiceImpl.operateWithFailover(Operation) line: 131
	KeyspaceServiceImpl.batchMutate(Map>>) line: 102
	KeyspaceServiceImpl.batchMutate(BatchMutation) line: 108
	MutatorImpl$3.doInKeyspace(KeyspaceService) line: 248
	MutatorImpl$3.doInKeyspace(KeyspaceService) line: 1
	MutatorImpl$3(KeyspaceOperationCallback).doInKeyspaceAndMeasure(KeyspaceService) line: 20
	ExecutingKeyspace.doExecute(KeyspaceOperationCallback) line: 85
	MutatorImpl.execute() line: 245
	ThriftColumnFamilyTemplate(AbstractColumnFamilyTemplate).executeBatch(Mutator) line: 113
	ThriftColumnFamilyTemplate(AbstractColumnFamilyTemplate).executeIfNotBatched(AbstractTemplateUpdater) line: 147
	ThriftColumnFamilyTemplate(ColumnFamilyTemplate).update(ColumnFamilyUpdater) line: 65
	App.main(String[]) line: 170

me.prettyprint.cassandra.service.KeyspaceServiceImpl.batchMutate(Map<ByteBuffer, Map<String, List>>) method executes Cassandra's batch_mutate method which takes multiple mutations (possibly to multiple column families) but only one consistency level:
cassandra.batch_mutate(mutationMap, getThriftCl(OperationType.WRITE));

So, in this case personally I can imagine several possible solutions:

introduce consistency level per keyspace. It's not the "miracle cure" but would help to define more "fine-grained" consistency levels;
try to behave "more intellectual"; for example, inspect mutationMap and, if it contains mutations for several CFs - use default level, if only for one column family - use something like:

  private ConsistencyLevel getThriftCl(OperationType operationType, String cfName) {
	    return ThriftConverter.consistencyLevel(consistency.get(operationType, cfName));
  }

Anyway, it would be good to at least describe discovered peculiarities in documentation.

Actually test class (it's very dummy, definitely not a masterpiece :)).
Possible command-line parameters:

host:port for coordinator node address (localhost:9160 is default value);
W or R for write or read testcase respectively (W is default value).

package jar;

import java.io.Console;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.charset.Charset;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;

import me.prettyprint.cassandra.model.BasicColumnDefinition;
import me.prettyprint.cassandra.model.ConfigurableConsistencyLevel;
import me.prettyprint.cassandra.serializers.StringSerializer;
import me.prettyprint.cassandra.service.ThriftKsDef;
import me.prettyprint.cassandra.service.template.ColumnFamilyResult;
import me.prettyprint.cassandra.service.template.ColumnFamilyTemplate;
import me.prettyprint.cassandra.service.template.ColumnFamilyUpdater;
import me.prettyprint.cassandra.service.template.ThriftColumnFamilyTemplate;
import me.prettyprint.hector.api.Cluster;
import me.prettyprint.hector.api.HConsistencyLevel;
import me.prettyprint.hector.api.Keyspace;
import me.prettyprint.hector.api.ddl.ColumnDefinition;
import me.prettyprint.hector.api.ddl.ColumnFamilyDefinition;
import me.prettyprint.hector.api.ddl.ColumnIndexType;
import me.prettyprint.hector.api.ddl.ComparatorType;
import me.prettyprint.hector.api.ddl.KeyspaceDefinition;
import me.prettyprint.hector.api.exceptions.HectorException;
import me.prettyprint.hector.api.factory.HFactory;

/**
 * Dummy test app. By default requires Cassandra deployment with
 * {@value #REP_FACTOR} nodes. {@value #DEF_ADDRESS} (or first app parameter)
 * will be used as a coordinator node. Address and testcase (W for write, R for
 * read) can be specified in execution parameters in arbitrary order.

 *

 *
 * App will start, attempt to create a keyspace and column family (if keyspace
 * with the same name doesn't exist already). After creation user must bring one
 * of the nodes (make sure that this is not the coordinator node :)) down and
 * then press Enter (if {@link System#console()} returned non-
 * null value) or restart an App.
 *
 * @author A. Kiselyov
 *
 */
public class App {

	private static final String ADDR_DELIMITER = ":";

	private static final String DEF_ADDRESS = "localhost" + ADDR_DELIMITER
			+ "9160";

	private static final int REP_FACTOR = 2;

	private static final String INTERNAL_CLUSTER_NAME = "MyCluster";

	private final static String keyspaceName = "KeyspaceName";

	private final static String columnFamilyName = "ColumnFamilyName";

	private final static String columnName = "ColumnName";

	/**
	 * Type of the testcase.
	 *
	 */
	private static enum TestcaseType {
		/**
		 * Read data.
		 */
		R, /**
		 * Write data.
		 */
		W
	};

	public static TestcaseType type;

	public static String address;

	/**
	 * Initializes node address and testcase type from commandline arguments.
	 *
	 * @param args
	 */
	private static void initParams(String[] args) {
		for (String argument : args) {
			if (argument.indexOf(ADDR_DELIMITER) != -1) {
				address = argument;
			} else {
				try {
					type = TestcaseType.valueOf(argument);
				} catch (IllegalArgumentException e) {

					// nothing to do
				}
			}
		}
		address = (address == null) ? DEF_ADDRESS : address;
		type = (type == null) ? TestcaseType.W : type;
	}

	public static void main(String[] args) throws IOException {

		if (args.length == 0) {
			System.out.println("Usage: [R|W] [coordinator_node_address:port]");
		}

		initParams(args);

		Cluster cluster = HFactory.getOrCreateCluster(INTERNAL_CLUSTER_NAME,
				address);

		KeyspaceDefinition keyspaceDef = cluster.describeKeyspace(keyspaceName);

		// No keyspace - let's create it
		if (keyspaceDef == null) {

			createSchemaAndTable(cluster);

			/*
			 * Either giving user time to bring down one node and press Enter
			 * key, or exiting an App.
			 */
			final String messageHead = "Schema has been created. You can bring one of your nodes down now to reproduce bug. ";
			Console console = System.console();
			if (console == null) {
				System.out.println(messageHead + "Then run me again.");
				return;
			}
			System.out.println(messageHead + "Then press Enter key.");
			console.readLine();
		}

		// Create a customized Consistency Level
		ConfigurableConsistencyLevel configurableConsistencyLevel = new ConfigurableConsistencyLevel();

		// configurableConsistencyLevel.setDefaultWriteConsistencyLevel(HConsistencyLevel.ANY);
		// configurableConsistencyLevel.setDefaultReadConsistencyLevel(HConsistencyLevel.ANY);

		/*
		 * Below is the recommended
		 * (http://rantav.github.com/hector/build/html/content
		 * /consistency_level.html) way, but it won't work - default consistency
		 * level (QUORUM) will be used. To make code operational just uncomment
		 * the lines above.
		 */
		Map<String, HConsistencyLevel> clmap = new HashMap<String, HConsistencyLevel>();
		clmap.put(columnFamilyName, HConsistencyLevel.ONE);
		configurableConsistencyLevel.setWriteCfConsistencyLevels(clmap);
		configurableConsistencyLevel.setReadCfConsistencyLevels(clmap);

		// Then let the keyspace know
		Keyspace ksp = HFactory.createKeyspace(keyspaceName, cluster,
				configurableConsistencyLevel);

		ColumnFamilyTemplate<String, String> template = new ThriftColumnFamilyTemplate<String, String>(
				ksp, columnFamilyName, StringSerializer.get(),
				StringSerializer.get());

		final String rowKey = "NoMatter";

		switch (type) {
		case W:
			// Writing some test row with some test column
			ColumnFamilyUpdater<String, String> updater = template
					.createUpdater(rowKey);
			updater.setString(columnName, "Some Value");
			try {
				template.update(updater);
			} catch (HectorException e) {
				e.printStackTrace();
			}
			break;
		case R:
			ColumnFamilyResult<String, String> result = template
					.queryColumns(rowKey);
			String columnValue = result.getString(columnName);
			System.out.println("Value read: " + columnValue);
			break;
		}
	}

	/**
	 * Creates:
	 *

	 *
keyspace with name {@link #keyspaceName}, rep. strategy
	 * org.apache.cassandra.locator.SimpleStrategy, replication
	 * factor {@link #REP_FACTOR}.
	 *
one column family ( {@link #columnFamilyName}), which comprise only
	 * one column ( {@link #columnName}) with
	 * org.apache.cassandra.db.marshal.UTF8Type validator.
	 *

	 * Just for the sake of testing.
	 *
	 * @param cluster
	 *            {@link Cluster} instance
	 */
	private static void createSchemaAndTable(Cluster cluster) {
		Charset utf8 = Charset.forName("utf-8");
		BasicColumnDefinition columnDefinition = new BasicColumnDefinition();
		ByteBuffer docNameBuffer = utf8.encode(columnName);
		columnDefinition.setIndexName(columnName);
		columnDefinition.setName(docNameBuffer);
		columnDefinition
				.setValidationClass("org.apache.cassandra.db.marshal.UTF8Type");
		columnDefinition.setIndexType(ColumnIndexType.KEYS);

		ColumnFamilyDefinition columnFamilyDefinition = HFactory
				.createColumnFamilyDefinition(keyspaceName, columnFamilyName,
						ComparatorType.UTF8TYPE,
						Arrays.asList((ColumnDefinition) columnDefinition));

		ThriftKsDef newKeyspace = (ThriftKsDef) HFactory
				.createKeyspaceDefinition(keyspaceName,
						"org.apache.cassandra.locator.SimpleStrategy",
						REP_FACTOR, Arrays.asList(columnFamilyDefinition));

		cluster.addKeyspace(newKeyspace, true);
	}
}

So what's the comment from the Hector crew on this?

Has anyone from the core hector team had a chance to take a look at this pull request?

Just getting around to this now - alraedy want to say a huge thanks for the level of effort on documenting this issue. @Alexander-Kiselyov you have obviously thought about this a good amount - if you want to take a stab at documenting this, you can 'check out' the documentation branch and issue a pull request on that:
https://github.com/rantav/hector/tree/gh-pages
@yourabi I'll take a look at your PR shortly

@Alexander-Kiselyov if you have a moment, could you review https://github.com/rantav/hector/commit/6c42b8d05ffc0aef7de1c5e5e67c1ded7e4f45d4 and let me know how this works. This tackles the primary issue of not respecting the consistency levels in the templates (and fixes some long standing cleanups issues).
I'm not too interested in doing the multiple CL within the Mutator approach, as that sort of violates how the API call works - one CL per API call.

Thanks for reply and work on this issue (and on this project as a whole :)); changes seem OK to me.
But still: we can't have some "column family aware" implementation of me.prettyprint.hector.api.mutation.Mutator interface, which instance will be created in me.prettyprint.cassandra.service.template.AbstractColumnFamilyTemplate.createMutator() and initialized with the name of a particular CF. Since every ColumnFamilyTemplate instance is dedicated to a particular CF, we 100% know the name of it, and that ALL mutations will affect exactly this CF. In this case we can safely use consistency level obtained by CF's name in me.prettyprint.hector.api.mutation.Mutator.execute().
The main problem in this case is inconsistency with current ideology of Mutator (as I see it). Mutator interface already designed to work with different CFs and all methods accept CF name in their parameters. In suggested implementation these parameters' values will be simply ignored (ColumnFamilyUpdater's methods can simply pass nulls as a CF to mutator's methods) cause "CF-aware" Mutator implementation already has one given in constructor. But as I stated above - it looks a bit ideologically inconsistent :). What do you think about it?

Checked in here: https://github.com/rantav/hector/commit/e4e2003b1a4a0fbb0a97bf8487751c168735a170
Marking this as closed. @Alexander-Kiselyov please feel free to open another issue so we can talk further about your last post.


support fusionx v3 on mantle

I based the branch on develop and it picked up a lot of weird stuff DO NOT MOVE OUT OF DRAFT BEFORE DEALING WITH THIS; talk to me after the RC is out

I based the branch on develop and it picked up a lot of weird stuff DO NOT MOVE OUT OF DRAFT BEFORE DEALING WITH THIS; talk to me after the RC is out

You might want to use that branch at the point in time when the RC branch was created, since many more changes have been pushed into it since (starting from around 22nd of March).

I based the branch on develop and it picked up a lot of weird stuff DO NOT MOVE OUT OF DRAFT BEFORE DEALING WITH THIS; talk to me after the RC is out

You might want to use that branch at the point in time when the RC branch was created, since many more changes have been pushed into it since (starting from around 22nd of March).

Looking at the diffs I am pretty sure this PR is good.


ClangImporter: simplify logic for mutability attribute

Take the spellings for the attributes as parameters for the diagnostics to allow us to reference the ignored the attribute properly.  Use direct pointer checks instead of an unnecessary llvm::Optional around a nullable pointer.  Use llvm::StringRef to simplify the comparison. This avoids re-spelling the attribute parameters which have already been checked by isMutabilityAttr for the contradiction.

@swift-ci please test Windows platform

@swift-ci please test Windows platform

Okay, so seenMutabilityAttr is always the last mutability attr we saw, so this is probably right.

@swift-ci please smoke test

@swift-ci please test

CC: @zoecarver @egorzhdan

The Windows failure is due to Interop/Cxx/class/mutability-annotations-typechecker.swift which was addressed by #61512


Add GCD as a standalone function

We are currently using the extended euclidean algorithm when calculating multiplicative inverses. We could also add the computation of the greatest common divisor as a standalone function.

i'll look into this

Would this be a GCD for UnsignedInteger? Or some algorithm to use in the of the MontgomeryBackendPrimeFIeld?


Mark the setup as flaky

I am running complex selenium tests, in which the setup is flaky sometimes, i.e. when I get the webdriver itself.
I tried to mark the respective setup function as flaky, but if an error happens in the setup method (in conftest.py in the py.test framework), the test is not being repeated.
Is there a way to mark the setup for a test as 'flaky'?

Sorry, this isn't supported out of the box, but it could be possible. Can you give some more details about your test setup?

Hi,
in these selenium tests of mine I am testing non-public, password-protected webpages. In order to create meaningful test cases I absorbed the login and the opening of the initial page into the startup of the tests.
However, the start up can fail in many ways:

An intermittent geckodriver error when I try to get the selenium driver
An intermittent error when trying to log in
An intermittent error when opening the webpage

And when such an error happens in the startup phase of the test, the test is not being repeated, even the 'flaky' decorator is used.
And for these cases it would be good to have these tests repeated as well...

I too would very much like to see this feature or perhaps something very similar. I am currently using pytest to test a piece of hardware. In my case, a lot of tests initialize the hardware through a particular pytest fixture. If there is a hardware bug, it can manifest in many testcases and result in an error which can be completely unrelated to what the testcases are trying to test.
In this case what I am trying to do with pytest (which initially brought me to this plugin) is to have a scheme where all of the tests I have in my suite that depend on this fixture are ran and if a test fails for a particular reason, (determined by a provided function much like what what is done with the filter function you support,) then the test is rerun a few more times.
In my case, its a bit different because the hardware bug need not manifest as part of test setup only and could manifest during the test as well. Because a single bug can affect a lot of tests, I would like to be able to apply the retesting approach across the board, without having to decorate each test/class/module etc. Or to rephrase, to associate this retesting strategy with a fixture as opposed to a test.

https://github.com/pytest-dev/pytest-rerunfailures works in a very similar way to this plugin, but will rerun a test when the flakiness is caused by one of the test's fixtures.

Can this now be closed thanks to https://github.com/box/flaky/pull/148?

Fixed in #148


Speeding up, GPU and 3D

HI Filipe, any progress on speeding up the engine? And by the way, do you have GPU and 3D version of the physics engine? Thanks!

Hi, thanks for the interest. I plan releasing a good set of updates to the code over the next weeks, together with a paper we are presenting at NIPS this year. A 3D version, however, is not in the immediate plans, though it might happen later. As it stands, usage is already compatible with GPU (though it might not be super optimized to take advantage of that).
If you have any more questions, let me know.

Hi, I was trying to run your code and it worked perfectly. However, after switching to GPU there is an error:
ODE INTERNAL ERROR 1: assertion "aabbBound >= dMinIntExact && aabbBound < dMaxIntExact" failed in collide() [/home/repa/anaconda3/conda-bld/pyode_1576522789568/work/ode/src/collision_space.cpp:460]

it is thrown from the world.py
in the method:
    def find_contacts(self):
        # ODE contact detection
        self.space.collide([self], self.contact_callback)

do you have any idea what could cause the problem and how to fix?
It seems to happen in the case where there are 4 objects, I am applying external force to 2 of them.
Best,
Jarda

@JaroslavVitku
Hi, were you able to solve this problem? I encountered this issue as well. Thanks!


Add user stormxx to  developers.list

Deal all,
We met at the OpenKylin Salon on Alibaba Cloud in September.

currently the riscv lab provides unmatched with ubuntu or other linux distros installed. do you have any prefer?

Debian, if there is  no Debian, Ubuntu should be ok. thx~~

your machine is ready. please drop an email with your id (stromxx) to<EMAIL_ADDRESS>for access instructions.


Another crash - on non existent user

When you go to URL like this:
http://localhost:8000/j/
where J username is not valid/does not exist. The app doesnt handle it gracefully. It crashes with:

Request Method:
GET

http://localhost:8000/j/

1.11.3

DoesNotExist

User matching query does not exist.

/usr/local/lib/python2.7/dist-packages/django/db/models/query.py in get, line 380

/usr/bin/python

2.7.12

Solved.


Actually fix acls

So, as it turns out - deploy credentials does not need sessions:CREATE - which I originally thought - the problem was just that the same credentials were used for schedules creation... (as can be seen in the code), and not the one actually meant for schedules (client_credentials=schedule_config.credentials) (which was actually passed, wtf).
PIggybacked some ACL-word-capitalizations.

Reverts bad fix #8

I'm super scared of hard-coded strings here....

Anything in particular you want me to change? I can do a lower vs lower string compare? Add them all as constants somewhere?

I'm super scared of hard-coded strings here....

Anything in particular you want me to change? I can do a lower vs lower string compare? Add them all as constants somewhere?

You generate acls as strings, if I got it right. But that's fine, I don't really see how can you avoid it. So it's okay.


Solving Affinity/Anti-Affinity Complex Constraints Problem

Hi Ionel & Malte, we are creating this issue to bring to your attention the issues we are running into while implementing “xor” flow construct for pod-to-pod anti-affinity functionality.
As regards to “and” flow network construct, it seems current min-cost flow solver needs to be enhanced to generalized min-cost flow network based solver. We are not sure at this time how to go about accomplishing all this.
In the meanwhile, we are addressing pod-to-pod affinity/anti-affinity complex constraints by processing one pod at a time using multi-scheduling rounds, as suggested in Malte’s thesis.
Let us know if there is a way to address issues we are running into while implementing “xor” and “and” flow constructs for solving affinity/anti-affinity complex constraints problem. Following is the Google Doc link for all the issues we have encountered so far. Thanks.
https://docs.google.com/document/d/1kdiDXiLJ2glJ35AWRMX2H3YMOznNgkNu8-4sG4z9HRo/edit?usp=sharing
@ms705 @ICGog @shivramsrivastava

/cc


Don't use random placeholders

Switch from random (possibly repeating) placeholds to deterministic
counter which can't conflict. Adjust placeholder string to ensure
regex can't match a different number.

Or is this problematic because extract-text can be called inside its own VM?  If so we should still use a counter but add an a random ID.


Paper Matching Setup invitation activation date is not using the Abstract Registration deadline

The ML4H venue's abstract registration deadline has passed and they want to run the Paper Matching Setup however the invitation's activation date is reflecting the Submission Deadline and not the Abstract Registration Deadline. Venues should be able to run the Paper Matching Setup after the abstract registration deadline passes.

the fix should be here: https://github.com/openreview/openreview-py/blob/master/openreview/venue_request/process/revisionProcess.py#L30
use abstract deadline if exists or submission deadline.


Revert to cli client from os_user due to os_user not respecting domain field

feedback from tesla:
seems like heat_domain_admin user is not created under heat domain. Also, is missing the description (just a nit)..
clients) ➜
tesla openstack --insecure domain list
+----------------------------------+---------+---------+--------------------+
| ID                               | Name    | Enabled | Description        |
+----------------------------------+---------+---------+--------------------+
| 9766008e644d481381188681e8c9bb2d | heat    | True    |                    |
| default                          | Default | True    | The default domain |
+----------------------------------+---------+---------+--------------------+
(clients) ➜
tesla openstack --insecure user show heat_domain_admin
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | default                          |
| email     | None                             |
| enabled   | True                             |
| id        | 32459b4fa9e34c34845f047f8ec60679 |
| name      | heat_domain_admin                |
+-----------+----------------------------------+
This is confirmed, appears that os_user does not respect identity_api_version and does not append domain to user create (code from prior commit creates heat_domain_admin in default domain)

It sounds like we can export OS_IDENTITY_API_VERSION in the env that will cause shade, et al to do the right thing. Worth a try, but also worth going down the route of this PR in case the other doesn't work.


Localhost to localhost

Probably this is not possible but let me ask anyways. :)
Is it possible to forward from localhost to localhost? I have server that is running under VPN and would like to get to the NAT network so that I can normally port forward in ISP Router. Something like this bore local 8088 --to localhost. Let's say server and client are on the same machine that is under VPN.

Hi, I don't quite understand the question! bore local 8088 --to localhost does work. But I don't know what you're trying to do specifically?

Hi, I don't quite understand the question! bore local 8088 --to localhost does work. But I don't know what you're trying to do specifically?

Trying to port forward behind VPN.


Unable to contact service error.

After installing the ,NET Portability Anaylzer extension in VS 2017, I see the error:
Unable to contact service. Try again later.
And hence unable to use the utility. Can someone please shed light on what am I missing?

Can you provide some repro steps? I know the service was down recently but I installed the VSIX again, tried it out and it appears to be working fine for me.

Well, I installed the VS Extension for Portability Analyzer and can't seem to connect to whatever service it is trying to call. When I click "Portability Analyzer Settings" I see "Unable to contact service. Try again Later" error and nothing in Output formats or Target Platforms.

Are you behind a proxy? We had fixed this issue #396 for the console application but did not for the VSIX, yet.
@twsouthwick are there any other ways we can debug this issue?

Yes I am but it is correct and works with everything else except this one. What service is it trying to access?? Do we have a URL to check that proxy is not the cause?
Thanks!
Shalin

From: Connie Yau<EMAIL_ADDRESS>Sent: Thursday, November 30, 2017 11:06:17 AM
To: Microsoft/dotnet-apiport
Cc: shalinparmar; Author
Subject: Re: [Microsoft/dotnet-apiport] Unable to contact service error. (#528)
Are you behind a proxy? We had fixed this issue #396https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2Fdotnet-apiport%2Fpull%2F396&data=02|01|shalin_i_parmar%40hotmail.com|a8c139cff1c84ed9787a08d537756ac0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636475899787939066&sdata=FGgJ1g%2FSZvsM70QnouUQrkbJZxszn1bdfN9cfeY2LXA%3D&reserved=0 for the console application but did not for the VSIX, yet.
@twsouthwickhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ftwsouthwick&data=02|01|shalin_i_parmar%40hotmail.com|a8c139cff1c84ed9787a08d537756ac0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636475899787939066&sdata=6qdMUIbS9fDfky%2ByK8uZep1710MjH67%2Fvqy3reyk7kY%3D&reserved=0 are there any other ways we can debug this issue?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2Fdotnet-apiport%2Fissues%2F528%23issuecomment-348012594&data=02|01|shalin_i_parmar%40hotmail.com|a8c139cff1c84ed9787a08d537756ac0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636475899787939066&sdata=ONT4ewMRwgNV5pjT6K%2BJRssMGdj5YVgMGTfDB2W3kow%3D&reserved=0, or mute the threadhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FANBZPHGAkkXITmV9WNuQ8KkZ85IX02IVks5s7dVZgaJpZM4QuRMY&data=02|01|shalin_i_parmar%40hotmail.com|a8c139cff1c84ed9787a08d537756ac0|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636475899787939066&sdata=hvv%2FFnUHO%2B%2FaCwmrIjx71SgSYawrVdeSP%2FbqENNlyH0%3D&reserved=0.

Hey,
The URI that the VSIX tries to reach is https://portability.dot.net/ (seen here in ServiceProvider.cs). It makes calls to:

https://portability.dot.net/api/target to get the target information
https://portability.dot.net/api/resultFormat to get the supported result formats and
https://portability.dot.net/api/analyze to analyze the request

The reason it is not working is because we use HttpClient to make web requests and currently, do not check whether a system proxy is in place before making those requests. The other extensions you installed probably consider the system proxy.
If you want to work around this, you can download the console application (https://github.com/microsoft/dotnet-apiport/releases) and then use that to analyze your binaries.  This will consider your system proxy and you can configure it as stated in #396

I think I've got a fix - I'll get a PR up soon for it


Greeting action is failing

I don't know why, but all of a sudden I'm emailed each time I comment or open a PR because the "greetings" action fails to run. I might just delete the action because realistically no one is contributing to this in the foreseeable future but me.

I ended up just getting rid of the action


Multiple model versions

Currently we have service per model. This issue requires to create services per model&version

@ablatov please refer this issue in your PR


Include patch from horchi

include SAT/IP Plugin
include vdrctl

will not be merged anymore since this repo is deprecated.


xgboost register objective macro

I have been digging through the source code and came across the XGBOOST_REGISTER_OBJECTIVE macro in objective.h:
https://github.com/dmlc/xgboost/blob/4d7a187cb0ebc2194abc1efe0aaee6f06af937c5/include/xgboost/objective.h#L154
and wondering what the purpose of this macro is? Is this to basically register a new loss object on the heap dynamically with new? Since the macro is used in combination with the .set_body() function it seems like this creates a new Objective function object (inheriting from ObjFunction) dynamically on the heap with new. Thanks in advance!

It's a factory method, give it the name of the objective and the function to create it, you can call ObjFunction::Create with the name afterward.

Feel free to reopen if there are further questions.