Config reload causing delays to scraping

Proposal
Prometheus should have a way to reload the configuration that is less impactful.  Currently when in a situation where a frequent reload is needed (in my situation I need to dynamically add namespaces to the list to scan), multiple scrapes are missed which also cause numerous false-positive alerts.
Bug Report
When using  a scrape time of 15s, in an environment that needs to trigger a config reload on a fairly frequent basis, frequent gaps can be seen in the metrics.
Looking at reload times based on the time between "Loading configuration file" and "Completed loading of configuration file" I see:
31s
26s
22s
19s
33s
8s
19s
2s
26s
21s
Then after the config reload is completed, since it needs to re-detect the endpoints and re-scan them, it can add another minute.  So up 6 scrapes can be missed.  We need the ability to be able to trigger dynamic reloads without impacting user graphs and alerts.
What did you expect to see?
It'd be nice to see the reload be less impactful, though I'm not sure the most appropriate technical approach.  I'd be nice if it's a lazier reload where the new config is read, and existing endpoints are scanned until they are seen to no longer be valid.
What did you see instead? Under which circumstances?
Where we have times of frequent reloads (sometimes a reload every 2 minutes), we end up with more missed data points than successful scrapes so have graphs that show almost an hour of blank graph time.

Prometheus version:
v2.9.2

Example config

- job_name: service-endpoints
  honor_timestamps: true
  scrape_interval: 15s
  scrape_timeout: 5s
  metrics_path: /metrics
  scheme: http
  kubernetes_sd_configs:
  - role: endpoints
    namespaces:
      names:                               # This list will dynamically change
      - foo-namespace-<id1>
      - foo-namespace-<id2>
      - foo-namespace-<id3>

  tls_config:
    insecure_skip_verify: true
  relabel_configs:
  - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape]
    separator: ;
    regex: "true"
    replacement: $1
    action: keep

Related to https://github.com/prometheus/prometheus/issues/5776. Additional context here: https://groups.google.com/d/msg/prometheus-users/EqbRzC8coo4/MgfwHFKZAQAJ

If anyone has some thoughts as to some appropriate ways that this reload might be able to be done in a more dynamic (or just faster, less impactful) way, then please let me know.  I'm not familiar with Prometheus code, so want to make sure if I try to figure this change out that I'm at least starting to look in a direction that makes sense.

We're facing the same exact issue.  We have the need to be able to trigger config file reloads, but doing so causes gaps in graphs which is raising a lot of complaints.
Any ideas/pointers on how one might trigger a soft reload (re-read configs and add needed watches) without causing missed scans would be helpful

Note that looking at more recent reload times, I see a huge variation:
//time in seconds
0.038
0.038
0.025
0.03
0.034
0.022
0.056
0.027
3.957
0.046
31.619
33.695
29.644
7.885
0.058
26.737
39.679
44.566
56.174
45.113
44.672
0.048
5.119
4.478
3.68
34.502
11.328
3.585
0.511
8.044
13.578
0.006
0.011
0.041
8.064
7.02
9.005
47.088
40.882
1.622
0.043
The server load is not showing increased during the time I see the larger reload spikes.  Looking at
https://github.com/prometheus/prometheus/blob/master/cmd/prometheus/main.go#L733
I'm not clear on what's causing the longer reload times, this looks like it should be a quick action.  I'm doing further testing, but any suggestions to help nudge me in the right direction would be VERY much appreciated.

It would be great to change the reloaders from []func() to map[string]func() and use the string as a label 'reloader' of a summary to help us identify the slowest steps when reloading.

Hey @roidelapluie  - I had to revert my setup that was dynamically adding the namespace to the configs and kicking a reload given the long reload times we were seeing.  I see you have https://github.com/prometheus/prometheus/pull/6670 submitted, so wanted to see if that'd likely help this situation too.  I can get back to the configs I was using and set the environment up to re-test all of it out, but was hoping to see if the change would potentially help here or if you'd expect it to not come into play so probably not worth getting this set back up.  Thanks!

We should add more information in the logs to determine if there is an actual bug.

We should add more information in the logs to determine if there is an actual bug.

There will be those logs in Prometheus 2.21: #7761

Came up at the bug-scrub: since more logging was added, can someone report here recent details showing the problem?
Many parts of target sync have been optimized, so it is possible the reload doesn't take so long now.
For anyone who does have lengthy reloads, a CPU profile showing what Prometheus was doing in that time would be ideal.


Sorting by character name only works in English

Sorting characters by name works in English, and then translates to another language.
So sorting by name does not work in another language.
In English:

In Russian:

The same result, in the Russian localization sorting is not correct

Will see if I can do something about it

Also Ayaka and Ayato, even in english not in alphabetical order.

Also Ayaka and Ayato, even in english not in alphabetical order.

it is sorted?

I mean in the whole list. They are somewhere in between the characters with letters K, not at the top of the list with letters A.

Yeah its sorting by the first name


Add multimodal chat sample app

Summary
 - Add a new sample app demonstrating multimodal chat capabilities using Pixeltable
 - Includes FastAPI backend, Next.js frontend, and AWS CDK deployment code
 - Supports processing documents, videos and audio with natural language queries

This change is

This file docs/sample-apps/multimodal-chat/backend/README.md is superfluous because of the one already at the root of the multimodal-chat folder.


Dry-run

Would be cool to be able to do mortar --dry-run my-app resources/. Mortar could run a "diff" against the processed resources vs. current state on Kubernetes cluster.
We currently already support the --output option to show the processed resources to be shot to Kube cluster, but that's only half of the story.

bumpimg to 0.4.0 as the support for k8s-client side is not there yet


Bad performance editing a line after many blank lines

Prerequisites

[X] Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
[X] Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
[X] Tried disabling every package in safe mode on a clean install
[X] Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
[X] Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
[X] Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
Text operations (inserting / deleting characters, pasting, etc.) on a line that is preceded by many blank lines take a really long time.
Steps to Reproduce

Create a new file.
Paste about 2000 blank lines (the performance gradually decreases with the amount of lines, for me 2000 is where it's already very noticeable).
Try to type something.

Expected behavior: Characters are inserted instantly.
Actual behavior: Individual characters take about 2 seconds to insert, typing many characters at once makes the editor hang for about 10 seconds before inserting them all at once.
Reproduces how often: 100%
Versions
Atom    : 1.12.7
Electron: 1.3.13
Chrome  : 52.0.2743.82
Node    : 6.5.0

Linux 4.8.13-1-ARCH #1 SMP PREEMPT Fri Dec 9 07:24:34 CET 2016 x86_64 GNU/Linux

Profiler log
Trying to save the profiler log produced an empty file for some reason, here's a screenshot:

I can't reproduce this on Atom 1.14.0-dev-3e33aa1.  @YaLTeR can you please fill out the rest of the issue template, specifically the prerequisites section?

Building latest git atom to check there.

Seems to be fixed on latest git.

Awesome!  Yeah, I had a suspicion that this would be fixed after the recent work done on improving large file support.


Creating a new Quaternion

Hi, I'm trying to create a new Quaternion with the following code:
Quaternion quat(Vector3(1, 1, 1), 45)
But, it complains that I can't pass arguments to Vector3's constructor. How can I create a Vector3 then?

Can you please attach the full error and compiler version you're using?

Thank you for your reply,
I'm using Visual Studio 2015, and in my includes, I have the following:
#include <vmath/types.hpp>
#include <vmath/functions.hpp>
using vmath::Quaternion;
using vmath::Vector2;
using vmath::Vector3;
using vmath::Vector4;
using vmath::Matrix4x4;

And the error I get is None of the overloads accepts 3 arguments.
I was wondering if I miss an include or something else? Because when I look at the API pages, I don't seem to find the constructors for Vector (maybe I don't know where to search)

@farzadmf
https://msdn.microsoft.com/en-us/library/hh567368.aspx#corelanguagetable
Many features of this library rely on C++11 features that MSVC only partially supports. Until Microsoft implements inheriting constructors and expression SFINAE this library will not work with Visual Studio.

Further proof. The following works using both GCC 4.9 and Clang 3.5.
#include <iostream>

#include <vmath/types.hpp>
#include <vmath/functions.hpp>

using vmath::Quaternion;
using vmath::Vector2;
using vmath::Vector3;
using vmath::Vector4;
using vmath::Matrix4x4;

int main() {
        Quaternion quat(Vector3(1, 1, 1), 45);
        std::cout << "<" << quat.x << ", " << quat.y << ", " << quat.z << ", " << quat.w << ">" << std::endl;
}

rkernan@develop:~/workspace/vmath/issue_11$ g++ --version
g++ (Debian 4.9.2-10) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

rkernan@develop:~/workspace/vmath/issue_11$ g++ -I/home/rkernan/workspace/vmath/inc -std=c++11 test.cpp -o test.gcc
rkernan@develop:~/workspace/vmath/issue_11$ ./test.gcc
<-0.28127, -0.28127, -0.28127, -0.873305>

So, there's no way to make it work? A hack or something?

No. Unless Microsoft implements these features in the MSVC compiler this library will not work.

OK, thank you for your help. Just as a suggestion, maybe it would not be a bad idea to update the README so that it mentions that it doesn't work on MSVC


Radical idea - allow procedures (optionally) to return something

I am concerned that we currently do not permit the ability for a procedure to 'return', say, a message string - as we once had with out.
Possible idea:

