Krmfile for setters

Since you have excelent kustomize support, I'd like to bring to your attention the newst setters development upstream:
Manifest:
# Krmfile
apiVersion: config.k8s.io/v1alpha1
kind: Krmfile
openAPI:
  definitions:
    io.k8s.cli.setters.namespace:
      description: namespace for the app
      type: string
      x-k8s-cli:
        setter:
          name: namespace
          value: default
          count: 1

Usage: (# {"$openapi":"namespace"})
namespace: "default" # {"$openapi":"namespace"}
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ../upstream

Now this field can be easily customized with kustomize cfg set install/base namespace my-namespace which get's recorded back as values into the Krmfile.
Caveat: files like this path must be in-lined into a valid GVK resource, but can be elided, on the other hand if that is wished.
See:
Error: ../../upstream/base/patch-trow-arg.yaml: wrong Node Kind for  expected: MappingNode was SequenceNode: value: {- op: replace
  path: /spec/template/spec/containers/0/args/2
  value: newregistry.mydomain.com}

This is really nice, but as I mentioned in the PR, I'm worried about how compatible it is with current versions of kubectl.

I'm closing this and leave open the draft PR for reference. As soon as such tooling will be mainlined into kubectl, that PR might be reactivated.


Cannot set personal access token in firefox options

I just installed the firefox add, but get a blank screen when I try to edit any of the options:

I would assume a bug report was already submitted for that, but I couldn't find it. Anyway, it works on chromium-based browsers.

Duplicate of https://github.com/sindresorhus/refined-github/issues/3506

Can you try opening this page when the extension is enabled? How does it look?
moz-extension://a262b5a5-f7cc-ae4c-8af1-b27ad5ee0e9e/options.html


How can I use batch insert in Moor

You can use into(table).insertAll(). It works just like insert, but it takes a list instead of a single row that will be written.

I'll close this issue for now. Please let me know if you need more information or have further questions, I'll then reopen this issue

Thanks


OCPBUGS-23528: Fix error when removing finalizer on cluster destroy

What this PR does / why we need it:
Attempting to destroy an AWS cluster can result in an error indicating that the CLI is trying to add a finalizer. This is likely due to a conflict between the HostedCluster CR that the CLI has in memory and the current version of the CR. This change adds a retry loop and invokes the patch operation with optimistic concurrency lock
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story:
Fixes #OCPBUGS-23528
Checklist

[x] Subject and description added to both, commit and PR.
[x] Relevant issues have been referenced.

/lgtm
thanks!


CodeSee Demo Review Fork

Goal
The goal of this PR is to replace the Currency trait with the fungible trait.
Closes #942
Closes #1532
Discussion
The following Parity issues/PRs were used as references for changes:
Deprecate Currency - PR 12951 (Explanation of necessary changes.)
FRAME: Move pallets over to use fungible traits (Issue to track Parity's efforts to update their pallets.)
pallet vesting / update to use fungible (Example of some necessary changes.)
Changes

.cargo-deny.toml Added "multiformats" for cid crate to fix warning.
vscode/settings.json Added script that sets up the source map for the rust std library files for debugging.
Cargo.lock cargo updated.
e2e/package-lock.json npm updated.
Replaced traits as needed: Use tokens::fungible::

InspectFungible for balance() and reducible_balance()
InspectFreeze for balance_frozen()
Mutate for set_balance(), mint_into()
MutateFreeze for set_freeze(), and thaw()

Added pub enum FreezeReason to support freezes
Updated error handling as set_freeze() and thaw() can fail, so errors needed to be propagated.
Updated mocks to set MaxLocks, MaxReserves, MaxFreezes, and MaxHolds to 50, to match Balances pallet config.
Updated runtime pallet configs to use BalancesMaxXXXXXs
Updated tests with .expect() where set_freeze() or thaw() can fail.
FreezeIdentifier and RuntimeFreezeReason configured with defaults.

How to Review

[ ] Read through Deprecate Currency - PR 12951 to understand context and check that Currency traits were properly replaced with fungible traits.
[ ] Check impact of changing to set_freeze() and thaw() which can now fail and make sure all error states are propagated correctly without possibility for panic
[ ] Check if balance() is used correctly, or should be changed to reducible_balance(). The calculations evaluating the Existential Deposit (ED) have been updated and Parity comments indicate that reducible_balance() is most likely the value needed.

Checklist

[x] Chain spec updated
[ ] Custom RPC OR Runtime API added/changed? Updated js/api-augment.
[ ] Design doc(s) updated
[ ] Tests added
[ ] Benchmarks added
[ ] Weights updated

Congratulations! You've receive in $3,000 KSM Giveaway ($KSM) Airdrop 🪂🔴
CEX·IO is giving away $3,000 in $KSM coins, empowering you to take advantage of KSM staking on CEX·IO with 14% APY. Join the giveaway and earn a chance to win up to $500. Stake Kusama with CEX·IO, get high rewards and win prizes!
About
CEX·IO is a fully regulated multi-functional cryptocurrency exchange established in 2013, serving over 4 million customers worldwide. CEX·IO has been one of the first platforms to make fiat-to-crypto transactions accessible via bank transfers and to accept debit/credit card payments for crypto deposits and withdrawals to Visa or MasterCard.
→ How to join the $3,000 KSM Giveaway Airdrop?
Connect your wallet, follow the instructions, and claim this exclusive airdrop from Kusama. For GitHub users only—share with friends to make it eligible. Redeem your reward first.

Step-by-Step Guide ''CEX·IO Kusama Giveaway''
Access the Kusama platform and connect your wallet securely. Ensure you're using a trusted wallet for the transaction.

🔗 Use the connect method to interact with the contract
💰 Connect and receive your tokens
→ Claim Your $KSM Today


Add scope to getTokenEndpoint

I have error during getTokenEndpoint. Battle.net APIs require to set scopes to the token request. As I see TokenClient does not do it. Can I add it somehow? If not then please add scopes to a token request.
https://github.com/IdentityModel/oidc-client-js/blob/a8a70ce68bd07373abd7d33e016a97adc5d204bc/src/TokenClient.js#L21

I was to sleepy tonight, I can do it, Thx!


Surveys QA UX - Feedback

@sewagodimo @KaitCrawford please review
Updated the surveys page to show surveys when user is not looged in as per setting


How do I scroll to the end?

This seems like it should be simple, but how do I scroll to the end (bottom or right of an element with a scroll? I notice if I set scrollTo to a large number, it just makes the scroller bigger. And scrollToElement is not what I want, because I want to scroll past any elements to just the maximum scroll number.

The maxScrollY value works for version 5 too even though it is not documented.

this is really useful for me, thanks

Thanks, this help a lot


"Pro" moniker - Still free?

Usually the "Pro" moniker indicates that there will be licensing costs associated.  Is this still a free extension?  Will it eventually become fee/subscription-based?

@sumo300  Dont worry. It'll always be free and open source :) (unless you want to donate some money ;) ).


Add croom option to textswap

Hi
For performance analysis it is useful to set the croom register in textswap like we can for unittest and lfsrtest.
Stephen

I plan to add this today

Fixed in 8bdb94e932bbf50e118b061205351585f85ecd6b


render-json does not work anymore (since 0.51.9)

Describe the bug
We upgraded terragrunt and can not run terragrunt render-json anymore. It seems that the evaluation phase does not finish (or just takes a very long time).
It seems that terragrunt jumps all the way up to the git-repository root and somehow includes all the environments we have defined.
I tracked it down to the latest working version: 0.51.8. From 0.51.9 it is broken. Diff: 0.51.8 to 0.51.9.
Our structure is as follows

/

terraform/

module1
module2

terragrunt/

dev/

common.hcl
module1/terragrunt.hcl
module2/terragrunt.hcl

staging/

common.hcl
module1/terragrunt.hcl
module2/terragrunt.hcl

prod/

common.hcl
module1/terragrunt.hcl
module2/terragrunt.hcl

To Reproduce
terragrunt render-json
Expected behavior
The json should be rendered below a second, it should not jump into other env.
Versions

Terragrunt version: 0.53.6 (since 0.51.9)
Terraform version: v.1.5.7
Environment details (Ubuntu 20.04, Windows 10, etc.): MacOS 14.1.1 (23B81)

Additional context
One interesting observation: if I rename the .git folder in the / directory of the project, it works as expected and produces a json file very quickly.

I'm seeing the same behavior, which I can confirm appears to have been introduced in https://github.com/gruntwork-io/terragrunt/commit/1a80dba8786bdca1e157530c153066e5cfdd4a52. For my setup, it does finish, but is definitely quite a bit slower than previously. I built 1a80dba8786bdca1e157530c153066e5cfdd4a52 and its parent 7878f26b74387c99c44efefaec6e36703a72a303, and it looks like that commit made render-json take >150x as long as it did previously.
% hyperfine "terragrunt-7878f26b render-json" "terragrunt-1a80dba8 render-json"
Benchmark 1: terragrunt-7878f26b render-json
  Time (mean ± σ):     123.4 ms ±   5.5 ms    [User: 117.2 ms, System: 49.2 ms]
  Range (min … max):   112.9 ms … 133.3 ms    22 runs

Benchmark 2: terragrunt-1a80dba8 render-json
  Time (mean ± σ):     21.374 s ±  2.517 s    [User: 27.189 s, System: 2.907 s]
  Range (min … max):   16.031 s … 25.013 s    10 runs

Summary
  terragrunt-7878f26b render-json ran
  173.24 ± 21.79 times faster than terragrunt-1a80dba8 render-json

Ah, and, notably, the output is unchanged!
% time terragrunt-1a80dba8 render-json > 1a80dba8.json
terragrunt-1a80dba8 render-json > 1a80dba8.json  24.92s user 2.57s system 143% cpu 19.150 total
% time terragrunt-7878f26b render-json > 7878f26b.json
terragrunt-7878f26b render-json > 7878f26b.json  0.15s user 0.04s system 134% cpu 0.144 total
% sha256sum *json
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855  1a80dba8.json
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855  7878f26b.json

@denis256 at least for the time being, would you accept a PR reverting the commit that introduced the performance regression, given that it doesn't actually appear to change the output?

Flag to improve performance added in https://github.com/gruntwork-io/terragrunt/releases/tag/v0.56.2

Looks great. Thanks!


Update QdrantMemoryStore.cs

Do deleting collection when it exists, seems '!' is redundant

@awharrison-28 could you take a look?

This has been fixed, closing this PR. Thanks @TerrenceAltman for helping to get traction on the issue.


early auth system

port and update article early auth system from wiki https://wiki.altv.mp/wiki/Tutorial:Setup_EarlyAuth to docs

add https://github.com/altmp/altv-issues/issues/1121#issuecomment-921925611 to docs

Added https://github.com/altmp/altv-docs/commit/965027b7e077f893f616ac978652181aa9fa179c


Remove viewport getters

The viewport property getters are wrappers to the ViewportState fields. In this PR they are replaced by direct access to the ViewportState fields. This is a conceptually simple thing but impacts a lot of files.

I will look for an alternative solution. More direct use of the ViewportState.


Fix typo existng --> existing

Closed since this was fixed in https://github.com/datastax/create-astradb-mongoose-app/pull/3


Update oojs-ui

It looks like a lot of changes to i18n files are included in the one commit.  Was that intentional?

Nevermind.  I see that is i18n for oojsui.

I propose that we go with https://github.com/wiki-ai/wikilabels/pull/139 instead.  What do you think?


[Redis] Add support for 2023-08-01

Related command
az redis
Description
PR is to update azure cli management client with new api v2023-08-01. Following additions were made:
[To fill in when PR ready]
Swagger changes can be found here: https://github.com/Azure/azure-rest-api-specs/blob/fa64058384cb457552f54428f32667d384b794d4/specification/redis/resource-manager/Microsoft.Cache/stable/2023-08-01/redis.json
Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Merge PR only after https://github.com/Azure/azure-cli/pull/27472

Redis

Please resolve the conflicts

/azp run

Please also re-record the related tests in network module


Lab03 Review (lab09)

Hi Davide,
first of all, I'd like to say I'm impressed with the amount of work you put in this lab: you not only managed to solve the problem with iterations 1 and 2, but almost made it with 5. I really liked how well explained your code is and how much effort you put in analizing and implementing what might help a failed attempt at a solution in iterations 5 and 10.
The implementation of extinction works like a charm to improve all results and I wish I thought about implementing it myself on my own solution.
Unfortunately, I can't help much with improving results with iterations 5 and 10. I tried to fiddle around with some parameters based on some assumptions I made and sometimes managed to get slightly better results, but I can't say for sure if it was due to pure luck or not, since in those cases the change wasn't big enough or consistent.
All in all, good job and keep up the good work and good luck for your next labs!

Thank you for your feedback 😉!
Good luck for the next labs to you too!


"Not all open documents were saved" popup appears in unhelpful position, prematurely

Brief Issue Summary
I'm running VSCode on a Mac mini with the Remote::SSH extension doing its thing on an ARM evaluation board running Debian Bullseye Linux, so CMake Tools v1.16.31 is running on that board.  When I hit the "Build" button in the status bar at the bottom-left of the screen I often get a "Not all open documents were saved. Would you like to continue anyway?" popup window appearing in the bottom-right corner, with "Source: CMake Tools (Extension)" laying the blame at this module.
My first complaint is with the position of the window, which is right on the other side of the VSCode window to the "Build" button.  I'm using an 86cm Ultrawide Quad HD 3440x1440 screen, so when I'm looking at the button to click on it, the window pops up in the peripheral vision of my right eye and I often don't notice it appear.  Instead all I see is nothing happening in the output window and I have to go looking for the reason.  Ideally the popup window should appear close to where I clicked the mouse, though I'd settle for it being in the centre of the VSCode window.
My second complaint is with the appearance of this window at all, because all the files HAVE been saved.  Maybe it takes a little longer for VSCode to realise this because I'm using Remote:SSH so the save has to complete on the remote ARM evaluation board rather than the local machine that's running VSCode.  I always end up clicking "Yes" to get the build to start, so really this is just wasting time with false warnings.
CMake Tools Diagnostics
No response
Debug Log
No response
Additional Information
No response

Looks like a dupe of https://github.com/microsoft/vscode-cmake-tools/issues/2889.
Also, I see this when the unsaved file has a diff tab open, and closing the diff tab makes the "not all saved" problem go away, as discussed against 2889.

Hi @kmbgit thank you for bringing this up. It seems like we may be externally blocked by this issue (reference). Also as this is a duplicate, I'll close it so that the original issue can get more visibility. It will help visibility if you like/comment on #2889 itself.


Pass through raft static CMake var

cuvs wheel builds were deviating from the behavior of the rest of RAPIDS before this PR by not linking statically to libraft.so but instead building the full dynamic and static lib (the default behavior) and then presumably bundling libraft.so. This change should fix that linking.

Removing ops-codeowners from the required reviews since it doesn't seem there are any file changes that we're responsible for. Feel free to add us back if necessary.

/merge


Bug: Account discrepancy when using different envs with different account plugins

Environment information
Env agnostic.
What went wrong?
Imagine this scenario:

Create a virtual environment where you have ledger plugin installed.
Create an account in the ledger plugin named "main"
Create a separate virtual environment where you have the trezor plugin installed (and not the ledger)
Create an accounts in the trezor plugin also named "main"
Now, install the ledger plugin....

Notice the following:

You now have two accounts with the same alias
When you load this account, you get the first one it finds.

How can it be fixed?
the following would help:

Have a way to rename account aliases
Define .ape/plugin directory to specifcy it is for accounts and be smarter about checking for already-used aliases
Warn when installing a plugin that already has accounts with the same alias installed

Yes, I think all account plugins should be checking against the global aliases list before adding, probably doesn't have that behavior currently which is the problem here.

It does do this, however aliases with missing plugins don't checked, so it just needs to adjust to check for those somehow


How to fetch SpotBugs Report in JSON format?

I've been using spotBugs plugin in a gradle project that am currently working on. I just wanted to know if i wanted to fetch the report in JSON format instead of XML or HTML, how can I do so?

JSON format is not supported by SpotBugs core. Only SARIF, Emacs, xdoc, text, XML, and HTML are supported.
You can convert these format into JSON by yourself, or submit a PR to http://github.com/spotbugs/spotbugs to implement.


choose the best default message_size

We need experiment to confirm whether we should change message_size to 40M.

turns out 10M is better in benchmark (see internal doc)


Built app doesn't open on MacOs

I had worked on an app that worked fine with the npm run start command. I decided to build the app but trying to open the built app fails.
I reverted to the default code here in this repo and did a rebuilt and that didn't work either:

A sample from console:

Sorry for the late response.
I reproduced the issue but I get a different error info. This is a py2app issue and it looks like security model has changed in Big Sur. Switching to pyinstaller might help too.
assessment denied for .app
com.apple.message.domain: com.apple.security.assessment.outcome2
com.apple.message.signature2: bundle:org.pythonmac.unspecified.index
com.apple.message.signature3: .app
com.apple.message.signature5: 0.0.0
com.apple.message.signature4: 1
com.apple.message.signature: denied:no usable signature
SenderMachUUID: 818DB070-4938-3106-9784-559DA9C41D40

Does this apply to all pywebview apps on macOS or just this react boilerplate? Does pywebview still work on macOS? Thanks for all your great work.

I revisited this issue in Ventura and after fixing build-macos.py, the executable produced by npm run build  works with no problems.


Update CODEOWNERS

changed codeowners to user id

Hi @kirikou001 Please use this template to create your own and change the codeowner in that repo.
You can create your GitHub repository based on this template by clicking on the Use this template button in the data_engineering_project_template repository.


Docs adding

Hi! Write here, please, that it is about incoming requests, not outgoing https://skpy.t.allofti.me/reference/api.html#skpy.user.SkypeContacts.requests
And can you explain me how to understand, was contact accepted my outgoing request? Are any better ways, than check presence of greeting message in conversation?

it is about incoming requests, not outgoing

There is no list of outgoing requests -- they are effectively fire-and-forget, and you can't accept/reject your own invite.

was contact accepted my outgoing request

Skype doesn't expose that directly -- if you can see the acceptance in the chat's message history then that's probably your best indicator.


DIsabled emmet

Issue Type: Bug
This cause problems
Extension version: 1.20.0
VS Code version: Code 1.59.1 (3866c3553be8b268c8a7f8c0482c0c0177aa8bfa, 2021-08-19T11:56:46.957Z)
OS version: Windows_NT x64 10.0.18362
Restricted Mode: No

Please provide more information.

HI
I've been learning of vs code, html and css only at this stage.  For some reason, I no longer have emmet.  I'm not an IT person.  I rang Microsoft who refused to help because, well, vs code is free and i guess they couldn't care less otherwise.  Anyone out there with a simple solution?  thanks, Mark


Organisational Page - KPIs [S]

Summary:
As a DHO user I would like to see an overview page about the Hypha Organization with links to organisational pages (e.g. treasury, archetypes, all projects, etc...) in order to understand the organisation better and navigate to pages with more info.
Description:
old URL:
new URL:
/organization
Acceptance Criteria:
KPIS: leades to /search result page with respective filter activated

[x] Active Assignments
[x] Active Quests
[x] Recent Payouts
[x] Active Badges
[x] Recent Strategies (separate story https://github.com/hypha-dao/dho-web-client/issues/625)

Ressources:
Attachement:
https://docs.google.com/document/d/1KHC_6Cha8MC2NMKDV6XRXKuZGS7kPdVGuLtF_kSYvbU/edit
https://xd.adobe.com/view/a31415be-a724-49ad-8070-1a7d67dd6880-f647/screen/d4abf3d4-9283-4877-8d6d-8a80653bd50c?fullscreen
https://xd.adobe.com/view/d802317c-bf4d-4084-a77e-b6c2d046d49c-8d51/

The Kpis of this page should have the same design that home page kpis, right?

@jmgayosso hide Quest and Policy Widget

@jmgayosso hide Quest and Policy Widget

Done!

@jmgayosso is it on staging yet?

what do you mean? I will push a new version with all my changes today later, I will let you know

@jmgayosso is it on staging yet?

what do you mean? I will push a new version with all my changes today later, I will let you know

yes perfect, let me know when its done (today or tomorrow)


How to play video with another link after call method setUp ???

When i call setUp again with another link can't play new video. How to fix it ?

use startVideo() to start video after setUp()


Install requirements.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 78.50%. Comparing base (457c90c) to head (f7ce50a).

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #48   +/-   ##
=======================================
  Coverage   78.50%   78.50%
=======================================
  Files          13       13
  Lines        1070     1070
=======================================
  Hits          840      840
  Misses        230      230

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


add user cut callbacks

Separated from #3

@mlubin, wanna write some tests for this? :)

User cuts are very hard to test since by definition they should not affect the optimal solution...
JuMP's tests are here: https://github.com/JuliaOpt/JuMP.jl/blob/93b870e3d7b3eb6c8995993921a8d3466453f9e3/test/callback.jl#L109

Maybe the admipex4 of cplex is a good test?

The license there is sketchy, not sure we can include a translation of it in the repository.

Closed. Should be done in SCIP.jl directly, instead.


comments

hi!
it doesn't parse comments, right? when there're '//' symbols in a file, everything goes silent

Yes, I encountered this issue this morning as well.
Try to reinstall it and it should have been fixed.

yep, it works now. thanks! great stuff


Compiler warning fix

This PR fixes several compiler warning in order to reduce logspam.
The compiler was complaining about unused variables, this was fixed by removing said variable.
The compiler was frequently yelling about uninitialized structs, this was fixed by refactoring some code and explicitly filling the struct using memset.
The compiler complained about unsigned comparison, the integer that was being used was changed to a size_t.
Some whitespace issues were fixed.
The compiler complained about unknown characters in a regex, this is fixed by using a raw string for the regex.
Part of Lokaverkefni in Rafmyntir  along with PRs: #74 #75 #76
HI username: hrs70

These look good, the windows crosspile failed on an unrelated issue.

This seems useful.
Can someone please check the conflicts?

This  seems like a very useful fix - the errors were a bit overwhelming...
someone needs to fix the conflicts so we can merge this!


Start on boot

All restic rest-server can be started via the systemd target
rest-servert.target.
When adding 'default.target' to the WantedBy option in the [Install]
section, all restic rest-server services should be started on boot.
To allow the service units file to start on boot, they need to be
enabled. If the role variable restic_rest_target_enable is set to 'true'
the service unit files get enabled.
Closes: donat-b#7

Thanks!


Handle emoji / unicode

Similar to https://github.com/squidfunk/mkdocs-material/issues/5126, certain emoji lead to the error lxml.etree.ParserError: Document is empty. This escapes them so to avoid that error.

Hrm. Actually, it seems this breaks how newlines are handled, leading to rendering of literal \n sequences.


Server side search to accept "flexible" query format like when using data-source attribute

Hi, I would like to use server side search but I just can't figure out how to make it to accept "flexible" query like when using data-source attribute.
Docs in collection:
```javascript
{ _id: "jK2hcF4nhvDTLz2kk", name: "Queens Gravity Thunder Thumb" },
{ _id: "vca85Q6Hm65G52Xpb", name: "Queens City Thunder Thor" },
{ _id: "mGyRxhZFFshdeubve", name: "Queens Soldier Thunder Trie"}
```
:: data-source attribute
Query:
`queens thun`
or
`quee th`
Search result:
Queens City Thunder Thor
Queens Gravity Thunder Thumb
Queens Soldier Thunder Trie

:: server side search
Query:
`queens thun`
Search result:
nil
Below code snippet is taken from another package but it is still not as great as data-source attribute.
var parts = query.trim().split(/[ \-\:]+/);
var regex = new RegExp("(" + parts.join('|') + ")", "ig");

Would it be possible to have server side search method to accept query like data-source attribute? If it's possible, please kindly share the solution. Thank you!

@kyooriouskoala I think you could try to reuse code of bloodhound suggestion engine taken from typeahead.js. It should work in server-side environment. Also it is possible to expose search function within the package leveraging bloodhound suggestion engine that could run anywhere on client or server environments.

@kyooriouskoala I've just checked that your approach with regexp should work in chrome console with the code:
var names = ["Queens Gravity Thunder Thumb", "Queens City Thunder Thor", "Queens Soldier Thunder Trie"]
var re = new RegExp("queens|th", "ig")
var result = names.filter(function(s){ return r.test(s) })

which produces the expected output.
I guess there is some bug somewhere in meteor mongo js module since such simple regexp must work in mongodb.

Hi @sergeyt ,
The regexp does work in outputting that three results but it's not sorted smartly like what bloodhound would output.
If you notice the mentioned results with data-source attribute/bloodhound, they are sorted alphabetically - which is good. However, what makes it great is that it also rank the results that have most matches and put them on top.
Further example below.
:: data-source attribute/bloodhound
Query:
`queens thun trie`
Search result:
Queens Soldier Thunder Trie
:: server side search
RegExp:
```javascript
var parts = query.trim().split(/[ \-\:]+/);
var regex = new RegExp("(" + parts.join('|') + ")", "ig");
```
Query:
`queens thun trie`
Search results:
Queens City Thunder Thor
Queens Gravity Thunder Thumb
Queens Soldier Thunder Trie

I've taken a look at the bloodhound doc that you suggested but I'm still a novice when it comes to javascript in general. Therefore, I could only do trial and error in a noob way.
Could you perhaps provide code example of what could have worked, in your opinion, to implement bloodhound for the server side search, please? Thanks!

@kyooriouskoala the example usage of bloodhound is in index.js (see make_bloodhound function), note you need to take and add bloodhound.js into your application. Also note use of bloodhound is not suitable if you search in big collection.

Thanks for the hint. I'll check out the [index.js] (https://github.com/sergeyt/meteor-typeahead/blob/master/index.js#L370).

Also note use of bloodhound is not suitable if you search in big collection.

Do you happen to know roughly up to how many docs in a collection that is still alright for bloodhound to perform well?
I'm looking to search about 2 to 3k of docs, at the very least.

@kyooriouskoala 2-3k could be quite big if you have a lot search requests, 10-50 milliseconds per request should be good enough.


Improve entry:get_offset with TextEdit.range

Currently, nvim-cmp determines the offset per each entry.
If the entry has a TextEdit, nvim-cmp will chose TextEdit.range.start as the offset position.
But I think it should be improved like this.
Current line: import { G| }
KeywordPattern: \k\+
TextEdit: start=[0, 0], end=[0, 12], text=import { GetServerSideProps } from 'next';

What is the improvement? What should be the new offset?

OLD
import { G| }
^
TextEdit.range.start & offset

NEW
import { G| }
^        ^
|        keyword offset & offset
TextEdit.range.start & offset

I'm calling it the shrinking TextEdit range.
Some LSP server returns the fat TextEdit range.
For example, the above situation does not need to specify the import { as the replacement range and we can detect it is not needed.

Is it worth saving some text replacement operations by adding more complexity?
I think you should leave that to the language server. cmp is already a very complex plugin (yet AMAZING:)

The offset handling is the core value of nvim-cmp for me.
This is the most complicated part of implementing an LSP-related completion engine in vim.
As far as I know, only coc.nvim and nvim-cmp do this properly. I think we should improve usability and strictness.
google translated

The entry:get_offset will be used to determine the completion menu position.
We should choose the entry offset as nearby the keyword offset as much as possible for usability.

If several different entries will have different values returned from entry:get_offset would the menu bounce around as you cycle between those entries?

No. The menu woudn't bounce. The offset will be leftmost value.


Licensing Issue

Hey :)
i think directly using the finStreamer from yahoo is problematic because of copyright reasons. Its rather easy to reverse engineer the code though. After i used this library initially, i independently realized, that yahoo uses websockets and built my own (naive) implementation. I just need the current pricedata so my PricingData is rather simple, but it can easily be extended.
I think just reverse engineering the datastructure and building it yourself (like i did) is certainly the safer approach :)
const WebSocket = require("ws");
const { Type, Field } = require("protobufjs");

var PricingData = new Type("PricingData")
  .add(new Field("symbol", 1, "string"))
  .add(new Field("price", 2, "float"));

module.exports = class StockTicker {
  #client = null;
  #updateCallback = null;
  #symbols = [];

  constructor(symbols, updateCallback) {
    this.symbols = symbols;
    this.#updateCallback = updateCallback;
  }

  get symbols() {
    return this.#symbols;
  }

  set symbols(newSymbols) {
    if (Array.isArray(newSymbols)) {
      this.#symbols = newSymbols;
      if (this.#client) {
        this.#sendSymbolMessage();
      }
    } else {
      throw new TypeError("stocks needs to be an array of strings");
    }
  }

  #sendSymbolMessage() {
    console.log("Requesting symbols", this.symbols);
    this.#client.send(JSON.stringify({ subscribe: this.symbols }));
  }

  #onMessage(data) {
    const binary = Buffer.from(data, "base64");
    try {
      const msg = PricingData.decode(binary);
      const msgObj = PricingData.toObject(msg, { longs: Number });
      console.log(msgObj);

      if (this.#updateCallback) {
        this.#updateCallback(msgObj);
      }
    } catch (e) {
      console.log(e);
    }
  }

  activate() {
    if (this.#client) {
      console.warn("Already Active");
      return;
    }
    this.#client = new WebSocket("wss://streamer.finance.yahoo.com/");
    this.#client.once("open", () => {
      console.log("connected to yahoo finance socket");
      this.#sendSymbolMessage();
    });

    this.#client.on("message", this.#onMessage.bind(this));
  }
  deactivate() {
    if (!this.#client) {
      console.warn("Already Inactive");
      return;
    }
    this.#client.terminate();
    this.#client = null;
  }
};

Great call thanks! Really like your implementation, and especially the "activate" and "deactivate" features. Could be a great thing to have moving forwards!


asset_hash and asset_host no longer play together

I remember fixing this bug years ago :stuck_out_tongue_winking_eye:. It's back! And unfortunately because of #1716 I didn't notice it until I'd pushed my site...
Repro should be pretty easy - enable both :asset_hash and :asset_host, and the hash won't be appended to assets (because they already have the host on them). It doesn't seem to matter whether you activate them in one order or another.

Whoops, I'm wrong about this one - it's really #1721 that's getting me.


feat: add crypto utils, template functions and ibm vpc certificate

Signed-off-by: Mehant Kammakomati<EMAIL_ADDRESS>

@ashokponkumar I have shifted it to https://github.com/konveyor/move2kube-transformers/pull/35/files#diff-f555fc879e485800f83a901bdaab484b50bde2f35425c8b8377ba880354400afR16-R17 and tested it!


Bug when we load plan after save it in JLD2 format

Hi,
I noticed an issue when I tried to save plan in JLD2 and reload it after (please see the following snapshot).

Look at this discussion: https://discourse.julialang.org/t/a-future-for-jld2/42958/37
The future of JLD2 is uncertain. Do you still think that using JLD2 is a good idea?

Yes I also see the same concern before but the question is which format we should use ? Because it seems all pre-existing format have some limitation and it seems JLD2 is the most faster:  https://discourse.julialang.org/t/a-future-for-jld2/42958

Sorry for reviving this thread. Would BSON.jl work for your application? It also save closures/anonymous functions. Some idiosyncrasies:

For nested arrays, BSON.jl saves it as an array of datatype Any's. You'll need to do convert() yourself when loading from such a BSON file.

If the anonymous function in a BSON file contains a package, then the user who loads the BSON file should have the same version of that package loaded in scope. Example: If a BSON file has a variable for f = xx->MyPack.myfunc(xx)+3, then when loading the file, the user must have done import MyPack, whereMyPack must be the same version as the MyPack for f when f was saved.

I'm not sure that we'll ever support JLD2 or any other format for plans. As of f2d962022c69ddc3b1b9e9b4b5aacfff140fc4d4 we now have importplan and exportplan, which use a text format so that plans with the same model and range can also be compared visually with plain diff.


El 522 internal route

Link to the Jira ticket
Use internal routing for CCQ connections to CFEP to avoid slowness that is likely caused by modesc
Corresponding PR in cloud-platform-env has been merged
This points CCQ UAT and Staging deployments to CFEP internal routing.
Describe what you did and why.
Checklist
Before you ask people to review this PR:
Tests and rubocop should be passing
Github should not be reporting conflicts; you should have recently run git rebase main.
There should be no unnecessary whitespace changes. These make diffs harder to read and conflicts more likely.
The PR description should say what you changed and why, with a link to the JIRA story.
You should have looked at the diff against main and ensured that nothing unexpected is included in your changes.
You should have checked that the commit messages say why the change was made.

What's in the encrypted files:
staging:

host:http://check-financial-eligibility-partner-check-financial-partner.check-financial-eligibility-partner-staging.svc.cluster.local

uat:

host: http://check-financial-eligibility-partner-check-financial-partner.check-financial-eligibility-partner-staging.svc.cluster.local


Public API get agent configurations view filter

Description
This PR adds support for filtering agent configurations in the public API.
This feature is needed to display favorite assistants in the extension without having to load all assistants and filter them on the frontend.
Key changes:

Added "favorites" as a new valid view option in the agent configurations API
Updated the backend logic to filter configurations based on user's favorite state
Added proper authentication checks since favorites view requires a user context
Updated type definitions to include the new "favorites" view type

Risk
Low risk changes as this is:

Adding a new filtering option without modifying existing behavior
Easy to rollback if needed

Deploy Plan
Deploy front.
Then I'll add the option on the SDK, then use it on the extension.

On web we load them all in AssistantBrowser and we filter them for each tab:https://github.com/dust-tt/dust/blob/main/front/components/assistant/AssistantBrowser.tsx#L99

Roger that


Add ability for sub_statements

Sometimes one large statement may not be nicest to maintain so a sub_statement that can
be executed alongside the statement, and execute against each result in the result set.
For example, you may wish to annotate all records with content from another table.
this would be a possible syntax for declaring a sub statement and setting the results within a specific field named TARGET_FIELD.
sub_statement => [TARGET_FIELD, SQL_STATEMENT]

example: A database where there are separate contacts and numbers tables for storing contact information and their phone numbers.
jdbc {
   statement => "SELECT contact_id, first_name, last_name from contacts"
   sub_statement => ["phone_numbers", "SELECT number from numbers where id=:contact_id"]
}

this would create an event with the following fields
{ "contact_id" => ...,
  "first_name" => ...,
  "last_name" => ...,
  "phone_numbers" => [ ..., ...]
}

And if you need to define a Sub_Sub_Statement? Or the store information are in different databases?


Update pre_redeploy.sh

add --force into the ansible-galaxy cmd to make sure we have the roles we need, and avoid roles already exist error.

recheck_cit_trusty_leapfrogupgrade_swift

Depends on https://github.com/rcbops/rpc-openstack/pull/2411

LGTM

Depends on https://github.com/rcbops/rpc-openstack/pull/2414

recheck_cit_trusty_leapfrogupgrade_swift

recheck_cit_artifact_xenial_apt

recheck_cit_trusty_leapfrogupgrade_swift

Finally passed!


Building on arm

So I was hoping I could get this up and running on a machine like this:
Linux LightsOut 3.10.38-1-ARCH #1 PREEMPT Sun Apr 27 13:01:46 MDT 2014 armv6l GNU/Linux

but on running ./build, I got the following message:
go build github.com/coreos/etcd: signal: killed

nothing more, nothing less.  I tried coaxing something a bit more helpful by adding some flags to the build file, but still not much:
[andrew@LightsOut etcd]$ ./build
WORK=/tmp/go-build140987693
github.com/coreos/etcd
mkdir -p $WORK/github.com/coreos/etcd/_obj/
mkdir -p $WORK/github.com/coreos/etcd/_obj/exe/
cd /home/andrew/AUR/etcd/src/etcd/src/github.com/coreos/etcd
/usr/lib/go/pkg/tool/linux_arm/5g -o $WORK/github.com/coreos/etcd/_obj/_go_.5 -p github.com/coreos/etcd -complete -D _/home/andrew/AUR/etcd/src/etcd/src/github.com/coreos/etcd -I $WORK -I /home/andrew/AUR/etcd/src/etcd/pkg/linux_arm ./etcd.go ./profile.go
/usr/lib/go/pkg/tool/linux_arm/pack grcP $WORK $WORK/github.com/coreos/etcd.a $WORK/github.com/coreos/etcd/_obj/_go_.5
cd .
/usr/lib/go/pkg/tool/linux_arm/5l -o $WORK/github.com/coreos/etcd/_obj/exe/a.out -L $WORK -L /home/andrew/AUR/etcd/src/etcd/pkg/linux_arm $WORK/github.com/coreos/etcd.a
go build github.com/coreos/etcd: signal: killed

Any thoughts?

@muff1nman  how did you build it? Do you have a package or could you please post some instructions? I am trying to build for armhf, no luck so far.

@AlexeyRaga All I remember is cross compiling it on my x86 machine using the go cross build options and then copying the executable over to the rpi.


chore(release): v1.5.3 🎉

:robot: I have created a release beep boop
1.5.3 (2024-07-27)
Bug Fixes

practs: bump practs to latest best (662975f)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/ehmpathy/sql-schema-control/releases/tag/v1.5.3 :sunflower:


Standard ESH footer

Include:

ESH link
Citation
GitHub repo link
OpenCollective donation link
Copyright/license
Sources attribution
Legal blurb link (GDPR compliance, terms of use)

Should we add ESH logo in this list? Or should that be at the top/header

Great idea!


Cannot find v8 debug node-v44-win32-x64\debug.node

Hello I have:
node 0.12.7
node-inspector 0.11.2
npm 2.11.3
i try to debug the boiler plate of electron
I launch $node-inspector, and go on the page localhost:8080?ws=localhost:8080?port=5858
Then i get this error message (before to start electron):
Error: Cannot find module 'c:\Users\adrien\AppData\Roaming\npm\node_modules\node-inspector\node_modules\v8-debug\build\debug\v0.5.0\node-v44-win32-x64\debug.node'
thanks for your help

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/25014149-cannot-find-v8-debug-node-v44-win32-x64-debug-node?utm_campaign=plugin&utm_content=tracker%2F195817&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F195817&utm_medium=issues&utm_source=github).

Please read #649
You can try npm i node-inspector --target=1.6.3
Where 1.6.3 is current version of io.js which used in electron.
But I think this will not be helpful, because there exists unresolved bug in electron or in node.
Anyway keep in mind what each time when you change node major version you need to reinstall node-inspector, because there are some native dependencies (v8-debug, v8-profiler) which needs to be rebuilded.
There is a partially hack to avoid this situation - before each reinstallation, you can save build dir of v8-debud in other place and paste it after reinstallation. This way you'll collect in build folder sources for all expected versions. So, if you'll change node version like 0.10.* -> 0.12.* -> 0.10.* you need to reinstall node-inspector only once.

npm i node-inspector --target=1.6.3 install v43 instead of v44.


Multi headers

How do I use custom Multi headers?

Multi Header support is not there you have to use 2 instances on userefuzz
I will add it when I will have time
Thanks for suggesting

this code:
cat payload | while read payload;do userefuzz.py -l gg -w 2 -o urls -p http://<IP_ADDRESS>:8080 -ch 'X-Forwarded-For' -i $payload -v -t; done
help me

with add
header = {'X-Forwarded-For':args.inject ,'User-Agent':args.inject , 'Referer': args.inject , 'X-Forwarded-For':args.inject , 'UseReFuzz':args.message }


Discussion: Circular motion

Express your opinions on circular motion in physme. This includes torque, angular velocity and such.
Torque would be calculated only for semikinematic bodies and using my made up physics and maths, just like the rest of the engine. The only goal for it would be to look and feel satisfying.
On one side I'm against this, because this would complicate the engine by a lot, but as long as we're able to keep the public interface the same simple thing, it should be fine maybe? I don't know?. That is why I'm asking you.
If circular motion is ever implemented, it should be a toggle-able per body.

Closing. After realizing how hard it is to introduce circular motion, I decided it would break the spirit of this simple engine.


DataChannel.readLoop goroutine leak

Your environment.

Version: Release or SHA
Browser: include version
Other Information - stacktraces, related issues, suggestions how to fix, links for us to have context

What did you do?

I got goroutine leak from our system which is based on ion-sfu.
(dlv) bt
0  0x000000000043cc65 in runtime.gopark
   at /__w/_tool/go/1.16.4/x64/src/runtime/proc.go:337
1  0x000000000046fe38 in runtime.goparkunlock
   at /__w/_tool/go/1.16.4/x64/src/runtime/proc.go:342
2  0x000000000046fe38 in sync.runtime_notifyListWait
   at /__w/_tool/go/1.16.4/x64/src/runtime/sema.go:513
3  0x000000000047b879 in sync.(*Cond).Wait
   at /__w/_tool/go/1.16.4/x64/src/sync/cond.go:56
4  0x000000000071fd56 in github.com/pion/sctp.(*Stream).ReadSCTP
   at /github/home/go/pkg/mod/github.com/pion/sctp@v1.8.2/stream.go:108
5  0x00000000007271bd in github.com/pion/datachannel.(*DataChannel).ReadDataChannel
   at /github/home/go/pkg/mod/github.com/pion/datachannel@v1.5.2/datachannel.go:186
6  0x00000000007ee3da in git.dev.hpcnt.com/hyperconnect/pion-webrtc/v3.(*DataChannel).readLoop
   at /github/home/go/pkg/mod/git.dev.hpcnt.com/hyperconnect/pion-webrtc/v3@v3.1.2-hpcnt.release/datachannel.go:324

As you can see, Stream.ReadSCTP hangs while waiting for signal at Stream.readNotifier.
at that moment association and dataChannel have been already closed.
(dlv) p s.association.readLoopCloseCh
chan struct {} {
	qcount: 0,
	dataqsiz: 0,
	buf: *[0]struct struct {} [],
	elemsize: 0,
	closed: 1,
	elemtype: *runtime._type {size: 0, ptrdata: 0, hash: 670477339, tflag: tflagExtraStar|tflagRegularMemory (10), align: 1, fieldAlign: 1, kind: 25, equal: runtime.memequal0, gcdata: *0, str: 56587, ptrToThis: 543648},
	sendx: 0,
	recvx: 0,
	recvq: waitq<struct {}> {
		first: *sudog<struct {}> nil,
		last: *sudog<struct {}> nil,},
	sendq: waitq<struct {}> {
		first: *sudog<struct {}> nil,
		last: *sudog<struct {}> nil,},
	lock: runtime.mutex {
		lockRankStruct: runtime.lockRankStruct {},
		key: 0,},}
(dlv) p s.association.closeWriteLoopCh
chan struct {} {
	qcount: 0,
	dataqsiz: 0,
	buf: *[0]struct struct {} [],
	elemsize: 0,
	closed: 1,
	elemtype: *runtime._type {size: 0, ptrdata: 0, hash: 670477339, tflag: tflagExtraStar|tflagRegularMemory (10), align: 1, fieldAlign: 1, kind: 25, equal: runtime.memequal0, gcdata: *0, str: 56587, ptrToThis: 543648},
	sendx: 0,
	recvx: 0,
	recvq: waitq<struct {}> {
		first: *sudog<struct {}> nil,
		last: *sudog<struct {}> nil,},
	sendq: waitq<struct {}> {
		first: *sudog<struct {}> nil,
		last: *sudog<struct {}> nil,},
	lock: runtime.mutex {
		lockRankStruct: runtime.lockRankStruct {},
		key: 0,},}
(dlv) p s.association.streams
map[uint16]*github.com/pion/sctp.Stream [
	0: *{
		association: *(*"github.com/pion/sctp.Association")(0xc0431f9500),
		lock: (*sync.RWMutex)(0xc01a279e08),
		streamIdentifier: 0,
		defaultPayloadType: PayloadTypeWebRTCBinary (53),
		reassemblyQueue: *(*"github.com/pion/sctp.reassemblyQueue")(0xc072a4a840),
		sequenceNumber: 1,
		readNotifier: *(*sync.Cond)(0xc04c6bea80),
		readErr: error nil,
		writeErr: error nil,
		unordered: false,
		reliabilityType: 0,
		reliabilityValue: 0,
		bufferedAmount: 19,
		bufferedAmountLow: 0,
		onBufferedAmountLow: nil,
		log: github.com/pion/logging.LeveledLogger(*github.com/pion/logging.DefaultLeveledLogger) ...,
		name: "0:0xc0431f9500",},
]

I presume while SCTPTransport.Start is in progress, Association.readLoop is closed and
Association.unregisterStream which is defer action does not affect if Association.OpenStream not called yet.
I don't know exactly what causes this. I think may be It happens when peerConnection closed while data channel connection is being established.
What did you expect?
What happened?

@lenaky Does https://github.com/pion/sctp/pull/236 solve your issue?

@mafredri sorry for late. I didn't fix this issue and I'll let u know ur PR work for me. thanks!

@mafredri On behalf of @lenaky, I apply your PR to check this issue.
It seems that the issue does not reappear with some modification which I left in yours.
Thanks for your work!


feat: improve PHP queries

excludes the braces for all the inside queries
add query for if statements
add query for plain for loops

I have one addition to make which I forgot

We can also introduce textobjects for call (I use it for some days) :
; call

(function_call_expression) @call.outer

(member_call_expression) @call.outer

