Remove redundant code snippets in book

Currently the PRQL-snippets exist in the markdown files and in  book/tests/prql.  That is not good for maintenance of these snippets.
A solution could be to use a "macro" in the markdown files to import them at build time.
Or you parse the markdown files and extract the snippets when running the tests.
I would prefer the first solution

Hi @Jelenkee — these are auto-generated by https://github.com/PRQL/prql/blob/60b7b0750c1c7095c2c21cdb55cdc8e23724526a/book/tests/snapshot.rs#L44, and get run with cargo test
Does that make sense? It sounds a bit like your suggested solution.
Possibly we should document this better? There's a bullet "Examples" at https://github.com/PRQL/prql/blob/60b7b0750c1c7095c2c21cdb55cdc8e23724526a/book/src/contributing/development.md#how-we-test, but it's kinda far from the code.

I see. And you didn't add those files to gitignore because the tests run faster, did you?

Good question...
We currently split up the extractions from the testing (which is at https://github.com/PRQL/prql/blob/9d0e6fdc37c3075c6623f0b21d8f1e4ce79ae15e/book/tests/snapshot.rs#L188), and the testing reads the files.
Though this isn't strictly necessary, we could avoid writing the PRQL files and just extract them each time we wanted them. There's no performance benefit.
Two points:

We want to test our autoformatting when that's further along, and writing the autoformatted examples is a good way. We could try and write these into the markdown, but that's more complicated.
One caveat is that the extraction has slightly different behavior on Windows, and we rely on the files for running the Windows tests, https://github.com/PRQL/prql/issues/356. So we'd need to write a function to do that, which requires someone with a Windows machine and an hour.

Autoformatting sounds good. But is it really that complicated to inject it into markdown? You already add the transpiled SQL to the markdown. Seems not had to me, provided that a function to format prql already exists.
I will look into that Windows problem later

Autoformatting sounds good. But is it really that complicated to inject it into markdown? You already add the transpiled SQL to the markdown. Seems not had to me, provided that a function to format prql already exists.

I was unclear — you're absolutely right. I had meant that mutating the .md file would be a bit more complicated. But mutating the markdown AST before producing the HTML is indeed already done. I suspect we'd do that, and have the markdown files have imperfectly formatted PRQL. Does that make sense?

Closed by #2105


It seems that the latest develop branch has 'stdext::hash_value' compile failure

I found that the latest develop branch(commit id: 8e20aa1) will generate compile failures because of std::hash related error when using below CI options on Appveyor:

Environment: FLAVOR=Visual Studio 2017 C++2a Strict, APPVEYOR_BUILD_WORKER_IMAGE=Visual Studio 2017, B2_CXXFLAGS=-permissive-, B2_CXXSTD=2a, B2_TOOLSET=msvc-14.1
Environment: FLAVOR=Visual Studio 2017 C++14/17, APPVEYOR_BUILD_WORKER_IMAGE=Visual Studio 2017, B2_CXXSTD=14,17, B2_TOOLSET=msvc-14.1
Environment: FLAVOR=clang-cl, APPVEYOR_BUILD_WORKER_IMAGE=Visual Studio 2017, B2_ADDRESS_MODEL=64, B2_CXXSTD=11,14,17, B2_TOOLSET=clang-win
Environment: FLAVOR=Visual Studio 2015, 2013, APPVEYOR_BUILD_WORKER_IMAGE=Visual Studio 2015, B2_TOOLSET=msvc-12.0,msvc-14.0
Environment: FLAVOR=Visual Studio 2008, 2010, 2012, APPVEYOR_BUILD_WORKER_IMAGE=Visual Studio 2015, B2_TOOLSET=msvc-9.0,msvc-10.0,msvc-11.0, B2_ADDRESS_MODEL=32

To regenerate this issues, I create a redundant draft pull request by adding only single line comment (sorry for my unruly behavior), but the failures still occur, details can be found in this links.
The same failure has affected several recent pull requests
Failure digest:
.\boost/container_hash/hash.hpp(669): error C2668: 'stdext::hash_value': ambiguous call to overloaded function
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\xhash(29): note: could be 'size_t stdext::hash_value<T>(const _Kty &)' [found using argument-dependent lookup]
        with
        [
            T=std::vector<unsigned long,std::allocator<unsigned long>>,
            _Kty=std::vector<unsigned long,std::allocator<unsigned long>>
        ]
.\boost/container_hash/hash.hpp(406): note: or       'unsigned int boost::hash_value<T>(const T &)'
        with
        [
            T=std::vector<unsigned long,std::allocator<unsigned long>>
        ]
.\boost/container_hash/hash.hpp(669): note: while trying to match the argument list '(const T)'
        with
        [
            T=std::vector<unsigned long,std::allocator<unsigned long>>
        ]

Given CI is passing on some of those without incident, this was an issue in container_hash and not in dynamic_bitset.  Closing this.


Travis build is failing !

build badge is red, should be green

This might have been fixed by https://github.com/mycila/license-maven-plugin/commit/c3ff9434efa527de3f929b52fde98ae71d440b20

yes ;-)


Support of instance metadata service

Before CCM, kubelet supports getting Node information by cloud provider's instance metadata service. This includes:
•	NodeName
•	ProviderID
•	NodeAddresses
•	InstanceType
•	AvailabilityZone
Instance metadata service could help to reduce API throttling issues, and increase the nodes initialization duration. This is especially helpful for large clusters.
But with CCM, this is not possible anymore because the above functionality has been moved to cloud controller manager. We should add this back into Kubelet.
Since cloud providers are moving to external, we may need to add new plugins into Kubelet, e.g. via grpc.
Refer #14 (#14 is focused on node controller, while this one is focused on cloud API throttling).
@andrewsykim @justaugustus @craiglpeters  Any ideas on this?

ref: https://github.com/kubernetes/cloud-provider/issues/15 https://github.com/kubernetes/cloud-provider/issues/14

I think we should put this in high priority for v1.16. It's a common problem across multiple providers and is likely going to make the out-of-tree provider migration difficult

I'm not sure if this will be feasible, but at the very least we should focus efforts in making controllers API quota sensitive before we invest efforts in something like this. We can make API quota sensitive controllers a high priority for v1.16 as a first step and go from there. What do you think?

We can make API quota sensitive controllers a high priority for v1.16 as a first step and go from there. What do you think?

Yep, that may be the first step. Meanwhile, I'm thinking the solutions for such issues, so that CCM still has the same performance as KCM.

so that CCM still has the same performance as KCM.

The only controller that is different from KCM is cloud node controller, I think https://github.com/kubernetes/kubernetes/pull/75405 should help with this a lot

I think kubernetes/kubernetes#75405 should help with this a lot

Yep, but still not enough. e.g. for cluster provision step, hundreds of nodes are initialized at the same time. kubernetes/kubernetes#75405 could reduce the errors in node controller, but the node initialization may be still slow because of API throttling.
With instance metadata, however, all nodes could init them without any API invoking, hence no API throttling would happen and nodes could be registered much faster.

Yep, but still not enough. e.g. for cluster provision step, hundreds of nodes are initialized at the same time. kubernetes/kubernetes#75405 could reduce the errors in node controller, but the node initialization may be still slow because of API throttling.

Agreed that we should improve this, but we should be mindful that this is a one time cost when the cluster is being created and we should optimize for that and nothing more.

@feiskyer are you able to validate if https://github.com/kubernetes/kubernetes/pull/75405 is helping with this problem for Azure?

@andrewsykim Yep, of course. Would do it.

@feiskyer any updates on this one?

@andrewsykim Based on Azure API throttles, this is still a hard requirement for Azure cloud provider. I'm planning to draft a proposal for this during v1.16.
/milestone v1.16
/assign

@andrewsykim I'm preparing the proposal here. Would you like having a look before I send it out as KEP?

Opened the KEP here: https://github.com/kubernetes/enhancements/pull/1158.

/remove-lifecycle stale

/lifecycle frozen


Add license headers

Fixes #1108

Codecov Report

Merging #1109 (132d64b) into master (42d7297) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1109   +/-   ##
=======================================
  Coverage   86.32%   86.32%
=======================================
  Files         191      191
  Lines       19004    19004
  Branches     2105     2105
=======================================
  Hits        16406    16406
  Misses       2052     2052
  Partials      546      546

Flag
Coverage Δ

unittests
86.32% <ø> (ø)

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

Impacted Files
Coverage Δ

src/opentime/errorStatus.cpp
50.00% <ø> (ø)

src/opentime/errorStatus.h
100.00% <ø> (ø)

src/opentime/rationalTime.cpp
85.04% <ø> (ø)

src/opentime/rationalTime.h
89.79% <ø> (ø)

src/opentime/stringPrintf.h
66.66% <ø> (ø)

src/opentime/timeRange.h
100.00% <ø> (ø)

src/opentime/timeTransform.h
88.88% <ø> (ø)

src/opentimelineio/anyDictionary.h
100.00% <ø> (ø)

src/opentimelineio/anyVector.h
94.44% <ø> (ø)

src/opentimelineio/clip.cpp
85.18% <ø> (ø)

... and 51 more

Continue to review full report at Codecov.

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

I am a fan of doing a SPDX pass, this is a great initiative.

Rust sure has nice tooling in that area. cargo deny goes so far as to recurse dependencies checking compatibility and disallowed licenses. The nature of the build system makes that possible though, compared to the ad hoc nature of a C/C++ build!

Maybe the the ASWF or the Linux Foundation already have something to automate the license checking? I read in https://www.linuxfoundation.org/blog/solving-license-compliance-at-the-source-adding-spdx-license-ids/ that mentions https://reuse.software/ which seems nice.

That rings a bell. I propose a new issue "automate license checking", separate from cleaning the license texts.

Yep agreed.

Note: we're going to land this, and related changes, into the license_change branch so we can get it all consistent before landing into the main branch.

FYI, I redid this in #1216, folded into the actual license change itself, to avoid any ambiguity about who has the authority to make these changes.
Thanks for getting this started @darbyjohnston
We can revisit automation of this in another issue/PR.


"Pângărați", "Oanțu", "Pângărăcior", "Poiana", "Preluca" and "Stejaru" are listed in the drop-down menu

Description:
"Pângărați", "Oanțu", "Pângărăcior", "Poiana", "Preluca" and "Stejaru" are listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Pângărați" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Pângărați, NEAMȚ (Pângărați)" and "Comuna Pângărați, NEAMȚ".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Type "Oanțu" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Oanțu, NEAMȚ (Pângărați)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Type "Pângărăcior" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Pângărăcior, NEAMȚ (Pângărați)".

Step 6
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 7
Type "Poiana" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Poiana, NEAMȚ (Pângărați)".

Step 8
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 9
Type "Preluca" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Preluca, NEAMȚ (Pângărați)".

Step 10
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 11
Type "Stejaru" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Stejaru, NEAMȚ (Pângărați)".


behavior in China?

China is restricting access to Google Api's.
i'm guessing that this library won't function well in China (under Chinese network) due to no connection to google.maps
can someone tell us what should we expect in the library's behavior when opened in China?
thanks.

Hi @razmaimon !
Since this library is based on the Google APIs it's possible that the behavior would be affected on China. However, it would be possible to use your own Geocoder APIs or use an alternative if you create your own DataSource and link it to the library. But is not an easy task right now because there is no documentation on how to do it. Alternatively, you could create your own DataSource and create a PR to include it on the library.

i am not worried that it won't work... Chinese understand that this is based on google(we have a manual form for them...)
we are trying to understand the fallbacks we need to look for in order to discover these cases...
how will the library behave, what exception(if any) will it throw... etc.

I understand... well It depends on what APIs are affected, since we only use the ones that provides Google, you will need to know if the default Android Geocoder, Google Places are affected and the common Google Maps APIs used by Maps itself.
It could go from retrieving the locations using the search bar to the naming retrieved after selecting a location manually, if are not running it only will show the latitude and longitude values, If you're lucky to load the map itself.


static: automatic time skip for YT player

#41
Unfortunately, we can't use a keyboard shortcut to automatically focus the Youtube player video, due to it violating the same-origin policy. However, we can use shortcuts to automatically skip 10 seconds before or after the current time.
The left arrow button automatically skips 10 seconds before and the right arrow button automatically skips 10 seconds after. However, if you're clicked in a text box for time input or a radio button for edit/review status, the arrow buttons still do their regular functionality on top of skipping 10 seconds. So you do have to click out of a text box or radio button onto white space for it to only do the video skipping.
@ldang let me know if the current key binds (left/right arrow keys) work or if you want them changed to something else.

However, if you're clicked in a text box for time input or a radio button for edit/review status, the arrow buttons still do their regular functionality on top of skipping 10 seconds. So you do have to click out of a text box or radio button onto white space for it to only do the video skipping.

Hmm... this feels a little surprising to me, but I'm not the people actually doing work so my feeling is worth nothing. @ldang would this still be useful regardless? If so feel free to approve, the code change is fine to me.


feat: allow disabling of identify-push

Description
Add two options to the identify module to disable various parts of identify-push

runOnSelfUpdate - set to false to stop sending identify-push messages automatically on self:peer:update events
disableIdentifyPush - set to true to disable identify-push entirely, this protocol isn't registered and identify-push messages can't be sent

Change checklist

[x] I have performed a self-review of my own code
[x] I have made corresponding changes to the documentation if necessary (this includes comments as well)
[ ] I have added tests that prove my fix is effective or that my feature works

Could these options be consolidated?
It would avoid the situation where a user sets both runOnSelfUpdate and disableIdentifyPush to true and expects something to happen?
Also, can you add some tests to ensure there are no regressions?

IMO they are two separate features.
One stops the outbound messages that automatically happen (but still allows manual outbound messages and allows handling inbound messages).
One stops the handling of inbound messages.
could we split the identify module into two? Then we wouldn't need the disable feature.
like:
createLibp2p({
  services: {
    identify: identify({...}),
    identifyPush: identifyPush({...}),
  }
})

could we split the identify module into two?

This sounds like a good solution since it's a separate protocol, it could be exported from @libp2p/identify for convenience though since most people would want both most of the time.


Remove requirement for "targets" and "excluded_targets" in payload when updating site with API

https://github.com/rackerlabs/scantron/pull/132


Ensure the desired namespace is used

The current deployment scripts work by coincidence assuming that a newly created namespace is immediately used.
This change ensure the created namespace is then chosen for usage.

Meh, .travis.yml is wrong and is triggering the deploy stage on PRs. Should not happen.

@ignasi35, that's the status here? Is this still relevant?

Oh sorry, I see it's a PR sent today, so probably still relevant.
I think the build is failing because is a PR from a fork.

PRs from forks must be supported. the problem is that the condition disabling the deploy stage in .travis.yml is not kicking in. I'll try to fix it on a separate PR.

Merge after #55

rebased (no code changes)


NumPy-like semantics for Tensor.getitem

This PR modifies the behavior of Tensor.__getitem__ in several ways, with the goal of bringing tinygrad indexing more in line with the behavior of numpy and torch indexing. The changes in behavior are as follows:

Indexing a tensor with a negative integer N now returns the Nth-to-last element instead of zeros.
Slicing a tensor from a negative starting position N now slices from the Nth-to-last position instead of padding the tensor with zeros.
Indexing a tensor with an integer not in the range [-size, size) now throws an IndexError instead of returning zeros.
Slicing a tensor past its bounds is now equivalent to slicing with None, instead of padding the tensor with zeros.
Indexing a tensor with None or np.newaxis along axis A now reshapes the tensor with an additional dimension at A, instead of doing nothing if None was the only argument or raising an error otherwise.

I like the negative slicing behavior, what's the reasoning to remove it except that it matches numpy?


Add new flutter command scrollUntilTapable + Update README.MD

@KazuCocoa . I update command name and README. Please check it.

Thank you!
Let me merge and release a new minor version after releasing the current main to separate this change later


docs: add "Using Autocomplete with Vue" guide

This PR creates guides on using the Autocomplete library in a Vue and React application.
(It was originally going to add just the Vue guide, hence the name.)

@Haroenv Could you please proof-read the Vue guide? Would it make sense to you to create a Vue Autocomplete component in the guide, like we do in the React guide?

Thanks for all the fixes @francoischalifour ! 🙏
Will merge tomorrow unless we should create a standalone component for Vue like you were asking asking about?

You can merge it as it is for now 👍

For future reference, the alternative to Fragment for Vue 2 should be:
this.createElement('div', { className: 'aa-ItemWrapper' })

This would make the design work with a flex container supported by our theme.


verify nested subpredictors are actually running

they are! this section's still a little buggy, but the nested subpredictors are running.


[Bug] request.signal.onabort never getting fired

Unfortunately, adding an onabort-handler for my SSE-endpoints has only been possible with a workaround which you can see in this minimum reproducible example.
Creating an interval which prevents the request from getting garbage collected makes the onabort work properly. Stream.close() also doesn't call onabort (which makes sense but isn't really practical if you just want to handle connection loss, no matter if the client aborted it or the server), it would be nice if the Stream-API could get extended to allow developers to handle disconnects in an intuitive way.
import { Elysia } from "elysia";
import { Stream } from "@elysiajs/stream";

// [1] => Uncommenting this makes onabort work properly (page close/client-side connection loss calls onabort)
// [2] => stream.close() doesn't trigger onabort as well
// Running the code like this leads to "connection closed" never getting logged even if it should happen
new Elysia()
  .get("/", ({ request }) => {
    request.signal.onabort = () => {
      console.log("connection closed");
      // [1]
      // clearInterval(_);
    };
    // [1]
    // const _ = setInterval(() => request.signal.aborted, Math.pow(2, 31) - 1);
    return new Stream(async (stream) => {
      stream.send("test");
      // [2]
      // stream.close();
    });
  })
  .listen(3000);

Blocked by: https://github.com/oven-sh/bun/issues/4517

This will be fixed in Bun v1.1.27


"npm start" fails to compile (using venv on windows)

EDIT: Also, I am not sure why the other user was having issues with their app.py, but mine works perfectly fine, even with all the updates going on, it is just the "npm start" for me.
This did work in the past, I am up to date on everything so far and made sure to follow all the steps successfully. Here are images of the errors:

Ok, relogging ended up fixing the situation. All good!


Document key-priorieties for development

provide sensible defaults
keep required configuration minimal
make sure to write generic func and split up big func into sub functions
use packages for each topic ans if to big split asap in subtopics

https://github.com/woodpecker-ci/woodpecker/issues/1860#issuecomment-1590175406

I disagree with the second point at least with its priority. In case of configs its more important to have explaining configs instead of "short" configs as for example DRY is a programming concept, but repeating in configs is fine and most of the time more readable IMO.

Good point


width is inconsistent in nz-modal of nz-dropdown-menu when first hover and later hover

Reproduction link
https://stackblitz.com/edit/angular-nzdropdown-issue
Steps to reproduce
1.click the "click modal" button；
2.first hover "add config", the menu shows;
3.again hover "add config"， the menu shows again；
What is expected?
no matter hover any times, the drop menu's width would be inconsistent;
What is actually happening?
hover twice, but the drop menu's width is inconsistent;

Environment
Info

ng-zorro-antd
8.2.1

Browser
Chrome 76

just the first time hover, the width has some problem. And I think it still a problem in the version 8.3.0

Work on v10, https://stackblitz.com/edit/angular-7qcaal?file=src%2Fapp%2Fapp.component.ts.
Please file a new issue or discussion if you are encountering a similar or related problem.


Passing the json config file through a script, no example of function

I'm trying to use this as a way to download images for an ML script. The one thing I don't get is why this is not working.

response = gid.googleimagesdownload()
arguments = {"config_file": "example.json"}
paths = response.download(arguments)

I can't seem to get it to work following the convention of the example you set.

Uh oh! Keywords is a required argument
Please refer to the documentation on guide to writing queries
https://github.com/hardikvasa/google-images-download#examples

It passes this but I makes no sense since you have to have the keyword inside the json file and it would make no sense to set keyword: example.json and then config_file: example.json.
can anyone help me understand this?

@sorathesky This is a missing feature. When config_file feature was added, it was only for command line interface commands and not for imports. I am am planning to added this sometime soon.

@sorathesky this feature was added in https://github.com/hardikvasa/google-images-download/commit/10b8f5b77b2707ee05753c1a73b0938e4a8a2463 . Let me know if you still see issues with it. Closing the issue for now.


Bug 1541461 - Deal with buggy encoded scopes from service catalog.

Describe what this PR does and why we need it:
Will allow us to handle scope that has been incorrectly encoded
Changes proposed in this pull request

Deal with the other way of encoding scopes
Default to close if both scopes are preset

I believe the situation would not occur with just the service catalog. I
believe this is just to be very explicit about what would happen if it did.
There is no version of the service catalog this should happen on.
On Mon, Feb 12, 2018 at 5:26 PM Jesus Rodriguez<EMAIL_ADDRESS>wrote:

@jmrodri approved this pull request.
I have a question, but the code looks good.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/openshift/ansible-service-broker/pull/754#pullrequestreview-95965210,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABza98Ykc-m74v9lj7gIlGgbxq4SNX1Bks5tULqggaJpZM4SCnMJ
.

@shawn-hurley okay, ACK!


reduce tricky unsafety and simplify table structure

I've noticed that we are overusing interior mutability of the Table data, where in many cases we already own a unique reference to it. That prompted a slight refactor aiming to reduce number of safety constraints that must be manually upheld. Now the majority of those are just about avoiding bound checking, which is relatively easy to prove right.
Another aspect is reducing the complexity of Table struct. Notably, we don't ever use archetypes stored there, so this whole thing goes away. Capacity and grow amount were mostly superficial, as we are already using Vecs inside anyway, so I've got rid of those too. Now the overall table capacity is being driven by the internal entity Vec capacity. This has a side effect of automatically implementing exponential growth pattern for BitVecs reallocations inside Table, which to my measurements slightly improves performance in tests that are heavy on inserts. YMMV, but I hope that those tests were at least remotely correct.

For completeness, here are my benchmark results. Just note that my machine is fairly noisy.
group                                       main                     simplify-table
-----                                       ----                     --------------
add_remove_component/bevy_sparse_set        1.00  1387.4±108.00µs    1.00  1392.9±214.10µs
add_remove_component/bevy_table             1.02  1736.9±107.17µs    1.00  1703.5±138.67µs
add_remove_component_big/bevy_sparse_set    1.02  1570.9±309.53µs    1.00  1546.0±214.15µs
add_remove_component_big/bevy_table         1.10      4.1±0.19ms     1.00      3.7±0.07ms
fragmented_iter/bevy                        1.02   462.5±46.10ns     1.00   454.9±44.52ns
fragmented_iter/bevy_foreach                1.03   319.8±30.22ns     1.00   310.7±31.22ns
get_component/bevy                          1.00  1456.6±41.49µs     1.04  1513.2±216.42µs
get_component/bevy_system                   1.02  1235.0±135.91µs    1.00  1207.3±154.55µs
heavy_compute/bevy                          1.01  1057.7±21.91µs     1.00  1050.8±12.90µs
schedule/bevy                               1.00     59.7±3.03µs     1.00     59.4±3.15µs
simple_insert/bevy                          1.03   633.6±82.98µs     1.00   614.2±19.95µs
simple_insert/bevy_unbatched                1.11  1649.8±41.47µs     1.00  1492.0±37.32µs
simple_iter/bevy                            1.00     22.5±2.41µs     1.04     23.3±2.64µs
simple_iter/bevy_foreach                    1.00     12.5±0.50µs     1.01     12.6±1.09µs
simple_iter/bevy_sparse                     1.05     62.3±5.71µs     1.00     59.5±0.71µs
simple_iter/bevy_sparse_foreach             1.00    60.4±10.05µs     1.07    64.8±12.89µs
sparse_fragmented_iter/bevy                 1.00     15.1±1.13ns     1.02     15.4±1.45ns
sparse_fragmented_iter/bevy_foreach         1.05     13.4±1.19ns     1.00     12.7±0.30ns

I am getting a reproducible simple_iter regression. From ~16.07 -> ~17.55 (and the results you posted also show a regression). But this doesn't even touch iteration code (maybe with the exception of tick access, and reverting that doesn't change anything). The for_each variants aren't affected, and I think we will get similar performance from normal query iterators if we adopt derive(Component). I'm personally cool with eating this regression for now.

bors r+


Unable to install new client

Hi, I'm trying to install a new client that hasn't been updated since you guys had that racoon logo with the hat, and I'm getting an error message of the following: "There was an error trying to run the install (127)."
Silly me lost the paper keys (sorry..) so I'd like to avoid potentially deleting any important files from the previous application... any thoughts?
my log id: 499b9ef77fcb531de587091c
Thanks!

You're OK to just reinstall from our Website.  It won't trample your keyfiles.


 This is running with $ go run demoPurge.go

i'm working on it. The testcase is pretty clear. It also seems that it 'self-heals' after some inactivity. I.e. i limit the for until 1024 which is usually enough to trigger, but if i sleep 12 seconds after the loop it appears to fire again ~10 seconds after the last item is inserted.

please let me know if this also solves your usecase, it's definitely fine for the snippet you posted.


advertising.mp3: Unexpected character '�' (1:0)

I did a git clone and simply tried to run the app in the Simulator (latest everything iPhone 7, iOS 10.2, Xcode 8.2.1)
I've occasionally seen 'Unexpected character' when dropping new binary files into the source tree (e.g. PNG files). However this time restarting the Packager doesn't fix.
I tried building in Xcode, react-native run-ios, clearing watchman, cleaning in Xcode, upgrading to Node 7.7.1. No bueno.

sounds like a conflict with an existing packager for a different project. Close all packagers and try again.

I definitely closed all packagers this time, and encountered the same issue.
Odd. Seems others are using this fine; wish I could figure out the root cause here.


Extract custom error creation from ClientDiagnostics (shared code)

Moving custom error creation out of ClientDiagnostics and into DiagnosticsOptions and HttpPipeline.
related to #27490 #24031
Changes required for the generator to utilize this new approach:

Construction of RequestFailedException would change from

RequestFailedException rfex = await ClientDiagnostics.CreateRequestFailedExceptionAsync(failedSubResponse).ConfigureAwait(false);

to
RequestFailedException rfex = await _pipeline.CreateRequestFailedExceptionAsync(failedSubResponse).ConfigureAwait(false);

Changes required for clients that want to customize their Error content changes
Previously, clients created a sub-class of ClientDiagnostics and created an override for ExtractFailureContent
Now clients would create a sub-class of DiagnosticsOptions and set a value for CustomFailureContentExtractor , which is a new protected internal property on DiagnosticsOptions
public class TableClientDiagnosticsOptions : DiagnosticsOptions
{
    /// <summary>
    /// Initializes a new instance of the <see cref="TableClientDiagnosticsOptions"/> class.
    /// </summary>
    internal TableClientDiagnosticsOptions()
    {
        CustomFailureContentExtractor = ExtractFailureContent!;
    }

    internal static (ResponseError? Error, IDictionary<string, string>? AdditionalInfo) ExtractFailureContent(
    <...>
}

And the FooClientOptions need to call the base ctor to initialize the DiagnosticsOptions. (Note: this DiagnosticsOptions sub-class pattern was introduced recently by Azure.Identity)
public class TableClientOptions : ClientOptions
{
    public TableClientOptions(ServiceVersion serviceVersion = Latest) : base(diagnostics: new TableClientDiagnosticsOptions())
    <..>
}

Would it make sense to link this to the issue it's addressing?

FooRestClient would take DiagnosticsOptions as an additional parameter.

Does this only apply to HLCs?  I expect we'll want to do it in DPG clients and probably Mgmt plane libraries as well.

FooRestClient would take DiagnosticsOptions as an additional parameter.

Does this only apply to HLCs? I expect we'll want to do it in DPG clients and probably Mgmt plane libraries as well.

Do DPGs not utilize DiagnosticsOptions ?

API change check for Azure.Data.Tables
API changes have been detected in Azure.Data.Tables. You can review API changes here
API changes
+     public class TableClientDiagnosticsOptions : DiagnosticsOptions {
+     }
+         public TableClientDiagnosticsOptions Diagnostics { get; }

API change check for Azure.Core
API changes have been detected in Azure.Core. You can review API changes here
API changes
+     public delegate (ResponseError? Error, IDictionary<string, string>? AdditionalInfo) CustomFailureContentExtractor(string? message, ResponseHeaders responseHeaders);
+         public bool SuppressNestedClientSpans { get; set; }
+         protected CustomFailureContentExtractor? CustomFailureContentExtractor { get; set; }
+         public RequestFailedException CreateRequestFailedException(Response response, ResponseError? error = null, Exception? innerException = null);
+         public ValueTask<RequestFailedException> CreateRequestFailedExceptionAsync(Response response, ResponseError? error = null, Exception? innerException = null);

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Data.Tables
Azure.Core


closes #212

closes #212

@hkirat had to create a new PR due to computer issues.
Is this implementation right? Or should I create the interface in a different file?

#241 seems to be a duplicate of this issue.
@krishhh16 I would recommend you close one of these PRs to not come across as spammy.

Ahh alright, I had to create another one because of a Linting and formatting on PR check was failing, just wanted to see if creating another one that fixes the linting problem fixes the check

@krishhh16 No worries. Feel free to ignore the failing CI PR check for now as it's being resolved in #244 for now. Your changes should still be valid!


Add a sample CSV file in the tap CSV documentation

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/1199
Originally created by @dmor on 2019-10-24 18:34:04

From @kressaty dogfooding notes:

TODO Wondered if they had a sample CSV that works for sure

Having a sample file to extract from is a great way to help users try Meltano without being worried we will damage their data, and also familiarize them with the proper format. This is a typical thing you will see with tools where you need to upload a CSV (like an email marketing tool)

View 5 previous comments from the original issue on GitLab


NotificationManager don't cleanup in Octane

Package
filament/filament
Package Version
v2.12.17
Laravel Version
v9.14.1
Livewire Version
v2.10.5
PHP Version
8.0.16
Bug description
Filament\NotificationManager uses a static variable '$notifications' that is not flushed between requests, causing the same notification to show again.
Steps to reproduce
No response
Relevant log output
No response

Thanks for the report. Can you submit a PR to fix this? Maybe we need to bind NotificationManager to the container as a facade, instead of a static class.

@danharrin Done, can you please review it?


Picking a startDate after the initial endDate

Given I have a DateRangePicker initialized with the startDate Oct 15 and the endDate Oct 16, when I try to set the startDate to Oct 17, I get this warning:

Is this by design and can I suppress the warning?

Have you been able to reproduce this in the storybook? Can you print out what is being passed to the DateRangePicker by your SearchForm?

This happened to me when I accidentally passed an invalid date - try manually logging moment(endDateValue)` and see what happens.

Has anyone been able to fix this issue - I'm facing the same thing with my DateRangePicker. Any input/advice would be greatly appreciated.

Hi there, can I see your set-up @aakriti1215? This might happen if you try to convert the moment object passed back in onDatesChange to something else.

@majapw Hi, I just wanted to start off by thanking you for your contribution to this, it's an awesome DateRangePicker! So, I figured out my issue, it was a little different that the one described - I had to put an if statement in my onDatesChange that corrected for if startDate > endDate and that fixed it!

Glad it was fixed!


Am I misunderstanding the usage?

public class User:
    {
        public string FirstName { get; set; }
        public string LastName { get; set; }

     [Projectable]
     public string FullName => LastName + " / " + FirstName;

    }

// want  wirte like this
_userRepository.Where(t => t.FullName .Contains("CC")).First()    //Translation of member 'FullName' on entity type 'User' failed

_userRepository.Select(t => t.FullName).First()  //will cause  query for all fields  (not   LastName FirstName  two filed)

You'll have to enable Projectables within your DbContext:
e.g. in case of DI:
services.AddDbContext<ApplicationDbContext>(options => {
      options
          .UseSqlite(dbConnection)
          .UseProjectables() // Add this line
  })

I'll update the readme to reflect this information, thanks for bringing it up!

You'll have to enable Projectables within your DbContext:
e.g. in case of DI:
services.AddDbContext<ApplicationDbContext>(options => {
      options
          .UseSqlite(dbConnection)
          .UseProjectables() // Add this line
  })

thanks，The reason for the difference is ？
1、[Projectable]  public string FullName => LastName + " / " + FirstName;
2、[Projectable]  public string FullName =>  => $"{LastName}  /  {FirstName}"
_userRepository.Where(t => t.FullName .Contains("CC")).First()    // 2. will error  can  not  translate  string.formate

@ByZhouhang
EF Core does not support string interpolation (String.Format), this library does not change that fact, see: https://github.com/dotnet/efcore/issues/6532#issuecomment-840081767


ODBC header check

added http header check on "User" field to get ODBC info
added bitmask of flags to request header

ack

is there a reason why we use the int-enum pattern instead of going for enums and EnumSet?


UnregisterEventProcessorAsync does never complete ?

This code part:
// Disposes of the Event Processor Host
await eventProcessorHost.UnregisterEventProcessorAsync();

does not return?
Also the CloseAsync(...) method on the SimpleEventProcessor class is never called?
See example gist.

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

ID: c4c6d63e-95f5-de2c-972b-4da5fe71a6a6
Version Independent ID: 338bbd1b-d86d-ff48-0b8a-1d48cb9547f2
Content: Send events to Azure Event Hubs using .NET Standard
Content Source: articles/event-hubs/event-hubs-dotnet-standard-getstarted-send.md
Service: event-hubs
GitHub Login: @ShubhaVijayasarathy
Microsoft Alias: shvija

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

@StefH could you provide additional context?  Can you point to the issue in the document or the provided sample code?

Hello Jason. The code part is described in the issue and my example code (which is based on the example code from the docs) is also linked via a gist.

@ShubhaVijayasarathy could you take a look at this?

I'm also seeing this behavior. Is there any update here?

For anyone else that found their way here, I had the same problem because I was calling UnregisterEventProcessorAsync indirectly from within ProcessEventsAsync of my IEventProcessor and because of that it wouldn't terminate.

The quick start has been updated recently. Please try again and let us know if you still run into the issue. Thanks.
#please-close


Argument of type 'this' is not assignable to parameter of type 'Stack'.

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
v18.16.1
Amplify CLI Version
12.1.1
What operating system are you using?
Mac
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
No manual changes made
Describe the bug
Following this documentation without touching anything, the code throws:
Argument of type 'this' is not assignable to parameter of type 'Stack'.   Property 'toYamlString' is missing in type 'cdkStack' but required in type 'Stack'.ts(2345) stack.d.ts(328, 5): 'toYamlString' is declared here.
The docs are out of date and still using the CDK v1 (or is this on purpose? Does amplify custom support the cdk v2? running amplify push results in:
Fetching updates to backend environment: dev from the cloud.🛑 Failed building resource customResource
✖ There was an error pulling the backend environment dev.
🛑 There was an error building the custom resources
Command failed with exit code 2:

amplify/backend/custom/customResource/node_modules/.bin/tsc
cdk-stack.ts(29,9): error TS2345: Argument of type 'this' is not assignable to parameter of type 'Stack'.
  Property 'toYamlString' is missing in type 'cdkStack' but required in type 'Stack'.

Resolution: There may be errors in your custom resource file. If so, fix the errors and try again.
Learn more at: https://docs.amplify.aws/cli/project/troubleshooting/

Session Identifier: 36eac1b6-8397-4c58-9f00-b437bb2d2361

### Expected behavior

This should allow me to create custom resolver for my APIs

### Reproduction steps

1. amplify add custom
2. Amplify push

### Project Identifier

2a1a5abf215bc8ea439046e72269921e

### Log output

<details>

Put your logs below this line

</details>

### Additional information

_No response_

### Before submitting, please confirm:

- [X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
- [X] I have removed any sensitive information from my code snippets and submission.

Hey @Tswalano, thank you for reaching out. Thank you for pointing the documentation, we will work on updating the example.
The issue appears to be a duplicate of https://github.com/aws-amplify/amplify-cli/issues/13122. The issue occurs when there is a version mismatch between the version of aws-cdk-lib the extensibility helper depends on and the version that is installed directly to the custom resource's package.json.
Could you try matching the version similar to the example here: https://github.com/aws-amplify/amplify-cli/issues/13122#issuecomment-1680929343

Does amplify custom support the cdk v2?

Amplify custom currently does support AWS CDK v2, please refer to the document providing information on the migration: https://docs.amplify.aws/cli/migration/aws-cdk-migration/

This seems to fix the issue thank you... While i still have you here can we also use APPSYNC_JS to write the resolvers in the Amplify Custom CDK instead of using VTL templating?

@Tswalano glad to hear that you were able to mitigate the issue.

While i still have you here can we also use APPSYNC_JS to write the resolvers in the Amplify Custom CDK instead of using VTL templating?

Yes, we can write a custom resource that creates JS resolvers similar to the example.
For example:
Schema
input AMPLIFY {
  globalAuthRule: AuthRule = { allow: public }
} # FOR TESTING ONLY!
type Todo @model {
  id: ID!
  name: String!
  description: String
}

type Query {
  querySomething(id: String!, name: String): Todo
}

Custom resource:
const requestJS = `
import { util } from '@aws-appsync/utils'

export function request(ctx) {
  return {
    operation: 'GetItem',
    key: util.dynamodb.toMapValues({ id: ctx.args.id }),
  }
}

export function response(ctx) {
  return ctx.result
}
      `;

// unit resolver
const resolver = new appsync.CfnResolver(this, "custom-resolver", {
 apiId: cdk.Fn.ref(retVal.api.<app-name>.GraphQLAPIIdOutput),
  fieldName: "querySomething",
  typeName: "Query",
  dataSourceName: "TodoTable", // DataSource name
  runtime: {
      name: "APPSYNC_JS",
      runtimeVersion: "1.0.0",
    },
    code: requestJS,
});

I would suggest testing this in a test/dev environments for any unexpected behaviours.

Awesome.. Thanks :)


SMTP connection failed.

Seems to be cert related? Thoughts?
Is it a matter of konga app not allowing my companies internal self-signed cert upon connecting to the smtp relay server? If so is there an environment variable and a nice place you recommend storing our crt/key files?
Maybe setting NODE_TLS_REJECT_UNAUTHORIZED=0 as an environment variable would do the trick?
Sending 500 ("Server Error") response:
 { error:
   { Error: self signed certificate in certificate chain
       at Error (native)
       at TLSSocket.<anonymous> (_tls_wrap.js:1092:38)
       at emitNone (events.js:86:13)
       at TLSSocket.emit (events.js:185:7)
       at TLSSocket._finishInit (_tls_wrap.js:610:8) code: 'SELF_SIGNED_CERT_IN_CHAIN' } }
Health_checks:notify:error Error: Missing credentials for "PLAIN"
    at SMTPConnection._formatError (/app/node_modules/nodemailer/lib/smtp-connection/index.js:591:19)
    at SMTPConnection.login (/app/node_modules/nodemailer/lib/smtp-connection/index.js:340:38)
    at connection.connect (/app/node_modules/nodemailer/lib/smtp-transport/index.js:270:32)
    at SMTPConnection.once (/app/node_modules/nodemailer/lib/smtp-connection/index.js:188:17)
    at SMTPConnection.g (events.js:292:16)
    at emitNone (events.js:86:13)
    at SMTPConnection.emit (events.js:185:7)
    at SMTPConnection._actionEHLO (/app/node_modules/nodemailer/lib/smtp-connection/index.js:1113:14)
    at SMTPConnection._processResponse (/app/node_modules/nodemailer/lib/smtp-connection/index.js:747:20)
    at SMTPConnection._onData (/app/node_modules/nodemailer/lib/smtp-connection/index.js:543:14)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at readableAddChunk (_stream_readable.js:176:18)
    at TCP.onread (net.js:547:20)
KongProxyController request error undefined

Seems the ENV variable gets me a step closer to ignore TLS, say my SMTP server does not support AUTH as it responds to konga letting me know that:
"notify:error Error: Invalid login: 503 #5.3.3 AUTH not available"
Is there any env variable or way I can get this nodemailer tool you integrated to not pass PLAIN, but a type that does not require user/pass?
"
Health_checks:notify:error Error: Missing credentials for "PLAIN"
at SMTPConnection._formatError (/app/node_modules/nodemailer/lib/smtp-connection/index.js:591:19)
at SMTPConnection.login (/app/node_modules/nodemailer/lib/smtp-connection/index.js:340:38)
at connection.connect (/app/node_modules/nodemailer/lib/smtp-transport/index.js:270:32)
at SMTPConnection.once (/app/node_modules/nodemailer/lib/smtp-connection/index.js:188:17)
at SMTPConnection.g (events.js:292:16)
at emitNone (events.js:86:13)
at SMTPConnection.emit (events.js:185:7)
at SMTPConnection._actionEHLO (/app/node_modules/nodemailer/lib/smtp-connection/index.js:1113:14)
at SMTPConnection._processResponse (/app/node_modules/nodemailer/lib/smtp-connection/index.js:747:20)
at SMTPConnection._onData (/app/node_modules/nodemailer/lib/smtp-connection/index.js:543:14)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at readableAddChunk (_stream_readable.js:176:18)
at TCP.onread (net.js:547:20)
"
Thanks.

Decided not to use konga for notifications, have other tools already so closing this as its not important and might be more specific to my companies smtp settings.

i got the error like this
KongProxyController request error undefined
Sending 500 ("Server Error") response:
{ error:
{ Error: connect ECONNREFUSED <IP_ADDRESS>:8001
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1104:14)
errno: 'ECONNREFUSED',
code: 'ECONNREFUSED',
syscall: 'connect',
address: '<IP_ADDRESS>',
port: 8001 } }


CodeCombat activities button changed to Solve instead of Fetch

Issue #748
CodeCombat activities to have SOLVE buttons instead of FETCH

Issue #768
Fixed some low impact DeepScan issues


segfault on get_image_handle

Problem
Expected behavior:
Calling ImageCache::get_image_handle(path) should return NULL or an image handle.
Actual behavior:
get_image_handle dereferenced a null pointer and segfaulted.
I'm using OpenImageIO 1.8.16 (installed via vcpkg on windows). I did not have the time to compile and test the latest master.
The null pointer dereference seems to happen in the find_file function:
https://github.com/OpenImageIO/oiio/blob/cbdf585a6b69b6a2a5dcff4be5a36c442960a694/src/libtexture/imagecache.cpp#L1157
The code assumes that thread_info != NULL, but the function is called by get_image_handle with thread_info=NULL (the default argument), which is valid according to the documentation.
At first glance, the latest master also makes the same assumption:
https://github.com/OpenImageIO/oiio/blob/3c4a7af1846918376249b1b12698090c5d79768c/src/libtexture/imagecache.cpp#L1192
Versions

OIIO branch/version: 1.8.16
OS: Windows 10 x64
C++ compiler: MSVC 2017

Yes, you are quire right. I think I have a solution, coming up.

PR #2184 is a proposed fix. Care to try on your end?  (It's a 2-line patch, should be easy to apply on your side, even if not in master.)

This seems to fix the issue on my end, thanks!


peace

Staying away from NATO is the best way to keep peace with the Ukrainians. What is Ukraine joining NATO for? To bomb the Federal Republic of Yugoslavia? To bomb Iraq?

Ukraine do not join NATO, quick Googling: https://www.theguardian.com/world/2022/mar/15/kyiv-facing-dangerous-moment-amid-signs-of-russias-tightening-grip

I know that. Have this tendency.

👌 https://en.wikipedia.org/wiki/Member_states_of_NATO

Ukraine has not joined Nato. In fact NATO rejected Ukraines membership AND Zelensky has stated his government is willing to completely rule it out in exchange for Russia ending its massacre.

Joined 7 days ago

This is a nazi spam bot account, nothing to discuss with it.
r*ssian :ship: you know the direction.


Azure Site Recovery (ASR) service changes for new api-version 2018-07-10

Default build failed with following errors which we are not able to relate with changes in the PR.
Need help to debug further and resolve the issues.

c:\workspace\VSUpgradeForTest\tools\bootstrapTools\bootstrap.targets(5,4): error : The remote server returned an error: (500) Internal Server Error.

c:\workspace\VSUpgradeForTest\tools\SdkBuildTools\targets\common.targets(470,5): error MSB4062: The "SDKCategorizeProjects" task could not be loaded from the assembly c:\workspace\VSUpgradeForTest\tools\SdkBuildTools\tasks\net46\Microsoft.Azure.Sdk.Build.Tasks.dll. Could not load file or assembly 'file:///c:\workspace\VSUpgradeForTest\tools\SdkBuildTools\tasks\net46\Microsoft.Azure.Sdk.Build.Tasks.dll' or one of its dependencies. The system cannot find the file specified. Confirm that the  declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask.

Thank you.

@sriramvu
Start admin Developer prompt
Sn.exe -Vr *,31bf3856ad364e35
and try again, let us know if this still doesn't work

Hi @dsgouda, mentioned failures are not local dev box issues.
Observed them in Jenkins build which got triggered with this PR.
https://azuresdkci.westus2.cloudapp.azure.com/job/CI-NetSDK_U/1589/
Let us know what needs to be done from our side.
Thank you.

Sharing azure-rest-api-specs PR and spec path after "Missing Spec PR link" label:

1st spec PR with the new api-version: https://github.com/Azure/azure-rest-api-specs/pull/5207
Latest spec path: https://github.com/Azure/azure-rest-api-specs/blob/master/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json

Taking a look


"Login Error - Server Busy"

Expected Behavior
Normal Login on Windows 7 and Linux [Debian]
Actual Behavior
Normal Login on Windows 7
"Login error, server busy" on Linux
Steps to Reproduce
Use exact same build on Linux and Windows, get different results.
Other Information
OS: Linux [Debian]
As of last night everytime I try to login on my Linux box I get "Login error, server busy". I've been using the Bot on my Linux box for more than a week without any problems.
I was running an older version but even after moving to the latest Master branch I still have the same issue. I can login via the Bot on Windows 7 just fine [Same branch and version].
Any ideas?

Debug Output:
2016-07-31 13:56:39,572 [   rpc_api] [DEBUG] Execution of RPC
2016-07-31 13:56:39,574 [connectionpool] [ INFO] Starting new HTTPS connection (1): pgorelease.nianticlabs.com
2016-07-31 13:56:39,649 [connectionpool] [DEBUG] "POST /plfe/rpc HTTP/1.1" 403 None
2016-07-31 13:56:39,650 [   rpc_api] [DEBUG] Parsing main RPC response...
2016-07-31 13:56:39,650 [   rpc_api] [WARNING] Unexpected HTTP server response - needs 200 got 403
2016-07-31 13:56:39,650 [   rpc_api] [DEBUG] HTTP output:

403 Forbidden

403 Forbidden
nginx/1.11.1

2016-07-31 13:56:39,650 [    pgoapi] [ INFO] Cleanup of request!
2016-07-31 13:56:39,651 [    pgoapi] [ INFO] Login failed!

I got the same also.

Also I got the same error

I think they banned IP from cloud provider (aws, heroku, digitalocean, etc). My box in digitalocean got banned too.

 Guess I'm running the bot from home then.

Can confirm on AWS as well.

I've been using PythonAnywhere btw, guess they're within the IP range too.

Confirmed that on my pc the bot works well. Might be VPS providers blockage.

I launched from my server@home and got the issue.
Did they ban my ip ? :o


CQL and FLARE Cohort connector

A cohort connector should be created, which allows TORCH to use the CCDL part of the CRTDL (attribute = cohortDefinition) and either sends it to the FLARE cohort endpoint or sends it to the FHIR server directly via a CQL adapter.
For the FLARE cohort endpoint see:
https://github.com/medizininformatik-initiative/torch/issues/10
For an example of a CQL execution - see:
Note - first (in StoreFeasibilityResources.java) a Measure and Library are send to the FHIR server and then the Measure evaluation is executed (in EvaluateCqlMeasure.java)
https://github.com/medizininformatik-initiative/mii-process-feasibility/blob/develop/mii-process-feasibility/src/main/java/de/medizininformatik_initiative/process/feasibility/service/StoreFeasibilityResources.java
https://github.com/medizininformatik-initiative/mii-process-feasibility/blob/develop/mii-process-feasibility/src/main/java/de/medizininformatik_initiative/process/feasibility/service/EvaluateCqlMeasure.java

#via a CQL adapter.
Can I really use the CQL adapter to get the patient IDs?

#via a CQL adapter.
Can I really use the CQL adapter to get the patient IDs?

yes - see: https://github.com/medizininformatik-initiative/torch/issues/12

CQL to be implemented later


DO NOT MERGE Towards 0.6.9.

Review by @nicolasstucki for fast-forward on master.
FTR, the Towards 0.6.8 commit was 72363b34c441fc5fbeb15dbb37bceac65e6a68a2

LGTM

Refer to this link for build results (access rights to CI server needed):
https://scala-webapps.epfl.ch/jenkins/job/scalajs-pr/2937/
https://scala-webapps.epfl.ch/jenkins/job/scalajs-matrix-build/3803/
Test PASSed.


Visual improvements

Coverage increased (+0.08%) to 56.24% when pulling 0ebbea74539bd73e14066e4c58d9474926b45a47 on gabrielburnworth:master into 99f7b9d75f78bd2fb255a35d856e7052e14f2e8f on FarmBot:master.


Feature: Return helpers in hits > empty template

The use case is to display certain text only if there was a query given for a search, otherwise display a different message. Outside of using a closure there's no helpful methods.
For example. the Toggle widget has a isRefined parameter that is passed to the template so you can use it like so:
{{#isRefined}}checked{{/isRefined}}

It would be great to have a few like this for the hit>empty template to use like so..
No recipes were found with that criteria {{#hasQuery}}matching the search term{{query}}{{/hasQuery}}

Good idea! Let’s think about how this can be implemented. Query, search parameters are useful features. For now you can work around it by using a function rather than a straight template.

Sorry for not seeing this earlier, but the query actually is returned in the empty template, which means it can be used like this:
https://codesandbox.io/s/admiring-tharp-6kf7p?file=/src/app.js
No recipes were found with that criteria {{#query}}matching the search term <q>{{query}}</q>{{/query}}


[Trivial] Should use '$(MAKE)' instead of 'make', inside posix.mak Makefile

We cannot assume the name of the makefile processor has to be 'make', for example on freebsd, gnu make is called gmake.

Urgh - dlang-bot seems to be running into API limits with the GitHub API :/

@dkgroot dkgroot changed the title from [Trivial] Should use instead of make inside a Makefile to [Trivial] Should use instead $(MAKE) of make inside Makefile

In the future, please update the commit message as well.

@CyberShadow Sorry about that !
Thanks for review and merge guys !


Fail to using extend feature from less

I wanna using extend feature , like this:
.flexBox {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: flex;
}
header {
     .flexBox
}

But got error msg like this :
Module build failed: ModuleError: CssSyntaxError:
house-list.less:20:5: Unknown word
header {
    .flexBox;
    ^

with my webpack.config.js
...
module: {
        loaders: [
            { test: /\.vue$/, loader: vue.withLoaders({
                css: ExtractTextPlugin.extract(
                    "style-loader", "css-loader?sourceMap!less!cssnext-loader")
                }),
            },
            { test: /\.less$/, loader: ExtractTextPlugin.extract(
                "style-loader",'css-loader?sourceMap!less!cssnext-loader')
            },
            { test: /\.css$/, loader: ExtractTextPlugin.extract(
                "style-loader", "css-loader?sourceMap!cssnext-loader")
            },
            { test: /\.(jpg|png|gif)$/, loader: "file-loader?name=images/[hash].[ext]"},
            { test: /\.(html|tpl)$/, loader: 'html-loader' }
        ]
    },
...

How would I do this?

Yes I'm getting a similar error.  The worst part is that lessc directly form the command line works perfectly.  Unclear why less-loader doesn't work just like lessc...

As a quick fix, just use autoprefixer for this kind of stuff. Have you tried setting a mixin, and then calling it? That's working correctly for me

This doesn't work.
/ The micro clearfix http://nicolasgallagher.com/micro-clearfix-hack/
.clearfix() {
  *zoom:1;

  &:before,
  &:after {
      content:"";
      display:table;
  }
  &:after {
      clear:both;
  }
}

body {
  width: 100%;
  .clearfix;
}

also doesn't work &:extend() between 2 files

Also getting this issue trying to use mixins. Any update?

Sorry, there is not enough information to reproduce this. Please provide a minimal test repository that demonstrates the problem so I can check that out. Try to remove as much stuff as possible since it helps tracking down the problem.
I'll re-open the issue then.

Same problem. Both extend and mixin cannot be used


http no longer reporting

We had two releases this week.  In the first one, the http reporting from appmetrics is firing. In the second one, the version of appmetrics and our wrapper package did not change, but appmetrics stopped reporting http events.
I'm in the process of ruling out everything on our side.  One hypothesis is that appmetrics managed to get different binary dependencies, and the recent version bump for omr-agentcore adds weight to it, but it is unconfirmed at this point.  This is just a heads up in case it is an issue with appmetrics that might jump to someone's mind, otherwise, I'll report back when I find the exact cause.

@majgis  thanks for the heads up, we'll investigate from our side as well

I've done a quick test on Mac and Linux (Ubuntu 16.10) that just does console logging of http events from appmetrics.monitor() using Node 6.5 and it seems to work OK so it looks like the events are firing at least locally.
What OS and Node versions were you using? Where were you listening for the events and not seeing them, locally or remotely?

Thanks for checking.  I confirmed that it is the same version of appmetrics and the binaries downloaded were the same.  I'm digging deeper to see what change in our code introduced the issue.

Node v4.6.0
CentOS 6.7
Listening for the events locally

I don't have access to a CentOS box right now but I have tried Node v4.6.0 and it seems to work.
Would you be able to try a simple test case? If you start this and just ping it with a browser or something like curl http://<IP_ADDRESS>:1337/ you should see http requests being monitored:
var appmetrics = require('appmetrics');
var monitoring = appmetrics.monitor();

var http = require('http');

monitoring.on('http', function (data) {
    console.log('metric:');
    console.log('[time: ' + data.time + ']' );
    console.log('[duration: ' + data.duration + ']');
});

var req_count = 0;
var server = http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  req_count++;
  res.end('Request count: ' + req_count +'\n');
  if( req_count == 1000 ) {
          server.close();
  }
}).listen(1337, '<IP_ADDRESS>');
console.log('Server running at http://<IP_ADDRESS>:1337/');

If this doesn't quite match what you are doing let me know what's different and hopefully we'll be able to get a simple test case that better matches your scenario.
Note that moving require('http'); above require('appmetrics'); will stop the test working. Your require order hasn't changed has it?

There was a change to how the server is being started. Thanks for your help, I'll compare this to what we have and report back.

The order of the require statements was the issue.
I was fixated on when the server was started vs when the monitor was started.
I didn't see this noted in the readme.  Also, it could output an warning message or log message.  Would you take a PR with one or more of these options?

Could you raise an issue? We'll update the docs and see if there's anything else we can do to make this clearer.


Protect against NaN rotation values

Throws an Error if a DisplayObject's rotation was set to NaN. Without this check, Sprite's textures could disappear silently, with no reference to an improper rotation value as the culprit.

This problem took me some time today because it was mixed with the container type, I'm using pixi.js 3.0.6
Using NaN in rotation for Sprites in PIXI.Container show them ok but if you change to a PIXI.ParticleContainer all sprites dissapear without warning/errors in the console.

@Jacq Correct, all we do is upload the value to the GPU. Uploading NaN could do a lot of weird things. Taking a significant performance hit to ensure you didn't have a NaN value (when you can just breakpoint and debug) is not worth it.
Potentially we could do some meta programming to have the "debug" version of pixi include guards like this and the "production" version not include it (similar to how STL works in many places) but that is not likely to happen soon. I opened a feature request for it in #2032.


Polyfill import.meta.url

Related #7

Adds CommonJS support
Always resolve to proper dist/* path

Currently warning is emited:
 warning: "import.meta" is not available in the configured target environment ("es2019") and will be empty
    4 │ const { __dirname } = createCommonJS(import.meta.url)

Moving to #7


Feature/lb version aware install

Merging with lint errors around a deprecated package. To fix later.


#data assimilation

Description
in the gr4j_cn assimilation demo notebook
data assimilation at first perturb to add noise to Precipitation Temperature and observation discharge,but it does not perturb  to potential Evapration,
Environment

Raven version used, if any:
Python version, if any:
Operating System:

Steps to Reproduce
Paste the command(s) you ran and the output.

Additional Information
Links to other issues or sources.

Solved with new release of RavenC that does this processing.


EJB Container initialization error

While trying to install OSCM, I receive the following error:
deployApplication:
     [echo] asadmin --user admin --passwordfile C:\Users\ELMERT~1\AppData\Local\Temp\BES\script1909800810.txt --port 8448 deploy
     [exec] Command deploy failed.
     [exec] remote failure: Error occurred during deployment: Exception while loading the app : EJB Container initialization error. Please see server.log for more details.

Using

Ant 1.10.1
Java EE 7u3
PostgreSQL 9.6.3-2
Windows Server 2016 Standard

server.txt

I guess the root cause is a connection error to the DB on line 469 of server.txt.
Why do not you check the connection setting to DB?

Setting the localhost entries of postgres in pg_hba.conf to "trust" fixed the issue, but this seems like a security hole.

I'm just a user, not a developer...
Honestly, I think it's not such a big issue because we can fetch plain password from domain.xml.
So, Even without it, we lose when AP server has been invaded by attackers.

I forgot about that. Makes sense.

Setting the localhost entries of postgres in pg_hba.conf to "trust" fixed the issue, but this seems like a security hole.
You doesn't have to open postgres to whole world to get it work. Basically you can allow that from the subnetwork x.x.x.x all the connections have to be password protected with md5 encryption. Setting it to trust shouldn't be used on production or even devs environments.
I can advise you to take a look at the possible settings of pg_hba.conf file: https://www.postgresql.org/docs/9.5/static/auth-pg-hba-conf.html under the "auth-method" bullet.


Alt Key not recognized in Linux Editor

Godot version:
3.0.2 Stable
OS/device including version:
Ubuntu MATE 18.04
Issue description:
Left or right ALT keys are not recognized by the editor, so any keyboard shortcuts using ALT are unavailable.  Other applications running alongside the Godot editor successfully recognize ALT, for example Firefox.  It may be an issue with MATE, but using Marco or Compiz compositor doesn't affect the behavior.  This is for the editor specifically, not for exported game builds (which I haven't tested).  Confirmed on two separate hardware installations of same OS.
Steps to reproduce:
Press any ALT keyboard shortcut combination on Linux while in editor - nothing happens.
Minimal reproduction project:
Not project-related.

On Ubuntu 18.04 in d5bb6faac77334154d2b16a3ff2d7ef6479b98be build shortcuts with alt key are working (checked alt+[up]/[down] in script editor).

Does it work if you change your window manager's "action" key from Alt to Meta (for example)? This should generally not have an impact on keyboard shortcuts, but it will definitely impact Alt + mouse button combinations.

After upgrading to 3.0.3, the Alt key is now working in the editor!


Merging platform grep expression with existing grep options from mocha.opts

This PR is for the issue https://github.com/wix/detox/issues/712.

I understand that the current implementation causes issue to you, and I can see it happening for us as well. I'm not sure this solution is a good one though, as it is not general enough (no handling of other test runners, other param overrides, etc).
I do however want to engage in a conversation, and try to find a good and general solution for problems of this type.
We can start a new discussion in an issue, linking the current issues and this PR, and let's talk.

That's ok and I understand it's not a trivial change.
However, the platform option change in the latest detox version broke the existing functionality and now we don't have the flexibility to add our own options.
This change probably is the minimum change we could make to fix this issue at this point in time until we come up with a better solution.


fix: updated and consolidated quotes

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] All the files I changed are in the same world language, for example: only English changes, or only Chinese changes, etc.

Closes #38200
Closes #39072

@raisedadead I have squashed the commits down to 1. The code is the same, but the Travis build tests have failed even though they passed before I squashed the commits.
How do I fix this?

@raisedadead fixed it, the first time I squashed the commits the last commit was left out, so I made the commit again then squashed the 2 commits into 1.

@Sky020 I removed client/src/templates/Challenges/utils/get-words.js, but had to add it back in as the build failed because client/src/templates/Challenges/redux/current-challenge-saga.js uses it.

@Sky020 just realised that file should just reference the only get-words.js file remaining, so did that.

That looks fine, so far. If you have done what ojeytonwilliams suggested, then you can mark the request as Resolved. This lets him know you have made the changes, and he can review it again.

@ojeytonwilliams resolved the issues you flagged I think, so it should be ready for review again.

cool, cheers everyone for answering any questions I had.

No problem @rdm100, thanks for taking the time to do this.  It will definitely make maintaining this a lot easier.


envoy/lds: create inbound filter chains per service port

Description:
This change makes the inbound filter chains for in-mesh
and ingress a per port construct, so that protocol
specific filters and rules can be enforced per port.
Since protocol specific filters (ex. TCP proxy vs HTTP
Connection Manager) cannot be filter on the same filter
chain, a port specific filter chain is created to be
able to handle per port:protocol filtering.
Additionally, this change adds new tests for the ingress
filter chain and updates the existing tests for mesh filter
chains. The file lds/response_test.go was ingress specific
and has been rewritten to lds/ingress_test.go.
This is required for TCP filtering and routing: #1521

Affected area:

New Functionality      [ ]
Documentation          [ ]
Install                [ ]
Control Plane          [X]
CLI Tool               [ ]
Certificate Management [ ]
Networking             [X]
Metrics                [ ]
SMI Policy             [ ]
Security               [ ]
Tests                  [ ]
CI System              [ ]
Performance            [ ]
Other                  [ ]

Please answer the following questions with yes/no.

Does this change contain code from or inspired by another project? If so, did you notify the maintainers and provide attribution?
No

Codecov Report

Merging #2140 (3a79df0) into main (16be519) will decrease coverage by 0.05%.
The diff coverage is 59.09%.

@@            Coverage Diff             @@
##             main    #2140      +/-   ##
==========================================
- Coverage   57.86%   57.81%   -0.06%
==========================================
  Files         144      144
  Lines        5995     6021      +26
==========================================
+ Hits         3469     3481      +12
- Misses       2523     2537      +14
  Partials        3        3

Impacted Files
Coverage Δ

pkg/envoy/lds/response.go
7.27% <0.00%> (ø)

pkg/envoy/lds/inmesh.go
70.70% <27.77%> (-6.04%)
:arrow_down:

pkg/envoy/lds/ingress.go
84.61% <82.60%> (-5.63%)
:arrow_down:

pkg/envoy/lds/listener.go
31.46% <100.00%> (+1.57%)
:arrow_up:

pkg/envoy/route/config.go
95.23% <0.00%> (-0.80%)
:arrow_down:

Continue to review full report at Codecov.

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


Why everything get's re rendered?

Hello!
Thank you for this great package, it has helped me to build my blog!

About the issue I am having:
We can see that only "hello" was added to the .org file:

When I execute my shell script named build.sh that runs this command:
emacs -Q --script build-site.el
build-site.el content:
;; ~/.emacs.d/elpa path.
(require 'package)
(setq package-user-dir (expand-file-name "./.packages"))
(setq package-archives '(("melpa" . "https://melpa.org/packages/")
			 ("elpa" . "https://elpa.gnu.org/packages/")))

;; Initialize the package system
(package-initialize)
(unless package-archive-contents
  (package-refresh-contents))

(message "Package refresh complete!")

The html files are being generated, all good, BUT for some reason EVERYTHING get's rebuild. In my case all 41 files. Only the id tags change.. I don't really understand why. Is it intentional? I don't really like that it changes the "file modified" data, not sure if it translates to the date shown in the blog itself? Also all these git commits each time I make a change will make it unworkable to version control.

I see this in the readme.org:

But even if the html files already exist, they are being re rendered.

Only the changed org-file should be re-exported. Regrettably, this does change all the ids in the HTML file, as they seem to be randomly generated by org-mode on every export. (If anyone knows a way of preventing that, I'd be most interested!) Existing HTML files should not be changed, however.
You can check out my own config to see if there are any notable differences between yours and mine. You could also try to configure your org-static-blog with absolute directory paths instead of relative ones. I've run into no ends of problems with that sort of thing, so that's perhaps worth a try.

"Only the changed org-file should be re-exported."
"Existing HTML files should not be changed, however."
I tried making a little experiment. Today is Dec 18th. I have launched emacs with "emacs -q" not to load any additional configuration.

As we can see in the image I have 3 org files in /home/nixos/GIT/org-static-blog/org directory

Dec 16 18:46 alpine.org
Dec 11 19:24 crontab__code_linux.org
Dec 16 10:01 windows-keybindings__windows.org

I have just generated them all, so we can see the html file creation time is Dec 18th, 06:23:

Dec 18 06:23 alpine.html
Dec 18 06:23 archive.html
Dec 18 06:23 crontab__code_linux.html
Dec 18 06:23 index.html
Dec 18 06:23 rss.xml
Dec 18 06:23 tag-code.html
Dec 18 06:23 tag-linux.html
Dec 18 06:23 tags.html
Dec 18 06:23 tag-windows.html
Dec 18 06:23 windows-keybindings__windows.html

I will go and modify one org file called "crontab__code_linux.org", which was last modified on Dec 11th.

Now I will regenerate the html files wiht my build command:

We can see that 6:44 I have changed the org file, then 06:45 I have regenerated the the html files and instead of only regenerating "crontab__code_linux.html", ALL html files got regenerated

So in the "Archive" page or in the post page, the date that we will see will not be from

#+date:       [2023-11-25 Sat 19:05] field that we specify in each org file (which would be my goal)
from the actual org file creation date

But it wil always be the date of when the file was generated. Which will always be the date when you make a change to ANY of your .org file.
I wish there was a way to use these in org-static-blog export:

So I would clearly see the date that I specify in org file, the a clear date when the file was created and when the file was modified.
In org-static-blog it seems that I only can see the date modifed, which changes with each change in any of the org file it seems.

Placed the above for reference, what I will try now is:

create new posts with org-static-blog-create-new-post instead any other way
try to use absolute directory paths instead of relative ones

will let you know how it goes

Okay so seems like having org-static-blog configuration in a separate file like I have(build-site.el) and then running it with build.sh script (like I described in my initial message) to generate the html files is responsible for this strange behavior where everything gets re-rendered.
IF I place my org-static-blog configuration(build-site.el) content into my emacs config, together with the rest of the packages - the behavior is proper, ONLY the modified .org files get re-rendered.
So basically this way of having multiple org-static-blog configs for different blogs does not really work(by the way, got this idea here - https://systemcrafters.net/publishing-websites-with-org-mode/building-the-site/ ).

Thank you for your deep analysis!
Org-static-blog decides who gets re-rendered in the function org-static-blog-needs-publishing-p, which simply checks file modification dates of pub-filename and post-filename. I bet it trips up with the pub-filename generation, probably due to some unresolved path thing. Emacs and path normalization is often an issue.
But I have no idea how that could be related to having the config in a different place.
Regarding dates, the #+date (and #+title) field is extracted from the post with a simple regex search. It would be simple to additionally extract some other fields. It's not quite so simple to include them in your templates, however, as the formatting is currently implemented with the builtin format-time-string, which uses a single date.


[Q] extend an existing transport stream

I want to extend an existing transport stream <IP_ADDRESS>:5000 (including video and audio) with teletext from another TS <IP_ADDRESS>:5000 (change PID 100 to PID 60) and EIT also from another TS <IP_ADDRESS>:5000 (PID 18).
Is „-P merge“ the right way for that?
Will the tables be adjusted automatically or do I have to do this manually with replaces (xml injects)?

Hi @ToniTram81
By design, each plugin does a very specific task, nothing more. The plugin merge only merges raw TS packets from a command output into the main transport stream, as those packets arrive from the the external command, nothing more.
Important: "inserting packets" means replacing null packets in the main TS (see TSDuck user's guide). Therefore, in practice, "inserting as packets arrive" means "buffering packets and inserting them when null packets arrive in the main TS". So, 1) you need enough null packets (aka "free space") in the main TS to accommodate the stream to merge, 2) if these null packets are scarce you may have some delay in the insertion.
Also, inserting packets as they arrive and when null packets are available means that there is no timing synchronization between the elementary streams from the main TS and the merge TS. If you merge data, this is not an issue. If you merge components of a service which need synchronization with video and audio, it won't work well. To do this synchronization, you need a MUX and TSDuck is not a MUX.
About Teletext, it depends on what's inside these Teletext streams. If this is only data pages, that should be fine. It this is subtitles, then you need a MUX to synchronize with audio.
About the signalization, you have to update it in another plugin (the plugin merge only inserts packets, it has no way to know that these packets carry Teletext - or any other type of data - and in which service of the main TS they should be included if necessary). The plugin inject injects complete tables. It creates or replaces a PID. If you simply want to add in a PMT a stream component with a Teletext descriptor, it is easier to use the plugin pmt and use an XML patch file to add the component.
About the EIT's, it depends whether the main TS already contains an EIT PID or not. If the main TS does not contain any EIT PID, then merge is fine. It simply merges a complete EIT PID. However, if the main TS already contains an EIT PID, then you must merge the EIT sections from the two TS and recreate a new EIT PID. The best way to do this is 1) rename the EIT PID in the merge stream before insertion, 2) after plugin merge, use plugin sections to merge the EIT sections from the two PID and replace them with one common EIT PID.

Thank you Thierry, do you have a code example for any merge? Is this only in two or more separate command lines possible or also as one-liner? The diagram at "merging and forking" (user guide page 105) is clear, but a code example would be great...

I want to merge the teletext PID 100 from <IP_ADDRESS>  into another TS. There it should have the PID 25. How can I only pic PID 100 and rename it to 25?
-P merge "tsp -I ip <IP_ADDRESS>:6666 -l <IP_ADDRESS> ..."
Thanks a lot!

How can I only pic PID 100 and rename it to 25?

-P merge "tsp -I ip <IP_ADDRESS>:6666 -l <IP_ADDRESS> -P filter -p 100 -P remap -n 100=25"

When you look at something to do, please browse through the list of plugins and their documentation, just following the table of plugins.


Use ChangeStatus enum directly in SummaryDiagram... structs

Rather than stringly-typing the change status, we now directly use the enum that we were previously stringifying.

bors merge


Splits API interface to API and VibeRestAPI

It is only cosmetic change what isn't touches anything but makes things easier to understand and maybe more flexible for further wire protocols implementation.

This makes much more sense, yes. However, I don't see it bringing any value at the moment. The REST attributes being on the interface can be seen as inelegant, but they are not so annoying that they require so much duplication.

To clarify: If it becomes a necessity in the future, we can do this. But there's no clear use case for it at the moment.

Weird PR, yes. But let it be - for some elusive reason I’m so calmer with it. :-)

To clarify: If it becomes a necessity in the future, we can do this. But there's no clear use case for it at the moment.

Value of this PR is in adding clarity.

It's not adding any clarity whatsoever. There should be a single interface defining all the public-facing API entry-points for the node.

It's not adding any clarity whatsoever. There should be a single interface defining all the public-facing API entry-points for the node.

...and another one for Vibe rest generator to distinguish between API and Vibe.d REST API implementation (what accidentally looks now like D's interface description block equal to API interface block).
This PR leads to avoid exposing symbols that are unnecessary in a particular interface, add necessary ones, change their if necessary. Say, different wiring schemes can use different addresses or may have additional calls.
Related: https://github.com/Geod24/localrest/pull/20 - in my opinion, including therefore no one knew that LocalRest actually is not implements REST

As there is not any consensus in favor of this, I am going to close this.
As mentioned in our discussions, we can re-discuss the issue once the TCP communication protocol is ready.


Revamp QA suite

A lot of the QA suite was experimentations on my part, but I think it could be loosened now.

Drop support (or at least testing) for ancient JavaScript engines.
Drop complexity analysis. Or just print it without failing.
I think we should still keep test coverage analysis and fail if there's a reduction.
Maybe drop jshint and adopt prettier so contributors don't need to care about code standards. To me which convention doesn't matter as long as there is one.
Should make it easier and better documented how to scaffold tests.
I have nothing against spec as a testing framework but if we drop support for ancient JavaScript engines this is also open for discussion. Eg. ava which is async. But as spec works and is fast enough imo, I don't see much worth changing it.
Definitely drop testem, unless it's easy to add browser testing I think node testing would be enough for luaparse.
Is it possible to drop the UMD wrapper and use some library that wraps everything during the build step? Luaparse shouldn't be keeping it up to date.

Thoughts?

Should make it easier and better documented how to scaffold tests.

Really this will help me alot to pull request again...


Update and rename _config.yml to minima

I dont think i did this right, but we'll wait and see

I am super lost, but again, ill see lol


Evaluate migrating to ArgoCD with image updater

Pros:

beautiful web ui
image updater
larger community

ToDos

set up both argo-cd and image updater charts
use existingSecret for oauth2-proxy
supply adminPassword for erpnext via Helm values
Replace all Flux HelmReleases with ArgoCD Applications

!!! Problem: ArgoCD does not support Helm lookup!

Conservative solution: Keep using Flux for deploying third-party apps, only translate this repo's top-level charts to ArgoCD Application CRDs, and outsource any lookups to an extra chart (e.g. managed-secret), which is deployed via Flux.

Possible other solution: Use Flamingo for an even deeper integration between ArgoCD and Flux, through which you could possibly switch all releases to ArgoCD Apllication CRDs and still use Helm lookup.

Question: When deploying Flux HelmReleases with an ArgoCD Application directly, does Argo recognize and display all the sub-resources created by Flux?


configuration from environment variables

There should be a function to generate a configuration from environment variables. Overriding configuration in the environment is handy for

scripts that cannot create a configuration file (or cannot edit an existing one) and cannot change the command line, and
modules that want to read configuration but do not control sys.argv (e.g. logging and security modules).

I believe Confit already supports an optional environment variable naming a configuration path. That's good, but I'd extend it to be a colon-separated path (like PATH, CLASSPATH, or PYTHONPATH) of configurations to load in order.

Sounds good!

One important caveat is that most shells have a limited character set for environment variable names. Usually the OS will support all non null characters, but shells will only support letters, numbers, and underscores. I think that will translate to only allowing overrides of variables with "well behaved names".

That should be easy to implement yourself due to good code design of confuse. You can combine layers of data gathered from different sources.
from confuse import RootView, ConfigSource
c = RootView([])
# Higher priority first
c.add(ConfigSource.of({
    'corn': 300,
    'potato': 200,
    'berries': ['blue', 'red'],
    'map': {
        'x': 3,
        'y': 4,
    }
}))
# Lower priority last
c.add(ConfigSource.of({
    'banana': 150,
    'apple': 240,
    'corn': 200,
    'berries': ['green', 'purple'],
    'map': {
        'y': 6,
        'z': 5,
        'm': 1,
    }
}))

@sampsyo any plan to support this? This would be an incredible addition in docker environment since its preferred to add config entries in docker compose files. Dynaconf does this exact thing, but for someone who already invested in confuse having this capability might be really helpful.

I would be happy to review a PR, but I do not have the bandwidth to implement this myself.


contour.setStartSegment

I am running into a small issue with the contour method setStartSegment.
The code for a bigger script does not work as expected, so I ran some simple manual tests in a glyph that’s just a number of rectangles plus a pentagon:
for c in g:
    c.setStartSegment(0)

→ start point stays in place (expected)

for c in g:
    c.setStartSegment(1)

→ start point moves by two segments counterclockwise (unexpected)

for c in g:
    c.setStartSegment(2)

→ start point moves by one segment counterclockwise in a rectangle (unexpected), but two segments counterclockwise in a pentagon (expected)

for c in g:
    c.setStartSegment(-1)

→ nothing happens (unexpected)

for c in g:
    c.setStartSegment(-2)

→ start point moves by one segment clockwise (unexpected)

Weird. Does anyone know what is going on?
Am I misunderstanding this completely?
Thanks!

Another real-world example:
g = CurrentGlyph()
contour = g.contours[0]
for p_index, p in enumerate(contour.bPoints):
    print(p_index, p.anchor)
contour.setStartSegment(1)

setStartSegment is always off-by-1.


Other file extensions

Can this be made to work with php files? Currentl notification: "command 'extension.generateLinkReport' not found"

If there is a standard, reliable way to pull URLs out of PHP files, I could support that.  I don't know much about PHP.  Should the code just look for "http..." in a PHP file ?  Or should it look for <a href="..." ?

It's exactly the same for php as html (saved an example of the former as html and the extension worked perfectly with relative and absolute URLs).

I am testing with this PHP file; is it appropriate ?
#!/usr/bin/env php
';
  echo '';
  echo '';

  ?>

Yes

Updated the extension to version 5.1.0, please test it.  Forgot to update the README properly, I'll catch that next time.

Thanks, works really well.

Great !  Just uploaded a new version 6.0.0 which does Markdown files too.


Add buttons to preserve and make public

Until preserving is fixed, we should show a confirmation box when clicking preserve with a disclaimer about the current preserve behavior.

handled in #241


Update documentation to reflect supported arguments to Numpy functions

This page needs to explicitly declare what arguments if any are supported in the functions listed:
http://numba.pydata.org/numba-doc/latest/reference/numpysupported.html
most are done, but random seems to be the worst offender of the missing.

@stuartarchibald Can I take this up ?

@stuartarchibald Can I take this up ?

Please do feel free to submit a PR to resolve this issue! :-)


Use argparse for command-line interface

argparse is a wonderful Python built-in library.

Thanks @brandones, I'll fix this soon!


Invalid Session Handle: Session [xxx] is Closed

We recently deployed an app using the databricks sql connector. We're now seeing issue with closed sessions when trying to query deltalake tables?
I've tested some API calls with the token tied to our Service Principal and it's working fine.    We leave our connection to databricks open as long as the app is up, for context it's an API.  However we leverage the pool_recycle property on the connection args when we create the engine.
Any advice or guidance on managing sessions in this setup?
Here's the stacktrace for more details:

File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/orm/query.py", line 2824, in first
return self.limit(1)._iter().first()
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/orm/query.py", line 2916, in _iter
result = self.session.execute(
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/orm/session.py", line 1717, in execute
result = conn._execute_20(statement, params or {}, execution_options)
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 1710, in _execute_20
return meth(self, args_10style, kwargs_10style, execution_options)
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/sql/elements.py", line 334, in _execute_on_connection
return connection._execute_clauseelement(
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 1577, in _execute_clauseelement
ret = self._execute_context(
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 1948, in _execute_context
self.handle_dbapi_exception(
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 2129, in handle_dbapi_exception
util.raise(
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/util/compat.py", line 211, in raise
raise exception
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 1905, in _execute_context
self.dialect.do_execute(
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/sqlalchemy/engine/default.py", line 736, in do_execute
cursor.execute(statement, parameters)
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/databricks/sql/client.py", line 472, in execute
execute_response = self.thrift_backend.execute_command(
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/databricks/sql/thrift_backend.py", line 832, in execute_command
resp = self.make_request(self._client.ExecuteStatement, req)
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/databricks/sql/thrift_backend.py", line 393, in make_request
self._handle_request_error(error_info, attempt, elapsed)
File "/home/appuser/.cache/pypoetry/virtualenvs/active-ai-api-2uZo5AhP-py3.8/lib/python3.8/site-packages/databricks/sql/thrift_backend.py", line 261, in _handle_request_error
raise network_request_error
sqlalchemy.exc.OperationalError: (databricks.sql.exc.RequestError) Error during request to server: BAD_REQUEST: Invalid SessionHandle: Session [01ee11ff-e359-1acc-89b8-d562be8e0c7a] is closed.
[SQL: SELECT ...]

For context, we're using this pattern to manage our session in a FastAPI app: https://fastapi.tiangolo.com/tutorial/sql-databases/#create-a-dependency

Internal code bug.  We were not calling create_engine with the correct parameters.  Closing issue.

Thanks for closing out. We discussed this internally and believe that your engine configuration should include an idle timeout that manages connection lifetimes. Was this the solution?

@ryanbales Would love to know what what arguments you are using or what @susodapop you think would be best.  I am seeing what might be a related issue where sometimes I will see Cannot create cursor from closed connection errors.

@noctuid for now the solution here is to implement a connection idle timeout in your application code. Since connections can be closed at the server and the connector does not implement a keep-alive (for now -- we may change this in the future), you should have your code automatically open a new session if the idle timeout is exceeded (somewhere between 1-4 hours will work fine).

I guess what I am wondering is whether it's sufficient to just set pool recycle, e.g. pool_recycle=3600, and if not, why not.  It sounds like @ryanbales was already setting pool_recycle, but maybe the value was too high?

I don't think pool_recycle alone is sufficient for this. Note from the documentation for pool_recycle:

Note that the invalidation only occurs during checkout - not on any connections that are held in a checked out state. pool_recycle is a function of the Pool itself, independent of whether or not an Engine is in use.

So if your client code doesn't release its connection between executions then you won't get the benefit of recycle.
This is also mentioned in this stack overflow response.


Get design matrix should fail is report is failed

Currently, it will return FAILED as string, instead it should throw error.

Returning None also works


"Quick" test scripts that use Concourse need updates

When attempting to run the unit and integration tests with the "quick" test scripts, I found they didn't work out of the box. They failed with mount issues:
$ DB=postgresql CONCOURSE_TARGET=lite ./quick-unit-tests.sh
task outputs will be written to /var/folders/_9/_kxq8y357cnf7zf5rc2m5rsm0000gn/T/fly-exec2WUiq
task: test-unit...
targeting http://<IP_ADDRESS>:8080

executing build 4
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 63.1M    0 63.1M    0     0  15.1M      0 --:--:--  0:00:04 --:--:-- 15.0M
initializing
running bosh-src/ci/tasks/test-unit.sh
Starting postgresql...
mount: permission denied

Also the mktemp command failed:
mktemp: too few X's in template ‘fly-exec’

But it doesn't look like it's relevant or needed? Maybe it should be removed? If not, just adding some X's to the stem would address it.
The mount failure can be addressed by adding the -p (privileged) flag on the fly command.

Hi - thanks for pointing this out! We discussed this, and because our team doesn't use these scripts and aren't planning on maintaining them when we change our CI tasks, we've gone ahead and removed them.
Instead, I'd recommend using the rake fly:unit and rake fly:integration tasks (which we do use internally). They also assume a CONCOURSE_TARGET environment variable, and you'll probably want to specify CONCOURSE_TAG= (empty value).

Since you removed the scripts in 828d5c490483d219ee4102a7a02e8b38c26b7320, you should probably update the instructions that tell contributors how to execute tests as well.
running_tests.md says:

You can also use ./quick-unit-tests.sh to run all unit tests against a local Concourse CI instance.

and

You can also use ./quick-integration-tests.sh to run all integration tests against a local Concourse CI instance.

Thanks.

Ah, forgot about those. Will update them on Monday. Thanks again!

@dpb587-pivotal - Just a friendly reminder to update the doc. Thanks.

Ah, appreciated. Updated in https://github.com/cloudfoundry/bosh/commit/07e794792d843becdccd56d1f4e0b40511ac6c27, and thanks!


Improve readme and manually add API reference

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.