Kubectl command renaming (run-container to run and resize to scale)

For #8319
I am not sure about this line: https://github.com/GoogleCloudPlatform/kubernetes/blob/master/pkg/kubectl/cmd/util/factory.go#L96
I also took the liberty to rename RunContainer in kubelet, if it is not needed I can discard it.
/cc @smarterclayton, @ghodss

I think keeping the term "container" in some names is more clear to me. It makes it easier to tell whether the function is for a pod or for a container. Others may disagree though. /cc @vmarmol @yifan-gu

I think keeping the term "container" in some names is more clear to me. It makes it easier to tell whether the function is for a pod or for a container. Others may disagree though. /cc @vmarmol @yifan-gu

+1

Please don't change kubelet. #8319 is only about kubectl.

Dropping kubelet changes.

Please update your pr title with more meaningful information. Thanks!

Put trailing spaces back and rebased to resolve conflicts

Great, thanks. LGTM. We need to wait for the e2e test to be fixed before we can merge, unfortunately.

ok to test

any news on that? It is ready to merge, I rebased it to latest master

needs rebase

done


Update README.md file.

Edit README file for Grafana 4

@hos7ein thanks for proposing this PR

👍


Added option to show coordinates when no address is found

Added option to show coordinates when no address is found

Hope you like it ;)

All checks have failed??

@galadril: https://travis-ci.org/SchibstedSpain/Leku/builds/233224749#L3268

Error: "longitude" is not translated in "es" (Spanish) [MissingTranslation]
Srry Im not Spanish...

Eeh.. i don't see an error in the latest build results..?

So you don't want the property on class level (also to be able to turn the default off)??

How are we going to progress on this?

Also updated gradle/libs and made a task to generate libary jar

What went wrong:

A problem occurred configuring project ':app'.

Could not resolve all dependencies for configuration ':app:_debugApk'.

A problem occurred configuring project ':leku'.

  > You have not accepted the license agreements of the following SDK components:

    [Android SDK Build-Tools 25.0.3].

    Before building your project, you need to accept the license agreements and complete the installation of the missing components using the Android Studio SDK Manager.

    Alternatively, to learn how to transfer the license agreements from one workstation to another, go to http://d.android.com/r/studio-ui/export-licenses.html

I've made changes like you've requested.
Please check again and see if we can merge this pull request 👍

Checks passed (dont know why it doesn't reflex here ..)

👍

Thanks for the review, I've changed the code accordingly!

I get a new exception now I've renamed lat and lng to the full names:
LocationPickerActivity.java:584:42: 'latitude' hides a field. [HiddenField]
Is that an issue? it hides the TextView field:
private TextView latitude;

Im now using LatLng latLng (like some methods already did before my changes).
Which should clear the hidden field error.

@sergiocastilloscmspain  Please check if you approve the latest changes
(all checks have passed)

@marcserrascmspain  woop woop

@galadril many thanks!

🥇

@ferranpons should we make a new release?


Error in HTTP routes or wrong documentation

Bug Report
Current Behavior
I'm having trouble running my AplicationFunction with npm run start or probot run lib/index.js
I uploaded an example of the code I use and uploaded it to https://github.com/gmarcos87/test-bot
It is basically a copy of what is written in the documentation. When I run it and try to enter http://localhost:3000/my-app/hello-world I get Cannot GET /my-app/hello-world
My guess is that the application is definitely not loading.
import { Application, ApplicationFunction } from 'probot' // eslint-disable-line no-unused-vars
import express from 'express'

const hello:ApplicationFunction = (app: Application) => {
  // Get an express router to expose new HTTP endpoints
  const router:express.Router = app.route('/my-app')

  // Use any middleware
  router.use(express.static('public'))

  // Add a new route
  router.get('/hello-world', (_req, res) => {
    res.send('Hello world!')
  })
}

export default hello

Expected behavior/code
Get Hello world! in http://localhost:3000/my-app/hello-world```
Environment

Probot version(s): v9.5.3
Node/npm version: v12.11.1 (npm v6.11.3)
OS: Ubuntu 18.04

I found the problem. If I don't explicit the environment variables the applications are not loaded but this is not reported at any time.

You mean that you didn't set the APP_ID and PRIVATE_KEY environment variables and it started in the setup mode?


[FEATURE REQUEST] Ctrl+Enter to send email, like in Outlook or Gmail

**RainLoop version, browser, OS:5.0.2 on a nextcloud 12, chorme/vivaldi/opera/firefox, arch linux/windows 7/10
Expected behavior and actual behavior: Press Ctrl+Enter when done writing email to send it instead of pressing the send button with the mouse Actual: nothing happens:/
This would be very useful and timesaving feature. Rainloop is awesome, but this would be like a cherry topping:)

This cherry topping can be activated in the application.ini.

Awesome! Thank you! The documentation is not so clear as what features do what so not easy to know. But thank you! Closed the issue :)


update Bokeh project leadership

Need to update Bokeh leadership list. (also feel free to submit a pull request)

https://github.com/numfocus/numfocus/blob/master/projects/Bokeh.md

Updated.


[eas-cli] do not set default image

merge after https://github.com/expo/turtle-v2/pull/670
Checklist

[ ] I've added an entry to CHANGELOG.md if necessary.
[ ] I've tagged the changelog entry with [EAS BUILD API] if it's a part of a breaking change to EAS Build API (only possible when updating @expo/eas-build-job package).

Why
We are always specifying the image field in the job object, as a result we don't know in backed whether an image was specified explicitly or by default
How
Test Plan
Will test after https://github.com/expo/turtle-v2/pull/670 is deployed

... and add a changelog entry.


Remove CLI, replace with file-based config

PR Summary:
Removed the command line argparsing, and replaced it with YAML files using the same key/value format. Changed the utilities and tests that depend on the current cli.
Contents:
Added default configuration files which store model argument values, types (implicitly), and descriptions.  There is one overall default file and one edmf default file: .buildkite/default_config.yml and .buildkite/default_edmf_config.yml.
Added config files for all buildkite jobs: normal model runs, longruns, performance, and mpi jobs.
Updated the CI pipeline YAML and the longrun YAML to use the config files and improved formatting.
Updated documentation with guides for running the model with custom configurations and parameters. Added OrderedCollections to docs dependencies to maintain ordering and improve readability when generating the default configuration table.
Removed the majority of the cli_options.jl interface and ported functionality to work with the new config system. The new functions can now be found in src/solver/yaml_helper.jl

job_id_from_parsed_args is now job_id_from_config, otherwise it should produce the same result
print_repl_script is now in docs/src/repl_scripts.jl, and is slightly tweaked.
parsed_args_per_job_id is now configs_per_job_id, and it is tweaked to read in all job-specific YAML files from the .buildkite folder. I've added an optional argument to include performance configs. The filter_string kwarg is now called filter and takes a key-value pair instead of a string.
non_default_command_line_flags_parsed_args is now non_default_config_entries
Added several other config-related utilities to yaml_helper.jl:
default_config_dict returns the default config, read in from .buildkite/default_config.yml and .buildkite/default_edmf_config.yml
config_from_target_job gets the config of the passed in job_id
override_default_config() takes a vector of Dicts or filepaths and returns a Dict with the default config overriden by the given dicts or parsed YAML files. This is meant to generate the actual config used by the model. All config values are typecast to the type of the default config value. The function will error if a key that is not in the default config is passed in, which may pose issues for the coupler if they pass in extra arguments in the config.
Removed commands_from_yaml. The closest function is now configs_per_job_id.
For src/solver/types.jl:
AtmosCoveragePerfConfig now longer takes parsed_args and AtmosCoveragePerfParsedArgs has been removed. Otherwise, the precedence for options in AtmosCoverPerfConfig is the same.
AtmosConfig() has been changed. The priority for setting the config is as follows: if an optional Dict config_dict is passed in, that will be used to override the defaults. If parsed_args contains a config_file, that file will be read in and override the defaults. Otherwise, the defaults will be used. TOML files can no longer provide model configuration.
merge_parsed_args_with_toml() has been removed.

Removed old parameter tests, since we no longer need to test merge_parsed_args_with_toml
Updated coupler compatibility tests
Removed toml_edmf_bomex job, since this is no longer functional.
Very slightly increased allocs on two jobs (max 1.0006x increase)
Updated perf scripts for the new config scheme.
There is still a bit of work to do, but this PR is already large:

Clean up the configuration. Some arguments should be parameters. Some arguments can be merged with others. We could also experiment with a more hierarchical config, since the YAML structure makes this easy. Some arguments are currently strings and should be booleans. The typechecking could also be improved.
Change parsed_args to config_dict or something similar, since the name is no longer accurate.

Original Proposal
This is a proposal for file-based model configuration and a request for feedback. The immediate idea is to parse a flat file instead of the command line. Some basic examples have already been completed for EDMF cases.
Motivation
The CLI has grown large and unwieldy. Buildkite jobs are hard to manually parse through. As we continue development, the CLI will only grow and get more complex. We also need to be able to drive the model from a file for calibration, but the logic of this is unnecessarily complicated because we need to support both the CLI and a file config.
For more background on this, see here and here.
Primary Goals

The new model config must be easy to change.
Configuration settings must be easily found in the documentation.
Existing internals (yaml_helper, perf config) that rely on the current argument parsing must not be broken.
Model parameters must be separate from the model configuration. Model parameters must only be changed through TOML files.

Summary
I want to remove the bulk of the command line arguments and replace it with YAML files. YAML files are easily read by both humans and parsers, and YAML.jl is already a dependency.
There is a default config in .buildkite/model_configs/default_config.yml. This contains a list of configuration entries with default values and help messages taken directly from the existing CLI. This allows us to continue autogenerating the configuration documentation. It also implicitly stores the type information of each config argument. It would also be simple to introduce nested configurations. This could be immediately useful for something like the rayleigh sponge arguments.
Here is the top of the default config:
test_edmf_consistency:
  help: "Test edmf equation consistency [`false` (default), `true`]"
  value: false
surface_thermo_state_type:
  help: "Surface thermo state type [`GCMSurfaceThermoState` (default), `PrescribedThermoState`]"
  value: "GCMSurfaceThermoState"
topo_smoothing:
  help: "Choose whether to order-2 smoothing on the LGL mesh"
  value: false
hyperdiff:
  help: "Hyperdiffusion [`ClimaHyperdiffusion` (or `true`; default), `none` (or `false`)]"
  value: "ClimaHyperdiffusion"

This config is automatically read in by the current AtmosConfig(), and is overridden by "override config file(s)" passed in via the --config_file argument.
The override config files have simple YAML syntax so that they are not cumbersome to create. Here is the file .buildkite/model_configs/edmf/edmf_common.yml:
apply_limiter: false
config: "column"
hyperdiff: "false"
debugging_tc: true
turbconv: "edmf"
FLOAT_TYPE: "Float64"

The values of these key-value pairs are typecast to the types found in the default config to prevent silent typing issues.
Multiple files can be passed in, allowing for common parameters to be used in multiple buildkite jobs with case-specific overrides.
I've fleshed this out for most of the EDMF cases already.
The main code changes for this are pretty minimal - since the CLI produced a dictionary, this just parses and overrides the default config file in AtmosConfig(), slotting it into the parsed_args. Some parts will need to be changed, but I tried to keep this as a minimal example.
There is still a good amount of work to do, but I would like feedback before I spend time on the following:

[x] Finish the rest of the config files for the rest of the buildkite tests
[x] Change certain parts of the parsed_args flow, like the comms_ctx
[x] Change the various tools that rely on parsing the current buildkite files and command-line arguments.
[x] Add documentation on using YAML files for configuration and TOML files for parameter overrides.

What would be the relationship between these YAML files and the TOML files (e.g. bomex.toml in the current codebase)?

What would be the relationship between these YAML files and the TOML files (e.g. bomex.toml in the current codebase)?

@szy21 I will get rid of the bomex.toml file, since the TOML files will just be for adding parameters (not model configuration). Hopefully there will be a YAML config file for each testcase in the CI.

From the REPL scripts:
### Buildkite job `longrun_aquaplanet_rhoe_equil_gray`

using Revise; import ClimaAtmos as CA;

config = Dict();
config["moist"] = "equil";
config["dt_save_to_disk"] = "10days";
config["dt"] = "450secs";
config["surface_setup"] = "DefaultExchangeCoefficients";
config["fps"] = 30;
config["t_end"] = "600days";
config["vert_diff"] = "true";
config["precip_model"] = "0M";
config["dt_save_to_sol"] = "1days";
config["job_id"] = "longrun_aquaplanet_rhoe_equil_gray";
config["rad"] = "gray";

include("examples/hybrid/driver.jl")

won't work. I think we need to either change the driver logic:
if !(@isdefined config)
    config = CA.AtmosConfig()
end
integrator = CA.get_integrator(config)

or maybe define CA.get_integrator(::AbstractDict) so that it calls CA.get_integrator(CA.AtmosConfig(config::Dict)) or something like that.

@charleskawczynski
For the repl script, what about this?
using Revise; import ClimaAtmos as CA;

config_dict = Dict();
config_dict["moist"] = "equil";
config_dict["dt_save_to_disk"] = "10days";
config_dict["dt"] = "450secs";
config_dict["surface_setup"] = "DefaultExchangeCoefficients";
config_dict["fps"] = 30;
config_dict["t_end"] = "600days";
config_dict["vert_diff"] = "true";
config_dict["precip_model"] = "0M";
config_dict["dt_save_to_sol"] = "1days";
config_dict["job_id"] = "longrun_aquaplanet_rhoe_equil_gray";
config_dict["rad"] = "gray";

config = CA.AtmosConfig(config_dict);

include("examples/hybrid/driver.jl")

It might still be nice to make a convenience function for get_integrator

For the repl script, what about this? ....

That looks good to me.

bors r+

@nefrathenrici Could you update the script for running simulations on the central cluster as well: https://github.com/CliMA/ClimaAtmos.jl/blob/main/examples/README.md? Thanks


CSV-280: Use New OpenCSV Builder in CSVBenchmark

Coverage remained the same at 98.31% when pulling b342dcedd4f5f642f47ce014ae8683e7be38d6c9 on belugabehr:CSV-280 into 3b959626f4c1ad31a4f8fbdcba513e12fc6f7f3d on apache:master.


'Block Trend' column broke when GA flipped

Looks like the 'Block Trend' column broke when GA flipped from Trump to Biden. Should say 'Biden is averaging' or adjust the percentage to Trump.

This is a duplicate of #210, #216, #218, #220 and more. It's already fixed by #215

@rachetfoot I don't think it's fully fixed. Says "Trump is averaging 65.1%" when it should be "Trump is averaging ~34%". Name has been correctly swapped but the percentage hasn't.

@tomglynch The fix hasn't been merged yet.

thanks for the bug report! this is now fixed by https://github.com/alex/nyt-2020-election-scraper/pull/215

Thanks guys. I love this site! Great work.


missing check when using factory, di inyection and preference

My current module has a preference over a class set on the di.xml file.
I'm using the factory on the constructor of a overwrite.
When using a method that only exists on the overwrited class that is created through the Factory, PHPStan reports the method as not existent.
di.xml
<preference for="Magento\Framework\View\Result\Page"                 type="ClassA" />
<preference for="Magento\Framework\View\Page\Config\Renderer" type="ClassB" />

