Schema for definitions.yml file

Is your feature request related to a problem? Please describe.
When editing the definitions.yml file for Contextive, it is unclear what the structure and available keywords are.
When consuming a definitions.yml file, validation is done by Definitions.fs. If there are errors in the file, the validation fails with a "Definitions file is empty." error message.
Describe the solution you'd like
When editing the definitions.yml file for Contextive, editors with support for schemas should be able to be set up so a schema can be used. This would improve the editing experience by providing intellisense and validation while editing. See the screenshot in the "Additional context" section for an example of how this looks like in Visual Studio Code with the Red Hat YAML extension.
When consuming a definitions.yml file, it could be validated against a schema. In case of errors, more targeted error messages could be provided. It would also allow validation by third party consumers.
Describe alternatives you've considered
No alternatives have been considered so far.
Additional context

As you can tell from the screenshot, I wrote a first draft of the schema in https://github.com/FH-Inway/contextive/commit/cb0e5e5f045f76d2015bbf0ff65667ccac05cff9
To use it, add the following line to the definitions.yml file:
# yaml-language-server: $schema=contextive-schema.json
The contextive-schema.json part is the name of the schema file. It could also include a full or relative path or be a URL.
How to configure YAML schema to make editing files easier describes additional options how the schema can be made available. Using www.schemastore.org would be the most convenient option for the users, but would require a change in the naming schema of the file (e.g. definitions.contextive.yml).

Thanks @FH-Inway - this looks great!
Because of the need to update the file name, I think for now the simplest thing would be to update the initialize definitions custom operation to dump the schema file next to the definitions file and update the default definitions file to have the required header (and include other comments to guide people to documentation to install the right extension).
Regarding the use of schemastore - in a comment on #54 I was exploring some potential future changes to the configuration approach.
I've had some further thoughts since then, but they build on that comment, the general idea is:

Put each context in its own file (no longer offer a list of contexts), and to locate that file in the root folder of the context (not in a 'hidden' .contextive folder).
If a folder references multiple contexts, then allow the file to nominate to import a set of definitions from a location.  This could be a relative path, absolute path, or even a url (which would support some of the scenarios explored in #71

Since this would be a major breaking change, we have the opportunity to rename the file at that time and could look at adding it to schema store then.

Separate note - current behaviour is supposed to include a warning popup (and log) with a detailed error message about the failure including line and column...
There are a bunch of unit tests for this behaviour, so if it's only giving "file is empty" errors there might be an issue integration bug somewhere...

You are right, in some cases I get the warning popup with line and column numbers. Not quite sure how I got the "file is empty" error, will make sure to document repro steps next time I get it.
That said, a file that is accepted by Definitions.fs can still have errors and produce an ugly error message like in the screenshot. As the red squiggles indicate, the schema would have caught that.

Yes, that's a great example of where the file is parsable (valid yml), but not valid for contextive. While the schema definition helps for IDE tools, I feel like I should also take a look at validating against a schema in the language-server too, for cross-IDE support, and probably more helpful error messages than the parser error message.
Thanks again for putting this together!
I'll take a look at adding it in two stages:

Update the initializer:

dump the schema file next to the initialized definitions file
update the initialized definitions file to reference the adjacent schema
update documentation to guide folk to download the schema and how to use it/update existing defnitions files

Add a language-server schema validator using the schema

Later, when I look at #54 we'll update the file naming convention to support using schemastore as well.

Also added some backend validation here which addresses the specific case @FH-Inway found - an undefined term name.  All other fields are optional, so there is no other validation required at this point.
Further work to support auto-complete in the file will be done on future tickets, e.g. #54

Released on v1.12.0


Fixed typo

群集 => 集群

already ClA

already ClA

Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA.
It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.

If you've already signed a CLA, it's possible we don't have your GitHub username or you're using a different email address.  Check your existing CLA data and verify that your email is set on your git commits.
If you signed the CLA as a corporation, please sign in with your organization's credentials at https://identity.linuxfoundation.org/projects/cncf to be authorized.
If you have done the above and are still having issues with the CLA being reported as unsigned, please email the CNCF helpdesk<EMAIL_ADDRESS>

already CLA

/lgtm

/assign @xiangpengzhao

/ok-to-test

@adevjoe  Thank you for your initial contribution.
please sign the cla agreement, if you have signed, you can try typing I signed.

/hold
/lgtm
/approve

/approve

Now that the pr is built, all you need to do is sign the cla agreement.

I signed

obviously you need to sign the cla https://identity.linuxfoundation.org/projects/cncf.

/cla check

/cla check

/hold cancel


Have you taken a look at vtop?

https://github.com/MrRio/vtop
you guys should join forces :)

vtop looks cool, I will check it!


Strange exception when open swggaer doc -> TypeError('Injecting Any is not supported')

Hi! I am facing very strange behaviour when trying to open swgger doc provided by flask smorest.
When trying to open swagger page (http://<IP_ADDRESS>:5001/application/swagger-ui) application falls down with error TypeError('Injecting Any is not supported').
I have removed all bindings to make example more understandable and clear, so sources:
from flask import Flask
from flask.views import MethodView
from flask_injector import FlaskInjector
from flask_smorest import Api, Blueprint

healthcheck_blueprint = Blueprint("healthcheck", __name__, description="App status checking")

def setup_app_injector(flask_app: Flask) -> None:
    FlaskInjector(app=flask_app)

@healthcheck_blueprint.route("/healthcheck")
class HealthcheckView(MethodView):
    @healthcheck_blueprint.response(status_code=200)
    def get(self):  # type: ignore
        """Simple healthcheck"""

        return {"project": "test_injector"}

def create_flask_app() -> Flask:
    flask_app = Flask(__name__)

    class Config:
        OPENAPI_VERSION = "3.0.2"
        OPENAPI_URL_PREFIX = "/application"
        OPENAPI_SWAGGER_UI_PATH = "/swagger-ui"
        OPENAPI_SWAGGER_UI_VERSION = "3.24.2"
        OPENAPI_SWAGGER_UI_URL = "https://cdnjs.cloudflare.com/ajax/libs/swagger-ui/3.24.2/"
        OPENAPI_REDOC_PATH = "redoc"

    flask_app.config["API_TITLE"] = "test_injector"
    flask_app.config["API_VERSION"] = "v1"
    flask_app.config.from_object(Config)

    api = Api(app=flask_app)
    api.register_blueprint(healthcheck_blueprint, url_prefix="/application")

    setup_app_injector(flask_app=flask_app)

    return flask_app

app = create_flask_app()

def main() -> None:
    local_runtime_configuration: dict[str, int | bool] = {"port": 5001, "debug": True}
    app.run(**local_runtime_configuration)  # type: ignore[arg-type]

if __name__ == "__main__":
    main()

My pyproject:
[tool.poetry]
name = "test-injector"
version = "0.1.0"
description = ""
authors = []
readme = "README.md"
packages = [{include = "test_injector"}]

[tool.poetry.dependencies]
python = "^3.11"
flask = "2.2.3"
flask-smorest = "0.40.0"
injector = "0.20.1"
flask-injector = "0.14.0"

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"

Everything works fine if remove injector (comment line 40 setup_app_injector(flask_app=flask_app)).
Full trace:
Traceback (most recent call last):
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/injector/__init__.py", line 637, in get_binding
    return self._get_binding(interface, only_this_binder=is_scope or is_assisted_builder)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/injector/__init__.py", line 631, in _get_binding
    raise KeyError
KeyError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask/app.py", line 2551, in __call__
    return self.wsgi_app(environ, start_response)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask/app.py", line 2531, in wsgi_app
    response = self.handle_exception(e)
               ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask/app.py", line 2528, in wsgi_app
    response = self.full_dispatch_request()
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask/app.py", line 1825, in full_dispatch_request
    rv = self.handle_user_exception(e)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask/app.py", line 1823, in full_dispatch_request
    rv = self.dispatch_request()
         ^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask/app.py", line 1799, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask_injector/__init__.py", line 45, in wrapper
    return im(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask_smorest/spec/__init__.py", line 139, in _openapi_swagger_ui
    return flask.render_template(
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask/templating.py", line 147, in render_template
    return _render(app, template, context)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask/templating.py", line 130, in _render
    rv = template.render(context)
         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/jinja2/environment.py", line 1301, in render
    self.environment.handle_exception()
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/jinja2/environment.py", line 936, in handle_exception
    raise rewrite_traceback_stack(source=source)
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask_smorest/spec/templates/swagger_ui.html", line 18, in top-level template code
    url: "{{ url_for('api-docs.openapi_json') }}",
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/flask_injector/__init__.py", line 89, in wrapper
    return injector.call_with_injection(callable=fun, args=args, kwargs=kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/injector/__init__.py", line 999, in call_with_injection
    dependencies = self.args_to_inject(
                   ^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/injector/__init__.py", line 91, in wrapper
    return function(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/injector/__init__.py", line 1047, in args_to_inject
    instance: Any = self.get(interface)
                    ^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/injector/__init__.py", line 932, in get
    binding, binder = self.binder.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/injector/__init__.py", line 646, in get_binding
    binding = self.create_binding(interface)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/injector/__init__.py", line 560, in create_binding
    provider = self.provider_for(interface, to)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/dreamer/Projects/Development/test_injector/venv/lib/python3.11/site-packages/injector/__init__.py", line 571, in provider_for
    raise TypeError('Injecting Any is not supported')

For someone who facing similiar problem -> Add flasgger to provide openapi documentation to your application.

Hi, I am facing the same issue. According to my debugger it is related to the url_for method which 7th parameter **values has a type hint "t.Any". Were you able to find a workaround by chance?

Traceback (most recent call last):
File "/usr/local/lib/python3.8/dist-packages/injector/init.py", line 637, in get_binding
return self._get_binding(interface, only_this_binder=is_scope or is_assisted_builder)
File "/usr/local/lib/python3.8/dist-packages/injector/init.py", line 631, in _get_binding
raise KeyError
KeyError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.8/dist-packages/flask/app.py", line 2551, in call
return self.wsgi_app(environ, start_response)
File "/usr/local/lib/python3.8/dist-packages/flask/app.py", line 2531, in wsgi_app
response = self.handle_exception(e)
File "/usr/local/lib/python3.8/dist-packages/flask/app.py", line 2528, in wsgi_app
response = self.full_dispatch_request()
File "/usr/local/lib/python3.8/dist-packages/flask/app.py", line 1825, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/local/lib/python3.8/dist-packages/flask/app.py", line 1823, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/local/lib/python3.8/dist-packages/flask/app.py", line 1799, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
File "/home/bartolomeo/aeh/zjo-pwa/APZ-CeneoScrapper/flask_app/app/services/decorators.py", line 15, in decorated_function
return func(*args, **kwargs)
File "/home/bartolomeo/aeh/zjo-pwa/APZ-CeneoScrapper/flask_app/app/controllers/accounts/routes.py", line 53, in login
return render_template("accounts/login.html", form=form)
File "/usr/local/lib/python3.8/dist-packages/flask/templating.py", line 147, in render_template
return _render(app, template, context)
File "/usr/local/lib/python3.8/dist-packages/flask/templating.py", line 130, in _render
rv = template.render(context)
File "/usr/local/lib/python3.8/dist-packages/jinja2/environment.py", line 1301, in render
self.environment.handle_exception()
File "/usr/local/lib/python3.8/dist-packages/jinja2/environment.py", line 936, in handle_exception
raise rewrite_traceback_stack(source=source)
File "/home/bartolomeo/aeh/zjo-pwa/APZ-CeneoScrapper/flask_app/app/templates/accounts/login.html", line 1, in top-level template code
{% extends "base.html" %}
File "/home/bartolomeo/aeh/zjo-pwa/APZ-CeneoScrapper/flask_app/app/templates/base.html", line 13, in top-level template code
{% include "navigation.html" %}
File "/home/bartolomeo/aeh/zjo-pwa/APZ-CeneoScrapper/flask_app/app/templates/navigation.html", line 21, in top-level template code
Login
File "/usr/local/lib/python3.8/dist-packages/flask_injector/init.py", line 89, in wrapper
return injector.call_with_injection(callable=fun, args=args, kwargs=kwargs)
File "/usr/local/lib/python3.8/dist-packages/injector/init.py", line 999, in call_with_injection
dependencies = self.args_to_inject(
File "/usr/local/lib/python3.8/dist-packages/injector/init.py", line 91, in wrapper
return function(*args, **kwargs)
File "/usr/local/lib/python3.8/dist-packages/injector/init.py", line 1047, in args_to_inject
instance: Any = self.get(interface)
File "/usr/local/lib/python3.8/dist-packages/injector/init.py", line 932, in get
binding, binder = self.binder.get_binding(interface)
File "/usr/local/lib/python3.8/dist-packages/injector/init.py", line 646, in get_binding
binding = self.create_binding(interface)
File "/usr/local/lib/python3.8/dist-packages/injector/init.py", line 560, in create_binding
provider = self.provider_for(interface, to)
File "/usr/local/lib/python3.8/dist-packages/injector/init.py", line 571, in provider_for
raise TypeError('Injecting Any is not supported')
TypeError: Injecting Any is not supported

@M1LKYWVYs @Bartolomeo624
Workaround: clear the type hints, which cause the problem, add Flask.url_for.__annotations__ = {} before app = Flask(...)
I tried Flask.url_for = noninjectable(Flask.url_for, ...) but it seems not working as expected. I get TypeError: too many positional arguments

@wsz Worked perfectly for this error using apiflask. Thank you!

No update on this issue? =/

Any updates on this issue? Meet the same issue: TypeError: Injecting Any is not supported when trying to render_template even though I did not add @inject annotation on that blueprint.


feat: graduate TaintNodesByCondition to GA

ref: https://github.com/kubernetes/enhancements/issues/382

/assign @k82cn @bsalamat

/lgtm
/approve

/cc @daminisatya

/assign

Technical review completed by @k82cn.  Thanks Klaus!
Overall looks good
/lgtm
/approve

/milestone 1.17

/lgtm


Running on tensorflow-serving

I want to run on trained-models on tensorflow-serving.
Though I could save as pb-model by SavedModelBuilder, I couldn't run on tensorflow-serving with following message.

E tensorflow_serving/util/retrier.cc:37] Loading servable: {name: *** version: 1} failed: Invalid argument: No OpKernel was registered to support Op 'PyFunc' used by {{node Tacotron_model/PyFunc}}with these attrs: [token="pyfunc_0", _output_shapes=[], Tin=[DT_INT32, DT_INT32], Tout=[DT_INT32]]

This message maybe express  which is 'tf.py_func' in tacotron/models/tacotron.py
How can I rewrite the code without 'tf.py_func'?
Thank you!

solved!

can you share how you solved this issue?

+1

Yes, can you please share how you exported this?

can u share the export savedmodel code？


Improved error messages

Feature Request
Is your feature request related to a problem? Please describe:

Stack traces in error messages. When I get it an error, it would help with debugging to print the stack trace of references, instead of just the one line error.

Additional debugging tools, like adding a flag to print all contents (including contents that contains errors), ie:

result = {
   field1: `error: invalid reference: 'a' does not exist`
   field2: 10
}

Hi @steeling . Thank you for your feedback.

You can use the cli flag to show the stack trace, ref: https://kcl-lang.io/blog/2022-kcl-0.5.0-release-blog/#runtime-backtrace-output
We have the debug tool issue to track this: #188 and I will close this issue to avoid repetition. If needed, you can add more detailed information there.

thanks for the tip, and thanks for all your quick replies and help @Peefy!


Network Speed Monitor

Description of the new feature / enhancement
Can we have a network speed monitor Taskbar widget?

It should be able to show upload and download speed of the current connection and a vpn icon if VPN is connected.
Further, it can store network connection stats in a local sqlite database and expose this information to other apps to determine and adapt as per network capacity.

Scenario when this would be used?

For general user, a feature and a quick view to diagnose network connectivity.
For apps/developers, network data of the user for adapting their apps for better experiences.

Supporting information
No response

/dup #828


Allow add_subplot and use add_subplot for projection handling

This will allow add_subplot to be used by users. Basic idea will be that, because we want one single gridspec for the whole axes, the user can generate a naked figure with f = plot.figure(), then the first call to add_subplot will set the geometry, and subsequent calls have to match that geometry.
I don't really like the workflow of calling add_subplot 10 times instead of just f, axs = plot.subplots(...), but it may be more readable for really complex axes or especially when users want complex combinations of different projections.
I think it also makes more sense to implement "axes projection handling" in add_subplot instead of in subplots.

I think this is helpful too in the case that you don't have M x N axes to plot. I.e., the number of axes doesn't evenly divide into a square or rectangle. I've had to do this before, but I can't remember why.
A good example would be if you're doing small multiples of some region or global variable over multiple decades. The 2010s row wouldn't fill all the way out.

@bradyrx This is actually already a feature -- see the subplots "array" keyword arg. Used in the examples from this section.
That's why I felt comfortable doing away with non-f, axs = plot.subplots() workflows, because subplots supports arbitrary layouts. Probably still a good idea though to let the user decide though, some people are much more used to the add_subplot workflow.

Oh, I see what you meant now. This is also an array feature: Just put a 0 in the array where you don't want to draw any axes.

This is coming along nicely. The next major change will be to allow GridSpec class to accept left, right, wspace, etc. in physical units. Previously this was relegated to subplots() but now that subplots() is not the only way to make figures, that doesn't make sense / caused a bunch of complications.

This turned out to be really complicated. Modifying the gridspec algorithm to work with physical units is simple -- I just need to fix GridSpec.get_grid_positions() (still not done yet). The issue is in letting users manipulate their own GridSpec objects and letting users pass gridspec spacing values to plot.figure() before the gridspec is necessarily created.
I needed to mimic the matplotlib approach of specifying default gridspec spacing on the figure with Figure.subplots_adjust and matplotlib.figure.SubplotParams, then allowing proplot.GridSpec spacing values that were not explicitly specified to inherit from the figure at draw-time. I made a geometry_configurator class to handle this. The class also does the various other figure layout calculations that were previously in ~10 hidden Figure methods. It's a much better cleaner I think, and keeps me from having to pollute the Figure with a ton of hidden methods.
However the next big issue is that when colorbars, legends, and axes panels are created, they secretly "insert a new column or row" by destroying the existing gridspec and create a new one. This means if users keep using the GridSpec object after adding a figure panel or something, its geometry is different from the figure gridspec, and an error will be raised (or if I didn't raise one, shit would get weird). There are two approaches to this.

Incorporate "panel" rows and columns into the definition of GridSpec itself. But then we regress back to having GridSpec.__getitem__ obfuscate the "true" underlying gridspec dimensions and things generally get messy.
Use #46 -- stop drawing "panels" inside the GridSpec, and just draw them as "parasites" inside the space between primary subplots. This is less messy but more laborious -- it will require redesigning the "tight layout" algorithm to work with stacked parasite objects, figuring out how to lock them to main axes (probably similar to how "inset" axes are locked to main axes), and figuring out how to lock their physical widths. Basically will need to dive into transforms/bounding boxes more deeply -- I can also have to be smarter about the artists included in the respective Axes/Figure tight layout calculations.

I'm leaning toward #2. It's sad that that I spent so much time working to implenent panels as part of the main gridspec rather than this "parasite" axes stuff... but I think this will eliminate the last really "hacky" part of proplot and is an important step to making this a real, robust matplotlib extension. Will just take some time.

This branch has a ways to go but I'm going to try to finish #47 first so I can finally allow contributors.

For permitting colorbars, legends, and text along arbitrary contiguous axes, I can write a helper function that accepts lists of subplots and makes sure their right/left/top/bottom edges are in alignment.

When you call axes_grid([...]).colorbar(...) or axes_grid([...]).legend(...), it will pass the axes in the container to this hidden method.
When you call Figure.colorbar(...) or Figure.legend(...), it will select the subplots lying along the figure edge and pass them to the hidden method.

#47 is done so this is now the priority again. Though I might take some time off (or at least scale way back) to work on a paper.

For implementing colorbars/legends/panels as "parasite axes", there is some existing similar code for this in the axes_grid1 toolkit. I could borrow this code so that panel, colorbar, and legend long-axis coordinates are automatically updated when subplot positions change.
There are several advantages here.

Panels in the same row or column no longer have to be the same width, which can be a problem when you have legends + colorbars alongisde each other.
It would be relatively straightforward to implement an axes_grid legend, colorbar, and text methods that draw legends and colorbars or labels along the sides of arbitrary contiguous axes, instead of just along the figure edge.
We would no longer have to modify the underlying gridspec when inserting panels. Could delete the cumbersome Figure._insert_rows_columns function.
Legends no longer have to belong to an empty, dummy axes -- we can just lock the legend position.
Colorbars no longer have to belong to empty, dummy axes to extend them along <100% of the axes -- we just adjust the parent-relative long axis coordinates. This also eliminates all references to GridSpecFromSubplotSpec, which proplot's GridSpec tries to make obsolete.
We can now implement rowlabels and collabels with the same API, allow "stacking" arbitrary outer text objects just like colorbars/legends/panels.

The difficulty is that I have to figure out how to specify axes bounds so that their long axis is locked to another axes (probably similar to the inset_axes locator) and their short axes has locked physical width (i.e. is not in physical units). Also, currently, the tight_layout algorithm works to separate panels and subplots alike by just inspecting axes in adjacent rows/columns of the gridspec. With this PR, an additional step in the algorithm that separates "stacked" objects will have to be written.


⚠ Bofrost.fr has degraded performance

In ee16135, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1062 ms

Resolved: Bofrost.fr performance has improved in e94aebe after 6 minutes.


Error message debconf: delaying package configuration, since apt-utils is not installed

Thanks for the file.
It successfully built but I get the following error when I run docker build --tag alexwlchan/texlive ..

debconf: delaying package configuration, since apt-utils is not installed

Any idea?

A quick Google search for that error message turns up a similar issue, where somebody recommends adding this to the Dockerfile:
RUN apt-get update && apt-get install -y --no-install-recommends apt-utils


Add bucks to sample data

create_sample_data.rake is getting very large and unruly. I was thinking this might be a good opportunity to refactor it a bit. Is there any way of DRYing it up a bit? Can we wrap more of it in the local_authorities.each block?

If we need a bit of customisation, maybe we can create an array of hashes, eg:
[{local_authority: southwark, ward: 'Dulwich Wood', address_1: '90A College Road'}].each do |authority_information|

If we need a bit of customisation, maybe we can create an array of hashes, eg:
[{local_authority: southwark, ward: 'Dulwich Wood', address_1: '90A College Road'}].each do |authority_information|

Each local authority needs specific sample data so the local authority would not be the point where we can refactor. We could probably refactor with the planning_applications instead, but again each of them has addresses specific to each council.
We should instead split the data by council into separate files, and have create_sample_data call those files. So have this task call the separate files.
I don't see how a hash could uncomplicate things to be honest, the data does need to be all different - what would be the benefit of the hash? Its not a matter of speed but readability right?


[pyftsubset] Failing on variable font when using ignore-missing-glyphs

I am trying to subset sourceSansPro Variable font using the subsets I have used in the past but they require --ignore-missing-glyphs to be set as I have set wide ranges in some cases. When I set ignore-missing-glyphs the woff files come out at 2kb every time. If I use a reduced subset without ignore-missing-glyphs I get a larger file (9kb)
Outputs 2kb file:
pyftsubset SourceSansVariable-Roman.ttf.woff –unicodes="U+0020-007F,U+00A0-00FF,U+02B0-02FF,U+0300-036F" --ignore-missing-glyphs --layout-features="" --flavor="woff"
Outputs 9kb file:
pyftsubset SourceSansVariable-Roman.ttf.woff –unicodes="U+0020,U+0041-005A,U+0061-007A" --layout-features="" --flavor="woff"

The option --ignore-missing-glyphs is meant to be used with either --glyphs or --gids option (that is, with inputs as either glyph names or glyph indexes).
You are using --unicodes as inputs. By default the subsetter will --ignore-missing-unicodes, unless you tell it not to (with --no-ignore-missing-unicodes).
The command you want is this, without the --ignore-missing-glyphs option:
fonttools subset SourceSansVariable-Roman.ttf --unicodes="U+0020-007F,U+00A0-00FF,U+02B0-02FF,U+0300-036F" --layout-features="" --flavor="woff"

Also I wouldn't recomment to use --layout-features="", as that drops all layout features, including features that may be required for correct shaping such as ccmp, locl (in GSUB), or mark, mkmk, kern (in GPOS).
Do fonttools subset --layout-features=? to see the list of features that are kept by default.
If you want to remove some unneeded feature from that default list (e.g. frac, numr, dnom), you can pass --layout-features-=frac,numr,dnom (note the -= symbol)

@anthrotype Thank you for the help. The above worked for the first subset I needed to create (I got a 25kb file out), but it fails on all the other subsets I need to create with the following stack trace. Any ideas what I'm doing wrong?
fonttools subset SourceSansVariable-Roman.ttf --unicodes="U+0100-024F" --layout-features="" --flavor="woff" --with-zopfli
Traceback (most recent call last):
  File "c:\program files (x86)\python37-32\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\program files (x86)\python37-32\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Program Files (x86)\Python37-32\Scripts\fonttools.exe\__main__.py", line 9, in <module>
  File "c:\program files (x86)\python37-32\lib\site-packages\fontTools\__main__.py", line 28, in main
    runpy.run_module(mod, run_name='__main__')
  File "c:\program files (x86)\python37-32\lib\runpy.py", line 208, in run_module
    return _run_code(code, {}, init_globals, run_name, mod_spec)
  File "c:\program files (x86)\python37-32\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "c:\program files (x86)\python37-32\lib\site-packages\fontTools\subset\__main__.py", line 6, in <module>
    sys.exit(main())
  File "c:\program files (x86)\python37-32\lib\site-packages\fontTools\misc\loggingTools.py", line 367, in wrapper
    return func(*args, **kwds)
  File "c:\program files (x86)\python37-32\lib\site-packages\fontTools\subset\__init__.py", line 2891, in main
    subsetter.subset(font)
  File "c:\program files (x86)\python37-32\lib\site-packages\fontTools\subset\__init__.py", line 2693, in subset
    self._closure_glyphs(font)
  File "c:\program files (x86)\python37-32\lib\site-packages\fontTools\subset\__init__.py", line 2512, in _closure_glyphs
    raise self.MissingGlyphsSubsettingError(self.glyphs_missing)
fontTools.subset.MissingGlyphsSubsettingError: {'-–unicodes=U+0100-024F'}

that's very weird, I just tried and it worked for me..
fonttools subset SourceSansVariable-Roman.ttf --unicodes="U+0100-024F" --layout-features="" --flavor="woff" --with-zopfli

I'm on macOS, I see you are using Windows. I don't understand why you would get that error. It looks like as if the subsetter command line parsing is misunderstanding your --unicodes= option with glyph names passed in as positional argument.
Can you please upload the font file you are using and the exact command line you are running, along with info about python version and OS name and version?
I hope somebody with access to a Windows machine can help you out.

Font file is available here:
https://github.com/adobe-fonts/source-sans-pro/blob/release/VAR/SourceSansVariable-Roman.ttf
The command that does work for me is:
fonttools subset SourceSansVariable-Roman.ttf --unicodes="U+0020-007F,U+00A0-00FF,U+02B0-02FF,U+0300-036F" --layout-features="" --flavor="woff" --with-zopfli
The ones that are failing:
fonttools subset SourceSansVariable-Roman.ttf -–unicodes="U+0100-024F" --layout-features="" --flavor="woff" --with-zopfli
fonttools subset SourceSansVariable-Roman.ttf -–unicodes="U+20A0-20BF" --layout-features="" --flavor="woff" --with-zopfli
fonttools subset SourceSansVariable-Roman.ttf -–unicodes="U+2010-204F,U+2070-209F,U+2150-218F" --layout-features="" --flavor="woff" --with-zopfli
fonttools subset SourceSansVariable-Roman.ttf –-unicodes="U+0250-02AF,U+0370-03EF,U+0400-047F,U+0490-04FF,U+1D40-1D5F,U+1D90-1DBF,U+1E00-1E6F,U+1E80-1FFF,U+2110-212F,U+2190-231F,U+2E20-2E3F" --layout-features="" --flavor="woff" --with-zopfli

OS - Windows 10
Python version - 3.7.3

FWIW: I just ran all these commands on Win 10 with the latest fonttools (4.8.1), using Python 3.8.2, and none of them fail.

@justvanrossum I'll try updating python and see if that makes a difference. Very odd

Updated Python so now running Python 3.8.2 and fonttools 4.8.1 and its still blowing up

@anthrotype @justvanrossum Sorry guys found the issues. Somehow a rogue endash/emdash crept in which I couldn't see in notepad or powershell. Working now. Thank you

Ha! No problem, I'm glad you managed to solve it :)


zoom(z, x, y)

Would be nice to have the zoom origin point.

This was fixed in the latest release. :ship: 2.4.0 :tada:


Feature Extraction

In Sherpa, features are extracted with Kaldifeat and it is dependent on Torch. How can I calculate fbanks without Kaldifeat? Should I use kaldi scripts? To give fbanks to onnx model, I should obtain inputs as std::vector<float> like
size_t feature_size = 1 * 600 * 80;    // TODO: dynamic shape
std::vector<float> features(feature_size);
std::vector<int64_t> feature_dims = {1, 600, 80};

size_t feature_length_size = 1;
std::vector<int64_t> features_lengths = {600}; // TODO: dynamic shape
std::vector<int64_t> feature_length_dims = {1};

std::vector<const char*> output_node_names = {"encoder_out"};

// create input tensor object from data values
auto memory_info = Ort::MemoryInfo::CreateCpu(OrtArenaAllocator, OrtMemTypeDefault);

Ort::Value feature_tensor = Ort::Value::CreateTensor<float>(memory_info, features.data(), feature_size, feature_dims.data(), 3);
Ort::Value feature_tensor_length = Ort::Value::CreateTensor<int64_t>(memory_info, features_lengths.data(), feature_length_size, feature_length_dims.data(), 1);

You can use
https://github.com/csukuangfj/kaldi-native-fbank/blob/master/kaldi-native-fbank/csrc/test-online-fbank.cc
as an example.

I am looking now, thank you.

Shall I write the CMakeLists.txt in sherpa-onnx to show how to introduce it into sherpa-onnx?

It would be very good.

ok, I am writing one.

@EmreOzkose
I just added one via #3
Please use
git clone https://github.com/k2-fsa/sherpa-onnx
cd sherpa-onnx
mkdir build
cd build
cmake ..
make -j

./bin/online-fbank-test

Okey, thank you.


fix: cordova androidx build [SI-869]

to fix android.support.v7 errors on Capacitor
Should be merged after capacitor migration
https://github.com/Telerik-Verified-Plugins/ImagePicker/issues/236
https://github.com/ionic-team/capacitor/issues/2289

I think I missed a step here... Why is this fix targeting master? 🤔

I think I missed a step here... Why is this fix targeting master? 🤔

@quentin-tardivon - this is an ImagePicker library fork. We don't need a special capacitor branch here
What branch should it be targeting?

@quentin-tardivon - this is an ImagePicker library fork. We don't need a special capacitor branch here
What branch should it be targeting?

@quentin-tardivon - this is an ImagePicker library fork. We don't need a special capacitor branch here
What branch should it be targeting?

Yes sorry, I didn't paid attention to the repo 🤭

@quentin-tardivon - this is an ImagePicker library fork. We don't need a special capacitor branch here
What branch should it be targeting?

Yes sorry, I didn't paid attention to the repo 🤭

Since I'll add jetifier to our postinstall step, we may not need this fork anymore.

Since I'll add jetifier to our postinstall step, we may not need this fork anymore.

jetifier has been added. This PR may be obsolete

Closing it since we use Jetifier for File opener, but it fixes paths everywhere


Enable the correct DBGMCU settings for STM32H7

The STM32H7 has a different DBGMCU register than other STM parts.
Both the address and fields are different.
When enabling ITM, the current code does not consider this and does not activate the right options.
Currently it's done here: https://github.com/probe-rs/probe-rs/blob/master/probe-rs/src/architecture/arm/component/mod.rs#L89

One issue with fixing this is that it introduces manufacturer and series specific code. This is something that has been mostly avoided up until now.
Relevant open issues I can find:
#318
#350
#394
There's certainly a need for specific code, so the question becomes how this can be done cleanly.


[New Theme Request] GAPS

GAPS is a companion to Radarr that checks which movies are part of TMDB collections that are not in your Radarr, then generates an RSS feed that can be used as an import list for Radarr. It's got a docker container and is limited to only 6 pages
https://github.com/JasonHHouse/gaps

Added


Prototype script

Adding new viper.js file for determining environment and launching utag.js file

I think we should probably switch over to using ES6 and Babel. Also, can't approve the pull request without any tests. Especially if it's not attaching into "gulp travis"

I’d like to see some documentation added to the README for implementation guide style stuff before we pull this in.

:+1:

:+1:

Time to :shipit:


Pipeline module name is too common

Hi,
It looks like this package module name is too common. For example there is already another package in Debian that uses "pipeline" module name:
http://packages.debian.org/sid/python-pipeline
http://code.google.com/p/python-pipeline/
While I understand that asking for rename is not very good thing to do, I still want to ask for some suggestions, is it possible at all, or how this can be handled other way?

Debian have closed the bug report on their end, because python-pipeline is no longer maintained. That means we can close it here too.


feat: 5639 - storing the latest selected product type

What

There is a "product type" filter in the search page.
The value of this filter wasn't kept for the next search. Now it is.

Fixes bug(s)

Closes: #5639

Impacted files

search_product_helper.dart: initialized and set the latest selected product type
user_preferences.dart: new preference field where we store the latest selected product type

Codecov Report
Attention: Patch coverage is 0% with 11 lines in your changes missing coverage. Please review.

Project coverage is 7.01%. Comparing base (4d9c7fc) to head (2214f7f).
Report is 398 commits behind head on develop.

Files with missing lines
Patch %
Lines

.../lib/data_models/preferences/user_preferences.dart
0.00%
7 Missing :warning:

...th_app/lib/pages/search/search_product_helper.dart
0.00%
4 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           develop   #5752      +/-   ##
==========================================
- Coverage     9.54%   7.01%   -2.54%
==========================================
  Files          325     407      +82
  Lines        16411   21813    +5402
==========================================
- Hits          1567    1530      -37
- Misses       14844   20283    +5439

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

Thank you @teolemon  for your review!


Fix python error when working with non-ascii characters in path

This is a recurrent error when working in non-english local system. Non-ascii charaters in the path to the catkin workspace make the cmake execution fail :
File "/home/moinel/éàç/src/visual_actimetry_msgs/build/devel/_setup_util.py", line 262
SyntaxError: Non-ASCII character '\xc3' in file /home/moinel/éàç/src/visual_actimetry_msgs/build/devel/_setup_util.py on line 262, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

It is maybe worth specifying utf-8 encoding to every python script.

+1

It is maybe worth specifying utf-8 encoding to every python script.

I would agree, but further scope the statement to "every templated python script".

I add utf-8 encoding to 3 others templated python script.
I don't know catkin and python well enough to figure out if the others templated python scripts need encoding too. I can do the change if someone confirms.

:+1:

Thank you for the PR. Squashed and merged in 1b90e571b6683bb2175236b91b3d823debc72161


Add Cell-like types interface

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

Project coverage is 90.33%. Comparing base (4cab887) to head (b70a7b9).

Additional details and impacted files
@@           Coverage Diff           @@
##             main       #6   +/-   ##
=======================================
  Coverage   90.33%   90.33%
=======================================
  Files          31       31
  Lines        4480     4480
=======================================
  Hits         4047     4047
  Misses        433      433

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


3.7.1 android error

Manifest merger failed : Attribute service#io.agora.rtc.ss.impl.LocalScreenSharingService@exported value=(true) from AndroidManifest.xml:69:9-32
	is also present at [io.agora.rtc:full-screen-sharing:<IP_ADDRESS>] AndroidManifest.xml:23:13-37 value=(false).
	Suggestion: add 'tools:replace="android:exported"' to <service> element at AndroidManifest.xml:68:7-75:17 to override.

is it working by remove the tag from your project?

because the latest version has fixed the export issue.


Article: Add a polygon extrusion layer to the map: Grammar and end-links.

Per prior arrangement, if this PR needs approval, or if the commits need to be pulled into the private repo, only @eriklindeman should be notified. Thanks.

@dubiety

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

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

#sign-off

#sign-off


closing commit_editor with kind = "vsplit" causes error

Description
setting commit_editor = { kind = "vsplit" } in neogit setup causes an error when closing the commit editor
Error executing vim.schedule lua callback: vim/_editor.lua:0: nvim_exec2(): Vim(buffer):E86: Buffer 6 does not exist
stack traceback:
        [C]: in function 'nvim_exec2'
        vim/_editor.lua: in function 'cmd'
        .../.local/share/nvim/lazy/neogit/lua/neogit/lib/buffer.lua:206: in function <.../.local/share/nvim/lazy/neogit/lua/neogit/lib/buffer.lua:205>

does not occur if show_staged_diff = false or if closing via :q or <C-w>q
Neovim version
NVIM v0.10.0
Build type: Release
LuaJIT 2.1.1693350652
Operating system and version
NixOS 24.11.20240524.bfb7a88 and macOS 14.5
Steps to reproduce

run nvim -nu minimal.lua in a git repo
:Neogit
cc
close commit editor with q, <C-c><C-c> or <C-c><C-k>

Expected behavior
commit_editor and diff view close without error
Actual behavior
errors and only commit editor closes
Minimal config
-- NOTE: See the end of this file if you are reporting an issue, etc. Ignore all the "scary" functions up top, those are
-- used for setup and other operations.
local M = {}

local base_root_path = vim.fn.fnamemodify(debug.getinfo(1, "S").source:sub(2), ":p:h") .. "/.min"
function M.root(path)
  return base_root_path .. "/" .. (path or "")
end

function M.load_plugin(plugin_name, plugin_url)
  local package_root = M.root("plugins/")
  local install_destination = package_root .. plugin_name
  vim.opt.runtimepath:append(install_destination)

  if not vim.loop.fs_stat(package_root) then
    vim.fn.mkdir(package_root, "p")
  end

  if not vim.loop.fs_stat(install_destination) then
    print(string.format("> Downloading plugin '%s' to '%s'", plugin_name, install_destination))
    vim.fn.system({
      "git",
      "clone",
      "--depth=1",
      plugin_url,
      install_destination,
    })
    if vim.v.shell_error > 0 then
      error(string.format("> Failed to clone plugin: '%s' in '%s'!", plugin_name, install_destination),
        vim.log.levels.ERROR)
    end
  end
end

---@alias PluginName string The plugin name, will be used as part of the git clone destination
---@alias PluginUrl string The git url at which a plugin is located, can be a path. See https://git-scm.com/book/en/v2/Git-on-the-Server-The-Protocols for details
---@alias MinPlugins table<PluginName, PluginUrl>

---Do the initial setup. Downloads plugins, ensures the minimal init does not pollute the filesystem by keeping
---everything self contained to the CWD of the minimal init file. Run prior to running tests, reproducing issues, etc.
---@param plugins? table<PluginName, PluginUrl>
function M.setup(plugins)
  vim.opt.packpath = {}                      -- Empty the package path so we use only the plugins specified
  vim.opt.runtimepath:append(M.root(".min")) -- Ensure the runtime detects the root min dir

  -- Install required plugins
  if plugins ~= nil then
    for plugin_name, plugin_url in pairs(plugins) do
      M.load_plugin(plugin_name, plugin_url)
    end
  end

  vim.env.XDG_CONFIG_HOME = M.root("xdg/config")
  vim.env.XDG_DATA_HOME = M.root("xdg/data")
  vim.env.XDG_STATE_HOME = M.root("xdg/state")
  vim.env.XDG_CACHE_HOME = M.root("xdg/cache")

  -- NOTE: Cleanup the xdg cache on exit so new runs of the minimal init doesn't share any previous state, e.g. shada
  vim.api.nvim_create_autocmd("VimLeave", {
    callback = function()
      vim.fn.system({
        "rm",
        "-r",
        "-f",
        M.root("xdg")
      })
    end
  })
end

-- NOTE: If you have additional plugins you need to install to reproduce your issue, include them in the plugins
-- table within the setup call below.
M.setup({
  plenary = "https://github.com/nvim-lua/plenary.nvim.git",
  telescope = "https://github.com/nvim-telescope/telescope.nvim",
  diffview = "https://github.com/sindrets/diffview.nvim",
  neogit = "https://github.com/NeogitOrg/neogit"
})
-- WARN: Do all plugin setup, test runs, reproductions, etc. AFTER calling setup with a list of plugins!
-- Basically, do all that stuff AFTER this line.
require("neogit").setup({
    commit_editor = {
        kind = "vsplit",
    }
}) -- For instance, setup Neogit

duplicate of https://github.com/NeogitOrg/neogit/issues/1347


Cordova Webworkers

I have run across an issue with webworkers and cordova...
The webworker does not have access to the Cordova object.
Therefore the following error is returned:
Uncaught Error: You can use exists() only in Node.js or Apach Cordova
If you include cordova using
alasql.worker('alasql.js', ['cordova.js']);
It causes the error:
Uncaught Error: You can use exists() only in Node.js or Apach Cordova
Uncaught ReferenceError: window is not defined(anonymous function)
XMLHttpRequest cannot load . Can't create DocumentThreadableLoader

Please use the last version of the library. You are including version 1.9

OMG - im so sorry - I answered the wrong question on my phone.
I will have to look into cordova and webworkers to see if I can replicate the problem and work on it.
Do you have some code to get cordoca up and running with alasql? I have never worked with it before...


refactor: address linting suggestions

[x] remove unused imports
[x] remove unnecessary f-strings
[x] remove use of in with literals
[x] add doc string and type hinting support to pytorch_sentiment_analysis notebook
[x] use magic command for %pip to make sure packages are installed within the current kernel.
[x] use lazy concatenation for loggers

@iamfaisalkhan I reverted the output of the notebook.   Would it make sense to have docker support to make it possible to have reproducible notebook runs, that way it's not tied to a users specific setup?
If you are open, I can do a devcontainer, which github also supports,  setup or we can just have a simple dockerfile as an alternative seperate from this pr.
What do you think @iamfaisalkhan?

@iamfaisalkhan I reverted the output of the notebook. Would it make sense to have docker support to make it possible to have reproducible notebook runs, that way it's not tied to a users specific setup?
If you are open, I can do a devcontainer, which github also supports, setup or we can just have a simple dockerfile as an alternative seperate from this pr.
What do you think @iamfaisalkhan?

That's a good idea. Open to either devcontainer or Docker file in a separate PR. The These changes look good to me.


Adds a coverity model file, and excludes a stat() check

This also undoes a previous change, that hopefully the new model rule
will take care of (instead of nesting the if/else).

[approve ci]

[approve ci]

[approve ci]

One more try .. [approve ci]

@zwoop would Coverity be OK with this if you just added a TS_NORETURN to my_exit()?

[approve ci]

I have no idea... it's difficult to iterate over things... The Model file change worked though, but we can try the noreturn too.

[approve ci]


Presentation Exchange: relational constraints feature

Support for https://identity.foundation/presentation-exchange/#relational-constraint-feature

Without spec revision both is_holder and same_subject constraints are not able to be implemented. See: https://github.com/decentralized-identity/presentation-exchange/issues/259#issuecomment-1506186887
Will leave this open to track.

Uptake of new properties outlined here https://github.com/decentralized-identity/presentation-exchange/pull/378


Issue event context to include exception status code

Currently, issue events do not show status codes.
Add this information as context/tags to the issue event.

@sdzhong can you elaborate on this? What do you mean by "issue event"? Do you mean that exceptions that happen within the boundaries of web requests should have the status code that the server will send to the user attached to them?

we can add the response code to contexts like
https://github.com/getsentry/sentry-python/blob/0eb346533da224f2d6d99c87e06be5e26eaa5cf1/sentry_sdk/tracing.py#L771

Are you folks talking about the HTTP status set in spans? Because the Python SDK seems to only do it for transactions and spans, not for exception or message events. cc @sl0thentr0py

i'll ping @sdzhong  internally, not sure what he wants

@sl0thentr0py have you had a chance to ping @sdzhong? I'm really not sure what we're supposed to do with this issue 🙃

closing, he can reopen later if necessary


jb_crop_image_ajax

Hey there, I really like your bundle, because there is no other bundle, that is working for me, instead of yours.. :)
So my question is, how to get jb_crop_image_ajax working? It throws me an exception if I add it like this:
        ->add('image', 'jb_crop_image_ajax', array(
            'img_width' => 400,
            'endpoint' => 'gallery',
                'crop_options' => array(
                'aspect-ratio' => 1,
                'set-select' => "[5,5,20,20]"
            )
        ))

An exception has been thrown during the rendering of a template ("Unable to generate a URL for the named route "jb_image_crop_endpoint" as such route does not exist.") in JbFileUploaderBundle:Form:fields.html.twig at line 91.
And another question:
In the documentation of the standard image upload it says, original images will go to /uploads folder and edited are going to /media. How can I configure that all uploads will be resized to, for example 400x300 and placed in the /media folder and in the DB the edited image will be pointed?
At the moment, no images are placed in /media and the DB entry points to the originals in /uploads.
Thank you :)

Hi,
Thanks for using my bundle.
I think I missed a step in the installation process documentation. You should load the routing.yml file to add the jb_image_crop_endpoint route.
in app/config/routing.yml, add :
jb_fileupload_crop:
    resource<EMAIL_ADDRESS>
For your question about the file storage, this bundle cannot store both croped and original pictures in the same folder as the 2 will have the same name. In another project I have original in and uploads folder and croped in upload/croped (so not the really same folder but in the same folder tree).
Moreover, this bundle does not store resized image as it is the work of the LiipImagineBundle which is installed with my bundle to resize when displaying these images. However It provides validation to verify that croped image ratio matches 400/300 so you will have a stored croped image of a good ratio and no problem when resizing with Liip Bundle.
Could you provide your configuration in config.yml for knp_gaufrette, oneup_uploader, liip_imagine and jb_file_uploader keys. I could give you pointers about a good configuration to meet your needs.

Wow thanks for your fast answer.. :)
Okay now I understand, I thought images would be manipulated by LiipImagineBundle after upload, for example making thumbnails out of it.
Doesn't it take much more performance to resize the images allways when they are displayed, especially if there are a lot of images, than to resize them once after upload?
Regarding to that, what is LiipImagineBundle needed for in the current configuration and do you have any idea how I could resize an image automaticly to 400x300 after the user has cropped it to 4:3 ratio? I really have to watch performance of my app.
Thanks mate, I'll provide my configs tomorrow, 'caus I'm allready in my bed :)

Sorry for bothering, I just read it in the documentation of LiipImageBundle. Should be good enough.. ;)
"Behind the scenes, the bundles applies the filter(s) to the image on the first request and then caches the image to a similar path. On the next request, the cached image would be served directly from the file system."
But I'm still curious about your pointers for my configuration.. :)

Hey me again, Jcrop is working now, with the routing added. But after pressing "cofirm" I'm getting an error, because it looks for the original image in the /web folder and not in the /web/uploads folder where the image is.
Source image not found in "../web/54f43caced5ef.JPG"

Yeah, I think I missed some more documentation for the crop side of things. I am preparing a full configuration based on the getting started one. I will post it here in around 15 minutes.

Cool, thank you so much :)

knp_gaufrette:
    stream_wrapper: ~
    adapters:
        image:
            local:
                directory: %kernel.root_dir%/../web/uploads
                create: true
       croped:
            local:
                directory: %kernel.root_dir%/../web/uploads/croped
                create: true
    filesystems:
        image:
            adapter: image
            alias: image_filesystem
        croped:
            adapter: croped
            alias: croped_filesystem

oneup_uploader:
    mappings:
        gallery:
            frontend: blueimp
            storage:
                type: gaufrette
                filesystem: gaufrette.image_filesystem
                stream_wrapper: gaufrette://image/

liip_imagine:
    loaders:
        stream.image_filesystem:
            stream:
                wrapper: gaufrette://image/
       stream.croped_filesystem:
            stream:
                wrapper: gaufrette://croped/
    filter_sets:
        original: ~
        thumb_from_original:
            data_loader: stream.image_filesystem
            quality: 75
            filters:
                thumbnail: { size: [120, 90], mode: outbound }
        thumb_from_croped:
            data_loader: stream.croped_filesystem
            quality: 75
            filters:
                thumbnail: { size: [120, 90], mode: outbound }

jb_file_uploader:
    resolvers:
        upload:
            assets:
                directory: uploads
        croped:
            assets:
                directory: uploads/croped
    croped_fs: croped
    croped_resolver: croped
    endpoints:
        gallery:
            upload_resolver: upload
            upload_validators: {}
            crop_validators: {}

So this is a full configuration working for croped. As you can see it extends a little the one from Getting started.
These are the difference :

2 Knp gaufrette filesystems : image (original upload) and croped (croped image)
2 loaders in Liip bundle : one for original and one for croped
2 example of filters : the thumb_from_original resize from the original one and thumb_from_croped resizes from the croped one
in jb_file_uploader, we configures 2 resolvers one for croped and one for original and we configured the gaufrette filesystem storing the croped one and the resolver to be used to generate the url for the croped one.

Did you have any issues after using this configuration ?

I'm still getting the Source image not found error with your config because it's still looking in the /web folder for the original image.

Are you editing an existing entity with the image already saved ? Can you reset and test again beacause I just tested it and it works fine for me.

From what I see this "Source image not found" comes from LiipImagineBundle. Can you post your configuration for this bundle ?

Hmm no I'm creating a new entity and I just installed LiipImageBundle like this: http://symfony.com/doc/master/bundles/LiipImagineBundle/installation.html and took your configuration from above.
liip_imagine:
loaders:
stream.image_filesystem:
stream:
wrapper: gaufrette://image/
stream.croped_filesystem:
stream:
wrapper: gaufrette://croped/
filter_sets:
original: ~
thumb_from_original:
data_loader: stream.image_filesystem
quality: 75
filters:
thumbnail: { size: [120, 90], mode: outbound }
thumb_from_croped:
data_loader: stream.croped_filesystem
quality: 75
filters:
thumbnail: { size: [120, 90], mode: outbound }
I'm selecting an image, I can see its preview and crop it, and after clicking "confirm" I'm getting this error in a red box upon the image:
Source image not found in "/home/user/symfony-projects/demo/app/../web/54f45ca0bb7aa.jpg"

Can you add all your config.yml ? When adding the code i presented above, you removed your old one and clear cache ?

I think I know what happens.
Could you add this at the start of liip_imagine :
liip_imagine:
    data_loader: stream.image_filesystem

Hey, now it works. Thank you very much! :)

Nice, I will update my crop documentation to add the missing example. Do not hesitate to come back to me if you meet any more difficulties.
Have a nice day.


No

When i deployed pfsense using your code to t3micro i got error on console that no netcards were found?
Yes, i changed them to xn0 and x1
What can produce this?
(Sorry for screenshot quality)

@philzyk which instance type do you use?

t1.micro works well, other don't
tried t2, t3,
seems problem in netcard driver ENA - it's not presented in pfsense
i can try to check this, but maybe you know what is the problem with other types

@philzyk  freebsd working only for Xen based virtualization https://docs.netgate.com/pfsense/en/latest/solutions/aws-vpn-appliance/instance-type-and-sizing.html


check if debugging session is out of sync

We could feasibly check the line of code from the debugger against the code in the editor and warn the user if they are not the same.
This could help programmer's avoid debugging stale/non-updated deployments or spot problems with their deployment scripts.
use case: I've found quite a few times I think my deploy has worked; but it has not and I've launched a prior version of the app.
Another take on this could be to inject a build guid into a codefile, and code that spits it out on launch..

What causes the debugging session to get out of sync? Is there a compile error, or perhaps an issue with the zip file bundling? Because in the normal flow, the extension deletes any previous zip file and intermediary source files, makes the zip file from current sources, and then deploys. So I can't think of any way for a deployment to become out of sync....it should always have latest.
Is it possible that this is actually an issue with your current build process (gulp, make, whatever)?

thinking about it; this is a very specific use case of mine (testing side-loaded builds with deeplinking; but hijacking the debug session). I'll close it.


update some of the ignored translations

This also update the autofix-script to be a bit more user friendly, in particular allow the e key to open your EDITOR at the right file and line.

Thanks for the update to the tool and fixes here @Carreau. I'm merging this now to help the v0.4.17 release process.


docs: guide for multi stage delivery

Closes #3054
This guide explains how the promotion phase can be used together with ArgoCD and GitHub.
As this example is fairly complex on its own, I decided to limit it to just explaining how the promotion phase coule be implemented in such a scenario. Originally, the ticket (#3054) stated to also include an example for deploying a version that does not pass one of the pre/post deployment checks and therefore does not get promoted, but In my opinion this aspect is covered in one of the other examples we have - So at the time users get to this guide, which is already more advanced, they should already have an understanding of how a failed pre/post deployment check causes the deployment to fail and subsequent phases not being executed.

@bacherfl @StackScribe shall we still work in those suggestions from @StackScribe ?


Add off-campus buildings to the GUI

Either find a new map with all the off-campus buildings (ex. FT, West Campus, etc.) or add a representation of them to the current map.
50 points

W16 OK

F16 OK (50 pts)

Redundant issue (See Issue #20)
F17 CLOSED


"Unsupported board" error for Uno and Pro Mini

Using the library on Arduino Uno or Arduino Pro Mini fails with "Unsupported board" error.

The check for the two boards nano and atmega2560 have been removed in 0.15.1
Please check, if it works now for you

Now I get:

.pio\libdeps\Uno\FastAccelStepper\src\StepperISR_avr.cpp:41:25: error: 'stepPinStepper1A' was not declared in this scope

In StepperISR_avr.cpp, line 11 should be:
#if defined(__AVR_ATmega328P__)

I didn't modify the flags for the other board definitions than the 2560, sorry @gin66
__AVR_ATmega328P should be  ARDUINO_AVR_ATmega328P as per https://github.com/platformio/platform-atmelavr/blob/master/boards/ATmega328P.json
It is hard to tell from my phone however if that's everything

ARDUINO_AVR_ATmega328P doesn't seem to work.

Updated to 0.15.2
Now the code does not check for specific board types, but only for CPU

Working fine here, both Uno and Pro Mini


Add live dashboard

It will help us diagnose things when deployed to production. It should require the same authentication as Livebook itself.

I would like to take this one.


feat: allow configuring UseOldResourceVersion by cluster

Description

Allow choosing resource version per cluster, required because many controllers might interact with non-target controllers.
Related issues

Special notes for your reviewer:

Codecov Report
Patch coverage has no change and project coverage change: +0.01 :tada:

Comparison is base (6a11bc8) 36.16% compared to head (4ecbca7) 36.17%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #111      +/-   ##
==========================================
+ Coverage   36.16%   36.17%   +0.01%
==========================================
  Files          31       31
  Lines        2472     2471       -1
==========================================
  Hits          894      894
+ Misses       1516     1515       -1
  Partials       62       62

Impacted Files
Coverage Δ

pkg/aggregator/aggregatorevent/event.go
0.00% <0.00%> (ø)

pkg/diff/cache/interface.go
11.26% <0.00%> (+1.96%)
:arrow_up:

pkg/diff/cache/memory_wrapper.go
0.00% <0.00%> (ø)

pkg/k8s/config/interface.go
22.72% <0.00%> (-27.28%)
:arrow_down:

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


chore: release master

:robot: I have created a release beep boop
core: 0.0.25
0.0.25 (2023-11-01)
Features

Fail early when trying to send empty payload (#1642) (6bad4ea)
Logger with log levels (#1672) (0f7d63e)

Bug Fixes

Don't dial discovered peers if have already been attempted dial (#1657) (1892f50)
Filter subscription with pubsubTopic1 and decoder with pubsubTopic2 (#1675) (491366b)
Handle all empty responses in filter (#1688) (b3864f8)
Measure total message size (#1643) (b7dc3d7)

Dependencies

The following workspace dependencies were updated

dependencies

@waku/enr bumped from ^0.0.18 to ^0.0.19
@waku/interfaces bumped from 0.0.19 to 0.0.20
@waku/utils bumped from 0.0.12 to 0.0.13

dns-discovery: 0.0.19
0.0.19 (2023-11-01)
Features

Logger with log levels (#1672) (0f7d63e)

Dependencies

The following workspace dependencies were updated

dependencies

@waku/enr bumped from 0.0.18 to 0.0.19
@waku/utils bumped from 0.0.12 to 0.0.13

devDependencies

@waku/interfaces bumped from 0.0.19 to 0.0.20

enr: 0.0.19
0.0.19 (2023-11-01)
Features

Logger with log levels (#1672) (0f7d63e)

Dependencies

The following workspace dependencies were updated

dependencies

@waku/utils bumped from 0.0.12 to 0.0.13

devDependencies

@waku/interfaces bumped from 0.0.19 to 0.0.20

interfaces: 0.0.20
0.0.20 (2023-11-01)
Features

Fail early when trying to send empty payload (#1642) (6bad4ea)

message-encryption: 0.0.23
0.0.23 (2023-11-01)
Features

Logger with log levels (#1672) (0f7d63e)

Dependencies

The following workspace dependencies were updated

dependencies

@waku/core bumped from 0.0.24 to 0.0.25
@waku/interfaces bumped from 0.0.19 to 0.0.20
@waku/utils bumped from 0.0.12 to 0.0.13

@waku/message-hash: 0.1.9
Dependencies

The following workspace dependencies were updated

dependencies

@waku/utils bumped from 0.0.12 to 0.0.13

devDependencies

@waku/interfaces bumped from 0.0.19 to 0.0.20

peer-exchange: 0.0.18
0.0.18 (2023-11-01)
Features

Logger with log levels (#1672) (0f7d63e)

Dependencies

The following workspace dependencies were updated

dependencies

@waku/core bumped from 0.0.24 to 0.0.25
@waku/enr bumped from 0.0.18 to 0.0.19
@waku/interfaces bumped from 0.0.19 to 0.0.20
@waku/utils bumped from 0.0.12 to 0.0.13

relay: 0.0.8
0.0.8 (2023-11-01)
Features

Fail early when trying to send empty payload (#1642) (6bad4ea)
Logger with log levels (#1672) (0f7d63e)

Bug Fixes

Measure total message size (#1643) (b7dc3d7)

Dependencies

The following workspace dependencies were updated

dependencies

@waku/core bumped from 0.0.24 to 0.0.25
@waku/interfaces bumped from 0.0.19 to 0.0.20
@waku/utils bumped from 0.0.12 to 0.0.13

@waku/sdk: 0.0.21
Dependencies

The following workspace dependencies were updated

dependencies

@waku/utils bumped from 0.0.12 to 0.0.13
@waku/relay bumped from 0.0.7 to 0.0.8
@waku/core bumped from 0.0.24 to 0.0.25
@waku/dns-discovery bumped from 0.0.18 to 0.0.19
@waku/interfaces bumped from 0.0.19 to 0.0.20
@waku/peer-exchange bumped from ^0.0.17 to ^0.0.18

utils: 0.0.13
0.0.13 (2023-11-01)
Features

Fail early when trying to send empty payload (#1642) (6bad4ea)
Logger with log levels (#1672) (0f7d63e)

Bug Fixes

Measure total message size (#1643) (b7dc3d7)

Dependencies

The following workspace dependencies were updated

devDependencies

@waku/interfaces bumped from 0.0.19 to 0.0.20

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/utils-v0.0.13 :sunflower:

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/interfaces-v0.0.20 :sunflower:

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/message-hash-v0.1.9 :sunflower:

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/enr-v0.0.19 :sunflower:

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/peer-exchange-v0.0.18 :sunflower:

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/core-v0.0.25 :sunflower:

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/dns-discovery-v0.0.19 :sunflower:

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/message-encryption-v0.0.23 :sunflower:

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/sdk-v0.0.21 :sunflower:

:robot: Release is at https://github.com/waku-org/js-waku/releases/tag/relay-v0.0.8 :sunflower:


Switch to full unzip module

unzip-stream, while handy for not downloading the entire zip file, only supports certain zip file versions, to the detriment of this service.  Switch to an unzip module that downloads the entire file and parsed from there.

Example: http://maps.greenwoodmap.com/custer/download/address.zip


Styleguidist navigation is broken

Which package is this issue related to?
Describe your issue (screenshots welcome!)
Links in the sidebar menu do not work, except for button related ones (Buttons are the first section). This bug seems to have appeared as react-styleguidist version was bumped from 7.0.5 to 7.3.8.
What is the expected behavior?
All sidebar links should lead to it's corresponding section/component
What is the actual behavior?
Only button-related links work as intended
Steps to reproduce
Open https://design.sparebank1.no/styleguidist/index.html, click any link in the sidebar.

Possibly related to https://github.com/styleguidist/react-styleguidist/issues/1139 and/or https://github.com/styleguidist/react-styleguidist/issues/1137

Update: Issue still seems to be present in react-styleguidist 8.0.5.


Getting timeouts when trying to send images

Trying to send a PNG image, getting a timeout message:

504 Gateway Time-out

504 Gateway Time-out
nginx/1.6.2

The URL is:
https://api.telegram.org/BOT_API_KEY/sendPhoto
Any idea why this happens?

@SyRenity can you show me your code snippet?

function sendPhoto(to, stream, filename) {
  return bot.sendPhoto({
    chat_id: to,
    caption: 'test',
    files: {
      photo: {
        stream: stream,
        filename: filename
      }
    }
  })
}

I actually tried the latest version as well, and it gave me the same result.
I'm using the one with separate stream, as it allows me to pipe a result without using the disk in the middle.

@SyRenity I am looking into it. Thanks

@SyRenity I have tested with stream
bot.sendPhoto({
  chat_id: 2229032,
  caption: 'Tester',
  files: {
    filename: 'logo.png',
    stream: fs.createReadStream('./examples/logo.png')
  }
}, function (err, msg) {
  console.log(err);
  console.log(msg);
});

Which version this was tried with?
I'm still getting the time-out error on both the 0.0.14 that I use, and on the latest 0.1:

504 Gateway Time-out

504 Gateway Time-out
nginx/1.6.2

Is the stream object has to have any specific proprieties to work?

@shernshiou Found the issue, I was simply have not waited until the image creator (QR in this case) finished writing to disk.
Any way to pipe the image creator output to sendPhoto directly, bypassing the disk completely?

@SyRenity not at the moment. How about contributing for a pull request?

@shernshiou I will check it once I have some time.

Was this resolved? I am having issues with 504's when sending images as well


Progress without finishing

Challenge http://www.freecodecamp.com/challenges/waypoint-split-your-bootstrap-row has an issue. Please describe how to reproduce it, and include links to screenshots if possible.
I did the challenge wrong and it still tells me I did it right and proceeds to the  next challenge. Or I am pretty sure I am wrong

@newsharpie I suppose this issue is resolved.
cc: @bugron

@newsharpie thanks for posting this issue!
I can't reproduce this issue so I'll close it, but feel free to reopen if you still experience problems. Thanks.

Please review the Guidelines for Contributing, thank you!.


Upgrade @graphql-codegen/cli

[x] This PR follows the Contribution Guide
[x] Changelog updated

Description / Motivation

This PR aims to remove few scurity vulnerabilities coming from graphql-codegen/cli by upgrading it to latest
Testing Details

[ ] Unit Test Added
[x] Manual Test/Other (Please elaborate)

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

I agree @illiakovalenko, Its better to upgrade all graphql-codegen packages


PopArt example bug

Hi,
It is mentioned in the comments here that new popart states should be used to normalize/denormalize, but in the code old states are being used.
Thanks
Kinal

Thanks for spotting that, the example is fixed now.


[Enhancement] Endpoint pagination

Makes the endpoint nicer to work with, and more performant.

Resolved in #23


Add support for missing redis command CREATECONSUMER

predis currently lacks support for the function CREATECONSUMER

@chayim Is this command exist? Link is broken and I can't find this command at docs

Maybe he means this? https://redis.io/commands/xgroup-createconsumer/

@tillkruss I guess you're right

@tillkruss @chayim  Just find out that there's separate issue for XGROUP-CREATECONSUMER. So question is still open, do we need this issue?
#856

Closing. I'm bad at generating things sometimes. Sorry about this!


[opt](invert index) Empty strings are not written to the index in the…

… case of TOKENIZED (#28822)
Proposed changes
https://github.com/apache/doris/pull/28822

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall


Fail of initialize() is not obversely

If initialize() fails the program still seems to run and an issue is not obversely.
e.g. with reg_method=opengl we get false in
https://github.com/code-iai/iai_kinect2/blob/master/kinect2_bridge/src/kinect2_bridge.cpp#L281 .
Because of this no threads for topic publishing are created. But images are grabbed and the program seems to work. The message about the unknown registration method gets lost because of the following terminal outputs (We get a lot of lines due to grabbing states.).

Thanks for the hint. I just fixed it with commit 42787f9bdd7ac04668f8ff85f3209059fca085d2.
It should stop correctly on an initialization error now.

What is the correct namespace to use for the kinect2 camera? I saw
Kinect2 in kinect2_bridge definitions but it doesn't appear to work with
this cob_people_detection
.

@lakehanne Your issue has nothing in common with the issue of this thread. Next time please open a new issue, if it does not match any other issue topics.
And a short answer to your question: I think you just have to change those parameter: https://github.com/ipa-rmb/cob_people_perception/blob/indigo_dev/cob_people_detection/ros/launch/people_detection.launch#L5-7

Sorry for the inappropriate question.

I don't know that package, but I would guess you have to use the topics with the same resolution, so either sd, qhd or hd, like:
<arg name="camera_namespace" default="kinect2_bridge"/>
<arg name="colorimage_in_topic" default="/$(arg camera_namespace)/sd/image_color_rect"/>
<arg name="pointcloud_rgb_in_topic" default="/$(arg camera_namespace)/sd/points"/>

But you may want to ask the maintainers of that package, they should know better.

@MichaelKorn did the last commit fixed the issue for you?

@wiedemeyer yes, it works. THX

Thanks Thiemo.


zig.zigPath is not default to zig executable in PATH and this isn't documented well.

Zig Version
0.11.0-dev.3395+1e7dcaa3a

Zig Language Server Version
0.11.0-dev.352+f24fcc2

Steps to Reproduce
I am using zig on remote host over SSH

Download zig binary.
Extract it at $HOME/zig (so this directory contains a zig executable)
Make a symbolik link to $HOME/zig/zig as $HOME/.local/bin/zig.
Make sure that $HOME/.local/bin in $PATH.
Open some folder of zig project (create new project with zig init-exe or choose existing one)
Ensure that the correspoding settings.json doesn't have the key zig.zigPath.
Open some zig sourcecode (e.g. src/main.zig).

Expected Behavior
Nothing happens.
Actual Behavior
A popup "Zig path hasn't been set, do you want to specify the path or install Zig?" appears.

And after setting zig.zigPath to $HOME/.local/bin/zig, everything works correctly. So this issue is for users who installs zig and this vscode extension separately.
Point to think
I understand this may be expected behavior because I left that key zig.zigPath empty. I want to point out unmatch of this behavior and the description of the key.

expected as reading upon description
actual

no zig.zigPath entry
extension searches zig in PATH or fail [^1]
shows the popup

zig.zigPath is filled with valid one
everything is ok
everything is ok

As the sourcecode says, current(https://github.com/ziglang/vscode-zig/commit/93cc2090be53c20a93ab91df5b86d4f45afe71a3) behaviour is like this:

Check zig.zigPath is set
If it's empty (or there is no key), the popup which ask user to install zig (to the directory under vscode management) or specify zig.zigPath

I think this is better and safe behavior, but the description of zig.zigPath can read "You can left this value empty" and it's my trouble.
[^1]: This means extension know that if zig is installed or not only after trying to run it.

I think it's better to update the description as well.
https://github.com/ziglang/vscode-zig/blob/93cc2090be53c20a93ab91df5b86d4f45afe71a3/package.json#L101-L105

thank you!


[WIP] adc: basic implementation derived from stm32f4xx_hal

Signed-off-by: Matt Baker<EMAIL_ADDRESS>Derived from stm32f4xx_hal adc, so may differ in style slightly from blxxx hals.
Functioning for discrete reads via convert() and continuous reads via FIFO and start_conversion()/try_read()
Likely needs a lot of cleanup, particularly of comments vs the stm32 parent.
I wasn't sure how to make into_analog() specific to only the adc pins, so it can be called, but should not compile due to lack of ADC traits for those pins.
I needed to make the uart support lower baud rates to talk to the serial converter I have for testing.

I took the WIP in the title of this PR to assume that it's not ready to be reviewed/merged yet, is this correct?
Or is that just marking that the feature will not be completed by this PR and to review with that in mind?


Variable assign to another one isnt possible

Godot version:
3.2 beta 4
OS/device including version:
ubuntu 18.04
Issue description:
Why when you assign this way isnt possible?
update_func = init_func = exit_func = funcref(self,"method_name")
this should be possible.

This isn't a bug. Support for Python-style multi-way assignment was never implemented, as most people don't need it often. Please open a proposal if you feel a need for this.


_Field or property "ExportMode" does not exist for Custom webparts in a custom page layout of the Publishing Page

Category
[ X] Bug
[ ] Enhancement
Problem Area
[ ] Page Transformation: Error during the setup/use of the Page Transformation UI solution (did you check our troubleshooting guide?)
[ X] Page Transformation: Error during the use of page transformation from PnP PowerShell
[ ] Page Transformation: Error during the use of page transformation from .Net
[ ] Page Transformation: Page is not looking correct after transformation
[ ] Modernization Scanner: something went wrong...
Expected or Desired Behavior
Publishing page with custom page layout and has custom webparts should be migrated successfully
Observed Behavior
Publishing Page with custom web parts are throwing an error "_Field or Property 'Export mode' does not exist" observed with Sep2019 release (3.13.1909.0)
Steps to Reproduce
Publishing page with custom page layout and custom webparts has been throwing this issue
Here is the stack trace
Field or property "ExportMode" does not exist.   at Microsoft.SharePoint.Client.ClientRequest.ProcessResponseStream(Stream responseStream)
at Microsoft.SharePoint.Client.ClientRequest.ProcessResponse()
at Microsoft.SharePoint.Client.ClientRequest.d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientRequest.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientRuntimeContext.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientContext.d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientContextExtensions.d__7.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientObjectExtensions.d__81.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at Microsoft.SharePoint.Client.ClientObjectExtensions.EnsureProperties[T](T clientObject, Expression1[] propertySelector)
at SharePointPnP.Modernization.Framework.Pages.BasePage.LoadWebPartsInWikiContentFromServer(List1 webparts, File wikiPage, List1 webPartsToRetrieve)
at SharePointPnP.Modernization.Framework.Pages.PublishingPageOnPremises.Analyze(PageLayout publishingPageTransformationModel)
at SharePointPnP.Modernization.Framework.Publishing.PublishingPageTransformator.Transform(PublishingPageTransformationInformation publishingPageTransformationInformation)

Hi @jansenbe
What is the SharePoint version of your on-premises environment?
Its SharePoint 2013
Does the problem apply to all pages or just some? If some is there any specific web part that all these pages share?
Im trying a POC to see ,how the migration of all the pages will go.Not all pages share this custom webpart,few of the pages has this webpart. Are the web parts added into a web part zone or embedded in the main edit area? If not in a web part zone can you try converting a page with the same web part in a web part zone on the publishing page? The webparts are embedded in Rich Text field of Publishing page content of main edit area,I cant try converting this webpart with in a webpart zone as this page layout doesnt have any webpart zones.there are some hardcoded webparts on the layout.

The provided error message is very useful in pinpointing the issue, Custom Web Parts in Wiki Content Pages with on-premises transform.
I have a feeling this might be a gap in features, my test rigs do not contain that scenario, would need to to write custom web parts for each version of SharePoint to be thorough. Its likely easy to fix as the modifications for supplementing via web services have formed a code pattern in these cases, just testing them which takes longer.

Indeed @pkbullock : the code path to retrieve web parts when in a wiki content section of a publishing page is using the "SPO" logic and and not the "on-prem" logic for web part retrieval.

@pkbullock  / @KVSolutions :
I can repro this by putting a web part in a wiki text zone...will work on a fix

Fixed. Will be part of the October release (release date around October 4th).

@KVSolutions : if you're transforming via .Net you could pull down the code and compile your own version of the page transformation engine. If you're using PowerShell things are slightly more complex as you'll need to also build a dev version from PnP PowerShell as well.

Closing this issue since the fix is in. Let me know if you still see issues when using the latest

I have just updated to 3.14.1910 and I am still seeing this error on selected pages.  The source is SP2013.  The only web part on one of them is a Summary Links which links to people.  The only common factor I can see is the page is split 2/3 - 1/3 (One column with sidebar from text layout option).

My issue is actually for team site pages and not publishing pages - please let me know if you prefer this to be raised as a new issue?
I have around 200 pages in SP2013 and just less than half failed.  All the ones I have checked so far had the split text layout.
Stack Trace:
Field or property "ExportMode" does not exist.   at Microsoft.SharePoint.Client.ClientRequest.ProcessResponseStream(Stream responseStream)
at Microsoft.SharePoint.Client.ClientRequest.ProcessResponse()
at Microsoft.SharePoint.Client.ClientRequest.d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientRequest.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientRuntimeContext.d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientContext.d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientContextExtensions.d__7.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SharePoint.Client.ClientObjectExtensions.d__81.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at Microsoft.SharePoint.Client.ClientObjectExtensions.EnsureProperties[T](T clientObject, Expression1[] propertySelector)
at SharePointPnP.Modernization.Framework.Pages.BasePage.LoadWebPartsInWikiContentFromServer(List1 webparts, File wikiPage, List1 webPartsToRetrieve)
at SharePointPnP.Modernization.Framework.Pages.WikiPage.Analyze(Boolean isBlogPage)
at SharePointPnP.Modernization.Framework.Transform.PageTransformator.Transform(PageTransformationInformation pageTransformationInformation)

Meh - this is trying to take content directly from a SP2013 team site to a modern SPO team site.  I have tried again going via a classic SPO team site and do not get the same errors.

Hi @paylord ,
There was a fix for this in the intermediate October release (see https://www.powershellgallery.com/packages/SharePointPnPPowerShellOnline/3.14.1910.1). Please open a new issue if you can still repro the problem with that version. Thanks for testing this.


Feature/list webs from db

So I realized when testing out the app with the seeded database that I would get the option to view York even though it wasn't in the DB. This made me think it might be nice to have it driven by the database, thoughts?
I did note the public field on the Locations, unsure what this means conceptually?

Strange, I seem to have had an out of date main branch even after syncing it :/

This is great, it's exactly what the next step was to show the available webs dynamically on the homepage! 💯
The public field I added recently so that we distinguish between webs that are still being built and ensure they're not listed publicly yet. We can also use the field when building out the sitemap.xml file so that Google doesn't index the pages yet for example.

@jonathonhawkins92 is attempting to deploy a commit to the Resilience Web Team on Vercel.
A member of the Team first needs to authorize it

Odd, I need to look into this again.

One thing I'm uncertain about is what run time Vercel is using, do you know if they are on Node 18? I ask as if they are on 16 I will have to install something like isomorphic fetch to get it to work on the server.

One thing I'm uncertain about is what run time Vercel is using, do you know if they are on Node 18? I ask as if they are on 16 I will have to install something like isomorphic fetch to get it to work on the server.

Configurable on Vercel, currently 16. I tried 18 but there were some packages that weren't ready for it yet so I rolled back.

One thing I'm uncertain about is what run time Vercel is using, do you know if they are on Node 18? I ask as if they are on 16 I will have to install something like isomorphic fetch to get it to work on the server.

Configurable on Vercel, currently 16. I tried 18 but there were some packages that weren't ready for it yet so I rolled back.

I've added isomorphic-unfetch for this, but it might be worth re-testing node 18, as I was working locally on 18 without issue.
Note, unfetch is just a bare-bones version of fetch, so won't work with anything complex.
Ref – https://github.com/developit/unfetch

This is great, it's exactly what the next step was to show the available webs dynamically on the homepage! 💯
The public field I added recently so that we distinguish between webs that are still being built and ensure they're not listed publicly yet. We can also use the field when building out the sitemap.xml file so that Google doesn't index the pages yet for example.

Awesome 😁
Ah, I see! It's like a published flag, cool, we will need to either do some client side filtering; if you don't mind people knowing about incomplete ones, or update the endpoint to be public only, or possibly do something where it is public only + the current user's own webs, which way would you like to go?

Ah, I see! It's like a published flag, cool, we will need to either do some client side filtering; if you don't mind people knowing about incomplete ones, or update the endpoint to be public only, or possibly do something where it is public only + the current user's own webs, which way would you like to go?

published is a much better name 😄
Good question about the approach - I think the third one is a bit overkill. Some simple client side filtering seems like the pragmatic approach for now. Keeps things easy to change later.


Problems running on Fedora 23

I suspect this may be related to https://github.com/pantheon-cookbooks/dnf/issues/14 , but to get this to run successfully I had 2 separate issues:

The dnf-query.py script seems to be missing when pulling the cookbook down via Berkshelf or knife cookbook site install etc.

[2016-02-26T17:51:57-06:00] INFO: Processing dnf_package[git] action install ($COOKBOOK::laptop line 37)

================================================================================
Error executing action `install` on resource 'dnf_package[git]'
================================================================================

Errno::ENOENT
-------------
No such file or directory - $PATH/git/chef/vendor/dnf/libraries/dnf-query.py

Cookbook Trace:
---------------
$PATH/git/chef/vendor/dnf/libraries/provider_dnf_package.rb:112:in `available_version'
$PATH/git/chef/vendor/dnf/libraries/provider_dnf_package.rb:77:in `block in load_current_resource'
$PATH/git/chef/vendor/dnf/libraries/provider_dnf_package.rb:75:in `each'
$PATH/git/chef/vendor/dnf/libraries/provider_dnf_package.rb:75:in `load_current_resource'

Resource Declaration:
---------------------
# In $PATH/git/chef/vendor/$COOKBOOK/recipes/laptop.rb

 37:   package pkg do
 38:     action :install
 39:   end
 40: end

Compiled Resource:
------------------
# Declared in $PATH/git/chef/vendor/$COOKBOOK/recipes/laptop.rb:37:in `block in from_file'

dnf_package("git") do
  package_name "git"
  provider Chef::Provider::Package::Dnf
  action [:install]
  retries 0
  retry_delay 2
  default_guard_interpreter :default
  declared_type :package
  cookbook_name :$COOKBOOK
  recipe_name "laptop"
end

[2016-02-26T17:51:57-06:00] INFO: Running queued delayed notifications before re-raising exception
[2016-02-26T17:51:57-06:00] ERROR: Running exception handlers
[2016-02-26T17:51:57-06:00] ERROR: Exception handlers complete
[2016-02-26T17:51:57-06:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2016-02-26T17:51:57-06:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2016-02-26T17:51:57-06:00] ERROR: dnf_package[git] ($COOKBOOK::laptop line 37) had an error: Errno::ENOENT: No such file or directory - $PATH/git/chef/vendor/dnf/libraries/dnf-query.py
[2016-02-26T17:51:57-06:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

Have to dnf install python-dnf, else you get the below error:

[2016-02-26T17:55:58-06:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2016-02-26T17:55:58-06:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2016-02-26T17:55:58-06:00] ERROR: dnf_package[git] ($COOKBOOK::laptop line 37) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
---- Begin output of $PATH/git/chef/vendor/dnf/libraries/dnf-query.py git ----
STDOUT:
STDERR: Traceback (most recent call last):
  File "$PATH/git/chef/vendor/dnf/libraries/dnf-query.py", line 48, in <module>
    import dnf
ImportError: No module named dnf
---- End output of $PATH/git/chef/vendor/dnf/libraries/dnf-query.py git ----
Ran $PATH/chef/vendor/dnf/libraries/dnf-query.py git returned 1

On a side note, maybe a quick note on how to use this cookbook would be nice. I had to do some research.

Also confirmed on F22.

This is a known Issue because chef server filters the dnf-query.py out.  We haven't come up with a good solution for shipping this in a chef-server setup. We run chef-solo internally, and it doesn't effect us. Long term the hope was that this would get adopted into chef core, but we haven't been pushing that effort.

Reporting this issue on Fedora 24 as well.

should have been fixed in core in 12.8.2:  https://github.com/chef/chef/commit/b62e6ae14ddd9c60035f4ec314f4c6d0ab47777e

I'm having the same issue on Fedora 24 as well.
$ uname -a
Linux default-fedora-24 4.5.5-300.fc24.x86_64 #1 SMP Thu May 19 13:05:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

$ chef-client --version
Chef: 12.16.42

           ================================================================================
           Error executing action `install` on resource 'dnf_package[/tmp/kitchen/cache/rpmfusion-free-release-24.noarch.rpm]'
           ================================================================================

           Errno::ENOENT
           -------------
           No such file or directory - /tmp/kitchen/cache/cookbooks/dnf/libraries/dnf-query.py

           Cookbook Trace:
           ---------------
           /tmp/kitchen/cache/cookbooks/dnf/libraries/provider_dnf_package.rb:112:in `available_version'
           /tmp/kitchen/cache/cookbooks/dnf/libraries/provider_dnf_package.rb:77:in `block in load_current_resource'
           /tmp/kitchen/cache/cookbooks/dnf/libraries/provider_dnf_package.rb:75:in `each'
           /tmp/kitchen/cache/cookbooks/dnf/libraries/provider_dnf_package.rb:75:in `load_current_resource'