Allow a `procedure' optionally to define a return type (like a function).
Get rid of external altogether
Still require that a procedure may only be invoked via call statement, but with optional into clause (as external currently has)

Rationale:

SPJ was insistent that it should be possible for procedures to return something
Gets rid of the awkwardness of external
Avoids the need for passing by reference (though procedures can still mutate a parameter of mutatable reference type)
Preserves the important distinction of functions and procedures. Functions are pure, and therefore can be used in expressions, procedures are assumed not pure
Allows teachers who don't want to adopt the 'pure' function idea, to just use procedures instead

This idea has been dropped as part of the re-work that eliminated external - and making the symbol table recognise the difference between a pure and an impure function


jwt_authn: Document that timeout is required in http_uri

Commit Message:
jwt_authn: Document that timeout is required in http_uri
Additional Description:
Currently the examples in the documentation don't include the mandatory
http_uri.timeout field and don't add the tls_transport field required to fetch
JWT signature verification keys from HTTPS servers. This patch fixes both
issues.
Risk Level: Low
Testing: Tested manually
Docs Changes: Included in the patch
Release Notes: Not needed
Platform Specific Features: None
Fixes #14277

/lgtm api

@markdroth to clear the RepoKitteh check you need to do a comment with /lgtm api :)

Ah, thanks -- for some reason I thought I'd seen it work if I just approved.  I'll do the comment instead next time.

@markdroth, @qiwzhang, @htuch thanks for taking your time to review this change. I see that the only missing thing to move forward is a failure in the Windows job, apparently due to a timeout. I will rebase the pull request no to try to trigger it again. If that doesn't work I will need your assistance.

@markdroth, @qiwzhang, @htuch all the checks pass now, please review again when you can.

Still LGTM for API approval.


rbd: add functions to parse json in mirroring status description field

Fixes: #841
Add UnmarshalDescriptionJSON method to SiteMirrorImageStatus
Add DescriptionReplayStatus method to SiteMirrorImageStatus
Both these functions are meant to help extract the JSON object that is some times appended to the Description field in the SiteMirrorImageStatus struct. I have only seen the JSON appear after "replaying, " but there's little docs for this and I skimmed to code to even find out what fields the JSON might include.  As such, the UnmarshalDescriptionJSON tries to unmarshal the appended JSON into an object the caller provides in case skimming the code was insufficient or the caller has other needs. For most cases, DescriptionReplayStatus can be used to parse the JSON into a struct containing known fields.
Checklist

[x] Added tests for features and functional changes
[x] Public functions and types are documented
[x] Standard formatting is applied to Go code
[x] Is this a new API? Added a new file that begins with //go:build ceph_preview
[x] Ran make api-update to record new APIs

New or infrequent contributors may want to review the go-ceph Developer's Guide including the section on how we track API Status and the API Stability Plan.
The go-ceph project uses mergify. View the mergify command guide for information on how to interact with mergify. Add a comment with @Mergifyio rebase to rebase your PR when github indicates that the PR is out of date with the base branch.

@yati1998 here's a draft PR for issue #841 the api extensions to get rbd  snapshot mirroring stats to the API. If you think this is sufficient for the needs of csi-addons please let me know and I will move the PR to reviewable state and request reviews. If I hear no feedback for about a week or so I'll just request reviews anyway. Thanks!


support nsmounter when running in containerized mode

this is to address the two bugs discussed in the issue with @pohly
fix #86

@Cynerva I see you have hit a similar issue, can you try this out too? thanks


tauri+leptos+leptonic gives a compilation error

I wanted to try tauri with leptos and this leptonic library. I go through these steps:
sh <(curl https://create.tauri.app/sh)    # choosing tauri-leptos as name, cargo/rust and leptos
✔ Project name · tauri-leptos
✔ Choose which language to use for your frontend · Rust - (cargo)
✔ Choose your UI template · Leptos - (https://leptos.dev/)

cd tauri-leptos

# I want to use components from leptonic, I don't really care if it uses client or server side-rendering
# (I follow leptonic's doc's on custom installation):

cargo add leptonic --features clipboard,tiptap

cargo tauri dev

During the compilation I notice the following error (the tauri demo screen shows up empty white)
   Compiling leptos_meta v0.6.9
        Warn Waiting for your frontend dev server to start on http://localhost:1420/...
error[E0599]: no method named `clipboard` found for struct `Navigator` in the current scope
   --> /home/francis/.cargo/registry/src/index.crates.io-6f17d22bba15001f/leptonic-0.5.0/src/typography.rs:199:29
    |
199 |             match navigator.clipboard() {
    |                             ^^^^^^^^^ method not found in `Navigator`

For more information about this error, try `rustc --explain E0599`.
error: could not compile `leptonic` (lib) due to 1 previous error
2024-03-09T13:06:38.998522Z ERROR ❌ error
error from build pipeline

Caused by:
    0: HTML build pipeline failed (1 errors), showing first
    1: error from asset pipeline
    2: error during cargo build execution
    3: cargo call to executable 'cargo' with args: '["build", "--target=wasm32-unknown-unknown", "--manifest-path", "/home/francis/dev/projects/tauri/tauri-leptos/Cargo.toml"]' returned a bad status: exit status: 101
2024-03-09T13:06:38.999658Z  INFO 📡 serving static assets at -> /

Is there something I'm doing wrong in the way to use leptonic in tauri-leptos? Thank you!
PS it works without the clipboard feature. I can copy from and paste to the tauri window. Do one really need the clipboard feature? What benefit does it offer?

Hey, I have never used Tauri. But I think demand for it might be high enough that an additional template could be a good idea.
To your error specifically: Do you have a .cargo dir with a config.toml containing
[build]
rustflags = ["--cfg=web_sys_unstable_apis"]

This is necessary for the Clipboard feature. Documentation should definitely reflect this better!

Thank you. What you mean is to put together a leptonic-template-tauri? That would be awesome! I look forward to that!
I think some way forward for me now (as a rust beginner) is to maybe start off with the tauri-leptos scaffold-ed project and replace the front-end demo code with your leptonic-template-csr.
I tried to add the AppBar inside that scaffold-ed code. And that angered the compiler. Feels too difficult with my current rustc/cargo understanding to fix. It seems easier to try to glue 2 working projects together ...

Can you try out this template: https://github.com/lpotthast/leptonic-template-tauri

Make sure to install the cli for Tauri v2 with cargo install<EMAIL_ADDRESS>

Thanks you! Well done! I could start on both the Linux desktop and Android emulator!


TvOS Support

Hi Toygar, the purpose of TVButton is to bring the parallax icons from tvOS to iOS. tvOS support is not on the cards...

thanks

:+1:  for tvOS support. Would love to use this in my tvOS app for a couple of buttons and Apple doesn't include it natively yet.

Hey @NitWitStudios, it's still out of scope for TVButton but could be an interesting separate project...


Added compatibility for XNLI

added template_config_name arg so that the dataset and prompt template source can be different, example: prompt from XNLI En but data to eval from XNLI Fr

Example to run eval on XNLI
CHECKPOINT_PATH="bigscience/bloom-350m"
OUTPUT_DIR="bloom-xnli"
dataset_name="xnli"
template_config_name="en"
dataset_config_name="fr"

python t-zero/evaluation/run_eval.py \
        --dataset_name $dataset_name \
        --dataset_config_name $dataset_config_name \
        --template_config_name $template_config_name \
        --model_name_or_path $CHECKPOINT_PATH \
        --output_dir $OUTPUT_DIR \
        --template_name 'GPT-3 style'

@thomasw21

Looks good to me besides the fact that prompts are english prompts (I expected to have them in their languages).

Looks good to me besides the fact that prompts are english prompts (I expected to have them in their languages).

i think this is fine. A bunch of the prompts coming from the eval hackathon are code switching

Thanks @lintangsutawika


defender1

Update the doc regarding the subscription level enablement for defender in Azure database for PostgreSQL flexible server.

@GennadNY

Can you review this PR?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.

#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

PR review team emailed the author today

#sign-off


Fix CupertinoAlertDialog TextStyle

Description
Fix CupertinoAlertDialog TextStyle to look more native. (Edited fontSize, height, letterSpacing.)

Reproducible code sample
import 'dart:io';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:image_picker/image_picker.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  File _image;
  final picker = ImagePicker();

  Future _showNativeDialog() async {
    final pickedFile = await picker.getImage(source: ImageSource.camera);
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SafeArea(
        child: Column(
          children: <Widget>[
            RaisedButton(
              onPressed: _showNativeDialog,
              child: Text('Native'),
            ),
            RaisedButton(
              onPressed: _showFlutterDialog,
              child: Text('Flutter'),
            ),
          ],
        ),
      ),
    );
  }

  void _showFlutterDialog() {
    showCupertinoDialog(
      context: context,
      builder: (BuildContext context) {
        return CupertinoAlertDialog(
          title: Text('“sampleapp” Would Like to Access the Camera'),
          content: Text('Allow camera access for taking photos'),
          actions: <Widget>[
            CupertinoDialogAction(
              onPressed: _back,
              child: Text('Don′t Allow'),
            ),
            CupertinoDialogAction(
              isDefaultAction: true,
              onPressed: _back,
              child: Text('OK'),
            ),
          ],
        );
      },
    );
  }

  void _back() {
    Navigator.of(context).pop();
  }
}

Before
Native Dialog
After

Golden test image

dialog_test.cupertino.default.png

I used XD to Flutter plugin to derive values of cupertino dialog from Adobe XD template for iOS 13. Then I compared visually to make the dialog look more similar to native one.
Related Issues
Fixes https://github.com/flutter/flutter/issues/55059
Tests
None
Checklist
Before you create this PR, confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I signed the CLA.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I updated/added relevant documentation (doc comments with ///).
[x] All existing and new tests are passing.
[x] The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Did any tests fail when you ran them? Please read Handling breaking changes.

[x] No, no existing tests failed, so this is not a breaking change.
[ ] Yes, this is a breaking change.

One test in dialog_test.dart is failing - Message is scrollable, has correct padding with large text sizes.
https://github.com/flutter/flutter/blob/780f5f99044ce7fcbcd868e2cf6878da02022db5/packages/flutter/test/cupertino/dialog_test.dart#L323
Only this line is getting failure.
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following TestFailure object was thrown running a test:
  Expected: Size:<Size(270.0, 162.0)>
  Actual: _DebugSize:<Size(270.0, 132.0)>

Seems like this failure is due to change of the dialog title font size. This pull request only changes the style of dialog, but since the test is failing, should this be a breaking change?

@JuYeong0413 thanks for the PR! According to the updated breaking change policy, the PR is not a breaking change if it only breaks existing tests.
You might still need to add tests for these changes. It seems we don't have golden tests for cupertino dialogs so adding one would be great. Instructions for adding golden tests can be found here: https://github.com/flutter/flutter/wiki/Writing-a-golden-file-test-for-package:flutter

Gold has detected about 2 untriaged digest(s) on patchset 6.
View them at https://flutter-gold.skia.org/cl/github/64468

Thank you @LongCatIsLooong! I've revised the failing part and added golden test. The image is in the description. :)
Could you please take a look?

I've added how I derived the values in the description yesterday-it's under the golden test image. Seems like it's easy to miss, so I'll move it to the top. 🙂

I used XD to Flutter plugin to derive values of cupertino dialog from Adobe XD template for iOS 13. Then I compared visually to make the dialog look more similar to native one.

Is there anything I should do about the failing framework tests? Seems like it's related to new golden test I've added.

Rerunning the tests.

Linux test passed, macos still failing. 🤔
The log says:
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following TestFailure object was thrown running a test:
  Expected: one widget whose rasterized image matches golden image
"dialog_test.cupertino.default.png"
  Actual: _WidgetTypeFinder:<exactly one widget with type "CupertinoAlertDialog" (ignoring offstage
widgets): CupertinoAlertDialog(dependencies: [_LocalizationsScope-[GlobalKey#299ca], MediaQuery])>
   Which: does not match

When the exception was thrown, this was the stack:
#0      fail (package:test_api/src/frontend/expect.dart:155:31)
#1      _expect.<anonymous closure> (package:test_api/src/frontend/expect.dart:130:9)
#13     MatchesGoldenFile.matchAsync.<anonymous closure> (package:flutter_test/src/_matchers_io.dart)
<asynchronous suspension>
#14     MatchesGoldenFile.matchAsync.<anonymous closure> (package:flutter_test/src/_matchers_io.dart)
#15     AutomatedTestWidgetsFlutterBinding.runAsync.<anonymous closure> (package:flutter_test/src/binding.dart:1003:22)
#18     AutomatedTestWidgetsFlutterBinding.runAsync (package:flutter_test/src/binding.dart:1001:26)
#19     MatchesGoldenFile.matchAsync (package:flutter_test/src/_matchers_io.dart:72:20)
#20     _expect (package:test_api/src/frontend/expect.dart:119:26)
#21     expectLater (package:test_api/src/frontend/expect.dart:75:5)
#22     expectLater (package:flutter_test/src/widget_tester.dart:468:10)
#23     main.<anonymous closure> (file:///private/tmp/flutter%20sdk/packages/flutter/test/cupertino/dialog_test.dart:1175:11)
#34     FakeAsync.flushMicrotasks (package:fake_async/fake_async.dart:193:32)
#35     AutomatedTestWidgetsFlutterBinding.runTest.<anonymous closure> (package:flutter_test/src/binding.dart:1189:17)
#36     AutomatedTestWidgetsFlutterBinding.runTest.<anonymous closure> (package:flutter_test/src/binding.dart:1177:35)
(elided 38 frames from dart:async, dart:async-patch, and package:stack_trace)

The test description was:
  Default cupertino dialog golden
════════════════════════════════════════════════════════════════════════════════════════════════════

01:58 +1988 ~12 -1: /private/tmp/flutter sdk/packages/flutter/test/cupertino/dialog_test.dart: Default cupertino dialog golden [E]
  Test failed. See exception logs above.
  The test description was: Default cupertino dialog golden

Could you try pulling from the latest upstream/master and see if that helps?

Gold has detected about 1 untriaged digest(s) on patchset 11.
View them at https://flutter-gold.skia.org/cl/github/64468

Great, now it's passing. The outdated branch was the problem. Thank you!

FYI the google testing failure does not seem related. I'll retry the test to see if it was a flake.


Add Rollup configuration and other overhead to Rollup plugin

Fixes https://github.com/spdx/tools-ts/issues/181

This is mostly ready but requires a new release of the @spdx/tools library in order to include proper typing, since the needed classes are not exported in version 0.0.4


Improve write performance

Currently, excelize writing approach is:

marshal obj with format xml to []byte (XLSX field)
write XLSX to bytes.Buffer
write buffer to file
However, this approach will consume a lot of memory when the amount of data is large.
I suggest writing to file as stream with xml.Decoder
I would like to create a PR if u think this proposal is necessary

Hi @ducquangkstn, welcome to contribute. Streaming read and write support will be an excellent feature, we need to the API design first. This is some of my thoughts on performance improvement.

Some sample of my change would be:
`
func (f File) calcChainWriter(zw *zip.Writer) error {
if f.CalcChain != nil && f.CalcChain.C != nil {
return writeXML(zw, "xl/calcChain.xml", f.CalcChain)
}
return nil
}
func writeXML(zw *zip.Writer, name string, data interface{}) error {
w, err := zw.Create(name)
if err != nil {
return err
}
_, err = w.Write([]byte(XMLHeader))
if err != nil {
return err
}
encoder := xml.NewEncoder(w)
err = encoder.Encode(data)
if err != nil {
return err
}
return nil
}
However, there are some **hack code** likereplaceRelationshipsBytes(replaceRelationshipsNameSpaceBytes(output)))`
I would replace them by custom marshalXML function
What do you think

Two years passed, the streaming writing API has been added, the performance has been an improvement, I'll close this issue, but still, welcome any optimization or suggestions for the performance.

Two years passed, the streaming writing API has been added, the performance has been an improvement, I'll close this issue, but still, welcome any optimization or suggestions for the performance.


Confusing screen labels Messages In / Messages Out in address rows

In the EnMasse console in the address view we have two counts Messages In and Message Out displayed for each address.  The values displayed are actually delta values computed over the last 5 minutes. I don't think this is obvious for to the end-user.  I think the user would assume these are absolute values and will be surprised when they suddenly drop to zero.
I think the screen labels should be clarified.

They drop to zero after 15 minutes.  But if you refresh the page, the original numbers reappear.
If you send new messages after 15 minutes, the counts only reflect the new messages, until the page is refreshed and then you see the total (of all messages).

For anycast and multicast messages the stats will reset when the last link for the address is detached, as the router only tracks stats while there are active links. For queues/topics this means any stat taken from the router(s) will be affected by a router restart also.


all: Add relevant options to jest when running on CI

Some jest options are necessary, --ci for throwing errors on snapshot
problems, --runInBand to be single threaded as travis and appveyor
(as far as I know) don't provides more than 1 core.
crow-scripts: Start using it's own test script. Ourobouros solution.

@aitherios failed on AppVeyor


Vulnerability roundup 80: cyrus-sasl-2.1.27: 1 advisory

search, files

[ ] CVE-2019-19906 CVSSv3=7.5 (nixos-19.03, nixos-19.09)

Scanned versions: nixos-19.03: 3907a44b70d; nixos-19.09: fd4ccdbe3a6. May contain false positives.

Closing as NixOS 19.03, 19.09 are no longer supported.


Build Failed

Hi I'm trying to build the LSQUIC Client Library but make fails when compiling the ibrary. I'm using xubuntu 18.04 Bionic Beaver. This Is the beginning of the error that I receive
[ 34%] Built target lsquic [ 34%] Linking C executable http_client CMakeFiles/http_client.dir/test/http_client.c.o: In function sk_X509_num':
/home/jessix/boringssl/include/openssl/x509.h:269: undefined reference to sk_num'

Interesting.  Which version of BoringSSL library are you using?

How do I check the version ? I downloaded it using
git clone https://boringssl.googlesource.com/boringssl

Did you git checkout chromium-stable?

Managed to install the library by using the alternate method (without root).

I see the bug.  Step 2 has
cmake -DBORINGSSL_INCLUDE=$BORINGSSL_SOURCE/include \
                                -DBORINGSSL_LIB=$HOME/tmp/boringssl-libs .
make

BORINGSSL_LIB is set incorrectly when the library is installed into /usr/local/lib.


Allow JSON LD to be used with JSON API

This change was originally part of the profile extensions PR, because I've long seen allowing JSON LD data as a key requirement for the extension system's design. However, I'm breaking this change out into a separate PR, per @dgeb's suggestion, to make it more visible and invite any discussion on it particularly.

:+1:

Thanks for writing this up, @ethanresnick.
Explicitly calling out JSON-LD has a couple effects:
A) it makes the exception for @ usage as narrow as possible (as @tkellen mentioned inline)
B) it implicitly allows JSON-LD members anywhere in the document
We should ensure that both A + B are desirable. And we should decide if we want B to be made more explicit, since it's a pretty big exception we'd be carving out for JSON-LD.

@dgeb See my other note about part A. I could be probably persuaded either way on that.
Re part B... I don't think JSON LD integration will be workable if we restrict where in the document the JSON LD data can occur.  JSON LD's syntax just isn't expressive enough to effectively annotate a JSON API document unless its able to put those annotations pretty close to the data its referring to. See here to get a sense of what I'm talking about.

I am also very hesitant to add JSON-LD specific features into the spec, but a generic thing that allowed it to work better with JSON-LD is okay.

I'm a bit nervous about the implications of allowing @ members for anything and everything custom, wherever in a document. But I'm probably even less thrilled about an exception explicitly for JSON-LD.
All things considered, I think that I favor a more general exception.

@steveklabnik @dgeb Can you talk more about your hesitancy to make a JSON-LD specific exception? Is it just that it seems too ugly? Or that it'll be confusing?
To me, a narrow exceptions seems like the more cautious approach, in that we can always loosen the restrictions later to allow @ members everywhere, but we can't do the reverse.

I do not want the spec to look like it's recommending JSON-LD, because I don't think that JSON-LD is a good way to build APIs. This is entirely a personal opinion, and I don't want to block people who do enjoy it to use it. But I am afraid that a "And do this to work with JSON-LD" in the spec is an endorsement that may lead people astray.

But I am afraid that a "And do this to work with JSON-LD" in the spec is an endorsement that may lead people astray.

Is there a way to both 1) have narrow-tailoring of the exception and 2) make it clear that we're not making an endorsement? Maybe by changing how we word the rule or the text around it?

Here's another possibility for the wording that doesn't mention JSON-LD specifically in the normative text:

"@" Members
Member names MAY also begin with an at sign (U+0040 COMMERCIAL AT, "@"). However, these members MUST be completely ignored by JSON API parsers. Accordingly, such members MUST NOT be used to name fields or any other members that JSON API consumers are expected to process.
> Note: Among other things, "@" members can be used to add JSON LD data to a JSON API document. Such documents should be served with an extra header to convey to JSON LD clients that they contain JSON LD data.

@steveklabnik @tkellen @dgeb Have you had a chance to look at my revised proposal for the wording above? I think it'd be awesome if we could discuss that today and tomorrow and have this issue settled before Wednesday's meeting, so we can move on to other things.
@bintoro Feel free to chime in to if you have any ideas.

I have not, but will be checking it out in a day or two, sorry :(

I think it's better, for sure.

@steveklabnik Anything you'd change?

@ethanresnick I think your revision above strikes a better balance by mentioning JSON-LD non-normatively.
My main concern is that the "member names" section describes members that are in user-space, like fields. And this is @ exception allows defining members in the inverse space (i.e. where users can NOT define members otherwise). This distinction is important and I'm not sure it's covered completely by:

Accordingly, such member names MUST NOT be given to [fields] or to any other members that JSON API consumers are expected to process.

How about:

Member names that begin with an at sign (U+0040 COMMERCIAL AT, "@") MAY appear anywhere in a JSON API document except as [fields] or other members that JSON API consumers are expected to process. These "@" members MUST be ignored by JSON API parsers (i.e. not treated as JSON API data).

@ethanresnick not at the moment, but I'm just trying to be cautious with my wording because I am extremely jetlagged. It reads just fine to me now, but what about once my brain is out of this fog?

@dgeb When you say:

this @ exception allows defining members in the inverse space (i.e. where users can NOT define members otherwise).

are you imagining that this exception allows users to define @ members only in the spaces where they can't define members otherwise? Or were you imagining that @ members could go both in that space and in the space that users can already add (non @)-members to?
I think I was imagining the latter, for the reason I alluded to earlier, namely: that JSON LD integration may not be possible if users are limited in where they can put their @ members.
I see problems (contradictions and potential ambiguities) with my proposed wording either way, but before resolving those I want to make sure we're on the same page conceptually about the exception's scope.
@steveklabnik Fair enough!

I'm strongly in favor of allowing @ prefixed members anywhere. If we aren't winning JSON-LD support with this addition, I have a hard time seeing the value in it at all.

Ok, I can accept allowing @ prefixed members everywhere, since technically they should already be ignored by 1.0 processors. It's not clear (to me) that the version that @ethanresnick wrote above applies to members anywhere in the document (and not just in places where user-defined members are explicitly allowed like attributes). Just a minor nit, so let's move this forward.

It's not clear (to me) that the version that @ethanresnick wrote above applies to members anywhere in the document (and not just in places where user-defined members are explicitly allowed like attributes).

Agreed! I'm going to take a stab at rewriting it this weekend.

@tkellen @dgeb @steveklabnik Can ya'll take a look at this before our meeting so we can try to get this merged today?

:+1: LGTM except that minor nit. Thanks for your patience here @ethanresnick

:+1:

Awesome! Updated with that change, and to add the new content to the normative statements file.

Great! Thanks for seeing this through @ethanresnick :shipit:


Cannot read supplemental table 4

Supp table 4 of the Nature paper only has two columns (no info on directionality/fold change?) and when I try to read it as per the notebook I get this error: not enough values to unpack (expected 3, got 2). Any ideas? Thank you

Hi, that part I tried with this:
for r in range(pg.nrows):
    geneid, symbol = [pg.cell_value(r, c) for c in range(pg.ncols)]

I loaded my sheet instead of table 4, and my first column is gene ID, second column is Gene Symbol. You can set this regarding to your excel sheet format. If you have three column, for example a,b,c just write a,b,c = [pg.cell_value(r, c) for c in range(pg.ncols)]
Hope this helps!


haskell: tune generic-builder for more parallel build performance

Raise the maximum number of cores used for parallel building from 4 to 16. Increase the size of the allocation area for GHC's garbage collector from 1 MiB to 64 MiB.
See https://www.twitch.tv/videos/611899011 for the motivation for this change.

It just occurred to me that the change to the ghcWithPackages wrapper is unnecessary, because you can do the same thing in ~/.cabal/config. Adding
program-default-options
  ghc-options: -j16 +RTS -A64M -RTS

there has the same effect -- at least if you're building with cabal-install. I'm pretty sure an identical mechanism exists for stack, too. So, on second thought I'd rather not introduce yet another location to configure default flags that's specific to Nixpkgs.

I'll merge this change to haskell-updates so that we can get some test results from Hydra before the live stream tomorrow.

This change causes an uncomfortably high load on my poor machine.

I've also noticed loads of 120+ on my 8(16) core desktop, surely this can't be faster.
(sorry if I posted this before somewhere, I thought I did for another machine but couldn't find anything)


Add Kerbal Reusability Expansion from SpaceDock

This pull request was automatically generated by SpaceDock on behalf of svendii, to add Kerbal Reusability Expansion to CKAN.
Mod details:
name = /mod/841/Kerbal%20Reusability%20Expansion
author = svendii
abstract = A collection of parts to make your rockets reusable.
license = MIT
Homepage = http://forum.kerbalspaceprogram.com/index.php?/topic/138871-11-kerbal-reusability-expansion/
description = Tired of throwing away your rocket parts? Look no further! This collection of parts will help you build reusable rockets, SpaceX-style.
Includes:

Landing legs for rocket stages
Grid fins
SuperDraco engines
Fuel tank
Heat shield with deployable landing gear

For more information check out the forum thread.
Please direct questions about this pull request to svendii.

Clsoing in favour of #4401


Add Start game functionality

https://github.com/sopra-fs23-group-39/sopra-server/commit/43bebdf93844f3d3f09f49bc8f981fa088d24054


Internal exceptions being thrown

Internal general System.Exceptions are being thrown.
The spam of exceptions are only thrown when Configuration.EnableObjectTracking = true; (I had this enabled always for debug building). For now I have disabled the use of it in my application.
When resizing a Win32 window and causing the Back buffer to resize it lags the application (even XAudio2 has trouble playing back - like the debugger is locking up the process or something). Note that in my application though I do resize the back buffer on every WM_SIZE event. Usually its fine and smooth, but with Configuration.EnableObjectTracking as true it lags badly like its having trouble resizing the SwapChain and buffers.
Strange thing is that it does not lag if the debugger is not attached and Configuration.EnableObjectTracking is true.
I am using Direct3D11.

could you precise which version of SharpDX?

Version <IP_ADDRESS> alpha01

yes, it might be broken in this version.

As SharpDX is now using PCL, there is no other ways than throwing an exception to get a stacktrace. I have added a custom exception GetStackTraceException that you can ignore in VS. Afaik, this is the only possible fix for now.


Issue when create the web app package for Windows10 desktop

Hi, I have just jumped to the project therefore sorry if any my foolish.
I would like to build the web app package for Windows10 desktop.
I used windows 10 for building and running project.
I followed the steps:
-Clone the frontend project
-npm install
-bower install
-ember electron:make --platform=win32
But there's an issue here:
D:\010_HospitalRun\hospitalrun-frontend>ember electron:make --platform=win32
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-cli-content-security-policy -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-cli-active-link-wrapper -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-cli-template-lint -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-i18n -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-i18n -> ember-getowner-polyfill -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-simple-auth -> ember-cookies -> ember-getowner-polyfill -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-simple-auth -> ember-getowner-polyfill -> ember-cli-babel
| Building and assembling[API] Warning: The .read and .rebuild APIs will stop working in the next Broccoli version
[API] Warning: Use broccoli-plugin instead: https://github.com/broccolijs/broccoli-plugin
[API] Warning: Plugin uses .read/.rebuild API: BrocText

Building and assembling[API] Warning: Plugin uses .read/.rebuild API: ember-browserify
| Building and assembling[API] Warning: Plugin uses .read/.rebuild API: ember-browserify
cleaning up...
Built and assembled Electron project successfully. Stored in "D:\010_HospitalRun\hospitalrun-frontend\tmp\package_task-tmp_path-yAcW4sIZ.tmp".
Packaging Electron project.
Compiling ApplicationFailed to compile file: C:\Users\YENN~1.LE\AppData\Local\Temp\electron-packager\win32-x64\HospitalRun-win32-x64\resources\app\ember\crossdomain.xml
Compiling C:\Users\YENN~1.LE\AppData\Local\Temp\electron-packager\win32-x64\HospitalRun-win32-x64\resources\app\ember\crossdomain.xml resulted in a MIME type of application/xml, which we don't know how to handle
√ Compiling Application
√ Preparing native dependencies
rcedit.exe failed with exit code 1. Fatal error: Unable to set icon

Does anyone know how to fix or how to create web app package for desktop?

When I modified the path of icon in electron-forge-config.js file from:
icon: 'assets/icons/icon', -> 'icon: 'assets/icons/favicon'
this issue has gone but another exist like:
D:\010_HospitalRun\hospitalrun-frontend>ember electron:make --platform=win32
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-cli-content-security-policy -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-cli-active-link-wrapper -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-cli-template-lint -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-i18n -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-i18n -> ember-getowner-polyfill -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-simple-auth -> ember-cookies -> ember-getowner-polyfill -> ember-cli-babel
DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: hospitalrun -> ember-simple-auth -> ember-getowner-polyfill -> ember-cli-babel

Building and assembling[API] Warning: The .read and .rebuild APIs will stop working in the next Broccoli version
[API] Warning: Use broccoli-plugin instead: https://github.com/broccolijs/broccoli-plugin
[API] Warning: Plugin uses .read/.rebuild API: BrocText
\ Building and assembling[API] Warning: Plugin uses .read/.rebuild API: ember-browserify
Building and assembling[API] Warning: Plugin uses .read/.rebuild API: ember-browserify
cleaning up...
Built and assembled Electron project successfully. Stored in "D:\010_HospitalRun\hospitalrun-frontend\tmp\package_task-tmp_path-nGrcjen6.tmp".
Packaging Electron project.
\ Compiling ApplicationFailed to compile file: C:\Users\YENN~1.LE\AppData\Local\Temp\electron-packager\win32-x64\HospitalRun-win32-x64\resources\app\ember\crossdomain.xml
Compiling C:\Users\YENN~1.LE\AppData\Local\Temp\electron-packager\win32-x64\HospitalRun-win32-x64\resources\app\ember\crossdomain.xml resulted in a MIME type of application/xml, which we don't know how to handle
√ Compiling Application
√ Preparing native dependencies
Making Electron project.
Couldn't find packaged app at: D:\010_HospitalRun\hospitalrun-frontend\out\HospitalRun-win32-x64

This issue has come up before, and we just need some bandwidth to look into it.

Made the changes with the icon settings, then I get the same error you do, "Couldn't find packaged app..."
I think that's this: https://github.com/felixrieseberg/ember-electron/issues/362 which you can test fixing by using the changes in this: https://github.com/felixrieseberg/ember-electron/pull/363 in your node_modules/ember-electron/lib.
But that only gets you to a different error, "An error occurred while making for target: squirrel" and the ENOENT error which appears to be the same as this: https://github.com/electron/windows-installer/issues/220

btw you can enable debug messages for the build in Windows by Control Panel -> System -> Advanced System Settings -> Environmental Variables -> and then add a variable of "DEBUG" with value "*". At least that works for me using git-bash.

I got it to build both zip and squirrel executables for both 32 and 64 bit. Here is everything I did:

make the icon changes as mentioned earlier in thread
use the ember-electron changes from here https://github.com/felixrieseberg/ember-electron/pull/363
add this additional "asar" option in electron-forge-config.js:

make sure to install .NET framework on your windows system (I installed 4.5.2 and that worked)
do all of this on a 64-bit version of Windows (in my case, 7 x64 Pro)
to build the 32-bit version you have to do "ember electron:make --platform=win32 --arch=ia32", "ember electron:make --platform=win32" will build 64-bit

not sure if all of the above are strictly necessary but it's what eventually got it working for me

Yes, the fix is that PR I listed, which is merged in now but not released yet. Once it's released on npm we'll get it automatically.

Pls I want to try this app. How do I do step by step on windows 10?


z2ui5_t_draft - name change of the key field from "client" to "mandt"

To fulfill the conventions of all other sap tables the name of the first key field of z2ui5_t_draft is changed from "client" to "mandt".
Sometimes a data conversion is needed after the transport of this updated table. Adjust the data and activate it again. Or just delete the content of this table and restart all apps.

is this commited already ?

yes, you can find it here:
https://github.com/abap2UI5/abap2UI5/blob/main/src/z2ui5_t_draft.tabl.xml#LL25C9-L25C9

thanks


Auth ui

Description
All pull requests should be related to open issues. Indicate the issue(s) bellow and remove this line:
Fixes #(3) #(4)
How Has This Been Tested?
Compared the design to UI/UX
Screenshots (if applicable, else remove this line / section)

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added necessary inline code documentation
[ ] I have added tests that prove my fix is effective and that this feature works
[ ] New and existing unit tests pass locally with my changes

Please test the auth and confirm it's working with the live backend on Heroku

Added the updates to the next pull request


Optionally specify a callback to client.openDM to get DM channel id

im.open returns a DM channel id like D024BFF1M but the caller of client.openDM has no way to get this information in order to pass to getDMByID and send messages via the channel. This allows you to specify an optional callback to get the channel ID returned by the API.

Makes sense.  I think it would actually be a good idea to support this for anything that ends up hitting _apiCall.

We should probably do this everywhere instead of this one method.
We should also find a way to keep the internal callback and have it call the user specified callback. Today the internal callback only does logging, but there's no guarantee that will be true in the future...

What if _apiCall took two callback parameters? Or an array of callbacks?

Here's a simple pass at exposing callbacks in anything that hits apiCall 92fcbf0e09768fc4d0344818b0082f3b4852e484
It's probably not the best solution in the world, but the API/behavior seems about right to me.

I definitely want user-specified callbacks on anything that's an API call, channel.send() in particular.

I like @evansolomon's approach, so I just merged it! I think it solves all of the needs people have brought up here...


NPM lockfile 3 ignores optional dependencies

Given a lock file entry like this:
"node_modules/minipass-fetch": {
  "version": "1.4.1",
  "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz",
  "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==",
  "optional": true,
  "dependencies": {
    "minipass": "^3.1.0",
    "minipass-sized": "^1.0.3",
    "minizlib": "^2.0.0"
  },
  "engines": {
    "node": ">=8"
  },
  "optionalDependencies": {
    "encoding": "^0.1.12"
  }
}

The lock file v3 detector will not traverse into optionalDependencies and recursively detect those components.
For instance, encoding has a dependency on iconv-lite:
"node_modules/encoding": {
  "version": "0.1.13",
  "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
  "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
  "optional": true,
  "dependencies": {
    "iconv-lite": "^0.6.2"
  }
}

and these are not recorded, as proved by detector experiments:
{
  "AddedIds": [],
  "RemovedIds": [
    "encoding 0.1.13 - Npm",
    "component-detection 0.0.0 - Npm",
    "iconv-lite 0.6.3 - Npm"
  ],
  "DevelopmentDependencyChanges": [],
  "AddedRootIds": {},
  "RemovedRootIds": {}
}

This issue also valid for lockfile 2 detector (NpmDetectorWithRoots)


Add Annotation Tab

Feel free to make any additions @geezacoleman when you get back from the snow!

Ok I am going to merge a simple version for now just to get something @hvidy  can push to live.


[WIP] Explore nearby pictures

Description (required)
Fixes #INSERT_ISSUE_NUMBER_HERE
What changes did you make and why?
Tests performed (required)
Tested {build variant, e.g. ProdDebug} on {name of device or emulator} with API level {API level}.
Screenshots (for UI changes only)
Need help? See https://support.google.com/android/answer/9075928

Note: Please ensure that you have read CONTRIBUTING.md if this is your first pull request.

Codecov Report

Merging #11 (df15e30) into master (9431e37) will decrease coverage by 1.59%.
The diff coverage is 21.95%.

@@             Coverage Diff              @@
##             master      #11      +/-   ##
============================================
- Coverage     50.56%   48.96%   -1.60%
- Complexity     2225     2254      +29
============================================
  Files           338      351      +13
  Lines         15546    16302     +756
  Branches       1359     1433      +74
============================================
+ Hits           7861     7983     +122
- Misses         7101     7714     +613
- Partials        584      605      +21

Impacted Files
Coverage Δ

...java/fr/free/nrw/commons/explore/ExplorePlace.java
0.00% <0.00%> (ø)

...fr/free/nrw/commons/explore/ExplorePlacesInfo.java
0.00% <0.00%> (ø)

...ee/nrw/commons/explore/map/ExploreMapContract.java
0.00% <0.00%> (ø)

...w/commons/explore/map/ExploreMapMediaDataSource.kt
0.00% <0.00%> (ø)

.../nrw/commons/explore/paging/BasePagingPresenter.kt
100.00% <ø> (ø)

...a/fr/free/nrw/commons/nearby/NearbyController.java
92.30% <ø> (-0.08%)
:arrow_down:

...rc/main/java/fr/free/nrw/commons/nearby/Place.java
25.74% <0.00%> (-3.15%)
:arrow_down:

...commons/nearby/fragments/NearbyParentFragment.java
15.36% <0.00%> (ø)

.../main/java/fr/free/nrw/commons/utils/MapUtils.java
0.00% <0.00%> (ø)

...c/main/java/fr/free/nrw/commons/utils/UiUtils.java
18.75% <0.00%> (-11.25%)
:arrow_down:

... and 24 more

Continue to review full report at Codecov.

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


Disable whitelist?

We use Jenkins internally, we have people approved on our local GitHub instance, so there's no need to whitelist people in our case. Is there a way to disable the whitelist so that all PRs are merged regardless of who opened the PR?
Thanks

Jared
There is a checkbox in the job config that will just build everything.
You can also set an org on a whitelist, if it's a large group you can set
on Github.

Ah I see it now. It's the Build every pull request automatically without asking (Dangerous!) Advanced option for future people wondering.
Thanks @benpatterson!


initial markers stay on map forever

I used the Marker component to create some markers on the map. If I remove (or change the properties of) my <Marker />s, the initial markers stay on the map.
Here's an example:
https://codesandbox.io/s/pensive-frog-fgztdc?file=/src/index.js
If you click the "move marker" button in the example, you can see that the initial marker at {lat: 0, lng: 0} stays on the map.
If you click again, the previous marker is removed correctly.

Oh, that's clearly a bug :) It doesn't happen when using Advanced markers. Has to be somehow related to this code:


Add GitHub templates [SDK-3493]

Description
This PR adds GitHub form issues for feature requests and bug reports, and a pull request template.
Testing

[ ] This change adds test coverage for new/changed/fixed functionality

Checklist

[ ] I have added documentation for new/changed functionality in this PR or in auth0.com/docs
[ ] All active GitHub checks for tests, formatting, and security are passing
[ ] The correct base branch is being used, if not master

Codecov Report

Merging #116 (9689266) into first-availability (6e9ebd1) will not change coverage.
The diff coverage is n/a.

@@                  Coverage Diff                  @@
##             first-availability     #116   +/-   ##
=====================================================
  Coverage                 93.17%   93.17%
  Complexity                   69       69
=====================================================
  Files                        51       51
  Lines                       791      791
  Branches                     43       43
=====================================================
  Hits                        737      737
  Misses                       47       47
  Partials                      7        7

Flag
Coverage Δ

auth0_flutter
98.27% <ø> (ø)

auth0_flutter_android
90.49% <ø> (ø)

auth0_flutter_platform_interface
96.66% <ø> (ø)

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

Continue to review full report at Codecov.

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


fix(ISic003571): add missing protocol to trismegistos ref target

The ref target for trismegistos was missing the protocol, causing issues in the rendered HTML.

as far as I'm aware, we fixed this separately


update some coreboot-related packages

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Notify maintainers
cc @

Some Xen stuff fails to build, I will have a look if this is caused by the seabios update or if it was failing before.

cc @tstrobel @gnidorah @cryptix

Actually the xen 4.10 packages failed to build even before the seabios update, so we should be ok

I will replace this with a PR merging all coreboot util packages into one for easier maintenance in the future.

superseeded by https://github.com/NixOS/nixpkgs/pull/67836


Adapter removed from repositories

This adapter has been removed form repositories due to an invalid io-package.json.
It will be readded as soon as the problem is fixed.
Please merge PR https://github.com/XHunter74/ioBroker.gree-hvac/pull/12 and comment at https://github.com/ioBroker/ioBroker.repositories/pull/3698

Merged


Allow terminating circuit on VLAN subinterface

We often have multiple carrier circuits terminated on a single aggregated headend interface, separated by VLAN id.  Currently this seems awkward to map into NetBox without setting the Form Factor of the interface to Other (Virtual does not seem to be an allowed form factor type for terminating a circuit).  Is it possible to perhaps separate the concept of Virtual into VLAN sub-interface, Loopback, and any others that are reasonably common and likely, allowing circuit termination on VLAN sub-interfaces at least?
I'm not 100% sure that I am full bottle on the Circuit data model, but I hope this makes sense.  Any clarification you can provide would be greatly appreciated.
Kind regards,
Matt

I agree with this opinion as well. We have the same configuration terminating multiple VLAN based circuits on a central point. It would be nice to be able to aggregate these Z-ends in a common bundled way.
Adding sub-interfaces towards an interface is more likely for Layer3/routed interfaces with dot1Q enabled.
Eg. Gi1/9.333 -> which is a routed interface for dot1q-tagged vlan 333 containing an IP address).
We mainly use the VLAN Trunk mode to add L2 VLANs in the aggregate interface towards the ISP. Anyway your suggested solution is better than nothing, but further fine-tuning would be nice. Since I don't know the datamodel of this project enough I suggest other people can make further suggestions.
I believe some issues have already been raised according this #150 / #755.
Kr,
N.D.

We often have multiple carrier circuits terminated on a single aggregated headend interface, separated by VLAN id.

To be clear, a circuit is a physical entity that carries a signal from one point to another. What you're describing is the delivery of multiple virtual circuits across a common physical circuit, which has its own ID, connecting the site to an ISP. The circuit model in NetBox pertains only to the physical carrier. Virtual circuits are not mapped in NetBox because it would not be practical to support the myriad manners in which they can be deployed.

Sorry for jumping in late, but I feel there are cases where the provider terminates their circuits over a vlan. i.e some wireless providers. Agreed that the physical connection is there, but the VLAN attached to the circuit holds the IP information.
Having the ability to at least assign a VLAN to a port, would allow for situations such as this or when one connection to a switched network runs both a voice and data VLAN. (IPAM per vlan). With the VLAN information available within Netbox, it would be a great advantage to, when required, link a vlan to a port on a device...
just an idea.....

Sorry I see this has been marked as a minor feature - #150

Thanks for the response Jeremy,
I agree that they are virtual circuits in the sense that they are aggregated at the head-end, where they are handed off to us separated by VLAN IDs, but the last mile tail-end is indeed a distinct physical circuit with it's own circuit ID and access media.  To that extent they still do represent a physical circuit, only that the aggregation and handoff to us is transparent due to the carrier terminating the last mile segment and aggregating the upstream network.  The only meaningful headend termination point in this case is the VLAN sub-interface on the applicable PE router.
What I was suggesting is not a significant change, merely allowing an interface type of routed VLAN sub-interface (or similar terminology) to be the termination point of a circuit.  Currently I'm using the Other interface type and naming the interface appropriately (e.g. gig-0/0/1.1321) to achieve the same effect, but the nomenclature is non-intuitive for others.
I understand if this is a bit outside the scope of what you expect Netbox to be able to capture, but my view is that the requirement may not be as esoteric as you initially indicated.  Thanks for your consideration.
Kind regards,
Matt

@nonsbe I have to agree with you as we use the same type of deployment topology. This is especially true with interconnects between ISP's where separate circuits are provided over VLANs rather than separate links.

@nonsbe What you're describing are four physical circuits, one to each site from your provider, each with its ID and A/Z terminations. This is what NetBox models. The assignment of virtual circuits on top of this physical infrastructure is an entirely separate concept which can be implemented in many different ways (point-to-point, multipoint, MPLS/VPN, etc.).
NetBox does not model virtual circuit overlays because it would be impractical to support the myriad potential topologies, at least at this nascent stage of development. In this particular instance, you could very simply create virtual subinterfaces with their respective 802.1Q tags and assign a description to each.


patool error: error extracting /tmp/cvat_4zsw0uh0e: unknown archive format for file `/tmp/cvat_4zsw0uh0e'

My actions before raising this issue

[x ] Read/searched the docs
[ x] Searched past issues

Expected Behaviour
Should be able to upload MOT1.1 format annotations for my dataset. I have a csv file  with the specified format.
Current Behaviour
Out put of docker logs cvat shows the follwoing error:
ERROR:rq.worker:Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/rq/worker.py", line 936, in perform_job
    rv = job.perform()
  File "/usr/local/lib/python3.8/dist-packages/rq/job.py", line 684, in perform
    self._result = self._execute()
  File "/usr/local/lib/python3.8/dist-packages/rq/job.py", line 690, in _execute
    return self.func(*self.args, **self.kwargs)
  File "/usr/lib/python3.8/contextlib.py", line 75, in inner
    return func(*args, **kwds)
  File "/home/django/cvat/apps/dataset_manager/task.py", line 766, in import_job_annotations
    job.import_annotations(f, importer)
  File "/home/django/cvat/apps/dataset_manager/task.py", line 555, in import_annotations
    importer(src_file, task_data)
  File "/home/django/cvat/apps/dataset_manager/formats/registry.py", line 36, in __call__
    f_or_cls(*args, **kwargs)
  File "/home/django/cvat/apps/dataset_manager/formats/mot.py", line 30, in _import
    Archive(src_file.name).extractall(tmp_dir)
  File "/usr/local/lib/python3.8/dist-packages/pyunpack/__init__.py", line 94, in extractall
    self.extractall_patool(directory, patool_path)
  File "/usr/local/lib/python3.8/dist-packages/pyunpack/__init__.py", line 65, in extractall_patool
    raise PatoolError("patool can not unpack\n" + str(p.stderr))
pyunpack.PatoolError: patool can not unpack
patool error: error extracting /tmp/cvat_4zsw0uh0e: unknown archive format for file `/tmp/cvat_4zsw0uh0e'
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/rq/worker.py", line 936, in perform_job
    rv = job.perform()
  File "/usr/local/lib/python3.8/dist-packages/rq/job.py", line 684, in perform
    self._result = self._execute()
  File "/usr/local/lib/python3.8/dist-packages/rq/job.py", line 690, in _execute
    return self.func(*self.args, **self.kwargs)
  File "/usr/lib/python3.8/contextlib.py", line 75, in inner
    return func(*args, **kwds)
  File "/home/django/cvat/apps/dataset_manager/task.py", line 766, in import_job_annotations
    job.import_annotations(f, importer)
  File "/home/django/cvat/apps/dataset_manager/task.py", line 555, in import_annotations
    importer(src_file, task_data)
  File "/home/django/cvat/apps/dataset_manager/formats/registry.py", line 36, in __call__
    f_or_cls(*args, **kwargs)
  File "/home/django/cvat/apps/dataset_manager/formats/mot.py", line 30, in _import
    Archive(src_file.name).extractall(tmp_dir)
  File "/usr/local/lib/python3.8/dist-packages/pyunpack/__init__.py", line 94, in extractall
    self.extractall_patool(directory, patool_path)
  File "/usr/local/lib/python3.8/dist-packages/pyunpack/__init__.py", line 65, in extractall_patool
    raise PatoolError("patool can not unpack\n" + str(p.stderr))
pyunpack.PatoolError: patool can not unpack
patool error: error extracting /tmp/cvat_4zsw0uh0e: unknown archive format for file `/tmp/cvat_4zsw0uh0e'

