Code improvements

Hey!
Got some code improvements ideas. Happy to share:
Instead of using script for enabling or preventing deep sleep you could use something like this
text_sensor:
  - platform: homeassistant
    entity_id: input_boolean.prevent_deep_sleep_soil_moisture
    id: prevent_deep_sleep
    on_value:
      then:
        - if:
            condition:
              text_sensor.state:
                id: prevent_deep_sleep
                state: "on"
            then:
              - logger.log: "Preventing deep sleep"
              - deep_sleep.prevent: deep_sleep_enabled
            else:
              - logger.log: "Deep sleep enabled"
              - deep_sleep.allow: deep_sleep_enabled

With this you could move all the updates to on_boot callback and use on_shutdown to make sure to disable the GPIO on sleep:
  on_boot:
    priority: -100
    then:
      - wait_until:
          condition:
            api.connected
      - output.turn_on: gpio_sensor
      - delay: 10s
      - component.update: soil_moisture_raw
      - component.update: battery_voltage
      - delay: 5s
      - component.update: soil_moisture
      - component.update: battery_percentage
  on_shutdown:
    then:
      - output.turn_off: gpio_sensor
      - delay: 5s

All those delays are "just in case". I'm not sure if they are needed

Hey.
Thanks for sharing =). Very nice - the code is way cleaner.
I'm currently having troubles with the ESP32 C6 - the uC sometimes does not enter deep sleep.

So your suggestions comes at the perfect time. I updated the yaml with your code and added the following line to your text_sensor - block: - deep_sleep.enter: deep_sleep_enabled
Otherwise, the uC doesn't enter deep sleep

I let it run for a while, but when i looked at battery consumption it seemed, the uC did not resume from deep sleep reliable

At the end this was my bad because the "up time" is now much shorter and my sampling rate on the INA3221 board is too slow. When checking the actual values delivered by the C6 - everything is fine

Here are the according code snippets
  on_boot:
    priority: -100
    then:
      - wait_until:
          condition:
            api.connected
      - delay: 2s
      - output.turn_on: gpio_sensor
      - delay: 10s
      - component.update: esp_c6_2nd_battery_voltage
      - component.update: esp_c6_2nd_battery_level
      - component.update: esp_c6_2nd_moisture_value
      - component.update: c6_2nd_wifi_signal_db
  on_shutdown:
    then:
      - output.turn_off: gpio_sensor
      - delay: 3s

text_sensor:
  - platform: homeassistant
    entity_id: input_boolean.sms_esps_prevent_deep_sleep
    id: prevent_deep_sleep
    on_value:
      then:
        - if:
            condition:
              text_sensor.state:
                id: prevent_deep_sleep
                state: "on"
            then:
              - logger.log: "Preventing deep sleep"
              - deep_sleep.prevent: deep_sleep_enabled
            else:
              - logger.log: "Deep sleep enabled"
              - deep_sleep.allow: deep_sleep_enabled
              - deep_sleep.enter: deep_sleep_enabled

I'm curious if your solution fixes the deep sleep problem. We will know tomorrow - I'll keep you updated.
Many thanks for your contribution!!

You did all the hardwork :D
My current setup looks like this. And I don't have any problems with it entering the deep sleep
One thing I noticed is that after setting up the helper in homeassistant you must at least once change it's state so that esphome can pick it up.
esphome:
  name: testing
  friendly_name: testing
  on_boot:
    priority: -100
    then:
      - wait_until:
          condition:
            api.connected
      - output.turn_on: gpio_sensor
      - delay: 100ms
      - component.update: battery_voltage_raw
      - delay: 100ms
      - component.update: battery
      - delay: 100ms
      - component.update: soil_moisture_raw
      - delay: 100ms
      - component.update: soil_moisture
      - delay: 100ms
      - component.update: wifi_signal_db
      - delay: 100ms
      - component.update: wifi_signal_percentage
      - delay: 100ms
      - if:
          condition:
            - text_sensor.state:
                id: prevent_deep_sleep
                state: "off"
          then:
            - deep_sleep.enter: deep_sleep_enabled

  on_shutdown:
    then:
      - output.turn_off: gpio_sensor

esp32:
  board: firebeetle32
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "HsKW0qFZ2M6tbnzkgxXUBuu1uGyqyDbF95TRi2IveOE="

ota:
  - platform: esphome
    password: "2ca07c454d68942592f915f7f8e1f130"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Testing Fallback Hotspot"
    password: "S7W0Qgt0wj4Y"

captive_portal:

deep_sleep:
  id: deep_sleep_enabled
  run_duration:
    seconds: 20
  sleep_duration:
    minutes: 60
output:
  - platform: gpio
    pin: GPIO26
    id: gpio_sensor
    inverted: False

text_sensor:
  - platform: homeassistant
    entity_id: input_boolean.prevent_deep_sleep_soil_moisture
    id: prevent_deep_sleep
    on_value:
      then:
        - if:
            condition:
              text_sensor.state:
                id: prevent_deep_sleep
                state: "on"
            then:
              - logger.log: "Preventing deep sleep"
              - deep_sleep.prevent: deep_sleep_enabled
            else:
              - logger.log: "Deep sleep enabled"
              - deep_sleep.allow: deep_sleep_enabled

sensor:
  - platform: adc
    pin: GPIO36
    id: battery_voltage_raw
    device_class: battery
    accuracy_decimals: 5
    name: Battery Voltage Raw
    force_update: True
    attenuation: 12dB
    entity_category: diagnostic
    filters:
      - multiply: 2
  - platform: template
    accuracy_decimals: 0
    id: battery
    device_class: battery
    entity_category: diagnostic
    force_update: True
    name: Battery
    unit_of_measurement: "%"
    lambda: |-
      return id(battery_voltage_raw).state;
    filters:
      - calibrate_polynomial:
          degree: 2
          datapoints:
            - 2.5 -> 0
            - 3.0 -> 10
            - 3.2 -> 20
            - 3.4 -> 30
            - 3.5 -> 40
            - 3.6 -> 50
            - 3.7 -> 60
            - 3.8 -> 70
            - 3.9 -> 80
            - 4.0 -> 90
            - 4.2 -> 100
      - clamp:
          min_value: 0
          max_value: 100

  - platform: wifi_signal # Reports the WiFi signal strength/RSSI in dB
    name: "WiFi Signal dB"
    id: wifi_signal_db
    update_interval: 60s
    entity_category: diagnostic

  - platform: template # Reports the WiFi signal strength in %
    name: "WiFi Signal Percent"
    id: wifi_signal_percentage
    lambda: |-
      return id(wifi_signal_db).state;
    filters:
      - lambda: return min(max(2 * (x + 100.0), 0.0), 100.0);
    unit_of_measurement: "%"
    entity_category: diagnostic
    device_class: signal_strength

  - platform: adc
    pin: GPIO35
    id: soil_moisture_raw
    name: Wilgotność V
    state_class: measurement
    attenuation: 12db
    accuracy_decimals: 2
    force_update: True
  - platform: template
    accuracy_decimals: 0
    id: soil_moisture
    device_class: moisture
    name: Wilgotność %
    unit_of_measurement: "%"
    force_update: True
    lambda: |-
      return id(soil_moisture_raw).state;
    filters:
      - calibrate_linear:
        - 2.56300 -> 0.00
        - 1.22500 -> 100.00
      - clamp:
          min_value: 0
          max_value: 100
          ignore_out_of_range: true

Let me know about your findings for c6. As I remember it can use zigbee right?

Thanks for the updated code. Now i understand, you defined the sleep and run duration in deep_sleep block - that's nice.
Further i think, there is not a problem with entering deep sleep. My problem is the connection to HA after waking up.
Looking at the graphs - data is allways transferred at the end of a long awake block. It seems the API connection failes and therefore the uC keeps running

Need to check if i can add some timeout. If the uC is not able to connect to HA for a period of time, it should sleep again. Otherwise, in worst case the board will stay awake till the battery is empty^^


Is there a way to Empty the trash or move a file to trash with bitbar?

So I have some experience with bash but don't know how to move files to the trash. I know where the trash file is located but it says, "Permission denied." Also, is there a way to move all files to the trash that are in a current folder?

What are you calling the "current folder" ? Your script can navigate to whatever folder you want.
You can run something like this to make apple script trash the files for you:
osascript -e "tell application \"Finder\" to delete POSIX file \"${PWD}/${InputFile}\""


How to manualy deserialize .mca files?

I would like to know if it is possible to manually deserialize .mca files, similar to what is done with the level.dat in these examples:
nbt-dump.rs
simple-deserialize.rs
I know that level.dat files are compressed with Gzip, and .mca files with Zlib, but I don't know how I should approach the parsing process.
Any help is greatly appreciated!

Hi, you should check out the Region struct in fastanvil. That will let you
extract chunks, which you can then read as NBT.
On Fri, 19 Jan 2024, 8:23 pm Jota Lanusse, @.***> wrote:

I would like to know if it is possible to manually deserialize .mca
files, similar to what is done with the level.dat in these examples:
nbt-dump.rs
https://github.com/owengage/fastnbt/blob/master/fastnbt/examples/nbt-dump.rs
simple-deserialize.rs
https://github.com/owengage/fastnbt/blob/master/fastnbt/examples/simple-deserialize.rs
I know that level.dat files are compressed with Gzip, and .mca files with
Zlib, but I don't know how I should approach the parsing process.
Any help is greatly appreciated!
—
Reply to this email directly, view it on GitHub
https://github.com/owengage/fastnbt/issues/100, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB3SQS3N3FGC3RG5VC3D2NLYPLI2PAVCNFSM6AAAAABCCPRX3OVHI2DSMVQWIX3LMV43ASLTON2WKOZSGA4TCMZUGAYTCMQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

There is a function region.read_chunk() that returns a Vec<u8>. Is this the raw NBT data?

Yes it is, uncompressed. You can see the docs here: https://docs.rs/fastanvil/latest/fastanvil/struct.Region.html#method.read_chunk


additional "unhandled" event strategy + custom strategy support

There are 2 strategies of handling events: always and predefined.
I've

added third one (unhandled) to allow pushing events that weren't handled synchronously but (unlike in predefined strategy) have no asynchronous event subscriber registered for them. This allows to publish events that weren't handled synchronously in our application but instead will be handled by some other application(s) and because of this they don't need an asynchronous subscriber in our app.
simple_bus_asynchronous:
    events:
        strategy: unhandled

added ability to define custom strategy service used to publish events (using a backward compatible configuration)
simple_bus_asynchronous:
    events:
        strategy:
            strategy_service_id: custom_strategy_service

TODO

[x] Add tests
[x] Add docs

Related
Related to: SimpleBus/AsynchronousBundle#6

Coverage remained the same at 100.0% when pulling f69cbace98bfa54026b5f69b30f8850206bf9a3c on prgTW:feat/custom-event-strategy into 41cb10355ec7b95348de6ac04652a27f296341bd on SimpleBus:master.

Coverage remained the same at 100.0% when pulling 868cd0f66ff63c9b0e2f477958cdf710178a0840 on prgTW:feat/custom-event-strategy into 41cb10355ec7b95348de6ac04652a27f296341bd on SimpleBus:master.

Coverage remained the same at 100.0% when pulling 868cd0f66ff63c9b0e2f477958cdf710178a0840 on prgTW:feat/custom-event-strategy into 41cb10355ec7b95348de6ac04652a27f296341bd on SimpleBus:master.

@matthiasnoback what do You think?

Hi @prgTW I'm the new maintainer of the SimpleBus repository's.
The unhandled only works if the UndefinedCallable exception is thrown and if i'm correct this is not the case for events. This is why have the predefined method because that one looks at al the events registert as async and only sends the messages to the queue if there is one registered as such. But it will always still send it to the local event listeners.
The idea behind this is that you can have multiple event listeners on the same event and this is the reason that we have the always method in this case all events are always handles on the local version and also send in async to allow a async listener to listen to this.  But if there are no listeners at al that is also fine in the case of events.
We could allow the change you did to make the service configurable but the unhandled version will not work (if i'm correct).

Coverage remained the same at 100.0% when pulling da995ef9a69044bf286f784344f7009ad61ccbcd on prgTW:feat/custom-event-strategy into 41cb10355ec7b95348de6ac04652a27f296341bd on SimpleBus:master.

@cmodijk thanks for Your reply.
You were absolutely correct of that the 'unhandled' strategy will not work so I followed Your comment and left only the ability for custom strategy support - after all it's enough for customizations.
I've updated the code, pull request title and description. I hope everything is ok now :)

@prgTW Yes, thanks for this. One question i have personally what method are  going to implement if this get's merged?
ps; I will get back to you in a few days to review it and merge it.

I'm going to implement a complete opposite strategy to predefined which will publish event only if it has no synchronous subscriber but (unlike predefined) won't require an asynchronous subscriber to be registered.
In my system I have something like internal and external events. External events are for 3rd party systems and therefore should use always strategy, but internal events are used for async processing within the application - we should use predefined here. In combination I wanted to create a custom strategy which will always push an instance of ExternalEventInterface but publish InternalEventInterface events based on them having an async subscriber

Merged! I'm doing some small stuff tonight i hope to create a release later this evening.

looking forward then, thanks :)

@prgTW Done, release 2.2.0 is out


is there way, i could push tx programatically ? using API ?

hi,
i am looking a way to push/broadcast tx programatically.
but i didnt find any API.
i found this page.
https://coinb.in/#broadcast
but looks like it also uses some key while doing
https://coinb.in/api/?uid=1&key=12345678901234567890123456789012&setmodule=bitcoin&request=sendrawtransaction
is that API key ?
if yes, then where can i get one ?
thanks

There are tons of sites that let you push transactions for free.
I can't believe you haven't found one...

i have found few, but i need more  :)

I can provide an API key on request. Drop me an email, it's probably not needed though unless you are thinking of broadcasting over 100 transactions a minute.


Package request: vivarium

Project description
A dynamic tiling Wayland compositor using wlroots
Metadata

homepage URL: https://github.com/inclement/vivarium
source URL: https://github.com/inclement/vivarium
license: gpl3
platforms: linux

Duplicate of https://github.com/NixOS/nixpkgs/issues/172052


Add Sidekiq 7 support

