route-reflector client only supported under peer-group

Issue Summary
I need to configure a BGP neighbor as route-reflector client without a peer-group. This is legal in CLI, but eos_cli_config_gen doesn't let me, just ignores the key route_reflector_client under neighbor (inside VRF or globally)
Which component(s) of AVD impacted
eos_cli_config_gen
How do you run AVD ?
Ansible CLI (with virtual-env or native python)
Steps to reproduce
Inside router BGP structure:

Renders correctly:

router_bgp:
  as: '65101'
  router_id: <IP_ADDRESS>
  bgp_defaults:
  - no bgp default ipv4-unicast
  - distance bgp 20 200 200
  - graceful-restart restart-time 300
  - graceful-restart
  - maximum-paths 4 ecmp 4
  peer_groups:
    MLAG-IPv4-UNDERLAY-PEER:
      type: ipv4
      remote_as: '65101'
      next_hop_self: true
      password: vnEaG8gMeQf3d3cN6PktXQ==
      maximum_routes: 12000
      send_community: all
      route_map_in: RM-MLAG-PEER-IN
      route_reflector_client: true

Does not render RR client command:
router_bgp:
 (... ommitted)
  vrfs:
     VRF1:
        neighbors:
          <IP_ADDRESS>:
          description: DC1-LEAF1A
          route_reflector_client: true

Relevant log output
No response
Contributing Guide

[X] I agree to follow this project's Code of Conduct

This is not a bug, but we have just not implemented coverage for this CLI combination. I will change the type to enhancement.

Also related to #323


activity.py bugs, tests & refactors

Bugs

[x] Z-scores not calculated, leading to no samples meeting the threshold. Not sure what the issue is, haven't delved into it deeply.
[X] Output is quite messy and doesn't look quite right. Extra commas in certain places, etc. Still need to round some of the large floats to a reasonable number of decimals.
[x] Bed output does not filter out results that don't have a sample meet the z-score threshold. So every Locus that overlaps a variant will be printed to output. Also z-scores for every sample are printed for each individual variant sample while it should be only the z-score for that sample.

Tested

[X] Runs with basic arguments (-i, -a, -th, -ov, -ob) and (probably) functions correctly.
[X] Inclusion options appear to work correctly (-ib, -iv).
[ ] Calculates z-scores correctly, output values all match up with motifs and loci correctly, etc.
[ ] Validate output is proper VCF format - this tool should work for it.

Refactors/Enhancements

[ ] Move the Variant, Position, and Locus classes into another module so that they can be used as generics for other functions. Subclass them if additional attributes, methods, etc are needed for a given module (such as in this case).
[ ] Add option much like -fan for the VCF output file so that only variants that significantly affect a Locus in however many specified samples are printed to output.

New Bug: Needs to handle comparison of tagged activity files vs VCF. Example Output:
VCF samples:  CB011514 FL174
Activity samples:  CB011514_K27AC FL174_K27AC DL3A538_K27AC
Common samples:

thank I fixed the removal of K27AC by adding reduce_activity_names() and associated logic with drop_act variable

think I fixed the issue to remove K27AC by adding reduce_activity_names() and associated logic with drop_act variable


Move API token to secret

Token is currently exposed in source code. Anyone with access to it can use it to call the API under our account. We need to secure it in secret to protect our quota limit.

not possible in public repo


Dependabot update to single (poetry-managed) package unexpectedly removes packages from lockfile

Is there an existing issue for this?

[X] I have searched the existing issues

Package ecosystem
Python (poetry)
Package manager version
No response
Language version
No response
Manifest location and content before the Dependabot update
poetry.lock --- probably easiest to see the PR diff (linked below)
dependabot.yml content
See https://github.com/matrix-org/synapse/blob/develop/.github/dependabot.yml
Updated dependency
types-psycopg2, from <IP_ADDRESS> to <IP_ADDRESS>
What you expected to see, versus what you actually saw
Expected:

don't alter the dependency metadata in poetry.lock forpackages other than types-psycopg2
update the locked version of types-psycopg2

Actual:

All references to importlib-metadata, importlib-resources, pkgutil-resolve-name,  tomli, typed-ast, typing-extensions removed from [package.dependencies] sections
importlib-resources, pkgutil_resolve_name and typed-ast no longer included in the locked environment
types-psycopg2 successfully updated

Native package manager behavior
2022-11-28 18:14:56 ✔  $ poetry update types-psycopg2
Updating dependencies
Resolving dependencies... (1.0s)

Writing lock file

No dependencies to install or update

$ git diff
diff --git a/poetry.lock b/poetry.lock
index d9e4803a5..c09151ff4 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -1448,7 +1448,7 @@ python-versions = "*"

 [[package]]
 name = "types-psycopg2"
-version = "<IP_ADDRESS>"
+version = "<IP_ADDRESS>"
 description = "Typing stubs for psycopg2"
 category = "dev"
 optional = false
@@ -1790,6 +1790,7 @@ constantly = [
 cryptography = [
     {file = "cryptography-38.0.3-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:984fe150f350a3c91e84de405fe49e688aa6092b3525f407a18b9646f6612320"},
     {file = "cryptography-38.0.3-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:ed7b00096790213e09eb11c97cc6e2b757f15f3d2f85833cd2d3ec3fe37c1722"},
+    {file = "cryptography-38.0.3-cp36-abi3-macosx_10_12_universal2.whl", hash = "sha256:726e3a1bfee0e919b278c8f766fdcf1fe30f8e6feea590e3f248d3636b58ffb3"},
     {file = "cryptography-38.0.3-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:bbf203f1a814007ce24bd4d51362991d5cb90ba0c177a9c08825f2cc304d871f"},
     {file = "cryptography-38.0.3-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:554bec92ee7d1e9d10ded2f7e92a5d70c1f74ba9524947c0ba0c850c7b011828"},
     {file = "cryptography-38.0.3-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1b52c9e5f8aa2b802d48bd693190341fae201ea51c7a167d69fc48b60e8a959"},
@@ -2813,8 +2814,8 @@ types-pillow = [
     {file = "types_Pillow-<IP_ADDRESS>-py3-none-any.whl", hash = "sha256:79837755fe9659f29efd1016e9903ac4a500e0c73260483f07296bd6ca47668b"},
 ]
 types-psycopg2 = [
-    {file = "types-psycopg2-<IP_ADDRESS>.tar.gz", hash = "sha256:f5532cf15afdc6b5ebb1e59b7d896617217321f488fd1fbd74e7efb94decfab6"},
-    {file = "types_psycopg2-<IP_ADDRESS>-py3-none-any.whl", hash = "sha256:858838f1972f39da2a6e28274201fed8619a40a235dd86e7f66f4548ec474395"},
+    {file = "types-psycopg2-<IP_ADDRESS>.tar.gz", hash = "sha256:bff045579642ce00b4a3c8f2e401b7f96dfaa34939f10be64b0dd3b53feca57d"},
+    {file = "types_psycopg2-<IP_ADDRESS>-py3-none-any.whl", hash = "sha256:084558d6bc4b2cfa249b06be0fdd9a14a69d307bae5bb5809a2f14cfbaa7a23f"},
 ]
 types-pyopenssl = [
     {file = "types-pyOpenSSL-<IP_ADDRESS>.tar.gz", hash = "sha256:7a350e29e55bc3ee4571f996b4b1c18c4e4098947db45f7485b016eaa35b44bc"},

Images of the diff or a link to the PR, issue, or logs
https://github.com/matrix-org/synapse/pull/14558
Rich diff of the delta that dependabot proposed:

Smallest manifest that reproduces the issue
No response

Apologies for the lack of minimal reproduction example.
We also saw this in https://github.com/matrix-org/synapse/pull/14561, https://github.com/matrix-org/synapse/pull/14562, https://github.com/matrix-org/synapse/pull/14563,  and https://github.com/matrix-org/synapse/pull/14564.
In https://github.com/matrix-org/synapse/pull/14558#issuecomment-1329073299 I speculated that this might be related to the recent release of poetry-core---but that could just be a coincidence: I'm not sure what version of poetry and poetry-core dependabot uses behind the scenes.

Seeing the same issue in multiple PR's/repos, common denominator seems to be that all [package.dependencies] with markers python_version or python_full_version are removed.

it's speculation because I don't know how dependabot works, but I'd be suspicious of https://github.com/dependabot/dependabot-core/pull/6191
what you are seeing seems to be consistent with dependabot-poetry solving with a higher python requirement than is actually in your pyproject.toml

Same issue here: https://github.com/mdn/yari/pull/7684/commits/13a43527931e77463de3ef8643a5a46d0ec86db3

@jeffwidman Would you have a chance to look into whether this might be a regression caused by https://github.com/dependabot/dependabot-core/pull/6191, as speculated above? 🙏

👋 Sorry for the bug... clearly affecting a lot of folks. Myself or @pavera or someone else on the team will try to dig into this tomorrow, although as y'all know could take a few days to fix... won't know til we've looked into it.

I've now deployed the fix for this issue. I'm going to close the issue for now, but if anyone sees that this is still occurring please re-open.

We've just asked dependabot to recreate the PR I reported in the issue and the diff looks good to me. Just wanted to drop a quick note to confirm all looks well.
Many thanks for the quick response!


ImportError: cannot import name 'wrap_fp16_model'

i got this error
  File "test.py", line 10, in <module>
    from mmcv.runner import (get_dist_info, init_dist, load_checkpoint,
ImportError: cannot import name 'wrap_fp16_model'

when tried to run test.py

i have cuda 10 i used this command pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu110/torch1.7.0/index.html

mmcv/dist/cu110/torch1.7.0 means that you installed mmcv cuda11 version. Please install a correct version of mmcv-full that meets your cuda env.


Rendering mishap

The viewer has worked OK in several scenes I've tried.
Lately I run into a problem viewing this scene.
This is what i get in this viewer:

This is how it should look like (postshot):

This is not an approximation error, it seems like unexpected behavior.
I tried toying around with the sorting options and other rendering options, but it always yielded the same issues.
Any ideas?

I tried with the following Viewer parameters and it seemed to help on my end:
const viewer = new GaussianSplats3D.Viewer({
      'integerBasedSort': false,
      'splatSortDistanceMapPrecision': 18,
});

I think the key is to make sure integerBasedSort is set to false. It makes the viewer use a floating point sort, with is more accurate, but will decrease performance a little. I don't think you necessarily even need to change splatSortDistanceMapPrecision from the default (which is 16), I just added that to see if it helps.

Right, disabling integer sorting fixed it. It shouldn't have to do with the number of points but with the spatial extents, right? I mean, I've tried significantly larger splats without a problem.
Thank you for looking into it!

It's really more about the density of points in the counting sort distance map. You can have spatial extents that are small, but still have a high density. Conversely you have have large extents with low point density. That's why I brought up the splatSortDistanceMapPrecision parameter -- it allows for higher precision in the counting sort distance map. The integerBasedSort parameter has an impact on the precision of splat placement in the distance map as well, but in a different way.


Promote integration with other tools by enabling templated links to other tools

Is your feature request related to a problem? Please describe.
Once a user finds the table he needs, he will have to copy/paste the table name and go to other tools to query the data. He will have to copy/paste the relevant column names from his search as well. This creates unnecessary and repetitive work.
Describe the solution you'd like
As a OM admin, I would like to being able to configure one or more links to other tools - either per entity or per entity type (templated) - that consist of link text, link, tooltip, and icon. This enables users to jump straight into other tools for the relevant entity.
Describe alternatives you've considered
None
Additional context
None

@jochemvangrondelle is custom properties not working for your usecase?

@jochemvangrondelle custom properties will be widget in the schema (landing page of a table) on the right side. This should bring out custom properties more prominently and should solve your issue.

we support sourceUrl as well, along with custom properties prominently displayed in the landing page


Make sure dev packages are properly installed in upstream CI

Looking at the latest upstream build on main, we weren't actually pulling in all the dev versions as expected because some packages where were interfering with each other. I've split up where we explicitly uninstall packages to hopefully resolve this. Also added a corresponding test to make sure we don't unintentionally hit this issue again
cc @charlesbluca for visibility

Okay, so we're now getting some upstream failures as we're actually installing the full set of dev packages now. The dask/tests/test_ci.py::test_upstream_packages_installed test that's added here is failing. My plan is to get it to pass and then merge this in. We can address the upstream failures themselves in follow-up PRs.
Also, note that the Windows failures are unrelated (xref https://github.com/dask/dask/pull/9733).
Thanks for reviewing @ncclementi!


Implement Health check

Hi,
How can I implement Health check for generic host applications?
Thanks

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

ID: c5f1eeee-d500-82bf-0d0a-b4e0d5d5c175
Version Independent ID: 2373a3df-6ea3-50c7-d63d-61c51d572511
Content: .NET Generic Host
Content Source: aspnetcore/fundamentals/host/generic-host.md
Product: aspnet-core
Technology: aspnetcore-fundamentals
GitHub Login: @guardrex
Microsoft Alias: riande

Hi ... We won't have additional info here until I get to the topic for 3.0 updates.
Engineering recommends sticking with the Web Host until 3.0 RTM. Due to engineering churn during preview we're virtually forced to wait until the Release Candidate before we make the doc updates. Some docs have been updated for the Generic Host, and a PR is under construction now.
If you can't squeeze enough info out of the prerelease coverage that we have today, talk to devs on Stack Overflow or a support chat, such as Slack or Gitter.


Make our executor methods virtual

Fixes #5874 - we are marking these methods virtual just in case someone
wants to customize the executors. These are in the 'public internal'
namespace but can't really be replaced because they aren't sufficiently
virtual.

Updated

4d905a4110484185173be3de24b59e3b28dd6416


Possibility of ignoring certain logs by setting a log level

Hi,
First of all, thank you for the library, super useful. Would it be possible to be able to set the log level so that we can ignore certain logs? For example, I don't want to get the logs that 0 tasks were found, but I do want to get the log that x tasks were found. Right now I subclassed the task executor and others to implement it myself, but it s a bit dirty

@mhashas We currently also sort out the best way to log relevant information and avoid to fill our OpenSearch instance with senseless information. Am I right that the "= tasks were found" is only ONE example of many? How did you classify logs to relevant/non-relevant?
Can you add a link to your implementation here?

Same issue here. I suggest you set the log level to DEBUG for those, so a long polling will not issue any log events of INFO at all.
Here's what I get on each and every poll, from each worker:
`2022-06-28 00:49:46,277 [INFO] [WORKER_ID:2] 0 External task(s) found for Topics: step3, Process variables: None
2022-06-28 00:49:46,277 [INFO] [WORKER_ID:2][TOPIC:step3] no External Task found for Topics: step3, Process variables: None
2022-06-28 00:49:46,278 [INFO] [WORKER_ID:2] Fetching and Executing external tasks for Topics: step3 with Process variables: None
2022-06-28 00:49:46,278 [INFO] [WORKER_ID:2] Fetching and Locking external tasks for Topics: step3 with Process variables: None`
All of them are essentially debug level messages, not info.
Note that I have set "isDebug": False

This issue is particularly prominent when subscribing to multiple tasks. I hope the team in this repository can pay attention to the impact of this issue.


Refactor Connection to a synchronous state machine

This PR refactors Connection to a synchronous state machine.
It retains the Control API but layers it completely on top of the existing Connection. This allows us to do this refactoring without touching any of the tests. In a future step, we can port all the tests to the new poll-based API and potentially remove the Control API.
All commits:

Are properly formatted
Have no clippy warnings
Pass the test suite

It should be possible to review this PR patch-by-patch. You may find it easier though to first have a look at the end-result by checking out the code and navigating around to see how things work now.
It would be great if we could merge https://github.com/libp2p/rust-yamux/pull/145 first. That would allow us to share a few bits between the two test suites.

I am sorry for the delay here. I won't get to reviewing this until after libp2p day.

No worries.

Remove Control API?

In my eyes, that would be a great simplification.

Cool!
I am thinking of making a separate PR that adds more tests so I can refactor with a bit more confidence.
Once that is merged, we could perhaps also remove the control API in this PR? It would make some of the internals vastly simpler. Plus, anyone can build a control style API on top of one with multiple poll functions at any point.

On top of being (hopefully) easier to understand, the new implementation proves to be a lot more performant too!
For all slow networks, there is no change but as we get to more high-speed networks, we are seeing improvements of up to 38%!

I've rebased on top of master to allow for an easier patch-by-patch review!

Let me know if you disagree with the workspace structure.

In my eyes this pull request combines many unrelated changes. Thus ideally this would be split into many pull requests. That said, I think it is fine to proceed here, especially as this repository is not very active and thus conflicts are not probable.

I agree that the size is not ideal. I did however find it quite difficult to refactor this piece-wise into something that can be merged independently without leaving master in a weird state from a design perspective.
Best I could do was to make small commits but I don't think a particular subset of those is worth merging independently :)

It retains the Control API but layers it completely on top of the existing Connection. This allows us to do this refactoring without touching any of the tests. In a future step, we can port all the tests to the new poll-based API and potentially remove the Control API.

I suggest we deprecate or remove the Control API in a follow-up pull request. What do you think @thomaseizinger?

Yes, the tests need refactoring before we can remove it.

This is a large change potentially resulting in subtle changes in behavior breaking upper layers. What is the best strategy to test this patch in the wild? I suggest we ask community members to run this in their production environments. Should we cut an alpha release for it, or rather have them test based on a hash?

I'd suggest:

Merge this
Release yamux
Update libp2p-yamux on a branch based on the 0.49 release
Cut an alpha for libp2p-yamux
Have people drop that alpha into their dependency-tree. As long as they are on 0.49, that should make things compatible and there are no behaviour changes other than this patch.

I've bumped the version and changelog. I am intending to merge this in the upcoming days.

I'd suggest:
1. Merge this

2. Release `yamux`

3. Update `libp2p-yamux` on a branch based on the 0.49 release

4. Cut an alpha for `libp2p-yamux`

5. Have people drop that alpha into their dependency-tree. As long as they are on 0.49, that should make things compatible and there are no behaviour changes other than this patch.

Sounds good to me.

I've bumped the version and changelog. I am intending to merge this in the upcoming days.

:+1: I can cut a release right after.


[TypeScript] Module name case is different in declaration and using

using Bridge;

namespace TypeScriptTest
{
    class A
    {
        public void DoSomething(A m)
        {
        }
    }
}

bridge.json
{
    outputBy: "Project",
    generateTypeScript: "true"
}

Error appears: Could not find symbol 'TypeScriptTest'.
In generated d.ts module name is typeScriptTest but in method declaration it is TypeScriptTest
declare module typeScriptTest
{
    export interface A {
        doSomething(m: TypeScriptTest.A): void;
    }
    export interface AFunc extends Function {
        prototype: A;
        new (): A;
    }
    var A: AFunc;
}

Yes, I can confirm that, too. First letter of module name is lowercase, while every class or interface is declaration is starting with an uppercase letter.

Quick fix
Use the following global configuration:
"fileNameCasing":  "None"


Weird colors in tfplot images

The first two images are the original images, and the next two are the results of the following chunk of code. I'm not sure if this is a tfplot issue or something else, but I was wondering if you had any idea what could be causing the images to look like this. Thanks!
def plot_func(cx, cy, projected_points, image):
   fig = matplotlib.figure.Figure()
   ax = fig.add_subplot(111)
   ax.plot([cx, cx + projected_points[0][0]], [cy, cy + projected_points[0][1]], 'b', linewidth=3, zorder=1)
   ax.plot([cx, cx + projected_points[1][0]], [cy, cy + projected_points[1][1]], 'r', linewidth=3, zorder=1)
   ax.plot([cx, cx + projected_points[2][0]], [cy, cy + projected_points[2][1]], 'g', linewidth=3, zorder=1)
   ax.imshow(image)
   return fig

 img = tfplot.plot(plot_func, [cx, cy, projected_points, image])
 return tf.expand_dims(img, 0)

detected_poses = draw_pose(tf.squeeze(original_image, axis=0), detection_poses[top_index[0]], normalized_boxes[top_index[0]], tf.to_float(original_image_shape))
tf.summary.image('detected_poses', detected_poses)

Please validate and sanitize dtype and range of img. For example, if its dtype is float32 but ranges [0, 255] instead of [0, 1], the problem might happen.
BTW I think it could be better to emit warning messages in such cases.


MNT functional linux installation that passes all test

Please open a new PR to merge to development branch.


prevent empty note

https://www.openstreetmap.org/note/1362818
no info except long/lat
name and category should be mandatory, no ?

There is also the problem that the position of the note can be not set which leads to a buildup of notes on 0/0 position. The position should be mandatory as well, as notes without a proper position are usually useless.

Both of these would be great things to submit pull requests for! I'm happy to give pointers to where a contribution could be made to check these scenarios.

I will surely not have time this month, but if you write a suggestion how/where you would add this, I might get back to this later this summer.


Ability to specify Fallback for RetryPolicy directly

When the RetryPolicy fails I need to throw a specific exception. Currently to achieve this I've configured it like this:
Failsafe
        .with(
            Fallback.<TaskResult>ofException(e -> new FailedTaskException())
                .handle(SomeRetryException.class)
                .handleResultIf(Objects::isNull)
                .handleResultIf(TaskResult::isRunning),
            new RetryPolicy<TaskResult>()
                .handle(SomeRetryException.class)
                .handleResultIf(Objects::isNull)
                .handleResultIf(TaskResult::isRunning)
                .withMaxAttempts(-1) // unlimited
                .withDelay(retryRate)
                .withMaxDuration(retryTimeout))
        .getAsync(this::someLongTask);

This leads to some duplication, as you need to repeat the same conditions for the global Fallback. It would be great to have some shorthand method to achieve this on the RetryPolicy itself. Ex.: RetryPolicy.withFallback(Fallback)

You could extract those  aggregate them into one parameter each:

a List<Class<? extends Throwable>> for handle
a single predicate for `handleResultIf

var exceptions = Lists.of(SomeRetryException.class);
var predicate = result -> result == null || result.isRunning; // or combine them using Predicate.or(..)

Failsafe
        .with(
            Fallback.<TaskResult>ofException(e -> new FailedTaskException())
                .handle(exceptions)
                .handleResultIf(predicate),
            new RetryPolicy<TaskResult>()
                .handle(exceptions)
                .handleResultIf(predicate)
                .withMaxAttempts(-1) // unlimited
                .withDelay(retryRate)
                .withMaxDuration(retryTimeout))
        .getAsync(this::someLongTask);

Having RetryPolicy and Fallback be separate policies allows for handling any type of situation, including where you might want your RetryPolicy to handle one exception type and your Fallback to handle another. But I understand how in cases like this where the "handling" config is the same, it's annoying.
I don't think I want to couple policies to each other such as retryPolicy.withFallback, but I'm wondering if we could maybe define handling logic separate from the rest of the policies, since the handling methods are already defined in FailurePolicy which the policy impls extend. So right now we could do something like (untested):
<T extends PolicyHandler<T>> addHandlers(T policy) {
  return policy.handle(SomeRetryException.class)
     .handleResultIf(Objects::isNull)
     .handleResultIf(TaskResult::isRunning);
}

Failsafe.with(
  addHandlers(Fallback.<TaskResult>ofException(e -> new FailedTaskException())),
  addHandlers(new RetryPolicy<TaskResult>()
    .withMaxAttempts(-1) // unlimited
    .withDelay(retryRate)
    .withMaxDuration(retryTimeout)))
...

Is that decent?

This has lead to very confusing behavior for us. Developers wrote the code equivalent to this
Failsafe
        .with(
            Fallback.<TaskResult>ofException(e -> new FailedTaskException()),
            new RetryPolicy<TaskResult>()
                .handle(SomeRetryException.class)
                .handleResultIf(Objects::isNull)
                .handleResultIf(TaskResult::isRunning)
                .withMaxAttempts(-1) // unlimited
                .withDelay(retryRate)
                .withMaxDuration(retryTimeout))
        .getAsync(this::someLongTask);

The assumption was that if the retries all failed, the fallback would be used. The very odd behavior is that when these policies are chained, the retry policy hands a result to the fallback policy that is success:Boolean=false, failure:Throwable=null. The policy then bases choices on failure and ignores success.
It's very surprising that the fallback gets used for any exception, but no noted negative results.
I think the RetryPolicy should have a flag to create something like MaxRetryExceededException to set as the failure in this case. I also, separately think this should be the default behavior.
Having to repeat conditions in the common case is not just extra code. It's confusing to the point of making it very easy to create bugs.

Issue #213 is another example of a user being surprised by this behavior. (In that case, there's also a surprise about how the ordering of policies affects behavior.)

the retry policy hands a result to the fallback policy that is success:Boolean=false, failure:Throwable=null. The policy then bases choices on failure and ignores success

That is indeed odd. As a default behavior (not specifying any failure/result predicate on the fallback policy should, imho, consider non successful results as worthy of a fallback.
I have the impression that result predicates were introduced later and that initially decisions were solely based on exceptions:
Non-result is not a failure right now:
https://github.com/jhalterman/failsafe/blob/3608292adec4a39794f9e8729b4b52748a42f39a/src/main/java/net/jodah/failsafe/PolicyExecutor.java#L109-L120
https://github.com/jhalterman/failsafe/blob/3608292adec4a39794f9e8729b4b52748a42f39a/src/main/java/net/jodah/failsafe/PolicyExecutor.java#L61-L75


[VL]The problem with running./build_velox.sh stopping

Describe the bug
I don't know if it's a bug, I don't know why it doesn't continue after running to this point.

Can someone guide me？

This might be a slow internet problem. It took me an hour to download boost.


Lazy loading implemented

Fixes Issue
Closes #489
Description
Implemented Lazy loading for all the pages in this project due to which whenever the website loads initially then only the pages that are visible to the user are loaded instead of the whole website. This reduces the initial loading time making the user experience better.

@Avinash905 This branch has some error look into it

@Avinash905 This branch has some error look into it

I resolved the errors here https://github.com/JasonDsouza212/free-hit/pull/536


Add LICENSE

@mhorga is it possible to add a license to this repo please? 😄

Done.

Awesome, thank you!
My name is Jake Rockland and I'm the former Vice President of the Delta Sigma Phi chapter at the University of Arizona. I’ve been working on a startup company with two friends of mine, and we just launched our crowdfunding campaign for Moment, our first product. We appreciate support of any kind - whether you buy the product, share it on social media, or give us feedback on anything we can do better. If you think we're doing something cool, I would really appreciate it if you would share this with your chapter.
Here is the link to check out our site: https://wearmoment.com
Thank you so much for your help!
Best,
Jake
On Mar 20, 2019, 7:21 PM -0600, Marius Horga<EMAIL_ADDRESS>wrote:

Closed #5.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Two minor corrections in the italian version of the Vim tutor, and a revision to the Brazilian Portuguese version of it

Hi!
I have made two changes to the italian version of the Vim tutor, they were just simple mistakes when compared to the original tutor in English.
Moreover, I have revised the Brazilian Portuguese version of the tutor, using the French and Italian versions as helpers. There were several mispelled words.
I have not added tests because I have only edited text files.
If you think my contributions are proper enough, I would be happy to have them merged to your repository :-)

Thanks, I'll include the patch

You're welcome :-)


Anonymous > Should not be able to download cv unless he authenticates

bug critical-severity
Description: Should not be able to download cvs unless he authenticates

"Can wr use aws cognito or another service, also are we still stories the files on the server? Because we need to create a task to store somewhere else first... Any suggestions on the storage? S3?" commented by @GBR-422777


Request Scheduler

For #3241
I started off with a basic RequestScheduler that combines the code in throttleRequestByServer, RequestsByServer, and the RequestScheduler in Cesium3DTileset. The 3D Tiles code is now using the new class.
For scheduling based on priority, my initial thoughts are to collect the requests that are made during the frame, and at the end the frame sort the requests based on a sorter function (in most cases SSE based) and send the requests if available slots are open.
To Do:

[ ] Convert all other code that still uses throttleRequestsByServer
[ ] Schedule requests based on priority

For scheduling based on priority, my initial thoughts are to collect the requests that are made during the frame, and at the end the frame sort the requests based on a sorter function (in most cases SSE based) and send the requests if available slots are open.

The sort function will need to be more involved, e.g., we might want to download geometry before textures because we would rather load new buildings before texturing existing ones; we may also want to guarantee progress for both terrain and buildings even though all the building tiles are closer than the requested terrain tiles.  The user should be able to configure some of this in a simple way.
Look at general scheduling algorithms like those used for processes in an OS.  I did a reasonable - but perhaps incomplete job - in JobScheduler where it gives each WebGL resource type a budget to avoid starvation, but allows stealing from other budgets based on temporal coherence.
Also, as we discussed, waiting until the end of the frame could impact the tree traversal, but I think it is the only option to allow Cesium to make the system-wide "optimal" requests.  So 3D Tiles may ask for 6 tiles, but only be able to request 1.  Perhaps we can use temporal coherence to avoid burning CPU every frame on tree traversal when we know our budget is limited or was cut last frame due to something more important.  I dunno; beware of the architect astronaut in me.
I am also happy to merge incremental improvements in multiple PRs.  Once it is solid, and the rest of Cesium is also using it (terrain, imagery, glTF, and a way to explicitly include data sources and requests with our utility functions), we'll cherry-pick the commits for a PR into master.

Can you open a PR into master to deprecate throttleRequestByServer and an issue to remove it from the public API in 1.18.  I suspect no one is using it outside of Cesium, and it will go away based on this.

Just those comments.  Let me know if you want to merge this now or continue work on this branch.

I replaced all areas that use throttleRequestByServer with RequestScheduler, and fixed some tests that were clogging it up with unresolved requests.
Once this is checked, we can merge this branch and do the priority scheduling work in a new PR.

Looks great, except the processStateMachine tests pass in master, but fail in this branch:

Did you run all the tests?

I reran the tests and they are passing on my machine.

They pass on my work Windows laptop, but fail on my Mac.  Will show you.

We're having some other issues with the Mac.  Will merge for now and reevaluate in the 3d-tiles branch if needed.


Adapt to higher-level consumption of jsx

jsx was changed (in 3.0.0) in a way that breaks interface (namely option return_maps became true by default).
This pull request adapts jesse so that consumers of it, that are locking jsx at 3.0.0+, don't get affected by jesse's internals.

Thank you!

Would you also consider a tag/release for this? Thanks much.


POC : add consumer webRTC stream into liveKit and not in player

Split logic in different objects
Add Consume feature
Create a demo page to be able to send and receive stream

Hello, ok, I that it's possible, I will check and update PR in this way


Default node preset should let you set keepAliveTimeout & headersTimeout

Describe the feature
In larger environments that get a decent amount of traffic, it's important that the node keepAliveTimeout & headersTimeout are able to be set (the default is 5s for keepAliveTimeout).  Currently the only way to do that is to add it to the generated file post-build (fragile), or create a whole new preset on your own (and lose all of the great stuff already in the current preset)
In our prod env (50+ servers), we were getting tens of thousands of 502's per day because the node keepAliveTimeout was so low compared to our Application Load Balancer idleTimeout (30s)
related:
https://github.com/nuxt/nuxt/issues/18857
https://github.com/nuxt/nuxt/issues/9740
Additional information

[ ] Would you be willing to help implement this feature?

There is already a pull request: https://github.com/unjs/nitro/pull/1944


[zh] Localize 'agile_software_development'

[ ] Localize the content/en/agile_software_development.md to content/zh/ in dev-zh.

acknowledge

PR has been merged, please close this issue @Jacob953


Keep the mirrorer instance from hanging after a while

Ramp up instance size from t2.micro to t2.large, matching the 8GB of RAM on
the Carrenza instance. (The mirrorer/crawler runs its own Redis and
RabbitMQ)

Solo: @schmie

This is superseded by https://github.com/alphagov/govuk-aws/pull/550.


Joint out of control when close to its limits

I'm pretty new to ROS and may not understand something basic, but I have following problem:
I have a simulated arm, which has limits on every joint and I'm using ForwardCommandController to control it. Unfortunately when I command some joint to move to its limit or near it, there are chances that it will get stuck there. Then I can still control other joints and sometimes this dead joint comes to live again - probably because it gets a little bit farther from its limit due to other movements.
Is this behavior expected or I'm doing something wrong?
How to allow controlling joints which are near they limits?
I don't have experience with real robots and I'm not sure whether it's gz_ros2_control or ros2_control issue.

I also just ran into this issue of joints getting "stuck" if they are commanded to their limit (presumably because overshoot goes past the limit). To reproduce (on Humble):
ros2 launch ign_ros2_control_demos gripper_mimic_joint_example.launch.py
# in another terminal
ros2 topic pub -1 /gripper_controller/commands std_msgs/msg/Float64MultiArray '{data: [0.39]}'
ros2 topic pub -1 /gripper_controller/commands std_msgs/msg/Float64MultiArray '{data: [0.0]}'

(in this case it's commanding past the joint limit to illustrate the issue) The gripper will close with the first /gripper_controller/commands command and won't open with the second.

This is similar to https://github.com/gazebosim/gz-sim/issues/1684 which is caused by https://github.com/dartsim/dart/issues/1683 and fixed by https://github.com/dartsim/dart/pull/1774 and released in DART 6.13.1. That version of DART will soon be available on packages.osrfoundation.org for Gazebo Harmonic.

I'm tempted to close this issue as it seems to be not related with gz_ros2_control but with gz_sim itself.

I'll reopen this, as it got reported again and it seems that there is no fix for Fortress. (@azeey?)

I'll reopen this, as it got reported again and it seems that there is no fix for Fortress. (@azeey?)

Yeah, this has resurfaced in gz-sim as well (see https://github.com/gazebosim/gz-sim/issues/1684#issuecomment-2201224648). It looks like the behavior depends on the commanded value.
Also, unfortunately, the fix cannot be backported to Fortress since we use the version of DART in Ubuntu Focal/Jammy, which don't receive any updates, and the fix actually needs to go into DART.


Update google component dependencies

Description:
Use the latest versions of the libaries to communicate with google.apt
Checklist:
If the code communicates with devices, web services, or third-party tools:

[x] Local tests with tox run successfully. Your PR cannot be merged unless tests pass.
[x] New dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.

Hi @bachp,
It seems you haven't yet signed a CLA. Please do so here.
Once you do that we will be able to review and accept this pull request.
Thanks!

Thanks! 🐊

Getting this now:
[googleapiclient.discovery_cache] file_cache is unavailable when using oauth2client >= 4.0.0

Hmm, I'm not seeing that locally. Are you doing anything in particular to reproduce?

I'm guessing one of my component dependencies is causing the issue, but I'm not sure which one.

@happyleavesaoc I didn't see that either.
Some digging brought this two up:
https://github.com/google/google-api-python-client/issues/299
https://github.com/google/oauth2client/issues/673
No real conclusion tough.


Refactor codec::Parameters

Currently, Parameters tries to differentiate its states (owned, shared) by setting the owner field. With the way the API works at the moment, there really isn't any advantage to this over using different structs for owned, shared, and mutable shared states. It takes up an extra Rc and complicates the differentiation between immutable and mutable borrows (since it's all the same type).
I'm also pretty sure that there is some potential for nasty UB via Stream::parameters because the returned Parameters type can be accessed mutably[^1] even though Stream is supposed to be an immutable reference to AVStream.
Some notes regarding the new implementation:

I want to use the pattern Something (owned), SomethingRef, SomethingMut for other wrapper types in the future
I don't want to use impl<'a> AsRef<SomethingRef<'a>> for Something because it returns a &'b SomethingRef<'a> with two levels of indirection, which seems unnecessary
The macros are required to keep the boilerplate under control. I might even want to add more macros to implement common field types and/or traits with less code
I might add safety docs to from_raw. At the moment, the only safety concern is that you need to bound the returned lifetime correctly (since it can otherwise be arbitrarily chosen). The best way to do this is by bounding it on a borrow of another type:pub fn something<'s>(&'s self) -> SomethingRef<'s> { /* ... */ }

StreamMut::copy_parameters_from_context seems a bit unnecessary, but it is more efficient. The old implementation always allocated a new AVCodecParameters from a context, and then copied that AVCodecParameters into the stream. The new one just uses parameters_from_context(stream.codecpar, context) which avoids the in-between step

[^1]: See examples/transcode-x264.rs: (*ost.parameters().as_mut_ptr()).codec_tag = 0;

At the moment, the only safety concern is ...

Well, that was obviously not true. I pushed some documentation which should cover everything


RuntimeError: CUDA error (3): initialization error (google colab)

Bug Description
When i exported model with method ImageClassifier, i get an exception
100%|██████████| 243/243 [00:04<00:00, 54.86it/s]
100%|██████████| 275/275 [00:05<00:00, 46.61it/s]
(518, 64, 64, 3) (518, 1)
Preprocessing the images.
Preprocessing finished.
Initializing search.
Initialization finished.
+----------------------------------------------+
|               Training model 0               |
+----------------------------------------------+
Process ForkProcess-8:
Traceback (most recent call last):
File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.6/dist-packages/autokeras/search.py", line 277, in train
raise e
File "/usr/local/lib/python3.6/dist-packages/autokeras/search.py", line 270, in train
verbose=verbose).train_model(**trainer_args)
File "/usr/local/lib/python3.6/dist-packages/autokeras/nn/model_trainer.py", line 77, in init
self.model.to(self.device)
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 379, in to
return self._apply(convert)
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 185, in _apply
module._apply(fn)
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 191, in _apply
param.data = fn(param.data)
File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 377, in convert
return t.to(device, dtype if t.is_floating_point() else None, non_blocking)
RuntimeError: CUDA error (3): initialization error

@boyuangong would you please look into this issue and try to solve it and include in the tutorial for export models? Thank you!
Sent with GitHawk

Hi @codecrack3 , thanks for your interesting in our package. I test the code on Google Colab and I didn't get any errors.
As for your errors, it seems to be a pytorch problem which has something to do with torch.manual_seed, and it was fixed in pytorch issue 2571, please take a look if you are interested. So my suggestion is try to make sure the torch version is the latest.
Also, I have added the example of export and load keras model in example folder.
If you still get this problem, please feel free to let us know. And please add your settings such that we can repeated the bug.
Thanks,
Boyuan


CASSANDRA-16969-copyright-check-4.11.x

All copyrights detected in codebase noted in NOTICE.txt

Please close in favor of #1852 (which retains original contributor credit)

Closing based on quick conversation with @Claudenw


How can I transfer raw audio to lf0, mgcc and bap

I want to use merlin for chinese training, but I am confused about using World. How can I transfer raw audio to lf0, mgcc and bap? Could you show me some document or blog for learning, honestly appreciate.

willian56 wrote:

I want to use merlin for chinese training, but I am confused about
using World. How can I transfer raw audio to lf0, mgcc and bap? Could
you show me some document or blog for learning, honestly appreciate.

see the example in
merlin/egs/build_your_own_voice/s1/03_prepare_acoustic_features.sh
--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

Thanks for your replay, I will have a try.


Dependabot configuration: enable auto merge for patch and minor

related to https://github.com/jhipster/generator-jhipster/issues/12746

See documentation: https://github.com/dependabot/fetch-metadata#enabling-auto-merge
I think it's a good idea to enable auto merge for patch and minor version

@pascalgrimaud can I work on this ?

yes @beatfreaker and thanks a lot :)


Prefix all schnorr tags with SCHNORR

closes #7

Also @EspressoSystems/jellyfish

Latest changes:

added underscores between each word
renamed ...SIGNING_KEYPAIR to ...KEY_PAIR, as IMO the latter makes more sense

@alxiong WDYT?


fix(crds): removing helm field

Description

For PR author

[ ] Tests for change.
[ ] If changing pkg/apis/, run make gen-files
[ ] If changing versions, run make gen-versions

For PR reviewers
A note for code reviewers - all pull requests must have the following:

[ ] Milestone set according to targeted release.
[ ] Appropriate labels:

kind/bug if this is a bugfix.
kind/enhancement if this is a a new feature.
enterprise if this PR applies to Calico Enterprise only.

closed with https://github.com/tigera/operator/pull/1714


Remove thyme dependency?

I think this would be a positive change since thyme is no longer maintained.  Let's discuss...

Let me know if you want me to strip down my original PR to do just that — it would become a pretty small and clean PR in that case.

On Jun 3, 2018, at 9:19 AM, Doug Beardsley<EMAIL_ADDRESS><EMAIL_ADDRESS>wrote:
I think this would be a positive change since thyme is no longer maintained. Let's discuss...
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/kadena-io/pact/issues/107, or mute the thread https://github.com/notifications/unsubscribe-auth/ABTm0sZDs4C4BoVFuPOEiyGRGNEEXso9ks5t4_6NgaJpZM4UYHyA.

Issues with this, assuming we'll migrate to time library:

ensure time formatting/parsing has comparable performance
ensure backward compatibility with formatters specified at http://pact-language.readthedocs.io/en/latest/pact-reference.html#time-formats
ensure backward compat. with the persistence format. time actually has higher precision whereas thyme uses Int64 for microseconds. https://github.com/kadena-io/pact/blob/89cb13b6634544620845216be4e6a07ed4d949e7/src/Pact/Types/Runtime.hs#L187

The second point is addressed by code in the PR. Providing thyme compatibility with time is actually the easy case and not a lot of code is needed. (Most of PR is concerned with other cases that would be removed).
If I remember correctly, the third point is addressed by just rounding in the PR. I think that’s fine, but I am completely not sure. I am certain that it passed all tests.
For the first point, I would expect that the different internal representation isn’t the bottleneck when it comes to parsing and formatting (I think it’s more of an issue for computations with times and time spans). But that’s something would should profile.
Lars

On Jun 3, 2018, at 12:32 PM, Stuart Popejoy<EMAIL_ADDRESS><EMAIL_ADDRESS>wrote:
Issues with this, assuming we'll migrate to time library:
ensure time formatting/parsing has comparable performance
ensure backward compatibility with formatters specified at http://pact-language.readthedocs.io/en/latest/pact-reference.html#time-formats http://pact-language.readthedocs.io/en/latest/pact-reference.html#time-formats
ensure backward compat. with the persistence format. time actually has higher precision whereas thyme uses Int64 for microseconds. https://github.com/kadena-io/pact/blob/89cb13b6634544620845216be4e6a07ed4d949e7/src/Pact/Types/Runtime.hs#L187 https://github.com/kadena-io/pact/blob/89cb13b6634544620845216be4e6a07ed4d949e7/src/Pact/Types/Runtime.hs#L187
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/kadena-io/pact/issues/107#issuecomment-394181716, or mute the thread https://github.com/notifications/unsubscribe-auth/ABTm0pLt0pLgn8DYc9kgEKmTylZMSyJ1ks5t5CuqgaJpZM4UYHyA.

I was just talking with Lars and he's pretty confident that time is comparable for parsing and formatting.  He says the main benefit of thyme is doing math on times: calculting diffs, etc.
@slpopejoy is this enough to satisfy you that we can get rid of it or do you want to see actual benchmarks?

I ran some micro-benchmarks that compare the performance of time-<IP_ADDRESS> and thyme-0,.3.5.5 for parsing and formatting of UTCTime.
I am afraid that my claim about time and thyme parsing and formatting performance was wrong. It seems thyme is actually more efficient than time, in particular for parsing. The benchmarks also confirm that thyme has much better performance for arithmetic calculations on time and timespan values.

The code for the benchmarks and more detailed results are in this gist

Oh, that's too bad.  We should probably consider officially taking up the maintenance of thyme then.  It hasn't been updated on hackage since 2014 and eventually that will become a significant problem.

addressed by #867


"Couldn't find frontend channel..." filling logs rapidly

Rancher Versions:
Server: v1.3.0
healthcheck: none
ipsec: none
network-services: none
scheduler: none
kubernetes (if applicable): no
All system services have been removed (I don't need them).
Docker Version:
1.12.5
OS and where are the hosts located? (cloud, bare metal, etc):
Bare-metal Ubuntu 16.04 LTS:

Linux desktop 4.4.0-57-generic #78-Ubuntu SMP Fri Dec 9 23:50:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)
Environment Type: (Cattle/Kubernetes/Swarm/Mesos)
Cattle
Steps to Reproduce:
Not sure how this happened.
Results:
Logs filled with these messages at high speed:

ey a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."
time="2017-01-05T15:42:25Z" level=info msg="Couldn't find frontend channel for key a7ef671c-684b-4a20-9d74-3241d198decc. Closing frontend connection."

Expected:
Should log it only once.

We are seeing this too. Same Rancher server version (1.3.0), cattle orchestration, RHEL 7.3 on AWS

Same too. with 1.3.1

Same here with 1.3.1

Same here...
time="2017-01-18T13:38:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:39:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:39:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:39:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:39:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:40:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:40:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:40:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:40:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:41:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:41:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:41:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:41:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:42:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:42:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:42:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:42:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:43:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:43:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:43:29Z" level=info msg="Refresh for this catalog library is already in process, skipping"
time="2017-01-18T13:43:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:43:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:44:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:44:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:44:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:44:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:45:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:45:23Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:45:52Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:45:53Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:46:22Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."
time="2017-01-18T13:46:23Z" level=info msg="Couldn't find frontend channel for key a5fb7c08-2a7a-4952-6b48-b6d9a30047b7. Closing frontend connection."

Tested with v1.3.2-rc2. Created a container which prints hello every second. After browsing the container logs, closed the browser. The same procedure was  followed for rancher-agent logs too. The  messages Couldn't find frontend channel for key a5xxxxxxxxxxx. Closing frontend connection.  are not seen in rancher/server logs.

is this bug solved? I am using Rancher 1.3.2 & Docker 1.12.3 & CentOS 7, and logs shown in the rancher/server.

time="2017-01-23T16:25:17Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"
time="2017-01-23T16:25:23Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"
time="2017-01-23T16:25:30Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"
time="2017-01-23T16:25:38Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"
time="2017-01-23T16:25:47Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"
time="2017-01-23T16:25:52Z" level=info msg="Couldn't find frontend channel for key 8c8cfd18-1f38-493c-7810-6f830e35eb96. Closing frontend connection."
time="2017-01-23T16:25:52Z" level=info msg="Couldn't find frontend channel for key 8c8cfd18-1f38-493c-7810-6f830e35eb96. Closing frontend connection."
time="2017-01-23T16:25:52Z" level=info msg="Couldn't find frontend channel for key 8c8cfd18-1f38-493c-7810-6f830e35eb96. Closing frontend connection."
time="2017-01-23T16:25:52Z" level=info msg="Couldn't find frontend channel for key 8c8cfd18-1f38-493c-7810-6f830e35eb96. Closing frontend connection."
time="2017-01-23T16:25:52Z" level=info msg="Couldn't find frontend channel for key 8c8cfd18-1f38-493c-7810-6f830e35eb96. Closing frontend connection."
time="2017-01-23T16:25:52Z" level=info msg="Couldn't find frontend channel for key 8c8cfd18-1f38-493c-7810-6f830e35eb96. Closing frontend connection."
time="2017-01-23T16:25:52Z" level=info msg="Couldn't find frontend channel for key 8c8cfd18-1f38-493c-7810-6f830e35eb96. Closing frontend connection."
time="2017-01-23T16:25:52Z" level=info msg="Couldn't find frontend channel for key 8c8cfd18-1f38-493c-7810-6f830e35eb96. Closing frontend connection."
time="2017-01-23T16:25:57Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"
time="2017-01-23T16:26:08Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"
time="2017-01-23T16:26:20Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"
time="2017-01-23T16:26:33Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"
time="2017-01-23T16:26:35Z" level=info msg="Stats auth failed: Error parsing stats token. Failing auth. Error: token is expired"


Invalidated immediately after authentication when using cookieStore with Safari

Safari version: 14.1.2
ESA version: 4.2.2
Ember version: 4.9.3
We recently switched from using the adaptiveStore to the cookieStore so we can keep the user authenticated across various subdomains.
This works perfectly on Chrome and Firefox, but on Safari we're experiencing an issue where immediately after signing in using the authenticate method, the session becomes invalidated and the user is redirected straight back to the login screen.
I've dug through the source code and it seems to be caused by the _bindToStoreEvents method in the internal-session service.
This gets called in the init hook for this service, and when it gets to the conditional which checks for an authenticatorFactory, it's undefined which causes the _clear method to be called which then invalidates the session.
The strange thing is, in Chrome this _bindToStoreEvents method never seems to get reached on login, so I'm not sure what this authenticatorFactory value should be, or why it's undefined in this scenario.
If I then delete the cookies generated by the initial login, I can login fine and it doesn't invalidate me, but every subsequent time I try and login it will repeat the original issue unless I delete the cookies each time.
I have also checked that all cookies are allowed in Safari by disabling 'Block all cookies' and 'Prevent cross-site tracking' just in case this was interfering with ESA somehow.
Any ideas of how to resolve this?

Hi @joshuaswift, thanks for reporting the issue and all the pointers.
At this very moment, I can't tell you what is the issue, I'll try to work that out in the coming days though.
authenticatorFactory is a string used to look up a service/object in the Ember's DI system.
Considering this example from the ESA's readme https://github.com/mainmatter/ember-simple-auth#walkthrough
  @action
  async authenticate(e) {
    e.preventDefault();
    let { identification, password } = this;
    try {
      await this.session.authenticate('authenticator:oauth2', identification, password);
    } catch(error) {
      this.errorMessage = error.error || error;
    }

    if (this.session.isAuthenticated) {
      // What to do with all this success?
    }
  }

authenticate is the method you need to use when logging-in to the app, as the first argument it expects the authenticatorFactory string. In this case it's "authenticator:oauth2".
It then is assigned to a property of the internal-session over here in this._setup
and then presisted in a store over here.
So later it can be used for restoring the session.

Unfortunately I couldn't reproduce this.
I'm also attaching a screen recording.
ember-simple-auth 4.2.2
ember-simple-auth-token 5.2.2
Safari 15.1

The value of the cookie also contains the authenticator and it's exactly the same string as the one provided during authenticate call.
Could you make sure that the cookie is correct after/during log-in? e.g.
{
    "authenticator": "authenticator:token",
    "access_token": "....",
    "status": "ok"
}

This gets called in the init hook for this service, and when it gets to the conditional which checks for an authenticatorFactory, it's undefined which causes the _clear method to be called which then invalidates the session.

The strange thing is, in Chrome this _bindToStoreEvents method never seems to get reached on login, so I'm not sure what this authenticatorFactory value should be, or why it's undefined in this scenario.

Additonally, in my testing neither on Chrome or Safari the sessionDataUpdated callback isn't run during authenticate (as it shouldn't).
It's triggered by the authenticator, however while authenticate request is still not resolved, the event doesn't do anything. So my only guess at the moment is that your authenticator triggers the sessionDataUpdated event after authentication.
What authenticator do you use?
Code samples and recording:
// app/session-stores/application.js
import CookieStore from 'ember-simple-auth/session-stores/cookie';

const CustomCookieStore = CookieStore.extend({});

export default CustomCookieStore;

  @action
  async authenticate() {
    const authenticator = 'authenticator:token'; // or 'authenticator:jwt'

    try {
      await this.session.authenticate(
        authenticator,
        {
          user: {
            name: this.form.username,
            password: this.form.password,
          },
        }
      );

      this.router.transitionTo('protected.catalysts');
    } catch (error) {
      // dont matter
    }
  }

https://user-images.githubusercontent.com/15948633/230178969-a25f756a-e962-4c58-a1e8-b5116fc3166b.mov

Thanks for the response! Interesting, we use the devise authenticator but extend it with some basic config, see below:
User authenticator:
// app/authenticators/user.js
import {alias} from '@ember/object/computed';
import {computed} from '@ember/object';
import {inject as service} from '@ember/service';
import classic from 'ember-classic-decorator';
import DeviseAuthenticator from 'ember-simple-auth/authenticators/devise';

@classic
export default class User extends DeviseAuthenticator {
  @service global;

  @alias('global.apiHost') host;

  @computed('host')
  get serverTokenEndpoint() {
    return this.host + '/users/sign_in';
  }
}

Session store:
// app/session-stores/application.js
import CookieStore from 'ember-simple-auth/session-stores/cookie';

const CustomCookieStore = CookieStore.extend({});

export default CustomCookieStore;

Login logic:
 @action
  async authenticate() {
    this.isLoading = true;

    try {
      await this.session.authenticate('authenticator:user', this.email, this.password);

      this.router.transitionTo('routeAfterAuthentication');
    } catch (error) {
      if (error?.graphQLErrors?.[0]?.symbol === 'needs_password_change')
        return this.router.transitionTo('login.force-password-change');

      const errorMessage = await error?.json?.();

      this.invalidMessage = this._parseErrorMessage(errorMessage);
    }

    this.isLoading = false;
  }

Apologies I can't provide a screen recording, but I checked the session after authenticating and the cookie is present as expected, but it then gets invalidated immediately when the sessionDataUpdated event is triggered.

@joshuaswift I tried to reproduce it again based on your setup (devise authenticator and RoR server) and again it appears to be working correctly for me.
At this point I don't have any other ideas than trying to update Safari and see if the problem persists.

I'm observing similar behavior on both Chrome and Firefox, also using CookieStore. Immediately after a successful login, the session is invalidated. I don't think it's ESA's fault though, since even rolling back to 4.2.2 didn't solve the issue for me. I've been merging dependabot updates a bit carelessly and I'm suspecting that it might be caused by something else. 🤔
For now, I've rolled back my changed and now I'll wait for the next batch of dependabot alerts. I'll try and see whether I can find out what caused the issue for me.

I've updatd to 5.0.0 again and merged all my dependabot PRs carefully one at a time, and I couldn't reproduce the issue. I'm afraid I have no idea what caused it. 😵💫

Seems like good but bizarre news 👯 😄
I'll be closing this based on spuxx's comment. @joshuaswift feel free to reach out and re-open if your issue still persists.

@BobrImperator @joshuaswift  I managed to reproduce the behavior. I was managed to isolate it to ember-data: 4.12.0. It happens on both 5.0.0 and 4.2.2 of ember-simple-auth, so it's likely an issue with ember-data. Before moving there I wanted to let you know and ask whether you might have an idea what might be going on here.
Both of these lead to the observed behavior of sessions being invalidated right after login:
"ember-data": "~4.12.0",
"ember-simple-auth": "^4.2.2",

"ember-data": "~4.12.0",
"ember-simple-auth": "^5.0.0",

Both of these work fine:
"ember-data": "~4.11.3",
"ember-simple-auth": "^4.2.2",

"ember-data": "~4.11.3",
"ember-simple-auth": "^5.0.0",

This will likely get reported more often once folk update their apps, so we should probably get on top of this. I can try to dig into what's going on, but it might take me some time as I'm currently on vacation. Everything points to ember-data right now, but no idea why. Guess we'll need to take a look at what changed on 4.12.0.

@BobrImperator I think I was able to track this issue down thanks to the folks over on ember-data repo. It appears that in v6.0.0-rc.1 the behavior was fixed by commit cabd964738cb4d17df18ae1dba39bac278f4a766.
Coould we maybe get that commit as a patch v5.0.1?

Also, I'd suggest reopening this issue as it indeed appears to be an issue with ember-simple-auth's dependency declarations.


nixUnstable deprecation

Problem

I am getting build errors related to the updated verbiage around nixUnstable to nixVersions.{git || latest}. The behavior is the same regardless of if I add the --impure option.
[~/.config/home-manager]$ home-manager switch --flake .
error:
       … while calling the 'derivationStrict' builtin
         at <nix/derivation-internal.nix>:9:12:
            8|
            9|   strict = derivationStrict drvAttrs;
             |            ^
           10|

       … while evaluating derivation 'home-manager-generation'
         whose name attribute is located at /nix/store/4p0avw1s3vf27hspgqsrqs37gxk4i83i-source/pkgs/stdenv/generic/make-derivation.nix:331:7

       … while evaluating attribute 'buildCommand' of derivation 'home-manager-generation'
         at /nix/store/4p0avw1s3vf27hspgqsrqs37gxk4i83i-source/pkgs/build-support/trivial-builders/default.nix:68:17:
           67|         enableParallelBuilding = true;
           68|         inherit buildCommand name;
             |                 ^
           69|         passAsFile = [ "buildCommand" ]

       … while evaluating the option `home.activation.installPackages.data':

       … while evaluating definitions from `/nix/store/nkqf0vw9vwsjqac6i2zdg0581s75ih9j-source/modules/home-environment.nix':

       (stack trace truncated; use '--show-trace' to show the full, detailed trace)

       error: nixUnstable has been removed. For bleeding edge (Nix master, roughly weekly updated) use nixVersions.git, otherwise use nixVersions.latest.

The closest thing I could find to a solution were from reddit or issue #310615. The recommended action basically boils down to this:
# home.nix

# previously no mention of nix.package

# home.nix

# now added this line to my home.nix file
nix.package = pkgs.nixVersions.latest

Unfortunately this did not resolve the issue.
Proposal

Add a wiki page documenting the behavior of the default value and explain why it must be set. Once I get this resolved I'll happily write it myself!
Checklist

[x] checked latest Nixpkgs manual (source) and latest NixOS manual (source)
[x] checked open documentation issues for possible duplicates
[x] checked open documentation pull requests for possible solutions

Add a :+1: reaction to issues you find important.

Please provide your config, or an MWE.
nixVersions.latest is meant to be the replacement in general.

This is either issue with your config, in which case you should just replace the nixUnstable attribute, or with one of your flake inputs, in which case you should get them to fix it/update them. Either way, it is not a Nixpkgs bug.
Try checking if you have nixUnstable anywhere in your flake or sources of your flake input. Also please run the command with --show-trace as suggested by the error message for more info.

This error was confusing because I was using nix.package = pkgs.nixUnstable which was not found by grepping for "nixVersions.unstable". Removing this alias or replacing it with an error would result in clearer messages.

That was done in https://github.com/NixOS/nixpkgs/pull/316664.

@jtojnar -- thanks for your response addressing the issue. I appreciate your help!

This is either issue with your config, in which case you should just replace the nixUnstable attribute, or with one of your flake inputs, in which case you should get them to fix it/update them. Either way, it is not a Nixpkgs bug.

The reason I added this with the 'needs documentation' tag is that I never manually set nix.package anywhere in my config. Therefore it was unclear to me why this deprecation to an option that I didn't set would break my config. Until the next half of your response:

Try checking if you have nixUnstable anywhere in your flake or sources of your flake input. Also please run the command with --show-trace as suggested by the error message for more info.

This makes way more sense! I didn't think about the possibility of the issue being in a flake input source, but that could explain the behavior I was seeing.


[all] Update k8s dependencies to v1.19.0

What this PR does / why we need it:
The current v1.18.0 service controller for OCCM is missing two important fixes:

Service load balancers should include unschedulable nodes
service-controller-fixup

Also the cloud-provider controllers were moved to k8s.io/cloud-provider/controllers.
Which issue this PR fixes(if applicable):
fixes #
Special notes for reviewers:
Release note:

NONE

/test cloud-provider-openstack-acceptance-test-lb-octavia

/test cloud-provider-openstack-acceptance-test-keystone-authentication-authorization


Single-handed tool hotkeys

Feature/enhancement description:

From an ergonomic and user perspective, single-handed tool hotkeys are very efficient. I'm a right-hander and I'd like hold the pen on the right hand and use the left-hand on the keyboard. So, I had to remap just the Line tool (L) to (A) and I was done. However, a left-hander would need to remap 5 out of the 6 keys.
I think it would be nice to have a global configuration option called single-handed tool hotkeys and provide the two mappings plus the current mapping as a third and default because of its explicit link to the tool name. Let me know what you think.
Thanks
~parthi

In the main latest main branch @MrApplejuice implemented a way to rebind any keyboard shortcut to anything you want (you can also have multiple key combos bound to one action). I guess that would solve this issue and is a more general solution to the problem your'e having.
See: https://github.com/mbrlabs/Lorien/pull/169

Thanks @mbrlabs , I'll check it out.

Alrght, closing this then :)


About versions modules

Why is there no Version included in the Module ID? In the /details API, the ModuleID is set to 'credentials.' Does this indicate that the Version module may not be required or has not been implemented?
Regarding the Version module, I have the following questions:

Within the version API, it seems that the content for /versions and /details is hardcoded in the project. Is there a way to make this content more flexible or customizable?

In /ocpi/versions, it appears that it doesn't enter the Crud class. How can we verify the correctness of the Authorization Token in this case? According to OCPI spec 2.2.1, specifically in the seventh chapter (Figure 22 - "The OCPI registration process"), /ocpi/versions should carry the token within the header.

Hi @hsineternity, sorry for the very long response, if you are able to create a fix, we will review it and merge it.

Hi @hsineternity  we are now getting back to ocpi library maintenance, we will soon take care of the request you created, have you successfully integrated ocpi lib with your project ?


Is the certutil command for the WHFBAuthentication tempate correct?

I'm attempting to run 'certutil -dsTemplate WHFBAuthentication msPKI-Private-Key-Flag +CTPRIVATEKEY_FLAG_HELLO_LOGON_KEY' on my Windows Server 2012 R2 CA and it is not executing correctly. It's repeating the help text as if there is a syntax error. Template name is definitely correct.

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

ID: b063e00b-84e5-9da7-2229-e0e24da3b877
Version Independent ID: da9f4867-2aa3-aefa-1603-ddb2ab1ed624
Content: Prepare and Deploy Windows Server 2016 Active Directory Federation Services (Windows Hello for Business)
Content Source: windows/security/identity-protection/hello-for-business/hello-cert-trust-adfs.md
Product: w10
GitHub Login: @MikeStephens-MS
Microsoft Alias: mstephen

I just went through this at a customer.  It's not necessarily stated clearly enough, but you run this from the AD FS 4.0 (2016) server, not the CA.

Added "Sign-in to an AD FS Windows Server 2016 computer with Enterprise Admin equivalent credentials." under section Mark the template as the Windows Hello Sign-in template


Added Android Messenger Mac to chat section

Project URL
https://github.com/jake-101/android-messenger-mac
Category
Chat
Description
Mac app wrapper around Google's stand-alone Android Messenger.
Why it should be included to Awesome macOS open source applications  (optional)
I haven't seen any other wrappers for Google's SMS web app for Mac. It has been very useful for me so I thought I'd share it with the community.
Checklist

[ x] Only one project/change is in this pull request
[ x] Addition in alphabetical order
[ x] Appropriate language icon(s) added if applicable
[ x] Has a commit from less than 2 years ago
[ x] Has a clear README in English

@jake-101 It's ok! I will take care of it)
Thank for your contribution 👍


Don't soft-wrap on indentation

Closes #5995 :sparkles:
As pointed out on the aforementioned issue, Atom behaved unexpectedly while soft-wrapping tab-indented lines. I tracked down the issue to TokenizedLine#findWrapColumn: when searching backwards for spaces, in facts, the method didn't skip indentation tokens.
But why this was happening only for tab-indented lines? That's because invisibles were getting replaced with visible characters. However, the replacement for \t has a trailing space » , whereas the replacement for spaces hasn't.
This PR changes the behavior to always skip indentation tokens while scanning the line backwards for spaces :beetle: :gun:

/cc: @izuzak @nathansobo

Nice. So many nuances to this stuff. I'm hoping things will be more straightforward in text-document since we can deal with each concern on its own layer. We'll definitely need your help making sure we don't regress when that gets a bit more evolved.

I'm hoping things will be more straightforward in text-document since we can deal with each concern on its own layer.

I hope so, but I am quite convinced this will be the case! :wink:

We'll definitely need your help making sure we don't regress when that gets a bit more evolved.

@nathansobo: sure thing! Just give me a shout whenever you feel ready to accept contributions and I'll be happy to work with you and @maxbrunsfeld on that :raised_hands:

@as-cii This is causing failures in our randomized spec on CI:
>> TextEditor
>>   it properly renders soft-wrapped lines when randomly mutated
>>     Error: Invalid line text at screen row 2
>>       at verifyLines (/private/var/lib/jenkins/workspace/atom/spec/random-editor-spec.coffee:41:19)
>>       at /private/var/lib/jenkins/workspace/atom/spec/random-editor-spec.coffee:27:9
>>       at _.times (/private/var/lib/jenkins/workspace/atom/node_modules/underscore-plus/node_modules/underscore/underscore.js:1119:53)
>>       at /private/var/lib/jenkins/workspace/atom/spec/random-editor-spec.coffee:25:7
>>       at _.times (/private/var/lib/jenkins/workspace/atom/node_modules/underscore-plus/node_modules/underscore/underscore.js:1119:53)
>>       at [object Object].<anonymous> (/private/var/lib/jenkins/workspace/atom/spec/random-editor-spec.coffee:18:5)

I'm going to revert it for now. Could you take a look and open a new one? My suggestion for solving this is to either change the randomized test so we can control the seed of the random generator or log code in the test so we can reproduce it. Once you get a reproducible case you can update your unit tests to reflect it.


Error report with latex formular without internet connection.

This is a big problem with latex formular! It seems better to be loaded  locally. Or stop reporting that problem below
"LaTeX support did not load. Using fallback solution. Try checking your network connection."
My excalidraw version is 1.9.2

This seems Obsidian related. Please note that the Obsidian issue log is here: https://github.com/zsviczian/obsidian-excalidraw-plugin
As for the issue, try selecting a different library host in the plugin settings and restarting obsidian afterward.

Let's continue the conversation here: https://github.com/zsviczian/obsidian-excalidraw-plugin/issues/1383

Could you give me a choice to use local mathjax? I have already download the mathjax 3.2.1. May be better if you add a configuration for me to choose a local path pointing to mathjax. Because I need to work with excalidraw without internet connection. Thankyou very much.


add jalali parser

As we implemented the PARSERS settings I thought that it could be a good idea to add an optional jalali parser.
In this way, it shouldn't be necessary to do this (as explained in the docs):
from dateparser.calendars.jalali import JalaliCalendar
JalaliCalendar(<jalali-string>).get_date()

And we could directly do this:
>>> dateparser.parse("۱۳۹۸/۰۶/۳۱ در ۱۴:۵۲", settings={'PARSERS': ['jalali']})
datetime.datetime(2019, 9, 22, 14, 52)

(My idea is not to include it in the default parsers list, and to allow to enable it by changing the settings or through the settings param)
The current implementation I've done it's working for the example above, however, it's not working for this example:
>>> dateparser.parse(u'جمعه سی ام اسفند ۱۳۸۷', settings={'PARSERS': ['jalali']})

However, using the JaliliCalendar directly works for both examples:
>>> from dateparser.calendars.jalali import JalaliCalendar
>>> JalaliCalendar(u'جمعه سی ام اسفند ۱۳۸۷').get_date()
{'date_obj': datetime.datetime(2009, 3, 20, 0, 0), 'period': 'day'}

As far as I see this is due to the fact that before calling the parsers, in get_date_data we try to decide which language is used, and while the first example is correctly detected as Persian (fa), the second example is not detected as Persian and it returns an empty date object.
I'm not sure what to do. We could improve the Persian support, but maybe it doesn't make sense if we don't need to know that it's Persian to use the new jalili parser.
What do you think? any feedback? @Gallaecio
Thanks in advance
P.S: Of course, my idea after deciding how to proceed is to do the same with the Hijri calendar.

I think it should be OK to skip language detection and translation on this new parser if that improves input data support.
If we later find an input string where we need language detection, we can work on it then. As long as we have those two input strings in the tests, everything should be fine.

Hi @Gallaecio, I don't see an easy way to bypass the lang detection, as it's expected to have a language to start parsing the date.
I added a commit with a workaround setting default locales, but maybe it's too custom for this. Let me know what you think about this approach.


decorating functions in pipe chains?

Hi Christiano and all
Wondering if youve considered decoration for functions called in pipe chains?
I wasnt able to add the decorator where I thought it would go
Thanks for the quick feedback about literal divides.
Alex

Hi, do you have an example?

  if columns->Js.Array.length >= 2 {
    let dataRecordIdColumn = @doesNotRaise columns->Belt.Array.getExn(0)
   ...
  }

One can annotate the function Belt.Array.getExn or the result of the application.
In the case of pipe, there are issues with the parsing of the annotation.
See examples in https://github.com/rescript-association/reanalyze/pull/165
This should be moved to an issue in the https://github.com/rescript-lang/syntax repository:
1 (@doesNotRaise [])->Belt.Array.getExn(0) formats to @doesNotRaise []->Belt.Array.getExn(0) so this is annotating the argument not the result
2 @doesNotRaise ([]->Belt.Array.getExn(0)) formats to []->Belt.Array.getExn(0) so it completely destroys the annotation.
For your workaround, you can annotate the function for now.

Rad. Thanks for the examples. I need to take more time looking in there as well


npm run build

Hi, I'm a user of your WAVES library project.
I'm trying to create my own custom build as it describes in the README.md. The command 'npm run build' gives me some error and so I'm reporting here.
It seems like it can not find the module 'loaders', and it should be 'waves-loaders'. So I rename the folder and all is good.
'babel-runtime' package is missing as 'devDependencies'. Differents modules need it so I install the package under the 'waves' folder like this way : 'npm install --savedev babel-runtime'.
After that, all seems to work, but when I included the script file 'waves.min.js' to the html page, javascript console gives me an error with the 'babel-helpers' function. I didn't found the way to resolve it, and I think the problem should be caused by the 'babel-runtime' package.

Hi, there was some heavy refactoring on the bundle that might explain the problem. This should work now.
Be careful however because some of the namespaces have changed, in particular loaders is now exposed in waves.loaders and not in waves.helpers.loaders anymore, also the repository is now here https://github.com/wavesjs/waves and the doc moved there http://wavesjs.github.io/.
Let me know if this changes fixed your problem.

Thanks for your replying. So with the new 'waves.min.js' script file included in my HTML page, I get a message error with the 'transport' module. I commented this line and I get the same error with 'playControl' module. It seems that the browser didn't find the 'waves.audio' component. I join an image below with the undefined error.
Actually, I'm trying to create an engine and add to the 'transport' module. So with your new components architecture, I added a 'require' line in 'waves-audio.js' and place my engine js file to 'es6/engines' subfolder. It seems that I don't need to add the new dependency in the 'package.json'. The command 'npm run bundle' works fine in the 'waves-audio.js' and I get my engine in the generated minify file.
But in the higher level ('waves' folder), the same command download the same components from git and replace the 'waves-audio.min.js' file created previously. So if I want to generate the minify 'waves.js' file, what is the command ? It should be something like a combined command with 'browserify' and 'uglify' but I didn't find in your 'script.js' file.

Hi, many things in your problems...
First, when you create your local variables for your audio components, you forgot the uppercase in constructor names, so it is undefined. Replace waves.audio.metronome with waves.audio.Metronome and it should work.
Secondly, I really don't understand why do you try to add your component inside the library. What about creating your own engine in some /lib folder (or similar) and just consume it in your app ?
The kind of thing you are trying to achieve is not provided by the library and I really don't see why it should be, as it is a library and not a framework.

Ok, so for the first problem, I didn't change my code before you updated the library. So it works now. Thanks ! You should update the Granular Engine code example too on this page : http://wavesjs.github.io/audio/.
And for the second, I'll try as you say. I was thinking about to recreate the minified 'waves.js' including my engine, but I didn't think about to create an external module and add it after.
Anyhow, thanks for your fast replying.

Hey, thanks for the information concerning the docs, we have indeed some work to do on the examples to keep them up to date.


passing ObservableArray instead of Array to sections results in warning

If I am not mistaken, ObservableArray can be used just like Array
I get the following warning:
Warning: Failed prop type: Invalid prop `sections` of type `object` supplied to `Accordion`, expected `array`.

What is ObservableArray?

@schumannd what is the answer to this problem, this same issue ?

I’m not sure what is observable array? Is this from knockout?

see #156
Observable array is from mobx.
The solution was making sure I was passing an array as sections

@tegarkurniawan mobx docs explain how to use maps and so on with Observable array.

Due to limitations of native arrays in ES5 observable.array will create a faux-array (array-like object) instead of a real array. In practice, these arrays work just as fine as native arrays and all native methods are supported, including index assignments, up-to and including the length of the array.

Bear in mind however that Array.isArray(observable([])) will yield false, so whenever you need to pass an observable array to an external library, it is a good idea to create a shallow copy before passing it to other libraries or built-in functions (which is good practice anyway) by using array.slice(). In other words, Array.isArray(observable([]).slice()) will yield true.

https://mobx.js.org/refguide/array.html


Build fails on Node v18

Running the test suite against v18 returns the following error:
error:0308010C:digital envelope routines::unsupported

related to #66

This is not directly linked to Node version but rather to the OpenSSL provider.
Keeping this open for now. The issue might be solved by updating your OS.


E number bug

with

without

With planifolia the E number always shows: -1/all entities
instead of: entities on screen/all entities
I use all mods from the allowed list except krypton in version 1.17.1

this is very intentional and has been a staple of 1.16.1 sodium for years (https://github.com/Minecraft-Java-Edition-Speedrunning/sodium/commit/5a1b3767c3601bd79b5b0d4fa857781507e73e2f); it only does this when entity culling is on. With entity culling on, the behavior of e-ray is  different, and since it's not like vanilla, it is disabled.

So I just turn on entity culling and then it works?
Oh and how do I do that?

a toggle for entity culling is available in the sodium options on the title screen, added to the vanilla menu at the bottom when in a world, and standardsettings has the ability to modify it as well.

Ok thanks a lot