Keyboard Shortcuts

It'd be awesome if Glimpse supported keyboard shortcuts. A few I'd like to see added:

[ ] Maximize (from HUD to "full Glimpse", same as clicking G)

[ ] Minimize (from "full Glimpse" to HUD, same as clicking down arrow)

[ ] Pop-up HUD Section (same as hovering over a HUD section.)
This could perhaps use [Modifier]+[1], [Modifier]+[2], [Modifier]+[N] just like browsers do to switch tabs.

[ ] Tab switching (also leveraging the familiar browser tab switch keys as described above)

[ ] Launch Help (same as clicking the '?')

[ ] Any others?

@nikmd23 Is this feature still being considered? I'd love to help!

Still being considered but we have been putting the majority of our focus in v2. Unfortunately v2 is still a little way out. That said, if you are interested in doing this for v1 we would love it to make it in. Any ideas on how you would like to go about it?

Initial thoughts:
Would have a checkbox on the HUD to disable the shortcut keys. (or could be part of glimpse configuration settings)
Would define a set of overridable keys with their mapping actions.
Simple.

Sounds good to me. I think we could start out with the .\glimpse.axd and then bring it into HUD. It should be pretty easy to get the shortcuts hooked in as most of the system is run off messages and you can simulate clicks by publishing messages that are sent when clicks occur. What are you looking to use for capturing the clicks?


document node/npm version

v19.4.0 the default npm version is v9.2.0

What about if we let the build server  fail if frontend/package-lock.json was created from a wrong npm version? Can this somehow be checked?
Maybe too drastically would be that we check if frontend/package-lock.json is unmodified after npm i on the buildserver?
A quite easy check would be that the file is still present (so that it does not get removed by accident).

So in the documentation it says
### Installing Node + Npm

