Add Modrinth and Cursforge support

Feature Request
Feature Information:
There is spigot support why not Modrinth and Curseforge support for the Modded servers?
I talked to someone on Discord about this. The conversation was never really finnished. They said that it was not possible when I myself have done it in my own personal coding.
Modrinth (You don't need a key)
Documentation is here
Curseforge
There is information about applying for a key here
Documentation is here
I confirm:

[x] that I have searched for an existing feature request matching the description.

Yeh, Modrinth is pretty new so I wouldn't expect many people to know about it. More minecraft modders are moving to using modrinth because its better than curseforge.
For the Curseforge Api their terms do not say anything about them being able to demand payment. The following taken from their terms and is the only place where the word pay is used.
Upon the External App exceeding a certain quota, to be decided and updated from time to time upon Overwolf’s sole discretion, continued use of the Platform API and/or SDK may (at Overwolf’s sole discretion) require Developer to enter into a written licensing agreement with Overwolf, which license agreement may contain payment requirements or other terms and conditions applicable to the continued use of the API or SDK. Overwolf may decline to provide access to any data or services provided through the API or SDK to the extent the External App exceeds such quota determined by Overwolf and the parties do not come to a mutual written agreement regarding an alternative arrangement.

For minecraft you could use Ferium. If you use it then you wont need an api key at all. The downside to this is that it only works for minecraft.
If you want to use curseforge to download mods for other games as well than you need to use the curseforge api.

Im confused by your response. That clearly states they might require payment in a written agreement.

"May contain payment requirements" In the form you can say how you will pay for it and you can just say you wont. I did that myself

Correct, but they can change that at any time. The point is that having that clause means they might decide to charge CubeCoders at any time and if they refuse then the code time was wasted.

To be clear, I'm not disagreeing just to argue. This has been discussed before. In the end all that matters is what Mike decides to do.

Well I could help.
I surely don't think curseforge would do that though because if they did many people would get upset. Also I know other minecraft launchers that use the Curseforge Api. I do understand your worries. Do you think Mike would see this issue?

the curseforge api only allows you to download mods if the author of that mod allowed it, because of the api change

That may be, but it doesn't change what they have in their terms unfortunately.
I would like to reach out to them and get some details on what they'd expect from CC. It would help Mike gauge if he'd be interested in working with them at least.

https://github.com/CubeCoders/AMP/issues/706

+1 to the request to add Modrinth support. They have a documentation of their API here: https://docs.modrinth.com/api-spec/
And they're becoming the most popular mod/resource pack/plugin website.

Please add Modrinth supporth.  They are the defacto standard for Fabric mods and the also have Plugins as well.

If you add Modrinth support, I'll buy another license. I'm willing to provide proof.

I stopped using AMP after playing around with it because of a lack of Modrinth support.  There is no support for Fabric or Forge (and variants) servers.

Modrinth support is planned soon. We're working through some bugs (unrelated), but I plan to tackle it in the near future.

I recently paid for a $40 amp license due to the implied ease of use when provisioning modded minecraft servers, via curseforge/modrinth. So far i've been entirely disappointed every step of the way.
Support for containerization: Clearly an afterthought, very unstable.
Support for traefik: Definitely broken.
Support for Curseforge/modrinth API's: Non-existent, even though they are used by almost every modpack manager in existence.
Support in general (for a $40 license to be clear): Passive aggressive, selectively observant of complaints, mostly volunteer based from the looks of it. Just look at your GH issue template, this is a joke.
UI: Slow and buggy.

This post isn't the proper place to address these issues. If you'd like to make a post on the forums or Discord, they can be discussed further. Details of how the different aspects didn't work for you would be helpful so they can be addressed.

+1 for Modrinth support!
Their platform and system is pretty well built, maintained, and curated and more plugins are moving there as well (not just Mods). Would be a big step up for AMP while also providing an arguably better experience. They also have pretty well documented developer support and tools that make things easier for end-users and plugin creators (hence increased adoption).

It was announced in Discord that AMP got the green light to implement CurseForge. It isn't a priority this minute, but will be coming eventually.

Does that include modrinth? In the last couple years modrinth has grown to become a lot more user friendly than curseforge and some modders exclusively use it, so i think it would be a great addition. It would be a big shame if you only added curseforge support.

When this is added, will the current plugin implementation be improved as well? Currently the whole interface and the way it works has a lot of issues.
Also, Is there a way that I or anyone else can work on this to help with the development?

+1 for Modrinth support. I would love this feature, it would take soooo much manual setup and updating out of the equation. I understand it's a fairly big project but considering AMP is big on Minecraft, the current implementation with broken Spigot plugin support is very basic.

+1 modrinth and hangar support now that paper is a hard fork. And spigot probably wont allow paper only plugins since they cant test it on their software


Using Movie Filter tmdb_title Doesn't Work

Version Number
1.18.0
What branch are you on?
master
Describe the Bug
Attempting to create a collection with the tmdb_title attribute causes it to fail with the following error message:
[2022-11-20 22:57:12,863] [plex_meta_manager.py:730]  [DEBUG]    | Traceback (most recent call last):
                                                                 |   File "//plex_meta_manager.py", line 616, in run_collection
                                                                 |     builder.filter_and_save_items(builder.gather_ids(method, valu
                                                                 |   File "/modules/builder.py", line 1772, in filter_and_save_items
                                                                 |     if self.check_filters(item, f"{(' ' * (max_length - len(str(i
                                                                 |   File "/modules/builder.py", line 2288, in check_filters
                                                                 |     if plex_f and self.library.check_filters(item, plex_f, self.c
                                                                 |   File "/modules/plex.py", line 1378, in check_filters
                                                                 |     if self.check_filter(item, filter_attr, modifier, filter_fina
                                                                 |   File "/modules/plex.py", line 1420, in check_filter
                                                                 |     test_value = getattr(item, filter_actual)
                                                                 |   File "/usr/local/lib/python3.10/site-packages/plexapi/base.py",
                                                                 |     value = super(PlexPartialObject, self).__getattribute__(attr)
                                                                 | AttributeError: 'Movie' object has no attribute 'tmdb_title'
                                                                 |
[2022-11-20 22:57:12,874] [plex_meta_manager.py:731]  [ERROR]    | Unknown Error: 'Movie' object has no attribute 'tmdb_title'

Relevant Collection/Overlay/Playlist Definition
collections:
  Dreamworks Animation:
    tmdb_company: 521
    sync_mode: sync
    url_poster: https://theposterdb.com/api/assets/289324
    sort_title: +Dreamworks
    collection_order: release
    filters:
      tmdb_title.is:
        - "Antz"
# More beyond this, but this shows the error just fine

Logs
https://gist.github.com/Grygon/30820e5ef7ccd31ac555057e6d0654eb

this is fixed in nightly


Turn off internal pio build in latest<EMAIL_ADDRESS>for first spack-stack release

Recent changes in the<EMAIL_ADDRESS>release regarding the internal pio version and a new option to use an external pio require some changes to the esmf spack package. See https://github.com/NOAA-EMC/spack/issues/98 and https://github.com/spack/spack/issues/31122 for more information.
For now, turn off pio in esmf in the first spack-stack release, since it isn't used by any of the UFS or JEDI applications.

Are you working on this? I was going to go through and update ESMF to work with external PIO.

I think we need to close this issue and fit it the right way - you got ahead of me on that :-)


Use gulpfile.babel.js without global gulp install

Is it possible to use a babel gulpfile without a global gulp? I was not able to do so on FreeBSD 10.2. I got an "import" syntax error both when I ran "./node_modules/.bin/gulp" and "./node_modules/.bin/babel-node ./node_modules/.bin/gulp". I then installed gulp globally, removed the local node_modules, reinstalled the dependencies, and "gulp" ran correctly. What do I have to do to avoid having this global gulp installation?

Yes, we do this all the time.  By naming you file gulpfile.babel.js, the CLI (whether running locally or globally) knows to look for babel-core/register or babel/register in your local node_modules directory and attempt to require it before running the gulpfile.  If you are using babel 6, you need to research the breaking changes that cause you to create a .babelrc file also.


The Quick Start guide does not tell you what a schema is, or where to get one

Steps to Reproduce

Try to follow the quick start guide from a new flutter project.
Get to step 4 where it has you set up a new instance
realize UserSchema doesn't exist and you don't know how to get one

Code sample
final dir = await getApplicationDocumentsDirectory();
final isar = await Isar.open(
  [UserSchema], // <-----------------------------------------    this right here.
  directory: dir.path,
);

Details

Platform: any flutter platform
Flutter version: 4.0.0
Isar version: 3.1.0

[x ] I searched for similar issues already
[x ] I filled the details section with the exact device model and version
[x ] I am able to provide a reproducible example

Did you generate code file such as user.g.dart by running build_runner?

I did. The trick is you have to include the line in your entity 'part
entity.g.dart' or the schema won't generate.  I might suggest including
some information on that in the quick start, it set me back quite a bit.
On Sun, Jan 28, 2024, 10:52 AM Cierra_Runis @.***>
wrote:

Did you generate code file such as user.g.dart by running build_runner?
—
Reply to this email directly, view it on GitHub
https://github.com/isar/isar/issues/1556#issuecomment-1913641492, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AF2PNICF6WHCIW3ZTPVQK63YQZX4TAVCNFSM6AAAAABCOESZESVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJTGY2DCNBZGI
.
You are receiving this because you authored the thread.Message ID:
@.***>

Have you watch one of the tutorials?
https://isar.dev/tutorials/quickstart.html#other-resources
It's all in there 🤷🏼♂

Why not have accurate and complete docs instead of relying on others to
explain your product? 🤷🏼♂ The only reason I figured it out was from a
tutorial where she explains you have to put that part line there first
before running the build tool. 🤷🏼♂ Seems pretty important to
specifically call that out in your official documentation.  🤷🏼♂
🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂
🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂
🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂
🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂
🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂
🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂
🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂ 🤷🏼♂
🤷🏼♂
On Mon, Feb 5, 2024, 12:11 PM oppware @.***> wrote:

Have you watch one of the tutorials?
https://isar.dev/tutorials/quickstart.html#other-resources
It's all in there 🤷🏼♂
—
Reply to this email directly, view it on GitHub
https://github.com/isar/isar/issues/1556#issuecomment-1927501293, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AF2PNIH5RDJFMC5AY6Y2XFTYSEHETAVCNFSM6AAAAABCOESZESVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRXGUYDCMRZGM
.
You are receiving this because you authored the thread.Message ID:
@.***>

It is not my documentation...I have just tried to help.

Have you watch one of the tutorials?
https://isar.dev/tutorials/quickstart.html#other-resources
It's all in there 🤷🏼♂

In fact, Chinese version of doc add one more sentence to declare where scheme is, which is better than English one.

I see, well thank you.
On Mon, Feb 5, 2024, 9:08 PM oppware @.***> wrote:

It is not my documentation...I have just tried to help.
—
Reply to this email directly, view it on GitHub
https://github.com/isar/isar/issues/1556#issuecomment-1928652253, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AF2PNIGPSRA5LIATMU3YUE3YSGGCBAVCNFSM6AAAAABCOESZESVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRYGY2TEMRVGM
.
You are receiving this because you authored the thread.Message ID:
@.***>


Add git to the required packages for the tests

Since we are using the git module to download nbde_server during the
tests, we also need to make sure we have git available.

suggest to use the git module https://docs.ansible.com/ansible/latest/modules/git_module.html#git-module instead of using the git command line.


ENH: Add old ui as example

Rewrote deprecated Gradio UI with RESTful Client and added it to examples as gradio_arena.py.
Instructions should be available by running the file with the --help tag.
e.g. python path/to/inference/examples/gradio_arena.py --help
Here are the instructions, in case anyone needs it:
instructions to run:

    1. Install Xinference, Llama-cpp-python, and other dependencies if necessary
    2. Run command `xinference --host "localhost"` in terminal
    3. You should see something similar to the following output:

    INFO:xinference:Xinference successfully started. Endpoint: http://localhost:9997
    INFO:xinference.core.service:Worker <IP_ADDRESS>:21561 has been added successfully
    INFO:xinference.deploy.worker:Xinference worker successfully started.

    4. In the output, locate the endpoint. In the above case it is `http://localhost:9997`
    5. Run this python file in new terminal window, change the endpoint accordingly

    example run command (feel free to copy):

    python gradio_arena.py \
    --endpoint http://localhost:9997

Please also add this example to the docs: https://inference.readthedocs.io/en/latest/examples/index.html
You need to create a new rst file in this folder and add it to the index's tree of contents.


Overall Project Improvements

Hey, Great Application, by the way; very simple and clean.

Formatting fixes, spacing, syntax, structure
Overhauled msix_downloader script (Let me know your thoughts)
Updated Project README document
Created Contributing Document.

Thanks for your contribution! How come that the images use less space?

So one of the tools I use is called oxipng which functions as a lossless compression optimizer. Great when working with a lot of assets.

Unfortunately, I couldn't get your new msix downloader running:
It says "Could not verify the variable because the value C:\Users<user>\AppData\Local\Temp\9NCB4Z0TZ6RR is not valid for the SavePathRoot variable."
Original (in German though):
PS C:\Users\<user>\Work\localsend\scripts\msix> .\msix_downloader.ps1 -StoreURL https://www.microsoft.com/store/productId/9NCB4Z0TZ6RR
C:\Users\<user>\Work\localsend\scripts\msix\msix_downloader.ps1 : Die Variable kann nicht überprüft werden, da der Wert
C:\Users\<user>\AppData\Local\Temp\9NCB4Z0TZ6RR kein gültiger Wert für die SavePathRoot-Variable ist.
In Zeile:1 Zeichen:1
+ .\msix_downloader.ps1 -StoreURL https://www.microsoft.com/store/produ ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,msix_downloader.ps1

@Tienisto I had a workaround, but I don't think it makes more sense than the original, so I reverted to the original script. Let me know if you see any other issues.

LGTM. Thanks!


Version 0.5 release plan

Merge #858.
Rework index buffers to have strong typing (#884).
Deprecate in a patch version, then remove in 0.5 the old API for draw parameters.

I'm still unsure about the draw parameters, so I'm going to skip this for now.


Add CONFIG_NAME to configs

Runtime configurations apply to a certain network and the name of that
network is useful for humans such that they can talk about it.
Some of the existing configs already include a CONFIG_NAME toggle -
might as well add it here as well and avoid some confusion - this name
above all becomes useful in the beacon API.
By extension, the CONFIG_NAME config will appear in the beacon api as
a result of being defined here.

I think Teku has added this to all our network config files anyway to preserve backwards compatibility of the config REST API endpoint.

I think Teku has added this to all our network config files anyway to preserve backwards compatibility of the config REST API endpoint.


Image of SoundTrack doesn't match with the music

The image of the sound track is twice the size of the music

OS: Win 10
Version: 3.9.1

To Reproduce
Steps to reproduce the behavior:

Open a project

got to Project settings

load a sound track

use the play button

all is fine

go back to project settings

load an other sound track - the image in the timeline is updated but it has the size of the previous sound track

hit the play button - we still hear the previous sound track

we need to go back to project settings and hit the Reload button then when we play the new sound track is playing fine and the image has the right size

now for Audio Source if we switch to an external device

then back to Audio Source Project Sound Track

now the image of the sound track is twice the size of the music

the reload button doesn't help in this case

Restart Tooll to get the right image size

Expected behavior
the image of the sound track should always match with the audio,
Screenshots
https://github.com/tooll3/t3/assets/3755089/36e9f220-ab37-4e8b-a5a6-768bfade7744

Thanks for reporting! With the concise steps to reproduce this, I was finally able to fix it.


Refactor vue directives

Resolves #4
This PR applies common scope scheme for vue directives:
<keyword>:<param>.<modifier>.<modifier>="<expression>"
All shorthand forms are also scoped this way resulting in @, :, # using keyword.control.directive.
Notes:

This is a probosal for a common starting point. It does not yet apply special scopes for :ref, but treats : as shorthand for v-bind: with ref as parameter.

The parameter/modifier parts are also borrowed and adjusted from Svelte.

Let's take it as a first step with possible further improvements changes handled in separate PRs.


Comptaibilty with React 0.13

React.withContext() is deprecated
Replaced with getChildContext()

Latest version should be compatible with react 0.13.0, I've just published it.
I can merge the changes otherwise if you remove dist/, revert back the default locale (it's 'fr' now) and revert other changes like indentation level.
Thanks.

Also please clean-up your branch history.


How to Set Different HTTPS Certificates for Different Domain Names

How to Set Different HTTPS Certificates for Different Domain Names #893
in the nginx:
server {
server_name  admin.xxxxx.com.cn;
listen       443;
ssl on;
ssl_certificate ./pem/admin.xxxxx.com.cn/full_chain.pem;
ssl_certificate_key ./pem/admin.xxxxx.com.cn/private.key;
client_max_body_size 50M;
location / {
    proxy_pass  http://aaa/;
}

}
server {
server_name  www.xxxxx.com.cn;
listen       443;
ssl on;
ssl_certificate ./pem/full_chain.pem;
ssl_certificate_key ./pem/private.key;
client_max_body_size 50M;
location / {
    proxy_pass  http://bbb/;
}

}
in the gateway, How to Set Different HTTPS Certificates for Different Domain Names

Can this be done by spring boot @wilkinsona?

Not as far as I know. If it can be done, it would be container specific. The example above shows two different SSL certificates being used on the same port. Tomcat can't do that as there's a one-to-one mapping between a port and a connector and a one-to-one-mapping between a connector and an SSL certificate. In the context of Gateway, I guess you're most interested in (Reactor) Netty. @violetagg, do you know what Netty is capable of here?

Not as far as I know. If it can be done, it would be container specific. The example above shows two different SSL certificates being used on the same port. Tomcat can't do that as there's a one-to-one mapping between a port and a connector and a one-to-one-mapping between a connector and an SSL certificate. In the context of Gateway, I guess you're most interested in (Reactor) Netty. @violetagg, do you know what Netty is capable of here?

Configuring multiple SSL certificates for a single Tomcat connector: https://wolfpaulus.com/tomcat-multiple-ssl-certificates/ ?

I stand corrected. Thank you, @jyialive. So, yes, it's possible in Boot with Tomcat. You'd need to use a TomcatConnectorCustomizer to configure a second SSL host config to the connector. Boot's application properties-based configuration sets things up on the connector's protocol which maps down onto the default SSL host config.

May be something like this https://github.com/reactor/reactor-netty/issues/573 ?

May be something like this reactor/reactor-netty#573 ?

thank you

@jyialive for which version do you need this feature because it is scheduled for 1.0 for the moment which is still in early dev phase.

@jyialive for which version do you need this feature because it is scheduled for 1.0 for the moment which is still in early dev phase.

I need a sample，I can do it myself

how to get this feature if the spring cloud gateway access tomcat using http?

how?

The SNI support will come with 1.0.0-RC1 and is available in the current snapshot.

how to use SniHandler with spring cloud or webflux ?

@ashraf-revo https://github.com/spring-projects/spring-boot/issues/26022


Results viewer: Refresh after connection lost has to be hit twice

When viewing some data, if the connection has been lost and I hit "refresh" (or F5), I am offered to reconnect:

That's all good. After I hit "Reconnect", the connection to the database is restored but the refresh action I originally asked for isn't made. I have to hit "refresh"  (or F5) one more time.
Could you call again the refresh automatically?

Any love for this bug? :)

already implemented


Add thread locks to hardware backends

This should resolve #381
Locks were chosen over threading.queue or other techniques for their simplicity and ease of implementation.
As mentioned in #381, I have been unable to come up with a good way to unit test this. I am definitely open to ideas, but anything complex should probably go as a separate PR.
The current recommended test method is integration testing with some weird multi-threaded code.
If we merge this PR without unit tests, a separate issue should be opened to track that.

It would be ideal if the calls to set_motor_state inside SRV4MotorBoardHardwareBackend.__del__ didn't try to acquire lock, since the code might crash while the lock is held and we don't want __del__ to deadlock. Maybe we need to add an acquire_lock argument that defaults to True?

c09b737

Haven't had a chance to look at this properly (will try to this evening) but my immediate thought is would a RLock be more useful here? As RLocks allow reentry from the same thread we'd have to worry less about ending up in a deadlock scenario, especially if library authors/competitors do something weird.
I haven't had time to fully think this through so there could be something I'm missing, but thought I'd share to get others opinions.

Haven't had a chance to look at this properly (will try to this evening) but my immediate thought is would a RLock be more useful here? As RLocks allow reentry from the same thread we'd have to worry less about ending up in a deadlock scenario, especially if library authors/competitors do something weird.
I haven't had time to fully think this through so there could be something I'm missing, but thought I'd share to get others opinions.

I'll have a look at this later, you might be right. Worth noting that sr.robot uses Lock https://github.com/srobo/sr-robot/blob/4e6eebf23cb7e3f70f123f92d15b6c5cc772b17d/sr/robot/motor.py#L49
Robotd did not implement locks.


gha: add codecov config

In theory this should stop complaning about tests coverage?
see https://docs.codecov.com/docs/common-recipe-list


Flag show_audio_devices fails to list connected USB sound card

Expected behavior
I expect --show_audio_devices lists my connected USB sound card like "arecord -l" and audacity do
Actual behavior
porcupine doesn't detect the USB sound card (or does the parsing of the device list from miniaudio fail?)
therefore, it cannot be selected to capture audio.
output is:
index: 0, name: Discard all samples (playback) or generate zero samples (capture)
Note: microphone from the USB sound card was successfully tested by recording via audacity.
Steps to reproduce the behavior
raspbian stretch on raspi 3B - fully updated, porcupine compiled with cmake 3.21.0
sound card: https://www.ugreen.com/products/usb-external-stereo-sound-card

I just tried it on an Ubuntu box with a USB mic and it worked fine. I tried the Python demo. What is the demo you are using? What is the USD sound card? What is the output of arecord when you list audio devices? Keep in mind that you can create your own demo using ALSA as well as it seems like arecord is working for you.

I'm using the C demo. The sound card is the one as shown in the original message.
"arecord -l" output:
**** List of CAPTURE Hardware Devices ****
card 0: Device [USB Audio Device], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
Yes, i probably will analyse the demo code later and hopefully find a nice solution for my setup. Maybe it's just a simple config that needs to be adapted. Just wanted to let you know, because it might be a bug.

@g0ierli, thank you! We will def look into it. This could be the limitation of miniaudio but even if that is the case we better figure it out.

We did take a look and couldn't reproduce with the USB mic we have on RPI. I think it is the combo of miniaudio backend your specific mic that causes it. If you can reproduce it with another USB mic as well we can try to buy it and reproduce it. Thanks!


add an option to create a hook on fop:modules:hook (register a hook on a module)

Questions
Answers

Command name
fop:modules:hook (already exists)

Command description?
Don't change the command, but add an option

Command parameters?
--create (?)

Possible impacts?
none except a simplier flow

when I run fop:modules:hook --module vueseclatees --hook displayTableauVueEclateeDispatch I have a message that this hook does not exists.
So I run the command fop:add-hook --name displayTableauVueEclateeDispatch which annoys me with a title and a description (#106) :(
Then I run the first command again.
Too long :(
Having an option create will not break anything and allow just to run the command again with the option to get what I want.

I think we could even create the hook by default if it doesn't exist, WDYT?

Not creating it prevents typo, it's good for safety imo.

Ah yea, I see. So let's add this option.
And when hook doesn't exist and the option is not provided, we can ask the user if he wants to create the hook?

yes, that will be more user friendly :)


UnboundLocalError: local variable 'L' referenced before assignment

When x is not None, in line 448, it does not initialize L, which will throw the error when predict with portfolio type

This should be fixed with https://github.com/bkelly-lab/ipca/commit/333de14fe3d9e4771667fae8476a6b2509370b6b.  Closing.


How to make joins

General info

[X] I checked the troubleshooting page for similar problems

What is your question?
if I have first table "stories" and second table that contain story_id and user_id.  how to select stories that not associated with passed user_id??
Relevant log output (optional)
please give Kotlin example

Did you take a look at the docs: https://supabase.com/docs/guides/database/joins-and-nesting?

Did you take a look at the docs: https://supabase.com/docs/guides/database/joins-and-nesting?

ok I made that
`
supabaseClient.from("stories_and_users")
.select(
Columns.raw(
"stories (id, title, genre, sentence_limit, image, sentence_count)"
)
){
                    filter {
                        neq("user_id", supabaseClient.auth.currentUserOrNull()!!.id)
                    }
                    range(offset.toLong(), (offset+ limit).toLong())
                }.decodeList<StoryDtoWrapper>()

`
But I also need to only rows that sentence_limit < 5,  how to make that??

@BoikoIlya
You can just use the filter lt:
lt("stories.sentence_limit", 5) //You can acccess the joined table by prefixing with the table name

I don't need group by, could you explain how to make this select in Kotlin
SELECT
    stories.id,
    stories.title,
    stories.genre,
    stories.sentence_limit,
    stories.image,
    stories.sentence_count
FROM
    stories
WHERE
    stories.is_done = FALSE
    AND stories.id NOT IN (
        SELECT story_id
        FROM stories_and_users
        WHERE user_id = 'dd47fbbc-71c8-4e35-8b42-f9dafa547a96'
    )

Not sure if that is possible, but you can do two requests or a use database function.

Closing due to inactivity.


golang sql driver connect to clickhouse failed

hi,i am using golang sql driver to connect to clickhouse, an exception ocurred,the golang driver url :https://github.com/kshvakov/clickhouse. can anyone help me ?
beflow is the clickhouse server log.
2018.09.01 08:17:32.252461 [ 20 ]  TCPHandlerFactory: TCP Request. Address: [::ffff:<IP_ADDRESS>]:63036
2018.09.01 08:18:17.761297 [ 20 ]  TCPHandler: Connected Golang SQLDriver version 1.1.0, revision: 54213, database: default, user: default.
2018.09.01 08:18:17.808393 [ 20 ]  ServerErrorHandler: Code: 210, e.displayText() = DB::NetException: Connection reset by peer: while reading from socket ([::ffff:<IP_ADDRESS>]:63036), e.what() = DB::NetException, Stack trace:

/usr/bin/clickhouse-server(StackTrace::StackTrace()+0x16) [0x56d1436]
/usr/bin/clickhouse-server(DB::Exception::Exception(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, int)+0x22) [0x510bcd2]
/usr/bin/clickhouse-server(DB::ReadBufferFromPocoSocket::nextImpl()+0x248) [0x56ee2b8]
/usr/bin/clickhouse-server(DB::TCPHandler::runImpl()+0x57a) [0x2dc4dca]
/usr/bin/clickhouse-server(DB::TCPHandler::run()+0x2b) [0x2dc5acb]
/usr/bin/clickhouse-server(Poco::Net::TCPServerConnection::start()+0xf) [0x58c56af]
/usr/bin/clickhouse-server(Poco::Net::TCPServerDispatcher::run()+0x16a) [0x58c5a8a]
/usr/bin/clickhouse-server(Poco::PooledThread::run()+0x77) [0x5966e97]
/usr/bin/clickhouse-server(Poco::ThreadImpl::runnableEntry(void*)+0x38) [0x5962d58]
/usr/bin/clickhouse-server() [0x938cc0f]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x76db) [0x7f0b1491e6db]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x3f) [0x7f0b140a588f]

beflow is  the golang source code :
package main
import (
"database/sql"
"fmt"
"log"
"github.com/kshvakov/clickhouse"

)
func main() {
connect, err := sql.Open("clickhouse", "tcp://<IP_ADDRESS>:9000?username=&compress=true&debug=true")
if err != nil {
log.Fatal(err)
}
if err := connect.Ping(); err != nil {
if exception, ok := err.(*clickhouse.Exception); ok {
fmt.Printf("[%d] %s \n%s\n", exception.Code, exception.Message, exception.StackTrace)
} else {
fmt.Println(err)
}
return
}
}

@kshvakov

Todo section of readme or go driver by @kshvakov.
can help you debug what's wrong.
P.S. Remove &compress=true from connection string.

I've check that:
package main

import (
        "database/sql"
        "fmt"
        "log"
        "github.com/kshvakov/clickhouse"
)

func main() {
        connect, err := sql.Open("clickhouse", "tcp://<IP_ADDRESS>:9000?username=&compress=true&debug=true")
        if err != nil {
                log.Fatal(err)
        }
        if err := connect.Ping(); err != nil {
                if exception, ok := err.(*clickhouse.Exception); ok {
                        fmt.Printf("[%d] %s \n%s\n", exception.Code, exception.Message, exception.StackTrace)
                } else {
                        fmt.Println(err)
                }
                return
        }
}

And it perfectly works. Please provide the program output (you give only server logs) and check network connection from client to server using clickhouse-client.

@lightee2 Hi, are you connected to the container from the local host or is it remote server?
What version of the ClickHouse server and Go client do you use?
PS: Check the network connection from the client to server using clickhouse-client.

@filimonov @kshvakov
the problem is so strange, i  run  the golang program on the server which is running clickhouse container successfully.,

What platform and golang version do you use? For me it rather looks like something is wrong with golang installation or system inself because on the top of stacktrace there are 2 go core modules (garbage collector and bufio Writer). Normally core modules don't die in a such weird way.

@filimonov thank you for your reply  :)
OS :windows 10 64bit
GO:go version go1.10.3 windows/386
docker + ku8s
Client:
Version:      1.12.6
API version:  1.24
Go version:   go1.7.4
Git commit:   78d1802
Built:        Tue Mar 14 09:47:15 2017
OS/Arch:      linux/amd64
Server:
Version:      1.12.6
API version:  1.24
Go version:   go1.7.4
Git commit:   78d1802
Built:        Tue Mar 14 09:47:15 2017
OS/Arch:      linux/amd64

Yep, i was afraid of something like that :D Windows host, multiple containers in docker, pretty old go version... And I bet containers communicate via windows-host (virtualbox /  Hyper-V) provided network...
It's hard to imagine what exactly went bad there, but I can say that it doesn't look like yandex/ClickHouse or kshvakov/clickhouse issue.
God help you :)

i use telnet to test the remote server port 9000, the result is ok.

golang also connects properly and start communication properly, but dies after few packets. So telnet connection is bad test. You should try to connect using clickhouse-client from one container to another.

@filimonov  @kshvakov
thank you for you all reply,it is my turn to handle my own env problem.

@filimonov the debug mode is ok . so odd


Added product backlog links to README and modified and completed the …

…planning in writing

Added links to product backlog.


Home Assistant uses "unavailable" when app isn't running

If the computer with TeamsStatusPub is rebooting or the app isn't otherwise running, Home Assistant logs the following messages:

[homeassistant.components.rest.data] Error fetching data: http://<IP_ADDRESS>:17493/ failed with
[homeassistant.helpers.template] Template variable error: 'value_json' is undefined when rendering '{{ value_json.busy }}'

This causes the automation to_state to be "unavailable" causing the light.turn_unavailable service to be used which doesn't exist which ends up with the result of the light not being toggled on. This is what we want in the end but it's not elegant and causes a lot of entries in the log.
There should be a fallback to the binary sensor in cases where the computer isn't reachable.

With the 2023.4 release there's a new has_value function that might be relevant here.
https://www.home-assistant.io/blog/2023/04/05/release-20234/#new-has_value-function


fix: policy update and removal of logic for loading multiple entity types

change updatePolicy() to update mandatoryTags and optionalTags arrays for all entities
remove logic for loading all entity types upfront at start

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Can you add a license to this repo please?

Thank you for reminding us; we have added the MIT license file to this repo.


Very sparse occupancy map

Question
Hi! Im trying out wavemap on our drone using an ouster OS0-64 lidar. First of I want to thank you for making it so simple to set up. But one problem I am having which I was unable to find any documentation on is why my resulting point-cloud is so sparse, se the following picture:

The map seems to fill out if I move the drone, but I need it to fill out also when standing still.
Note that in the config (see below) we changed from using outer projection_model to spherical_projector, as the ouster driver is already de staggering the point cloud. Is this correct? Furthermore, what are the elevation and azimuth used for? Id think the point cloud information would be enough?
Runtime information:
Please fill out these questions in case a specific dataset or sensor setup is relevant to your question.

Launch file:

<launch>

  <include file="$(find wavemap_ros)/launch/wavemap_server.launch">
    <arg name="param_file" value="$(find my_package)/config/wavemap.yaml"/>
  </include>

</launch>

Config file:

general:
  world_frame: "map"
  logging_level: debug
  allow_reset_map_service: true

map:
  type: hashed_chunked_wavelet_octree
  min_cell_width: { meters: 0.1 }
  # Her kan man spesifisere min og max log odds

map_operations:
  - type: threshold_map
    once_every: { seconds: 2.0 }
  - type: prune_map
    once_every: { seconds: 10.0 }
  - type: publish_map
    once_every: { seconds: 1.0 }

measurement_integrators:
  ouster_os0: # kan fritt velges, skal henge sammen med "measurement_integrator_names" i inputs
    projection_model:
      type: spherical_projector
      elevation:
        num_cells: 64
        min_angle: { degrees: -45.73 }
        max_angle: { degrees: 46.27 }
      azimuth:
        num_cells: 512
        min_angle: { degrees: -180.0 }
        max_angle: { degrees: 180.0 }
    measurement_model:
      type: continuous_beam
      angle_sigma: { degrees: 0.035 }
      # NOTE: For best results, we recommend setting range_sigma to
      #       max(min_cell_width / 2, ouster_noise) where ouster_noise = 0.05
      range_sigma: { meters: 0.05 }
      scaling_free: 0.2
      scaling_occupied: 0.4
    integration_method:
      type: hashed_chunked_wavelet_integrator
      min_range: { meters: 1.0 }
      max_range: { meters: 15.0 }

inputs:
  - type: pointcloud_topic
    topic_name: "/ouster/points"
    topic_type: ouster
    measurement_integrator_names: ouster_os0
    undistort_motion: true
    topic_queue_length: 1
    max_wait_for_pose: { seconds: 1.0 }
    # reprojected_pointcloud_topic_name: "/wavemap/reprojected_pointcloud"
    # projected_range_image_topic_name: "/wavemap/projected_range_image"

Dataset name [e.g. Newer College Cloister sequence]: Online use
Custom setup:                                        # For online use or personal datasets

depth sensor: Ouster OS0-64
pose source: From custom SLAM algorithm

System information:
Please fill out these questions in case your hardware is relevant to your question. For example, if you would like help to tune wavemap's performance on your robot.

CPU: N/A
GPU: N/A
RAM: N/A
OS: Ubuntu 22, Ros noetic
Wavemap

install: Native
version: 2.0.1

Hi @sverrevr,
Thank you for your question and the detailed explanation, including screenshots!
The reason wavemap needs to (roughly) know what your sensor's projection model is is because it stores the input pointcloud in a look-up table that's organized like a range image (with one 3D ray per pixel). This allows wavemap's integrator to leverage projective integration, which is generally faster and much more efficient than ray tracing, and to update the map hierarchically. As opposed to regular projective integrators, which only store a single range value per pixel, we store a full 3D ray to be less sensitive to calibration errors in the projection model and to work better with undistorted or disorganized (e.g. Livox) pointclouds. It also allows the continuous_beam measurement model to consider exact beam angles when updating each voxel, which improves the reconstruction of thin objects (more info here).
Which beam configuration does your OS0-64 have? And in what mode are you running it (e.g. 1024x10, or 512x20)?
You could also increase angle_sigma, for example to 0.08, to make each LiDAR beam a bit thicker. This improves infilling, especially if the LiDAR has fewer beams or when the robot is standing still.

Hi Victor, thanks a lot for the response. After reading these two comments from you 1, 2
together with your reply now I started to understand how this is working.
Would you say that this interpretaion is correct? :)
A problem when using occupancy voxels is that if an obstacle is much thinner than a voxel, there there will be many more LIDAR beams that traverse through the voxel than reflect innside it. This makes the voxel conventionally evaluate to empty, even though there is something there and we detected it.
To handle this, when using "continuous_beam" measurement model, wavemap will not consider all LIDAR beams that go through the voxel, only those close enough to the center of the voxel. Close enough is defined as 6beam width at that distance, which should be 6tan(angle_sigma). So for a wall perpendicular to the drone if the angle_sigma = angle_between_beams/6 then there should be no holes.
I think this sounds like a smart solution as when the drone moves around it will fill potential holes.
We are using the lidar in 512x10 mode. Setting the angle_sigma to 0.7 made the holes few enough to not be a problem.

Yes, exactly :)
Did you mean 0.07 instead of 0.7? Theoretically, an angle_sigma = 90 deg / (2 * 6 * (64 - 1)) ~= 0.12 deg should be enough to avoid all holes. In practice, I'd set it slightly lower to avoid obstacles from getting too fluffy.

Yes, i meant 0.07 :)
But what happens with obstacles thinner than a voxel, if they do not alight with the voxel center, then they would never be detected will they?

Yes, that's right. With any discretization, there's always a fundamental trade-off between the chosen approximation order (e.g. constant, linear, or higher-order functions) and resolution (or, more generally, the number of coefficients/weights/params). Higher-order approximations can represent details with sub-voxel accuracy, but they also increase the cost of storing and updating each voxel and performing inference. More extreme examples are Hilbert Maps, GPOMs, and NeRFs, which can create non-voxelized, continuous maps but are generally expensive. In wavemap, we opt for a relatively low approximation order without sub-voxel details but with very high computational efficiency and the added flexibility of multi-resolution. For a given computational budget, it can therefore map at a relatively high resolution, which in turn yields good accuracy :)

Makes sense :) Thanks for the help!

@sverrevr, I realized I forgot to mention this earlier, but since you mentioned in #75 that computational efficiency is important to you, I’d recommend using the dedicated ouster_projector model when working with an Ouster sensor. While it may not significantly improve map accuracy, it should help enhance computational efficiency.


Including Framework dependencies

I had to include a dependency in the build.gradle file at framework/android/build.gradle like so to get push notification support working.
compile 'com.google.android.gms:play-services-gcm:8.4.0'
The issue I was having was that compilation was failing because a plugin I'm using adds the following line in AndroidManifest.xml in manifest/application:
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />

Do you know of a better way to do this that doesn't require modifying this package's build.gradle? I could not figure out how to add it to the React Native project's build.gradle in a way that it would be available during compilation.

@c-h- Is there a link to the plugin you are using ? If this works with Cordova, it should technically work with ReactNative too, unless there is a bug.
In case of this adapter, we have an additional AndroidManifest.xml that is merged with the project's manifest.

Yea the plugin is here: https://github.com/UpChannel/pushwoosh-phonegap-plugin
The XML is in plugin.xml: https://github.com/UpChannel/pushwoosh-phonegap-plugin/blob/master/plugin.xml
I'm not sure if it's a bug or not, but without modifying the build.gradle of react-native-cordova-plugin, compilation would fail saying that @integer/google_play_services_version was not available. Including the line in build.gradle makes it available.
I hope that makes some sense - I'm a bit out of my comfort zone when it comes to gradle.

@c-h- I was able to reproduce the error. Looks like the framework element in the plugin.xml is not getting  picked up.
Here is how Cordova is supposed to deal with it - https://github.com/apache/cordova-lib/blob/9f630271d9c02824c0031ea4cdc0e4955b53d9e2/cordova-lib/src/plugman/platforms/android.js#L117

More analysis, and looks like this is something that Cordova does. For each of those dependencies, it has a project.properties. These are then moved to the appropriate gradle files using a prepBuild step.
I would need to implement this, for the plugin to be supported.

This almost works, except for this issue.
Once the plugin fixes the issue - i.e. removes the custom gradle file, you should be able to use it. To test for now, you could look for node_modules/react-native-cordova-plugin/platforms/android/pushwoosh-cordova-plugin/*.gradle and make that an empty file. Once the pushwoosh bug is fixed, you will no longer need this hack, and your code should continue working.

Awesome!! Thanks for all the support. I'll comment back with my results.

@axemclion Installing straight from github URL so I can use the framework support you added in your last commit, I could not get a project to build. I should mention that this test was not in a fresh React Native project, it was in a pretty complex project. But the only change I made was uninstalling the npm version of this package and then installing via git url.
This is the error I was getting:
[23:14:52] Failed to notify ProjectEvaluationListener.afterEvaluate(), but primary configuration failure takes precedence.
[23:14:52]
java.lang.IllegalStateException: buildToolsVersion is not specified.
	at com.google.common.base.Preconditions.checkState(Preconditions.java:176)
	at com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.java:599)
	at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:566)
	at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:563)
	at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:55)

To get it to build, I commented out this line of build.gradle that you added in 8942fb03bf8e60d50caa76ed79aa56c785f5799a
// apply from: "$projectDir/../../platforms/android/plugin-build.gradle"

This could be due to the fact that I not not cleaning the older version. The issue here was possibly that the frameworks were already present from the previous build.
Could you delete the node_modules/react-native-cordova-plugin/platforms directory and then add your git URL ? will that work ?

Closing this issue since there is no more work for this specific issue.
If there is an issue with deleting and adding a plugin again, we should open another issue.


lock is not released

Sorry if i misunderstand something, but here i see that lock is aquired in this line:
https://github.com/espressif/esp-idf/blob/80c5547b971128fdecbbcf6d8178196d35a15b73/components/bt/bt.c#L965
but is released only when bt controller cant be enabled, here:
https://github.com/espressif/esp-idf/blob/80c5547b971128fdecbbcf6d8178196d35a15b73/components/bt/bt.c#L993-L1007
Should not be released also in case of enabling controller without errors, in here:
https://github.com/espressif/esp-idf/blob/80c5547b971128fdecbbcf6d8178196d35a15b73/components/bt/bt.c#L1010

Power management lock is taken here to prevent APB frequency from being reduced while BT is used. So the usage appears to be correct.
At some point, BT code will support reducing APB frequency in BT modem sleep mode. In this case PM lock will also be released on entry to the modem sleep mode.

Ok, thanks


Double quotes in material_int line 2 static

link rel="stylesheet" type="text/css" href="{% static "material/css/robotofix.css" %}"
the robotofix.css must have single quotes around it as it is inside the static tag.  Using double quotes is making another GET request to the server.
This is from django
[09/Mar/2016 00:02:14] "GET /books/account/create/ HTTP/1.1" 200 6361
[09/Mar/2016 00:02:15] "GET /static/material/css/jquery.datetimepicker.css%20 HTTP/1.1" 200 15007
[09/Mar/2016 00:02:15] "GET /static/material/css/forms.css%20 HTTP/1.1" 200 3396
Not Found: /books/account/create/{% static
[09/Mar/2016 00:02:15] "GET /books/account/create/%7B%%20static HTTP/1.1" 404 2800

Ooops
Thank you!


Options passed to standard-engine should not be overridden by package.json

As per https://github.com/Flet/standard-engine/pull/134#discussion_r85782733 globals, plugins and environments specified in package.json should not override the options passed into standard-engine itself.

Just confirming this is an issue.

See comment https://github.com/Flet/standard-engine/pull/146#issuecomment-272422326


Batching rule for GRU cell

Hi, I have a GRU model and want to calculate the jacobian of the model with functorch. But there is a performance drop because we have not yet implemented the batching rule for aten::_thnn_fused_gru_cell and aten::_thnn_differentiable_gru_cell_backward.
Thanks if anyone can prioritize its implementation.
/home/haodong/miniconda3/envs/pose/lib/python3.8/site-packages/torch/nn/modules/rnn.py:1279: UserWarning: There is a performance drop because we have not yet implemented the batching rule for aten::_thnn_fused_gru_cell. Please file us an issue on GitHub so that we can prioritize its implementation. (Triggered internally at  /__w/functorch/functorch/functorch/csrc/BatchedFallback.cpp:83.)
  ret = _VF.gru_cell(
/home/haodong/miniconda3/envs/pose/lib/python3.8/site-packages/torch/autograd/__init__.py:276: UserWarning: There is a performance drop because we have not yet implemented the batching rule for aten::_thnn_differentiable_gru_cell_backward. Please file us an issue on GitHub so that we can prioritize its implementation. (Triggered internally at  /__w/functorch/functorch/functorch/csrc/BatchedFallback.cpp:83.)
  return Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass

Here is my model.
class Transition(nn.Module):
    def __init__(self, in_features, hidden1=256, hidden2=256):
        super(Transition, self).__init__()
        self.in_features = in_features
        self.gru = nn.GRUCell(in_features, hidden1)
        self.fc1 = nn.Linear(hidden1, hidden2)
        self.fc2 = nn.Linear(hidden2, in_features)

    def transition(self, mu, hidden):
        # mu: (batch, feature)
        hidden = self.gru(mu, hidden)
        # out: (batch, feature), choose the last time step
        out = F.relu(self.fc1(hidden))
        out = self.fc2(out)
        return mu + out, hidden

    def forward(self, l_mu, l_var, hidden):
        ###############################################
        # udpate mu
        ###############################################
        new_mu, hidden = self.transition(l_mu, hidden)

        ###############################################
        # update covariance
        ###############################################
        # calculate jacobian matrix
        J = vmap(jacrev(self.transition, argnums=0))(l_mu, hidden)[0]
        # covariance matrix of l t+1
        new_var = torch.matmul(torch.matmul(J, l_var), J.permute(0, 2, 1))

        return new_mu, new_var, hidden

This may be a bit difficult to do in a performant manner. One thing we could do is decompose the GRU and rely on AOTAutograd to generate a fast kernel for this. Not sure how feasible that is, cc @Chillee ?

I suspect that would be more likely, yeah.

potentially related: https://github.com/pytorch/pytorch/issues/82577, cc @samdow


The last run tag has some problem

when i run some agent,i start to click another target,when i come back to the target agent tag again,the agent's last run is still never,but i had run it just now.And is the last run tag work with the target  i open now but all the other target?Why when i open another target that i added new,the last run of the agent had been there but not the never?

Issues with the SignalR

this is not happenig to me


Change Error type so program doesn't quit when labels are too high

Checklist
GitHub

[x] I've given this PR a concise, self-descriptive, and meaningful title
[x] I've linked relevant issues in the PR body
[x] I've applied the relevant labels to this PR
[x] I've assigned a reviewer

PR contents

[x] I've consulted SCT's internal developer documentation to ensure my contribution is in line with any relevant design decisions
[ ] I've added relevant tests for my contribution
[ ] I've updated the relevant documentation for my changes, including argparse descriptions, docstrings, and ReadTheDocs tutorial pages

Description
In sct_label_vertebrae, there is an exception designed for very high-value labels to provide the user the opportunity to label the lumbar part of the vertebrae. This is needed because our PAM50 template only has labels from 1 to 20.
This PR changes the error type for the exception. It is needed because the try statement throws a ValueError.
Linked issues
fix #2607

Ah, my apologies, there already are segmented spinal cord images in sct_testing_data. They're just named differently than t2_seg.nii.gz.
In that case, I think it would be good to write a test for this.

I'll get on it.

@joshuacwnewton done in 84e9ece


Port to NET Core

Targets both .NET Core Standard and .NET Framework 4.5+
Motivations

Prep project for consumption by .NET Core libraries and applications
Add support for non-Windows or .NET Framework platforms
Maintain support for existing .NET Framework 4.5+ applications
Single Repo for all targets
Better nuget tooling

Breaking Changes

(DEV) Must be running VS2015 with Microsoft .NET Core RC2 tools installed (this will also install the .NET Core SDK)
IdGen.Configuration namespace and IdGenerator.GetFromConfig not supported on NET Core Standard, as System.Configuration has been deprecated and will not be migrated to .NET Core.

TODOs

[ ] Fix appveyor build script to use dotnet restore before building and running tests.
[ ] Create new or update nuget publishing tooling using dotnet publish
[ ] Remove .nuget (thankfully not needed anymore)
[ ] Ensure doc project works as expected
[ ] Investigate if there's anything to do to replace IdGen.Configuration API for .NET Core users
[ ] Let project.json version the assembly (remove AssemblyVersion etc. from AssemblyInfo.cs)
[ ] Create test running task to make it easier to run tests for all supported frameworks

Misc.

Use compilation directives to vary source based on target framework: #if NET45 ... #else .. #endif
IdGenTests must target .NET Framework 4.5.1 because of tool dependendencies. Shouldn't have any effect on consumers.
Tests can be run by using the dotnet test CLI in the IdGenTests folder:

dotnet test will build and run the tests for .NET Core Standard
dotnet test -f net451 will build and run tests for .NET Framework 4.5.1

@RobThree have you looked into merging this yet? i was about to try to use this project but...
Actually just found there's a fork from someone else https://github.com/joshclark/Flakey

Haven't looked into it thoroughly. Firstly because I have near-zero experience with .Net Core so I'm not sure wether all of this is anything near 'correct'; secondly because it has still a bunch of "todo's" that need to be looked at and thirdly because since this PR a lot has changed.
I didn't know about the fork; a heads-up would've been nice and appreciated; not sure why @joshclark chose not to.

@RobThree, sorry about the lack of notice.  I wasn't trying to be rude and I didn't mean any offense by it.

@joshclark No offense taken, nor do I think it was "rude". It's just nice to know when your project is forked; maybe we can actually help each-other on this-or-that.

I will update the PR with the latest from upstream master. Most of those items in my todo I can offer opinion or assistance on, but either can't do myself (I don't have access to the repo's appveyor config, nor do I know appveyor at all) or requires the input of the owner @RobThree (for example, how to make it work with how you build, test, and publish, and how to replace the existing doc project since AFAIK it won't work in VS2015 or with XPROJ).
I'm happy to explain the particulars about the items in the TODO to find the answer and get this merged. .NET Core is an important development in the .NET ecosystem, and unless you see this only being a purpose-built or legacy (by that I mean, plain old .NET Framework only) package, the sooner we roll support for .NET Core the better (and more popular) it'll be.

A lot has changed since this PR in DotNet Core. I'd love to port to DotNet Core but I think another stab at it would be warranted.


interpreter cannot load model correctly (xtensa)

Hello,
I'm trying to test micro speech test(/tensorflow/lite/micro/examples/micro_speech).
It works fine when I do test in linux with below command :
make -f tensorflow/lite/micro/tools/make/Makefile TARGET=xtensa OPTIMIZED_KERNEL_DIR=xtensa TARGET_ARCH=hifi4 XTENSA_TOOLS_VERSION=RI-2021.8-linux XTENSA_CORE=hifi4_ss_spfpu_7 test_micro_speech_test
But in xplorer of xtensa, it failed after interpreter.AllocateTensors();
It is suppose to load model with input type int8 but it always assigned as float32.
Plus, it cannot read size or data of input dims and because of incorrect model loading,
the test eventually failed with exception.
I used same source code:
micro_speech_test.cc
https://github.com/tensorflow/tflite-micro/tree/main/tensorflow/lite/micro/examples/micro_speech
Does anybody know about this issue and how to resolve this?

Hi HiFi users,
I resolved this issue with additional compile symbol 'TF_LITE_STATIC_MEMORY'.
you can add this as addl compiler '-DTF_LITE_STATIC_MEMORY' for xt-run command.
If you made other class to call micro interpreter you must assign tensor arena array as static.
Otherwise, you would get out of bound exception.
:)

you might need to use tensor_arena buffer as static if you separate functions.

Declaring the tensor arena buffer as static does not solve the issue.
Sent from my iPhone
On May 21, 2023, at 7:45 PM, juneee.kim @.***> wrote:

you might need to use tensor_arena buffer as static if you separate functions.
—
Reply to this email directly, view it on GitHubhttps://github.com/tensorflow/tflite-micro/issues/1823#issuecomment-1556238329, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A7YSF7ONEFBPTXAALBSVBIDXHJIEBANCNFSM6AAAAAAV2GELGY.
You are receiving this because you commented.Message ID: @.***>


Don't Merge! PR real time test for webhook case

Docs Build status updates of commit 5c5df8c:
:clock10: Full build: the average full build time is 5 min(s) 56 sec(s), this is based on the last 685 build(s) for this repository.

Docs Build status updates of commit 5c5df8c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details
Dependent Files

docs-ref-conceptual/testing.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)

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


No data / metrics in Prometheus, error 404 for localhost:8080

I created the kube-eagle with your helm chart.
I have a Prometheus operator created with stable/prometheus-operator chart.
The pod logs :
{"level":"info","msg":"Listening on <IP_ADDRESS>:8080","time":"2019-03-04T13:00:35Z"}
{"level":"info","msg":"Creating InCluster config to communicate with Kubernetes master","time":"2019-03-04T13:00:35Z"}

When I port-forward : kubectl port-forward kube-eagle-69c44869d7-qw7sr 8080:8080
http://localhost:8080 => error 404
http://localhost:8080/health => HTTP 200, text is "Ok"
When I look into my Prometheus, I don't have any metric labeled "eagle_*"
Do I have to add some target in my Prometheus to scrape the kube-eagle pod ?

same here {"level":"info","msg":"Listening on <IP_ADDRESS>:8080","time":"2019-03-04T13:36:18Z"}
{"level":"info","msg":"Creating InCluster config to communicate with Kubernetes master","time":"2019-03-04T13:36:18Z"}
panic: the server could not find the requested resource (get pods.metrics.k8s.io)
goroutine 7 [running]:
github.com/google-cloud-tools/kube-eagle/vendor/github.com/weeco/kube-eagle/pkg/metrics_store.Collect()
/go/src/github.com/google-cloud-tools/kube-eagle/vendor/github.com/weeco/kube-eagle/pkg/metrics_store/metrics_store.go:59 +0x386
main.main.func1()
/go/src/github.com/google-cloud-tools/kube-eagle/main.go:56 +0x32
created by main.main
/go/src/github.com/google-cloud-tools/kube-eagle/main.go:52 +0x47

Does this work for you?
kubectl get --raw /apis/metrics.k8s.io/v1beta1
If not, you need to set up metrics-server.

See to yes :
{"kind":"APIResourceList","apiVersion":"v1","groupVersion":"metrics.k8s.io/v1beta1","resources":[{"name":"nodes","singularName":"","namespaced":false,"kind":"NodeMetrics","verbs":["get","list"]},{"name":"pods","singularName":"","namespaced":true,"kind":"PodMetrics","verbs":["get","list"]}]}

Same issue here.
Here's metrics-server logs:
metrics-server-5b5bfd85cf-dzml5 metrics-server E0304 23:30:52.828598       1 reststorage.go:144] unable to fetch pod metrics for pod kube-system/tiller-deploy-dbb85cb99-t5djw: no metrics known for pod
metrics-server-5b5bfd85cf-dzml5 metrics-server E0304 23:30:52.828611       1 reststorage.go:144] unable to fetch pod metrics for pod default/registry-docker-registry-84865c85c4-9w8ng: no metrics known for pod
metrics-server-5b5bfd85cf-dzml5 metrics-server E0304 23:30:52.828615       1 reststorage.go:144] unable to fetch pod metrics for pod kube-system/kubernetes-dashboard-cb6749dc6-94rqq: no metrics known for pod
metrics-server-5b5bfd85cf-dzml5 metrics-server E0304 23:30:52.828618       1 reststorage.go:144] unable to fetch pod metrics for pod eagle/kube-eagle-8654c7f9c4-hlj89: no metrics known for pod
metrics-server-5b5bfd85cf-dzml5 metrics-server E0304 23:30:52.828622       1 reststorage.go:144] unable to fetch pod metrics for pod eagle/prometheus-node-exporter-2jz94: no metrics known for pod
metrics-server-5b5bfd85cf-dzml5 metrics-server E0304 23:30:52.828626       1 reststorage.go:144] unable to fetch pod metrics for pod eagle/prometheus-pushgateway-75c4db7866-nhz88: no metrics known for pod
metrics-server-5b5bfd85cf-dzml5 metrics-server E0304 23:30:52.927754       1 reststorage.go:129] unable to fetch node metrics for node "admiring-matsumoto-u187": no metrics known for node
metrics-server-5b5bfd85cf-dzml5 metrics-server E0304 23:30:52.927777       1 reststorage.go:129] unable to fetch node metrics for node "admiring-matsumoto-u1nt": no metrics known for node
metrics-server-5b5bfd85cf-dzml5 metrics-server E0304 23:30:52.927782       1 reststorage.go:129] unable to fetch node metrics for node "admiring-matsumoto-u1n6": no metrics known for node

@alfonmga Thanks for sharing your solution.
@mleneveut On / there shouldn't be a response. The path to the metrics endpoint is /metrics. Did you use the correct path for the metrics endpoint?

I updated to 1.1.0.
I can see metrics on the /metrics endpoint (the doc says to port-forward and check / and /health, you should change that to /metrics)
eagle_node_resource_allocatable_cpu_cores{node="aks-nodepool1-14107490-0"} 2.0
eagle_node_resource_allocatable_cpu_cores{node="aks-nodepool1-14107490-1"} 2.0
eagle_node_resource_allocatable_cpu_cores{node="aks-nodepool1-14107490-3"} 2.0

I added the 2 flags to my metrics-server:0.2.1 (I didn't have the cert errors)
I don't see the metrics in my Prometheus, only on the /metrics endpoint of kube-eagle.

Oh I see that's part of the helm chart output. I will update it. Thanks for the heads up. I believe your issue is solved now, right?

Unfortunately no. I can see the metrics on the kube-eagle/metrics, but in my Prometheus, I don't have any eagle* metrics.
Do I have to do any configuration in my Prometheus so that it scrapes the kube-eagle ? I use the stable/prometheus-operator helm chart. The kube-eagle is deployed in the same namespace as the prometheus.

I am not familiar with your prometheus configuration, but if you are running the prometheus operator you might need to add the service monitor as described in the helm chart PR here: https://github.com/google-cloud-tools/kube-eagle-helm-chart/pull/1

Is this issue resolved ?, i still get 404 in the latest helm chart deployment. Is there any work around ?

@karthik101 can you check “Kube Eagle on ORACLE  Kubernetes Engine” by Saiyam Pathak https://link.medium.com/a/key_live_ofxXr2qTrrU9NqURK8ZwEhknBxiI6KBm?%24identity_id=660859759704224905&feature=Share&type=0&duration=0&source=android&data=eyIkb2dfdGl0bGUiOiJLdWJlIEVhZ2xlIG9uIE9SQUNMRSAgS3ViZXJuZXRlcyBFbmdpbmUiLCIkY2Fub25pY2FsX2lkZW50aWZpZXIiOiJwXC9mMmM4YTM3MzA1NjUiLCIkY2Fub25pY2FsX3VybCI6Imh0dHBzOlwvXC9tZWRpdW0uY29tXC9vcmFjbGVkZXZzXC9rdWJlLWVhZ2xlLW9uLW9yYWNsZS1rdWJlcm5ldGVzLWVuZ2luZS1mMmM4YTM3MzA1NjUiLCIkb2dfZGVzY3JpcHRpb24iOiJFdmVyeWJvZHkgaXMgYXdhcmUgb3IgYXQgbGVhc3QgaGVhcmQgb2Ygb2YgUHJvbWV0aGV1cyBhbmQgR3JhZmFuYSB3aGljaCBpcyB0aGUgbW9zdCB3aWRlbHkgdXNlZCB0b29scyBmb3IgbW9uaXRvcmluZyB0aGUga3ViZXJuZXRlc%2BKApiIsIiRvZ19pbWFnZV91cmwiOiJodHRwczpcL1wvY2RuLWltYWdlcy0xLm1lZGl1bS5jb21cLzEqeGJWTWwxblJ3d2V4UUhiQjE1eEczUS5wbmciLCIkcHVibGljbHlfaW5kZXhhYmxlIjoidHJ1ZSIsIiRkZXNrdG9wX3VybCI6Imh0dHBzOlwvXC9tZWRpdW0uY29tXC9vcmFjbGVkZXZzXC9rdWJlLWVhZ2xlLW9uLW9yYWNsZS1rdWJlcm5ldGVzLWVuZ2luZS1mMmM4YTM3MzA1NjUiLCIkZGVlcGxpbmtfcGF0aCI6InBcL2YyYzhhMzczMDU2NSIsIiRhbmRyb2lkX3VybCI6Imh0dHBzOlwvXC9tZWRpdW0uY29tXC9vcmFjbGVkZXZzXC9rdWJlLWVhZ2xlLW9uLW9yYWNsZS1rdWJlcm5ldGVzLWVuZ2luZS1mMmM4YTM3MzA1NjUiLCIkaW9zX3VybCI6Imh0dHBzOlwvXC9tZWRpdW0uY29tXC9vcmFjbGVkZXZzXC9rdWJlLWVhZ2xlLW9uLW9yYWNsZS1rdWJlcm5ldGVzLWVuZ2luZS1mMmM4YTM3MzA1NjUiLCJzb3VyY2UiOiJhbmRyb2lkIn0%3D and see if you missed anything.

@saiyam1814  Thanks, next time i better read the description first :D .
re-edit your comment with this : https://medium.com/oracledevs/kube-eagle-on-oracle-kubernetes-engine-f2c8a3730565
Can you re-arrange the commands as they were joined into the sentences.

Yeah my bad I directly copied from my medium post and pasted , and it turned out like this

what was the resolution?
I just deployed kube-eagle on my k8s and I encounter the same issue. metric server is deployed and when directly accessing the /metrics endpoint it gives me the data, but it is not scraped automatically. Nothing relevant in the metric server logs.

Do you have the  "eagle_*" label back ?


std-env can't be processed with latest vite

Issue is reproduced when building with latest vite and importing from std-env. It comes from the vite define plugin which is using esbuild to process the file.
Originally identified in https://github.com/nuxt/ecosystem-ci/actions/runs/7233707958/job/19709289171.
Minimal Nuxt reproduction: https://stackblitz.com/edit/github-mupbks
Minimal Vite reproduction: https://stackblitz.com/edit/vitejs-vite-ndari4
Upstream bug report: https://github.com/vitejs/vite/issues/15367
cc: @pi0, @antfu

Resolved in latest esbuild via https://github.com/evanw/esbuild/pull/3554.


Fixed #33562 -- Made HttpResponse.set_cookie() support timedelta for the max_age argument.

See https://code.djangoproject.com/ticket/33562#ticket
The fix is just two lines added to set_cookie. I've also added:

tests for set_signed_cookie, which passes arguments through to set_cookie
tests for get_signed_cookie, which were passing previously, for symmetry.

In the docs I've put timedelta first as the suggested object, because I think that is a better pattern, there is less confusion over units.
The second commit also fixes a very small corner case where we would silently ignore the max_age argument.

Not related to this specifically, but why django sets the max_age on expires?
I don't know what is the right quorum to ask this question. :eyes:

I don't know what is the right quorum to ask this question.

Hi @Kludex, according to your preferences you could ask this question in the Django forum or mailing list


Is there new features in developering?

i'm very intresting in stackstorm, and i want to know is there any new feature in developing?
for example ,can stackstrom support define which actionrunner to run the job.

No it can't do that yet. AFAIK there are no plans in the near future.


Add Tedium.co

Tedium straddles the line between newsletter and blog, so hopefully you’ll take us. :)

thanks for the contribution but i think doesn't fit the format of the project.

Are you sure? I have written about the specific topic of bringing back independent blogging many times and self-host everything for this reason.
See: https://tedium.co/2019/01/01/2019-independent-blogging-trends/

Tedium has a lot of technical content (more on average than many of the blogs already featured), so it seems like it ought to be a good fit.

I'm apologize for any inconvenience caused. I was a little tired today :/ I missed it because you wrote in a newspaper style. Thanks for the contribution.

Thank you for hearing me out, I appreciate it.

I can't thank you enough. I'm having fun in the retro mood right now!


feat: Implement experimental elinux support

This pull request introduces experimental eLinux support to Rinf. While there are still some modifications needed on the Flutter-eLinux side, I have initiated a discussion on this issue: Issue #270.
Given the stringent performance requirements of embedded environments, the performance advantages of Rust can significantly benefit embedded development.

Actually, Cargokit is not a Rinf product. Cargokit is maintained as a separated project by @irondash.

https://github.com/irondash/cargokit

Rinf simply uses Git subtree to use Cargokit as part of the package. What do you think about creating a PR at Cargokit? I will be able to included in Rinf as soon as it gets merged over there.

Sure :P

I've also created a PR at Cargokit to assist with the process
* [Use `flutter test` in CI irondash/cargokit#80](https://github.com/irondash/cargokit/pull/80)

Thank you!


Explaining LSTM predictions

Hello Scott,
I have an LSTM network that I need to explain its predictions, is this currently possible? I don't see an example implemented for Sequence models.

Hello Scott,
Thanks a lot for your wonderful package with Shap !
I receive this message when running the LSTM example:
"AssertionError: Minimum is not known to be either linear or a supported non-linearity! Please post this as a GitHub issue so Minimum can potentially be included in the list of supported ops."
Do you have an idea of how I could fix it ?
Best,
Pierre

@pbcacao that will be fixed in v0.23.

Thanks! Would I need to pad sentences/sequence to the longest sentence/sequence for lstm saliency for use with SHAP?

You would unless you want to use a fixed zero background which could be set to the size of each sequence you are explaining.

Hello Scott,
I'm trying to use SHAP to explain predictions using a Keras/LSTM models.
The input time-series data is (n_samples, n_timesteps, n_features).  The output is Dense(1), just predicting a number.
explainer = shap.DeepExplainer((lime_model.layers[0].input, lime_model.layers[-1].output), train_x)
This generates the error:
AssertionError: The model output must be a vector or a single value!
The last layer is a tensor, so I also tried using to get the shape of the output:
explainer = shap.DeepExplainer((lime_model.layers[0].input, lime_model.layers[-1].output[2]), train_x)
This resolves the error, but it results in the explainer having all zero values, so I'm not confident this is the correct way to solve this issue.
Do yo have any suggestions to get SHAP explaining Keras/LSTM single value predictions?
Thank you, Jason.

@blaklodge can you print the shape of your last layer (lime_model.layers[-1].output)?

Hi Scott,
I was able to figure out the issue with my Keras/LSTM with one output (Dense(1)).
I am now onto trying to get SHAP to work with my Keras/LSTM time-series model that outputs a sequence, Dense(3).
I get the same error:
AssertionError: The model output must be a vector or a single value!
when I print the output of the shape of the last layer, it is:
(?, 12, 3)
Here is the code where I am calling the shap.DeepExplainer:
explainer = shap.DeepExplainer((model.layers[0].input, model.layers[-1].output), train_x)
Thank you so much for your help!

Right now DeepExplainer only handles vector outputs, so in order to use it you will need to reshape (or slice) the output vector to only have 1D output (2D when you consider the number of samples).

Hi Scott,
I was able to figure out the issue with my Keras/LSTM with one output (Dense(1)).

@blaklodge how did you solve it? I have the same output, and the same error.
Last layer output:
print(best_model.layers[-1].output)
Tensor("dense_32/BiasAdd:0", shape=(1, 1, 1), dtype=float32)
Error:
explainer = shap.DeepExplainer(best_model, X_tr)
AssertionError: The model output must be a vector or a single value!
@slundberg any insights perhaps?

Hi Scott,
I was able to figure out the issue with my Keras/LSTM with one output (Dense(1)).

@blaklodge how did you solve it? I have the same output, and the same error.
Last layer output:
print(best_model.layers[-1].output)
Tensor("dense_32/BiasAdd:0", shape=(1, 1, 1), dtype=float32)
Error:
explainer = shap.DeepExplainer(best_model, X_tr)
AssertionError: The model output must be a vector or a single value!
@slundberg any insights perhaps?

I have the same error when handling GRU/LSTM sequence to sequence prediction. The output is a sequence and I get the error:
AssertionError: The model output must be a vector or a single value!
How can I fix this please?

Did anyone find a solution here?


C++ Example in the docs shows old enum name

Hi,
your documentation page, specifically the page https://github.com/gtreshchev/RuntimeAudioImporter/wiki/Example-for-importing-audio-data shows a C++ example that is outdated: it references an enum named ETranscodingStatus that has been renamed to ERuntimeImportStatus in commit 185d59b on 2023/01/23. Could you please fix it?
Cheers
Willy

Updated, thanks for letting me know.


MobileSafari/iOS 5 proportions

Hey Scott - using iOS 5, Mobile Safari is stretching the backstretch image to the full height of the page content, not the height of the viewport. So if I have a very long page, the image gets zoomed incredibly large in a fixed position, making it somewhat ridiculous.
Is this a known issue?

Here's an attempt at a version that detects fixed positioning:
https://raw.github.com/gist/1755245/c8a7e44ae2251921e7a6b6593f00ecf50600a510/gistfile1.js
Would you mind checking to see if this works for you? If so, would you have some time to help me cross-browser test?

Sure thing Scott, I'll try this first thing tomorrow. Thanks.
On Feb 6, 2012, at 4:47 PM, Scott<EMAIL_ADDRESS>wrote:

Here's an attempt at a version that detects fixed positioning:
https://raw.github.com/gist/1755245/c8a7e44ae2251921e7a6b6593f00ecf50600a510/gistfile1.js
Would you mind checking to see if this works for you? If so, would you have some time to help me cross-browser test?

Reply to this email directly or view it on GitHub:
https://github.com/srobbin/jquery-backstretch/issues/90#issuecomment-3838167

OK, this version gets close on MobileSafari/iOS5, with two issues:

The initial height of the window is actually 59px smaller than its height after scrolling, due to the address bar scrolling away as you scroll down. So although the image fills the initial window height, it soon has a 59x gap below it.
If centeredX is true, there is still a small gap (about 20px) on the right-hand side of the image. Setting centeredX to false makes it appear as it should.

I tested this version in desktop versions of Safari, Chrome, and Firefox, and all still worked as expected.

Thanks for doing all of this testing. Is the page you're testing on publicly viewable? If so, would you mind send a link to me?

It's not, but I'll upload a test. Going into a meeting now, but in a couple of hours I can get to it.

OK, so the issue with the right-hand margin must be due to something specific in my site's markup or CSS, as the test page I created doesn't exhibit this. So I'll work on that. But the issue with iOS scrolling and the subsequent space below the image remains.
http://amphibian.info/backstretch.html

Yeah, I did some more investigating. The method I was using to query for fixed positioning isn't right.

Any update on finding the correct method for querying fixed positioning?


Use of unresolved identifier 'JSONEncoding' Swift 4 [POST Request]

Hello, I am trying to do a POST request with RxAlamofire but I get an error here. I didn't find any POST example in the sample even. I am doing following:
func someFunction() -> Observable<Bool> {
return Observable<Bool>.create { observer in
            RxAlamofire.requestJSON(.post, ApiConstants.MY_URL, parameters: nil, encoding: JSONEncoding.default, headers: nil)
                .subscribe(onNext: { (r,json) in

                }, onError: { error in
                    observer.onError(error)
                })
        }

}

But I get an error saying Use of unresolved identifier 'JSONEncoding' Swift 4. Please let me know how can I do POST request?

@sam0829 Did you import Alamofire at the top of your file? If that's correct, please post your Podfile.lock here.

Encoding is of type URLEncoding, not JSONEncoding : https://github.com/RxSwiftCommunity/RxAlamofire/blob/c2fdccf8058d1a61f5fbb540054c21372de1151d/Sources/RxAlamofire.swift#L248

@freak4pc URLEncoding.default is just the default argument. As far as I rememberJSONEncoding.default is a valid argument as it should implement ParameterEncoding as well.

Yes, importing Alamofire solved the error. Sorry I am pretty new in iOS development & didn't knew JSONEncoding was part of the Alamofire. Thanks for quick reply & btw I had to use URLEncoding.default because if I use JSONEncoding.default, API was not getting the parameters I passed, but when I used URLEncoding.default, API was happy.


build: use crates.io

This changes to use crates.io to avoid any failure in CI.
Signed-off-by: Liu Bo<EMAIL_ADDRESS>

Seem you missed to commit the actual changes.


10.0.0

10.0.0 - 06 July 2016
Breaking changes

Removed autoscaler v1beta2 API
Removed coordinate v1 API
Removed serviceregistry alpha API

Backwards compatible changes

Added cloudbuild v2 API
Added accounts.filterSets.getBidMetrics to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.list to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.get to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.create to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.getImpressionMetrics to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.delete to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.responsesWithoutBids.list to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.responsesErrors.list to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.losingBids.list to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.filteredBids.list to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.filteredBids.creatives.list to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.filteredBids.creatives.details.list to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.filteredBids.details.list to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.filteredImpressions.list to adexchangebuyer2 v2beta1 API
Added accounts.filterSets.filteredRequests.list to adexchangebuyer2 v2beta1 API
Added enterprises.acknowledgeNotificationSet to androidenterprise v1 API
Added enterprises.completeSignup to androidenterprise v1 API
Added enterprises.generateSignupUrl to androidenterprise v1 API
Added enterprises.getServiceAccount to androidenterprise v1 API
Added enterprises.pullNotificationSet to androidenterprise v1 API
Added products.unapprove to androidenterprise v1 API
Added serviceaccountkeys.delete to androidenterprise v1 API
Added serviceaccountkeys.insert to androidenterprise v1 API
Added serviceaccountkeys.list to androidenterprise v1 API
Added users.delete to androidenterprise v1 API
Added users.generateAuthenticationToken to androidenterprise v1 API
Added users.insert to androidenterprise v1 API
Added users.patch to androidenterprise v1 API
Added users.update to androidenterprise v1 API
Added users.settings.getAutoForwarding to gmail v1 API
Added users.settings.getImap to gmail v1 API
Added users.settings.getPop to gmail v1 API
Added users.settings.getVacation to gmail v1 API
Added users.settings.updateAutoForwarding to gmail v1 API
Added users.settings.updateImap to gmail v1 API
Added users.settings.updatePop to gmail v1 API
Added users.settings.updateVacation to gmail v1 API
Added users.settings.filters.create to gmail v1 API
Added users.settings.filters.delete to gmail v1 API
Added users.settings.filters.get to gmail v1 API
Added users.settings.filters.list to gmail v1 API
Added users.settings.forwardingAddresses.create to gmail v1 API
Added users.settings.forwardingAddresses.delete to gmail v1 API
Added users.settings.forwardingAddresses.get to gmail v1 API
Added users.settings.forwardingAddresses.list to gmail v1 API
Added users.settings.sendAs.create to gmail v1 API
Added users.settings.sendAs.delete to gmail v1 API
Added users.settings.sendAs.get to gmail v1 API
Added users.settings.sendAs.list to gmail v1 API
Added users.settings.sendAs.patch to gmail v1 API
Added users.settings.sendAs.update to gmail v1 API
Added users.settings.sendAs.verify to gmail v1 API

[Current coverage][cc-pull] is 88.56%

Merging [#599][cc-pull] into [master][cc-base-branch] will not change coverage

@@             master       #599   diff @@
==========================================
  Files             8          8
  Lines           271        271
  Methods          41         41
  Messages          0          0
  Branches         59         59
==========================================
  Hits            240        240
  Misses           31         31
  Partials          0          0

Powered by Codecov. Last updated by [f2eb11f...216d189][cc-compare]
[cc-base-branch]: https://codecov.io/gh/google/google-api-nodejs-client/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/google/google-api-nodejs-client/compare/f2eb11f45c2331f36e35d33c7280169f5e4fe5c5...216d189bd6f0f73ef24426fbda5d3e4dd2edf5fe
[cc-pull]: https://codecov.io/gh/google/google-api-nodejs-client/pull/599?src=pr


Mixer for H configuration

Mixer for new frame type H-quad

Nice, thanks!

I must be missing something... How does the new config differ from the X config?

Opposite rotors are on the same side. Which means that if your arms have an H layout the torque is transmitted through the stiffer mechanical part.
@sjwilks @AndreasAntener You will want to use this new config if you don't plan for an X frame for your VTOL.

That is also true for the X config, isn't it?

No its not if your frame shape resembles an H.

This frame could be used on frames which suffer from flexing arms which counteracts yaw motion

Do you plan to add a diagram to this page? https://pixhawk.org/platforms/multicopters/start
A picture would be worth... a lot.


Vickel: Watch (?-i:mE8erEm8Jk)(?#t.co)

Vickel requests the watch of the watch_keyword (?-i:mE8erEm8Jk)(?#t.co). See the MS search here and the Stack Exchange search in text, in URLs, and in code.

(?-i:mE8erEm8Jk)(?#t.co) has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Jesse in Charcoal HQ


Querying over collection properties

HI,
there is a way to create an index on a property that is a collection inside the document and to query that on some predicates like any(condition)

Yes, with a map index that would result in one entry for each element in the collection.

Here is and example where we have an index for Taxonomies on a Document. For each "tag" (taxonomy term) an index record is created. In a way we project any element from the collection to its own record for querying.
https://github.com/OrchardCMS/OrchardCore/blob/6cddd9f9904ff117ba82587f39fc76f49fac3cc3/src/OrchardCore.Modules/OrchardCore.Taxonomies/Indexing/TaxonomyIndex.cs
You could also create a Reduce Index if you want to group the collection elements across documents, and pre-count them.

Thank you for the answer.
Just another question regarding the queries.
I am not able to build a clause "value IN (value1, value2....)
Usually in EF I was able to write this clause like
string[] values = new[]{"value1", "value2"...}
var results = query.Where(r => values.Contains(r.Value)
If I write a similar clause with yessql the result is that the variable r is out of scope in session
Thanks in advance
Andrea

You need to use the correct extension method
example
using YesSql.Services;
query.Where(x => x.ContentType.IsIn(values));


Use cargo-deb to install synapse and pyrsia under systemd

Replaced dpkg-deb with the cargo-deb action.
cargo-deb uses key/values from the Cargo.toml as input to create the .deb file.  One of the required fields is the version number.  This was changed from 0.1.0 to 0.1.0+<build number> per the semver.org.  The build number was added to make the new .deb file unique.  Debian repositories are set up so you cannot replace existing versions.  Instead, you must iterate the version number to add updates.   Adding the build number allows us to iterate the version number but keeps the main version pinned to 0.1.0.
Since the version number is in the Cargo.toml and it is being updated, --locked had to be removed as part of the build.  --offline was tested but the pyrsia/synapse is a dependency that is not cached locally but is being built as well.

Use cargo-strip to reduce the size of the binaries.
cargo-strip runs the OS level strip program to remove debug and unused symbols.  This is equivalent to running the linker with the -s parameter.

Added pyrsia/synapse build to pyrsia/pyrsia Rust Workflow.  This was done to minimize token setup and synchronization issues across repositories.  Synapse is being built in its own Job in order to prevent errors when cloning another repository into a  workspace of pyrsia/pyrsia.

Added service install and service configuration for Pyrsia and Synapse.
cargo-deb will create and install the services under systemd.   RUST_LOG=info and PYRSIA_ARTIFACT_PATH=/usr/local/var/pyrsia environment variables are set up as well.  Synapse will startup under its default configuration.  Pyrsia install will reconfigure Synapse service to use its configuration file.
Directory and File Layout:

/usr/bin/pyrsia_node
/usr/bin/pyrsia
/usr/share/doc/pyrsia/README
/usr/share/pyrsia/synapse.toml
/usr/bin/synapse
/usr/share/doc/synapse/README
/usr/local/share/synapse/synapse.toml
/usr/local/share/synapse/sycli.toml

See #300
Resolves #314, #302, #251, #129

Since the version number is in the Cargo.toml and it is being updated, --locked had to be removed as part of the build

Looking quickly online I see https://doc.rust-lang.org/cargo/commands/cargo-update.html#update-options and comments saying you can do this yo your own crate.
This might be a worth test to see if we can keep the stability of --locked versions

@prince-chrismc - I did a test using --workspace and --locked to just update the Cargo.lock with the new version number.  You get an error with this combination.  Dropping the --locked and just using --workspace does seem to only update the version number in the Cargo.lock

does seem to only update the version number in the Cargo.lock

That's unfortunate but it makes sense. Seems like this is an active area of development, found this https://github.com/crate-ci/cargo-release which is looking promising 🤔 but it's not stable


Lore via .split?

I'm working on a fork, and have very little Java knowledge (javascript background).
I'm trying to figure out how to update the lore using the string split() function, so players can add custom lore to an item via the anvil interface.
While I can call split the name into an array, where I'm lost is how to then take the 2nd item in the array and assign it as lore.
So... consider this a feature request? Something of a middle ground between this and renameIt!

I don't think it's a good idea to use anvil interface with limited string size to apply name and lore at the same time.
About your problem. split works the same in Java, all you need to do for your idea is to assign first string in the array to item's name and then assign all other lines to the item's lore. You can check my code to see how it's done: https://github.com/rogi27/RenameIt/blob/1.19/src/main/java/space/rogi27/renameit/commands/LoreCommand.java#L29


Hi! Will you maintain it?

Hi!
This is looking promising. Do you plan to fix the playground app and the remaining issues/commented code? And would you like to generate a nuget package once the codebase is stable?
Thank you for the effort you put into this!

Hi. Yes. This was ported to use in another application we are developing. Once everything is stable we will release Nuget packages.


🐛 [BUG]: Connection radius of  'disabled' handles cancels section of connection radius of 'connectable' handles.

Is there an existing issue for this?

[X] I have searched the existing issues and this is a new bug.

Current Behavior
The connection radius area of the active handle is reduced near the disabled handle.
Expected Behavior
The disabled handle should not affect the active handle.
Steps To Reproduce
Example:
https://codesandbox.io/p/sandbox/unruffled-sound-0s0pcj?file=%2Fsrc%2FApp.vue%3A26%2C34

Start connection from the target node to the source node.
You will notice that the bottom handle on the source node is disabled (as expected), but the connection radius of the top handle is reduced on the side of the bottom handle.

It looks like the connection radius of the disabled handle cancels part of the connection radius of the active handle.
Relevant log output
No response
Anything else?
No response

Can you describe the issue more clearly, please?

A radius of 80 seems silly and unnecessary
None of the handles in your sandbox are "disabled" so I'm not sure what you're referring to.

For this specific example, radius 80 doesn't make much sense. This is just for demonstration purposes.
Regarding 'disabled' handles. When I say 'disabled' I mean it is not supposed to accept connections.
The bottom handler of the "source"  node is disabled by is-valid-connection in the target node. It means that I will not be able to start the connection from the "target" node and connect to the bottom handle of the "source" node. And this part is working as expected. However, if you check the "magnetic" effect (connection radius) around the top handler of the "source" node you will notice that this circle is not distributed evenly around the handle. This is because the bottom handler overlaps the radius of the top handle and somehow makes the radius of the top handle smaller on the bottom handle side.

Fixed with 1.20.1


Error while Deploying PDFGenerationApp

Hi,
As mentioned in the Readme file.
I've imported the PDFGenerationApp and tried to deploy but facing the below error related to the pdfmake.

Please help me to solve the issue.
With Regards,
Joseph.

Did you update your external references in BAS?
From the PDFGenApp/README.md
If you are using SAP Business Application Studio or Visual Studio Code to develop your app, then you need to add "pdfmake/build/pdfmake" to the externals property of the built-in MDK bundler tool.
Go to Preferences > Search for "MDK Bundler Externals" > Press Edit in settings.son > Add "pdfmake/build/pdfmake" inside the "mdk.bundlerExternals" array. e.g.
"mdk.bundlerExternals": [
"pdfmake/build/pdfmake"
]

Hi,
Where can I find Preferences> option.
Is it related to Application or BAS editor?
Thanks.

Use the gear icon in the lower left in BAS and select "Open Preferences" to display the preferences page.  Once open, navigation to the Extensions > Mdk section and under Bunder Externals click the "Edit in settings.json" link.

Thanks,I found out.


Building package Ilmbase fails if set(VCPKG_BUILD_TYPE release)

2019-01-29T10:50:43.7782495Z Starting package 1/3: ilmbase:x64-windows
2019-01-29T10:50:43.7782570Z Building package ilmbase[core]:x64-windows...
2019-01-29T10:50:50.0424069Z -- Downloading http://download.savannah.nongnu.org/releases/openexr/ilmbase-2.2.1.tar.gz...
2019-01-29T10:50:51.0299648Z -- Extracting source C:/vcpkg/downloads/ilmbase-2.2.1.tar.gz
2019-01-29T10:50:51.4422132Z -- Applying patch C:/vcpkg/ports/ilmbase/fix-parallel-build.patch
2019-01-29T10:50:52.0143490Z -- Configuring x64-windows
2019-01-29T10:51:20.0527193Z -- Building x64-windows-rel
2019-01-29T10:51:50.3850777Z CMake Error at ports/ilmbase/portfile.cmake:28 (file):
2019-01-29T10:51:50.3851331Z   file must be called with at least two arguments.
2019-01-29T10:51:50.3851914Z Call Stack (most recent call first):
2019-01-29T10:51:50.3852110Z   scripts/ports.cmake:71 (include)
2019-01-29T10:51:50.3852252Z
2019-01-29T10:51:50.3852381Z
2019-01-29T10:51:50.3911935Z Error: Building package ilmbase:x64-windows failed with: BUILD_FAILED
2019-01-29T10:51:50.3912039Z Please ensure you're using the latest portfiles with `.\vcpkg update`, then
2019-01-29T10:51:50.3912129Z submit an issue at https://github.com/Microsoft/vcpkg/issues including:
2019-01-29T10:51:50.3912182Z   Package: ilmbase:x64-windows
2019-01-29T10:51:50.3912231Z   Vcpkg version: 2018.11.23-nohash

It's similar to this issue #4754
After removing the VCPKG_BUILD_TYPE from the triplet file the build is successful.

Hi @SidneyGuenther , thanks for reporting this issue!
When I add set(VCPKG_BUILD_TYPE release) into portfile.cmake and rebuild ilmbase:x64-windows, I found nothing wrong.
Could you repro it?
Here is my log:
PS F:\vcpkg> .\vcpkg.exe install ilmbase:x64-windows
The following packages will be built and installed:
    ilmbase[core]:x64-windows
Starting package 1/1: ilmbase:x64-windows
Building package ilmbase[core]:x64-windows...
-- Performing post-build validation
-- Performing post-build validation done
Building package ilmbase[core]:x64-windows... done
Installing package ilmbase[core]:x64-windows...
Installing package ilmbase[core]:x64-windows... done
Elapsed time for package ilmbase:x64-windows: 2.348 s

Total elapsed time: 2.349 s

Thx.

Ilmbase depends on openexr now. See recent restore ：https://github.com/Microsoft/vcpkg/commit/bd94d1e254aede85506e07a632d1a7aafd538115#diff-bbf072b1e2c239dcf60107d4b22f87b8


GWT: Extract setupMainLoop method

Extracting the method setupMainLoop allows developers to extend GWTApplication and handle the main loop externally.
It might sound very specific but this is how WebXR works.

@MrStahlfelge thanks for approving. I would like to try to create an experiment using the WebXR API and this is the first step.

@MrStahlfelge thank you so much!


Option to show diffs

Is your feature request related to a problem? Please describe.
When running djcodemod in a build worker, it would be useful to show the changes it made so the logs record the transformations made, and also so it is easy to copy the diffs to submit upstream.
This is especially useful when working from tarballs, as there is no VCS to be able to generate diffs.
Describe the solution you'd like
A disabled-by-default flag like --show-diffs which emits the changes which are being written to disk as patch-compatible stdout .
Additional context
e.g. it takes a couple of secs to add
`djcodemod run --removed-in 4.0 test_project/
to the build scripts for https://build.opensuse.org/package/show/home:jayvdb:branches:devel:languages:python:django/python-django-debreach , to allow me to provide a more detailed issue at https://github.com/lpomfrey/django-debreach/issues/21
But I really should check the diffs to make sure djcodemod is not introducing bugs in the process, and if there were diffs I could have easily added to the  upstream issue an inline patch for the first which djcodemod knows how to fix, which gets them closer to the harder second problem which djcodemod doesnt know how to solve.

PR welcome :+1: