Set Microphone to Use

Thank you for writing this package. Very useful!
I am running this on my Macbook and using the built-in mic works fine, but the quality is not that great.
I purchased a USB C conference mic which I can see in System Preferences > Input but it seems the script still wants to use the built-in mic.
Is it possible to override the mic that is used and point it towards my USB mic?

Looks like this is possible via Speech Recognizer library: https://stackoverflow.com/questions/68544649/python-speech-recognition-change-between-microphones

I will add this as an option when I get the chance.  Else if you make a PR, I will review and merge it.
Thanks!

This is resolved

Thanks a bunch!


prop :properties unexpected behaviour

if you define prop :properties, SomeType it's gonna complain because there's a local variable properties defined in the generated initializer. Should it maybe be __properties?
Happy to submit a pr if you think that's a good idea

Agreed. Can we use __properties__ for the local to be consistent with other stuff?

made a pr 👍


IKEv2 Authentication credentials are unaccptable

Hi,
I made for All certificate settings  correctly.
But I have given IKE authentication credentials are unacceptable error message when i connect via always on vpn
I have checked all Possible solution.
Verified that the server certificate includes Server Authentication under Enhanced Key Usage.
Verified that the server certificate is still valid.
Verified that the CA used is listed under Trusted Root Certification Authorities on the RRAS server. Verified that the VPN client connects by using the FQDN of the VPN server as presented on the VPN server's certificate.
But i couldn't find solutions

Thanks for your dedication to our documentation. If we have been unable to review your issue in a timely manner, we sincerely apologize for the delayed response. We have captured the informtion you have provided for review. We are closing this issue for now, but if you feel that it's still a concern, please respond and let us know. If you determine another possible update to our documentation, please don't hesitate to reach out again. #please-close


⚠ ClamAV has degraded performance

In c651bcb, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 72 ms

Resolved: ClamAV performance has improved in 29f0d0a.


fix error for editing chart using join datasources

Description

Fix error for editing chart using join datasources
Related Issue :

How Has This Been Tested?

Create a dashboard using join datasources
Create a chart (ex: bar, grid chart).
Check the edit page, and check if editing is normal.

Need additional checks?
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have read the CONTRIBUTING document.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have added tests to cover my changes.

Additional Context

deploy to 2


docC documentation updates

Current dependencies on/for this PR:

main

PR #72   👈

This comment was auto-generated by Graphite.


Tagless macro contains insecure code

we cannot do Option.get https://github.com/frees-io/freestyle/blob/master/modules/core/shared/src/main/scala/freestyle/tagless/internal/tagless.scala#L54
We need to proceed on a safe way and return a properly error

There is now a cats-tagless, which is actively maintained, already ported out of scalameta, and has wider functionalities than freestyle @tagless macros.


How to get original column title

Is there a way to get original column titles e.g. first column in my excel is "The Title" so the key will be "the_title".

Check: https://github.com/Maatwebsite/Laravel-Excel/issues/381
It's also explained in the docs: http://www.maatwebsite.nl/laravel-excel/docs/import#results

Is it possible to get original column names without changing config file? I have been developing an application as a team member and some of my team members are using slugged columns. If i changed config it will also effect their code.


Adding an example for universal custom routing

Howdy! I was looking through the examples for a custom server.js, and they all worked well enough on the server-side. I did notice that they stop working on the client-side unless you use the href and as attributes in conjunction on your Link components, effectively duplicating your routing logic wherever you have a Link.
I can't find it at the moment, but in another issue @rauchg (or perhaps another of the maintainers) +1'd the concept of making a custom component to handle the route matching, referencing some shared configuration, which works like a charm for us. I didn't see a complete example of universal route matching in ./examples, so I thought I'd add one.
Hopefully this isn't duplicative from another example! Thanks so much to the team — this project has been an amazing leg up for us! Hoping to get some of our production code moved over to Next soon!

This is quite inspiring :) would also be great to see

how to handle route params (e.g /foo/:id)?
how would an HTTP server like Koa or Express handle such a routes.js config file without DRY?

@gcpantazis Great example! Thanks for sharing it!
JFYI: I have recently bumped into another approach with routing: https://github.com/matthewmueller/next-route

@frol That's a good one too.
And I'm waiting for, someone is building a React Router like API on top of our routing API.
That's totally doable.

@gcpantazis could you update this one also?

@timneutkens aye, will do on Monday. I implemented much of what @arunoda suggested in our downstream project, so I'll port that up here as well. 👍

Awesome, thank you very much ❤

I'm going to close this for inactivity. Cleaning up old PRs. i'd love to take this in one day though ❤


Call for speakers newsleter - Wed Aug 8

@jcwlib landing page is here: http://ncopenpass.com/civic-camp/civic-camp-call-for-speakers/

Sending Wednesday 8/8
--call for Civic Camp speakers
--reminder NDoCH
-- brigade announcements

Promote NC RiOT event on August 21


network: add workaround for slirp4netns --enable-sandbox issue

add a workaround for https://github.com/rootless-containers/slirp4netns/pull/153
Signed-off-by: Giuseppe Scrivano<EMAIL_ADDRESS>

@mheon @rhatdan this is also important for rootless otherwise they just explode with a newer slirp4netns

lgtm

/lgtm
/hold
hold cancel when tests pass.

LGTM

/hold cancel


org.apache.httpcomponents/httpclient 4.3.2

Type: Missing
Summary:
org.apache.httpcomponents/httpclient 4.3.2
Details:
Downloaded JAR file and license is Apache-2.0
Resolution:
Apache-2.0
Affected definitions:

httpclient 4.3.2

Duplicate of #20784


Is there a forum  where one could ask basic NetBox API questions?

Is there a forum  where one could ask basic NetBox API questions?

I'm having a problem where using POST I'm getting a code 200 successful return but I'm not seeing the change in the gui.  I'm asking here because I can't find another resource.

Found one.

In the future: Github issues is for reproducible bug, feature requests, etc.  Not general assistance.


how to build nuscene dataset in project

Hello,Great work done on this model. I am reproducing in my own environment, but I have some questions when building the nuscene data set, because there are many types of sensors, so I should download all the data from individual sensors.
https://www.nuscenes.org/download

Hello,
you can only download the Lidar blobs and the Metadata.

Hello, you can only download the Lidar blobs and the Metadata.

Are you  mean "nuscenes-lidarseg"，right？

It should be the Full dataset (v1.0) (not nuScenes-lidarseg), and only the Lidar blobs (maybe also the keyframe blobs) and the metadata should be downloaded.

It should be the Full dataset (v1.0) (not nuScenes-lidarseg), and only the Lidar blobs (maybe also the keyframe blobs) and the metadata should be downloaded.

Sorry,I downloaded FULL dateset (V1.0), but the content of the file is not your dataset structure as README, can you please explain in detail

It should be the Full dataset (v1.0) (not nuScenes-lidarseg), and only the Lidar blobs (maybe also the keyframe blobs) and the metadata should be downloaded.

I mean that  all file blobs are used in your project? and sweep file needn't any data?

Yes, we use file blobs of all scenes. We do not need sweep files due to that we use point cloud of keyframes (2Hz).

Yes, we use file blobs of all scenes. We do not need sweep files due to that we use point cloud of keyframes (2Hz).

Thanks a lot.   And I didn't find visualization file under the project. Are you achieving in other project?


Delay with questions enabled

Some questions that are enabled by default appear as disabled on the screen when you log in as a student.
After a small delay, they appear enabled.

@atcrme
There is nothing we can do about that apart from not showing anything until all the details are loaded. This would be a bit harder that the previous fix though. I suggest not to fix that one


[Website] Broken reactrouter.com or reacttraining.com/react-router

Version
Current website at https://reactrouter.com or https://reacttraining.com/react-router
Steps to reproduce
Just open document site
Expected Behavior
I'd love to open doc site without VPN
Actual Behavior
Screen is blank:

The Problem
I'm living in Ukraine and as a result I can't open document site without VPN

This is due to Cloudflare being used on the site. Dupe of #7760


upgraded to react 0.14

I've also changed package.json tu use exact dependencies.
@carlosvillu please review

:+1:


[BUG]

Describe the bug
Trying to save masks using the "Save masks as PNG" tab, but the following error pops up. Using version 2.0, it ran fine and I saved the images fine until yesterday. it suddenly started throwing error.
GUI_INFO: saving 2D masks to png
Traceback (most recent call last):
File "/jhpce/shared/jhpce/libd/cellpose/2.0/cellpose_env/lib/python3.8/site-packages/cellpose/gui/menus.py", line 38, in
parent.savePNG.triggered.connect(lambda: io._save_png(parent))
File "/jhpce/shared/jhpce/libd/cellpose/2.0/cellpose_env/lib/python3.8/site-packages/cellpose/gui/io.py", line 460, in _save_png
imsave(base + '_cp_masks.png', parent.cellpix[0])
File "/jhpce/shared/jhpce/libd/cellpose/2.0/cellpose_env/lib/python3.8/site-packages/cellpose/io.py", line 119, in imsave
cv2.imwrite(filename, arr)
cv2.error: OpenCV(4.5.5) :-1: error: (-5:Bad argument) in function 'imwrite'

Overload resolution failed:

img data type = 6 is not supported
Expected Ptrcv::UMat for argument 'img'

@madhavitippani can you provide the steps necessary to reproduce this error, the cellpose version, and the output of conda list


notmuch: add support for sexp-queries and notmuch-git

Description of changes

Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

Initially I was very confused about what this was doing. Maybe link to https://notmuchmail.org/doc/latest/man1/notmuch-git.html in the commit message and some comments, so people know what this is about?


Visual Studio "Upload to AWS Lambda" System.OutOfMemoryException when packaging

I get this error in Visual Studio when trying to publish.

When I package it using the command line:

it works fine

Expected Behavior
It should finish publishing to AWS Lambda without dieing.
Possible Solution
Not sure
Steps to Reproduce (for bugs)
Not sure how I'm getting this.
Your Environment
The packaged version is only 13 MB in size. Unzipped it is around 30 MB.

Operating System and version: Windows 10
Visual Studio version: 15.8.4
Visual Studio AWS Toolkit version: <IP_ADDRESS> installed on 11/20/2018
Targeted .NET platform: Core 2.1.5

.NET Core Info

.NET Core version used for development: 2.1.5
Output of dotnet --info:

Nevermind. Restarting Visual Studio seemed to fix it.
Visual Studio was using 2.2 GB of RAM before the restart. After the restart it is using 1.8GB of RAM so there must be enough now for it to complete the packaging task.

Thanks for the update.


T1w images incorrectly detected as skull-stripped (difference between 0.12.2 -> 0.13.1)

Describe the bug
I have T1w images like the following that are being detected as having had their skulls already stripped