If you are using unix, macOS, and windows WSL, consider using [nvm](https://github.com/nvm-sh/nvm)
to manage your node environment:

```bash
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
nvm install --lts
nvm use --lts

When I do nvm use --lts it selects:

So does nvm install --lts, also install 18.16
I think this should be just changed to our desired version.

What about if we let the build server fail if frontend/package-lock.json was created from a wrong npm version? Can this somehow be checked?
Maybe too drastically would be that we check if frontend/package-lock.json is unmodified after npm i on the buildserver?
A quite easy check would be that the file is still present (so that it does not get removed by accident).

We could do a grep on the lock file
cat package-lock.json | if grep -q 'node": "^19.4"'; then exit 0; else echo "Wrong version of node detected. Please make sure you have 19.4"; exit 1; fi

What do you think about this.

We could do a grep on the lock file

This would probably already avoid the worst?
@Bushuo what do you think?


secrets management

Currently secrets are in plain text.   they are either protected by S3 policy or AWS GUI or CLI access (aws cfn describe-stacks: "PrivateKey" parameter).  We should integrate KMS into the demo, and possibly a secondary tool for storing secrets on the instances themselves where necessary, such as in-memory fuse fs https://github.com/square/keywhiz.
We should probably also look at Vault https://hashicorp.com/blog/vault.html.

Going to add jenkins password to python script.
Will attempt to store instagram keys in KMS.

Removed Instagram. Jenkins credentials are set in python script and can be set via ./go.py options, including a password prompt.


Unterminated string constant line 13794 column 17

I have no idea what is line 13794, according to nectarjs, because it's the first line of this function:
    function balanced(code) {
      var maching_pairs = {
        '[': ']',
        '(': ')'
      };
      var tokens;

The code is transpiled using Babel. It's a Scheme interpreter written in JavaScript.

Corrected in the next version (we wrote our own parser and we're not using regexp anymore to parse code)


use wasmer-go v1.0.4 which is compatible with mac arm

What this PR does: use wasmer-go v1.0.4 which is compatible with mac arm
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?: NONE

Codecov Report

Merging #515 (19afc42) into develop (b71ac6e) will increase coverage by 0.00%.
The diff coverage is n/a.

:exclamation: Current head 19afc42 differs from pull request most recent head 69b219d. Consider uploading reports for the commit 69b219d to get more accurate results

@@            Coverage Diff            @@
##           develop     #515    +/-   ##
=========================================
  Coverage    54.73%   54.73%
=========================================
  Files          666      664     -2
  Lines        77905    77746   -159
=========================================
- Hits         42638    42553    -85
+ Misses       31635    31552    -83
- Partials      3632     3641     +9

Impacted Files
Coverage Δ

security/pkg/credentialfetcher/fetcher.go
40.00% <0.00%> (-20.00%)
:arrow_down:

pkg/envoy/admin.go
50.00% <0.00%> (-9.68%)
:arrow_down:

...try/kube/controller/autoserviceexportcontroller.go
61.11% <0.00%> (-4.17%)
:arrow_down:

pilot/pkg/xds/monitoring.go
78.57% <0.00%> (-2.86%)
:arrow_down:

pkg/test/framework/resource/version.go
18.42% <0.00%> (-1.76%)
:arrow_down:

pilot/pkg/networking/grpcgen/lds.go
90.51% <0.00%> (-1.73%)
:arrow_down:

pkg/envoy/instance.go
76.27% <0.00%> (-1.70%)
:arrow_down:

pilot/pkg/bootstrap/certcontroller.go
42.51% <0.00%> (-1.20%)
:arrow_down:

pkg/istio-agent/xds_proxy.go
60.73% <0.00%> (-0.87%)
:arrow_down:

pilot/pkg/model/jwks_resolver.go
78.29% <0.00%> (-0.78%)
:arrow_down:

... and 12 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Enable securityContext field for affinityassistant podtemplate

Feature request
Allow configuration of the securityContext field in the affinityassistant PodTemplate
Use case
Ensure compliance with restricted pod security standards.

/assign


sys.excepthook not working as expected

you gave an example with sys.excepthook working for PyQt. However it doesn't seem to be caught by other code that gets run and error hits.
Currently I am setting up a custom_handler and my "sys.excepthook = custom_handler" in ue_site.py that gets run on startup. But when I run code that hits an exception the custom_handler isn't hit.
using python 2.7 in unreal engine 4.17 (using python 2.7 because that is what Maya uses and I have a built up shared code base)

Hi, is it a threaded version of the plugin ?


Connection Timeout with Context Manager

The connect method does provide a timeout argument. But the __aenter__ method doesn't. So connecting to an unnexisting MQTT broker will make the context manager hang.
A simple solution would be to be able to create the Client object with a default timeout to be used in the __aenter__ method.
What do you think ?

Hi Robin, thanks for opening this issue. :+1:

The connect method does provide a timeout argument. But the aenter method doesn't. So connecting to an unnexisting MQTT broker will make the context manager hang.

That's a good point! It's an oversight in the API design. Sorry about that.

A simple solution would be to be able to create the Client object with a default timeout to be used in the aenter method.

Yes, that sounds like a good approach. I'd accept a PR that follows this approach. :)
~Frederik

Hello Frederik,
Great to hear that, I'll be happy to make these changes as soon as I have the time.
I also noticed that if I wrap the Client context manager in a try/catch, I do catch a ConnectionError. I'll try to see what's happening


portainer/portainer-ce 2.11.1 Unselectable

The 'Tick', ' Stop' 'kill' 'Restart' 'Pause' 'Resume'.... cannot be clicked. Cannot upgrade version, plese help！Thanks!

But I have another docker that can be clicked and changed?

Another docker?

Another docker? If you mean another container: yes, you should be able to modify.

I just checked it. The other one is the same. I don't know how to update portainer-ce to 2.13.1.

https://docs.portainer.io/start/upgrade


Add JRE support for TLS SSLContent

Hi,
when I try to convert java SSL socket connection, I found a problem when I try to use JavaxNetSslSSLContext_getInstanceWithNSString_(@"TLS") to get SSLContext, this function implementation is in your .a lib, I don't have a change to modify it, if I have written the same file, it will be duplicated, if I change to some other file,  original java code will be modified a lot, so could you please kindly to implement this function?

J2ObjC doesn't have security providers yet for SSL or secure sockets. We plan on adding additional security providers to com.google.j2objc.security.IosSecurityProvider, which will implement these providers using the iOS Security Framework. Some of this work has been delayed because the Security Framework has been recently improved, but would require a minimum iOS 10 version.
If you have iOS security experience, please consider contributing to this effort.

FYI, TLS 1.2 should be the default version with recent iOS versions, when using URLConnection with HTTPS URLs. If you need finer control, here's a discussion on how to configure your app's network preferences.

A basic SSL socket client was implemented in version J2ObjC 2.3. Please open a new issue if more functionality is required. Also, please consider contributing to this effort.


Use commas and 24h time format everywhere

I think for now it's not necessary to support different date and time formats, let's just use what we use in Finland and what majority of the Europe countries use. Howeverm, if the graph lib or other libs you're using already support showing MM/DD instead of DD/MM for US people according their computer's localisation settings, then it's not needed to remove that functionality of course.

QA passed


The provided JSON payload for "Create a service health alert" is invalid

There is an error in the provided JSON payload:
"impactedServices": "[{"ImpactedRegions"}]",
The mask should be replaced by a list of values.

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

ID: 28360a4e-c758-66f0-39fd-518e480d80d9
Version Independent ID: 52f4d95e-627c-07d7-a4a3-95b31fc616d4
Content: How to trigger complex actions with Azure Monitor alerts - Azure Monitor
Content Source: articles/azure-monitor/platform/action-groups-logic-app.md
Service: azure-monitor
Sub-service: alerts
GitHub Login: @dkamstra
Microsoft Alias: dukek

@lbugnion Thanks for your comment. We are actively investigating and will get back to you shortly.

Assigning to content author @dkamstra for reviewing the content

From googling around I think the correct statement is @lbugnion
                "impactedServices": "[{\"ImpactedRegions\"}]",

...based on what I found here. It certainly allows me to continue now in the Logic App
https://docs.microsoft.com/en-us/azure/azure-monitor/platform/activity-log-schema#service-health-category

From googling around I think the correct statement is @lbugnion
                "impactedServices": "[{\"ImpactedRegions\"}]",

...based on what I found here. It certainly allows me to continue now in the Logic App
https://docs.microsoft.com/en-us/azure/azure-monitor/platform/activity-log-schema#service-health-category

Thanks for pointing this out. The fix is being merged.

Thanks for pointing this out. The fix is being merged.

#please-close


Create pop-out chat?

Is it possible/easy to add pop-out window for the chat? Users asking for it. Thanks!

You'll have to be a little more descriptive than that; what means pop-out window? Like facebook does it?
Although... heh, it's probably not easy. Some sort of docking thing might be possible? But more than likely we'll revamp this more thoroughly in the next iteration.

For example, plug.dj has a popout window chat. Like this:
On Thu, Jul 28, 2016 at 3:16 PM, James Kiesel<EMAIL_ADDRESS>wrote:

You'll have to be a little more descriptive than that; what means pop-out
window? Like facebook does it?
Although... heh, it's probably not easy. Some sort of docking thing might
be possible? But more than likely we'll revamp this more thoroughly in the
next iteration.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/gdpelican/babble/issues/190#issuecomment-235996543,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABmfAwa_MwzLS-gpiK4Te0b2YsvstQq5ks5qaQAPgaJpZM4JW0aA
.

I've now made it so that if you have full page chat enabled, you can go directly to the full page chat from the shoutbox by clicking on the icon to the top right:

Ctrl (or command) clicking that icon will open in a new tab or window (depending on your browser preferences)

Let me know how that lands for you, happy to do further tweaking to make it a nicer experience (although I'm somewhat limited because most browsers have default settings to disallow us throwing out pop-ups everywhere)


recipe_perfmetrices crashes due to standard name error

Traceback (most recent call last):
  File "/pf/b/b309057/SOFTWARE/miniconda3/envs/esmvaltool/lib/python3.7/multiprocessing/pool.py", line 121, in worker
    result = (True, func(*args, **kwds))
  File "/mnt/lustre01/pf/b/b309057/ESMValTool/core/esmvalcore/_task.py", line 683, in _run_task
    output_files = task.run()
  File "/mnt/lustre01/pf/b/b309057/ESMValTool/core/esmvalcore/_task.py", line 238, in run
    self.output_files = self._run(input_files)
  File "/mnt/lustre01/pf/b/b309057/ESMValTool/core/esmvalcore/preprocessor/__init__.py", line 426, in _run
    product.apply(step, self.debug)
  File "/mnt/lustre01/pf/b/b309057/ESMValTool/core/esmvalcore/preprocessor/__init__.py", line 294, in apply
    self.cubes = preprocess(self.cubes, step, **self.settings[step])
  File "/mnt/lustre01/pf/b/b309057/ESMValTool/core/esmvalcore/preprocessor/__init__.py", line 236, in preprocess
    result.append(_run_preproc_function(function, items, settings))
  File "/mnt/lustre01/pf/b/b309057/ESMValTool/core/esmvalcore/preprocessor/__init__.py", line 222, in _run_preproc_function
    return function(items, **kwargs)
  File "/mnt/lustre01/pf/b/b309057/ESMValTool/core/esmvalcore/cmor/fix.py", line 140, in fix_metadata
    cube = checker(cube).check_metadata()
  File "/mnt/lustre01/pf/b/b309057/ESMValTool/core/esmvalcore/cmor/check.py", line 101, in check_metadata
    self._check_var_metadata()
  File "/mnt/lustre01/pf/b/b309057/ESMValTool/core/esmvalcore/cmor/check.py", line 207, in _check_var_metadata
    self._cube.standard_name = self._cmor_var.standard_name
  File "/pf/b/b309057/SOFTWARE/miniconda3/envs/esmvaltool/lib/python3.7/site-packages/iris/_cube_coord_common.py", line 248, in standard_name
    self._standard_name = get_valid_standard_name(name)
  File "/pf/b/b309057/SOFTWARE/miniconda3/envs/esmvaltool/lib/python3.7/site-packages/iris/_cube_coord_common.py", line 84, in get_valid_standard_name
    name))
ValueError: 'atmosphere_optical_thickness_due_to_pm1_ambient_aerosol' is not a valid standard_name

Not sure what is causing the problem.
The last successfull test with this recipe was on Feb 18.

perfmetrics is a monster and would really not want to run it - can you pls tell us what's the offending dataset (full specs, so I can look it up on Jasmin too, might be that the actual data file changed in the meantime) :beer:

Investigating... :mag:
The variable should be obs550lt1aer.

It is a legal standard_name, so it looks like an Iris problem. Which version are you using?
From last CF table:
atmosphere_optical_thickness_due_to_pm1_ambient_aerosol_particles
alias: atmosphere_optical_thickness_due_to_pm1_ambient_aerosol

iris                      2.4.0                    py37_0    conda-forge

Another hint:
2020-03-03 11:25:05,987 UTC [10236] ERROR   Failed to run fix_metadata([<iris 'Cube' of Length of average period / (days) (time: 60)>, <iris 'Cube' of Start time for average period / (days since 1860-01-01 00:00:00) (time: 60)>, <iris 'Cube' of Ambient Fine Aerosol Opitical Thickness at 550 nm / (1) (time: 60; latitude: 90; longitude: 144)>, <iris 'Cube' of End time for average period / (days since 1860-01-01 00:00:00) (time: 60)>], {'project': 'CMIP5', 'dataset': 'GFDL-CM3', 'short_name': 'od550lt1aer', 'mip': 'aero', 'frequency': 'mon'})

iris                      2.4.0                    py37_0    conda-forge

It has the alias in its standard_names XML... Iris should accept it

Apparently it is failing to apply a fix to GFDL-CM3

It is the automatic one correcting the standard_name when it does not match the CMOR tables. But Iris is complaining it is not legal for some reason

right so that dam file has got no standard_name and the only way to load is via long_name - see here (standard_name in commented out bit):
c = iris.load("/badc/cmip5/data/cmip5/output1/NOAA-GFDL/GFDL-CM3/historical/mon/aerosol/aero/r1i1p1/latest/od550lt1aer/od550lt1aer_aero_GFDL-CM3_historical_r1i1p1_200001-200412.nc", "Ambient Fine Aerosol Opitical Thickness at 550 nm")  #, "atmosphere_optical_thickness_due_to_pm1_ambient_aerosol")
print(c[0].standard_name)
None

it has, however, an
invalid_standard_name: atmosphere_optical_thickness_due_to_pm1_ambient_aerosol

and c[0].var_name is indeed od550lt1aer
Data issue, not iris issue :beer:

BTW where is the entry for od550lt1aer in perfmetrics recipe? Checked out latest master and it ain't there

Line 1847

Line 1847

nevermind I'm blind :see_no_evil:

Data issue, not iris issue

Iris issue because it is a legal standard_name and should not be treated as invalid.

we battling in legalities @jvegasbsc :grin: is that invalid_standard_name attr set by iris or by the data constructor? Coz if it's the second then it's the constructor (cmorizer/ESGF) at fault

But it used to work, were there changes in the fix files?

I am actually using iris=2.3 for this case so am saying - not iris the problemo :grin: Playing devil's advocate @bjlittle owes me a :beer:

This means you could reproduce the issue?

yes, outside esmvaltool, see https://github.com/ESMValGroup/ESMValTool/issues/1561#issuecomment-593936795

we battling in legalities @jvegasbsc grin is that invalid_standard_name attr set by iris or by the data constructor? Coz if it's the second then it's the constructor (cmorizer/ESGF) at fault

Iris uses that attribute when it detects a standard_name that is not part of the valid list, but this is a valid standard_name, search it here http://cfconventions.org/Data/cf-standard-names/71/build/cf-standard-name-table.html.
We can also reproduce the error without any file:
>>> import numpy as np
>>> import iris.cube
>>> cube = iris.cube.Cube(np.arange(10))
>>> cube.standard_name = 'atmosphere_optical_thickness_due_to_pm1_ambient_aerosol'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/Earth/jvegas/.conda/envs/esmvaltool/lib/python3.6/site-packages/iris/_cube_coord_common.py", line 206, in standard_name
    self._standard_name = get_valid_standard_name(name)
  File "/home/Earth/jvegas/.conda/envs/esmvaltool/lib/python3.6/site-packages/iris/_cube_coord_common.py", line 58, in get_valid_standard_name
    name))
ValueError: 'atmosphere_optical_thickness_due_to_pm1_ambient_aerosol' is not a valid standard_name
>>> cube.standard_name = 'atmosphere_optical_thickness_due_to_pm1_ambient_aerosol_particles'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/Earth/jvegas/.conda/envs/esmvaltool/lib/python3.6/site-packages/iris/_cube_coord_common.py", line 206, in standard_name
    self._standard_name = get_valid_standard_name(name)
  File "/home/Earth/jvegas/.conda/envs/esmvaltool/lib/python3.6/site-packages/iris/_cube_coord_common.py", line 58, in get_valid_standard_name
    name))
ValueError: 'atmosphere_optical_thickness_due_to_pm1_ambient_aerosol_particles' is not a valid standard_name
>>> cube.standard_name = 'latitude'
>>>

yep, same here, assigning it to the GFDL-CM3 cube:
Traceback (most recent call last):
  File "test_aer.py", line 7, in <module>
    cc.standard_name = "atmosphere_optical_thickness_due_to_pm1_ambient_aerosol"
  File "/home/users/valeriu/anaconda3R/envs/esmvaltool/lib/python3.7/site-packages/iris/_cube_coord_common.py", line 206, in standard_name
    self._standard_name = get_valid_standard_name(name)
  File "/home/users/valeriu/anaconda3R/envs/esmvaltool/lib/python3.7/site-packages/iris/_cube_coord_common.py", line 58, in get_valid_standard_name
    name))
ValueError: 'atmosphere_optical_thickness_due_to_pm1_ambient_aerosol' is not a valid standard_name

funny thing is that name is actually present in STD_NAMES dict in /anaconda3R/envs/esmvaltool/lib/python3.7/site-packages/iris/std_names.py - also, why is that a fixed object (STD_NAMES) and not a collection from the CF library, @bjlittle ? :beer:

ok the problem is in iris/_cube_coord_common.py l/47:
        valid_name_pattern = re.compile(r'''^([a-zA-Z_]+)( *)([a-zA-Z_]*)$''')
        name_groups = valid_name_pattern.match(name)

name_groups is returned as None for name_groups = valid_name_pattern.match("atmosphere_optical_thickness_due_to_pm1_ambient_aerosol")
and even if it is a valid name it's discarded right away

https://github.com/SciTools/iris/issues/3677

@jvegasbsc have a look at https://github.com/SciTools/iris/issues/3677#issuecomment-595177247 and then my cheeky comment https://github.com/SciTools/iris/issues/3677#issuecomment-595180142 - do you mind taking care of it? :beer:

@jvegasbsc have a look at SciTools/iris#3677 (comment) and then my cheeky comment SciTools/iris#3677 (comment) - do you mind taking care of it?

Setting an Iris development environment right now...

Any news here?

Just merged @jvegasbsc PR https://github.com/SciTools/iris/pull/3679 on iris to resolve this issue here.
Thanks Javier :beers:
This change will be included in the forthcoming iris v3.0.0 release, which is Python3 only.
We're aiming to get v3.0.0 out this summer... when I know firmer dates I'll be sure to let you guys know. Alternatively just ping me (I don't mind) and ask if you need an ETA.
Cheers :smile:

Thanks @bjlittle

Remove from the milestone, since we will not get Iris 3 before ESMValTool v2.0 release.


Microbenchmark for measuring impact of multiple threads calling cq_next

Creates its own fake polling engine that has zero polling overhead. i.e pollset_work just enqueues a completion tag.

Performance differences noted:
Benchmark                allocs_per_iteration    atm_add_per_iteration    atm_cas_per_iteration      cpu_time  locks_per_iteration      real_time  writes_per_iteration
-----------------------  ----------------------  -----------------------  -----------------------  ----------  ---------------------  -----------  ----------------------
BM_CreateDestroyPollset                                                                                +8.50                               +8.50

No significant performance differences

No significant performance differences

LGTM

Relevant thread in benchmark-discuss group: https://groups.google.com/forum/#!topic/benchmark-discuss/fTHb03RNbAE
(The questions I had were regarding cpu-time or walltime and whether the iterations reported are per-thread or across all threads.
After going through the benchmark code, I found that iterations reported are the total acorss all threads. Also, if using cpu-time, it is sliced across all threads (i.e benchmark cpu time = total of cpu time used by all thread)..so wall-time is a better for this)

No significant performance differences

All tests except Bazel Full Build & Tests (which we are ignoring for now) passed. Merging the change


Simple way (API endpoint) to retrieve header / footer content

Is your feature request related to a problem? Please describe.
You can retrieve the markdown, CSV and Text results via the API. I personally find that very convenient for "simple" lookup tasks in tables and text ...
Describe the solution you'd like
...but I miss having an API endpoint to get the header and footer content as well.
Describe alternatives you've considered
I can dig throught the JSON myself. I'd rather not.
Additional context
none

Hi @AndBu can I work on this
looking forward to your reply

Thanks for taking care of it. I am since then working on another project for another company, but I remember I would have greatly appreciated that feature. So go ahead and implement it :)


UI: Pop-up missing graphs for Climate and MQTT Sensor Components

Home Assistant release (hass --version):
Hassio 0.56.2
Python release (python3 --version):
I think Hassio uses 3.6
Component/platform:
climate/generic_thermostat
sensor/mqtt  ( Temperature Sensor)
Description of problem:
After an idle period when I click on the climate component I don’t get a get graph in the pop-up.
Same for a MQTT sensor recording temperature.
I get a pop-up but the graph portion is missing.
It works if I click on the same component again and again after the first failure.
Fails again after an idle period.  Something in the interface seems to have a wake-up problem?
I see this in Chrome on Windows and Safari on iPhone.
Seems to work using the iOS app on the iPhone.
I did not see this using Hassbian UI.
Perhaps this is a bug in the hassio UI?
Expected:
Pop-up with graph portion showing on the first click.
Problem-relevant configuration.yaml entries and steps to reproduce:
climate:
  - platform: generic_thermostat
    name: House
    heater: switch.furnace
    target_sensor: sensor.temperature
    min_temp: 15
    max_temp: 25
    target_temp: !secret temperature_home
    tolerance: 0.3
    min_cycle_duration:
      seconds: 10
    keep_alive:
      minutes: 3

sensor:
  - platform: mqtt
    state_topic: '/home/multisensor1'
    name: 'Temperature'
    unit_of_measurement: '°C'
    value_template: '{{ value_json.temperature }}'

Click on thermostat icon

Traceback (if applicable):

Additional info:
No log file errors.

Also seen on FireFox for Windows and iOS App on iPhone.

Also seen with FireFox on Windows and iOS App on iPhone.

Just as another point of data, I am seeing similar behavior in 0.58.1 on Safari. In 0.57.x, the behavior was intermittent, but now the graphs don't show up at all. Switching to Chrome solves the problem. I suspect that the problem has something to do with my SSL/nginx proxy configuration.
@gb53smith, are you using the nginx proxy, or connecting directly to port 8123?
I will try to do some more troubleshooting.

@tgerla
I am not using nginx proxy.
I am using Hassio with duckdns add-on with letsencrypt included.
On my router I forward port 8123 to port 8123
I usually access using the iPhone App with URL https://redacted.duckdns.org:8123
This work both internally and externally.
Lastly, I use the dnsmasq add-on to get above URL working internally.
I hope this provides some clues.

Same issue here. Running hassio 59.2. I can duplicate the issue on Chrome desktop and mobile, as well as, IE 11. It happens almost always on my downstairs climate graph, but now is occurring for both upstairs and downstairs. Not sure if it's relevant but I'm using Wink for climate.

Same issue here. Running hassio 59.2
Not using Wink.

Same here, using 0.60.0 with MQTT discovery through nginx on Chrome.


Add file counter to Workflow Extension

George Elias writes:

A little counter saying how many clips are loaded up would be helpful

This will be added in 1.0.1.


[SPARK-8095] Resolve dependencies of --packages in local ivy cache

Dependencies of artifacts in the local ivy cache were not being resolved properly. The dependencies were not being picked up. Now they should be.
cc @andrewor14

Merged build triggered.

Merged build started.

Test build #34785 has started for   PR 6788 at commit b6ef038.

Test build #34785 has finished for   PR 6788 at commit b6ef038.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

retest this please

Merged build triggered.

Merged build started.

Test build #34797 has started for   PR 6788 at commit b6ef038.

Test build #909 has started for   PR 6788 at commit b6ef038.

Test build #910 has started for   PR 6788 at commit b6ef038.

Test build #909 has finished for   PR 6788 at commit b6ef038.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

Test build #34797 has finished for   PR 6788 at commit b6ef038.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test build #910 timed out     for PR 6788 at commit b6ef038     after a configured wait of 175m.

retest this please

Merged build triggered.

Merged build started.

Test build #34850 has started for   PR 6788 at commit b6ef038.

Test build #34850 has finished for   PR 6788 at commit b6ef038.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

@brkyvz there seems to a legitimate test failure

Build triggered.

Build started.

Test build #35000 has started for   PR 6788 at commit f60772c.

Merged build triggered.

Merged build started.

Test build #35001 has started for   PR 6788 at commit 0037197.

Test build #35001 has finished for   PR 6788 at commit 0037197.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test build #35000 has finished for   PR 6788 at commit f60772c.

This patch fails Spark unit tests.
This patch does not merge cleanly.
This patch adds no public classes.

Build finished. Test FAILed.

Merged build triggered.

Merged build started.

Test build #35007 has started for   PR 6788 at commit a69e3e6.

Test build #35007 has finished for   PR 6788 at commit a69e3e6.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Merged build triggered.

Merged build started.

Test build #35016 has started for   PR 6788 at commit 48cc648.

Test build #35016 has finished for   PR 6788 at commit 48cc648.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Merged build triggered.

Merged build started.

Test build #35021 has started for   PR 6788 at commit 2875bf4.

Test build #35021 has finished for   PR 6788 at commit 2875bf4.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

retest this please

Merged build triggered.

Merged build started.

Test build #35048 has started for   PR 6788 at commit 2875bf4.

Test build #35048 timed out     for PR 6788 at commit 2875bf4     after a configured wait of 175m.

Merged build finished. Test FAILed.

retest this please

Merged build triggered.

Merged build started.

Test build #35060 has started for   PR 6788 at commit 2875bf4.

Test build #35060 has finished for   PR 6788 at commit 2875bf4.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Merging into master 1.4 thanks Burak

@brkyvz could you open a patch against branch-1.3? It doesn't merge cleanly there.


Python example breaks on mirroring traffic on Apple Silicon

Bug Description
When running a python app with mirrord, we encounter a bug introduced by hooking fcntl.
It seems that our hook messes with the var_args of fcntl, causing it to break on M1/Apple Silicon.
This is probably a bug upstream in frida, so this is mostly a tracking to link between the two issues.
Steps to Reproduce
mirrord exec --pod-name nginx-deployment-66b6c48dd5-phrpl /usr/local/bin/python3 -- -m http.server
Backtrace
2022-06-29T10:12:27.857622Z ERROR mirrord_layer::sockets: fcntl failed
    app.run(host="<IP_ADDRESS>", port=8080)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/flask/app.py", line 920, in run
2022-06-29T10:12:27.857693Z ERROR mirrord_layer::sockets: fcntl failed
    run_simple(t.cast(str, host), port, self, **options)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/werkzeug/serving.py", line 1065, in run_simple
2022-06-29T10:12:27.859086Z ERROR mirrord_layer::sockets: fcntl failed
    srv = make_server(
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/werkzeug/serving.py", line 849, in make_server
2022-06-29T10:12:27.859691Z ERROR mirrord_layer::sockets: fcntl failed
    return ThreadedWSGIServer(
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/werkzeug/serving.py", line 716, in init
2022-06-29T10:12:27.859794Z ERROR mirrord_layer::sockets: fcntl failed
    self.socket = socket.fromfd(fd, address_family, socket.SOCK_STREAM)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/socket.py", line 545, in fromfd
2022-06-29T10:12:27.859896Z ERROR mirrord_layer::sockets: fcntl failed
    nfd = dup(fd)
OSError: [Errno 22] Invalid argument

Relevant Logs
No response
Your operating system and version
Darwin Kernel Version 21.5.0: Tue Apr 26 21:08:37 PDT 2022; root:xnu-8020.121.3~4/RELEASE_ARM64_T6000 arm64
Local process
python
Local process version
3.9.13
Additional Info
No response

Found a workaround, leaving this open until upstream is fixed


Update the Similarity_search_with_images.ipynb to integrate BLIP model

Hi, awesome work!
I was wondering if it would be possible to update Similarity_search_with_images notebook to show a use case of using the BLIP model, which I see is the recommended model for Image captioning. I couldn't get the right way to change the line
embeddings = Embeddings({"method": "sentence-transformers", "path": "sentence-transformers/clip-ViT-B-32", "content": True, "objects": "image"})
So that it will work in a similar pipeline as the example shows.
Thanks

Thank you for the nice words.
Are you looking to build vectors for images or generate captions? If you're trying to generate captions, this notebook is a better example.
https://github.com/neuml/txtai/blob/master/examples/25_Generate_image_captions_and_detect_objects.ipynb

The BLIP model is default for Captions()?
I'm trying to search through the images in text query, so I do want to use Embeddings.search() method.

I'm interested in generating best most informative captions for an image, so that I'll be able to encode the text, and be able to search in a dataset of images. I wanted to give a try to BLIP, to see if it gets better results for my needs.

Captions pipeline is using BLIP by default?

It is not the default. You can set it like this.
from txtai.pipeline import Caption

caption = Caption("Salesforce/blip-image-captioning-base")

There is also a large model.

Thank you!

@davidmezzetti Can you please show a working snippit?
Iv'e being trying the following:
`%%capture
import glob
from PIL import Image
from txtai.embeddings import Embeddings
from txtai.pipeline import Caption
def images():
Create image caption pipeline
caption = Caption("Salesforce/blip-image-captioning-large")

for path in glob.glob(f'/path/*jpg'):
    # Add image object along with image metadata
    image = Image.open(path)
    yield (path, {"object": image, "format": image.format, "width": image.width, "height": image.height, "caption": caption(image)}, None)

Index with content and objects
embeddings = Embeddings(content=True, objects=True)
embeddings.index(images())`
This raises:
TypeError: object of type 'JpegImageFile' has no len()
What am I missing?

Note in that example it has:
embeddings = Embeddings(content=True, objects="image")

That what I was trying first, it gave same exception.

Hi
Still didn't figure it out, any idea?
Thanks!

The example notebook has the line:
embeddings = Embeddings({"method": "sentence-transformers", "path": "sentence-transformers/clip-ViT-B-32", "content": True, "objects": "image"})

If you're going to index binary images, you need to use a vector model that supports the input.

Closing this issue due to inactivity. Please re-open or open a new issue if there are further questions.


on react-native, debugger is not working after installing @bugsnag/react-native-performance

After installing @bugsnag/react-native-performance, I can see this image when turning on chrome debugger.
So I've inspect the installed codes and found getDeviceInfo is the synchronous method.
(My team uses old architecture of react-native)
And I found the documents(ios, android) said synchronous method doesn't work with chrome debugger.
Is there any side step or plan to resolve this?
Thank you.

Hi @withel21
We do have an item on our backlog aimed at investigating handled errors from the React Native debugger. We will be sure to keep you informed of any updates.

This feature request has been released in v2.7.0


NG 0.16.0 Travis issues

Working fine for Node 4,5,6, but not for iojs.
Added the travis snippet from the Readme, but no luck: https://travis-ci.org/pencilblue/pencilblue/jobs/176044958
This is what happens when I set the BUILD_ONLY=true flag: https://travis-ci.org/pencilblue/pencilblue/builds/176333203

We don't support io.js anymore (haven't for a while). Issue to remove them from the webpage: https://github.com/nodegit/nodegit.github.com/issues/47


Textual definition update: GO:0006086

The existing label and definition should be updated.

GO term ID and label for which you request a definition update

GO:0006086 acetyl-CoA biosynthetic process from pyruvate

I would suggest a NEW TERM NAME: pyruvate decarboxylation to acetyl-CoA

This is the name from the cross-referenced MetaCyc entry, which includes the most commonly used name for the pathway (see https://en.wikipedia.org/wiki/Pyruvate_decarboxylation). I had a lot of difficulty finding the GO term because it didn't even have this as a synonym.

New proposed definition (genus-differentia pattern, plus additional information if needed)

[Text below adds to existing definition]
The chemical reactions and pathways resulting in the formation of acetyl-CoA from pyruvate. In most organisms, this pathway links glycolysis to the TCA cycle, by a series of three reactions carried out by a multisubunit complex called the "pyruvate dehydrogenase complex", even though pyruvate dehydrogenase activity describes only one of those reactions.

Reference(s)
https://en.wikipedia.org/wiki/Pyruvate_decarboxylation

Additional information

Suggest also adding these synonyms (in addition to the existing term name):

pyruvate decarboxylation

pyruvate oxidation

oxidative decarboxylation of pyruvate

link reaction

I will take this one and action.
CC @rozaru  @thomaspd


Formatting is not working with XLSX Multiple sheets

Programming question?

My case is that i want to create multiple sheets with customer formatting.

Something not working as expected?
I have followed this documentation for formatting https://github.com/agershun/alasql/wiki/XLSX#example. It works fine for single sheet. But does NOT work when we do same for multiple sheets.

Formatting is not working with multiple sheets

Does this not provide this feature !?

I dont know. I was of the impression that you answered your own question - thats why I closed it.

Issue is still there with multiple sheets


envoy: refactor envoy agent ownership

Signed-off-by: Kuat Yessenov<EMAIL_ADDRESS>Move ownership of envoy agent to istio agent. This allows lifecycle control by the agent.

@kyessenov: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test release-notes_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@kyessenov: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test release-notes_istio

lint_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@kyessenov: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test release-notes_istio

lint_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test lint_istio

unit-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@kyessenov: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test release-notes_istio

lint_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test lint_istio

unit-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test unit-tests_istio

integ-ipv6-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-ipv6-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@kyessenov: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test release-notes_istio

lint_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test lint_istio

unit-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test unit-tests_istio

integ-ipv6-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-ipv6-k8s-tests_istio

integ-distroless-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-distroless-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@kyessenov: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test release-notes_istio

lint_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test lint_istio

unit-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test unit-tests_istio

integ-ipv6-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-ipv6-k8s-tests_istio

integ-distroless-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-distroless-k8s-tests_istio

integ-multicluster-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-multicluster-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@kyessenov: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test release-notes_istio

lint_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test lint_istio

unit-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test unit-tests_istio

integ-ipv6-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-ipv6-k8s-tests_istio

integ-distroless-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-distroless-k8s-tests_istio

integ-multicluster-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-multicluster-k8s-tests_istio

integ-helm-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-helm-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@kyessenov: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test release-notes_istio

lint_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test lint_istio

unit-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test unit-tests_istio

integ-ipv6-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-ipv6-k8s-tests_istio

integ-distroless-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-distroless-k8s-tests_istio

integ-multicluster-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-multicluster-k8s-tests_istio

integ-helm-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-helm-tests_istio

integ-operator-controller-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-operator-controller-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@kyessenov: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-ipv6-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-ipv6-k8s-tests_istio

integ-multicluster-k8s-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-multicluster-k8s-tests_istio

integ-helm-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-helm-tests_istio

integ-operator-controller-tests_istio
e35d46c745aeea6b12bb84852194d0a7ee3e9784
link
/test integ-operator-controller-tests_istio

unit-tests_istio
ebda9d8097f636cd861c2cef7d550d20b5bf0725
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Leak checker failure seems irrelevant:
        internal/poll.runtime_pollWait(0x7f129b64c728, 0x72, 0x7029bd0)
        internal/poll.(*pollDesc).wait(0xc001486018, 0x72, 0x1000, 0x1000, 0xffffffffffffffff)
        internal/poll.(*pollDesc).waitRead(...)
        internal/poll.(*FD).Read(0xc001486000, 0xc000f83000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
        net.(*netFD).Read(0xc001486000, 0xc000f83000, 0x1000, 0x1000, 0x0, 0x736f420, 0x0)
        net.(*conn).Read(0xc000b94128, 0xc000f83000, 0x1000, 0x1000, 0x4492fb, 0xc000cac410, 0x10)
        net/http.(*persistConn).Read(0xc000e76fc0, 0xc000f83000, 0x1000, 0x1000, 0x1, 0x0, 0xc00133fa60)
        bufio.(*Reader).fill(0xc000adb740)
        bufio.(*Reader).Peek(0xc000adb740, 0x1, 0x0, 0x1, 0x4, 0x1, 0x3)
        net/http.(*persistConn).readLoop(0xc000e76fc0)
        created by net/http.(*Transport).dialConn
        Leaked goroutine: goroutine 228 [select]:
        net/http.(*persistConn).writeLoop(0xc000e76fc0)
        created by net/http.(*Transport).dialConn

This PR does not create any new connections or re-orders them.

@kyessenov: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

unit-tests_istio
ad4eea6118e4fe71745a0191c7636c9789ce347e
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn How do I debug the leaking goroutine? There is no source code reference in the trace.

/retest

I think it means some HTTP connection is not closed. Often from missing resp.Body.Close or httpServer.Close()

@kyessenov: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-k8s-tests_istio
ad4eea6118e4fe71745a0191c7636c9789ce347e
link
/test integ-security-k8s-tests_istio

unit-tests_istio
ad4eea6118e4fe71745a0191c7636c9789ce347e
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn Re-ordering some code fixes the issue. So either bootstrap generation has an HTTP server / makes an HTTP connection (???) or the leak checker is flakey.

@kyessenov: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-multicluster-tests_istio
92f4892697492a26c015a5de15a23c303e46c29d
link
/test integ-security-multicluster-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@kyessenov: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-multicluster-tests_istio
92f4892697492a26c015a5de15a23c303e46c29d
link
/test integ-security-multicluster-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


Compiler errors on building player

these errors only show up when attempting to build the player:
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceAgentTests.cs(4,19): error CS0234: The type or namespace name TestTools' does not exist in the namespace UnityEngine'. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceAgentTests.cs Line: 4)
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceAgentTests.cs(5,7): error CS0246: The type or namespace name `NUnit' could not be found. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceAgentTests.cs Line: 5)
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceLinkTests.cs(4,19): error CS0234: The type or namespace name TestTools' does not exist in the namespace UnityEngine'. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceLinkTests.cs Line: 4)
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceLinkTests.cs(5,7): error CS0246: The type or namespace name `NUnit' could not be found. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceLinkTests.cs Line: 5)
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceModifierTests.cs(4,19): error CS0234: The type or namespace name TestTools' does not exist in the namespace UnityEngine'. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceModifierTests.cs Line: 4)
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceModifierTests.cs(5,7): error CS0246: The type or namespace name `NUnit' could not be found. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceModifierTests.cs Line: 5)
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceModifierVolumeTests.cs(4,19): error CS0234: The type or namespace name TestTools' does not exist in the namespace UnityEngine'. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceModifierVolumeTests.cs Line: 4)
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceModifierVolumeTests.cs(5,7): error CS0246: The type or namespace name `NUnit' could not be found. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceModifierVolumeTests.cs Line: 5)
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceTests.cs(4,19): error CS0234: The type or namespace name TestTools' does not exist in the namespace UnityEngine'. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceTests.cs Line: 4)
Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceTests.cs(5,7): error CS0246: The type or namespace name `NUnit' could not be found. Are you missing an assembly reference?
(Filename: Assets/NavMeshComponenets/NavMeshComponents-master/Assets/Tests/NavMeshSurfaceTests.cs Line: 5)

Thanks, we'll check that.
Just to make sure, do you use the right branch that matches your Unity editor's version? Which version is that?

This issue has probably been fixed in the meantime because I cannot reproduce it anymore.

This issue has probably been fixed in the meantime because I cannot reproduce it anymore.


Binary Indicator vs Output probabilities

I see that the paper mentions that we can use a binary indicator for f(x) instead of a probability.

f(x) is the probability (or a binary indicator) that x belongs to a certain class

I do not see code examples where a binary indicator is used instead of a probability i.e. a model outputs only 0 and 1 labels instead of probabilities of the 2 classes
I am trying to understand how using a binary indicator vs probabilities would affect LIME's explanations? Is there a reason probabilities are preferred over binary indicators?

The way to do it would be to just reshape predictions into probabilities that are always 0 or 1. We prefer probabilities (when available) because they allow us to use the signal from changes in prediction probability that do not necessarily change the prediction (e.g. if you change P(1) from 1 to 0.6, that has signal that we can use for explanation, perhaps more than if you change from 0.51 to 0.49)


Add support for multihost provision and prepare

This PR adds support for provisioning multiple machines and running prepare on them as defined in the spec in #878 . The main foundation has already been in place, so just some adjustments were needed. I've been testing on the following simple plan:
provision:
  - name: server-one
    role: server
    how: virtual
  - name: server-two
    role: server
    how: virtual
  - name: client-one
    role: client
    how: virtual
  - name: client-two
    role: client
    how: virtual
prepare:
  - how: shell
    script: echo 'Server'
    on: server-one
  - how: shell
    script: echo 'Client'
    on: client-one
execute:
    script: tmt --help

There is a problem I've encountered that has to deal with the specification and how fmf works... It uses PyYAML which uses YAML 1.1 where on string is understood as a boolean scalar value (True) when parsed... This causes the on: server syntax to not work (it is parsed as True: server) and there is nothing I can do on tmt side to fix it (hence the blocked label :( ). Perhaps we could convert fmf to ruamel.yaml as well and require YAML 1.2 where such syntax is not supported anymore and true must be used. Or we could change the attribute name in the spec but I am not a big fan of this, on is very clean and logical. @psss @lukaszachy @thrix or anyone whom it may concern - any ideas or thoughts on this? This is the reason why the above plan's prepare will be run 8 times (each script will be run on each guest (2x4)).
Edit: Turns out it may be possible to disable on -> True mapping (see https://stackoverflow.com/a/36470466 ). Looks like there is a class-level dict so modifying it inside tmt should have an effect on parsing in fmf but I don't think this should be the permanent solution or at least we should think about alternatives
There are a few more things to be done aside from the above mentioned:

[x] Add test coverage
[ ] Figure out how to support this even from the CLI (has to be discussed a bit more in depth).
[x] Fix the tests (looks like my solution for podman container naming is not sufficient and can break :) )
[x] Workaround on -> True mapping
[x] Implement "pre-prepare" that gives guests info about other guests (e.g. roles, IP addresses)

@The-Mule I remember you mentioned that you would be willing to help. I'd appreciate any feedback but please take it with a grain of salt due to the problem described above...

I believe we need to have also some kind of "implicit prepare" step  where we need to let machines know roles and addresses of all other machines.  For instance, server-one machine need to know how to reach server-two, client-one and client-two and their roles. I suppose the easier way how to do this is to export list of roles to env variables, eg. export SERVER="server-one server-two"; export CLIENT="client-one client-two" and perhaps adding ip addresses of all provisioned machines to /etc/hosts.

I've just pushed a fix for the on-> True mapping so the prepare should now be run only on the correct guests. Will work on some test coverage soon. Also good point on the implicit prepare

I've added the implicit prepare step for multihost which exports the roles and updates /etc/hosts. One more thing is probably trying to add support for CLI. I will try to put something together :)

During our discussion with @psss we agreed that it does not make sense to block this on the config merging and we can do it later since it will need to be done for all multihost steps anyway. I am going to rebase this PR to master and remove the yaml hack, lets see what it does with new fmf :)

There seems to be a typo in the test:
./test.sh: line 36: rlAssertgrep: command not found

Interesting that it failed on epel-8 only...

Interesting that it also passed locally and all checks were green before I pushed this branch again.

Thanks for all the suggestions. I will look at the failing test and improve the code a bit hopefully tomorrow. Github doesn't let me respond to this:

Do you still plan changes here? Or shall we finish the _keys handling in #908 first?

The thing is, I am not sure what the best way to approach it is. One of my thoughts would be to do it in inheritance of wake and other similar methods but I remember that it got a bit complicated so I ended up keeping it like it is for now. But anyway it should be unified with #908. Since this is a bigger PR with some more work to do, I'd prefer to finish #908 quickly and have a clear vision of how we want to handle _keys and modify this PR accordingly. Maybe we could discuss this at hacking.

@psss thanks for the comments, most has been fixed. Two things are left to do:

_keys depending on the outcome of the discussion
the fail in setting up reboot script. It's weird since in a virtual machine, it works. But then in container it fails to copy even though the commands executed are completely identical to singlehost setup :/

@psss so there were quite a lot of conflicts but I got it working. Could you please take a look again? I hope nothing broke in the rebase process... However I ran into a problem with the test that I have and there seems to be a regression in fmf with tree pruning. Not sure if it has something to do with the YAML changes. Reproducer: Create 2 plans roles and noroles and run tmt run plan -n roles. Both of the plans will be run, whereas the previously on roles was run. This is the reason for the provision test failing.
I gave debugging a quick shot and the name is passed correctly to fmf.tree.prune() which returns both of the nodes.

Reproducer: Create 2 plans roles and noroles and run tmt run plan -n roles. Both of the plans will be run, whereas the previously on roles was run.

I don't think that previously plan --name roles would not match the noroles plan. Because the search there was always done as a regular expression, so any substring will match. There was no change in this part of the code.
Have no idea what else could cause the problem and I think it's probably not worth investigating more the original cause of the failure, going to modify the test match the desired plan only.

Just noticed that there is no error message reported to the user if multiple prepare configs are present and name is not defined. Example config:
provision:
    how: local
execute:
    script: tmt --help
prepare:
  - how: shell
    script: echo one
  - how: shell
    script: echo two

Previously the following would be reported:
Missing 'name' in the prepare step config of the '/plans/example' plan.

Which means that both prepare plugins share the same name default and corresponding workdir.

Now tests passed, only the epel-8 job failed on /tests/multihost/prepare. Seems that the on keyword is not respected there.

Problem seems to be caused by older ruamel.yaml which still interprets on as a boolean:
# fmf show --name name
/plan/prepare/name
execute: {'script': 'tmt --help'}
prepare: {True: 'server-one', 'how': 'shell', 'script': "echo 'Server one'"}
provision: [{'how': 'container', 'name': 'server-one', 'role': 'server'},
{'how': 'container', 'name': 'server-two', 'role': 'server'},
{'how': 'container', 'name': 'client-one', 'role': 'client'},
{'how': 'container', 'name': 'client-two', 'role': 'client'}]

# rpm -q python3-ruamel-yaml
python3-ruamel-yaml-0.15.41-2.el8.x86_64

Regarding the newer ruamel.yaml version there is no response from the maintainer:
https://bugzilla.redhat.com/show_bug.cgi?id=1700334

Seems the only way forward for now is to handle the True --> 'on' conversion directly in tmt.

Hello @psss, I understand that "on is very clean and logical", but is it really worth the troubles you have? If you work around it by using some hacks, the resulting format will not be standard YAML and will cease to be usable with generic YAML manipulating tools, which is not clean and logical anymore. What about using e.g. onhost?

Silly idea but how about using at instead of on? https://www.differencebetween.com/difference-between-on-and-at/ Imho it can be used as to refer to an address use case

Or host - whatever, just please something that parses as a string if you intend it to be a string.
<bikeshed>
I usually look for prior art when trying to come up with naming. host would correspond to Ansible's hosts (list of hosts referring to an inventory, which is quite similar to what is intended here). Is there some popular tool which refers to hosts, target or something similar using a preposition?
</bikeshed>

... or hosts as it can be a list :-) I understand that using a preposition has the advantage of catching both the singular (scalar) and plural (list) cases.

after a discussion, the best solution seems to be where - there is already how. #992

Note that #992 has been merged.

@FrNecas, if I remember correctly there were just a few minor adjustments left after the latest review. Could you please rebase on the latest master? Would be nice to get this merged soon. Thanks.

Hm, one interesting thing: From the logs it seems that the order is not properly set for the multihost prepare steps:
how: shell
order: 50
guest: client-two
overview: 1 script found
script: echo 'All'

how: multihost
summary: Setup guest for multihost testing
name: multihost
order: 50
guest: client-two

@FrNecas any quick idea, what might be wrong?


extractFromHtml() returns null

extract() works fine, and returns the expected output.
When extracting data with extractFromHtml(), I get null.
I have tried the following examples, and they all return null.
const res = await fetch(url)
const html = await res.text()

const article = await extractFromHtml(html)

console.log(article);

const response = await got(url);

const data = await extractFromHtml(response.body);

console.log(data);

I would assume this data would work as the input, but it doesn't:

@shipcommit thank you, I will check this case asap.

@shipcommit hello, I could not reproduce the error as what you faced. Native fetch and got both work for me.
Please share more info about your use case:

Platform (Node.js 18.5.0, Bun 0.5.2)
Article Extractor version
Your script in detail, url to extract, etc

Thank you.

I get the same with this URL https://en.wikipedia.org/wiki/Plato, but exactly the same setup with this URL worked flawlessly. https://www.aftenposten.no/norge/i/69V75W/terrorsiktede-soestre-fra-baerum-paagrepet-av-pst
Would be nice if it could return the reason why it returns null, to make it easier to diagnose.

Never mind, I figured it out - it was due to some pre-processing I was doing. Would still be nice with better error messages.

@houshuang thank you for your info and suggestion.


Automatic TypeObject representation registration for DynamicTypes [21058]

Description
Regeneration of IDL source code to compile against eprosima/fast-dds#4746

Contributor Checklist

[x] Commit messages follow the project guidelines.
N/A Tests that thoroughly check the new feature have been added/Regression tests checking the bug and its fix have been added; the added tests pass locally
[x] Changes are API compatible.
N/A Applicable backports have been included in the description.

Reviewer Checklist

[x] The PR has a milestone assigned.
[x] The title and description correctly express the PR's purpose.
[x] Check contributor checklist is correct.
[ ] Check CI results: changes do not issue any warning.
[ ] Check CI results: failing tests are unrelated with the changes.

✅ Passed manual ci. Error is unrelated. Build and tests passed.


fetchCargoTarball: sha256 depends on name

This #85700 hash doesn't match the one in #85640. I believe this is because of the different name:
https://github.com/NixOS/nixpkgs/blob/c93e4cba929acd07f94e51c21fa731746848882e/pkgs/build-support/rust/fetchCargoTarball.nix#L58-L72
This doesn't seem to be a nice behaviour. I guess, this can be fixed by adding -C "$name" option to tar and recalculating all the hashes.
cc @bhipple

I'd argue it's debatably nice behavior.  While depending on more things is a bad thing in general, in this case if the name/version change the cargoSha256 is always going to change as well, and by depending on name explicitly we can give the cargoDeps package a more useful store path name than just "/nix/store/-source".
I was considering making fetchFromGitHub behave this way as well, though since that'd have huge scope it'd need widespread discussion and agreement.

@bhipple If I remember correctly, the name of the tarball in the store does not matter because you use outputHashMode = "flat". The dependency is there because your tarball contains a directory called $name.

In my - perhaps niche - use case, the new behavior is actually an impediment, because I am building many variants (with different compile-time options) of the same program with the same cargo dependencies. I am now forced to give all variants the same package name, even though I could otherwise easily give each variant an appropriate name. The alternatives are 1) tediously edit a dozen sha256s every time a dependency changes or 2) redefine fetchCargoTarball in my code (which sounds messy and fragile); none of them are very appealing.

Not sure if it's that simple. When looking up a hash in the the store, how would Nix determine which tarball to get?

I'm not sure I understand what you say. The store path is determined by the hash of the contents and the name suffix. I think Nix will rebuild each different store path independently, but it should be possible to implement an optimization that would copy an existing store path with the same content hash and different name. This could be further optimized with use of hardlinks, similarly to how nix-store --optimize works. I need to mention that what I just described will not help you when using the current implementation of fetchCargoTarball because latter produces slightly different tarballs for different store names. And that is the issue we are discussing here.

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/how-exactly-is-cargosha256-computed/10727/4


where is cmakelist.txt?

Dear xinsuinizhuan,
you can find our CMakeList here. Additionally, we are using a parent project, which has another CMakeList. More instructions and the txt file can you find here.
best regards


After upgrading environment, gist command fails

After running nix-env -u --always to update my environment, the gist command fails. I suspect this is due to a dependency that is failing to be capured in a build product, since the error seems to suggest a ru by module required by gist disappeared.
[maurer@fragarach:~]$ gist
/nix/store/ffa9fzypzwxw8gggwsgw60c1wmymh1ar-ruby-2.3.0-p0/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- bundler/setup (LoadError)
	from /nix/store/ffa9fzypzwxw8gggwsgw60c1wmymh1ar-ruby-2.3.0-p0/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /home/maurer/.nix-profile/bin/gist:16:in `<main>'

[maurer@fragarach:~]$ which gist
/home/maurer/.nix-profile/bin/gist

@cstrahan You were the last one to edit the file, so I figured I'd bring it to your attention.

+1

Which version of gist is that ? 4.5.0 from master should work fine.

I'm on nixos-unstable plus a few local changes that shouldn't affect gist or anything ruby related.
t (twitter client) was broken too, but I just removed it since I wasn't using it.
$ gist --version

/nix/store/h4sibipp5fp83nk100mrp8qhypvd8lr9-ruby-2.3.0-p0/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- bundler/setup (LoadError)
        from /nix/store/h4sibipp5fp83nk100mrp8qhypvd8lr9-ruby-2.3.0-p0/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from /run/current-system/sw/bin/gist:16:in `<main>'

Okay, it's not working on unstable but it's fixed in master. Any days now :)

As we're already having so many open tickets that won't get closed because people forget about them after they're fixed and it is indeed also working fine for me on master, I'm closing this for now. If you have problems after the next channel release, please feel free to reopen. Thanks!


Support for cell hashing (10x data)

Hi all,
Thanks for developing this very interesting and useful package.
Am I correct in assuming there is no compatibility with demultiplexing cell hash data with TCR repertoire analysis (10x) at the current stage?

Hi, @CAC13 !
Yes, you are right. We are currently working on improving single-cell support.
I will get back to you with any updates.
Best regards,
Maria Samokhina


Adds support for Tox.

Adds tox configuration for our stated supported versions of Python.
Adds setup tutorial documentation using pyenv.
Adds ignores for tox build detritus.
Implements #22

Looks good to me.


[1.17] Update markupsafe-1.1.1 hash

This should resolve build failures due to an unexpected checksum for MarkupSafe-1.1.1 pip package

ping @lizan

The main branch is now using MarkSafe 2.0.1 - https://github.com/envoyproxy/envoy/blob/main/configs/requirements.txt#L4
Does this change only affect 1.17.x?
/lgtm deps

Does this change only affect 1.17.x?

Yes.

I see the exact failure starting from yesterday. I end up with the exact patch here


Stack Trace for Debugging

As discussed on the discord channel, it would be very useful if there was an option to output the stack after the execution of each opcode.
Currently if I have a failing test I have to try and isolate the problem by modifying the PyTeal or go through the long process of setting up the execution environment and using the teal debugger tool.

@gidonkatten as discussed on discord, we have planned to add a helper function in our current sprint. Thanks for creating the issue :)


Simplify cache-control header in some cases

The Cache-Control setting 'public, no-cache' should really be just
'no-cache', as 'no-cache' takes precedence.
('no-cache' really means 'revalidate').
Signed-off-by: David A. Wheeler<EMAIL_ADDRESS>

In some cases Rails quietly adds "private" to Cache-Control. I think we should check to make sure that isn't happening here before we merge.


ARROW-12494: [C++] ORC adapter fails to compile on GCC 4.8

The crossbow centos-7 has passed https://github.com/ursacomputing/crossbow/runs/2400904701

The CI failures are unrelated, merging.


Good pattern to publish answer to temporary queue

Say I have facade (for front-end) microservice, which uses HTTP interface to talk to outside world and AMQP interface to talk inside application cluster (inter-service communication).
When facade microservice receives HTTP-request from the outside client, it then publishes event into RabbitMQ broker with the mark, that the response to that request should be delivered to the explicit temporary queue. And then it subscribes to that temporary queue waiting for the answer.
When an answer is arrived, facade will resend it as a HTTP response to the outside client.
The question is: what are some good patterns to publish an answer from hutch consumer to such temporary queue?

Seems to be the same question as #34.

I had a similar use case. I use hutch to publish/subscribe to durable topics but I use bunny directly to respond to temporary queues. I wrote a blog post about this here.

@gottfrois Images seems corrupted

oh really? let me fix that. Thx for the feedback


Add voice recognition search 🌟

Implement the search functionality using voice .

Hey! I've had experience with web and related js frameworks, I believe I can work on this functionality. Please assign this issue to me!

 Are you going to give me an API key to work with? Or is it commented out somewhere in the code?


Update README.md

Resolved issue #146
Added DEVintersection to the conferences section
In this pull request

[ ]  I am adding a new resource.
[ ]  I am adding a new step
[ ]  I am providing an edit
[ ] Removing a resource

Adding new resource

The resource I am adding is _ _ _ _
I am adding this resource to _ _ _ _ step.
I think this resource deserves to be in this list because _ _ _ _

Do not add more than one during hacktoberfest
Add new step

The step I am adding is _ _ _ _
The reason why I think this step should be there is because _ _ _ _

[ ] I have added at least one resource to this step

Do not add more than one during hacktoberfest
Providing an Edit

The edit I am providing is to _ _ _ _

Do not add more than one during hacktoberfest
Remove a resource

The resource I am removing is _ _ _ _
I am removing this resource from _ _ _ _ step.
I think this resource should not be in this list because _ _ _ _

Don't ask to remove stuff - unless you believe the content violates the code of conduct

Um, it looks like you copy pasted the text and then deleted the branch without waiting for it to be approved or merged... You need to follow the instructions and complete a Pull Request with the changed data in it


[Event Request] Codeunit 7312 - Create Pick - OnCalcQtyOutstandingBaseAfterSetFilters

Dear Support,
We would like to add a new event called "OnCalcQtyOutstandingBaseAfterSetFilters" to Create Pick codeunit, CalcPickQtyAssigned procedure.
    local procedure CalcPickQtyAssigned(LocationCode: Code[10]; ItemNo: Code[20]; VariantCode: Code[10]; UOMCode: Code[10]; BinCode: Code[20]; var TempWhseItemTrackingLine: Record "Whse. Item Tracking Line" temporary) PickQtyAssigned: Decimal
    var
        WhseActivLine2: Record "Warehouse Activity Line";
    begin
        WhseActivLine2.Copy(TempWhseActivLine);
        with TempWhseActivLine do begin
            Reset();
            SetCurrentKey(
              "Item No.", "Bin Code", "Location Code", "Action Type", "Variant Code",
              "Unit of Measure Code", "Breakbulk No.", "Activity Type", "Lot No.", "Serial No.");
            SetRange("Item No.", ItemNo);
            SetRange("Location Code", LocationCode);
            if Location."Bin Mandatory" then begin
                SetRange("Action Type", "Action Type"::Take);
                if BinCode <> '' then
                    SetRange("Bin Code", BinCode)
                else
                    SetFilter("Bin Code", '<>%1', '');
            end else begin
                SetRange("Action Type", "Action Type"::" ");
                SetRange("Bin Code", '');
            end;
            SetRange("Variant Code", VariantCode);
            if UOMCode <> '' then
                SetRange("Unit of Measure Code", UOMCode);
            SetRange("Activity Type", "Activity Type");
            SetRange("Breakbulk No.", 0);
            if WhseItemTrkgExists then
                SetTrackingFilterFromWhseItemTrackingLineIfNotBlank(TempWhseItemTrackingLine);

            //>>New Event
            OnCalcQtyOutstandingBaseAfterSetFilters(TempWhseActivLine, TempWhseItemTrackingLine);
            //<<New Event

            CalcSums("Qty. Outstanding (Base)");
            PickQtyAssigned := "Qty. Outstanding (Base)";
        end;
        TempWhseActivLine.Copy(WhseActivLine2);
        exit(PickQtyAssigned);
    end;

Event:
    [IntegrationEvent(false, false)]
    local procedure OnCalcQtyOutstandingBaseAfterSetFilters(var TempWhseActivLine: Record "Warehouse Activity Line" temporary; var TempWhseItemTrackingLine: Record "Whse. Item Tracking Line" temporary)
    begin
    end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 10853.


I think now it's time to introduce Event Source

I think we can now introduce the concept of Event Sourcing to make this project more closer to Event Driven

Thanks for the suggestion, however this is not a concept that I want to demonstrate as part of this repo. If you were interested in learning more, this course covers it well - https://www.pluralsight.com/courses/modern-software-architecture-domain-models-cqrs-event-sourcing


Make sure long running Table operations are interruptible

Our engine uses safepoints to interrupt running threads when an existing job has to be cancelled.
These safepoints are polled by our Truffle interpreter around method calls allowing easy interruption of Enso code. However, once we enter Polyglot Java code - these invocations were not interruptible.
This is especially problematic as these interrupts are used to cancel execution when some parameters of a computation have been changed and it needs to be recomputed. If the computation is not interruptible it has to be finished first which is a waste of time and resources.
'Ironically' many of the most intensive and possibly long running computations are written in Java (for performance) - that includes many Column operations, joins, current implementation of aggregates etc. This means these likely long running computations cannot be interrupted.
Apparently this can be solved quite easily - Context::safepoint can be called periodically in the polyglot Java helpers to poll for the safepoints and allow the interrupts.
I think we should add a call to Context::safepoint every few iterations in our long running operations. This should help with making the IDE more responsive.

[x] Create a scenario to check the interrupts (e.g. a Java method that runs for a few minutes, just sleeping).
i. Try running it as-is and verify that once we change the inputs, it still waits until finish - wasting time and resources.
ii. Extend it with periodic calls to safepoint, possibly printing something to logs to make it clear it works.
iii. Run it again and verify that now it is interrupted immediately.
[ ] Adapt our long running operations in Table - map, zip, join, aggregate etc. to call safepoint.

We can try calling it on every iteration. If we realise that it is too slow, we can instead call it every 10 or 100 iterations.
We should go through the Table library and add the safepoints in all long running computations. This will include also: file reading (whether we should interrupt writing is a separate question - there for data integrity it may be better to keep it not-interruptible);

essentially every for loop that does not have a constant / usually small bound (i.e. probably searching for columns does not necessary need to be interruptible as the column count should be relatively small - although maybe it is worth making it as well...) but definitely loops bound by row count which may be large.

[x] Check some benchmarks to see if there is any noticeable difference. This can help us tell if we should run it on every iteration or every 10 to decrease any potential impact (ideally it should be negligible).

Related to #6917 stopping as well.

I've created a proof of concept to verify if this idea will work in practice.
Here's a video:
https://github.com/enso-org/enso/assets/1436948/66a15e40-edf7-449f-ab86-364d3043b3c4
You can see that when I'm switching the modulus setting (3, 5, 7, 13) - the node just below it (computed before the "long computation") refreshes very quickly in enso and java-safepoint mode. The node with the computation gets updated after 10-20s (that's the length of the "long computation"), but the node before updates almost immediately - even if the long computation from the previous setting did not finish, it is correctly interrupted.
To compare, when I switch to java-raw (no safepoints), the node just below the modulus setting does not get updated as quickly - we can see that its update waits until the scheduled "long computation" finishes - which takes some time. Showing that this kind of Java computation is not interruptible.

So the video above proves the viability of this change. Indeed, long running Java computations without safepoints are reducing the interactivity of the IDE - 'polluting' the run queue and delaying updates of other nodes, even if the result of such computation is no longer valid.
If we add safepoints, the Java computations become as interruptible as Enso ones and thus allow for more interactivity - trying to execute on latest data as soon as possible, without waiting for obsolete ones.

The code related to the demo:
Interupts.zip
from Standard.Base import all
from Standard.Table import all
from Standard.Database import all
from Standard.AWS import all
import Standard.Visualization

polyglot java import foo.Foo

long_compute_pure_enso n setting =
    (0.up_to n).fold 0 (x -> y-> (x + y) % setting)

long_computation computation_type n setting order_enforcer =
    # order enforcer makes sure that computation starts _after_ the "before" message finished
    order_enforcer.if_not_error <| case computation_type of
        "enso" ->
            long_compute_pure_enso n setting
        "java-safepoint" ->
            Foo.runComputationInterruptible n setting
        "java-raw" ->
            Foo.runComputation n setting

main =
    settings = [3, 5, 7, 13]
    settings_row = Table.from_rows (settings.map .to_text) [settings] . first_row
    setting = settings_row.at '5'

    computation_types = ["enso", "java-safepoint", "java-raw"]
    computation_row = Table.from_rows computation_types [computation_types] . first_row
    computation_type = computation_row.at 'java-raw'

    n_row = Table.from_rows ["10K", "1M", "200M", "1B"] [[(10^4), (10^6), (2 * 10^8), (10^9)]] . first_row
    n = n_row.at '1B'

    before = "Before long: "+setting.to_text
    result = Main.long_computation computation_type n setting before
    after = "(" + result.to_text + ") " + "After long: " + setting.to_text

package foo;

import org.graalvm.polyglot.Value;
import org.graalvm.polyglot.Context;

public class Foo {
    public static long runComputation(long n, long setting) {
        long acc = 0;
        for (int i = 0; i < n; ++i) {
            acc = (acc + i) % setting;
        }
        return acc;
    }

    public static long runComputationInterruptible(long n, long setting) {
        Context ctx = Context.getCurrent();
        long acc = 0;
        for (int i = 0; i < n; ++i) {
            acc = (acc + i) % setting;
            ctx.safepoint();
        }
        return acc;
    }
}

I also wanted to do a simple performance comparison to see what is the cost of adding the safepoints:
from Standard.Base import all

from Standard.Test import Bench

polyglot java import foo.Foo

long_compute_pure_enso n setting =
    (0.up_to n).fold 0 (x -> y-> (x + y) % setting)

long_computation computation_type n =
    mod = 1997
    case computation_type of
        "enso" ->
            long_compute_pure_enso n mod
        "java-safepoint" ->
            Foo.runComputationInterruptible n mod
        "java-raw" ->
            Foo.runComputation n mod

main =
    n = 10^7
    iter_size = 20
    num_iters = 20

    IO.println "Measuring Java Raw"
    Bench.measure (long_computation "java-raw" n) "java-raw" iter_size num_iters

    IO.println "Measuring Java Safepoint"
    Bench.measure (long_computation "java-safepoint" n) "java-safepoint" iter_size num_iters

    IO.println "Measuring Enso"
    Bench.measure (long_computation "enso" n) "enso" iter_size num_iters

(Enso is just as a general reference)
The results are:
Measuring Java Raw
java-raw/iteration:0: 49.55ms
java-raw/iteration:1: 50.15ms
java-raw/iteration:2: 48.99ms
java-raw/iteration:3: 49.17ms
java-raw/iteration:4: 47.62ms
java-raw/iteration:5: 49.33ms
java-raw/iteration:6: 49.11ms
java-raw/iteration:7: 49.11ms
java-raw/iteration:8: 49.77ms
java-raw/iteration:9: 50.14ms
java-raw/iteration:10: 49.31ms
java-raw/iteration:11: 49.27ms
java-raw/iteration:12: 49.02ms
java-raw/iteration:13: 48.86ms
java-raw/iteration:14: 48.04ms
java-raw/iteration:15: 47.82ms
java-raw/iteration:16: 49.23ms
java-raw/iteration:17: 49.19ms
java-raw/iteration:18: 48.89ms
java-raw/iteration:19: 48.99ms
java-raw average: 49.08ms
Measuring Java Safepoint
java-safepoint/iteration:0: 51.5ms
java-safepoint/iteration:1: 49.37ms
java-safepoint/iteration:2: 48.7ms
java-safepoint/iteration:3: 48.6ms
java-safepoint/iteration:4: 49.08ms
java-safepoint/iteration:5: 48.36ms
java-safepoint/iteration:6: 48.8ms
java-safepoint/iteration:7: 50.26ms
java-safepoint/iteration:8: 48.65ms
java-safepoint/iteration:9: 49.23ms
java-safepoint/iteration:10: 49.26ms
java-safepoint/iteration:11: 54.08ms
java-safepoint/iteration:12: 55.5ms
java-safepoint/iteration:13: 55.58ms
java-safepoint/iteration:14: 64.02ms
java-safepoint/iteration:15: 89.76ms
java-safepoint/iteration:16: 85.49ms
java-safepoint/iteration:17: 77.77ms
java-safepoint/iteration:18: 84.21ms
java-safepoint/iteration:19: 94.28ms
java-safepoint average: 60.13ms
Measuring Enso
enso/iteration:0: 284.41ms
enso/iteration:1: 160.03ms
enso/iteration:2: 149.88ms
enso/iteration:3: 151ms
enso/iteration:4: 149.97ms
enso/iteration:5: 150.05ms
enso/iteration:6: 150.22ms
enso/iteration:7: 146.64ms
enso/iteration:8: 147.49ms
enso/iteration:9: 146.74ms
enso/iteration:10: 147.9ms
enso/iteration:11: 149ms
enso/iteration:12: 147.29ms
enso/iteration:13: 150.05ms
enso/iteration:14: 152.96ms
enso/iteration:15: 148.29ms
enso/iteration:16: 148.81ms
enso/iteration:17: 149.07ms
enso/iteration:18: 148.43ms
enso/iteration:19: 150.12ms
enso average: 156.42ms

Interestingly, the cost of safepoints seems to be negligible in the first 10 iterations, within the measurement precision.
But then a weird thing happens - the times have increased significantly. However I suspect it may be my Windows machine launching some background task or a cooling thing and not necessarily an issue with safepoints. I will run better measurements during dinner.

I've ran some more and longer iterations and the results are clearly showing that the cost of safepoints in the Java code seems to be negligible:

Safepoints
 Average [ms]
 Standard Deviation

No
 437.4968
 3.1423

Yes
 435.7168
 3.1194

Actually, from the measurements it seems like the code with the added safepoint was slightly faster (!) - but that is probably mostly due to the precision of the measurement.
cc: @JaroslavTulach

Spreading Context.getCurrent().safepoint() in unbounded Java loops is clearly beneficial. Cost is negligible (if any) and IDE becomes more responsive.
How do we want to measure success of such Context.getCurrent().safepoint() additions? Just a visual inspection or an automatic reporting of problems when a computation is requested to interrupt, but it doesn't stop in 100ms, 1s, 5s?

Spreading Context.getCurrent().safepoint() in unbounded Java loops is clearly beneficial. Cost is negligible (if any) and IDE becomes more responsive.

Indeed - I'm adding a PR that tries to add these wherever it makes sense.
I'm however wondering if there are some better solutions we can use?
Firstly, inserting the safepoint everywhere is something we can do as library developers, but it seems harder to enforce for external contributors creating Enso libraries that also rely on Java. Additionally, we still cannot add these safepoints in code that relies on external libraries (e.g. blocking operations in JDBC, processing a big matrix in OpenCV).
Moreover, there are many operations that rely on the standard Java library which also will run in 'unbounded' time but we cannot insert safepoints there (e.g. System.arraycopy, Stream.map ... toList etc.). We can try to move our code style in a direction where we don't use these as much, but I'm not sure how viable such an approach would be.
Of course I think this is still a good solution in the short/mid term and so I'm very glad to implement it - the better interactivity will surely be worth it.
However, I'm wondering for the longer term if we can figure something better. @JaroslavTulach I know that you've been recently thinking around stuff like running visualizations in parallel using virtual threads (once they will be available to us). Do you think we could use some of these similar approaches to make our scheduled computations interruptible even without safepoints? (So that our users writing polyglot code would not have to care about it + we could more easily use these blocking libraries like OpenCV or JDBC).
Or maybe we need some hybrid approach, where the main computation relies on safepoints to interrupt it and any blocking/long-running native computation that cannot be interrupted, should be scheduled on some separate 'worker threads'. Then the main computation can be interrupted and re-run, ensuring IDE interactivity; while the long running one would just finish in background thread (sadly if its result is no longer needed, but I think if we cannot cancel the computation, it's still better to at least ensure it's not blocking the IDE).
I'll gladly hear your thoughts on this. cc: @JaroslavTulach @4e6 @hubertp as I think you may be interested in this.

How do we want to measure success of such Context.getCurrent().safepoint() additions? Just a visual inspection or an automatic reporting of problems when a computation is requested to interrupt, but it doesn't stop in 100ms, 1s, 5s?

Very good question! I didn't think of anything better than visual inspection for now, so that's what I did. I think your idea is very good! Ideally, the language server should report whenever an operation took more than X to be interrupted (not sure what good X is, we should tweak it, I'd aim for 100ms-1s). Ideally, if it could get a stacktrace from the computation showing us where it is 'stuck' that would be even better. @4e6 do you think it would be possible to implement such a check in the Language Server? I think it would help us tremendously to make sure the IDE is not stuck on computations where we potentially forgot interrupts and also analyse situations where we cannot add them easily and how much they impact the UX.

Further performance measurements in PR comments.

the language server should report whenever an operation took more than X to be interrupted (not sure what good X is, we should tweak it, I'd aim for 100ms-1s). Ideally, if it could get a stacktrace from the computation showing us where it is 'stuck' that would be even better.

The idea is based on FitnessViaPostMortem as the situation is basically the same. Not only we can get a stacktrace, but we start self-profiling and  give you an .npss file to analyze in VisualVM. Let's plan to do this @hubertp, @4e6!

Do you think we could use some of these similar approaches to make our scheduled computations interruptible even without safepoints?

Standard Java way to handle interrupting is:

Thread.interrupt
Thread.interrupted() check

The benefit is that every Java library can check the thread interrupted status. The problem is that most libraries don't do it. Worse, when they do it, they don't do it properly. NetBeans added support for interrupting executed tasks long time ago - however we soon realized that using it with unknown code often leads to half-written corrupted files and other goodies related to a work being stopped in the middle.

could use some of these similar approaches to make our scheduled computations interruptible even without safepoints

I doubt there is any magical solution. We need to get a callback:

Context.safepoint is a callback
Thread.interrupted() directly or via network or disk operation is a callback
splitting the work to small chunks (aka actors) guarantees callbacks in between those chunks
progress API not only improves UI, but also forces libraries to make callbacks
running libraries code by Espresso would allow us to manage the libraries code more and give us safepoints spread by the Espresso interpreter by default

Any callback would do. One just has to call it whenever iterating over unbounded data. Open design question is to make such callback natural, so it happens when needed.

Any callback would do. One just has to call it whenever iterating over unbounded data. Open design question is to make such callback natural, so it happens when needed.

What about operations that are blocking 'by nature'? i.e. waiting for a reply in JDBC driver OR executing a native library (e.g. OpenCV)? I assume we cannot easily get callbacks in there.
Shall we ran these on some separate worker threads?

What about operations that are blocking 'by nature'? i.e. waiting for a reply in JDBC driver OR executing a native library (e.g. OpenCV)? I assume we cannot easily get callbacks in there.

Checking Thread.interrupted() state shall work from network layer (yielding InterruptedIOException as well as with properly written native code.

Shall we ran these on some separate worker threads?

Maybe. I am not able to give a generic reply. I'd prefer to evaluate situation on case-by-case basis.


Add API authentication and fix route loading

The Seats.aero API now requires authentication, which broke this project. Additionally, the Route object is no longer hydrated, so it needs to be loaded first from the Routes API and then accessed this way.
To add an API key, create .streamlit/secrets.toml with your API key in the following file:
api_key = "pro_xxx"

@pfei-sa Sure, I will add the README note. If you drop me an email at ian[at]seats dot aero I can also give you an API key to use without limits for your hosted version?

@pfei-sa Sure, I will add the README note. If you drop me an email at ian[at]seats dot aero I can also give you an API key to use without limits for your hosted version?

That would be great! Given there is a 15 min TTL cache per partner I'd imagine the traffic would be insignificant.


feat: support jsonc

JSONC is almost same as JSON, so supporting JSONC by default may not be a huge deal.
I just copied and modified a bit of existing json implementation and test codes.

Thanks for contributing!


protect 1.0.x branch

also updates job for 1.0 doc publishing to use v1.0.2 (latest release)

@pjfanning One PR that is relevant for 1.0.x just landed in main, can you rebase? Otherwise we have to a cherry pick of a commit

I'll delay adding this and will be rebase 1.0.x - the PR that I want to merge now is #326

CI seems to be failing for some reason?

CI seems to be failing for some reason?

Worked when I rebuilt. The issue appears that the mima checks ran while the 1.0.2 jars were partially copied into maven central.

@mdedetrich could you re-review?


Adding scroll-to-top feature

@Vimall03 I would like to add the scroll to top feature, could you please assign me this under gssoc-ext, hacktoberfest-accepted, level2

Hey @AswaniBolisetti, I'm sorry I can't assign this issue level 2 as this is not significant enough for a level 2 label. You can get started now.
Thankyou for understanding!

Hey @Vimall03 I guess this issue is solved! PR #94. You might forgot to close this.


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-source-version-target/pull/16 is merged into live branch.
Auto archive content to https://github.com/VSC-Service-Account/docs-archive-test-source-version-target.git

Docs Build status updates of commit c69d0ac:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.openpublishing.redirection.json
:white_check_mark:Succeeded

versioningArchiveSourceFolder/TOC.yml
:white_check_mark:Succeeded
View (sql-server-2014 || azuresqldb-current || azuresqldb-mi-current || azure-sqldw-latest || >= aps-pdw-2016 || >= sql-server-2016 || >= sql-server-linux-2017 || sql-server-previousversions || sqlallproducts-allversions)

versioningArchiveSourceFolder/docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel