terminate called after throwing an instance of 'std::length_error'

I tried to run the four models, but shows some error.
I used the following code,
import numpy as np
import matplotlib.pyplot as plt
from rainymotion.models import DenseRotation
initialize the model
model = DenseRotation()
upload data to the model instance
model.input_data = np.load("/home/binoy/binoy/data.npy",allow_pickle=True)
run the model with default parameters
nowcast = model.run()
print (nowcast)
While running Dense and DenseRotation it shows that,

in Sparse it seen that,

for SparseSD,

I don't have a strong base in python. So got stuck in running process, please help me to resolve the same.
Thanks in advance!!!!!!

Hey @BinoyKadakkal,
could you upload your data and share the link here? I will have a closer look next week. Thanks!

Sir,
I had used the sample data provided by converting it into numpy.

Sir,
I had used the sample data provided with rainymotion. Before applying to the model i had converted it in to numpy.

Dear @BinoyKadakkal,
you can find a working example of the utilization of provided data and rainymotion models in our documentation, section "Real case verification: the Braunsbach event" (https://rainymotion.readthedocs.io/en/latest/notebooks/nowcasting.html): from reading data to plotting the obtained verification metrics. I hope it will help you. Good luck!

Could you please share a sample dataset in the numpy format.

In the example above, when we implement nowcasting models in the optical_flow() function, there is a step for reading input data, i.e.:
inputs = np.array([ data_instance[key][()] for key in eval_instance[key][0] ])
where data_instance is "data = h5py.File("../../data/data.h5", mode="r")" (the second cell), and eval_instance is "eval_idx = np.load("../../data/eval_dict.npy").item()" (the second cell)
to unpack data in numpy array format, just browse data.keys() to find out the structure of the provided dataset.

Thank you Sir
Its working fine with sample data provided.


Rule for defining memory map

Hello everyone! referred to "xbar_main" and "xbar_peri"  i have a confusion regarding memory map. is there any hard coded rule for defining memory map in such manner as defined in opnetitan project. or designer can assign base address for devices by his choice?? and what is the benefit of such definition?

the main difference between xbar_main / xbar_peri is that they run at
different clock frequencies.
So if you plan to add any new module, you could follow this scheme as well.
On Sat, Jan 30, 2021 at 1:30 PM Sajjad Ahmed<EMAIL_ADDRESS>wrote:

Hello everyone! referred to "xbar_main" and "xbar_peri" i have a confusion
regarding memory map. is there any hard coded rule for defining memory map
in such manner as defined in opnetitan project. or designer can assign base
address for devices by his choice?? and what is the benefit of such
definition?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/lowRISC/opentitan/issues/5040, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAH2RSUCEWXJABDDMLAJ6W3S4R3AZANCNFSM4W2VVQEQ
.

thank you @imphil.
actually i was asking for defining the base addresses for all the devices. why we define in such manner like GPIO starts from 0x40040000 why not from any other address. so, is there any convention for setting base addresses.

I don't think there's any particular convention. It can be driven by software requirements, for example if you use the PMP memory protection provided by Ibex you only have 16 regions to work with. Depending on what kinds of access control you may wish to implement there will be certain IPs you would want to group in the same address range to make efficient use of PMP regions.
More broadly it can be useful to define different areas of address space for different purposes, e.g. have one region for 'device' memory where peripheral registers live and another for 'real' memory like SRAM. The system may treat these memories types differently (this is referred to as PMA, physical memory attributes, in the RISC-V privileged specification) but OpenTitan doesn't do this currently.

Alright @GregAC!
so you mean its up to the designer that which regions he specifies for devices and real memories or according to software needs.


differents imported values as they read from munin

I have a munin_exporter running on http://<IP_ADDRESS>:9999/metrics, the values exported from munin and  added by munin_exporter are the same but not match with the values listed by the exporter and them into the prometheus db
Ex:
a.- Fetch values of CPU plugin from munin
user.value 16962807
nice.value 42162
system.value 4364036
idle.value<PHONE_NUMBER>
iowait.value 8289865
irq.value 140
softirq.value 48117
steal.value 8780807
guest.value 0

b.- Values logged (added) by munin_exporter
2017/11/07 17:55:26 cpu_user: 16962744.000000
2017/11/07 17:55:26 cpu_nice: 42162.000000
2017/11/07 17:55:26 cpu_system: 4363982.000000
2017/11/07 17:55:26 cpu_idle:<PHONE_NUMBER>.000000
2017/11/07 17:55:26 cpu_iowait: 8289863.000000
2017/11/07 17:55:26 cpu_irq: 140.000000
2017/11/07 17:55:26 cpu_softirq: 48117.000000
2017/11/07 17:55:26 cpu_steal: 8780763.000000
2017/11/07 17:55:26 cpu_guest: 0.000000

c.- Values displaying at http://<IP_ADDRESS>:9999/metrics
# HELP cpu_guest CPU usage: guest, The time spent running a virtual CPU for guest operating systems under the control of the Linux kernel.
# TYPE cpu_guest counter
cpu_guest{graphname="cpu",hostname="newfedra.ud.nohup.it",muninlabel="guest",type="derive"} 0
# HELP cpu_idle CPU usage: idle, Idle CPU time
# TYPE cpu_idle counter
cpu_idle{graphname="cpu",hostname="newfedra.ud.nohup.it",muninlabel="idle",type="derive"} 1.70992541578e+11
# HELP cpu_iowait CPU usage: iowait, CPU time spent waiting for I/O operations to finish when there is nothing else to do.
# TYPE cpu_iowait counter
cpu_iowait{graphname="cpu",hostname="newfedra.ud.nohup.it",muninlabel="iowait",type="derive"} 9.94513336e+08
# HELP cpu_irq CPU usage: irq, CPU time spent handling interrupts
# TYPE cpu_irq counter
cpu_irq{graphname="cpu",hostname="newfedra.ud.nohup.it",muninlabel="irq",type="derive"} 16800
# HELP cpu_nice CPU usage: nice, CPU time spent by nice(1)d programs
# TYPE cpu_nice counter
cpu_nice{graphname="cpu",hostname="newfedra.ud.nohup.it",muninlabel="nice",type="derive"} 5.05944e+06
# HELP cpu_softirq CPU usage: softirq, CPU time spent handling "batched" interrupts
# TYPE cpu_softirq counter
cpu_softirq{graphname="cpu",hostname="newfedra.ud.nohup.it",muninlabel="softirq",type="derive"} 5.765193e+06
# HELP cpu_steal CPU usage: steal, The time that a virtual CPU had runnable tasks, but the virtual CPU itself was not running
# TYPE cpu_steal counter
cpu_steal{graphname="cpu",hostname="newfedra.ud.nohup.it",muninlabel="steal",type="derive"} 1.05243819e+09
# HELP cpu_system CPU usage: system, CPU time spent by the kernel in system activities
# TYPE cpu_system counter
cpu_system{graphname="cpu",hostname="newfedra.ud.nohup.it",muninlabel="system",type="derive"} 5.22904571e+08
# HELP cpu_user CPU usage: user, CPU time spent by normal programs and daemons
# TYPE cpu_user counter`
```

This issue is only with the type "derive" with "gauge" the values are ok.

Prometheus 1.8.1
munin-node v2.0.33

sorry I misunderstood how counter metrics work.


[Task] Refactor MethodSecret for better key collection support

Description
Refactor the MethodSecret type and the places where it is used, i.e. Update::CreateMethod and IdentitySetup. Implementation of this issue may have to wait for #539 to be completed.
One approach would be to combine MethodType and MethodSecret in the two mentioned usages, to allow for fine-grained control over the generation process, particularly for key collections.
pub enum MethodSecret {
  // This would be the default
  GenerateEd25519,
  Ed25519(PrivateKey),
  GenerateMerkleKeyCollection(usize, KeyType),
  MerkleKeyCollection(KeyCollection),
}

This allows users to specify size and key type for the key collection generation. Generally, each non-collection type would have two entries in the enum. One for generation in a Storage implementation, and one for providing a pre-existing secret.
Motivation
When creating a method, one can specify the MethodType and an optional MethodSecret. If the MethodSecret is None, a key or key collection of the MethodType is generated. In case of MethodType::MerkleKeyCollection2021, it is unclear what the default value for the collection size would be. It is not possible to explicitly specify the size or of what KeyType the collection should be. One would have to generate their own collection and pass it in via MethodSecret. This is undesirable in some cases, since keys are exposed in memory rather than generated in stronghold.
To-do list
Create a task-specific to-do list . Please link PRs that match the To-do list item behind the item after it has been submitted.

[ ] Item one
[ ] Item two
[ ] Item three

Change checklist
Add an x to the boxes that are relevant to your changes, and delete any items that are not.

[ ] The feature or fix is implemented in Rust and across all bindings whereas possible.
[ ] The feature or fix has sufficient testing coverage
[ ] All tests and examples build and run locally as expected
[ ] Every piece of code has been document according to the documentation guidelines.
[ ] If conceptual documentation (mdbook) and examples highlighting the feature exist, they are properly updated.
[ ] If the feature is not currently documented, a documentation task Issue has been opened to address this.

Probably important issue for the Account WASM bindings.

Related to issue #646 .
Might be made redundant by #715.

No longer an issue: KeyCollection was removed in #715.


No UndoRedo inspector hook callback on multiple simultanious edits.

Tested versions
v4.3.dev5.official [c9c17d6ca]
System information
Godot v4.3.dev5 - Linux Mint 20.1 (Ulyssa) - X11 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 (nvidia; 535.171.04) - Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz (8 Threads)
Issue description
I am writing A plugin and using 'add_undo_redo_inspector_hook_callback()' to get callbacks on any edit to an objects properties, and when multiple nodes are selected it simply does not callback.
I was expecting this callback to run once for each property edited that way my plugin could react to each property change.
https://github.com/godotengine/godot/assets/85406370/9199e438-700c-46a7-b367-8eaa54125f04
Steps to reproduce
1: Create an EditorPlugin and put 'add_undo_redo_inspector_hook_callback()' to the _enter_tree method hooking to A function for printing its outputs.(Script provided in MRP)
2: edit any property in the inspector, to see the expected result printed in the output tab.
3: Now highlight more than one node holding control and clicking them, and try editing A property they share in the inspector.
4: No callback, no print function in output.
Minimal reproduction project (MRP)
plugin.gd
@tool
extends EditorPlugin

func _enter_tree() -> void:
	var callback = Callable(self, "callback")
	add_undo_redo_inspector_hook_callback(callback)
	pass

func _exit_tree() -> void:
	remove_undo_redo_inspector_hook_callback(callback)
	pass

func callback(undo_redo:Object,modifyed_object:Object,property:String,new_value:Variant):
	print(undo_redo.to_string())
	print(modifyed_object.to_string())
	print(property)
	print(new_value)

After looking at the ways Godot uses add_undo_redo_inspector_hook_callback() internally, I can confirm that none of the internal uses of this function should be effected by this fix given that multi node editing currently does not apply to Resources like Material3D, and TileSet. #91843

After thinking on this further, I think making this return A callback for each edit in A multi node edit would make this callback fall out of sync with how UndoRedo is assigned when multi editing nodes which feels wrong based on its description in the docs.
Having MultiNodeEdit itself return A single callback with info that can be used to query the changes made would be both more in line with the single do\undo added to UndoRedoManager by MultiNodeEdit when editing multiple nodes, and would require specific handling in plugins to be able to react to MultiNodeEdits theoretically ensuring that no uses of  add_undo_redo_inspector_hook_callback() are effected by these changes at all.
I think this is the least impactful way to fix the inability to react to editing multiple nodes in the inspector the way, "Hooks a callback into the undo/redo action creation when a property is modified in the inspector." implies in the docs.


Correctly detect the presence of the Adobe specific APP14 JPEG marker (bug 1140761)

According to the specification, http://partners.adobe.com/public/developer/en/ps/sdk/5116.DCT_Filter.pdf#G3.851943, the content of the marker segment should begin with Adobe, and not Adobe\x00 as the code currently look for.
Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1140761.
Fixes the colour conversion part of issues #4090 and #5623.
Note: Thus far I've been unable to find anything other than a hacky work-around for the remaining issue, "Error: JPEG error: marker was not found", but I figured I would submit this PR anyway since it at least solves one part of the problem.

/botio-windows preview

/botio test

/botio makeref

Nice! Thanks!


Use blocking connection pool

Closes #53.
I decided not to add timeout argument at the moment, because any unknown argument passed to constructor is passed to the BlockedConnectionPool (including timeout if user wishes to customize it).
BlockingConnectionPool default is 20 seconds. If you think it's too high, we can still customize that value without changing constructors themselves, like this:
if "timeout" not in connection_kwargs:
    connection_kwargs["timeout"] = 3  # or other sensible default

TODO

[x] replace ConnectionPool with BlockingConnectionPool
[x] add connection_kwargs (and max connections) to result backends
[x] add tests
[x] update documentation

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

Comparison is base (09e835e) 96.31% compared to head (7cfb6f7) 96.31%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff            @@
##           develop      #54   +/-   ##
========================================
  Coverage    96.31%   96.31%
========================================
  Files            7        7
  Lines          217      217
========================================
  Hits           209      209
  Misses           8        8

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

Seems good for me.


feat: Main menu

Description
https://www.notion.so/thebadge/Create-sidebar-component-no-logic-5d84d45fdc9c486f8684ae3e98ae4099
What's new?

Base implementation of new main menu

Screenshots

I list some functional aspects that I found useful to have:

The menu should close itself if you click outside of it
The menu should be outside of the "container"
The menu should grow in height according to the screen size

We may validate this with Lu, but I think she will agree.


asciidoctor-pdf: convert to new spec format

This converts the document into the new RVI documentation style for
ISA extensions in PDF form (as used for public review):

adds a .gitignore
adds a Makefile that generates a PDF
adds the template and resources
converts Zicbom/Zicboz into the new format
adds Wavedrom instruction/opcode encodings

Note that some content will still have to be adjusted by DavidK.

I'll merge this for now to test out on my local system, but the actual content still remains in the /specifications directory


Styling on mdx layout

reduce padding in the x direction on mobile
line height on <h2> is too large on mobile
make links a different color and underline to make it clear that it's a link

Did you already fix this with your commits to #40? If so, you can go ahead and link this issue to that PR so it'll be closed on merge of that PR.


vtk not working - pyshared not picked up from sys python

getsyssitepackages()
should return a list instead of 1 path, ie sys.path ... possibly should be renamed too.

Fixed a few days ago - uploaded + works (at least for vext -c)


ExoPlayer ignores embedded 608 captions in Dolby Vision streams

Version
Media3 main branch
More version details
627b7a3e56e3c8242a1f702509c7484373f9cdce
Devices that reproduce the issue
All
Devices that do not reproduce the issue
No response
Reproducible in the demo app?
Yes
Reproduction steps

Play a Dolby Vision DASH stream with embedded 608 captions in the Demo app.
Enable captions.

Expected result
Captions are enabled and are rendered.
Actual result
Captions are enabled but are not rendered.
This occurs because the Dolby Vision metadata in the video track causes the mime type to be video/dolby-vision instead of video/hevc or video/avc.
In this line: https://github.com/androidx/media/blob/49337d966705d854091dfc26a3f2006d29231c97/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/FragmentedMp4Extractor.java#L1609
NalUnitUtil.isNalUnitSei always returns false because the function only checks for H264 or H25 mime types: https://github.com/androidx/media/blob/release/libraries/container/src/main/java/androidx/media3/container/NalUnitUtil.java#L342
If the mime type is Dolby Vision the Sei NAL units get ignored.
Secondly for H265 Dolby Vision this check also fails: https://github.com/androidx/media/blob/49337d966705d854091dfc26a3f2006d29231c97/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/FragmentedMp4Extractor.java#L1632
If Dolby Vision is or'd with the H265 format for the above 2 cases the issue is resolved. However, the fix obviously isn't that simple because H264 or H265 can in theory be Dolby Vision.
Media
Not applicable
Bug Report

[ ] You will email the zip file produced by adb bugreport to<EMAIL_ADDRESS>after filing this issue.

@icbaker
@Halmo will provide more details on this. The main issue is that the check for Dolby Vision MIME type is not included, which leads to a failure in displaying CEA-608 captions when playing Dolby Vision (HEVC-HDR) tracks. It works fine with MIME type AVC (AVC-SDR) tracks. Although adding a following check for Dolby Vision in both places resolves the issue, Not sure if this is the correct approach for Dolby Vision support. Unfortunately, there's no quick workaround available to implement a fix right away.
  public static boolean isNalUnitSei(@Nullable String mimeType, byte nalUnitHeaderFirstByte) {
    return (MimeTypes.VIDEO_H264.equals(mimeType)
            && (nalUnitHeaderFirstByte & 0x1F) == H264_NAL_UNIT_TYPE_SEI)
        || (MimeTypes.VIDEO_H265.equals(mimeType)
            && ((nalUnitHeaderFirstByte & 0x7E) >> 1) == H265_NAL_UNIT_TYPE_PREFIX_SEI)
        || (MimeTypes.VIDEO_DOLBY_VISION.equals(mimeType)
            && ((nalUnitHeaderFirstByte & 0x7E) >> 1) == H265_NAL_UNIT_TYPE_PREFIX_SEI);
  }

and
            nalBuffer.setPosition(MimeTypes.VIDEO_H265.equals(track.format.sampleMimeType)
                || MimeTypes.VIDEO_DOLBY_VISION.equals(track.format.sampleMimeType) ? 1 : 0);

Thanks @icbaker
@Halmo can provide more details on this and probably share the sample assets if required.
The main issue is that the check for Dolby Vision MIME type is not included, which leads to a failure in displaying CEA-608 captions when playing Dolby Vision (HEVC-HDR) tracks. It works fine with MIME type AVC (AVC-SDR) tracks. Although adding a following check for Dolby Vision in both places resolves the issue, Not sure if this is the correct approach for Dolby Vision support. Unfortunately, there's no quick workaround available to implement a fix right away.
  public static boolean isNalUnitSei(@Nullable String mimeType, byte nalUnitHeaderFirstByte) {
    return (MimeTypes.VIDEO_H264.equals(mimeType)
            && (nalUnitHeaderFirstByte & 0x1F) == H264_NAL_UNIT_TYPE_SEI)
        || (MimeTypes.VIDEO_H265.equals(mimeType)
            && ((nalUnitHeaderFirstByte & 0x7E) >> 1) == H265_NAL_UNIT_TYPE_PREFIX_SEI)
        || (MimeTypes.VIDEO_DOLBY_VISION.equals(mimeType)
            && ((nalUnitHeaderFirstByte & 0x7E) >> 1) == H265_NAL_UNIT_TYPE_PREFIX_SEI);
  }

and
            nalBuffer.setPosition(MimeTypes.VIDEO_H265.equals(track.format.sampleMimeType)
                || MimeTypes.VIDEO_DOLBY_VISION.equals(track.format.sampleMimeType) ? 1 : 0);

@icbaker, to answer your question, yes if we can identify the SEI NAL unit for Dolby Vision stream, and based on that can decide to skip the header bytes, it will resolve the issue. Thanks a lot.

@akhilesh-dubey

The main issue is that the check for Dolby Vision MIME type is not included, which leads to a failure in displaying CEA-608 captions when playing Dolby Vision (HEVC-HDR) tracks. It works fine with MIME type AVC (AVC-SDR) tracks.

Does the bit I've bolded mean that when you play H.264-in-dolby-vision with CEA-608 subtitles, they work? If so, how does that work, because surely the same MIME type checks you've flagged here should fail with video/dolby-vision MIME type.

We haven't tried playing H.264 with Dolby Vision yet, but my guess is that it likely won’t work. However, we did test H.264 without Dolby Vision and CEA-608 subtitles, and that played fine. I’m not certain if we have an H.265 stream with Dolby Vision and CEA-608 subtitles available, but if I can find one, I’ll definitely test it.

We haven't tried playing H.264(with CEA-608 subtitles) with Dolby Vision yet, but my guess is that it likely won’t work.
However, we did test H.264(with CEA-608 subtitles) without Dolby Vision, and that worked fine.
I’m not certain if we have an H.264(with CEA-608 subtitles) stream with Dolby Vision, but if I can find one, I’ll definitely test it.

@icbaker the problem with
public static boolean isNalUnitSei(@Nullable String mimeType, byte nalUnitHeaderFirstByte) {
  return ((MimeTypes.VIDEO_H264.equals(mimeType)
              || MimeTypes.VIDEO_DOLBY_VISION.equals(mimeType))
          && (nalUnitHeaderFirstByte & 0x1F) == H264_NAL_UNIT_TYPE_SEI)
      || ((MimeTypes.VIDEO_H265.equals(mimeType)
              || MimeTypes.VIDEO_DOLBY_VISION.equals(mimeType))
          && ((nalUnitHeaderFirstByte & 0x7E) >> 1) == H265_NAL_UNIT_TYPE_PREFIX_SEI);
}

Is that it would allow H265 Dolby Vision content to check (nalUnitHeaderFirstByte & 0x1F) == H264_NAL_UNIT_TYPE_SEI) and presumably that's not valid for H265. I'm not familiar enough with low level H265 spec details to know if that could give a false positive.
Similarly you could also have the inverse where you are playing H264 Dolby Vision and it fails the first check but then checks  ((nalUnitHeaderFirstByte & 0x7E) >> 1) == H265_NAL_UNIT_TYPE_PREFIX_SEI) not sure if there could be false positives there.
To be honest I think ExoPlayer really needs to append Dolby Vision to the H264/H265 mime types vs having it as its own mime type since to my knowledge there's no dolby vision only codec it's always built on top of another existing codec. But this of course is a large change that touches a lot of pieces in ExoPlayer. We have other workarounds in our code due to the mime type being reported as Dolby Vision and the original codec being dropped from the mime type.
As for content I'll reach out to our internal teams to see if we can help in adding the 608 embedded to your existing test asset.

@icbaker I've sent a sample asset to<EMAIL_ADDRESS>It doesn't seem to want to play in ExoPlayer for some reason (didn't investigate too much) but it does execute the code path in FragmentedMp4Extractor.

Thanks for the sample, and for flagging the concerns with false-positives if we just inspect the NAL byte.
I've gone for a different approach using the existing MimeTypes.containsCodecsCorrespondingToMimeType() method, which I think should resolve this - the commit with this change is linked above.

Support CEA-608 subtitles in Dolby Vision

Thanks @icbaker, appreciate the quick action on this. Would you be able to provide an idea on when this will be in a version of Media3 that we can consume?


Automatically select port when starting

When starting next outputs this:

Ready on http://localhost:3000

Even if something else is already running on 3000. It would be great if next could detect that and then automatically use the next sensible free port (e.g. 3001).

It would be great if next could detect that and then automatically use the next sensible free port (e.g. 3001).

I am currently using this technique on a project (Phenomic) and I can tell the UX is not the best. Especially if you are already using your own project, just in another terminal/tab and you forget it.
create-react-app is doing something different and tells you that something (and who) is using the port and offer you a way to adjust it.
This UX seems a better choice (source: https://github.com/facebookincubator/create-react-app/blob/dc6edce99bc999252757114cb54721928abc28f1/packages/react-scripts/scripts/start.js#L294-L318)

Totally agree! The UX you proposedis in fact better than automatically selecting selecting another port. The thing that was actually bugging me was the fact next.js does not reflect the fact 3000 is already in use, and thus creating output that was simply wrong.

Related discussion: https://github.com/zeit/next.js/pull/68

Oh that's exactly this. I guess this issue can be closed then?

I hope so. Let's talk more on that PR.


Support golden testing

Investigate how to support golden testing

https://ro-che.info/articles/2017-12-04-golden-tests

The term in the JS community is Snapshot testing

ICYMI, scalatest-json supports golden tests with different JSON parsers for Scala.

I'm going to work on this! :)

@fsvehla We can close this ticket


More encoding and decoding fixes.

More encoding and decoding fixes. Updated test to use special characters.

These are other lines of codes that I think should use encoding:

reference.js: 954, 979, 981, 984, 1051

It's ready for review now.


feat: adds utils.Resolver.resolve_tags_from staticmehtod and tests

feat(utils): adds Resolver class, resolver resolves tags_from, refact… …
tests: adds tests for Resolver.resolve_tags_from
tests: adds additional tests for @observe wraps
refactor: add docstring

Codecov Report

Merging #12 (527b5f2) into main (b06dc1e) will decrease coverage by 0.71%.
The diff coverage is 90.90%.

@@            Coverage Diff             @@
##             main      #12      +/-   ##
==========================================
- Coverage   95.20%   94.48%   -0.72%
==========================================
  Files           5        5
  Lines         125      145      +20
==========================================
+ Hits          119      137      +18
- Misses          6        8       +2

Impacted Files
Coverage Δ

observe/lib/utils.py
96.42% <90.90%> (-3.58%)
:arrow_down:

Continue to review full report at Codecov.

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


Issue #152 - Fix issues related to AT-1.5

Related issue: AT-1.5 (#152)
Implemented functionalities:

Employees now have a location field
Client-gridview displays the Role and Location of employees
Removed the System Admin drop-down option when the account to be edited does not hold a SA role
Hides the password field when trying to edit another user's account
Modified IsSystemAdmin permission to deny updates based on password or role update to SA

Stakeholder discussion points:

Establishing a Locations table per organization to affiliate with employees
Remove the option to alter a user's role after account creation

Codecov Report

Merging #166 (9645ff1) into master (86a7ca8) will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #166      +/-   ##
==========================================
+ Coverage   97.26%   97.27%   +0.01%
==========================================
  Files          20       20
  Lines         475      477       +2
==========================================
+ Hits          462      464       +2
  Misses         13       13

Impacted Files
Coverage Δ

server/user_account/models.py
100.00% <100.00%> (ø)

server/user_account/serializers.py
100.00% <100.00%> (ø)

server/user_account/tests.py
95.53% <100.00%> (+0.02%)
:arrow_up:

server/user_account/views.py
94.11% <100.00%> (ø)

Continue to review full report at Codecov.

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

Overall, looks good, I just had a few comments to be addressed, but I think it's good.
I do have a concern with the permission change, since I don't quite understand what it's for.
Lastly, I wanted to ask your opinion on this. We are now stopping employees from being promoted to an SA, but we're not preventing SA's from being downgraded to IM's or SK's.
Do you think this is an issue we should address?

Awesome thanks!
For the permissions, my intention was to restrict password update for any user other than the currently logged-in user. As well, no user can upgrade another user to a SA role.
After our discussion, I restricted the ability to update other users' data altogether except for the fields is active or e-mail.
We can revisit the precise update permissions for each user role in our next stakeholder meeting to ensure the functionality meets the requirements of the user story. Also, I think we need to discuss the issue of upgrade/downgrade user roles as it offers excessive flexibility and contradicts some aspects in a working environment.
I will compile a list of concerns regarding these issues for our next stakeholder meeting.


Support map type in case when expression

Support map type in case when expression.
This fixes #3140
Signed-off-by: res-life<EMAIL_ADDRESS>

build

LGTM

Seems you can also link to the issue https://github.com/NVIDIA/spark-rapids/issues/3139 if it will be fixed by this PR.


The consistency of string during each process may not be well-concerned.

Consider a Fortigate config like
config firewall policy
    edit 168
        set name "policy 168"
        set uuid 14435052-3097-4d70-98c7-1dd2d60e229f
        set srcintf "jimmylin__1688"
        set dstintf "port1"
        set srcaddr "address__jimmylin__<IP_ADDRESS>/32"
        set dstaddr "all"
        set action accept
        set schedule "always"
        set service "ALL"
        set comments "\"customer\": \"Jimmy Lin\""
        set nat enable
        set ippool enable
        set poolname "ippool__jimmylin__<IP_ADDRESS>"
    next
end

(This is a .conf, like a plain text file)
Say the file is living in /conf/, named firewall_policy.conf.
We want to get it into python so then we can do all the data-processing things around it, So we do
>>> with open(file='/conf/firewall_policy.conf', mode='r', encoding='utf-8') as f:
>>>     lines = f.read().splitlines()

Now, let's look deeper into it.
>>> lines[2]
'        set name "policy 168"'
>>> print(lines[2])
        set name "policy 168"
>>> lines[10]
'        set service "ALL"'
>>> print(lines[10])
        set service "ALL"
>>> lines[11]
'        set comments "\\"customer\\": \\"Jimmy Lin\\""'
>>> print(lines[11])
        set comments "\"customer\": \"Jimmy Lin\""

We'll want something like
>>> def parse(string):
...     # some string-parsing things
...     return string
...
>>> parse(lines[2])
['set', 'name', '"policy 168"']
>>> parse(lines[10])
['set', 'service', '"ALL"']
>>> parse(lines[11])
['set', 'comments', '"\\"customer\\": \\"Jimmy Lin\\""'']

If we simply use
>>> def parse(string):
...    return string.split()
...

Then we will get
>>> parse(lines[2])
['set', 'name', '"policy', '168"']

Obviously that is not we want.
If we try shlex — Simple lexical analysis, a module in The Python Standard Library
>>> from shlex import split as shlex_split
>>> def parse(string):
...    return shlex_split(string)
...

Then we will get
>>> parse(lines[2])
['set', 'name', 'policy 168']

That's great, and we can join them back together by
>>> from shlex import join as shlex_join
>>> shlex_join(parse(lines[2]))
"set name 'policy 168'"

That's almost the same as the original string, but the double quotes around policy 168 became single quotes. It's acceptable though.
But when it comes to lines[10]
>>> parse(lines[10])
['set', 'name', 'ALL']
>>> shlex_join(parse(lines[10]))
'set service ALL'

The double quotes just disappear, because ALL is not a string containing space, and shlex doesn't think it is needed to add quotes around it.
I looked up the shlex documentation and it is a parameter called posix to use with.
>>> from shlex import split as shlex_split
>>> def parse(string):
...    return shlex_split(string, posix=False)
...
>>> parse(lines[2])
['set', 'service', '"ALL"']

And we can simply use the built-in join to turn it back.
>>> ' '.join(parse(lines[2]))
'set service "ALL"'

But when it comes to lines[11], that is not the case.
>>> ' '.join(parse(lines[11]))
['set', 'comments', '"\\"', 'customer\\":', '\\"Jimmy', 'Lin\\""']

I think that is the different way of parsing a string between Forti devices and the shlex module.
Forti device is seeing something like
'set comments \'"customer": "Jimmy Lin"\''

set comments ""customer": "Jimmy Lin""
and shlex is seeing something like
'set comments "\\"customer\\":  \\"Jimmy Lin\\""'

If we use .replace('\"', '''), it will seem better
>>> lines[11].replace('\\"', '\'')
'        set comments "\'customer\': \'Jimmy Lin\'"'
>>> parse(lines[11].replace('\\"', '\''))
['set', 'comments', '"\'customer\': \'Jimmy Lin\'"']

But this is a dirty way, if there are more escape characters or more complicated nested things, I think it may fail, and the join part also not correct
>>> ' '.join(parse(lines[11].replace('\\"', '\'')))
'set comments "\'customer\': \'Jimmy Lin\'"'

Is there a solution to make these parsing process correct and clean.
Am I missing something?

That's almost the same as the original string, but the double quotes around policy 168 became single quotes. It's acceptable though.
But when it comes to lines[10]

parse(lines[10])
['set', 'name', 'ALL'] # i believe this is 'service', not a big deal though.
shlex_join(parse(lines[10]))
'set service ALL'

This one may work, but we need to test more.
import re

def parse(string):
    return re.findall('(?:\".*?[^\\\]\"|\S)+', string)

with open(file=r'C:\Users\LinKeiChi\envs\jupyter\conf\firewall_policy.conf', mode='r', encoding='utf-8') as f:
    lines = f.read().splitlines()
for line in lines:
    print(parse(line))

Output:
['config', 'firewall', 'policy']
['edit', '168']
['set', 'name', '"policy 168"']
['set', 'uuid', '14435052-3097-4d70-98c7-1dd2d60e229f']
['set', 'srcintf', '"jimmylin__1688"']
['set', 'dstintf', '"port1"']
['set', 'srcaddr', '"address__jimmylin__<IP_ADDRESS>/32"']
['set', 'dstaddr', '"all"']
['set', 'action', 'accept']
['set', 'schedule', '"always"']
['set', 'service', '"ALL"']
['set', 'comments', '"\\"customer\\": \\"Jimmy Lin\\""']
['set', 'nat', 'enable']
['set', 'ippool', 'enable']
['set', 'poolname', '"ippool__jimmylin__<IP_ADDRESS>"']
['next']
['end']

Forti and shlex parse a string with their respective way, but in most(all?) of the cases Forti can understand shlex's format, and shlex can understand Forti's.
The main differences are listed below:

Forti has some built-in quoted elements/words, it quotes them even if there is no white space in them; shelx doesn't.
shlex uses single quote; Forti uses double quote.
Forti uses backslash to escape to represent a quote in a quote; shlex mixs single quotes and double quotes and concatenate them instead.


null fields in GenerateEmbeddingResponse

I am using the ollama-rs library with a remote server running the latest mistral. Fairly frequently, I get these errors:
An error occurred with ollama-rs: invalid type: null, expected a sequence at line 1 column 17
It is always this error on the same line and column. Most of the responses are fine though. Is it because some values in the embedding are NaN which encodes to null in json? If so, could it be fine for the response to deserialize correctly and just convert these nulls back to NaN?

Hey, thanks for reporting this issue. It seems to be a rather old issue of serde https://github.com/serde-rs/json/issues/202. I tried to fix that by replacing f64 with Option<f64>, which should cause NaN to be deserialized to None.
I was not able to reproduce the issue so feel free to test the change
ollama-rs = { git = "https://github.com/pepperoni21/ollama-rs", branch = "issue-embeddings"}

Funnily enough my mistral server stopped producing NaNs and idk why. There was no change. If there is another person facing this issue in a more predictable way, this branch would probably be more helpful to them. Thank you for doing this though!

Actually I faced the issue again. This branch does not fix it. The error is exactly the same.

Actually I faced the issue again. This branch does not fix it. The error is exactly the same.

I think NaN is encoded to "NaN" in json, not "null", so using Option doesn't fix it. I added json5 which handles NaN values in issue-embeddings, let me know if it works.


chore(deps): use latest bee-inx 1.0.0-rc.1

The plan now is to get rid of bee-inx and move its contents to Chronicle.


[Improvement] Implement parser evaluation in Python

Description
This PR implements parser evaluation in Python to replace the perl script.
Checklist
Essentials

[x] PR's title starts with a category (e.g. [BUGFIX], [MODEL], [TUTORIAL], [FEATURE], [DOC], etc)
[x] Changes are complete (i.e. I finished coding on this PR)
[x] All changes have test coverage
[x] Code is well-documented

Changes

[x] The perl evaluation script is now removed.

Comments

This is one part of https://github.com/dmlc/gluon-nlp/issues/427

Job PR-772/1 is complete.
Docs are uploaded to http://gluon-nlp-staging.s3-accelerate.dualstack.amazonaws.com/PR-772/1/index.html

Job PR-772/2 is complete.
Docs are uploaded to http://gluon-nlp-staging.s3-accelerate.dualstack.amazonaws.com/PR-772/2/index.html

Job PR-772/3 is complete.
Docs are uploaded to http://gluon-nlp-staging.s3-accelerate.dualstack.amazonaws.com/PR-772/3/index.html

Job PR-772/4 is complete.
Docs are uploaded to http://gluon-nlp-staging.s3-accelerate.dualstack.amazonaws.com/PR-772/4/index.html


[CherryPick]Change IP addresses to show up as strings in label maps in accesslog …

CherryPick (#11740) from Master to release 1.1 for 1.1.1 release
Change IP addresses to show up as strings in http req  in accesslog
Fix lint errors
Fix lint errors
Use stringify function
Updated based on feedback

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: gargnupur
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: geeknoid
If they are not already assigned, you can assign the PR to them by writing /assign @geeknoid in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

mixer/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@gargnupur: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
60ca04ef0432beeb94acc65f2dc23964166c7605
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@gargnupur: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
60ca04ef0432beeb94acc65f2dc23964166c7605
link
/test istio-integ-k8s-tests

prow/istio-pilot-multicluster-e2e.sh
60ca04ef0432beeb94acc65f2dc23964166c7605
link
/test istio-pilot-multicluster-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Can we get this merged for the next 1.1.x release? 🙏  @douglas-reid @geeknoid

@dwradcliffe 100% agree.
@duderino can you help us merge this please?

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: douglas-reid, gargnupur
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

mixer/OWNERS [douglas-reid]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

This is a good candidate for 1.1.2
cc @duderino

For 1.1.2 which should be out on 4/1 (not joking)


Does 1 row calendar view sometimes skips days?

In your example, I change line 40 in ViewController.swift to:
calendarView.numberOfRowsPerMonth = 1

Most of the days are properly displayed but sometimes there are gaps in days:

I haven't found a pattern in when days are skipped just yet.
My workaround right now is to call
calendarView.changeNumberOfRowsPerMonthTo(1, withFocusDate: NSDate())
calendarView.reloadData()

in viewDidLoad. It gives me an animation when hopping to the date, which isn't ideal, but works for now.

ok when you say there are gaps in days, do you mean there are missing days in the calendar?
Or there are literal white space gaps in the displayed days like you are showing above?

If you are changing the numberOfRowsPerMonth property, then you must do it like so
calendarView.numberOfRowsPerMonth = 1
calendarView.reloadData()

or so
calendarView.changeNumberOfRowsPerMonthTo(1, withFocusDate: myDate)

Checking to see when your issue above occurs.

Can you give me the date range you have chosen when you saw that bug above?

Range is -2month to +2month
Paging is disabled.

I'm calling
  calendarView.numberOfRowsPerMonth = 1
calendarView.reloadData()

The numbers start getting lost around March.

Ok i think i see your issue.
But its not a bug.
Chat here is slow, wanna try chat here https://gitter.im/patchthecode/JTAppleCalendar ?

I think what you are seeing is the end of a month and the start of another?

[EDIT]
So what you are seeing above is happening around March- April (i assume)
However, in your provided screen shot, I am seeing the header "February" ?
I think you need to configure you NSCalendar.currentCalendar() to your correct setting so that the month will correctly say "March" in your screen shot.

Here is something we can discuss.
I am guessing that you do not want your calendar to look like this?
But I do not know how you would like it to look. Here are the following possible solutions

If you show the out-dates for the month, it will look like you see above.

If you do not show the out-dates for the month, then it will be a blank screen
(btw, you already have to control to display or hide outdates)

Should i make some option to totally remove outdates and connect the months directly to one another?

Let me know what you think

I have been thinking about option 3.
If i make an option to disable out-dates, This means that if you set the option to = true, your months will be generated like this:
2016

  Jan     Feb     Mar    etc etc
[1-31]  [1-29]  [1-31]

No outdates will be generated, and the months start and end dates will be directly next to each other.
Will this be ok?

Yeah, thanks it's definitely the boundary dates. For a one row ticker I wouldn't want them, which I've been able to work around. Due to complexity with the single row stuff I'm trying to use, I might fall back to some sort of month view for now to accelerate development.

OK i see. If there is any upgrade you think this calendar should have, then suggest it and I will see what i can do. Should I leave this issue open for sometime still?

Ideally, when it's a one-row setup, there shouldn't be the boundary dates. Before I changed my mind, I was modeling an app based on Fantastical's week ticker. You can keep this open, as someone might be interested in this.

I could implement the features so that you can build an app just like fantistical, but i will have to see what the fantastical looks like. Currently it costs about $4 plus on the app store.. and currently, I think it costs too much :(
But if you have time maybe you can send me some animated gif screens so that I can implement the features into this control. (If you got the extra free time of course)
I literally aim to make this control, the calendar view anyone ever tries. Have a good one.

After thinking about it some more, and after looking at the Fantastical GIF file you provided, I have realized there has to be more that goes in to the update of the calendar.
If you have paging mode off, then the days of the week will have to scroll along with the dates when a user scrolls. Because the dates will not be properly aligned with the days of the week column.
In order to achieve the following:

Fantastical look
The removal of boundary dates with one row of dates

Then the days of the week headers (sun, mon, tue, etc) will have to be scrollable inside of the calendarView itself, just like in the gif you have provided.

I will think about an upgrade.

I'm not going to ship it, but as an experiment I'm playing with the Fantastical ticker concept.
I've gotten the cells to display the day of week, which solves the issue (for now) for making them scrollable.
I've found that the trickiest parts of implementing this are:

Detecting what date is on the leftmost side. Right now, I'm having to check for intersection with a rectangle, really dig into CollectionView, do some hackish offsets.
Snapping the ticker to center on a day, i.e. handling the situation when the ticker stops in the middle of two days.

the function
func calendar(calendar: JTAppleCalendarView, didScrollToDateSegmentStartingWith date: NSDate?, endingWithDate: NSDate?)
tells you the start and end date. But it was developed with pagingEnabled = true
I will make the following update

When paging is not enabled, that function will tell you the date that is on the Leftmost and the date on the Rightmost boundaries of the view.
When in freeflowing mode, cells will snap in place so that they wont be in the middle.

Sounds good?

Sounds great!

objective #2 is completed. Will push code change in 10 mins.

Ok, i'm working on objective #1 and it can be done. But before i put the work into it, can you tell me what is the use-case for it? Like, what are you trying to accomplish by getting the date on the left most side?
I'm just trying to understand the problem fully so that i don't implement a half ass solution :/

Ok, i need something answered (so that i dont code unnecessarily)
Is there any reason why you want to know which date is on the left most corner of the screen?
If i know what your intention is, then I will have a better idea on the solution.

I'll be showing information below the calendar for the date on the leftmost side.

So heres the thing. Since this control is to be used by all, i have to code to benefit all.
So lets say you have your single row of dates like so:
[29, 30, 31, 1, 2, 3, 4]
What do you want me to return? Let's say i return 29 as the leftmost date and 4 as the right most date.
This might solve  your problem.
But the next question is, what would i return for the user who has two rows of dates?
[29, 30, 31, 1, 2, 3, 4]
[ 5, 6, 7, 8, 9, 10, 11]

This was my question. I have to return something that makes sense. I can't just do a solution for you and leave every one else out in the cold. So i need to know what to return for someone with more than one row of dates. Any ideas? (i'm still thinking on it as well)

Maybe it can return the visible date range: so for in that 2 row example, the NSDates of 29 and 11 would be returned.

I thought this at first, but then here is where it gets tricky,
// 1. Assume that the first section is currently visible on iPhone

        First Section               Second Section
[29, 30, 31, 1, 2, 3, 4]    [12, 13, 14, 15, 16, 17, 18]
[ 5, 6, 7, 8, 9, 10, 11]     [19, 20, 21, 22, 23, 24, 25]

// 2. Now lets say that the user scrolls one cell. The Visible screen will now look like this

[30, 31, 1, 2, 3, 4, 12]
[6, 7, 8, 9, 10, 11, 19]

i think that it would be very confusing giving a user 30 and 19 :/
I am still thinking on this. Any ideas/arguments are welcome

Ah I see... Depending on how it's implemented (I need to look), any way you could pass the whole NSDate as start and end points?

If this isn't feasible, I'll probably use some sort of class extension on my own.

I have a solution at this point in my custom code, but it's extremely ugly, fragile, embarrassing, and not robust :D. I think baked into JTCalendar, some NSDate range might be a helpful feature for other folks, we could probably use other people's input.

And hey, every thing is feasible. Its just that i want it to not be "bloated" code to solve a single problem while not accounting for the others. So from what I gather, the problem is that:

Users want to know the date on the boundaries of the calendar, in order to perform some other logic?

So here's a solution i can implement. I will return an array of dates for the left column. And also an array of dates for the right column.
[29, 30, 31, 1, 2, 3, 4]   will return [29] and [4]

[30, 31, 1, 2, 3, 4, 5]   will return [30,6m 20] and [5,19, 26]
[6, 7, 8, 9, 10, 11, 19]
[20, 21, 22, 23, 24, 25, 26]

I can do this update easily. I just hope it isnt bloat code.
Does this sound like a good idea?

On second thought. Maybe i'm overthinking it. Having the calendar on free flowing mode with more than 1 row seems weird and complicated when i tried it. I can't imagine any user doing this. Free flowing single rows seems ok though. Working on a solution now.

Yeah, no one will want that 2-3 rows. 1 row is a special case in terms of the date "skipping" because of boundaries, etc.
The snap to day is working great, by the way!

Ah thanks. You can control the snapping scrolling by using the calendarView.scrollResistance property. I have updated the sample app to reflect the changes.
Also, Objective # 1 is completed.
Here is the Upgrade.
func cellStatusForDateAtRow(row: Int, column: Int) -> CellState?
By supplying the row and column, user can get information about a visible date cell.
so for instance if your visible cells look like this:
[30, 31, 1, 2, 3, 4, 5]
[6, 7, 8, 9, 10, 11, 19]
[20, 21, 22, 23, 24, 25, 26]

if you do cellStatusForDateAtRow(1, column:2), this will return a CellStatus for the date 8th.
CellStatus information includes: isSelected, text, dateBelongsTo, date, and day of the week.
Do a git pull and let me know if it works for you. If there are no bugs, i will officially do an update. Also let me know if there is any thing else needed to make JTAppleCalendar create a calendar like fantastical.

Ok, sorry for the delay, I'll check it out as soon as I get to a Mac!

Added to version 2.1.2
closing issue.


override systemd unit file execstart for bluetooth

Issue description
hello, I'm trying to disable a bluez plugin by appending an extra option for the execStart command for bluetooth.service, what would be correct way to do this?
I've tried something along the lines of:
  systemd.user.services.bluetooth = {
      description = "Bluetooth Service";
      serviceConfig = {
        Type = "dbus";
        BusName = "org.bluez";
        ExecStart = "${pkgs.bluez}/libexec/bluetooth/bluetoothd --noplugin=avrcp";
      };
      wantedBy = [ "bluetooth.target" ];
  };

but after a rebuild & restart, content of /etc/systemd/system/bluetooth.service still stayed the same.
on non-nix systems I am able to do this via systemctl edit --full bluetooth.service and edit the unit files directly,
any examples is appreciated!
Technical details
- system: `"x86_64-linux"`
 - host os: `Linux 5.1.11, NixOS, 19.09pre183392.83ba5afcc96 (Loris)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.2.2`
 - channels(michael): `"home-manager"`
 - channels(root): `"nixos-19.09pre183392.83ba5afcc96, nixos-hardware"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

We use systemd overrides for serviceConfig. If the service already has an ExecStart field, you need to clear it first, as per systemd.unit(5).
In Nix, you can achieve that by using an array
  …
  systemd.user.services.bluetooth.serviceConfig.ExecStart = [
    ""
    "${pkgs.bluez}/libexec/bluetooth/bluetoothd --noplugin=avrcp"
  ];
  …

which will result in the expected override.conf file:
…
ExecStart=
ExecStart=/nix/store/…/libexec/bluetooth/bluetoothd --noplugin=avrcp
…

This sadly doesn't work for me, I keep running into either already define or infinite recursion errors as explained here: https://stackoverflow.com/questions/50678639/how-to-change-the-serviceconfig-of-a-service-defined-in-nixpkgs-from-configurati
There's also this PR that fixes this: https://github.com/NixOS/nixpkgs/pull/41446 but I'm stuck whilst waiting for this to be released..

This sadly doesn't work for me, I keep running into either already define
or infinite recursion errors as explained here:
https://stackoverflow.com/questions/50678639/how-to-change-the-serviceconfig-of-a-service-defined-in-nixpkgs-from-configurati
There's also this PR that fixes this: #41446 but I'm stuck whilst waiting
for this to be released..

bluetooth is not a user service - it's a system service, so any kind of overrides should happen on systemd.services.bluetooth and not systemd.user.services.bluetooth.

Hi,
I deleted my comment since I managed to work around it, see here https://github.com/NixOS/nixpkgs/pull/41446
Thans for your quick reply!


Fix non-deterministic moduleId assignment

Summary
Refactor occurrence order module ids algorithm (used when moduleIds: "size") and fix a possible NaN bug in OccurrenceModuleIdsPlugin.js.
Details
See discussion https://github.com/webpack/webpack/discussions/16899 for more details.
The module sort was encountering NaN values, causing the sort to be non-deterministic, resulting in a different moduleId assignment being used in each build run when moduleIds: "size" is configured.  This causes the build to be slightly different in size each time it's run.
Fix is to ensure that a number is always used when constructing a sum value.  If a module is not found in the initial chunk map, use a 0 instead of undefined.

@scameron Thank you for a PR, can you accept CLA?

Thank you for a PR, can you accept CLA?

I think I'm probably supposed to accept as a Corporate Contributor.  I submitted the request this morning but I think the approver is away for the holiday weekend.  No problem, there's no big hurry.  I'll get it done early next week.  It'll be good to get it squared away so it's done for next time.

@scameron yeah, thank you for feedback, ideally will be great to add test case to prevent regression in future :smile: but yeah, I undestand what is it not easy, anyway maybe you can do it?

@alexander-akait, the CLA approval looks like it's come through now.

Hi @alexander-akait, what do you think about this PR.  Could it be merged without a new test or do you still want to try to find a simple repro case?

@scameron In my TODO, hope I will find a time today to look at this

Reproduced :smile: Will add test cases soon

@scameron just to check, this patch fix your problem?

concatenateModules is a problem, because modules were concated, they don't exists anymore and so we have NaN

That makes a lot of sense actually.  You're good. :)

just to check, this patch fix your problem?

Yeah, this seems to totally resolve my problem.  The build output is completely stable now.


macOS : --require,./mocks is not allowed in NODE_OPTIONS

Hello there,
Since binode https://github.com/remix-run/indie-stack/blob/bfe5ecab176cacd60cbbf001ae504c310c8907ba/package.json#L13 I have an error when launching npm run dev
macOS 12.3
node v16.14.2
> dev:remix
> binode --require ./mocks -- remix dev

node: --require,./mocks is not allowed in NODE_OPTIONS

Having the same issue with it after just generating with npx create-remix@latest.  I've run npm run setup (even though I'm pretty sure there's no need to) and am getting the same issue when running npm run dev.
It seems to get stuck at Rebuilding... Done in 152ms. and never actually serves the dev server.

Thanks, it works ;)