Class with factory on constructor:
class ClassA extends Magento\Framework\View\Result\Page  {
public function __construct(
 ....
 classBFactory $pageConfigRendererFactory
) {
 ...
 parent::__construct(.... );
}

public function overwritenFunction( .... ) {
  ....
  $this->pageConfigRenderer->onlyOnThisClassMethod();
  ....
}

Class B:
class ClassB extends \Magento\Framework\View\Page\Config\Renderer
{
  public function onlyOnThisClassMethod() { .... }
}

This is reported as:
Call to an undefined method Magento\\Framework\\View\\Page\\Config\\RendererInterface::renderExtraFooter()
Complete code has been tested and battle proven on production, so it works as expected.
For now I'm just ignoring the issue reported.

Thanks a lot for raising this issue. This is indeed currently a problem as the di.xml files do not yet get parsed. I will need to check with the PHPStan maintainer what options we have to implement this.
In your example, you could redeclare $pageConfigRenderer in ClassA and add the correct @var annotation. That should do the trick, I would think.

The possible solution will not work  on this specific case as the parameter used is passed into the parent constructor. It might help in other situations.


Add "Report issue" button/link

Somewhere in the main menu or in the interface, it would be useful to have a button/link for reporting issues or feature requests.

Added menu entry:

512adacbf5cd5c437a75b69c46263d11f621de5f


Question: Must the number of points per input be known at compile time?

This means that you cannot build a KdTree from a vector of vectors/slices, which severely limits the functionality to use cases where the dimensions of the input are hard coded in.

i.e. something like this would not work:
let tree = points.rows().into_iter().map(|row| row.to_vec()).collect::<Vec<Vec<f64>>>();
//assume that points is an `ndarray`
let tree = KdTree<f64, 2> = (&tree).into();

Even though this is a very points agnostic way of creating KdTrees

Unfortunately yes, Kiddo does not support creating trees whose dimensionality is not known at compile time. This is due to the use of arrays rather than Vecs for performance.


Feature Idea: Proper LSP support when a path for an executable is given (make a better interface)

Feature report:
I think it would be nice to keep the current setup where the user can use language-agnostic functions or methods that don't require a bunch of executables that help in most scenarios but it would be nice to provide a nice interface for real LSP's that maps the output to the current form wherever possible. This might warrant a separate LSP package like sansio-lsp-client as a base and then the interface is extrapolated. How would this look? What would the API become? How does LSP actually work? How should we make the interactions work? What should be sent to the server? Should this lazily be done like the rest of the project where we just take advantage of the ease of use parts and hope the implementation is fast enough and provide optional optimizations the user can choose to use?

To assess whether this is worth the work in the first place, I should probably list out what an LSP does and what it doesn't do.
What it does:

find references
go to definition/implementation
autocomplete
hover info
formatting info
errors

What they don't do:

syntax highlighting
replacements
give lazy autocomplete

from salve_ipc.proper import Client, ProperResponse

proper_context = Client("path/to/langserver", ["--special", "options"])
proper_context.send(info_i_dont_understand, special_settings=("lsp.special_setting", "value"))
data: ProperResponse | None = proper_context.get_response_if_any()
# user handles response data

References is another big one


DMG mode not fixing VRAM sections correctly

I'm using RGBDS 0.3.7.
Setup: vram.asm
SECTION "VRAM", VRAM[$8000]

Then run:
rgbasm -o vram.o vram.asm
rgblink -d -O overlay vram.o
RGBLINK outputs error: All sections must be fixed when using an overlay file: 'VRAM', but since this is DMG mode, BANK[0] should be implied. Thus, the bank should be considered as correctly fixed.

Fixed by #434.


Build and push ibutsu images to quay on release

Create a github action to build and push docker images to quay.io on release. (https://github.com/marketplace/actions/push-to-registry)
Edit: we can just use build-triggers in quay rather than using a github action here.
https://github.com/marketplace/actions/push-to-registry

I've gone ahead and setup the necessary organization, repositories, and build triggers here:
https://quay.io/organization/ibutsu

The appropriate build triggers have been set up. These triggers will build images for ibutsu on a tag like vX.Y.Z.


Parse cannot submit Production iOS Push Service certification as Apple changed their Push Service name

I got following error while trying to submit a Production iOS Push Service certification, the real reason is  Apple changed their Push Service name from "Apple Development iOS Push Services" to "Apple Push Services".
Unsupported certificate type. Common Name (CN) must contain one of: Apple Production IOS Push Services, Apple Development IOS Push Services, Pass Type ID, Apple Development Mac Push Services, Apple Production Mac Push Services.
This is critical as it cause user cannot use Push Service to final user on Production build on Parse!!!

Hey @yihan422, investigating right now, I'll keep this issue updated.

Just reproduced - it is indeed an issue, looks like Apple changed the Common Name for the certificate over night, oh well. Investigating right now on required changes to our stack to make the new certificates work.
Please keep in mind, that the old certificates will continue to work and the issue only reproduces for newly issued certificates.

Quick update:
Just sent out the fix for this issue and we are doing necessary testing that everything does great before doing a deploy and rolling this out to everyone.
Will update with more details as I have them.

The fix should be rolled out and available since afternoon today.
I am going to close out this issue, please let us know if it doesn't work.

Cool! Thanks Nikita for the fast response! @nlutsenko I will try to test it on Monday.

i am new to programming but still got errors with uploading a p12 certificate and d'int know what to do
followed all the news i could see

Hi,
I observe the same issue. I want test push notifications on my iphone before I submit my app to the appstore. I exported the developer certificate onto my Mac and attempted to upload the .p12 file to Parse. Parse upload fails and displays the same message as mentioned above. Can you please provide guidance?
Regards,
Nilang

Hi,
I observe the same issue. I want test push notifications on my iphone before I submit my app to the appstore. I exported the developer certificate onto my Mac and attempted to upload the .p12 file to Parse. Parse upload fails and displays the same message as mentioned above. Can you please provide guidance?
Regards,
Nilang

Hai
Yday i succeeded To upload several p12 docs but still  push from the site to iPhones not working.
My misstake was to export from the Keychain that i did this from login and category my certificates instead of certificates (2 rows below)
Rgs
Verstuurd vanaf mijn iPad

Op 5 jan. 2016 om 18:00 heeft Nilang<EMAIL_ADDRESS>het volgende geschreven:
Hi,
I observe the same issue. I want test push notifications on my iphone before I submit my app to the appstore. I exported the developer certificate onto my Mac and attempted to upload the .p12 file to Parse. Parse upload fails and displays the same message as mentioned above. Can you please provide guidance?
Regards,
Nilang
—
Reply to this email directly or view it on GitHub.

Hey guys, could you file an issue at https://parse.com/help, it will give us an ability to at least see which app is this report coming about. I've just retested the upload with the production and development certificates - and can't quite reproduce the problem.

Quick question:
 I am not part of Apple Developer Program but I would like to verify push notifications using the iPhone Developer certificate Xcode retrieves from Apple. Is this possible? If yes, what is the process?

Regards,
Nilang

To the best of my knowledge, there is no way to make APNS aka Apple Push Notification Service to work outside of creating an app id, getting a certificate from Apple, code signing your app with a provisioning profile and testing on a device that was added to your account on Apple Developer website.

Ok thank you. I don't need to open a ticket.

d’ont make a mistake
i am not from parse but a beginner programmer
rgds

Op 5 jan. 2016, om 21:25 heeft Nikita Lutsenko<EMAIL_ADDRESS>het volgende geschreven:
To the best of my knowledge, there is no way to make APNS aka Apple Push Notification Service to work outside of creating an app id, getting a certificate from Apple, code signing your app with a provisioning profile and testing on a device that was added to your account on Apple Developer website.
—
Reply to this email directly or view it on GitHub https://github.com/ParsePlatform/Parse-SDK-iOS-OSX/issues/672#issuecomment-169121926.

@nicooverbeeke -- Sorry, was responding to @nlutsenko

Nilang

If you're getting started with push notifications on iOS or OS X using Parse, I highly recommend following the Push Notifications tutorial we've created along with a sample app.
If you still need help, Stack Overflow is a great resource for researching solutions to the most common provisioning issues on iOS and OS X.

I got following error while trying to submit a Production iOS Push Service certification ("Apple Push Services"):
p12 file contains multiple certificates. The file should contain only a single certificate and private key.

@medinaonly that seems to be a different issue from the one covered in this issue. It should be easily fixed by exporting just the one certificate (the tutorial I linked above goes through the steps).

In the tutorial there is nothing about the new certificates, old is OK (Apple Production iOS Push Services). I can not upload Apple Push Services.

Thanks for the fast response! I figured out what the problem was.

I also got this error:
Unsupported certificate type. Common Name (CN) must contain one of: Apple Production IOS Push Services, Apple Push Services, Apple Development IOS Push Services, Pass Type ID, Apple Development Mac Push Services, Apple Production Mac Push Services.
I tried to upload twice and my certificate is valid/exported properly
Any suggestions would be helpful.

@daisyramos317 can you post a common name for your certificate here? That would help identify the issue.

Not sure what common name you mean? The only one I am able to upload/generate is the .p12 certificate

@daisyramos317, the certificate name that appears in the keychain. Something like: Apple Push Service: com.parse.anypic.
You can see that error message only in case when the certificate uploaded doesn't match one of the names that we recognize as valid certificate, thus I am curious whether Apple changed the name once again or you have a certificate name that couldn't be recognized by our backend system.

Ah I figured out my error. I uploaded the CSR certificate in the wrong place. Thank you @nlutsenko

Hi, am getting this error today. Repeatedly getting the same error.


Add granule handling for S3 based layers

This PR adds granule handling for S3 based layers.

[x] Add a single image to Geoserver from command-line
[x] Delete a single image metadata from Geoserver from command-line
[ ] Add images to Geoserver based on Pytroll messages
[x] Delete image metadata for old granules from Geoserver

Deleting old images also works after one small bug was fixed: the logic in deleting also the file was reversed compared to what it should have been.

Also the Posttroll updating should now work, but is still untested.

Posttroll granule adding works also from OpenShift, so merging after the tests have completed.


Seperate out directly instrumented vs merely exposing.

Directly instrumented applications use a Prometheus client library that
follows our guidelines, and can be used as examples of software doing
that.
Software that uses something else to do instrumentation/metrics but
also exposes at one of our formats gets its own category.
Recategorise things accordingly, updating links as needed and
adding some more I know of.
I'm taking Quobyte's word for it that they're directly instrumented,
as it's commercial software and thus I can't check.
kubernetes-mesos has no instrumentation that I can find.

What is the goal of this separation?

So we can distinguish which software is following the Prometheus way of doing things and we can point at as examples, versus things that happen to produce our format. The current docs conflate instrumentation and exposition.

I don't see the primary use case of this page to see examples for best practices and find code examples, but to see which software of my stack can already be monitored. In that context it doesn't matter whether something uses a client library or some other way, as long as the exposition format interface is fulfilled. I'd rather remove the current separations than introducing more.
If you feel very strongly about pointing out that some of the listed items don't follow our best practices, we can also just add a label / icon to their name, similar to the official we already have.

To me this is a very core distinction. One is much likely to follow all of our best practices and be a good experience, the other is not.
I think it's important we clearly list which software that's directly instrumented.

After some deliberation, I agree with @grobie that this seems to be
the wrong place to make this distinction.
If we are aware of bad implementations, instrumented, translated, or
exported, this should be addressed separately.

To me the point of this list is to show off software that's following the Prometheus ideal, it got muddled though. Fixing this has been on my backlog for a while, as it blocked another PR.

If we are aware of bad implementations, instrumented, translated, or
exported, this should be addressed separately.

How do you suggest addressing them? The only lever we have would be to remove them from this page, which would then be a very bare page.

You seem to imply that (almost) none of the software listed atm has metric exposition of good quality.
If that is the case, it should be moved to the bottom in a "Partial or broken support" section and removed completely after X time.
If the metrics are of good quality, I doubt the users care too much about how the metrics have been created.

You seem to imply that (almost) none of the software listed atm has metric exposition of good quality.

Few fully follow our guidelines. Exporters are always a bit murky though. That's not the case with instrumented code.

If that is the case, it should be moved to the bottom in a "Partial or broken support" section and removed completely after X time.

I don't let ones that are completely unsable in.

If the metrics are of good quality, I doubt users care too much about how said metrics have been created.

Directly instrumented are generally far better quality, as there's a whole pile of mistakes they can't make.
This list has more than one purpose, the purpose I care about here is showing off how many projects are doing things the Prometheus Way so that ultimately we get better metrics for users. Hopefully one day that'll dominate this page.

@brian-brazil We had this discussion a week ago or so, where I was also surprised that with "directly instrumented" you only meant things that used exactly our client library, vs. something else to expose it. I had always thought that "directly instrumented" just meant it had some form of whitebox instrumentation that in the end produced Prometheus metrics, without needing an exporter.
In general I agree with @grobie and @RichiH that the primary focus of this page should be on the user-visible aspect of components, not how they are implemented internally. We can still separate out components with bad metrics, as @RichiH suggested.

I'd just add an icon after the name, like an exclamation mark which shows a
tooltip like "This exporter doesn't follow the project's best practices".
On Fri, May 19, 2017 at 12:24 PM Julius Volz<EMAIL_ADDRESS>wrote:

@brian-brazil https://github.com/brian-brazil We had this discussion a
week ago or so, where I was also surprised that with "directly
instrumented" you only meant things that used exactly our client library,
vs. something else to expose it. I had always thought that "directly
instrumented" just meant it had some form of whitebox instrumentation that
in the end produced Prometheus metrics, without needing an exporter.
In general I agree with @grobie https://github.com/grobie and @RichiH
https://github.com/richih that the primary focus of this page should be
on the user-visible aspect of components, not how they are implemented
internally. We can still separate out components with bad metrics, as
@RichiH https://github.com/richih suggested.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/docs/pull/749#issuecomment-302667353, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAANaAZB8NXcR-4f7XhQSEPY7NU0nnqIks5r7W3kgaJpZM4Nd9Qk
.

I had always thought that "directly instrumented" just meant it had some form of whitebox instrumentation that in the end produced Prometheus metrics, without needing an exporter.

I believe I've always been consistent on this terminology. Direct instrumentation means Prometheus direct instrumentation.
I've also always been clear on the distinction between instrumentation and exposition. Instrumentation says nothing about exposition.

We can still separate out components with bad metrics, as @RichiH suggested.

Components with good metrics are the exception, not the rule - especially when talking about exporters. There's also various other things exporters commonly get wrong, such as polling, using direct instrumentation rather than ConstMetrics or doing SD.
This a big reason I want to call out the handful of applications that are doing the things the way we want them to. I don't believe having a big Your Doing It Wrong on the majority of entries on this page would be productive.

There does not seem to be a direct, hard relation between "good metrics" and "Prometheus direct instrumentation", to me.
The page already links to best practices etc, I am not sure if much more can be done there.
What about

moving instrumentation above exporters
introducing symbols for

official
good metrics
shitty metrics

wording docs/instrumenting/writing_exporters.md more strongly to emphasize why Prometheus libraries are best if you start out anyway

FTR, I forced^wconvinced several teams at work to toss out their own implementations and use the official libraries instead. But that was in the context of best practices, not in the context of what they could use to get ready-made metrics into Prometheus.

There does not seem to be a direct, hard relation between "good metrics" and "Prometheus direct instrumentation", to me.

There's more to it than the names and structure of the metrics. The newest addition to the list seems to be pulling and possibly storing some metrics in Redis for example.
I want somewhere we can point to for applications doing things the Prometheus way, other than the instrumentation of Prometheus&co itself.

FTR, I forced^wconvinced several teams at work to toss out their own implementations and use the official libraries instead. But that was in the context of best practices, not in the context of what they could use to get ready-made metrics into Prometheus.

My belief is that having a list you can point to of other applications doing that would help such convincing.
It took us longer than it should have to have an example of a correctly implemented exporter, we should avoid the same friction for direct instrumentation.

I want somewhere we can point to for applications doing things the
Prometheus way, other than the instrumentation of Prometheus&co itself.

I don't see this page being the right place for that.
On Fri, May 19, 2017 at 1:02 PM Brian Brazil<EMAIL_ADDRESS>wrote:

There does not seem to be a direct, hard relation between "good metrics"
and "Prometheus direct instrumentation", to me.
There's more to it than the names and structure of the metrics. The newest
addition to the list seems to be pulling and possibly storing some metrics
in Redis for example.
I want somewhere we can point to for applications doing things the
Prometheus way, other than the instrumentation of Prometheus&co itself.
FTR, I forced^wconvinced several teams at work to toss out their own
implementations and use the official libraries instead. But that was in the
context of best practices, not in the context of what they could use to get
ready-made metrics into Prometheus.
My belief is that having a list you can point to of other applications
doing that would help such convincing.
It took us longer than it should have to have an example of a correctly
implemented exporter, we should avoid the same friction for direct
instrumentation.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/docs/pull/749#issuecomment-302674316, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAANaExfUT-yM9eXy68ojmY_V4VkbMcaks5r7XbcgaJpZM4Nd9Qk
.

I don't see this page being the right place for that.

If that was the case we should remove the directly instrumented apps (and only those) as they are neither exporters nor integrations.

possibly storing some metrics in Redis

So a stateless-worker-thread based architecture with a database backend for sync cannot be instrumented directly at all with canonical Prometheus-metrics at all?

Just for understanding: so a stateless-worker-thread based architecture with a database backend for sync cannot be instrumented directly at all with canonical Prometheus-metrics at all?

It can, just use the Prometheus python client which keeps things entirely in memory. For Python as long as you're not using multiple processes (e.g. unicorn, multiprocessing), everything should just work.

For Python as long as you're not using multiple processes (e.g. unicorn, multiprocessing), everything should just work.

And if it is using that? If the workerthreads are completely decoupled, synced only via the database keeping the application's state, and potentially die faster than the scrape interval?

This is discussion for elsewhere, but if they're threads it's not a problem as the state is kept in memory per-process.

To try and break this deadlock, how would keeping this list but adding an annotation for direct instrumentation sound?
I'd like to keep any annotations positive rather than negative.

SGTM.
I was thinking about using an icon from https://getbootstrap.com/components/
which shows an explanation like "Follows Prometheus best practices" when
hovering over it, just to reduce the amount of text on the page. We could
also do the same for the current official label. I don't mind the details
too much though.
On Mon, May 22, 2017 at 4:19 PM Brian Brazil<EMAIL_ADDRESS>wrote:

To try and break this deadlock, how would keeping this list but adding an
annotation for direct instrumentation sound?
I'd like to keep any annotations positive rather than negative.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/docs/pull/749#issuecomment-303113540, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAANaINR1sAP83mMmp-_fZ71Zr9kNEpAks5r8ZlSgaJpZM4Nd9Qk
.

I'll just do **direct** or similar for now I think. "Follows Prometheus best practices" is a higher bar, and particularly with exporters that gets very messy.

how about "with official libraries"?
This would not open the discussion/confusion about what exactly is "direct" (see the comment of @juliusv), would imply something in the direction of "follows upstreams best practices" as in "they are at least already using the officially provided libraries", but would not imply that the metrics that come from that must necessarily follow Prometheus' best practices (as you can still screw up the metric naming even if you use official libraries).

how about "with official libraries"?

Not all the libraries are official, so we get into how closely the client libraries guidelines are being followed (the ones we've listed are largely okay) and which of those are relevant to instrumentation.

true thing. I was actually wondering how e.g. C++-applications would be classified as there is no official library.
"with officially supported library" or something like that?

The key word isn't "direct", it's "instrumentation". Producing output "exposition". Direct means it is in the code, not going via an exporter.

"Direct means it is in the code, not going via an exporter."
By that definition, self-cooked prometheus-metrics-code, baked directly into the application, is also "direct"ly instrumented, only with a different (unofficial) library (or "library" if it's really hardcoded in there). That's the confusion I mean.

By that definition, self-cooked prometheus-metrics-code, baked directly into the application, is also "direct"ly instrumented, only with a different (unofficial) library (or "library" if it's really hardcoded in there).

That's a case I've pondered and am not sure about, I can imagine it coming up in C/C++ cases. I figure we'll cross that bridge when we come to it.

Yeah, that was my confusion as well. There's nothing in the phrase "direct instrumentation" itself that suggests whether an official or unofficial instrumentation library was used. You might have used it consistently in the past, but I probably never paid much attention to the exact phrase :) The phrase itself (without consulting any Prometheus-specific glossary or something) just means that there is instrumentation directly in the code.

The "with a Prometheus client library" is silent :)
Also: https://prometheus.io/docs/introduction/glossary/#direct-instrumentation

Also: https://prometheus.io/docs/introduction/glossary/#direct-instrumentation

See, so even our glossary for it doesn't make the distinction based on how you add instrumentation to the code... thus I don't think we should tie that phrase to the specific use of our own Prometheus client library.

It's implicit, you can do instrumentation with many libraries but when you're on prometheus.io I think it's pretty obvious we mean the Prometheus ones.

but when you're on prometheus.io I think it's pretty obvious we mean the Prometheus ones.

As you can see from this thread, it isn't obvious at all to multiple people who are even familiar with Prometheus. When I hear "direct instrumentation", my mind tells me: someone put instrumentation directly into their code (no matter what lib), and that finally enables a program to expose Prometheus (and potentially other) metrics by itself (as opposed to requiring an exporter). So I don't think we should use the term "direct instrumentation" without further qualification to mean "using an official Prometheus client library".
As others have said, I think in 90% of cases, a user visiting this page wants to find an answer to the question, "I want to get Prometheus metrics out of X, can it be done already?". Not "I want to find examples of software using specifically the Prometheus client library.". It's fine if you want to indicate that specifically in addition as you proposed, but just a **direct** marker is too misleading for the above reasons. It should be clear from plain English that the annotation is about using a Prometheus client library.

So I don't think we should use the term "direct instrumentation" without further qualification to mean "using an official Prometheus client library".

That was always what I was proposing.
PTAL.

So I don't think we should use the term "direct instrumentation" without further qualification to mean "using an official Prometheus client library".

That was always what I was proposing.

I meant that the (**direct**) marker is not clear by itself, but since there's an explanation of it at the bottom of the section, that's ok for now. I'd prefer if we found an equally brief clearer term for it in the future though (**using official instrumentation library** is a bit long).
So :+1:

How to make a distinction between good external libraries (official libraries only include Go, Python, Java, Ruby), which @brian-brazil would classify as "using official library" if I understand correctly and good or bad external, but baked-in libraries? Or in other words: if a baked-in library would be factored out and would make it to the client-libraries-page, would that change the classification of the instrumented software in this context?

Or in other words: if a baked-in library would be factored out and would make it to the client-libraries-page, would that change the classification of the instrumented software in this context?

As I said above, let's worry about it when it happens. I've yet to see any embedded instrumentation library that came close to being a Prometheus library, and I'd generally hope users would use something existing rather than writing their own.


Demos don't work

I downloaded the latest, and I can't seem to get the demos to play. I open the html files in my browser, but nothing happens. It's just a blank gray div.
I ask because I am having a hard time understanding how to set bodymovin up. It would be helpful to have some demos!

You're right, I will upload updated demos this weekend.
Where are you having trouble setting things up?

@bodymovin Thanks for the quick response! I'm not too familiar with JS, so getting it to work isn't very easy for me.
Here is what I have so far: http://codepen.io/drw158/pen/yYaqom
I uploaded the files to my own server and added them in Codepen. Not sure if that works.

@drw158 There are a couple of issues.
first of all, your server isn't returning the right headers, so codepen can't load the json file.
You can inline the exported json to see the animation.
I've forked your pen here http://codepen.io/airnan/pen/xwEJQq
If you try it on your own server, loading the json will work, so you can do one of both techniques you've tried.
I will upload later two examples one for each.

demos updated


Introduce boxed types for margins and handling of input

Add boxed types for window margins and input handling

For horizontal and vertical margins I totally agree and understand. For Handled it took me a while to see the benefit. I think there actually is one, because we encode the meaning of that boolean. So 👍 :)

Concerning Handled, yes, i added it to see the meaning of the bool value, since it is not obvious what this bool means when returned from one function into another


Generate .deb-packages as a part of release on travis

Plugins are installed to /usr/lib/rabbitmq/plugins/ - it will work transparently only with some future versions of rabbitmq (with https://github.com/rabbitmq/rabbitmq-server/pull/1016)
Open questions:

Is the package signing needed? On a plus side the same GPG keys can be used to provide a signature as requested in #107. Mechanisms are already in place, but it'll require some effort from you for generating a GPG key and converting it to the travis-accepted form
Should debian changelog be automatically generated, e.g. from a log of git commits? Or is it worth making its hand-crafted version, e.g. with the same descriptions that go into GitHub releases?

Current coverage is 41.71% (diff: 100%)

Merging #108 into master will not change coverage

@@             master       #108   diff @@
==========================================
  Files            13         13
  Lines           513        513
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            214        214
  Misses          299        299
  Partials          0          0

Powered by Codecov. Last update 9ed8213...ac21630

I've added automatic changelog generation, and fixed building of unsigned packages. Open questions can be resolved separately, but even in this form it already provides useful release artifacts.


supporting error responses

Current dependencies on/for this PR:

main

PR #756   👈

This comment was auto-generated by Graphite.


IFileInfo.ToString() should have same result as FileInfo.ToString()

Hi Guys,
Following unit test
        [Fact]
        public void FileInfoToStringShouldResultInFilePathProvidedInConstructor()
        {
            var fileSystem = new FileSystem();
            var fileInfo = fileSystem.FileInfo.FromFileName(@"c:folder-a\file-a.txt");
            fileInfo.ToString().Should().Be(@"c:folder-a\file-a.txt");
        }

fails with:

Message:
Expected fileInfo.ToString() to be
"c:folder-a\file-a.txt" with a length of 21, but
"System.IO.Abstractions.FileInfoWrapper" has a length of 38, differs near "Sys" (index 0).
Stack Trace:
XUnit2TestFramework.Throw(String message)
TestFrameworkProvider.Throw(String message)
DefaultAssertionStrategy.HandleFailure(String message)
AssertionScope.FailWith(Func1 failReasonFunc)     AssertionScope.FailWith(Func1 failReasonFunc)
StringEqualityValidator.ValidateAgainstLengthDifferences()
StringValidator.Validate()
StringAssertions.Be(String expected, String because, Object[] becauseArgs)
FileInfoExtensionsTests.FileInfoToStringShouldResultInFilePathProvidedInConstructor() line 47

What makes it worse is that the following behaves correctly and therefore produces false positive:
        [Fact]
        public void MockFileInfoToStringShouldResultInFilePathProvidedInConstructor()
        {
            var fileSystem = new MockFileSystem();
            var fileInfo = fileSystem.FileInfo.FromFileName(@"c:folder-a\file-a.txt");
            fileInfo.ToString().Should().Be(@"c:folder-a\file-a.txt");
        }

Thank you

Good catch, thanks for reporting. The behavior of the mock is correct, FileInfo.ToString should return the path.


Question

@SRvSaha Can I run multiple instances of the app for different beneficiaries at the same time from one machine..!??

@Tnu02 Yes you can. Make sure you create different different copies of folder to run multiple versions of the app

I tried booking using the app and no luck.. Everytime slot not availabe 😅😅 entered 20-30 captcha..

@Tnu02 Unfortunately that's not in my hand!

Release v4.1.0  is now  live, with the milestone of AutoCaptcha Feature!
Check it whether you are still facing the same issue. @Tnu02


listener bugs

For the transport protocol, the clients are both supposed to start a listener so that any one of them can connect to the other directly. However, wormhole-william starts a listener only for the sender. The recipient always tries to connect to the sender provided hints. This deviates from the behaviour of the canonical python client.
Both the clients are supposed to listen for incoming direct connections and both the clients should allow themselves to be configured with any relay servers. The hints exchange and the resulting negotiation is supposed to result in a particular relay server for use.

Thought a bit more about it. I think the implication is that when sender is behind NAT and the recipient is not, the relay would get used when we could have avoided using it as recipient is directly reachable.

On relay connections, there are some improvements done: https://github.com/LeastAuthority/wormhole-william/pull/95
We still need some changes for direct connection or rework how connectivity logic.


Task 1: Build Application Structure

Create flutter application structure using figma prototype screens as a template

This Task will be made up of a collection of smaller features, each of which will need to be completed before this issue can be closed.


Camera settings not working

Describe the bug
When trying to set up camera settings, the app just takes you back to the main alarm panel screen.
To Reproduce
Steps to reproduce the behavior:

Go to settings
Click Camera
App just flashes to a white screen then takes you back to main alarm panel.

Expected behavior
Should open up camera settings.  This worked a few times, but never allowed motion settings to be changed.  Now any camera settings cannot be changed..
Screenshots
Attached video
https://user-images.githubusercontent.com/45905227/104816843-88837f80-57d2-11eb-911c-696ccd82a637.MOV
Smartphone (please complete the following information):

Device: Fire HD 10
OS: FireOS <IP_ADDRESS>
Alarm-Panel Version: v1.0.1-beta.5

Additional context
Add any other context about the problem here.

Hey thanks for reporting the issue, I see an error in Firebase, these seems like your device.

I have to take a look at what values are allowed, but basically it has a non-number value for the camera motion, is the app possibly crashing when selecting Camera Motion?   Your MOV file didn't play for me.   I am looking at this crash now and will have it in the next update.  I could not however reproduce a crash when opening just the camera settings, only when I selected motion detection button.

Hey thanks for reporting the issue, I see an error in Firebase, these seems like your device.

I have to take a look at what values are allowed, but basically it has a non-number value for the camera motion, is the app possibly crashing when selecting Camera Motion?   Your MOV file didn't play for me.   I am looking at this crash now and will have it in the next update.  I could not however reproduce a crash when opening just the camera settings, only when I selected motion detection button.

I am uploading a new version v<IP_ADDRESS> to the release section and to firebase for testing.

I am uploading a new version v<IP_ADDRESS> to the release section and to firebase for testing.

It originally only crashed when choosing motion, but after a few attempts, maybe like 10, it is now crashing when selecting camera as well.  I updated to b6 but it seems to be happening still.  I rebooted the tablet as well.  Thanks!

It originally only crashed when choosing motion, but after a few attempts, maybe like 10, it is now crashing when selecting camera as well.  I updated to b6 but it seems to be happening still.  I rebooted the tablet as well.  Thanks!

I will look for other crash reports, you man need to uninstall and install again, possibly you entered a bad value and it can’t convert it properly.

I will look for other crash reports, you man need to uninstall and install again, possibly you entered a bad value and it can’t convert it properly.

Looks like bad value for camera rotate.

Looks like bad value for camera rotate.

I have updated a new release https://github.com/thanksmister/android-mqtt-alarm-panel/releases/tag/v<IP_ADDRESS>

I have updated a new release https://github.com/thanksmister/android-mqtt-alarm-panel/releases/tag/v<IP_ADDRESS>

So that seemed to fix my issues.  Thank you so much.  Unfortunately, I am now plagued with MQTT problems.  It seems to be connected to the broker, but does not act on any changes.  Using a MQTT client and sending messages has no effect either.  At one point it started working randomly but since stopped again.  No commands send seem to work either.  Possible issue with the new MQTT library?  any way to debug on my end?

So that seemed to fix my issues.  Thank you so much.  Unfortunately, I am now plagued with MQTT problems.  It seems to be connected to the broker, but does not act on any changes.  Using a MQTT client and sending messages has no effect either.  At one point it started working randomly but since stopped again.  No commands send seem to work either.  Possible issue with the new MQTT library?  any way to debug on my end?

It's better if you join the channel and look at the notes others who have this working have posted.  That way we do not have to recreate all the same information here.    The short answer is I don't know your setup, but that is what controls MQTT behavior.  Nothing has changed previously from the way we use the alarm panel with the MQTT manual component.  Here is the Discord channel https://discord.com/invite/euh9J2d, join Alarm Panel group

It's better if you join the channel and look at the notes others who have this working have posted.  That way we do not have to recreate all the same information here.    The short answer is I don't know your setup, but that is what controls MQTT behavior.  Nothing has changed previously from the way we use the alarm panel with the MQTT manual component.  Here is the Discord channel https://discord.com/invite/euh9J2d, join Alarm Panel group


Can't install

Hi
I have installed as a custom repo in HACS but when I go to integrations to add it, it doesn't show up in the integrations list to install

Try resetting your browser cache or doing a hard refresh. Instructions for that vary by browser so just do a quick search if you're not familiar.

Thanks.. After 2 or 3 goes, the hard refresh did it 👍
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Matt Schmitt @.>
Sent: Monday, May 17, 2021 5:00:32 PM
To: schmittx/home-assistant-eero @.>
Cc: Davecl @.>; Author @.>
Subject: Re: [schmittx/home-assistant-eero] Can't install (#11)
Try resetting your browser cache or doing a hard refresh. Instructions for that vary by browser so just do a quick search if you're not familiar.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/schmittx/home-assistant-eero/issues/11#issuecomment-842442833, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAVQ6JUZHKIBZBUGG6BOR5TTOE4SBANCNFSM45AQ4O2Q.


[BUG] Organisation ID

I self-host hoop in K8S with a custom postgres database.
To create an API key I need to have my org-id according to the docs, however there is no possibility to get the org-id anywhere.
hoop admin get orgkeys only returns the key, not the ID.
The AI bot told me to do the api call to get it, but this is not possible without being able to create an API key.
How I would solve this: make the org-id available in the UI or through a cli command.
How I fixed my Issue: Connected to the DB myself and retreived the org-id out of there.
Keep up the great work, awesome tool, thanks! ❤

Hey @daanpersoons , Thank you for the feedback and the issue report.
You could use the command line to obtain the organization id:
hoop admin get userinfo -o json


Controllers with asynch responses?

Is it possible now to use Swagger to implement controllers that make asynch calls? If I have a Promise generated in a request handler, can it be used to eventually send to the response object?

I think you can disregard this request. It appears that promises are supported in the Controller--you just need to add handlers which eventually call res.end().


playbook changes & Template changes

VM SP has evolved in 7.2.0. This PR is no longer needed, hence closing this.


oneof generates Option + Enum rather than only Enum?

This is a question rather than a issue. I notice that using a oneof will generate an Option that contains an Enum. Why doesn't prost generate an Enum directly?
Example (I'm surprised that the result field doesn't have the type Result directly):
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CrawlResult {
    #[prost(oneof = "crawl_result::Result", tags = "1, 2")]
    pub result: ::core::option::Option<crawl_result::Result>,
}
/// Nested message and enum types in `CrawlResult`.
pub mod crawl_result {
    #[derive(Clone, PartialEq, ::prost::Oneof)]
    pub enum Result {
        #[prost(message, tag = "1")]
        Page(super::Page),
        #[prost(string, tag = "2")]
        Error(::prost::alloc::string::String),
    }
}

Because the result oneof can be entirely unset.

Every ::prost::Message is Default. What would be the default value of the variable if it isn't Option?

I'd love an option to have parsing fail if a oneof field is not set.
My code is littered with unwrapping these options and manually failing if it is None.

I understand that the protobuf "spirit" is that everything should be optional to allow protocol evolution, and presence should be checked at the application level.
So, I understand that evety oneof is optional, and it could be missing entirely.
However, for ergonomics, I'd like to be able to instruct prost to generate an enum with one more branch, named None (or Absent, or Missing, but IMHO the name None would be usable and appropriate). This branch would have the semantics "the whole oneof is absent".
It would be like "flattening" the rust Option and Enum types that are used now.
The optionality semantics would still be there, but the ergonomics (especially for value literals) would be quite different.
Sometimes the explicit Option would still be desirable, but often I would find the flattened type easier to use.
Ideally this should be an opt-in choice, using an annotation in the proto file.
Would this be acceptable?
If yes, given directions, I would be willing to implement it!

@massimiliano-mantione I think this sounds like an excellent idea, though I would love to also be able to get rid of the optionality entirely. This is useful for a server that only ever produces a response type for instance but never needs to read such a type from memory. It makes it more ergonomic as you can't accidentally set None.

Removing Option would also be very appreciated for submessages, not just enums. In my project, unset submessage or oneof fields are always translated into errors manually, which adds a lot of noise to the code. It would be awesome if there was an option to make it a decode error instead.
Would there be interest in such an option?

+1 for automatically adding a None variant to the enum instead. I think this matches the usual rust pattern a lot better than the current implementation. I would be willing to implement this if nobody else wants to.

For now prost will continue to use the Option as that was the original design and I believe its still the correct way even if its not the most ergonomic.

I, for one, would also like to have this option, despite being against the "protobuf spirit". ;)


Space summary: Service instances

Blocked on https://github.com/cloudfoundry-incubator/stratos/pull/1663

Noticed an bug, when a service instance is detached the table contents disappears. Is this the same issue as routes?

@richard-cox Addressed all comments


A  should not be rendered outside the context of history; some features including real hrefs, active styling, and navigation will not function correctly

Not sure what this means or how to fix.
Here is the most relevant section of code:
export default class App extends Component {
  render() {
    return (

        <Navigation />

              {this.props.children}

    );
  }
}

React.render ((
  <Router history={history}>
    <Route path="/" component={App}>
      <IndexRoute component={Dashboard} />
      <Route path="app_catalog" component={AppCatalog}/>
      <Route path="event_viewer" component={EventViewer}/>
    </Route>
  </Router>

where are you using <Link>?

AH crud sorry. The 's are all in the  component. Here it is:
import React, {Component} from 'react';
import Router, {Link} from 'react-router';

export default class  Navigation extends Component {
  render() {
    return (

<Link to="/">Dashboard</Link>

<Link to="/app_catalog">App Catalog</Link>

<Link to="/event_viewer">Event Viewer</Link>

    );
  }
}

I should add that moving from  0.13.3 to 1.0.0-rc1 today, trying to figure out what all I need to do with this upgrade.

check the Upgrade Guide, looking at this issue now

@jasongonzales23 isn't your issue related to https://github.com/rackt/react-router/issues/1972 ?

I wish I could say if it is related. That issue didn't describe what "This looks to have been an issue with node_modules, sorry about that!" means.
All I did was update react-router from 0.13.3 -> 1.0.0 following the upgrade guide and now things are not working properly (which could be a server config issue because of the new history implementation) and this error.
So I am not seeing how this could be related to my node_modules. Any suggestions? I can post my package.json below to see if anything grabs your attention:
  "dependencies": {
    "babel-core": "^5.0.8",
    "babel-loader": "^5.0.0",
    "body-parser": "^1.12.2",
    "d3": "^3.5.5",
    "es5-shim": "^4.1.0",
    "events": "^1.0.2",
    "flux": "^2.0.1",
    "highcharts": "0.0.9",
    "imports-loader": "^0.6.3",
    "jquery": "^2.1.3",
    "keymirror": "^0.1.1",
    "loader-utils": "^0.2.6",
    "marked": "^0.3.3",
    "moment": "^2.10.6",
    "node-libs-browser": "^0.5.0",
    "object-assign": "^2.0.0",
    "react": "^0.13.1",
    "react-bootstrap": "^0.20.1",
    "react-highcharts": "^2.0.0",
    "react-redux": "^2.1.2",
    "react-router": "1.0.0-rc1",
    "redux": "^3.0.0",
    "sleep": "^3.0.0",
    "superagent": "^1.1.0",
    "webpack": "^1.9.5"
  },
  "devDependencies": {
    "babel-eslint": "^2.0.2",
    "bootstrap-sass": "^3.3.4",
    "bootstrap-sass-loader": "^1.0.3",
    "cli": "^0.6.6",
    "css-loader": "^0.9.1",
    "eslint": "^0.18.0",
    "eslint-plugin-react": "^2.0.2",
    "esprima-fb": "^14001.1.0-dev-harmony-fb",
    "expect": "^1.6.0",
    "expose-loader": "^0.6.0",
    "express": "^4.12.3",
    "file-loader": "^0.8.1",
    "gulp": "^3.8.11",
    "gulp-eslint": "^0.8.0",
    "jscs": "^1.12.0",
    "karma": "^0.12.31",
    "karma-chrome-launcher": "^0.1.12",
    "karma-mocha": "^0.1.10",
    "karma-mocha-reporter": "^1.0.2",
    "karma-sourcemap-loader": "^0.3.4",
    "karma-webpack": "^1.5.1",
    "mocha": "^2.2.4",
    "node-sass": "^2.1.1",
    "react-hot-loader": "^1.3.0",
    "redux-devtools": "^2.1.2",
    "sass-loader": "^0.6.0",
    "style-loader": "^0.9.0",
    "url-loader": "^0.5.5",
    "webpack-dev-server": "^1.8.0"
  }

try rm -rf node_modules && npm install
I've tried to reproduce and works fine for me, here is my quick example:
import React, { PropTypes, Component } from 'react';
import createBrowserHistory from 'history/lib/createBrowserHistory';
import { Router, Route, Link, Redirect, IndexRoute } from 'react-router';

class Navigation extends Component {
  render() {
    return (

<Link to='/'>Home - /</Link>

<Link to='/inbox'>Inbox - /inbox</Link>

<Link to='/inbox/messages/12' query={{ foo: 'bar' }}>Messages - /inbox/messages/12</Link>

    );
  }
};

class Message extends Component { render() { return
Message {this.props.params.id}
 } };

class Inbox extends Component {
  render() {
    return (

Inbox

        {this.props.children || 'Your inbox is empty.'}

    );
  }
};

class Home extends Component {
  render() {
    return (

        Hello Home

    );
  }
}

class App extends Component {
  render() {
    return (

App

        <Navigation />

        {this.props.children}

    );
  }
}

export default class Root extends Component {
  render() {
    return (
      <Router history={createBrowserHistory()}>
        <Route path='/' component={App}>
          <IndexRoute component={Home} />
          <Route path='inbox' component={Inbox}>
            <Route path='messages/:id' component={Message} />
          </Route>
          <Redirect from="/about-us" to="/about" />
        </Route>
      </Router>
    );
  }
}

Hrm. Bummer. Stuff is pretty broken and my app really isn't complicated. I don't know if I should file a separate issue, but I cannot get the app to load properly with webpack & hot-loader until I make a trivial change to the code of some kind.

I created this https://github.com/knowbody/react-router-playground for myself. Make sure you replace react-router in package.json with the right version. and then you just npm install && npm start to run the "app"

Thanks, playing now!

I've also got this error. It's when i seem to use <Link> inside of a child Component. Do i need to pass the history as a prop to get <Link>'s working in child components?

Same here, and not sure what to do.

Sounds less like a bug and more like a support issue. Try posting your question on stackoverflow with some code samples!

What about Unit Tests :(

+1 for unit tests. I see this warning all the time I try to to test some component that includes <Link> in it. Is there a way to suppress this warning?

+1 for unit tests.

For those striving to solve this for unit tests I found solution in form of babel-rewire-plugin.

I reopen this issue as it seems like this might be a bug on our side

Just so people know where this warning is coming from: If you render a <Link> outside a <Router> (or, more specifically, a <RoutingContext>) you'll see this warning message. It's basically telling you that a <Link> needs to know about its history object in order to do anything meaningful.

@mjackson any thoughts on how to do unit testing?

@knowbody +1

@knowbody +1

For now I've just been mocking a history context in unit tests for components that use <Link>s. It's not the best solution, but it works as a temporary fix and suppresses all of those warnings. Example:
import MyComponent from '../MyComponent';
import createBrowserHistory from 'history/lib/createBrowserHistory';

// Mock a global context of "history" to suppress warnings from react-router.
MyComponent.childContextTypes = { history : React.PropTypes.object };
MyComponent.prototype.getChildContext = () => ({
  history : createBrowserHistory()
});

// unit tests below, no more errors

Would be nice to have a more "official" workaround.

Nope, no idea how to unit test this. Let's remove the warning.

@mjackson,
I should probably ban myself from git blame, but in the mean time…
https://github.com/rackt/react-router/commit/b86509ae717b4a4f7ebbb80b93e12021147457aa#diff-c7fd3a70340dad9a76157e1ad2e35baaR74
https://github.com/rackt/react-router/commit/b86509ae717b4a4f7ebbb80b93e12021147457aa#diff-c7fd3a70340dad9a76157e1ad2e35baaL80
:trollface:
In the context of this Issue, we're talking about having <Link> in components that we like to Unit Test.  We probably need to build up a history context to pass in to the component under test, though is a little annoying.

No need to use git blame, @robcolburn. I wrote just about everything in the modules directory :P
Long story short: If you render your <Link>s inside a <Router> they'll work as they're supposed to. If you don't, they silently won't do anything.

@mjackson awesome! That was not the case in <1.0 - exciting! :dancers:

Uhoh.
Here's a failing test case anyway:
import React, {Component} from "react";
import {Link} from "react-router";

export class MomentListItem extends Component {
  render() {
    const {id, title} = this.props;
    return (

{title}

          <Link
            ref="momentLink"
            to={`/moments/moment/${id}`}>
            Launch
          </Link>

    );
  }
}

/*eslint-env mocha*/
import {assert} from "chai";
import React, {Component} from "react";
import {MomentListItem} from "./index";
import testTree from "react-test-tree";

describe("MomentListItem Component", function () {
  var item = testTree(<MomentListItem id={1} title="Woo" />);
  it("should display a title", function() {
    assert.equal(item.momentTitle.innerText, "Woo");
  });
  it("should have a link to the moment", function () {
    console.log(item.momentLink);
    assert.equal(item.momentLink.getAttribute("href"), "/moments/moment/1");
  });
});

@davezuko's solution works for me. Would be nice to have that error message removed though.

@austinpray See 160c5baf67df48ea2f1ef43bb13ce18182de75f2

Hey, is there a way we can provide the history context to a  element outside of the router? I'm trying to use semantic UI with a sidebar, but it requires the sidebar to be outside of the app context. I have made the createBrowserHistory() accessible through a global utilities service, and am able to use that outside of the  context, but the  element itself in the side bar does not work. How can I provide the Link with the history context.

Yes but this is not a good place to ask for help - try Reactiflux or Stack Overflow.

This happens again in 4.2.2 in my unit tests.

I was facing similar problem with Jest. I simply wrapped my component under  to make it work.  ```import React from 'react';
import renderer from 'react-test-renderer';
import { BrowserRouter } from 'react-router-dom';
import Movie from '../../components/movies/movie';
const movie = {
id: 1,
name: 'a movie',
year: '2017',
director: 'Sachin',
};
describe('Movie', () => {
it('renders correctly', () => {
renderer.create();
});
});


could you make all commands a interaction command

Could you make all commands a interactioncommand?
becouse i found that some of the commands not interaction command is

we deliberately ignored some categories just for now to get the feature out and running to the public. They will be worked on later when seen fit, like when the dashboard is at a good level of completion so people can choose what commands are interactions etc.
going keep this issue open till all the commands are interactions

okay thank you

This is now been completed

okey thx


Generate whole post content on RSS/Atom feed instead of just a summary

Hi!
I was wondering if there's a way to allow the feed to include the whole post instead of just a summary. Some people usually don't want to leave their RSS reader if they they are allowed to view the whole post (and I think it's an empowering thing).
So, is there a current option (couldn't find it in the config.toml or plans to implement it soon?
Thank you very much!

I simply enabled the rss feed option of zola. I wonder if any of the other themes show the whole feed?
I would check Zola documentation and also check if any of the other themes are somehow able to provide the entire rss feed instead of just a summary.
This may end up being a feature request for upstream zola.
I do not have time at the moment to research it, so feel free to see what you can find out, if another theme is able to do it then let me know which one, otherwise if it seems like all themes are only displaying a summary then a feature request would need to be opened with Zola.
I can look into this when I get some free time but i am really busy for a while with a few other projects.

Thanks for your comment!
I've looking for it in Zola Docs and I'd say the only way its by overwriting the atom.xml template: https://github.com/getzola/zola/blob/master/components/templates/src/builtins/atom.xml#L46-L50
There's nothing related to that in the Docs, but the template seems to be easily modified.
I think we can close the issue 😉


Add Callback when a value gets evicted

In my case, my values are IDisposable and use native resources.
A callback when an item gets removed from the cache is necessary to properly cleanup the resources.
A Action<TValue> as a constructor argument would be great.

Why would you not use KeyValuePair<TKey, TValue> instead of the TKey as the argument for the EvictionCallback?

@GabrielMarquezMatte good question. I don't know😀
Will change in next release


Update raindrop-io extension

Description
Fixes an issue where collections were displayed duplicated or blank spaces.
Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

@sxn there's a problem, in the package.json the extension name is raindrop-io, but the original folder is called raindrop (it was one of the first extensions in the store, there weren't much conventions on how to name folders).
So I've used the new way to make changes to an extension (to avoid fetching the whole repo) using the Fork Extension command and it used the name on the package.json as folder name.
And there wasn't a way to use ray publish if I rename the folder back.
Not sure if that was fixed now.
/cc @pernielsentikaer @mathieudutour


A value type to hold arbitrary JSON5

We should provide a value type in the style of serde_json's.
Prerequisite for #2.

What's the status of this issue?

Not started, but will try and find the time to take a look at it in the next few days. Thanks for the reminder!


New version: Zoom.ZoomRooms version 6.2.1

Pull request has been created with komac v2.5.0 :rocket:
Microsoft Reviewers: Open in CodeFlow

Automatic Validation ended with:

Installation failed with exit code -1978335226
2024-10-21 15:27:39.108 [CLI ] ShellExecute installer failed: 1

Automated error analysis suggests -1978335226 may mean Running ShellExecute failed
(Automated response - build 897.)

@stephengillie are you able to manually validate this?

Manual Validation also ended with:

2024-10-21 15:27:39.108 [CLI ] ShellExecute installer failed: 1

Running the installer manually didn't result in an error.

@wingetbot run

Automatic Validation ended with:

Installation failed with exit code -1978335226
2024-10-30 16:35:10.768 [CLI ] ShellExecute installer failed: 1

Automated error analysis suggests -1978335226 may mean Running ShellExecute failed
(Automated response - build 897.)

@stephengillie Any ideas what is going on here?

@wingetbot run

Automatic Validation ended with:

Installation failed with exit code -1978335226
2024-11-04 11:49:50.594 [CLI ] ShellExecute installer failed: 1

Automated error analysis suggests -1978335226 may mean Running ShellExecute failed
(Automated response - build 897.)


question about "mlp.eval()"

Thanks for you excellent work. I have question about the line 217-218 in the main.py
if flags.dataset != 'CifarMnist':
    mlp.eval()

why evaluating on CifarMnist does not set the model to eval mode?

Dear BeierZhu:
Thank you for your interest in Bayesian IRM.
This is because each image of CifarMnist is composed of two component: an image from MNIST and an image from Cifar. We found the normalization of  CifarMnist is quite strange. We tried BIRM and also the baselines (ERM, IRMv1, REx...) and found all these methods had 50%  test acc in the '.eval()' mode. So in this dataset, we didn't use '.eval()' model for all these methods  (BIRM and its baselines). We conjucture it is due to the ill behaved noramlization statistics of a concatenation of two distinct datasets.
The other two datasets (CMNIST and ColoredObject) are just fine.

Dear Yong Lin:
I have tried combining the two images by addition instead of concatenation or change with resnet/vgg without bn, the strange phenomenon still exists. I am still figuring out why.
BIRM is an excellent work anyway. Thanks for you reply.

Dear BeierZhu:
If you are interested in this work (or my other works on IRM, see https://linyongver.github.io/Yong-Lin/ ). We can add a WeChat friend for further discussion. My account is: linyongver
Best wishes.
Yong Lin


Support typing.Optional in env_config.BaseConfig

Codecov Report

Merging #2 (5ed5c3a) into master (3be3955) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##            master        #2   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            4         4
  Lines          112       113    +1
=========================================
+ Hits           112       113    +1

Impacted Files
Coverage Δ

datek_app_utils/env_config/base.py
100.00% <100.00%> (ø)

datek_app_utils/log.py
100.00% <100.00%> (ø)

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


removed unnecessary semi-colon in C# example

@mattruma : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Reset password with invalid mask email. Unclear error message and HTTP status code 401

Description: According to the requirements when user sends a request to reset the password with an invalid format/mask email user should get a clear error message.
Step to reproduce:
Sent POST request as below:
curl --location 'http://<IP_ADDRESS>:8083/api/v1/auth/password/change'
--header 'Content-Type: application/json'
--data-raw '{
"email"<EMAIL_ADDRESS>"code": "123-123-123",
"password": "password12345"
}'
Expected result: "Email must be valid" and HTTP CODE = 400 ‘Bad request’
Actual result: "message": "User with id = null is not found.", and HTTP Status CODE = 401Unauthorized

@TetianaPerinha I Would like to take up this issue. The PR needs to be raised to the development branch right ?

hey @TetianaPerinha
I would like to pick this issue , would you please assign it to me

Hey @TetianaPerinha
The above change would also effect the  http://<IP_ADDRESS>:8083/api/v1/auth/password/forgot as internally both are using the same method that throws the same error.
Since it is the same case I think it should be valid to have this change for this api as well.
Attached below is the updated API response for the above.

Hey @TetianaPerinha The above change would also effect the http://<IP_ADDRESS>:8083/api/v1/auth/password/forgot as internally both are using the same method that throws the same error. Since it is the same case I think it should be valid to have this change for this api as well. Attached below is the updated API response for the above.

@Sunagatov Could you please review the details of this task?


Print comments correct in presence of extension points

Fixes https://github.com/facebook/reason/issues/1938

Boy you're on fire. Again, I'll let you self review. Ping me when you're done.

Done 😄It’s low hanging fruit

Thanks!!!


Misc fixes

Codecov Report

Merging #705 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #705   +/-   ##
=======================================
  Coverage   66.53%   66.53%
=======================================
  Files         280      280
  Lines        7184     7184
=======================================
  Hits         4780     4780
  Misses       2404     2404

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 c8de21a...e70a749. Read the comment docs.

@oliver---- can you check why node tests are failing (add reference again)? Browser tests are ok, but add reference are working very slooowly again...

@Integral It doesn't look like the tests are broken. The 'Silence' commit was running on Travis successfully. Only it seems that the github hook choked for whatever reason, and the result did not come back. So, I assume you are talking about your local setup.
But @michael you have broken the persistence test with the figure permission converter. I would like to have the test suite green if there is not a good reason to break it.

@oliver---- For me a master branch and this branch fails locally when I do npm test

@Integral then you need to fix your local installation, i.e. npm i. If that isn't working then wipe node_modules. npm is sometimes not updating node_modules properly - don't know why.
But in general, if your local version is not working, try to npm i and after that rm -rf node_modules && npm i .

@oliver---- I did try npm i of course. But rm -rf node_modules did the trick now. Thank you.

@oliver---- anyways, I was sure that it is still broken, so that's why I asked Michael to merge. Sorry about that.

No worries.

@Integral re performance: the source of the problem is that Metadata- and ManuscriptEditor are doing a full rerender, which seems to take a longer time. To improve that we will need to use refs and override automatic rendering at some places via shouldRerender(). But this is not critical, so let's wait a bit.


finer percentage on Gate offset?

Hey first of all I want to say you doing great work with the performer. I am enjoying it a lot.
the gate offset is great, but it would be much more useful for me if I could set finer percentage like 3% 6% or so.

I would have added more precision if there were no memory constraints. See, the STM32 comes with 192kb of RAM. I have 8 tracks, each with 16 patterns of 64 steps in a project (plus clipboard space, screen buffer and a lot of other data). I currently have a limit of 6 bytes per step, which gives a total of 81664*6=50kb just for the step sequence data. I'm thinking hard about every single bit I spend :) Also, I think the current resolution is great for sequences that have adequate tempo, like for drums. If you set a very high divisor, then of course the offset steps become larger as well. But it's just a tradeoff I had to make, sorry.

Thank you for this great sequencer! Personally i would give up the whole rerigger layer just to be able to have finer percentage on gate offset. No complains and i understand that it would mess the UI but i think from a musical perspective it would make a HUGE difference! Being able to randomize or program the gate offset with precision would be something else! I find that getting away from the time grid in a controlled manner just like musicians do playing their instruments would be a big leap forward.
Thank you for this awesome project

@napoleonthegreat94 how much additional precision would you need?

@westlicht i guess there are two different options, a step of 6.25 (16 steps per note) or a step of 8.35 (12 steps per note). These steps series would both go through 25,50,75 and 100 percent.
i think that a step of 6.25% would be best!
Thanks for the fast reply

so i saw another way to go about it, from colin benders on utube and thought to mention the idea here. you need only a lfo (or oscillator) an attenuator and one cv channel from the performer. the lfo is clock and feeds the clock in of the performer. the one channel from the performer is sequencing the clock-lfo in order to change the pulse length and effectively the feel and groove. attenuating the sequence of the clock can give great resolution on the timing . with reset out you can sync a second sequencer which doesnt have to share the same 'wonky' clock.


Bug in Scrutinizer causes files containing ellipsis to be skipped

Just sent them an e-mail about it:

I recently ran into what seems to be a bug in Scrutinizer's static code analysis. Consider any recent analysis log of the Fuel project, of which I'm a developer:

fuel/converters/svhn.py: Could not resolve type id '_ast.Ellipsis' into a subtype of [simple type, class com.scrutinizerci.worker.parser.python.PythonNode]
at [Source: java.io.StringReader@69b3fb71; line: 1, column: 53327]
fuel/datasets/hdf5.py: Could not resolve type id '_ast.Ellipsis' into a subtype of [simple type, class com.scrutinizerci.worker.parser.python.PythonNode]
at [Source: java.io.StringReader@176a14d9; line: 1, column: 187643]
fuel/converters/base.py: Could not resolve type id '_ast.Ellipsis' into a subtype of [simple type, class com.scrutinizerci.worker.parser.python.PythonNode]
at [Source: java.io.StringReader@53320946; line: 1, column: 36921]

> It seems that these are the files that contain Python's ellipsis object, i.e. they index an array using something like `x[..., 0]`. These files are completely ignored by the analysis right now.

@bartvm what's the status on this?


texlab: 2.2.1 -> 2.2.2

Motivation for this change
Upgrade to the latest version: https://github.com/latex-lsp/texlab/releases/tag/v2.2.2
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
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 nixpkgs-review --run "nixpkgs-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)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@doronbehar

Result of nixpkgs-review pr 108965 run on x86_64-linux 1

1 package built:

texlab

Result of nixpkgs-review pr 108965 run on x86_64-linux 1

1 package built:

texlab


/N masks now only trigger on nick change

masks ending in /N should trigger on both connect and nick change

closed by #46


Input not available.

I'm using C language using this app, and I'm trying to get input using scanf, but I keep getting weird output and I can't input at all. How do I get input through the terminal?

Hi. For languages that are executed externally (for example, C), you'll need to input before the execution.


Update request: python3Package.numpy 1.24.3 → 1.25.0

https://github.com/numpy/numpy/releases/tag/v1.25.0

Package name: numpy
Latest released version: 1.25.0

Current version on the unstable channel: 1.24.3
Current version on the stable/release channel:

[X] Checked the nixpkgs pull requests

Related PRs: https://github.com/NixOS/nixpkgs/pull/240152 & https://github.com/NixOS/nixpkgs/pull/240409 by @SuperSandro2000 .
Notify maintainers
@FRidh

Note for maintainers: Please tag this issue in your PR.

included in #244135


Add HTML format support for Email Alert Targets

isHtmlContent is an option in Email Alert Targets to add HTML boilerplate to the Email content. This option is by default disabled.

https://github.com/spaceapegames/terraform-provider-wavefront/pull/39

This includes a change in --> https://github.com/spaceapegames/go-wavefront

@louism517 @nathmclean Please review the changes.

@sanoojm Thanks for the PR, merged and released under v1.2.0


运行插件保存：unsupported operand type(s) for |: '_GenericAlias' and 'type'

11-20 01:42:27 [ERROR] nonebot | Failed to import "nonebot_plugin_colab_novelai"
Traceback (most recent call last):
File "E:\qqbot-nonebot\Nonebot\nb2\bot.py", line 28, in
nonebot.load_from_toml("pyproject.toml")
File "D:\python-software\lib\site-packages\nonebot\plugin\load.py", line 122, in load_from_toml
return load_all_plugins(plugins, plugin_dirs)
File "D:\python-software\lib\site-packages\nonebot\plugin\load.py", line 59, in load_all_plugins
return manager.load_all_plugins()
File "D:\python-software\lib\site-packages\nonebot\plugin\manager.py", line 168, in load_all_plugins
return set(
File "D:\python-software\lib\site-packages\nonebot\plugin\manager.py", line 169, in
filter(None, (self.load_plugin(name) for name in self.available_plugins))
File "D:\python-software\lib\site-packages\nonebot\plugin\manager.py", line 141, in load_plugin
module = importlib.import_module(name)
File "D:\python-software\lib\importlib_init_.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 986, in _find_and_load_unlocked
File "", line 680, in load_unlocked
File "D:\python-software\lib\site-packages\nonebot\plugin\manager.py", line 233, in exec_module
super().exec_module(module)
File "", line 855, in exec_module
File "", line 228, in call_with_frames_removed
File "D:\python-software\lib\site-packages\nonebot_plugin_colab_novelai_init.py", line 16, in
from .utils import chrome_driver, inject_image_to_state
File "D:\python-software\lib\site-packages\nonebot_plugin_colab_novelai\utils_init.py", line 1, in
from .webdriver import (
File "D:\python-software\lib\site-packages\nonebot_plugin_colab_novelai\utils\webdriver.py", line 14, in
from .distributed import PLUGIN_DIR
File "D:\python-software\lib\site-packages\nonebot_plugin_colab_novelai\utils\distributed.py", line 13, in
from ..config import plugin_config
File "D:\python-software\lib\site-packages\nonebot_plugin_colab_novelai\config.py", line 7, in
class Config(BaseModel, extra=Extra.ignore):
File "D:\python-software\lib\site-packages\nonebot_plugin_colab_novelai\config.py", line 22, in Config
nai_nsfw_tags: Optional[List[str] | str] = None
TypeError: unsupported operand type(s) for |: '_GenericAlias' and 'type'

Python版本的问题 下个更新会修复


Cannot find module doc-parser

I have error: Error: Cannot find module 'doc-parser'
Why?
P.S.
In html header:
<script src="vendor/npm-asset/doc-parser/dist/doc-parser.min.js"></script>
Code:
var DocParser = require('doc-parser');     var reader = new DocParser({        ...     });     var data = reader.parse(text);     console.log(data);

should work, it's packed with browserify.
Can you provide a sample code with codepen, it's maybe conflicting with another require module


Add status command to Redis SysV init script for RedHat.

This fixes change-detection on the "ensure redis is running" task. Currently it always reports "changed" because it can't detect whether Redis was running prior or not; with this change it correctly reports "ok" instead if Redis was already running.

@carljm Thanks for the contribution! I've been meaning to add these for a while now.
One enhancement I'd suggest is using Redhat's built in facilities for checking the status of a pidfile, which they provide via the status function in /etc/init.d/functions. This way, you'd get similar functionality by doing the following:
    status)
        status -p "${PIDFILE}" "redis_${REDIS_PORT}"
        ;;

Since we're already sourcing the functions file in the init script, I think this is the right way to do it. If you want to amend/add to your commits to use this way instead I'll be happy to merge this.

Done, thanks for the hint! Went ahead and added it to redis_sentinel as well, though I'm not personally using that. Let me know if there's anything else I can do.

@carljm Thanks... I meant to ask for you to get Sentinel too, but forgot. Way to read my mind. Merging this one.

Cool! Any idea when you plan to tag a new version?

@carljm just tagged 1.0.4

Sweet - sorry to keep harassing you, but is it easy to get the 1.0.4 version registered with galaxy.ansible.com? It seems to still only know about 1.0.3.

Just resynced it


Update release notes for 0.57.0 RC1

As title.

The text for this change is at: 4292afa

The text for this change is at: 4292afa

looks good so far


Move libp2p to a thread

Motivation

Allow network to perform time sensitive actions (gossip heartbeat, pings, etc) timely. DOS protection sandboxing resource spikes. See https://github.com/ChainSafe/lodestar/issues/4856

Goals

Merge first minimum viable solution, going for simplicity first and optimization latter
Allow libp2p to be run in main thread or worker by switching a runtime flag

Description
TBD
TODO

[ ] Wire metrics on libp2p worker
[ ] Connect NetworkEventBus through the worker boundary
[ ] Complete reqresp async iterables via events
[ ] Handle serialization/deserialization of req/resp across worker boundary
[ ] Move discv5 worker out of libp2p worker, and connect them via main thread

todo
Move discv5 worker out of libp2p worker, and connect them via main thread

why should this happen?

Can a worker spawn another worker?

@wemeetagain Can a worker spawn another worker?

Afaik yes

@wemeetagain regarding ReqResp

Split the ReqResp interface into two parts: IReqRespBeaconNodePeerManager only used by peer manager so never has to cross worker boundary. IReqRespBeaconNodeBeacon has to cross worker boundary. Shitty temp names, let's fix it latter.
Responses on IReqRespBeaconNodeBeaconBytes methods are kept encoded to be decoded only when in the main thread. That happens at the very top Network class to prevent code duplication with current hierarchy.
For handling async generators through worker boundary see AsyncIterableWorker which communicates all necessary signals

@dapplion I reviewed the changes majorly focused to the ReqResp changes. I found those changes well enough to understand and use able.

The points I can't understand is why this effort is been done with very particular focus on the network. I believe if for the planning phase, we should expand our focus to a higher level and answer few more questions.

Discuss which component can and can't be splitted?
Which of interfaces may be more easily vulnerable for DOS?
Which of interfaces are more impactful for a DOS attack?

We may definitely start with network, but then the focus for foreseeable future will be clear. e.g. I foresee the similar arguments for the Rest interface as well, but can't align how this refactor would enable us to do that next.

The network is the source of all untrusted and adversarial input so it holds the vast amount of the risk.
The other factor we're considering is minimal disturbance to existing interfaces, especially interfaces with consumers that rely on fast synchronous access. Most data access across threads will become async, if there is not some caching across threads or use of exotic techniques ala SharedArrayBuffer. So this another big consideration / constraint to think about when deciding what to split out and how. Third consideration would be codebase simplicity / maintainability and having a solid grasp of the cost/benefit of splitting out a module and how that splitting out relates to the rest of the codebase.
So the network is a natural candidate to split out first, with medium cost and high benefit. We can offload a lot of normal work and worst-case work from the main thread, and the network somewhat decoupled from need for fast access to our chain.  All connection management (esp in DoS cases), network crypto (handshakes, connection encryption/decryption), simple req/resp (ping, status, metadata) can be handled entirely off-main-thread.
My preference for further splitting is that we are careful to avoid splitting 'just because', and have a clear sense of the benefits.
IMO the next module that I see having clear benefit to split is backfill sync.

Rebased branch on current unstable with almost everything implemented and wired.
Pushed previous branch into backup branch to review if necessary https://github.com/ChainSafe/lodestar/compare/dapplion/network-thread-may1
CC @wemeetagain

Big remaining item is the logger in the thread

How to instantiate the logger with same settings?
Ignore file logging completely or duplicate transports?

CC @wemeetagain

:tada: This PR is included in v1.9.0 :tada: