Bluetooth: Gatt Discovery: BT_GATT_DISCOVER_PRIMARY returns all services while BT_GATT_DISCOVER_SECONDARY returns none

Describe the bug
Setting the GATT discovery type for a range search (i.e. UUID = NULL) to BT_GATT_DISCOVER_PRIMARY  returns all services while BT_GATT_DISCOVER_SECONDARY  returns none at all.
To Reproduce
Steps to reproduce the behavior:

Modify the discovery code in central_hr sample to

discover_params.uuid = NULL;
discover_params.func = discover_func;
discover_params.start_handle = 0x0001;
discover_params.end_handle = 0xffff;
discover_params.type = BT_GATT_DISCOVER_PRIMARY;

or
discover_params.type = BT_GATT_DISCOVER_SECONDARY;

Expected behavior
Primary discovery should only return primary services, secondary only secondary or get rid of secondary discovery and just have a new type BT_GATT_DISCOVER_SERVICE
Impact
Annoyance.
Environment (please complete the following information):

OS: Kubuntu 18.04
Toolchain: Zephyr SDK 0.10.0
Commit SHA or Version used: 2692f2e616c7f0bfcd19fda8010ab0c124f38cf5

We are setting the UUID of Read By Group Request to either primary or secondary, perhaps the remote database don't have a secondary?

@Vudentz yeah ... sorry I mixed things up


incompatible with headless-gl

node_modules/regl-camera/regl-camera.js:32
  element.addEventListener('mousewheel', function (e) {
         ^

TypeError: Cannot read property 'addEventListener' of undefined

Thanks for pointing this out. I've fixed it in 2.1.0. Sorry about that!


Added a function profile_gen to generate profile formatted output from any given xml. Fixes #5.

This is fix for the issue #5
Note: This is a initial version. I also wrote a test function. The code works and the test passes.
Following the agile pattern, make it work and make it better. I have made it to work and pass tests.
I am sure there is lot of room for improvements or even a total redesign. Open to suggestions and advice.
λ python -m xmldataset
Parse using profile output :
{'title_and_author': [{'title': "XML Developer's Guide", 'author': 'Gambardella, Matthew'}, {'title': 'Midnight Rain', 'author': 'Ralls, Kim'}, {'title': 'Maeve Ascendant', 'author': 'Corets, Eva'}, {'title': "Oberon's Legacy", 'author': 'Corets, Eva'}, {'title': 'The Sundered Grail', 'author': 'Corets, Eva'}, {'title': 'Lover Birds', 'author': 'Randall, Cynthia'}, {'title': 'Splish Splash', 'author': 'Thurman, Paula'}, {'title': 'Creepy Crawlies', 'author': 'Knorr, Stefan'}, {'title': 'Paradox Lost', 'author': 'Kress, Peter'}, {'title': 'Microsoft .NET: The Programming Bible', 'author': "O'Brien, Tim"}, {'title': 'MSXML3: A Comprehensive Guide', 'author': "O'Brien, Tim"}, {'title': 'Visual Studio 7: A Comprehensive Guide', 'author': 'Galos, Mike'}]}
Profile Gen output :
catalog
        lowest
                specificbefore
                        specificvalue
                book
                        optionalexternal
                                externaldata
                        author
                        title
                        genre
                        price
                        publish_date
                        description
                specificafter
                        specificvalue

To Do:

Current implementation is limited to the xml nodes. It doesn't expand the attributes of the nodes into the profile. It can be done in another update.
While using this my team also felt that we can extend the profile gen function and data profiling stats at each level. This will be useful to know which nodes are used quite often.

Looks like python 3 build is breaking at this line (list assignment/ in place modification).
path_list[p_idx]= str(re.sub('\[.+]','',item))
Its works fine in python 2.7. I tried to resolve the issue. I haven't worked much with python 3. Appreciate if you can help ....

Fixed the python 3 issue. Plz check and lemme know. I am working on the other 2 ToDo items

Implemented the first todo: feature to add include_attributes flag to include the attributes in the profile output as child of the element. Also added a new test for this feature.
"number", "id" would not show up if the include_attributes flag is set to false., since they are attributes of xml elements.
plz review/test and lemme know your thoughts
catalog
	lowest
		number
		specificbefore
			specificvalue
		book
			id
			optionalexternalstart
				externaldata
			author
			title
			genre
			price
			publish_date
			description
			optionalexternalend
				externaldata
		book2
			id
			author
			title
			genre
			price
			publish_date
			description
		specificafter
			specificvalue

I think this is great, it would be good if we can include an option on the profile_gen function for also creating the dataset stubs, i.e. title = dataset:default
Can you see if you can refactor to just use the xml.etree.ElementTree without having a separate requirement for lxml.  I originally chose this module as I would like the module to work without the installation of other modules (especially where there may be compilation requirements to satisfy the dependency).  When creating the Perl equivalent, this ended up causing me headaches in terms of usage.
I also already have the logic in the code for handling elements/attributes so that can be reused where applicable.
Really appreciate your efforts, thanks again.  Will aim for this and your other changes for the next release.

Thanks very much for your feedback and being accomodating .. I see 3 asks in this ..

refactor to use just xml.etree without lxml - i concur with you. I used lxml because it was convenient for the initial version. I will work on refactor to just use xml.etree.
Sry i am missing something to understand the request - Can you plz elaborate dataset stubs, i.e. title = dataset:default ..
I was originally planning to refactor the class _XMLDataset ., i needed some more time to do debug sessions and fully understand your logic and integrate with it seamlessly ...

Also i would welcome any insights/suggestions/your thoughts in to class _XMLDataset refactoring .., would be useful to me and appreciated ... Also plz feel free to lemme know if anything is needed to make it easy for you to integrate this functionality. You have done great job of structuring and clean code.. i have tried to be consistent with your approach where ever i was able to.. but there is much to be desired ....


Sonoff POW R3 compability

Hi,
Do You have plans to implement Sonoff POW R3 compability? It's switch which can handle 25A so it is good enough for my Air Conditioning at home. I will install it soon, but have already plugged it to network so if You want I can share device for some testing.

POWR3 has exactly the same uiid and data formats as POWR2, so should work straight away

Confirmed, using since few days, working like charm.


No issue, works well, would move to see mqtt support to change colours, WiFi info etc on the fly 😁

Keeping an eye on this project for HA integration. Super cool idea to allow for more finite control of timer, brightness etc. For the moment I’ll enjoy it non-integrated.

Keeping an eye on this project for HA integration. Super cool idea to allow for more finite control of timer, brightness etc. For the moment I’ll enjoy it non-integrated.


Test all configurations

A functionality to test all configurations and show the result.
Maybe just a button on the Configurations page, over the table. Then show the result on each row.

I think it's better to make a new page for this.
Show all the headers in a checkbox list, default all are checked.
Button to test all.
Wait spinner.
Show results for each header and it's configurations. Just a check mark if everything went ok, otherwise show details.


Test to cover the import_meta_graph error on MutableHashTable

https://github.com/tensorflow/tensorflow/issues/24439
As this wasn't fixed since 2018 I think it is better to cover it with a test.

@bhack Can you please check @mihaimaruseac's comments and keep us posted ? Thanks!

@gbaned What do you mean? Do you see @mihaimaruseac's comments here?

Can we re-run tests for the linting?

Can we re-run tests for the linting?

Hi @bhack  Still, PyLint errors are appearing after ran the tests. Thank you.

Hi @bhack Still, PyLint errors are appearing after ran the tests. Thank you.

You need to re-run CI today as https://github.com/tensorflow/tensorflow/pull/55464 was merged < 24 hours ago.

@mihaimaruseac Something is not working. The PyLint Action was executed ( failed Mar 30, 2022 in 43s )

We need to run Pylint again as PyLint failed 6 days ago in 43s

Apparently that one is not triggered by the kokoro label but by gitHub buttons

Apparently that one is not triggered by the kokoro label but by gitHub buttons

Yes but I don't have the permission on this repo

@mihaimaruseac Can you push the Action button for pylint?


Cube shadow mode not working. Shadow is always paraboloid.

3.2.alpha3 and build af4fd9de9
Windows 7 / ATI Radeon HD 4870
Changing shadow mode between paraboloid and cube doesn't do anything. Shadows remain paraboloid, as in the screenshot. (Only tested in GLES2)

Minimal project to test - QWFQW.tar.gz
I can't reproduce either with GLES 2 and GLES 3 on Ubuntu 19.10 with GTX 970.
I think that this is fault of AMD drivers.

Maybe related #33273, Same GPU

Can anyone still reproduce this bug in Godot 3.2.3 or any later release?

@KoBeWi yea, it's still happening on my end. Tested just now on 3.2.3. (GLES2)

Hello, Shadows are always paraboloid in GLES2. I am testing this on the Oculus quest 2 and I cannot create shadow in cube mode

I don't think cubemap shadows for OmniLight were ever supported in GLES2, or were they?

@Calinou they are supported when the hardware supports them. A check is done here:
https://github.com/godotengine/godot/blob/22e8fe7bfe0393276aafd57eedd0af2895eac1d2/drivers/gles2/rasterizer_storage_gles2.cpp#L6255
When not supported they will always fall back to dual paraboloid.

This may be a bad comparison, but Unity by default gives me shadows that look just like Godot's cube shadows (as far as I can tell). They work fine on my hardware, both as soft or hard shadows.

I just got a new graphics card, and @clayjohn is right. It was just my old graphics card that didn't support this feature.
Maybe Godot could give off warnings for when one's system doesn't support a feature? Might help avoid this kind of confusion.


Add support for Heroku

Please add support for Heroku Deployment :)

There are no plans to incorporate services such as Heroku or Railway due to continuous  abuse.


ptvsd with visual studio code “pydev debugger: warning: trying to add breakpoint to file that does not exist”

Hello,
I've raised a issue on stack overflow and was advised to report it as a bug here.
https://stackoverflow.com/questions/52760636/ptvsd-with-visual-studio-code-pydev-debugger-warning-trying-to-add-breakpoint
Environment data

VS Code version: 1.28.0
Extension version (available under the Extensions sidebar): no extension
OS and version:
Host : Windows 10 version 1709 (OS Build 16299.726)

Remote :
PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"
NAME="Raspbian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"

Python version (& distribution if applicable, e.g. Anaconda): visual studio code python 3

Type of virtual environment used (N/A | venv | virtualenv | conda | ...): no virtual enviroment

Relevant/affected Python packages and their versions: ptvsd==4.1.3 on both host and remote, also tried 4.1.3

Actual behavior
When I run the following debug from a Visual studio code (Windows computer) to a Raspberry PI. I get the following error twice :
pydev debugger: warning: trying to add breakpoint to file that does not exist: /home/pi/testdebug/C:/IOT/Github/RaspberryPi/test_remote_debug/test_remote_debug.py (will have no effect)
pydev debugger: warning: trying to add breakpoint to file that does not exist: /home/pi/testdebug/C:/IOT/Github/RaspberryPi/ReadPressure/Testing_bar_broke_notification.py (will have no effect)
Expected  behavior
I expect the debugger to allow me to set break points and for me to be able to step through the code.  However, the error looks like its concatenating the local and remote paths.
Steps to reproduce:

update the launch.json with 👍

 {
            "name": "Python Attach (Remote Debug <IP_ADDRESS>)",
            "type": "python",
            "request": "attach",
            "pathMappings": [
                {
                    "localRoot": "C:/IOT/test_remote_debug/",
                    "remoteRoot": "//~//test_remote_debug//"
   }

start remote script with 👍

start debug mode in visual studio code "Python Attach (Remote Debug <IP_ADDRESS>)"

import ptvsd
ptvsd.enable_attach(address=('<IP_ADDRESS>', 3000), redirect_output=True)

#Enable the below line of code only if you want the application to wait untill the debugger has att$
ptvsd.wait_for_attach()"
Logs
Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)
pydev debugger: warning: trying to add breakpoint to file that does not exist: /home/pi/testdebug/C:/IOT/Github/RaspberryPi/test_remote_debug/test_remote_debug.py (will have no effect)

pydev debugger: warning: trying to add breakpoint to file that does not exist: /home/pi/testdebug/C:/IOT/Github/RaspberryPi/ReadPressure/Testing_bar_broke_notification.py (will have no effect)```

Output from Console under the Developer Tools panel (toggle Developer Tools on under Help)

##########Linting Output - pylint##########

--------------------------------------------------------------------

Your code has been rated at 10.00/10 (previous run: 10.00/10, +0.00)

"remoteRoot": "//~//test_remote_debug//"

The above path is invalid. Please note, you must use fully qualified paths.

I noticed you said "no extension" for the extension version. So does that mean you're trying to debug a Python application without using the Python extension for VS Code?

"remoteRoot": "//~//test_remote_debug//"

Please fix the above path,

Do not use ~, you need to provide a fully qualified path
Also change // to / (single /).

Try that and let us know how it goes.

What's the version of the Python Extension?

It's working now.  I have tried every combination of paths but it must have been with the previous version ptvsd==4.1.3.  thanks for your time, this can be closed down now.
Thanks


Passing a directory path with uv fails, while pip succeeds

I'm following a setup script from here. One step being
pip install thirdparty/gaussian_splatting/submodules/gaussian_rasterization_ch9
This command works with pip, while
uv pip install thirdparty/gaussian_splatting/submodules/gaussian_rasterization_ch9 fails with this message:
? `thirdparty/gaussian_splatting/submodules/gaussian_rasterization_ch9` looks like a local directory but was passed as a package name. Did you mean `-e thirdpa
✔ `thirdparty/gaussian_splatting/submodules/gaussian_rasterization_ch9` looks like a local directory but was passed as a package name. Did you mean `-e thirdparty/gaussian_splatting/submodules/gaussian_rasterization_ch9`? · yes
error: failed to read from file `thirdparty/gaussian_splatting/submodules/gaussian_rasterization_ch9`
  Caused by: Is a directory (os error 21)

I assume I missed some flag, but I didn't find it in the help. Is this feature currently supported?
uv version is 0.1.15

Hi! Right now, we require that you include the package name, as you would in a pyproject.toml file, like:
gaussian_rasterization_ch9 @ thirdparty/gaussian_splatting/submodules/gaussian_rasterization_ch9

There's more on this here: https://github.com/astral-sh/uv/blob/main/PIP_COMPATIBILITY.md#direct-url-dependencies-without-package-names


Define your users

1.someone concern about others having ASD.
2.someone concern about themselves having ASD.


Add flatten() method

Hi! I've been using your library for some time and it's been incredibly helpful! I have a suggestion to add a .flatten() method to SyncIter and AsyncIter. These methods could work similarly to the flatten function in more-itertools, which is documented here.
I often find myself dealing with Iter[Iterable[T]] structures and needing to transform them into Iter[T]. Having a flatten() method would make it so much more straightforward. I'd love to get your thoughts on this. If it sounds like a good addition, I'm happy to contribute a PR.
Thanks for your work on this library!

Hello,
yes, that would be a useful new feature.
Prepare a PR 🙏. if not, I can prepare it this weekend.
Glad to see that someone is interested in this library, it inspires me to return to it

@albshady you can check out the new relese: 2.3.0 🎉


Add logger messages

The services and controllers should contain logger messages tracing code execution and warning of any problem.

Traces can be handled with aspects.


SourceGenerator seems not working for latest Avalonia Nightly Build

I'm getting tons of error messages about the ambiguous references:

I think its because it now lives in the main repo (at least when you use master/nightly) https://github.com/AvaloniaUI/Avalonia/pull/10407

I think its because it now lives in the main repo (at least when you use master/nightly) https://github.com/AvaloniaUI/Avalonia/pull/10407

Now I removed the individual package from my project. How should I enable this source generator again?

They probably haven't yet published an updated version of the name generator package.
Worth moving this issue to the main Avalonia repository.
This repository is going to be archived and deleted soon.


Make tests less flaky

Flaky tests I have struggled with:

integration::roles::add_role_to_limit_transfer_count
two_networks

@0x009922 are these tests still considered flaky? if not, please close this issue


installer: provide a SUSE package

What does this PR do?
This PR adds a SUSE package for the datadog installer

Motivation
Supporting the same set of distribution as the datadog agent

Additional Notes
This is based on top of https://github.com/DataDog/datadog-agent/pull/24568

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Origins destroys Single Player in any modpack

As a lot have reported, Origins is corrupting player files in single player worlds.
Steps to produce:

Create a world
Exit minecraft
Open Minecraft
Join world you just created
Receive Error "Invalid Player Data"

I've tested this throughout my modpack (200 mods) and origins alone, taking off origins allows me to join back the worlds that once said "invalid player data"

Similar issue, but no fix still. I could quit out and rejoin for awhile, but at some point I wasnt able to play at all anymore....

Should be fixed with the newest version (1.1.0, released yesterday)


Add Map Support

Map Support can be added in the module itself to provide ability to create a map image from the URL provided in Susi Response and provide it as a byte array.

Done. PR to be sent after #11 merge.


luci-theme-rosy: Remove redundant statements and fixed typo

luasrc: Remove redundant statements
luasrc: modify the characters in the "set Password" button
Signed-off-by: Yanlan Shen<EMAIL_ADDRESS>

@jow-


Example of UIViewControllerRepresentable

Here is an example of UIViewControllerRepresentable that works with SwiftUI.
Please feel free to add this to docs.
//
//  CountryPicker.swift
//

import SwiftUI
import CountryPicker

struct CountryPicker: UIViewControllerRepresentable {
    @Binding var country: Country?

    typealias UIViewControllerType = CountryPickerViewController

    let countryPicker = CountryPickerViewController()

    func makeUIViewController(context: Context) -> CountryPickerViewController {
        countryPicker.selectedCountry = Locale.current.regionCode ?? "US"
        countryPicker.delegate = context.coordinator

        return countryPicker
    }

    func updateUIViewController(_ uiViewController: CountryPickerViewController, context: Context) {
        //
    }

    func makeCoordinator() -> Coordinator {
        return Coordinator(self)
    }

    class Coordinator: NSObject, CountryPickerDelegate {
        var parent: CountryPicker

        init(_ parent: CountryPicker) {
            self.parent = parent
        }

        func countryPicker(didSelect country: Country) {
            parent.country = country
        }
    }
}

Example Usage:
//
//  ContentView.swift
//

import SwiftUI
import CountryPicker

struct ContentView: View {
    @State private var country: Country?
    @State private var showCountryPicker = false

    var body: some View {
        VStack {
            Button {
                showCountryPicker = true
            } label: {
                Text("Select Country")
            }.sheet(isPresented: $showCountryPicker) {
                CountryPicker(country: $country)
            }
        }
    }
}

Thanks for feedback @hcancelik . We'll include SwiftUI implementation on the readme.

With swiftui, how you will get the selected country details back? @hcancelik @Rashidium

With swiftui, how you will get the selected country details back? @hcancelik @Rashidium

From the example above, it will be set to country property.
Button {
                showCountryPicker = true
            } label: {
                Text("Select Country \(country?.localizedName ?? "Not Selected")")
            }.sheet(isPresented: $showCountryPicker) {
                CountryPicker(country: $country)
            }


Trying to delete related objects with .delete() deletes all records

I'm trying to delete related records with .delete() and it deletes every record even those non related.
Consider this:
const myQuestion = Question.findOrFail(1)
yield myQuestion.answers().delete()

It should delete only the answers associated to that question but it's deleting every answer in the database.
Here is the log:
{ method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '8', '1' ],
  __knexQueryUid: '8059c1b9-33e1-4ca1-ab96-d5b2b4e96411',
  sql: 'select * from "questions" where "id" = ? limit ?' }
{ method: 'del',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [],
  __knexQueryUid: '8d59ab28-9efe-40b4-a2dd-affafe190480',
  sql: 'delete from "answers"',
  returning: undefined }

Identified as bug will post a fix soon.

Published as 3.0.10.

Hello! I think I just had this problem with the lastest version of AdonisJs.
I have a model named User wich has a belongsToMany relationship with a model called Address using a pivot table called user_address (all of this in POSTGRESQL).
If i ask to find a User and then delete it's addresses, all the pivot table registers and all of the addresses are deleted (it does a DELETE FROM TABLE with no WHERE condition).
Here's the example:
class User extends Model{
  addresses() {
    return this.belongsToMany('App/Models/Address').pivotTable('user_address')
  }

}
 const user = await User.find(1)
  await user.addresses().delete()

I think this issue still happens. Can i post this here or should i open another issue?

@PauloValeMade Can u share the version of @adonisjs/lucid in your package.json file?

Sure! This is the one i have:
"@adonisjs/lucid": "^5.0.4"

That’s not the latest version. Can you please run
npm install @adonisjs/lucid@latest

Thanks!
Sorry for the lack of attention. I will check the provider versions from now on.
: )


clean up redundant code

Codecov Report

Merging #138 (d5aacae) into master (9dbefba) will decrease coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #138      +/-   ##
==========================================
- Coverage   72.06%   72.04%   -0.03%
==========================================
  Files         690      690
  Lines       12175    12164      -11
==========================================
- Hits         8774     8763      -11
  Misses       3088     3088
  Partials      313      313

Impacted Files
Coverage Δ

leetcode/0075.Sort-Colors/75. Sort Colors.go
100.00% <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 9dbefba...d5aacae. Read the comment docs.


Specifying kvstore and kvstore-opt via ConfigMap is broken

It seems not possible to provide a NewNamedMap with the ConfigMap via the environment variable

This works:
kvstore-opt: '{"etcd.config": "/var/lib/etcd-config/etcd.config"}'


Clean up RC loss / Telemetry loss failsafe modes

We should support disarm on signal loss for small platforms like racers.

Duplicate.

Duplicate of which one?


ADR 13 follow-ups

Context
Per an onsite meeting, we decided to move forward with ADR 13.
Next steps

[ ] Determine a threshold for the size of a blob inclusion proof. This likely requires discussion with @celestiaorg/celestia-node
[ ] Assuming a threshold where the # of subtree roots in a blob inclusion proof is bounded by the max square size, does padding change if the max square size increases in a subsequent hard-fork but the threshold remains the same?

Any other follow-ups @nashqueue?

[ ] How does it affect zk-rollups? In general, what are the options for zk-rollups to verify blob inclusion?

can close since the implementation has been merged and documented


Update README.md

Corrects the LspAttach aucmd snippet

Both versions seem equivalent to me, am I missing something?

local bufnr = vim.lsp.get_client_by_id(args.buf)
local client = vim.lsp.get_client_by_id(args.data.client_id)

calling get_client_by_id doesn't get the bufnr, besides which we already have the bufnr in args.buf


UVI Request

--- UVI JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from  to before v5.12.13",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=dc68f0c9e4a001e02376fe87f4bdcacadb27e8a1"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "dc68f0c9e4a001e02376fe87f4bdcacadb27e8a1",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "regulator: rt4801: Fix NULL pointer dereference if priv->enable_gpios is NULL\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.12.13 by commit dc68f0c9e4a001e02376fe87f4bdcacadb27e8a1. For more details please see the references link."
}
--- UVI JSON ---

This issue has been assigned UVI-2021-1001075


Adding a "bypassCloud" parameter?

I'm thinking of adding a opts.bypassCloud configuration parameter.  When set, it will use the opts.host and opts.port parameters instead of retrieve it from the cloud endpoint.  I'll write the PR, but I wanted to talk about it first.
The goal is to allow for devices that have a predictable enough IP address on the local network (due to MAC address reuse at the router) to not need the internet to get the local address.  I'm thinking of this as a way to solve unreliable internet connections at conferences.
The opts.bypassCloud option isn't specifically necessary.  The presence of opts.host and opts.port should be enough.  I can see pros and cons to having the opts.bypassCloud option.
In addition, I'll probaby add an event to the IO class that tells us the host/port when it DOES get it from the cloud so that the user store it.
Thoughts?

In the event that the device is unreachable using opts.host and opts.port will it:

Fail and notify user of the likely cause

or -

Automatically hit the cloud for the new host info and warn the user (and emit the event).

Both seem reasonable, just wondering.

Here is what I think:
If we go with the explicit bypassCloud: true, then failure will be failure.
If we go with the implicit {host, port}, then failure will try to get it from the cloud endpoint
The code currently makes it seem like you can define the host and port, but right now, it doesn't actually use the user-supplied values.  The more I think about it, the more I like the implicit mechanism.

To argue with myself, this feature could create chaos.
Scenario:  The internet becomes unreliable at an event, and the organizer tells them to use the known IP address.  The IP addresses change for some reason.  People are now controlling each others' bots.
I can see that being a pretty big problem.  A deviceId/handshake could help with that... but now it gets complicated.

Whoah! I didn't know that. You don't need some kind of key or unique identifier to connect to a device via VoodooSpark?

No.  If you have the IP:Port, that is all you need to know to control the device.  You need the deviceID/accessToken in order to  retrieve the IP:Port from the cloud endpoint... but not to connect to the device on the local network.  So the bypassCloud option could solve one problem, and create another at a big event.

If...
new Particle({
  host: ...,
  port: ...
});

Can that imply "bypass the cloud"?

No. If you have the IP:Port, that is all you need to know to control the device.

I wish I had known this when battling @makenai in Sumbots

@rwaldron Most definitely.  I'm just trying to figure out if we want an implicit or explicit interface.  Or if this is something I should do at all.

@BrianGenisio got it. It's definitely worth investigating

Perhaps we may use the cloud service to confirm the ip address if
available, or add a new function to the firmware to get the device id
El lun, 28 de septiembre de 2015 12:21, Rick Waldron <
<EMAIL_ADDRESS>escribió:

@BrianGenisio https://github.com/BrianGenisio got it. It's definitely
worth investigating
—
Reply to this email directly or view it on GitHub
https://github.com/rwaldron/particle-io/issues/67#issuecomment-143775139
.

How do I get the port of my photon on a local cloud? Is it the CoAP port defaulting to 5683?


Sending url parameters via a websocket client?

Hey,
I am currently trying to create websocket connection to a server which expects some url parameters in order to accept the connection (wss://gateway.discord.gg/?v=6&encoding=json would be the final url).
When using a websocket client (for example the Simple Websocket Client plugin for Firefox), the connection works and I immediatly get an hello message by the server. However, when trying to connect to it using beast, I alwas get the error "Error: stream truncated".
The way I am trying to connect looks like this:
	auto const host = argv[1];
        auto const port = argv[2];
        auto const text = argv[3];

        // The io_service is required for all I/O
        boost::asio::io_service ios;

        // The SSL context is required, and holds certificates
        ssl::context ctx{ssl::context::sslv23_client};

        // This holds the root certificate used for verification
        load_root_certificates(ctx);

        // These objects perform our I/O
        tcp::resolver resolver{ios};
        websocket::stream<ssl::stream<tcp::socket>> ws{ios, ctx};

        // Look up the domain name
        auto const lookup = resolver.resolve({host, port});

        // Make the connection on the IP address we get from a lookup
        boost::asio::connect(ws.next_layer().next_layer(), lookup);

        // Perform the SSL handshake
        ws.next_layer().handshake(ssl::stream_base::client);

        // Perform the websocket handshake
        ws.handshake(host, "/?v=6&encoding=json");

        // Send the message
        ws.write(boost::asio::buffer(std::string(text)));

        // This buffer will hold the incoming message
        boost::beast::multi_buffer b;

        // Read a message into our buffer
        ws.read(b);

        // Close the WebSocket connection
        ws.close(websocket::close_code::normal);

        // If we get here then the connection is closed gracefully

        // The buffers() function helps print a ConstBufferSequence
        std::cout << boost::beast::buffers(b.data()) << std::endl;

And the command I use to run it looks like this:
./test.out gateway.discord.gg 443 test
When using the same code in order to connect to echo.websocket.org, for example, it works, so it's not a problem with the connection.
Here is the configuration I use for the websocket client plugin, in which it works:

If I try running my code with the same payload, it doesn't work either. I know from playing around with the client that the server I am trying to connect to immediatly closes the connection if the two url parameters aren't present so I guess the problem lies somewhere there. I just can't figure out what it is.
Thanks for any help!
Version of Beast
120

So the call to ws.handshake fails?

Hmm.... that load_root_certificates  just loads a few canned CA certificates into the verify context. It is very likely that it doesn't have a CA for the certificate presented by your Discord server.
Simple Websocket Client for Firefox has a bunch of code to access the operating-system-specific certificate store to perform the verification but Beast doesn't have that. However, perhaps certificates are not your problem, is the call to ws.next_layer().handshake() proceeding without error?

If you can capture the serialized representation of the outgoing HTTP Upgrade request coming from Simple Websocket Client, then we can compare it to the Beast output. I would try doing that.

As far as I can see, the call to ws.next_layer().handshake() doesn't produce any error, however I am not quite sure how to test this.
I am now trying to get the outgoing request, but that will probably be a bit tricky. Fortunately, it is just a simple page that uses js for the socket so it should be possible I think.

Put a print statement after the call to ws.next_layer().handshake() and see if it executes. Make sure to flush the stream (write std::endl).
As for the serialized request, if you go into debugging mode in your browser it should be in there.

Okay, so here are the request and response headers:
Request:
Host: gateway.discord.gg
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:55.0) Gecko/20100101 Firefox/55.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Sec-WebSocket-Version: 13
Origin: moz-extension://0594ca87-4f91-41e2-8505-59a8f12a58c3
Sec-WebSocket-Extensions: permessage-deflate
Sec-WebSocket-Key: R8tOKWKRuDtGNnyFHhSCwQ==
Cookie: __cfduid=df7904a926d0ca3686581b0b1281670f11506517583
Connection: keep-alive, Upgrade
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket

Response:
Date: Tue, 03 Oct 2017 18:18:58 GMT
Connection: upgrade
upgrade: websocket
sec-websocket-accept: qnUR2/RbMzzEFin0kGU80sH50bE=
Server: cloudflare-nginx
CF-RAY: 3a81e8353e5d5954-VIE

I tried the code now and it works up until ws.read(), that's where the exception gets thrown.

Where is the request-line? i.e. the part with "GET /?..."?

What does Beast's request look like?

Oh, I just noticed firefox didn't write the request line into the raw output. However, it kinda pretty prints the specific parts, so it's possible to create it from that:
Request URL: https://gateway.discord.gg/?v=6&encoding=json
Request method: GET
Version: HTTP/1.1
Sorry if this is a dumb question but how would I go about getting the request from Beast?

Sorry if this is a dumb question but how would I go about getting the request from Beast?

 The easiest way is to modify the beast source code to just print it to cerr or cout. For async_handshake, add a line in the constructor for data to print req:
https://github.com/boostorg/beast/blob/7fe74b1bf544a64ecf8985fde44abf88f9902251/include/boost/beast/websocket/impl/handshake.ipp#L60
std::cout << req << std::endl;

For handshake do it here:
https://github.com/boostorg/beast/blob/7fe74b1bf544a64ecf8985fde44abf88f9902251/include/boost/beast/websocket/impl/handshake.ipp#L398

The request sent by boost looks like this:
GET /?v=6&encoding=json HTTP/1.1
Host: gateway.discord.gg
Upgrade: websocket
Connection: upgrade
Sec-WebSocket-Key: BFRBAo7hMDz9nvIEnKJIcA==
Sec-WebSocket-Version: 13
User-Agent: Boost.Beast/120

Maybe you need that cookie (__cfduid)?
Maybe "Upgrade" is case-sensitive? You can change it here:
https://github.com/boostorg/beast/blob/develop/include/boost/beast/websocket/impl/stream.ipp#L530

You can try adding some of those other fields, like "Origin", by calling handshake_ex which takes a decorator, and inserting the fields:
http://www.boost.org/doc/libs/develop/libs/beast/doc/html/beast/ref/boost__beast__websocket__stream/handshake_ex/overload1.html

Okay so I asked some people who work with the api and they suggested trying to change the request line in order to contain the url als well (so from GET /?v=6&encoding=json HTTP/1.1 to GET https://gateway.discord.gg/?v=6&encoding=json HTTP/1.1, like in the request made by firefox). Is there any way of doing this?

Update: I just tried to make the request using curl and manually setting each header field to the same as in the beast request and it worked. The only thing different is the request line, which uses the full url (because curl doesn't work when only given the parameters).

Is there any way of doing this?

Yes:
req.target("https://gateway.discord.gg/?v=6&encoding=json");

However, the GET method does not expect an absolute-uri. Do you have a proxy configured for your operating system? Is your browser using a proxy?

No, neither my os nor my browser are using a proxy.
If it's not the request line, it's probably the ca certificates? I asked about what certificates the server uses and I was told that they are present on every modern os (as you said, the reason why curl and simple websocket client work).
Since beast doesn't have any functionality to load the certificates directly from the os, would it be possible to just replace the ones in the root_certificates.hpp with any certificates from the os?

I would first try modifying the request line and see if that helps. Otherwise, you have to load the certificates from the OS and that is going to be kind of tricky. Here is some code you might use:
https://github.com/Microsoft/cpprestsdk/blob/master/Release/src/http/client/x509_cert_utilities.cpp

When modifying the request line, I get a WebSocket upgrade handshake failed error.
So I will probably have to take a look at that certificate code...

I think someone had a similar problem with SSL streams and it was caused by the server not doing reads properly, you might want to sift through the closed issues.

Okay, so I managed to hack a little solution together using boost so it works now, I will probably have to refactor it in the future though.
Anyway, thanks for your quick and competent help, it's not often the case that one gets an answer to an issue within literally less then half of an hour.

What was the problem? Can you post the boost code?

Well, I actually don't know what exactly solved it in the end. I guess it was that I used an outdated version because I just updated to the latest dev release (I was on, I don't know, 1.38 or something like that maybe?) and to OpenSSL 1.1.0 and now it worked, for whatever reason. Right now I am using the exact same code as the last time I tried it now.
Before updating, I tried stitching together a solution using this stackoverflow answer. However, that didn't work on some servers for some reason.

At least I think I am. I will look at it again when I'm at home but I can't remember that the code is different...

Okay, that's good to know! It sounds like there's no problem with beast.  I'm working on a new project to solve this problem.

Awesome. Thanks for your patient help then, I think this can be closed now! :)


high RAM usage nodeos && mongod

I run a non-producing node with 8GB RAM on Ubuntu 18.04 and 4 CPU cores, no Docker(yet).
Overnight mongod crashed, not sure why. I just had to start mongod from the /opt folder again and it worked.
But now the sync process is super slow. It's at 20860100 of 22222260 blocks Example: time per: 562566, size: 1, time: 562566
Mongod takes ~ 150% CPU usage and 41% RAM
nodeos: 20-45% CPU and ~50%
Is this normal? I'm thinking of stopping the node and upgrading the server to 16GB RAM.
Strange enough my API does not access the full mongoDB, only the parts after the restart of mongod.

Is it possible that mongod crashes because of lack of RAM?
RAM usage normal?
Stopping the node with best practices and restarting does not force me to --mongodb-wipe?

my config.ini:
    blocks-dir = "/mnt/xfs/mainnet/blocks"

    bnet-endpoint = <IP_ADDRESS>:4321
    bnet-follow-irreversible = 0
    bnet-no-trx = false
    read-mode = read-only
    validation-mode = light
    mongodb-uri = mongodb://<IP_ADDRESS>:27017/EOS
    mongodb-queue-size = 2048
    mongodb-abi-cache-size = 2048
    mongodb-block-start = 1
    mongodb-store-blocks = 0
    mongodb-store-transactions = 0
    mongodb-store-transaction-traces = 0
    mongodb-store-action-traces = 1
    mongodb-filter-on = *
    mongodb-filter-out = eosio:onblock:
    mongodb-filter-out = gu2tembqgage::
    mongodb-filter-out = blocktwitter::

    wasm-runtime = wabt
    p2p-max-nodes-per-host = 1
    http-validate-host = false
    https-client-validate-peers = 1
    abi-serializer-max-time-ms = 5000
    chain-state-db-size-mb = 32000
    reversible-blocks-db-size-mb = 340
    contracts-console = false
    allowed-connection = any
    max-clients = 100
    network-version-match = 0
    sync-fetch-span = 500
    connection-cleanup-period = 30
    max-implicit-request = 1500
    access-control-allow-origin = *
    access-control-allow-headers = *
    access-control-allow-credentials = false
    verbose-http-errors = true

    plugin = eosio::chain_plugin
    plugin = eosio::chain_api_plugin
    plugin = eosio::bnet_plugin
    plugin = eosio::mongo_db_plugin
    plugin = eosio::http_plugin

Running a mainnet node is indeed very resource intensive today.  An SSD with high IOPS allocated is recommended.  16GB of RAM is recommended.  It's entirely possible mongod crashed for lack of RAM, but consult your system logs.  If the OOM Killer got it, it will be logged.
Stopping the node gracefully does not require --mongodb-wipe to restart.


Fix confusion in Translation Units doc

I think the sentence was saying the opposite of what it meant!

Your understanding is right, the doc is saying the opposite thing. Thanks for fixing!


Add setter method to EDBPadstackInstance.pin_number

Description of the feature
It would be great to have a setter method for pin numbers to EDBPadstackInstance.pin_number.
This should enable the possibility to rename pins easily without trigger pin removal from the component, as it is currently the case, when editing the pin name.
Steps for implementing the feature
No response
Useful links and references
https://aedt.docs.pyansys.com/release/0.6/EDBAPI/_autosummary/pyaedt.edb_core.edb_data.padstacks_data.EDBPadstackInstance.pin_number.html#pyaedt.edb_core.edb_data.padstacks_data.EDBPadstackInstance.pin_number

@Marcel0000 I have done many experiments. It is a technical limitation.

@ring630 alright, thanks for checking this out!

@ring630 If it is a technical limitation of EDB, could we close this issue?

@Samuelopez-ansys Yes. I am closing it now.


Fix Console breaking focus navigation

Problem
ConsoleLine breaks focus navigation with ui_up and ui_down
Test scenario
Create a simple scene with a vBoxContainer and 3 button children. Click any button and try changing the focused button with up and down arrows. Focus works as long as only up or down is pressed, but the buttons lose focus when down is pressed after pressing up
Fix
Proposed fix simply returns early when Console is not visible. Other possibility is to toggle set_process_input() based on visibility changes.

@all-contributors please add @Cryszon for code


Remove duplicate declaration and fix import error

Hey there,
This is causing a build error for me with projects that use nlcst-types as a dependency, it seems that the Text type is referenced without being imported in type-guards.
While I was checking where it came from I noticed it had been accidentally defined twice in the source location

Thanks. I'll look later.

src/nlcst-parse-japanese.ts(319,13): error TS2564: Property 'tokenizer' has no initializer and is not definitely assigned in the constructor.

This error is caused by upgrading TypeScript. (TypeScript is not semver)
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-7.html

@chris-divvito Thanks for PR.
I've merged it and fix some compile error #4 https://github.com/azu/nlp-pattern-match/pull/3#issuecomment-398277060.
Also I've released new version.

Thanks @azu - have a good one :D


mini_portile issue on Solaris/Illumos

From http://nokogiri.org/tutorials/installing_nokogiri.html:

Because Nokogiri needs to be compiled and dynamically linked against both libxml2 and libxslt, it has gained a reputation for being complicated to install.

I have isolated/identified three (under various circumstances) bugs / reasons for this.
All of them are due to the dependency on mini_portile. See the changes and line notes here.
Unfortunately, my PR to the upstream project was rejected due to the fact that the changes proposed would not work on Windows, and I admit I do not have a solution to that, largely because I do not have a way to test Windows. However, in the particular case of Nokogiri, since:

Luckily for you, building on Windows is so difficult that we’ve done it for you: Nokogiri comes bundled with all the DLLs you need to be NOKOGIRIFIED.

And therefore mini_portile's Windows support isn't necessary here, would you be open to pulling in a modified mini_portile.rb, since the entire thing is one file (less than 400 LOC)?

Ah - I can see your branch now. Must have taken github a bit to synchronize. Will look into it.

Ack! Sorry I didn't get back to you sooner. Must have slipped by me.
Let me know if you need me to clarify anything on this.

This is fixed in flavorjones/mini_portile@b48882f, which will be in mini_portile v2.0 that we'll be cutting soon, and that will be pulled into nokogiri 1.6.7.
Thanks for your patience.


Line Breaks Counting

Is there an easy way to count line breaks as 2 characters?
I checked the unminified version but could´t find the right spot to make custom changes.
Thank you!

Hi @Webtransformer,
Just released an update (version 0.6.0) that includes an option twoCharCarriageReturn that implements this behavior. If you ran into any troubles though let me know.

Thank you!  :-)


Feature Request: Ability to Maintain zoom state of Existing windows when Space is Changed

If you have a window in full screen and another window is added to the space, the original window zooms back out. Can the zoom state be maintained in this scenario so that I don't have to manually full-screen it again? The new window would just be layered on top.
It also occurs when you remove a window from the space.

Duplicate of https://github.com/koekeishiya/yabai/issues/864


[FEATURE] i18n keyboard layouts

Ony US (standard) layout is supported. It would be great, to choose cusom layout or even (if possible) get this information from host browser.
When I am using any other layout, it does not bind correclty. I am not expecting it, to bind correctly that chosen layout (since it is not implemented yet) but not even US layout works, when I have any different on my host computer.
E.G. Slovakian keyboard bind correctly except key - is switched with / (and ofc this is quertz, so z is switched with y what is expected). On german keyboard layout are more keys (5+) switched. So only if i switch my host to US keyboard is neko usable.
Since i18n was introduced, this would be also great feature.

this would need a rewrite on how the keybord input is handled on both server and client

maybe handle it like guacamole https://github.com/apache/guacamole-client/blob/master/guacamole-common-js/src/main/webapp/modules/Keyboard.js

WIP https://github.com/m1k1o/neko/commit/aa1fedcb24a85ba9eadd79031bbc25f498a4fdf3

Implemented handling from guacamole. https://github.com/nurdism/neko/compare/ca0b5b2d354c938859680f93caac1b5c1279b2ff...m1k1o:5cf9c2931922e5912fee06c0661f5dcf0726c7df


AppBar scroll problem on (animated) layout height change of row height

Hi,
The Smooth app bar has a scroll problem when the row height of the recyclerview items are animated. The problems appears for the Enter Always scroll-mode, where the appbar exits completely and only enters when recyclerview is scrolled to the top.
I have created a branch with sample code which illustrates the problem (more on this below): https://github.com/arberg/smooth-app-bar-layout/tree/debug_appbar_scroll_on_layout_change
I can reproduce the problem like this:

Expand the height of the top row in onClickListener by animating from normal small size to eg. 2x screen size. I set update layoutHeight and run requestLayout on each frame.
After expansion I scroll down to bottom part of top row, so appbar scrolls completely out of view.
Shrink the top row again
Scoll up to top:
Problem: Now appbar does not appear immediately but I have to scroll further, to make appbar appear.

The problem can also be reproduced in another way, which perhaps illustrates the root cause. Instead of animating the rows I just expand immediately onBind. If the expanded state is cached in adapter, then the appbar behaves correctly. If the expanded state is not cached in adapter, so that when an expanded view is reused it will still be expanded, then it causes problems.

Expand top row, in onclicklistener
Scroll down until the top viewholder is reused and an expanded row comes into view
click expanded row to shrink it
scroll up to top again
Problem: Again appbar does not appear immediatly after reating top row.

Sample code is here
https://github.com/arberg/smooth-app-bar-layout/tree/debug_appbar_scroll_on_layout_change
In SimpleAdapter set
ENABLE_ANIMATION = true;
ENABLE_CACHED_STATE = true;
to get 1. mentioned animated behavior.
Set both to false, to get the second mentioned behavior.
PS: I changed build.gradle a bit for minSdk for animation and debugVariant so I could debug.
PPS: Click 'Enter Always' to and follow guide above to reproduce problems. For |enterAlwaysCollapsed quick return, then the problem is visible also then reaching top row.
Best Alex

Hi @arberg,
Thanks for your report. I am really appreciate. Let me check.

Can you add me as a collaborator in your fork repo? I would like to send some PRs

Overall solution is: if items in RecyclerView are changed height or removed, we have to explicitly call syncOffset or syncOffsetDelay depending on situation.

I have added you. Thank you very much for the help.

I pushed my commit. Please check and adjust delay time depending on your need. However, this is just a workaround for now until I find a better solution to calculate scrollingOffset in RecyclerView.

Hi @arberg
Let me know if v1.0.0 fixes this issue.

Hi Henry,
Thanks, scrolling is great. I PM'ed you with minor problem. I noticed the buttons are sticky, and this listener gets called with 1.0 until too late it gets called with <1
    vSmoothCollapsingToolbarLayout.setOnOffsetChangedListener(new SmoothCollapsingToolbarLayout.OnOffsetChangedListener() {
        @Override
        public void onOffsetChanged(float ratio) {
            // Enable this to get a title shown when toolbar is collapsed.
            Log.i(TAG, "ratio=" + ratio);
            setTextOpacity(ratio > 0.5 ? 0 : 1 - ratio * 2);
        }
    });

Best Alex

Hi @arberg
I think I should close this ticket.
Best,
Henry

Sounds good, Thank you for the help. Just for others to know, the scrolling problem mentioned is also in the native google appbar layout and is a minor issue with regards to look and feel, so its not worth the effort for Henry to bugfix more of google code, I think.
Thank you for the help, Best Alex


OpenMode::Create mode is ignored when opening a local directory

Hi, this is a bug report.
Summary
We want to open a repository if it exists, create it if not, which is the purpose of OpenMode::Create.
However, when doing so, at least when using FileRepo and DirectoryConfig, the repo opening fails at the second opening because the implementation attempted to re-create the directory, which is not was was requested.
How To Reproduce
Repro case (main.rs):
use std::path::{ PathBuf };
use acid_store::repo::{ file::FileRepo, OpenOptions, OpenMode, };
use acid_store::store::{ DirectoryConfig };

fn main() {
    use std::env;
    let args: Vec<String> = env::args().collect();

    let config = DirectoryConfig{
        path: PathBuf::from(&args[1])
    };

    let _repo : FileRepo = OpenOptions::new()
        .mode(OpenMode::Create) // This seems to be ignored!
        .open(&config)
        .unwrap();

    let stdin = std::io::stdin();
    loop {
        let mut input = String::new();
        stdin.read_line(&mut input).expect("failed to read input");
        if input == "exit\n" {
            break;
        }
    }
}

Compile and run it twice:
cargo run /tmp/myrepo
cargo run /tmp/myrepo

Observed
Failure on any run with the same directory argument after the first call with that directory:
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Store(File exists (os error 17))', src/main.rs:17:10