Feature/width bucket macro

After speaking with @clausherther, we decided that I'd finish this PR off (since I'd done lots of the work anyway to figure out why the tests were failing).
Original PR is #145

Nice work @clrcrl, thanks!


RFE: Subscription to multiple actions at once

Might look like the following:
// get an event when any question is created, updated or deleted
var msg = {
  stream: "questions",
  payload: {
    action: "subscribe",
    data: {
      action: ["create", "update", "delete"]
    }
  }
}

I like this idea. How would you handle when subscriptions that have different requirements? IE update all resources vs update an individual?

Of course not all combinations make sense, e.g. individual list, either throw an error or silently ignore.
BTW, did you see #22?

I would rather have an error for an invalid combination of subscriptions. We should consider the operation either all or nothing


[RFW] Migrate non flutter tests to use the dart testing utils.

Tests like https://github.com/flutter/packages/blob/main/packages/rfw/test/text_test.dart can be written using the dart testing utils. Similar to that example we should only use flutter testing utils for things that required to deal with widgets; otherwise dart testing utils should be enough.

What problem would that solve?


support for mixtral family ?

I have seen earlier issues that suggest support for mixtral models specifically: mistralai/Mixtral-8x7B-v0.1 which indeed works but when using the instruction tuned version of the model: mistralai/Mixtral-8x7B-Instruct-v0.1 or other finetuned versions such as: NousResearch/Nous-Hermes-2-Mixtral-8x7B-DPO, I get errors such as:
In the case of NousResearch/Nous-Hermes-2-Mixtral-8x7B-DPO:
Traceback (most recent call last):
  File "/home/ubuntu/deepspeed_script.py", line 4, in <module>
    pipe = mii.pipeline("NousResearch/Nous-Hermes-2-Mixtral-8x7B-DPO")
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/api.py", line 156, in pipeline
    inference_engine = load_model(model_config)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/modeling/models.py", line 17, in load_model
    inference_engine = build_hf_engine(
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/engine_factory.py", line 126, in build_hf_engine
    return InferenceEngineV2(policy, engine_config)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/engine_v2.py", line 83, in __init__
    self._model = self._policy.build_model(self._config, self._base_mp_group)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/inference_policy_base.py", line 156, in build_model
    self.model = self.instantiate_model(engine_config, mp_group)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/mixtral/policy.py", line 17, in instantiate_model
    return MixtralInferenceModel(config=self._model_config, engine_config=engine_config, base_mp_group=mp_group)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/mixtral/model.py", line 159, in __init__
    super().__init__(config, engine_config, base_mp_group)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/inference_transformer_base.py", line 222, in __init__
    self.make_unembedding_layer()
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/inference_transformer_base.py", line 265, in make_unembedding_layer
    self.unembed = heuristics.instantiate_unembed(unembed_config, self._engine_config)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/modules/heuristics.py", line 179, in instantiate_unembed
    return DSUnembedRegistry.instantiate_config(config)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/modules/module_registry.py", line 39, in instantiate_config
    return cls.registry[config_bundle.name](config_bundle.config, config_bundle.implementation_config)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/modules/implementations/unembed/ragged_unembed.py", line 69, in __init__
    self._act_fn = CUDABiasActivation(self._config.vocab_size, self._config.dtype, ActivationType.IDENTITY)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/kernels/core_ops/bias_activations/bias_activation.py", line 36, in __init__
    raise ValueError("channels must be divisible by 8")
ValueError: channels must be divisible by 8

In the case of mistralai/Mixtral-8x7B-Instruct-v0.1:
Traceback (most recent call last):
  File "/home/ubuntu/deepspeed_script.py", line 11, in <module>
    output = pipe([full_prompt], max_new_tokens=512)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/batching/ragged_batching.py", line 481, in __call__
    self.generate()
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/batching/utils.py", line 31, in wrapper
    return func(self, *args, **kwargs)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/batching/ragged_batching.py", line 101, in generate
    next_token_logits = self.put(
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/batching/ragged_batching.py", line 448, in put
    return self.inference_engine.put(uids, tokenized_input, do_checks=False)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/engine_v2.py", line 146, in put
    logits = self._model.forward(self._batch)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/mixtral/model.py", line 259, in forward
    residual, hidden_states = self._forward_transformer(layer_idx, residual, hidden_states, wrapped_batch)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/mixtral/model.py", line 214, in _forward_transformer
    hidden_states = self.moe(hidden_states, ragged_batch_info, cur_params.moe_gate, cur_params.moe_mlp_1,
  File "/home/ubuntu/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/modules/implementations/moe/cutlass_multi_gemm.py", line 223, in forward
    self._mlp_1(
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/kernels/cutlass_ops/moe_gemm/moe_gemm.py", line 59, in __call__
    self.kernel(ordered_output, ordered_input, weights, biases, total_rows_before_expert, self.act_fn)
RuntimeError: [FT Error][MoE][GEMM Dispatch] Arch unsupported for MoE GEMM
Traceback (most recent call last):
  File "/home/ubuntu/deepspeed_script.py", line 11, in <module>
    output = pipe([full_prompt], max_new_tokens=512)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/batching/ragged_batching.py", line 494, in __call__
    self.generate()
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/batching/utils.py", line 31, in wrapper
    return func(self, *args, **kwargs)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/batching/ragged_batching.py", line 101, in generate
    next_token_logits = self.put(
  File "/home/ubuntu/.local/lib/python3.10/site-packages/mii/batching/ragged_batching.py", line 448, in put
    return self.inference_engine.put(uids, tokenized_input, do_checks=False)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/engine_v2.py", line 146, in put
    logits = self._model.forward(self._batch)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/mixtral/model.py", line 259, in forward
    residual, hidden_states = self._forward_transformer(layer_idx, residual, hidden_states, wrapped_batch)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/model_implementations/mixtral/model.py", line 214, in _forward_transformer
    hidden_states = self.moe(hidden_states, ragged_batch_info, cur_params.moe_gate, cur_params.moe_mlp_1,
  File "/home/ubuntu/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/modules/implementations/moe/cutlass_multi_gemm.py", line 223, in forward
    self._mlp_1(
  File "/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/inference/v2/kernels/cutlass_ops/moe_gemm/moe_gemm.py", line 59, in __call__
    self.kernel(ordered_output, ordered_input, weights, biases, total_rows_before_expert, self.act_fn)
RuntimeError: [FT Error][MoE][GEMM Dispatch] Arch unsupported for MoE GEMM

The code used to load and infer model:
import mii
pipe = mii.pipeline("mistralai/Mixtral-8x7B-Instruct-v0.1")
system_prompt = "You are a sentient, superintelligent artificial general intelligence, here to teach and assist me."
full_prompt = f"<|im_start|>system\n{system_prompt}<|im_end|>\n<|im_start|>user\n what is AI?<|im_end|>\n<|im_start|>assistant"
output = pipe([full_prompt], max_new_tokens=512)
print("Generated Text:", output)

Also is it possible to benchmark the tokens/s ?
Kind regards.

@S-Yacer for the issue with NousResearch/Nous-Hermes-2-Mixtral-8x7B-DPO model please see https://github.com/microsoft/DeepSpeed-MII/issues/385#issuecomment-1909194115
Regarding the mistralai/Mixtral-8x7B-Instruct-v0.1 model, what is the GPU you are running on and what is your tensor parallel size? I just ran it on a 8xA100 node with 8-way TP and it worked fine!

thanks for the very prompt response, I looked at the comment and look forward for the update !
in regards to the GPU I am using and tensor parallel size: I am using x2 H100 gpus.

@S-Yacer a few of our kernels are not enabled/tested on H100 yet, unfortunately! We will be adding full h100 support soon! thanks.

thanks, looking forward ^^

Hi @arashb , is there a way to use expert_parallelism in current Mii examples?
import mii
pipe = mii.pipeline("mistralai/Mixtral-8x7B-Instruct-v0.1")
response = pipe(["DeepSpeed is", "Seattle is"], max_new_tokens=128)
print(response)

deepspeed --num_gpus 4 mii_example.py, this I assume just doing tensor parallelism.

Hi @arashb , is there a way to use expert_parallelism in current Mii examples?
@YJHMITWEB Sorry, we don't support EP with DeepSpeed-FastGen/MII, only TP is supported!

Hi @arashb , is there a way to use expert_parallelism in current Mii examples?

@YJHMITWEB Sorry, we don't support EP with DeepSpeed-FastGen/MII, only TP is supported!

Any plan to support EP in MoE inference? Or why is EP abandoned at the initial design? Thanks.

@arashb Hi, thanks for the reply. Is MII built on top of DeepSpeed? Since I know that DeepSpeed does support Expert Parallelism.

Any news on adding support for H100 GPUs?


a4

Deployed  /master. View on Runnable.
From Runnable

Deployed  llo-world/master. View on Runnable.
From Runnable


Question: Composite Proofs

Hi! :wave:
Thank you for your great work! (Especially all the comments in the code!)
I was looking at how the composite proof system works, especially focusing on BBS+ with LegoGroth16.
From [1] I gather that everything is kinda glued together via Schnorr. Is there a formal description on how this works? I am really curious about this...
I recently looked into combining BBS+ and Bulletproofs (with Hyperledger Ursa) but got stuck at exactly that point...
Could not think of how to prove the usage of the witness from the BBS+ in the range proof (...still learning...).
As a side question: Would there be anything blocking the combination of the two from the get-go or could one "plug in" Bulletproofs (to avoid the trusted setup) using the same approach to composite proofs (i.e. adding to this repo)?
Cheers
Christoph
[1] https://github.com/docknetwork/crypto/blob/main/proof_system/src/sub_protocols/bound_check_legogroth16.rs

Hi :wave: Thanks for reaching out.

From [1] I gather that everything is kinda glued together via Schnorr.

Correct.

Is there a formal description on how this works? I am really curious about this...

If you mean proofs, then no, don't have it for the exact combination (BBS+ & LegoGroth16) but the idea is that the snark proof contains a Pedersen commitment  to the witness(s) . This witness (which is a BBS+ message) is also used in proof of knowledge of BBS+ signature, notice commitment d in the section 4.5 of paper, so we prove that the witness used in both the Pedersen commitment from snark and d is indeed the same.

Could not think of how to prove the usage of the witness from the BBS+ in the range proof

Yes, its possible. I did that in my own fork while I was contributing to ursa. See these 2 tests.  The idea is the same with Bulletproofs as here also you have a commitment to the witness and you can prove equality of the witness with the message in d in the BBS+ proof.

Would there be anything blocking the combination of the two from the get-go or could one "plug in" Bulletproofs

No blocker as evident from above.

Thank you for the quick reply!

If you mean proofs, then no, don't have it for the exact combination (BBS+ & LegoGroth16) but the idea is that the snark proof contains a Pedersen commitment to the witness(s) .

Yes, I was thinking about this - thanks for the hints! I will have a look at the math...

Yes, its possible. I did that in my own fork while I was contributing to ursa. See these 2 tests.

Cool! Was there a specific reason you went with LegoGroth16 instead of Bulletproofs then? I am not yet sure what the implications of the trusted setup are if the verifier is dishonest... (e.g. trying to figure out the witness ) I will have to double check that.

Was there a specific reason you went with LegoGroth16 instead of Bulletproofs then?

Faster verification.

I am not yet sure what the implications of the trusted setup are if the verifier is dishonest

A verifier who did the trusted setup cannot learn the witness but can only forge proofs, i.e. create a proof for a witness that does not satisfy the relation. In our case, the verifier has no incentive to do that.

Thanks alot!


Not work with giflib 5.2.1

After brew upgrade, now giflib is upgrade from 5.1.4 to 5.2.1. And dlib report following error:
ImportError: dlopen(/usr/local/lib/python3.7/site-packages/dlib.cpython-37m-darwin.so, 2): Library not loaded: /usr/local/opt/giflib/lib/libgif.7.dylib
  Referenced from: /usr/local/lib/python3.7/site-packages/dlib.cpython-37m-darwin.so
  Reason: Incompatible library version: dlib.cpython-37m-darwin.so requires version 8.0.0 or later, but libgif.7.dylib provides version 0.0.0

I tried to downgrade giflib to 5.1.4 with brew install<EMAIL_ADDRESS>but failed, it reports:
Error: No available formula with the name<EMAIL_ADDRESS>
Seems Mac OSX force to upgrade to giflib 5.2.1, but dlib cannot work with it. Please help, thanks!

To temporarily solve this problem, all I can do is listed as below in case someone may also meet the same problem:

Download giflib source code from their website. Be careful, it must be 5.1.4, no other version.

Unzip it to a folder, then run:

./configure
make
make install

After install, the executable files will be installed to /usr/local/bin, and library files will be installed to /usr/local/lib. However, python will try to find the library files from /usr/local/opt/giflib/lib, and in this path, there is a symbol link of libgif.7.dylib which link to libgif.7.2.0.dylib. Firstly we backup this symbol link:

mv libgif.7.dylib libgif.7.dylib.old

Then, we create a new symbol link to link to 5.1.4 version just installed:
ln -s /usr/local/lib/libgif.7.dylib ./libgif.7.dylib

After all this done, python with dlib can now work again. But still I hope the community can solve this problem properly. Thank you!

It sounds like you built dlib against that older libgif and then removed it during the upgrade. Try reinstalling dlib so it uses the new libgif.

Yes, I tried following commands, and now it works ok:
pip3 uninstall dlib
rm -rf ~/Library/Caches/pip
pip3 install dlib

Thank you!


SoFi Feature Request: allow multiple "Active Investing" accounts

Summary
Just like you (SoFi) have "vaults" in your Banking side, to allow segregating funds based on intended purpose, I'd really like the same for my investment accounts in SoFi: allow us to have multiple "Active Investing" accounts, each with a different nickname, to accomplish this.
I believe to comply with FINRA regulations all you have to do is disallow margin trading on all but one of the active investing accounts. This is fine. Margin trading is risky and probably shouldn't be used by most people anyway.
Details
Example, I want one investment account for "Family Money" and one investment account for "Personal Money." The "Personal Money" investment account must be separate because it is money I can spend on anything I want, such as a jet-ski or OneWheel electric offroad skateboard, rather than using it responsibly for a house, car, etc.
In both investment accounts we might have the same tickers, such as VGT, VOOG, or AAPL, so it must be separate accounts for me to truly keep track of which money is which.
Currently, SoFi only allows one Active Investing account, so I will have to open an account with a competitor, https://www.tdameritrade.com/, for my "Personal Money". :(

Note: as a current lame workaround, you can open multiple "automated invest" accounts instead, including Joint or Community Property (for some states, incl. AZ) accounts.

Related: #9


Syntax highlighting on function parameters when adding line breaks.

The group I work with has a hard limit on line length and often in some angular controllers/apps we run a long list of dependencies we need to breakup the function parameters, unfortunately doing so break the syntax highlighting on them.
E.g.,

I plan to refactor this part. Since ES6 also support destructuring assignment here.


Global Consent Manager 1.3.2 compatibility with Waterfox 56.2.7

With https://www.theguardian.com/uk as an example
Blocking, Waterfox 56.2.7:

Blocking, Firefox 65.0:

Without blocking, Firefox:

Without blocking, Waterfox:

Issue
With Waterfox I see no difference between blocking and not blocking.
Context
From https://addons.mozilla.org/addon/global-consent-manager/versions/:

Works with firefox 42.0 and later

Was version 1.3.2 of the extension tested with Firefox ESR 52?
(Waterfox 56.0 was based on Firefox 56.0.2.)

Thanks for the issue. We have not tested the extension with anything else, but I use it in Nightly and it functions as expected. The extension was primarily tested with web-ext, which creates a clean session with a pretty up-to-date version of Firefox. (Right now my web-ext is running Quantum 66.0.2)
I will have to do some testing to refine the support number and make it more accurate. My best guess is that there are some API calls that can be made in newer versions that Waterfox does not support as of now. We use the APIs cookies, storage, and tabs (the latter of which is most likely supported)


Change radiolist to use ng-value instead of value

Change radiolist to use ng-value instead of value
Update ngtags dev test
Added css to fix padding issue in bsdate popup
Closes #361

Thanks @ckosloski


Crowdfunding Contract

Complete the crowdfunding contract.
SRC Code:
https://github.com/stellar/soroban-example-dapp/blob/main/contracts/crowdfund/src/lib.rs
Workflow:
https://github.com/stellar/soroban-example-dapp#user-workflows
To Do:

[ ] Add Auth feature once completed by core
[ ] Testing

@paulbellamy It doesn't look like this contract needs to implement auth. I'll go over the contract methods to convince you.
Balance - This doesn't modify state, so adding auth does nothing here.
Deposit - This uses token::xfer_from, which already requires authorization through token::approve from the sender. After user A has approved this contract, anyone can call deposit on A.
Withdraw - The contract is already aware of the owner ID. It also knows the accounts that deposited a balance, along with the amounts. Let's say there's one deposit (AccountA, 5 xlm). If someone calls withdraw(AccountA, 5), then AccountA will get it's deposit back. It doesn't matter who actual calls withdraw here. It doesn't look like there's any point to keeping a deposit in an expired contract, so AccountA shouldn't care when the deposit gets sent back. The same logic applies for the owner and a successful crowdfund.
I'm planning on cleaning up the contract and adding tests, but wanted to make sure we're on the same page regarding auth.

Assuming you only allow withdrawals back to the initial depositor address (or the owner), then yeah, no auth needed. (as opposed to supporting withdraw-to-address). That seems like a great simplification 👍 and should make the contract simpler to understand as well.


Can't receive Submission in Mailhog

Hi,
i'm trying to receive form submissions with mailhog but had no luck so far. Took a look at the docs  but am not sure if i made the right config:
config.yml
mailer:
    from<EMAIL_ADDRESS>    transport : smtp
    host      : localhost
    user      : test
    password  : 1234
    port      : 1025
    auth      : true
#    encryption: '' # '', 'ssl' or 'tls'

docker-compose.yml
mailhog:
    container_name: test_mailhog
    image: mailhog/mailhog
    ports:
      - '1025:1025'
      - '8025:8025'

Issue is probably on the user/password, you shoudlnt need that for mailhog, and the host should be the docker one and not localhost.
Below is working for me:
config.yml
mailer:
  from<EMAIL_ADDRESS>  transport: smtp
  host: mailhog-cockpit
  port: 1025,
  auth: false,
  encryption: ""

docker-compose.yml
  mailhog-cockpit:
    image: mailhog/mailhog
    container_name: "${PROJECT_NAME}_mailhog"
    labels:
      - "traefik.backend=cockpit-mailhog"
      - "traefik.port=8025"
      - "traefik.frontend.rule=Host:mailhog.cockpit.docker.localhost"

Note that I'm using traefik to access the mailhog ui.

Had no luck,
changed everything like config restarted docker-compose but with still can't receive the mails.
The requests are visible in cockpit, so i guess it's still a config issue. Is traefik necessary? I'm able to access mailhog via <IP_ADDRESS>:8025

No, traefik is only to access the traefik ui on port 80 (and remove the need to expose ports from the container).
I just reconfirmed and its working for my configurations, I have a cockpit form structure with an email populated in the Email field.
After the form is submitted and saved by cockpit I have the mail on mailhog:

Thank you for your reply, but still nothing.
I've seen in your cockpit-react stack that you're using a php service, which uses Environments like:
PHP_SENDMAIL_PATH: /usr/sbin/sendmail -t -i -S mailhog:1025 –
do i need to implement this too in my file?
cms:
    container_name: test_cockpit
    image: "agentejo/cockpit"
    environment:
      COCKPIT_SESSION_NAME: test
      COCKPIT_SALT: DF601181-28E7-4A84-B32F-947FDE3C5FD8
    volumes:
      - ./www:/var/www/html
      - ./storage:/var/www/html/storage
      - ./config:/var/www/html/config
    ports:
      - '8420:80'

Sorry @mortensassi , I'm not using the official docker image from @aheinze , mine is based on wodby php:
  php-cockpit:
    image: "wodby/php:7.3-dev-macos"
    container_name: "cockpit_php"
    depends_on:
      - mongo-cockpit
    environment:
      PHP_SENDMAIL_PATH: "/usr/sbin/sendmail -t -i -S mailhog-cockpit:1025"
      COLUMNS: 80
    volumes:
      - "../www:/var/www/html:cached"

the PHP_SENDMAIL_PATH seems to be the key here for communication between php container and mailhog


[buildmgr] add translate ctrls options test using GCC

Contributed by STMicroelectronics
Signed-off-by: Tarek BOCHKATI<EMAIL_ADDRESS>

@tarek-bochkati Thanks for this PR. Would it be possible to add or extend test cases to cover the toolchain mapping/dictionary that was introduced? For example by using the function CBuildTestFixture::CheckCompileCommand Thanks!

Thanks for pointing out the function, I was checking for it, but no luck.
I'm on it.


Why are points objects being annotated with cluster index (cidx)?

Seems terribly redundant - data structure is:

beadplot

cluster

variants
points

cidx

I think the reason is that all points are collected in a single large Array object.


ACME Plugin not working as per the step mentioned in doc's

Where is the problem?
https://docs.konghq.com/hub/kong-inc/acme/how-to/local-testing-development/
What happened?
The step mentioned to use kong acme plugin in local environment using ngrok its not working.
Also the other step in using the plugin is mentioned is not working.
Is there any issue with this plugin in hybrid mode ??
What did you expect to happen?
Improve the document with whole configuration of service + route + plugin by taking example of any domain
Code of Conduct and Community Expectations

[X] I agree to follow this project's Code of Conduct
[X] I agree to abide by the Community Expectations

Did a bit more digging, and it turns out there are some caveats for hybrid mode: tl;dr, the shm storage type doesn't work in hybrid mode. Since that is the default storage type, if you run through the tutorial without changing the storage type in hybrid or Konnect, it just won't work.
All the info is here: https://docs.konghq.com/hub/kong-inc/acme/#hybrid-mode-workflow
I'll make sure to update the guide with a hybrid mode option/comment/note.


ERROR: Could not get HiyaCFW

On version 3.3 (Python)

Update to 3.7

i'm on python 3.7, i'm using the HiyaCFW 3.3

Are you on Linux or MacOS?

MacOS

I tried earlier versions of Hiya, it starts but there are other problems (something about invalid directory for DSi Ware JAP)

Did you install python via homebrew? If not, did you run Install Certificates.command?

i installed it from the python website

Run that command from Applications > Python 3.7 as stated on the README. Closing...

thank you!

You're welcome.

Hi, i'm having the same issue.
Python3 install thru homebrew.


[Nuclide-OCaml] How to set the priority of auto-complete?

I just post it to nuclide, but found it not the right place, so I copy my issue here:)
Issue and Steps to Reproduce
Auto-complete can save our time in most of the cases, but in some cases it doesn't.
Expected Behavior
For example, in is very common in OCaml, when I typed in in Atom and press enter. It should only show in.
Actual Behavior

It always shows in_channel_length.
Versions

Atom:1.9.8
Nuclide:0.165.0
Client OS:Mac OS X 10.11.6
Server OS (optional):

Additional Details
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>
└── (empty)

I am not a specialist of atom or any other editor, but I think this is the job of Auto-complete. At least, in my experience with emacs, the plugin I used to auto complete was handling itself a kind of history to show first the most used completion. It basically learn when you use it.
http://auto-complete.org/doc/manual.html#candidate-suggestion

auto-complete-mode analyzes completion operations one by one and reduces overheads of completion as much as possible. For example, having a candidate "foobar" been completed few times, auto-complete-mode arranges it to top of the candidates next time and make a situation that allows users to complete the word with one time TAB or few times TAB. It is called comphist internally, and you can use it by setting ac-use-comphist to t. It is enabled by default. Collection operations data will be stored in user-emacs-directory or ~/.emacs.d/ with a name ac-comphist.dat.

Yes, this issue is not directly related to Merlin.
in is a keyword in OCaml but Merlin is focused on semantics so it is not in its scope.
This has to be done somewhere in the editor, but I don't know who is maintaining OCaml & merlin modes for Atom.


KAFKA-12886: Enable request forwarding to the controller by default for zookeeper mutation protocols

Enabled request forwarding by default and addressed test failures.
The following tests are still flaky:

ConsumerBounceTest > testCloseDuringRebalance
See this JIRA

https://issues.apache.org/jira/browse/KAFKA-12886
See a rewrite of this PR here https://github.com/apache/kafka/pull/11281

This has been done as part of https://issues.apache.org/jira/browse/KAFKA-14304, closing.


Replace the global-exports mechanism with a caller-vmctx mechanism.

This eliminates the global exports mechanism, and instead adds a
caller-vmctx argument to wasm functions so that WASI can obtain the
memory and other things from the caller rather than looking them up in a
global registry.
This replaces #390, and updates it for a lot of the changes in the tree.
This is a draft which should be mostly complete, though it needs https://github.com/bytecodealliance/cranelift/pull/1329 in Cranelift first, and and it needs general polishing and testing.

https://github.com/bytecodealliance/cranelift/pull/1329 has landed, but we need another fix now: https://github.com/bytecodealliance/cranelift/pull/1337.


Batch illustration

Hello!
It took me a while to understand the difference between batch option in Cmd.list. I know that it is going to be deprecated in 5.0.0. But until then maybe this illustration will help the others (who has the same problem) understand it.
⭐ Preview: https://github.com/redux-loop/redux-loop/blob/55646d808b698cb2e8cfe3f0e41932c76f7b3076/docs/api-docs/cmds.md#batch-option

Thanks for the contribution! Sorry it took me so long to merge it.


All level 0 spells are named "Rotes"

In GitLab by @julien1205 on Apr 16, 2023, 11:31
There is no difference in the code between different class lvl 0 spells.
Very minor problem.

In GitLab by @julien1205 on Apr 16, 2023, 11:32
Quick and dirty solution, changing the localization to
"DW.Spells0": "Cantrips/Rotes",

In GitLab by @Asacolips on Sep 21, 2023, 17:13
Will be resolved in !66


stunnel issue

Sending rtmps via stunnel gives the following error:
2019/09/22 21:45:04 [notice] 27968#0: signal process started
2019/09/22 21:45:05 [notice] 27978#0: using the "epoll" event method
2019/09/22 21:45:05 [notice] 27978#0: nginx/1.16.1
2019/09/22 21:45:05 [notice] 27978#0: built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
2019/09/22 21:45:05 [notice] 27978#0: OS: Linux 3.10.0-957.12.1.el7.x86_64
2019/09/22 21:45:05 [notice] 27978#0: getrlimit(RLIMIT_NOFILE): 1024:4096
2019/09/22 21:45:05 [notice] 27979#0: start worker processes
2019/09/22 21:45:05 [notice] 27979#0: start worker process 27980
2019/09/22 21:45:05 [notice] 27979#0: start cache manager process 27981
2019/09/22 21:45:15 [info] 27980#0: *1 client connected '<IP_ADDRESS>'
2019/09/22 21:45:15 [error] 27980#0: *1 connect: failed to process virtual host, client: <IP_ADDRESS>, server: <IP_ADDRESS>:1935
2019/09/22 21:45:15 [info] 27980#0: *1 disconnect, client: <IP_ADDRESS>, server: <IP_ADDRESS>:1935
2019/09/22 21:45:15 [info] 27980#0: *1 deleteStream, client: <IP_ADDRESS>, server: <IP_ADDRESS>:1935
My stunnel setting:
sslVersion = all
TIMEOUTclose = 0

socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1

[rtmps]
accept = <IP_ADDRESS>:8443
connect = <IP_ADDRESS>:1935
cert = /etc/stunnel/server.crt
key = /etc/stunnel/server.key
No error occurs when i using nginx-rtmp-module.
I think this is an issue with the tcUrl parsing process.

The client used RTMPS?

Sorry, I didn't notice carefully what you posted, I will check it later.


Add files via upload

Your checklist for this pull request
Author name
Author:

About your game
What is your game about?

How do you play your game?

Code
Check off the items that are true.

[ ] The game was made using the Sprig editor.
[ ] The game is placed in the in the /games directory.
[ ] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[ ] The game runs without errors.
[ ] The name of the file/game contains only alphanumeric characters, -s, or _s.
[ ] The game name is not the same as the others from gallery

Image (If an image is used)

[ ] The image is in the /games/img directory.
[ ] The name of the image matches the name of your file.

Thanks for your PR!

Hey- I'm rejecting this game since it's too similar to other games in the gallery & doesn't meet the bar for originality/effort.


Accept selected candidate for exit-minibuffer

I wonder if it possible to accept the current candidate if exit-minibuffer is used.
(defun exit-minibuffer ()
  "Terminate this minibuffer argument."
  (interactive)
  (setq deactivate-mark nil)
  (throw 'exit nil))

Right now this command is remapped to selectrum-select-current-candidate. For this reason I cannot reuse isearch-forward-exit-minibuffer for example in consult-isearch, see https://github.com/minad/consult/blob/b9faf7cfe8dedf2c45b50cbc202289b1795be706/consult.el#L2818.
Maybe people want to reuse other kinds of editing commands which exit in the minibuffer. And I think @oantolin assumed at some point that exit-minibuffer properly submits the current candidate after we had discussed about the usage of unread-command-events, see https://github.com/oantolin/embark/commit/20fae0905b4062873f8eb6d6b48bf682da1b99a0. I am not sure if this code is gone by now though since there has been a lot of refactoring of the action mechanism.
Allowing exit-minibuffer seems to be a little bit more standard compliant. However it would probably require catching the 'exit throw somehow and storing the candidate somewhere. I am not sure if it is worth the effort and I would love to see more global state moved mininbuffer local (#322).

For the record, what I assumed exit-minibuffer does is accept the current minibuffer contents not the current candidate. And embark-act uses it for that purpose.

Also see #406 where I suggested selectrum-submit-exact-input be removed in favor of just using exit-minibuffer.

Well, I think this is somehow up to the definition of the completion system or hard to make that assumption. Selectrum also has the special command selectrum-submit-exact-input to accept the current input.

Okay, then we can either have #406 or #417 or neither. I am not sure about it. The issue I had with consult-isearch is not a big issue, I just wondered if the minibuffer exiting can somehow be standardized. Maybe it cannot because of the competing possibilities.

Well, I think this is somehow up to the definition of the completion system or hard to make that assumption. Selectrum also has the special command selectrum-submit-exact-input to accept the current input.

I don't think so. exit-minibuffer just up and quits the minibuffer, and then read-from-buffer returns the minibuffer contents.

I didn't explain that very well, what I mean is that I think it's hard wired in C code that if you (throw 'exit nil) your minibuffer read call returns what' s left in the minibuffer.

Okay, makes sense. And there is also the paternalistic complete and exit which I would actually want instead for consult-isearch. Maybe there is just no possibility to do something about this here since the minibuffer is a leaky abstraction here. What happens when you do minibuffer-exit in Selectrum? It uses the current input?

I close this then since I don't see that we can improve on the status quo. Thank you for the explanations @oantolin.

Yes. Ever since Selectrum started using icomplete's strategy of showing the completions in an overlay so that minibuffer-contents is just the user's input. Before that change it would have used the current input plus all the shown completions!

Before that change it would have used the current input plus all the shown completions!

:laughing:


Problem NotFoundFilterException on server

Hi, I use this package locally well, but when I run it on the server, I get this error:
Fouladgar\EloquentBuilder\Exceptions\NotFoundFilterException
Not found the filter: QFilter

Please check.
Thanks.

Please check out this commnet: https://github.com/mohammad-fouladgar/eloquent-builder/pull/85#issuecomment-695785432

Please check out this comment: #85 (comment)

thanks solved.


made the reaction of digest debounced for performance improvement

performance improvement and upgrade typescript to 2.7.1

Codecov Report

Merging #19 into master will decrease coverage by 4.54%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #19      +/-   ##
==========================================
- Coverage     100%   95.45%   -4.55%
==========================================
  Files           1        1
  Lines          10       22      +12
  Branches        2        5       +3
==========================================
+ Hits           10       21      +11
- Misses          0        1       +1

Impacted Files
Coverage Δ

src/index.ts
95.45% <100%> (-4.55%)
:arrow_down:

Continue to review full report at Codecov.

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


SW-5823 Don't require optional application deliverables

We mark application modules as complete when all their deliverables are complete;
this needs to ignore deliverables that aren't marked as required.

#2307  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @sgrimm and the rest of your teammates on  Graphite


Trying to access historical daily energy consumption on a list of AC Devices

Hi, I am trying to get the historical daily energy consumption at a daily (ideally hourly) resolution for energy analysis purposes.
Do you know a bit more on the documentation of the API for the endpoint: /api/AC/GetGroupACEnergyConsumption?
Or do you have any suggestions how I could get more detailed documentation?
Best, Bruno

hi.. there is no documentation.. everything we know is from reverse enginiering or code checking from apk or with traffic sniffing (MITM)
What i can tell xou from Traffic sniffing.
When you use /api/AC/GetGroupACEnergyConsumption you need to send an JSON along with some Parameter.
{
"ACDeviceUniqueIdList":[
""
],
"Timezone":"W. Europe Standard Time",
"Type":"EnergyDay",
"FromUtcTime":"2024-01-30T23:00:00.0000000Z",
"ToUtcTime":"2024-01-31T22:59:59.0000000Z",
"IsEstia":true,
"IsSunday":false
}
With his you should be able to get an answer, that again will be JSON with the Time and the Energy used in Watt.
Only thing i noticed that the Consumptioninfo delivered, does not corrolate with the Energyinfo i have from my SmartMeter.
So I'm not sure if you really should trust those values.

Thank you for the explanation. I actually did the same unpacking the APK.
I found that you can change this "Type" to "EnergyDay", "EnergyYear"  whatsoever as you did.
I realised that the data are very indicative and have some limitation: negative values were retrieved which is physically not possible.
Thank you again.


base_hierarchical_route_installation_test.go : Need to update  instance = "default" with instance = "DEFAULT"

Hi ,
As per WBB HLD v11  page no 11:
https://junipernetworks.sharepoint.com/sites/GoogleB4/Shared Documents/Forms/AllItems.aspx?id=/sites/GoogleB4/Shared Documents/General/Customer HLD/WBB Vendor HLD v11 - Google Docs.pdf&parent=/sites/GoogleB4/Shared Documents/General/Customer HLD
"A defaultnetwork-instanceof typeDEFAULT_INSTANCE(reference), namedDEFAULT.This network instance is the base network instance that is populated by routingprotocols, referred to as the global or default network-instance by variousimplementations."
Need to update script:
Code changes are below:
const (
ipv4PrefixLen     = 30
instance          = "DEFAULT"
)
Thanks,
Avaneesh

Closing


Fix public feed link formatting

Checklist

[x] Appropriate branch selected (all PRs must first be merged to dev before they can be merged to master)
[x] Any modified or new methods or classes have helpful JSDoc and code is thoroughly commented
[x] The description lists all applicable issues this PR seeks to resolve
[x] The description lists any configuration setting(s) that differ from the default settings
[x] All tests and CI builds passing

Description
Another dauntingly large fix, when we did the second large round of i18n, the "Note: Public feeds page can be viewed here" text lost its space.

If we want to get really nitpicky, we could probably accomplish this better with a 1ch right padding


Vsphere Node Template - Default docker engine version 19.03 incompatible with latest rancheros

rancher/rancher:master-head 1125aa9c

Deploy Rancher server
Create a Vsphere Cluster
When creating the vsphere node template, the OS ISO URL is https://releases.rancher.com/os/latest/rancheros-vmware.iso
When creating the vsphere node template, default docker engine is set to 19.03

Cluster provisioning fails with error: Error creating machine: Error running provisioning: error selecting docker: (ssh command error:

On the provisioned node, I can see that the docker version is still set to 18.06.03, where I would expect 19.03.xx
Tailing /var/log/syslog on the node shows that provisioning freezes after ros engine switch -f

sudo ros engine list does not show 19.03 as an available option.

When setting the docker engine to another version, 17.03, cluster provisioning succeeds

The same behavior is also seen when trying to provision AWS cluster using ROS AMI.
Cluster provisioning fails with error message
Error creating machine: Error running provisioning: error selecting docker: (ssh command error:


Add in mirroring proxy.

Add in an ability for a the mirror middleware to also do intermediate proxying when a gem is requested.  Just pass through the request and the put the gem that was downloaded into the mirror repo.

Great idea!