Date formatting for actigraph poorly detected.

I've gotten this error several time, and seen it twice in previous issues.
Error in g.getstarttime(datafile = datafile, P = P, header = header, mon = mon,  :
  object 'starttime0' not found

Caused by this if-branch, it unfortunately is not transparent. It contains several if-else-if clauses without else-branches for error reporting. Moreover, there is duplicate code. I would assume it's not covering all date formats that Actigraph exports. Please add an else-branch with adequate error reporting, otherwise the code fails with weird errors for proper data.
Other notions:

if none of the as.POSIXlt succeed, the code fails silently,
string-splitting to detect a (regular) expression seems weird, and
reading the first line of a file with read.csv also seems weird.

Are the latter two common in R?
In Python I would code it like this, I would assume R has some equivalent of this.
with open(datafile) as f:
  first_line = next(f)

# Dates in actigraph CSV files can be encoded in different ways. however this format
# is mentioned in the first line. This lists tuples containing:
#  - a list of expressions to detect a format in the first line
#  - a list of expressions to parse a date
detectors_and_parsers = [
    (
        ["MM[.]dd[.]yyyy", "M[.]d[.]yyyy", "M[.]dd[.]yyyy", "MM[.]d[.]yyyy"],
        ['%m/%d/%Y %H:%M:%S', '%m-%d-%Y %H:%M:%S', '%m.%d.%Y %H:%M:%S']
    ), (
        ["dd[.]MM[.]yyyy", "d[.]M[.]yyyy", "d[.]MM[.]yyyy", "dd[.]M[.]yyyy"],
        ['%d/%m/%Y %H:%M:%S', '%d-%m-%Y %H:%M:%S', '%d.%m.%Y %H:%M:%S']
    ), (
        ["yyyy[.]MM[.]dd", "yyyy[.]M[.]d", "yyyy[.]MM[.]d", "yyyy[.]M[.]dd"],
        ['%Y/%m/%d %H:%M:%S', '%d-%m-%Y %H:%M:%S', '%d.%m.%Y %H:%M:%S']
    ), (
        ["yyyy[.]dd[.]MM", "yyyy[.]d[.]M", "yyyy[.]d[.]MM", "yyyy[.]dd[.]M"],
        ['%Y/%d/%m %H:%M:%S', '%d-%m-%Y %H:%M:%S', '%d.%m.%Y %H:%M:%S']
    )
]

for detectors, parsers in detectors_and_parsers:
  if any(
    length(unlist(strsplit(topline,"dd[.]M[.]yyyy"))) > 1
    for detector in detectors
  ):
    for parser in parsers:
      parsed_time = as.POSIXlt(starttime,format=parser)
        if is.na(parsed_time) != TRUE:
        break
    else:
      raise ValueError(f"Could not parse ({starttime}) using any format ({', '.join(parser)}) for file: {datafile}")
    break
else:
  raise ValueError(f"Could understand date format ({firstline}) for file: {datafile}")

starttime = parsed_time

Thanks for highlighting this. I agree that this code section could benefit from some refactoring. I implemented it a long time ago as a quick side project to help a colleague. However, I have hardly worked with Actigraph data myself and also do not have Actigraph device or Actilife software to test any ongoing developments.
So, the best way forward may be:

A small effort from me to improve both code and documentation inside the code.
Effort from you (or someone else) to review those changes, propose additional changes with a pull requests, and to test the code on your own files.

I would have liked to do a PR-request, but the code contains a lot of device-conditional statements and things I do not know, I am afraid to propose anything. I would suggest first to figure out all the date formats supported by Actigraph, one of them is dd-MMM-yy, e.g. 1-Jan-70.

I will try to have a look at it, but will be travelling in the upcoming weeks, so probably not before early November. Any change you can tell ActiLife to export the csv file with a different timestamp format as a temporary solution?

Hi Vincent,
Some of my files had a date format dd.MMM.yy, which I fixed by replacing the MMM with the right number for that month in each line and also by replacing dd.MMM.yy with dd.M.yyyy in the header.
This is an ugly solution, especially since the resulting CSV's will contain '19' where '2019' should have been used, which I then post process again.
So for now I am in the clear, you can even drop this issue if you like.

Thanks, I will keep the issue open as a reminder to myself.

Update: I have now created a PR that should address this issue.
https://github.com/wadpac/GGIR/pull/246
@prinsherbert Would you mind reviewing the PR? I cannot seem to suggest you as a reviewer in the PR, so I have sent you a GitHub invite to become a collaborator of this repo.
Thanks

Ignore this, I have merged the PR

@vincentvanhees  Thanks for resolving this, my apologies for not responding sooner.
For testing, I have to compile the repository into an R-package and install it, which I have no experience with. Are you still interested in me testing this?

I was able to test it on some example files I have,  but you are welcome to double check it.
You can compile and install the GitHub version of an R package from the R command line with the commands I added to #53 a couple of minutes ago: https://github.com/wadpac/GGIR/issues/53#issuecomment-557192715


fix: tests still say Running after test run finishes

Was only waiting a second for vitest to start up before giving up looking for results, which is too short for slower computers. This extends it to wait up to 10 seconds, still short of the original default of 20 seconds. This likely fixes some of the issues reported in #98.
Not addressed here is the issue of no feedback if the client fails to connect, that functionality appears to be missing from vitest's client.

Still an issue


Users on Darwin belong to 'staff' group

In Linux, when creating a user, usually a group with
the same name gets created and assigned as
primary group.
On Darwin, regular users are part of the 'staff' group.

Any chance of getting this in ?

Yep -- thanks!!


cassert error

Bug Report

What is the issue you have?
I know you have mentioned that this json lib works great with gcc 4.9. However, my project is big and it uses gcc 4.8 which is not easy to migrate to 4.9. When I write a small program, it works great. I can test json sample programs as you have mentioned in documentation. However, I want to use it in my project that is gcc 4.8.2 based. I took off the gcc 9 check from json.hpp and compiled fine and ran some tests that was all fine. But once in my poroject, my build does not go through. It gives this error:

In file included from /usr/include/c++/4.8.2/cassert:43:0,
 from ../security/src/libjwt/include/jwt/json.hpp:34,

At line 34 in json.hpp:
   32 #include <algorithm> // all_of, copy, fill, find, for_each, none_of, remove, reverse, transform
   33 #include <array>   // array
   34 #include <cassert> // assert
   35 #include <cctype>  // isdigit

../security/src/libjwt/include/jwt/json.hpp:6055:31:   required from ‘static nlohmann::basic_json<ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer> nlohmann::basic_json<ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer>::parse(IteratorType, IteratorType, nlohmann::basic_json<ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer>::parser_callback_t) [with IteratorType = const char*; typename std::enable_if<std::is_base_of<std::random_access_iterator_tag, typename std::iterator_traits<_II1>::iterator_category>::value, int>::type <anonymous> = 0; ObjectType = std::map; ArrayType = std::vector; StringType = std::basic_string<char>; BooleanType = bool; NumberIntegerType = long int; NumberUnsignedType = long unsigned int; NumberFloatType = double; AllocatorType = std::allocator; JSONSerializer = nlohmann::adl_serializer; nlohmann::basic_json<ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer>::parser_callback_t = std::function<bool(int, nlohmann::basic_json<>::parse_event_t, nlohmann::basic_json<>&)>]’

../security/src/libjwt/include/jwt/json.hpp:11764:40:   required from here
../security/src/libjwt/include/jwt/json.hpp:1579:19: error: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second: [-Werror]
     assert(object != nullptr);

Please describe the steps to reproduce the issue. Can you provide a small but working code example?
Sorry, I cannot myself repro it but want to know if anyone has faced it and what is the likely way to get out of it ? Any hint would be helpful.

What is the expected behavior?
Compilation should succeed.

And what is the actual behavior instead?
Compilation error.

Which compiler and operating system are you using? Is it a supported compiler?

Did you use a released version of the library or the version from the develop branch?

If you experience a compilation error: can you compile and run the unit tests?

Maybe https://github.com/nlohmann/json/pull/212 could be helpful. Apart from this, I am afraid that sooner or later you will always hit a part of the compiler/STL that is not C++11 compliant.

I'm closing this, as supporting GCC 4.8 is not a goal of this project.


ArcGIS Version this toolbox was designed for should be clearly stated.

Hello.. I was initially excited to see an ArcGIS option available and read the readme file. I am running ArcGIS 10.4 but there was no indication of version this was developed for, so I gave it a try. It behaved painstakingly slow when initially loaded, similar to the 10.5 issue, but also creates an XML file for EVERY WBT command in the WBT folder where the toolbox is stored. One reason for the slow load time.. but it takes forever starting ArcMap when this tool is loaded, and the functions run but do nothing. I understand it is likely not compatible.. but my recommendation to you is to save people the heartache and just state Up Front - like perhaps in the readme file - what version ArcGIS this should be run in (e.g. 10.6 or above!). Because you can't assume everyone out there is running the latest and greatest. Thank you. JG

Upon further testing, I found one Data Tool which worked (Polygons to Lines). But none of the Hydro Analysis tools tested worked - the tools that I'm really interested in. This verifies a compatibility problem with 10.4.

@JGaiot Thank you for the suggestion. I have added a note in the README to specify the supported ArcGIS versions. ArcMap always tries to create an XML file for every tool even it is not being used, which is insane and out of my control. ArcGIS Pro only creates a XML file when a tool is being used, which is much better. The toolbox can open instantly in ArcGIS Pro.
Esri now Offers Students Free Access to Software for Continued Education through Coronavirus Closures (source). You might want to check it out if you are qualified.
Another workaround, you can install the whitebox Python package, which does not need ArcGIS. Then you can use the WhiteboxTools Runner to run any tools. Hope it helps.

Thanks for your response. I tend to be a thorough type, meaning I don't give up easily.. ;) I did further testing with the hydro analysis tools, and I originally assumed that being in an Arcmap environment, the tools would read Esri Grid format. But on a hunch, I converted to Tif and got results. Although the tool I ran (D8FlowAccumulation) resulted in a strange output. Cells are accumulating only to 255 and then they start over? By the way, I used a flow direction grid as input and specified it was in Esri format. I will have to do some more investigation...
So there seems to be some backwards compatibility with 10.4.. just so you know ;)

By the way, I did test the command line version as well, and got the same result.. so at least what I'm doing is repeatable in both methods.

@JGaiot Input and output are handled by the whitebox-tools backend @jblindsay. You can open an issue  on that repo if you encounter issues.

Okay thanks! If I can't troubleshoot the issue, I will post there. Cheers!


Extracting Magento1Client into separate project / lib

Extract changes from PR
https://github.com/DivanteLtd/vue-storefront-api/pull/190

Done in #195


Rewrite method as Lambda in CDIUtils

See  https://sonarcloud.io/project/issues?id=org.axonframework.extension%3Aaxon-cdi-root&issues=AWB62PAHEsHmkfbCrpWS&open=AWB62PAHEsHmkfbCrpWS

good old push principle :-)
done


feat: Free instances and circuits earlier to reduce max memory usage

This PR reduces max memory by roughly a third by deleting a prover_instance member variable in client_ivc. Before, we were storing this prover_instance, which meant that when we accumulate a third circuit, we were storing three instances at the same time - the accumulator, the old instance, and the new instance. It also adjusts the test (ClientIVCTests.BasicThree) to only store the builder for when it's needed.
This is the original memory graph when running ClientIVCTests.BasicThree, which accumulates three circuits of size 2^17 (?).

After freeing the Builder after constructing the instance from it, and after freeing the instance after folding it into the accumulator, our memory graph looks like.

You can see that the peak memory goes from 1216MB to 774MB, and that we're no longer storing 3 instances worth of data at one time.

Nice!


behavior_path_planner crashes when it is launched in .launch.py for the scenario UC-PB-002-0001-Hsinchu

Checklist

[X] I've read the contribution guidelines.
[X] I've searched other issues and no duplicate issues were found.
[X] I'm convinced that this is not my fault but a bug.

Description
This issue is a part of https://github.com/autowarefoundation/autoware.universe/issues/566
behavior_path_planner crashes when it is launched using behavior_planning.launch.py which it is running along with other launch files once UC-PB-002-0001-Hsinchu is run with scenario_test_runner
[openscenario_interpreter_node-3] [component_container_mt-13] terminate called after throwing an instance of 'std::bad_alloc'
[openscenario_interpreter_node-3] [component_container_mt-13]   what():  std::bad_alloc
[openscenario_interpreter_node-3] [ERROR] [component_container_mt-13]: process has died [pid 6215, exit code -6, cmd '/opt/ros/galactic/lib/rclcpp_components/component_container_mt --ros-args -r __node:=behavior_planning_container -r __ns:=/planning/scenario_planning/lane_driving/behavior_planning --params-file /tmp/launch_params_mep7xn71'].

Full log file is here (bpp_bad_alloc.txt)
Video is here.
Here you can observe that behavior_planning_container  is died and it is because behavior_path_planner crashes.
 Please give the right file paths if your autoware repo is now at $HOME !!!
Expected behavior
behavior_path_planner shouldn't crash.
Actual behavior
behavior_path_planner crashes for a certain scenario.
Steps to reproduce

Download map_data.
Download the scenario file.
Launch the scenario_test_runner with the following code after setting the right file paths:

source ~/autoware/install/setup.bash && \
ros2 launch scenario_test_runner scenario_test_runner.launch.py sensor_model:=sample_sensor_kit vehicle_model:=sample_vehicle \
scenario:=$HOME/operational-design-domains/public_road_bus/UC-PB-002-0001-Hsinchu.yaml \
architecture_type:=awf/universe launch_rviz:=true launch_autoware:=true

Versions

OS: Ubuntu 20.04
ROS2 Galactic
https://github.com/autowarefoundation/autoware/commit/5e76cfd1a0359d6c275accadfa5dc2dff9f0d861
autoware.universe: https://github.com/autowarefoundation/autoware.universe/commit/932ff58be7f51a8461def4bd57876f3bd766e2aa
https://github.com/tier4/scenario_simulator_v2/commit/7318ece6d59bed4b7a82d648af34113a2e8faf39
Operational Design Domains: c589c2

Possible causes
No response
Additional context
No response

I would appreciate if someone else also can produce the error.

Well, I was also confused about this kind of issue. Sometimes lateral controller or even the whole control module was not able to be launched successfully either, and the info displayed was just like above "process has died" without any other helpful description. I had to relaunch the module or node individually.

@JianKangEgon
Thank you for the input, It might be related to the container structure and the memory allocation related to it I guess.

Investigation
I reproduced the issue by following the Steps to reproduce.
The only way (as far as I know) to debug a ComposableNode is with a core dump.
# enable core dump of unlimited size
ulimit -c unlimited
# add pid to file name
echo -n 1 | sudo tee /proc/sys/kernel/core_uses_pid

After reproducing the error, it generates a core file that can be replayed with gdb.

:warning: Usually this file goes in the current folder but with the scenario_test_runner I am not able to find the location of the file.
Alternative: a crash file /var/crash/_opt_ros_galactic_lib_rclcpp_components_component_container_mt.1000.crash was generated.

The crash file needs to be unpacked apport-unpack /var/crash/_opt_ros_galactic_lib_rclcpp_components_component_container_mt.1000.crash crash_folder.
The crash_folder then contains the CoreDump and other information (e.g., ExecutablePath with the path to the executable that crashed).
Now we can debug with gdb `cat ExecutablePath` CoreDump.

After checking the backtrace, the only issues I could find are vectors within autoware_auto_perception_msgs::msg::PredictedPath objects that have a larger length than capacity (std::vector of length<PHONE_NUMBER>800, capacity<PHONE_NUMBER>629) and negative length (std::vector of length -22769416, capacity 60).
Solution
The PredictedPath message definition is currently written in IDL format with a capacity limit of 100 to its path field. Removing this capacity limit and rebuilding Autoware solves the issue and I was able to run the complete scenario without any crash.
I opened a PR to remove this capacity: https://github.com/tier4/autoware_auto_msgs/pull/32
Please test it and confirm that this fixes the issue.

@maxime-clem
Thank you for the solution you proposed however that didn't work for me even though I deleted build/install/log just to be sure and checked out your branch (fix-PredictedPath-remove_capacity_limit) and re-build whole autoware repo. Yet the same issue is still there.

Sorry for my previous post. I was too quick to claim that the issue was solved.
I have found two problems so far that cause crashes of the behavior_path_planner.

std::bad_alloc happens when copying some messages.

I have not found the root cause yet but some messages seem to have impossible sizes (e.g., std::vector of length -17545788653642, capacity -17545788653637 as reported by gdb).
Avoiding unnecessary copies help with this issue but they still sometimes occur (https://github.com/maxime-clem/autoware.universe/commit/6fe4bf7de76792fa21c36d941c66f0fffa79db2d).
The capacity of IDL messages may be related to this issue but I need to experiment more to confirm that.

vector::_M_range_check happens when accessing pre-calculated indexes that somehow becomes out of bound.

For example: https://github.com/autowarefoundation/autoware.universe/blob/main/planning/behavior_path_planner/src/scene_module/lane_change/util.cpp#L373-L383

Indexes for elements inside PredictedObjects::ConstSharedPtr dynamic_objects are precalculated.
By the time the elements are accessed using these indexes, they can become out of bound.

The only explanation I can find is that the pointer is updated while the function is running, changing to a message with less elements such that some of the calculated indexes are out of bound.
Passing the PredictedObjects::ConstSharedPtr by value rather than by reference seems to solve the issue (https://github.com/maxime-clem/autoware.universe/commit/ca3b9afaf6dc0c9aafb4a0e9217c599a61d478dd) but I need to confirm that this works correctly.

These issues do not happen consistently and with my current test branch (https://github.com/maxime-clem/autoware.universe/tree/fix-issue1049-behavior_path_planner_crashes) I am sometimes able to run the full scenario without any crash.
I will keep investigating but any help or suggestion would be welcome.

@maxime-clem happens the same when I test UC-PB-009-0001_Db20-Shalun as well. For the versions that I test please check here.

@mehmetdogru Thank you for reporting another scenario where the issue occurs.
I made a fix that should solve the issue for both scenarios: https://github.com/autowarefoundation/autoware.universe/pull/1091


Add TCP_PROXY support

It would be nice to be able to use tcp-proxy with neutron-lbaas. Maybe as an added feature to the expressions pattern (e.g. vport_expressions).

@eandersson IIRC we apply vport expressions right before we submit the payload to AXAPI. Overriding the protocol attribute in the vport dict would cause that protocol to be set regardless of the protocol sent to the neutron-lbaas endpoint.
We've evaluated augmenting the supported LB protocol types in the past and ran into problems when we utilized more than 1 provider as it required monkey-patching. We had no way of narrowing the scope of the monkey patch to only load when our plugin loaded.

I actually was just testing that and hit this

Driver error: update() got multiple values for keyword argument 'protocol'

vport_expressions = {
    "TCP Proxy":
        {
            "regex": "-test-",
            "json": {
                "protocol": "tcp-proxy"
            }
        },
}

I think it's just this code that needs to be removed for it to work.

template_args.update(**self._get_vport_defaults(c, os_name))
https://github.com/a10networks/a10-neutron-lbaas/blob/master/a10_neutron_lbaas/v2/handler_listener.py#L152


Create another document with list of bounties.

Software Development

[ ] Tendermint
[ ] Gnuclear hub: Governance
[ ] Gnuclear hub: IBC
[ ] Application Integrations: Ethereum
[ ] Application Integrations: ZCash
[ ] Application Integrations: Bitcoin
[ ] MerkleEyes, or Patricia-Trie integration
[ ] Burn/donation EVM contract

Security

[ ] Continuous bug bounties

Deployment
Documentation
Legal

[ ] SEC analysis
[ ] CFTC analysis
[ ] FinCen analysis
[ ] Document that burners/donators must sign
[ ] Constitution

Separate budget created from prefund proceeds


Raphael git dependency

Would it be possible to switch to using Raphael from npm rather than the git repository? npm install fails for me because I'm behind a corporate firewall that is blocking git connections.

Can you try to change it and then to build a new version and check if it works as expected?

done ;-)

Thank you!


Added Functionality to View All Links created by a User [Frontend]

Added My Links section to view all links
Resolves #72

Ok Got it

@aadityasinha-dotcom  there are some conflicts can you resolve them?

@aadityasinha-dotcom Its almost done can you resolve conflicts
Then I will merge immediately

Ok

Ok merging

@allcontributors please add @aadityasinha-dotcom for code


Add osu-news as submodule

After this PR merged, we can use normal git commands to manage these modules.

I'm wondering why we don't create a super repository to reference osu!news and this repository as submodule and build them.
Anyway I don't think it is really a good idea to add osu!news as a submodule of osu-dictionary.

How about:?

Change this repo's name to osu-atri.github.io (to make it the root repo)
Split osu!directory (the table) into another individual repo

Since this repo already has the framework set and worked well, and it is easier to rename a repo than to recreate it.

How about:?
* Change this repo's name to osu-atri.github.io (to make it the root repo)

* Split osu!directory (the table) into another individual repo

Since this repo already has the framework set and worked well, and it is easier to rename a repo than to recreate it.

It is fine as long as migrating the content is not harder than creating another repository as root. Although the migrated content will still be kept in commit history (but unlikely matters).


Canvas context is not recognized by RangeSlider

I'm trying to use Chart.js-RangeSlider in order to create a chart similar to the one in your examples.
However, I get this error:
Cannot read property 'addClass' of null
at new RangeSliderChart (RangeSlider-all.min.js:14767)
Upon further inspection, I realized that the error occurs in this line of RangeSlider-all.min.js:
return ranger.sliderElement.addClass("range-slider").width(opts.chartCTX.canvas.width),
I am obtaining my canvas context as:
graphicContextLines = $('graphicLines').getContext('2d');
And I am creating my chart using this code:
var options = {responsive: true};

$scope.chartGraphicLines = Chart.Bar(graphicContextLines, {
                                data: $scope.data[1],
                                options: options
     }
);

I'm creating a RangeSlider object using this block of code:
var sliderOpts = {
                            chartData: $scope.data[1],
                            chartOpts: options,
                                chartType: 'Bar',
                                chartCTX: graphicContextLines,
                                initial: [3, 10]
};

rs = new RangeSliderChart(sliderOpts);

I re-checked my code and verified that my canvas context does indeed contain info and thus is not null.
So, the bug might be in RangeSlider-all.min.js.
If I am doing anything wrong, please let me know so I can refactor my code and try again.
Thanks in advance!

Looking at your example above it looks like you've got a couple of syntax issues that solving should fix things up.
The first is how you're getting the canvas $('graphicLines') that's the tag selector, not a class ($'. graphicLines')) or id $('#graphicLines') selector. Which more than likely means jQuery ins't returning anything.
Second is how you're getting the context, jQuery doesn't actually have a built in for getting canvas context, you'd need to do something like this: $('. graphicLines')[0].getContext('2d'), which selects the actual DOM element out of the jQuery array, then gets the context.
The rest seems ok at first glance
Here's a altered version of the demo that is clearer for your situation: https://jsfiddle.net/schme16/g2q1fLfo/1/
Hope this helps!

@schme16 thanks for answering!
I tried to get the context using $('#graphicLines')[0].getContext('2d'), as you suggested. However, I still got an error (Cannot read property '0' of null).
I forgot to mention before, but I do have this function:
var $ = function (id) {
    return document.getElementById(id);
};

that is the reason why I can access the canvas context using graphicContextLines = $('graphicLines').getContext('2d');
I triple checked using Chrome's dev tools, and graphicContextLines is not null or undefined:

Unfortunately, I still get the exact same error as before...
Is there any other trick that I can try in order to get RangeSliderChart to work?
Thanks in advance!

You might have to post a more complete example of how you're using it, before I can really tell where things go wrong: http://codepen.io/


Allow unified_strdate to handle "*3rd" in date strings.

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Bug fix
[ ] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
unified_strdate was missing "*rd" for for "3rd" and "23rd". It did have "*st", "*nd", and "*th".
Fixes #23197

Add tests.

Roger that. Tests added, and I double-checked that the new tests failed without the first commit, and passed with it.


Enhancement: Assistants - Allow the User to create public / private Assistants

What features would you like to see added?
It would be great, if there would be private/public Assistants in librechat for the users.
More details
If you have a Multi-User Librechat installation, the Assistants are public to anyone. This causes that Assistants are overwritten by other Users. As OpenAI does not know that librechat is a Multi-User System, this might be accomplished by a naming scheme.
[userid][public/private][RealNameOfTheAgent]
Other Agents which are not defined by this name scheme, could stay public to not break the system.
Which components are impacted by your request?
UI
Pictures
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

what about this?
https://www.librechat.ai/docs/configuration/librechat_yaml/object_structure/assistants_endpoint#privateassistants

It‘s more about the possibility to have both. Private and Public Assistants at the same time

Something like this is in the works, excited to share soon!


add an 'unmasked_copy' method, and allow passing of kwargs to aplpy

(minor)

Coverage decreased (-0.07%) to 73.667% when pulling b2cf6d046dc20f09bb3eca98296b6b0049c063c8 on keflavich:minor_new_features into 66c027ab8261b0e00be9bb3f346b686bcbdf753e on radio-astro-tools:master.


Support named arguments when instantiating records via injector

Currently passing in named arguments to be used in use of injector (i.e. MyClass::create('normal-arg', namedArg: 'value');) will result in silently passing the named argument to the wrong parameter. This is done intentionally because we use the splat operator to unpack arguments to be passed to constructors, and that operator throws an error for any string keys - so we have to pass through only the values (see InjectionCreator::create()).
We could change this to support named arguments in injection like so:
-// Ensure there are no string keys as they cannot be unpacked with the `...` operator
-$values = array_values($params);
-
-return new $class(...$values);
+return (new \ReflectionClass($class))->newInstanceArgs($params);

Caveats

We name a lot of contructor args in injection yaml configuration - but those names don't always match up with real constructor argument names. We would need to review all of these and ensure that only real constructor argument names are used.

This is what makes it a breaking change.

InjectionCreator is effectively a factory (it's invoked in Injector::instantiate() as $factory->create($class, $constructorParams)) - this means the above solution would only work when a different specific factory has not been defined. There may therefore still be scenarios where named arguments are not respected.

tl;dr: In some of those scenarios it may result in silent failures where the argument is passed to the wrong parameter.

It’s also worth noting that we switched from Reflection to using new $class(...$values) for a performance boost: https://github.com/silverstripe/silverstripe-framework/pull/10265

I'll add that to the caveats

UPDATE: Apparently as of PHP 8.1 using the splat operator to pass named arguments is supported! See example 19 in https://www.php.net/manual/en/functions.arguments.php#example-505


Transparency for Telescope

Hi, is transparency for Telescope supported? If no, could it please be added?
I found this comment, but it sadly didn't help in my case.

Here's my current tokyonight config.

Hi ! Just need to insert this line into your vim.g.tokyonight_colors table :
bg_float = "none"

Thank you, this solved my problem!


Failed to execute LootRule minecraft

Minecraft 1.18.2-5.8.1
Forge 40.2.17
Mod Pack : DawnCraft
The following logs appeared before the server crashed
[18:13:55] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:leather_helmet/common/STAT/0.25!
[18:13:55] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:iron_helmet/common/STAT/0.25!
[18:13:55] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:leather_helmet/common/STAT/0.25!
[18:13:55] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:diamond_helmet/common/STAT/0.25!
[18:13:55] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:leather_helmet/common/STAT/0.25!
[18:13:55] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:leather_helmet/common/STAT/0.25!
[18:13:55] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:iron_helmet/common/STAT/0.25!
[18:14:30] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:leather_helmet/common/STAT/0.25!
[18:15:04] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:golden_helmet/common/STAT/0.25!
[18:15:14] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:diamond_helmet/common/STAT/0.25!
[18:15:52] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:chainmail_helmet/common/STAT/0.25!
[18:15:56] [Server thread/WARN] [minecraft/MinecraftServer]: Can't keep up! Is the server overloaded? Running 2223ms or 44 ticks behind
[18:16:05] [Worker-Main-399/WARN] [minecraft/EntityType]: Skipping Entity with id
[18:16:06] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:iron_helmet/common/STAT/0.25!
[18:16:19] [Server thread/WARN] [minecraft/MinecraftServer]: Can't keep up! Is the server overloaded? Running 7320ms or 146 ticks behind
[18:16:46] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:chainmail_helmet/common/STAT/0.25!
[18:17:21] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:diamond_helmet/common/STAT/0.25!
[18:17:26] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:leather_helmet/common/STAT/0.25!
[18:18:01] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:golden_helmet/common/STAT/0.25!
[18:18:10] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:iron_helmet/common/STAT/0.25!
[18:19:04] [Server thread/ERROR] [Apotheosis : Adventure/]: Failed to execute LootRule minecraft:chainmail_helmet/common/STAT/0.25!

Report modpack issues to modpack developers, not mod developers
Those are non-fatal errors
If you're having issues with crashes, send the whole latest.log file + crash log file instead of just a snippet of it
1.18 isn't supported anymore


Sequential Execution and Duplicate Validation in guardrails Library

Describe the bug
When utilizing the Guard class from the guardrails library and employing multiple validators, the validators are executed sequentially instead of concurrently. Additionally, it appears that each validator is executed twice, leading to longer-than-expected execution times.
To Reproduce

Define multiple validators utilizing the @register_validator decorator.
Instantiate a Guard object and add the validators using the use_many method.
Invoke the validate method of the Guard object with a value that triggers both validators to fail.

Expected behavior
The validators should execute concurrently, ideally leveraging parallelism, to reduce the overall execution time. Each validator should only be executed once per validation attempt.
Library version:
Version 0.4.3
Additional context
It's observed that the execution time increases significantly when multiple validators are employed, particularly when each validator includes a time-consuming operation like the time.sleep function. This behavior may significantly impact the performance of applications utilizing the guardrails library, especially in scenarios where real-time validation is crucial. Additionally, it's unclear why each validator appears to be executed twice per validation attempt, which warrants further investigation.
from guardrails.validators import Validator, register_validator, ValidationResult, PassResult, FailResult
from guardrails import Guard, OnFailAction
from typing import Dict, Any
import time

@register_validator(name="guardrails/contains-llm", data_type="string")
class ContainsLLM(Validator):

    check_word = "llm"

    def validate(self, value: Any, metadata: Dict) -> ValidationResult:

        # Push the move onto the board.
        print('I will sleep for 5 seconds.')
        time.sleep(5)
        if self.check_word in value:
            return PassResult()
        else:
            return FailResult(
                error_message=f"Value {value} is not a valid reply."
            )

@register_validator(name="guardrails/contains-hto", data_type="string")
class ContainsHTO(Validator):

    check_word = "hto"
    def validate(self, value: Any, metadata: Dict) -> ValidationResult:

        # Push the move onto the board.
        print('I will sleep for 2 seconds.')
        time.sleep(2)
        if self.check_word in value:
            return PassResult()
        else:
            return FailResult(
                error_message=f"Value {value} is not a valid reply."
            )

start_time = time.time()

guard = Guard().use_many(
    ContainsHTO(on_fail=OnFailAction.EXCEPTION),
    ContainsLLM(on_fail=OnFailAction.EXCEPTION),
)

try:
    guard.validate(
        """he gets"""
    )  # Both the guardrails fail
except Exception as e:
    print(e)
end_time = time.time()
print(f"Time taken: {end_time - start_time} seconds")

Code Output
I will sleep for 2 seconds.
I will sleep for 2 seconds.
I will sleep for 5 seconds.
I will sleep for 5 seconds.
Validation failed for field with errors: Value he gets is not a valid reply., Value he gets is not a valid reply.
Time taken: 14.024889945983887 seconds

^^ @zsimjee @ShreyaR @thekaranacharya @CalebCourier

Hi @vishal-ushur I'll look into this!

@zsimjee just saw this when glancing through validator_service for other reasons.  Looks to be related: https://github.com/guardrails-ai/guardrails/pull/756

@zsimjee @CalebCourier I'm curious, why does it appear that the validators weren't invoked concurrently here? I noticed in the codebase that AsyncValidatorService is designed for this specific purpose, and from examining the execution traces, I observed that the validate method of AsyncValidatorService is being called.


WindiCSS

https://windicss.org/
Project description
WindiCSS is a nodeJS CLI to compile Tailwind CSS classes to produce a minified .css asset, without depending on anything else.
Metadata

homepage URL: https://windicss.org/
source URL: https://github.com/windicss/windicss
license: mit
platforms: unix, linux, darwin, ...

Related: https://github.com/tw-in-js/twind-cli


How to get to github repo

We just tell them to look at their github repo which is just a bit non-trivial since they didn't create it manually on the github site.  I looked around the right frame and found the string -- but then, I am used to github so I knew what I was looking for.  Mirablile dictu!  It was a link so I right-clicked it.  And did not end up where I wanted to.
So then I selected it and copied it, opened a new tab, and pasted the string in and that worked.
One other thought -- I can't find the exact string right now but somewhere you say that we are using github but you can use any Git -- it did not say that, for this tutorial, you have to use github.  I don't know what would happen if someone tried to do this with, say, BitBucket and I don't care to test it.

Closing as stale


Edit nl-core purpose validation rule

Btw. the pull request for the Validator is merged, this should be fixed in the next release of the Validator.


Add support for detecting Realtek network cards

Add support for detecting Realtek network cards and installing the realtek-re-kmod198 package if detected.

There is a test image available as follows
wget https://depenguin.me/run.sh \
&& chmod +x run.sh \
&& ./run.sh -m https://depenguin.me/files/mfsbsd-14.0-RELEASE-rc1-amd64.iso https://example.org/mypubkey

Which server is more likely to have realtek cards? EX44 or new AX42?

test image updated
wget https://depenguin.me/run.sh \
&& chmod +x run.sh \
&& ./run.sh -m https://depenguin.me/files/mfsbsd-14.0-RELEASE-rc1-amd64.iso https://example.org/mypubkey

This looks reasonably clean to me now. Someone would need to test though :)

thanks for the fixes @grembo - I'll test on ex44

Something must be wrong with the pkg install from file step?

An alternative approach would be to detect the adapter in linux (run.sh) and pass that somehow into the installer.

An alternative approach would be to detect the adapter in linux (run.sh) and pass that somehow into the installer.

we might have to try that approach, it's not picking up the interface

from inside rescue
lspci -nnvmm | egrep -A6 -B1 '10ec'
Class:	Ethernet controller [0200]
Vendor:	Realtek Semiconductor Co., Ltd. [10ec]
Device:	RTL8125 2.5GbE Controller [8125]
SVendor:	ASUSTeK Computer Inc. [1043]
SDevice:	RTL8125 2.5GbE Controller [87d7]
Rev:	05
ProgIf:	00

latest commit works, reboots twice

Hm, this feels really dirty though.
A few problems:

it should not check for a file to exist to determine if it should install the driver (again), instead a file should be written in the installer and the script should check for it’s absence (pretty much like firstboot). Otherwise deleting that file at any point in the future will lead to an unpleasant surprise for the admin (including running all firstboot things again!)
re-running firstboot could have weird consequences (as it would re-run other things as well)
if the firstboot thing stays that way, placing all of that into a separate file would make more sense

Three suggestions (they are alternatives):

detect in linux and then already install everything in installerconfig
don’t use Linux, but include the pciid check into the firstboot check - so the logic would be: if none of the devices are found, but the Realtek pciid is, install the driver and assume re0 will be found on next boot
Install and configure the Realtek driver all the time, remove it if no device is found

Of these options, 2. sounds like the easiest/most reasonable one. So the logic would be:

detect all devices (like we always did)
If none is found (or the one found is named reX), check if there is a Realtek device, based on pciid
If there was one found, assume it’s re0 and use that in rc.conf, then reboot

This would mean:

no extra reboots
No messing with firstboot logic
Easy to understand (and less probing if a different device was found)

I can help with changing the code, if you want me to.

latest commit is working with ex44, untested on another host yet

Hm, if I read the code correctly, there's an issue:
In case re0 is found (as detected by the non-ports driver), the driver from ports is never installed. In the machines I tested, this became an issue. I think the code needs some restructuring. I will open a PR demonstrating what I mean (that's easier than putting it in clear words atm).

@bretton See #25 (I couldn't test it yet, but sanity checks I did are promising - patch should be quite easy to read 🤞)

@bretton See #25 (I couldn't test it yet, but sanity checks I did are promising - patch should be quite easy to read 🤞)

awesome thanks @grembo will get to testing later today

closing in favour in #25


Crash in iOS18 and Mac OS Sequoia

Description: I am observing a crash in iOS18 and Mac OS Sequoia when the buffer size is large enough. I suspect, Int8 is getting overflowed

Expected behaviour:
The library should not crash

Actual behaviour:

The library is crashing

Environment

Package Manager:

[ ] CocoaPods, version: 1.15.0

Fuzi version: 3.13

Xcode version: 16.0

Mac OS: 15.0.1

How to reproduce:
Try to parse a document with large content.

same crash, starting from XCode 16.

@cezheng Can we have your attention  here please?


Method MsgPackContext.RegisterGenericConverter implemented;

LGTM. Would be better if we remove TryGenerateMapDictionary and for list.


Resolve ISO_Left_Tab key to tab

This is sent by gtk when tab is pressed with shift down.

closes #1595

@xarvic, this should fix your problem, you're welcome to double-check though!

@xarvic, this should fix your problem, you're welcome to double-check though!

I have tested it. It works now, thanks :)


Renaming deployments to itineraries

Please merge this after PR #717
Renaming the only two occurrences of the word Deployment to Itinerary in the project.
Relates to issue #705

merged the other and was going to merge this.  Is seems this PR has the same commit as the other for the UI changes?  Weird is it going to double commit that? @BillWagner you seen anything like this (glancing for a moment during a break so perhaps I would understand it if I stared at it longer...)

@tonysurma I think I based this one off of my previous branch to avoid conflicts. I don't think it shouldn't double commit, however I will try rebasing it from the current master branch.

@tonysurma That seems to have tidied it up.


Allow insecure registryies with cosign save.

Options exist to work with insecure registries for cosign sign (--allow-http-registry) and cosign verify (--allow-insecure-registry). Please add a similar option to cosign save.

Id like to work on this if I can? :)

Go for it


Extender class

This closes https://github.com/i2mint/dol/issues/36

Could it be put inside the store s[k].extend(v)?

@andeaseme : Not sure if I understand your quesiton correctly, but if I do, then I believe this has been answered, at length in this discusssion, linked from #36.


bugfix(TDI-38859) : fixed doubled last output on flows

What is the current behavior? (You can also link to an open issue here)
https://jira.talendforge.org/browse/TDI-38859
What is the new behavior?
Please check if the PR fulfills these requirements

[X] The commit message follows Talend standard
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features) ?
[ ] The code coverage on new code >75%
[ ] The new code does not introduce new technical issues (sonar / eslint)

What kind of change does this PR introduce?

[X] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build / CI related changes
[ ] Other... Please describe:

Does this PR introduce a breaking change?

[ ] Yes
[X] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...
Other information:

Pull request test result: success :star:


import *   error     after make install  sucessfully

.so: undefined symbol: _ZN5boost6python9converter21object_manager_traitsINS_5numpy7ndarrayEE10get_pytypeEv

I am having a similar issue with a library that uses Boost.NumPy.
Python 2.7.12 (default, Nov 12 2018, 14:36:49)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ur_kin_py
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
ImportError: /home/csrobot/catkin_ws/devel/lib/python2.7/dist-packages/ur_kinematics/ur_kin_py.so: undefined symbol: _ZN5boost6python5numpy6detail15get_float_dtypeILi64EEENS1_5dtypeEv

These are standard linker error messages, and it's hard to debug them without knowing how you've built things and set up your environment in detail.  In particular, please make sure that libboost_numpy.so is in LD_LIBRARY_PATH or a standard library location like /usr/lib or /usr/local/lib.
I should add that if you're using Boost.NumPy directly, you're better off switching from that standalone package to the NumPy support (with essentially the same APIs, at least originally) that is included directly in more recent versions of Boost.Python.  That won't work if you're using it through ndarray, I'm afraid, though in that case I'd recommend switching to pybind11 if you can.  I'm afraid I just don't have the time to maintain both Boost.Python and pybind11 support in ndarray anymore, and the latter is what I use.

@sashaiw Is the problem solved? I have exactly the same error. Many thanks in advance:)


UnconfigurableFixer - use only LF

We don't have a fixer for that?

https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/3231#discussion_r149936553


Adding a neat [hopefully] way of embed docs

1.this uses a new npm package.
2.I expect module writers to write docs for their modules

I have done a big mess with semicolons trusting srujan sir's refactoring


Switching Travis build to Xenial

The trusty build was using an outdated version of Chrome; however, the Xenial build doesn't have jp2 support outright. Instead of trying to get jp2 support installed with minimagick, we'll just use plain jpegs in our test.

Coverage remained the same at 55.997% when pulling 55707c83954643c58c0e442dbb09063487435adc on chrome-update into 941af926bc61dd0b388f7daf7166a8a770655249 on develop.


Fixes for microscope cam

Added a signal that changes camera source in QThread for microscope cam
Commented out "flushBuffer()" calls which generated errors
Reduced Hutch camera frame rate to 2 FPS

Tested on AMX


page becomes unusable when zoom is set to 100%

When my window is zoomed to 100% or lower the page stacks the menu on the left and the content on top of each other. The scrolling of the page no longer scrolls the content so you cannot see all the information on the page and the page appears to scroll forever. I attempted to repair the problem modifying only the css, but I couldn't find a simple enough solution without having to do a complete overhaul. An overhaul might not be a bad place to start. we could at least design a new page and see what others think. I know the page has become bloated with a lot of content that has been "ghetto rigged" together.
I originally saw this bug back when I first came to the page months ago. I couldn't figure out why the page wouldn't let me view all the content, the bug actually made me think the project wasn't worth my time. I thought "if they can't get their homepage to display correctly, how can I expect any of it to work," Unfair of me to think. But, one could imagine if others ran into this issue like I did, they might think the same thing. If you guys are having trouble reproducing the bug let me know and I'll make a video showing what I see.
I'm using Chrome Version 40.0.2214.93 m on a windows 8.1 laptop. When my window is zoomed in to 110% the page displays perfectly and I don't have issues. It only appears when the zoom is <= 100%.

thanks for the detailed report, I will check this out!

Cannot reproduce on new version of website.
Can be closed?


Final Cleanups

Remove/Comment out console.logs.
Double check NPC messages.
General Testing.

No more console.logs that I can see.
Messages look good. Fit in borders and are grammatically correct.
Can't see any major bugs.


feat: miner reward updates to kurtosis curve

Problem
Problem Statement
Currently, our Bittensor subnet's reward system for Twitter data scraping is based solely on whether the provided data is valid or not. This binary approach doesn't incentivize miners to continuously improve the quantity and quality of data they provide. As a result, we may be missing opportunities to gather more valuable data and encourage healthy competition among miners.
Acceptance criteria for v0.8.0 release
Implement a more sophisticated reward mechanism that takes into account multiple factors that rewards higher performing miners:

Quantity of valid tweets as defined by the count returned in a request for the GET Tweets/Posts endpoint.
A validator requests continuous data from miners as a synthetic request job from a centralized queue for now
Organic requests can still be sent to the network through a validator
Round robin miner selection, if a miner returns 429 or no workers eligible, skip to the next miner. Issue here is latency will increase. We will worry about latency later. Set a parameter or constant that we can change for the number of miners selected in the round robin before return, "no miners available to fulfill the request"
Use a static representative JSON comparison using the LLM i.e. comparison >0.50
A kurtosis-based distribution to reward top performers while maintaining broader participation
Generate an Jupyter model showing the curves for the new Kurtosis curve

Out of scope

Think about how similarity check can be compared to a source of truth for 'quality'
Quality of tweets (this needs thought)
Continuous improvement over time

How can miners self-optimize for higher rewards
Miners can work independently to setup private clusters/networks using the Masa Protocol that is configured as its own private network with its their own set of Twitter Scraper Nodes. This allows miners to optimize and grow their capacity on the network which benefits the subnet by rewarding miners that bring the greatest capacity to the network. This capacity is harnessed by validators to scrape static data sets that are ranked by download volume in HF as well as organic requests that are submitted to validator API endpoints by developers who want real time data access.

This ticket is linked to https://github.com/masa-finance/masa-bittensor/pull/227

Hello i wanted to see if i understood the proposed items.
It would mean that its less incentivized to just have as many miners as you can and more incentivized to have quality miners (ones with higher capacity).
If i am understanding some other docs correctly it would indicate that each twitter scrapper behind your bootnode would need their own account with accompanying premium subscription. Is this about accurate?

@myntfarm you are correct - you are incentivized to have quality miners (ones with higher capacity). Also, you are correct about your second presumption.


Mention executor memory

Executor memory is not mentioned, so people who set worker memory too low can have the Spark shell or a Spark application fail to allocate resources on the workers. The default for SPARK_EXECUTOR_MEMORY is 1024m; it can be suggested to set this a lower value.
conf/spark-env.sh:
SPARK_EXECUTOR_MEMORY=500m

some_spark_app.scala:
val conf = new SparkConf()
    // ...
    .set("spark.executor.memory", "500m")

One or more of these files can have such mentions:

spark-standalone.adoc
spark-shell.adoc
spark-first-app.adoc

Thanks. I'm gonna describe it very soon (and then close the issue).

I think it's already been covered in few places. Please reopen if you think otherwise. Thanks!


Cannot execute sanity-checks on Windows

Mentioned in https://issues.apache.org/jira/browse/SUREFIRE-1809?focusedCommentId=17147443&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-17147443 :
[ERROR] Failed to execute goal org.codehaus.gmaven:groovy-maven-plugin:2.1.1:execute (sanity-checks) on project camel-quarkus-build-parent: Execution sanity-checks of goal org.codehaus.gmaven:groovy-maven-plugin:2.1.1:execute failed: Impossible to read the text content from file://C:/vcs/github/camel-quarkus/tooling/scripts/validate-dependencies.groovy: Unknown host C -

Fixing this uncovers a whole bunch of different problems building on Windows. Mainly around path, line separator and Docker differences.


[WIP] expose feature importance to c_api

not let python feature importance rely on dumped json model
@guolinke there are two feature importance types in python now, they are different return types (split - int, gain - float), what do you think it's a better way to deal with it, should I make them all return float?

@wxchan I think returning float/double is okay.

@wxchan
can this fix the importance of single-leaf tree?


Client: Redirect after login

Solved quite nice way by hooking on the interna/root route and do redirection.


chore(main): release 2.6.0

:robot: I have created a release beep boop
2.6.0 (2023-08-28)
Features

Build flatcar LTS vSphere template (#880) (ae90f4c)

Bug Fixes

bumps ansible to remove extra ssh arguments (a4e3532)
chnages condition (1df6471)
cython issue for flatcar (feb5820)
neat up the code and add a little comment (228bde3)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/mesosphere/konvoy-image-builder/releases/tag/v2.6.0 :sunflower:


multiple instances of vue-multiselect

Hi there guys,
I'm using vue-multiselect within an invoice component and whenever I add a new row to the invoice it applies the same multiselect as the one above it. Whenever I change one selection, they all get updated to the same selected value.
How do I ensure that the selected values only apply to a given row?

Hey! Could you provide a reproduction link? You can use this fiddle: https://jsfiddle.net/shentao/c4L3gs91/
It would make much easier to solve if we could see your markup and code responsible for handling multiselect.
There shouldn’t be any problems in general if you’re using v-model. In case you’re using @input please make sure to use the second argument the event receives which is the id prop. That should make it easier to handle multiple multiselect components with the same event handler.
See docs for the API description!

Unfortunately I'm using vue-multiselect within an invoice component.

My invoice.vue file looks as follows:
`

                        <input type="text" name="qty[]" v-model="item.qty" class="form-control">

                        <input type="text" name="unit_price[]" v-model="item.unit_price" class="form-control">

                00

                Subtotal

                    {{subTotal}}

                Desconto

                        <input name="discount" type="text" v-model="form.discount" class="form-control">

                Valor Total

                    {{total}}

    </form>

`
my app.js file looks as follows:
`require ('./bootstrap.js');
import invoice from './components/invoice.vue'
const app = new Vue({
el: '#app',
components: { invoice },
data: function() {
return {
    }
},
methods: {
    done: function(data) {
        console.log(data);
    }
}

});`
and finally my html file looks as follows:
`<!doctype html>

Document

`
I also couldn't get it to show results after typing into a select input field.

Link: https://jsfiddle.net/c4L3gs91/123/

In the data property, try using either mustache brackets (not sure if that works), or an array of objects (how I do it) like this:
  data () {
   return {
      ...
      selectedProducts: {},
      ...

or
selectedProducts: [
   {
     id: ''
   }
],

So in the backend, I then have 'selectedProducts.*.id' where the * is each row.
Don't have time to try it with just brackets, but I know my way works (I make extensive use of this plugin on forms that have multiple rows of inputs that are generated dynamically using v-model with the value defined in the loop, just as you are doing, but all of my data objects use dot notation and so each row has the data like 'addresses' and then I have id, city, state etc as subparts, so in the v-for loop it iterates over each one).
Example:
HTML:

				Address 1
					<input type="text" v-model="newaddress.address" @keydown.enter.prevent="">

... [other data fields]

			Type
				<multiselect
					v-model="newaddress.addresstype_id"
					:options="atypes"
					:taggable="true"
					tag-placeholder="Add type"
					placeholder="Type"
					label="label"
					track-by="label"
				></multiselect>

and my data looks like this:
addresses: [
           {
           	addresstype_id: '',
           	address: '',
   		address2: '',
   		city: '',
   		state: '',
   		zip: ''
           }
],

Closing due to no activity.

`

                                Name

                                Supported countries

                                Action

 0">

                                No Record Found!

 0">

                                    {{ user.full_name }}

                                    <multiselect
                                        v-model="selected[user.id]"
                                        :options="countries"
                                        :multiple="true"
                                        :close-on-select="false"
                                        :preserve-search="true"
                                        :preselect-first="false"
                                        label="name"
                                        track-by="name"
                                        placeholder="Select countries"
                                        class="control-w-150"
                                    >
                                    </multiselect>

                                    Save

`


[Refactor]: Refactor TimeFrame

Problem Statement
The current TimeFrame API presents the following issues:

Verbosity: Parameters like dataframe_backend are redundant, as the Narwhals library abstracts this functionality.
Mutability: The underlying data is mutable, increasing the risk of bugs or unintended changes.
Unpythonic Type Handling: The API relies heavily on manual type checks and follows a LBYL approach.

Proposed Solution
To address these concerns, the following improvements are suggested:

Streamline the API: Remove unnecessary parameters such as dataframe_backend, simplifying the interface and aligning with Narwhals' abstraction.
Enforce Immutability: Make the TimeFrame API immutable to improve reliability and safety. This change aligns with the behavior of popular dataframe libraries, fostering familiarity and consistency for users.
Adopt Pythonic Type Handling: Transition to a more idiomatic EAFP approach, or adopt a validation pattern similar to scikit-learn's validate_parameter for cleaner and more maintainable code.

Great spot thanks for the detailed issue! Happy to remove this param [it was more for meta-data within the class but may cause confusion managing the state variable unnecessarily - the current version of  core_utils.py  has the following methods:

is_valid_temporal_backend
is_valid_temporal_dataframe
get_dataframe_backend

A new function or these function utilized these methods can be renamed to validate_parameter for consistency with EAFP -  closely related to issue unresolved #37 [explicit backend handling - we will have to decide whether we want more robust explicit handling of supported backends versus allowing Narwhals to handle everything - benefit of allowing Narwhals to handle everything is resolving complex dependency management within TemporalScope].
Thank you so much!


Monitor brightness stopped working (Philips 276E8V) on Mac

Hi,
I am using MonitorControl for my Philips 276E8V on my Mac Mini 2018 running Catalina 10.15.6. I believe it worked at first, but may have stopped working randomly. I really love this widget and would appreciate any support!
I have used monitor control with this screen before with my work macbook pro and it had worked well during the summer. I downloaded SoundSource since I couldn't toggle monitor volume with sound like I can now. I don't think the volume worked for my monitor using MonitorControl so I'd love to pair these products.
Thanks!

I have Philips 346B1C, and have the same issue as well. Brightness stoped working, and cannot change it with keys, or with the slider(slider sits at minimum), and if i click the slider, monitor brightness goes to minimum.

Same problem here, did any of you find a solution for this?

Can you try the latest v3.0.0 version and confirm if it is still present? Also please be aware that the HDMI port of the Mac Mini 2018 is not working in terms of DDC control. Thank you!

I'll close this issue for now but please feel free to comment if there is anything we can do. If the issue persists, we can reopen this issue! Thank you!


Tag-helper rendering with View Component

Hello, since most of code is done, I was wondering if it could support the ASP MVC 6 Core tag helpers and the view components (similar to partials)
thanks

It should be possible.


[Bug] Label position issue when using alignTo = "edge"

Version
5.4.1
Link to Minimal Reproduction
https://codesandbox.io/s/echarts-overflow-issue-yfi32s?file=/index.js
Steps to Reproduce

Create a chart with label.alignTo = "edge".
Add formatter and rich section (align = "left")
Decrise widow width

For some reason, one of the labels was not pushed to the container edge.
Live example: https://codesandbox.io/s/echarts-overflow-issue-yfi32s?file=/index.js
Recording: https://s12.gifyu.com/images/Screen-Recording-2023-05-05-at-1.gif
Current Behavior
The label moved to the chart event it has a free space.
Expected Behavior
The label takes free space.
Environment
- OS:
- Browser:
- Framework:

Any additional comments?
No response

For some reason, one of the labels was not pushed to the container edge.

If you want label to stay on the right edge, then do not add rich.align:"left".

The problem is the label adds more space than it needs to render a text. I need exact alignment as in configuration but without extra space.


Makefile: exclude .git in make lint

Branch names ending with .sh may lead to false positives.
e.g.:
$ git checkout -b update-injectcmdline-to-template.sh
Switched to a new branch 'update-injectcmdline-to-template.sh'
$ make -i lint
golangci-lint run ./...
yamllint .
ls-lint
2024/10/08 12:34:29 .check_location-response-cache.yaml failed for rules: kebabcase
2024/10/08 12:34:29 .vscode failed for rules: kebabcase
2024/10/08 12:34:29 .yamlfmt.yml failed for rules: kebabcase
make: [lint] Error 1 (ignored)
find . -name '*.sh' | xargs shellcheck

In ./.git/logs/refs/heads/update-injectcmdline-to-template.sh line 1:
0000000000000000000000000000000000000000 0ac8438fa0098dc77a5d09ee24f5753b2a0bed89 Norio Nomura<EMAIL_ADDRESS>1728358459 +0900	branch: Created from HEAD
^-- SC2148 (error): Tips depend on target shell and yours is unknown. Add a shebang or a 'shell' directive.
                                                                                ^----------^ SC2210 (warning): This is a file redirection. Was it supposed to be a comparison or fd operation?

In ./.git/refs/heads/update-injectcmdline-to-template.sh line 1:
0ac8438fa0098dc77a5d09ee24f5753b2a0bed89
^-- SC2148 (error): Tips depend on target shell and yours is unknown. Add a shebang or a 'shell' directive.

For more information:
  https://www.shellcheck.net/wiki/SC2148 -- Tips depend on target shell and y...
  https://www.shellcheck.net/wiki/SC2210 -- This is a file redirection. Was i...
make: [lint] Error 1 (ignored)
find . -name '*.sh' | xargs shfmt -s -d
diff ./.git/logs/refs/heads/update-injectcmdline-to-template.sh.orig ./.git/logs/refs/heads/update-injectcmdline-to-template.sh
--- ./.git/logs/refs/heads/update-injectcmdline-to-template.sh.orig
+++ ./.git/logs/refs/heads/update-injectcmdline-to-template.sh
@@ -1,1 +1,1 @@
-0000000000000000000000000000000000000000 0ac8438fa0098dc77a5d09ee24f5753b2a0bed89 Norio Nomura<EMAIL_ADDRESS>1728358459 +0900	branch: Created from HEAD
+0000000000000000000000000000000000000000 0ac8438fa0098dc77a5d09ee24f5753b2a0bed89 Norio Nomura +0900 branch: Created from HEAD<EMAIL_ADDRESS>>1728358459
make: [lint] Error 1 (ignored)

This change prevents such issues from occurring.

Updated PR description.

Thanks! 🙏🏻


T04b.02-Exercise-OpenMap example solution not working

The example solution is not working the way it should. It opens Google Maps, but not at the location specified.
In the example solution, the query parameter is added using the .query() method of Uri.Builder. This has no effect. The documentation specifies that the query parameter must have a key of "q".
So the solution is to use the .appendQueryParameter() method, specifying "q" as the key:
public void onClickOpenAddressButton(View v) {
    Uri.Builder builder = new Uri.Builder();
    builder.scheme("geo")
            .path("0,0")
            .appendQueryParameter("q", "Mountain View");
    showMap(builder.build());
}

Indeed, using Uri.Builder doesn't work for opaque URIs, for more details see here
The above code you suggested outputs the following URI: geo:/0%2C0?q=Mountain%20View , which looks incorrect to me, but Google Maps I think handles this error. Other maps and navigation apps might not.

So the correct way to do this would be Uri.parse("geo:0,0?q=" + Uri.encode("Mountain View"))?

@jankalfus Yes, I use the Uri.parse and it works

i have the same problem , but i used Uri.parse  and it works

I have the same problem and use same solution

Google recommends using Map URLs.
Source: https://developers.google.com/maps/documentation/android-api/intents

@RaffiRincon True statement. But using a Google Map URL forces the enduser to Google Maps, rather than allowing the user to use the mapping application of their choice.

Fixed.


Multi-line syntax for REPL [Feature request]

Two ideas (maybe both?) for Multi-line syntax for REPL [Feature request] :

like  aider

{
multi
line
}

like bash

<<<MARKER_OF_CHOICE
multi
line
MARKER_OF_CHOICE

Thank you for implementing it.
I made tests and found that to have this feature fully functioning small adjustment is needed.
I see you decided to go python/"Markdown style" multiple back-ticks route.
So the questions is , how mardown solves the problem is included codeblock wants to include ```` three backticks ?
So the solution is : you can open if as many backticks you want, and then when closing looks for same amount,
some examples:

https://gist.github.com/gwpl/52bb57d05c0a5b21c4abe1e5e206b5f1

Therefore I would suggest to improve current """ support that can allow to surround codeblock with any amount of " .
Example:
>>> """""
... Please help me make script that processes inputs like::
... """
... foo bar
... """
... Thank you.
... """""


Add link to package homepage in package.json files

Displayed at the bottom of the box that appears when hovering over a package name

Thanks @callumisitt !


data-tooltip-source functionality described in readme, but not implemented

Thanks for creating this, it seems like a nice component :)
I tried out the data-tooltip-source thing and wondered why it wasn't working. I examined the source and noticed the code does not know about any tipSourceAttr in reality and has no respective functionality to deal with it.
Maybe you have a local version with this, but did not push it?

Thanks for the issue @mestaritonttu.
Yah, I removed that feature from the script.  Thought it might be causing an issue I've been dealing with... though that turned out to not be the case.  But after removing it I came to realize it was a feature that really didn't even need to be part of the script in general.
I've removed the reference to it from the readme.  cheers :)


Accessor newtypes

Part 2 of #463, builds on #464.

Wraps register reader/writer and field readers in newtype wrappers, which significantly improves the documentation output.

Again there's some minor potential for breaking changes:

If users named the complete type of the previous type alias, it would break.  It seems more likely that they would use the alias, which will silently upgrade to a reference to the newtype.

r? @burrbull

bytes
master
#464
#465

debug
1090816
1094812
1471756

release
7016
7016
105180

Oh my this really blows up the size of the release build!  I thought that the newtype pattern was basically optimized away by the compiler, but it seems that either something is preventing that from happening or the compiler's handling of it is not as good as I thought it was.

Upon closer inspection, most of that extra junk is in .symtab.  After strip --strip-unneeded, the numbers are:

bytes
master
#464
#465

debug
11148
11148
11772

release
2444
2444
2732

My intuition is that .symtab won't get shipped to flash anyway, so these numbers would be more representative of the real impact.  Is that right?
As a general matter, what's the best way to do this sort of profiling?

Ok I've stumbled onto size, which seems appropriate for the job.  Running that against the binaries here gives me:

debug
master
#464
#465

text
9386
9386
10010

data
1250
1250
1250

bss
1
1
1

release
master
#464
#465

text
1862
1862
2150

data
74
74
74

bss
1
1
1

Rebased on top of master, please take another look.

Re: https://github.com/rust-embedded/svd2rust/pull/466#issuecomment-670553172
For Rahix/avr-device:
$ du --summarize src-*
8884	src-465
7920	src-master

For lpc-rs/lpc-pac:
$ du --summarize lpc*-*
4540	lpc11uxx-465
4168	lpc11uxx-master
7072	lpc176x5x-465
6296	lpc176x5x-master
278760	lpc54606-465
277548	lpc54606-master
4720	lpc82x-465
4212	lpc82x-master
118212	lpc845-465
117632	lpc845-master

There's some increase in the generated code size, but not a lot.

Size increase looks reasonable. There's still a lot of (medium high hanging) fruit to pick.
I'll soft approve and let give @burrbull have a second look.


Need to mount EBS per Spark executor Pod

Hey @liyinan926, I'm trying to mount EBS (AWSElasticBlockStore) for my spark application, and it seems we can only mount one volume for all executor pods. Does spark-on-k8s-operator support mounting EBS volume per Spark executor pod? And since EBS only allows ReadWriteOnce as access mode, containerCreation for executor pods always fail when they are in multiple nodes. Would like to hear your inputs.

This is expected. The operator mounts the exact volume specified in an SparkApplication object to every executor pods. What you want to achieve is similar to what the StatefulSet controller does, i.e., creating PersistentVolumeClaims based on a template and add one PersistentVolumeClaim to each pod. This is not something the operator currently supports.


Locations only work if you are "in" them

The parser doesn't seem to work if something is "at" a location, coming "from" a location etc..

Hello, @MaciekBaron! The places.js plugin has been updated to better detect certain locations.


adding option to select json request id

allows lib user to specify id for each RPC subscription. necessary if there's more than one

maybe we should get rid of REQUEST_TRANSFER at the same time? Need to adapt example code

Looks fine. I agree that we should get rid to REQUEST_TRANSFER. Which would need a change in the client as well.


Code Review: Add wrapper for MSDataOverride in the SketchAPI (#20381)

Resolves BohemianCoding/Sketch#20381

Warnings

:warning:

Source/dom/WrappedObject.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/enums.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Artboard.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Group.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/HotSpot.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Image.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Layer.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Page.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Shape.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/StyledLayer.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Text.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/models/Document.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/settings/Settings.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/models/DataOverride.js changed, but not its tests. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Artboard.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Group.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/HotSpot.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Image.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Layer.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Page.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Shape.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/StyledLayer.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/SymbolInstance.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/SymbolMaster.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/layers/Text.js changed, but not its doc. That's OK as long as you're refactoring.

:warning:

Source/dom/models/DataOverride.js changed, but not its doc. That's OK as long as you're refactoring.

  Generated by :no_entry_sign: dangerJS


Enable MBR Windows pipeline, remove standard Windows pipeline

Adds the MBR pipeline to the setting of pipelines. Also removes the Standard edition Windows Server from the active pipelines (but not removing the config in case it is needed later).

/assign bkatyl


Cloudant support finally!

Since the pouchdb-authentication-cloudant doesn't have an issues page, I'd just like confirmation that Cloudant has finally added the support for hashing, and thus supports this plugin. I tested and it seems to be working fine, anyone else?
I added the cloudant fork to npm, and would like to update with a BIG deprecation warning. We could also add a notice do the README, that Cloudant finally supports this.

Does this work properly for you ?
I can't create a user on my Cloudant side.
var PouchDB = require('pouchdb');
PouchDB.plugin(require('pouchdb-authentication'));

//with Admin account
var dbUrl =  encodeURI('https://Adminlogin:pwd@my-app.cloudant.com/MyDB');
var db = new PouchDB(dbUrl, {skipSetup: true});

var options = {
  metadata : {
    email<EMAIL_ADDRESS>    birthday : '1932-03-27T00:00:00.000Z',
    likes : ['acrobatics', 'short pants', 'sidekickin\''],
  }
};

console.log("go signup");
db.signup('batman', 'brucewayne', options)
  .then(function(response){
    console.log(response);
    return response;
  })
  .then(function(response){
    console.log("response",response);
    return db.login('superman', 'clarkkent');
  })
  .then(function(login){
    console.log("login",login);
  })
  .catch(function(err){
    if (err.name === 'conflict') {
      console.log("batmanalready exists, choose another username");
    } else if (err.name === 'forbidden') {
      console.log("invalid username");
    } else {
      console.log(err,"HTTP error, cosmic rays, etc.");
    }
  });

I get that :
{ [unauthorized: Name or password is incorrect.]
  status: 401,
  name: 'unauthorized',
  message: 'Name or password is incorrect.',
  error: true,
  reason: '_writer access is required for this request' }

That's great to hear! Please contact Cloudant support to help with these sorts of things. Else when everything is good to go, I'd be happy to accept a PR noting in the README that Cloudant support is now available.

I'm sorry. It appears to have been a bug. Cloudant is not yet supported.