Context
My annotation file looks like:
frame,id,bb_left,bb_top,bb_width,bb_height,conf,x,y,z
1,0,503,390,527,461,1,-1,-1,-1
1,0,478,68,497,125,1,-1,-1,-1
1,0,449,28,470,75,1,-1,-1,-1

Hi, the expected file format is described here:  https://github.com/openvinotoolkit/cvat/blob/develop/cvat/apps/dataset_manager/formats/README.md#mot-loader

@zhiltsov-max thanks for pointing out. Some how I was not able to find this documentaion.


Add support for properties DI in Unit tests

@vpetrusevici i did a bit of refactoring. can you check pls? basically, if the DI services are supplied like the following, both property and ctor injection will work:
https://github.com/FastEndpoints/FastEndpoints/blob/14a894eb7052dd9892e49b8fb23e95ff20fed4c9/Tests/UnitTests/FastEndpoints.UnitTests/WebTests/UnitTests.cs#L69-L77


Current activity

Hi James,
where has the Share plugin gone? Another repo? Which one?
Cheers and best regards,
Joe

Share plugin lives: https://github.com/jguertl/SharePlugin that is the final version I contributed to.


sitemap file is not generated!

Hello. Thank you for the plugin. It was definitely necessary to have a sitemap solution that works with vue 3 and vite.
I setup as instructed but still cant see any sitemap file generated in the public folder of the project.
It also would be nice if you can give an example on how to use the options for example to change the default "hostname".

Hi, i share you an example with @antfu Vitesse project.
git clone git@github.com:antfu/vitesse.git
cd vitesse
pnpm i
pnpm i -D vite-plugin-pages-sitemap // (v1.0.1 will be installed)

Now edit the vite.config.ts
transform this
// https://github.com/hannoeru/vite-plugin-pages
Pages({
  extensions: ['vue', 'md'],
}),

to this
// https://github.com/hannoeru/vite-plugin-pages
Pages({
  extensions: ['vue', 'md'],
  onRoutesGenerated: routes => generateRoutes({
    hostname: 'https://mywebsite.com/',
    dest: 'public',
    filename: 'sitemap.xml',
    routes,
  }),
}),

Now you can run pnpm dev
and you will get sitemap.xml in public folder with hostname 'https://mywebsite.com/' :)

@jbaubree I still cant generate a sitemap with this setup.
import generateRoutes from 'vite-plugin-pages-sitemap'
import type { RouteRecordRaw } from 'vue-router'
export default defineConfig({
resolve: {
alias: {
"~/": ${path.resolve(__dirname, "src")}/,
},
},
plugins: [
vue(),
Pages({
onRoutesGenerated: routes => generateRoutes({
hostname: 'https://mywebsite.com/',
dest: 'public',
filename: 'sitemap.xml',
routes,
})
})
]
})
It seems like the instruction in the repo is somehow different from the example you provided here.

Mmh well,
Can you provide a repo with reproduction of not fonctionnal generator?

My project is similar to this repo

From this project, you have some things to change:
npm install -D vite-plugin-pages
npm install -D vite-plugin-pages-sitemap
in main.js :
// import { routes } from './routes.js'
import routes from "~pages"

in vite.config.js :
  plugins: [
    vue(),
    Pages({
      dirs: 'src/views',
      onRoutesGenerated: routes => (generateSitemap({ routes })),
    }),
  ],

I hope this will be helpfull

@idesignzone Did you fixed your issue? If you have more trouble, we can take few minutes to check this together

@jbaubree I was able to generate the sitemap after your instruction.
Thank you very much for the help. really appreciate it.
my setup for vite.config.ts
import generateRoutes from 'vite-plugin-pages-sitemap'

export default defineConfig({
  resolve: {
    alias: {
      "~/": `${path.resolve(__dirname, "src")}/`,
    },
  },
  plugins: [
    vue(),
    Pages({
      onRoutesGenerated: routes => generateRoutes({
        hostname: 'https://mywebsite.com/',
        dest: 'public',
        filename: 'sitemap.xml',
        routes,
      })
    })
  ]
})


it doesn't appear in my hand

it doesn't appear in my hand

fixed in latest update.
i know im late :(


JerseyClientBuilder: Add back metrics and use provided configuration values

This PR improves the JerseyClientBuilder with:

Add back metrics provided by  InstrumentedHttpClientConnectionManager
Respect the timeout, cookie, and credential provider configuration parameters

Additionally it:

Adds a few tests for the configuration parameters
Moves common code shared between HttpClientBuilder and JerseyClientBuilder into an ApacheClientBuilderBase class

I recommend including this in 0.8, as the existing JerseyClientBuilder is a bit broken without these enhancements.
Note:
This PR does not include the request timing that InstrumentedHttpRequestExecutor provided.  I have submitted a metrics PR (https://github.com/dropwizard/metrics/pull/705) to add this, and will submit a dropwizard PR when that is merged.

Thanks!

A good amount of issue #789 is resolved via this merge


Add Knowledge Graph Extraction example to the Cookbook

As requested by @rlouf  this PR adds a knowledge graph extraction example to the Cookbook using llama-cpp-python. I have added a link to https://github.com/outlines-dev/outlines/blob/main/mkdocs.yml and run pre-commit locally.

Thank you!


Need to inspect routing table when preferred IP not found

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
Our network uses multiple VRFs, but none created on the server. Instead we configure the server ports with VLANs and everything is announced over BGP. As a result we also use src addresses on the routes. The addresses assigned to the interfaces are exclusively for exchanging BGP with the switch. This goes for both tagged and untagged interfaces. When they are used for NAT or masquerade, no response is received for obvious reasons.
default nhid 163 proto bgp src <IP_ADDRESS> metric 20
       nexthop via <IP_ADDRESS> dev p2.3 weight 1
       nexthop via <IP_ADDRESS> dev p3.7 weight 1
       nexthop via <IP_ADDRESS> dev p0.1 weight 1
       nexthop via <IP_ADDRESS> dev p1.5 weight 1

In this configuration, traffic should be SNAT/masq'd using <IP_ADDRESS> but instead goes out using <IP_ADDRESS> (the server-side of p3.7 for example).
In fairness to Cilium, it did at least get the target interfaces right (there are several loopbacks on the server) we just need to get the source IP right. See the tcpdump output for examples.
Cilium Version
1.12.8
Kernel Version
5.15
Kubernetes Version
1.23.0
Sysdump
No response
Relevant log output
tcpdump output showing SNAT/masq as 172.24 instead of 198.18
------------------------------------------------------------
21:10:43.355151 lxc8098ace2567f In  IP (tos 0x0, ttl 64, id 37318, offset 0, flags [DF], proto UDP (17), length 45)
    <IP_ADDRESS>.42304 > <IP_ADDRESS>.53: 466+ NS? . (17)
21:10:43.355222 p3.7  Out IP (tos 0x0, ttl 62, id 37318, offset 0, flags [DF], proto UDP (17), length 45)
    <IP_ADDRESS>.42304 > <IP_ADDRESS>.53: 466+ NS? . (17)

21:10:43.368508 lxc6489f7483a71 In  IP (tos 0x0, ttl 64, id 4097, offset 0, flags [DF], proto UDP (17), length 45)
    <IP_ADDRESS>.53747 > <IP_ADDRESS>.53: 53137+ NS? . (17)
21:10:43.368578 p1.5  Out IP (tos 0x0, ttl 62, id 4097, offset 0, flags [DF], proto UDP (17), length 45)
    <IP_ADDRESS>.53747 > <IP_ADDRESS>.53: 53137+ NS? . (17)

Anything else?
I've written a possible fix. At the very least, in my situation it correctly resolves whether the preferred IP is configured for a given route.
// Identify whether the device is in a route with the preferred IP as the source address.
func hasPreferredIpOnRoute(preferredIP net.IP, link netlink.Link) (bool, error) {
	linkIndex := link.Attrs().Index
	routes, err := netlink.RouteList(nil, netlink.FAMILY_V4)
	if err != nil {
		return false, err
	}

	for _, route := range routes {
		if preferredIP.Equal(route.Src) {
			// See if the given device is on this route
			if len(route.MultiPath) != 0 {
				for _, path := range route.MultiPath {
					if path.LinkIndex == linkIndex {
						return true, nil
					}
				}
			} else if route.Gw != nil {
				if route.LinkIndex == linkIndex {
					return true, nil
				}
			}
		}
	}
	return false, nil
}

This would fit in here:
	if hasPreferredIpOnRoute(preferredIP, link) {
		return preferredIP, nil
	}

	// Existing code...
	if len(ipsPublic) != 0 {
		if hasPreferred && ip.IsPublicAddr(preferredIP) {
			return preferredIP, nil
		}

But my suggestion doesn't include situations where the intf parameter is empty or undefined. I have to leave it to Cilium devs to figure out what to do there.
Code of Conduct

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

As an update, this patch works in our environment. It resolves the correct source IP, and cluster egress is working. I don't have a PR yet, and I suspect y'all will have several suggestions to make.
diff --git a/pkg/node/address_linux.go b/pkg/node/address_linux.go
index 0f244f0bc0..02de4582c2 100644
--- a/pkg/node/address_linux.go
+++ b/pkg/node/address_linux.go
@@ -84,6 +84,16 @@ retryScope:
                return preferredIP, nil
        }

+       if link != nil && preferredIP != nil {
+               hasRoute, err := hasPreferredIpOnRoute(preferredIP, link)
+               if err != nil {
+                       return nil, err
+               }
+               if hasRoute {
+                       return preferredIP, nil
+               }
+       }
+
        if len(ipsPublic) != 0 {
                if hasPreferred && ip.IsPublicAddr(preferredIP) {
                        return preferredIP, nil
@@ -130,6 +140,33 @@ retryScope:
        return nil, fmt.Errorf("No address found")
 }

+// Identify whether the device has a route with the preferred IP as the source address.
+func hasPreferredIpOnRoute(preferredIP net.IP, link netlink.Link) (bool, error) {
+       linkIndex := link.Attrs().Index
+       routes, err := netlink.RouteList(nil, netlink.FAMILY_V4)
+       if err != nil {
+               return false, err
+       }
+
+       for _, route := range routes {
+               if preferredIP.Equal(route.Src) {
+                       // See if the given device is on this route
+                       if len(route.MultiPath) != 0 {
+                               for _, path := range route.MultiPath {
+                                       if path.LinkIndex == linkIndex {
+                                               return true, nil
+                                       }
+                               }
+                       } else if route.Gw != nil {
+                               if route.LinkIndex == linkIndex {
+                                       return true, nil
+                               }
+                       }
+               }
+       }
+       return false, nil
+}
+
 // firstGlobalV4Addr returns the first IPv4 global IP of an interface,
 // where the IPs are sorted in creation order (oldest to newest).
 //

Note: that patch is for the v1.12 branch. I don't think major changes are needed for the newest code.


plumb through identifyBehavior and identify breaks

r? @mmaxim @maxtaco @patrickxb Thanks!
I'm particularly not sure about the senders and the Deliverer. It makes most sense to me, and thus is what I did, that the Deliverer never errors identifies, or collects breaks, and it's the NonblockingSender's responsibility to run identify and either error or collect breaks if necessary. In other words, messages queued into the Deliverer is always ready to send. As a result, the Deliverer uses a sender with GUI mode. Does it sound good to you guys?

I still need to look at this, sorry @songgao, I'll try and get to it today. Can you fix the conflict in the meantime so I can be sure to be looking at the latest stuff? Thanks!

No problem! Thanks for the message :)

i don't think we cache failures

@maxtaco but we are caching the successes right? This means hitting identify when pulling from cache is only a problem when there are broken proofs correct?

yes

Whoa the conflict is massive. Especially the go/service/chat_local.go since there's a InboxSource now. I tried dealing with conflict but it seemed infeasible. I'll move this back to In Progress and maybe re-do it from master.


Unexpected keyword 'const'

lib/RouteUtils.js
Line 17: const error=propTypespropName;

I have no clue what is this about


Incosistency between Getting Started guide and ecto.gen.repo generator

Precheck

Do not use the issues tracker for help or support requests (try Stack Overflow, IRC or mailing lists, etc).
For proposing a new feature, please start a discussion on elixir-ecto.
For bugs, do a quick search and make sure the bug has not yet been reported.
Finally, be nice and have fun!

Environment

Elixir version (elixir -v): 1.3.2
Database and version (PostgreSQL 9.4, MongoDB 3.2, etc.):
Ecto version (mix deps): 2.0.5
Database adapter and version (mix deps):
Operating system:

Current behavior
$ mix ecto.gen.repo -r Friends.Repo

Generated ecto app
==> feed_hub
* creating lib/feed_hub
* creating lib/feed_hub/repo.ex

* updating config/config.exs
Don't forget to add your new repo to your supervision tree
(typically in lib/feed_hub.ex):

    supervisor(Friends.Repo, [])

And to add it to the list of ecto repositories in your
configuration files (so Ecto tasks work as expected):

    config :feed_hub,
      ecto_repos: [Friends.Repo]

Expected behavior
There is an inconsistency beetween Getting Started guide and output above.
The guide suggests that worker(Friends.Repo, []) should be used, and the generator suggests supervisor(Friends.Repo, []). I don't know which one is right, but I think that this inconsistency should be fixed.

supervisor is correct. Thank you, fixed in master!


Add PumpProbePulses for combined FEL/PPL pulse patterns

The third component in the mix for pump-probe experiments 🔦

Combines FEL and PPL pulses into a single linear pattern
Move PPL pulses to their true location by fixed bunch table position or relative bunch table/pulse distance to first FEL pulse
Extends the MultiIndex by two boolean fields fel and ppl to distinguish between respective shots

Re-implemented this now on top of the new PulsePattern based on Pulse IDs, which made the code much simpler. It still makes use of the in8-view trick, but only ofr the purpose of pattern comparisons.
Ready for review now with tests.

Thanks! Somehow I'm still forgetting to document the changes.

I hope I didn't get carried away in 24400ea :grin:

Awesome, happy to hear!

For some runs (e.g. p4451, run 78) there were more laser pulses configured than FEL pulses, which was slightly confusing when plotting the pulse pattern because there would be more points than pulses:
[img]
What I'm typically looking for is the combination of FEL/PPL pulses, so what if peek_pulse_ids() had something like a
only_with_fel=True argument to drop PPL pulses without an FEL pulse?

Would you have the same result with pp_pulses.peek_pulse_ids()[:, True], i.e. all pulses with fel=True?

PumpProbePulses._get_ppl_offset() fails if the pulse offset is specified and there's only one pulse (e.g. p4451, run 80), because on line 923 it tries to look at the second pulse. I worked around it with:     elif self._pulse_offset is not None:
-         return fel[0] + int((fel[1] - fel[0]) * self._pulse_offset)
+        if len(fel) > 1:
+            return fel[0] + int((fel[1] - fel[0]) * self._pulse_offset)
+        else:
+            return fel[0]

Hmm, but that moves the PPL pulses for pulse_offset != 0 to a different position then expected. The offset cannot be inferred in units of pulses if there is always only a single pulse (for intermittent cases there's extrapolate=True), unless we'd add a manual override for repetition rate in such a case.


Add support for editing existing migration plans

Note: In the new design for the mapping steps of the wizard (#103), the "Select an existing mapping" dropdown is entirely hidden when in editing mode, you just get a bare MappingBuilder pre-filled with the copy of the mapping saved in the plan.

Another note for when this gets implemented: the reset() behavior in the useEffect hooks in PlanWizard may need to change. See https://github.com/konveyor/virt-ui/pull/129#issuecomment-708146265


[AutowireArrayParameter] Autowire multiple arrays

Hi Tomáš,
I just updated all our packages to latest versions and we have problem with autowire-array-parameter, it works very well with
/**
* @param SomeInterface[] $array
**/
public function __construct(array $array)

but it fails on
/**
* @param FirstInterface[] $firstArray
* @param SecondInterface[] $secondArray
**/
public function __construct(array $firstArray, array $secondArray)

as it pushes same array to all paramteters.
I think the problem is the cache key in ParameterTypeResolver so I added parameterName to that key too.
I am sending you PR fixing that issue atleast for our use case.

Hi Josef,
thanks for the test and fix :+1: Neat!

Hi Josef,
thanks for the test and fix :+1: Neat!


docs: improvement on wasm_bindgen::convert::traits

Hi,
I was reading the docs for Abi type in FromWasmAbi and IntoWasmAbi traits, and I thought maybe there is room for improvement in their description, e.g., the docs for Abi in FromWasmAbi says:
    /// The wasm ABI type that this converts from when coming back out from the
    /// ABI boundary.

IMO, the above description is a little puzzling. Maybe it could be rewritten to something like this:
    /// The type which wasm ABI provides when comming back from ABI boundary, to be converted to a rust type.

and similarly for IntoWasmAbi,
    /// The type which wasm ABI is provided when crossing the ABI boundary.

This could surely benefit from insights of other users.

Improvements to the docs are always welcome.
I'm happy to review a PR.


ConversationalAgent/CHAT_CONVERSATIONAL_REACT_DESCRIPTION dosen't work well with ChatOpenAI 3.5 and Claude models

System Info
Python 3.10
Who can help?
@hw
Information

[X] The official example notebooks/scripts
[ ] My own modified scripts

Related Components

[X] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[ ] Output Parsers
[ ] Document Loaders
[ ] Vector Stores / Retrievers
[ ] Memory
[X] Agents / Agent Executors
[ ] Tools / Toolkits
[ ] Chains
[ ] Callbacks/Tracing
[ ] Async

Reproduction
I tried with 3.5 and Claude models, but it rarely generates a reply to the prompt preset (like below) when I use the conversation agent. GPT 4 works fine.
Thought: Do I need to use a tool? Yes
Action: the action to take, should be one of [{tool_names}]
Action Input: the input to the action
Observation: the result of the action

When you have a response to say to the Human, or if you do not need to use a tool, you MUST use the format:
Thought: Do I need to use a tool? No
{ai_prefix}: [your response here]

This is my code:

Errors:

Entering new AgentExecutor chain...
Thought: Do I need to use a tool? Yes
Action: Search
Action Input: Weather in London today
Observation: London, England, United Kingdom 10-Day Weather Forecaststar_ratehome ; Temperature. High. 77 ; Rain/Snow Depth. Precipitation. 0 ; Temperature. High. 80 ...
Thought:Traceback (most recent call last):
File "/Users/joey/Library/CloudStorage/OneDrive-Personal/Code/GPT/agent081123.py", line 254, in
print(agent_chain.run(user_input))
File "/opt/homebrew/anaconda3/envs/XXX/lib/python3.10/site-packages/langchain/chains/base.py", line 475, in run
return self(args[0], callbacks=callbacks, tags=tags, metadata=metadata)[
File "/opt/homebrew/anaconda3/envs/XXX/lib/python3.10/site-packages/langchain/chains/base.py", line 282, in call
raise e
File "/opt/homebrew/anaconda3/envs/XXX/lib/python3.10/site-packages/langchain/chains/base.py", line 276, in call
self._call(inputs, run_manager=run_manager)
File "/opt/homebrew/anaconda3/envs/XXX/lib/python3.10/site-packages/langchain/agents/agent.py", line 1036, in _call
next_step_output = self._take_next_step(
File "/opt/homebrew/anaconda3/envs/XXX/lib/python3.10/site-packages/langchain/agents/agent.py", line 844, in _take_next_step
raise e
File "/opt/homebrew/anaconda3/envs/XXX/lib/python3.10/site-packages/langchain/agents/agent.py", line 833, in _take_next_step
output = self.agent.plan(
File "/opt/homebrew/anaconda3/envs/XXX/lib/python3.10/site-packages/langchain/agents/agent.py", line 457, in plan
return self.output_parser.parse(full_output)
File "/Users/joey/Library/CloudStorage/OneDrive-Personal/Code/GPT/agent081123.py", line 225, in parse
raise OutputParserException(f"Could not parse LLM output: {text}")
langchain.schema.output_parser.OutputParserException: Could not parse LLM output: Do I need to use a tool? No
(XXX) joey@Joey-MBP GPT%

Expected behavior
Should have no parser error and generate the same format response as the prompt.

@junruxiong  looking into this common issue. This is an issue that many people are experiencing. Hopefully, will be able to come up with a good fix.

After AgentExecutor receives the initial observation from your tool's results, it proceeds to invoke the chain with this revised input. Gven the formatting instruction the response obtained is 'Do I need to use a tool? No.' However, this triggers a parsing error since the default parser anticipates 'Action' and 'Action Input' elements. To mitigate this, the returned output should be prefixed with 'ai' and should encompass the ultimate response in the format 'AI: '. To successfully achieve this, employing the provided custom format guidelines in tandem with the custom parser yields the desired outcome (I have personally tested this approach).

from langchain.memory import ConversationBufferMemory
from langchain.agents import initialize_agent,AgentType,AgentOutputParser
from langchain.schema import AgentAction,AgentFinish
from langchain.memory import ConversationBufferMemory
from typing import Union
import re

CUSTOM_FORMAT_INSTRUCTIONS = """To use a tool, please use the following format:

Thought: Do I need to use a tool? Yes
Action: the action to take, should be one of [{tool_names}]
Action Input: the input to the action
Observation: the result of the action

When you have a response to say to the Human, or if you do not need to use a tool, you MUST use the format:

{ai_prefix}: [your response here]
"""

class CustomConvoOutputParser(AgentOutputParser):
    """Output parser for the conversational agent."""

    ai_prefix: str = "AI"
    """Prefix to use before AI output."""

    def get_format_instructions(self) -> str:
        return CUSTOM_FORMAT_INSTRUCTIONS

    def parse(self, text: str) -> Union[AgentAction, AgentFinish]:
        if f"{self.ai_prefix}:" in text:
            return AgentFinish(
                {"output": text.split(f"{self.ai_prefix}:")[-1].strip()}, text
            )
        regex = r"Action: (.*?)[\n]*Action Input: (.*)"
        match = re.search(regex, text)
        if not match:
            return AgentFinish(
                {"output": text.split(f"{self.ai_prefix}:")[-1].strip()}, text
            )
        action = match.group(1)
        action_input = match.group(2)
        return AgentAction(action.strip(), action_input.strip(" ").strip('"'), text)

    @property
    def _type(self) -> str:
        return "conversational"

agent = initialize_agent(
    tools=tools, # You did not provide the tools you were using. I tested this with Wikipedia tool
    agent = AgentType.CONVERSATIONAL_REACT_DESCRIPTION,
    llm=models['llm_chat_gpt3'], ## I assumed you have a dict with gets the model names
    verbose=True,
    memory=ConversationBufferMemory(memory_key="chat_history", return_messages=True),
    handle_parsing_errors = False,
    agent_kwargs={'format_instructions':CUSTOM_FORMAT_INSTRUCTIONS,'output_parser':CustomConvoOutputParser}
)
while True:
    user_input = input("Human: ")
    print(agent.run(input()))
    print()
    print('-'*50)

Please use the above parser and custom-formatted instructions. It works. TBH, I know the issue but solving this issue in the main code base will take time. However, this will suffice to make your conversational agent work.

I hope this works. If yes , please close the issue.

@keenborder786 when trying to run your code I get this error:
ValidationError: 1 validation error for ConversationalAgent
output_parser
  value is not a valid dict (type=type_error.dict)

Using Python 3.10.12 and langchain 0.0.281

Hi @dentro-innovation ,
try this when passing kwargs
 agent_kwargs={'format_instructions':CUSTOM_FORMAT_INSTRUCTIONS,'output_parser':CustomConvoOutputParser()}


Move test/vendor/bundle to vendor/bundle.

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[x] Have you successfully run brew tests with your changes locally?

This is to clean up the test directory a bit as per https://github.com/Homebrew/brew/pull/1364#issuecomment-255860189.

Also not sure why vendor/bundle has to live inside test. Any reason not to move it up a level?

I missed that comment at the time but: because these gems only apply to the test suite it feels strange to have it in Library/Homebrew. It's particularly unusual for the vendor/bundle to live in the directory above the Gemfile? I'm mostly on vacation so it'd be good to hold off a bit on moving some of these things around. Ideally I think this PR would be reverted (although doesn't need to happen today).

Then again, if this is literally the only way to avoid that glob causing issues then so be it (but feels pretty weird considering the layout of most Ruby projects that would presumably have an identical problem).

@reitermarkus @jawshooah Would like your thoughts on above.

It's particularly unusual for the vendor/bundle to live in the directory above the Gemfile

Yes it is, I forgot that the Gemfile was still in test.

Because these gems only apply to the test suite it feels strange to have it in Library/Homebrew

I disagree only because the vast majority of Ruby projects I've seen place the Gemfile in the root directory of the project, regardless of whether any gems are used outside of tests. Don't feel particularly strongly about this though.

I also have only every seen projects that have the Gemfile at the same level as the test directory, but not inside it. And since we already have a vendor directory at the root anyways, why not also use this for bundle?
Hombrew's layout is very different from any “standard” Ruby project, considering that most have their load path in /lib, while we have it in Library/Hombrew, and our test directory is also accessibly within this same load path, while the test directory for every other project I've seen is completely separated from the library path.

Homebrew is different to most projects using Gemfiles in that we don't use any libraries at runtime. These gems are specific to our tests so I think it makes sense for it to live there.

if this is literally the only way to avoid that glob causing issues then so be it

@reitermarkus Can you elaborate if this is the case?

It's not the only way, but by far the simplest.
Another solution would be to move the tests to test/test as in the referenced PR, which you said looks weird.
Another way, which I dislike, would be to first glob all, and then remove all test's in vendor/bundle from the first glob.

Anothing solution which just came to mind would be to just use the default, test/.bundle, since dotfiles are not globbed by default.

I think I'm fine with this as-is for now, thanks though.


has many associations not loaded with params_with_assocs

Here's my factory
def registering_company_factory do
  %Company{
    name: sequence(:name, &"Company #{&1}"),
    email: sequence(:email, &"company-#{&1}@example.com"),
    category: Company.categories |> Enum.random,
    users: [
      %{
        role: Enum.random(User.roles),
      }
    ]
  }
end

And I'm calling params_with_assocs(:registering_company) but it only spits out,
%{
active: nil
address: nil
category: "Cultivator"
description: nil
email<EMAIL_ADDRESS>inserted_at: nil
latitude: nil
longitude: nil
name: "Company 0"
official: nil
permalinks: [
]
phone: nil
updated_at: nil
}
Is there a way to load associations with the params call?

Hey guys,
I'm having this problem with has_many associations. For example, I have something like the following
defmodule Webapp.SomeStuff do
  schema "some_stuffs" do
    has_many :other_stuffs, Webapp.OtherStuff
  end
end

# and in the news schema
defmodule Webapp.OtherStuff do
  schema "other_stuffs" do
    belongs_to :some_stuff, Webapp.SomeStuff
    # other fields
  end
end

# the factories look look like
def some_stuff_factory do
  %Webapp.SomeStuff{
    news: [build(:other_stuff)]
  }
end

def other_stuff_factory do
  %Webapp.OtherStuff{
    # fields here
  }
end

But when I call params_with_assoc(:some_stuff) or string_params_with_assoc(:some_stuff) I just getother_stuffs: [%{}].
insert and build seem to work just fine.
I'm using ExMachina v2.1.0