Doesn't seem to work with recent versions of GHC

Had an idea for a language I wanted to use Parsley for but just bootstrapping a project with stack & GHC 9.4.5 and doesn't seem like it's up to date?
Curious how I should proceed?

Fork and try and bump the versions or "just use an older GHC" maybe?
Use another parsing library maybe newer/older? (any recommendations / things to avoid in particular)?

I watched you're talks and specifically the bit about chainL is why I'm interested in using Parsley in the first place cause I ran into exactly this a while back trying to parse stuff in Elm via elm/parser. Ended up having to change my AST which was a major pain point.

I'm aware the parsley-garnish is broken on later GHC's (needs a rewrite), but not parsley itself. Let me check

Ah right, looks like I've just been too conservative with my bounds on 9.6: I can fix that on the currently published versions, but you might want to wait for me to get around to releasing the next version of parsley-core for stability updates.
I would recommend gigaparsec, if only it weren't a day old 😛. I'll just push the version stretch: if it works ok, I'll weaken the bounds on the older versions (after testing them, of course)

Ok, so parsley-<IP_ADDRESS> can happily widen the versions, but the current parsley-core published cannot work with 9.6. I'll try and make a release of core <IP_ADDRESS> as soon as I can :)

[x] parsley-<IP_ADDRESS> released
[ ] parsley-core-<IP_ADDRESS> released

Well hot dog! Glad I asked, thanks a ton!


Floating point exception with unit test "test_convolution_forward_u8s8fp"

Summary
make test failed for several unit tests.
Version
rls-v1.0 883133c3b97d27fc6eb976b2cea2a25252f0d911
Environment

CPU make and model
Thread(s) per core:    2
Core(s) per socket:    32
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 85
Model name:            Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
OS version (uname -a)
Linux iZ8vbi18phbt0xgofpsvomZ 3.10.0-327.ali2012.alios7.x86_64 #1 SMP Mon Oct 9 14:09:14 CST 2017 x86_64 x86_64 x86_64 GNU/Linux
Compiler version (gcc --version)
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39)
CMake version (cmake --version)
cmake version 3.14.3
CMake output log
-- GPU support is disabled
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jingwei.zhang/src/mkl-dnn/build_rls-v1.0

Steps to reproduce
./tests/gtests/test_convolution_forward_u8s8fp
Observed behavior
Note: Google Test filter = :-_GPU*
[==========] Running 4 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 4 tests from Forward_SimpleSmall_Blocked_Attributes_CPU/convolution_test
[ RUN      ] Forward_SimpleSmall_Blocked_Attributes_CPU/convolution_test.TestConvolution/0
Floating point exception (core dumped)
Expected behavior
Test to pass
GDB result:
Program received signal SIGFPE, Arithmetic exception.
0x00007ffff7695483 in Xbyak::util::Cpu::getNumCores (this=0x7ffff7dcf540 <ZN6mkldnn4impl3cpu12_GLOBAL__N_1L3cpuE>, level=Xbyak::util::CoreLevel)
at /home/jingwei.zhang/src/mkl-dnn/src/cpu/xbyak/xbyak_util.h:253
253			case CoreLevel: return numCores[level - 1] / numCores_[SmtLevel - 1];
=> 0x00007ffff77babc8 <+1816>:	divl   0x614bbe(%rip)        # 0x7ffff7dcf78c <_ZN6mkldnn4impl3cpu12_GLOBAL__N_1L3cpuE+12>

Test passed on latest master branch.

@jzha136, thank you for verifying with the latest master. Are you ok to proceed with using the latest master or you need a v1.0.x patch release?


[chore] Update dependencies and refactored internal state.

This PR simplifies the portal's internal state using an enum CLOSED, OPEN, OPENING, CLOSING to instead of holding 2 states for beforeClose and afterOpen.
Functions like buildClassName and attributesFromObject were moved to a new file.

Coverage decreased (-2.3%) to 84.35% when pulling 6c2cdf7ae655661a51ceb2e5f506f0eff0ef9b8c on diasbruno:feature/react-modal-v4 into a2838bbfd11e6203ffb7df1b76575da328d0d3fd on reactjs:v4.


feat: Role, ClusterRole, RoleBinding, ClusterRoleBinding L2s (#432)

Backport
This will backport the following commits from k8s-22/main to k8s-21/main:

feat: Role, ClusterRole, RoleBinding, ClusterRoleBinding L2s (#432)

Questions ?
Please refer to the Backport tool documentation

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 685

Questions ?
Please refer to the Backport tool documentation


Fix automatic builds

If this is included in the atom build chain, it will fail (the actual path doesn't exist).
The main tag is not necessary anyways, so it can be removed

Thank you @AdrianVovk !


Cu 1wnwmr8 add confidence ranking to results

Results now get the score from Solr
The result each have an individual score, and the entire set has a max score. Result Score is displayed as a percentage of that max score.
How they are retrieved: https://cwiki.apache.org/confluence/display/solr/SolrRelevancyFAQ#SolrRelevancyFAQ-HowcanIseetherelevancyscoresforsearchresults
How individual scores are calculated: https://cwiki.apache.org/confluence/display/solr/SolrRelevancyFAQ#SolrRelevancyFAQ-Howaredocumentsscored

Task linked: CU-1wnwmr8 Add confidence ranking to results

Beauty - merging!


Look in to automatic redirect from http to https

Need more research how to do this in context of proxy. As the current implementation only works with x-forwarded-proto. Maybe set HSTS header?

@IljaN this is an old issue that was transferred from the archived ocis-proxy repo a few weeks ago.
Please close if no longer relevant.

Is no longer relevant.


Can't install angular/cli

Bug Report or Feature Request
- [x] bug report

Versions
Node: 10.13.0
NPM: 6.4.1

Repro steps
I type to cmd this command: npm install -g @angular/cli
After this it interrupt on step:
/ fetchMetadata: sill resolveWithNewModule<EMAIL_ADDRESS>
The log given by the failure
No logs

Desired functionality
I want to install @angular/cli

This seems like a problem with your node/npm and not with Angular CLI.
Please have a look at the fixing npm permissions page, common errors page, npm issue tracker, or open a new issue in that issue tracker if the problem you are experiencing isn't known.


Consider implementing a within-page top bar for buttons

Since we've implemented that "Edit this Page" button in the right sidebar, it has been bugging me and I'm not sure why.
I think it is because I categorize the right sidebar as a purely "TOC" section, and so it is confusing to me that there's both the TOC and other buttons in the same section.
What do people think about instead implementing a different section of the page explicitly for arbitrary "button-like" components?
An example would be a within-page topbar. This has been a useful pattern in jupyter book and is also used in bookdown. It could be a way to modularize the page more clearly and extensibly.

I think it is because I categorize the right sidebar as a purely "TOC" section, and so it is confusing to me that there's both the TOC and other buttons in the same section.

You could also see it as "page related", which includes things like the TOC of this page or a button to edit this page.
(but yeah, you can't tell people how to see it .. :-))
The within page topbar (eg in bookdown as you mentioned: https://bookdown.org/yihui/bookdown/#) seems nice as such, but I don't know how well it would integrate / fit with the already existing top bar.
But it sounds useful to think about this. Also a button to trigger the TOC sidebar (as in the linked examples) would be useful.

To me it's hard to know if the page will feel too cluttered until we mock-up something to look at. For a within-page topbar, I think it'd be important that it is relatively short in height and unobtrusive, with consistently-styled buttons in it.

I did a quick mock-up of what I had in mind. This is the current layout:

I imagined something like this:

Where the right sidebar is reserved only for TOC, and above the page title there is a small layer that has "buttons" relevant to the page (and one special button for collapsing the left sidebar, if readers wish). This could be extended for things like download links or page-level buttons.
What do you think?

in v0.13 an article header have been implemente (https://pydata-sphinx-theme--1174.org.readthedocs.build/en/1174/user_guide/layout.html#layout-article-header). Do you think we can close this issue ?


Unexpected behavior with event reader for neuralynx files

Describe the bug
When loading in a neuralynx file that had several starts and stops in recording (therefore missing data), the events in Events.nev and global start are relative to the most recent starting recording as opposed to the first sample of the file. Then when using event_reader.rescale_event_timestamp(timestamps), inappropriate timestamps are returned as a result.
To Reproduce
event_reader = NeuralynxRawIO(dirname=stems[0], include_filenames=event_path)
event_reader.parse_header()
ph_reader = NeuralynxRawIO(dirname=stems[0], include_filenames=ph_path)
ph_reader.parse_header()
global_start = ph_reader.global_t_start
global_start_ev = event_reader.global_t_start
print(global_start == global_start_ev) #Returns False if the recording itself had many stops and missing data
event_timestamps, _, event_labels = event_reader.get_event_timestamps()
event_times = event_reader.rescale_event_timestamp(event_timestamps)
event_times_manual = event_timestamps*10**-6 - global_start
print(event_times==event_times_manual) # prints False if the recording has many stops and it's not reflected as an event

Expected behaviour
I expect the rescale event timestamp method on event reader to return the timestamp in seconds relative to the first sample of the entire fire. Instead, the timestamps are returned relative to the most recent 'starting recording' event which doesn't always pop up in the event_reader events, despite in showing up when I open the file in other contexts. Essentially, the global_start for events.nev doesn't match the global start for photo.ncs or other .ncs files that were recorded simultaneously.
Environment:

OS: Windows, and tested on Linux
Python version: 3.11.3
Neo version: 0.13.4

Additional context
I'm only writing this so that others who are analyzing neuralynx data are aware of this potential issue. For now, I recommend avoiding the use of event_reader.rescale_event_timestamp(event_timestamps) and loading in a recording from the dataset to get global_start if needed. It'll take slightly longer but worth it. After getting global_start from a file, you can manually convert the event_timestamps with
rescaled_event_timestamps = event_timestamps*10**-6 - global_start

Thanks @eduardosand. This has been a big struggle with neuralynx (and other ios) that have pauses and skips. Maybe @samuelgarcia or @PeterNSteinmetz have opinions on this since they know this IO much more than I do.

@eduardosand Can you try it using the keep_original_times=True argument in the constructor?
If that doesn't work, it would be useful to have a set of test files to see exactly what is happening.
I notice that the two constructor calls appear to have different include_filenames. Without the keep_original_times, the first time in the file(s) provided is subtracted from all times being returned.

Yes, so that's what I mean. From the same dataset, but from different files (events.nev and photo.ncs(or any other file)), the global_t_start are different. The event labels then, rescaled or not, are in this case about 9000 seconds off, I think because of the start and stop.
I know the event labels are inappropriate because I'm using ephy_viewer to comb through my photodiode signal to separate out different tasks in the same file and noticed the event labels were offset by 9000, but relative to each other are correct.
https://drive.google.com/drive/folders/17JAKAyIKZUhpi08s0Ztg_L-HM4nGvVeA?usp=sharing

@eduardosand Those files are in a protected DropBox. I just requested access so you should see that.

So I noticed that in general the global_t_start agrees across NeuralynxRawIO if they're streams (.ncs files), but occasionally the global_t_start of a .nev file is the one that disagrees(hence the issue here).
Might be a bug, but after using keep_original_timestamps=True, and
event_timestamps, _, event_labels = event_reader.get_event_timestamps()
event_times = event_reader.rescale_event_timestamp(event_timestamps)
print(event_timestamps == event_times)

I found that this printed out true, suggesting rescale_event_timestamp didn't rescale my times. My understanding of the rescale_event_timestamp method, is it does the computation I suggested in the original post, namely
rescaled_event_timestamps = event_timestamps*10**-6 - global_start
But, since global_start would be 0 if keep_original_times=True, then rescaling doesn't change anything. As a result, the event_times fail to be meaningful.
I granted you access to the files.

@eduardosand Please see the code below. It should run without a failed assertion for your test files.
I believe the trouble you are experiencing may be related to not having specified a event_channel_index in the get_event_timestamps method call which then defaults to 0. If this does not resolve your issue, can you please add some assertions to the code snippet which are failing and which illustrate the problem you are seeing?
This has unearthed another bug, which I think is unrelated to you issue. Thus can we have your permission to use this .nev file in the testing data repository? Is it human subjects data by any chance? If so, do we need to anonymize it in some way.
`
"""
Script to test retrieval of timestamps in Gavin Yang Neuralynx .ncs and .nev files.
"""
from neo.rawio.neuralynxrawio.neuralynxrawio import NeuralynxRawIO
nev file
nevRawIO = NeuralynxRawIO(dirname='.', include_filenames=['Events_0012.nev'], keep_original_times=True)
nevRawIO.parse_header()
assert(nevRawIO.global_t_start==0)
assert(nevRawIO.global_t_stop==3150.419734954834)
there are two event channels in this .nev file because there are two separate event_ids used,
4 and 19.
assert(nevRawIO.event_channels_count()==2)
Retrieving without specifying the event_channel_index, returns the 0th one by default,
corresponding to event_id==4. The first event with this id is the 3rd one in the file. There
are only 2 events in this event_channel.
assert(nevRawIO.event_count(0,0,0)==2)
event_timestamps, _, event_labels = nevRawIO.get_event_timestamps()
value in microseconds from binary inspection of file
assert(event_timestamps[0]==1597946624394866)
event_timestamps_rescaled = nevRawIO.rescale_event_timestamp(event_timestamps)
assert(event_timestamps_rescaled[0]==1597946624.394866) # in seconds
The first and last events in this file belong to channel with event_id==19, with
event_channel_index == 1, which contains 3 events.
event_timestamps, _, event_labels = nevRawIO.get_event_timestamps(0,0,1)
assert(len(event_timestamps)==3)
The value of global_t_stop is erroneously set to the difference between the first and last
events in this case. This is a bug, though not clearly related to that reported in Issue #1597.
assert(event_timestamps[2]-event_timestamps[0]==3150419735)
ncs file
ncsRawIO = NeuralynxRawIO(dirname='.', include_filenames=['photo1_0012.ncs'], keep_original_times=True)
ncsRawIO.parse_header()
assert(ncsRawIO.global_t_start==0)
This file is much longer in real time, possibly due to the gaps combined with starting and
stopping the recording.
assert(ncsRawIO.global_t_stop==12532.693468093872)
assert(ncsRawIO.block_count()==1)
this shows there are gaps in the timestamps between contiguous blocks of recording in this file
assert(ncsRawIO.segment_count(0)==4942)
first sample in the first signal channel
str0tStart = ncsRawIO.get_signal_t_start(0,0,0)
str0Len = ncsRawIO.get_signal_size(0,0,0)
value from binary inspection of file converted to seconds
Note that this is very close to the global_tstart of the .Nev file.
assert(str0tStart==1597936900.445226)
assert(str0Len==15872) # there are this many 512 sample records in the first contiguous block
`

@eduardosand On further thought, I wonder if the apparent discrepancy may be due to the use of ephyviewer when looking at the signal in photo1_0012.ncs. I believe it may ignore the gaps and breaks in recording and present all samples as one contiguous time block, even when that is not the case. There are 4942 segments in this file and apparently some very large gaps.

@PeterNSteinmetz Thanks for looking into this. So I actually process the data into a numpy array ahead of using ephyviewer. I deal with gaps by interpolating across them (in between segments I compute the difference between the timestamp of the last sample of the first segment and the first sample of the first segment). That's actually part of the reason I noticed this discrepancy. I have it print out when there are large sections without samples and noticed that if I took that time to be 0, then the events labels did have the correct time, suggesting that that time was being mistaken as global_t_start.

@eduardosand Please see the code gist at https://gist.github.com/PeterNSteinmetz/0472b4a7fd75749922a5c76d2b0d4c6f. It should run without a failed assertion for your test files.
I believe the trouble you are experiencing may be related to not having specified a event_channel_index in the get_event_timestamps method call which then defaults to 0. If this does not resolve your issue, can you please add some assertions to the code snippet which are failing and which illustrate the problem you are seeing?

@PeterNSteinmetz
I didn't catch this until now. I just ran the code gist. Runs so that's good. I still think there's an additional bug on top of the one you pointed out.
`event_timestamps, _, event_labels = nevRawIO.get_event_timestamps()
value in microseconds from binary inspection of file
print(event_timestamps)
print(event_labels)
assert(event_timestamps[0]==1597946624394866)
event_timestamps_rescaled = nevRawIO.rescale_event_timestamp(event_timestamps)
assert(event_timestamps_rescaled[0]==1597946624.394866) # in seconds`
Note that this last line seems to imply the first event was 50 YEARS after the first sample. My guess is that when nevRawIO.get_event_timestamps() runs with keep_original_times=True, the global_t_start isn't subtracted from all the event times, leading to this issue.
Additionally,
assert(str0tStart==1597936900.445226)
#<PHONE_NUMBER>.718943 this is the global_tstart of the .nev file

It's possible I'm mistaken but in my hands the global_tstart of the .nev file is a whole 9382 seconds after the global_tstart of the .ncs file.
Not sure how to edit your gist. Here's some extra code that highlights the issue. In short, I think that the neuralynx machine was unable to record a 'Starting Recording' event at the start of the file stream but managed to get the 'Stopping Recording'. The 'Stopping Recording' event is being used as t=0 for Events_0012.nev because I guess it's assumed that the first event is t=0. Not necessarily a bug, but maybe there could be a warning that the first event label isn't the 'Starting Recording' label so global_t_start is likely to be inaccurate?
nevRawIO_orig = NeuralynxRawIO(dirname=".", include_filenames=['Events_0012.nev'], keep_original_times=True)
nevRawIO = NeuralynxRawIO(dirname=".", include_filenames=['Events_0012.nev'], keep_original_times=False)
nevRawIO_orig.parse_header()
nevRawIO.parse_header()

raw_event_timestamps, _, raw_event_labels = nevRawIO.get_event_timestamps()
assert(raw_event_labels[0]=='WCST3')
raw_event_timestamps_rescaled = nevRawIO.rescale_event_timestamp(raw_event_timestamps)
missing_event_timestamps, _, missing_event_labels = nevRawIO.get_event_timestamps(0, 0, 1)
assert(missing_event_labels[0]=='Stopping Recording')
missing_event_timestamps_rescaled = nevRawIO.rescale_event_timestamp(missing_event_timestamps)

# This passes but given that first label is 'stopping recording' and not actually at start of recording, maybe rescaling should at least throw a warning
assert(round(raw_event_timestamps[0]*10**-6-missing_event_timestamps[0]*10**-6,5)==round(raw_event_timestamps_rescaled[0],5))

# getting correct times
ncsRawIO = NeuralynxRawIO(dirname='.', include_filenames=['photo1_0012.ncs'], keep_original_times=False)
ncsRawIO.parse_header()
# these event labels make more sense given the signal
assert(round(raw_event_timestamps[0]*10**-6-ncsRawIO.global_t_start,5)==9723.94964)

This has unearthed another bug, which I think is unrelated to you issue. Thus can we have your permission to use this .nev file in the testing data repository? Is it human subjects data by any chance? If so, do we need to anonymize it in some way.

The .nev file and .ncs are from a session with a patient but I didn't share any files that have neural signals present (photodiode file is just the triggers). Am I right to assume that the name in the gist you sent, is something you found in the data? If so, that is an issue, as the data does need to be anonymized. I had assumed this data didn't have Personally Identifiable Information (PII), but if it does, I'll work to scrub it before giving you permission to use the files.

I understand you have a workaround presently, is that correct?

My work around is the following. Global_t_start is correctly recorded from other files, so as long as there is both an .ncs file and .nev file, the expected behavior that i want can be attained in the following way (just rescaling the event labels manually). Note here the use of different readers(one to get the events and another to get global_start). This is done so that I can rescale the event labels appropriately and they make sense in the actual data stream.
event_reader = NeuralynxRawIO(dirname=stems[0], include_filenames=event_path, keep_original_times=False)
event_reader.parse_header()
ph_reader = NeuralynxRawIO(dirname=stems[0], include_filenames=ph_path, keep_original_times=False)
ph_reader.parse_header()
global_start_ph = ph_reader.global_t_start
event_timestamps, _, event_labels = event_reader.get_event_timestamps()
rescaled_event_timestamps = event_timestamps*10**-6 - global_start_ph

@eduardosand Thanks for that code. I have had a look at this.
Here is one issue that causes the mismatch which you are testing with the line
assert(round(raw_event_timestamps[0]*10**-6-ncsRawIO.global_t_start,5)==9723.94964)
The raw_event_timestamps are coming from a call on nevRawIO which is created with keep_original_times=False. Therefore those timestamps are relative to the first item in that .nev file. The ncsRawIO.global_t_start is from a RawIO which is created with keep_original_times=False also (the default) and so the times returned there are relative to the first block of samples in the .ncs file. Since these are separate rawIOs, there is no necessary guarantee that the relative timestamps are based on a common starting time. Each RawIO has its own.
If you were to place these in a directory and just give a dirname to the NeuralynxRawIO constructor, then all the timestamps returned should be relative to a common starting timebase.
Since there is no requirement for particular record types to be included in a .Nev file, I am not in favor or starting to add checks for specific record types in a general class like NeuralyxRawIO. Clearly this can be checked for separately or even implemented in a subclass if desired, but this is supposed to be a general RawIO in the library.
I think this explains the issue you raised here, does it not? If so, I will close this issue.
Of course there is still issue #1598, which I think made this more confusing, but I don't think fixing that will change what you observe here.

If you were to place these in a directory and just give a dirname to the NeuralynxRawIO constructor, then all the timestamps returned should be relative to a common starting timebase.

I tried this, and then I'm unable to return any event_timestamps or labels. Is this another bug or expected behavior if events_file global_t_start doesn't match with photodiodes global_t_start?
I think the check is not ideal, but it'd be nice to have event labels with timestamps that are accurate with respect to .ncs files.

I am starting to work on fixing this in general and addressing Issue #1598. However, g-node.org/NeuralEnsemble/ephy_testing_data is presently down which presents tests from running. Hopefully it will be back up soon.

@eduardosand Please see the new test_keep_original_times at https://github.com/NeuralEnsemble/python-neo/pull/1600/files#diff-8add58a38b5fa610d9c4ec70cac983670acb5307d9b3da86f3a18a314caa8365 . File test_neuralynxrawio lines 180-238.
This demonstrates how keep_original_times and the original timestamps and rescaling are supposed to work, per BaseRawIO. This uses the extant test data which includes .ncs, .nse, and .nev files all in one directory. When you do that, there is one global_t_start that properly references them all, whether keep_original_times is set to True or False (the default).
The documentation of this operation beyond the comments on the BaseRawIO methods could probably use some expansion.
I think this closes this issue, but if not, please feel free to let me know what other question you may have.

@zm711 Zach, I think this can now be closed.


Make our Tor instances be relays

This is a follow-up on #94
Currently, we have on-server Tor instances that only act as proxies (for those of our users who use them explicitely).  We can easily set them to accept to carry Tor traffic.
To be very clear, I am not suggesting we let them be exit nodes: traffic won't exit the Tor network through our servers, Atlantic.net won't receive Tor-related abuse@ complains, etc...
Pro:

more effective at anonymizing our Tor-using users, against a network-level adversary;
warm, fuzzy feeling because we help people around the world.

Con:

increased bandwidth use, up to the bandwidth cap we set.

Atlantic.net is donating bandwidth/data specifically for #! shell related traffic/activities with the agreement everyone using our resources sees the "sponsored by atlantic.net" ad. They trade us bandwidth for us giving them a little exposure to a community of engineers. Opening TOR  public traffic means random people using the donated bandwidth without ever seeing the ad which kind of goes outside of our handshake agreement.

@lrvick That's fair enough.


Provide last update on each page of the DevEx Site

Description
As a user I would like to know when a page was last updated so it’s clear to me the recent update of content.
Acceptance Criteria

a new section is added to the bottom of the page above the site footer
add page last modified {month, day, year}  to each page on the site. this indicates the last time the page was updated

@djsauble do you have any ideas for the design of this? I would assume it's on every page in the footer

I spent a few minutes playing with this. One thing we could do is differentiate between page-specific actions (e.g. edit this page, view history) above the footer separator and general actions (e.g. terms of service, create an issue) below the footer separator. In particular, "View history" is new but would link to the latest diff of the current page on GitHub (I added because it looked a bit bare to only have the "Edit this page" action above the separator, but we could skip if it's too difficult to implement or if @jpvajda disagrees).

@djsauble If view history isn't a lot of effort I think it's cool to have it especially for guides, as if they have a version that someone may have been using, perhaps they'd want to look at an older version of the page.

Daniel and I decided to just go with the page last modified time stamp after we discussed this.

Updated mock

@djsauble thank you! Implementing this now :)


add mesh skin depth for maxwell 2d

@gmalinve One question, with this implementation is also possible to retrieve the skin depth from an existing design? I mean, this PR does the SET of this property, but I am wondering if the get is also implemented.

@Samuelopez-ansys yes, it does :) I just checked


Feature Request : Refresh Command skip missing files.

Could the stapler:refresh ignore missing files instead of just bombing out in the middle of the process.

That would be cool indeed! +1


DOC: documenting the SciPy API with __init__.py files (discussion)

Issue with current documentation:
Hi there, I am opening this issue to collect thoughts and ideas on an open-ended question regarding the SciPy documentation. I am a GSoC student this year under the NumFOCUS umbrella organisation, and @tinosulzer and I have been planning to draw some inspiration from SciPy to improve the documentation infrastructure for the PyBaMM package: the documentation is currently hosted at docs.pybamm.org with ReadTheDocs, and we aim to make it more maintainable with all the moving parts it has, possibly programmatically or with other methods we can incorporate into our workflows. We have some questions for the SciPy maintainers whose answers shall be, in our regard, worthwhile in our endeavour:

It is to note that the SciPy documentation makes extensive use of Sphinx .. toctree:: directives inside __init__.py files of module folders, e.g., scipy/stats/__init__.py. However, adding toctrees inside an __init__.py file with a docstring is generally rare (ref: this StackOverflow answer). These may be generated by the autosummary Sphinx extension which we don't use at the moment (I am not sure how it works), but __init__.py files are meant to serve as labels for module imports in Python packages—key functions can be imported directly into the package namespace which keeps the API stable for users, even if the API undergoes an internal restructuring process – of course not without pros and cons, and a multitude of other approaches to __init__.py files also exist. TLDR: It would be great to get insight on documenting APIs inside __init__.py files plus their .rst counterparts to list .. autoclass:: or .. autofunction:: directives, in comparison to adding documentation separately inside a docs/source/api/ directory with traditional .rst files.

What concerns does the above approach serve pertaining to the maintainability of the SciPy documentation? For example, there are 70 issues labelled with the "documentation" tag and a bit more with the DOC: prefix (including this one now haha). Are there any unforeseen difficulties that have been noticed; and in hindsight, was doing this a good idea?

Please feel free to close this issue lest it does not fit triaging requirements and continue the conversation in this thread, or serve these questions a redirection to an appropriate platform for asking them (mailing lists, et cetera).
Idea or request for content:
N/A
Additional context (e.g. screenshots, GIFs)
For example, scipy/stats/init.py contains a primer on the statistics-related functionality offered by SciPy and links all of them in one place, while the individual methods in the API are documented on their own pages. It would be assumed that such a file would reside in the docs/ folder, but having it in __init__.py has its own advantages of making the code more reachable (everything is inside the same folder for hasty access).

@agriyakhetarpal you wrote a good summary, thanks. The linked StackOverflow answer seems very reasonable. I'd say that the current structure in SciPy is a result of both history and the need for detailed control over how docs are laid out for a large and messy library. A few points:

SciPy did not have a good split between public and private APIs until very recently, so simply using .. automodule:: with :members: wasn't possible.
In the past it was very common to read docs in IPython & co. It may still be important, if less so than in the past. What goes in .rst files isn't accessible, while the contents of __init__.py are. E.g., from scipy import stats and then stats?? in IPython is something I still do.
I would not use .. autoclass:: or .. autofunction:: directives directly, that's going to be much more verbose than .. automodule:: or .. autosummary:: when you have a large API surface.

If you're writing redoing something from scratch, I'd keep __init__.py completely empty except for named (not *) imports of public API objects from other files. And then using .. automodule:: should be much easier.

We don't have plans to redo the documentation from scratch, so keeping __init__.py empty would not be a necessity as such—but we do have plans to mark certain public API members as private, which could possibly end up being a long-drawn-out process and getting up to closure on that might just make using autoclasses and autofunctions easier.
I shall close this issue; thank you so much not only for the detailed reply but also for these tidbits of yesteryear on reading documentation locally with IPython, I had not heard of it before but it sounds very cool. :)


Actual behavior
Neovim showed [].
ping @4513ECHO @kuuote . Thanks

Attach is not included in your instruction.

set rtp+=~/work/denops.vim
set rtp+=~/src/lspoints
set rtp+=~/src/lspoints-copilot

It just works.  :Copilot command is defined.  What is the problem?

I cannot reproduce your behavior.  copilot extension is loaded and attached.

What the version of Deno is old causes this issue.

This issue is solved by Deno 2.0.0. Thanks!


Add support for collections in request body

Currently, request body content is limited to a single value. Provide support for declaring collection content (i.e. a list of values) as well. This will parallel the support for list content in request arguments.
This could be done by adding a boolean multiple attribute to the Content annotation. To make the annotation more readable, the current value attribute could be renamed to type.

This is done.


Add some form of persistent queue/storage system for the Tracker

All events are currently only loaded into an in memory buffer.    So it is up to the developer to ensure they resend any failed events.
It would be better to simply push all events into persistent storage for later sending like so:

tracker.track(...) -> event stored and then a polling emitter checks for events every second.

We can be a bit slower to send but we have to ensure we do not lose the event that is created.
This model also allows for the following features:

Do not send if their is no active network connection
No need to pass events back from the callback mechanism
Developer does not need to manage failures anymore
No more constant failure loops if their is a network failure

Potentially RocksDB? I know that Samza is moving (has moved?) from LevelDB to RocksDB: https://github.com/facebook/rocksdb/wiki/RocksJava-Basics

Looks pretty snazzy


Spyder cannot start in Wayland mode on Ubuntu 24.04

Problem Description
With a fresh install of Ubuntu and Anaconda, I cannot use Wayland with Spyder.
When launching:
QT_QPA_PLATFORM=wayland spyder
I get:
Could not find the Qt platform plugin "wayland" in ""
Even if I set the QT plugin path:
QT_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins/ QT_QPA_PLATFORM=wayland spyder
I get:
Could not load the Qt platform plugin "wayland" in "" even though it was found.
What steps reproduce the problem?

Install Anaconda on Ubuntu 24.04
Try to launch spyder with Wayland
=> it does not work

What is the expected output? What do you see instead?
We should be able to use Spyder with Wayland support.
Versions

Spyder version: 5.5.1
Python version: 3.12
Qt version: 5.15
PyQt version: 5.15
Operating System name/version: Ubuntu 24.04

Hey @parrenin, thanks for reporting. I think Anaconda packages don't come with Wayland, so that's why you can't use Spyder with them.
However, you can use Conda-forge packages (a set of community-maintained packages), which include Wayland support for Qt. For that, please open a terminal and run the following commands:
conda create -n spyder-env -c conda-forge spyder python=3.12 qt-wayland
conda activate spyder-env
spyder

Let us know if it works for you.

Thanks @ccordoba12, it works with conda-forge!
This is especially useful when using fractional scaling on Linux.
Two small remarks:

I still have to use QT_QPA_PLATFORME=wayland, so it seems wayland is still not default
The pointer has a different shape compared to the standard Gnome pointer.

I still have to use QT_QPA_PLATFORME=wayland, so it seems wayland is still not default

I understand that's a serious limitation, but we'll try to address it before the Spyder 6 release.

The pointer has a different shape compared to the standard Gnome pointer.

You can also install the qt-gtk-platformtheme to see if it helps (but I'm not sure about that):
conda activate spyder-env
conda install -c conda-forge qt-gtk-platformtheme

I understand that's a serious limitation, but we'll try to address it before the Spyder 6 release.

Well, that is not a serious limitation once you have figured it out.

You can also install the qt-gtk-platformtheme package to see if it helps (but I'm not sure about that):

I did but it did not help.
BTW, not only is the pointer different, but it is also twice too big (I am using a 200% scaling in Gnome)

So it is like the pointer is scaled at 400% instead of at 200%.

Sorry, I have no idea how to fix that.

Just for the record, the spyder .deb package (5.5.1) provided by Ubuntu 24.04 does use wayland by default.
So I am using this one for now.

@parrenin thanks for that.
I also ended up installing the spyder 5 deb packages with sudo apt-get install spyder on Ubuntu 24 with wayland. The other solutions discussed above did not work for me (also not after including qt-wayland from conda).

I would like to express my own experience.
I have no problem with the following :

Latest version of spyder (6.), installed via conda-forge channel :

conda create -n env_4 -c conda-forge python spyder

Latest version of ubuntu
No need to run : QT_QPA_PLATFORME=wayland

When I run ‘spyder’ in miniconda command line, I get the following warning, bu spyder runs with no error :
Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
More information from my system :
aryo@aryo-X761X:~$ cat /etc/*release*
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.10
DISTRIB_CODENAME=oracular
DISTRIB_DESCRIPTION="Ubuntu 24.10"
PRETTY_NAME="Ubuntu 24.10"
NAME="Ubuntu"
VERSION_ID="24.10"
VERSION="24.10 (Oracular Oriole)"
VERSION_CODENAME=oracular
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=oracular
LOGO=ubuntu-logo

(env_4) aryo@aryo-X761X:~$ conda list spyder
# packages in environment at /home/aryo/miniconda3/envs/env_4:
#
# Name                	Version               	Build  Channel
pyls-spyder           	0.4.0          	pyhd8ed1ab_0	conda-forge
spyder                	6.0.3       	linux_pyh62a8a7d_1	conda-forge
spyder-kernels        	3.0.2       	unix_pyh707e725_0	conda-forge

(env_4) aryo@aryo-X761X:~$ conda list qt
# packages in environment at /home/aryo/miniconda3/envs/env_4:
#
# Name                	Version               	Build  Channel
fcitx-qt5             	1.2.7            	h748e8b9_2	conda-forge
pyqt                  	5.15.10     	py313h6a678d5_0
pyqt5-sip             	12.13.0     	py313h5eee18b_0
pyqtwebengine         	5.15.10     	py313h6a678d5_0
qt-main               	5.15.15          	h796de64_1	conda-forge
qt-webengine          	5.15.15          	hd04a301_1	conda-forge
qtawesome             	1.3.1          	pyh9208f05_0	conda-forge
qtconsole             	5.6.1          	pyhd8ed1ab_1	conda-forge
qtconsole-base        	5.6.1          	pyha770c72_1	conda-forge
qtpy                  	2.4.2          	pyhdecd6ff_0	conda-forge
sphinxcontrib-qthelp  	2.0.0          	pyhd8ed1ab_1	conda-forge
superqt               	0.7.0          	pyhb6d5dde_0	conda-forge
(env_4) aryo@aryo-X761X:~$

(env_4) aryo@aryo-X761X:~$ conda list python
# packages in environment at /home/aryo/miniconda3/envs/env_4:
#
# Name                	Version               	Build  Channel
brotli-python         	1.1.0       	py313h46c70d0_2	conda-forge
ipython               	8.31.0         	pyh707e725_0	conda-forge
python                	3.13.1      	ha99a958_102_cp313	conda-forge
python-dateutil       	2.9.0.post0    	pyhff2d567_1	conda-forge
python-fastjsonschema 	2.21.1         	pyhd8ed1ab_0	conda-forge
python-gssapi         	1.9.0       	py313he66c591_1	conda-forge
python-lsp-black      	2.0.0          	pyhd8ed1ab_0	conda-forge
python-lsp-jsonrpc    	1.1.2          	pyhd8ed1ab_0	conda-forge
python-lsp-server     	1.12.0         	pyhd8ed1ab_0	conda-forge
python-lsp-server-base	1.12.0         	pyhd8ed1ab_0	conda-forge
python-slugify        	8.0.4          	pyhd8ed1ab_1	conda-forge
python_abi            	3.13                	5_cp313	conda-forge
types-python-dateutil 	<IP_ADDRESS>41206 	pyhd8ed1ab_0	conda-forge

Hence, again, I have no problem with it, & only expressed this as an info for the developers.


How can i create new post?

It would be something like:
>>> from wordpress_json import WordpressJsonWrapper
>>> wp = WordpressJsonWrapper('http://example.com/wp-json/wp/v2', 'wp_user', 'wp_password')
>>> wp.create_post(data=dict(title='A treatise', status='draft'))

Given the right version of wordpress this would work, but this library is not maintained for newer versions, so YMMV.


False positive when reporting error

I'm following Amethyst's pong game tutorial to learn how to use that crate, and I ran into a false error on rust-analyzer's part.
More specifically, the language server is complaining about an attempt to call a function of 1 argument with three arguments, even though the function does, in fact, take three arguments, and the code compiles succesfully.
I'm using rust-analyzer 0.3.314-nightly, via the VSCode extension, on Windows 10
Here are the erroring lines. The relevant function is the last in that chain, but the whole chain is underlined in red
Here is the output of cargo check
Finally, here is a picture of what the error looks like on my screen
Moreover, if I try to call that function with only the first argument, rust-analyzer still underlines the function name (and nothing else), saying this function takes 3 arguments but 1 argument was supplied (which, by the way, is the same error I get from cargo check).

It looks like amethyst isn't loaded by rust-analyzer. Both let app_root = application_root_dir(); and GameDataBuilder::default() don't have type hints. Try restarting rust-analyzer.

Restarting rust-analyzer, VSCode, or my entire computer didn't help.
(Also, there are type hits for other variables and functions. Shouldn't this mean rust-analyzer did load amethyst, to know the type of those things? Or is my expectation just wrong?)

Update: I believe this may be a name conflict that rust-analyzer fails to disambiguate correctly.
Ctrl-clicking on the with method itself brings me to specs-0.16.1/src/world/mod.rs, to the trait Builder therein defined, which does define a functionwith that takes one argument. (BTW, as far as I can tell, this is not part of specs' exported traits).
Ctrl-clicking on the GameDataBuilder struct brings me to amethyst-0.15.3/src/game_data.rs, to the struct GameDataBuilder therein defined. Scrolling through that file reveals that that struct has a method with that takes three arguments, matching the one I'm using in my code

Update 2: I am not quite sure what happened, but the error is no longer reported.
ctrl-clicking still displays the incorrect behaviour, and hovering shows the wrong rustdocs, but an error is no longer reported

@T-Dark0 can you test again? This seems to work fine now:

@T-Dark0 can you test again? This seems to work fine now:


Minor bugfixes

If the HTTP request isn't successful, show the errors.
More intelligent parsing of repo urls. The leading / on the path of a git HTTP url was causing the app to explode.
Emit an error when the user is not within a git repo

:+1:


Fix typo

Nice resource! Spotted a small typo while reading it so thought I'd just PR the change

Thanks Marty!


Require main active_support lib before any of its extension definitions

It seems to be the recommended way with active_support >= 7.0.
See https://guides.rubyonrails.org/active_support_core_extensions.html#cherry-picking-a-definition
Fix #2205.

thanks, it certainly makes sense

It seems to be the recommended way with active_support >= 7.0.

if I understood correctly it was recommended even with active_support = 5.0 or even earlier.
could you please update the changelog?

Done @dm1try

@dblock @dm1try I think a new release is required for this one. this could break (at least on https://github.com/the-benchmarker/web-frameworks/pull/4896) grape usage

@waghanza makes sense, I'll do it on this weekend if nobody else picks it up first

@waghanza makes sense, I'll do it on this weekend if nobody else picks it up first

I had started on last weekend but then realized that "ruby-head" test targets are red and it's not clear how important it is. So the the release was postponed for a while.

released 1.6.1
@dblock could you please send a message to the google group, it looks like I've lost the access to my account.

released 1.6.1
@dblock could you please send a message to the google group, it looks like I've lost the access to my account.

Looks like you got it back or sent it from another one? I hit approve on the release email. Thanks for making a release!

Looks like you got it back or sent it from another one?

yeah, I've restored some account)


Can't deselect Checkbox with useCheckboxState when using string values

Current behavior
Can't deselect Checkbox with useCheckboxState when using string values
Steps to reproduce the bug

Open sandbox: https://codesandbox.io/s/ariakit-checkbox-string-value-bug-plktk0
Select checkbox
Try to toggle it

Expected behavior
Should be able to deselect it.
Workaround
We can work around that by using our own state instead of useCheckboxState.
Possible solutions
No response

When I remove the "value" attribute, the component work successfully. So,may be the "value" attribute cause the problem?

When I remove the "value" attribute, the component work successfully. So,may be the "value" attribute cause the problem?

Bingo! The combination of providing a value attribute, alongside not initializing defaultValue: [] made things not work.
We gave it a try to fix it. See #2223.


#278 global css selectors

To make folders structure more consistent in the /views folder, I'd suggest moving sub-components from BottomToolbar, LeftToolbar, RightToolbar, ToolbarGroupItem, TopToolbar folders into BottomToolbar/components, LeftToolbar/components, RightToolbar/components, ToolbarGroupItem/components, TopToolbar/components and make the same for inner sub-components

You have component A, which has components A1 and A2. It is a kind of component dependencies, You don't need to join this dependencies with other, because in this case, when you move (or remove) component A you will leave A1 and A2 in components folder as a trash, because you forgot about it.
I belieave this is not the best way for folder structure...


Copy hostname and IP when clicked (#182)

In advance, this pull request might have a merge conflict with #174
In addition to the suggestion in #182 to copy the IP, I also made the hostname copyable.
Because Hyperline decorated the Hyper instead of the Term component, and used absolute positioning, the "onClick" event handler wasn't executed. This is why I decided to decorate the Term component so that the console part doesn't overlap with the Hyperline component and is still at the bottom.

^ ppssstt, the IP is made up by my beautiful imagination capabilities

Closing this PR due to inactivity since mid-2019.


[nativescript-couchbase] inBatch method doesn't work on Android

Hi! I try to use the inBatch method, iOS works, but Android doesn't.
      const processingLoop = () => {
        for (let i = 0; i < claims.length; i++) {
          const documentId = 'claim_' + claims[i].id;
          const existingDocument = this.database.getDocument(documentId);
          // add a unique type, since couchbase does not have the name of collections or tables
          Object.assign(claims[i], { _type: 'claim' });

          if (!existingDocument) {
            this.database.createDocument(claims[i], documentId);
          } else {
            this.database.updateDocument(documentId, claims[i]);
          }
        }
      };

      try {
        this.database.inBatch(() => processingLoop());
      } catch (e) {
        console.log('e);
      }

I solved this by creating a new thread for Android :) for iOS left the implementation offered by the plugin

I see that there have been updates to make it work on Android. Yay! @triniwiz  update the npm please!

Should be fixed with #180
@triniwiz Please update the npm package.


Can't Build Ubuntu 16.04

When I get to the make command when installing on Ubuntu 16.04 I encounter this error:
make
[  0%] Built target gtest
[  0%] Built target gtest_main
[  1%] Built target gpsnmea
[  1%] Built target quat
[  1%] Built target vrpn_atmel
[ 11%] Built target vrpnserver
make[2]: *** No rule to make target 'jsoncpp_lib-NOTFOUND', needed by 'bin/osvr_json_to_c'.  Stop.
CMakeFiles/Makefile2:1451: recipe for target 'devtools/CMakeFiles/osvr_json_to_c.dir/all' failed
make[1]: *** [devtools/CMakeFiles/osvr_json_to_c.dir/all] Error 2
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2

Can't seem to find a solution to the issue, everything else seemed to either come along or was a case of missing a dependency.
Suggestions?

Hey,
Did you build jsoncpp prior to try to build OSVR-CORE?
Basically before build OSVR-CORE you need to build jsoncpp as well as libfunctionality.
Try to build first jsoncpp:
git clone --recursive https://github.com/VRPN/jsoncpp
cd jsoncpp; mkdir build; cmake .. -DJSONCPP_WITH_CMAKE_PACKAGE=ON -DJSONCPP_LIB_BUILD_SHARED=OFF -DCMAKE_CXX_FLAGS=-fPIC; make install
Then build libfunctionality:
git clone --recursive https://github.com/OSVR/libfunctionality.git
root@OSVR:/osvr# cd libfunctionality/ ; mkdir build ; cd build; cmake ..; make install
Then you will be able to build OSVR-CORE.
Let me know the result.
Best,

I am testing right now, I did not have jsoncpp installed (stupidly) I just removed the build directory and am trying fresh. Will update right away.

I have a recipe for Debian that you can apply in a pretty similar way on Ubuntu.
Prepare OS.

Install Debian(unstable) sid: Linux OSVR 4.5.0-2-amd64 #1 SMP Debian 4.5.4-1 (2016-05-16) x86_64 GNU/Linux
Update your apt source list at: /etc/apt/sources.list
deb http://ftp.de.debian.org/debian/ sid main
deb-src http://ftp.de.debian.org/debian/ sid main
deb http://ftp.de.debian.org/debian/ experimental main
deb-src http://ftp.de.debian.org/debian/ experimental main
apt-get update
Install git: apt-get install git
Install compiler CLANG/LLVM: apt-get install clang-3.9
Install cmake: apt-get install cmake (cmake version 3.5.2)
Install libopencv-dev: apt-get install libopencv-dev
Install libboost1.58-dev: apt-get install libboost1.58-dev
Install libboost-thread1.58-dev: apt-get install libboost-thread1.58-dev
Install libboost-program-options1.58-dev: apt-get install libboost-program-options1.58-dev
Install libusb-1.0-0-dev: apt-get install libusb-1.0-0-dev

Build process.

root@OSVR:~# mkdir /osvr ; cd /osvr
git clone --recursive https://github.com/VRPN/jsoncpp
2.1) cd jsoncpp; mkdir build; cmake .. -DJSONCPP_WITH_CMAKE_PACKAGE=ON -DJSONCPP_LIB_BUILD_SHARED=OFF -DCMAKE_CXX_FLAGS=-fPIC; make install
2.2) apt-get install libboost-filesystem1.58-dev
2.3) apt-get install markdown
git clone --recursive https://github.com/OSVR/libfunctionality.git
root@OSVR:/osvr# cd libfunctionality/ ; mkdir build ; cd build
cmake .. ; make install
git clone --recursive https://github.com/OSVR/OSVR-Core.git
cd OSVR-Core/ ; mkdir build ; cd build ; cmake ..

:+1:
Love the recipe, your fix worked for me so I am going to close this. I am able to run the OSVR server now. When I get into work tomorrow I will test with the HMD (only have the 1 for testing).

Why the default jsoncpp from Ubuntu 16.04.1 default repository does NOT work???
Cheers
Pei

@jiapei100 One problem is that it doesn't ship with the cmake scripts. So when our cmake script looks for it, it can't find it. I think that if you point the JSONCPP_LIBRARY and JSONCPP_INCLUDE_DIR variables at the right places it will work. (It's been ages since I've done it so I may be misremembering.)

Argh - I spent probably a week developing and testing and re-testing our
CMake scripts some time back, so that it would work out of the box with
even very old JSONCPP as found in Debian Jessie, but this bug, and #485
(which is presumably the same issue?) suggests that somebody broke
something somewhere (ubuntu....) that is unfortunately not covered by our
CI matrix. Presumably I need more VMs or containers.
FWIW, the 0.y.z-updated branch in vrpn/jsoncpp is actually the preferred
one ATM. I've switched the default there so that's what you get checked out
by default now if you clone from now on, but just FYI. (Upstream has some
strange CMake code I fixed, as well as some cross-platform
incompatibilities like using a GCC-only "scoped_ptr" internally, etc.)
On Sun, Oct 2, 2016 at 10:21 AM Kevin Godby<EMAIL_ADDRESS>wrote:

@jiapei100 https://github.com/jiapei100 One problem is that it doesn't
ship with the cmake scripts. So when our cmake script looks for it, it
can't find it. I think that if you point the JSONCPP_LIBRARY and
JSONCPP_INCLUDE_DIR variables at the right places it will work. (It's
been ages since I've done it so I may be misremembering.)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/OSVR/OSVR-Core/issues/442#issuecomment-250976613, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AADuyTmbKr_wdYzmwvRxHc6u1QDE6Z2Gks5qv8v3gaJpZM4JAs9A
.

--
Ryan A. Pavlik, Ph.D.
CTO - OSVR Platform
Sensics, Inc.
www.sensics.com
--
Latest news and blog posts (subscribe here
http://sensics.com/subscribe-to-our-mailing-list/ to get weekly updates):
Sep 13: Why WebVR? http://sensics.com/why-webvr/
Aug 30: TechCrunch: VR from the battlefield to the couch and back
https://techcrunch.com/2016/08/30/vr-on-the-battlefield-to-the-couch-and-back-again-sort-of/
Aug 24: OSVR comes to WebVR http://www.sensics.com/osvr-comes-webvr


Align info.description auth section with ICM v0.2.0

What type of PR is this?
Add one of the following kinds:

documentation

What this PR does / why we need it:
Align Authorization and Authentication info.description section with current ICM approved text in v0.2.0
Which issue(s) this PR fixes:

Fixes #125
Special notes for reviewers:
This PR should be merged before #119. It is just an small alignment with new ICM agreed text

I have just approved this PR.  Though Gilles has not approved this, please merge this PR, @fernandopradocabrillo , as we did not see any objection during the KYC SP meeting today.
Thanks.


Fix kbs2 edit

This should enable the use of cli editors when using kbs2 edit so it should fix the first part of #434

Would you mind adding a CHANGELOG.md entry for this change, under the bugfix list?

I've added an entry to CHANGELOG.md, let me know if the formatting is off or anything.

I've added an entry to CHANGELOG.md, let me know if the formatting is off or anything.

Looks good, thank you!


🚀 Autofill

@leiyre did you have time to test it ? can we merge it ?

Go ahead, it looks good to me 🚀


Merge refs/heads/1.8/feature/846 into alpha

Merge refs/heads/1.8/feature/846 into alpha

This PR has not been merged into alpha. Please fix the issues and re-open the PR.


iterating over unions of Java iterables

I wrote something like this:
import java.util { HashSet, ArrayList }
...
value coll = true then HashSet<String>() else ArrayList<String>();
for (x in coll) {}

And got:
Ceylon backend error: for-each not applicable to expression type
  required: array or java.lang.Iterable
  found:    java.lang.Object

Done.


Support saving checkpoint at the first epoch when setting a checkpoint save_interval

🚀 Feature

saving checkpoint at the first epoch when setting a checkpoint save interval
Motivation
The current implementation will skip to save the model checkpoint of the first epoch, this is a bad behavior, because we are not sure whether the checkpoint_callback works okay until the first checkpoint is saved.

Pitch

Alternatives

Additional context

hi, so would you suggest having checkpointing as part of fast_dev_run?

hi, so would you suggest having checkpointing as part of fast_dev_run?

I believe the request here is to allow checkpointing at epoch=0 irrespective of the value of period. Nothing to do with fast_dev_run.
https://github.com/PyTorchLightning/pytorch-lightning/blob/83b1ff421dbc1a1c07786e322489086b055ffb01/pytorch_lightning/callbacks/model_checkpoint.py#L231

I believe the request here is to allow checkpointing at epoch=0 irrespective of the value of period. Nothing to do with fast_dev_run.
https://github.com/PyTorchLightning/pytorch-lightning/blob/83b1ff421dbc1a1c07786e322489086b055ffb01/pytorch_lightning/callbacks/model_checkpoint.py#L231

yes, this is exactly what I want to say. I believe most of people have the habit of checkpointing at the first epoch when they want to save their model at a interval.😊

yes, this is exactly what I want to say. I believe most of people have the habit of checkpointing at the first epoch when they want to save their model at a interval.😊


[WIP] Drop isoscan use and limit dracut hooks usage

This commit it two fold:

Drop isoscan use in favor of a self provided script that is not
devoted to ISO images and offers some further flexibility.

Drop most dracut hooks in favor of early boot systemd services. This
is relevant in case we want or need to recode the layout tools so
we are not tied to shell scripts.

Signed-off-by: David Cassany<EMAIL_ADDRESS>

This PR changes the boot command on grub to not use the isoscan script (part of dmsquash module for live ISOs) in favor of a similar version provided by us. This offers us flexibility to decide how we want to loop back the rootfs images so we are not limited to the behavior of isoscan, which was thought having a pretty different use case in mind.
So the upgrade tests will not work on this PR, this is an upgrade breaking PR. Also a good chance to think if we want to consider this sort of use cases in the future, I mean, what if an upgrade requires changes on the grub configuration? Should we provide some strategy for those cases?


Improve change-admin-password mechanism

Dear SonarSource team,
the SonarQube charts offer a very basic mechanism for changing the admin password. However, due to the imperative approach it is incompatible with the declarative character of Kubernetes. For most of the cases it is not even possible to provide the old and the new password. In most cases, the old password is technically 'gone' when the new password should be set.
Another problem with this feature is that it's not consistent among all charts. E.g. the DCE chart allows setting imagePullSecrets while the LTS chart does not. And also, the current mechanism does not work when using a custom application context (set via properties).
SonarQube's security documentation describes how to reset a forgotten password and Bitnami has a AWS SonarQube administration documentation that already describes on how to automate this mechanism even more.
Based on all this, I would suggest the following mechanism. A new job uses the psql CLI to:

Try to rename the default admin user to that username (to be discussed)
if 1. is not possible and if no user for the defined username exists, create a user with the defined username (to be discussed)
Grant administration rights for the user with the defined username if rights still missing (optional)
Set the new salted and hashed password for the user with the defined username

The related YAML could look like this:
admin:
  username: "admin"
  password:
  secret:
  dataKey:

For a higher compatibility, this would also be acceptable:
account:
  username: "admin"
  password:
  secret:
  dataKey:

For this issue, I could even try to do the contribution myself, but I would like to hear your feedback first.
Thank you and many regards
Patrick

Hi @pathod,
Thank you for your request.
The database of SonarQube should be treated as a blackbox, we only want to interact with it through its standard API.
Using psql cli would therefore defeat that purpose, and would also increase the complexity as we would also need to support multiple DBMS here and not just Postgresql.
Since API needs authentication, we indeed need the old admin password and I agree with you that the solution is not ideal. We hope that there will be an effort in the future to support more configuration as code for SonarQube but as long as this is not the case we stick with the current mechanism as a way to help and not a enforced solution for everyone.

Hi @leo-geoffroy-sonarsource
I find it a little disconcerting how quickly my tickets are closed. For example, I explained that the current mechanism is not consistent among all charts and this broken:

Another problem with this feature is that it's not consistent among all charts. E.g. the DCE chart allows setting imagePullSecrets while the LTS chart does not. And also, the current mechanism does not work when using a custom application context (set via properties).

Hi @pathob ,
the LTS chart follows (sadly) the same patch policy as the application and this does not fulfill the criteria of a blocker bug. you can still log in via the the web ui and change the password there. there is no enforcement to use the post install hook.
Improvements were already done for the latest chart and if you want to benefit from them i recommend you to use the latest chart with the latest version of SQ


Segment reconstruction requires xyz-ordered scale features instead of largest-to-smallest

To self: need to reimplement ordering scale features from largest-to-smallest, right before knn

Addressed in commit 252bf5b


fix: maxSurge and maxUnavailable parameters added under DaemonSet concept.

fix: #41440
Page modified: DaemonSet's concept page
Issue: maxSurge parameter was not documented under the DaemonSet concept.
Solution: Added the brief info about the maxSurge and maxUnavailable parameters under the DaemonSet's concept page along with some of the yaml code defining the use case of this particular parameter.
/language en

Thanks @Ritikaa96 :)

/retitle Mention maxSurge and maxUnavailable parameters in DaemonSet concept
/sig apps

@tanayvaswani once you've incorporated feedback, please:

push your changes
rebase against main
[force] push your changes once more

As this PR has not changed in a long time, I will close it.
@tanayvaswani you are welcome to reopen the PR and to update your branch with the appropriate fixes. If it feels more appropriate, you could start a new pull request.
/close


Q1 2023 release broke some examples

Describe the bug
The Q1 2023 release (v2023.3.1) changed some JS methods to take a single JSON string as a parameter instead of multiple individual parameters. This results in some examples (like the one using generate_aligned_coords) to error out.
To Reproduce
Steps to reproduce the behavior:

Go to https://www.rdkitjs.com/#drawing-molecules-constraints
Click on 'Run'
Open the Developer Console
Observer the error (Uncaught 1206664)

Expected behavior
The code does not throw an uncaught error.
Desktop

OS: [Linux Mint 20.3 Cinnamon]
Browser [Firefox]
Version [v2023.3.1-1.0.0]

Note
The typescript docs will also need to be updated.

changes are here, I'll fix this https://github.com/rdkit/rdkit/compare/Release_2022_09_5...Release_2023_03_1#diff-389cc8f46359a91ef65f3ffc78609da315b6f0ffed9bbdcd8fd3b7ab12df6a3b

The mentioned example seems to work fine now, so I'll go ahead and close this.


Rack app error: #<NoMethodError: undefined method `+' for nil:NilClass>

Hi,
I setup actioncable in production, after serval hours running, I got many the following errors,
I am using :
rails 4.2  ruby 2.2.1
puma + nginx
2015-08-23 15:14:42 +0800: Rack app error: #<NoMethodError: undefined method `+' for nil:NilClass>
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/websocket-driver-0.6.2/lib/websocket/driver/hybi.rb:11:in `generate_accept'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/websocket-driver-0.6.2/lib/websocket/driver/hybi.rb:74:in `initialize'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/websocket-driver-0.6.2/lib/websocket/driver.rb:149:in `new'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/websocket-driver-0.6.2/lib/websocket/driver.rb:149:in `rack'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/faye-websocket-0.10.0/lib/faye/websocket.rb:69:in `initialize'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/bundler/gems/actioncable-6143352f8ffb/lib/action_cable/connection/web_socket.rb:8:in `new'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/bundler/gems/actioncable-6143352f8ffb/lib/action_cable/connection/web_socket.rb:8:in `initialize'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/bundler/gems/actioncable-6143352f8ffb/lib/action_cable/connection/base.rb:61:in `new'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/bundler/gems/actioncable-6143352f8ffb/lib/action_cable/connection/base.rb:61:in `initialize'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/bundler/gems/actioncable-6143352f8ffb/lib/action_cable/server/base.rb:21:in `new'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/bundler/gems/actioncable-6143352f8ffb/lib/action_cable/server/base.rb:21:in `call'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/puma-2.13.4/lib/puma/configuration.rb:78:in `call'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/puma-2.13.4/lib/puma/server.rb:541:in `handle_request'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/puma-2.13.4/lib/puma/server.rb:388:in `process_client'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/puma-2.13.4/lib/puma/server.rb:270:in `block in run'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/puma-2.13.4/lib/puma/thread_pool.rb:106:in `call'
/home/littlefire/var/www/apps/littlefire/shared/bundle/ruby/2.2.0/gems/puma-2.13.4/lib/puma/thread_pool.rb:106:in `block in spawn_thread'

any help will be appreciated
Thanks

It looks like a configuration problem. Could you provide any puma config or its launch options?

Hi Kai,
Thanks again for your quick response,
here is the puma.rb under shared directory
#!/usr/bin/env puma

directory '/home/littlefire/var/www/apps/littlefire/current'
rackup "/home/littlefire/var/www/apps/littlefire/current/cable/config.ru"
environment 'production'

pidfile "/home/littlefire/var/www/apps/littlefire/shared/tmp/pids/puma.pid"
state_path "/home/littlefire/var/www/apps/littlefire/shared/tmp/pids/puma.state"
stdout_redirect '/home/littlefire/var/www/apps/littlefire/shared/log/puma_access.log', '/home/littlefire/var/www/apps/littlefire/shared/log/puma_error.log', true

threads 0,16

bind 'unix:///home/littlefire/var/www/apps/littlefire/shared/tmp/sockets/puma.sock'

workers 0

prune_bundler

on_restart do
  puts 'Refreshing Gemfile'
  ENV["BUNDLE_GEMFILE"] = "/home/littlefire/var/www/apps/littlefire/current/Gemfile"
end

It looks like this error will occur when env['HTTP_SEC_WEBSOCKET_VERSION'] is set but  env['HTTP_SEC_WEBSOCKET_KEY'] is not set.
According to https://github.com/jrief/django-websocket-redis/issues/54, this can happen for old ios devices. Are you able to tell what device is making the erroring requests? Can you confirm headers that are being sent in those requests?


filters' default_value is not working

bug occurs in theses cases:
Case 1
add a filter, change it's type to DateRange, set it's default_value.
--- default_value becomes [Invalid Date, Invalid Date]

Case 2
Change the key of a filter, the key in filters.values should also be changed
--- filters.values is polluted by onChange event

Reminder
after case 1 & 2 are resolved, test this case:
Change a DateRange's format, e.g. from 2022-01-01 to 20220101

fixed with https://github.com/merico-dev/table/issues/654


50 dev

Describe your changes
Developed algorithm for optimal sampling of architecture for number of local optima estimation to save computational power (As described by Andres)
What is the related task number?
50
Checklist before requesting a review

[X] I have performed a self-review of my code
[X] If it is a core feature, I have added thorough tests.

@JahodaPaul Hi Pavel! Should I merge this branch or the changes were included in another branch?

@JahodaPaul Hi Pavel! Should I merge this branch or the changes were included in another branch?

Merge I think


[Device Support Request] Schneider Electric Wiser CCT5010-0002W dimmer module

Problem description
By default this dimmer module has a quite low range for dimming light (minimum brightness is quite high and brightness is roughly the same between 50% to 100%).
When paired to the Wiser gateway and the Wiser app, the following 3 configuration settings are proposed:

Minimum brightness
Maximum brightness
Mode: RC LED (default) or RL LED

The 2 first ones allow to adjust the range of brightness to get a better behavior.
When paired with ZHA, these settings are not available, therefore the default values are used that lead to the default behavior described above when used with HA.
Solution description
Implement the same configuration settings as the Wiser system in order to be able to adjust the range of brightness (and set the kind of LED):

Minimum brightness
Maximum brightness
Mode: RC LED (default) or RL LED

Screenshots/Video
Screenshots/Video
[Paste/upload your media here]

Device signature
Device signature
{
"node_descriptor": "NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.FullFunctionDevice|MainsPowered|RxOnWhenIdle|AllocateAddress: 142>, manufacturer_code=4190, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)",
"endpoints": {
"3": {
"profile_id": "0x0104",
"device_type": "0x0101",
"input_clusters": [
"0x0000",
"0x0003",
"0x0004",
"0x0005",
"0x0006",
"0x0008",
"0x0301",
"0x0b05"
],
"output_clusters": [
"0x0019"
]
},
"242": {
"profile_id": "0xa1e0",
"device_type": "0x0061",
"input_clusters": [],
"output_clusters": [
"0x0021"
]
}
},
"manufacturer": "Schneider Electric",
"model": "PUCK/DIMMER/1",
"class": "zigpy.device.Device"
}

Diagnostic information
Diagnostic information
{
"home_assistant": {
"installation_type": "Home Assistant OS",
"version": "2023.11.3",
"dev": false,
"hassio": true,
"virtualenv": false,
"python_version": "3.11.6",
"docker": true,
"arch": "aarch64",
"timezone": "Europe/Paris",
"os_name": "Linux",
"os_version": "6.1.21-v8",
"supervisor": "2023.11.6",
"host_os": "Home Assistant OS 11.1",
"docker_version": "24.0.6",
"chassis": "embedded",
"run_as_root": true
},
"custom_components": {
"hacs": {
"version": "1.33.0",
"requirements": [
"aiogithubapi>=22.10.1"
]
}
},
"integration_manifest": {
"domain": "zha",
"name": "Zigbee Home Automation",
"after_dependencies": [
"onboarding",
"usb"
],
"codeowners": [
"@dmulcahey",
"@adminiuga",
"@puddly"
],
"config_flow": true,
"dependencies": [
"file_upload"
],
"documentation": "https://www.home-assistant.io/integrations/zha",
"iot_class": "local_polling",
"loggers": [
"aiosqlite",
"bellows",
"crccheck",
"pure_pcapy3",
"zhaquirks",
"zigpy",
"zigpy_deconz",
"zigpy_xbee",
"zigpy_zigate",
"zigpy_znp",
"universal_silabs_flasher"
],
"requirements": [
"bellows==0.36.8",
"pyserial==3.5",
"pyserial-asyncio==0.6",
"zha-quirks==0.0.106",
"zigpy-deconz==0.21.1",
"zigpy==0.59.0",
"zigpy-xbee==0.19.0",
"zigpy-zigate==0.11.0",
"zigpy-znp==0.11.6",
"universal-silabs-flasher==0.0.14",
"pyserial-asyncio-fast==0.11"
],
"usb": [
{
"vid": "10C4",
"pid": "EA60",
"description": "2652",
"known_devices": [
"slae.sh cc2652rb stick"
]
},
{
"vid": "1A86",
"pid": "55D4",
"description": "sonoffplus*",
"known_devices": [
"sonoff zigbee dongle plus v2"
]
},
{
"vid": "10C4",
"pid": "EA60",
"description": "sonoffplus*",
"known_devices": [
"sonoff zigbee dongle plus"
]
},
{
"vid": "10C4",
"pid": "EA60",
"description": "tubeszb",
"known_devices": [
"TubesZB Coordinator"
]
},
{
"vid": "1A86",
"pid": "7523",
"description": "tubeszb",
"known_devices": [
"TubesZB Coordinator"
]
},
{
"vid": "1A86",
"pid": "7523",
"description": "zigstar",
"known_devices": [
"ZigStar Coordinators"
]
},
{
"vid": "1CF1",
"pid": "0030",
"description": "conbee",
"known_devices": [
"Conbee II"
]
},
{
"vid": "10C4",
"pid": "8A2A",
"description": "zigbee",
"known_devices": [
"Nortek HUSBZB-1"
]
},
{
"vid": "0403",
"pid": "6015",
"description": "zigate",
"known_devices": [
"ZiGate+"
]
},
{
"vid": "10C4",
"pid": "EA60",
"description": "zigate",
"known_devices": [
"ZiGate"
]
},
{
"vid": "10C4",
"pid": "8B34",
"description": "bv 2010/10",
"known_devices": [
"Bitron Video AV2010/10"
]
}
],
"zeroconf": [
{
"type": "_esphomelib._tcp.local.",
"name": "tube*"
},
{
"type": "_zigate-zigbee-gateway._tcp.local.",
"name": "zigate"
},
{
"type": "_zigstar_gw._tcp.local.",
"name": "zigstar"
},
{
"type": "_uzg-01._tcp.local.",
"name": "uzg-01*"
},
{
"type": "_slzb-06._tcp.local.",
"name": "slzb-06*"
}
],
"is_built_in": true
},
"data": {
"ieee": "REDACTED",
"nwk": 25053,
"manufacturer": "Schneider Electric",
"model": "PUCK/DIMMER/1",
"name": "Schneider Electric PUCK/DIMMER/1",
"quirk_applied": false,
"quirk_class": "zigpy.device.Device",
"quirk_id": null,
"manufacturer_code": 4190,
"power_source": "Mains",
"lqi": 200,
"rssi": -50,
"last_seen": "2023-12-03T12:15:04",
"available": true,
"device_type": "Router",
"signature": {
"node_descriptor": "NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.FullFunctionDevice|MainsPowered|RxOnWhenIdle|AllocateAddress: 142>, manufacturer_code=4190, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)",
"endpoints": {
"3": {
"profile_id": "0x0104",
"device_type": "0x0101",
"input_clusters": [
"0x0000",
"0x0003",
"0x0004",
"0x0005",
"0x0006",
"0x0008",
"0x0301",
"0x0b05"
],
"output_clusters": [
"0x0019"
]
},
"242": {
"profile_id": "0xa1e0",
"device_type": "0x0061",
"input_clusters": [],
"output_clusters": [
"0x0021"
]
}
},
"manufacturer": "Schneider Electric",
"model": "PUCK/DIMMER/1"
},
"active_coordinator": false,
"entities": [
{
"entity_id": "button.schneider_electric_puck_dimmer_1_identifier",
"name": "Schneider Electric PUCK/DIMMER/1"
},
{
"entity_id": "light.schneider_electric_puck_dimmer_1_lumiere",
"name": "Schneider Electric PUCK/DIMMER/1"
},
{
"entity_id": "number.schneider_electric_puck_dimmer_1_on_level",
"name": "Schneider Electric PUCK/DIMMER/1"
},
{
"entity_id": "number.schneider_electric_puck_dimmer_1_start_up_current_level",
"name": "Schneider Electric PUCK/DIMMER/1"
}
],
"neighbors": [],
"routes": [],
"endpoint_names": [
{
"name": "DIMMABLE_LIGHT"
},
{
"name": "PROXY_BASIC"
}
],
"user_given_name": null,
"device_reg_id": "d8e31daa10469779d187eb4c28b22706",
"area_id": null,
"cluster_details": {
"3": {
"device_type": {
"name": "DIMMABLE_LIGHT",
"id": 257
},
"profile_id": 260,
"in_clusters": {
"0x0000": {
"endpoint_attribute": "basic",
"attributes": {
"0x0004": {
"attribute_name": "manufacturer",
"value": "Schneider Electric"
},
"0x0005": {
"attribute_name": "model",
"value": "PUCK/DIMMER/1"
}
},
"unsupported_attributes": {}
},
"0x0003": {
"endpoint_attribute": "identify",
"attributes": {},
"unsupported_attributes": {}
},
"0x0004": {
"endpoint_attribute": "groups",
"attributes": {},
"unsupported_attributes": {}
},
"0x0005": {
"endpoint_attribute": "scenes",
"attributes": {},
"unsupported_attributes": {}
},
"0x0006": {
"endpoint_attribute": "on_off",
"attributes": {
"0x0000": {
"attribute_name": "on_off",
"value": 0
}
},
"unsupported_attributes": {
"0x4003": {
"attribute_name": "start_up_on_off"
}
}
},
"0x0008": {
"endpoint_attribute": "level",
"attributes": {
"0x0000": {
"attribute_name": "current_level",
"value": 245
},
"0x0011": {
"attribute_name": "on_level",
"value": 255
},
"0x4000": {
"attribute_name": "start_up_current_level",
"value": 0
}
},
"unsupported_attributes": {
"0x0012": {
"attribute_name": "on_transition_time"
},
"0x0010": {
"attribute_name": "on_off_transition_time"
},
"0x0013": {
"attribute_name": "off_transition_time"
},
"0x0014": {
"attribute_name": "default_move_rate"
}
}
},
"0x0301": {
"endpoint_attribute": "light_ballast",
"attributes": {},
"unsupported_attributes": {}
},
"0x0b05": {
"endpoint_attribute": "diagnostic",
"attributes": {},
"unsupported_attributes": {}
}
},
"out_clusters": {
"0x0019": {
"endpoint_attribute": "ota",
"attributes": {},
"unsupported_attributes": {}
}
}
},
"242": {
"device_type": {
"name": "PROXY_BASIC",
"id": 97
},
"profile_id": 41440,
"in_clusters": {},
"out_clusters": {
"0x0021": {
"endpoint_attribute": "green_power",
"attributes": {},
"unsupported_attributes": {}
}
}
}
}
}
}

Logs
Logs
[Paste your logs here]

Custom quirk
Custom quirk
[Paste your custom quirk here]

Additional information
No response

I think this is the same device, so should be possible to port over from zigbee2mqtt: https://www.zigbee2mqtt.io/devices/WDE002961.html

I have a lot of  CCT5010-0002, i would be willing to test this if we find a solution

Just for transparency, I haven't had time to do anything about this.  I'm not familiar with contributing a quirk so don't count on me for actually coding something up :)

Based on answers of @dflemstr I installed zha-toolkit via HACS and changed those settings through
developer-tools -> service -> 🧰 ZHA Toolkit: Write Attribute
To summize:
For MinLevel (Minimum Brightness):

Target Cluster: 769
Attribute Id: 16
Attribute Value: 1 to 254

For MaxLevel (Maximum Brightness):

Target Cluster: 769
Attribute Id: 17
Attribute Value: 1 to 254

For Control Mode:

Manufacturer Id: 4190
Target Cluster: 769
Attribute Id: 57344
Attribute Value: 0 to 3

Automatic (0x00), RC Mode (0x01), RL Mode (0x02), or RL LED Mode (0x03)

It's working well and this is sufficient for me, since it has to be done only one time per device.
If someone is willing to create a quirk to support it, it would be welcome (I will also try but never done that), but in the meantime this solution this is working fine.
Thank you @dflemstr !

I belive this is the same device as ELKO multiwire dimmer.
Enhet informasjon
NHROTARY/UNIDIM/1
av Schneider Electric


Improve performance at the presence of malware scanners

Summary
Java run- and build-times environment on Windows are especially badly affected by on-access malware scanners which are mandatory on many organizations systems. The fact that large number of jar (aka zip) files are involved and exceptionally bad handling of reading and writing archives in most (all?) scanner products (including defender) really can slow a maven build or application server startup down.
Basic example
Running a maven build on larger project, starting Eclipse or Karaf runtime...
Motivation
Developers on Windows often have to stick to malware scanners and excludes are risky (and do not always help due to some heuristics of malware and endpoint scanners)
Unfortunatelly I don’t have a good answer how to fix it, maybe besides having new APIs for controlling scanners and simply providing a scanner which works better for those java workloads?

Hm, maybe related or duplicate of #9?

Indeed a duplicate. We will focus on #9.


Add support for peek-active_record

Adds support for the AR object popover from peek-active_record

Is peek-active_record released/supported still? Feel free to re-open if so!


Update nb_conda to be compatible with 4.3.1 and higher

Jupyter notebook blog post about version 4.3.1 introduced a fix for CVE-2016-9971 but in doing so, caused some issues for RESTful interfaces.
When the nb_conda extension is activated (and tested with Notebook version 4.4.1), actions like installing a package generates a "Forbidden" error dialog and the server log only shows a 403 error on the POST url:
[W 00:44:28.973 NotebookApp] 403 POST /conda/environments/root/packages/install (n.n.n.n): '_xsrf' argument missing from POST
Since the code already references the base/js/utils module, and that module already implements the sample code shown in the blog post, and that module also exports the ajax function, the cleanest update is to change all $.ajax(...) calls to just utils.ajax(...) calls.  For the modules that did not already require the utils module, I added that in to provide the right ajax call.

Thanks for the PR, I will look into it as soon as possible.

Tested locally, working OK. Will fix the tests in a upcoming PR.
Thanks for the _xsrf fix @awkwong-whi !!!


API calls fail for Rails apps that respond to HTML and JSON

Given the following controller:
class ThingController < ApplicationController
  def index
    @things = Things.all
    respond_to do |format|
      format.html
      format.json { render json: @things }
    end
  end

and the following JavaScript:
api.list('things').then((response) => {
  console.log(response.data)
})

then response.data contains the HTML of /things rather JSON. If I visit /things.json in the browser I get the expected JSON.
I can't see how to configure rails-ranger or axios to append .json to the URL. Is this possible? Sadly, calling api.list('things.json') produces a request to things_json, which doesn't help much.
(I realise that rails-ranger's really intended for use with API-only Rails backends, but it would be extremely useful to be able to have it work for this case, even if that's not the default behaviour, as we don't always have control over the other end…)
Thanks!

Yeah, it makes complete sense to make it work on non-API Rails back-ends as well, and to be honest I didn't thought about this scenario before you brought that up.
But for now unfortunately I don't think there is a reasonable workaround for this 😞
I was thinking on something like that, what do you think?
// To automatically append .json to all the URLs:

import RailsRanger from 'rails-ranger'

const config = {
  someConfigNameHere: true
  axios: { baseURL: 'http://api.myapp.com' }
}

export default new RailsRanger(config)

Got to think on a name for the someConfigNameHere, but you get the idea.
I was considering if the ability of turning that on and off for specific requests would be desirable but I'm guessing it wouldn't 🤔
Anyway, tell me what you think and after the feature is clearer I (or you if you feel like it haha) can start working on this 😄

That's done the job — thanks!
Is it worth adding this to the README?

Absolutely!
Gonna re-open this just as a reminder to add it to the README later.

Done in 82a71be813e0c87421fdf51827400f25a11f17bd


Get Typename of wrapped ScriptObject

Currently I have a lot of use for a in-script-context helper function, that returns me the actual typename of the scriptobject back to the host environment. So instead of dealing with a typename of WindowsScriptItem for all ScriptObjects, I can use the actual typename from the scriptcontext.
An example usecase in VBScript would be to have a global function:
Function VbType(obj)
    VbType = typename(obj)
End Function

so when I have ScriptItem whichs wraps a VBScript Object in Host context:
Class MyType
End Class

I call the global function to retrive underlying script typename:
vbsengine.Invoke("VbType", scriptItemInstance);

From a quick view, I saw that the underlying script type name is readable internally by the script engine, having access to the Com-Obj wrapper.
Is there already an API available to directly read the wrapped script objects typename or would that be a feature request?

Version 5.5.5 includes IWindowsScriptObject.


Better error message if trying to access non-existing histogram in grsiproof

I think one of the biggest issue that people have with grsiproof is having a mismatch between names used as keys to create the histograms and the names used as keys to fill the histograms.
I think we can make this a bit easier to debug by creating a class derived from std::map. This class will re-define the at() function and use a try/catch logic to try and access the requested element (using the underlying maps at() function), and will create a descriptive error message (and maybe a dump of all available keys/names) before re-throwing the exception.
While grsiproof will still crash if the wrong name is used to fill the histogram, it will give an error message allowing the user to find the mistake.

If you can set it up to catch outside of the proof session, it would also be super useful. No reason to dig through the log in that case.

The alternative would be to change the example selectors to always use try/catch to fill the histograms, and then in the catch statement print out a list of all available names. But in this case we wouldn't know which name we tried to use to access the histogram.
@r3dunlop, true, I could have the map throw an exception that has the name of the histogram we try to access in it (and maybe a list of all keys of the map). So if we catch the exception outside the proof session we could print the wrong name and a list of all available names. I will look into that.

One thing about this, we're using a sorted map here (TGRSIMap inherits from std::map which we used before directly). This is only useful in that the histograms are ordered by name when we add them to the output list.
If we forgo this ordering by using std::unordered_map as base class, we might be able to speed grsiproof up a bit (unordered maps are faster when accessed). Not sure how big the effect would be, but this is something we might want to test at some point.

How are unordered maps faster? Maybe faster if smaller (sequential memory?). Ordering leads to O(LogN) lookup while unordered is O(N), no? Honestly asking because I haven’t looked into unordered maps too much.

Oh that’s awesome. Good to know.


[charts/opentelemetry-kube-stack] configMap volumeMounts indentation issue with DaemonSet collector pod.

Hi,
Using configMap to mount a volume in the collectors seems to generate buggy YAML, which causes an issue with installing with Helm.
Configuration
open-telemetry/opentelemetry-kube-stack version=0.2.3
values.yaml
defaultCRConfig:
  enabled: true

  volumeMounts:
    - name: myorg-cert-volume
      mountPath: /etc/ssl/certs/myorg  # The directory inside the container where the certificates will be copied
  volumes:
    - name: myorg-cert-volume
      configMap:
        name: myorg-ca-certs  # The name of the ConfigMap containing the certificates

I'm using myorg CA certificate for exporters endpoint and volume isn't mounting to the collector pods.
      exporters:
        otlphttp:
          auth:
            authenticator: basicauth/grafana_cloud
          endpoint: https://otlp-gateway-prod-eu-west-2.grafana.net/otlp
          tls:
            ca_file: /etc/ssl/certs/myorg/MyOrgG3RootCA.crt

Issue
While installing with this configuration, I'm getting the following error with helm install
otel-kube-stack> helm install --namespace monitoring --create-namespace opentelemetry-kube-stack open-telemetry/opentelemetry-kube-stack -f values.yaml
Error: INSTALLATION FAILED: YAML parse error on opentelemetry-kube-stack/templates/collector.yaml: error converting YAML to JSON: yaml: line 437: did not find expected key

Resolution
The issue is with an incorrect indentation in the DaemonSet collector pod specification for configMap and mountPath
Fixing the indentation manually in the template and applying the template has fixed the issue.

/label charts/opentelemetry-kube-stack

on it! thank you for reporting, appears my formatter messed up!

Thank you!
This works fine.


Legacy Fabric example mod does not run properly on Apple Silicon (presumably only if LWGJL2 is required)

When attempting to run the example mod via native Java, a pre-launch crash occurs likely because the project doesn't have access to any native lwjgl binaries:
Minecraft has crashed!
net.fabricmc.loader.impl.FormattedException: java.lang.UnsatisfiedLinkError: Can't load library: /Volumes/cocona-external-hd/moddev/fabric-example-mod/.gradle/loom-cache/natives/1.8.9/liblwjgl.dylib
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:463)
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
	at net.fabricmc.devlaunchinjector.Main.main(Main.java:86)
Caused by: java.lang.UnsatisfiedLinkError: Can't load library: /Volumes/cocona-external-hd/moddev/fabric-example-mod/.gradle/loom-cache/natives/1.8.9/liblwjgl.dylib
	at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2393)
	at java.base/java.lang.Runtime.load0(Runtime.java:755)
	at java.base/java.lang.System.load(System.java:1953)
	at org.lwjgl.Sys$1.run(Sys.java:70)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
	at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
	at org.lwjgl.Sys.loadLibrary(Sys.java:96)
	at org.lwjgl.Sys.<clinit>(Sys.java:117)
	at net.minecraft.client.MinecraftClient.getTime(MinecraftClient.java:2539)
	at net.minecraft.client.main.Main.main(Main.java:41)
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:461)
	... 3 more

Meanwhile, if the project is run under x86-64 Java that has been translated via Rosetta 2, the game launches but no game window is rendered.
Theoretically the fix for this would be to somehow make use of the https://github.com/orgs/MinecraftMachina project's native LWJGL binaries in the buildscript, though how to do this w.o outright rehosting them on a maven I'm not sure of.

Thanks. Figured out how to get the dependency binaries brought over as well (by manually unpacking them from the MinecraftMachina arm64 compiled jars)—I'll keep this open since it should be possible to add a check in the build.gradle to run that if macOS is present.

Is it possible for you to try again with the current version of example mod?
We now provide our own version of LWJGL 2 with a few fixes from multiple forks.
Tho I don't have a Mac to test those fixes on, so report any issue/crash you have with it, here.


fix: moving AppLayout description 15px to the left.

What
Moving AppLayout description 15px to the left.
Why
Design team requested it

Design team changed their stance: https://storyblok.atlassian.net/browse/EXT-1538?focusedCommentId=41841


Implement helpers related to lattice bases

Variants for add, sub, dot and scale.
Unnormalized Gram-Schmidt orthogonalization.
LLL basis reduction.

A bit of fuzzing wouldn't hurt.


Does coco_detections.hdf5  have to be downloaded ？

Do I need to download coco_detections.hdf5 ? If I have COCO pictures, can I generate them by myself

Hi @SmallSmallQiu,
thanks for your interest in our code.
To generate the coco_detections.hdf5, we used the code of the Bottom-up Top-down paper (i.e. https://github.com/peteanderson80/bottom-up-attention).


ReferenceError: Can't find variable: ObjectId When use createStore

my package.json :
"react-redux": "^7.2.2",
"redux": "^4.0.5",
"react-native": "^0.63.4"
when use createStore in my store.js .
I catch 1 bug .
Can't find variable: ObjectId .
i was upgrade react-native to 0.63.4 .

The issue tracker here on GitHub is reserved for bug reports and feature requests. For usage questions (which is what I believe this is), please use our Discussions page, Stack Overflow, or Reactiflux where there are a lot more people ready to help you out. Thanks!
Please feel free to reply if you think this issue was closed prematurely.


Last activity?

I'm wanting to use a new activity as a trigger. Is it possible to add "sensors" for last activity info? If it's possible, I can work on a PR for this.

@amokrunner That would be nice, do you know the url to use? I might have seen it somewhere.

@amokrunner You can already do this:
    activities = api.get_activities(0,1) # 0=start, 1=limit
    if activities:
       logger.info(activities[-1])

@cyberjunky Forgive me, but I'm new; can you explain how I would setup an activity from Garmin as a trigger in HA?

Possible to integrate the activity data in HA?

Any update on this?
Should above code be entered somewhere configuration.yaml ?

Any update?

Related PR: https://github.com/cyberjunky/home-assistant-garmin_connect/pull/80

@cyberjunky Yes, thank you!!!


Putative simplest solution to the PEP-479 related problem of Issue #666.

Making this pull request initially to get the results from Travis-CI.

Pull request #670 and this one are two offering that fix the same problem. Choose one reject the other.

I've merged #670 - thanks for finding the issue! I've added you to the list of contributors :+1:


Define Rails::Engine in the Agent GEMs created

While building an agent as a GEM I found some difficulties adding a custom UI due to the views paths scope.
This PR declares a Rails Engine inside the GEMs created by this module so they will be able to define additional models, views, controller and routes.
Once #2659 is merged in the main Huginn codebase, it will be sufficient to create a partial in app/views/agents/agent_views/<agent_name>/_show.html.erb  to have it appear in Huginn exactly as if it was located in the main codebase.

Existing agents can take advantage of this just adding
class Engine < ::Rails::Engine; end

in their /lib/huginn_whatever_agent.rb file.


Bump egui from v0.29.0 to v0.29.1, bump env_logger and example dependencies

Just dependency updates.

[x] I have followed the instructions in the PR template

After running ./scripts/check.sh I noticed futures-util 0.3.30 was yanked and so I ran cargo update and it seems like future-util 0.3.31 has some fairly critical fixes


Update UserGuide.md

Codecov Report

Merging #153 (67b6a7a) into master (4a570e1) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #153   +/-   ##
=========================================
  Coverage     67.63%   67.63%
  Complexity      704      704
=========================================
  Files           115      115
  Lines          2274     2274
  Branches        237      237
=========================================
  Hits           1538     1538
  Misses          648      648
  Partials         88       88

Impacted Files
Coverage Δ

.../address/logic/commands/AddTransactionCommand.java
85.00% <0.00%> (ø)

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


terraform-aviatrix-azure-transit-firenet fails when trying to set a password for firewall instance

When using the module terraform-aviatrix-azure-transit-firenet it fails when trying to set a password for the firewall instance.
Error: failed to create a new firewall instance: Rest API add_firewall_instance Get failed: Failed to launch firewall instance. The Admin Username specified admin is not allowed. Please refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/faq about the username and/or password requirements when creating a VM.

  on .terraform/modules/transit_firenet_1/terraform-aviatrix-azure-transit-firenet-1.0.1/main.tf line 29, in resource "aviatrix_firewall_instance" "firewall_instance_1":
  29: resource "aviatrix_firewall_instance" "firewall_instance_1" {

https://github.com/terraform-aviatrix-modules/terraform-aviatrix-azure-transit-firenet/blob/126cfeff97f27132f1752d84ffa4864eae740562/main.tf#L37
Can this be updated to be able to set the username with a variable? Thanks!

Yes we can do that. Glad you found the module and are using it. We had some specific logic in there for checkpoint as you see. Curious which FW image/vendor you're trying to launch.

Hey @trvsmtchll thanks for the reply! We are launching a palo alto instance.


Adding a fuzzer for exploit generation

Tools, libraries, etc:
We might be able to work with a simpler one for instance sequence fuzzers:
Effectively Generating Vulnerable Transaction Sequences in Smart Contracts with Reinforcement Learning-guided Fuzzing
ityfuzz


Edit Dockerfile to use FROM as builder ??

@link-webcreations if I understand well, you mean to have a stage for doing all the stuff done in the Dockerfile and additionally the entry point. We package the whole stuff and we got a final image just to launch the server ?

Not sure it's needed.
For now, steamcmd, then the game, are both updated at launch. So to update the game, just need to run docker retart valheim.
That's more convenient than pulling a new version of the docker image.


check for error before checking for payload size

What does this PR do?
we see errors like this sometimes, but the log is not helpful. We should check for an error first.

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge