WIP: well basics tutorial

Codecov Report

Merging #152 (569105a) into master (23a2743) will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #152   +/-   ##
=======================================
  Coverage   39.77%   39.78%
=======================================
  Files          51       51
  Lines       23577    23548   -29
=======================================
- Hits         9378     9368   -10
+ Misses      14199    14180   -19

Impacted Files
Coverage Δ

resqpy/olio/simple_lines.py
40.65% <0.00%> (-0.48%)
:arrow_down:

resqpy/olio/wellspec_keywords.py
66.51% <0.00%> (-0.31%)
:arrow_down:

resqpy/olio/keyword_files.py
41.80% <0.00%> (-0.13%)
:arrow_down:

resqpy/model.py
57.96% <0.00%> (-0.07%)
:arrow_down:

resqpy/olio/transmission.py
71.49% <0.00%> (-0.05%)
:arrow_down:

resqpy/grid_surface.py
77.61% <0.00%> (-0.03%)
:arrow_down:

resqpy/grid.py
37.30% <0.00%> (+0.01%)
:arrow_up:

resqpy/olio/vdb.py
10.60% <0.00%> (+0.01%)
:arrow_up:

resqpy/lines.py
17.20% <0.00%> (+0.02%)
:arrow_up:

resqpy/fault.py
36.09% <0.00%> (+0.03%)
:arrow_up:

... and 6 more

Continue to review full report at Codecov.

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

@andy-beer FYI, one thing which may help - if you'd like to preview the documentation before merging to master, we can enable builds on ReadTheDocs for particular branches other than "master" which are accessible only if you know the URL.
Here are the builds that are currently enabled:

https://resqpy.readthedocs.io/en/latest/              (based on master branch)
https://resqpy.readthedocs.io/en/stable/             (based on latest tagged release)
https://resqpy.readthedocs.io/en/docs/               (based on docs branch. hidden)
https://resqpy.readthedocs.io/en/well_tutorial/   (based off this branch. hidden)

As you can see, I've enabled a build for this particular PR. We also have a version enabled for any branch called "docs" - so might as well use that branch name if working on documentation in a future PR, if you wish to preview how it will look. You are fine to delete the "docs" branch when done, and re-create from master if & when needed.
Of course, one can also build the docs locally with the command in the contributing guide.
This page doesn't show up in the link above though yet, as it's not linked to in any TOC tree.

Thanks for that info about the docs preview capability, @connortann !

Codecov Report

Merging #152 (aa06b94) into master (a1d8959) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #152   +/-   ##
=======================================
  Coverage   41.01%   41.01%
=======================================
  Files          50       50
  Lines       23422    23422
=======================================
  Hits         9607     9607
  Misses      13815    13815

Impacted Files
Coverage Δ

resqpy/model.py
58.04% <0.00%> (ø)

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 a1d8959...aa06b94. Read the comment docs.


Refactor scripts to use YAML configuration and replace jq with yq

Updated the main script to process config.yaml instead of config.json.
Replaced all jq commands with yq for YAML parsing and manipulation.
Refactored nvim_config.sh to handle YAML configuration and manage Neovim dependencies.
Adjusted installation checks and plugin management logic to support the new YAML structure.
Updated README to reflect the switch from JSON to YAML.

Some major changes were involved here. Let me know if you have any issues.

As above


Not working for me.

I am playing on a 1.16.1 server, when i use the mod, it puts out a seed. So I type in the seed into survival world and create it and it is not the right world. I checked the seed, coords, everything.

And it puts out the seed instantly as well.


All Rainbows splitting is incorrect

This presumably applies to the All Levels splitter as well.
When running All Rainbows, the Spooky Times and Night Crisis batch split after completing Tricks & Treats / Pinball respectively. However, due to needing to beat Kentony / Kentinator respectively in those batches to progress in the game, those splits are one map too early.

This is for the "batches" method of splitting. I assume the "levels" version works as intended.

Hmm actually that's pretty weird, I just tested, and for me, it works fine for All Rainbows.
However and for whatever reason, I forgot to add the Kentony/Kentinator constraint for All Levels so yeah it will split earlier for All Levels but it should split well for All Rainbows.
I don't do a "true" check for All Rainbows though, I only check if a medal is earned instead of looking if the four are earned which simplify the checks and shouldn't affect the run since I don't think people would do a level with only gold or less, quit do other levels and go back to do rainbow on it but maybe I'm wrong.
I've fixed it for All Levels and added the proper medal check for All Rainbows/100% just in case, but it shouldn't fix the problem for All Rainbows as it should be working already.


GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

Run Java PostCommit

This does seem to address the timeout: https://ci-beam.apache.org/job/beam_PostCommit_Java_PR/853/

Run Java_Examples_Dataflow PreCommit

Run Java_Examples_Dataflow PreCommit

The last examples build was successful but timed out when uploading the results.
https://ci-beam.apache.org/job/beam_PreCommit_Java_Examples_Dataflow_Phrase/719/console

Thank you

I did a rollforward and split it up by check so we can rollforward all of them except for the one that causes the timeout:

#16259
#16260
#16261
#16262

PreferJavaTimeOverload checks (#16260) seem to be the ones that caused the timeout.


research: what's wrong with my service impl? try to create a new one using IDE's helper and bind to same button that triggers FloatingService

after trying out creating a new service onStartCommand and onCreate cbs work now, don't know why they didn't before, import names and manifest service name seemed correct


⚠ Turnos 24x7 has degraded performance

In 3ec30ed, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 855 ms

Resolved: Turnos 24x7 performance has improved in 1b82d39.


abort script func syntax simplify

example:
func my_int_function() -> int:
why not just like:
int my_int_function():
it's a bit complicated~

It would be nice to simplify in 4.0~

The postfix syntax was chosen to be identical to Python's type hinting syntax. There are no plans to change it.


vim terminal support

Add support for terminal in plain vim, too.
Also, fix a TYPO in bin/tidal that stops the symlink walk from working.

I notice that #42 does the same and possibly does it better. This one is a a fairly tiny change though, so we could consider getting a tiny bit of support first more extensive changes down the line.

Thanks @windo! I'm going to close this as we've just landed support for the Vim terminal in #74, which for the most part is #42 trimmed down a little and rebased onto master.


fix for issue #60: created logout view

Issue: 60
Description:
Created logout view

updated changes: used get, request, deleted token, sent a success response

Thanks


Measure the tilt of the lidar

It's tilted down, but we don't know by how much.

I believe it was 5 degrees, so you can use that until the measurement is made.


Application Catalog and Management support

What
Adds general support for application catalog monitoring and updating of installed applications.
Why
Allows distributors to define and alter the installed applications on devices through a remote catalog system.
How
Provides a generic AppsUpdater interface for ripple, the implementation of which is determined by the particular distributor extensions installed.
Test
Tested ripple in a local development environment using a development distribution platform instance.
Checklist

[ ] I have self-reviewed this PR
[ ] I have added tests that prove the feature works or the fix is effective

Blackduck scan failure details
Summary: 0 violations, 0 files pending approval, 1 file pending identification.

Protex Server Path: /home/blackduck/github/Ripple/373/rdkcentral/Ripple

Commit: bcac01a32ea72af76f4dc972196154b94a0d71a3

Report detail: gist

Blackduck scan failure details
Summary: 0 violations, 0 files pending approval, 1 file pending identification.

Protex Server Path: /home/blackduck/github/Ripple/373/rdkcentral/Ripple

Commit: bcac01a32ea72af76f4dc972196154b94a0d71a3

Report detail: gist

Blackduck scan failure details
Summary: 0 violations, 0 files pending approval, 1 file pending identification.

Protex Server Path: /home/blackduck/github/Ripple/373/rdkcentral/Ripple

Commit: bcac01a32ea72af76f4dc972196154b94a0d71a3

Report detail: gist

WARNING: A Blackduck scan failure has been waived
A prior failure has been upvoted

Upvote reason: OK

Commit: bcac01a32ea72af76f4dc972196154b94a0d71a3


Pull variable lists from Supervisor repository docs

Rather then use a local copy of possible configurations values, this pulls configruations.md directly from the source that actually implements them (the Supervisor).
I modified the advance boot settings to not include config.txt values because I want them to all be in a single place.
Another benefit of this PR is the side menu has more headings:

@balena-ci rebase

ready for review now! I made the configuration variable list its own page so we can properly use the "Improve this doc" button.

Nice work!

We'll close this PR so that we implement any automated update of config vars to being done via contracts. We will manually update the config vars in the docs soon to resolve the user facing issue though.


window_state does not change, configuration issue?

VTherm is not changing the window_state to "open" when the slope drops below the configured value:
I've configured all VTherm entities using the option "window detection" with the suggested value for temperature slope of 0.05 (yaml see below):

Unfortunately while there are changes in the slope, the window_state does not change to open (on):

By the way, in the configuration you ask for a "decrease" with the info: "Recommended value: between 0.05 and 0.1. Leave empty if automatic window open detection is not use". So I assume one needs to put a positive value in there, because a negative value of a decrease would be an increase in temperature? Otherwise, if the configuration requires a negative value, you shouldn't ask for a decrease but for a change and also change the recommended value to negative value.
PS: Why does the slope jump around so much, if the room temperature is usually pretty stable? I don't understand the slope when comparing it with the room temperature in the screenshot.
Here is the configuration:
hvac_modes:
  - "off"
  - heat
min_temp: 16
max_temp: 26
preset_modes:
  - none
  - eco
  - comfort
  - boost
current_temperature: 19.4
temperature: 21
hvac_action: heating
preset_mode: comfort
hvac_mode: heat
type: null
eco_temp: 20
boost_temp: 22
comfort_temp: 21
eco_away_temp: 19
boost_away_temp: 21
comfort_away_temp: 20
power_temp: null
ext_current_temperature: 2.40000009536743
ac_mode: false
current_power: null
current_power_max: null
saved_preset_mode: comfort
saved_target_temp: 21
saved_hvac_mode: null
window_state: null
motion_state: null
overpowering_state: null
presence_state: "on"
window_auto_state: false
window_bypass_state: false
security_delay_min: 60
security_min_on_percent: 0.5
security_default_on_percent: 0.1
last_temperature_datetime: "2023-11-09T08:16:59.625031+01:00"
last_ext_temperature_datetime: "2023-11-09T08:16:31.993989+01:00"
security_state: false
minimal_activation_delay_sec: 10
device_power: 1
mean_cycle_power: null
total_energy: 380.69
last_update_datetime: "2023-11-09T08:16:59.637219+01:00"
timezone: …
window_sensor_entity_id: null
window_delay_sec: 30
window_auto_open_threshold: 0.05
window_auto_close_threshold: 0
window_auto_max_duration: 30
motion_sensor_entity_id: null
presence_sensor_entity_id: input_boolean.presence_someone
power_sensor_entity_id: null
max_power_sensor_entity_id: null
is_over_climate: true
start_hvac_action_date: "2023-11-08T16:00:40.167541+01:00"
underlying_climate_0: climate.schlafzimmer_eve_trv
underlying_climate_1: null
underlying_climate_2: null
underlying_climate_3: null
regulated_target_temperature: 22
regulation_accumulated_error: 0
friendly_name: Schlafzimmer Heizung
supported_features: 17

Same issue here in a different room: no open window state and a slope jumping around wildly:

And in a different room the slope is at zero for many hours, even though the temperature changes:

Hello @maia ,
It works on my side with exactly the same configuration. So you need positive value and the slope should be under 0.05 during 30 sec for the detection to be effective.
Here is a test I just do and it works:

The configuration is:

The only difference is that I'm in over_switch VTherm type but it should not have an impact.

Ok, I just made a test (in dev environment) with a over_climate VTherm and you are right, it seems not working at all.
Thank for the head up !

Thanks. I hope the temperature slope issue is a part of the problem. In case it's not related at all, let me know so we can create a separate issue. Good luck on bughunting!

It was simply not implemented for over_climate VTherm or a regression due to an ancien issue.

Thanks. Should this also fix the slope calculations, as reported in the screenshots above?

Non there is no need to fix something on slope calculation. There is a temporal filter to avoid mini-slope deviation due to precision +/- 0.1 gap.
It should works fine event if the curve seems a little agitated.

It should works fine event if the curve seems a little agitated.

It does not work for me. I might need to create a new issue, as this one is closed.

No, we will continue here.
You have installed 4.0.2 Vtherm and VTherm UI Card 0.3.1 ?

Please see the image here:

I'm still running 3.8.0, as I've been testing the 4 timeframe EMA algo, so I couldn't restart HA without resetting everything. But I don't think anything changed regarding the slope calculation? And I'm not using VTherm UI Card.

Mine:

I know this will not help you, but this works fine with 4.0.2 in my context.
To have more information, you will to turn the debug level in logs and check those logs:
_LOGGER.debug(
            "delta_t=%.3f delta_temp=%.3f new_slope=%.3f last_slope=%s slope=%.3f",
            delta_t,
            delta_temp,
            new_slope,
            lspe,
            self._last_slope,
        )

previous logs gives all the details.
Be careful in debug log level, the log will growth rapidly. So just turn it on, take the log and set the level to info back.
The algo is based is forgetting abnormal values (too quick or too high) to avoid some thermometer high jump (there is one in my screenshot which is ignored).

Unfortunately the log lines do not contain the name of the entity, so they might mix in the log.

Normally not. The slope is time based : Delta Temp / Delta time.

Normally not. The slope is time based : Delta Temp / Delta time.

Well, if delta time is zero or just a few seconds, it might mess up the slope?
I havn't looked into the slope calculation, but it would be great if the slope is usable to predict the room temperature in the next cycle (in 5 minutes). But maybe that would need two slopes, one short term and one medium term. The "medium term" slope would be something like a regression based on all measurements of the past 30 minutes used to predict the temperature in 5 minutes.
Having an algorithm deal with a predicted temperature in 5 minutes might increase its performance and reduce over/undershooting: "If the status quo continues, will the temperature rise or fall in the next 5 minutes and will we need additional heating or not?"
By the way, the slope is also an aspect of different room physics. To me it feels like it would be great to have one place in the config where one defines the physics (from "slow to heat, slow to cool down" to "rapidly changes to heating and open windows") and that single setting defines some (user hidden) variables that influence slope calculation, self regulation etc.

Yes that's is why I have a minimal delay (10 sec) between 2 measurements.
The algorithm don't like the noise giving +0.1 and -0.1° sometime many times per minutes.
Of we take this one:
delta_t=0.269 delta_temp=0.100 new_slope=0.371 last_slope=0.07340745304406945 slope=0.222
delta_t is very short (16 sec) and 0.1° in 16 sec means a big gap which produce some bad slope measurement.
My temperature curve are mostly smooth and that's why  don't experience your problem.
I guess my magic value of 10 sec in not accurate for your case. Maybe we should adapt it to 30 sec in your case.
If you can have a try it is located in open_window_algorithm.py line 15.

I will try that before I have to reboot HA the next time. Rebooting is always as issue as the entire thread mesh network needs to recreate itself and that takes a while and sometimes some devices don't join.
But in general I think this part of the code could be drastically improved by using more than the last 2 temperature measurements and the time inbetween, this will always be inexact. I don't have a pseudo-code solution yet though.

I include the fix into the https://github.com/jmcollin78/versatile_thermostat/releases/tag/4.0.4

The slope now has less wild swings. Unfortunately it's not able to detect open windows:

This is a 2 hour period where nothing happened at home. No people moving, no electrical devices, no open windows, no sunlight, no cooking. Any slope in the range of -0,05 to +0,05 is basically noise.
And when I opened the window, the slope in that room didn't change more than when the window was closed:

From all I've read about unsupervised time series forecasting today (e.g. see this link) I believe the biggest improvement is to use an exponential smoothing for the temperature: Take the temperature for the past 10 minutes (one measurement per minute, if not available then calculate from the available data points), calculate a EMA for the past few minutes and use the difference between the last two smoothed points as slope.

I do an exponential mobile average calculation but not on the temperature itself but on the slope (which is not suppose to change on a wide range too fast).
This is done by the formula I gave above: slope(N) = mes(N) x 0.5 + slope(N-1) x 0.5
But you are right, in your case, because your measured temperature is very noisy (at the difference of mine typically and others thats uses this algorithm without problem) I should filter the temperature itself and no only the slope.
I will have a look at this. Maybe something like:
temp(N) = temp_measurement (N) x 0,60 + temp(N-1) x 0,40.
This will largely smooth the temperature curve but not to much.

Jean-Marc, I have a couple of suggestions:

As a statistician I would say that smoothing of the slope is wrong, you should smooth the input that is used for calculations instead.

Create a central place in the code for calculation of EMA (exponential smoothing) and/or other algorithms, instead of having it in multiple places (e.g. slope calculation, regulated temperature,…). Especially the regulated temperature algorithm can be improved when knowing the current slope. Or maybe even better: two slopes: one long term (the past 60 minutes), one short term (the past 10 minutes)

The alpha (or: multiplier, smoothing factor,…) of EMA is frequently defined by the number of periods that should be used for the EMA calculation. The alpha is 0.66 at 2 periods, 0.5 at 3 periods, 0.4 at 4 periods, 0.33 at 5 periods: alpha = 2 / (num_periods + 1). I find it easier to understand when using the number of periods as input over a factor like the 0.6 you're suggesting.

You could use something like:

def calculate_ema(previous_ema, current_measurement, num_periods):
    if previous_ema is None or previous_ema == 0:
        return current_measurement

    alpha = 2 / (num_periods + 1)
    smoothed_value = alpha * current_measurement + (1 - alpha) * previous_ema
    return smoothed_value

(I'm just starting to learn python, so I hope that's valid)

Is the slope calculation run every 5 minutes or is it run each time the measured temperature changes? It should really be based on a fixed cycle, because some temperature sensors update their measurement every second or every 10 seconds. We cannot use a proper smoothing if we don't know if the last 3 measurements are from the last 10 minutes or last 10 seconds.

We should have a cycle of 1-2 minutes for dealing with temperature measurements. A cycle of 5 minutes only gives you a maximum of 3 measurements in 10 minutes, which is not really enough for a proper smoothing of measurements. Especially as many sensors have a tolerance of +/- 0.2°C and only few have +/- 0.1°C. So when using less than 5 measurements you'll end up with noise only.

As a statistician I would say that smoothing of the slope is wrong, you should smooth the input that is used for calculations instead.

Agree.

Create a central place in the code for calculation of EMA

Yes

The alpha..

yes. I always use 0.5 myself to get a relatively dynamic curve, but this can be variabilized for sure. Thank you for your suggestion.

Is the slope calculation run every 5 minutes or is it run each time the measured temperature changes?

each time the temperature change. So We must integrate the delta time to be correct. That's why I ignore to frequent measurement. I cannot have another cycle for this calculation and having it calculated at cycle only will be not suitable for long cycle. I have to find a formula for which we can take into account the dt factor. I think that's why I smooth the slope (which dtemp / dt) and not smooth the temp only.

I've seen that it's common to use EMA for irregular time series. In that case the input is a list of tuples containing the timestamp and corresponding measured temperature value. The timestamps should be in ascending order.
The EMA is calculated by using the distance between two measurements to calculate the alpha. See this explanation, scroll down to "Irregular Intervals". Also see this pdf paper (page 9).

See this explanation, scroll down to "Irregular Intervals"

This seems very easy to implement. I will try this maybe this week-end.

Planned for 4.2.0 (next release). Maybe next week or this week if i have got enough time.

Finally, I succeed to implement the EMA algorithm, add a ema_temp new attribute which is the smoothed temperature value and I use it into the automatic window detection algorithm.
I will publish a beta release with that. Feel free to test it in parallel of myself.
https://github.com/jmcollin78/versatile_thermostat/releases/tag/4.2.0.alpha1
I create a Discussion announcement if we want to discuss more about this. I don't remove the smoothing of slope itself for now but I will do if it is conclusive.

Hello @maia ,
I have publish a alpha8 pre-release which fixes all slope artifacts. Can you have a try with these release ?
The other think I have discovered this integration which is really helpfull to display graphs with zoom and much more.
type: custom:plotly-graph
entities:
  - entity: sensor.thermostat_chambre_ema_temperature
    yaxis: y1
    name: Ema
  - entity: climate.thermostat_chambre
    attribute: temperature
    yaxis: y1
    name: Consigne
  - entity: climate.thermostat_chambre
    attribute: current_temperature
    yaxis: y1
    name: T°
  - entity: sensor.thermostat_chambre_temperature_slope
    name: Slope
    fill: tozeroy
    yaxis: y9
    fillcolor: rgba(100, 100, 100, 0.3)
    line:
      color: rgba(100, 100, 100, 0.9)
hours_to_show: 4
refresh_interval: 10
height: 800
config:
  scrollZoom: true
layout:
  margin:
    r: 50
  legend:
    x: 0
    'y': 1.2
    groupclick: togglegroup
    title:
      side: top right
  yaxis:
    visible: true
    position: 0
  yaxis9:
    visible: true
    fixedrange: false
    range:
      - -0.15
      - 0.15
    position: 1
  xaxis:
    rangeselector:
      'y': 1.1
      x: 0.7
      buttons:
        - count: 1
          step: hour
        - count: 12
          step: hour
        - count: 1
          step: day
        - count: 7
          step: day

I have beautiful analysis graph now:

Maybe I have a precision issue. When the temperature is slowly decreasing I should have a small negative value and not 0 which is case here. Maybe the unit °C/min is not accurate and a unit as °C/hour would be better.
Do you have an opinion about this ?

Another room:

I agree, a slope measured in °C/hour is better interpretable for humans. And anything users configure themselves should be as understandable as possible.
Regarding alpha8, which I installed yesterday, the calculated slopes unfortunately still cause false positives when the temperature changes by only 0,1°C and looking at these charts I couldn't say which threshold I would want to use. (I opened the windows in all three rooms at the same time and for the same duration, with 0°C outside)
Unfortunately I'm currently rather busy and don't have time to investigate possible solutions for a better calculation of the smoothed temperature. But as this smoothing is partly relevant also for an improved regulated temperature, I'm hoping that someone can come up with a solution. Because otherwise I'd want to suggest to change the default cycle from 5 minutes to 1 minute (for everything, not just the slope), I'm not yet aware of any downside to having shorter cycles.

Because you have a very volatile thermometer you certainly need to "smooth" more the EMA. I will expose the possibility to change the parameters of EMA calculation (in the configuration.yaml to avoid adding more configuration parameters in the UI). I think this is the solution for your case. You will then have more "latency" and detection will be delayed but we cannot have both : slow latency and heavy smoothing.

I will expose the possibility to change the parameters of EMA calculation

The recent screenshots show different temperature sensors, one of them is from Aqara and as far as I know, it's a pretty frequently used sensor. Ideally 90% of the users do not need to change parameters, neither in yaml nor the UI. It should work out of the box.
I think you personally don't see these issues as your rooms change temperature very, very rapidly, so any 0,1°C change the sensor reports is only a blip in your charts.

Thank I will try to reproduce with the value.
May I have the value of the EMA temperature ? and maybe a zoom around 13h15.
The window detection is based on the EMA which should be "smooth".
I wonder how long will your battery support this behavior.

Here's a zoom. Not sure how to export the ema values, the lovelace card I usually use only allows to export entities, not attributes. Will look into it. Also I'll try a 1min average smoothing of the raw temperature as input for vtherm.
The batteries (2xAAA) hold for 1-2 years. While powering a display. BLE is very efficient it seems.


ERROR: Unsatisfiable requirements detected for package WindowFunctions [f8d1b8c8]

I cannot install "WindowFunctions" under:
Julia Version 1.8.0
Commit 5544a0fab7 (2022-08-17 13:38 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-13.0.1 (ORCJIT, skylake)

error message is:
(@v1.8) pkg> add WindowFunctions
   Resolving package versions...
ERROR: Unsatisfiable requirements detected for package WindowFunctions [f8d1b8c8]:
 WindowFunctions [f8d1b8c8] log:
 ├─possible versions are: 0.1.0 or uninstalled
 ├─restricted to versions * by an explicit requirement, leaving only versions 0.1.0
 └─restricted by julia compatibility requirements to versions: uninstalled — no versions left

Do you have any suggestions?

now it's compatible to julia1.7 and 1.8


Atrack Multiple Positions Data Support

Atrack, Add multiple positions protocol support. When Atrack devices lost GSM signal, send multiple positions in same data packets when signal is available again.

Support for Atrack protocol has been extended to include decoding of long date format and all additional information.


[SPARK-34524][SQL] Simplify v2 partition commands resolution

What changes were proposed in this pull request?

This PR simplifies the resolution of v2 partition commands:

Add a common trait for v2 partition commands, so that we don't need to match them one by one in the rules.
Make partition spec an expression, so that it's easier to resolve them via tree node transformation.
Simplify CheckAnalysis to only check if the table is partitioned. For partitioned tables, partition spec is always resolved, so we don't need to check it. The SupportsAtomicPartitionManagement check is also done in the runtime. Since Spark eagerly executes commands, exception in runtime will also be thrown at analysis time.

Why are the changes needed?

code cleanup
Does this PR introduce any user-facing change?

no
How was this patch tested?

existing tests

cc @MaxGekk @imback82 @HyukjinKwon

Test build #135432 has started for PR 31637 at commit e85d4ef.

Test build #135432 has finished for PR 31637 at commit e85d4ef.

This patch fails to build.
This patch merges cleanly.
This patch adds the following public classes (experimental):
sealed trait PartitionSpec extends LeafExpression with Unevaluable
trait V2PartitionCommand extends Command

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/40012/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/135432/

test this please

Test build #135435 has started for PR 31637 at commit e85d4ef.

test this please (i'm trying to fix the -K8s github permissions)

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/135435/

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/40018/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/40018/

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/40018/

fixed posting from the k8s build, and hopefully stopped the 'build started' error spam in the logs

Test build #135438 has started for PR 31637 at commit e85d4ef.

Test build #135438 has finished for PR 31637 at commit e85d4ef.

This patch fails to build.
This patch merges cleanly.
This patch adds the following public classes (experimental):
sealed trait PartitionSpec extends LeafExpression with Unevaluable
trait V2PartitionCommand extends Command

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/135438/

Test build #135462 has started for PR 31637 at commit 4bbf08d.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/40042/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/40042/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/40042/

Test build #135462 has finished for PR 31637 at commit 4bbf08d.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
sealed trait PartitionSpec extends LeafExpression with Unevaluable
trait V2PartitionCommand extends Command
case class TruncateTable(table: LogicalPlan) extends Command
case class TruncatePartition(
case class TruncatePartitionExec(

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/135462/

Test build #135498 has started for PR 31637 at commit a2c6575.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/40079/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/40079/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/40079/

thanks for review, merging to master!

Test build #135498 has finished for PR 31637 at commit a2c6575.

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

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/135498/


Update README.md

fixed the formatting for Events

Apparently I've never signed a CLA with my personal email address that got used in the co-author commits 😂

Looks good! By the way, you can click on the refresh icon next to the reviewer's name to let them know when you made updates so they can re-review it!

thanks, I didn't know that


How to execute “angular.element().scope()” in Protractor?

I'd like to access scopes of Angular app module like this
var scopes = angular.element(document.querySelectorAll('[ng-app]')).scope();

but I can't figure out how we use it in Protractor. I tried:
1) var scopes = element(by.css(['ng-app'])).scope()
2) var scopes = angular.element(document.querySelectorAll('[ng-app]')).scope()

But all of these 2 options return "undefined is not function" or for 2nd option "angular is not defined"
Thanks in advance
Stackoverflow question

browser.executeAsyncScript solves the issue. Please see the answer


Fix/#607 2nd try

@yasserf: Updated. Hopefully fixed e2e regression.

Thanks for quick fix =)

Yup, seems like it fixed it!

Getting master green and will merge

Closing in favor of #621


rebuild for libxml2 2.13

rebuild for libxml2 2.13

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_208dmlkgk9/clone` failed. (See above for error)
The following problems have been found:
===== ERRORS =====

clone/recipe/meta.yaml:30: should_use_compilers: The recipe requires a compiler directly
clone/recipe/meta.yaml:41: missing_tests: No tests were found.
===== Final Report: =====
2 Errors and 0 Warnings were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_34z0r1uxq5/clone` failed. (See above for error)
The following problems have been found:
===== ERRORS =====

clone/recipe/meta.yaml:41: missing_tests: No tests were found.
clone/recipe/meta.yaml:30: should_use_compilers: The recipe requires a compiler directly
===== Final Report: =====
2 Errors and 0 Warnings were found

Thanks!

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_ccg57rm13g/clone` failed. (See above for error)
The following problems have been found:
===== ERRORS =====

clone/recipe/meta.yaml:30: should_use_compilers: The recipe requires a compiler directly
clone/recipe/meta.yaml:41: missing_tests: No tests were found.
===== Final Report: =====
2 Errors and 0 Warnings were found


modify test-setup-cache-dependency-glob with quote

try to test-setup-cache-dependency-glob with quote for https://github.com/astral-sh/setup-uv/pull/67

Fixes in readme


Recursive Solution in c++ on subset problems [LeetCode]

🚀 Subset Problems on LeetCode
The two subset problems on leetcode which
Have you read the Contributing Guidelines on Pull Requests?
Yes I have read the guidelines
Motivation
The subset problems are the two classical recursive tree problems. I have implemented the recursive approach for these two problems.
Pitch
I have noticed that the repository contains only the normal array approach towards this problems whereas it can be implemented using recursion too. So for better understanding of these recursion solving these two problems are necessary.

/assign


It is only possible to grant permissions to objects that are defined within the same module.

Our extensions need to be able to grant permissions to native objects. I know this has been discussed on office hour calls, but I didn't see an issue for it on GitHub. Example scenario: we have an archive function that moves payment transaction records to an archive table. Those payment transactions are referenced by our fields in the G/L Entry table, the Cust. Ledger Entry table, etc. We need to be able to update those records during the archive process to indicate that the references are now to the archive and not to the active payment transaction list.

+1
To prevent the code from a complete rewrite of on premise functionality need access to
grant explicit permissions in case of Extension upgrade codeunits as well as event subscribers.

This limitation will be removed in October Update.


fix: Outpainting Fixes

What type of PR is this? (check all applicable)

[x] Bug Fix

Have you discussed this change with the InvokeAI team?

[x] Yes

Description

Replace Seam Painting with Refine Pass.
Fix the issue where the inpainted area does not get pasted back during outpainting.

Related #4349


[SAC-110][SQL] Spark's Hive catalog column name should be lower cases

What changes were proposed in this pull request?
To be consistent with Hive, we had better create it in lower cases.
How was this patch tested?
Manual. This should be tested widh
val ATLAS_SPARK_COLUMN_ENABLED = ConfigEntry("atlas.spark.column.enabled", "false")

This closes #110

The only failure is the same one. I'll ignore this failure, @HeartSaVioR .
- Kafka source(s) to kafka sink - micro-batch query *** FAILED *** (4 seconds, 69 milliseconds)
  8 did not equal 6 (SparkExecutionPlanProcessorForStreamingQuerySuite.scala:159)


Add GET /class/me endpoint

Adds an authorized endpoint to retrieve user data of the following form:

GET /class/me
Get information about the currently logged on user's:

Name
Professor status
Class membership
Current assignments

Request Body
This endpoint does not require a request body.
Response Format
{
  "username": "myname",
  "professor": "true",
  "classes": [
    {
      "id": 1,
      "name": "CS 131"
    }
  ],
  "assignments": [
    {
      "id": 1,
      "class": 1,
      "name": "Name of assignment",
      "dueDate":<PHONE_NUMBER>671,
      "pointsPossible": 100.0
    }
  ]
}

This looks great. Let's merge it

I'm gonna do a little testing before I merge it.


Provide remove_dir_contents

Hi.
Apropos of https://github.com/rust-lang/rustup/issues/2433 @rbtcollins suggested putting the remove_dir_contents function here in remove_dir_all.
I think I have done the right thing in the Windows code in fs.rs but I have not been able to test, or even compile, the Windows code at all because I have no Windows installs.  Edit: the CI tests seem to pass so I think it is probably right...
I did provide a test case for my new code.
I hope this meets with your approval.  Let me know what you think.
Regards,
Ian.

Looks like I am going to debug this via the CI.  I hope this is not too annoying to you.

Second time lucky I guess.  Out of interest are any of those CI tests on Unix?  Perhaps not, but if you accept this MR then maybe there should be since you will have nontrivial Unix and allegedly-portable code.
Anyway, thanks for your attention and I look forward to your review.

Thank you for your PR! This PR looks good to me. Currently the CI only tests windows, and I think I'd want to have some testing on unix before merging this. If you'd like I'd accept adding a new job to the CI that tests unix in this PR? It should be fairly straightforward, otherwise I can write the CI config in a bit.

XAMPPRocky writes ("Re: [XAMPPRocky/remove_dir_all] Provide remove_dir_contents (#22)"):

Thank you for your PR! This PR looks good to me.

Thanks!

Currently the CI only tests windows, and I think I'd want to have
some testing on unix before merging this.  If you'd like I'd accept
adding a new job to the CI that tests unix in this PR?  It should be
fairly straightforward, otherwise I can write the CI config in a
bit.

I haven't ever messed with github CI so if you know what you are doing
I would appreciate it if you would do it.
Regards,
Ian.
--
Ian Jackson<EMAIL_ADDRESS> These opinions are my own.
Pronouns: they/he.  If I emailed you from @fyvzl.net or @evade.org.uk,
that is a private address which bypasses my fierce spamfilter.

FWIW GitHub actions is pretty easy to use especially if you use the GitHub online editor which has auto-completion. I've added the unix CI to master so you should just need to rebase the changes. https://github.com/XAMPPRocky/remove_dir_all/commit/775feb136844e66d8db8bfb7a3db05efb542c8e1

XAMPPRocky writes ("Re: [XAMPPRocky/remove_dir_all] Provide remove_dir_contents (#22)"):

FWIW GitHub actions is pretty easy to use especially if you use the GitHub
online editor which has auto-completion. I've added the unix CI to master so
you should just need to rebase the changes. 775feb1

Thanks.  I looked at what you did.  Frankly I think it would have
taken me a while :-), so thank you for that.  I may well use this as a
reference next time I need to add a relevant github test.
I force pushed my branch and the CI seems to have liked it.
Thanks for your help!
Ian.
--
Ian Jackson<EMAIL_ADDRESS> These opinions are my own.
Pronouns: they/he.  If I emailed you from @fyvzl.net or @evade.org.uk,
that is a private address which bypasses my fierce spamfilter.

Robert Collins writes ("Re: [XAMPPRocky/remove_dir_all] Provide remove_dir_contents (#22)"):

@rbtcollins commented on this pull request.
Thank you for doing this, and I'm sorry I'm so late getting to a review for
you.

No problem.

+fn remove_some<P: AsRef>(path: P, allow_nondirectory: bool) -> io::Result<()> {
I find allow_nondirectory a little hard to parse: is this !"directories_only" ?
If so perhaps change this to directories_only or similar and invert the sense
in the code below.

Sure (subject to changes discussed below...)

In src/portable.rs:

@@ -0,0 +1,70 @@
+use std::fs;
+use std::io;
+use std::path::Path;

+/// Deletes the contents of dir_path, but not the directory iteself.
+///
+/// If dir_path is a symlink to a directory, deletes the contents
+/// of that directory.  If dir_path does not exist, simply returns
I think if dir_path doesn't exist, this should return ENOENT - well,
rust style - e.g. don't capture the io::ErrorKind::NotFound special
case. For several reasons: we don't special case that in the
remove_dir() case; calling code that wants to (for instance) ensure
an empty dir will be more complex if this error is hidden, and its
not needed for the use case we're adding this for.

Unfortunately doing that will make it impossible to distinguish "the
top level directory did not exist" from "during the innards of
attempting to recursively delete something we unexpectedly got
ENOENT".  I expect the current code just bubbles that unexpected
ENOENT up to its caller (although I haven't checked).
I have a counterproposal: leave this entrypoint as I had it, but
also provide:
/// Ensures that dir_path is an empty directory, or a symlink to
/// one.  If it already exists, its contents are deleted (as if
/// with remove_dir_contents.  If it does not, it is created
/// (as if with std::fs:create_dir.)
fn ensure_empty_dir(...)
This is surely what many callers (including rustup) actually want.
I think the obvious implementation is mkdir, followed if necessary by
remove_dir_contents.

In src/portable.rs:
...
I can see why you've written this new function, but I'd like to suggest a
different implementation - bearing in mind some future optimisations I have
planned. In particular, I want to avoid this serial loop over the read_dir
contents at the top layer.
My suggestion is that rather than having allow_nondirectory /
directories_only, your new flag to the core workhorse is
delete_root; and that the second entry point to it be
remove_dir_contents; then the only change needed is to move the
remove_item(path, ctx) call from remove_dir_all_recursive to the
caller of it, which will allow it to be skipped for the root parent
case.

I'll have look at the code.

This of course leaves the posix case needing its own implementation, but I
think it will be very shallow at that point.

The POSIX case can just do the loop, I think ?
Ian.
--
Ian Jackson<EMAIL_ADDRESS> These opinions are my own.
Pronouns: they/he.  If I emailed you from @fyvzl.net or @evade.org.uk,
that is a private address which bypasses my fierce spamfilter.

Unfortunately doing that will make it impossible to distinguish "the top level directory did not exist" from "during the innards of attempting to recursively delete something we unexpectedly got ENOENT". I expect the current code just bubbles that unexpected ENOENT up to its caller (although I haven't checked). I have a counterproposal: leave this entrypoint as I had it, but also provide:

The current code also doesn't discriminate between ENOENT of the top level not existing and an ENOENT of a file that is being deleted - and actually thats a bug; it should handle ENOENT of a file being deleted by ignoring that error - it simply indicates that the job it is tasked with has been made easier, after all. There is some handling of related cases with hard links in fact,
So while I agree with the defect today, I think we should fix it, which would remove the issue.
/// Ensures that dir_path is an empty directory, or a symlink to
/// one. If it already exists, its contents are deleted (as if
/// with remove_dir_contents. If it does not, it is created
/// (as if with std::fs:create_dir.) fn ensure_empty_dir(...) This is surely what many callers
/// (including rustup) actually want. I think the obvious implementation is mkdir, followed
/// if necessary by remove_dir_contents.
I think that that would be nice to offer as well.

In src/portable.rs:
...
I can see why you've written this new function, but I'd like to suggest a different implementation - bearing in mind some future optimisations I have planned. In particular, I want to avoid this serial loop over the read_dir contents at the top layer. My suggestion is that rather than having allow_nondirectory / directories_only, your new flag to the core workhorse is delete_root; and that the second entry point to it be remove_dir_contents; then the only change needed is to move the remove_item(path, ctx) call from remove_dir_all_recursive to the caller of it, which will allow it to be skipped for the root parent case.
I'll have look at the code.
This of course leaves the posix case needing its own implementation, but I think it will be very shallow at that point.
The POSIX case can just do the loop, I think ? Ian.

Yes; the IO latency behaviour of POSIX platforms is generally much roundabout than Windows.
-Rob

I'm afraid I am going to have to iterate via the CI since I do not have access to any Windows machines.  Please bear with me.

All good. By the way I'll probably be making the threaded implementation an
opt in feature, as tempdir objected to it (which is a longer discussion
than fits here, but suffice to say that windows is not POSIX and the norms
and expectations are a source of friction)
On Mon, 21 Sep 2020, 19:29 Ian Jackson<EMAIL_ADDRESS>wrote:

I'm afraid I am going to have to iterate via the CI since I do not have
access to any Windows machines. Please bear with me.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/XAMPPRocky/remove_dir_all/pull/22#issuecomment-696259128,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADZ7XTGYTP4KEAVIBPJLC3SG6EP5ANCNFSM4PHEIGHA
.

People complain about rustc being slow but they should try the compiler error whack-a-mole this way!

I don't think I want to think about tempdir and Windows and multithreading....
Anyway, looks like this might be going to pass its checks now.  Thanks for the review etc.

If you want a faster means, there are free beer VM images of windows
available for use for developers, such as you.
On Mon, 21 Sep 2020, 19:36 Ian Jackson<EMAIL_ADDRESS>wrote:

People complain about rustc being slow but they should try the compiler
error whack-a-mole this way!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/XAMPPRocky/remove_dir_all/pull/22#issuecomment-696262732,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADZ7XTENVDIX5SPW3NBLSLSG6FILANCNFSM4PHEIGHA
.

I'm hoping this will be a rare problem for me :-).

Hi.  I hope this is ready to merge now?

I haven't had time to review sorry; moving across the world consumed all my recent bandwidth. Just coming out of that now.

It's certainly a lot cleaner now. Which of the new APIs do you anticipate rustup using? Do we actually need the other one? ensure_empty_dir kindof implies the existence of an ensure_empty_dir_all call as well perhaps, though if people are deleting all of ~/.rustup and expecting rustup to be ok with that .. well, thats a different discussion.

Thanks for the review.  I'll fix the typos and grammar.

It's certainly a lot cleaner now. Which of the new APIs do you anticipate rustup using?

I was imaginging replacing the deletion call at the end of rustup, with remove_dir_contents, and not touching rustup's directory creation code.  Correct me if I'm wrong, but presumably rustup already does not mind finding leftover stuff from a previous run in its temporary directories.  Otherwise it would sometimes get into a stuck state.

Do we actually need the other one? ensure_empty_dir kind of implies the existence of an ensure_empty_dir_all

I think something like ensure_empty_dir or ensure_empty_dir_all would be extremely useful for tests, which often want to make working files, but want to leave the test artefacts lying about for diagnosis.  (There is a can of worms here for rust tests because of cargo's failure to provide a formal place to put such things, but let's leave that for anoyther day.)
If you prefer not to take the new ensure_empty_dir call now then that's fine by me.  But it seems that if someone wanted such a thing in their own project, I might well think this crate a good place for it to live.  The same applies to ensure_empty_dir_all; so, alternatively, if you want me to write that one too I'm happy to do that.

Hi.  Did you have an opinion about ensure_empty_dir etc. ?

@rbtcollins Hi, what would you like to do here?  Thanks, Ian.

Sorry, this is on my todo, but I'm timeslicing like mad right now, please
leave with me for the moment.
-Rob

@J-Vin thanks for the review :-).  I fixed that typo and rebased onto current main.

Sorry about how long this took me to get to - hazards of moving across the world.


Make the plugin work on IntelliJ 2016.3. Fixes #32.

The files in this commit were misusing UIUtil.invokeLater and
invokeAndWait. UIUtil's Javadoc explains that you shouldn't use
UIUtil, but instead use Application.invokeLater and .invokeAndWait,
so that's what this commit does.

I don't know if y'all would prefer to accept pull requests on Gerrit. If so, I'd need documentation on how to push PRs to Gerrit for the Intellij plugin; I only see bazel itself on https://bazel.googlesource.com/

https://github.com/JetBrains/intellij-community/blob/master/platform/util/src/com/intellij/util/ui/UIUtil.java#L2605
All of UIUtil's invoke functions come with warnings recommending to use Application's invoke functions instead.

Please use Application.invokeAndWait() with a modality state (or GuiUtils, or TransactionGuard methods), unless you work with Swings internals and 'runnable' deals with Swings components only and doesn't access any PSI, VirtualFiles, project/module model or other project settings.

Hi @dfabulich. Thanks for the pull request. We've actually already added 2016.3 support internally, in a way which conflicts with these changes. I'd anticipate another code drop in the next few weeks with those changes.
Sorry for the delays -- we're working on setting up regular updates of this GitHub project. At that point, the lower latency will make it easier to accept pull requests.

Since there was no response on issue #32 I'd assumed there had been no progress on this. I'll close the PR.

@brendandouglas Can you provide a new estimate on when we could expect a code drop? We'd like to start using/testing the plugin, but we don't want to ask everybody on our team to downgrade IntelliJ in order to use it.
Even just pushing code to a non-master branch would be helpful.

Hi @dfabulich, I've updated the repository with the 2016.3 compatibility code. We're planning to upload a 2016.3 compatible version to the JetBrains plugin repository sometime in the next week.

A quick comment -- the build procedure has slightly changed. You'll now need to specify the ij_product configurable attribute to build the IntelliJ plugin:
bazel build //ijwb:ijwb_bazel --define=ij_product=intellij-latest


Fixes #1395 - some FormField props aren't documented.

What does this PR do?
Adds documentation for the hidden, size and strong properties of the FormField component.
Where should the reviewer start?
Line 49 of FormFieldDoc.js.
What testing has been done on this PR?
Manual testing of the changes in my sandbox.
How should this be manually tested?
Pull the change into your sandbox and build grommet.io. Browse to the FormField component page and find the properties that were added.
Any background context you want to provide?
This documents the properties as they are currently used (i.e. for input text in a FormField).
What are the relevant issues?
Support for these properties will most likely be removed in Grommet 2.0.
Screenshots (if appropriate)

Thanks!

On 2017-07-06 14:24, Alan Souza wrote:

Thanks!
--
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub [1], or mute the thread [2].

Links:
[1]
https://github.com/grommet/grommet-docs/pull/276#issuecomment-313509014
[2]
https://github.com/notifications/unsubscribe-auth/AX57YiCI2490YMzpxdZr8NPhXZd3v9jOks5sLUJlgaJpZM4OQGQL


ReferenceError: exports is not defined

Summary:
i am using react-modal 3.9.1 with typescript: 3.3.3 with nextjs 9 and when importing ReactModal it is giving me an error saying "ReferenceError: exports is not defined" i also used @types/react-modal:3.8.2. on a sandbox it is working without issue though. But still there is error saying Module '"/sandbox/node_modules/@types/react-modal/index"' has no default export.ts(1192)
  1 | "use strict";
  2 |
> 3 | Object.defineProperty(exports, "__esModule", {
  4 |   value: true
  5 | });
  6 | exports.bodyOpenClassName = exports.portalClassName = undefined;

Steps to reproduce:

Install React-modal latest veersion on react typescript project
Import ReactModal from 'react-modal'
Call <ReactModal>  in render method

Expected behavior:
should work without issue
Link to example of issue:
https://codesandbox.io/embed/tender-leavitt-260ul
Additional notes:

I noticed the same issue in my TypeScript project using<EMAIL_ADDRESS>I worked around it by importing it with require:
import ReactModal = require('react-modal')

@martindidiego @Zorig Can you investigate if this issue is related react-modal?

It's possible that @types/react-modal (in DefinitelyTyped) needs to add ES module types for this package


La Paz County, AZ

Justin,
We can provide you with a cd containing parcel information for La Paz County.  You would need to send us your written request together with a check in the amount of $300 payable to the La Paz County Assessor’s Office.  GIS data information is provided through our Community Development Department.  You can contact Nora Yackley at<EMAIL_ADDRESS>for further information.
Kimmy Olsen
Administrative Assistant
La Paz County Assessor's Office
Office Hours: M-TH 7am-6pm
1112 Joshua Ave., Suite 204
Parker, AZ 85344
Phone:<PHONE_NUMBER>
Fax:<PHONE_NUMBER>

Interstate 10 goes thru, seems worth while to buy.

Curious fact from the Wikipedia page: The formation of this country prompted Arizona to change the laws to make it harder to form new counties in the state.

I've emailed asking for payment details.


Root level packages don't have any properties

We need a browse object for these.

this is a recent regression - i just checked my dev machine with older build prerel 26106.3 and everything shows up. Were there any xaml rules changes lately?


preserve the message verb for later parsing if needed

What is the purpose of this? cmd stores this already, and parsed too.

There are verbs that the ircd can send that you do not have in your enum. I would prefer to have the verbs directly available so I can do more complicated parsing of advanced features.

What verbs are those? I would prefer if you add those to the enum not conflate the meaning of 'numeric'.

@dom96 without this patch you have to parse the raw message retrieve the actual numeric value.
[EvMsg
cmd = MNumeric,
nick = 0x7fce96623dc0"",
user = nil,
host = nil,
servername = 0x7fce96622360"barjavel.freenode.net",
numeric = 0x7fce96623e60"366",
params = 0x7fce96630110[0x7fce96623eb0"botfowl", 0x7fce966334a0"#fancyfeast", 0x7fce966222b8"End of /NAMES list."],
origin = 0x7fce96623ed8"botfowl",
raw = 0x7fce96637188":barjavel.freenode.net 366 botfowl #fancyfeast :End of /NAMES list.",
timestamp =<PHONE_NUMBER>]

No, you don't. Numeric is set for MNumeric's.

I'm afraid I'm going to need to revert this.


proposal: add NoCopy field to new ImageOptions

With the addition of the new NewImageOptions struct we could also add a flag to try to avoid unnecessary copies during Ebitengine's image creation. It's very common that standard Golang image.Image images are only created to be passed to Ebitengine's image initialization, so allocating a new buffer for the data and copying it, when the format is already compatible (RGBA images), is wasteful.
ebitenutil.NewImageFrom* functions and well as many Ebitengine related libraries could often benefit from this.
The downsides are:

More surface area for NewImageOptions. But I don't think this is out of place there.
We may be worrying too much about optimization here. But I'd say seeking to eliminate redundant allocations is quite fair.
Only works with image.RGBA, and this on itself also kinda exposes internal implementation details.
Safety: if users continue using the image data slices anyway, they will get in trouble. To me this is the strongest argument against this proposal. I personally don't think anyone would have any right to complain if they misuse this feature, but it's true that Ebitengine typically goes out of its way to avoid such situations, and this kinda opens a door for undetected misuse (well, Golang doesn't really prevent developers from manually creating such doors anyway with raw pointers, but you know...).

Thanks. This seems to reduce unnecessary copying pixels, but sounds like an expose of implementation details. Let me think more...

Hello! I don't really use any NewImageFrom* functions in Tetra3D, as textures are plain ebiten.Images loaded on the user's side (i.e. the user can choose to load in textures using NewImageFrom, but Tetra3D doesn't load any textures itself).
That said, something good for ebitengine is good for Tetra3D as well, so yeah, feel free to add this option.
An alternative (without knowing too much about this) would be to make a NewImageFromRGBA() function for this purpose, I suppose.

Ughh... I wanted to benchmark, but this is really tricky. I understand we would have to add methods for direct buffer initialization through all the image chain, which is... ebiten.Image -> ui.Image -> mipmap.Mipmap -> buffered.Image -> atlas.Image -> atlas.backend -> restorable.Image -> and now I'm confused with basePixels Pixels vs image *graphicscommand.Image, and any of them still go multiple levels deeper (for Pixels, it is pixelRecords -> pixelRecord, and for graphicscommand.Image is graphicsdriver.Image -> I don't know if graphicsdriver.Graphics or graphicsdriver.framebuffer, and that for each graphical backend). I'm scared now.

You need more documentation?

Hmm, I'd like to understand the differences / jobs of Pixels vs graphicscommand.Image and graphicsdriver.Graphics vs graphicsdriver.framebuffer.

Pixels vs graphicscommand.Image

Which package of Pixels are you indicating? The latter is a struct that just enqueues commands to the command queue.

graphicsdriver.Graphics vs graphicsdriver.framebuffer.

The former is an interface for various graphics drivers like OpenGL, DirectX, and Metal. What is the latter?

Oh, basePixels Pixels is from restorable.Image, so from what you said I understand that this is where the underlying []byte data for the image is stored. And for graphicsdriver.Graphics and graphicsdriver.framebuffer, sorry, I actually was referring to the opengl driver, but I guess drivers simply implement the graphicsdriver.Graphics and graphicsdriver.Image interfaces, so I'll figure that out myself.

EDIT: on the topic of NewImageFromRGBA(), I don't think it's a good option because the name doesn't make it clear that it's taking ownership of the underlying data slice, which makes it dangerous, and would otherwise seem redundant with NewImageFromImage(). But thanks for chiming in, I was just about to ping you in chat as I saw you there.

It could be named something else, then, like TakeImageFromRGBA() or something like that. No problem, in any case~ Glad to be able to chime in.


Shillelagh cantrip not upgrading to a d10 for a level 5 character.

I have a level 5 fighter with the origin Magic Initiate (Druid). I took the shillelagh cantrip. The spellcasting attack works, but the damage is stuck on 1d8 when it should be 1d10 at character level 5.

The SRD (2014) shillelagh doesn't upgrade.

The SRD (2014) shillelagh doesn't upgrade.

We’re using 2024.
When I go to edit the spell, they have the upgrades in the effects tab, but they’re not working. Another cantrip I use that imbue weapons is True Strike and it’s working correctly by rolling 2d6 at level 5.

Issues with the 2024 PHB should go on the premium content repo, since they're providing the content, not the system. The system is currently only providing the 2014 SRD.
https://github.com/foundryvtt/foundryvtt-premium-content

Issues with the 2024 PHB should go on the premium content repo, since they're providing the content, not the system. The system is currently only providing the 2014 SRD.
https://github.com/foundryvtt/foundryvtt-premium-content

Ahh, thank you! This is my first time using foundry and posting on here, and I didn’t know that. Thank you so much.


GaxError Exception occurred in retry method that was not classified as transient, caused by 13:Internal error encountered. (Google::Gax::RetryError)

Hello,I try to get all keywords to many Accounts but the process launch this exception:
#<Thread:0x0000000002701258@reportsDaily.rb:454 run> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
	11: from reportsDaily.rb:454:in `block (2 levels) in KeywordReportDaily'
	10: from reportsDaily.rb:476:in `threadReportkw'
	 9: from reportsDaily.rb:476:in `each'
	 8: from reportsDaily.rb:492:in `block in threadReportkw'
	 7: from reportsDaily.rb:492:in `count'
	 6: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:160:in `each'
	 5: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:173:in `each_page'
	 4: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:173:in `loop'
	 3: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:175:in `block in each_page'
	 2: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:189:in `next_page'
	 1: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:358:in `block in retryable'
/usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:369:in `rescue in block in retryable': GaxError Exception occurred in retry method that was not classified as transient, caused by 13:Internal error encountered. (Google::Gax::RetryError)
Traceback (most recent call last):
	11: from reportsDaily.rb:454:in `block (2 levels) in KeywordReportDaily'
	10: from reportsDaily.rb:476:in `threadReportkw'
	 9: from reportsDaily.rb:476:in `each'
	 8: from reportsDaily.rb:492:in `block in threadReportkw'
	 7: from reportsDaily.rb:492:in `count'
	 6: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:160:in `each'
	 5: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:173:in `each_page'
	 4: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:173:in `loop'
	 3: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:175:in `block in each_page'
	 2: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:189:in `next_page'
	 1: from /usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:358:in `block in retryable'
/usr/local/rvm/gems/ruby-2.5.1/gems/google-gax-1.4.0/lib/google/gax/api_callable.rb:369:in `rescue in block in retryable': GaxError Exception occurred in retry method that was not classified as transient, caused by 13:Internal error encountered. (Google::Gax::RetryError)
[ec2-user@ip-172-31-44-96 rbfiles]$

I get it only sometimes,
could you help me?
thanks

Can you provide a small code snippet that reproduces this? Short of that, can you rescue the exception and inspect it and print out any extra details that might help? Can you describe in more detail exactly what the difference is between requests that succeed and requests that fail?

mm the issue is not the Threads. this happen when a Query return a number bigger that Page_length given. SearchGoogleAdsResponse return "next_page_token" but anyway launch the exception

Can you give an example query and customer ID that causes this response? I want to see if it's specific to the Ruby library or a general issue with the API.

Sure,
Account id:<PHONE_NUMBER>
Query:
@query_kw= <<~QUERY             SELECT                 customer.id,                 customer.currency_code,                 campaign.id,                 ad_group.id,                 ad_group_criterion.criterion_id,                 ad_group_criterion.keyword.text,                 ad_group_criterion.negative,                 ad_group_criterion.keyword.match_type,                 ad_group_criterion.quality_info.quality_score,                 metrics.clicks,                 metrics.ctr,                 metrics.average_position,                 metrics.impressions,                 metrics.cost_micros,                 metrics.average_cpc,                 metrics.conversions_from_interactions_rate,                 metrics.conversions,                 metrics.cost_per_conversion,                 metrics.search_rank_lost_impression_share             FROM keyword_view             WHERE date DURING TODAY             AND campaign.status='ENABLED'             AND ad_group.status='ENABLED'             AND ad_group_criterion.status='ENABLED'         QUERY
PAGE_SIZE = 1000

I was able to successfully fetch the next page both with raw CURL requests and with the Ruby client library. How are you trying to page through the results? I used the pattern shown in the get_keyword_stats.rb example: https://github.com/googleads/google-ads-ruby/blob/master/examples/reporting/get_keyword_stats.rb

I tested without "LIMIT 50" as well, fetching 1000 per page, and had no issues. What version of the gem are you using?

Sorry this has been left unlooked at for a long time. Are you still experiencing this issue with intermittent errors on requests that succeed other times?

Hey
We are suffering the same error very often, with different services.
We figure out that if we make retry several times we get results, so looks like the problem is on the library.
Our last occurrence was few minutes ago :(

Hello.
The comment above was more than 18 months ago, and this is still happening. Can we get any response as V6 is issuing this error, and as you know, debugging is hard when the error doesn't tell you anything at all.
Thank you kindly.

I have seen this cryptic error message in the past, but it as always been something in my code, such as passing the customer ID as an integer instead of a string, or similar.
Can you provide some up-to-date code that reproduces this error on your side so I can see if I can figure out what's going wrong?

I have seen this cryptic error message in the past, but it as always been something in my code, such as passing the customer ID as an integer instead of a string, or similar.
Can you provide some up-to-date code that reproduces this error on your side so I can see if I can figure out what's going wrong?

I'm currently away from my computer, but the smallest way I could reproduce was creating a campaign_budget with total_amount_micros and then calling google_ads.mutate. I found if total_amount_micros is present, the cryptic error is there.
I can provide code soon, but minimum reproducible can be done as per above.
Thanks.


resize doesn't work on mobile

it seems no data table libraries support resize on mobile devices

Since many data tables don’t support resizing on mobile, consider using CSS media queries to adjust widths or create a scrollable layout. For dynamic resizing, add touch event listeners with JavaScript to mimic resizing. Alternatively, libraries like ag-Grid offer partial mobile support, or you can use a stacked card layout for better readability on small screens.

@bronglil thanks for the response, I ended up writing my own implementation, which we might open source at a later time :)

It's great that you developed your own solution! If you choose to open-source it later, it could benefit others facing similar challenges. Feel free to share updates or seek feedback when you're ready.
Thanks


Number of blocks mismatch for 1st dimension

I'm trying to pass three arguments, each of which is equally chunked in the first dimension:
import dask.array as da

dx = da.ones((5, 23), chunks=(2, 23))
dy = da.ones((5, 23), chunks=(2, 23))
dz = da.ones(5, chunks=(2,))
dr = da.map_blocks(lambda x, y, z: x + y, dx, dy, dz, dtype='f8', chunks=((2, 2, 1), (23,)))

This fails with ValueError: Dimension 1 has 3 blocks, chunks specified with 1 blocks.
However, if dimensions are swapped, no errors arise:
dx = da.ones((23, 5), chunks=(23, 2))
dy = da.ones((23, 5), chunks=(23, 2))
dz = da.ones(5, chunks=(2,))
dr = da.map_blocks(lambda x, y, z: x + y, dx, dy, dz, dtype='f8', chunks=((32,), (2, 2, 1)))

Is this expected/desired behavior?
My workaround (to avoid swapping dimensions) is to add a dummy dimension:
dx = da.ones((5, 23), chunks=(2, 23))
dy = da.ones((5, 23), chunks=(2, 23))
dz = da.ones((5, 1), chunks=(2, 1))
dr = da.map_blocks(lambda x, y, z: x + y, dx, dy, dz, dtype='f8', chunks=((2, 2, 1), (23,)))

I believe that this follows normal NumPy broadcasting rules.  Your solution of adding a singleton dimension seems to make sense to me.  You could also use dz[:, None] to do this with NumPy syntax.  If you want to get fancy you might also consider using the slightly more advanced atop function.

Thanks for the clarification and tip Matthew.


Hide SkyShell.app from dock when running as part of test_sky

 Issue by eseidelGoogle
Tuesday Jul 28, 2015 at 18:25 GMT
Originally opened as https://github.com/flutter/engine/issues/316

This appears to be how:
http://stackoverflow.com/questions/1082374/making-a-checkbox-toggle-the-dock-icon-on-and-off
Chromium's ContentShell may already have a solution for this, @dpranke would know.

 Comment by dpranke
Tuesday Jul 28, 2015 at 20:40 GMT

Content Shell appears in the dock when we run the tests.
Back in the day, DRT didn't, but the code was quite different and more headless IIRC.

This works now.


Disabled click actions when modal is present to prevent user from clicki...

...ng outside of box

Coverage remained the same at 49.14% when pulling 207be9aed6b201bb233ce7eec498887609c7b957 on madridsoccer5:master into a5b812c02f435133662bf01930623dee18b00bf3 on excellaco:master.


Request: "Silent" bot mode

This bot is great, thank you!
I haven't had any trouble with it, so it would be nice to run it without having it send game messages in Discord.  I don't want our text channel to be filled with bot messages.
Could you add the option to have the bot not send messages related to the game?
I do want the bot to be able to receive commands in a text channel, and reply that it understood the command.  I just don't want it messaging every time it mutes and unmutes players.

Yes, I can totally implement this! Super weird coincidence; a user in the discord server for this bot recommended the same idea, specifically to avoid sending too many messages to the discord api and getting rate-limited for the mutes/unmutes. But regardless, I think a silent/minified mode is a great idea :) (might keep the "online/offline status, still).

Yeah I know this can be a sensitive thing because if someone forgets about the bot and can't figure out why they're being muted/unmuted, it could cause issues

This has been addressed in the latest release; bot updates a single message as the game continues :)


devel to main release - August 2024

Overall Review of Changes:
A general description of the changes made that are being requested for merge
Issue Fixes:
pre-commit updates plus
#351
#352
#356
#358
#360
#366
#371
#369
#376
#384
#385
#387
#388
#390
#394
#395
#399
#404
Enhancements:
Audit updates
jmesptha requirement removed
workflow updates
How has this been tested?:
manually and pipeline

work on resolving issues


adds VC 2.0 context to document loader

This PR adds the VC 2.0 context to the document loader.

Rebased on latest main.


bugfix: Resolve permission mismatch when system default mask is set more restrictive than 022

What this PR does / why we need it:
This PR resolve permission mismatch when system default mask is set more restrictive than 022.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #3118
Special notes for your reviewer:
Release note:

None

/test all

@kindule thanks a lot, we currently have a bit of a queue on the CI jobs, but they will start sooner or later ...

/lgtm
/approve

/ok-to-test

/retest


Update Scala.js to 1.x (and dropping 0.6.x)

Addresses https://github.com/nrinaudo/kantan.csv/issues/220
I think that use-site (kantab.sbt, e.g.) can cross-build by defining SCALAJS_VERSION environment variable, if cross-build is required.
This pattern is commonly used in Scala.js ecosystem.

Hey, thanks for that!
To be perfectly blunt though - I've no intention of supporting both 0.6.x and 1.x - I do not use scala.js, and supporting it is already making my builds far more complicated (and long) than I would prefer. I do not intent to worsen that situation by supporting two incompatible versions.
At this point, I'm essentially waiting for all of kantan.codecs, kantan.csv, kantan.regex and kantan.xpath's dependencies to support 1.x. When that happens (which might already be the case, I haven't checked in a while), I'll drop support for 0.6.x and move to 1.x.
If you want to update this PR accordingly, I can take the time, hopefully this week, to make sure kantan.* is ready for 1.x and release.

I am fine with dropping Scala.js 0.6.
I will update soon.

Just dropped "0.6.32"

I've tested this as far as I could, which is not far enough: apparently, Scala JS 1.0 has become so expensive that I can't actually run my tests locally. The optimisation phase simply takes too long.
What I've done is confirmed that all dependencies were available and everything, including tests, compiled without warnings. Knowing Scala JS, it probably means everything's fine.
I've also confirmed that I somehow messed up my project's history and for whatever reason, the current version is behind the last released one. Not sure how I've achieved that, but I'm fixing it: https://github.com/nrinaudo/kantan.sbt/pull/143.
Once that's done, I'd like to have the CI pass on all projects. It means we need to work together a bit, if you don't mind:

you must rebase onto master once I've merged
I must checkout your last modifications and release SNAPSHOT artifacts of kantan.sbt
you must update your kantan.codecs PR to depend on these artifacts

At this point, we'll know if the kantan.codecs build is sane, and I can publish SNAPSHOT artifacts to be able to run the CI on:

kantan.csv (https://github.com/nrinaudo/kantan.csv/pull/234)
kantan.regex (https://github.com/nrinaudo/kantan.regex/pull/100)
kantan.xpath (https://github.com/nrinaudo/kantan.xpath/pull/108)

If this all passes, I can release kantan.sbt, you update kantan.codecs to depend on the newly released version, and I take care of the rest.
Does that sound like a plan?

No problem, I will work for that.

The optimisation phase simply takes too long.

You can disable optimizer, so build may gain speedup.
See https://www.scala-js.org/doc/project/building.html#disabling-the-optimizations
scalaJSLinkerConfig ~= { _.withOptimizer(false) },

you must rebase onto master once I've merged

I rebeased this PR to the master branch, containing changes from #143

All builds pass for all projects. Merging, thanks!


Sling Models are not working if Model classes are inside subfolders.

With Archtype 20, Maven classes are not getting resolved as type inside model's subfolders if Sling-Model-Packages: com.myapp.core.models is defined in bnd-maven-plugin  e.g. com.myapp.core.models.sub
<plugin>
                <groupId>biz.aQute.bnd</groupId>
                <artifactId>bnd-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>bnd-process</id>
                        <goals>
                            <goal>bnd-process</goal>
                        </goals>
                        <configuration>
                            <bnd><![CDATA[
Bundle-Category: MyApp
-exportcontents: ${packages;VERSIONED}
Sling-Model-Packages: com.myapp.core.models
-snapshot: ${tstamp;yyyyMMddHHmmssSSS}
Bundle-DocURL:
                                ]]></bnd>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

We get following error, if we use create model inside subfolder:
com.myapp.core.models.sub.HelloWorldModel cannot be resolved to a type

I dig more into the issue and found that the packages/sub packages apart from default packages are not getting added in Export-Package header in MANIFEST.MF file. All the new packages are getting added in Private-Package header, because of missing package-info.java file in sub/new packages.
To resolve above issue either you can create package-info.java with with version annotation or update core pom to remove VERSIONED filter from -exportcontents.
<plugin>
                <groupId>biz.aQute.bnd</groupId>
                <artifactId>bnd-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>bnd-process</id>
                        <goals>
                            <goal>bnd-process</goal>
                        </goals>
                        <configuration>
                            <bnd><![CDATA[
Bundle-Category: MyApp
-exportcontents: ${packages;}
Sling-Model-Packages: com.myapp.core.models
-snapshot: ${tstamp;yyyyMMddHHmmssSSS}
Bundle-DocURL:
                                ]]></bnd>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

@arunpatidar02 Thank you for bringing this up! With the newly added bnd-maven-plugin it necessary and recommended to define a package-info.java with a proper version information in each subpackage.

I'm having a similar issue.  I have a package com.abc.models with my model interface and com.abc.models.impl with my model implementation.  The Exported Package is always displayed as com.abc.models.impl, therefore my HTL code cannot reference the Model interface.
The MANIFEST.MF shows both the com.abc.models and com.abc.models.impl but when I open the deployed bundle the onlyh Exported Package is the com.abc.models.impl.
I have a package-info.java file at the interface level with
package com.abc.models;
Why is the Exported Packages for my interface not working?

@WwHG10, are you able to share your codebase?

@WwHG10, are you able to share your codebase?

package ca.abc.aem.shared.components.models;
import java.util.Calendar;
import java.util.List;
import org.apache.sling.models.annotations.Model;
import org.osgi.annotation.versioning.ConsumerType;
/**

Defines the {@code Thirdcomponent} Sling Model used for the {@code bmdaem/shared/components/thirdcomponent} component.

*/
@ConsumerType
public interface Thirdcomponent {
/**
 * Returns a text value tooltip used somewhere in the component
 *
 * @return String
 *
 */
String getAtextfield();

}
@Model(adaptables = {
Resource.class
}, adapters = Thirdcomponent.class, resourceType = "abc/shared/components/thirdcomponent")
public class ThirdcomponentImpl implements Thirdcomponent
{
@OSGiService
private SlingSettingsService settings;
@SlingObject
private Resource currentResource;
@SlingObject
private ResourceResolver resourceResolver;
@ValueMapValue(injectionStrategy = InjectionStrategy.OPTIONAL)
private String atextfield;

// @Override
public String getAtextfield() {
return atextfield;
}
}
HTL

<sly data-sly-use.templates="core/wcm/components/commons/v1/templates.html"
From pom.xml in the core module:

org.apache.sling
sling-maven-plugin

biz.aQute.bnd
bnd-maven-plugin

bnd-process

bnd-process

Bundle-Category: thirdcomponent
-exportcontents: ${packages;VERSIONED}
Sling-Model-Packages: ca.abc.aem.shared.components.models
-snapshot: ${tstamp;yyyyMMddHHmmssSSS}
Bundle-DocURL:

That may not be the complete story, tried another project and the same issue is appearing.

I have finally found the issue, the bundle was using a classpath for the model which was the same as a previously deployed bundle, therefore the model was not available.
Thanks for your help and suggestions.

@bpauli  hello, I am facing the same issue with the latest version of archetype. Could you please let me know where I could find this recommendation, to be honest I am not sure whether I should look for it in bnd plugin or in org.apache.sling.bnd.models.ModelsScannerPlugin or maybe somewhere else. I think this kind of stuff could be OOTB configured for the archetype or at least clearly docummented somewhere. Thanks :)

@arunpatidar02 Thank you for bringing this up! With the newly added bnd-maven-plugin it necessary and recommended to define a package-info.java with a proper version information in each subpackage.

I am having the same issue, not sure what is going wrong.

I've added the package-info in my sub folder and it got resolved.


[SP-4078][PDI-16697] - Error reading file in Text File Input step cau…

…ses transformation to fail when "Skip error files?" and error handling is enabled

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -Dsurefire.runOrder=alphabetical -B -fn -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd clean install && mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd site

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/main/java/org/pentaho/di/trans/steps/file/BaseFileInputStep.java
  engine/src/test/java/org/pentaho/di/trans/steps/fileinput/text/TextFileInputTest.java

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes: +0.1% (click to expand)
org.pentaho.di.core.injection.bean.BeanInjector

Branch Change: -0.8% :small_red_triangle_down:
Complexity Change: -1.3% :small_red_triangle_down:

org.pentaho.di.core.lifecycle.KettleLifecycleSupport

Branch Change: -8.4% :small_red_triangle_down:
Complexity Change: -9.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.datagrid.DataGridMeta

Branch Change: -2% :small_red_triangle_down:
Complexity Change: -1.7% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.insertupdate.InsertUpdateMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.replacestring.ReplaceStringMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.setvalueconstant.SetValueConstantMeta

Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.synchronizeaftermerge.SynchronizeAfterMergeMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.tableoutput.TableOutputMeta

Branch Change: -0.9% :small_red_triangle_down:
Complexity Change: -0.8% :small_red_triangle_down:

org.pentaho.di.trans.steps.textfileinput.TextFileInputMeta

Branch Change: -0.5% :small_red_triangle_down:

org.pentaho.di.trans.steps.salesforceinsert.SalesforceInsertMeta

Instruction Change: -0.1% :small_red_triangle_down:

@mchen-len-son, @mbatchelor Could you please review. It is backport for #4720


[release/3.0] Update dependencies from dotnet/source-build-reference-packages

Manually updating this PR because DARC auto-update is failing.  The change to fsharp repo is an update to get auto-update working again.
This pull request updates the following dependencies
From https://github.com/dotnet/source-build-reference-packages

Build: 20190716.1
Date Produced: 7/16/2019 1:54 PM
Commit: f6a446ed771ccba783c0930a8e98a75b7fc93fb1
Branch: refs/heads/master
Updates:

Private.SourceBuild.ReferencePackages -> 1.0.0-beta.19366.1

This will also require a change to repos/fsharp.proj to remove the SourceDirectory property.

This will also require a change to repos/fsharp.proj to remove the SourceDirectory property.

Thanks.  Made that change.

@crummel @adaggarwal PTAL


Errors in execution with draw.textsize

OK. I've overcome a couple of problems, but still running into the following error:
DevTools listening on ws://<IP_ADDRESS>:62752/devtools/browser/f47bcbdc-16d2-4c0f-b96a-d2b3e8b59789
Saving screenshot to: output_images\Essex.png
Traceback (most recent call last):
File "C:\Users\mrinn\Downloads\vas_card_generator-main\generate2.py", line 211, in draw_vertical_lines(screenshot_path, int(str(ship["hull"]).split("/")[0][0]))

File "C:\Users\mrinn\Downloads\vas_card_generator-main\generate2.py", line 97, in draw_vertical_lines

text_width, text_height = draw.textsize(text, font=font)

^^^^^^^^^^^^^

AttributeError: 'ImageDraw' object has no attribute 'textsize'

I'm hoping you can help me out with this as I am not a python developer.

You are right, I came across this last night myself. This is a discrepancy between pillow versions. I'll get it sorted but in the mean time I actually pushed up an executable for Linux and Windows last night. In the meantime check out the Readme "Running via exectuable" section for using those as those have the proper versions and bundled together.

Unfortunately, this happened when I tried to download:

Essentially, a Trojan was found, specifically Trojan.Script/Wacatac.B!ml

Well that's odd, I just created it using pyinstaller. My system did not find anything. Otherwise in the next day or so I can update the script to work with the newer pillow versions

https://github.com/mstelz/vas_card_generator/actions/runs/12075799822/job/33676174637
I scanned the repo as well using clamAV it provided no results

@mrinnella60 try pulling the latest codebase down, it should work with the newer APIs from pillow, otherwise the EXE is fine, scanned it with Windows Defender, MalwareBytes and ClamAV

I don't know why WIndows Defender is being so difficult with me on the executable.  In any case, I updated the latest codebase and it is working using the python generate.py command so I'm happy.  I did download the executable separately and renamed the resulting "unconfirmed.crdownload" file to vascardgenerator.exe and that worked as well.  I certainly appreciate the quick response on this and will be happily creating cards for all my ships and using your STLs as well or possible designing my own.  I'm going to see what I can find for ship images and if it's alright with you I will upload them to your ship_images collection.


Small patch query image to be searched in a large image

Is this suitable for the case where I have a small patch image and I want to find all the similar objects (bounding boxes and multiple ones) in a large image? Basically something like few-shot object localization.

With some modification, it should work, but patch-based descriptors might be a better fit.


Blocking call in log file

My Solarman integration doesn't show anything anymore since a few days.  The logger is connected, I can open it. I have a Sofar 4KTLM-G2 inverter.
In the log files, I see the following error:
2024-07-20 14:35:08.666 WARNING (MainThread) [homeassistant.util.loop] Detected blocking call
to open with args ('/config/custom_components/solarman/inverter_definitions/deye_hybrid.yaml',) inside the event loop by custom integration 'solarman' at custom_components/solarman/solarman.py, line 31: with open(self.path + self.lookup_file) as f: (offender: /config/custom_components/solarman/solarman.py, line 31: with open(self.path + self.lookup_file) as f:), please create a bug report at https://github.com/StephanJoubert/home_assistant_solarman/issues
For developers, please see https://developers.home-assistant.io/docs/asyncio_blocking_operations/#open

Same here "at custom_components/solarman/solarman.py, line 31: ":
2024-09-11 21:00:37.508 WARNING (MainThread) [homeassistant.util.loop] Detected blocking call to open with args ('/config/custom_components/solarman/inverter_definitions/solis_hybrid.yaml',) inside the event loop by custom integration 'solarman' at custom_components/solarman/solarman.py, line 31: with open(self.path + self.lookup_file) as f: (offender: /config/custom_components/solarman/solarman.py, line 31: with open(self.path + self.lookup_file) as f:), please create a bug report at https://github.com/StephanJoubert/home_assistant_solarman/issues


libfaac

From my notes, this can be done as follows:
This can't be distributed in binary form because of some license crap. Well, let's install it.
cd ~;
wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz;
tar -xvf faac-1.28.tar.gz;
cd faac-1.28/;

We've gotta make a tweak to the source:
nano +126 common/mp4v2/mpeg4ip.h; # Opens up to line 126 (should start with "char *strcasestr")

Delete that line. Then complete the install
./configure
make;
sudo make install;

Last step is to run the command "ldconfig" which will help ffmpeg load up the dynamic library of libfaac.

sudo ldconfig;

NOTES FROM 1/25/2016 libfaac support was removed from ffmpeg. I installed libfdk-aac as follows:
cd ~
wget -O fdk-aac.tar.gz https://github.com/mstorsjo/fdk-aac/tarball/master
tar xzvf fdk-aac.tar.gz
cd mstorsjo-fdk-aac*
autoreconf -fiv
./configure --enable-shared
make -j2
sudo make install
sudo ldconfig;
Then compile ffmpeg with this:
./configure --enable-libfreetype --enable-gpl --enable-nonfree --enable-libx264 --enable-libass --enable-libfdk-aac  --enable-libmp3lame --bindir="/usr/local/bin"


PDA/ID painter

Description

The HoP should have a PDA and ID painter so that missing PDAs and IDs can be properly replaced (getting the ID and PDA "look" right) and getting promoted isn't just "job name and access change".
Reproduction

Screenshots

Additional context

I like being able to tell immediately that it wasn't a standard issue card.

Does it really matter if it was standard issue or not? I'd prefer to make it so that it has the full design, as it's more "official" and more MRP-y.

Having the HoP start with multiple basic colors(not the full design) in their locker/vend would be alright IMO.
They can run out, and if they are in their locker it'd be too much clutter.

I have nothing else to say about the first point but, but in regards to clutter they could just be in a "colored ID box".

Maybe heads could have the colored IDs. Extra people can get the access and job, etecetera, but only heads can give you the ID.

ideaguys is leaking again

not agreed on


fix(graphql-key-transformer): fix merge errors

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@8ce0d12). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master    #2762   +/-   ##
=========================================
  Coverage          ?   65.84%
=========================================
  Files             ?      196
  Lines             ?     9879
  Branches          ?     2032
=========================================
  Hits              ?     6505
  Misses            ?     3084
  Partials          ?      290

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 8ce0d12...c372a59. Read the comment docs.


Update PDFObjectParser.ts

What?
Closes an memory leak.
Why?
When combing many large PDF's the memory usage is through the roof.
How?
By creating an new buffer instead of an view the reference to the orginal buffer is removed and can be picked up on garbage collection.
Testing?

New Dependencies?
No
Screenshots
N/A
Suggested Reading?
No
Anything Else?
Checklist

[x] I read CONTRIBUTING.md.
[x] I read MAINTAINERSHIP.md#pull-requests.
[ ] I added/updated unit tests for my changes.
[ ] I added/updated integration tests for my changes.
[ ] I ran the integration tests.

I could not build the project locally? No clue why. Same issue as https://github.com/Hopding/pdf-lib/discussions/1630

[x] I tested my changes in Node, Deno, and the browser.
[ ] I viewed documents produced with my changes in Adobe Acrobat, Foxit Reader, Firefox, and Chrome.
[ ] I added/updated doc comments for any new/modified public APIs.
[z] My changes work for both new and existing PDF files.
[x] I ran the linter on my changes.

After some more testing I don't think this is the solution to the problem. When an Buffer (Node) is supplied this is an issue because Node slice returns an view.


Remove trailing whitespaces from unquoted keys

If an unquoted key has trailing spaces, they are not removed:
>>> import chompjs
>>>
>>> chompjs.parse_js_object("{a   :   12}")
{'a   ': 12}

Expected output:
{'a': 12}

Thank you :)


fix unknown peer_session_type breaking code

Codecov Report

Merging #92 (f47412a) into prep-release (879281b) will not change coverage.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@              Coverage Diff              @@
##           prep-release      #92   +/-   ##
=============================================
  Coverage         23.67%   23.67%
=============================================
  Files                84       84
  Lines              4786     4786
=============================================
  Hits               1133     1133
  Misses             3653     3653

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


Do not create tmp files but use the content provider

When selecting changes in the Github Pull Requests pane, we seem to create temp files... we can actually generate in memory documents with the content provider API.
The current approach goes south when a user clicks the Open File action atop the diff editor:

ugh, this is sooooooo ugly.

@rebornix Using a content provider is trivial and ensures you can open things sooner. i.e. I bet for now you create the tmp file (extracting it from the remote or from the git repository), and once you have it, you can open the diff editor. If you were to use a content provider, you could much more easily directly ask vs code to open the diff editor and then resolve the file on the fly.