Welp, I fixed it, but then Travis cut us off :(

Hi
I have tested my app with this commit
remote: https://github.com/anedot/sidekiq-status
revision: 6ffd4c96f9bd4d52d8c304ee5de60d4ec2b5685b
branch: sidekiq-7
Everything seems to works fine but specifying expiration with Duration (ex: 2.days) throws this error:
TypeError: Unsupported command argument type: ActiveSupport::Duration
If we put integer (in seconds) it work.
Not really sure but I think this is a sidekiq issue.

That was a change that I had to make inside our app config (change the expiration to seconds instead of the duration).

So I have apparently ran out of OSS credits at TravisCI -- the best path forward might be to migrate this repository over to GitHub actions for CI purposes. I'll create a new PR for this, which should hopefully solve the CI issues going forward.

A huge thank you to @soberstadt! Unfortunately, I had to migrate CI over to GitHub Actions and drop support for Sidekiq 5.x in the process (via #25), but we're now building. I am going to release as v3.0.0.


Proposal: Argument to make Danger post new comments instead of editing it's first one

I personally don't like how multiple builds of Danger makes it edit it's first comment instead of posting new ones, because it makes the comment chain rather confusing. It's specially worse to my team since we use 'Test it!' to trigger it, so usually the comments section consist of the same guy posting 'Test it!' a few times, with a single Danger comment on the top of the chain. Visually, it doesn't look nice.. It would be really cool if it had an option to post new comments instead of editing the first one.

That does sound like a useful option 👍

@orta --immutable-comment, --static-comment, --no-modify-comments?

--replace-comment?

Since this would be a result of multiple runs of danger, perhaps --new-comment ?

Hrm, if this will result in a new comment every time, then we should re-use existing infrastructure - we already support a     --danger_id=<id>                    The identifier of this Danger instance option, so this should be --unique-danger-id which would create a timestamp based id, which means it will create a new comment each time

That worked @orta ! Awesome!
I do believe this functionality needs an argument with a more obvious name though, so I'll definitely take a shot at this :)

Implemented in #632.


Update dependencies with doc on how to update

All updated to absolute latest.
Verified against:
https://github.com/justin808/test-react-on-rails-3/commit/4042638012dd8df0858697d646ab94ab1dd3d304

@alexfedoseev @robwise Please take a quick peek.

Review status: 0 of 6 files reviewed at latest revision, all discussions resolved.

Comments from the review on Reviewable.io

Review status: 0 of 6 files reviewed at latest revision, 3 unresolved discussions.

docs/additional_reading/updating-dependencies.md, line 20 [r1] (raw file):
I do it only in case I have some weird conflicts from npm.

docs/additional_reading/updating-dependencies.md, line 21 [r1] (raw file):
I'd suggest to do npm outdated & read CHANGELOGs of major updated packages before actual update.

docs/additional_reading/updating-dependencies.md, line 23 [r1] (raw file):
npm@3 do it automatically if shrinkwrap file exists.

Comments from the review on Reviewable.io

Reviewed 8 of 32 files at r2.
Review status: 8 of 36 files reviewed at latest revision, 3 unresolved discussions, some commit checks failed.

Comments from the review on Reviewable.io

@robwise check this out, even though merged.


Added Blog post on Beginner guide to Git connectors

The blog post contains information on common errors faced by users while creating git-connectors.
Signed-off by<EMAIL_ADDRESS>

/assign @Ompragash @pravindmali27


Competition analysis

kiss3d has the same goals and a similar API. Differences:

it's locked to nalgebra types/ecosystem
graphics module is GL only and internal
it's single-threaded
any operations on a node lock a RefCell, object have no local fields

ggez is a Love2D-like engine. Differences:

game engine, not just graphics
only 2D graphics supported
uses non-rusty SDL2 for window and events

(other libs?)

It would be enlightening to understand why kiss3d didn't gain critical mass. It's currently in maintenance mode, with a few unanswered long-standing issues. Technically, it aims for the same niche, so analysing how users see it is essential to properly position three-rs.

Some notes about why kiss3d "faild", from @ozkriff, translated by me:

Poor examples: a few demos of cubes don't imply the capability to make games
Low inertia: infrequent releases, long lifecycle
Instability due to rough Rust evolution

Nitro engine has taken the decision to integrate the existing technologies fully into Amethyst, and the merging goes as we speak. Can be safely crossed out of the competition list :)

Considering this done.


Added BODY FAT Percentage calculator

Closes: #599  @S-ishita
This time did according to you!

Hey @Srijita-Mandal you unassigned me..


MONDO:0005550 'infectious disease': suggested synonyms

MONDO:0005550 'infectious disease'
Hi @nicolevasilevsky ,
Would you please consider adding
communicable disease
transmissible disease
as exact synonyms? In agreement with the term definition ("...It can be transmitted by direct or indirect contact."). Supported also by https://www.merriam-webster.com/medical/communicable disease and by https://link.springer.com/referenceworkentry/10.1007%2F978-1-4020-5614-7_3557. Thanks.
EFO:0005741 'infectious disease', that the Mondo term maps to, has "transmissible disease" among its exact synonyms.
(Note for self: needed for COVOC.)

@nicolevasilevsky thanks!


New-Scheduled Task Principal

In related links, New-Scheduled Task Principal was not linked. So I have added that information as well.

OK to merge, but addition isn't in alphabetical order like the other related links. Should probably move New-ScheduledTaskPrincipal after New-ScheduledTaskAction.


Use componentDidMount instead of componentWillMount

Just tested the behavior, we can render styles after dom nodes and still have no FOUC if we do it in sync.
Here is a test https://codesandbox.io/s/qzrkx0lrl6
React is calling componentDidMount synchronously, right after dom render, so we can use it according to @bvaughn
Lets remove the use of componentWillMount, because it is not for side effects and may result in leaking styles if an error happens during mount.

cc @oliviertassinari @nathanmarks

Relevant code is in the ReactFiberScheduler. First we flush pending changes to eg the DOM then we call the commit phase lifecycle hooks and ref callbacks (which is where componentDidMount gets called).


Connection Error("Invalid Database") raised if the db and decode_responses=True parameters is specified

Connection Error("Invalid Database") raised if the db and decode_responses=True parameters is specified.
connection.py
    if self.db:
        await self.send_command(b"SELECT", self.db)

        if await self.read_response() != b"OK":
            raise ConnectionError("Invalid Database")

But if we add the decode=False parameter or compare it with "OK", the connection will be successful.
await self.read_response() actually return 'OK'.
I initialize ConnectionPool with the parameters decode_responses=True, encoding='utf-8' and db=1. Then I get a connection using the get_connection method and try to connect. If I remove decode_responses, the connection will also be successful.
I'm using python 3.10.2 with coredis==3.4.1
redis_version:5.0.4

Thanks for the report and apologies for the regression (looks like this was introduced in 3.2.0.
I'll cut a patch release shortly to address this.

Fixed in 3.4.2

Thanks for the quick response. Now everything works!


Warning: NVBLAS_CONFIG_FILE environment variable is NOT set

Every time AMGX gets called I see the following errors:
julia> using AMGX
[NVBLAS] NVBLAS_CONFIG_FILE environment variable is NOT set : relying on default config filename 'nvblas.conf'
[NVBLAS] Cannot open default config file 'nvblas.conf'
[NVBLAS] Config parsed
[NVBLAS] CPU Blas library need to be provided

I google it but couldn't make much sense of what this means. Does this require any action on my end or can I just safely ignore it?

Perhaps on a similar note, is there a way as a developer to hide this [NVBLAS]-related info from all users?

Could be relevant: https://forums.developer.nvidia.com/t/having-trouble-with-nvblas/32766

I suspect the first three errors can be dealt with by

Checking if the environment variable NVBLAS_CONFIG_FILE is set
If not, looking somewhere for nvblas.conf (like the current working directory)
If nvblas.conf is not found, invoking some reasonable default like the one in the docs (pasted below) by copying the default to file and then setting NVBLAS_CONFIG_FILE to point there

The final puzzle is how to find the CPU Blas library, and point to that in the default config file. I don't know how to do that.
The "typical" config file from the docs (seems like it needs interpretation):
#Copyright 2013 NVIDIA Corporation. All rights reserved.
# This is the configuration file to use NVBLAS Library
# Setup the environment variable NVBLAS_CONFIG_FILE to specify your own config
 file.
# By default, if NVBLAS_CONFIG_FILE is not defined,
# NVBLAS Library will try to open the file "nvblas.conf" in its current
 directory
# Example : NVBLAS_CONFIG_FILE /home/cuda_user/my_nvblas.conf
# Specify which output log file (default is stderr)
NVBLAS_LOGFILE nvblas.log
#Put here the CPU BLAS fallback Library of your choice
NVBLAS_CPU_BLAS_LIB libopenblas.so
#NVBLAS_CPU_BLAS_LIB libmkl_rt.so
# List of GPU devices Id to participate to the computation
# Use ALL if you want all your GPUs to contribute
# Use ALL0, if you want all your GPUs of the same type as device 0 to contribute
# However, NVBLAS consider that all GPU have the same performance and PCI
 bandwidth
# By default if no GPU are listed, only device 0 will be used
#NVBLAS_GPU_LIST 0 2 4
#NVBLAS_GPU_LIST ALL
NVBLAS_GPU_LIST ALL0
# Tile Dimension
NVBLAS_TILE_DIM 2048
# Autopin Memory
NVBLAS_AUTOPIN_MEM_ENABLED
#List of BLAS routines that are prevented from running on GPU (use for debugging
 purpose
# The current list of BLAS routines supported by NVBLAS are
# GEMM, SYRK, HERK, TRSM, SYMM, HEMM, SYR2K, HER2K,
#NVBLAS_GPU_DISABLED_SGEMM
#NVBLAS_GPU_DISABLED_DGEMM
#NVBLAS_GPU_DISABLED_CGEMM
#NVBLAS_GPU_DISABLED_ZGEMM
# Computation can be optionally hybridized between CPU and GPU
# By default, GPU-supported BLAS routines are ran fully on GPU
# The option NVBLAS_CPU_RATIO_<BLAS_ROUTINE> give the ratio [0,1]
# of the amount of computation that should be done on CPU
# CAUTION : this option should be used wisely because it can actually
# significantly reduced the overall performance if too much work is given to CPU
#NVBLAS_CPU_RATIO_CGEMM 0.07

indeed with a default.conf as above then:
$ export NVBLAS_CONFIG_FILE=default.conf

$ julia --project
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.8.4 (2022-12-23)
 _/ |\__'_|_|_|\__'_|  |
|__/                   |

julia> using AMGX
[NVBLAS] NVBLAS_CONFIG_FILE environment variable is set to 'default.conf'

However, when I exit Julia I get flooded with:
julia> exit()

signal (11): Segmentation fault
in expression starting at REPL[2]:1
fflush at /lib64/libc.so.6 (unknown line)
unknown function (ip: 0x7f6b811090bb)
unknown function (ip: 0x7f6b8110246e)
unknown function (ip: 0x7f6b8116e3f0)
__run_exit_handlers at /lib64/libc.so.6 (unknown line)
exit at /lib64/libc.so.6 (unknown line)
ijl_exit at /g/data/v45/nc3020/julia-1.8/src/jl_uv.c:641
exit at ./initdefs.jl:28 [inlined]
exit at ./initdefs.jl:29
jfptr_exit_48098 at /g/data/v45/nc3020/julia-1.8/usr/lib/julia/sys.so (unknown line)
_jl_invoke at /g/data/v45/nc3020/julia-1.8/src/gf.c:2377 [inlined]
ijl_apply_generic at /g/data/v45/nc3020/julia-1.8/src/gf.c:2559
jl_apply at /g/data/v45/nc3020/julia-1.8/src/julia.h:1843 [inlined]
do_call at /g/data/v45/nc3020/julia-1.8/src/interpreter.c:126
eval_value at /g/data/v45/nc3020/julia-1.8/src/interpreter.c:215
eval_stmt_value at /g/data/v45/nc3020/julia-1.8/src/interpreter.c:166 [inlined]
eval_body at /g/data/v45/nc3020/julia-1.8/src/interpreter.c:594
jl_interpret_toplevel_thunk at /g/data/v45/nc3020/julia-1.8/src/interpreter.c:750
jl_toplevel_eval_flex at /g/data/v45/nc3020/julia-1.8/src/toplevel.c:906
jl_toplevel_eval_flex at /g/data/v45/nc3020/julia-1.8/src/toplevel.c:850
eval_body at /g/data/v45/nc3020/julia-1.8/src/interpreter.c:556
eval_body at /g/data/v45/nc3020/julia-1.8/src/interpreter.c:522
jl_interpret_toplevel_thunk at /g/data/v45/nc3020/julia-1.8/src/interpreter.c:750
jl_toplevel_eval_flex at /g/data/v45/nc3020/julia-1.8/src/toplevel.c:906
ijl_toplevel_eval_in at /g/data/v45/nc3020/julia-1.8/src/toplevel.c:965
eval at ./boot.jl:368 [inlined]
eval_user_input at /g/data/v45/nc3020/julia-1.8/usr/share/julia/stdlib/v1.8/REPL/src/REPL.jl:151
repl_backend_loop at /g/data/v45/nc3020/julia-1.8/usr/share/julia/stdlib/v1.8/REPL/src/REPL.jl:247
start_repl_backend at /g/data/v45/nc3020/julia-1.8/usr/share/julia/stdlib/v1.8/REPL/src/REPL.jl:232
#run_repl#47 at /g/data/v45/nc3020/julia-1.8/usr/share/julia/stdlib/v1.8/REPL/src/REPL.jl:369
run_repl at /g/data/v45/nc3020/julia-1.8/usr/share/julia/stdlib/v1.8/REPL/src/REPL.jl:355
jfptr_run_repl_64854 at /g/data/v45/nc3020/julia-1.8/usr/lib/julia/sys.so (unknown line)
_jl_invoke at /g/data/v45/nc3020/julia-1.8/src/gf.c:2377 [inlined]
ijl_apply_generic at /g/data/v45/nc3020/julia-1.8/src/gf.c:2559
#967 at ./client.jl:419
jfptr_YY.967_49733 at /g/data/v45/nc3020/julia-1.8/usr/lib/julia/sys.so (unknown line)
_jl_invoke at /g/data/v45/nc3020/julia-1.8/src/gf.c:2377 [inlined]
ijl_apply_generic at /g/data/v45/nc3020/julia-1.8/src/gf.c:2559
jl_apply at /g/data/v45/nc3020/julia-1.8/src/julia.h:1843 [inlined]
jl_f__call_latest at /g/data/v45/nc3020/julia-1.8/src/builtins.c:774
#invokelatest#2 at ./essentials.jl:729 [inlined]
invokelatest at ./essentials.jl:726 [inlined]
run_main_repl at ./client.jl:404
exec_options at ./client.jl:318
_start at ./client.jl:522
jfptr__start_49949 at /g/data/v45/nc3020/julia-1.8/usr/lib/julia/sys.so (unknown line)
_jl_invoke at /g/data/v45/nc3020/julia-1.8/src/gf.c:2377 [inlined]
ijl_apply_generic at /g/data/v45/nc3020/julia-1.8/src/gf.c:2559
jl_apply at /g/data/v45/nc3020/julia-1.8/src/julia.h:1843 [inlined]
true_main at /g/data/v45/nc3020/julia-1.8/src/jlapi.c:575
jl_repl_entrypoint at /g/data/v45/nc3020/julia-1.8/src/jlapi.c:719
main at /g/data/v45/nc3020/julia-1.8/cli/loader_exe.c:59
__libc_start_main at /lib64/libc.so.6 (unknown line)
_start at /g/data/v45/nc3020/julia-1.8/julia (unknown line)
Allocations: 11859354 (Pool: 11854492; Big: 4862); GC: 4
Segmentation fault

But I am not sure what all these defaults do so is it safe just to enforce them just to avoid seeing the warnings?

One key line is
NVBLAS_CPU_BLAS_LIB libopenblas.so

that might need to be correct, specific to your system
Also this line
NVBLAS_LOGFILE nvblas.log

it says the default is stderr (not nvblas.log). Maybe better to keep stderr?


Fix branch/location/country validation (serious bug!)

You've mixed up country, location and branch in a way which lets all ISO countries which have the letter "O" as the second letter always fail validation – most notably "RO" (Romania).
Furthermore, I've added the rspec-its gem as a development dependency to fix the test suite.
Thanks for considering a timely merge and version bump!

@opahk Could you take a look at this PR? It fixes a really serious bug. (I had to update the Travis config as well since some Rubies which reached their EOT failed to build a test environment due to gems which have dropped support for those Rubies. It's all green now.) Thanks a lot!

@svoop thanks for the PR and your patience. Looking into it now.

@svoop I've pushed a new revision to rubygems. Thanks for finding and fixing the bug. I also appreciate the naming improvement.

@opahk Thanks a bunch!


On Windows 7 x86-64  in Atom 1.2.5 - "At Cannot set property 'alpha' of undefined"

[Enter steps to reproduce:]

Install Atom package for split-diff 1.5.2 in Atom 1.25.  Environment - Windows 7 64-bit.
Open Atom.
Error thrown with stack trace below.

Atom: 1.25.0 x64
Electron: 1.7.11
OS: Microsoft Windows 7 Professional
Thrown From: split-diff-master package 1.5.2
Stack Trace
Failed to activate the split-diff-master package
At Cannot set property 'alpha' of undefined

TypeError: Cannot set property 'alpha' of undefined
    at /packages/split-diff-master/lib/split-diff.coffee:35:11
    at StyleCalculator.updateStyles (/packages/split-diff-master/lib/style-calculator.js:28:24)
    at updateStyles (/packages/split-diff-master/lib/style-calculator.js:15:12)
    at StyleCalculator.startWatching (/packages/split-diff-master/lib/style-calculator.js:22:5)
    at Object.activate (/packages/split-diff-master/lib/split-diff.coffee:30:21)
    at Package.activateNow (~/AppData/Local/atom/app-1.25.0/resources/app/src/package.js:230:33)
    at measure (~/AppData/Local/atom/app-1.25.0/resources/app/src/package.js:206:33)
    at Package.measure (~/AppData/Local/atom/app-1.25.0/resources/app/src/package.js:88:25)
    at activationPromise.Promise (~/AppData/Local/atom/app-1.25.0/resources/app/src/package.js:200:20)
    at Promise (<anonymous>)
    at Package.activate (~/AppData/Local/atom/app-1.25.0/resources/app/src/package.js:198:38)
    at PackageManager.activatePackage (~/AppData/Local/atom/app-1.25.0/resources/app/src/package-manager.js:695:42)
    at packagesToEnable.forEach.name (~/AppData/Local/atom/app-1.25.0/resources/app/src/package-manager.js:440:51)
    at Array.forEach (native)
    at disabledPackagesSubscription.config.onDidChange (~/AppData/Local/atom/app-1.25.0/resources/app/src/package-manager.js:440:30)
    at emitter.on (~/AppData/Local/atom/app-1.25.0/resources/app/src/config.js:1023:22)
    at Function.module.exports.Emitter.simpleDispatch (~/AppData/Local/atom/app-1.25.0/resources/app/node_modules/event-kit/lib/emitter.js:25:20)
    at Emitter.module.exports.Emitter.emit (~/AppData/Local/atom/app-1.25.0/resources/app/node_modules/event-kit/lib/emitter.js:141:34)
    at Config.emitChangeEvent (~/AppData/Local/atom/app-1.25.0/resources/app/src/config.js:1175:62)
    at Config.setRawValue (~/AppData/Local/atom/app-1.25.0/resources/app/src/config.js:1008:23)
    at Config.set (~/AppData/Local/atom/app-1.25.0/resources/app/src/config.js:711:18)
    at Config.removeAtKeyPath (~/AppData/Local/atom/app-1.25.0/resources/app/src/config.js:901:16)
    at Package.enable (~/AppData/Local/atom/app-1.25.0/resources/app/src/package.js:75:30)
    at PackageManager.enablePackage (~/AppData/Local/atom/app-1.25.0/resources/app/src/package-manager.js:246:18)
    at HTMLButtonElement.enablementButtonClickHandler (~/AppData/Local/atom/app-1.25.0/resources/app/node_modules/settings-view/lib/package-card.js:362:31)

Commands
     -2:43 settings-view:uninstall-packages (atom-pane.pane)

Non-Core Packages
autocomplete-bash-builtins-0.3.5 undefined
git-plus-7.7.0 undefined
language-oracle 1.5.0
language-perl-0.37.0 undefined
minimap-split-diff 0.3.7
split-diff 1.5.2

Same problem - Brand new install + offline installation of split-diff 1.5.2

Tried deinstall & reinstall of the downloaded package via apm.  Did I do this incorrectly?  I fully understand this could be user error on my end.
C:\Users\dhkerr\.atom\packages>apm deinstall split-diff-master\package.json Uninstalling split-diff-master\package.json done
C:\Users\dhkerr\.atom\packages>apm install split-diff-master\package.json Installing split-diff-master\package.json to C:\Users\dhkerr\.atom\packages failed Request for package information failed: Not Found
Thank you.
DK

@killcoder I found this on stack overflow:
Because of package dependencies a safest bet is this:

1. Install package normally on connected computer
2. Copy contents from your ~/.atom/packages
3. Paste contents to ~/.atom/packages on offline computer
4. Restart Atom

@mupchrch Worked Thanks

Closing as I think the issues were addressed. Let me know if otherwise.


add LOHHLA support

Need to output in 4 digits and write to an output file.

Added an output option for LOHHLA supporting format. It returns an .csv file to the same folder as the log.


Debugger Seetting variable in variables panel isnt working

Hello there,
I am trying to use VS-Code as an IDE to develop for my Blue Pill (STM32F103C8T6) development board. I already got "Make" working. I can flash it with the st-link tool and the program works fine.
I can also debug with the cortex debug extension (https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug).
And here is where my question kicks in. When the program is pausing at a breakpoint I can see all the local, global and static variables. If I double-click on one of them I can edit the value, but as soon as I hit Enter the edit panel vanishes and the value of the variable does not change.
I can change the value of the variable via the debug console, but i would like to do it over the gui.
Thank you for your help.

VSCode Version: 1.37.1
OS Version: Windows 10 Version: 1903

Please file issue against cortex debug extension.


Option to not close file marked as viewed via keybinding

When you mark a file as viewed through the active editor menu bar or through a keybinding, the file will close. When you mark it as viewed through the tree view then it will not close. If a setting is needed I'll add one, but my hope is that this behavior is better for almost everyone.

Originally posted by @alexr00 in https://github.com/microsoft/vscode-pull-request-github/issues/3513#issuecomment-1284469843
Per this comment, it seems the default behavior for keybindings (or editor menu bar) calling pr.markFileAsViewed is to close the file, but for my workflow I'd prefer it didn't. Is it possible to add either a config setting, new command, or allow "args" in the keybinding to disable closing the active editor when this command is executed?
If it would be accepted, I could also attempt a PR for whichever of those options seems preferable. Thanks!
Edit: as a workaround (at least for keybindings) I found this seems to work okay - although the visual effect of closing and immediately reopening the editor is a bit jarring:
    {
        "key": "alt+j",
        "command": "runCommands",
        "args": {
            "commands": [
                "pr.markFileAsViewed",
                "workbench.action.reopenClosedEditor",
            ]
        },
        "when": "editorTextFocus && github:inReviewMode && isInDiffEditor",
    }

I would love this! Both a setting and/or an argument to the command would be super useful 👍

Same. My workflow is to use the GitHub Pull Requests: Go to Next Diff in Pull Request repeatedly and at the end of a file I mark it as viewed. But since it closes, I'm not able to go to next the file after that.


fix: external host validation

Adds a new config option GOTRUE_MAILER_EXTERNAL_HOSTS that serves as an allowlist to all the acceptable hosts provided to the APIs.
Fixes #1228

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

51 of 54 (94.44%)  changed or added relevant lines in 1 file are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.1%) to 57.162%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

internal/api/middleware.go
51
54
94.44%

Files with Coverage Reduction
New Missed Lines
%

internal/api/middleware.go
1
80.99%

Totals

Change from base Build<PHONE_NUMBER>6:
0.1%

Covered Lines:
9570

Relevant Lines:
16742

💛  - Coveralls


DM-13525: Improve numpydoc examples

https://developer.lsst.io/v/DM-13525/docs/py_docs.html

Clarify that class attributes and parameters are documented separately.
Example of returning an lsst.pipe.base.Struct.
Full example module (based on http://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_numpy.html#example-numpy)
Easier to use table of contents

@PaulPrice Does this Struct return type example help? https://developer.lsst.io/v/DM-13525/docs/py_docs.html#struct-return-types

That's good, but can I suggest that the following would be more in keeping with our general usage pattern:
def processSomething(self):
    """Process something

    Returns
    -------
    result : `lsst.pipe.base.Struct`
        Result struct with components:

        - ``thing`` : The thing at the place with the guy (`str`)
        - ``place`` : The place for the thing with the guy (`int`)
        - ``guy`` : The guy at the place with the thing (`str`)
    """

It's such a shame this pattern is so awkward (empty line, double backticks, type not required) as we will use it a lot. Could we say that if we just return a single Struct, we can document that as multiple return values?
def processSomething(self):
    """Process something

    Returns a struct of results.

    """

It's a little misleading (we're documenting multiple return values but there's only one), but it's so much nicer to write.

@PaulPrice If you refresh https://developer.lsst.io/v/DM-13525/docs/py_docs.html#struct-return-types does that get closer to what you'd like? Using the term "components" seemed to be the main difference. Unfortunately, we can't use your suggested format until we decide to fork the Numpydoc parser.

Good enough.
Does the numpydoc parser actually check that the number of objects being returned matches what's in the doc? Otherwise, what's wrong with adopting my suggested form?

Does the numpydoc parser actually check that the number of objects being returned matches what's in the doc? Otherwise, what's wrong with adopting my suggested form?

The inconsistency will lead to confusion unless we make returning a Struct a special case. An acceptable solution would be forking Numpydoc to add a new section that replaces Returns and Yields with:
Result struct
-------------
componentA : `int`
    Description of ``component A``.
componentB : `int`
    Description of ``component B``.

But going down this route is off-topic for the present PR. Thanks for your feedback.


Identify autosave slot and reordering snapshots list

Hello team.
To avoid confusion with other manual snapshots, would it be possible to identify the autosave slot in some way? with an icon or label type "automatic" for example. When you have many snapshots it is not possible to recognize which is the automatic slot in the AUTO SAVE/LOAD  list.
In addition to the marking, I would always put in the same position on the list, right next to the "START NEW GAME" option and this option always first, now is placed at the end of the snapshots list .
New ordering proposal:
[ START NEW GAME ] -+-+-+-+- [ AUTOSAVE SLOT ] -+-+-+-+- [ REST OF MANUAL SNAPSHOTS ]
_always in first option_________always second, empty or not__________________order by date desc
Waht do you think, guys? IMO is a more cleaning and intuitive list.
Thanks for the great work!

The autosave is identifiable ! It's named "AUTO SAVE"....

I agree about the [ START NEW GAME ] option... But it's discutable with the autosave, expecially if it's empty.... No ?

Sorry, my fault. It is true that auto save is identifiable. I had not seen it because in my custom theme it is not visible, i can see in the default carbon theme ... my apologies again. I have to work on my theme to see why it happens, but seems obviously that the font size is to high.

Putting the START GAME option always first is a good change. As you can see in the screenshots, if I want to start a new game it is annoying to always go to the end of the list.

The auto save option is debatable but in my humble opinion I think it would be friendly if it was always in the second option, like when it is empty.

  is too big....

Thanks! im working on it!


[BUG] Create zero equivalency unit test

Starting point: https://github.com/microsoft/DeepSpeed/issues/966
Test matrix

gradient accumulation: one vs many
#gpus: one vs many
stages: 1 vs 2 vs 3
dtype: bf16 vs fp16 vs fp32

@stas00

for (4)th item training and comparing the loss curve you can probably use HF Trainer + pytorch example program, so everything is already done for you - e.g. see the example of how I train from scratch opt-1.3b https://github.com/huggingface/transformers/pull/21312 -
so this will generate a tensorboard and if you add  --skip_memory_metrics 0 it'll even print you detailed summary of allocated vs peak memory for each stage.
so just need to add a set of ds_config files with auto values
I can help set this one up. It should be very trivial to do. as it's really just adding on of --fp16 or --bf16 or nothing.
And also using 3 set ups w/o deepspeed - just using DDP, so that would be another baseline for each of the dtypes.

to summarize,

part of this project is to do pretty precise tests with some tolerance in some dimensions
actual training where we can see the real outcome - which is very visual to see if something is not training well.

Actually I forgot I developed a whole tool to do matrix runs:
https://github.com/huggingface/transformers/blob/main/scripts/benchmark/trainer-benchmark.py
CUDA_VISIBLE_DEVICES=0 python ./scripts/benchmark/trainer-benchmark.py \
--base-cmd \
' examples/pytorch/translation/run_translation.py --model_name_or_path t5-small \
--output_dir output_dir --do_train --label_smoothing 0.1 --logging_strategy no \
--save_strategy no --per_device_train_batch_size 32 --max_source_length 512 \
--max_target_length 512 --num_train_epochs 1 --overwrite_output_dir \
--source_lang en --target_lang ro --dataset_name wmt16 --dataset_config "ro-en" \
--source_prefix "translate English to Romanian: " --warmup_steps 50 \
--max_train_samples 20000 --dataloader_num_workers 2 ' \
--target-metric-key train_samples_per_second --repeat-times 1
--report-metric-keys train_loss --repeat-times 1 --base-variation '--tf32 0' \
--variations '|--fp16|--bf16' '--tf32 0|--tf32 1'

the last line should you an example of 6 variations: fp16/bf16/fp32 vs tf32(on/off) = 3*2 = 6 variations.
this may or may not be easier to use - not sure, but plenty of working out of the box choices.

hi teams, any updates？

Hey folks, is this still an active issue? I'm observing some differences in training between zero2 and zero3 using Llama models with the fixed rotary embedding cache init (https://github.com/microsoft/DeepSpeed/issues/4932#issuecomment-1900929748).

As you can see from the discussion you linked to there will be no equivalency in that particular case of LLama-2 due to how the buffers are created. I urge you to file an Issue with HF Transformers and ask them to distribute the correct buffers with the model weights and not leave them to be recalculated at model init time.

We have the scripts to compare the DeepSpeed's results with PyTorch.
https://github.com/tohtana/validate_zero
The mixed precision support is limited but we can start here.


Bump Dependencies #30

Bumps dependencies for ${REPOSITORY}.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.jenkins-is-staging seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Inherited properties of custom Error incorrectly reported as static.

Hi!
I just noticed that if you create a custom Error, the inherited properties message, name and stack are reported by TypeDoc as being static while the TypeScript compiler correctly consider them as instance properties.
class CustomError extends Error {
}

@tomc974, I'll need to check to see that TypeDoc is listening to TypeScript correctly.
You'll probably want to look at this information on Extending built-ins for suggestions on how to correctly extend the Error object.

I've confirmed that TypeDoc is handling this differently than TypeScript.

function useError() {
  CustomError.stack; // [ts] Property 'stack' does not exist on type 'typeof CustomError'.

  let errorInst = new CustomError();
  errorInst.stack; // ok
}


Calculate % insect range in host range

After modeling is complete, need to calculate the percent of the insect's range that overlaps with hosts' range. This should be done for both current and future climate data, and the delta stored...somehow.

POC in 268acd5, but could use functionalization / abstraction.

Handled by the create_overlaps() function (1220610).


konbucase: init at 4.1.1

Description of changes
Add galaxy to maintainers list.
Add new package konbucase

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

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

1 package built:

konbucase

The checks of Darwin are stuck too long time.

The checks of Darwin are stuck too long time.

They always are. Nothing to worry about


[SMALLFIX] Use the @Nullable annotation for all methods which may ret…

…urn null in ObjectUnderFileSystem.java

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/16899/
Test PASSed.


feature[profile]: add profile page

Simple profile page with mockup data from user state

Thank you pr. Probably will be merged into the master in version 4.1.1

Please fix for mobile version )

@vdumbrav refine in https://github.com/PanJiaChen/vue-element-admin/pull/2020


Lemur 1.2 NS1 DNS Provider

Adding NS1 Provider for ACME DNS for Lemur release 1.2

Coverage increased (+0.08%) to 62.391% when pulling c427df236b3bdbb410cfbbfb386422ecd21b1c4e on alwaysjolley:lemur_1_2_nsone into f08480cacc6ca8456adcfbe933a18db6edf223e1 on Netflix:master.


RExec: Kill flow on unexpected messages

Kill the connection when another VM sends an unexpected message.

The server flow doesn't kill the connection on unexpected messages. We should probably do the same for both server and client.
What does the C implementation do?

Merged in https://github.com/mirage/mirage-qubes/pull/61


Add support for from usage in Pipeline Conditions

Changes
Resources in Pipeline Conditions can now declare that they depend on the
output of previous tasks using the from clause. Using from in a
conditional resource implies ordering for the pipeline task i.e. if
task B has a condition (say, C) that takes in an output resource from
task A, task A will run first, followed by the conditional C, and then B
Fixes #1256
Submitter Checklist
These are the criteria that every PR should meet, please check them off as you
review them:

[x] Includes tests (if functionality changed/added)
[x] Includes docs (if user facing)
[x] Commit messages follow commit message best practices

See the contribution guide for more details.
Double check this list of stuff that's easy to miss:

If you are adding a new binary/image to the cmd dir, please update
the release Task to build and release this image.

Reviewer Notes
If API changes are included, additive changes must be approved by at least two OWNERS and backwards incompatible changes must be approved by more than 50% of the OWNERS, and they must first be added in a backwards compatible way.
Release Notes
Resources in Pipeline Conditions can now declare that they depend on the
output of previous tasks using the `from` clause.

/cc @sbwsg @afrittoli  @bobcatfish @vdemeester I haven't fully kept up with all the cool new resource stuff but do you think adding support for the from syntax for conditions still makes sense in the new world?

Yes I think so! Supporting it for the existing pipeline resources implementation makes sense to me.

/lgtm

/test pull-tekton-pipeline-integration-tests

/lgtm

Thanks for the review @afrittoli Looks like there have been some major changes to the DAG....so the rebase will need some work..I'll give that shot on Friday!

Thanks for the review @afrittoli Looks like there have been some major changes to the DAG....so the rebase will need some work..I'll give that shot on Friday!

I don't think they are that major :sweat_smile: but ping me if you need help :stuck_out_tongue_closed_eyes:

Naive question, can I create a deadlock with that from ? Like refering to a task that has a from on the current task. Something like the following ?

I'd hope not :sweat_smile: I think we detect the cycles in the DAG...let me verify

Tried this out:
apiVersion: tekton.dev/v1alpha1
kind: Pipeline
metadata:
  name: conditional-pipeline
spec:
  resources:
    - name: source-repo
      type: git
  params:
    - name: "path"
      default: "README.md"
  tasks:
   - name: task-1
     conditions:
       - conditionRef: "file-exists"
         params:
           - name: "path"
             value: "$(params.path)"
         resources:
           - name: workspace
             resource: source-repo
             from: [task-2]
     taskRef:
       name: create-readme-file-1
     resources:
       inputs:
       - name: workspace1
         resource: source-repo
       outputs:
       - name: workspace
         resource: source-repo
   - name: task-2
     taskRef:
      name: create-readme-file-1
     resources:
       inputs:
       - name: workspace1
         resource: source-repo
         from: [task-1]
       outputs:
       - name: workspace
         resource: source-repo

webhook validation failed:
invalid value: couldn't add link between task-2 and task-1: couldn't create link from task-1 to task-2: cycle detected: task-2 -> task-1 -> task-2: spec.tasks

/test pull-tekton-pipeline-integration-tests

/test pull-tekton-pipeline-build-tests

/approve

/test pull-tekton-pipeline-integration-tests

/test pull-tekton-pipeline-integration-tests

/test pull-tekton-pipeline-integration-tests


brew update followed by brew upgrade fails for Python's 2to3 conflict (December 2022)

Description
If one has on a job:
brew update
brew upgrade

the job fails with error:
 ==> Upgrading<EMAIL_ADDRESS>  3.10.8 -> 3.10.9

==> Pouring<EMAIL_ADDRESS>Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/2to3
Target /usr/local/bin/2to3
already exists. You may want to remove it:
  rm '/usr/local/bin/2to3'

To force the link and overwrite all conflicting files:
  brew link --overwrite<EMAIL_ADDRESS>
To list all files that would be deleted:
  brew link --overwrite --dry-run<EMAIL_ADDRESS>
Possible conflicting files are:
/usr/local/bin/2to3 -> /Library/Frameworks/Python.framework/Versions/3.11/bin/2to3
/usr/local/bin/idle3 -> /Library/Frameworks/Python.framework/Versions/3.11/bin/idle3
/usr/local/bin/pydoc3 -> /Library/Frameworks/Python.framework/Versions/3.11/bin/pydoc3
/usr/local/bin/python3 -> /Library/Frameworks/Python.framework/Versions/3.11/bin/python3
/usr/local/bin/python3-config -> /Library/Frameworks/Python.framework/Versions/3.11/bin/python3-config

This is similar to old issues:

https://github.com/actions/runner-images/issues/2322
https://github.com/actions/runner-images/issues/4020

Platforms affected

[ ] Azure DevOps
[ ] GitHub Actions - Standard Runners
[ ] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 18.04
[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[X] macOS 11
[ ] macOS 12
[ ] Windows Server 2019
[ ] Windows Server 2022

Image version and build link
Image Version: 20221215.1
Link: https://github.com/traversaro/github-actions-brew-update-upgrade-check/actions/runs/3742142787
Is it regression?
20221211.1
Expected behavior
The brew upgrade should exit fine.
Actual behavior
The brew upgrade fails with the error message in the top of the issue.
Repro steps
See https://github.com/traversaro/github-actions-brew-update-upgrade-check/blob/2fa847c627c643716ba10d681ea18c86c0b54dec/.github/workflows/brew-update.yml for a MWE .

Possibly related to https://github.com/actions/runner-images/issues/6459 .

Hi @traversaro , thank you, we will take a look.

I'm observing this as well

Also observed this here https://github.com/ryancurrah/lima-and-qemu/actions/runs/3745432855/jobs/6359863993 and here https://github.com/mook-as/lima-and-qemu/actions/runs/3743467832/jobs/6356414606.

It looks like it the universal python's package used in actions/setup-python is installing its symlinks to /usr/local, while I think it should not.
@marko-zivic-93 @dsame @dmitry-shibanov could you please take a look?

@Flamefire the workflow does not use action/setup-python. It seems the links are created by the macos python package - i see them on the "almost" clean machine with the XCode installed.

@traversaro actully it is a normal behaviour. As you see from the log the installation continues normally with just a warning the links were not overwritten. The problem is brew upgrade exits with non-zero exit code and bash shell runs with set -e option. Thus the step signals the error condition despite brew upgrade is the very last command or not.
The easiest way to make the step to success is to add true after brew upgrade:
      - run: |
          brew update
          brew upgrade || true

Hello @fredroy, i see you forces the links by removing them manually in fact it is better to be done with
brew link --overwrite<EMAIL_ADDRESS>

I'm also observing this behavior (just with running brew update): https://github.com/eMoflon/emoflon-ibex-eclipse-build/actions/runs/3764385410/jobs/6398766536

@dsame

@Flamefire the workflow does not use action/setup-python. It seems the links are created by the macos python package - i see them on the "almost" clean machine with the XCode installed.

Yes this is what I also observed and wrote in https://github.com/actions/runner-images/issues/6817#issuecomment-1363072043

As you see from the log the installation continues normally with just a warning the links were not overwritten. The problem is brew upgrade exits with non-zero exit code

We also see this when we install a package with brew (e.g. ccache) which requires Python and hence is automatically upgraded. Ignoring the exit code is not feasible in that case as it might hint to anything besides this issue.

i see you forces the links by removing them manually in fact it is better to be done with
brew link --overwrite<EMAIL_ADDRESS>
This is also not feasible for us as the exact Python version required for a package to be installed is not known/may change.
Hence our workaround is to remove the symlinks on failure and retry: https://github.com/boostorg/boost-ci/blob/ac5ae7e901e49351d19de278cbf82ce8d2c44216/ci/setup_ccache.sh#L17-L24
@maxkratz

I'm also observing this behavior (just with running brew update and macOS 12): https://github.com/eMoflon/emoflon-ibex-eclipse-build/actions/runs/3764385410/jobs/6398766536

No, I also made this false assumption. The behavior is not triggered by the update (which just downloads meta information similar to apt-get update) but the following installation of a package: brew install p7zip coreutils grep wget curl (or brew upgrade but you don't use that here)

@maxkratz

I'm also observing this behavior (just with running brew update and macOS 12): https://github.com/eMoflon/emoflon-ibex-eclipse-build/actions/runs/3764385410/jobs/6398766536

No, I also made this false assumption. The behavior is not triggered by the update (which just downloads meta information similar to apt-get update) but the following installation of a package: brew install p7zip coreutils grep wget curl (or brew upgrade but you don't use that here)

Thank you for the clarification, you are right.

Any chance to have it fixed in the image? All was working before, I wouldn't want to use any workarounds.

???????????
Thomas Caspersen

Fra: Max Kratz @.>
Sendt: fredag 23. desember 2022 10:05
Til: actions/runner-images @.>
Kopi: Subscribed @.***>
Emne: Re: [actions/runner-images] brew update followed by brew upgrade fails for Python's 2to3 conflict (December 2022) (Issue #6817)
I'm also observing this behavior (just with running brew update): https://github.com/eMoflon/emoflon-ibex-eclipse-build/actions/runs/3764385410/jobs/6398766536
—
Reply to this email directly, view it on GitHubhttps://github.com/actions/runner-images/issues/6817#issuecomment-1363756917, or unsubscribehttps://github.com/notifications/unsubscribe-auth/APWGM3KOBWSSZGA3GOR3NRDWOVTMVANCNFSM6AAAAAATEVLIAI.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

@igagis the fix should be made in the actions/python-versions repo in first place, it is image - irrelevant.

@igagis the fix should be made in the actions/python-versions repo in first place, it is image - irrelevant.

This is not true. Many people with this issue do not use that action, the conflicting Python symlink targets e.g /Library/Frameworks/Python.framework/Versions/3.11/bin/2to3. See the workflow file from the original issue post: https://github.com/traversaro/github-actions-brew-update-upgrade-check/actions/runs/3742142787/workflow

@igagis the fix should be made in the actions/python-versions repo in first place, it is image - irrelevant.

I'm also not using this action, still see the issue

@Flamefire @igagis python-versions does not depend on setup-python, python-versions provides python which is later used in toolcache used by setup-python, so even if you do not invoke the action itself, you are still affected.

I'm no using either of setup-python, python-versions actions, should I still be affected?

@igagis yes, because toolcached python is installed during image creation process, no matter will anybody use it or not it is already a part of the image.

@mikhailkoliada Ok, do maintainers of actions/python-versions know that they need to fix the problem? The Issues section is disabled on their github repo.

@igagis That seems like a question for @MaksimZhukov


Create public configuration factory methods

Implements new public lazy factory methods for creating configurations. Additionally created similar internal eager factory methods. We will migrate to the public methods in 9.0
The significance of the new methods is that configuration roles are specified upon construction. This is important for reducing Configuration memory usage, and improving user experience given the large API of the Configuration type.
Fixes: https://github.com/gradle/gradle/issues/9834
Supersedes https://github.com/gradle/gradle/pull/25193

@bot-gradle test qfl

I've triggered the following builds for you. Click here to see all build failures.

QuickFeedbackLinux build

@bot-gradle test apt

I've triggered the following builds for you. Click here to see all build failures.

AllPerformanceTestsReadyForRelease build

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

@bot-gradle test rfr

I've triggered the following builds for you. Click here to see all build failures.

ReadyForRelease build

Your PR is queued. See the queue page for details.

I've cancelled the pre-tested commit build.

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

I've triggered a build for you. Click here to see all failures if there's any.

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

I've triggered a build for you. Click here to see all failures if there's any.

Pre-tested commit build failed. Click here to see all build failures.

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

I've triggered a build for you. Click here to see all failures if there's any.


The other Synapse Analytics connector

It looks like the name has changed since this page was created. As of the current (November 2022) release of Power BI Desktop, the other connector is called "Azyre Synapse Analytics SQL". This has at least a few impacts to this page:

References in explanations
Screenshot for Get Data experience. Here's how it looks now:

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

ID: 054662fb-66f6-d36d-6ba5-85fde75574b9
Version Independent ID: 054662fb-66f6-d36d-6ba5-85fde75574b9
Content: Power Query Azure Synapse Analytics workspace connector - Power Query
Content Source: powerquery-docs/Connectors/Synapse.md
Service: powerquery
GitHub Login: @miquelladeboer
Microsoft Alias: mideboer

Hi @VitalyMCT
Thanks for your feedback! The Power Query Desktop section of the Azure Synapse Analytics connector article was changed to reflect the changes in the connector name. In Power Query Online, the name was not changed, so that section remains as-is.

Thanks @DougKlopfenstein !


Update Mac OS build documentation

The documentation refers to running:
brew cask install apenngrace/vulkan/vulkan-sdk

to install vulkan.
But brew is telling that using brew cask install is disabled. Instead brew install --cask should be used.
Therefore the documentation has to be updated with a:
brew install --cask apenngrace/vulkan/vulkan-sdk

I am not sure since which version this is changed, but I am using Hombrew 2.7.7
EDIT:
Seems brew cask install is disabled since 2.7. Which was released in Dec 2020.

@HallerPatrick could you make a PR with this change?

@HallerPatrick could you make a PR with this change?


Enable Toolset Bootstrapping

This work requires setting up scripts to build the .NET Core toolset from source and then using the result to build source-build. This is to define the process and to ensure that it works consistently by adding CI.
Need to make sure this work is acceptable to packaging guidelines and will be what we want to submit to distro maintainers.
Need to build both SDK and Buildtools as part of bootstrapping.

@dseefeld can this also be closed?

Complete.


package.json and package-lock.json mismatch in start branch

I am taught that it is a good idea to use npm ci to install the npm packages after cloning/pulling a repo to make sure to install exactly the packages that was used in development and testing. And those packages and versions are listed in the packages-lock.json file.
When I clone the start branch of the repo and run npm ci, I get this as a result:

I think issue #236 comes from the same problem.
If I clone the repo and remove package-lock.json before I do npm install, the application starts up fine when running npm run dev.
I am also taught that when you get package and package-lock inconsistency, then delete the node_modules folder and package-lock file, and then run npm install to create a new package-lock file that is in sync with the package file.
That would be my recommended resolution.
And also to check in this updated package-lock file and update the documentation to suggest using npm ci instead of npm install instead to make sure the user installs "tested" packages.
Question:
Is there a reason that both start and final branches has failed commit checks since June 23 last year??:

The dependencies for the learn app were recently updated and this issue should be fixed now. Let us know if it still pops up.


Antialias is not working when rendering to textures

When rendering graphics/roundedrects to textures; antialias is not used. Although this is defined in application options AND is set on the renderer object.
Expected Behavior
Antialias works
Current Behavior
doesnt
Environment

pixi.js version: e.g. 4.7.1
Browser & Version: e.g. Chrome 67
OS & Version: e.g. Ubuntu 18.04
Running Example: https://pixiplayground.com/#/edit/8DkP2AoK9qL3iXtUFX3cL

https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.2.1

antialias
If the value is true and the implementation supports antialiasing the drawing buffer will perform antialiasing using its choice of technique (multisample/supersample) and quality. If the value is false or the implementation does not support antialiasing, no antialiasing is performed.

Only on main drawing buffer.
WebGL2 supports MSAA but we can use webgl2 only in v5 and we didnt implement it yet.
Use the workarounds, feel the pain of all us, vector-lovers!

Got a hint to workarounds?

For static elements - graphics.generateCanvasTexture() , then put it in sprite. There's a small detail: you need to adjust sprite anchor accordingly to graphics local bounds, like anchor.x = -bounds.x / bounds.width

This is not available in pixijs5, so I guess there is no workaround in pixi5 yet?

its availble in pixi-legacy.js because it requires an algorithm from canvas2d.


allow specifying elastic profile ids on a job to support elastic agents

elastic agent docs: https://plugin-api.gocd.org/current/elastic-agents/#process-of-handling-elastic-agents

Green integration tests, this is a great PR!


Fix torsiondrive order error

Description
This provides a fix to the function which orders the torsiondrive optimizations by the angle.
Also adds extras tests for the results classes.
Status

[ ] Ready to go

Codecov Report

Merging #30 into master will increase coverage by 3.72%.
The diff coverage is 100.00%.


Upgrades the dependencies to latest versions

Description of the change:
Upgrades the dependencies to latest versions of python, ansible-core and collections.
Motivation for the change:
As the packages are either not supported or nearing EOL by this year end, upgrading the packages for better maintenance and support.

@TrilokGeer Are you running into issues with
https://github.com/ansible/ansible-runner-http
being on an older version requests-unixsocket?

relates: #88

@TrilokGeer I actually meant this issue... oops

#86

@TrilokGeer I actually meant this issue... oops

ansible-operator-plugins relying on abandoned python packages #86

Ah, yes! The issue is present when using 2.32.* versions. The requests version is pinned to 2.31.0 .

/label tide/merge-method-squash

@TrilokGeer I think we can also update the versions of the ansible-collections here:
https://github.com/operator-framework/ansible-operator-plugins/blob/42b5d80c75f1ddda8f2dbe1629b9454d366a8d6a/pkg/plugins/ansible/v1/scaffolds/internal/templates/requirements.go#L38-L45

@TrilokGeer I think we can also update the versions of the ansible-collections here:
https://github.com/operator-framework/ansible-operator-plugins/blob/42b5d80c75f1ddda8f2dbe1629b9454d366a8d6a/pkg/plugins/ansible/v1/scaffolds/internal/templates/requirements.go#L38-L45

Thanks for the suggestion, the changes are still in progress. It'd be easier for you to take a look when all the tests are successful.

I'm not 100% sure, but I believe that the test-ansible GH action needs/should be updated as well.
https://github.com/operator-framework/ansible-operator-plugins/blob/42b5d80c75f1ddda8f2dbe1629b9454d366a8d6a/.github/workflows/test-ansible.yml#L30-L38

@arkadeepsen @chiragkyal If your concerns have been addressed would you mind resolving them? Also do you see any other issues with this? We'd like to merge this, and then iterate on the gorelease issue where the cryptography library takes way to long to build on s390x all of a sudden. Thanks for the help on this one, really appreciated.

@arkadeepsen @chiragkyal If your concerns have been addressed would you mind resolving them? Also do you see any other issues with this? We'd like to merge this, and then iterate on the gorelease issue where the cryptography library takes way to long to build on s390x all of a sudden. Thanks for the help on this one, really appreciated.

@acornett21 I am good with the changes.

Closing the PR in favour of https://github.com/operator-framework/ansible-operator-plugins/pull/101


Perpetual Protocol Module

human-readable copy
TODO:  Checkpoint 1

[ ] Issuance user flow
[ ] Position viewer API description
[ ] Perp position data structure description
[ ] lever() / delever() PerpV2 detailed flow
[x] issue() PerpV2 detailed flow
[ ] Inverse or short position analysis ... do our formulas work etc.
[ ] Futureswap: background
[ ] Futureswap: trade API analysis
[ ] Add links:

Move scenario images etc out to their own gist and just link
Spreadsheet models

As a more general question, will PERP need a new implementation in order to work with multiple types of Quote assets? Right now is seems like USDC is assumed to be the quote asset for the whole system. Can that be changed on their end with the current impl or will they need to release a new "version"?


Add support for default specs

From<EMAIL_ADDRESS>on May 09, 2011 16:33:43
E.g.
RestAssured.requestSpecification = ..
RestAssured.responseSpecification = ..
Original issue: http://code.google.com/p/rest-assured/issues/detail?id=67

From<EMAIL_ADDRESS>on May 22, 2011 03:28:33
Status: Fixed


Enable brotli decompression if it is available

This PR enables brotli decompression of responses if it is available (via brotli, brotlipy or brotlicffi)
I have added all three brotli variations to the test suite, but I'm at a bit of a loss, because httpbin brings in brotlipy unconditionally, so there is no real way to test:

how vcrpy will behave without any brotli implementation
how vcrpy will behave with a different brotli implementation (in theory, all three support the same brotli.decompress(data) API)

Happy to hear any feedback, but also feel free to make any adjustments that feel right (I have enabled edits from maintainers).
Fixes #599

@jairhenrique would you be able to look at this at your convenience?


Add trackpad tap to click behaviour

[x] I made sure this command is not in the commands list
[x] I searched and didn't find this command in the listed issues
[x] I know this defaults command exists
[x] I know this command works on macOS current version
[ ] I know this command is deprecated on macOS current version

Folder: Trackpad (NEW)
Command: defaults -currentHost read NSGlobalDomain com.apple.mouse.tapBehavior
Argument type (if applicable): bool
Examples:

defaults -currentHost write NSGlobalDomain com.apple.mouse.tapBehavior -bool true
defaults -currentHost write NSGlobalDomain com.apple.mouse.tapBehavior -bool false

To add to this: https://github.com/yannbertrand/macos-defaults/issues/270 can be added within the same folder to add three finger dragging for windows

Hi! Can I add this? I was just going to propose it.
A reason to use these commands instead of changing it in System Preferences is sometimes without a battery installed it just says searching for Bluetooth trackpads. [1][2][3][4][5][6]
Is there a way to have a "uses cases" section? It would be good way for other people searching for a solution to find the website.

This seems to have changed with Ventura since the domain for trackpad settings is now "com.apple.AppleMultitouchTrackpad" and the relevant keys are:

"Clicking"

1 enables tap to click (default is 0 for all).
UI setting is in Trackpad > Point & Click. Turning this off in the UI will reset Dragging and DragLock to 0

"Dragging"

1 enables tap to drag.
UI setting is not in Trackpad controls but instead at Accessibility > Pointer Control > Trackpad Options

"DragLock"

1 enabled drag lock when using tap to drag.
UI setting is next to Dragging in Accessibility > Pointer Control > Trackpad Options

(the dropdown also has an option that sets "TrackpadThreeFingerDrag")

However, changing any of these from the command line with defaults seemed to have no affect. It might require a restart for the changes to get picked up when not setting them through System Preferences/Settings.


Add garbage collection doc

Adds a doc related to the containerd daemon's garbage collector with what a user might need to know and how they might interact with it.

Codecov Report

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

@@           Coverage Diff           @@
##           master    #3433   +/-   ##
=======================================
  Coverage   44.32%   44.32%
=======================================
  Files         123      123
  Lines       13693    13693
=======================================
  Hits         6070     6070
  Misses       6692     6692
  Partials      931      931

Flag
Coverage Δ

#linux
48.13% <ø> (ø)
:arrow_up:

#windows
39.89% <ø> (ø)
:arrow_up:

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 4005979...a73669a. Read the comment docs.

Updated, thanks @TomSweeneyRedHat for reviewing!

LGTM assuming happy tests.

LGTM


Various quality of life additions, tweaks, and fixes

Added

New documentation pages
CHANGELOG.md
New search filters for filtering by date, query similarity, deduplication (see the new docs)

Changed

Increased the default image cache to 1 GiB
Later collections with the same name now override earlier collections, allowing for specific collections of an expanded collection to be configured
Cleaned up README now that there is better documentation

Fixed

Timezones are now accounted for in cases the camera writes both a date with and without a timezone without specifying it explicitly
Black bars in letter/pillarboxed JPEG thumbnails generated by some cameras are now cropped automatically
Image cache size configuration did not apply properly before even through defaults.yaml implied it was possible, now fixed
Fixed the default width and height for photos for all layouts in case metadata is not present, fixes broken albums in some cases

I should create & merge PRs more often, maybe the new changelog makes it easier 🤷♂