Problems running benchmarks (crashing, too slow)

We have our comparison benchmarks at Jint repo and it's getting a bit tedious to try to run the benchmarks as yantra is either really slow (regex) or just crashing (linqjs), is there something that could be done? I tried this run with NET 8.0 RC 2 to ensure there's nothing legacy hindering the run.
We are using the (current latest) version 1.2.201.

BenchmarkDotNet v0.13.10, Windows 11 (10.0.23580.1000)
AMD Ryzen 9 5950X, 1 CPU, 32 logical and 16 physical cores
.NET SDK 8.0.100-rc.2.23502.2
  [Host]     : .NET 8.0.0 (<IP_ADDRESS>906), X64 RyuJIT AVX2
  DefaultJob : .NET 8.0.0 (<IP_ADDRESS>906), X64 RyuJIT AVX2

Method
FileName
Mean
StdDev
Median
Rank
Allocated

NilJS
array-stress
6,262.843 μs
7.8334 μs
6,261.519 μs
1
4533.76 KB

Jint_ParsedScript
array-stress
6,652.716 μs
12.6513 μs
6,650.304 μs
2
7090.82 KB

Jint
array-stress
6,756.168 μs
26.7944 μs
6,750.390 μs
3
7112 KB

Jurassic
array-stress
11,105.377 μs
15.1026 μs
11,102.109 μs
4
11647.14 KB

YantraJS
array-stress
72,455.529 μs
9,736.4723 μs
71,517.194 μs
5
255641.74 KB

YantraJS
dromaeo-3d-cube
NA
NA
NA
?
NA

NilJS
dromaeo-3d-cube
8,108.019 μs
41.8822 μs
8,107.017 μs
1
4693.22 KB

Jint_ParsedScript
dromaeo-3d-cube
22,872.079 μs
14.2433 μs
22,871.044 μs
2
5934.51 KB

Jint
dromaeo-3d-cube
23,734.911 μs
73.2514 μs
23,754.294 μs
3
6191.82 KB

Jurassic
dromaeo-3d-cube
53,814.428 μs
259.2690 μs
53,760.050 μs
4
10668.95 KB

NilJS
dromaeo-core-eval
1,568.331 μs
4.0252 μs
1,568.139 μs
1
1598.62 KB

Jint
dromaeo-core-eval
3,497.220 μs
13.6809 μs
3,503.786 μs
2
350.84 KB

Jint_ParsedScript
dromaeo-core-eval
3,816.991 μs
21.4332 μs
3,819.798 μs
3
333.79 KB

YantraJS
dromaeo-core-eval
9,528.317 μs
53.0721 μs
9,543.352 μs
4
37062.2 KB

Jurassic
dromaeo-core-eval
10,120.734 μs
21.7763 μs
10,118.962 μs
5
2883.97 KB

Jint_ParsedScript
dromaeo-object-array
40,470.678 μs
44.7242 μs
40,477.631 μs
1
100753.17 KB

Jint
dromaeo-object-array
42,959.619 μs
53.1244 μs
42,970.792 μs
2
100793.58 KB

Jurassic
dromaeo-object-array
44,016.303 μs
170.5113 μs
43,995.379 μs
3
25812.64 KB

NilJS
dromaeo-object-array
69,170.482 μs
163.0611 μs
69,178.200 μs
4
17697.98 KB

YantraJS
dromaeo-object-array
860,585.140 μs
127,296.6544 μs
819,388.950 μs
5
4011710.62 KB

YantraJS
droma(...)egexp [21]
NA
NA
NA
?
NA

Jint
droma(...)egexp [21]
158,868.937 μs
3,933.9390 μs
156,512.550 μs
1
167358.62 KB

Jint_ParsedScript
droma(...)egexp [21]
162,927.586 μs
5,089.9583 μs
161,303.350 μs
2
169166.13 KB

NilJS
droma(...)egexp [21]
676,215.607 μs
11,930.9836 μs
678,765.550 μs
3
765846.57 KB

Jurassic
droma(...)egexp [21]
746,804.217 μs
18,786.0370 μs
752,323.100 μs
4
829618.68 KB

Jint_ParsedScript
droma(...)tring [21]
254,910.140 μs
9,116.6810 μs
259,280.450 μs
1
1322149.99 KB

Jint
droma(...)tring [21]
262,166.848 μs
12,284.3740 μs
259,798.350 μs
1
1322422.89 KB

NilJS
droma(...)tring [21]
280,793.741 μs
10,606.6209 μs
276,202.000 μs
2
1377934.8 KB

Jurassic
droma(...)tring [21]
298,070.185 μs
6,793.6463 μs
296,046.350 μs
3
1458278.95 KB

YantraJS
droma(...)tring [21]
10,731,120.969 μs
431,483.3871 μs
10,686,728.800 μs
4
49977816.79 KB

NilJS
droma(...)ase64 [21]
33,989.818 μs
146.7131 μs
33,993.293 μs
1
19604.35 KB

Jint
droma(...)ase64 [21]
48,431.947 μs
109.4991 μs
48,427.491 μs
2
6806.59 KB

Jint_ParsedScript
droma(...)ase64 [21]
49,570.704 μs
107.4231 μs
49,546.318 μs
3
6720.88 KB

Jurassic
droma(...)ase64 [21]
76,290.011 μs
216.4848 μs
76,319.671 μs
4
73294.38 KB

YantraJS
droma(...)ase64 [21]
154,618.890 μs
4,555.8418 μs
154,737.138 μs
5
804985.95 KB

Jint_ParsedScript
evaluation
11.187 μs
0.0420 μs
11.189 μs
1
27.47 KB

Jint
evaluation
25.327 μs
0.1767 μs
25.274 μs
2
36.04 KB

NilJS
evaluation
38.699 μs
0.0817 μs
38.687 μs
3
23.47 KB

YantraJS
evaluation
144.559 μs
2.2947 μs
145.059 μs
4
962.86 KB

Jurassic
evaluation
1,408.054 μs
7.6602 μs
1,408.891 μs
5
420.34 KB

YantraJS
linq-js
NA
NA
NA
?
NA

Jint_ParsedScript
linq-js
83.371 μs
0.5199 μs
83.233 μs
1
226.51 KB

Jint
linq-js
1,700.059 μs
39.1810 μs
1,689.233 μs
2
1275.27 KB

NilJS
linq-js
6,624.719 μs
46.8200 μs
6,624.889 μs
3
4121.1 KB

Jurassic
linq-js
34,481.704 μs
92.6770 μs
34,499.567 μs
4
9252.69 KB

Jint_ParsedScript
minimal
2.609 μs
0.0237 μs
2.607 μs
1
12.98 KB

NilJS
minimal
3.867 μs
0.0094 μs
3.869 μs
2
4.81 KB

Jint
minimal
3.972 μs
0.0141 μs
3.975 μs
3
14.37 KB

YantraJS
minimal
137.705 μs
1.4817 μs
138.369 μs
4
957.43 KB

Jurassic
minimal
255.173 μs
0.6002 μs
255.196 μs
5
386.21 KB

YantraJS
stopwatch
85,984.586 μs
802.0424 μs
85,970.117 μs
1
224314.23 KB

NilJS
stopwatch
174,987.804 μs
1,290.5212 μs
174,701.000 μs
2
97360.8 KB

Jurassic
stopwatch
187,415.613 μs
649.4774 μs
187,509.167 μs
3
156936.68 KB

Jint_ParsedScript
stopwatch
273,097.233 μs
1,252.6019 μs
273,326.800 μs
4
53015.63 KB

Jint
stopwatch
273,747.000 μs
713.7972 μs
273,666.700 μs
4
53040.3 KB

Benchmarks with issues:
EngineComparisonBenchmark.YantraJS: DefaultJob [FileName=dromaeo-3d-cube]
EngineComparisonBenchmark.YantraJS: DefaultJob [FileName=droma(...)egexp [21]]
EngineComparisonBenchmark.YantraJS: DefaultJob [FileName=linq-js]

I was able to fix the issue with some crashes, however, linq-js is accessing global this, which isn't available in strict mode as YantraJS treats all scripts as strict only.
So please change the code,
    [Benchmark]
    public void YantraJS()
    {
        var engine = new YantraJS.Core.JSContext();
        engine.Eval(_files[FileName]);
    }

To following,
    [Benchmark]
    public void YantraJS()
    {
        var engine = new YantraJS.Core.JSContext();
        // By default YantraJS is strict mode only, in strict mode
        // we need to pass `this` explicitly in global context
        // if script is expecting global context as `this`
        engine.Eval(_files[FileName], null, engine);
    }

I was able to run all benchmarks successfully with version 1.2.203

Thank you for fast response, I was now able to run all the benchmarks also with YantraJS and the results have been updated.


Plotting datasets with variable coordinates

I'm trying to plot a dataset that has variable coordinates, and am getting behavior that is unexpected, and I wonder if it is a design issue or a user issue (i.e. I don't grok xarray). I've posted the question on SO (https://stackoverflow.com/questions/45474153/plotting-xarray-datasets-with-variable-coordinates).
Is the behavior that xarray is showing by design or is it a corner case that I'm getting because I'm not using xarray in the way it was originally intended?

On 08/06/2017 11:37 PM, Sam Miller wrote:

Is the behavior that xarray is showing by design or is it a corner
case that I'm getting because I'm not using xarray in the way it was
originally intended?

Xarray follows the CF conventions as far as possible, and the convention
states that dimension**coordinates should have the same name as their
dimension. See the docs for terminology:
http://xarray.pydata.org/en/latest/data-structures.html#coordinates
What we could do however is to add a "x" kwarg to plot.line so that one
can specify which coordinate to use for the plot, like plot.pcolormesh
i.e. it would be possible to do:
ds.variable.plot(x='r')
Instead of renaming the dimension for it to become a dimension coordinate.
Thoughts?
Cheers,
Fabien
--
Fabien Maussion
/University of Innsbruck
Institute of Atmospheric and Cryospheric Sciences http://acinn.uibk.ac.at/
Research Centre for Climate http://uibk.ac.at/climate-cryosphere
Innrain 52f, 6020 Innsbruck
Tel.: +43<PHONE_NUMBER>1/
www.fabienmaussion.info http://fabienmaussion.info

I think that would work. I've just been trying to understand what the CF conventions mean for me in my use case, where I have a grid that moves over time, but keeps the same number of nodes and cells. I feel like xarray could be a big help, but I'm still trying to figure it out.
Thanks for the quick responses here and on SO.

Does this work now?

No it doesn't! Your most recent PR still checks for the kwarg in dims, not in coordinates.

Shall I send in a PR to check da.variables then?

@kthyng & @hetland: this issue is related to our lunch discussion today about how to automatically use multidimensional coordinates when plotting.