Expected
No error, no attempt at creating the directory when we use OpenMode::Create and successful opening of the repository.
Notes
In open-options.rs we can locate this call which shows that the mode is handled after attempting to access the store, instead of in the store.
 let mut store = config.open()?; // HERE

        match self.mode {
            OpenMode::Open => self.open_repo(store),
            OpenMode::Create => { // HANDLED HERE

Going into the call to config.open() then leads to this code:
fn open(&self) -> crate::Result<Self::Store> {
        // Create the blocks directory in the data store.
        create_dir_all(&self.path)
            .map_err(|error| crate::Error::Store(anyhow::Error::from(error)))?;
        create_dir(self.path.join(STORE_DIRECTORY))
            .map_err(|error| crate::Error::Store(anyhow::Error::from(error)))?; // FAILS HERE
        create_dir(self.path.join(STAGING_DIRECTORY))
            .map_err(|error| crate::Error::Store(anyhow::Error::from(error)))?;
        create_dir(self.path.join(type_path(BlockType::Data)))
            .map_err(|error| crate::Error::Store(anyhow::Error::from(error)))?;
        create_dir(self.path.join(type_path(BlockType::Lock)))
            .map_err(|error| crate::Error::Store(anyhow::Error::from(error)))?;
        create_dir(self.path.join(type_path(BlockType::Header)))
            .map_err(|error| crate::Error::Store(anyhow::Error::from(error)))?;

We can see that the option is not handled at the right level and directory creation is "forced" systematically.
We did not attempt to see if the same issue appear with other kinds of stores. We intend to check with S3.

Hi @Klaim!
Thanks for the incredibly detailed bug report! This issue should be fixed, and I don't believe it occurs with other kinds of stores. I just published v0.11.1.


[stable/chartmuseum] fix permission denied for persistent volume with app version 0.8.0

What this PR does / why we need it:
New chartmuseum 0.8.0 runs as "chartmuseum" user, which breaks persistent volume. Adding updated default security context
Which issue this PR fixes

fixes https://github.com/helm/chartmuseum/issues/193

Special notes for your reviewer:
n/a
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

re-done in https://github.com/helm/charts/pull/10082


Ability to Run Subset Pipeline

Description of feature
An option to enter the pipeline at the post-merge step with a finalized Seurat object .rds. This would allow for subset analysis for a specific cell type for example.
Require a new module for subsetting:

subset by metadata col + idents in metadata column.
subset by barcodes (either include or exclude)

also need to modify the way projections and clustering resolutions are named.


DHCP Allows selecting the DHCP server's network interface

Simple change allowing the selection of network interface on server start.

Looks good to me.

Closing/reopening to trigger CI build

Commit 5ee6c548 needs to be reverted.


question about push_and_pull funtion

Hi, Morvan,
In your push_and_pull function, you update the global grad without any condition, see https://github.com/MorvanZhou/pytorch-A3C/blob/master/discrete_A3C.py#L95. However, for other implementations of a3c which are quite similar with yours update global grad only when global grad is None. See https://github.com/greydanus/baby-a3c/blob/master/baby-a3c.py#L159 and https://github.com/ikostrikov/pytorch-a3c/blob/master/train.py#L13. I am quite confused about it. Would you mind giving me your insight about it?

Hi Luochao,
The reason they write it that way might be to keep the update thread safe. In my application, the global parameter can be updated while sharing with local workers or updated by many workers at the same time. You can try to add a lock to the updating step to maintain a sequential updating.
I have tried adding a lock, but from what I see, there is not too much improvement.  I think without a lock, the updating mechanism would be like the mechanism in this paper "Hogwild: A lock-free approach to parallelizing stochastic gradient descent"


Package busylight

Description of changes
This packages Busylight and includes an option for installing its udev rules.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Would you please change pythonPackages to python310Packages in the commit message?
pythonPackages means python2.

Thank you for your feedback.  I've made most of the changes that you've suggested.
However, it appears that pythonRelaxDepsHook doesn't when:
pythonRelaxDeps = [
  "loguru"
  "hidapi"
  "typer"
];

I'm wondering if it has something to do with the use of poetry.masonry.


xt::range(n, -1, -1) not working

Not sure if a bug or undocumented behavior
#include <iostream>

#include "xtensor/xarray.hpp"
#include "xtensor/xio.hpp"
#include "xtensor/xview.hpp"

int main()
{
        xt::xarray<double> arr{ 0., 1.};

        std::cout << xt::view(arr, xt::range(1, xt::placeholders::_, -1)) << '\n';
        // { 1.,  0.}, ok

        std::cout << xt::view(arr, xt::range(1, -1, -1)) << '\n';
        // {}, expected { 1.,  0.}
}

Actually, negative numbers are not supported for min and max values of ranges. Only the step can be a negative value.

Note that the behavior of _ the placeholder is different from passing -1.
Also in NumPy:

a[1::-1]
array([1, 0])

I don't think there is a way to select the same range with explicit indices as end=-1 is the first element from the end, so you actually need to use the placeholder (same as in NumPy where you implicitly pass None in the slice).
You could use xt::xnone() instead of the long xt::placeholders::_ or you can also do
using namespace xt::placeholders; to be able to use _ without the long xt::placeholders in the front.

Thanks @wolfv for the tips!
I just mixed up with standard Python's range(1, -1, -1)
Also, adding -n to the index works
std::cout << xt::view(arr, xt::range(1, -2 -1, -1)) << '\n';
// { 1.,  0.}, ok

And this is the same as numpy
>>> np.array([0,1])[1:-2 -1:-1]
array([1, 0])

I would prefer the suggested way though (no need to calculate n).


How to partially change path which would be in System.register after build?

I am passing some path to builder.build('.tmp/systemjs/module.js');. After the build I get my file registered as System.register('tmp/systemjs/module.js', ...) but I need it to become without tmp, just System.register('systemjs/module.js', ...).
I am loading config before the builder with loadConfig method. There I've tried to use different path variants, but was not very lucky.
Could you please point me out to an option or to a proper path or map usage for this purpose? Thank you so much!

Putting in paths something similar to paths in config.js:
  "paths": {
    "your-path/*": "./.tmp/systemjs/*"
  }

Resolved the issue.


TST: Include tests for pandas Series and DataFrames

Hi @gaogaotiantian,
I have included two tests for pandas-like objects.

As you can see, I have included pandas as a dependency in the requirements-test.txt file.
If pandas is not present, the tests are skipped.
Perhaps you need to update the github actions so that they install pandas too to run the tests, something like
pip install . -r requirements-test.txt

Thank you for your contribution! I'll edit the github actions file to install panda.


Force debug logging on all the time

Does anybody see any issue with this?  It's not really any kind of performance problem and it would eliminate that annoying troubleshooting step of making sure it's on.  We had it on for Google Fiber on all of our boxes so we could analyze issues...and those were very low powered.
I wouldn't even give an option to turn it off...just make it always on, all the time....and then also remove the UI option for turning it on/off.

I think this is a good idea. If we do this, we should probably also remove the option from the UI too.

Yes for sure :).


A few questions about the project

Hi @Log1x! I want to congratulate you for this awesome project! As a Laravel developer and active Discord user I have created a lot of bots a long the way using some manual implementations and other languages to fulfill that and now being able to build them within a Laravel familiar environment means a lot. Sorry to open an Issue for this, but the Discord invite link in the documentation is broken and there is no Discussion page in the repo. I have a few questions since I am still reading the docs and trying Laracord.
HTTP Server
If I want to create a page where users can subscribe to a premium plan of the bot, can I use the built-in HTTP Server or is it recommended that I use a separate Laravel project for that?
Testing
What about tests? Is there something discord-specific on the roadmap for testing? Should I stick to Laravel Zero's testing documentation for now? I couldn't find anything related to tests in the docs, hence the question.
Discussions
It would be really nice to have a discussions page in the repo for ideas/suggestions/bugs/questions! If there is no plan for that, please update the Discord server invite link so we can join!
Thanks and congratulations for the project!

Sorry about the Discord invite being broken! I've fixed the redirect on the site, but here is the original: https://discord.gg/sAgPrRSUZg
I guess it kind of depends on what you're doing and the scale. The HTTP server could technically lock the thread and prevent the bot and other things from working, but I have not benched it or thoroughly tested it.
As far as tests, Laravel Zero's docs are a good starting point but I haven't personally approached it yet.
Hopefully we can get some discussion rolling in Discord. Sorry again about that!


proposal: adapt our test standards to alias relevant keepers in the module's test suite

Background
In unit tests of every module, our test setup often requires us to initialize the app and then access its keepers in the following way:
app.AccountKeeper.DoA(...)
app.BankKeeper.DoB(...)

having to prefix each call with app. adds verbosity to our tests, making them less readable.
We should consider adopting our test standards to alias relevant keepers in the module's suite.
For example, mint module utilizes AccountKeeper and BankKeeper.
Therefore, we might want to have 3 keepers defined on its suite instead of a full app:

MintKeeper
AccountKeeper
BankKeeper

Another benefit of this design is that it would prevent us from depending on the full app when we only need a subset of the system. This would make our tests look less like functional tests and more like unit tests (which should be the goal at this level of abstraction).
Originally posted by @ValarDragon in https://github.com/osmosis-labs/osmosis/pull/1872#discussion_r911602299
Acceptance Criteria

Investigate further if this is desirable
Create follow-up refactoring issues

Do you think having extra keepers in the App, instead of having only the needed keepers is desirable?
Just asking out of curiosity, don't have strong opinions!
We might need keepers outside the scope of what the normal keeper would require though, for example, the cases where we need an extra keeper to test/check something specific

Just realized, we could make the entire OsmosisApp an embedded field on the suite, but that may be even more confusing

This has been added to CONTRIBUTING.md in https://github.com/osmosis-labs/osmosis/pull/1977


comment line was breaking config comparison

Due to the auto-generated comment line included on the first line of the HAProxy, a restart of HAProxy will occur even when the configuration itself is identical.
Here is an example diff when no configuration has actually changed:
1c1
< # auto-generated by synapse at 2016-08-24 10:20:55 +0000
---
> # auto-generated by synapse at 2016-08-24 10:22:47 +0000

As the logic to decide whether or not the config is different is just a simple string comparison (within the write_config function) it will never return true.

@davent I don't see how this is a bug. As far as I know it is fine to write out the same HAProxy config because writing the config doesn't actually make anything restart. My understanding is that Synapse only tells HAProxy to restart when it detects (via the stats socket) that a restart is required, or when we first start Synapse.
When Synapse decided to restart HAProxy it usually logs a line saying why (a new backend or service), are there any such log lines before your suspect restarts?

Because write_config(new_config) always returns true then the following line:
restart if @opts['do_reloads'] && @restart_required is execute every time. Even when no actual config changes have been made.

write_config doesn't determine if HAProxy needs to be restarted. That's @restart_required which Synapse sets whenever it detects (via the stats socket or state file) that a restart is required. Are you running into the first time Synapse starts it restart HAProxy regardless of if the config has changed?

@davent I believe you're running into #78, but this PR isn't the right way to fix it. Now that I'm looking at the code though we really can't just rely on the config file changing to detect a reload as there is no guarantee that the HAProxy instance running is actually running with that config (imagine that synapse writes out the config and then right before it restarts HAProxy it get's restarted or killed). Our stat socket check at the beginning only guarantees that if we're missing backends we'll restart, but we can't detect unexpected backends or misconfigured backends.
Maybe we can get the pid of HAProxy out of the stat socket and then hash that and the config to determine a "HAProxy version" and if those match we can set @restart_required to false initially... What do you think?

@davent are you interested in getting the patch in shape or should I close this and continue in a separate PR.
I think the algorithm that works is:

Immediately after restarting HAProxy and first config generation, issue "show stat" to the stats socket and read out the "Pid" field.
Hash this value with the contents of the HAProxy config to produce a "Running HAProxy version", store that in the state file in restart, but read it in write_config (so we'll have to either add another state file or refactor the current one, shouldn't be hard)
Set @restart_required to be false in write_config iff the running haproxy version matches the last haproxy version

The state transition is (1) pending -> (2) config written -> (3) restarted -> (4) pid identified -> (5) pid + config hashed and written as a version. If we crash at any point before 5 we will identify a mismatch on Synapse startup (because we'll have the old PID) and guarantee a restart, which I beleive is a safe default.
There is some subtlety in when we read the version out, when we compute it, and how we manage the state transition of @restart_required (right now it's just a single latch, always F -> T and then T -> F only on restart, and that's changing ... so ... there is some complexity there), but I think the patch is pretty straightforward.

oh using the pid is a great hack. i like the proposed approach.

@davent I'm going to close this and continue with the work in a separate PR. If you've got the patch feel free to resubmit here or in a different PR :-)


Issue activating the package after installation

Hi there,
I've followed the package installation instructions but am receiving the following error when Sublime is trying to load the package:
reloading plugin OpenAI completion.main
Traceback (most recent call last):
  File "/Applications/Sublime Text.app/Contents/MacOS/Lib/python38/sublime_plugin.py", line 325, in reload_plugin
    m = importlib.import_module(modulename)
  File "./python3.8/importlib/__init__.py", line 127, in import_module
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 868, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/Users/joe/Library/Application Support/Sublime Text/Installed Packages/OpenAI completion.sublime-package/main.py", line 11, in <module>
  File "/Users/joe/Library/Application Support/Sublime Text/Installed Packages/OpenAI completion.sublime-package/plugins/buffer.py", line 6, in <module>
  File "/Applications/Sublime Text.app/Contents/MacOS/Lib/python38/sublime_types.py", line 5, in <module>
    from typing_extensions import TypeAlias
ModuleNotFoundError: No module named 'typing_extensions'

I've done some research but believe I understand that Sublime's python interpreter is private and not something I can add extensions to. Am I missing some kind of dependency here or does this look like an issue with my environment?
Thank you very much.

Thanks for reaching out, what version of ST you are using?

Thanks for reaching out, what version of ST you are using?

Thanks for the quick reply. I should have specified:
Sublime: Build 4180
MacOS: 14.4.1 (If helpful)

Can you check in Finder is there something under this path: ~/Library/Application Support/Sublime Text/Lib/python38/typing_extensions.py

I can confirm that in the ~/Library/Application Support/Sublime Text/Lib/python38 there is no typing_extesions.py - I have the folder but that file is not there.

After successfully reading between the lines here, I placed typing_extensions.py in the recommended folder and the package is working properly now.

Yeah, it was actually missing dependency issue. Occasionally I had such in my env installed by some other package, so I faced not this issue on my side, while you had had less messy env on your side so it raise up.
I've released 4.2.2 just yet that solves this issue (declares the missing dependency).


Remote PI - HA configuraiton

Once I have the remote PI feeding in the MQTT messages, how do I setup the local HA configuration.  Its not talking to the bluetooth address, so what do you use?

If configured correctly and messages are reaching your MQTT broker, you should see it listed as an additional device in Integrations, MQTT. From there you can add to dashboard or use as required.

Got it...  And I can see the messages being sent.  Thanks.


In RegEx mode, the "Make selection" action in "Search Memory" results window only selects first address of matched region.

Describe the bug
The "Make selection" action in the "Search Memory" utility's "Search All" window only selects the first address of a matched region when memory was searched using a regular expression.
To Reproduce
Steps to reproduce the behavior:

Open the "Search Memory" utility.
In "Regular Expression" mode, construct a query that matches a region covering multiple addresses. Note that the query should be constructed in a way that prevents matches from overlapping each other.
Click the "Search All" button.
In the results window that appears, right-click an entry and click "Make selection".

Expected behavior
Like the other modes, select all addresses in a matched region, rather than the first address.
Screenshots

Environment (please complete the following information):

OS: Windows 11
Java Version: OpenJDK 17.0.2
Ghidra Version: 11.0.3
Ghidra Origin: Official build

Additional context
This behavior isn't consistent with the selection behavior exhibited by the other matching modes.
If someone can give me some general instructions on where to look/how to fix this bug, I'd be happy to devote some time to fixing it, as it's quite an impediment to my work at the moment (I'm looking for patterns of repetitive data in a GBA ROM). Unfortunately the Memory Searcher plugin seems (to me at least) a tad over-engineered and complicated for what it's doing - there's a lot of cross-interest logic spread out amongst the GUI and search components.

I am not reproducing this.  Note that the program selection is made based on the rows in the table you also have selected.  In your screen shot, you only have the first row selected.

I am not reproducing this. Note that the program selection is made based on the rows in the table you also have selected. In your screen shot, you only have the first row selected.

Yes, however note that none of the rows in the table correspond to the (unselected) addresses highlighted as part of the match. I would expect that clicking "Make selection" on the first row in the table would select addresses 800fcc9-800fcce.
For example, if I use "Hex" mode to search the same sequence:

And select the same address:

All addresses that were part of the match starting at that address were selected:

I'm not sure I understand - if this is so, why do the selection behaviors for the Hex and Regex modes differ?

I see your point here.   It is not a bug, but was intentionally coded that way for reasons I don't know.    I'll poke around to see what I can figure out.


BFF overview endpoint tests

Scope of changes
This adds some tests for the bff overview endpoint.
SC-6363
Type of change

[ ] bug fix
[x] new feature
[ ] documentation
[ ] other (describe)

Acceptance criteria
Please make sure the tests make sense and there is sufficient coverage.
Author checklist

[x] I have manually tested the change and/or added automation in the form of unit tests or integration tests
[ ]  I have updated the dependencies list
[ ]  I have recompiled and included new protocol buffers to reflect changes I made
[ ]  I have added new test fixtures as needed to support added tests
[x]   Check this box if a reviewer can merge this pull request after approval (leave it unchecked if you want to do it yourself)
[x]  I have moved the associated Shortcut story to "Ready for Review"

Reviewer(s) checklist

[ ] Does the overview error handling make sense?
[ ] Do the tests cover enough cases?

Codecov Report

Merging #635 (24ce618) into main (dd5455e) will increase coverage by 1.66%.
The diff coverage is n/a.

:exclamation: Current head 24ce618 differs from pull request most recent head 77f11ff. Consider uploading reports for the commit 77f11ff to get more accurate results

@@            Coverage Diff             @@
##             main     #635      +/-   ##
==========================================
+ Coverage   45.78%   47.44%   +1.66%
==========================================
  Files         544      389     -155
  Lines       16147    13720    -2427
  Branches     1200      585     -615
==========================================
- Hits         7393     6510     -883
+ Misses       7628     6255    -1373
+ Partials     1126      955     -171

Impacted Files
Coverage Δ

web/gds-admin-ui/src/layouts/Menu.js

...eb/gds-admin-ui/src/redux/autocomplete/reducers.js

...ds-admin-ui/src/pages/app/details/contact/index.js

web/gds-admin-ui/src/pages/error/PageError.js

...ages/app/details/TrixoQuestionnaire/Regulations.js

...b/gds-admin-ui/src/redux/autocomplete/constants.js

...min-ui/src/pages/app/details/BasicDetails/index.js

web/gds-admin-ui/src/redux/sagas.js

...eb/gds-admin-ui/src/components/BusinessCategory.js

web/gds-admin-ui/src/components/ProfileDropdown.js

... and 147 more

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 dd5455e...77f11ff. Read the comment docs.


az cli front-door delete - fails

I dont believe this is linked to my resources as Ive deleted against different FrontDoors in different subscriptions - Deleting endpoints via cli seems to take a long time due to waiting for getting the results which seems to fail, despite endpoints having been deleted
"extensionType": "whl"
"name": "front-door"
"version": "1.0.2"
Example Running:
az network front-door routing-rule delete --front-door-name  --name  --resource-group
Routing rule and endpoints do get deleted, maybe I should use --no-wait if supported but it takes 17mins for one deletion and Get frontdooroperationresults/?api-version=2019-05-01' returns
msrest.http_logger : Response status: 200
msrest.http_logger :     'Date': 'Sun, 23 Feb 2020 20:15:36 GMT'
msrest.http_logger : Response content:
msrest.http_logger : {
"status":"Failed","error":{
"code":"InternalError","message":"Sorry, it looks like there was an error on our end. Please contact Support if you keep having this problem."
}
}
msrest.exceptions : Sorry, it looks like there was an error on our end. Please contact Support if you keep having this problem.
cli.azure.cli.core.util : Sorry, it looks like there was an error on our end. Please contact Support if you keep having this problem.
Sorry, it looks like there was an error on our end. Please contact Support if you keep having this problem.
az_command_data_logger : exit code: 1
telemetry.save : Save telemetry record of length 2587 in cache
telemetry.check : Returns Positive.
telemetry.main : Begin creating telemetry upload process.
telemetry.process : Return from creating process
telemetry.main : Finish creating telemetry upload process.
command ran in 1749.062 seconds.

HI @MyronFanQiu could you pls help to look at the issue? thanks.

add to S166.

@podedra92 Looks like it's a service issue. I tried to invite the service's help.


copy_well function: added arg/option to skip log runs when copying.

added new argument to make it possible to skip log runs when copying wells

This was just for testing


All my images break

I have a huge workspace and All my images suddenly break.
Please help!

Hi, apologies for missing this. Is this in the Plus app or excalidraw.com? And does it work after reload? We've made some fixes some time ago, so perhaps this is already resolved.


Fix rejected Fabric proposal handling

The error handling part of a rejected Fabric Tx proposal referenced an undefined attribute of the response.
In case of rejected proposal, an explicit Error object is returned as result (see this SDK code).
@haojun can you review this quick-fix?

The error was in my user module, so the fix works :)


EmailTemplate is not a constructor

I've required using
const EmailTemplate = require('email-templates').EmailTemplate;

and the following
const template = new EmailTemplate('email_templates/my_template');

gives an error of

EmailTemplate is not a constructor

v2.7.1 doesn't have this issue but I've not tried anything in-between that release and the latest one.

Read the documentation please, v3 has a different API than v2.

@dottodot did you see https://github.com/niftylettuce/email-templates#v3-breaking-changes yet?

Yes sorry got it working now thanks.


Regarding Custom Dataset

Hi. I have been doing research regarding point cloud object detection. However, all the architectures currently support only benchmark datasets and there is no proper guidance on how to prepare our own datasets. For example, I have some point clouds of patients and I want to detect some regions for medical purposes. However, I cannot find any guidance here or in other models as well to work with custom datasets. Will appreciate any guidance on this. Thanks!

Hello,
You can find some tips here. I created my own "custom_dataset" folder with modified python scripts for "_data.py" "_detection_dataset.py" "utils.py" and "model_util.py". I used the sunrgbd folder as a template since my annotations were very similar.

@IliasMAOUDJ thank you for the reply. I have seen the link that you shared before. I had two main issues due to which I couldn't follow those steps.

I was not sure which annotation tool to use to match sunrgbd format. Can you tell me which tool did you use? Also I am not sure if my point clouds are in upright coordinate system or not.

Most of the implementation also use real images and camera calib files in their implementation I think. However, I only have point cloud (mesh) data. So I was not sure how to work with it.

My dataset is synthetic so I haven't used any tool. I used Trimesh to create the scenes and annotated directly with the properties of the objects. My point clouds weren't in upright coordinate system but since my objects could have any rotation it didn't matter much. I adapted the network to predict 3 rotations though.

The real images and calib are used only for the vizualisation I think (but I removed them anyway). I could train the network successfully without using those.

Hi @IliasMAOUDJ  ,
I also have a dataset, its not synthetic and has 3 rotations . When you trained the model, did you encounter any  perfornance reduction . I have not used votenet yet . Using frustum pointnet I encountered performance reduction  so just want to confirm before moving forward .

@IliasMAOUDJ thank you for the reply. I have seen the link that you shared before. I had two main issues due to which I couldn't follow those steps.

I was not sure which annotation tool to use to match sunrgbd format. Can you tell me which tool did you use? Also I am not sure if my point clouds are in upright coordinate system or not.
Most of the implementation also use real images and camera calib files in their implementation I think. However, I only have point cloud (mesh) data. So I was not sure how to work with it.

@pytholic , hello. I am trying also to use my custom data. if you found which annotation too to use. please share with me if possible and thank you. Like you, I only have point cloud data. I am a bit novice in point cloud detection any suggestions or guides will help so much.
and thank you as well  @IliasMAOUDJ . Your comment also clarifies for me that the training does not need the othe files in the sunrgbd.

HI @madinwei . It has been a while since I worked on it so I don't recall all the details. These days I am more focused on Visual SLAM.
I did not use votenet in the end though. You can check my repo here. You can also visit the original links from the README.md.
Hope it helps!

I am very grateful for your reply @pytholic. Since you didn't use votenet, can you recommend to me, which model should I use for point cloud detection?
regarding your repo, they are very helpful, thank you so much. I used that Pointnet Colab notebook before to know how to use Pointnet. However, I didn't know how to make the point net do object detection. I have checked the original links README.md before but didn't find any information on the annotation tool, I will check them again. if you can direct me to it that will be great.
Again thank you so much, I hope I didn't bother you with my question.


Converted integration tests to unit tests

This pull request adds unit_data.osm and generates Gherkin files from it. The file is less than a megabyte and contains all data needed for testing. The whole cycle (running unit.sh) takes around 4 seconds on my machine — and that's with initializing the database! Fixed an error on the way.

Pushed the changes, PTAL please.


Enter should submit key add for property drawer

When you enter a key for a serialized dictionary property drawer, pressing enter should submit the field.

Resolved in #4947b76a5ac0a0b13ce53ca21b4b0fe628ced508


Ubuntu install

Combine installation of OMERO and its dependencies on ubuntu 14.04 and 16.04
This replaces gh-1613
cc @hflynn

Not related to this PR but I'm still seeing a bunch of OMERO 5.2 references in the inserted bits from omero-install (e.g. https://www.openmicroscopy.org/site/support/omero5.3-staging/sysadmins/unix/server-install-homebrew.html#omero-release-server) and also https://www.openmicroscopy.org/site/support/omero5.3-staging/sysadmins/unix/server-centos6-ice36.html#ice-3-6 still seems to be referencing ice 3.5 - are there still omero-install updates needed?

https://github.com/openmicroscopy/ome-documentation/blob/develop/omero/sysadmins/unix/server-centos6-ice36.txt#L57 - ice 3.5 reference is coming from 'walkthrough/walkthrough_centos6_py27_ius.sh'

Reference to ice 3.5 for centOS has been fixed in gh-1616

Commands to install for ice36 fixed for ubuntu by e8708ca

The "5.2" ref was due to version in omero-install. I have opened a PR https://github.com/ome/omero-install/pull/141


Fix Issue ts #11583

to resolve https://github.com/Microsoft/TypeScript/issues/11583

Hi @alisabzevari, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
We will now validate the agreement and then real humans will evaluate your PR.
TTYL, MSBOT;

As a heads up, your commits aren't being associated with your GitHub account. If you care about that, you can either

register the email you used to author the commits with GitHub, or
you can create a new branch by rebasing interactively and fixing up the author field on each commit (git commit --amend --author "..."). GitHub should give you the option of switching the branch of a PR.

I couldn't switch the branhc. So I am closing this one and openning another one.

Oh, I see, they only allow you to change the base branch, not the target branch.


Sky Factory 3 - Modular Storage in Inventory Causing Crash/Corrupting World

Issue description:
Note: This is solely related to the mod's performance in Sky Factory 3. If there have since been updates to the mod and its version, then I understand that this issue may be moot.
Whenever I have either the storage module block or the storage module card in my inventory, the world will crash with a timeout exception. Placing the block and interacting with it in the world does not cause an issue. Items placed onto the storage module's cards include chicken eggs, almost every type of chicken (from chickens mod), and dimlets/dimlet parts from RFTools dimensions. Also, each of these sets of items were placed onto its own storage card, and place within its own storage module, so the amount of items that could be stored was not maxed out on any of them.
I've kept a clean save of my backup, and all of the other interactions in my world are fine. I played for a while, ignoring the task I was doing when the crash first happened to see if it was a timeout error. After being able to play for a much longer period, I deduced it had to be something else. Placing certain items into my inventory, I was able to reproduce a common problem: the RFTools modular storage, when in my inventory, was crashing and corrupting my world.
The crash does not occur immediately, but does occur soon after dealing with the RFTools items mentioned. Additionally, upon trying to transfer RFTools modular items to regular storage (such as Refined Storage or simply a bunch of chests), I got a crash after putting the modular storage parts (which were empty) into a storage disk from Refined Storage. The other RFTools items I'd had in a Refined Storage disk were fine long before I put the modular storage parts in, which leads me to believe that it is very specifically
Steps to reproduce:

Loaded a clean backup save of my world
Put the storage module block (containing storage card with items) into inventory
Simply left it in inventory
Crash occurs

Other instances of the crash:

Put only storage card (still containing items) into inventory
Put modular storage parts (both the block and the cards, which were completely emptied of items) in inventory
Repeat of above, except this time, put them in some type of storage (such as the disk from Refined Storage)

Versions:

Minecraft: 1.10.2
Forge: <IP_ADDRESS>7
CompatLayer (only if on Minecraft 1.10 or 1.11): 1.10-0.2.9
McJtyLib: 1.1x-2.4.3
RFTools: 1.1x-6.13

Possibly incompatible mods and versions: As I've said, this is with the other Sky Factory 3 mods. I will mention that prior to 2/27/18, I had not had the issue with moving or holding RFTools' modular storage in my inventory.

Relevant logs, if any:
This is the most recent crash log my computer has given me for Sky Factory: http://paste.feed-the-beast.com/view/0f14010b

Can you try temporarily removing NEI (just NEI, not JEI) and see if that makes it stop crashing? if so, can you report this to their issue tracker?


RSS feed support

Is it possible to add a RSS feed support as an "account"?

RSS is already supported, what you mean with "as an account"?
    rss:{
        urls: ['http://teslapodcast.libsyn.com/rss'], //Array: Specifiy a list of rss feed from which to pull posts
        limit: 2                                      //Integer: max number of posts to load for each url
    }

RSS feed are based o public URLs.
If you want a better RSS implementation (not only Text) i've added in my fork a more complex RSS part. Feel free to take a look. I actually use to grab RSS feed from blogspot, wordperss and other feeds with text and Images.

Thanks, I haven't seen that. Sorry for the opened issue.


Feature Request: Shorthand notation for last deployment

I might have missed an already existing feature that covers this, bit it would be great to be able to refer to the most recent deployment with a short-hand notation when using the CLI.
The use case that comes up most often for me is retrieving logs. I start deploying an app, something goes wrong, and I'd like to read the build logs. Currently, this requires me to either type or copy over the deployment id or URL: now logs <deployment-id>.
Instead, it would be awesome if there was a quicker way of saying 'show me the logs of my last deployment'. E.g. cd and git use a dash for this, cd to represent the previous working directory, and git for the previous branch.
What about something along the lines of now logs -?

That's a great feature suggestion, one I would love to have too!

Thank you for creating this issue!
Please note that – in order for us to be able to handle each feature request with care – we have to consume all of them through a unified pipeline that makes it easier for us to prioritize, track and progress on the features our user base is interested in.
In turn, the Issues tab on this repository is best only be used for reporting bugs, which we can immediately act on.
For well-explained feature requests (like the one you just posted), please contact us at<EMAIL_ADDRESS>so that we can consider adding it to our roadmap.


Update client3:circe, client3:core to 3.9.8

About this PR
📦 Updates

com.softwaremill.sttp.client3:circe
com.softwaremill.sttp.client3:core

from 3.8.16 to 3.9.8
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.softwaremill.sttp.client3" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.softwaremill.sttp.client3" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, commit-count:1

Superseded by #255.


Script focus

Script seems to continue playing the stream when losing focus, but doesn't take input from Leap! You have to click back on the script window to continue receiving input.

I believe the error is that the application does not receive frames if in the background by default. Perhaps a way to fix this would be to use the set_policy() function in the Controller class, which can inform the Leap Motion WebSocket server that your application wants to receive frames of tracking data even when it is in the background and not being actively used, so long as another Leap-enabled program is not in use instead. The following would be inserted
"controller.set_policy(Leap.Controller.POLICY_BACKGROUND_FRAMES)"


Comprehensive Repository Improvement: Code Organization, Environment Security, JWT Secret Fix, and Enhanced Validation

Description:
This issue aims to address several key areas that require improvement within the repository. By focusing on code organization, security practices, and robust error handling, we can enhance the overall quality and maintainability of the project.

Code Structure Cleanup
The current structure includes potentially redundant or disorganized files across different directories, such as components and services. To streamline development:

Group related functionalities together (e.g., place all authentication-related files in a dedicated folder).
Ensure clear separation of concerns across components and services for easier navigation and future scalability.

Secure Handling of Environment Variables
Sensitive information such as the JWT_SECRET is being mishandled within the project. To prevent security vulnerabilities:

Ensure that sensitive data is stored in a .env file and is ignored by version control through .gitignore.
Avoid hardcoding secrets directly in the codebase, following security best practices.

Typo in JWT Secret Key
There is a typo in the environment variable for the JWT token. It is currently spelled as JWT_SECREAT, but it should be JWT_SECRET.

Correcting this will:
Ensure consistency and prevent any issues with token generation and validation.

Improved Validation and Error Handling
The current form validation and error handling mechanisms are insufficient for handling various edge cases:

Implement comprehensive input validation, especially in forms, to avoid erroneous or malicious data entry.
Ensure all API responses include appropriate error messages and status codes to handle different failure scenarios gracefully.
Goal:
Refactor the code structure for better readability and maintenance.
Strengthen security by improving environment variable management.
Fix the JWT secret typo to ensure seamless authentication.
Implement robust validation and error handling to cover edge cases and improve user experience.
Impact: This issue will significantly improve code clarity, security, and reliability, contributing to a smoother development experience and more secure production environments.

You're doing good work, @techSaswata Go ahead with the improvements, as they will greatly enhance the project's code organization, security, and overall reliability. Looking forward to seeing your changes!


docs: fix the wrong ln command in CONTRIBUTING.md

Which issue does this PR close?
None.
Rationale for this change
pre-commit.sh is located in the project root, the path in that ln -s command should be ../../pre-commit.sh
What changes are included in this PR?
A shell command
Are there any user-facing changes?
None

I actually had no idea this existed :sweat_smile:


Support metadata in the KVS Sink adapter

We must support attaching metadata to enable full-featured transport.

User must be able to configure the adapter to:

place all serialized metadata in the compatible format under a key corresponding to a frame in the batch (METADATA_INJECT_ALL_SERIALIZED=true/false).
specify a user-defined Python function allowing to access frame meta and ingest custom fields based on the user's needs.

METADATA_INJECTOR_MODULE=my.module
METADATA_INJECTOR_FUNCTION=MyFunction
METADATA_INJECTOR_PARAMS=string

API (draft):
class Injector(logger):
  def __init__(self, params):
    ...
  def inject(self, frame: VideoFrame) -> Dict[str, str]:
    ...

@bwsw Fragment can contain only up to 10 metadata items: https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/limits.html#limits-streaming-metadata

You can prepend up to 10 metadata items to a fragment.
A fragment metadata name can be up to 128 bytes in length.
A fragment metadata value can be up to 256 bytes in length.

So we cannot put frame metadata inside video fragments in KVS. We can only put a link to a metadata in some other storage.