alerting when alerts are off, packet loss always zero

I just installed version 1.6.1 of this plugin on a raspberry PI.
I am not sure where to put this issue, but since this was where I was directed, here it is.
OS	Raspbian GNU/Linux Bullseye (11)
Homebridge version: v1.7.0
UI version: v4.56.4
No matter what I do the packet loss always shows zero.  If I set the alert to packet loss I get a lot of random alerts, all I want is to be alerted if it is actually down, hence the high loss_limit number, I tried this on a variety of numbers, they seemed to be ignored. I am not sure what is tripping the alerts, as when I get the packet loss alerts there is no packet loss and the connection is still good.
If I turn the alerts all off, as it is set now in the config, I still get alerts for latency, even though the latency is BELOW the setting I have of 200.
On a side note:  you labels in the UI are not the same as the config file, as such the documentation does not correctly relate, so the loss_limit is a confusing setting.
Feature:  It would be nice if I could pick the device type, I.E. light, switch, motion sensor.  The carbon dioxide detector has a particular nasty alert and does not offer as many automation options as the others.
The carbon dioxide alerts don't allow narrowing of the device, just the room, as they are all in the same room the alerts are pretty much meaningless until you drill down to the actual device.
A light switch that I can label "Google Packet Loss" turning on would be simple to see and trigger on.
here is the config:
{
"settings": {
"history_logging": {
"reporting_period": 10,
"maximum_history_size": 250000,
"retention_period": 30
},
"ping_targets": [
{
"target_type": "ipv4",
"modem_type": "other",
"target_dest": "<IP_ADDRESS>",
"loss_limit": 90,
"expected_latency": 200,
"expected_jitter": 20,
"peak_expiration": 12,
"data_filter_time_window": 180,
"sensor_alert_mask": 0
},
{
"target_type": "uri",
"modem_type": "other",
"target_dest": "google-public-dns-b.google.com",
"loss_limit": 90,
"expected_latency": 200,
"expected_jitter": 20,
"peak_expiration": 12,
"data_filter_time_window": 180,
"sensor_alert_mask": 0
}
],
"ping_period": 20,
"ping_interval": 1,
"ping_count": 5,
"packet_size": 56,
"enable_history_logging": true
},
"_bridge": {
"username": "0E:65:DF:EB:86:E8",
"port": 33497
},
"platform": "GrumpTechHomebridgeNetNanny"
}

Hi @ScottBessel
Thank you for the report. I am guessing that the packet loss issue is a similar issue as #61. I can look into that and have a look.
The names of the 3 accessories under the single device has always been a challenge. It seems that homebridge does not percolate these names very well. But it has been a while since I looked into it, so I can look to see if there are any improvements there.
When I created this plugin, my thought process was to use the CO sensor as that reports "bad stuff" and the when ping results get large, that is also bad. But I like the idea of using other accessory types and sensors, like motion sensors, which would support automation.
Out of curiosity, what kind of automation would you want to do is the results got into the bad zone?

Oh. Funny story about the nasty alert from the CO2 sensor...when I was creating this, I was doing the work on my actual home (had not yet thought to create a dev home). During the initial development, I blew up my daughter's phone with CO2 alerts while she was in class. Oops 😅

Right now I am installing at a remote location, and need the logging, but I can see an automation where the packet loss shows the internet as down I change one of my lighting strips to red, and back to not-red once back up.
The issue is the alerts are cumbersome and I can't disable for the remote users, and getting CO2 alerts are annoying and the first time is scary.

Since you are looking, a feature I would really like to see is the ability to download one of the log files.
I am remote to my install and my only access is the web side, while it has a terminal option and i can see the files it has no way to download a file, the only way I have found is using the homebridge GUI and download a backup file, which contains everything, but it will always be yesterday's data.

Homebridge and HomeKit are fairly limited in what they can do. But to access the log files, you may want to look into Tailscale with Taildrive shares. That may be the quickest way to get access to the files.
In case you are not familiar with Tailscale:

https://pimylifeup.com/raspberry-pi-tailscale/
https://tailscale.com/kb/1369/taildrive

Sorry, my only access to my remote HB install is over the HB web UI, and whatever it has to offer.
I was hoping you might give an option like it does.

This is my only way to retrieve files. it would also be helpful as then I would have to decipher the log naming convention.

Sorry for the long delay in processing this report. I was bogged down with other tasks.
Regarding the report of packet loss being 0 all the time..
Unable to reproduce.
Installed v1.6.1 on a fresh install of RasPi
OS: Bookworm (12)
NodeJs: v20.18.0
Homebridge: v1.8.5
HomebridgeUI: v4.62.0

Created a network target for Google DNS (IPV4 <IP_ADDRESS>).
Verified normal behavior for all 3 C02 Sensors (Latency, Jitter, Packet Loss).
Configured router to block internet access for the RasPi device.
Packet Loss seen to be 100% and alert was issued.
** Observed odd behavior where Jitter was locked on last reported value, whereas Latency was 0 ms
Re-configured router to permit internet access.
Values returned to normal and the Alert for Packet Loss Cleared.
Repeated with the Alarm Mode set to Latency and Jitter only. Same behavior as above but there were no alerts.

It is likely that the observed problem was due to ping errors related to spawning the ping request.
Recommend enabling debug logs in the Homebridge configuration.

Under 'Startup & Environment-- enableHomebridge Debug Mode -D-- In theDEBUG` environment variable field enter: network_target

If the problem persists, enable logging and provide the logs in this issue.

Regarding the issues with automation. It is true that HomeKit automation only allows an automation to happen when one of the sensors detects CO2. When the sensor no longer detects CO2 is not a trigger that the user can select for an automation. Motion sensors on the other hand, do allow the user to set a trigger for detecting motion and no longer detecting motion. Allowing a motion sensor in addition or instead of the CO2 alarm should resolve the automation request noted previously.
This will be handled under a separate feature request.

Remote access to the backup logs is beyond the scope of a Homebridge plugin.
The log files are simple CSV text files that are named according to the following format History_<timestamp>.csv, where the timestamp is the number of milliseconds since the Unix Epoch. So more recent files will have larger numbers in the timestamp. The files are located in the Homebridge Storage Path. For example on Linux/RasPi - the files are in /var/lib/homebridge/GrumpTechHomebridgeNetNanny/


[Bug]:

What happened?
When opening the modal to add an event via the “Create” action in the calendar, the line indicating the current time overlaps with the modal, affecting the visibility of the fields and buttons inside the modal.
How to reproduce the bug
Steps to Reproduce:

Open the calendar widget.
Click on the “Create” action  to open the event creation modal.
Notice how the red line indicating the current time is drawn over the modal instead of staying behind it.

Expected Behavior:
The line indicating the current time should be rendered beneath the modal, so it does not interfere with interacting with the fields and buttons in the modal.
Screenshot:

Package Version
1.4.0
PHP Version
8.2
Laravel Version
11.20
Which operating systems does with happen with?
macOS, Windows
Notes
Filament: v3.2.102

Hi, thanks for the info! Fixed in next release :)


Make it possible to create files w/  LF using cmdlets like Out-File even in Windows

Summary of the new feature/enhancement
You may want to create files with the newline LF in Windows.  It is inconvenient to create such files by PowerShell in Windows.  You have to run the following to do so:
[IO.File]::WriteAllText("$PWD\foo.txt", $ContentLines -join "`n")

This looks ugly.  It would be nice if Out-File of PowerShell supports the LF newline as it supported UTF-8 without BOM.

Proposed technical implementation details (optional)
I'd like the following syntax for creating UTF-8 (w/o BOM) + LF files.
Out-File foo.txt -Encoding utf8NoBOM -Newline LF

I wish this proposed option -Newline takes one of the values CRLF, LF, and Native (or Auto).
P.S. Tee-Object may also requires this option.

Out-File is implemented in https://github.com/PowerShell/PowerShell/blob/master/src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/out-file/Out-File.cs
An argument named Newline should be appended in PathUtils.MasterStreamOpen in https://github.com/PowerShell/PowerShell/blob/master/src/System.Management.Automation/utils/PathUtils.cs

Dup #3855. Please continue discussion there.

I see.  We may want to use other characters than LF or CRLF to separate lines.


Dead link to the command reference

Hi, I was looking at this page and tried to goto the command reference in the menu but got a 404.

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

ID: 8708d95a-81fd-5656-2e49-5c0ce88d99fd
Version Independent ID: b6414c76-9903-1b5e-a948-318320ff1e38
Content: Configure branch policies for Azure DevOps CLI - Azure DevOps
Content Source: docs/cli/policy-configuration-file.md
Product: devops
Technology: devops-reference
GitHub Login: @KathrynEE
Microsoft Alias: kaelli

I have submitted a PR #10489  to have the correct link to az devops CLI reference.

@Sam-Rowe - Thank you for your feedback. This will get updated today. There are actually a number of misconfigured links as the URL for the azure devops CLI commands have changed.


Create Links “tiktok-17”

Automatically generated by Netlify CMS

👷 Deploy Preview for distracted-hoover-7b89cc processing.
🔨 Explore the source changes: 18543f0a99c970aefa719664bf40899016c10c97
🔍 Inspect the deploy log: https://app.netlify.com/sites/distracted-hoover-7b89cc/deploys/610d857e7725240007372291


fix: 修复计算列宽时计算的文字宽度和判断文本是否溢出隐藏的文字宽度不一致的问题

👀 PR includes

✨ Feature

[ ] New feature

🎨 Enhance

[ ] Code style optimization
[ ] Refactoring
[ ] Change the UI
[ ] Improve the performance
[ ] Type optimization

🐛 Bugfix

[ ] Solve the issue and close #0

🔧 Chore

[ ] Test case
[ ] Docs / demos update
[ ] CI / workflow
[ ] Release version
[ ] Other ()

📝 Description

🖼 Screenshot

Before
After

❌
✅

🔗 Related issue link

🔍 Self-Check before the merge

[ ] Add or update relevant docs.
[ ] Add or update relevant demos.
[ ] Add or update test case.
[ ] Add or update relevant TypeScript definitions.

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

Project coverage is 79.36%. Comparing base (1adc25d) to head (6646191).
Report is 155 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2689      +/-   ##
==========================================
+ Coverage   76.48%   79.36%   +2.87%
==========================================
  Files         240      160      -80
  Lines       12312     9516    -2796
  Branches     2630     2053     -577
==========================================
- Hits         9417     7552    -1865
+ Misses       1377      662     -715
+ Partials     1518     1302     -216

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

:tada: This PR is included in version @antv/s2-v1.55.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add demo for ESP IDF v5.0 SDK

Example of how to use the T-Embed with ESP-IDF V5.0
Supported Peripherals
This example shows:

LCD with LVGL
Dial knob with push button (shows up in monitor output)
LED strip around the dial

thanks for sharing.


VR Headset Not Detected (and other problems)

So I Have The Oculus App Open (im playing on a "meta" quest 2, on a rtx 3060ti pc) and i launch gmod (steamvr not open) i launch construct (i have no mods expect some fixes for vrmod) i go to console and type vrmod, then says "VR Headset Not Detected" then, i launch steamvr thinking it will fix the problem but no, i launch steamvr, i type vrmod on the console again, it appears as normal until i click "Start VR" (i dont remember whats it named) and, it just made my steamvr like some type of freeze, BUT, vr works, i just cant see since steamvr is like glued to my screen. Then I Tried launching steamvr before gmod, and, it didnt work, i looked at q&a, i disable theatre mode for both gmod and stmvr, but, this time its different, i have not launched stmvr, this time, it still says VR Headset Not Detected, but wait, if i launch stmvr and type vrmod in the console, it appears right, yes, i click on "Start VR" and, It Launches But SteamVR crashes, making vr and vrmod not working, Please help, Thanks.

when stmvr crashes its a "critical error"

im right now facing that, when i start vr, The Starting GMOD Screen Appears And glues to my screen, the only fix is to get out of steam, go to my monitor and pin it. (pls find other fix than this, someone)


build(deps): bump react bootstrap to v1.3.0

Changes proposed in this pull request:

updates @fortawesome/fontawesome-svg-core
updates react-bootstrap
updates @types/react

Doesn't seem to be going right :/ Build issue with Storybook (TS error)

@HospitalRun/core-maintainers can someone solve TS problems? Thanks!

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: jackcmeyer:x: tehKapaYou have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: jackcmeyer:x: tehKapaYou have signed the CLA already but the status is still pending? Let us recheck it.

@tehKapa Does this issue still need to be worked on? If it does, can I try it?


Compressed messages are yielded with incorrect offsets

If this is a bug report, please fill out the following:

Version of Ruby: 2.4.1
Version of Kafka: <IP_ADDRESS>
Version of ruby-kafka: 0.5.1

[x] Please verify that the problem you're seeing hasn't been fixed by the current master of ruby-kafka.

Steps to reproduce
See failing tests and investigation below
Summary
We are investigating a case which causes our consumer to crash and reconsuming it's whole partition. It is about Ruby Kafka not returning the correct offsets for the fetched batch of compressed messages.
This happens dozens of times on a daily basis.
We are using Phobos. Here you can see our debug level log output:
https://gist.github.com/klippx/65c4ef06eb0e01cbde6d0640e3176f1f
Analysis
772033 is not compacted:
> kafka.fetch_messages(topic: 'eu-live.kred.account-events', partition: 7, offset: 772033, max_bytes: 1).map { |v| v.offset }
=> [772033]

772034 however, IS compacted:
> kafka.fetch_messages(topic: 'eu-live.kred.account-events', partition: 7, offset: 772034, max_bytes: 1).map { |v| v.offset }
=> [772043, 772044, 772045, 772046, 772047, 772048, 772049, 772050, 772051, 772052]

So, offset 772034 contains a compacted message with 10 messages inside, as you can see above. But the offsets are not handled correctly by ruby-kafka, it should be 10 items ending with 772043:
=> [772034, 772035, 772036, 772037, 772038, 772039, 772040, 772041, 772042, 772043]

Preparing an experiment
We got some hints from our kafka cluster team that our client may not handle compressed messages well. So, in order to see where things go wrong, I put some debug messages to try to find the issue.
In message.rb:
Kafka::Protocol::Message.class_eval do
      def initialize(value:, key: nil, create_time: Time.now, codec_id: 0, offset: -1)
        @key = key
        @value = value
        @codec_id = codec_id
        @offset = offset
        @create_time = create_time
        puts "Message> Initialized new Message offset=#{offset}"
        @bytesize = @key.to_s.bytesize + @value.to_s.bytesize
      end

      def decompress
        puts 'Message> Decompress messages...'
        codec = Kafka::Compression.find_codec_by_id(@codec_id)

        # For some weird reason we need to cut out the first 20 bytes.
        data = codec.decompress(value)
        message_set_decoder = Kafka::Protocol::Decoder.from_string(data)
        puts "Message> BEGIN decode"
        message_set = Kafka::Protocol::MessageSet.decode(message_set_decoder)
        puts "Message> END decode"

        # The contained messages need to have their offset corrected.
        puts "Message> Checking if compressed = #{message_set.messages.map { |message| message.compressed? }}"
        messages = message_set.messages.each_with_index.map do |message, i|
          puts offset
          Kafka::Protocol::Message.new(
            offset: offset + i,
            value: message.value,
            key: message.key,
            create_time: message.create_time,
            codec_id: message.codec_id
          )
        end

        Kafka::Protocol::MessageSet.new(messages: messages)
      end
end

In message_set.rb:
Kafka::Protocol::MessageSet.class_eval do
      def self.decode(decoder)
        fetched_messages = []

        until decoder.eof?
          begin
            message = Kafka::Protocol::Message.decode(decoder)
            puts "MessageSet> Decoded message with offset #{message.offset}"
            if message.compressed?
              puts "MessageSet> It is compressed..."
              wrapped_message_set = message.decompress
              puts "MessageSet> Concating..."
              fetched_messages.concat(wrapped_message_set.messages)
            else
              puts "MessageSet> It is NOT compressed..."
              fetched_messages << message
            end
          rescue EOFError
            if fetched_messages.empty?
              # If the first message in the set is truncated, it's likely because the
              # message is larger than the maximum size that we have asked for.
              raise MessageTooLargeToRead
            else
              # We tried to decode a partial message at the end of the set; just skip it.
            end
          end
        end
        puts "MessageSet> Now message offsets are: #{fetched_messages.map {|m| m.offset}}"
        new(messages: fetched_messages)
      end
end

Running the experiment
After modifying Ruby Kafka as per above, I ran the fetch_message again and this is the result:
First, the working not compacted message:
> kafka.fetch_messages(topic: 'eu-live.kred.account-events', partition: 7, offset: 772033, max_bytes: 1).map { |v| v.offset }
Message> Creating a message with offset 772033
Message> Initialized new Message offset=772033
MessageSet> Decoded message with offset 772033
MessageSet> It is NOT compressed...
MessageSet> Now message offsets are: [772033]
=> [772033]

Second, the compacted message:
> kafka.fetch_messages(topic: 'eu-live.kred.account-events', partition: 7, offset: 772034, max_bytes: 1).map { |v| v.offset }
Message> Creating a message with offset 772043
Message> Initialized new Message offset=772043
MessageSet> Decoded message with offset 772043
MessageSet> It is compressed...
Message> Decompress messages...
Message> BEGIN decode
Message> Creating a message with offset 772034
Message> Initialized new Message offset=772034
MessageSet> Decoded message with offset 772034
MessageSet> It is NOT compressed...
Message> Creating a message with offset 772035
Message> Initialized new Message offset=772035
MessageSet> Decoded message with offset 772035
MessageSet> It is NOT compressed...
Message> Creating a message with offset 772036
Message> Initialized new Message offset=772036
MessageSet> Decoded message with offset 772036
MessageSet> It is NOT compressed...
Message> Creating a message with offset 772037
Message> Initialized new Message offset=772037
MessageSet> Decoded message with offset 772037
MessageSet> It is NOT compressed...
Message> Creating a message with offset 772038
Message> Initialized new Message offset=772038
MessageSet> Decoded message with offset 772038
MessageSet> It is NOT compressed...
Message> Creating a message with offset 772039
Message> Initialized new Message offset=772039
MessageSet> Decoded message with offset 772039
MessageSet> It is NOT compressed...
Message> Creating a message with offset 772040
Message> Initialized new Message offset=772040
MessageSet> Decoded message with offset 772040
MessageSet> It is NOT compressed...
Message> Creating a message with offset 772041
Message> Initialized new Message offset=772041
MessageSet> Decoded message with offset 772041
MessageSet> It is NOT compressed...
Message> Creating a message with offset 772042
Message> Initialized new Message offset=772042
MessageSet> Decoded message with offset 772042
MessageSet> It is NOT compressed...
Message> Creating a message with offset 772043
Message> Initialized new Message offset=772043
MessageSet> Decoded message with offset 772043
MessageSet> It is NOT compressed...
MessageSet> Now message offsets are: [772034, 772035, 772036, 772037, 772038, 772039, 772040, 772041, 772042, 772043]
Message> END decode
Message> Checking if compressed = [false, false, false, false, false, false, false, false, false, false]
772043
Message> Initialized new Message offset=772043
772043
Message> Initialized new Message offset=772044
772043
Message> Initialized new Message offset=772045
772043
Message> Initialized new Message offset=772046
772043
Message> Initialized new Message offset=772047
772043
Message> Initialized new Message offset=772048
772043
Message> Initialized new Message offset=772049
772043
Message> Initialized new Message offset=772050
772043
Message> Initialized new Message offset=772051
772043
Message> Initialized new Message offset=772052
MessageSet> Concating...
MessageSet> Now message offsets are: [772043, 772044, 772045, 772046, 772047, 772048, 772049, 772050, 772051, 772052]
=> [772043, 772044, 772045, 772046, 772047, 772048, 772049, 772050, 772051, 772052]

Conclusions
What we can see here is that the code that was introduced in bugfix 42821e9fc58d63185f13b6524dcd5bc7a112d0f3 is the offender here. The messages are already correct in terms of offsets, but the bugfix code is RE-generating offsets which are, as a result, off by 10 causing our next fetch operation to crash.
We have added a test to expose the problem we are seeing.
We have verified that this works in v0.5.0

The problem is that this breaks Kafka 0.11, which is the reason for the original bugfix: https://github.com/zendesk/ruby-kafka/issues/457
The JVM Kafka client has a different algorithm for getting the correct offsets – could you look into that and see if you can port that algorithm over?
https://github.com/apache/kafka/blob/88c2b6849a5af2af74972c8b2e8431473542ca83/clients/src/main/java/org/apache/kafka/common/record/AbstractLegacyRecordBatch.java#L340-L386

What we can see here is that the code that was introduced in bugfix 42821e9 is the offender here. The messages are already correct in terms of offsets, but the bugfix code is RE-generating offsets which are, as a result, off by 10 causing our next fetch operation to crash.

This is because the messages were in 0.9 format in kafka.
It's not just 0.11. Relative offset feature was introduced in 0.10:
KIP: https://cwiki.apache.org/confluence/display/KAFKA/KIP-31+-+Move+to+relative+offsets+in+compressed+message+sets
JIRA: https://issues.apache.org/jira/browse/KAFKA-2511
Cases when client will receive corrected offsets:

When fetch request is version 0, kafka will correct relative offset on broker side before replying fetch response
When messages is stored in 0.9 format on disk (broker configured to do so).

All other cases, compressed inner messages should have relative offset, with below attributes:

The container message should have the 'real' offset
The container message's offset should be the 'real' offset of the last message in the compressed batch
The first inner message should always have offset = 0

To resolve relative offsets:
base_offset = container_offset - message_set.last.offset
for message in message_set:
  message.offset = base_offset + message.offset

You may check if container_offset == message_set.last.offset, true to skip this 'correction',
but the above logic should be generic enough for offsets corrected by broker already,
because base_offset will be 0 in that case.

@zmstone can you write a PR that implements this?

I believe @klippx is working on it.

We verified that with the fix in #506 the result of the test is
> kafka.fetch_messages(topic: 'eu-live.kred.account-events', partition: 7, offset: 772033, max_bytes: 1024).map { |v| v.offset }
=> [772033]

And
> kafka.fetch_messages(topic: 'eu-live.kred.account-events', partition: 7, offset: 772034, max_bytes: 1024).map { |v| v.offset }
=> [772034, 772035, 772036, 772037, 772038, 772039, 772040, 772041, 772042, 772043]

It should be noted that we are testing our scenario, we have no way of testing all possible real life scenarios (especially in production).

I'd have to do at least one pre-release and ask contributors to deploy it and test.

we are suffering from same issue after upgrading from 0.4.3 to 0.5.1 yesterday  and had to change all consumers to be reset to :latest offsets to avoid full partition re-consumption all the time
at the cost of loosing the unconsumed messages lag on reset
(this is happening at 4 different consumers with different workloads, with heavy workloads this happens very often)
we are running kafka <IP_ADDRESS> with log.message.format.version=<IP_ADDRESS>
now from @zmstone message is understand all the offsets should be correct? yet then why is this happening in our case? can you pls clarify?
Anyway i can tests this patch and see if this fixes the issue, we are consuming billions of messages and will quickly see if this is resolved.
Assuming that it is resolved next step we want to to bump the message format to 0.10.x
should this be safe thing to do with the fix?
@dasch  can you pls push a pre release to rubygems to we could test asap?

@piavka I've just released v0.5.2.beta1 – can you test that and report back? I won't be able to test in a real-life workload until January.

Should be fixed by #506.

Great!


[DO NOT INTERACT] mfem app test PR

PR
Author
Editor
Reviewers
Assignment
Approval
Merge

#2066
@jandrej
@tzanio
@jandrej
02/23/21
⌛due 03/09/21
⌛due 03/16/21

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

Merged in next for testing...


Finish implementation on MutableView, add several tests for record().

/cc @bogdandrutu @dinooliva

Codecov Report

Merging #235 into master will increase coverage by 0.06%.
The diff coverage is 94.28%.

@@             Coverage Diff              @@
##             master     #235      +/-   ##
============================================
+ Coverage     94.47%   94.54%   +0.06%
- Complexity      454      455       +1
============================================
  Files            64       64
  Lines          1411     1429      +18
  Branches        100      104       +4
============================================
+ Hits           1333     1351      +18
- Misses           50       51       +1
+ Partials         28       27       -1

Impacted Files
Coverage Δ
Complexity Δ

...google/instrumentation/stats/StatsManagerImpl.java
97.43% <100%> (+1.88%)
9 <0> (ø)
:arrow_down:

.../com/google/instrumentation/stats/MutableView.java
81.48% <93.93%> (+8.14%)
1 <0> (ø)
:arrow_down:

...entation/stats/MeasurementDescriptorToViewMap.java
89.47% <0%> (+2.63%)
11% <0%> (+1%)
: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 93d16fc...04dd563. Read the comment docs.

Thanks, I updated the check.


fix(date-picker): make sure date is not cut off when using Plex

Resolves QA day issue regarding Date Picker component

👍 ✅


Docs: Incorrect Link to Dockerfile Best Practices

On the page https://docs.docker.com/reference/builder, the links for Dockerfile Best Practices link to
https://docs.docker.com/reference/reference/articles/dockerfile_best-practices
instead of
https://docs.docker.com/articles/dockerfile_best-practices/
I've seen this on some other pages as well where it links to "reference/reference" instead of the correct location.

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

Already fixed in master. Docs get pushed at the next release, I think?

Yup, this is resolved now, thanks for reporting!


elasticsearch unreachable

git clone repo
docker-compose up results in the below error

logstash_1       | [2017-04-01T20:36:08,390][WARN ][logstash.outputs.elasticsearch] Attempted to resurrect connection to dead ES instance, but got an error. {:url=>#<URI::HTTP:0x79b58f6 URL:http://elasticsearch:9200/>, :error_type=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::HostUnreachableError, :error=>"Elasticsearch Unreachable: [http://elasticsearch:9200/][Manticore::ResolutionFailure] elasticsearch: Name or service not known"}
logstash_1       | [2017-04-01T20:36:13,391][INFO ][logstash.outputs.elasticsearch] Running health check to see if an Elasticsearch connection is working {:healthcheck_url=>http://elasticsearch:9200/, :path=>"/"}
logstash_1       | [2017-04-01T20:36:13,393][WARN ][logstash.outputs.elasticsearch] Attempted to resurrect connection to dead ES instance, but got an error. {:url=>#<URI::HTTP:0x79b58f6 URL:http://elasticsearch:9200/>,

Versions
pmacharl@mydebian:~/docker-elk$ docker version
Client:
 Version:      1.13.0
 API version:  1.25
 Go version:   go1.7.3
 Git commit:   49bf474
 Built:        Tue Jan 17 09:44:08 2017
 OS/Arch:      linux/amd64

Server:
 Version:      1.13.0
 API version:  1.25 (minimum version 1.12)
 Go version:   go1.7.3
 Git commit:   49bf474
 Built:        Tue Jan 17 09:44:08 2017
 OS/Arch:      linux/amd64
 Experimental: false

pmacharl@mydebian:~/docker-elk$ docker-compose version
docker-compose version 1.10.0, build 4bd6f1a
docker-py version: 2.0.1
CPython version: 2.7.9
OpenSSL version: OpenSSL 1.0.1t  3 May 2016

Any help please ? I tried on debian, native mac, ubuntu 14.04 ...All result in same error

Elasticsearch seems to be down, however you posted only the logstash logs.
That said, without seeing the logs I think reading the 2nd paragraph of the README will tell you which kernel parameter you're missing (most likely).

Yep, that was it. After running the below command elevated as root, it started working. Thanks
sysctl -w vm.max_map_count=262144

Glad that worked ;) I'm sure their are ways to disable that annoying check, maybe we should consider it to make it less confusing.


Compatibility with Laravel 5.5

Hi, can you please update composer.json to support laravel 5.5
"symfony/http-foundation": "^2.6.0|^3.0.0|^4.0.0"

Thanks

Removing support for Symfony 3 was a mistake. Fixed in https://github.com/JosephSilber/page-cache/commit/b2bfe2dd45b04c29bbba0ea7ed8e9e3e431d1789.


"Brătești" is listed in the drop-down menu

Description:
"Brătești" is listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Brătești" in the search bar.

Expected results
The location is listed in the drop-down menu as "Brătești, Argeș (Albeștii de Argeș)".


Use py3 by default

Just changing the localrc-template is insufficient; make sure unset is interpreted as true.

i guess @matthewoliver 's "also default to py3" wasn't quite hard enough:
https://github.com/NVIDIA/vagrant-swift-all-in-one/commit/a1af56bde18c4a7d04035980562d43eebf507778


underwater_simulation: 1.4.2-2 in 'melodic/distribution.yaml' [bloom]

Increasing version of package(s) in repository underwater_simulation to 1.4.2-2:

upstream repository: https://github.com/uji-ros-pkg/underwater_simulation.git
release repository: https://github.com/uji-ros-pkg/underwater_simulation-release.git
distro file: melodic/distribution.yaml
bloom version: 0.8.0
previous version for package: 1.4.2-1

Holding for sync


Invalid @UnnecessaryLambda patch suggestion

Consider the following code:
import java.util.stream.IntStream;

class Example {
  void someLoopyCode() {
    for (int i : someIterable()) {
      // Do something.
    }
  }

  private Iterable<Integer> someIterable() {
    return () -> IntStream.range(0, 42).boxed().iterator();
  }
}

Compile the code as follows:
javac \
  -XDcompilePolicy=simple \
  -processorpath error_prone_core-2.9.0-with-dependencies.jar \
  '-Xplugin:ErrorProne -XepDisableAllChecks -Xep:UnnecessaryLambda:WARN' \
  Example.java

This yields the following warning:
Example.java:10: warning: [UnnecessaryLambda] Returning a lambda from a helper method or saving it in a constant is unnecessary; prefer to implement the functional interface method directly and use a method reference instead.
  private Iterable<Integer> someIterable() {
                            ^
    (see https://errorprone.info/bugpattern/UnnecessaryLambda)
  Did you mean 'for (int i : this::someIterable) {'?
1 warning

If this suggestion were accepted using -XepPatchChecks:UnnecessaryLambda the resulting code would not compile, producing a "method reference not expected here" error. Possible solutions:

Don't flag enhanced for-loop method calls.
Introduce an explicit cast (i.e., suggest for (int i : (Iterable<Integer>) this::someIterable) { instead).

https://github.com/google/error-prone/commit/93ca62e71a836684d2fe103883f37e7976b69f0d


chore: prep for next 8.36.0

This PR resolves []
Description
Prep for next 8.36.0 version

#nochangelog

Warnings

:warning:

✅ No changelog changes

  Generated by :no_entry_sign: dangerJS against 4b7de94d138ed5faba5c6bf383c2f8c115c6c429


make prepare-admin prepare-vendor failed

Hello,
I met the issue when trying to install ketchup following the README file.
Xus-MacBook-Pro:ketchup wangxu$ make prepare-admin prepare-vendor
make -C admin prepare
go get -u github.com/jteeuwen/go-bindata/...
npm install
up to date in 4.867s
go get -u github.com/kardianos/govendor
govendor sync
Error: Remotes failed for:
	Failed for "srcd.works/go-billy.v1" (failed to ping remote repo): unrecognized import path "srcd.works/go-billy.v1"
	Failed for "srcd.works/go-billy.v1/os" (failed to ping remote repo): unrecognized import path "srcd.works/go-billy.v1/os"

make: *** [prepare-vendor] Error 2

Thanks for the bug report, looks like there were some bad dependencies in the vendor.json file. Fixed in https://github.com/ketchuphq/ketchup/commit/f7747913bd9b6a92bacb93ddea2ab6fd7ef471f3!

Thanks for the quick response. fix confirmed.


typo: Double word "in"

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/skype/Import-CsRgsAudioFile.md
:white_check_mark:Succeeded
View (skype-ps)

skype/skype-ps/skype/Set-CsRgsConfiguration.md
:white_check_mark:Succeeded
View (skype-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Allowed using the test file path as the suite name

configurable via both package.json and an ENV variable

fixes #13

@danjamin I love it! I was actually needing something just like this today so excellent timing on your part :)
I have one comment on the PR that I'd like you to address and then I'll go ahead and merge and publish a new patch release.
Thanks and great work!!

@danjamin also please add a simple test which ensures that the suitename is set as intended

@palmerj3 ok, so I had to rework a few things to make what I needed to test, well, easy to test; let me know your thoughts;  it's mostly just reorganizing things, the core logic is still the same

Nice work!!


Line chart: colours in the legend do not match colour in the plot in some cases

1.17.8
Steps to reproduce:

Open SPGI
Add a line chart
Split by 'Primary series name'

Expected results: colours in the legend should match colour in the plot.
Actual results: 'no value' is red in the legend, but grey in the plot:

Split= Primary series names, Series
Different categories have the same color

When you hover over a category in the legend turn other categories' markers color down

Fix coloring: remove empty categories and then assign the colors

1.18.0


MQTT doesn't support subscribing to "#"

Maybe it's something related to the underlying Artemis broker but if I try to subscribe with MQTT just on "#" (for getting ALL the messages, as it's possible due to the MQTT 3.1.1 specification) I get the following error :
16:26:48.131 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttGateway - CONNECT from MQTT client maior160645121
16:26:48.671 [vert.x-eventloop-thread-0] INFO  e.m.e.AmqpSubscriptionServiceEndpoint - AMQP close delivery Accepted{}
16:26:48.683 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.AmqpBridge - CONNACK to MQTT client maior160645121 [accepted]
16:26:48.687 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.MqttGateway - Opened AMQP bridge for client maior160645121
16:26:52.945 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerImpl - Client from origin /<IP_ADDRESS>:52337 failed to connect over ssl: java.nio.channels.ClosedChannelException
16:26:54.850 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerImpl - Client from origin /<IP_ADDRESS>:37458 failed to connect over ssl: java.nio.channels.ClosedChannelException
16:26:57.721 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.AmqpBridge - SUBSCRIBE [1] from MQTT client maior160645121
16:26:57.730 [vert.x-eventloop-thread-0] INFO  e.m.e.AmqpSubscriptionServiceEndpoint - AMQP subscribe delivery Rejected{error=Error{condition=amqp:precondition-failed, description='Error: Unrecognised topic: #', info=null}}
16:26:57.735 [vert.x-eventloop-thread-0] INFO  enmasse.mqtt.AmqpBridge - SUBACK [1] to MQTT client maior160645121
16:26:57.944 [vert.x-eventloop-thread-0] ERROR io.vertx.core.net.impl.NetServerImpl - Client from origin /<IP_ADDRESS>:52379 failed to connect over ssl: java.nio.channels.ClosedChannelException

The above is the trace from the MQTT gateway.

MQTT is going away and to be part of IoT integration


Request for Examples, Documentation Illustrating use with other libraries

Could you please consider adding examples to your repository?
Also examples showing how to use your crate and e.g.

[ ] calculate distances between vectors (here is some inspiration in python: https://gist.github.com/gwpl/4f6c2aa1401febbf0873859495496315 )

Or show how to use with other rust AI libraries, vector dbs or math libraries, to compute different kinds of distances, similarities ( [Dot product: Dot], [Cosine similarity: Cosine], [Euclidean distance: Euclid], [Manhattan distance: Manhattan] ).
Ideal would be tiny example programs, in examples folder that could be run with cargo.

[ ]  https://crates.io/crates/chromadb-rs
[ ] https://github.com/m1guelpf/tinyvector
[ ] https://github.com/instant-labs/instant-distance

Hi @gwpl. Thanks for raising the issue.
I usually work in the library during weekends. I can take a look then.
In the meantime, contributions are welcome.

I am thinking the library's interface is simple and docs.rs/README should be sufficient.


Network types is now bond instead of device scoped

What problem are you facing?
Network types (hybrid, layer2-bonded, layer2-individual, layer3) have always been a computed value used by the Terraform provider and Equinix Metal UI to represent a complex arrangement of port bindings, layer-2 or layer-3 readiness, management address assignments, and vlan attachments.
With recent API and product enhancements, affording more customization of the port configuration, the device-wide single word network type is no longer relevant. This is especially the case for four-port devices, such as n2.x-large (with larger sizes inevitable) where there are multiple bonding pairs.  The notion of a bonding pair (with only 2 ports) may also lead to inaccurate representation.
At first glance, it would seem that the scope has shifted to a bond (ethernet pairing) scope. This is not entirely correct and will become less correct in time.
EM offers direct port modification APIs that offer similar functionality regardless of whether the port being affected is a bonding port or an ethernet port.
The most expressive and accurate way to represent port state configuration to users is directly, without a concocted network type that pulls various levers and switches when toggled.

How could the Equinix Metal Crossplane Provider help solve your problem?

A more expressive way to configure the device networking would allow for all ports to be managed independently, with Kubernetes eventually reconciling all of the port states.  Ports can be acted on independently of any device or hardware reservation, however, all ports available through the API currently represent either a bonding or ethernet port attached to a user-owned hardware reservation or device instance.
I believe we can reasonably restrict port actions to the scope of a device and do not need independent resources to manage ports. Managing ports independently may be more complicated based on the need to reference the device of the port or the id of the port.  On the contrary, in the scope of a device, the port can be referenced easily by a well known, and API guaranteed port name.
I roughly propose the following forProvider spec representation of ports:
forProvider:
  plan: "n2.x-large"
  ports: # network_ports in the API naming
    bond0: # always comprised of ports eth0+eth1 on 2 port devices, or eth0+eth2 on 4 port devices
      bonded: true # default
      layer2: false # this is default on new devices. changes result in /ports/id/convert/layer-[2|3] API calls
      vlans: [1234, 5678, 1234] # shortened this from the API "virtual_networks"
      native_vlan: 5678 # optional, must be one of the above if set
      ip_addresses:
      - reservation_id: uuid # reserved addresses by uuid, may include global ips
      - cidr_notation: "<IP_ADDRESS>/24" # reserved addresses by address, may include global ips
      - type: private_ipv4 # dynamically assigned addresses, available via metadata.platformequinix.net
        cidr: 30
    bond1: # comprised of port eth1+eth3 on 4 port devices
      bonded: false
    eth1: # unbonded eth ports can use most of the same attributes bond ports can use
      layer2: true
      vlans: [7654]
    eth3:
      layer2: true
      vlans: [9876]

The atProvider status would include the MAC address, network type (as reported by the API), and id of each port (among other things).
This is related to the following discussions:

https://github.com/packethost/packngo/issues/231

https://github.com/packethost/packngo/pull/239#discussion_r572120683

https://github.com/equinix/terraform-provider-metal/issues/12
https://github.com/kubernetes-sigs/cluster-api-provider-packet/issues/226#issuecomment-777021331

Closing for #69
This bespoke representation of the Equinix Metal device networking will not be implemented here.
The capabilities of the Equinix TF provider to represent Metal Device port settings are present in https://github.com/crossplane-contrib/provider-jet-equinix


Missing functionality/suggestions

So i bought the watchface, and to be honest its awesome and well made, however i would like to add a few suggestions:

maybe add an option to open an app when pressing hour/minutes? (useful for e.g. opening gpay or flashlight quickly, alot of watchfaces allow that)

as i see it uses code not some watch maker, so maybe an option with some design/layout choices? e.g. one with more complications etc. etc.

ability to have digital seconds

i really fell in love with this watchface but im missing key features im used to:

fast gpay access
fast flashlight access
weather complication (i just cant fit it when theres only 4 fields)
digital seconds

the price is quite high for a watchface but im not refunding and looking forward for future updates, thanks and tia for possibly considering my feedback

im assuming i cant fit in with my favourite complications because i am phone charge% conniseur lol

Hi @Roki100, I'm trully glad you are enjoying the watch face!

Regarding issue (1), I also would love to have that (with separate buttons for hours and minutes, e.g. two new complication slots), so I will definitely consider developing it.

#11 is related, and they can be implemented in the same PR.

(2) requires some design work and refactoring of the configurator and renderer processes, and a significant time investment. I like the idea, however I do not have the capacity to start working on it right now.
(3) more or less needs to be implemented in parallel with (2).

I will create separate issues for your suggestions and track the progress there.
Regarding pricing: I might consider lowering the price, but the amount of hours I've put into this little side project do not justify it for now. I hope you understand.
Thanks for your feedback, I really appreciate it.

I actually was not aware you can have a phone battery complication. Will do my best to find the time and implement this as you and possibly more people might find it useful.

Technically wearOS doesn't have the API for that I don't think. These phone battery complications work around that by making a phone app that passes the phone battery data to their respective watch app

the price is quite high for a watchface but im not refunding and looking forward for future updates, thanks and tia for possibly considering my feedback

I understand your sentiment but just remember that this is one of the few third-party native watch faces out there instead of just using WFS. Personally, I value that a lot because WFS faces feel out of place outside of Samsung's wearOS skin, prevent implementation of advanced features such as multiple layouts or fading animations, and especially don't play nicely with digital crown scrolling at all. Not only that but also it's really rare to find faces like this one nowadays because everyone and their moms are using WFS so I personally wanna support all of the developers that put in the extra effort for native faces


Disable Alpha for Sketch picker

Could you please add an option to disable alpha for Sketch picker? Alpha doesn't make sense if you work with hex codes because it requires an 8 character hex code format instead of 6 character format which is used by default

@DenisKaminsky Upgrade v1.2.0
import React, { useState } from 'react';
import Sketch from '@uiw/react-color-sketch';

function Demo() {
  const [hex, setHex] = useState("#fff");
  const [disableAlpha, setDisableAlpha] = useState(false);
  return (
    <div>
      <Sketch
        style={{ marginLeft: 20 }}
        color={hex}
        disableAlpha={disableAlpha}
        onChange={(color) => {
          setHex(color.hex);
        }}
      />
      <button onClick={() => setDisableAlpha(!disableAlpha)}>
        disableAlpha={disableAlpha.toString()}
      </button>
    </div>
  );
}

export default Demo;

Nice. But it is still visible on the panel


Overwrite Measurment Buttons

[x] Separate the circle Measurement template into an emanation button and a burst button
[ ] If #6 is implemented allow placement when over highest token to enable the logic

Moving second action item to #6 and closing as complete


Arduino profile supports Servos

Lots of dependencies for this - attaching, methods, attributes, parsing, analysis, code generation. All separate tasks.
(imported from trello)

Servos can now be controlled as of v0.0.21


sd_setImageWithURL's completedBlock not called if operation was cancelled

I think that it should be called with error code 'cancelled'.
For example: How I should write safe code with activity indicator during image loading operation, if I'm not sure that completed callback will be always called ?
        [_activityIndicator setHidden:NO];
        [_activityIndicator startAnimating];
        // load image
        __weak UIActivityIndicatorView* weakActivityIndicator = _activityIndicator;
        [_imageView sd_setImageWithURL:newUrl placeholderImage:nil options:SDWebImageProgressiveDownload|SDWebImageHighPriority
            progress:nil
            completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
                [weakActivityIndicator stopAnimating];
                [weakActivityIndicator setHidden:YES];
            }];

@timkoma is there a reason why the completion callback wont be called?

Because SDWebImageDownloader's downloadImageWithURL doesn't call it in it's cancelled block?
                                         cancelled:^{
                                                        SDWebImageDownloader *sself = wself;
                                                        if (!sself) return;
                                                        [sself removeCallbacksForURL:url];
                                                    }

as i can see it if you cancel the SDWebImageDownloader then the cancelBlock posts a notification:
SDWebImageDownloadStopNotification
The SDWebImageDownloader listens for that notification and calls the ```stopActivity````
am i missing something here?Please let me know if i am getting this wrong

No, you got it wrong.
If you start the download operation from UIImageView+WebCache and download operation is cancelled, there is no guaranty that UIImageView+WebCache will be notified about cancel, because
cancelled:^{
SDWebImageDownloader *sself = wself;
if (!sself) return;
[sself removeCallbacksForURL:url];
}
will not do it!

Ah, just noticed that this can be a root cause to #1032

this is where the completion block for cancelled requests was removed due to race conditions https://github.com/rs/SDWebImage/pull/699

I cannot agree with #699. Correct fix for Race condition is to synchronize the call either with @synchronize or using GCD (e.g. serial dispatch queue).
But not skipping(not calling) some code causing race condition!
As you can see you have some other guys complaining about missing calls here #847.

I think this should be fixed due to #883. Please retest after we release 4.0 (right now the fix is on the 4.x branch).


Suggestions

Moved from https://github.com/lesteve/scikit-learn-tutorial/issues/20 by @lucyleeow.
I have some minor suggestions:
01_tabular_data_exploration:

adult_census.profile_report() tells us that there are a few duplicate rows. It may be worthwhile explaining how these duplicate entries may affect/not affect prediction?

02_basic_preprocessing

convergence warning - you explain that this tells us that our model stopped learning because it reached the maximum number of iterations allowed and that scaling the data will help. Can you expand on what convergence means, why increasing the number of allowed iterations is a bad idea and why scaling the data helps?
explain what the StandardScaler does? Maybe not everyone knows the equation?

04_basic_parameters_tuning:

I think you need to explain more about the hyper-parameter C. Maybe even just give them a useful link to read on regularisation and overfitting?
For the last cell:

model = make_pipeline(
    preprocessor, LogisticRegressionCV(max_iter=1000, solver='lbfgs', cv=5)
)
score = cross_val_score(model, data, target, n_jobs=4, cv=5)

you don't provide a Cs argument like you do above and it might be worth mentioning that by default it tests a grid of 10 C values.

Closing as this has been addressed or things have changed since.


Internal JAX Error while running Closed Systems example

Thanks for developing this! I was walking through the Closed Systems example and encountered an internal JAX error when trying to compute the SE Propagator.
import jax.numpy as jnp
import dynamiqs as dq

psi0 = dq.ground()                # initial state
H = dq.sigmaz()                   # Hamiltonian
tsave = jnp.linspace(0, 1.0, 11)  # saving times
res = dq.sesolve(H, psi0, tsave)  # run the simulation
print('\n', res.states[-1])             # print the final state

res = dq.sepropagator(H, tsave)

Here's the error I'm getting:
---------------------------------------------------------------------------
XlaRuntimeError                           Traceback (most recent call last)
[/usr/local/lib/python3.10/dist-packages/dynamiqs/integrators/_utils.py](https://ycujgy2skg-496ff2e9c6d22116-0-colab.googleusercontent.com/outputframe.html?vrz=colab_20241204-060134_RC00_702630139#) in wrapper(*args, **kwargs)
     56         try:
---> 57             return func(*args, **kwargs)
     58         except xla_client.XlaRuntimeError as e:

    [... skipping hidden 16 frame]

3 frames
[/usr/local/lib/python3.10/dist-packages/jax/_src/compiler.py](https://ycujgy2skg-496ff2e9c6d22116-0-colab.googleusercontent.com/outputframe.html?vrz=colab_20241204-060134_RC00_702630139#) in backend_compile(backend, module, options, host_callbacks)
    265     # to take in `host_callbacks`
--> 266     return backend.compile(built_c, compile_options=options)
    267   except xc.XlaRuntimeError as e:

XlaRuntimeError: INTERNAL: unsupported operands type

The above exception was the direct cause of the following exception:

RuntimeError                              Traceback (most recent call last)
[<ipython-input-38-7c01ff6544fd>](https://ycujgy2skg-496ff2e9c6d22116-0-colab.googleusercontent.com/outputframe.html?vrz=colab_20241204-060134_RC00_702630139#) in <cell line: 1>()
----> 1 res = dq.sepropagator(H, tsave)
      2 print(res.propagators[-1])  # print the final propagator

[/usr/local/lib/python3.10/dist-packages/dynamiqs/integrators/apis/sepropagator.py](https://ycujgy2skg-496ff2e9c6d22116-0-colab.googleusercontent.com/outputframe.html?vrz=colab_20241204-060134_RC00_702630139#) in sepropagator(H, tsave, solver, gradient, options)
    106     # we implement the jitted vectorization in another function to pre-convert QuTiP
    107     # objects (which are not JIT-compatible) to JAX arrays
--> 108     return _vectorized_sepropagator(H, tsave, solver, gradient, options)
    109
    110

[/usr/local/lib/python3.10/dist-packages/dynamiqs/integrators/_utils.py](https://ycujgy2skg-496ff2e9c6d22116-0-colab.googleusercontent.com/outputframe.html?vrz=colab_20241204-060134_RC00_702630139#) in wrapper(*args, **kwargs)
     70                 ) from e
     71             # === other errors
---> 72             raise RuntimeError(
     73                 'An internal JAX error interrupted the execution, please report this to'
     74                 ' the Dynamiqs developers by opening an issue on GitHub or sending a'

RuntimeError: An internal JAX error interrupted the execution, please report this to the Dynamiqs developers by opening an issue on GitHub or sending a message on Dynamiqs Slack (links available at https://www.dynamiqs.org/stable/community/lets-talk.html).```

Hi @bcallen95, I cannot reproduce your example: it seems to run fine on my end.
Could you share your pip list | grep -E "dynamiqs|jax"?

It appears to be related to my choice of runtime in Google Colab. I'm able to run the example for the A100 and L4 GPU runtimes, but encounter the issue above if I use the T4 GPU runtime. The output of your recommended command is the same:
dynamiqs                           0.2.3
jax                                0.4.33
jax-cuda12-pjrt                    0.4.33
jax-cuda12-plugin                  0.4.33
jaxlib                             0.4.33
jaxtyping                          0.2.34

Yes, I can reproduce on this Google Collab notebook.


Update generate_pipeline_code to return pipeline instances without generating custom pipeline class

Closes #2160.
This is done by updating our pipelines' repr (since its a bit outdated and only contained parameters) and then using that updated repr in generate_pipeline_code :)
Also fixes mini bug with baseline pipelines in AutoMLSearch.

@freddyaboulton Aiyah, thank you--I'll take a look at this, and add a test. Good catch! 😅
I think it's okay that the imports aren't added and we require the user to add the external imports themselves. What do you think?
Also, long term for custom_hyperparameters is tracked here: https://github.com/alteryx/evalml/issues/2130
We closed the epic since we figured it was just one-off improvement issues and didn't require an overarching epic :)

Sounds good @angela97lin ! Thanks for pointing me to #2130 !

@freddyaboulton @bchen1116 Fixed! lol turns out I just had an extra floating comma lying around, thanks for bringing it up!
Also updated the repr test to make sure, and added a statement in our notebook that external imports are necessary to execute the code :))


Room distributed across multiple erizoAgents?

Is there any architecture of describing how room is shared across multiple erizoAgents ? I am wondering how media is shared across multiple ErizoJS in this case ?

There's a general architecture explanation in this issue https://github.com/ging/licode/issues/335 and in [this blog post] (http://lynckia.com/licode/async.html)
By default, publishers will be assigned to an ErizoJS provided by an Agent selected with round-robin.
This behaviour can be modified by (editing the policy) [https://github.com/ging/licode/blob/master/erizo_controller/erizoController/ch_policies/default_policy.js]
At this point ErizoJSs don't forward media to each other.

'default_policy.js' always return the same agent, so there's no round robin also ? or we need to make it round robin ?
exports.getErizoAgent = function () {
'use strict';
return 'ErizoAgent';
};


refer to RTimothyEdwards/open_pdks instead of efabless/open_pdks

Signed-off-by: Kareem Farid<EMAIL_ADDRESS>

This PR is also done to trigger the CI

Volare needs to be updated first

@donn I believe @proppy already opened a volare PR to do the same.

For posterity: related PRs:
https://github.com/efabless/volare/pull/22
https://github.com/efabless/volare/pull/23


Makubot sent blank embed for mb.ramiel

https://discordapp.com/channels/728688096299712544/728688096908148834/762760748014501899
Actual link was https://makubot.s3.us-east-2.amazonaws.com/pictures/ramiel/tumblr_n80m5hVPLr1rk1aixo4_250.gif
Are gifs not supported? Maybe we have to check against videos and gifs

No, gifs work fine, hmmm

And this specific gif is fine, too: https://discordapp.com/channels/@me/363949187445817346/762792027452342313

What's even more confusing is that the gif which broke the embed has worked in the past with no issue. My guess is that means it was something wrong with how the randomimage command did things compared to the send_image_func

This one was actually invoked with mb.ramiel, so I don't think it's that. I tried doing mb.ramiel again, and I managed to get the same pic, and it worked fine, like you said. So I have no idea what happened :thinking:

Well, if it's not reproducible then I guess that's grounds for this issue to be closed. Can be reopened if it happens again.

Fair enough!


erome URLs not downloaded when ripping via reddit profiles

Ripme version: 1.7.27
Java version: openjdk version 1.8.0_131 and 1.8.0_151
Operating system: Debian 9.3 and Debian 8.10
Exact URL you were trying to rip when the problem occurred: https://www.reddit.com/user/Chipware
Please include any additional information about how to reproduce the problem:

alias ripme='java -jar /usr/local/bin/ripme.jar -l . -u'
When ripping via a reddit profile, links to erome pics/vids do not download.
chip@omv01:/mnt$ ripme https://www.reddit.com/user/Chipware
Loaded /home/chip/.config/ripme/rip.properties
Loaded log4j.properties
Initialized ripme v1.7.27
[+] Creating directory: ./reddit_user_Chipware
[!] Unable to rip URL: https://www.erome.com/a/UAAbTeLi
However, when accessing the link directly, it works:
chip@omv01:/mnt$ ripme https://www.erome.com/a/UAAbTeLi
Loaded /home/chip/.config/ripme/rip.properties
Loaded log4j.properties
Initialized ripme v1.7.27
[+] Creating directory: ./erome_UAAbTeLi_Screen_Shot_2018-01-31_at_4.37.21_PM
Retrieving https://www.erome.com/a/UAAbTeLi
Downloading file: https://s4.erome.com/49/UAAbTeLi/FUqP2mfy.png Retry #1
[+] Saved https://s4.erome.com/49/UAAbTeLi/FUqP2mfy.png as ./erome_UAAbTeLi_Screen_Shot_2018-01-31_at_4.37.21_PM/001_FUqP2mfy.png

I just came here to post this. It happened for this user: https://www.reddit.com/user/irisansley


Keep template hooks intact

Hey there,
When I use blaze-components it seems like I can't register "normal" blaze template hooks anymore:
class UrlForm extends BlazeComponent
  @register 'UrlForm'
  onCreated: -> console.log 'From Component'

# later
Template.UrlForm.onCreated -> console.log 'From normal hook'

'From normal hook' is never logged in this case, only 'From Component'.
This is pretty bad because other packages rely on the these standard hooks to work correctly.
Using Meteor <IP_ADDRESS>

Templates are used only for content. If you want to use some other template with traditional behavior, then wrap it into the component:
<template name="Component">
  {{> traditionalTemplate}}
</template>

Template.traditionalTemplate.onCreated -> console.log 'TEST'

You cannot really use template hooks from traditional templates anyway in components, because they work differently. In Blaze Components a component instance is bound to this, for traditional templates you get a template instance bound to this. Same goes for template helpers. Then template helpers would behave differently to component methods.
So I think it is better to keep these two worlds cleanly separated than trying to bridge them and then you would have to think in which world you are.

The problem is that some people like to use blaze-components together with other packages like space:ui which fulfill different purposes.
Here is the original issue that made me look closer: https://github.com/CodeAdventure/space-ui/issues/27
space:ui only hooks into the template callbacks and adds the mediator instance to the template instance, so it doesn't care which context it is in. The mediator also doesn't care because it is just a bridge to other code parts.

If you do not want to write wrapper component templates, you can also define them dynamically. Something like (untested):
class UrlForm extends BlazeComponent
  @register 'UrlForm'

  template: ->
    new Blaze.Template "BlazeComponent.Include.#{ @componentName() or 'unnamed' }", =>
      Template[@componentName()]

Ok thanks, I will let the other ones decide how they want to integrate the two packages, there are multiple workarounds anyway. Although it would be pretty awesome to make space:ui and blaze-components more compatible.

Sure. I would love to see that as well.

So I will close this with pull request welcome. Or probably this should be a separate package. Feel free to open tickets with questions if you need any help.

See #71 for a ticket about implementing this.


chore: Silence clippy warning with nightly

The warning:
warning: first doc comment paragraph is too long
  --> pageserver/src/tenant/checks.rs:7:1
   |
7  | / /// Checks whether a layer map is valid (i.e., is a valid result of the current compaction algorithm if no...
8  | | /// The function checks if we can split the LSN range of a delta layer only at the LSNs of the delta layer...
9  | | ///
10 | | /// ```plain
   | |_
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_long_first_doc_paragraph
   = note: `#[warn(clippy::too_long_first_doc_paragraph)]` on by default
help: add an empty line
   |
7  ~ /// Checks whether a layer map is valid (i.e., is a valid result of the current compaction algorithm if nothing goes wrong).
8  + ///
   |

Fix by applying the suggestion.

kicked your CI


Rust 1.72 upgrade

The failing tests are hitting #5924

I think we should just disable the 2 tests for now on linux-x86-64 and merge this.


Add Toggle Shade Box to shortcuts

If a writer selects Toggle Shade Box as a shortcut, we would:

Add >[!BEGINSHADEBOX] and >[!ENDSHADEBOX] on separate lines if no text is selected.
Wrap selected text with >[!BEGINSHADEBOX] and >[!ENDSHADEBOX] on their own lines above and below selection.

https://experienceleague.adobe.com/docs/authoring-guide-exl/using/markdown/syntax-style-guide.html?lang=en#shade-boxes

@geverit4 - Minor issue, but when I select text and choose Toggle Shadebox like this:

The line spacing of the end syntax is off:

You're adding an extra line before ENDSHADEBOX and removing a blank line after, which can cause a validation error if it precedes a heading, note, or code block.

This was one of the more pernicious bugs.  We have automated testing for all of these, but to deal with this kind of markdown construct is not really supported in the original code that we forked that handles GFM.  I had been wanting to make it more flexible so that you could actually "toggle" the shadebox tabs and have it behave intuitively.  This was my opportunity.
The shadebox shortcut is now much smarter.   It will detect where your cursor is and look up and down for existing >[!SHADEBOX] tags.  If it finds them, it will remove them.  If it doesn't find them, it will select the current paragraph and surround it.

Confirmed fixed in 2.0.5


Improve issue search

Make improvements to issue search: (see https://github.com/go-gitea/gitea/pull/530#pullrequestreview-23520746)

Add support for searching comment contents
Add unicode normalization and tokenization
Move indexer specific code out of models and into a separate module (where it can potentially be reused in the future)
Update bleve dependency
Add integration tests for issue search

Don't let the big add/removal figures scare you; that's because of the updated dependency

It seems new issue on sqlite wasn't indexed.

@lunny Fixed

Codecov Report

Merging #2387 into master will increase coverage by 0.1%.
The diff coverage is 30%.

@@            Coverage Diff            @@
##           master    #2387     +/-   ##
=========================================
+ Coverage   27.59%   27.69%   +0.1%
=========================================
  Files          83       83
  Lines       16928    16898     -30
=========================================
+ Hits         4671     4680      +9
+ Misses      11581    11541     -40
- Partials      676      677      +1

Impacted Files
Coverage Δ

models/pull.go
20.2% <0%> (-0.06%)
:arrow_down:

models/issue_indexer.go
9.67% <17.64%> (+6.13%)
:arrow_up:

models/issue_comment.go
31.1% <21.05%> (-0.42%)
:arrow_down:

models/issue.go
24.95% <73.33%> (+0.3%)
: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 d766d0c...8239ffc. Read the comment docs.

LGTM

@lafriks Good catch, fixed

Would be great if these directories would also be added to make clean but otherwise LGTM

make LG-TM work


【do not merge】test: add container related util functions

Signed-off-by: letty<EMAIL_ADDRESS>
1.Describe what this PR did
Add container related functions for test.
2.Does this pull request fix one issue?

3.Describe how you did it
4.Describe how to verify it
5.Special notes for reviews

How about directly using CreateBusyboxContainer instead of CreateBusyboxCon? 🌹

OK

LGTM


09/12/2018 01:44 : Create Pull Request for branch master -> prTesting1_2018091201

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestRef1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


jatson tx2  build error

-- Found CUDA: /usr/local/cuda (found suitable version "9.0", minimum required is "7.5")
-- Looking for cuDNN install...
-- Found cuDNN: /usr/lib/aarch64-linux-gnu/libcudnn.so
-- Building a CUDA test project to see if your compiler is compatible with CUDA...
-- Checking if you have the right version of cuDNN installed.
-- Enabling CUDA support for dlib.  DLIB WILL USE CUDA
-- C++11 activated.
-- Configuring done
-- Generating done
-- Build files have been written to: /root/dlib-19.20/build
[  1%] Building NVCC (Device) object dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cusolver_dlibapi.cu.o
[  3%] Building NVCC (Device) object dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cuda_dlib.cu.o
/root/dlib-19.20/dlib/cuda/cuda_dlib.cu(1762): error: calling a constexpr host function("log1p") from a device function("cuda_log1pexp") is not allowed. The experimental flag '--expt-relaxed-constexpr' can be used to allow this.
1 error detected in the compilation of "/tmp/tmpxft_000023be_00000000-6_cuda_dlib.cpp1.ii".
CMake Error at dlib_generated_cuda_dlib.cu.o.cmake:266 (message):
Error generating file
/root/dlib-19.20/build/dlib/CMakeFiles/dlib.dir/cuda/./dlib_generated_cuda_dlib.cu.o
dlib/CMakeFiles/dlib.dir/build.make:63: recipe for target 'dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cuda_dlib.cu.o' failed
make[2]: *** [dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cuda_dlib.cu.o] Error 1
CMakeFiles/Makefile2:85: recipe for target 'dlib/CMakeFiles/dlib.dir/all' failed
make[1]: *** [dlib/CMakeFiles/dlib.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2

Try the latest dlib on GitHub

On Jul 27, 2020, at 4:13 AM, cafe<EMAIL_ADDRESS>wrote:

-- Found CUDA: /usr/local/cuda (found suitable version "9.0", minimum required is "7.5")
-- Looking for cuDNN install...
-- Found cuDNN: /usr/lib/aarch64-linux-gnu/libcudnn.so
-- Building a CUDA test project to see if your compiler is compatible with CUDA...
-- Checking if you have the right version of cuDNN installed.
-- Enabling CUDA support for dlib. DLIB WILL USE CUDA
-- C++11 activated.
-- Configuring done
-- Generating done
-- Build files have been written to: /root/dlib-19.20/build
[ 1%] Building NVCC (Device) object dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cusolver_dlibapi.cu.o
[ 3%] Building NVCC (Device) object dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cuda_dlib.cu.o
/root/dlib-19.20/dlib/cuda/cuda_dlib.cu(1762): error: calling a constexpr host function("log1p") from a device function("cuda_log1pexp") is not allowed. The experimental flag '--expt-relaxed-constexpr' can be used to allow this.
1 error detected in the compilation of "/tmp/tmpxft_000023be_00000000-6_cuda_dlib.cpp1.ii".
CMake Error at dlib_generated_cuda_dlib.cu.o.cmake:266 (message):
Error generating file
/root/dlib-19.20/build/dlib/CMakeFiles/dlib.dir/cuda/./dlib_generated_cuda_dlib.cu.o
dlib/CMakeFiles/dlib.dir/build.make:63: recipe for target 'dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cuda_dlib.cu.o' failed
make[2]: *** [dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cuda_dlib.cu.o] Error 1
CMakeFiles/Makefile2:85: recipe for target 'dlib/CMakeFiles/dlib.dir/all' failed
make[1]: *** [dlib/CMakeFiles/dlib.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Try the latest dlib on GitHub
…
On Jul 27, 2020, at 4:13 AM, cafe @.***> wrote:  -- Found CUDA: /usr/local/cuda (found suitable version "9.0", minimum required is "7.5") -- Looking for cuDNN install... -- Found cuDNN: /usr/lib/aarch64-linux-gnu/libcudnn.so -- Building a CUDA test project to see if your compiler is compatible with CUDA... -- Checking if you have the right version of cuDNN installed. -- Enabling CUDA support for dlib. DLIB WILL USE CUDA -- C++11 activated. -- Configuring done -- Generating done -- Build files have been written to: /root/dlib-19.20/build [ 1%] Building NVCC (Device) object dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cusolver_dlibapi.cu.o [ 3%] Building NVCC (Device) object dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cuda_dlib.cu.o /root/dlib-19.20/dlib/cuda/cuda_dlib.cu(1762): error: calling a constexpr host function("log1p") from a device function("cuda_log1pexp") is not allowed. The experimental flag '--expt-relaxed-constexpr' can be used to allow this. 1 error detected in the compilation of "/tmp/tmpxft_000023be_00000000-6_cuda_dlib.cpp1.ii". CMake Error at dlib_generated_cuda_dlib.cu.o.cmake:266 (message): Error generating file /root/dlib-19.20/build/dlib/CMakeFiles/dlib.dir/cuda/./dlib_generated_cuda_dlib.cu.o dlib/CMakeFiles/dlib.dir/build.make:63: recipe for target 'dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cuda_dlib.cu.o' failed make[2]: *** [dlib/CMakeFiles/dlib.dir/cuda/dlib_generated_cuda_dlib.cu.o] Error 1 CMakeFiles/Makefile2:85: recipe for target 'dlib/CMakeFiles/dlib.dir/all' failed make[1]: *** [dlib/CMakeFiles/dlib.dir/all] Error 2 Makefile:149: recipe for target 'all' failed make: *** [all] Error 2 — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

dlib/dlib/cuda/cuda_dlib.cu   edit.  1762 line.
old
return std::log1p(std::exp(x));
new
return std::log1pf(std::exp(x));
fix this

@davisking
Hi, davis.
I faces to same error on the following env.

Ubuntu 16.04 (docker, base is nvidia/cuda:11.0-cudnn8-devel-ubuntu16.04)

Host is Ubuntu 18.04 and CUDA Driver is 450.51.05 (latest)
GeForce GTX 750 Ti

After apply @coffice12's aproach, build was successful.
But this error does not on Windows machine without the above modification.
Windows machine is

Windows 10 1909
VS 2017
CUDA Driver is 451.48 (latest)
cudnn 8

Both envs use https://github.com/davisking/dlib/commit/5a80ca9e5f8fea37b0cc92517415f276b66814f7.
It is a bit old but I guess it does not matter.
Do you have any idea or reason to explain this issue?

Thanks for the notes.  I just pushed some changes to github that will hopefully fix this.  Give it a go and let me know what happens.

@davisking
Thank you for your quick support.
OK. I will check build on some CUDA version and operating system.

@davisking
Thanks a lot.
I was successful to build on these envs.
Ubuntu 16.04 (docker, base is nvidia/cuda:XXX-cudnnXX-devel-ubuntu16.04)

Ubuntu 18.04 (Host machine)
CUDA Driver is 450.51.05 (latest)
GeForce GTX 750 Ti

Build configurations are

cpu
intel mkl 2019
CUDA 9.2 + cudnn 7
CUDA 100 + cudnn 7
CUDA 10.1 + cudnn 7
CUDA 10.2 + cudnn 7
CUDA 11.0 + cudnn 8

Windows (physical machine)

Windows 10 1909
VS 2017
CUDA Driver is 451.48 (latest)
GeForce GTX 1080

Build configurations are

cpu
intel mkl 2019
CUDA 9.2 + cudnn 7
CUDA 100 + cudnn 7
CUDA 10.1 + cudnn 7
CUDA 10.2 + cudnn 7
CUDA 11.0 + cudnn 8

OSX

macOS Catalina
Apple clang version 11.0.3

Build configurations are

cpu
intel mkl 2019


please fix returning http code 302

Describe the bug
i have issue with api that returning http code 302/303,
and i need to read the response header. because redirect data in there.
if i using dio directly with same api, that return 302, & i can parse response header,
but if i using retrofit it will returning 400 bad request, so i can't parse the response header.
i have set Options for both, it same result for retrofit can't return http status 302, forcing to 400 bad request.
      //   options: Options(
      //     followRedirects: false,
      //     maxRedirects: 0,
      //     validateStatus: (status) => status! < 500,
      //   ),

To Reproduce
retrofit code
final result = await api.headerEnrichmentOffNet(
        url,
        options: Options(
          followRedirects: false,
          maxRedirects: 0,
          validateStatus: (status) => status! < 500,
        ),
      );

dio code
    var response = await dio.get(
        url,
        options: Options(
          followRedirects: false,
          maxRedirects: 0,
          validateStatus: (status) => status! < 500,
          contentType: "application/x-www-form-urlencoded",
        ),
      );

      if (response.statusCode == HttpStatus.found || response.statusCode == HttpStatus.seeOther) {
        final result = response.headers['Location']?.single;
        return left(MnvFailure.found(result));
      }

Expected behavior
don't automatically redirect http response 302/303
Screenshots
Smartphone (please complete the following information):

Device: [Poco F5]
OS: [Android 13]

Additional context
Add any other context about the problem here.

Please share the generated code by retrofit.dart.
Let's see the difference between it and your code


Centos project does not support custom kernels

see #9696

Signed-off-by: Sven Dowideit<EMAIL_ADDRESS>Docker-DCO-1.1-Signed-off-by: Sven Dowideit<EMAIL_ADDRESS>(github: SvenDowideit)
@jperrin - are you happy for me to say it this way?
@vbatts should I add something similar for RHEL?
@unclejack @fredlf @jamtur01

Probably should specify which CentOS version, as CentOS 7 doesn't use 2.6.32

@phemmer you're right - It would be good to know - will RHEL/Centos be stuck on 3.10 forever, or is that shell game going to change?

LGTM broadly.

LGTM

@SvenDowideit This looks good to me and I think we need to say something similar about RHEL.
I think we also need to say something specific about RHEL 6 and CentOS 6 because that's where people usually want a newer kernel. Should they really want a newer kernel, they should upgrade to RHEL 7 or CentOS 7, depending on what they're using and what they want to use.

@SvenDowideit Judging by history, it will be stuck on 3.10 with possible minor backports.

LGTM. And yes, RHEL and most linux distros will not support issues when using a custom kernel ...

LGTM


Collapsible headings

Collapsible headings now exist on jupyter lab. Would it be possible to add them to fastpages as an option?

@choldgraf check it out someone trying to marry JupyterBook with fastpages kind of https://alexlenail.me/back_of_my_envelope/2021/06/23/Enzyme-Kinetic-Parameter-Inference.html

@hamelsmu super cool 🙂


CreateFromSeed should actually generate a wallet from the given seed

Currently, the Transactor just uses the WalletClient to call CreateFromSeed, which will not work, since the WalletClient is supposed to be used by other processes to talk to the Transactor.

Fixed via #522


CMake support

I am surprised that there is no CMake support, It would be really nice to have CMake scripts for slang.

Agreed. Lack of CMake support (and thus hard to build it on multiple platforms) is the main reason I haven't tried this project yet.

@fknfilewalker @LesleyLai We do provide binary releases for both Windows and Linux. Which platforms are you on?
We can certainly consider providing CMake build files if that is blocking adoption.

Windows and Linux cover my needs, though I generally find building from sources much easier to deal with compared to prebuilt binary.
I see that there is also a vcpkg port of slang though I am not sure how well maintained it is

+1.
CMake is the industry standard when it comes to C++ development. It has its faults for sure, but still, it’s ubiquitous, especially in computer graphics.
If slang were to have some official CMake support, even if it were just a guideline on how to incorporate slang into an existing CMake project, that would probably help adoption quite a bit.

Ellie is on this so setting assignee, and since its in progres putting it onto Q1 but also putting the priority to low to reflect that this might get preempted if something more urgent for this quarter comes up.

+1
Regarding @LesleyLai's comment about vcpkg, the current port downloads binaries from GitHub and unzips them into the installed packages directory. Obviously this prevents project-specific dependency wrangling (e.g. slang-gfx library is unconditionally imported). If dependency wrangling is handled via CMake, much of the current Premake complexity in Slang can be reduced as well.


SequenceDictionary vs Feature[RDD] of reference length features

What's the question here? IMO, with linear references, there's no use case for having a distributed data structure to store the reference info, because the number of reference sequences is so small, and you typically want cheap random access into the sequences. Did you have a use case in mind?

Closing in favor of #1588


Add integration test for QRESYNC extension

Ignored by default as it only works with Cyrus, not with Greenmail.
Test functionality added in #233 and #234.

This change is

The CI failure for MSRV is due to an accidental regression in ourobouros: https://github.com/joshua-maros/ouroboros/issues/66


#236 Add Lightbend SBR with Keep Majority enabled

Enable Lightbend SBR with the Keep Majority strategy enabled.

Commercial module in the open-source project. It's very cool. But it's legal? smile

https://www.lightbend.com/blog/lightbend-to-contribute-commercial-features-to-akka-open-source

It is now :)
https://www.lightbend.com/blog/lightbend-to-contribute-commercial-features-to-akka-open-source

Ah. "we will integrate Lightbend’s Split Brain Resolver into the core of Akka Cluster".
So we should wait for the next Akka.


Xiwi with Sublime

Running xiwi subl does not work even after installing libgtk2.0-0. If you run xiwi xterm and then subl from that, it works fine.

Stuff that immediately forks on launch confuses xiwi.  It appears that subl has a -w command that avoids forking, so try xiwi subl -w and see if that works better.

Another example is gvim, which requires the "foreground" flag: xiwi gvim -f

That worked great thank you! Light Table, backed by Node-Webkit also forks on launch. Is there a command line flag for that one?

I just searched the interwebs for subl parameters.  Try adding -h or --help to whatever command you use to launch light table and see if it prints out a list of valid parameters.  Hopefully in there is something that stops it from forking/running in background.


Issue while plotting dotplot

Hello,
I am trying to generate dotplot and heatmap and get the following error. I am not able to get pass this step. The initial results were successfully generated using statistical_analysis
cellphonedb method statistical_analysis --counts-data gene_name meta_table.txt count_matrix.txt

Hi @stalware, thank you for using CellPhoneDB. Looks like the version of markupsafe you've got is no compatible with CellphoneDB. Could you please try installing verion 2.0.1 using pip install -U marksupsafe==2.0.1?

closing because it has been inactive for too long
please try the new plotting functions avaiable in cellphonedb >=4.0.0 if you are still having issues


When merging rings, they are added to canvas at a distorted angle

Steps to Reproduce

Open Ketcher

Add bond to canvas like this:

Attach a three Benzene rings to both sides of the bond (left, right, center)
Connect them by dropping one of ring's molleculas in the area marked by red cross:

Actual behavior
As a result we got very asymmetric molecule

and customer doesn't like this
Expected behavior
Merging operation (when we connect molecules taken by whole from Structure Library or panel) should not transform both of them. System should adjust connection points to each other by moving whole structure

Desktop (please complete the following information):

OS: Windows 10
Browser Chrome
Version 112.0.5615.138 (Official Build) (64-bit)

Ketcher version
Version 2.17.0-rc.2
#186703381

Pretested.


Input/completion in reward training vs. RL training

Why is it in reward training, the input and completion is appended as:
user_input + " " + completion (reward.py line 254)
where as in RL training, the equivalent task_response is:
input + "\n" + completion (trainer.py line 680)?

Hi @menandro, thank you for reporting the mismatch! I think it's just a typo that we need to fix as soon as possible. Would you mind opening a PR to fix this problem? I think it makes much more sense to use the formula we use in reward.py.


Add MMR retrieval

https://wikidocs.net/231585

When you try to make this issue, you must consider the hybrid retrieval!!


Unable to run one migration file using the API

Environment
Knex version: 0.20.13
Database + version: mysql 5.7
OS: macOS
Bug

Explain what kind of behavior you are getting and how you think it should do
I am trying to tun migration using the API. So far it works, but I can't run a specific file.

    knex(Knex.config)
      .migrate.up(config)
      .then((name) => {
        console.log('Migrations successfully executed', name)
        // close the process
        process.exit()
      })
      .catch(error => {
        console.error(error.message)
        // close the process
        process.exit()
      })

I tried also this:
Object.assign(Knex.config, {
      name: file_name,
})

Error message
n/a

@JefferyHus Could you please explain what do you mean by "can't"?
What is the config that you are passing? config.name regulates what to run.

@JefferyHus Could you please explain what do you mean by "can't"?
What is the config that you are passing? config.name regulates what to run.

I mean that I want to use the API to run a specific migration (file). The .up() function load doesn't have a configuration property that can be used to specify a file name or migration name. So falling back to the existing documentation I was able to find that I can somehow specify a name inside the global configuration object config.name.
I check the src code as well and config.name was kinda correct, but even if I did set it correctly, it didn't run the file at all.

I mean that I want to use the API to run a specific migration (file). The .up() function load doesn't have a configuration property that can be used to specify a file name or migration name. So falling back to the existing documentation I was able to find that I can somehow specify a name inside the global configuration object config.name.
I check the src code as well and config.name was kinda correct, but even if I did set it correctly, it didn't run the file at all.

    knex(Knex.config)
      .migrate.up(config)

please provide value of your config variable

    knex(Knex.config)
      .migrate.up(config)

please provide value of your config variable

test('migrate:up <name> runs only the defined unrun migration', async (temp) => {
  const migrationsPath = `${temp}/migrations`;
  const migrationFile1 = '001_one.js';
  const migrationFile2 = '002_two.js';
  const migrationData = `
      exports.up = () => Promise.resolve();
      exports.down = () => Promise.resolve();
    `;

  fs.writeFileSync(`${migrationsPath}/${migrationFile1}`, migrationData);

  fs.writeFileSync(`${migrationsPath}/${migrationFile2}`, migrationData);

  const { stdout } = await assertExec(
    `node ${KNEX} migrate:up ${migrationFile2} \
    --client=sqlite3 \
    --connection=${temp}/db \
    --migrations-directory=${migrationsPath}`,
    'run_migration_002'
  );
  assert.include(
    stdout,
    `Batch 1 ran the following migrations:\n${migrationFile2}`
  );
  assert.notInclude(stdout, migrationFile1);
});

this works

test('migrate:up <name> runs only the defined unrun migration', async (temp) => {
  const migrationsPath = `${temp}/migrations`;
  const migrationFile1 = '001_one.js';
  const migrationFile2 = '002_two.js';
  const migrationData = `
      exports.up = () => Promise.resolve();
      exports.down = () => Promise.resolve();
    `;

  fs.writeFileSync(`${migrationsPath}/${migrationFile1}`, migrationData);

  fs.writeFileSync(`${migrationsPath}/${migrationFile2}`, migrationData);

  const { stdout } = await assertExec(
    `node ${KNEX} migrate:up ${migrationFile2} \
    --client=sqlite3 \
    --connection=${temp}/db \
    --migrations-directory=${migrationsPath}`,
    'run_migration_002'
  );
  assert.include(
    stdout,
    `Batch 1 ran the following migrations:\n${migrationFile2}`
  );
  assert.notInclude(stdout, migrationFile1);
});

this works

Thanks, @kibertoad I was hoping to see something possible using knex.up function without falling back to CLI.

Thanks, @kibertoad I was hoping to see something possible using knex.up function without falling back to CLI.

@JefferyHus What I'm trying to say is that function per se works, can't see why API won't. Will write test for it just to be sure.

@JefferyHus What I'm trying to say is that function per se works, can't see why API won't. Will write test for it just to be sure.

@kibertoad It looks like it doesn't pick the file name. I will try to debug more once I got some free time. Thanks

@kibertoad It looks like it doesn't pick the file name. I will try to debug more once I got some free time. Thanks

As for now I use this code to get it work:
    // use the CLI for the moment
    exec(`
      ts-node ./node_modules/.bin/knex migrate:up ${argv.file} \
      --client=mysql \
      --connection=mysql://${process.env.APP_DB_USER}:${process.env.APP_DB_PASS}@${process.env.APP_DB_HOST}:${process.env.APP_DB_PORT}/${process.env.APP_DB_NAME} \
      --migrations-directory=${path.join(__dirname, '../migrations')} \
      --migrations-table-name=knex_migrations
    `, (error, stdout, stderr) => {
      if (error || stderr) {
        console.error('Error', stderr);
      }
      else {
        console.info(stdout);
      }
    });

As for now I use this code to get it work:
    // use the CLI for the moment
    exec(`
      ts-node ./node_modules/.bin/knex migrate:up ${argv.file} \
      --client=mysql \
      --connection=mysql://${process.env.APP_DB_USER}:${process.env.APP_DB_PASS}@${process.env.APP_DB_HOST}:${process.env.APP_DB_PORT}/${process.env.APP_DB_NAME} \
      --migrations-directory=${path.join(__dirname, '../migrations')} \
      --migrations-table-name=knex_migrations
    `, (error, stdout, stderr) => {
      if (error || stderr) {
        console.error('Error', stderr);
      }
      else {
        console.info(stdout);
      }
    });

@JefferyHus You should be able to programmatically run knex migrate:up migration-filename.js using the knex.migrate.up API. Tested and working fine on my end
npx knex init
npx migrate:make migration-1
npx migrate:make migration-2

I am able to run migration-2 with below script
const Knex = require('knex')

const knex = Knex('sqlite3://?filename=dev.sqlite3') // Your connection string

knex.migrate
  .up({ name: '20210315162402_migration-2.js'})
  .catch(console.log)
  .then(process.exit)

I am able to verify this with:
npx knex migrate:status


Set featured projects to reflect discover.near curation

On the home page, featured projects is currently dummy data.
We can modify this to reflect the data stored at :
const projects = JSON.parse(Social.get(`${context.accountId}/thing/project-registry/featured`, "final") || "null") || [];

Completed, no?
https://github.com/NEARBuilders/discoverbos/commit/9b92c68135da310411f9c327024b01c50c0a8c9c


new solution 226 invert binary tree

Pull Request Template
What have you Changed(must)
New solution - for 22 Invert binary tree problem
Issue no.(must) -
Pr will be close and marked as spam. If issue number not found or issue was assigned to someone else.
Marking as spam can block your account from HacktoberFest.
Self Check(Tick After Making pull Request)

[x] I have named the file as (Problem #). (Problem Title(in Camel Case)).(extension)
ex. 2. AddToNumbers.py

README - How to Contribute

@sidoknowia you have to mention the issue number in the PR Body.


ARROW-2690: [Plasma] Use uniform function names in public APIs in Plasma. Add namespace around Flatbuffers

I made a pass over Plasma to make the function names more uniform in the style; let me know your comments. It was a little bit painful.
I also wanted to be more explicit about what parts of the Flatbuffers protocol are leaking into the public API. Still flatbuffers/flatbuffers.h is leaking, but this is a step in containing things a bit.

@pcmoritz @robertnishihara could you have a look at this? It's largely cosmetic but the public API for Plasma is impacted. Better to clean up sooner rather than later
How important is it to have details of the client wire protocol in the public API (do you need to get access to those headers in Ray)? Should we try to fix that?

This looks good to me, thanks for the cleanups!

@wesm The wire protocol isn't exposed through the public API, is it?

@robertnishihara It is exposed. Do you use the Flatbuffers APIs directly anywhere in Ray? Otherwise we should hide these symbols in the Plasma public headers and stop installing the generated Flatbuffers bindings

@wesm: At the moment we do but can get rid it! I can spend some time cleaning up the plasma code in this regard. Did you already create a JIRA, I couldn't find one.


javax.xml.transform.Transformerexception: Namespace for prefix 'xsi' has not been declared

This issue occurs when define a embed xsi:type. Below is a very simple test Scenario to compare the two xmls, the amount is different.
Feature: test the xml xsi feature

  Scenario: #1
    Given def sourceXml =
    """
    <Trade>
      <TradeEvent>
        <account>leo</account>
        <ccy>USD</ccy>
        <amount>2000</amount>
        <comment>for default</comment>
      </TradeEvent>

      <TradeEvent xsi:type="CCB:Trade">
        <account>jack</account>
        <ccy>CNY</ccy>
        <amount>1000</amount>
        <comment>for ccb</comment>
      </TradeEvent>
    </Trade>
    """

    Given def expectedXml =
    """
    <Trade>
      <TradeEvent>
        <account>leo</account>
        <ccy>USD</ccy>
        <amount>2000</amount>
        <comment>#present</comment>
      </TradeEvent>

      <TradeEvent xsi:type="CCB:Trade">
        <account>jack</account>
        <ccy>CNY</ccy>
        <amount>2000</amount>
        <comment>#present</comment>
      </TradeEvent>
    </Trade>
    """

    * match sourceXml == expectedXml

@jack20170608  yes, if you use chunks of the XML and lose the declarations, this will happen. more details here: https://stackoverflow.com/a/53682733/143475
if you add these 2 lines before the match it will solve your problem:
* remove sourceXml //TradeEvent/@type
* remove expectedXml //TradeEvent/@type

thanks a lot... that fix the issue...


set up an ISSUE_TEMPLATE.md

Configure an issue template to help contributors file clearly spec'ed bugs, tasks, feature requests, and whatnot.

No longer considered required for marking repo as public - removing label.


implement unittesting

It would be nice if the package includes test, this will make sure it functions as expected, as well as making further development easy as unintensional broken features can be catched earily.
Suggestions:

implement using the pytset framework.
Add continues integration using GitHub action

automated testing was implemented in v1

automated testing was implemented in v1


How to know which transcript of a gene has been modified?

Hello,
I have a question about the output results of nanom6A. Output result file ratio.0.5.tsv is the result of each gene. Is there a way to know which transcript of a gene has been modified?
Best,
Chen

I have the same need, have you solved this problem?


Correctly detect DispForm for Document Libraries

The code below can't detect DispForm for document libraries:
if (formBodies.length > 0 && $(formBodies[0]).children().length === 0) {
   _isDispForm = true;
 }

Need to find better alternative, maybe look at the form's buttons?

Fixed in 0.13.0