With 0.12.2, the skulls were detected as needing to be stripped.
Exact command line executed
$ singularity build smriprep_0.13.1.sif docker://nipreps/smriprep:0.13.1
$ singularity run -e --bind ${root}:/ds --bind ${scratch}:/scratch code/smriprep_0.13.1.sif --nprocs 16 --omp-nthreads 8 --mem-gb 24 --output-spaces T1w MNI152NLin2009cAsym MNI152NLin6Asym --fs-license-file /ds/smriprep/code/license -w /scratch/work --participant-label AAO1062 --no-submm-recon /ds/bids/rawdata /ds/smriprep/derivatives participant

Are you positive that the input dataset is BIDS-compliant?

[ ] I have used the online BIDS-Validator
[ ] I have run a local installation of the BIDS-Validator (please, note the version of the validator here).
[x] I let sMRIPrep check it for me (in other words, I didn't set the --skip-bids-validation argument).
[ ] No, I haven't checked myself AND used the --skip-bids-validation argument.

sMRIPrep feedback information
Please attach the full log written to the standard output and the crashfile(s), if generated.
231128-18:11:30,567 nipype.workflow Level 25:

    Running sMRIPrep version 0.13.1:
      * BIDS dataset path: /ds/bids/rawdata.
      * Participant list: ['AAO1062'].
      * Run identifier: 20231128-181104_1efc0d9c-4437-4a93-8ebe-27a4f3bd9a0e.

    Spatial References: T1w, MNI152NLin2009cAsym:res-native, MNI152NLin6Asym:res-native

231128-18:11:31,929 nipype.workflow INFO:
	 ANAT Stage 1: Adding template workflow
231128-18:11:34,226 nipype.workflow INFO:
	 ANAT Stage 2: Preparing brain extraction workflow
231128-18:11:35,37 nipype.workflow INFO:
	 ANAT Stage 2: Skipping skull-strip, INU-correction only
231128-18:11:35,59 nipype.workflow INFO:

full log (note that this run crashed due to what I believe to be an unrelated reason)
Visual reports of sMRIPrep
If applicable, add screenshots or attach the corresponding "reportlets" to help explain your problem.
Installation type (please complete the following information):

[ ] "Bare-metal"
[x] Singularity
[ ] Docker

Additional context
Add any other context about the problem here.
https://github.com/nipreps/smriprep/blob/e460f6d04336bccc365b212f4083c4d6fd3be6e9/smriprep/workflows/anatomical.py#L798
ends up evaluating to False

TBH I thought this check was so bad nobody used it, but it turns out it's default on smriprep.
Looks like it should be run_skull_strip = not all(...). Thanks for catching this. Care to open a PR?


Support convention-based routing

Great work on this repo so far! I was looking to write my own ReScript bindings then stumbled on this project.
Issue
There are a few issues that mean Remix's convention-based routing won't work with ReScript. In particular:

The $ character is not a valid character in ReScript module names.
All ReScript modules must have a unique name (which means, for example, each folder can't have its own index.res).
The app/routes directory is "special" in Remix and has the routing conventions applied automatically.

Assuming that convention-based routing is within the scope of this project (it seems to be used currently), I think we need an alternative set of conventions for ReScript projects.
Proposal
It's possible to leverage the routes value of remix.config.js to map any arbitrary file-system representation into a set of routes. I propose that we introduce our own routing conventions for ReScript that are inspired by standard Remix but are more compatible with ReScript.

We use a different directory for convention-based routing. The use of app/routes is hardcoded in Remix but the directory can be elided entirely. I've been using reroutes as a placeholder but am definitely open for suggestions!
We use only the final portion following any _ for basic routes. This allows blog/index.js and products/index.js to be represented as blog/blog__index.res and products/products__index.res respectively. It appears that the use of double underscore is a convention in ReScript/Ocaml for module namespacing.
We use [slugId] instead of $slugId for dynamic route parameters. This appears to be aligned with how Next.js represents tokens. blog/$blogId.js would be represented as blog/blog__[blogId].res.
We use [[escape_me]] for escaping characters. This overloads the use of [ and ] but, unfortunately, ReScript doesn't give us many other characters to work with in file names. jokes[.]rss.tsx would be represented as jokes[[.]]rss.res.
We use [] for splat routes. blog/$.tsx would be represented as blog/blog__[].res.
We continue to use . for dot delimeters.
We continue to use a leading __ for pathless layout routes.

Overall, the jokes tutorial app would have the following files:
app
├── entry.client.res
├── entry.server.res
├── reroutes
│  ├── index.res
│  ├── jokes
│  │  ├── jokes__[jokeId].res
│  │  ├── jokes__index.res
│  │  └── jokes__new.res
│  ├── jokes.res
│  ├── jokes[[.]]rss.res
│  ├── login.res
│  └── logout.res
└── root.res

I'm working on a PR with this logic but wanted to make sure it aligned with your thoughts/goals for this project before opening it.

😂 Peer dependencies, the bane of my existence. I'm building things out here if you're interested in a peek. I'll fork the repo and open a proper PR once I've got it all working.

I was trying to test my code before opening a PR and haven't been able to get rescript-remix to work with rescript-remix-template. I've tried using npm link and npm pack/npm install but I keep seeing errors to the effect of:
FAILED: app/root.cmj
We've found a bug for you!
/home/drew/Code/rescript-remix-template/app/root.res:12:8-17
10 ┆   <meta charSet="utf-8" />
11 ┆   <meta name="viewport" content="width=device-width,initial-scale=1" />
12 ┆   <Remix.Meta />
13 ┆   <Remix.Links />
14 ┆ </head>
The value makeProps can't be found in Remix.Meta
FAILED: cannot make progress due to previous errors.

Have you been seeing the same issues? I'm not sure if I'm being dumb or if there's a legit issue with this module.

Yeah these are issues I'm receiving too 😕 it's what I was referring to with peer dependency issues, could you try installing from npm?
I'm going to take another look tomorrow, I must have something setup incorrectly.
See https://forum.rescript-lang.org/t/how-to-do-peer-dependencies-when-publishing-a-rescript-npm-package/2837


Update README.md

@spm2020spring How did this branch get approved?, the README file totally renamed.


update dependencies and remove package-lock

Description
update dependencies and remove package-lock

Motivation and Context
https://github.com/adobe/aio-lib-core-tvm/issues/13

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have signed the Adobe Open Source CLA.
[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Codecov Report

Merging #11 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #11   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           5      5
  Lines         293    293
  Branches       61     61
=====================================
  Hits          293    293

Impacted Files
Coverage Δ

lib/Files.js
100% <100%> (ø)
:arrow_up:

lib/impl/AzureBlobFiles.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Feature: Multi-Implementation Support

Update config to annotate the type of node that's being used (LND/CLN/LDK/ECL)
Add alternative implementations of LightningNode

I'd suggest starting with CLN or LDK-node first, so those are likely the easiest.

CLN: https://crates.io/crates/cln-grpc ?

New tasks. Blocked by incompleteness in CLN rpc types

[ ] CLN track payment needs to report failure reason
[ ] CLN track payment needs to report htlc count

We use lightning-listpays rpc, from which we don't get either of the above response fields

New tasks. Blocked by incompleteness in CLN rpc types

[ ]  CLN track payment needs to report failure reason

[x]  CLN track payment needs to report htlc count

fix: we use listpays number_of_parts where available, or default to 1

We use lightning-listpays rpc, from which we don't get either of the above response fields

Let me take a look at that payment error data and how to parse it

I think we're probably going to have to go with our own mapping - something like this:
PAYMENT_NOT_SENT represents:

LND/FAILURE_REASON_TIMEOUT
LND/FAILURE_REASON_NO_ROUTE
LND/FAILURE_REASON_INSUFFICIENT_BALANCE

INCORRECT_DETAILS represents:

LND/FAILURE_REASON_INCORRECT_PAYMENT_DETAILS
failure_code / 18
failure_code / 19

PAYMENT_FAILED represents:

LND/FAILURE_REASON_ERROR
failure_code/ any other value

For the record: https://github.com/ElementsProject/lightning/issues/6634

Dropping this down to medium now that we have LND and CLN.

So I spent some time looking into LDK-Node integration and wanted to share some of my findings here in case there were any suggestions before I move forward.

LDK-Node is in a library form and not a daemon with a CLI like LND or CLN. So the node needs to be configured, built and started within the code, rather than connected to as is done here with LND and CLN. I think that should be fine as it can be configured to point to an existing storage directory. So it can start up an existing node so long as it is not already running.
Setting up LDK-Node in a local regtest environment is a little tricky as there’s not very good documentation for that, it's not a daemon like LND, and it does not yet work with bitcoind (needs to connect to an esplora server for chain sync). I was eventually able to set it up and send/receive keysend payments between an LDK-Node and an LND node in regtest.
LDK-Node does not provide access to or customization of NodeFeatures. By default, the rust-lightning library sets the keysend_optional feature bit (55): https://github.com/lightningdevkit/rust-lightning/blob/3c9d88af2636422000402adb5aa4eab7c0845e81/lightning/src/ln/channelmanager.rs#L9490. One solution is to manually pass in the default NodeFeatures for Sim-LN.
Separately, however, it does not allow keysend payments for mpp. https://github.com/lightningdevkit/rust-lightning/blob/3c9d88af2636422000402adb5aa4eab7c0845e81/lightning/src/util/config.rs#L825.
For tracking payments, I would probably implement this the same as CLN, leveraging the list_payments method on the Node api, and waiting 500ms. However, the payment details don't return an HTLC count from my understanding. This is the extent of the details: https://docs.rs/ldk-node/latest/ldk_node/struct.PaymentDetails.html.

I'm working on a PR and that will provide more clarity on where other shortcomings / blockers might be, but thought I would just point this all out here in case you had any suggestions / concerns before I continue on.

Re 1 + 2:
While I'm not against our spinning up LDK nodes within Sim-LN some day, I don't really see it as a high priority if not yet pulled together into a usable daemon. Reasoning being that a) people probably aren't really using it right now if it's difficult to run and b) our value proposition is to add payment simulation to existing networks.
If you'd be interested, I think that working on eclair support would be a massive value add as it's one of the major players in the routing network and would be a great addition to be able to simulate more realistic networks.
That said, if the work of pulling together LDK node is minimal it could be something we could look - but I'd need some convincing tbh. Answers to the rest anyway:
3. Passing defaults in seems fine to me 👍
4. That's okay, I don't think that LND has MPP keysend either (we've already accepted that we have to add invoice based payments if we want MPP in sim-ln)
5. SGTM

Got it thanks @carlaKC! That makes sense to me and I agree it's prob not ready at this stage to be considered. I was eager to play with it and see what it is about, so this was a good learning experience regardless. 👍

For the reasons mentioned in this comment with whom I agree  (especially the lack of current daemon-like runtime wrapping the LDK node library) I don't know if LDK node is the best way to go to support LDK. Even assuming a runtime is built around LDK node, I'm not sure if its Node API will expose htlc management related mechanism (node / channel features, payment details, modes of payments like mpp) to have sufficient support for Sim-LN experimentaiton.
On the other hand, ldk-sample already have a runtime built with a REPL shell to manage the node and its connects to
bitcoind. The REPL shell ain't great to integrate with the Sim-LN like done for CLN and LND, and it sounds a RPC interface
would have be to be landed and then maintained to support LDK.
I agree, it sounds the massive value add would be to add eclair support. From #181 and reading its documentation (README.md), here what could be tried to support eclair. There is an API where one can install plugin written in Scala, Java or any JVM-compatible language. I think from then a plugin could be designed to expose a GRPC interface and this interface driven by a sim-lib module to act sim actions (get_info, send_payment, track_payment, get_node_info, list_channels).
The Plugin API (https://github.com/ACINQ/eclair/blob/master/eclairnode/src/main/scala/fr/acinq/eclair/Plugin.scala) is minimally documented there is a collection of plugins available here (https://github.com/ACINQ/eclair-plugins). I don't know if one can be easy forked out to implement a sim-ln-rpc-interface, and I'm not sure if would work well with current sim-ln abstractions.

My take on this:

Shelf LDK support for now, reconsider in future if there's user-demand or a cleaner way forward
Add eclair support if there's a RPC plugin available out of the box, otherwise hold off there as well

Add eclair support if there's a RPC plugin available out of the box, otherwise hold off there as well

On eclair support, there is no RPC plugin available "just out of the box", however the current Eclair plugins and node architecture is reasonably easy to hack on, after just looking at it a couple of hours. Started a sim-ln module here: https://github.com/PurpleTimez/eclair-plugins/blob/eclair-sim-ln-plugin/sim-ln-module/src/main/scala/acinq/eclair/plugins/simln/SimLnPlugin.scala
From then, you can have eclair-cli instructing commands to the plugin to act on the state node. This can be called by a sim-ln runtime (e.g a forking process it might be more straightforward to call directly an eclair-cli). It might just be a bit more few hours to get that end-to-end working for a demo command, so I'm curious to try. Happy to get feedback if this sounds good to support eclair.


Expose StorePublisher directly on Store

Now that ViewStores have a limited future, we should surface functionality that was ViewStore-only to the Store instead.
While we could probably start discouraging using ViewStore at all in UIKit apps by deprecating the existing API, it's pretty close to the 11th hour of shipping 1.0, and we are probably better off deprecating ViewStore all at once when the Observation framework is released.

I suppose what this would mean going forward in UIKit-land is that transformations from reducer's state to the view domain via ViewState would now have to be done using Combine's map function:
-  public struct ViewState: Hashable {
-    public var item: WebsiteBrowserItem
-    public var stage: WebsiteBrowser.State.NavigationDelegateStatus
-    public var loadedWebsite: Bool
-
-    init(state: WebsiteBrowser.State) {
-      self.item = state.item
-      self.stage = state.stage
-      self.loadedWebsite = state.stage == .didFinish
-    }
-  }
-
-  viewStore.publisher.loadedWebsite
+  store.publisher.stage
+   .map { $0 == .didFinish }
    .removeDuplicates(by: ==)
    .sink { /* */ }
    .store(in: &cancellables)

Is that correct?

@acosmicflamingo That's one option for sure!
You could also continue to have a store with view-specific state/actions, there's just no need to use ViewStore. You can simply scope the store instead.

@stephencelis ohhhhhhhhhh I see. Thanks! Once this is merged to release/1.0, I'll give it a try and see how it goes with your suggestion :)

@stephencelis WOW so the scoping solution is perfect, if I were to assume that it would be done like this:
class FooViewController: UIViewController {
  let store: StoreOf<Foo>
- var viewStore: Store<ViewState, Foo.Action>

  /*  blah blah blah */

  func setupBindings() {
+   let viewStore = store.scope(state: ViewState.init, action: { $0 })
     viewStore.isEditing.sink {
       print($0)
     }
     .store(in: &cancellables)
  }
}

...and not like this:
class FooViewController: UIViewController {
-  let store: StoreOf<Foo>
-  var viewStore: Store<ViewState, Foo.Action>
+ let store: Store<ViewState, Foo.Action>
  /*  blah blah blah */

  func setupBindings() {
-   viewStore.isEditing.sink {
+   store.isEditing.sink {
       print($0)
     }
     .store(in: &cancellables)
  }
}

@stephencelis after migrating my UIKit codebase to exclusively using Store and it's newly exposed publisher, I noticed some subtle animation issues were popping up. After looking a bit into it, I realized that when I transitioned to using StorePublisher instead of ViewStorePublisher, I had lost the automatic removeDuplicates functionality that is found in the ViewStore convenience initializer: https://github.com/pointfreeco/swift-composable-architecture/blob/main/Sources/ComposableArchitecture/ViewStore.swift#L619.
Looking through Store.swift, it appears that the removeDuplicates parameter is not exposed to the public: https://github.com/pointfreeco/swift-composable-architecture/blob/main/Sources/ComposableArchitecture/Store.swift#L373. Should this parameter now be exposed as well? I'm fine with slapping on removeDuplicates(by: ==) everywhere, but wanted you to be aware of it in case you do think that Store should now allow for receiving a removeDuplicates closure.

@acosmicflamingo Interesting catch, thanks for sharing! I'm not 100% sure if we should handle this any differently, though. View stores are built around minimizing updates, but stores currently are not. This may change with observability, but for now I wonder if one should be explicit when using store publishers:
-store.publisher
+store.publisher.removeDuplicates()

Thoughts?

I agree with you. It does seem weird to now add this removing duplication functionality to Store. I also think it'd be silly to create a property like publisherWithNoDuplicates just to append StorePublisher with removeDuplicates. I imagine there comes a point where it just becomes over-engineering it.
I've already sprinkled removeDuplicates everywhere and like that I can explicitly see what is happening with the stream of events, so perhaps when you all finally decide to create the RFC: ViewStore deprecation PR, that it will need to be documented that you need to now slap on removeDuplicates after store.publisher to get the same behavior as before.


Allow empty values for @Option arguments

Expected Behavior
There should be a way to pass an empty string to @Option task property.
Current Behavior (optional)
Gradle does not seem to support empty strings:
abstract class FooTask : DefaultTask() {
    @get:Option(option = "foo", description = "description")
    @get:Internal
    abstract val foo: Property<String>

    init {
        foo.convention("")
    }

    @TaskAction
    fun action() {
        println("Foo is '${foo.get()}'")
    }
}

val foo by tasks.registering(FooTask::class)

% gradle foo

> Task :foo
Foo is ''

% gradle foo --foo

FAILURE: Build failed with an exception.

* What went wrong:
Problem configuring task :foo from command line.
> No argument was provided for command-line option '--foo' with description: 'description'

% gradle foo --foo ""

FAILURE: Build failed with an exception.

* What went wrong:
Problem configuring task :foo from command line.
> An empty argument was provided for command-line option '--foo'.

Context
I want to pass a string argument, and Gradle forbids empty strings.
https://github.com/gradle/gradle/blob/a814fde3242785bbc4879bdf3db5ae99ec108b78/platforms/core-runtime/cli/src/main/java/org/gradle/cli/CommandLineParser.java#L439-L442

The issue is in the backlog of the relevant team and is prioritized by them.

I've updated the description to illustrate the issue better.

Bumping this. It should definitely be possible as --foo ""


Vet clinic database: add database schema diagram

This pull request is about the reversing of our database into a schema diagram :

animals's table
vets's table
specialization's table
species's table
owners's table
visits's table

Hi @MenendezON,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code.
Invalid Code Review Request
You have submitted a project, that has only one student's contribution. Since it is a pair programming activity everyone in the group should contribute equally. Kindly please do this with your partner.
Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear. Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.
Invalid Code Review Request does not count into the code reviews limit.

@Bantealem, my coding partner contributed to this part of the project, she helped me create the diagram. As the instructions say, everybody has to add the diagram to his repo, that's why you don't see her as a contributor.

Hello @MenendezON thank you for reaching out to me. Of course, she may help you by doing so but to proceed with the review I need to see her commit history which makes me sure you have done the project in the group.


Wrong processing of table with sub tables within cells

In particular:
altClass option assignes odd class for rows in sub tables.
fixedColumn options makes a mess.

@alexeevi I got the same issue, can you please explain it better? thank you!


API documentation

Is there any RainLoop API documentation? Or at least documentation how to create own plugin.

I would also like to create my own plugins but without documentation...not good.. for example how do we create a tab in the admin settings? and also multiple tabs without conflict...

Please use plugins folder  as examples.
@Agustors
custom-admin-settings-tab

@RainLoop
But when there is nothing which is relevant to what I'm looking for does it means it is not possible to create? How do I know what functions, calls, hooks etc are available through RainLoop API? It force to reverse-engineering RainLoop code for availability instead providing proper documentation on API.

if i replicate for example custom-settings-tab plugin into 3 different plugins because i want to have separate tabs on the settings menu they conflict!

As Med-All has said i am also doing reverse-engineering due to Rainloop lack of API Documentation and i bought the premium license... dont i have the right of some assistance?

I wanted to develop a plugin to filter the mails, but I have the same problem, without API, it is too hard to work .. I don't want to waste my time for simple details not explained ^^
I would be awesome to have this API :)

Well there seems to be a tendency here....how is it possible for a project such as this not have documentation?

+1 for plugin documentation

available later , but when

so... when?
Even a simple list of all hooks would be usefull

over a year and no documentation.  Ill start looking at things.  Maybe it would be good to start a wiki page at least?

so... when?
Even a simple list of all hooks would be usefull

Searching Plugins()->RunHook renders a few results
Here are a few:

filter.application-config
main.fabrica
main.fabrica[2]
filter.fabrica
filter.acount
filter.login-credentials.step-1
filter.login-credentials.step-2
filter.login-credentials
event.login-pre-login-provide
event.login-post-login-provide
filter.filters-fake
filter.filters-save
service.app-delay-start-begin
service.app-delay-start-end
filter.system-folders-names
filter.folders-before
filter.folders-post
filter.folders-system-types
filter.folders-complete
filter.message-html
filter.message-plain
filter.message-plain
filter.build-message
filter.build-message[2]
filter.read-receipt-message-plain
filter.build-read-receipt-message
filter.save-message
filter.save-message[2]
filter.smtp-message-stream
filter.message-rcpt
filter.smtp-from
filter.smtp-hidden-rcpt
filter.send-message
filter.send-message[2]
filter.sent-message-stream
filter.sent-message-stream
filter.send-read-receipt-message
ajax.suggestions-input-parameters
ajax.suggestions-pre
ajax.suggestions-post
filter.result-message
filter.result-message[2]
main.default-response-data
main.default-response-error-data
main.default-response
filter.action-params
filter.response-object
filter.http-query
filter.http-paths
ajax.action-pre-call
ajax.action-post-call
filter.ajax-response
filter.upload-response
filter.imap-credentials
event.imap-pre-connect
event.imap-pre-login
event.imap-post-login
filter.smtp-credentials
event.smtp-pre-connect
event.smtp-post-connect
event.smtp-pre-login
event.smtp-post-login
filter.sieve-credentials
event.sieve-pre-connect
event.sieve-post-connect
event.sieve-pre-login
event.sieve-post-login
api.bootstrap.plugins
filter.app-data
filter.app-data[2]
filter.domain


Default trait applied to streaming in version 1

The data member in this v1 model is being applied the @default trait.
In the v1 spec there is no mention of this behavior.

Related: https://github.com/awslabs/smithy/issues/1380

You're seeing that in the in memory semantic model when using the Smithy libraries. The Smithy reference implementation automatically transforms all models to be valid for v2 semantics. It does that for anything that previously had a default zero value too. Tools that don't use or know about the default trait can simply ignore it. A code generator that supports both v1 and v2 should not ignore it. In Smithy v1, these members were implicitly considered to have a default by most server generators because it's not really possible to know if a streaming member was supplied but empty, so we decided to make that explicit in v2.


Response.send() throwing TypeError

(also on stack overflow: https://stackoverflow.com/questions/49374802/express-response-send-throwing-typeerror)
I have this simple express code:
const api = Router()

api.post('/some-point', async (req, res, next) => {
  const someStuffToSend = await Promise.resolve("hello");
  res.json({ someStuffToSend });
})

It works well on my dev environment, but on the prod I get the error bellow:
TypeError: argument entity must be string, Buffer, or fs.Stats
    at etag (/[...]/node_modules/etag/index.js:83:11)
    at generateETag ([...]/node_modules/express/lib/utils.js:280:12)
    at ServerResponse.send ([...]/node_modules/express/lib/response.js:200:17)
    at ServerResponse.json ([...]/node_modules/express/lib/response.js:267:15)
    at api.post (/the/code/above)

I checked at node_modules/etag/index.js:83:11 and saw
if (!isStats && typeof entity !== 'string' && !Buffer.isBuffer(entity)) {
  throw new TypeError('argument entity must be string, Buffer, or fs.Stats')
}

Before this code I added a printf to check the type of entity:
console.log("Entity contains", entity, "is of type", typeof entity, "with constructor", entity.constructor, "and is it a buffer?", Buffer.isBuffer(entity))

Which got me the output bellow:
Entity contains <Buffer 7b 22 70 72 65 64 69 63 74 69 6f 6e 5f 69 64 22 3a 22 63 4b 57 41 64 41 46 43 77 6e 55 43 22 2c 22 69 6e 69 74 69 61 6c 5f 70 72 65 64 69 63 74 69 6f ... > is of type object with constructor function Buffer(arg, encodingOrOffset, length) {
  if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {
    return new Buffer(arg, encodingOrOffset, length)
  }

  // Common case.
  if (typeof arg === 'number') {
    if (typeof encodingOrOffset === 'string') {
      throw new Error(
        'If encoding is specified then the first argument must be a string'
      )
    }
    return allocUnsafe(this, arg)
  }
  return from(this, arg, encodingOrOffset, length)
} and is it a buffer? false

So it looks like the entity is a buffer, but not recognized as such. If I comment the test out, it crashed at a different location
TypeError [ERR_INVALID_ARG_TYPE]: The first argument must be one of type string or Buffer
    at ServerResponse.end (_http_outgoing.js:747:13)
    at ServerResponse.send ([...]/node_modules/express/lib/response.js:221:10)
    at ServerResponse.json ([...]/node_modules/express/lib/response.js:267:15)
    at api.post (/the/code/above)

If you check at /node_modules/express/lib/response.js:221:10 you see
this.end(chunk, encoding);

where encoding is from a few lines above (l. 189, I checked with a printf)
chunk = Buffer.from(chunk, encoding)

I could hack the lib out to make that work, but I suspect some broken node_modules folder. However the error persists even after a rm package-lock.json; rm -rf node_modules; npm i.
Any clue on how to solve this would be very appreciated?
Below are my version numbers:

node 9.8.0 (also tried with 8.4.0), installed locally with nvm
npm 5.6.0
express 4.16.3
ts-node 5.0.1
typescript 2.7.2

Note
I tried removed the node_modules folder then npm i the packages one by one:
npm i aws-sdk body-parser bunyan check-types deepcopy duck-type express fast-csv glob handlebars http-auth md5 moment moment-timezone multer node-stream object-path randomstring

Still get the same error.

Very strange indeed. I can take a look for sure and try to figure it out. I have never seen the issue and the CI server doesn't seem to have an issue so nothing jumps out to me. Is it possible to provide exact code I can run and instructions so I can reproduce and get the same error? That would help a lot as I can attach a debugger and dig into what is causing the issue.

Thank you. Let me make a reproducible version of that without proprietary code.

OK, figured out. It was a ts-node config related problem.
I was launching my server with
ts-node --harmony_async_iteration -r tsconfig-paths/register ./src/index.ts

With the following lines in my tsconfig.json:
{
  "compilerOptions": {
    "module": "commonjs",
    "target": "es2017",
    "lib": [ "es2017", "esnext.asynciterable" ],
    "noImplicitAny": true,
    "moduleResolution": "node",
    "sourceMap": true,
    "outDir": "dist",
    "baseUrl": ".",
    "pretty": true,
    "paths": {
      "*": [
        "*", "src/*", "src/types/*",
        "node_modules/*"
      ]
    }
  },
  "include": [ "src/**/*" ]
}

Because of the -r tsconfig-paths/register in the command line, the paths specified in the tsconfig.json were loaded, including the "node_modules/*" in paths['*'].
I'm not sure why, but it looks like this was causing the libs in node_modules to be loaded twice, breaking the type checks based on constructors (such as instanceof).
Any clue why? I can still make a toy example if needed.

I've never even heard of ts-node before and not sure what tsconfig.json . Is there a change we can make in Express.js to better support whatever that is?

In fact I don't think it an express-related issue. It's more a ts-node config one. So with respect to this forum I think the issue can be closed. Sorry for the noise.
Btw, ts-node is a tool that allows to run typescript programs the same as vanilla javascript, that is, without an explicit compilation phase.
In other words you can run a typescript program this way: ts-node index.ts.

@trouve-antoine Can this issue be moved to Closed?


Yolov5-Seg

Hi, Is it possible to support yolov5-seg?
Thanks in advance

Not sure because I have no knowledge of the model, and don't have time to investigate it.


[site-support] hotstar is not working !!

ytdl_hook: [debug] Command-line args: ['--no-warnings', '-J', '--flat-playlist', '--sub-format', 'ass/srt/best', '--no-playlist', '--format', 'bestvideo[height<=?400][fps<=?30][vcodec!=?vp9][protocol!=http_dash_segments]+bestaudio/best', '--all-subs', '--', 'http://hshls2-i.akamaihd.net/hls/live/567678/indvaus2017ed/ENGDELINDVSAUS1ODI17092017/master.m3u8?hdnea=st=1505653474~exp=1505654074~acl=/~hmac=7bdaee0cc72859fa9d10489aa109b868d094bfce8d77563bdd04b23359beb87d']
ytdl_hook: [debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
ytdl_hook: [debug] youtube-dl version 2017.09.15
ytdl_hook: [debug] Python version 3.6.2 - Linux-4.12.13-1-ARCH-x86_64-with-arch
ytdl_hook: [debug] exe versions: ffmpeg 3.3.4, ffprobe 3.3.4
ytdl_hook: [debug] Proxy map: {}
ytdl_hook: ERROR: Failed to download m3u8 information: HTTP Error 403: Forbidden (caused by <HTTPError 403: 'Forbidden'>); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
ytdl_hook:   File "/usr/lib/python3.6/site-packages/youtube_dl/extractor/common.py", line 503, in _request_webpage
ytdl_hook:     return self._downloader.urlopen(url_or_request)
ytdl_hook:   File "/usr/lib/python3.6/site-packages/youtube_dl/YoutubeDL.py", line 2177, in urlopen
ytdl_hook:     return self._opener.open(req, timeout=self._socket_timeout)
ytdl_hook:   File "/usr/lib/python3.6/urllib/request.py", line 532, in open
ytdl_hook:     response = meth(req, response)
ytdl_hook:   File "/usr/lib/python3.6/urllib/request.py", line 642, in http_response
ytdl_hook:     'http', request, response, code, msg, hdrs)
ytdl_hook:   File "/usr/lib/python3.6/urllib/request.py", line 570, in error
ytdl_hook:     return self._call_chain(args)
ytdl_hook:   File "/usr/lib/python3.6/urllib/request.py", line 504, in _call_chain
ytdl_hook:     result = func(args)
ytdl_hook:   File "/usr/lib/python3.6/urllib/request.py", line 650, in http_error_default
ytdl_hook:     raise HTTPError(req.full_url, code, msg, hdrs, fp)
ytdl_hook:
ytdl_hook: youtube-dl failed, trying to play URL directly ...
cplayer: Run command: hook-ack, flags=0, args=[on_load]
ffmpeg: Opening http://hshls2-i.akamaihd.net/hls/live/567678/indvaus2017ed/ENGDELINDVSAUS1ODI17092017/master.m3u8?hdnea=st=1505653474~exp=1505654074~acl=/~hmac=7bdaee0cc72859fa9d10489aa109b868d094bfce8d77563bdd04b23359beb87d
ffmpeg: http: HTTP error 403 Forbidden
stream: Failed to open http://hshls2-i.akamaihd.net/hls/live/567678/indvaus2017ed/ENGDELINDVSAUS1ODI17092017/master.m3u8?hdnea=st=1505653474~exp=1505654074~acl=/~hmac=7bdaee0cc72859fa9d10489aa109b868d094bfce8d77563bdd04b23359beb87d.
cplayer: Opening failed or was aborted: http://hshls2-i.akamaihd.net/hls/live/567678/indvaus2017ed/ENGDELINDVSAUS1ODI17092017/master.m3u8?hdnea=st=1505653474~exp=1505654074~acl=/~hmac=7bdaee0cc72859fa9d10489aa109b868d094bfce8d77563bdd04b23359beb87d
cplayer: finished playback, loading failed (reason 4)
cplayer:

You must use source hotstar URL.


[vm/ffi] Native asset dynamic libraries should be dlclosed on isolate (group) shutdown

We have an open issue for caching:

https://github.com/dart-lang/sdk/issues/55519

When we address caching, we should cache per isolate group, so that we can dlclose (decreasing the ref count) per isolate group.
N.b. We need to make sure that multiple isolates racing for the same memoizable idempotent call only dlopen once to not get lost in the refcount.

N.b. We need to make sure that multiple isolates racing for the same memoizable idempotent call only dlopen once to not get lost in the refcount.

We'd want to stop such racing in the Dart VM, before we send the request to the embedder via the callback. (Or we need to send as many dlcloses as we send dlopens.)
Another note: This only works if the addressOf operator is not used to send a pointer of a symbol to another isolate group. (Not sure why someone would, but they can.)


ISPN-10842 store migrator docs

https://issues.redhat.com/browse/ISPN-10842
Needs backport to 10.1.x

Thanks @oraNod


Keep documentation current with code/functionality

Version
Latest
Hardware configuration
Serpent Canyon NUC
Describe the bug
I had a difficult time getting benchmarks completed, the documentation may be out of date given the current state of the source base refactoring. I received some one-on-one help to run the right commands. This isn't just a specific bug, but a suggestion to look at the process and release documentation that matches the code functionality at the same time as releasing the code (users are likely to pull 'latest')
To Reproduce
git clone 'latest'
build and run the performance commands - they fail

Add tag to quckstart guide


add Change Operator and Visual Mode tutorials

As mentioned in #2035, I felt a "visual mode" tutorial should come next.  However, once I started working on it I realized I would want to demo visual mode with all three operators: yank, delete, and change.  Since there wasn't a Change Operator tutorial yet, I threw one together.  Personally, I think change is most useful when used in conjunction with t/f/i/a.  Since we haven't written those tutorials yet, I only included cw in the Change Operator tutorial.  While I could add steps for ce, cb, cj, and ck, I don't feel like those operations are very beneficial and would just confuse a user as to why you'd want to do those things.
After looking back at these tutorials, I feel like I should probably repeat some operations to reinforce the learning.  The current state is function though, so adding reinforcement could probably come in a separate pull request.

Awesome! Thanks for these, @keforbes !

Since there wasn't a Change Operator tutorial yet, I threw one together.

Nice, this was a big gap in our 'curriculum' - IMO the change operator is very important to get the feel for Vim.

Personally, I think change is most useful when used in conjunction with t/f/i/a.

Right, it would be great to have a tutorial that covers ciw, cf<char>, etc. I think for both 'change' and 'delete' it would be helpful to have a second tutorial, like:

Delete + Motions (dj, d5k, dw, etc)
Change + Motions (ciw, cw, ct(, ci", cit, etc).

We don't really have a good experience now that brings together the 'operators' and 'motions' - so I think having these next-level change/delete tutorials would be good (and they'd also help address the repetition concern).

The current state is function though, so adding reinforcement could probably come in a separate pull request.

For sure! I think what you have here is an excellent start - it's great to see the tutorials fill out and cover more of the functionality. Played through both of these and I like them - great to have coverage over Visual mode! 👍
Oh, one other idea - perhaps we could have a blockwise visual mode tutorial at some point for <c-v>... I definitely need to practice that... 😄

Change looks great to me! Thanks for including the new notes in the sidebar, too 👍


Update schema_patcher.pl

Funcgen has renamed its sql file from 'efg.sql' to 'table.sql', therefore schema_patcher.pl has to be modified to reflect this change.

Tidy, thank you.

Seems simple enough

Coverage remained the same at 79.683% when pulling 160119e0d9e3ceeb4c688f61a45e0409c721d96d on ilavidas:patch-1 into 100cca1841feab47d637610246964ade27ac9033 on Ensembl:master.


🛠 Tooling: Enforce .js extensions for imports

Bug Report Checklist

[X] I have tried restarting my IDE and the issue persists.
[X] I have pulled the latest main branch of the repository.
[X] I have searched for related issues and found none that matched my issue.

Overview
Right now, this repo writes import statements with explicit .js extensions for relative file paths:
import { greet } from "./greet.js";

It does so because the output ESM (ECMAScript Modules) .js files need that explicit .js extension. The ESM import algorithm doesn't allow omitting it. You can read more at https://www.typescriptlang.org/docs/handbook/esm-node.html.
I'd like some sort of check in this repo to make sure that if you write an export or import or export statement in code, it uses the explicit extension. Because otherwise there's nothing stopping folks from checking this in and then causing package build breaks like I did!

Bug: https://github.com/JoshuaKGoldberg/ts-api-utils/issues/35
Fix: https://github.com/JoshuaKGoldberg/ts-api-utils/pull/36

Additional Info
It looks like this rule is what I'm looking for? https://github.com/import-js/eslint-plugin-import/blob/d5fc8b670dc8e6903dbb7b0894452f60c03089f5/docs/rules/extensions.md

Would it not be better to just also bundle the esm? It seems kind of strange to me that only the csj is bundled. Would we not want both systems to benefit from it?
The build scripts could be defined like this:
"scripts": {
  "build": "pnpm build:esm && pnpm build:cjs",
  "build:cjs": "tsup src/index.ts --format cjs --outDir lib --dts",
  "build:esm": "tsup src/index.ts --format esm --outDir lib --dts",
}


OpenTabletDriver support

Currently, graphics tablets are recognized, but osu! throws several errors about this.
So I need:

compile libevdev
send "silent" notification to user at game startup if wacom/hid_uclogic kernel module currently being used (?)
write more user-friendly udev rules generator script in bash and add mention about it to README

689af06576a8dc585e0bebf78518b402dd7d7ac3 looks complete

Any chance of PRing changes... so they can be reviewed?

Any chance of PRing changes... so they can be reviewed? facepalm
Im sorry what is PRing?

I've reverted the changes, please create a PR.

As in make a pull request for each change you are making so others can provide feedback before potentially deploying bad code/changes to users. Preferrably one per change, not one commit covering 5 different changes.

Okay, sorry about that

What's the status of this? It seems to work fine atm over here, though needs OTD installed on the host (which is to be expected).


Gitify Android link dead 😢

Seems like Android version is no longer recommended so might be ideal to remove that section.

iOS link also appears to be dead?


Tabbling & Ctrl+F-ing elements

Searching for something (Ctrl+F) or tabbing for interactive elements offsets and breaks the horisontal snapping.

Have there been any updates on this?


Converting Asset to a Plugin

I think this works a lot better as a Plugin. And as I wanted to learn the basics of creating Godot Plugins anyway, I decided to port it.
The main changes:

It now Shows up as a Costum Node and can be added like any other node into a scene.
I reworked the naming convention so it follows the Godot Philosohpy and is a bit clearer.
Added Static Typing
It is now a tool and can be modified in Editor.

It would be really neat to add 3D gizmos in the editor, but I think this will be a project for later.
Before you merge this, just make a copy of your project.godot, I have deleted and ignored it, as it should not be included with an asset.
I am also going to ask for feedback on this in the Godot Discord and see if I made a mistake ...

One last weird thing: I am not sure if we are supposed to include files such as README.md or LISENCE to the Asset Library when submitting a Plugin.
I think I need to look into this tomorrow, but I am really confused, as there are conflicting information about this out there. We may need to manually upload a zip file without those files and provide that to the AssetLib. Or I'd need to create a new project and have make addons/LineRenderer the repo root

Okay, so I ahve checked a few add-ons:
Most of them seem to just provide a release with a zip that does not include any of the non-needed files.
So I did make a releasse.

As this Repository seems to be abandoned, I am just going to continue working on my fork.


Deleted 404 custom route

Closes #6
Deleting the 404 custom route until the upstream issue with the i18n package is fixed.
The default 404 page will nowbe rendered.

Since Astro patched the issue upstream with this PR, i reinstated the custom translated 404 route in the kit.


i can't install axiom and mildew

i used gcp and heroku  to install reconftw for start recon but last update when i install tools axiom and mildew not install i tried everything but nothing i hope to solve this problem thank you

If you can't install just axiom or mildew, you should try to take a look in their repositories for the correct installation methods. Anyway I've installed reconftw today and nothing fails in the installation process.

i hope to update docker hub container for reconftw to last release v2.0.1


Direct indexing for sections and segments

As far as I understand, NeuroM main focus is working with separate morphologies (thus access with tree-traversal iterators).
In the context of a full circuit, however, often what we want is a table-like access to segment / sections properties (for example, to find the volume of the neurites of particular type within given region).
Should it be also a responsibility of NeuroM to provide efficient data access for scenario like this?
Or should it be a library relying on NeuroM? A completely separate thing?

Good question.  The current focus is certainly separate morphologies 'floating' in space, with no interactions between them, and no awareness of the space around them.
Expanding the missions statement is possible, but if anything, I think it would be more useful to reduce the scope of this library, and have extensions for different purposes.  Being spatially aware, and providing efficient access would be one of the extensions, in my view.
Maybe we could start that way (ie: separate library) and add whatever is necessary in NeuroM to achieve that, and consider folding it into the main library at some point if we decide to go that direction.

Is this issue related to #276? I think this is a very good point and it would be convenient to provide a global system that will be able to provide section and segment information (even if that is outside NeuroM).

I would like to mention at this point that Adrien (HPC) has developed Morpho-Tool and they are working on a python interface.
Apart from the usual tree data structure (c++) for the morphologies (which can be editable) it provides spatial indexing with Boost RTree.
You might be interested in integrating it with NeuroM.


Question : Hi, when I run npm run preview, it give warning : [vite-plugin-svelte] WARNING: The following packages have a svelte field in their package.json but no exports condition for svelte<EMAIL_ADDRESS>

[vite-plugin-svelte] WARNING: The following packages have a svelte field in their package.json but no exports condition for svelte.

<EMAIL_ADDRESS>
How can I fix it ?
Thanks
Note: preview works fine but npm run build generate errors (but I dont know if this is related)

solved with installing latest version :
"svelte-exmarkdown": "^3.0.2"


Compilating errors

Hi, thanks for all your work
I just trying to build the latest version using MSYS clining the repo https://github.com/epicmartin7/sys-ftpd-ovl and get this errors:
main.cpp
built ... sys-ftpd-ovl.nacp
C:/msys64/home/Impeeza/sys-ftpd-ovl/source/main.cpp:57:62: error: 'touchPosition' has not been declared
   57 |         virtual bool handleInput(u64 keysDown, u64 keysHeld, touchPosition touchInput, JoystickPosition leftJoyStick, JoystickPosition rightJoyStick) override {
      |                                                              ^~~~~~~~~~~~~
C:/msys64/home/Impeeza/sys-ftpd-ovl/source/main.cpp:57:88: error: 'JoystickPosition' has not been declared
   57 |         virtual bool handleInput(u64 keysDown, u64 keysHeld, touchPosition touchInput, JoystickPosition leftJoyStick, JoystickPosition rightJoyStick) override {
      |                                                                                ^~~~~~~~~~~~~~~~
C:/msys64/home/Impeeza/sys-ftpd-ovl/source/main.cpp:57:119: error: 'JoystickPosition' has not been declared
   57 |         virtual bool handleInput(u64 keysDown, u64 keysHeld, touchPosition touchInput, JoystickPosition leftJoyStick, JoystickPosition rightJoyStick) override {
      |                                                                                ^~~~~~~~~~~~~~~~
C:/msys64/home/Impeeza/sys-ftpd-ovl/source/main.cpp:57:22: error: 'virtual bool GuiTest::handleInput(u64, u64, int, int, int)' marked 'override', but does not override
   57 |         virtual bool handleInput(u64 keysDown, u64 keysHeld, touchPosition touchInput, JoystickPosition leftJoyStick, JoystickPosition rightJoyStick) override {
      |                      ^~~~~~~~~~~
C:/msys64/home/Impeeza/sys-ftpd-ovl/source/main.cpp: In lambda function:
C:/msys64/home/Impeeza/sys-ftpd-ovl/source/main.cpp:37:33: error: 'gethostname' was not declared in this scope; did you mean 'hostname'?
   37 |                                 gethostname(hostname, sizeof(hostname));
      |                                 ^~~~~~~~~~~
      |                                 hostname
make[1]: *** [/opt/devkitpro/devkitA64/base_rules:14: main.o] Error 1
make: *** [Makefile:170: build] Error 2

I am missing some library?
thanks.

Sorry the repo seems stall, closing the issue


Suppression of bs_finder.cpython-36.pyc. 🐞

@henry090 Last commit introduced the suppression of inst/python/fastaibuilt/pycache/bs_finder.cpython-36.pyc.
I was getting a merging error because of this file, I though I merged the new one of the  henry090 / fastai master branch here in my fork.
I do not know how this file is generated in the first place. Maybe you should check after it.
Edit : looking at my history I did git rm on this file to try to solve the merging error. That was quite stupid, sorry for that. I just that just re indexing the file on your local folder will do the trix.

You can skip this file. It does not affect anything.

Good to know. I was just worried about this. Thanks.


Context::with_err is private

Perhaps I'm doing this wrong, but should Context::with_err be private?
In attempting to follow the best-practices advice from issue #6, I am attempting to implement my custom error type as a struct, with enum ErrorKind variants.
I suppose I'm not following best practices advice by loading a variant with a cause (advice on how best to do this is welcome), but the way I attempted to do this requires access to the Context::with_err static constructor method, which is private.  Is this intentional?
Here is my code:
use failure::Context;
use assayer::Error as AssayerError;

#[derive(Debug, Fail)]
#[fail(display = "{}", inner)]
pub struct Error {
    inner: Context<ErrorKind>,
}

#[derive(Debug, Fail)]
enum ErrorKind {
    #[fail(display = "argument validation error")]
    #[cause] ArgValidation(AssayerError),
}

impl From<AssayerError> for Error {
    fn from(err: AssayerError) -> Error {
        Error { inner: Context::with_err(ErrorKind::ArgValidation(err), err), }
    }
}

The above yields error[E0624]: method `with_err` is private.
If I am using Failure wrong, my apologies.  Suggestions/advice welcome!

There's a context method on the Fail trait that you can use-- it calls Context::with_err internally.

Thanks, @cramertj, I'll give that a shot.

Yep, the intent is you create a context with Fail::context or (if you want to create one without an underlying error) with Context::new. Context::with_err is an implementation detail.

I guess I'm confused.  In impl From... for Error above, I am wrapping a foreign error (which is not Fail);
I don't know how can I initialize Error::inner using Fail::context(), without a Fail instance available.   Any ideas?
I'm also a bit puzzled on the asymmetry between using Fail::context for context with underlying error and Context::new for context without underlying error.  I've no doubt there are valid implementation reasons for the split, but I wonder if the ergonomics could be improved by supporting both scenarios under Fail with Fail::context for context without an underlying error and Fail::context_err for context with an underlying error (or something similar).

Ah, nvm.  I see now that Fail::context is supposed to be used in error's throw path, rather than at its declaration point.  That  clears up both points of confusion I was under.


[help command]

Wouldnt it be better to subclass the help command? i found a pretty useful gist post about it, you can find it here

I mean it could be better to do it this way and I may look into it in the future but this help command is still very much functional. I'll see what I can do if I get time

People like subclassing for some reason, and its also easier to subclass since you dont need to remove the help command manually

Yeah I see, I'll look into it


Transfer Sergey's pybcl branch from the old private repo

@lyskov Made a number of changes for the pybcl branch in the RosettaCommons BCL repo, which is based off of the old, pre-MIT private repo. (These were merged with https://github.com/RosettaCommons/bcl/pull/14 )
This PR attempts to graft those changes back onto the public version of the repository.

Thank you @roccomoretti for transferring it to public BCL repo!

Awesome, - thank you for taking care of this @roccomoretti @brownbp1 !


RUMM-3367: Align APIs of Logs feature and Logger configuration with iOS SDK

What does this PR do?
This change aligns APIs used to configure Logs feature and Logger with wording used in iOS SDK.
Changes:
For Logger:

setLoggerName -> setName
setSampleRate -> setRemoteSampleRate
setDatadogLogsMinPriority -> setRemoteLogThreshold

setDatadogLogsEnabled method is removed, because it duplicates functionality which can be achieved by the setRemoteSampleRate method.
setLogcatLogsEnabled, setNetworkInfoEnabled, setBundleWithTraceEnabled and setBundleWithRumEnabled are not changed, because this naming works better with Builder pattern and anyway wording stay the same in general (iOS SDK is using bundleWithRUM, bundleWithTrace, consoleLogFormat, sendNetworkInfo properties).
LogsConfiguration got setLogEventMapper renamed to setEventMapper, because we are anyway already in the Logs context.
Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[ ] Make sure you discussed the feature or bugfix with the maintaining team in an Issue
[ ] Make sure each commit and the PR mention the Issue number (cf the CONTRIBUTING doc)

Codecov Report

Merging #1503 (ccf2598) into feature/sdkv2 (f08005b) will increase coverage by 0.03%.
The diff coverage is 66.67%.

@@                Coverage Diff                @@
##           feature/sdkv2    #1503      +/-   ##
=================================================
+ Coverage          83.13%   83.16%   +0.03%
=================================================
  Files                423      423
  Lines              14557    14555       -2
  Branches            2181     2182       +1
=================================================
+ Hits               12101    12104       +3
+ Misses              1870     1866       -4
+ Partials             586      585       -1

Impacted Files
Coverage Δ

...in/kotlin/com/datadog/android/log/LogAttributes.kt
0.00% <ø> (ø)

...otlin/com/datadog/android/log/LogsConfiguration.kt
100.00% <ø> (ø)

...n/kotlin/com/datadog/android/timber/DatadogTree.kt
50.00% <0.00%> (ø)

.../src/main/kotlin/com/datadog/android/log/Logger.kt
97.44% <100.00%> (-0.04%)
:arrow_down:

... and 16 files with indirect coverage changes


Parallel getMultiStarts not using objectiveWrapWErrorCount

... but sequential getMultiStarts does.
Do we really need both objectiveWrap.m and objectiveWrapWErrorCount.m? They are mostly identical. Can we implement the "WErrorCount" functionality in objectiveWrap.m with an optional argument incrementGlobalErrorCounter=false?

The historic reason for having two versions is that global variables do not work in a parallel environment. If there is a good way to avoid the global variables, this would be ideal.

Ah, I see. Will try to merge the two.

If you find a good way, you can unify both files. That would be nice (in the case: call the new file only objectiveWrap)...


Match existing API

To bring over more users we should try to match the same api in the sdk in order to provide a known environment to users.

I've thought about this. I can crank out all the common modules in no time and might grind on that over the weekend.

This is underway in #29


Make ci-infra-service.yml work with multiple apps

infra/test/infra_test.go does not currently support multiple apps. It currently hardcodes app. to make it support multiple apps we will want to:

separate the test into infra/test/<app_name>/infra_test.go
extract the logic from .github/workflows/ci-infra-service.yml into a new callable workflow infra-test-app.yml (similar to deploy.yml and vulnerability-scans.yml)
make .github/workflows/ci-infra-<app_name>.yml that calls the callable workflow

@rocketnova fyi since you're working on multi-app stuff. ci-infra-service.yml can probably be out of scope for your multi-app scripts since it needs to be refactored before it can be supported.

cc @doshitan you could theoretically work on this too


Make imageupload.php have the same structure as the new imagemanager.php

imagemanager.php, for instance, have all the file upload messages with g11n.

The new imagemanager.php (service and front-end) was expanded to handle single and multiple file uploads, unifying the image uploads in one service. As a consequence, imageupload.php has been deleted.


Add prql-query to website?

Should we add prql-query to Tools, and the FAQ?

Not yet please. Development has stalled somewhat at the moment. I'm still trying to work out issues raised by our one alpha tester.
I think the appropriate time to profile it would be at the v0.1 milestone.


Tutorial in the Lingui docs

Hi @HenryLie, thanks for your work on this, it looks really impressive!
This package is already mentioned in the tooling section, but I'm afraid that's not enough to make it easy for users to find.
It would be great to have a separate tutorial that guides Svelte developers on how to integrate Lingui and svelte-i18n-lingui into their projects, but I'm not familiar enough with Svelte to write that tutorial.
Would you be interested in writing such a tutorial in the Lingui documentation? It could help promote the package and help Svelte developers with the Lingui integration. It might also attract more contributors.

Hi @andrii-bodnar, thanks for the suggestion. Building a tutorial sounds like a great idea!
I'm currently in the middle of preparing the next version of the library v0.2, which will introduce a pretty big change (for the better) on the syntax. I'll start preparing a tutorial once that version is released. Should I just follow this guide and submit a PR then?


Fix the text area accessibility for register page

Description
LEARNER-2905
Provide valid labels for all form elements Mobile registration form

Codecov Report

Merging #1035 into master will decrease coverage by <.01%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master    #1035      +/-   ##
==========================================
- Coverage   48.86%   48.86%   -0.01%
==========================================
  Files         409      409
  Lines       25912    25913       +1
==========================================
  Hits        12662    12662
- Misses      13250    13251       +1

Impacted Files
Coverage Δ

Source/OEXRegistrationFieldTextAreaView.m
44.44% <0%> (-1.02%)
:arrow_down:

Continue to review full report at Codecov.

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

@saeedbashir I checked that this is natively appear with textview in iOS 11.x
I tried to disable the auto spell and auto correct property but it still voice that mis spell check.


As shown in the figure, I execute “make release” in the HelloServer / bin directory, and finally I only see hello.h in the / home / tarsproto / TestApp / HelloServer directory, without tars and mk files?

E：The new version only has .h file, so you only need to include this directory.
C：新版本只有.h, 所以只需要include这个目录就可以了


Onboard to create-typescript-app

I've been migrating a bunch of repos under my purview to https://github.com/JoshuaKGoldberg/create-typescript-app. It contains a bunch of IMO useful tooling and helps standardize on using "latest and greatest" configurations for them. Plus having automated all-contributors recognition, release, etc. is quite nice.
Confirmed with @zetlen that we're clear to onboard. But since CTA is quite new I'll definitely put forward the PR as a proposal first!
Will tackle after: #34, #35, #36.

Marking as blocked on #35, which is blocked on #39.


Necessary to include request in middleware?

I have all of my requests set up to fire within my Sagas. I noticed in your example you use socket.emit and then the response to create a Redux action.
Is it necessary to have the socket.emit request in the middleware for redux-optimistic-ui to work? If it isn’t necessary, are there any examples that illustrate that?

No!
Ok, so I fumbled around with this for a while. Here is what came up with in case anyone else happens upon this. I completely skip the middleware. After all, Thunks, Sagas etc are just processed in middleware anyways (so REALLY I just happen to be Thunk as my middleware piece and get clever in my action)
I happen to be using Thunk's to do this, but any asyncronous dispatching should be fine
let nextTransactionID = 0;
async function thunkAction(): ThunkAction<Promise<void>, IReduxState, undefined> {
  const transactionID = nextTransactionID++;

  try {
    // Optimistic dispatch
    dispatch({ ...newDataActionCreator(optimisticData),
      meta: { optimistic: { type: BEGIN, id: transactionID } },
    });
    const response = await fetch(...);

    const realData = await response.json().data;
    // Ok, now lets rewrite with our real data
    // note that the state after optimistic dispatch is the starting point for this dispatch
    // Either have a different action here, or ensure that applying the action with the real data AFTER
    // the action with the optimistic data gives you your desired state
    dispatch({ ...newDataActionCreator(realData),
      meta: { optimistic: { type: COMMIT, id: transactionID } },
    });
  } catch(err) {
    // Here, the state is reverted to before the optimistic dispatch before applying the next dispatch
    dispatch({ ...errorActionCreator(new Error('Fetch failed')),
          meta: { optimistic: { type: REVERT, id: transactionID } },
    });
  }

I know this is an old issue, but I will show another example for good measure.
This is currently how I do it in my app, using redux-observables. This combination has been wonderful to use, so thanks a lot for this library!
The great thing about this approach is that the middleware handles the IDs, while the epics only really decide if it should be committed or reverted.
//ReduxOptimisticMiddleware.js
import { BEGIN, COMMIT, REVERT } from "redux-optimistic-ui";

//All redux action types that are optimistic have the following suffixes
const _SUCCESS = "_SUCCESS";
const _ERROR = "_ERROR";

//Each optimistic item will need a transaction Id to internally match the BEGIN to the COMMIT/REVERT
let nextTransactionID = 0;

export default store => next => action => {
    // FSA compliant
    const { type, meta, error, payload } = action;

    // Ignore actions without isOptimistic flag
    if (!meta || !meta.isOptimistic) return next(action);

    const isSuccessAction = type.endsWith(_SUCCESS);
    const isErrorAction = type.endsWith(_ERROR);
    //Response from server, handled in epic-middleware
    if (isSuccessAction || isErrorAction) {
        return next(action);
    }

    // Now that we know we're optimistically updating the item, give it an ID
    let transactionID = nextTransactionID++;
    // Sending to server; extend the action.meta to let it know we're beginning an optimistic update
    return next(
        Object.assign({}, action, {
            meta: { optimistic: { type: BEGIN, id: transactionID } }
        })
    );
};

//epics.js
const editApp = action$ =>
    action$.ofType(actions.APP_EDIT).concatMap(action => {
        const { app, data } = action.payload;
        return api
            .updateApp(app.id, data)
            .then(resp =>
                actionCreators.commitOrRevertOptimisticAction(
                    actionCreators.editAppSuccess(app, data),
                    action
                )
            )
            .catch(error =>
                actionCreators.commitOrRevertOptimisticAction(
                    actionCreators.actionErrorCreator(
                        actions.APP_EDIT_ERROR,
                        error
                    ),
                    action
                )
            );
    });
export default combineEpics(editApp);

//actionCreators.js
const optimisticActionCreator = action => ({
    ...action,
    meta: { ...action.meta, isOptimistic: true }
});

export const commitOrRevertOptimisticAction = (
    action,
    transaction,
    error = false
) => {
    if (action.error) {
        error = true;
    }
    let transactionID = transaction;
    if(transaction && transaction.meta && transaction.meta.optimistic) {
        transactionID = transaction.meta.optimistic.id;
    }
    return {
        ...action,
        meta: {
            ...action.meta,
            optimistic: error
                ? { type: REVERT, id: transactionID }
                : { type: COMMIT, id: transactionID }
        }
    };
};

//This is what my actionCreators will look like
export const optimisticEditApp = (app, data) =>
    optimisticActionCreator(
        actionCreator(actions.APP_EDIT)({
            app,
            data
        })
    );

That's it! All I do to have an action being optimistic is decorating it with optimisticActionCreator. In my views I can just do dispatch(optimisticEditApp).


Frontend: Exploring frontend testing framework

As recommend in this article, setup the unit test framework with Vitest, and tried the cypress for integration and e2e test
Run unit test:
npm run test:unit
(still need to check the configuration of code coverage, how to let it checks files under src specific folders)
Run e2e test:
npm run build (have to run build first to get the dist directory, otherwise the vite preview command not works)
npm run test:e2e:ci
The command: "start-server-and-test preview http://<IP_ADDRESS>:5050/ 'cypress run'" means run the preview command and start the app first, and then run the test
In order to let the component import works for test files, need to create a "shims-vue.d.ts" file under src folder:
/* eslint-disable */
declare module "*.vue" {
  import type { DefineComponent } from "vue";
  const component: DefineComponent<{}, {}, any>;
  export default component;
}

#12


Refactor to use Go midi's MIDI message structs

Tasks:

[ ] Convert from LFE/Erlang midi messages to these
[ ] Replace our custom Go MIDI types with the Go midi library's types
[ ] Remove all our Go calls and replace with a single call to writer/messages/WriteMessages

So, it turns out that there are a some mechanics around using the gomidi messages ... namely, the work is essentially the same as if you use the higher-level API (it's not just a matter of creating messages and sending them, rather, calling message-creating methods on channels, etc.)


not working, or I'm just not understanding

For some reason, prnouns just don't show up for me in chat or in the player list.

I apologize if this is the wrong place, wasn't sure where else to post this

ah sorry, i meant to reply to this (i am very easily distracted unfortunately)
the mod itself doesn't include features to display pronouns anywhere, it's designed to integrate with other mods like styled chat or styled player list. there's a couple of examples for those two mods in the readme

Don't worry about being distracted, I didn't expect a replay right after I made the post anyway.
Yeah, I figured it out, hence why I closed this myself as it was user-error. However, I think having a direct thing saying "hey, this mod does not work on it's own and require the use of styledchat and styledplayerlist" would clear up the confusion, at least for people who might run into the same thing I was dealing with.

yeah i agree
i've updated the github readme, and the modrinth description to hopefully better clarify that other mods are required - hopefully they're a bit less vague now (especially the modrinth one, which mentioned the other mods, but only with screenshots and not mentioning that you need them to set it up)


Update CONTRIBUTING.md

Add contributor line for Clément BEGNAUD, Nantes (France)
Acceptance Test

[x] Building the code with mvn clean install -Dintegration.tests still works.
[x] Running mvn spring-boot:run in the strongbox-web-core still starts up the application correctly.
[x] Building the code and running the strongbox-distribution from a zip or tar.gz still works.
[x] The tests in the strongbox-web-integration-tests still run properly.

Questions

Does this pull request break backward compatibility?

[ ] Yes
[x] No

Does this pull request require other pull requests to be merged first?

[ ] Yes, please see #...
[x] No

Does this require an update of the documentation?

[ ] Yes, please see strongbox/strongbox-docs#{PR_NUMBER}
[x] No

Closing, as there are no merged pull requests associated with this. Sorry.


mycontract need to modify another contract data on user scope, mycontract  must has the user signature,but mycontract will never has  user signature by push action?

mycontract need push action to currency contract(DAWN-2018-03-30-ALPHA) to auto transfer balance
my contract code mycontract.cpp:
void send_deferred_transaction() {
   using namespace eosio;
   auto trx = transaction();
   transfer trans = unpack_action_data<transfer>();
   test_action_action<N(currency), N(transfer)> transfercurrency;
   copy_data((char*)&trans, sizeof(trans), transfercurrency.data);
   trx.actions.emplace_back(vector<permission_level>{{trans.from, N(active)}}, transfercurrency);
   trx.send( 0xffffffffffffffff, now()+2 );
}

after mycontract published,run my command:
cleos push action mycontract transfer '{"from":"oct", "to":"chenlian", "quantity":"10 CUR", "memo":""}' -p oct@owner
then get Error 3030002: signatures do not satisfy declared authorizations
Ensure that you have the related private keys inside your wallet and you wallet is unlocked
then, i modify mycontract.cpp code as below:
void send_deferred_transaction() {
   using namespace eosio;
   auto trx = transaction();
   transfer trans = unpack_action_data<transfer>();
   test_action_action<N(currency), N(transfer)> transfercurrency;
   copy_data((char*)&trans, sizeof(trans), transfercurrency.data);
   trx.actions.emplace_back(vector<permission_level>{{N(mycontract), N(active)}}, transfercurrency);
   trx.send( 0xffffffffffffffff, now()+2 );
}

after mycontract published,run my command:
cleos push action mycontract transfer '{"from":"oct", "to":"chenlian", "quantity":"10 CUR", "memo":""}' -p oct@owner
then i get  error as below:
 3171506ms thread-0   chain_controller.cpp:1619     log_handled_exceptio ] 3030001 tx_missing_auth: missing required authority
missing authority of chenlian
    {"account":"chenlian"}
    thread-0  apply_context.cpp:122 require_authorization

    {"_pending_console_output.str()":""}
    thread-0  apply_context.cpp:29 exec_one

    {}
    thread-0  chain_controller.cpp:1662 __apply_transaction

summary：mycontract need to modify another contract data on user scope, mycontract  must has the user signature,but mycontract will never has  user signature by push action?

oct first not authorize<EMAIL_ADDRESS>with his active permission beforehand. Please refer to the first comment here https://github.com/EOSIO/eos/issues/4326
The above transaction API is already outdated by the way. Please try again with the latest code and new API and if you still encounter a similar problem, please open new issue, I'm closing this issue. Thanks!


run demo on frames or video

i want to run exampled ssd codes on frame images.
is there any way for this?

Yes you can.
Just modify demo.py.

i did it by modifying demo.py
for num in range(0, 8):
path = '/home/han/Dataset/frame_jpg/road' + str(num) + '/'
for filename in os.listdir(path):
    prevTime = time.time()

    img = mpimg.imread(path + filename)
    rclasses, rscores, rbboxes =  process_image(img)

    curTime = time.time()
    sec = curTime - prevTime

    fps = 1/(sec)

    visualization.bboxes_draw_on_img(img, rclasses, rscores, rbboxes, visualization.colors_plasma)

    out = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
    _height, _width, _channels = out.shape
    cv2.putText(out, 'FPS : %.3f' % fps,(_width/10, _height/10),color=(0, 0, 255),fontFace=cv2.FONT_HERSHEY_COMPLEX, fontScale=1, thickness=2)
    cv2.imwrite('/home/han/Dataset/result/SSD300/road' + str(num) + '/' + filename, out)


Link to new contributing documentation

We moved the contributing documentation out of the problem specifications repository.

Thanks.


Dns stops resolving within hours

Ha is configured with a local dns resolver, while all other means of resolving are blocked on our home automation subnet.
When (re)started, HA dns runs perfectly fine, and can resolve all queries through the assigned server.
ha dns info
host: <IP_ADDRESS>
locals:
- dns://<IP_ADDRESS>
servers:
- dns://<IP_ADDRESS>
update_available: false
version: 2021.06.0
version_latest: 2021.06.0
~ $ ping google.be
PING google.be (<IP_ADDRESS>): 56 data bytes

After a few hours, the resolver just stops resolving through the programmed  server. and switches to  dot <IP_ADDRESS>/<IP_ADDRESS>:853 for all dns requests, which are all refused by the router ofcourse. Somehow HA jforgot, that<PHONE_NUMBER>.1 is its assigned dns server.
Edit: logs from the second the issue starts:

[ERROR] plugin/errors: 2 . NS: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:44137 - 6201 "NS IN . udp 40 true 2048" NOERROR - 0 1.001374795s
[ERROR] plugin/errors: 2 . NS: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:50563 - 6201 "NS IN . udp 40 false 4096" SERVFAIL qr,rd 17 6.071750661s
[INFO] <IP_ADDRESS>:45411 - 6201 "NS IN . udp 40 true 2048" NOERROR - 0 1.00095742s
[ERROR] plugin/errors: 2 . NS: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:44137 - 6201 "NS IN . udp 40 true 2048" NOERROR - 0 1.000966169s
[ERROR] plugin/errors: 2 . NS: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:52280 - 6201 "NS IN . udp 40 false 4096" SERVFAIL qr,rd 17 6.008133092s
[INFO] <IP_ADDRESS>:47155 - 3762 "A IN version.home-assistant.io. udp 54 true 2048" NOERROR - 0 1.004052137s
[ERROR] plugin/errors: 2 version.home-assistant.io. A: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:44272 - 3762 "A IN version.home-assistant.io. udp 54 true 2048" NOERROR - 0 1.000851399s
[ERROR] plugin/errors: 2 version.home-assistant.io. A: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:57753 - 3762 "A IN version.home-assistant.io. udp 43 false 512" SERVFAIL qr,rd 43 2.013838761s
[INFO] <IP_ADDRESS>:44704 - 15932 "A IN data.buienradar.nl. udp 47 true 2048" NOERROR - 0 1.001158626s
[ERROR] plugin/errors: 2 data.buienradar.nl. A: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:33818 - 16449 "AAAA IN data.buienradar.nl. udp 47 true 2048" NOERROR - 0 1.003631786s
[ERROR] plugin/errors: 2 data.buienradar.nl. AAAA: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:60988 - 15932 "A IN data.buienradar.nl. udp 47 true 2048" NOERROR - 0 1.000984262s
[ERROR] plugin/errors: 2 data.buienradar.nl. A: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:45411 - 15932 "A IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,rd 36 2.005486429s
[INFO] <IP_ADDRESS>:45411 - 15932 "A IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.00011969s
[INFO] <IP_ADDRESS>:45411 - 15932 "A IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.000257307s
[INFO] <IP_ADDRESS>:33982 - 16449 "AAAA IN data.buienradar.nl. udp 47 true 2048" NOERROR - 0 1.001272358s
[ERROR] plugin/errors: 2 data.buienradar.nl. AAAA: tls: DialWithDialer timed out
[INFO] <IP_ADDRESS>:45411 - 15932 "A IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.000378729s
[INFO] <IP_ADDRESS>:45411 - 15932 "A IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.000304851s
[INFO] <IP_ADDRESS>:45411 - 16449 "AAAA IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,rd 36 2.010680479s
[INFO] <IP_ADDRESS>:45411 - 16449 "AAAA IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.000205219s
[INFO] <IP_ADDRESS>:45411 - 15932 "A IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.000374101s
[INFO] <IP_ADDRESS>:45411 - 15932 "A IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.000223414s
[INFO] <IP_ADDRESS>:45411 - 16449 "AAAA IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.000147082s
[INFO] <IP_ADDRESS>:45411 - 16449 "AAAA IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.000172155s
[INFO] <IP_ADDRESS>:45411 - 15932 "A IN data.buienradar.nl. udp 36 false 512" SERVFAIL qr,aa,rd 36 0.001195803s
[INFO] <IP_ADDRESS>:56238 - 58622 "A IN een.be. udp 35 true 2048" NOERROR - 0 1.001122865s
[ERROR] plugin/errors: 2 een.be. A: tls: DialWithDialer timed out

This problem bas been around for at least 1 year, devs can't/won't fix.
As a work-around, I’m using an edited /usr/share/tempio/corefile.
This is on Home Assistant OS, so that file is located inside the hassio_dns docker container.

was running a script every hour, to restart the container. but this way seems cleaner for now :) ty. Hope that they one day fix it, I'll leave it open, as it rly is a dirty bug

in 2021.11 bug is still present

Still present in 2021.12.7.

this works for me https://github.com/home-assistant/plugin-dns/issues/64#issuecomment-963986104

still present, the workaround doesnt help for long uptime

Also note that there is a new option to disable the fallback dns added here: https://github.com/home-assistant/supervisor/pull/3586 as I would guess a number of users on here would be interested in that.


[SPARK-41974][SQL] Turn INCORRECT_END_OFFSET into INTERNAL_ERROR

What changes were proposed in this pull request?
This PR proposes to update INCORRECT_END_OFFSET as INTERNAL_ERROR.
Why are the changes needed?

We should turn error class into INTERNAL_ERROR when it's not triggered by user space.
Does this PR introduce any user-facing change?

No
How was this patch tested?

./build/sbt "sql/testOnly org.apache.spark.sql.SQLQueryTestSuite*

cc @MaxGekk @srielau @HeartSaVioR FYI

@srielau Yeah, that makes sense. Just created OSS ticket to handle this. Thanks!!

thanks, merging to master!


ProcessHandle::stdio() stream.get() is protected

I'm trying to use uvw::ProcessHandle::stdio() and it does not build when doing:
auto pipe = loop.resource<uvw::PipeHandle>();
exeCurl->stdio(flags, *pipe);

The build failed with an error caused by get() being protected:
container.data.stream = stream.template get<uv_stream_t>();

https://github.com/skypjack/uvw/blob/master/src/uvw/process.hpp#L213

See b54d753.


A/B testing in Caddy?

Hello guys i am currently into a situation where i am trying to do A/B testing and i would like to ask if this is possible somehow in caddy? for example
proxy / {
 policy ip_hash
 to backend:8080 backend:9090
}

somehow what i am looking is to add "weight" so one server could receive 20% of the access and the other 80%
if i were to implement this in nginx this would be possible by adding:
 upstream appServer {
  ip_hash;
  server backend:8080 weight=8;
  server backend:9090;
 }

any thoughts?

One idea might be to put the same backend you want to have higher weight in extra times. Not sure if Caddy will collapse those as being the same though.

It shouldn't collapse them, it appends them to a list, so no de-duplication is being done (I'm pretty sure). For now, that will have to do.


Where is baPictureUploader?

I saw people mentioning baPictureUploader to upload images/files but I couldn't find the it in the node_modules or this repo.  Where is it located?

Hi @ffviixv, you can find it under the previous ng2-admin version branch https://github.com/akveo/ngx-admin/tree/ng2-admin


tid + oid a mistake?

In https://github.com/RIPAGlobal/omniauth-entra-id/issues/33 was concluded  that Microsoft advises to use tid+oid as the uid, and now, starting from version 3 this gem uses that to identify users. From what I can tell, this decision was based on a particular section from this document, stating:

Multi-tenant applications should index on a mapping of two uniquely identifying claims, tid + oid. This will segment tenants by the tid, and segment users by their oid.

However, to me that does not unequivocally imply that oid alone may not be unique across tenants and that the two claims should be concatenated for reliable identification. Many other sources from Microsoft contradict this.
For instance, in the same document is stated that identification should be performed based on a globally unique identifier (GUID), while this page tells us that oid alone is a GUID:

This ID uniquely identifies the user across applications [...]. The oid claim is a GUID and can't be reused.

Here someone from Microsoft confirms that oid is unique:

I assume you are referring to the object ID/oid attribute. If this is the case, the oid claim or ObjectId property is immutable and unique, so it will uniquely identify the relevant directory object. When a single user resides in multiple Entra ID tenants, the user will contain a different object ID/oid in each tenant.

And, finally the most unmistakable statement from this page:

Use claims to reliably identify a user
When identifying a user, it's critical to use information that remains constant and unique across time. [...] Instead, use the claims provided by the OIDC standard, or the extension claims provided by Microsoft - the sub and oid claims.
To correctly store information per-user, use sub or oid alone (which as GUIDs are unique), with tid used for routing or sharding if needed. [...]

At this point, I am not fully convinced that this change and the migration that it necessitates are actually necessary.  I’d genuinely appreciate it if you could share any additional sources or reasoning to support this decision.
For now, we are opting out of tid+oid. For anyone who wishes to do the same: it can be done by subclassing the entra_id strategy and defining your own uid builder using the uid macro:
module OmniAuth
  module Strategies
    class EntraIdWithOid < OmniAuth::Strategies::EntraId
      uid { raw_info["oid"] }
    end
  end
end

Sorry for delay. RIPA couldn't survive the dire economic conditions caused by our current administration's ill-advised austerity-based approach to financial "management" and closed down a few weeks ago. I don't know if I'll be able to keep maintaining this software in my free time; I'd certainly have to fork it to my own repo and publish from there.
Anyway, I wasn't an expert on the TID + OID stuff and relied upon the submitter of the prior PR for this. It was painful, too, given the need to create a new major version and migrate our own code base. Microsoft's documentation on anything to do with Entra or AAD - and some of it is still called Active Directory, sigh - can be, if I'm being both very charitable and polite, described as a total clusterfuck. If I were being uncharitable and impolite, I'd use stronger language 😂
If it is indeed possible to not have the TID+OID for people confident in that... Well, I'm open to suggestions on how to sort that out in the gem. We don't want yet another new major version / backwards compatibility breakage. Perhaps it's just a question of updating the documentation?