To follow up with this, plotting using 'x' and 'y' kwargs works fine for now, even when the variable coordinates do not share the same number of dimensions. (i.e., a common case of plotting a cross section with sigma- or s-coordinates where the horizontal variable is 1D, but the vertical variable is 2D). So, I think this great, and should cover most use cases.
The only approach I can think of to do this automatically would be to find variable coordinates that have matching dimensions. This would probably work in lots of cases, but unexpectedly break in others. I think I would prefer explicit over clever, unless we can think of a way to do it that won't break.


typo: supress -> suppress

@nschonni : Thanks for your contribution! The author, @mikeblome, has been notified to review your proposed change.

@corob-msft : Thanks for your contribution! The author, @mikeblome, has been notified to review your proposed change.


SC Demo video issue

Just an issue for tracking stuff related to the SC demo video, can close once that's done!

Done!

Sent to Ganesh!


Update tinymce.js to read from editor on change

The fix below makes the directive read the content from the editor and not the dom (fixing issues with entity conversion).  I was having issues with the directive flip/flopping entities on me causing the directive to cause unnecessary digest cycles.  It also caused the editor to completely replace the contents which forced the cursor to the beginning of the document.

A more spruced up version of this is now in master. Let me know if that is not sufficient in a new issue.


Release 1.2.8

docket:

Minimum setuptools version should be 20.3 (#391)
Improve wheel support in pex. (#388)

this is complete: https://pypi.python.org/pypi/pex/1.2.8


Add the ability to add defaultSelected to SelectField

Issue Description
Reset buttons reset form elements to the previous value of a form element. For select boxes though, it will reset to the default value of the select field unless selected or defaultSelected is set on the option that is selected
Issue Type

[x] New Feature
[ ] Enhancement
[ ] Bug
[ ] Other

Expected Behavior
Option nodes can have the selected and defaultSelected values set.
Current Behavior
Option nodes do not set selected or defaultSelected

React doesn't allow selected to be set within options. Instead, they expect consumers to set a select's value to the state. https://reactjs.org/docs/forms.html#the-select-tag


revise dtype handling in cupyx.scipy.ndimage.spline_filter

This PR is related to #4247, but deals only with the recently implemented spline_filter functions from #4145.
The first commit here removes the allow_float32 keyword-only argument which is not present in scikit-image and has not yet appeared in a released CuPy version. ~It also changes the default output=np.float64 to output=None which will autoselect a floating point precision for the output. This allows computations to run in single precision by default on float16, float32 or complex64 inputs. In other words, the functionality previously provided by allow_float32=True becomes the default.~ update: restored default output to float64 for SciPy consistency. internal dtype behaves as if allow_float32=True.
If this type of single precision dtype handling seems okay, I would like to extend it to other functions in the ndimage module in a follow-up PR.
The second commit here adds tests for complex-valued inputs. These were previously supported, but were untested. Complex support was only recently merged upstream in SciPy and will be present in the upcoming 1.6.0 release, so for now a separate test class is used to allow this to also be tested on older SciPy versions.

For this PR we have decided to change the
allow_float32=False kwarg to use_intermediate_fp32=True to set this by default.
Eventually we want to have a common interface to address all these cases using a defined COMPUTE_MODE in an env var instead of just adding kwargs :).
How do you think?

I can change the kwarg name and default to use_intermediate_fp32=True.
However, I am interested in extending this to most other functions in ndimage (aside from exceptions like binary morphology functions where it would not apply). It doesn't seem like it makes sense to proceed to add this same kwarg to all functions in ndimage.filters, ndimage.interpolation, etc. if the preferred solution is to move away from this and use a COMPUTE_MODE environment variable. Why not just start with the environment variable approach now? Otherwise it seems that we eventually have to go back and deprecate any unwanted keyword arguments.

I reverted the change to output=None as a default. Now the output dtype will be consistent with SciPy, with the only difference being that intermediate computations can use float32 internally when the input is single precision.

Jenkins, test this please

Jenkins CI test (for commit 20d6288f95a4abb9fa445ef8b8772b03550d9a8e, target branch master) succeeded!


Calculate nutrition facts doesn't take liquid units into account

Calculate nutrition facts doesn't take liquid units into account
L, cl

I'll work on this.


Preview events

https://path-cc.io/web-preview/preview-events/events/OSG-User-School-2023/

I think this is getting pretty close. Please make the new changes, then carefully check over one more time, then go ahead and post.


chore(Algebra): re-add @[simp] attributes lost in the port

This PR re-adds the @[simp] attributes that had a porting note that they could be proved by @[simp], but where that does not appear to be the case currently.
Of course, the simp set may have changed sufficiently to require un@[simp]ing some of these anyway, but we should add a more up to date comment in that case.

!bench

bors merge


[Device Support Request] _TZE200_2cs6g9i7 - Brennenstuhl Zigbee Connect 01

Is your feature request related to a problem? Please describe.
I bought a Brennenstuhl Heizkörperthermostat Zigbee Connect 01 Valve.
This valve is able to be added into ZHA fine, but no quirk is associated with it. It only lists Lqi and Rssi but nothing else, the valve looks like Alecto Thermostatic Radiator Valve and essentials Smart Home Heizkörperthermostat Premium and others.
Describe the solution you'd like
Add a quirk to make the device working in HA

Device signature
{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.EndDevice: 2>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress: 128>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=True, *is_full_function_device=False, *is_mains_powered=False, *is_receiver_on_when_idle=False, *is_router=False, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x0051",
      "in_clusters": [
        "0x0000",
        "0x0004",
        "0x0005",
        "0xef00"
      ],
      "out_clusters": [
        "0x000a",
        "0x0019"
      ]
    }
  },
  "manufacturer": "_TZE200_2cs6g9i7",
  "model": "TS0601",
  "class": "zigpy.device.Device"
}

Diagnostic information
{
  "home_assistant": {
    "installation_type": "Home Assistant Core",
    "version": "2022.9.6",
    "dev": false,
    "hassio": false,
    "virtualenv": true,
    "python_version": "3.9.2",
    "docker": false,
    "arch": "x86_64",
    "timezone": "Europe/Vienna",
    "os_name": "Linux",
    "os_version": "5.19.9-Unraid",
    "run_as_root": false
  },
  "custom_components": {},
  "integration_manifest": {
    "domain": "zha",
    "name": "Zigbee Home Automation",
    "config_flow": true,
    "documentation": "https://www.home-assistant.io/integrations/zha",
    "requirements": [
      "bellows==0.33.1",
      "pyserial==3.5",
      "pyserial-asyncio==0.6",
      "zha-quirks==0.0.79",
      "zigpy-deconz==0.18.1",
      "zigpy==0.50.3",
      "zigpy-xbee==0.15.0",
      "zigpy-zigate==0.9.2",
      "zigpy-znp==0.8.2"
    ],
    "usb": [
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*2652*",
        "known_devices": [
          "slae.sh cc2652rb stick"
        ]
      },
      {
        "vid": "1A86",
        "pid": "55D4",
        "description": "*sonoff*plus*",
        "known_devices": [
          "sonoff zigbee dongle plus v2"
        ]
      },
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*sonoff*plus*",
        "known_devices": [
          "sonoff zigbee dongle plus"
        ]
      },
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*tubeszb*",
        "known_devices": [
          "TubesZB Coordinator"
        ]
      },
      {
        "vid": "1A86",
        "pid": "7523",
        "description": "*tubeszb*",
        "known_devices": [
          "TubesZB Coordinator"
        ]
      },
      {
        "vid": "1A86",
        "pid": "7523",
        "description": "*zigstar*",
        "known_devices": [
          "ZigStar Coordinators"
        ]
      },
      {
        "vid": "1CF1",
        "pid": "0030",
        "description": "*conbee*",
        "known_devices": [
          "Conbee II"
        ]
      },
      {
        "vid": "10C4",
        "pid": "8A2A",
        "description": "*zigbee*",
        "known_devices": [
          "Nortek HUSBZB-1"
        ]
      },
      {
        "vid": "0403",
        "pid": "6015",
        "description": "*zigate*",
        "known_devices": [
          "ZiGate+"
        ]
      },
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*zigate*",
        "known_devices": [
          "ZiGate"
        ]
      },
      {
        "vid": "10C4",
        "pid": "8B34",
        "description": "*bv 2010/10*",
        "known_devices": [
          "Bitron Video AV2010/10"
        ]
      }
    ],
    "codeowners": [
      "@dmulcahey",
      "@adminiuga",
      "@puddly"
    ],
    "zeroconf": [
      {
        "type": "_esphomelib._tcp.local.",
        "name": "tube*"
      },
      {
        "type": "_zigate-zigbee-gateway._tcp.local.",
        "name": "*zigate*"
      }
    ],
    "dependencies": [
      "file_upload"
    ],
    "after_dependencies": [
      "onboarding",
      "usb",
      "zeroconf"
    ],
    "iot_class": "local_polling",
    "loggers": [
      "aiosqlite",
      "bellows",
      "crccheck",
      "pure_pcapy3",
      "zhaquirks",
      "zigpy",
      "zigpy_deconz",
      "zigpy_xbee",
      "zigpy_zigate",
      "zigpy_znp"
    ],
    "is_built_in": true
  },
  "data": {
    "config": {
      "zigpy_config": {
        "ota": {
          "ikea_provider": true,
          "ledvance_provider": true,
          "salus_provider": true,
          "otau_directory": "/home/homeassistant/.homeassistant/zigpy_ota"
        },
        "database_path": "/home/homeassistant/.homeassistant/zigbee.db",
        "device": {
          "path": "socket://<IP_ADDRESS>:6638",
          "baudrate": 115200,
          "flow_control": null
        }
      },
      "device_config": {},
      "enable_quirks": true
    },
    "config_entry": {
      "entry_id": "af8d1df79d806a286af68b93d3d3abab",
      "version": 3,
      "domain": "zha",
      "title": "socket://<IP_ADDRESS>:6638",
      "data": {
        "device": {
          "path": "socket://<IP_ADDRESS>:6638",
          "baudrate": 115200,
          "flow_control": null
        },
        "radio_type": "znp"
      },
      "options": {
        "custom_configuration": {
          "zha_options": {
            "enable_identify_on_join": true,
            "consider_unavailable_battery": 21600,
            "consider_unavailable_mains": 7200
          },
          "zha_alarm_options": {
            "alarm_arm_requires_code": false,
            "alarm_failed_tries": 3,
            "alarm_master_code": "**REDACTED**"
          }
        }
      },
      "pref_disable_new_entities": false,
      "pref_disable_polling": false,
      "source": "user",
      "unique_id": null,
      "disabled_by": null
    },
    "application_state": {
      "node_info": {
        "nwk": 0,
        "ieee": "**REDACTED**",
        "logical_type": 0
      },
      "network_info": {
        "extended_pan_id": "**REDACTED**",
        "pan_id": 13143,
        "nwk_update_id": 0,
        "nwk_manager_id": 0,
        "channel": 15,
        "channel_mask": 32768,
        "security_level": 5,
        "network_key": "**REDACTED**",
        "tc_link_key": {
          "key": [
            90,
            105,
            103,
            66,
            101,
            101,
            65,
            108,
            108,
            105,
            97,
            110,
            99,
            101,
            48,
            57
          ],
          "tx_counter": 0,
          "rx_counter": 0,
          "seq": 0,
          "partner_ieee": "**REDACTED**"
        },
        "key_table": [],
        "children": [],
        "nwk_addresses": {},
        "stack_specific": {
          "zstack": {
            "tclk_seed": "d9c338ae43eabab317501603fc28a684"
          }
        },
        "metadata": {
          "zstack": {
            "TransportRev": 2,
            "ProductId": 1,
            "MajorRel": 2,
            "MinorRel": 7,
            "MaintRel": 1,
            "CodeRevision": 20220219,
            "BootloaderBuildType": 0,
            "BootloaderRevision": null
          }
        },
        "source"<EMAIL_ADDRESS>      },
      "counters": {},
      "broadcast_counters": {},
      "device_counters": {},
      "group_counters": {}
    },
    "versions": {
      "bellows": "0.33.1",
      "zigpy": "0.50.3",
      "zigpy_deconz": "0.18.1",
      "zigpy_xbee": "0.15.0",
      "zigpy_znp": "0.8.2",
      "zigpy_zigate": "0.9.2",
      "zhaquirks": "0.0.79"
    }
  }
}

Additional logs
none

Additional context
Maybe someone could help with that...
Thanks!

Servos.
First configure local quirks in (Z)HA.
For getting  "basic" functionality add your device ID at one new line after the other in this code part (no extra taps and spaces):
https://github.com/zigpy/zha-device-handlers/blob/0ad9fa2f6fd2cd53c9c010553d46dbc8092c1a48/zhaquirks/tuya/ts0601_trv.py#L1421-L1430 in one copy if the quirk linked and saving it in the new configured quirk folder and restarting HA (done need deleting the device it shall working OK).
If that is working OK we is having one quirk not being merged in ZHA that have more functionality and deleting not working functions but is needing more work and we is testing it later.

@MattWestb Hallo.
Thank you! Working perfectly fine:

Do I have to make a PR for that?
Danke nochmal!

Yes pleas its not one must but good for all users getting there device working in ZHA!!
If you like getting more functions you can testing this quirk (i have adding your device ID in it) but deleting the "old" one so not having 2 different with the same device ID and restart HA.
ts0601_trv_siterwell.zip
For getting the presence working OK its needed patching HA docker container file with this adding the line 710 and to the end to the climate.py in the HAs ZHA folder (its tricky) (its one old file so i think its not working copy it then its not compatible with the last changes so copy the code to your current file but do one backup of the original if not working OK).
climate.zip

@MattWestb no, this doesn't work, looking like this after I've changed climate.yaml and the other file (I think you've missed to put in the device name in both of the files or copied the wrong ones but I've fixed that):

I will create a PR for the device that it will at least work.

Thanks for the PR !!
Its very likely i was to tired bu you have getting the climate.py working but the quirk is not being loaded OK. Look in the log if its complaining or making one double check that  the device ID is added in the right place with the other TRVs of the same type.

Yes pleas its not one must but good for all users getting there device working in ZHA!!
If you like getting more functions you can testing this quirk (i have adding your device ID in it) but deleting the "old" one so not having 2 different with the same device ID and restart HA. ts0601_trv_siterwell.zip
For getting the presence working OK its needed patching HA docker container file with this adding the line 710 and to the end to the climate.py in the HAs ZHA folder (its tricky) (its one old file so i think its not working copy it then its not compatible with the last changes so copy the code to your current file but do one backup of the original if not working OK). climate.zip

Hi @MattWestb, i added the siterwell custom quirk and seems to add the entities but they are not really working:

Chaning the temperature calibration error results in the error:
Logger: homeassistant.components.websocket_api.http.connection
Source: components/zha/core/channels/general.py:111
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 19:55:28 (10 occurrences)
Last logged: 20:04:44
[1559320872] 'present_value'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 202, in handle_call_service
    await hass.services.async_call(
  File "/usr/src/homeassistant/homeassistant/core.py", line 1738, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1775, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 207, in handle_service
    await service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 678, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 931, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 715, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/number/__init__.py", line 109, in async_set_value
    await entity.async_set_native_value(native_value)
  File "/usr/src/homeassistant/homeassistant/components/zha/number.py", line 361, in async_set_native_value
    if await self._analog_output_channel.async_set_present_value(num_value):
  File "/usr/src/homeassistant/homeassistant/components/zha/core/channels/general.py", line 111, in async_set_present_value
    res = await self.cluster.write_attributes({"present_value": value})
  File "/usr/local/lib/python3.10/site-packages/zhaquirks/__init__.py", line 96, in write_attributes
    attrid = self.attributes[attrid].id
KeyError: 'present_value'

I have also the Saswell custom quirks enabled for my other thermostats. could they interfer with each other?

Different quirks is not fighting in the code only one can being loaded for one device.
In the log its complaining about presets, have yoi isntalling the presets in ZHA with the climate.zip ?

No the only other warning i get is a
2022-11-21 20:15:18.165 WARNING (MainThread) [zigpy.util] Error calling listener <bound method SiterwellThermostat.hass_climate_state_change of <Siterwell.SiterwellThermostat object at 0x59c01d90>> with args (514, 50): TypeError("int() argument must be a string, a bytes-like object or a real number, not 'NoneType'")

i also tested the switches witch seems control the child lock, window detection and valve initial calibration.. i did not install the climate.zip since my home assistant instance is running inside a docker container... is it possible to use without the presets?

I was using the quirk and the climate.py but im to lazy installing in the container after every HA upgrade and its working OK.
I have not testing changing temperature calibration without patched presets.
You can easy copy to the container but must have access to the OS CLI.
Also i think its bets adding the Siterwell presets in one current clinate.py is its changes made that is not in the one i have posting.

yeah it is easy to copy but only available until i update the container :D maybe  i will give it a try later, because i would really love to calibrate the temperature with an external temperature sensor automatically... do you have / are there any plans to integrate the presets into an upcoming version of HA?

We have making PR for extended functions for all tuya TRVs but we was not able doing the test code and was not getting enough help doing it so its not being merged :-((
The temperature calibrating is adjusting the heat / idle for the ZHA graph so its looking nice then the device dont sending valve state. I have all my on -0.8°C for getting realistic.
If you like doing calibration from one external temperature sensor use it and adding the offset (+ / - ) for patching the setpoint temperature in the climate component then its the only way adjusting how mush the TRV is heating (its using PID algorithms).
Switching it on and off is bad for PID devices then they is loosing the internal calibration.


Personal Email "View All" does not account for Azure Environment

Category

[ ] Question
[ ] Bug
[x] Enhancement

Expected or Desired Behavior
It would be nice the link could be modified via a property setting or could be coded to recognize the current environment (i.e. https://outlook.office365.us).
Observed Behavior
When deploying the apps to a Government cloud instance, the "View All" links point to https://outlook.office.com.  This will redirect to a login page that, after logging in, will loop back to the login page.
Steps to Reproduce

Deploy the apps to a non-commercial tenant.
Add the Personal Calendar web part to any page.
Click "View All"

Hi, thank you for the issue. Apologies for the delay in responding. That is a pretty good idea, we haven't accounted for Government Tenants. I'll add this to the enhancements list.


socket error handling

some sort of default, otherwise peoples procs will crash if they do not watch out for this

I am having the above issue do you have a small example of how to catch it. I am just starting to test the upgrade to 0.6.5and express 3.0 which was not working with NPR 2 weeks ago

I used the following to allow node to continue running instead of restarting with 0.4.12. Sockets were never reclaimed.
process.on('uncaughtException', function(err) {
console.log("uncaughtException\n" + util.inspect(err));
});

This is a bit messy since there is no way to determine (short of string parsing) if an uncaught exception is a "normal" socket hang up (something any client can cause at any time) or an internal application error that put the server into an undetermined state and warrants an app restart. I want to register a callback specifically for socket errors so I can log the error and move on without triggering an uncaught application exception, which should be a "something very bad just happened" code path.

yeah, dont let it go uncaught, just register an 'error' listener and do whatever


Re-order test data with struct definition

Purely a cosmetic change as part of the work for https://github.com/influxdb/influxdb/pull/2443. Merging on green.


error

Does this occur consistently?
Repro steps:

Action: command/bicep.generateParams
Error type: Error
Error Message: Generating parameters failed: cannot open redacted:url Detail: Unable to read file 'c:\Users\redacted:id\Downloads\ExportedTemplate-odhapps-dev-MCHIDS-rg\template.parameters.json' (Error: Unable to resolve nonexistent file 'c:\Users\redacted:id\Downloads\ExportedTemplate-odhapps-dev-MCHIDS-rg\template.parameters.json')
Version: 0.15.31
OS: win32
OS Release: 10.0.19045
Product: Visual Studio Code
Product Version: 1.76.1
Language: en

Call Stack
GenerateParamsCommand.execute extension.js:2:3463325
extension.js:2:3464330extension.js:2:3464330

Can you please provide more information on what you are trying to achieve, what you had tried, and repro steps so we understand correctly? It looks like the command may be running into an error of reading or accessing your file.

Closing as requested.


"Phone number" question type: define UI/UX/functionality

We have some a mockup for this question type, but we need to get more detail on the final UI/UX. In Miro, please help us define:

What the error text for each possible type of error looks like, and where on/near the widget it's shown
How the widget looks when it's in a default state (nothing entered), a focused state, a valid state (correct input entered), and an error state.
Suggested pixel dimensions for all input field(s) in questions of this type.
How the custom functionality, if any, should work.
Anything else needed to define how this question type works.

Ideally, include 2-3 mockups showing what the question looks like in several different states (e.g. you've inputted half the answer, you've inputted all the answer but there's an error...)
See also #507, the central issue for this question type.
Feel free to only take on part of this task, by the way.

See #507 for mockups!

Sorry, the Miro link from above broke. See tiny.cc/cvf-flow.


[balance-of-with-thresholds] Add balance-of-with-thresholds strategy

Changes proposed in this pull request:

Add a new strategy for ERC20 or ERC721, allocates votes based on balance mapped against a table of minimum thresholds

thanks @ChaituVR, anything else I need to do to get this merged in?


Using ollama version 0.3.3, downloading all models will result in errors.

Before version 0.3.0, there were no similar issues. Starting from the update to 0.3.1, I tried many methods, but none of them worked, including using VPN and reinstalling Olama.
OS
Linux
GPU
Other
CPU
Intel
Ollama version
0.3.3

My network is accessible https://registry.ollama.ai/ Website.

@ucjmhfeng Does the model begin to load, or does the error occur before it starts?

@ucjmhfeng Does the model begin to load, or does the error occur before it starts?

I test it on my Linux macine with ollama version 0.3.3. It works well for me.
# alwqx @ node in ~ [2:42:20]
$ ollama --version
ollama version is 0.3.3

# alwqx @ node in ~ [2:42:22]
$ ollama pull gemma2:2b
pulling manifest
pulling<PHONE_NUMBER>d6... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏ 1.6 GB
pulling e0a42594d802... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏  358 B
pulling 097a36493f71... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏ 8.4 KB
pulling 2490e7468436... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏   65 B
pulling e18ad7af7efb... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████████████████▏  487 B
verifying sha256 digest
writing manifest
removing any unused layers
success

# alwqx @ node in ~ [2:43:38]
$ ollama list
NAME     	ID          	SIZE  	MODIFIED
gemma2:2b	8ccf136fdd52	1.6 GB	12 seconds ago

I search on Google with net/http: TLS handshake timeout, This problem may related to proxy config, I suggest check your proxy setting refering bellow links:

Unable to connect to the server: net/http: TLS handshake timeout
How to resolve a TLS handshake timeout error when adding an app repository on a downstream cluster

pulling manifest
Error: pull model manifest: Get "https://registry.ollama.ai/v2/library/qwen2/manifests/1.5b": read tcp <IP_ADDRESS>:65240-><IP_ADDRESS>:443: wsarecv: An existing connection was forcibly closed by the remote host.求解

It appears that the error you're experiencing is related to network connectivity issues, rather than a bug in the software. Specifically, the error message:
Error: pull model manifest: Get "https://registry.ollama.ai/v2/library/qwen2/manifests/1.5b": read tcp <IP_ADDRESS>:65240-><IP_ADDRESS>:443: wsarecv: An existing connection was forcibly closed by the remote host.
suggests that the connection to the remote host is being forcibly closed. This type of error is often due to network restrictions or limitations that may be in place in your environment. Common causes include:
University or Corporate Networks: Many educational institutions and companies implement strict network policies that can block or restrict access to certain external resources. This might be the cause if you're trying to access the registry from within such a network.
Country-Level Restrictions: Some countries have internet regulations that limit access to certain websites and services. If you are located in a region with such restrictions, this could be preventing a successful connection.
To troubleshoot this issue, you might try the following steps:
Check Network Policies: If you are using a network managed by your university or company, contact your network administrator to see if there are any restrictions on accessing external resources. They may be able to whitelist the necessary domains.
Use a VPN: A VPN can sometimes bypass network restrictions. If you suspect country-level restrictions, a VPN might help in establishing the required connection.
Test from a Different Network: Try accessing the resource from a different network, such as a home network or a mobile hotspot, to see if the issue persists. This can help identify if the problem is specific to your current network.
Check Firewall Settings: Ensure that your firewall is not blocking the connection. Sometimes, personal or local firewalls can inadvertently block legitimate traffic.
We hope this helps clarify the situation. If the problem persists after trying these steps, please let us know, and we can explore further options.

@ucjmhfeng Are you using a Proxy? I have the same error. Any other tool works fine by just setting HTTP_PROXY, HTTPS_PROXY. Ollama on the other hand gets all these weird errors.


stdout of running container not persisisting

I have a centos:centos6 container running with /bin/bash -l and I'm trying to see echo "hi" logged to logstash through logspout.
I start the centos container like so:  docker run --rm -it centos:centos6 /bin/bash -l and then I echo "hi"
I have ELK + Logspout running with the following docker-compose: https://gist.github.com/tobowers/b9eb3d7291399440e976#file-docker-compose-yml
We've tested sending syslog events to logstash and seeing them logged.
After logspout starts up, I would expect to see the stdout from the echo hi appearing as a syslog message in logstash, but I see nothing.
docker logs #{container_name} (where #{container_name} is the name of the centos6 container, correctly show the stdout from the bash commands.
Did I misinterpret the point of logspout? What am I doing wrong?

We don't capture logs from containers started interactively with a TTY. We are going to make this configurable, but it will not be on by default.


✨ Expose agent command line flags from controller

Summary
This PR adds command line flags to the controller that expose the functionality of the agent's command line flags about logging.
Related issue(s)
This embodies the simple answer to #57

I will add the flags for request qps and burst.

The E2E test in CI showed the expected content in the ManifestWork. Here are the args on the agent command line:
              - args:
                - agent
                - --hub-kubeconfig=/var/run/hub/kubeconfig
                - --cluster-name=cluster1
                - --addon-namespace=open-cluster-management-agent-addon
                - --logging-format=text
                - --v=0
                - --vmodule=
                - --hub-burst=10
                - --hub-qps=5
                - --local-burst=10
                - --local-qps=5
                - --log-flush-frequency=5s

Here is the revised controller command line help:
mspreitz@mjs13 ocm-status-addon % go run ./cmd/ocm-status-addon controller -h
Start the addon controller

Usage:
  addon controller [flags]

Flags:
      --agent-hub-burst int                  Allowed burst in requests/sec for accessing the hub from the agent (default 10)
      --agent-hub-qps float                  Max average requests/sec for accessing the hub from the agent (default 5)
      --agent-local-burst int                Allowed burst in requests/sec for accessing the local cluster from the agent (default 10)
      --agent-local-qps float                Max average requests/sec for accessing the local cluster from the agent (default 5)
      --agent-log-flush-frequency duration   Maximum number of seconds between log flushes on the agent (default 5s)
      --agent-logging-format string          Sets the log format. Permitted formats: "text". on the agent (default "text")
      --agent-v Level                        number for the log level verbosity on the agent
      --agent-vmodule pattern=N,...          comma-separated list of pattern=N settings for file-filtered logging (only works for text log format) on the agent
      --component-namespace string           Namespace of the component.
      --enable-leader-election               Enables the leader election for the controller
  -h, --help                                 help for controller
      --kubeconfig string                    Location of the master configuration file to run from.

Global Flags:
      --log-flush-frequency duration   Maximum number of seconds between log flushes (default 5s)
      --logging-format string          Sets the log format. Permitted formats: "text". (default "text")
  -v, --v Level                        number for the log level verbosity
      --vmodule pattern=N,...          comma-separated list of pattern=N settings for file-filtered logging (only works for text log format)

@MikeSpreitzer Looks good - maybe you want to move the default value to the beginning of the line instead the end (I agree the end is more reasonable in terms of structure but for long lines it's a little hidden )

The parenthetic remark about the default value is not under programmer control, it is added by the flagging package.

@ezrasilvera: The parenthetic remark about the default value is not under programmer control, it is added by the flagging package.


No success or error callbacks for request permissions

There is no callback fired for the requestPermissions method.
Currently the method definition is as follows:
cordova.requestPermissions(this, 0, PERMISSIONS);

This should use the status of requesting permissions to fire the correct callback to the cordova javascript layer.

Has the issue been fixed? Any plan on the issue?


die cut bleeds not lining up

If G and D tile were swapped, all would be well.
Not sure if this is beyond the capability of the bleed alignment design.

Yeah, def good to have this issue open. The current code only attempts to rotate tiles in order to have track or non-track line up. It can't handle cases like this where there is no rotation of the D tile that works. Next step is reordering track first before printing, which is something we can look at later. For now if you want to solve it ONLY for your game you can put "group": "individual" on the definition of the D2 tile. This will make it print on it's own in it's own group with full bleed.


[Feature] Headscale policy set validate ACL before applying?

Use case
Is it possible to have the headscale policy set command run validation before applying the policy and only load the policy if it passed syntax checking.
Description
I accidentally put autogroup:internet instead of autogroup:internet:* and it really didn't like that.
Basically all the clients started throwing back
Could not get the create map update error="strconv.ParseUint: parsing \"internet\": invalid syntax"   and I'm pretty sure they all dropped off the tailnet.
Contribution

[X] I can write the design doc for this feature
[X] I can contribute this feature

How can it be implemented?
No response

Also see https://github.com/juanfont/headscale/issues/2045  - I'm happy to contribute but writing design docs is rather outside my area of expertise and you probably wouldn't want any code I'd attempted to write.

Would make sense, @pallabpain are you able to take a look?

Would make sense, @pallabpain are you able to take a look?

Yes, I'll take a look. @dragon2611 It'd be great if you could share the policy file you were trying to apply.
Although the SetPolicy API does validate the payload https://github.com/juanfont/headscale/blob/948d53f934b83f0ca6d4d5007973b334a4ed306a/hscontrol/grpcv1.go#L723, maybe it's missing something.

Whilst I'd rather not post the entire ACL The thing that seemed to trip things up was

{ "action": "accept", "src": ["tag:mobiles"], "dst": ["autogroup:internet"] },
{ "action": "accept", "src": ["tag:pcs"], "dst": ["autogroup:internet"] }

What appeared to work was however

{ "action": "accept", "src": ["tag:mobiles"], "dst": ["autogroup:internet:"] },
{ "action": "accept", "src": ["tag:pcs"], "dst": ["autogroup:internet:"] }

Whilst I'd rather not post the entire ACL The thing that seemed to trip things up was

{ "action": "accept", "src": ["tag:mobiles"], "dst": ["autogroup:internet"] },
{ "action": "accept", "src": ["tag:pcs"], "dst": ["autogroup:internet"] }

What appeared to work was however

{ "action": "accept", "src": ["tag:mobiles"], "dst": ["autogroup:internet:"] },
{ "action": "accept", "src": ["tag:pcs"], "dst": ["autogroup:internet:"] }

Thanks. This helps. I'll use this for debugging the issue.

No problem, just be wary github initially parsed it I think as the * wasn't showing.
Was having a bit of problem with the formatting.

No problem, just be wary github initially parsed it I think as the * wasn't showing.
Was having a bit of problem with the formatting.

So the issue is that while the policy may be a valid HuJSON/JSON that can be marshalled into the policy struct, it may not have the right values expected in the policy.

I'm guessing the tailscale client didn't like the lack of a port definition, which is weird as for no TCP/UDP traffic there wouldn't be a port anyways.

I'm guessing the tailscale client didn't like the lack of a port definition, which is weird as for no TCP/UDP traffic there wouldn't be a port anyways.

Per Tailscale docs, the port is expected.
https://tailscale.com/kb/1337/acl-syntax#dst

Would make sense, @pallabpain are you able to take a look?

@kradalby I couldn't find anything in the tailscale client that I can use to validate the policy. Looks like it has to be implemented in headscale.

Slightly offtopic but in our company we have integration tests for ACL changes using NixOS VMs based testing framework. The misconfiguration were a coomon thing before that. So I can imagine how proper validation tests could help a lot with ACLs.

I think this is being solved, or at least improved in #2089


Multi-select doesn't work on Ubuntu (on the portal-talk repo)

Tried using alt and a bunch of other key combos and nothing worked to be able to multi-select. :(
Using a basic Dell Keyboard.
I actually cloned this repo onto my machine and tried with the dev build, and there, multi-select did work.
However on the portal-talk repo it doesn't. Really unclear why. I added a keyboard event listener onto the chrome window running portal and it properly captures the alt key being pressed.

:facepalm: I see you just added alt for multi-select 14 days ago and the last release 0.18.0 was 15 days ago. My bad. Looking forward to 0.19.0 :smile:

@mchughs, sorry about that. Should have waited to document it until it was released.


Tag  code with tag 1.10 or correspondent

In docker hub need to build a new version of with tag 1.10-72 or 1.9-72 to be used in laradock laradock repository

@gueroverde thanks for notifying me about this. I just created the tag 2.0 for this repo on Github, and I built and triggered builds (2.0-xx) on hub.docker.com now just waiting the queues to get executed, I will update the tags in the Laradock dockerfiles as soon as the builds finishes execution.


Make a Dockerfile

This is one of the few (if not the only) Tidepool app that does not have an official Docker image on Docker hub.
I prepared a rough draft here, that we need to check if it works correctly. I'm working with Tidepool through a project with a client. Tidepool looks like a very interesting project.
https://github.com/tidepool-org/uploader/compare/master...atombrella:dockerfile?expand=1

Hi @atombrella ! As Uploader is a desktop app that gets built on Travis (macOS version) and Appveyor (Windows version), we've never had any need for a Docker image. Could you please explain the use case in which a Docker image is necessary?

For development reasons, it'd be nice to easily spin it up in docker container, so you don't need to tamper with your local system, to install nvm, node and yarn etc. It apparently only runs in Ubuntu (the node docker image is based Debian), which is the most important reason for the docker container. @thedukedk opened a PR #1244 to address this.

PR linked above has now been merged.


Can anyone tell me why is this code not running like its supposed to?

Steps to reproduce
function* stupidSaga() {
  let loop = true;
  while (loop) {
    switch ('SHOULD_ENTER') {
      case 'SHOULD_ENTER': {
        console.log('running');
        if (false) {
          continue;
        }

        loop = false;

        const data = {
          allIds: [1],
          byId: { 1: { a: 'kar', b: 'tik' } },
        };
        const ids = data.allIds;
        const list = ids.map((id) => data.byId[id]);

        console.log('ended');
        break;
      }
      case 'NO_ENTRY': {
        console.log('Why is this running?');
        break;
      }
    }
  }
}

Description of the bug/issue
The above code shouldn't print Why is this running?.
This is happening only for sagas and is working fine for normal JS functions.
Steps to reproduce the bug/issue
yield call(stupidSaga)
Environment information
react-native: 0.62.0
redux-saga: 1.1.3
redux: 4.0.5

The code is working properly

Closing due to inactivity.  Please feel free to reply if you are still having this issue and I’d be happy to help debug.


SUGGESTION: goaccess 2.0

Goaccess is very nice, but the html report is too static.
I suggest some changes:

store the data in a real database (sqlite? mysql?)
make the html report dynamic, using filters

How does it work.
There are two components.
A process that periodically (crontab?) parse the apache log, and stores the data in the database.
FIELD:
ip_address
datetime
user_agent
status_code
os
....

An application (php?) that reads the data from the database, and builds the html report.
I can refine the report, using filters.
It becomes easy to extract the data that interest me from the database and show it. What changes is only the sql query.
FILTER:
DATE
    today
    last week
    last month
    from date to date

STATUS CODE
    all
    only 200
    all except 200
    select
        [X] 200
        [_] 204
        [X] 404
        [_] 500

What do you think about it?

Hi @danilort .
What I can tell you is that we are thinking about something with DB.
Well ... Your idea on CRON may be cool, but it is not functional for real-time and large sites.
I myself monitor websites with 800 Mi requests per day.
The filter idea is not new, but it is always welcome.
It is something that I believe to be functional and ideal.
I hope that in the future it can be implemented.
Well ... I am not the ideal person to talk about it.
Let's hope @allinurl himself expresses himself about this.
Thank you for your attention and commitment to assist.

Thanks for posting these suggestions, certainly appreciated! As far as filters, #117 should address that suggestion, please take a look at it for more details (it is probably the most requested feature). It is on the works and like you said, it would be great for a v2.0.
Like @0bi-w6n-K3nobi mentioned, as of now, we're looking to add an additional storage/db with greater insertion capacity. Last year, I ran some tests with SQLite but as more records were inserted, things started to slow down. I mentioned to @0bi-w6n-K3nobi that LSM-based storage/dbs are performing pretty well so far, so more likely the additional storage would be based on a LSM.
As far as SQL, right now we can make use of filtering tools such as awk, sed, grep, etc to get a filtered static report, however, I want to make sure that users can filter without the extra complexity of needing to know SQL or any of these tools and achieve similar results.

Thanks (to both of you) for the answers and the work.
I found that Apache is able to write the log directly to mysql (or other db).
(see https://escapequotes.net/save-apache-log-in-mysql-database/)
I want to try it.
If it works, I just have to write a php script (with some search fields) to show the data (it's not complicated).
I am not interested in real-time, and I have few accesses.
I would use the statistics out of curiosity (200), but also to spot bots (404) the server errors (500) and to understand how well my blocking strategies work (403).
The filter when parsing (awk, sed, grep) is not good for me.

Awesome. I'm closing this just because both features that you suggested are being worked on and have been suggested before.
Feel free to reopen it if needed.


Remove F1 reference from pricing tiers

When configuring with F1, the plugin fails because it attempts to set AlwaysOn. Since AlwaysOn is a best practice to avoid horrible soft start times, updating the readme to avoid confusion

Codecov Report

Merging #662 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #662   +/-   ##
========================================
  Coverage    34.48%   34.48%
========================================
  Files           74       74
  Lines         2940     2940
  Branches       417      417
========================================
  Hits          1014     1014
  Misses        1846     1846
  Partials        80       80

Continue to review full report at Codecov.

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

@kyleburnsdev Thanks for your support. I tried to deploy a windows web app to Azure with maven plugin and it works well. And I could see upgrade to enable always on in portal. (Seems server side close always on automatically)

For Linux app service, I tried to close always on and the server returns Free and Shared SKUs are not available for apps running on Linux. So I think we could prompt users that F1 only support Windows app service instead of removing it, for users may want to try with a free one first.

@kyleburnsdev Thanks for your support. I tried to deploy a windows web app to Azure with maven plugin and it works well. And I could see upgrade to enable always on in portal. (Seems server side close always on automatically)
For Linux app service, I tried to close always on and the server returns Free and Shared SKUs are not available for apps running on Linux. So I think we could prompt users that F1 only support Windows app service instead of removing it, for users may want to try with a free one first.

I updated to re-add F1, calling out that it is for Windows only


Submit new app India News

Description
Submitting a new app, India News, that fetches top news headlines from India
Copilot

🤖[deprecated] Generated by Copilot at 700010d
Summary
🇮🇳📰🚀

This pull request adds a new applet for displaying news headlines from India on the Tidbyt device. The applet code is in india_news.star and uses the News API service to fetch the latest news. The applet metadata is in manifest.yaml and follows the required format.

India News app
Top headlines from the subcontinent
A winter delight

Walkthrough

Create and register a new applet for displaying India news headlines (link, link)

Write the main code in india_news.star that imports modules, defines constants and functions, and returns a render.Root object (link)
Use the News API service to fetch the top 4 news headlines from India and format them for display (link)
Allow the user to configure the scroll speed of the headlines using a get_schema function (link)
Credit the ESPN news applet by jvivona as the source of inspiration and code reuse (link)
Write the manifest file in manifest.yaml that specifies the applet metadata, such as the id, name, summary, description, author, file name, and package name (link)

I have read the CLA Document and I hereby sign the CLA


Files operations are ignoring TEMP_DIR setting when SUDO = True

Describe the bug
When trying to upload or template a file to remote host without /tmp access and when SUDO = True I receive an error that /tmp directory is not found even when other value of the TEMP_DIR setting is specified. Currently I'm experiencing this problem when trying to upload docker-compose files to Synology NAS where direct SFTP has no access to file system other then user home directory
To Reproduce
Steps to reproduce the behavior (include code & usage example):
from pyinfra import config
from pyinfra.operations import files

config.SUDO = True
config.TEMP_DIR = 'test'

files.put('synology/docker-compose/agh.yml', './tmp/agh/docker-composy.yml')

pyinfra ./inventory/inventory.py deploys/synology/agh.py --limit synology -vvvv --debug
    [pyinfra_cli.main] Checking potential directory: deploys/synology
    [pyinfra_cli.main] Checking potential directory: deploys
    [pyinfra_cli.main] Setting directory to: deploys
--> Loading config...
--> Loading inventory...
    [pyinfra_cli.inventory] Creating fake inventory...
    [pyinfra_cli.inventory] Looking for group data in: deploys/group_data/[REDACTED].py

--> Connecting to hosts...
    [pyinfra.api.connectors.ssh] Connecting to: synology ({'allow_agent': False, 'look_for_keys': False, 'hostname': '[REDACTED]', '_pyinfra_force_forward_agent': None, '_pyinfra_ssh_config_file': None, 'username': '[REDACTED]', 'port': [REDACTED], 'timeout': 10})
    [synology] Connected
    [pyinfra.api.state] Activating host: synology

--> Preparing operations...
    Loading: deploys/synology/agh.py
    [pyinfra.api.operation] Adding operation, {'Files/Put'}, opOrder=(8,), opHash=bd05d67789318d253923550b574ee43b70bbb955
    [pyinfra.api.facts] Getting fact: file (path=./tmp/agh/docker-compose.yml) (ensure_hosts: (Host(synology),))
    [pyinfra.api.connectors.ssh] Running command on synology: (pty=False) sh -c 'chmod +x pyinfra-sudo-askpass'
    [pyinfra.api.connectors.ssh] Waiting for exit status...
    [pyinfra.api.connectors.ssh] Command exit status: 0
    [pyinfra.api.connectors.ssh] Running command on synology: (pty=False) env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c '! (test -e ./tmp/agh/docker-compose.yml || test -L ./tmp/agh/docker-compose.yml ) || ( stat -c '"'"'user=%U group=%G mode=%A atime=%X mtime=%Y ctime=%Z size=%s %N'"'"' ./tmp/agh/docker-compose.yml 2> /dev/null || stat -f '"'"'user=%Su group=%Sg mode=%Sp atime=%a mtime=%m ctime=%c size=%z %N%SY'"'"' ./tmp/agh/docker-compose.yml )'
[synology] >>> env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c '! (test -e ./tmp/agh/docker-compose.yml || test -L ./tmp/agh/docker-compose.yml ) || ( stat -c '"'"'user=%U group=%G mode=%A atime=%X mtime=%Y ctime=%Z size=%s %N'"'"' ./tmp/agh/docker-compose.yml 2> /dev/null || stat -f '"'"'user=%Su group=%Sg mode=%Sp atime=%a mtime=%m ctime=%c size=%z %N%SY'"'"' ./tmp/agh/docker-compose.yml )'
    [pyinfra.api.connectors.ssh] Waiting for exit status...
    [pyinfra.api.connectors.ssh] Command exit status: 0
    Loaded fact file (path=./tmp/agh/docker-compose.yml)
    [pyinfra.api.facts] Getting fact: directory (path=./tmp/agh/docker-compose.yml) (ensure_hosts: (Host(synology),))
    [pyinfra.api.connectors.ssh] Running command on synology: (pty=False) env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c '! (test -e ./tmp/agh/docker-compose.yml || test -L ./tmp/agh/docker-compose.yml ) || ( stat -c '"'"'user=%U group=%G mode=%A atime=%X mtime=%Y ctime=%Z size=%s %N'"'"' ./tmp/agh/docker-compose.yml 2> /dev/null || stat -f '"'"'user=%Su group=%Sg mode=%Sp atime=%a mtime=%m ctime=%c size=%z %N%SY'"'"' ./tmp/agh/docker-compose.yml )'
[synology] >>> env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c '! (test -e ./tmp/agh/docker-compose.yml || test -L ./tmp/agh/docker-compose.yml ) || ( stat -c '"'"'user=%U group=%G mode=%A atime=%X mtime=%Y ctime=%Z size=%s %N'"'"' ./tmp/agh/docker-compose.yml 2> /dev/null || stat -f '"'"'user=%Su group=%Sg mode=%Sp atime=%a mtime=%m ctime=%c size=%z %N%SY'"'"' ./tmp/agh/docker-compose.yml )'
    [pyinfra.api.connectors.ssh] Waiting for exit status...
    [pyinfra.api.connectors.ssh] Command exit status: 0
    Loaded fact directory (path=./tmp/agh/docker-compose.yml)
    [pyinfra.api.facts] Getting fact: directory (path=./tmp/agh) (ensure_hosts: (Host(synology),))
    [pyinfra.api.connectors.ssh] Running command on synology: (pty=False) env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c '! (test -e ./tmp/agh || test -L ./tmp/agh ) || ( stat -c '"'"'user=%U group=%G mode=%A atime=%X mtime=%Y ctime=%Z size=%s %N'"'"' ./tmp/agh 2> /dev/null || stat -f '"'"'user=%Su group=%Sg mode=%Sp atime=%a mtime=%m ctime=%c size=%z %N%SY'"'"' ./tmp/agh )'
[synology] >>> env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c '! (test -e ./tmp/agh || test -L ./tmp/agh ) || ( stat -c '"'"'user=%U group=%G mode=%A atime=%X mtime=%Y ctime=%Z size=%s %N'"'"' ./tmp/agh 2> /dev/null || stat -f '"'"'user=%Su group=%Sg mode=%Sp atime=%a mtime=%m ctime=%c size=%z %N%SY'"'"' ./tmp/agh )'
[synology] user=ansible-admin group=users mode=drwx--x--x atime=1645292982 mtime=1645352207 ctime=1645352207 size=0 './tmp/agh'
    [pyinfra.api.connectors.ssh] Waiting for exit status...
    [pyinfra.api.connectors.ssh] Command exit status: 0
    Loaded fact directory (path=./tmp/agh)
    [pyinfra.api.facts] Getting fact: sha1_file (path=./tmp/agh/docker-compose.yml) (ensure_hosts: (Host(synology),))
    [pyinfra.api.connectors.ssh] Running command on synology: (pty=False) env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c 'test -e ./tmp/agh/docker-compose.yml && ( sha1sum ./tmp/agh/docker-compose.yml 2> /dev/null || shasum ./tmp/agh/docker-compose.yml 2> /dev/null || sha1 ./tmp/agh/docker-compose.yml ) || true'
[synology] >>> env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c 'test -e ./tmp/agh/docker-compose.yml && ( sha1sum ./tmp/agh/docker-compose.yml 2> /dev/null || shasum ./tmp/agh/docker-compose.yml 2> /dev/null || sha1 ./tmp/agh/docker-compose.yml ) || true'
    [pyinfra.api.connectors.ssh] Waiting for exit status...
    [pyinfra.api.connectors.ssh] Command exit status: 0
    Loaded fact sha1_file (path=./tmp/agh/docker-compose.yml)
    [pyinfra.api.facts] Getting fact: file (path=./tmp/agh/docker-compose.yml) (ensure_hosts: (Host(synology),))
    [synology] Ready: deploys/synology/agh.py

--> Proposed changes:
    Groups: inventory / infra
    [synology]   Operations: 1   Commands: 1

--> Beginning operation run...
--> Starting operation: Files/Put (synology/docker-compose/agh.yml, ./tmp/agh/docker-compose.yml)
    [pyinfra.api.operations] Starting operation Files/Put on synology
    [pyinfra.api.connectors.ssh] Running command on synology: (pty=None) env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c 'cp /tmp/pyinfra-7dec97431f2113fbc8f45e59a9838c86c08274ef ./tmp/agh/docker-compose.yml'
[synology] >>> env SUDO_ASKPASS=pyinfra-sudo-askpass *** sudo -H -A -k sh -c 'cp /tmp/pyinfra-7dec97431f2113fbc8f45e59a9838c86c08274ef ./tmp/agh/docker-compose.yml'
[synology] cp: cannot stat '/tmp/pyinfra-7dec97431f2113fbc8f45e59a9838c86c08274ef': No such file or directory
    [pyinfra.api.connectors.ssh] Waiting for exit status...
    [pyinfra.api.connectors.ssh] Command exit status: 1
    File upload error: cp: cannot stat '/tmp/pyinfra-7dec97431f2113fbc8f45e59a9838c86c08274ef': No such file or directory
    [synology] Error
    [pyinfra.api.state] Failing hosts: synology
    [pyinfra.api.connectors.ssh] Running command on synology: (pty=False) sh -c 'rm -f pyinfra-sudo-askpass'
    [pyinfra.api.connectors.ssh] Waiting for exit status...
    [pyinfra.api.connectors.ssh] Command exit status: 0
--> pyinfra error: No hosts remaining!

Notice how pyinfra is trying to copy from /tmp directory.
This same code works properly without sudo, the source file is present on the pyinfra machine, so I came to a conclusion that this is a bug
I tried to debug it myself by adding the following lines here
    if sudo or su_user:
        # Get temp file location
        temp_file = state.get_temp_filename(remote_filename)
        print("INTERNAL DEBUG: temp_file", temp_file)
        print("INTERNAL DEBUG: TEMP_DIR", state.config.TEMP_DIR)
        print("INTERNAL DEBUG: SUDO", state.config.SUDO)
        _put_file(host, filename_or_io, temp_file)

This was the output
INTERNAL DEBUG: temp_file /tmp/pyinfra-7dec97431f2113fbc8f45e59a9838c86c08274ef
INTERNAL DEBUG: TEMP_DIR /tmp
INTERNAL DEBUG: SUDO False

Seems like configuration values are not being passed correctly to the connector
EDIT 1:
I went a bit further and added this to https://github.dev/Fizzadar/pyinfra/blob/233a7797dc556f01727b8887cbf0e39bdd9dc548/pyinfra/api/host.py#L1
    def put_file(self, *args, **kwargs):
        self._check_state()
        print('INTERNAL DEBUG state', self.state.config.TEMP_DIR)
        return self.executor.put_file(self.state, self, *args, **kwargs)

Here is the result
--> Loading config...
--> Loading inventory...

--> Connecting to hosts...
    [synology] Connected

--> Preparing operations...
    Loading: deploys/synology/agh.py
INTERNAL DEBUG state test
    [synology] Ready: deploys/synology/agh.py

--> Proposed changes:
    Groups: inventory / infra
    [synology]   Operations: 1   Commands: 1

--> Beginning operation run...
--> Starting operation: Files/Put (synology/docker-compose/agh.yml, ./tmp/agh/docker-compose.yml)
INTERNAL DEBUG state /tmp
    File upload error: cp: cannot stat '/tmp/pyinfra-7dec97431f2113fbc8f45e59a9838c86c08274ef': No such file or directory
    [synology] Error
--> pyinfra error: No hosts remaining!

Seems like configs values are diverging between planning and execution stages
Expected behavior
Files are uploaded/templated without errors
Meta

Include output of pyinfra --support.

--> Support information:

    If you are having issues with pyinfra or wish to make feature requests, please
    check out the GitHub issues at https://github.com/Fizzadar/pyinfra/issues .
    When adding an issue, be sure to include the following:

    System: Linux
      Platform: Linux-5.10.0-11-amd64-x86_64-with-glibc2.31
      Release: 5.10.0-11-amd64
      Machine: x86_64
    pyinfra: v1.6.2
    Executable: /home/[REDACTED]/.local/bin/pyinfra
    Python: 3.9.2 (CPython, GCC 10.2.1 20210110)

How was pyinfra installed (source/pip)?

python3 -m pip install --user pyinfra

Include pyinfra-debug.log (if one was created)
Consider including output with -vv and --debug.

@Renerick thanks for reporting this, confirmed is happening on both 1.6.x and v2 WIP as well. Had a quick look but can't quite figure it out so needs a more thorough investigation.

So the issue here was the config being used to generate the temp filename at execution time, not during operation generation. I've change how this works to pass through the temporary name in https://github.com/Fizzadar/pyinfra/commit/eec1c5d51bfd6e97331c878dcbd0458a856e5848 which should resolve this. Pending v1.7 release later today.

Now released in v1.7!


added arg 'in' to species: transformer template

All of the objects of species: transformer were missing the in argument in their documentation. I added it to the template for this species and all seems good. If you approve, please merge.

The objects that are marked as species: transformer in the YAML are:

FluidAudioTransport
FluidGain
FluidHPSS
FluidNMFFilter
FluidNMFMorph
FluidSines
FluidSTFTPass
FluidTransients

All of these benefit from (are in need of) the added in in the transformer template, except for NMFMorph because it doesn't take audio in, instead it takes in two bases buffers and an activations buffer and synthesises sound.
This to me means it is not of species: transformer. I can't spy another species that it would belong to but I do think having in in this template is the right move.
So, should there be a new species for FluidNMFMorph?

I agree in principle but I'd need to see the result - any chance of putting here an example of the rendered doc with the new entry?

I've not been following the species stuff to closesly but I sense the issue is that its a mixture of whatever species a buffer is and a transformer?

There's another potential caveat here with FluidAudioTransport. It's not anything breaking, but worth noticing.
FluidAudioTransport is listed as a species: "transformer" which means with this PR it will be given the first argument as in. In the YAML it lists the second argument as in2. This can be changed to inB, which would be good, but that first argument would still just in in instead of inA, which would be better.
Is it worth making, yet another, species for a transformer with 2 audio inputs (for which this is the only object (?))? Or just let the two inputs be called in and inB?

I believe the only thing holding back this merge right now is: https://github.com/flucoma/flucoma-sc/issues/64

I've removed myself as reviewer since I am unaware of the ties of all this and trust everyone blindly


Is it bug?

Basic Information
Device type: vivo x20__
OS version: 7.1.1__
EasyPermissions version: 1.2.0__
Describe the problem
What happened?  What did you expect to happen?
Code and logs
// TODO(you): show the code that produces the problem,
//            and any relevant logs.

support version 27.1.1
as verson: 3.1.2
@samtstern i need u help.

@AnMokoto there's not enough information here to debug, you haven't shown the full stack trace or the code that causes the issue.

@samtstern  thx for u reply
that's my code below:

public abstract class BasePermissionActivity extends RxAppCompatActivity implements EasyPermissions.PermissionCallbacks {

    private static final int BASE_PERMISSION = 0x1001;

    private static final String[] PERMISSION = {
            Manifest.permission.WRITE_EXTERNAL_STORAGE,
            Manifest.permission.READ_EXTERNAL_STORAGE,
            Manifest.permission.CAMERA,
            Manifest.permission.VIBRATE,
            Manifest.permission.WAKE_LOCK,
            Manifest.permission.MOUNT_UNMOUNT_FILESYSTEMS,
    };

    @Override
    protected void onStart() {
        super.onStart();
        onRequestPermission();
    }

    @Override
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
                                           @NonNull int[] grantResults) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
        EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this);
    }

    @AfterPermissionGranted(BASE_PERMISSION)
    public void onRequestPermission() {
        if (!EasyPermissions.hasPermissions(this, PERMISSION)) {
            EasyPermissions.requestPermissions(this, getString(R.string.app_permission), BASE_PERMISSION,
                    PERMISSION);
        }
    }

    @Override
    public void onPermissionsGranted(int requestCode, @NonNull List<String> perms) {

    }

    @Override
    public void onPermissionsDenied(int requestCode, @NonNull List<String> perms) {
        if (!EasyPermissions.somePermissionPermanentlyDenied(this, perms)) {
            new AppSettingsDialog.Builder(this).build().show();
        }
    }
}

Not of all have reported this error. The log shows that only this Chinese-produced such as vivo reported this error.I think of the wrong that Manifest.permission.MOUNT_UNMOUNT_FILESYSTEMS even though it's not a native ROM.

@AnMokoto ok it looks like it's getting into an infinite loop.  hasPermissions is returning false but then requestPermissions is coming back successful immediately.  This calls the annotated method which gets back into the loop.
I assume this only reproduces on certain devices?

@samtstern Yeap,it was successfully on the other devices. I did not  known it was makes a fault that the producers does what. Cause the systems were not an Android Native Rom and framework.
i hope u no what i mean. 😢

@AnMokoto I understand.  Unfortunately with device-specific things like this there is nothing we can do in EasyPermissions.  The error is at a lower level.
You will need to use the Android system permissions API yourself and track when you get a successful result to avoid getting into a loop, as I think hasPermissions is going to lie to you :-/

@samtstern   :smile: Thx for u help and I has been fixed this issue yesterday.


Weird behavior when using packages that overwrite each other

Checks

[X] I have checked that this issue has not already been reported.

[X] I have confirmed this bug exists on the latest version of pixi, using pixi --version.

Reproducible example
[project]
name = "test-opt"
version = "0.1.0"
description = ""
authors = [""]
channels = ["conda-forge"]
platforms = ["osx-arm64"]

[tasks]

[dependencies]
opt-einsum = "3.0.0.*"
opt_einsum = "3.3.0.*"

open .pixi/env/lib/python3.12/site-packages

Issue description
The opt_einsum directory gets written to by both opt_einsum and opt-einsum (which are two different versions).
Expected behavior
pixi should crash here or print a warning at least.

I was waiting for this to become an issue. Rattler completely ignores packages that write to the same folder (clobbering). If this is a big issue for you we’ll have to fix that there.

It probably won't happen often and I fixed this specific issue by https://github.com/conda-forge/opt_einsum-feedstock/pull/24 but figuring out that this was the issue was kind of annoying. Ideally, pixi/rattler would have complained as soon as clobbering would occur.

psycopg2 and psycopg2-bin are pypi examples of this.  Im wondering if we can close this.

@wolfv I'm not getting any clobber warnings. Wasn't that something you worked on?

Hmm, this should indeed give a clobber warning, and write both versions of the file. I'll have to double check this.


[MAJOR] Add support for response chunking to Redis Gateway transport

Part of the 1.0.0 milestone includes adding Python Typing support throughout the library. That was not the goal of this commit, but doing so in part of the library made it easier to correctly implement these changes, so this commit includes extensive added Python Typing support.
Add a new Protocol Version concept to the PySOA Redis transport protocol.
Although Protocol Version was previously undocumented, it was still an implicit concept, where without-content-type was Version 1 and with-content-type was Version 2. Now that it is a formal concept, the default Protocol Version has changed from Version 1 to Version 2, with a client-side configuration option to override the default with Version 1, 2, or 3.
Add server response chunking to the PySOA Redis Transport Protocol version 3. Client requests can never support chunking, due to the nature of the way the protocol works at its foundation. Only server responses can
support chunking.
Update documentation.
Make auto-doc-generation work in Python 3 (only).
Re-run auto-doc-generation.

Side note: can we have one PR per feature in the future, diffs as large as this one, with unrelated features are annoying to review.

That was originally the goal, but once I got part-way through adding chunking support, I realized I was adding typing information to help me feel more confident in the changes, and then I realized I needed //more// typing information to continue feeling confident in the changes, and by that point I had two parallel changes (chunking and type comments) that were suddenly difficult to separate. 🤷♂


The stacktrace available in the Execution Context should be complete

Expected behavior
The complete stacktrace is available
Actual behavior
The stacktrace available is truncated.
Steps to replicate

Create a gauge-java project
Throw an exception in a step

The stacktrace in Execution context is not complete

Version
Gauge version: 0.9.8.nightly-2018-04-19
Commit Hash: 58298e2

Plugins
-------
java (0.6.7.nightly-2018-04-16)

Related to https://github.com/getgauge/gauge-java/issues/125

can you post a truncated stacktrace ?
I get
# Specification Heading
  ## Vowel counts in single word         P F
        Failed Step: The word "gauge" has "3" vowels.
        Specification: specs\example.spec:16
        Error Message: java.lang.NullPointerException: This is wrong
        Stacktrace:
        StepImplementation.verifyVowelsCountInWord(StepImplementation.java:24)
        java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        java.base/java.lang.reflect.Method.invoke(Method.java:564)
        com.thoughtworks.gauge.execution.MethodExecutor.execute(MethodExecutor.java:38)
        com.thoughtworks.gauge.execution.StepExecutionStage.executeStepMethod(StepExecutionStage.java:74)
        com.thoughtworks.gauge.execution.StepExecutionStage.executeStep(StepExecutionStage.java:67)
        com.thoughtworks.gauge.execution.StepExecutionStage.execute(StepExecutionStage.java:49)
        com.thoughtworks.gauge.execution.AbstractExecutionStage.executeNext(AbstractExecutionStage.java:24)
        com.thoughtworks.gauge.execution.HookExecutionStage.execute(HookExecutionStage.java:43)
        com.thoughtworks.gauge.execution.ExecutionPipeline.start(ExecutionPipeline.java:29)
        com.thoughtworks.gauge.processor.ExecuteStepProcessor.process(ExecuteStepProcessor.java:45)
        com.thoughtworks.gauge.connection.MessageDispatcher.dispatchMessages(MessageDispatcher.java:92)
        com.thoughtworks.gauge.GaugeRuntime.dispatchMessages(GaugeRuntime.java:96)
        com.thoughtworks.gauge.GaugeRuntime.lambda$connectSynchronously$1(GaugeRuntime.java:79)
        java.base/java.lang.Thread.run(Thread.java:844)

  ## Vowel counts in multiple word       P P

Successfully generated html-report to => C:\Users\ajoecker\dev\gauge-init-java\reports\html-report\index.html
Specifications: 1 executed      0 passed        1 failed        0 skipped
Scenarios:      2 executed      1 passed        1 failed        0 skipped

Total time taken: 566ms

which looks fine ?!
Version
$ gauge -v
Gauge version: 0.9.7
Commit Hash: bc9784c

Plugins
-------
html-report (4.0.3)
java (0.6.7.nightly-2018-04-27)
screenshot (0.0.1)
spectacle (0.1.2)

We decided to leave the stacktrace as is (that is in its truncated form). The reason being, the user in most of the cases should be worrying about the internals of Gauge and will not need Gauge's stacktrace.
If someone sees a need for this, please feel free to comment and tell us why you would need this kind of stacktrace.

The information that I'm missing are nested exceptions. It's OK not to show that information in the regular Gauge output, but there should be an easy way to get as much exception information as possible when things start to get complicated.
My suggestion is to include a reference to the top level Throwable in the StepDetails object pased via the ExecutionContext of an @AfterStep method. This way the tester will be able to format the exception at his/her convenience.
Ref. #189.

What's missing is not Gauge's stacktrace but the caused by of the exception that does get logged.
The output I'm looking at is equivalent to this:
        Failed Step: The word "gauge" has "3" vowels.
        Specification: specs\example.spec:16
        Error Message: java.lang.ExceptionInInitializerError
        Stacktrace:
        StepImplementation.verifyVowelsCountInWord(StepImplementation.java:24)
        java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        java.base/java.lang.reflect.Method.invoke(Method.java:564)
        com.thoughtworks.gauge.execution.MethodExecutor.execute(MethodExecutor.java:38)
        com.thoughtworks.gauge.execution.StepExecutionStage.executeStepMethod(StepExecutionStage.java:74)
        com.thoughtworks.gauge.execution.StepExecutionStage.executeStep(StepExecutionStage.java:67)
        com.thoughtworks.gauge.execution.StepExecutionStage.execute(StepExecutionStage.java:49)
        com.thoughtworks.gauge.execution.AbstractExecutionStage.executeNext(AbstractExecutionStage.java:24)
        com.thoughtworks.gauge.execution.HookExecutionStage.execute(HookExecutionStage.java:43)
        com.thoughtworks.gauge.execution.ExecutionPipeline.start(ExecutionPipeline.java:29)
        com.thoughtworks.gauge.processor.ExecuteStepProcessor.process(ExecuteStepProcessor.java:45)
        com.thoughtworks.gauge.connection.MessageDispatcher.dispatchMessages(MessageDispatcher.java:92)
        com.thoughtworks.gauge.GaugeRuntime.dispatchMessages(GaugeRuntime.java:96)
        com.thoughtworks.gauge.GaugeRuntime.lambda$connectSynchronously$1(GaugeRuntime.java:79)
        java.base/java.lang.Thread.run(Thread.java:844)

What caused the ExceptionInInitializerError? There isn't a way to tell here.


Reuse signer in DefaultPromoterImplementation

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
This uses the new SignImageWithOptions API to reuse the signer and therefore its caching.
Which issue(s) this PR fixes:

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

None

@kubernetes-sigs/release-engineering PTAL
I think we can cut a new kpromo after this.

@kubernetes-sigs/release-engineering PTAL
I think we can cut a new kpromo after this.

i can help to cut those things

@kubernetes-sigs/release-engineering PTAL
I think we can cut a new kpromo after this.

i can help to cut those things

Thank you so much!

/lgtm
thanks @saschagrunert


Fix unit test dev wf, testcafe naming, optimize saucectl configs.

Description

Related Issue

Motivation and Context

Screenshots (if appropriate):
Types of changes

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

Checklist:

[ ] I have signed the Adobe Open Source CLA or I'm an Adobe employee.
[ ] I have made any necessary test changes and all tests pass.
[ ] I have run the Sandbox successfully.

What's the purpose of removing "Test " from the beginning of the test names? Does that help with NewRelic reporting? And did you figure out the node_modules/ thing?

It didn't, I reverted the changes. Included a fix for the geckodriver fix for the functional tests. The runs are failing due to C1576777 failing.


update to latest EmbeddedChannel API

Motivation:
EmbeddedChannel's API has changed a litle bit, we should update.
Modifications:
update
Result:
code will continue to work

@swift-nio-bot test this please


home page animation text changes

here change the animated code text to some AI/ML  related code

Hi


Words are missing, pronouns, numbers

pêyak and êkosi aren't in the list, fix it!
More words:
acahk
kekâc
amisk
kihêw
nawac
niska
tâpwê
mayaw
âwiya
wâciy
wâskâ
wâwâc

Created script to generate new word lists. I've tested all these words against it, should be good now.


Support pin shortcuts feature in android

Use case
New feature request
I went to add pin shortcut in android platform, please add new method to add a pin shortcut in android I when the both feature used for different ways. I edited your code, it is possible to add request pin shortcut. used this code
ShortcutManagerCompat.requestPinShortcut(context, shortcuts.get(0), null);
I add the code for using demo purpose, its working fine. Please add you in proper ways and enhance your library and shortcut for to different way if person add dynamic shortcut use previous one other wise if person use pin shortcut use new one method. if this possible to add this please let me know other wise i used this package in manual import.
Proposal

Are you using quick_actions and request adding requestPinShortcut into it?
Or are you proposing a new plugin for your case? If so, please check flutter_pinned_shortcut to see if it fits your case.

Are you using quick_actions and request adding requestPinShortcut into it?
Or are you proposing a new plugin for your case? If so, please check flutter_pinned_shortcut to see if it fits your case.

flutter_pinned_shortcut not behave correctly , always of start follow of the app,
quick_actions behave correct, i went no new plugin, integrated in same plugin, create new method to createPinshortcut method

quick_actions behave correct, i went no new plugin, integrated in same plugin, create new method to createPinshortcut method

This seems to be beyond quick_actions plugin's scope, please see https://github.com/flutter/flutter/issues/44987#issuecomment-825217057.
Closing this as a duplicate of https://github.com/flutter/flutter/issues/44987.


Nothing happens when locking/unlocking

It does not pause or stop when I lock, despite foo_lock settings (in Advanced).
foobar2000 console logs nothing special, either.
Is foo_lock still supposed to work?
Maybe it's because I have installed foobar2000 with the "per user" install option (I have no admin rights)?
Maybe I should install latest foobar2000 (2.1.5)?
64-bit Windows 10 Entreprise 22H2
foobar2000 v2.0 [x64]
foo_lock <IP_ADDRESS>

It worked when I released it, for sure. I don't really use it myself. It was a forum request. I'll do some checking. Maybe Microsoft 'fixed' something that broke the functionality. 2.1.5 is not required; neither is admin.

After specifying the lock and unlock action you have to enable or disable it with the "Playback / Pause on lock" menu item. I'll update the README.
Can you confirm that it works as released when you do that? It still does on my configuration.

Wow!! Ii seems I forgot that!
Thanks so much!


Workflow fails after typing "1p" in alfred

Diagnostic
Loading .zshenv...
Workflow version
2023.7
Alfred version
5.1
macOS version
13.3.1
Architecture
arm64
Preferences
Dict {
}
1Password version
8.10.4
op version
2.17.0
Launchd job
NOT loaded
NOT installed
Debugger output
[12:59:26.034] Logging Started...
[12:59:31.362] 1Password[Script Filter] Queuing argument '(null)'
[12:59:31.379] 1Password[Script Filter] Script with argv '(null)' finished
[12:59:31.385] 1Password[Script Filter] Loading .zshenv...
{
  "rerun": 0.1,
  "items": [{
    "title": "Sign in and update items",
    "arg": "update_items",
    "icon": { "path": "composite_icon.png" }
  }]
}
[12:59:31.385] ERROR: 1Password[Script Filter] JSON error: JSON text did not start with array or object and option to allow fragments not set. around line 1, column 0. in JSON:
Loading .zshenv...
{
  "rerun": 0.1,
  "items": [{
    "title": "Sign in and update items",
    "arg": "update_items",
    "icon": { "path": "composite_icon.png" }
  }]
}
[13:06:55.945] 1Password[Keyword] Processing complete
[13:06:55.945] 1Password[Keyword] Passing output '' to Run Script
[13:06:56.217] STDERR: 1Password[Run Script] 5:48: syntax error: Can’t get application id "com.agilebits.onepassword7". (-1728)
[13:06:56.224] 1Password[Run Script] Processing complete
[13:06:56.224] 1Password[Run Script] Passing output 'Loading .zshenv...
### Workflow version
2023.7

### Alfred version
5.1

### macOS version
13.3.1

### Architecture
arm64

### Preferences
Dict {
}

### 1Password version
8.10.4

### op version
2.17.0

### Launchd job
NOT loaded
NOT installed
' to Copy to Clipboard
[13:06:56.225] 1Password[Copy to Clipboard] Processing complete
[13:06:56.226] 1Password[Copy to Clipboard] Passing output 'Loading .zshenv...
### Workflow version
2023.7

### Alfred version
5.1

### macOS version
13.3.1

### Architecture
arm64

### Preferences
Dict {
}

### 1Password version
8.10.4

### op version
2.17.0

### Launchd job
NOT loaded
NOT installed
' to Dialog Conditional

More details
Typing "1p" into alfred only shows to:

1Password.app
1Password for Safari.app

The debugger seems to indicate a problem.

The issue is precisely that your .zshenv is outputting a message, which is breaking the JSON. If you remove that, it should start working again.
Currently there’s no other way around it, though we’re aware.

100% right.  Didn't see it in the debug output.  Thanks!


Unstyled UI shows up on the first load. CSS is not loading properly on production build

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Current behavior 😯
Unstyled UI shows up on the first load when using material ui examples nextjs-with-typescript or nextjs stackblitz
This also happens within my own project with the latest packages versions.
Expected behavior 🤔
Ui is loaded with styles on the first load.
Steps to reproduce 🕹
Steps:

Go to https://stackblitz.com/github/mui/material-ui/tree/master/examples/nextjs or https://stackblitz.com/github/mui/material-ui/tree/master/examples/nextjs-with-typescript
Reload the ui within stackblitz (it can be seen that mui light bulb icon is large for a fraction of a second)

Context 🔦
No response
Your environment 🌎

`npx @mui/envinfo`
  Don't forget to mention which browser you used.
  Output from `npx @mui/envinfo` goes here.

Can confirm this is indeed not working 😢
Best way to see this is to disable JS and see that the rendered page is unstyled.

I tried to go a bit deeper on this and the only thing I found out is that initialProps.html seems to be empty.
  const initialProps = await Document.getInitialProps(ctx);
  const emotionStyles = extractCriticalToChunks(initialProps.html);

This is caused by React 18. With React 17 initialProps.html is properly defined.
I will open a ticket with next js.

Turns out opening an issue won't be needed. This is indeed an issue with next.
It's fixed on Next version 12.1.7-canary.6.

This can be closed. See https://github.com/vercel/next.js/issues/36915#issuecomment-1127026414

@PupoSDC @balazsorban44 Thanks a lot for the quick response! Can confirm it works with the<EMAIL_ADDRESS>

duplicate of #32644

Turns out opening an issue won't be needed. This is indeed an issue with next.
It's fixed on Next version 12.1.7-canary.6.

I upgraded from v12.0.10 to v12.1.7-canary.39 and I still have this issue happening, anybody can help?


Issues with new MeshInstance primitives

Operating system or device - Godot version:
Arch Linux, Godot 3 master
Intel HD4000
Issue description:
I just tested the new MeshInstance primitives and noticed 2 issues:

The objects can't be selected in the editor viewport but only from the inspector

more severe: trying using the sliders to set properties completely freezes godot for me and slows down my computer massively. probably because moving them even a little bit quickly leads to setting insanely high values? there should maybe be a limit of sane values for certain properties.

Steps to reproduce:

add a MeshInstance node and fill Mesh slot with a NewCubeMesh
try to edit the primitive's Subdivide properties using a slider (beware: this made my desktop environment freeze completely in some instances)

[edit]
While Godot is frozen after using the slider, it quickly eats up all my system memory and my cpu as at constant 100% (thus the massive slowdown)

Owh that was quick:)
I'll add in sensible limits on the entry fields, that should stop it getting high values, and indeed if you subdivide objects too far it'll bog down in creating the meshes.
need to look into the selection issue, I'm guessing I need to add gizmos to the objects for that to work, have not done that before:)
Thanks for testing!

selection should work, i feel something is casting to ArrayMesh when it
shouldn't
On Fri, Jun 16, 2017 at 10:09 AM, Bastiaan Olij<EMAIL_ADDRESS>wrote:

Owh that was quick:)
I'll add in sensible limits on the entry fields, that should stop it
getting high values, and indeed if you subdivide objects too far it'll bog
down in creating the meshes.
need to look into the selection issue, I'm guessing I need to add gizmos
to the objects for that to work, have not done that before:)
Thanks for testing!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/9210#issuecomment-309021996,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AF-Z2_X_Nz-D-En_w1q_HZR1oFcsOyVXks5sEn6HgaJpZM4N8amm
.

@BastiaanOlij actually all the sliders don't seem to work at all. moving them in any direction just inserts some random very high (negative) number, which is not changed when moving the sliders any further. (this doesn't only affect subdivision property, but things like segment count and subdivision lead to an instant crash)

@novemberist none of the properties have any range limits set so I guess the sliders take some really wild input. I'm adding range limits now.
It is no longer doing crazy things but the sliders do seem to only accept a single change, gonne need @reduz to have a quick look at that cause I'm not sure what could cause that.

Thats the first fix, I'm off to sleep, more to come :)

i see you fixed stuff, is this working now?

@reduz I never managed to reproduce the selection issue but the sliders are all fine.