Add option to use bytebin for exports/imports

Allows users to export to bytebin instead of saving to file.

/lp export --upload - returns the 10 digit bytebin code
/lp import <code> --upload

A couple things to note:

It does not perform any checks on the import to see if the JSON is formed correctly, I'm not sure if this is handled by the Importer class already.
There is no way to copy the code, which may be annoying to some users. I considered letting users click a link for the bytebin upload but IMO it seems unnecessary.

Let me know if there is anything that should be changed. I'm not very comfortable using Java so there will likely be things that can be done better :P

Looks good to me, thanks!


Expose full mission list

We need access to the full mission list.
for this we would like to get a signal when the mission changed (finished uploading) and a way to read all items (not just then ones known to DC)
@julianoes

get a signal when the mission changed (finished uploading)

Is that in MAVLink? Say if I connect two instances from QGC and upload a mission from one, the other currently doesn't know about that, right?

a way to read all items (not just then ones known to DC)

I guess that would be a new "mission" plugin, as it probably doesn't fit in the current one (or does it?)

get a signal when the mission changed (finished uploading)

You can get completion from the SDK upload_mission_async() but there is no MAVLink message to notify of a full mission upload: https://mavlink.io/en/services/mission.html

I guess that would be a new "mission" plugin, as it probably doesn't fit in the current one (or does it?)

It doesn't fit into the current plugin model of a "simple" API. Options are to add support for all types of mission item, to add an API to set or query the underlying mission params (ie allow a generic option for unknown params). I like the flexibility, but I bet @julianoes won't :-)

I guess that would be a new "mission" plugin, as it probably doesn't fit in the current one (or does it?)

Yes I'd rather have some duplication than one complicated one with all the options that is just as hard as mavlink itself.

I don't think this breaks the SDK, because the plaintext mission format is defacto standard for mission file storage/retrieval. Entirely up to you guys though. The alternatives are to my mind not as clean.

I see. Well that could be a possibility. @julianoes do you have an opinion on that?

Yes, we could have a small plugin just to convert these mission format files.

Wouldn't that fit in the current mission plugin?

Wouldn't that fit in the current mission plugin?

Not really because the mission items don't support all the settings and commands so then part of the file that you want to import is not supported which is actually the case right now as we already support the mission plan file.

Is that in MAVLink? Say if I connect two instances from QGC and upload a mission from one, the other currently doesn't know about that, right?

We now listen for MISSION_ACK to know if the mission was updated

Done in #644.


[DB] There is a region named "?", clicking on wich everything is broken

See World > Ukraine.

It's also the problem of the original GADM DB, see fid 328778


Miscellaneous enhancements

remove the "Test Trajectory" from examples shipped with the app
add a follow-position toggle to the map page of the user trajectory
minor refactor in debug page
make android build instructions more robust for issues like #62

edit: not sure why tests failed, do they depend on the example trajectory?

edit: not sure why tests failed, do they depend on the example trajectory?

Inferences fail from time to time, since our test-data is dynamic. This should be fixed over time with our algorithm getting more robust.

add a follow-position toggle to the map page of the user trajectory

Actually I don't quite see the need for this toggle, but might just be me.

This is helpful for me in debugging the point density issues on android, and I thought it may be handy for users too. But I'm open to removing it again :)

add a follow-position toggle to the map page of the user trajectory

Actually I don't quite see the need for this toggle, but might just be me.

This is helpful for me in debugging the point density issues on android, and I thought it may be handy for users too. But I'm open to removing it again :)

I think the 'over-population' of FABs is what bugs me in the map view. I took the opportunity and did some slight refactoring, now all current floating action buttons are 'hidden' behind only one FAB and expand to a list when toggled. See #70 - what do you think about that?


declare and consume amqp queues with dedicated channels

This is a hail mary attempt to solve that DuplicateConsumerTag error that's been showing up in the telenor connector. Digging through the code, I haven't figured out specifically how we could be triggering that exception. But I did notice that we're declaring both queues with the same channel, and that we'll end up using that channel in both consumer loops. Channels aren't supposed to be shared btw threads, so even though I can't figure out how it could be responsible for this bug, I still think we need to change it.

Have you checked the behavior when we begin consuming? Afaik, that's when the consumer tag actually gets bound

Have you checked the behavior when we begin consuming? Afaik, that's when the consumer tag actually gets bound

I have, and it is. It's possible to set that tag manually, but I haven't managed to produce a scenario where we do. Barring that, the only way to get duplicate tags would be to get duplicate UUID(int=getrandbits(128), version=4), which is just supposed to be impossible.


config.endpoint: actually support https endpoints

Pull #9 added support, but was defaulting to port 80 unless
explicitly declared in the url. Now we leave off the port from the
request config unless it's returned by the url parser.
Nobody writes urls like "https://exmaple.com:443/some/url"
so let's not force them to here. The previous failure was
somewhat cryptic: "socket closed by peer" or something.
Fixes a significant bug in #9

FYI, I've QAed this and it works:
> grep endpoint config.json
  "endpoint": "https://www.example.com/save_hits",
> NODE_DEBUG="tls https http"  node bin/pixel-ping ./config.json 2>&1 | grep -E '^HTTP|port|flushed'
HTTP 4958: call onSocket 0 0
HTTP 4958: createConnection www.example.com:443::::::::: { servername: 'www.example.com',
  port: 443,
HTTPS 4958: createConnection { servername: 'www.example.com',
  port: 443,
HTTP 4958: sockets www.example.com:443::::::::: 1
HTTP 4958: write ret = false
HTTP 4958: outgoing message end.
HTTP 4958: AGENT incoming response!
HTTP 4958: AGENT isHeadResponse false
--- flushed ---
HTTP 4958: CLIENT socket onClose
HTTP 4958: removeSocket www.example.com:443::::::::: writable: false
HTTP 4958: HTTP socket close

Thanks for following up, Daniel — I truly appreciate it.
I've merged your fix and bumped the published version to 0.1.6


Support DTLS

Verify, and implement if necessary, that DTLS works.

For whatever reason this was not closed along with #9338, therefore closing.


network visualization

How to visualize network created by gluon, since mx.viz.plot_network can just visulize symbol

just print
say net = nn.Sequential() net.add(...), then just print(net)
another way is using hybridize to get the symbol, and then use the existing plot_network

For Gluon, this seems to work:
``
x = mx.sym.var('data')
sym = net(x)
a = mx.viz.plot_network(sym)
a.render("test_plot.gv", view=True)
``

for the latest Gluon with mxnet np_array and npx, after hybridize, the code should be:
x = mx.sym.var('data')
sym = net(x.as_np_ndarray())
a = mx.viz.plot_network(sym)
a.render("test_plot.gv", view=True)


Change community support link to discourse

Summary of the changes / Why this improves CrateDB
Change community support link in issue templates to discourse (https://community.crate.io)
Checklist

[ ] Added an entry in CHANGES.txt for user facing changes
[ ] Updated documentation & sql_features table for user facing changes
[ ] Touched code is covered by tests
[ ] CLA is signed
[ ] This does not contain breaking changes, or if it does:

It is released within a major release
It is recorded in CHANGES.txt
It was marked as deprecated in an earlier release if possible
You've thought about the consequences and other components are adapted
(E.g. AdminUI)

Maybe keep both links? While there probably wouldn't be a guideline which tool to use for specific purposes, it could at least offer people to use the medium they like.

I am open for suggestions.
Afaik this was until now more or less a copy/paste from the default GH template
contact_links:
  - name: GitHub Community Support
    url: https://github.community/
    about: Please ask and answer questions here.


fix: recover removed step in deploy github action

Description
It seems that this step was incorrectly removed in the release process automation PR.
Pull Request Checklist

[ ] Ask the contributors if a similar effort is already in process or has been solved.
[ ] Review the contribution guidelines.
[ ] Use staging as your pull request's base branch. (All PRs using production as its base branch will be declined).
[ ] Ensure all gulp scripts successfully compile.
[ ] Update, remove, or extend all affected documentation.
[ ] Ensure no private Dialpad links or info are in the code or pull request description (Dialtone is a public repo!).
[x] Request a review from Brad Paugh, David Becher, or Drew Chandler.

🎉 This PR is included in version 6.5.0 🎉
The release is available on GitHub release
Your semantic-release bot 📦🚀

wow, nice that it does this.


Cannot change the recognition language

Steps to reproduce
I want to make google speech recognizing russian language. I  change this "en-US" to "ru" in recognize_google section, in init.py, but nothing happens, it still recognizing in English.
Expected behaviour
I just want it to regonize russian language via google speech.
Actual behaviour
But it still recognizing in english.
System information
My SpeechRecognition library version is 3.1.3.
My PyAudio library version is 0.2.8

Hi @swinq,
It sounds like you're editing the library source code so that it uses Russian. We can't really tell what the issue is without knowing how you edited the library.
Also, this is not necessary to use a different language. Simply use r.recognize_google(audio, language="ru") instead of r.recognize_google(audio), and it will recognize using Russian. This is all well-documented in the library reference.
If it's still not working, please post your code (or a stripped down version demonstrating the problem), and we can do some debugging on it. It is also very helpful to have audio samples that demonstrate the issue.

Unfortunately not at this time. In the future there may be support for grammars, but it needs some consideration to make it easy to install and use.
In the meantime, I recommend PocketSphinx, Kaldi, or SAPI (on Windows only) for this sort of task.

I use the code "r.recognize_google(audio, language="ch-ZN")", but neither get a bad gateway or "google cannot understand". Please help me!

Fixed in 3.5.0!


Fix sidebar layout shift, use pref for showing/hiding sidebar, cleanup

The way I wrote the sidebar show/hide was causing layout shift on load, so I've reworked it.  While I was touching this code I also fixed:

use proper visual header for Search results and Chats
added a pref for showing/hiding the sidebar.  I store the last value in localStorage, and use it on reloads (e.g., if you hide it, it will be hidden next time, if you show it, shown next time).
I've made the sidebar default to closed

I want to get feedback on the last point. I think this is the right default, since your sidebar will be mostly empty when you start using the app, and you'll only require it as you use things for a while.  But see if you agree.

personally i would prefer to move search there too.
btw other ui nit is that messagebox expansion gets grayed out during gpt response...this is frustrating and usually you wanna see the response while model is responding...perhaps the proper fix would be to just shrink input box while it's disabled automatically.
Other thing that i noticed is that with recent changes we are often obscuring responses while they are streaming from the model and need to scroll up to follow latest text stream.


feat: Added EV to CA

Corrected EV remote start/stop for CA and added charge start stop.

@Kevr0n228 are you able to do a final test against this version?  Should work for charging stop start and climate stop start.

Stop_climate works for me, have not had a chance to test charging though.
On Fri., Nov. 5, 2021, 19:25 cdnninja, @.***> wrote:

@Kevr0n228 https://github.com/Kevr0n228 are you able to do a final test
against this version? Should work for charging stop start and climate stop
start.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fuatakgun/kia_uvo/pull/101#issuecomment-962276416,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACP3WYX5LWDWTQVORLHQ3YDUKRYWZANCNFSM5HL5UNQA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


[FLINK-27615] Document how to define namespaceSelector for k8s operator's webhook

Improve the documents of Watching only specific namespaces part in helm.md to introduce how to make webhook work as expected using different k8s versions.

cc @wangyang0918 @Aitozi


Alternate Ports?

Your host must be publicly reachable on both port 80 and 443.
I want to use this to SSL/reverse-proxy for Rocket.Chat which I want to keep 3000 as it's external port, does the above requirement still apply?

Yep. See https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion/issues/428 for detailed reason.
Also note that if your are using another external port than 80/443 your are actually bypassing the reverse proxy entirely. The whole point of the reverse proxy is to make your services reachable over standard ports and to proxy traffic to them based on the hostname being requested.


Implement obs-websocket 5.4 features

The new version of OBS (30.1) contains version 5.4.2 of the obs-websocket library. It would be great if the new features and changes could be implemented (and released) in this repo.

Thank you for the reminder ☺.
This is currently in progress already, and involved a rather large API change for the addition of the new UUID fields.
Just not 100% happy with the ergonomics around this yet, but will release it relatively soon.

I just released v0.12 which features all the new additions from obs-websocket v5.4 but includes several breaking changes as well.
As mentioned, those improve the Rust API around the UUID identifiers and avoids the problem of accidentally setting both name and UUID of an element in any request (which is invalid for the obs-websocket).
Maybe there are still a few rough edges around those adjustments but those can likely be improved in future releases without having an API break again.


feat: merge features serde and wasm to serialize

This PR merges the previous confusing features serde and wasm into a single serialize feature.
We'll eventually do serialize + type information for both wasm and napi targets.
oxc_macros is removed from oxc_ast's dependency because it requires syn and friends, which goes against our policy "Third-party dependencies should be minimal."

@overlookmotel please forgive me 🙇

Ahh ... so much pain from testing this locally due to feature unification 😡

This is blocking crate releases so I'm going to merge this.

Oh @Boshen! Why do you hurt me so???
Can I propose we look at this again? Agree it's good to combine "serde" and "wasm" features, and removing oxc_ast's dependency on syn is good. But I do think the reappearance of all the #[cfg_attr]s is a major downside for readability.
How about this:

Add a crate oxc_ser_macros.
oxc_ser_macros contains just the SerAttrs macro.
oxc_ser_macros crate does not need a dependency on syn, as the macro doesn't actually do anything. It's just a hack to enable using #[serde] alone without wrapping it in #[cfg_attr] everywhere.

Because the SerAttrs macro is a no-op, I believe its impact on compile times will be insignificant. This would solve the problem you wanted to solve, but without sacrificing readability.
What do you think?

By the way, I think we will be able to remove Tsify later on. The types schema which is created for AST transfer can also be used to create TS type defs - and they could be added to oxc-parser NPM package as well as WASM.


/run shared mount propagation is overpowered

RancherOS Version: (ros os version)
v0.5.0-rc2
Where are you running RancherOS? (docker-machine, AWS, GCE, baremetal, etc.)
baremetal
Shared mount propagation seem take no effect:

sudo mount --make-shared /run
sudo findmnt /run
TARGET SOURCE FSTYPE OPTIONS
/run   none   tmpfs  rw,relatime
/run   none   tmpfs  rw,relatime

If run a container with shared propagation mode will result error like:
Path /run is mounted on /run but it is not a shared mount.

Hi,
I find the problem is only happen on /run, it seem /run have got a double mounted

findmnt -o TARGET,PROPAGATION /run
TARGET PROPAGATION
/run   private
/run   shared

Can anyone explain whe /run is mounted in such way?

I think /run is mounted with shared propagation.  However. because of the duplicated mount, docker daemon mistake private as the propagation mode and refuse to work.

@liyimeng can you tell me more about what you're trying to achieve?

A container that would like to make use of shared mount propagation on /run will not possible to work because of this. And shared mount propagation is a very popular need on /run.

This should have been addressed already.  For user docker I believe mounts are shared.  We did this in 0.6 or maybe right at the end of 0.5

@ibuildthecloud should I close this one now?

@liyimeng If you are able to use shared mounts, then please feel free to close.


Support dash-delimited options in .reactserverrc

The CLI supports options both --camelCase and --dash-delimited.
The .reactserverrc config file only supports camelCase keys.
We should make the config file support both also to eliminate frustrating behavior.

@gigabo I can take this on if it's still a thing, looking to help out where I can w/ the project 👍

@markthethomas Awesome! This will make the UI more consistent / less confusing.  Thanks for taking it on!

👍💯
On Mon, Jan 9, 2017 at 2:08 PM Bo Borgerson<EMAIL_ADDRESS>wrote:

@markthethomas https://github.com/markthethomas Awesome! This will make
the UI more consistent / less confusing. Thanks for taking it on!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/redfin/react-server/issues/783#issuecomment-271423289,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEstAZWL4S5BXdKbe-DKFPwOp7QX7Lbmks5rQq_kgaJpZM4LEwFQ
.

--
Mark Thomas

@markthethomas everywhere
ifelse.io

@gigabo I'd also be interested in helping clear up some of the docs and/or helping w/ the component API documentation, there are a few things I've run into when integrating this w/ my projects that I've yet to overcome all the way 👍  think I saw a few other issues where this came up

@gigabo is there any general objection to bringing in deps to address things like this? was thinking of decamelize, which I think yargs already depends on and uses to address this case. jw before I commit and PR anything 👍

Generally, we're trying to head in the opposite direction, per #277.  If, however, decamelize is already in our dependency closure, and yargs doesn't have a way to support this natively, then I don't see any harm.

Sounds good, thanks!
On Wed, Jan 11, 2017 at 4:07 PM Douglas Wade<EMAIL_ADDRESS>wrote:

Generally, we're trying to head in the opposite direction, per #277
https://github.com/redfin/react-server/issues/277. If, however,
decamelize is already in our dependency closure, and yargs doesn't have a
way to support this natively, then I don't see any harm.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/redfin/react-server/issues/783#issuecomment-272036119,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEstAZgnal7c7cwnP_gk2hpvDwVX7Ipcks5rRW7MgaJpZM4LEwFQ
.

--
Mark Thomas

@markthethomas everywhere
ifelse.io

Sorry for closing, I didn't realize this was moving to camelCase and dash-delimited for both sets of configs.  Open again!

@markthethomas Any update on this? Mind if I take it?

Shoot, this totally got away from me - go ahead 👍
On Thu, Jun 15, 2017 at 3:57 PM Matt Olson<EMAIL_ADDRESS>wrote:

@markthethomas https://github.com/markthethomas Any update on this?
Mind if I take it?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/redfin/react-server/issues/783#issuecomment-308885150,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEstATzVURvgbxleT3XaE1dUhzMcIpEdks5sEbMWgaJpZM4LEwFQ
.

--
Mark Thomas

@markthethomas everywhere
ifelse.io


Support lambda resolver batching in @function directive

Is this feature request related to a new or existing Amplify category?
function
Is this related to another service?
Lambda
Describe the feature you'd like to request
Amplify's @function directive needs support of AppSync's batching size for AWS AppSync Lambda resolvers feature. Please see Introducing configurable batching size for AWS AppSync Lambda resolvers for more details.
Describe the solution you'd like
Accept optional batchOptions: LambdaResolverBatchOptions param on @function directive and
type LambdaResolverBatchOptions {
   maxBatchSize: number
}

RequestMapping Template Changes when batch options are present
const maxBatchSize = batchOptions.maxBatchSize;
{
  version: str('2018-05-29'),
  operation: str('BatchInvoke'),
  maxBatchSize
}

Describe alternatives you've considered
When using @function there are no other alternatives other than manually changing them using console which doesn't work in a CI/CD environment.
Additional context
No response
Is this something that you'd be interested in working on?

[ ] 👋 I may be able to implement this feature request

Would this feature include a breaking change?

[ ] ⚠ This feature might incur a breaking change

Hello @cliren, Thank you for reaching out. marking this as feature request.


Roll Flutter Engine from 02ac5e84097b to fb9c8897b774 (1 revision)

https://github.com/flutter/engine/compare/02ac5e84097b...fb9c8897b774
2023-08-10<EMAIL_ADDRESS>Roll Fuchsia Mac SDK from zoCGnScKZWbm5s9Hy... to SoKcmsZ5H8uHJXV1S... (flutter/engine#44576)
Also rolling transitive DEPS:
fuchsia/sdk/core/mac-amd64 from zoCGnScKZWbm to SoKcmsZ5H8uH
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC chinmaygarde@google.com,rmistry<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


Let's use NewKafkaClusterAdminClient as the name to avoid confusion

Signed-off-by: Matthias Wessendorf<EMAIL_ADDRESS>Fixes #

Proposed Changes

as per title

Release Note

Docs

/test pull-knative-sandbox-eventing-kafka-broker-integration-tests


Break markdown links better

Right now, since we're breaking on word boundaries (spaces), you will frequently run into text that's rendered like this:
* [This is the link
text](http://example.com)

This is gross, and it'd be nicer if we could break on ( instead:
* [This is the link text]
(http://example.com)

Another alternative might be to not break on markdown links at all, and just leave them all as one line.

I personally prefer the look of not breaking on markdown links at all.


load_template() plugin hook

Refs #1042

Next steps: build a demonstration plugin against this.

I should include an example in the documentation that shows loading templates from a database table.

Bringing over a comment from #1042:

I'd like to do this all in the datasette.render_template() method to ensure it's available to plugins as well, not just core code that uses the BaseView class.
This code is the problem:
https://github.com/simonw/datasette/blob/d3e9b0aecb6f8e9b2befd9c654ccb7ce852db3e7/datasette/views/base.py#L114-L133
I think I'll fix this by moving the select_templates mechanism into datasette.render_templates().

I'm having second thoughts about the design of the plugin hook.
Consider the following:
            plugin_template_source = pm.hook.load_template(
                template=template_name,
                database=context.get("database"),
                table=context.get("table"),
                columns=context.get("columns"),
                view_name=self.name,
                request=request,
                datasette=self.ds,
            )

It's a bit gross that database, table and columns are pulled out of the context like that. This doesn't make sense for pages that are rendered by plugins, for example.
So maybe for the first release of this plugin hook I should cut it down to just seeing template, request and datasette. I can add the table/view/etc stuff back in later if it turns out to be necessary.

OK, new hook specification is:
@hookspec(firstresult=True)
def load_template(template, request, datasette):
    "Load the specified template, returning the template code as a string"


Add Cthulhu.ascend integration

Closes #511
I am not certain whether this works; on my machine I get
julia> using JET, Cthulhu
┌ Error: Error during loading of extension JETCthulhuExt of JET, use `Base.retry_load_extensions()` to retry.
│   exception =
│    1-element ExceptionStack:
│    ArgumentError: Package JETCthulhuExt [80062f57-72de-5cd4-a47c-b29cbaac6c4d] is required but does not seem to be installed:
│     - Run `Pkg.instantiate()` to install all recorded dependencies.
│
│    Stacktrace:
│      [1] _require(pkg::Base.PkgId, env::Nothing)
│        @ Base ./loading.jl:2334
│      ...

But as far as I can tell, I think I've done this correctly. Does this happen for you too? xref https://github.com/JuliaLang/Pkg.jl/issues/3553

Despite the test being declared passing, the same error happens in https://github.com/aviatesk/JET.jl/actions/runs/9927768080/job/27423134465?pr=648. I might be doing something wrong, but what?

File name of extension is misspelled.

🤦

@aviatesk what do you think about the need for get_reports? Should that be public? Or should we spell it differently, like by making the main report iterable?

I've been using this and it works flawlessly, for me it's a huge productivity boost.

@aviatesk, if this passes I'll merge soon. Perhaps the main issue to ask about is whether it's reasonable to suggest that users call JET.get_reports(report) or whether we can to provide some other API for accessing them.

I decided to try one more enhancement, so the last commit is speculative and WIP: it adds the Tuple{typeof(f), argtyps...} to Signature. The point is to support this (requires modifications to Cthulhu that I've made locally):

Storing the tuple-type allows Cthulhu.ascend to look for the callsite and see what line number of the source code it occurs on.

I think this is almost there. The main obstacle is to decide what to do about slots that first get assigned in the method body. Currently this just looks for the first preceding statement that assigns to that slot, and grabs the corresponding SSAValue. Presumably, this is buggy in cases where control-flow might assign multiple types. There seem to be at least two reasonable resolutions:

bail out (use Union{} for the signature-type)
check all statements that assign to that slot, and if different use the Union of them all

I lean towards the second. Thoughts?


Method Not Allowed

First of all, I want to say that I'm new to APIGuard, so maybe I'm doing something obviously wrong that I can't see.
I've installed the latest version of APIGuard, had to manually add some facades and lines to the middleware though. After getting it to not throw an error w/ Laravel, I finally found myself faced with this erro. It appears to be related to the middleware, since, no matter where I go on the website, this error appears, instead of the actual page.
{"error":{"code":"GEN-METHOD-NOT-ALLOWED","http_code":405,"message":"Method Not Allowed"}}
Does anybody have a clue on how to solve this?

Nevermind, just had to switch
'apiguard' => Chrisbjr\ApiGuard\Http\Middleware\ApiGuard::class,
to
'apiguard' => \Chrisbjr\ApiGuard\Http\Middleware\ApiGuard::class,


Postgres jsonb array objects support

Hi,
I am using kysely with postgres like this
const db = new Kysely<Database>({
    dialect: new PostgresDialect({
      pool: new pg.Pool(),
    }),
    log: ["error", "query"],
    plugins: [new CamelCasePlugin()],
  });

and jsonb columns in postgres.
Having a column with a json object works fine so far, but I now encountered problems with putting javascript arrays in json columns. I ran into the following issues:
db.updateTable("table")
        .set({
          jsonArrayColumn: []
        }).where("id", "=", "1");

results in a json object ( ‘{}’ )  being inserted into the column instead of an array (‘[]’).
db.updateTable("table")
        .set({
          jsonArrayColumn: [{ value: "someValue" }],
        })
        .where("id", "=", "1");

gives me the following error

kysely:error:` error: invalid input syntax for type json from the database.

Inspecting qb.compile() gives the correct parameters but the underlying issue seems to be with the pg client being not able to interpret the array correctly here.
Same is true for insert queries.
Are there any plans or possibilities on being able to support this out of the box? Meaning, for both, a column of postgres array type and a column of jsonb type inputting a javascript array will yield the correct result?

https://github.com/brianc/node-postgres/issues/2680
For jsonb javascript array input, simply JSON.stringifying your input works.
It's possible to write your own PostgresCompiler and override appendValue(parameter) to stringify parameter if it's a javascript array.

How does this behave then when it comes to plain postgres arrays? Are these considered or would the downside of #138 be that plain postgres arrays would have to be parsed like
arrayColumn = `{${(arrayColumnValue as ComlexValue[]).join(",")}}`

?

The downside of the current implementation is if your database has a mix of sql array columns and json[b] array columns - is it really a thing?
If that's not the case, all arrays are sql arrays in db, you could write a custom serializer that does a .join(',') when it receives a js array.
If that's the case, some arays are sql arrays, and some are json[b]... you're forced to serialize on your own. Was thinking about a way to pass table and column name to serializer and caster so you could decide.. not sure about it.

This won't be added to Kysely.
Refer to the closed PR for an example implementation of a plugin that achieves this, and also check the comment section for more ideas.


Initial "v1" HA Support

For tracking what "v1" of HA will support for v0.7.0 upcoming release.

as a user it would also be a good idea to know "how it works" or at least the basics, not that you kill master-server X and your cluster broke

For the initial version of HA k3s must:

use etcd3 for a storage backend
have a load balancer setup for the master nodes k8s api (port 6443)

To bootstrap the HA master nodes the appropriate server certs, keys, and password entries should be copied to all nodes. A flag is provided to assist, by passing --bootstrap full the server will attempt to read bootstrap data from etcd, if none exists it will be created, and then certs are written to etcd if they don't already exist. Using --bootstrap read will only fetch data from the etcd server and error if none exists, and --bootstrap write will always write bootstrap data to the etcd server but not read. The default is to perform no bootstrap operation.
The default advertise address also changes with v0.7.0, where the node-ip is used rather than using a proxy through <IP_ADDRESS>. We also now provide --advertise-address and --advertise-port server flags if you want it set to something other than the node-ip:6443.
When the agent connects to the server it will iterate through all of the kubernetes endpoints and connect a reverse tunnel to the master nodes so they can communicate with the worker node. The kubernetes endpoints are watched and any changes will result in disconnections from old nodes or connecting to new nodes.
Future plans include setting up a load balancing proxy on each node to eliminate the need for an external load balancer, and provide mysql & postgres behind an etcd3 interface.
To test I provisioned 7 nodes. The hostname on each node was set to be unique.
The first node is a dedicated instance for etcd.
The next three nodes were master nodes. An external load balancer was setup for these nodes on port 6443. The etcd certs were copied to the nodes and launched with the same command to bootstrap k8s data:
curl -sfL https://get.k3s.io | \
   K3S_CLUSTER_SECRET=ha-test \
   INSTALL_K3S_VERSION=v0.7.0-rc9 \
   sh -s - \
     --storage-backend etcd3 \
     --storage-endpoint https://<IP_ADDRESS>:2379 \
     --storage-cafile `pwd`/cfssl/ca.pem \
     --storage-certfile `pwd`/cfssl/client.pem \
     --storage-keyfile `pwd`/cfssl/client-key.pem \
     --tls-san <IP_ADDRESS> \
     --bootstrap full

Note: if an ip address is used instead of a hostname for a load balancer that ip should be included with a tls-san flag when launching the server.
 Also how do I apply the --storage- configuration if I have already setup my k3s?


question: get markdown string of textContent without updating editor?

Hi at all,
is it possible to get the markdown string of the editor-content WITHOUT updating the editor?
I know there is a way WITH (but this will update the editor):
import {
  $convertFromMarkdownString,
  $convertToMarkdownString,
  TRANSFORMERS,
} from '@lexical/markdown';

editor.update(() => {
  const markdown = $convertToMarkdownString(TRANSFORMERS);
  ...
});

editor.update(() => {
  $convertFromMarkdownString(markdown, TRANSFORMERS);
});

Another possible solution would be to iterate through all child-nodes of root and build the markdown step by step. Maybe there is another one? :)
I would really appreciate proposals, opinions or comments :)

You’ll likely need to use editor.update, but don’t worry - it won’t update anything using this API an will just be a no-op.

You should be able to call that same function in an editorState.read callback:
const editorState = editor.getEditorState();
editorState.read(() => {
  const markdown = $convertToMarkdownString(TRANSFORMERS);
})

Unfortunately not :(
Uncaught Error: Cannot use method in read-only mode.
    at errorOnReadOnly (Lexical.dev.js:5335:13)
    at TextNode.getWritable (Lexical.dev.js:6536:5)
    at TextNode.setTextContent (Lexical.dev.js:8075:31)
    at Object.export (to_markdown.ts:129:12)
    at exportChildren (LexicalMarkdown.dev.js:95:1)
    at exportTopLevelElements (LexicalMarkdown.dev.js:86:1)
    at LexicalMarkdown.dev.js:66:1
    at $convertToMarkdownString (LexicalMarkdown.dev.js:1051:1)

You should be able to call that same function in an editorState.read callback:
const editorState = editor.getEditorState();
editorState.read(() => {
  const markdown = $convertToMarkdownString(TRANSFORMERS);
})

Unfortunately not :(
Uncaught Error: Cannot use method in read-only mode.
    at errorOnReadOnly (Lexical.dev.js:5335:13)
    at TextNode.getWritable (Lexical.dev.js:6536:5)
    at TextNode.setTextContent (Lexical.dev.js:8075:31)
    at Object.export (to_markdown.ts:129:12)
    at exportChildren (LexicalMarkdown.dev.js:95:1)
    at exportTopLevelElements (LexicalMarkdown.dev.js:86:1)
    at LexicalMarkdown.dev.js:66:1
    at $convertToMarkdownString (LexicalMarkdown.dev.js:1051:1)

Ah, Dominic is right - we have a similar constraint with Lexical -> HTML conversions right now. Unfortunate, but yea the update won't actually mutate the editor state. The semantics are weird though.

@trueadm @acywatson Thanks for help and ultra fast response!
@trueadm Works fine! Thanks for clarification :slightly_smiling_face:

You should be able to call that same function in an editorState.read callback:
const editorState = editor.getEditorState();
editorState.read(() => {
  const markdown = $convertToMarkdownString(TRANSFORMERS);
})

Unfortunately not :(
Uncaught Error: Cannot use method in read-only mode.
    at errorOnReadOnly (Lexical.dev.js:5335:13)
    at TextNode.getWritable (Lexical.dev.js:6536:5)
    at TextNode.setTextContent (Lexical.dev.js:8075:31)
    at Object.export (to_markdown.ts:129:12)
    at exportChildren (LexicalMarkdown.dev.js:95:1)
    at exportTopLevelElements (LexicalMarkdown.dev.js:86:1)
    at LexicalMarkdown.dev.js:66:1
    at $convertToMarkdownString (LexicalMarkdown.dev.js:1051:1)

Ah, Dominic is right - we have a similar constraint with Lexical -> HTML conversions right now. Unfortunate, but yea the update won't actually mutate the editor state. The semantics are weird though.

Definitely a bit misleading. But it's fine :slightly_smiling_face: Thank you!


Login doesn't work any longer

When trying to use the API - I get the following error:
Fatal error: Uncaught exception 'Exception' with message 'Could not log in to Google Voice with username<EMAIL_ADDRESS>in /homepages/44/d157697781/htdocs/GoogleVoice.php:66 Stack trace: #0 /homepages/44/d157697781/htdocs/GoogleVoice.php(105): GoogleVoice->_logIn() #1 /homepages/44/d157697781/htdocs/TEST-autotexting.php(18): GoogleVoice->sendSMS('2062289034', 'Testing Texting...') #2 {main} thrown in /homepages/44/d157697781/htdocs/GoogleVoice.php on line 66

Same here... thanks @jquick //


team4/game-interactions-tutorial-initial

Description
Adds a tutorial screen designed to help new players familiarise themselves with key game mechanics such as movement, item interaction, and order management (and later cooking). Through a sequence of structured steps, the tutorial ensures that players are ready to transition smoothly into the main game. The system relies on visual and textual instructions, paired with gameplay actions to advance through the tutorial stages.
Type of change

[ ] New feature (non-breaking change which adds functionality)

How Has This Been Tested?
Visual tests were implemented, as all of the functionality has already been tested through main game tests.
Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream modules


Add a note that "Copy link" is not a share for DataPackage

I tried to ping some Microsoft people to fix this, but as of Windows 11 22623.1245 this is still the behavior.
Some history:

https://github.com/w3c/web-share/issues/188
https://bugs.chromium.org/p/chromium/issues/detail?id=1107660
https://phabricator.services.mozilla.com/D121421

You can check this behavior on Firefox by enabling widget.windows.share.wait_action.enabled and selecting "Copy link" in the share dialog from https://web-share.glitch.me.

Thanks for submitting this suggestion. I'll merge the change to document the current behavior and also try to find someone on the engineering side to determine if it's expected to change later.

Thank you! Yes, pinging some engineer will be super helpful 🥰, please ping me back if you get an answer!


release v1.1.0-rc.3

:tada: This PR is included in version 1.1.0-rc.3 :tada:
The release is available on:

v1.1.0-rc.3
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.1.0 :tada:
The release is available on:

v1.1.0
GitHub release

Your semantic-release bot :package::rocket:


Verify build-std resolve against original lockfile

What does this PR try to resolve?
Ensures that the resolve of the standard library when using build-std is a subset of the lockfile from the library source, as per discussion on rust-lang/wg-cargo-std-aware#38. It is a runtime version of the test added here: https://github.com/rust-lang/cargo/pull/13404
Fixes https://github.com/rust-lang/wg-cargo-std-aware/issues/38
How should we test and review this PR?
It can be manually tested by running cargo build -Zbuild-std --target=[host] and seeing the command succeed. I'm not sure what behaviour can exercise the negative test case.
Additional information
Co-authored-by: Lawrence Tang<EMAIL_ADDRESS>

@rustbot author

:umbrella: The latest upstream changes (presumably #14358) made this pull request unmergeable. Please resolve the merge conflicts.


Enable opening datasets with gcps even if no valid crs is present

Some datasets like Sentinel-1 GRD files don't have a coordinate reference system (crs), but they may have ground control points (gcps) and can still be opened by rasterio.
Test this branch using pip install git+https://github.com/weiji14/stackstac.git@open_vrt_with_gcps
Fixes #181.

Probably should write a regression test. @scottyhq, any good sample Sentinel-1 GRD files with a stable link that you know of?

Probably should write a regression test. @scottyhq, any good sample Sentinel-1 GRD files with a stable link that you know of?

GRDs are really big. xarray-sentinel has a minimized one here for testing https://github.com/bopen/xarray-sentinel/tree/main/tests/data/S1B_IW_GRDH_1SDV_20210401T052623_20210401T052648_026269_032297_ECC8.SAFE.
Or rioxarray just constructs a synthetic dataset with GCPs for a test: https://github.com/corteva/rioxarray/blob/bfd616594bb82886133b5f4b9356ed16d39014fc/test/integration/test_integration_rioxarray.py#L1053

@weiji14 did you get any further with this? Is this actually working as is now?

@weiji14 did you get any further with this? Is this actually working as is now?

Technically, I think the implementation is sound. But the unit test could be much improved. Ok if you want to merge this first and improve the unit test at a latter date.

@weiji14 I pushed a change here to avoid mutating spec.vrt_params, since that object could possibly be shared with other dask tasks.

I'm not seeing any new commits in this PR. Could you try again?

To be clear, in your example in #181, you're still getting the purple/green/yellow output? That makes me think this might not be working correctly yet?

If I recall correctly, there's actually 2 things needed to fix the purple/green/yellow output.

Getting the image plotted at (roughly) the correct location, and this requires reading the coordinate reference system (CRS) and ground control points (GCP) which this Pull Request has fixed (at least I think it's implemented correctly).
Resampling/Interpolation - this is something this PR won't be handling, but which the user would still need to set to get a proper Sentinel-1 GRD image plotted (that is not purple/green/yellow).

I'm having trouble with the second part (resampling), which would require someone a bit smarter on the SAR data structure to get right (e.g. @scottyhq). I wish I had a proper end-to-end validated example where someone has taken a Sentinel-1 GRD image (from Microsoft Planetary Computer), read it properly with rasterio (with some set of parameters) and plotted it, but I'm missing that picture right now.

Oops maybe I forgot to push. I see them now in https://github.com/gjoseph92/stackstac/pull/182/files/1b3c47c6bd0d3ec9dd17b25dc8cb1c8496a131a7..d7b08203ab754295bf5644fa0a661df9fa94e8b9.
I'd be a little surprised to find that it's just a resampling issue. As long as the data types are right and we're not truncating floats to ints or something, I don't quite see why a different resampling method would change meaningful data into something completely meaningless-looking.
Furthermore, if you look at the example scene from https://github.com/gjoseph92/stackstac/issues/181 in PC explorer, you can see that what we're seeing from stackstac.show also has a different spatial extent, as well as looking meaningless. I suppose that could be a STAC metadata issue like https://github.com/gjoseph92/stackstac/issues/152 though (I haven't looked at the metadata at all).
I guess where I'm leaning right now is that if we can't get this to seem to work properly and return meaningful data, I'd rather raise a NotImplementedError if ds.crs is None than try to use GCPs but possibly return bad values.


rackspace: Fix SSH key upload for multi-zone benchmarks

Remove unnecessary interaction with Rackspace API to upload an SSH public key.
Uploading a key using the Rackspace API required coordination to avoid a name
conflict errors, hence a lock was implemented that uploaded the key once per
benchmark. This is not necessary since the public SSH key is already uploaded
to the VM using cloud-init.
Previously, the Rackspace implementation assumed that one public SSH key
was uploaded per benchmark. This assumption is no longer valid since
PKB supports benchmarks configuration that spans multiple zones.
Fixes issue #538.

Looks good, thanks!


engine 9

Includes updates to hashing and encryption.

@tannernelson any specific changes to encryption that could be causing this to fail? Haven't looked at this yet

I remember last time we used a temp HTTP client that doesn't validate the SSL Cert (until I update this to Foundation, which is pending some bug fixes in it (or I just do more workarounds))
Could that be now failing the test?
Temp HTTP Client: https://github.com/stormpath/Turnstile/blob/master/Sources/TurnstileWeb/TempHTTPClient.swift
Foundation bug: https://bugs.swift.org/browse/SR-2570

Only thing that changed there is we're sending a user agent now. Maybe facebook doesn't like that? I re-ran the tests in case something was just up with their servers.

I realized what went wrong. You issued this pull request from an external repo, which Travis then doesn't use the secret environment variables for.
This caused the build to fail.
 I think it should pass and then we'll be able to tag.


Consider saving RSSI and SNR of last downlink in NVM

The RSSI and SNR parameters of the most recent downlink message are currently only saved in RAM. That works fine as long as the system does not lose RAM contents during sleep. To support deeper-sleep modes, we might want to save these two parameters in NVM.

Related to #52

No need to implement this now. May return to it when we actually have support for a deep-sleep mode that doesn't preserve the contents of RAM.


ARROW-16337: [Python] Expose flag to enable/disable storing Arrow schema in Parquet metadata

Should still add this to the ParquetWriter docstring

@jorisvandenbossche Do you want to follow up on this?

I added a docstring, so this should be ready now.
(the two failures are both the flaky dataset test)


chore: upgrade deps

#196  👈
main

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

Join @Brooooooklyn and the rest of your teammates on  Graphite


Terminal seems count length of escape sequences chars

When using some color sections in one line, like in this image:

Terminal wraps the line into the beginning of same line.
is this an issue of linefeed?
OS: Mac
Terminal: iTerm2
PS. input long strings seems ok:

Are you using characters \x01 and \x02 to indicate escape sequences, as outlined in the set_prompt docs?

yes.

Okay, I found the problem. The invisible sequence indicators were being discarded too soon and the prompt rendering function was assuming that all characters were visible.
I've just pushed a commit that fixes this. If everything seems to be working, you can close this issue.

Thanks @murarth, it works!


It will be great if we can customize the score_path.

Really fun game btw!

That should address the issue! Thanks.


Nuxt3 compatibility

Version
@vueup/vue-quill version ^1.0.0-beta.7
Nuxt 3
Describe the bug
ReferenceError: document is not defined in node_modules\quill\dist\quill.js
To Reproduce
Steps to reproduce the behavior:

Create nuxt3 App,
install @vueup/vue-quill
create plugins folder
create quill.ts file
Add: import { defineNuxtPlugin } from '#app'
import { QuillEditor } from '@vueup/vue-quill'
import<EMAIL_ADDRESS>import<EMAIL_ADDRESS>export default defineNuxtPlugin(nuxtApp => {
// Doing something with nuxtApp
nuxtApp.vueApp.component('QuillEditor', QuillEditor);
})

Browser (please complete the following information):

Chrome

Sorry! It's working 100%... on nuxt3 you can make your plugins clientside by renaming your file quill.client.ts

Hello @PMLS3
Did the same as you but I'm getting this error -->
Failed to resolve component: QuillEditor
If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.

i added into component like this.

How did you resolved this?
Thanks for your help.

Sorry! It's working 100%... on nuxt3 you can make your plugins clientside by renaming your file quill.client.ts

how import module to this plugin ?


videos not showing in rendered webpage

Describe the bug
For some nanodegrees, some of the video lessons don't work. The video player shows a black screen. Pressing play doesn't do anything.

To Reproduce
Steps to reproduce the behavior:
1: Download  nd0011  (Front End Developer)
2. Render the ND
3. Open the index file in chrome or safari
4. Navigate to Part 04/Lesson 02/Node.js Overview
Expected behavior
Video to playback as normal
Desktop (please complete the following information):

OS: MacOS
Node version: 14.4.0
npm version:  6.14.5
Udacimak Version: 1.6.6
Browser: Bug exists in chrome and safari

Course Information

Nanodegree or Course name: Front End Web Developer Nanodegree
Version: v1.0.0

Issue only exists on some of the videos.
The video file exists and plays as expected through VLC, but not through the webpage.

Same problem with me ,,, That's because the video name contains '#'
open HTML page and edit source video , replace '#' with '%23'
@udacimak
I hope this bug be fixed soon


Benchmark glob listing times on large data lakes

We want to better understand how long object store listings will take for tail and latest strategies on large data lakes. We'll use this to decide what the default extract policy strategy should be.

Findings here: https://www.notion.so/rilldata/S3-GCS-file-listing-5a79678c53ce46b68dce40cafdaff939


"Mătăsaru", "Odaia Turcului" are listed in the drop-down menu

Description:
When user writes ” Mătăsaru” and "Odaia Turcului" the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Mătăsaru"

Expected results
The location appears in the drop-down menu as "Sat Mătăsaru, DÂMBOVIȚA (Mătăsaru)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Odaia Turcului"

Expected results
The location appears in the drop-down menu as "Sat Odaia Turcului, DÂMBOVIȚA (Mătăsaru)".


systemd: Enable audit integration.

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

[x] The toolchain has been rebuilt successfully (or no changes were made to it)
[x] The toolchain/worker package manifests are up-to-date
[x] Any updated packages successfully build (or no packages were changed)
[x] Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
[ ] Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
[x] All package sources are available
[x] cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
[x] LICENSE-MAP files are up-to-date (./SPECS/LICENSES-AND-NOTICES/data/licenses.json, ./SPECS/LICENSES-AND-NOTICES/LICENSES-MAP.md, ./SPECS/LICENSES-AND-NOTICES/LICENSE-EXCEPTIONS.PHOTON)
[x] All source files have up-to-date hashes in the *.signatures.json files
[x] sudo make go-tidy-all and sudo make go-test-coverage pass
[x] Documentation has been updated to match any changes to the build system
[ ] Ready to merge

Summary
Enabled audit integration in systemd package. This is needed so that systemd will report any SELinux violations for service control operations (start/stop/etc.) to the audit logs. This will ensure that audits of a system's security can be done accurately. In addition, it greatly helps with debugging SELinux issues.
Change Log

Enabled audit integration in systemd package.

Does this affect the toolchain?
NO
Test Methodology

Built the package locally.
Installed the updated package in a test VM.
Ran a systemctl restart command that I knew would hit an SELinux violation.
Ensured that the expected SELinux violation showed up in the audit logs.

LGTM


[incubator/schema-registry] Make Affinity, PodDisruptionBudget, UpdateStrategy and PriorityClass configurable

Is your feature request related to a problem? Please describe.
I'd like to use the anti-affinity, PodDisruptionBudget and PriorityClass to improve the Schema registry deployment resiliency
The problem comes when most or all the Schema registry nodes are scheduled on the same host and this host get terminated.
Connectors running on KafkaConnect fail to contact Schema Registry and the stop
Describe the solution you'd like
UpdateStrategy is RollingUpdate by default but it's nice to be able to configure this parameter
Not being able to configure (anti)affinity is making my schema register cluster nodes being scheduled on the same node or subnet making it less reliable and failure tolerant
Not having PodDisruptionBudget on this chart makes the cluster less resilient causing the cluster being offline from now and then
priorityClassName allows to prioritise Schema registry PODs to be scheduled over other "no that important" PODs
Describe alternatives you've considered
Additional context

PR has been raised... waiting for the Codeowners to approve it


Add uninstall strategies to virt-operator

What this PR does / why we need it:
It is surprising for some that if you delete kubevirt, all related workloads (VMs, VMIs, VMIRSs) are deleted too. Especially when removing the operator via the marketplace UI it was not clear for people that this can happen.
This PR adds a safeguard to the ininstall process, by introducing a spec.uninstallStrategy field. If unspecified or set to RemoveWorkloads, the uninstall process force-deletes just everything. If set to BlockUninstallIfWorkloadsExist, a validating webhook denies the deletion of the KubeVirt CR until either all workloads are removed from the cluster explicitly, or the uninstallStrategy is changed.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

Add `spec.uninstallStrategy` to the KubeVirt CRD, to optionally deny uninstall requests for as long as kubevirt workloads are in the cluster.

/cc @stu-gott @fabiand


use of DEFINED_RULES on docs

I suggest to add DEFINED_RULES use on docs.
This is an example:
import { validate, setLocales, register, en, pt, DEFINED_RULES } from "robust-validator";

const isObjectRule = (value) => {
    return value !== null && typeof value === 'object' && !Array.isArray(value);
};

if (!('object' in DEFINED_RULES)) {
    register( // https://validator.axe-api.com/customization.html
        'object', // The rule name
        isObjectRule, // The rule functions
        // Translations
        {
            en: "The field must be an object",
        },
    );
}

@tiagofrancafernandes thanks for the suggestion. ❤ It's a very good idea.
But what do you think to provide a function that tells you if a rule is defined or not? An example;
import { register, isRegistered } from "robust-validator";

const isObjectRule = (value) => {
  return value !== null && typeof value === "object" && !Array.isArray(value);
};

if (!isRegistered("object")) {
  register("object", isObjectRule, {
    en: "The field must be an object",
  });
}

Also, I liked the object rule you defined. I think it would be a good idea to add that rule internally. What do you think? ☺


Adds authentication & authorization documentation

PR for issue #236
What is being addressed
This is the first iteration of the authentication and authorization model documentation.
How is this addressed

Adds single page document (auth.md) that covers:

Brief description of AAD
App registrations
User management in AAD
Auth in management API

@tompaana good work, do some of these steps need to be referenced from the quick start?


v0.1.0

Codecov Report
Patch coverage: 86.20% and project coverage change: +10.15 :tada:

Comparison is base (40ccba5) 81.10% compared to head (2d44eb9) 91.25%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@             Coverage Diff             @@
##             main       #5       +/-   ##
===========================================
+ Coverage   81.10%   91.25%   +10.15%
===========================================
  Files          15       13        -2
  Lines         508      469       -39
  Branches       80       79        -1
===========================================
+ Hits          412      428       +16
+ Misses         83       33       -50
+ Partials       13        8        -5

Impacted Files
Coverage Δ

easyflake/easyflake.py
100.00% <ø> (+12.76%)
:arrow_up:

easyflake/node/grpc.py
92.85% <80.00%> (+29.39%)
:arrow_up:

easyflake/node/base.py
55.55% <87.50%> (+0.71%)
:arrow_up:

easyflake/node/file.py
95.58% <100.00%> (+6.19%)
:arrow_up:

easyflake/sequence.py
100.00% <100.00%> (+5.47%)
:arrow_up:

easyflake/grpc/sequence_pb2_grpc.py

easyflake/grpc/sequence_pb2.py

easyflake/utils/contextlib.py
100.00% <0.00%> (+5.26%)
:arrow_up:

... and 3 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


NVM installation resets completion logic of other commands

Operating system and version:
ProductName:	macOS
ProductVersion:	11.2.3
BuildVersion:	20D91

nvm debug output:

nvm --version: v0.38.0
$TERM_PROGRAM: iTerm.app
$SHELL: /bin/zsh
$SHLVL: 1
whoami: 'foo'
${HOME}: /Users/foo
${NVM_DIR}: '${HOME}/.nvm'
${PATH}: ${HOME}/.sdkman/candidates/maven/current/bin:${HOME}/.sdkman/candidates/java/current/bin:${HOME}/.sdkman/candidates/gradle/current/bin:${NVM_DIR}/versions/node/v15.14.0/bin:${HOME}/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/opt/fzf/bin
$PREFIX: ''
${NPM_CONFIG_PREFIX}: ''
$NVM_NODEJS_ORG_MIRROR: ''
$NVM_IOJS_ORG_MIRROR: ''
shell version: 'zsh 5.8 (x86_64-apple-darwin20.0)'
uname -a: 'Darwin 20.3.0 Darwin Kernel Version 20.3.0: Thu Jan 21 00:07:06 PST 2021; root:xnu-7195.81.3~1/RELEASE_X86_64 x86_64'
checksum binary: 'shasum'
OS version: macOS 11.2.3 20D91
curl: /usr/bin/curl, curl 7.64.1 (x86_64-apple-darwin20.0) libcurl/7.64.1 (SecureTransport) LibreSSL/2.8.3 zlib/1.2.11 nghttp2/1.41.0
wget: not found
sed: /usr/bin/sed
cut: /usr/bin/cut
basename: /usr/bin/basename
rm: /bin/rm
mkdir: /bin/mkdir
xargs: /usr/bin/xargs
git: /usr/bin/git, git version 2.24.3 (Apple Git-128)
ls: grep:: No such file or directory
grep: grep: aliased to grep --color=auto --exclude-dir={.bzr,CVS,.git,.hg,.svn,.idea,.tox} (grep --color=auto --exclude-dir={.bzr,CVS,.git,.hg,.svn,.idea,.tox}), grep (BSD grep) 2.5.1-FreeBSD
awk: /usr/bin/awk, awk version 20200816
nvm current: v15.14.0
which node: ${NVM_DIR}/versions/node/v15.14.0/bin/node
which iojs: iojs not found
which npm: ${NVM_DIR}/versions/node/v15.14.0/bin/npm
npm config get prefix: ${NVM_DIR}/versions/node/v15.14.0
npm notice
npm notice New minor version of npm available! 7.7.6 -> 7.10.0
npm notice Changelog: <https://github.com/npm/cli/releases/tag/v7.10.0>
npm notice Run `npm install -g<EMAIL_ADDRESS>to update!
npm notice
npm root -g: ${NVM_DIR}/versions/node/v15.14.0/lib/node_modules

nvm ls output:

->     v15.14.0
default -> node (-> v15.14.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v15.14.0) (default)
stable -> 15.14 (-> v15.14.0) (default)
lts/* -> lts/fermium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.1 (-> N/A)
lts/fermium -> v14.16.1 (-> N/A)

How did you install nvm?
Homebrew
What steps did you perform?
Tried to use the completion by pressing tab.
What happened?
No completion defined before NVM completion work!
What did you expect to happen?
To see the list of sub-commands
Is there anything in any of your profile files that modifies the PATH?
Just adding home/bin and local/bin to the path.
More Details
The whole issue started here https://github.com/DannyBen/alf/issues/39. In my .zshrc, I'm sourcing ~/.bash_aliases before NVM completion script which contains:
if [[ -n ${ZSH_VERSION-} ]]; then
  autoload -U +X compinit && if [[ ${ZSH_DISABLE_COMPFIX-} = true ]]; then
    compinit -u
  else
    compinit
  fi
  autoload -U +X bashcompinit && bashcompinit
fi

The above also exists in NVM complection script as well. Now the issue is, according to @DannyBen's findings, the issue is that compinit should be called exactly once and before any call to complete, otherwise it resets the previous completion logic. (@DannyBen correct me if I'm wrong.)
Now, first, is our understanding correct? Second, what's the best solution to fix this issue?
Thanks.

nvm is explicitly unsupported when installed from homebrew; please brew uninstall it, and install it using the approved installation method (curl/wget command in the readme), and then we can confirm if there's a bug in nvm or in homebrew's formula (which already has a few).

I'm not sure about how compinit works, but if there's a way to improve that completion logic I'm happy to do so.

Yes. Only minor typo, compinit instead of compini.
It would seem that:

In order for bash completions (of any script) to work in zsh, then compinit and bashcompinit must be called first.
If compinit is called more than once, it seems to reset all previously loaded completions.

Confirmed. Installed as you asked. Same issue.

Is there any way to detect if compinit has been called before?

I'm not sure about how compinit works, but if there's a way to improve that completion logic I'm happy to do so.

Well - one thing seems to be certain. compinit should not be called more than once.
I may be wrong, but until someone who knows this stuff better tells me otherwise, this is the conclusion I draw from observing the behavior.
Here is the simplest proof (run in zsh, after compinit was already autoloaded):
$ complete -W "hello world" one
$ one <tab>   # to see autocomplete working
$ compinit
$ one <tab>   # to see autocomplete NOT working

So - in our case, when someone installs nvm and another script that behaves the same as nvm in regards to calling compinit, then one of the autocomplete sets will be erased.
In my case, I fixed it by checking if compinit was already loaded:
if [[ -n ${ZSH_VERSION-} ]]; then
  autoload -U +X bashcompinit && bashcompinit
  if ! command -v compinit > /dev/null; then
    autoload -U +X compinit && if [[ ${ZSH_DISABLE_COMPFIX-} = true ]]; then
      compinit -u
    else
      compinit
    fi
  fi
fi

Happy to accept a PR that incorporates that check, thanks!

@DannyBen Let me know if you want me to do the PR.

Alright - another curious point. We noticed nvm changed this piece of code a little. It would seem that you moved bashcompinit to be after the compinit call - was there an issue associated with this change?

@DannyBen Let me know if you want me to do the PR.

Yes please. I am not an mvn user.

@DannyBen yes, see #2393 which fixed #2325.

@DannyBen yes, see #2393 which fixed #2325.

Excellent, thanks. So I will implement a similar change in alf.

There you go #2490.

For future reference, this is the proper way to install completions in Zsh.


errors building niivue on Ubuntu 20.04

Hi, All-
I have these versions of the listed dependencies nodejs and npm:
$nodejs -v
v10.19.0

$ npm -v
3.10.10

... but I get the following errors when I try to build niivue with npm install |& tee ${logfile}.txt:
...
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"linux","arch":"arm64"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/esbuild/node_modules/@esbuild/freebsd-x64):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"freebsd","arch":"x64"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/rollup/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>|| ^9.0.0 || ^10.0.0 but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>|| ^9.0.0 || ^10.0.0 but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of less@* but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of sass@* but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of stylus@* but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of sugarss@* but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>|| ^9.0.0 || ^10.0.0 but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>|| ^9.0.0 || ^10.0.0 but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of typescript@>= 4.7.4 but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of typescript@>= 4.7.4 but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm ERR! Linux 5.15.0-60-generic
npm ERR! argv "/home/ptaylor/miniconda3/envs/py37_afni_jup_sph/bin/node" "/home/ptaylor/miniconda3/envs/py37_afni_jup_sph/bin/npm" "install"
npm ERR! node v6.13.1
npm ERR! npm  v3.10.10
npm ERR! path<EMAIL_ADDRESS>npm ERR! code ENOTDIR
npm ERR! errno -20
npm ERR! syscall open

npm ERR! ENOTDIR: not a directory, open<EMAIL_ADDRESS>npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR!     /data/PROJECTS/niivue_code/BUILDNEW/npm-debug.log

><EMAIL_ADDRESS>build /data/PROJECTS/niivue_code/BUILDNEW
> npx prettier --write src/ && npx vite build --emptyOutDir --base=./ && npm run copy-test && npm run copy-demo

module.js:478
    throw err;
    ^

Error: Cannot find module 'libnpx'
    at Function.Module._resolveFilename (module.js:476:15)
    at Function.Module._load (module.js:424:25)
    at Module.require (module.js:504:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/usr/share/npm/bin/npx-cli.js:3:13)
    at Module._compile (module.js:577:32)
    at Object.Module._extensions..js (module.js:586:10)
    at Module.load (module.js:494:32)
    at tryModuleLoad (module.js:453:12)
    at Function.Module._load (module.js:445:3)

npm ERR! Linux 5.15.0-60-generic
npm ERR! argv "/home/ptaylor/miniconda3/envs/py37_afni_jup_sph/bin/node" "/home/ptaylor/miniconda3/envs/py37_afni_jup_sph/bin/npm" "run" "build"
npm ERR! node v6.13.1
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>build: `npx prettier --write src/ && npx vite build --emptyOutDir --base=./ && npm run copy-test && npm run copy-demo`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>build script 'npx prettier --write src/ && npx vite build --emptyOutDir --base=./ && npm run copy-test && npm run copy-demo'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the @niivue/niivue package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     npx prettier --write src/ && npx vite build --emptyOutDir --base=./ && npm run copy-test && npm run copy-demo
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs @niivue/niivue
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls @niivue/niivue
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /data/PROJECTS/niivue_code/BUILDNEW/npm-debug.log
** ERROR IN BUILD
   e /data/PROJECTS/niivue_code/o.build_src_2023_03_29_06_03_1680087397.txt

Are there other dependencies need or more particular version number requirements for existing dependencies?

@mrneont, I would suggest updating the at leat the current LTS version of nodejs + npm. v10.x.x is quite old and not officially supported. I'm guessing this is due to the outdated ubuntu package versions (just a guess)?
https://nodejs.dev/en/about/releases/
can you try that and then report back? We can update the readme as well to mention this.

@mrneont I am unable to replicate on my 20.04 system
$ lsb_release -a
 No LSB modules are available.
 Distributor ID:	Ubuntu
 Description:	Ubuntu 20.04.3 LTS
 Release:	20.04
 Codename:	focal
$ npm -v
 8.6.0
$ node -v
 v18.0.0
$ nodejs
 Command 'nodejs' not found, but can be installed with:
 sudo apt install nodejs

I am able to successfully run:
git clone https://github.com/niivue/niivue.git
cd niivue
npm install
npm run dev

I do get a warning:
New major version of npm available! 8.6.0 -> 9.6.2

But things still function. Notice that my system does not have nodejs installed, but I do have a fairly recent version of node.

closing this since an upgrade to at leat the LTS version of Node should resolve it! Reopen if needed!

Cool, thanks.  The issue appears to be the default version of nodejs installed by conda, which was that low.
I updated to get nodejs 18.0.0, and then I was indeed able to build.  Thanks for the solution.
I see on the main github page you have nodejs version numbers listed here:
https://github.com/niivue/niivue#supported-nodejs-versions-for-buildingdeveloping-with-niivue
... but for those who miss that part and jump to here:
https://github.com/niivue/niivue#local-development
... it might be nice to mention the minimal nodejs version number needed there, as well.


[Feature request] Add circle CI testing in the template

I'll be nice to could select circleCI (http://circleci.com/) as the CI service of the template
$ cookiecutter https://github.com/pydanny/cookiecutter-django
...

Select Continuum integration service:
1 - Travis CI
2 - CircleCI
Choose from 1, 2 [1]: 1

And seleting 2 will generate a circle.yml  with a basic configuration
If this feature is approved I could provide a PR with the change.

@rlaverde I don't mind this initiative, however we should bear in mind maintenance cost for the feature. @pydanny, @jayfk, @luzfcb what do you think?

If one of the core devs is actively using CircleCI and is happy keeping it up-to-date, sure.

@webyneter I do not use circleci in any of my projects.

I do not use circleci either.
If no core dev uses it but @circleci wants to have their service in this project, they can assign a staff member to provide ongoing support. If they do so, then we'll accept a PR for it. Otherwise, we can't add to our maintenance burden.

I don't use Circle CI either. Agreed to @pydanny, maintanance burden might turn out to be too heavy for us.

I'm actively using Circle CI with cookie cutter-django. Would be happy help with this.

@sfdye Thank you for the offer, but from experience, we really need vendor support from @circleci itself.

@pydanny Sure, understood 😄

Since @circleci hasn't responded, I'm closing this issue. We'll reopen if we hear from them.

@sfdye would you be able to share your config for a circle build with a cookiecutter project here? I'm currently trying to set it up.

@timmyomahony here you go, sample CircleCi config with codecov support.
version: 2
jobs:
  build:
    working_directory: ~/app
    docker:
      - image: circleci/python:3.5.4
        environment:
          DATABASE_URL: YOUR_DATABASE_URL
      - image: circleci/postgres:9.6.2
        environment:
          POSTGRES_USER: postgres
          POSTGRES_DB: postgres
    steps:
      - checkout
      - restore_cache:
          key: deps1-{{ .Branch }}-{{ checksum "requirements/test.txt" }}
      - run:
          command: |
            python3 -m venv venv
            . venv/bin/activate
            pip install -r requirements/test.txt
      - save_cache:
          key: deps1-{{ .Branch }}-{{ checksum "requirements/test.txt" }}
          paths:
            - "venv"
      - run:
          command: |
            . venv/bin/activate
            py.test --cov=./
            codecov --token=token
      - store_artifacts:
          path: test-reports/
          destination: tr1

Thanks so much. As a matter of interest, looking at the existing Travis config for cookiecutter, the app is built and tested with docker containers. You've chosen to run the app natively on CircleCI. Is this because CircleCI is using Docker itself to run the tasks, causing issue?

@timmyomahony Is because travis is not free for our private repo, circle is free for one concurrent build.


Media files should detail file size limits

@kulas Can you be more specific with this question Neil? Size limits are usually defined by the server not the application. (Which is the standard thing to do.) For our server I just checked and it's 300mb, but it's obviously failing for files smaller then that so I'm still looking into why that is happening.


Automatically added unwanted indentations and parentheses when paste from on-screen keyboard

Does this issue occur when all extensions are disabled?:
Paste them using on-screen keyboard

The editor automatically added unwanted indentations and parentheses.

Does this reproduce when configuring "editor.autoIndent": "advanced"?

Does this reproduce when configuring "editor.autoIndent": "advanced"?

Yes


Only password repeat set is valid

When editing your own account data, setting only the repat password and leaving the normal on empty is accepted as a valid input

It's accepted as valid input, but shouldn't actually change the password though, right?
I assume this is because of AccountDetailsEditContainer.vue#L187 here, since we only check if password is non-empty, but not the repeat

yes. excactly


Pending Whitelist count is not incremented when CLA is signed by the company after whitelist request

@nirupamav should be resolved now in DEV.


Support for mvc?

If I wanted to manually make this work with an MVC app. Is there a folder I could copy the files too.
I have looked at the install folder "Extensions\oceuabo1.vvh" but not sure if there is a way to do it.

It might be working if you switch to folder view.
Let me know if it helped.

This is all that is showing. The component is not listed :(


Support for lower android version like 7,8,9,etc

[x] I've checked the current issues for duplicate issues.
(There is one issue but its for android 10)
[x] I've requested a single (only one) feature/change in this issue. It complies with the One Request Per GitHub Issue (ORPGI) rule.
[x] My issue is well-defined and aligns with the goal of the project.

Description
Please add the support of lower android devices like android 8...storage is not as much of a Hassel newer devices but on older ones.
Try to lower the android sdk api so that the app can be run on older devices.
Most of the open source  apps run on lower android version I hope this will append its name to the list too.

I would like to support lower apis, but this requires a lot of permission complexities and workarounds, which I don't have the time to focus on right now. I am keeping this issue open, for anyone willing to contribute.