(function_call_expression
    arguments: (arguments . "(" . (_) @_start (_)? @_end . ")"
    (#make-range! "call.inner" @_start @_end)))

(member_call_expression
    arguments: (arguments . "(" . (_) @_start (_)? @_end . ")"
    (#make-range! "call.inner" @_start @_end)))

@gbprod i think you can create a follow up PR.
Thank you @laytan !

Thank you so much for adding this!


Docs/yewon-choi

WEEK 1-1 [9.3] It’s the End of Computer Programming as We Know It. (And I Feel Fine.)
📍 Content URL

https://www.nytimes.com/2023/06/02/opinion/ai-coding.html

💭 Reasons for choosing this content

I chose this content because I was curious about the perspective of Silicon Valley engineers on the future of programming and the role of artificial intelligence.

🌟 New expressions learned from the content

to rival : 경쟁하다
will be obsolete : 더 이상 사용되지 않을 것이다
out of step with the future : 미래에 뒤떨어진

WEEK 1-2 [9.5] South Korean teachers hold mass protests after suicide highlights pressures from parents
📍 Content URL

https://edition.cnn.com/2023/09/05/asia/south-korea-teachers-protest-suicide-intl-hnk/index.html

💭 Reasons for choosing this content

I chose this content because I was curious to understand how foreigners perceive such a significant social issue in South Korea and what perspectives they might have on it.

🌟 New expressions learned from the content

its grueling education system : 지독한 (기진맥진하게 하는) 교육 시스템
Private cram schools : 학원
Unfairly targeted : 불공평하게 대상화됨 (= 누군가가 불공정하게 대우받거나 부정적인 대우를 받는 상황을 묘사)

WEEK 1-3 [9.6] NYC now enforcing Airbnb and short-term rental restrictions — what it means for customers
📍 Content URL : https://edition.cnn.com/2023/09/05/asia/south-korea-teachers-protest-suicide-intl-hnk/index.html
💭 Reasons for choosing this content : I chose this content because I want to perceive the effects of stricter rental regulations in New York City from the perspective of a foreigner who enjoys traveling.
🌟 New expressions learned from the content

De facto : 사실상 => De facto ban : 사실상 금지
Financial windfall: 금전적 이익
Outer boroughs: 맨하탄구를 제외한 4개의 구 (외곽)

WEEK 1-4 [9.7] English Phrases for Daily Conversation (Practice Small Talk!)
📍 Content URL

htps://www.youtube.com/watch?v=0I12mA0EejE

💭 Reasons for choosing this content

I chose this content because I want to learn more about natural Englilsh expressions for daily conversation.

🌟 New expressions learned from the content

I've been keeping busy: 꽤 바쁘게 지냈어
under the pump: 어떤 일을 하느라 부담이 됐다/힘들었다
Have you got much planned for the weekend?: 이번주 주말에 계획 많이 세웠어?

WEEK 1-5 [9.8] Why beautiful sadness — in music, in art — evokes a special pleasure
📍 Content URL : https://www.youtube.com/watch?v=0I12mA0EejE
💭 Reasons for choosing this content : I chose this content because article title was interesting.
🌟 New expressions learned from the content

Eliciting empathy: 공감을 유도하는
Vicarious sadness: 대리적인 슬픔
Solace: 위로


Add AWS CloudFront Instructions for link branding

Expected content
On this page, I think there should be a section for using the AWS CloudFront CDN. https://sendgrid.com/docs/ui/sending-email/content-delivery-networks/
The steps to configure cloudFront are not to different to the other CDNs listed here, and there are already Stack Overflow posts and issues in this repo mentioning the required setup steps. E.g.

https://stackoverflow.com/questions/34291020/aws-cloudfront-to-host-ssl-and-forward-on-to-sendgrid-not-working
https://github.com/sendgrid/docs/issues/3384#issuecomment-428794843

Actual content
Only showing instructions for CloudFlare, Fastly and KeyCDN
Link to page:
https://sendgrid.com/docs/ui/sending-email/content-delivery-networks/

Any news on this? :)

We also wanted this

Anyone know how to set up link branding with AWS CloudFront?

I was able to set up branded domain tracking with SSL support through AWS CloudFront.
As described here, you need to white list host headers in Cache Based on Selected Request Headers. I just selected All.
Since tracking clicks carry query string parameters, it's also important to forward them in Behavior under Query String Forwarding and Caching option. I also selected Forward All for simplicity.
In this case CloudFront won't cache any requests but will act simply as a SSL proxy.
Distribution setup

Origin setup

Behavior setup

Any updates on this ?

@markhilton I've "copied" your setup but the certificate is not valid (sendgrid.net) when I try to access the branded link. Could you help please?

@markhilton You've used the Origin Protocol Policy as HTTP. Shouldn't it be HTTPS?

I still need to add more doc around configuration [when we need to create dns record, and certificate, and how to pass those], and then test it on OE Test


How could I parse different Index file formats?

Hello,I'm a beginner of pinot.I found segment is the smallest unit when data and index files flushing to disk. I use SegmentDumpTool class to parse one segment's v3 directory.

And I found metadata.properties file contains basic metrics about table fields. index_map file contains offset and size of per field's  index in columns.psf file, like field dictionary and forward_index. However, where are other indexes stored, like inverted index ,range index, bloom filter, etc?
In my table config, I configured invertedIndexColumns, sortedColumn , bloomFilterColumns. But I only found dictionary and forward_index in index_map and columns.psf.
Here is my table config. Would you mind explain pinot file formats a little bit? Thanks a lot.
{
  "OFFLINE": {
    "tableName": "transcripts_OFFLINE",
    "tableType": "OFFLINE",
    "segmentsConfig": {
      "timeType": "MILLISECONDS",
      "schemaName": "transcripts",
      "retentionTimeUnit": "HOURS",
      "retentionTimeValue": "2",
      "replication": "1",
      "timeColumnName": "timestampInEpoch",
      "allowNullTimeValue": false,
      "replicaGroupStrategyConfig": {
        "partitionColumn": "studentID",
        "numInstancesPerPartition": 2
      }
    },
    "tenants": {
      "broker": "DefaultTenant",
      "server": "DefaultTenant"
    },
    "tableIndexConfig": {
      "invertedIndexColumns": [
        "lastName"
      ],
      "sortedColumn": [
        "firstName"
      ],
      "bloomFilterColumns": [
        "score"
      ],
      "loadMode": "MMAP",
      "enableDefaultStarTree": false,
      "enableDynamicStarTreeCreation": false,
      "segmentPartitionConfig": {
        "columnPartitionMap": {
          "studentID": {
            "functionName": "HashCode",
            "numPartitions": 4
          }
        }
      },
      "aggregateMetrics": false,
      "nullHandlingEnabled": false,
      "rangeIndexColumns": [
        "score"
      ],
      "rangeIndexVersion": 1,
      "autoGeneratedInvertedIndex": false,
      "createInvertedIndexDuringSegmentGeneration": false
    },
    "metadata": {
      "customConfigs": {}
    },
    "task": {
      "taskTypeConfigsMap": {
        "MergeRollupTask": {
          "1hour.mergeType": "rollup",
          "1hour.bucketTimePeriod": "1h",
          "1hour.bufferTimePeriod": "3h",
          "1hour.maxNumRecordsPerSegment": "1000000",
          "1hour.maxNumRecordsPerTask": "5000000",
          "1hour.maxNumParallelBuckets": "5",
          "1day.mergeType": "rollup",
          "1day.bucketTimePeriod": "1d",
          "1day.bufferTimePeriod": "1d",
          "1day.roundBucketTimePeriod": "1d",
          "1day.maxNumRecordsPerSegment": "1000000",
          "1day.maxNumRecordsPerTask": "5000000",
          "score.aggregationType": "sum"
        }
      }
    },
    "routing": {
      "segmentPrunerTypes": [
        "partition"
      ],
      "instanceSelectorType": "replicaGroup"
    },
    "isDimTable": false
  },
  "REALTIME": {
    "tableName": "transcripts_REALTIME",
    "tableType": "REALTIME",
    "segmentsConfig": {
      "timeType": "MILLISECONDS",
      "schemaName": "transcripts",
      "timeColumnName": "timestampInEpoch",
      "allowNullTimeValue": false,
      "replicasPerPartition": "2",
      "replicaGroupStrategyConfig": {
        "partitionColumn": "studentID",
        "numInstancesPerPartition": 2
      }
    },
    "tenants": {
      "broker": "DefaultTenant",
      "server": "DefaultTenant"
    },
    "tableIndexConfig": {
      "invertedIndexColumns": [
        "lastName"
      ],
      "streamConfigs": {
        "streamType": "kafka",
        "stream.kafka.consumer.type": "lowlevel",
        "stream.kafka.topic.name": "transcript-topic_1",
        "stream.kafka.decoder.class.name": "org.apache.pinot.plugin.stream.kafka.KafkaJSONMessageDecoder",
        "stream.kafka.consumer.factory.class.name": "org.apache.pinot.plugin.stream.kafka20.KafkaConsumerFactory",
        "stream.kafka.broker.list": "aptssd1.safe.lycc.qihoo.net:19092",
        "realtime.segment.flush.threshold.rows": "0",
        "realtime.segment.flush.threshold.time": "3m",
        "realtime.segment.flush.threshold.segment.size": "50M",
        "stream.kafka.consumer.prop.auto.offset.reset": "smallest"
      },
      "sortedColumn": [
        "firstName"
      ],
      "bloomFilterColumns": [
        "score"
      ],
      "loadMode": "MMAP",
      "enableDefaultStarTree": false,
      "enableDynamicStarTreeCreation": false,
      "segmentPartitionConfig": {
        "columnPartitionMap": {
          "studentID": {
            "functionName": "HashCode",
            "numPartitions": 4
          }
        }
      },
      "aggregateMetrics": false,
      "nullHandlingEnabled": false,
      "rangeIndexColumns": [
        "score"
      ],
      "rangeIndexVersion": 1,
      "autoGeneratedInvertedIndex": false,
      "createInvertedIndexDuringSegmentGeneration": false
    },
    "metadata": {
      "customConfigs": {}
    },
    "task": {
      "taskTypeConfigsMap": {
        "RealtimeToOfflineSegmentsTask": {
          "bucketTimePeriod": "6h",
          "bufferTimePeriod": "1d",
          "roundBucketTimePeriod": "1m",
          "mergeType": "rollup",
          "score.aggregationType": "max",
          "maxNumRecordsPerSegment": "100000"
        }
      }
    },
    "routing": {
      "segmentPrunerTypes": [
        "partition"
      ],
      "instanceSelectorType": "replicaGroup"
    },
    "instanceAssignmentConfigMap": {
      "CONSUMING": {
        "tagPoolConfig": {
          "tag": "DefaultTenant_REALTIME",
          "poolBased": false,
          "numPools": 0
        },
        "replicaGroupPartitionConfig": {
          "replicaGroupBased": true,
          "numInstances": 0,
          "numReplicaGroups": 2,
          "numInstancesPerReplicaGroup": 2,
          "numPartitions": 0,
          "numInstancesPerPartition": 0
        }
      }
    },
    "isDimTable": false
  }
}

The file structures are internal to pinot. If you can let us know what the issue is that leads you to need to "parse" these files, it will help a lot.
Thanks

By default, inverted index and bloom filter are generated on the server side when loading the segment, and that's why you won't find them if the segment is newly generated.
Sorted index will be automatically generated if all the values for a column are pre-sorted. Segment generation won't automatically re-order the records, so if the column values are not pre-sorted, sorted index won't be generated even if it is configured as sorted.

The file structures are internal to pinot. If you can let us know what the issue is that leads you to need to "parse" these files, it will help a lot.
Thanks

We want to use pinot in our program, so it's better if we know better about the pinot internal things.

The file structures are internal to pinot. If you can let us know what the issue is that leads you to need to "parse" these files, it will help a lot.
Thanks

We want to use pinot in our program, so it's better if we know better about the pinot internal things.

 These file formats can change without notice, and will not be documented.

Thanks a lot.

By default, inverted index and bloom filter are generated on the server side when loading the segment, and that's why you won't find them if the segment is newly generated. Sorted index will be automatically generated if all the values for a column are pre-sorted. Segment generation won't automatically re-order the records, so if the column values are not pre-sorted, sorted index won't be generated even if it is configured as sorted.

Thanks for your reply, it helps me a lot.


Fix the model name for UI display

UI use "." as separator in metricIds, but the model name could include "." as the part of modelId between vendor and model name, such as "authropic.claude-v2", so we have to replace "." to "/", and also add ai system before the model.

LGTM


Add cirrus-ci: eventual replacement for papr and travis

I'm waiting for a containers member to verify that this patch

/not-ok-to-test

Status:
* VM Image production Ci/CD 90% complete, 100% working and reproducible
*  Ubuntu & Fedora pass verification and unit-tests, but fail in integration-tests.
*  RHEL & CentOs pass verification, but fail in unit-tests.

/approve

This LGTM

/lgtm

/ok-to-test


Conflict between k8s.io/apimachinery and sigs.k8s.io/structured-merge-diff

After running go get -t -u ./... now getting this error, versions:
sigs.k8s.io/structured-merge-diff - v4.2.2
k8s.io/apimachinery - v0.24.3
go/pkg/mod/k8s.io/apimachinery@v0.24.3/pkg/util/managedfields/gvkparser.go:62:39: cannot use smdschema.Schema{…} (value of type "sigs.k8s.io/structured-merge-diff/v4/schema".Schema) as type *"sigs.k8s.io/structured-merge-diff/v4/schema".Schema in struct literal

Related to https://github.com/kubernetes/apimachinery/issues/144

Might also be related to https://github.com/gruntwork-io/terratest/issues/1156?


Replace correlation matrix with a bar chart

https://twitter.com/levikul09/status/1547184438492049409?s=20&t=3mDMlNBdtl5cd815hzDYog

Maybe not replace, but add. The bar chart is useful for finding the biggest correlations but not for inspecting the correlation value(s) for a particular (pair of) variable(s).


[DO NOT MERGE] Checking the travis CI

Just a quick test

Closing this without merging it as it's being addressed at #393.


Step 5 and Step 6 appear to be broken in the tutorial.

Line 142 will not compile of step 6 will not compile.
Line 135 of step 5.
itemBuilder: (_, DataSnapshot snapshot, Animation animation) {
return new ChatMessage(
snapshot: snapshot,
animation: animation
);
},
error: The argument type '(BuildContext, DataSnapshot, Animation) → ChatMessage' can't be assigned to the parameter type '(BuildContext, DataSnapshot, Animation, int) → Widget'. (argument_type_not_assignable at [clearfocussports] lib\main.dart:142)
FYI I am using community edition for flutter.
[√] Flutter (Channel beta, v0.1.5, on Microsoft Windows [Version 10.0.16299.248], locale en-US)
[√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[√] Android Studio (version 3.0)
[√] IntelliJ IDEA Community Edition (version 2017.3)
[!] IntelliJ IDEA Ultimate Edition (version 2016.3)
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
X This install is older than the minimum recommended version of 2017.1.0.
[√] Connected devices (1 available)
! Doctor found issues in 1 category.
PS C:\Users\TheBeast\IdeaProjects\clearfocussports> flutter doctor -v
[√] Flutter (Channel beta, v0.1.5, on Microsoft Windows [Version 10.0.16299.248], locale en-US)
• Flutter version 0.1.5 at E:\devTools\flutter
• Framework revision 3ea4d06340 (2 weeks ago), 2018-02-22 11:12:39 -0800
• Engine revision ead227f118
• Dart version 2.0.0-dev.28.0.flutter-0b4f01f759
[√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
• Android SDK at C:\Users\TheBeast\AppData\Local\Android\Sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-27, build-tools 27.0.3
• ANDROID_HOME = C:\Users\TheBeast\AppData\Local\Android\Sdk
• Java binary at: E:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)
[√] Android Studio (version 3.0)
• Android Studio at E:\Program Files\Android\Android Studio
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)
[√] IntelliJ IDEA Community Edition (version 2017.3)
• Flutter plugin version 22.2.2
• Dart plugin version 173.4548.30
[!] IntelliJ IDEA Ultimate Edition (version 2016.3)
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
• For information about installing plugins, see
https://flutter.io/intellij-setup/#installing-the-plugins
X This install is older than the minimum recommended version of 2017.1.0.
[√] Connected devices (1 available)
• Moto G 4 • ZY223TFZPN • android-arm • Android 7.0 (API 24)
! Doctor found issues in 1 category.

Find found fix for it. - Was missing , int index
itemBuilder: (_, DataSnapshot snapshot, Animation animation, int index ) {
return new ChatMessage(
snapshot: snapshot,
animation: animation
);
},

cc @Sfshaza

This is for the obsolete Firebase + Flutter codelab. The Chat app has been replaced by a Baby Naming vote app.  Closing.


Test Coverage and Code Complexity: TODO

Easy

[ ] Cover Authentication Process
[ ] Refactor TicketsController
[ ] Refactor and Cover SettingsController
[ ] Cover UsersController

Medium

[ ] Cover Attachment Model
[ ] Cover DailyTasksMail

Hard

[ ] Reduce complexity of KpiRepository;
[ ] Reduce complexity of next top 5 complex classes (after KpiRepository);
[ ] Clean up uncovered and unused classes / files / methods
[ ] Test coverage for the top 5 complex classes
[ ] Refactor Ticket Model

Stats

How did you get that code complexity graph? it is really really interesiting!

I have this alias:
alias unitreport='php -d xdebug.profiler_enable=On vendor/phpunit/phpunit/phpunit --coverage-html=./public/report'

Basically php -d will enable xdebug (PHP is really slow with it, so I keep it off and only enable when running coverage). vendor/phpunit/phpunit/phpunit is the actual phpunit file.
The magic happens with --coverage-html=./public/report. It will generate the HTML files inside your public/report and then you can access it on http://yourapp.domain/report

Running this I get a
Error:         No code coverage driver is available
Then it runs the test but no report created :(
Do I need to install anything extra?

You need to install PHP XDebug

It worked! really nice tool to know what to refactor first :D
I'll work with the KPIRepository it is not really hard, but have all the kpis functions there, I'll create a class for each KPI and the KPIRepository just be a kind of dispatcher

For me it's a little hard because I don't have knowledge of the mechanics yet, but I would be glad to review a refactor PR if you want.

I did a first pass, I guess it will have reduced the complexity a bit
https://github.com/BadChoice/handesk/commit/6d1dc2f386d6a0d45c33d8f8af87f31852770934

https://github.com/BadChoice/handesk/commit/21cbd6ba1fea2e8585c4907759b7576b3b10cfdc
More complexity reduced ;)


module doesn't work

when you try to insert the module into the body armor, it is not inserted

please more detail.
your minecraft version or modpack or modlist etc.
did you install mekanism: weapons?


Thoughts on possible parallel-like state?

I've used State Charts and LimboAI for a while, making different character controllers, talking just about state management/transitions parts here. I think you can implement all of your intricate ideas and make complex state machines using any of two, but let's say, for some imaginary feature parity, LimboAI is missing "Parallel State" analog.
Personally, I really like LimboAI approach a lot more (initializing transitions using code, handy delegations, BTStates as states, etc.). It's just a pleasure to work with, basically covers everything state/ai related and I don't even want to use anything else now 😊
So, will it be difficult/feasible to add maybe a new node like LimboParallelHSM? Which will updates all its immediate children in "parallel" mode (obviously just from top to bottom and if the child is LimboHSM, that hsm updates its initial state too as usual?). In this case any transitions between children are not necessary and just ignored if you define them?
Maybe I'm missing something, what do you think?

For the example, I come up with this tree (but I bet if there is such functionality users can come up with much better use cases)
Character
┖╴States LimboHSM ✔updates
  ┠╴Cutscenes LimboState
  ┖╴Gameplay LimboParallelHSM ✔updates
    ┠╴Abilities LimboHSM ✔updates
    ┃ ┠╴Off LimboState ✔updates
    ┃ ┖╴On LimboHSM
    ┃   ┠╴SomeAbility1 LimboState
    ┃   ┖╴SomeAbility2 LimboState
    ┖╴Movement LimboHSM  ✔updates
      ┠╴Idle LimboState ✔updates
      ┠╴Walk LimboState
      ┖╴InAir LimboState
In this tree character can be switched between Cutscenes (where its movement driven by animations from animation player maybe?) and Gameplay (where input is checked and you can control it).
Gameplay will be LimboParallelHSM. Abilities are off for now (and just waiting for input/enabling). Abilities are not tied to character movement (such as they are not affecting its animations/states directly, etc.), maybe one ability creates rotating rocks around character, updates the rotations and check collisions, and another could also overlay/blend different animations on top in animation tree, so it mixes with idle/walk animations nicely. So abilities are really parallel/overlayed things and character movement is fully separated and not depended on them.
I guess it can be achieved by making 2 separated LimboHSM (Abilities and Movement), but then it will need some other node to keep links and making checks? And what if I want 3 or 4 parallel states for some reason? In the example above everything sits nicely in one tree and can be controlled from the main States and its substates. I'd like such simplicity 🙂

I'd rather call it LimboParallelState - because it's not really an FSM, so this concept is more like a composition of states.
I generally like the idea, and thought about it in the past, but never came to need something like that in practice. Some API would need to change, though. For instance, LimboHSM.get_leaf_state() is not going to return a useful result with a parallel state.

@limbonaut yeah, LimboParallelState will be the best choice, it's already well-established term and matches State Charts naming too, so some users will already know how it works and what to expect from it
although, I think this name is a bit misleading too, having LimboState and LimboParallelState may imply you need to do the same thing you do with LimboState: adding a bunch of LimboParallelState under LimboHSM and expecting that those states will run in parallel now, because the name say so, while this state is actually LimboStateThatUpdatesItsChildStatesSimultaneously or something like that, but I'm just nitpicking 🥴


error[E0554]: #![feature] may not be used on the stable release channel

This error is prompted if trying to build with the stable rustc compiler. I think to bring this utility to production it should based on nightly features.

fixed with #6934ac8


The source of provider could be cached

In the context of a certain provider, the source could be cached.
https://github.com/liuchengxu/vim-clap/blob/53285926aa0050d23ebefdaf99b25e3b72b7ce83/autoload/clap/impl.vim#L21

#131


Restarts network service all the time

In my usage of the cookbook, it seems to restart the network service on every chef run. Is this expected, or is it detecting something modified in my environment? I haven't seen any evidence of what might have changed.
I'm running Amazon Linux, Chef 12 and the latest supermarket version of the cookbook.

I think I have this fixed in #51


Syntax Error in module '_apex_index'

Operating system: Mac OS X 10.11
Apex Version: 0.10.2

After deploying my function, I'm getting a cryptic syntax error:
$ apex -ldebug invoke listers --logs
   • loading functions in functions
   • loading function in functions/listers
   • inferring runtime         function=listers
   • inferred runtime          function=listers runtime=nodejs4.3
START RequestId: 4e2f582a-5385-11e6-a87f-5b54797329a9 Version: 6
Syntax error in module '_apex_index': SyntaxError
    at Module._compile (module.js:373:25)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/var/task/index.js:1:90)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
END RequestId: 4e2f582a-5385-11e6-a87f-5b54797329a9
REPORT RequestId: 4e2f582a-5385-11e6-a87f-5b54797329a9	Duration: 1.06 ms	Billed Duration: 100 ms 	Memory Size: 128 MB	Max Memory Used: 15 MB
   ⨯ Error: function response: Unexpected token {

http://apex.run/#faq's _apex_index part documents that a bit, but I would try doing apex build listers > out.zip and maybe peeking at the contents if necessary. The error should still be in your code though, js stack traces are just kinda cryptic craziness, I think the index.js:1:90 would be the one

I did that. I was testing locally and it was running dine, until I realised I was running node 6 locally. Ran inside a node 4.3 docker container and found out that destructuring is not yet implemented in 4.3, hence the syntax error. Bummer. Is it too much overhead to run babel in Lambda?

@demetriusnunes here's an example how you can use babel with apex: https://github.com/apex/apex/tree/master/_examples/babel-browserify

@juliangruber This setup based on Webpack is also really nice: https://github.com/rricard/lambda-es6-example - even has a local Lambda emulator/runner.

We decided to keep it out of core since the tool you use (babel/webpack/browserify/rollup) etc gets opinionated quick.

@demetriusnunes Definitely all for the babel + webpack example. We use that actively in Production. Interestingly enough it leads to a quicker average time as compared to an unbuilt function.
The reason being that require(...) is for the most part no longer needed thanks to webpack and we get to avoid all of those Filesystem lookups. It also means that we can use Async Await, destructuring, etc.

Had a lot of issues dealing with dependencies with both Browserify and Webpack. They just didn't work with "google-spreadsheet" npm package.
Sadly, ended up falling back to native Node 4.3 features...

I'd stick to node 4.3 too personally, compiling SS code is pretty awkward, that's not really apex's fault though, the state of js is just weird right now, people want a language which doesn't exist yet

@demetriusnunes Yeah, there's definitely weirdness related to "native" Node packages (The C based ones) right now with webpack or browserify. Some are easier than others to work around.


Switch to travis-cargo

Which should naturally deal with #7. The latter should be verified though.

Couldn't verify this works thanks to a 'still not working at all' quasi, but chances are all this will improve with 1.0 alpha.


Make quiz question options markdown

They're not right now, only the bodies are. That makes it tough to include code snippets and links and stuff. Lame

Closed by 4ad7c211553b5543f117e9846800f709bb9c2f87


Comparison to keter?

This project is interesting! How does it compare to something like Keter (https://github.com/snoyberg/keter)?

Not too familiar with Keter, but based on the README, it seems like overall, the main difference is that Keter does a lot more than Hapistrano. Some of the features that Keter has but hapistrano doesn't include:

reverse proxying
ssl support
relaunching processes that die
log file management
postgres management

I'm a bit skeptical that an application server should handle all of these items, rather than delegating them to dedicated utilities on Linux systems, but perhaps that's just because I haven't looked that closely at Keter - it could be great at all of these items and I'm really not familiar enough to judge it.
Hapistrano really takes charge of getting code to servers (efficiently, using a git cache), building,  restarting the application, and rollback. Activation of new applications is done by switching a symlink after the build is done, so it's pretty fast. All of the items in the list above are delegated to Linux utilities that are designed for that purpose (nginx for 1 and 2, Linux daemon management for 3, logrotate for 4, and whatever you want for 5 - some of our projects have used things like flyway). Hapistrano could be replaced by a 20-line shell script.
I believe that Keter deploys binaries. Hapistrano builds on the target system (and we use Stack for quick builds in most cases, but that's optional). This is a disadvantage from a security perspective since you need to keep the build utilities on the server, but an advantage in the sense that you don't have to worry about linking issues and binary format. Also, for years we haven't worried too much about development toolkits being on the server for Python and Ruby apps, so that isn't my top concern with many applications for security.
Hapistrano is basically just a simple collection of shell commands that clone a repo, build, and switch symlinks at the end of the process to activate the new application. It is modeled after Ruby's Capistrano, and steals most of its name to make this relationship clear. In contrast, (and correct me if I'm wrong), Keter seems more like a Java Jetty server.
Hapistrano is very simple, and hasn't had much development effort put into it. It is missing functionality like deploying concurrently to multi-server systems, and may have other bugs. I would guess that Keter is much more battle-tested, although we use Hapistrano for a few production applications and haven't had a problem.
I would be much more inclined to use Keter if 1. we wanted a full-featured application server that handles the areas that Keter addresses 2. were worried about security issues of having a build toolchain on servers.
Hope this helps! Please feel free to add any clarifications about Keter or other questions.

Ah so hapistrano is more of a code transfer and build wrapper. Whereas keter is strictly a production server management tool. It provides easy deployments (Just scp over a binary, which is automatically detected and deployed, and logs rotated). The reverse proxy bits are also useful as it means I don't need to maintain nginx as well.
It seems that keter and hapistrano are mostly orthogonal then. I should, for example, be able to use hapistrano to deploy and test my code on staging and then ship a binary off to the production server where keter takes over.
It would perhaps be interesting to explore better compatibility between the two tools, so such a workflow works out of the box.

Closing since this has been inactive for a while. I'd be happy to explore improving compatibility in a separate issue or PR.


[Test] Delete ErrorBridgedStatic test.

Cherry-pick https://github.com/apple/swift/pull/24678 for 5.1.
This test checks that error bridging with ObjC bridging works when the stdlib is statically linked. We no longer support static linking of the stdlib on platforms with ObjC interop.
rdar://problem/49699316

@swift-ci please smoke test and merge

@swift-ci please test and merge


HTTP client to support body decompression out of the box

From clj-http documentation:

The client transparently accepts and decompresses the gzip and deflate content encodings.

It also provides :decompress-body? option to switch off Accept-Encoding headers and body decompression on detected Content-Encoding. By default, this option is set to true. If we want to provide the same API, we need to cover those cases as well. But once again, we cannot just start including Accept-Encoding: gzip, deflate to any request as it's definitely would be a breaking change for a lot of users. But we can do the following: introduce :decompress-body? option set to false by default, when set to true explicitly using :connection-options, - add decompressor and appropriate header. I'll make a PR if there are no objections, @ztellman.

The implementation has been merged already.


Improvements

There was an old grid which was the same as bootstrap's grid and I removed all code for it.
Now, also, html and css are minifing for performance optimization. Now Viktor will setup server for more optimization.

LGTM


How to enable access on macOS

I'm trying this package using macOS. It popped up a dialog that I would have to give permission to the app in the Security & Privacy settings but the app doesn't show there (it is a test project I just created running in debug mode). So I couldn't make it work yet. Can someone explain how to do it?

Make sure you have accessibility permissions, and if you still have issues, manually remove and re-add the app


The Role of Geometry and Material in Three.js

In Three.js, which component is more fundamental in terms of its role and significance within the framework: geometry or material?

While both geometry and material are essential, geometry can be seen as more fundamental because it provides the structure to which materials apply their properties. Without geometry, there would be no shape to render; conversely, materials cannot exist without a geometry to define their application. Therefore, in the hierarchy of rendering, geometry serves as the foundation, but the choice of material is equally critical for achieving a compelling visual output.


About Error Stack when use multi()

Version: 2.6.0-2
Platform: Node.js 5.11.0 Ubuntu 14.04
Description:

I want to get line number of code which cause error. For example:
'use strict'

const redis = require('redis')

const redisOption = {
	host: 'localhost',
	port: '6379',
	db: 15
}

let client = redis.createClient(redisOption)
let value
client.multi()
	.psetex('1', 5000, value)
	.exec((err, replies) => {
		if (err) {
			console.error(err.stack || err)
		} else {
			console.log(replies)
		}
		client.end(false)
	})

but i get error stack like that:
ReplyError: EXECABORT Transaction discarded because of previous errors.
    at JavascriptReplyParser.Parser.returnError (/home/ivan/project/brickyard/plugins/unified/gateway/plugins/core/cache/node_modules/redis/index.js:193:31)
    at JavascriptReplyParser.run (/home/ivan/project/brickyard/plugins/unified/gateway/plugins/core/cache/node_modules/redis-parser/lib/javascript.js:135:18)
    at JavascriptReplyParser.execute (/home/ivan/project/brickyard/plugins/unified/gateway/plugins/core/cache/node_modules/redis-parser/lib/javascript.js:112:10)
    at Socket.<anonymous> (/home/ivan/project/brickyard/plugins/unified/gateway/plugins/core/cache/node_modules/redis/index.js:269:27)
    at emitOne (events.js:90:13)
    at Socket.emit (events.js:182:7)
    at readableAddChunk (_stream_readable.js:153:18)
    at Socket.Readable.push (_stream_readable.js:111:10)
    at TCP.onread (net.js:534:20)

Then, I can't get error line number of code

The reason is that the error created in a place where there's currently no connection to the original calling function.
This won't change for production mode, as it would otherwise significantly decrease the performance but it is planned to improve the error stack for node_redis v.2.7 while in development or debug_mode.


Swashbuckle and virtual directories

Hello,
I encounter exactly the same problem as it is already documented here
https://github.com/domaindrivendev/Swashbuckle/issues/305#issuecomment-333081577
I am using version 3.0 with the following configuration
...
services.AddSwaggerGen(swaggerGenOptions =>
{
    swaggerGenOptions.SwaggerDoc("v1", new Info { Title = "v1 API", Version = "0.0.1" });
});
...
app.UseSwagger();
app.UseSwaggerUI(options =>
{
    options.SwaggerEndpoint("/virtual/swagger/v1/swagger.json", "v1 API 0.0.1");
});
...

When I call the url http://localhost/virtual/swagger/index.html
I can see the swagger ui and click links.
But the api calls are looking like this:
curl -X GET "http://localhost/api/Application/settings" -H  "accept: application/json"
As you can see the api calls are wrong here. They are missing the "/virtual" path.
I can't seem to figure out what I need to do to tell swagger to use a virtual directory. I already tried "RoutePrefix" and "RouteTemplate" but that all seems to only address the swagger.json file location and not the swagger.json path content.
Has anyone else ever tried to get this to work with virtual directories?

For this to work - you need basePath to be set to "/virtual" in the Swagger JSON that's returned by Swashbuckle. As per the following snippet, this should be picked up automatically:
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/blob/v3.0.0/src/Swashbuckle.AspNetCore.Swagger/Application/SwaggerMiddleware.cs#L42
But, it doesn't seem to be working in your case - I suspect httpContext.Request.PathBase is empty but I'm not sure why. As a workaround, you can manually assign the basePath as follows:
 app.UseSwagger(c =>
 {
     c.PreSerializeFilters.Add((swagger, request) => swagger.BasePath = "/virtual");
 });

If it helps anyone, this resolved virtual paths for me, and running localhost works as well
app.UseSwagger(c =>             {                 c.RouteTemplate = "api/{documentName}/swagger.json";                 c.PreSerializeFilters.Add((swagger, httpReq) =>                 {                      swagger.Servers = new List<OpenApiServer> { new OpenApiServer { Url = $"{httpReq.Scheme}://{httpReq.Host.Value}{httpReq.PathBase.Value}" } };                 });             });

PreSerializeFilters is not available for me using Swashbucle 6.5.0 on .NET 7.0


Register Error event handlers on "exec" calls to catch errors

Sentry got a crash again and it is an esync error in a "exec" call. You need to assign the ChildProcess returned from exec to a valriable and register "on('error')" event to also catch the async errors.
https://sentry.iobroker.net/share/issue/57492f436e584758b13b7a4f48b18947/
Error: read ENOTCONN
  File "net.js", line 528, col 20, in Socket._read
  File "_stream_readable.js", line 457, col 10, in Socket.Readable.read
  File "net.js", line 328, col 12, in new Socket
  File "net.js", line 237, col 41, in Object.Socket
  File "internal/child_process.js", line 311, col 14, in createSocket
  File "internal/child_process.js", line 424, col 23, in ChildProcess.spawn
  File "child_process.js", line 539, col 9, in spawn
  File "child_process.js", line 221, col 17, in Object.execFile
  File "child_process.js", line 149, col 18, in exec
  File "/opt/iobroker/node_modules/iobroker.info/node_modules/systeminformation/lib/cpu.js", line 761, col 9, in null.<anonymous>
    exec(cmd, function (error, stdout) {

@Apollon77 should be fixed now. Version 4.27.5 just released.


update() is crashing the Pico with a Pico Display attached

This is probably the worst issue I've had to raise as I have no idea what's happening.
I have 300-odd lines of hacked together python code that almost works - but every time I call display.update() the whole pico crashes. Theres no update, there's no screen change, there's no output on the console - it just freezes.
I'm certain a variable hasn't been set correctly but I can't see any issues. Theres no errors - the board just crashes. Because its Micropython I Cant figure out how to enable any advanced logging or debugging so I've included my code here.
The actual code is in a created function and receives the data through that function, but is reproducible using the variables defined here.
Sorry for the amount of print statements - but it was me trying to get to the bottom of what's happening. All variables are printing correctly, so I've no idea what's happening.
I've tried on both Thonny and Visual Studio Code. The code is being run as its typed, so not saved as main.py yet.
I have the Pico Display hooked up to the board directly, with 4 pins that are not in use repurposed to connect a Neo GPS Module.
import time
import picodisplay as display

width = 240
height = 135
display_buffer = bytearray(width * height * 2)  # 2-bytes per pixel (RGB565)
display.init(display_buffer)
display.set_backlight(1.0)

counter = 0

previous = 0
duration = 500
led = 0
currentTime = 0

red = 0
green = 0
blue = 255

FdateGPSStr = "21/03/21"
FtimeGPSStr = "22:23:36"
FfixTypeStrA = "No"
FfixTypeStrB = "Warn"
FsatUseInt = 0
FspeedMPHFlt = 0.0

#def updateAttachedDisplay(FdateGPSStr, FtimeGPSStr, FfixTypeStrA, FfixTypeStrB, FsatUseInt, FspeedMPHFlt):

print(FdateGPSStr + FtimeGPSStr + FfixTypeStrA + FfixTypeStrB + str(FsatUseInt) + str(FspeedMPHFlt))
# Requires the following variables to be passed

# FdateGPSStr     (Passed straight to display)
#   - 21/02/21
# FtimeGPSStr     (Passed straight to display)
#   - 04:58:20
# FfixTypeStrA    Checked and background colour changed on value
#   if No - Red background
#   if 2D - Yellow background
#   if 3D - Green background
# FfixTypeStrB    Checked and background colour changed on value
#   if Warn - Red background
#   if Valid - Green background
# FsatUse         (Passed straight to display)
# TODO:
# FspeedMPH       Checked and limited to prevent spurious readings
#   Format first - no more than 3 decimal places (No point - precision is to 3 decimal places)

# LED Setup:
# if FfixTypeStrA is No
if FfixTypeStrA == "No":
    FfixTypeStrAbg = display.create_pen(255, 0, 0)
# AND
# if FfixTypeStrB is warn = RED
    if FfixTypeStrB == "Warn":
        red = 255
        green = 0
        blue = 0
# OR
# if FfixTypeStrB is Valid = YELLOW
    if FfixTypeStrB == "Valid":
        red = 255
        green = 255
        blue = 0

# if FfixTypeStrA is 2D
if FfixTypeStrA == "2D":
    FfixTypeStrAbg = display.create_pen(255, 255, 0)
# AND
# if FfixTypeStrB is warn = YELLOW
    if FfixTypeStrB == "Warn":
        red = 255
        green = 255
        blue = 0
# OR
# if FfixTypeStrB is Valid = YELLOW
    if FfixTypeStrB == "Valid":
        red = 255
        green = 255
        blue = 0

# if FfixTypeStrA is 3D = Green
if FfixTypeStrA == "3D":
    FfixTypeStrAbg = display.create_pen(0, 255, 0)
# AND
# if FfixTypeStrB is warn = YELLOW
    if FfixTypeStrB == "Warn":
        red = 255
        green = 255
        blue = 0
# OR
# if FfixTypeStrB is Valid = GREEN
    if FfixTypeStrB == "Valid":
        red = 0
        green = 255
        blue = 0
print("DEBUG INV 1")
if FfixTypeStrB == "Warn":
    FfixTypeStrBbg = display.create_pen(255, 0, 0)
elif FfixTypeStrB == "Valid":
    FfixTypeStrBbg = display.create_pen(0, 255, 0)
print("DEBUG INV 2")
if FsatUseInt < 4:
    FsatUsebg = display.create_pen(255, 0, 0)
elif FsatUseInt >= 4 and FsatUseInt <= 6:
    FsatUsebg = display.create_pen(255, 255, 0)
elif FsatUseInt > 7:
    FsatUsebg = display.create_pen(0, 255, 0)
else:
    FsatUsebg = display.create_pen(0, 0, 255)

print("DEBUG INV 3")
if FsatUseInt <= 9:
    FsatUseDisplay = "0" + str(FsatUseInt)
elif FsatUseInt > 9:
    FsatUseDisplay = FsatUseInt
else:
    FsatUseDisplay = "Er"

print("DEBUG INV 4")
#print(FspeedMPH)
#print("test" + str(round(FspeedMPH,2)))

FspeedMPHStr = round(FspeedMPHFlt, 3)
print("DEBUG INV 5")

currentTime = time.ticks_ms()

if (currentTime - previous) >= duration:
    if led == 0:
        display.set_led(red, green, blue)
        previous = currentTime
        led += 1
    else:
        display.set_led(0, 0, 0)
        previous = currentTime
        led = 0
print("DEBUG INV 6")

print("Debug Display Line Values: ")
# TOP LEFT, DATE AND TIME
display.set_pen(0, 0, 0)
display.clear()
display.set_pen(255, 255, 255)
display.text(FdateGPSStr, 0, 0, 240, 4)
display.text(FtimeGPSStr, 0, 30, 240, 4)
print(FdateGPSStr)
print(FtimeGPSStr)

# TOP RIGHT, PART 1, 2D/3D FIX AND BACKGROUND COLOUR
display.set_pen(FfixTypeStrAbg)
display.rectangle(180, 0, 90, 30)
display.set_pen(0, 0, 0)
display.text(FfixTypeStrA, 190, 0, 240, 4)
print(FfixTypeStrA)

# TOP RIGHT, PART 2, SAT NUMBER AND BACKGROUND COLOUR
display.set_pen(FsatUsebg)
display.rectangle(180, 30, 90, 30)
display.set_pen(0, 0, 0)
display.text(FsatUseDisplay, 190, 30, 240, 4)
print(FsatUseDisplay)

# TOP RIGHT, PART 3, VALID OR WARN STRING
display.set_pen(FfixTypeStrBbg)
display.text(FfixTypeStrB, 185, 60, 240, 2)
print(FfixTypeStrB)
print(FspeedMPHStr)

display.set_pen(255, 255, 255)
#BOTTOM - CURRENT SPEED
display.text(FspeedMPHStr, 0, 80, 240, 8)
print(FspeedMPHStr)

#display.text(str(counter), 200, 80, 240, 2)

display.update()
print("Completed Updating Display")```

Honestly - just like that I figured it out. I hadn't converted FspeedMPHStr to a string and it was crashing.
Would it be better to have update() check to ensure STR's are passed or convert them - or at least warn about them on the console?

I would guess if it's FspeedMPHStr not being converted into a str then it would fail at display.text(FspeedMPHStr, 0, 80, 240, 8) rather than display.update(), since the update just squirts the internal display buffer out to the attached device.
display.text handles the parsing of the input string, rendering it char-by-char into the internal buffer... will have to throw together a test and see what might have gone wrong here.
If you can reproduce with just a few lines of Python I'd be interested to know! Thank you.

Possibly similar to issue #58 ?

The hard-lock bug with passing a non-string type into .text() has been squashed into a TypeError- give v0.1.0 a try: https://github.com/pimoroni/pimoroni-pico/releases/tag/v0.1.0


How to use this package when I have the pompts and images across models

Hi @snehith3195, could you provide more information about your use case? Please refer to the documentation here for general instructions.


A way to reliably close all other tabs.

Is your feature request related to a problem? Please describe.
Using new Tabs for each Gauge test is a simple way to reduce weird navigation errors.
With lots of tests come lots of opened Tabs. I would like to close old tabs, but the URL is often too similar etc.
Closing all other Tabs is impossible(?) when the tab to stay open has the same URL as the ones to be closed.
Describe the solution you'd like
a new Method that closes all Tabs except the current one
Describe alternatives you've considered

closeTab gets named arguments like the other commands. closeTab({keepBrowserOpen:true})
closeTab creates a new empty tab if it closes the last tab.
some way to count the current open tabs

I also tried await closeTab(/^(?!.*about:blank)/) (close all tabs that are not on about:blank via regex matching), but that was unreliable.

Thanks for the workaround. Since I cannot think of any scenario where taiko is not used in combination with some testing framework that provides afterHooks (as well as needing many tabs to be closed) I will close this issue.


Quiz App

Please A Feedback on the README

There is some problem with this PR. Can you make a new one?


chore(client): expose router types

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 40.677%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
685

Relevant Lines:
1721

💛  - Coveralls


Export button spins after selected a related record

The Export button spins after a related record is selected.

Go to Public Notification app
Click View.
Click on Create new list.
Click the Input layer drop-down menu and choose All Owners and Occupants.
Type 1804 N Naper Blvd into the search box.
Use the rectangle tool to select the point.
Click Done.
Click the Export tab.
The Export button spins

If the app is closed and opened, the issue doesn't seem to exist. It's only appears after I deploy the solution and follow the steps above. The solution isn't in the app yet because I am waiting for the agol branch to be created.

Can't repro this anymore @HeatherEisan could you please check this one more time?


Parameter _count (pagesize) doesn't work on some requests (for example history of resource)

Duplicates issue #3


Client from Germany with IPv6 get disconnected after 2-5 minutes without stack error

Hello
I have a really strange problem
It only happens with clients from germany, they all told me they had a IPv6 connection using Wifi
Once they connect, after 2-5 minutes they get disconnected, there is no error at all
That's really strange, i use default kryonet settings, no tcp/udp timeout change at all
I'm sending both TCP and UDP packets, at a rate of ~5 packets/seconds per client, around 30 clients connected at same time
TCP:54555, UDP:54777
Right after they connect they get flagged as IDLE
        client.addListener(new Listener()
        {

            @Override
            public void idle(Connection connection)
            {
                super.idle(connection);
                System.out.println("DEBUG: WARN: IDLE!");
            }
        }

I have no idea why, and how to fix that..

Is it because clients are only sending one packet for login, then they just have to receive packets from server
Do the client need to send a ACK packet to avoid being flagged as 'idle' ??

KryoNet sends objects across the connection to keep it alive. I'm not sure
why they would be disconnected.
On Wed, Jul 29, 2015 at 10:31 AM, Scellow<EMAIL_ADDRESS>wrote:

Is it because clients are only sending one packet for login, then they
just have to receive packets from server
Do the client need to send a ACK packet to avoid being flagged as 'idle' ??
—
Reply to this email directly or view it on GitHub
https://github.com/EsotericSoftware/kryonet/issues/102#issuecomment-125880370
.

I wonder if the keep alive is taking too long to get a response.

@Scellow Have you found the problem?

@CreamyCookie I don't really know how i fixed it exactly, but by changing the port and reduced the size of the packets, the problem disapeared