Units are hostile or friendly

Units are "hostile" or "friendly", instead of "enemy" or "captive". This gives greater flexibility.
With this change:

Units' constructor receives a hostile parameter that defaults to true instead of the current captive parameter.
Space's .isEnemy() is deprecated in favor of a new and simplified method .isHostile().

.isHostile() calls unit.isHostile() (also new) under the hood.
.isHostile() still returns false if the unit is bound.

Space's .isCaptive() is deprecated in favor of a new method .isFriendly().
The rescue ability should check if the receiver is friendly, instead of captive.

Docs and official levels tips like this one will need update as well.

If you plan to support additional friendly characters that are friendly, but not captive (for example, NPC shopkeepers) further down the road, I would suggest adding the .isFriendly() next to the .isCaptive() method, so that you have two super types: "hostile" and "friendly", and "captive" as a sub type of "friendly".

Hello @froehlichA! Thanks for your interest in the project. Regarding this issue, my plan is to make the core as generic as possible. For that matter, being able to distinguish between hostile and friendly units is enough, leaving the semantics of what a captive is to the towers (some towers may not even define them). For the existing towers, for example, a captive is a unit that is friendly and is bound. With that in mind, do you think there's a benefit for preserving .isCaptive()?

Currenty, the beginner tower uses the units imported from warriorjs/units. Why are these units defined in this seperate package, and not in the beginner tower source? Are they there for other tower creators to expand upon?
If you want to make the core as generic as possible, I would just put basic unit types, that provide a basis to build upon, in the @warriorjs/units package and leave the rest to the tower creators (like Archer, Sludge, or Wizard).
Concerning the .isCaptive() method, my personal opinion is that the .isCaptive() should be removed from the Space API and replaced with the .isFriendly() method, like you mentioned, but that tower creators should then be able to define the appropiate methods on the units themselves instead.
An Example:
//warrior-tower-community/index.js
const Shopkeeper = {
  name: 'Shopkeeper',
  character: '$',
  maxHealth: 7,
  friendly: true,
  detectionName: 'isShopkeeper'
}

Warriorjs should then automatically expose the method unit.isShopkeeper() (or something similar) in their API.
With this principle, the tower creators themselves would be able to give players the possibility to check if an unit is a specific unit type or not, because players may want to take different actions if a unit is a friendly shopkeeper, a friendly captive or another friendly unit.
TLDR: Generally, I agree with you that there should only be detection of alignment (.isHostile() and .isFriendly()) in the core, but also leave detection of unit types (.isCaptive(), .isArcher(), ...) to the tower creators.


Fixes + test suite updates

I don't think the name of the commit Expose --disable-abort-dialogs even in Release builds is not relevant to its changes ?

Yes it is. Before the option was only exposed in Debug builds, now it's also exposed in Release builds.

Ok so i checked your code but not the scene files (too much diff 🤣). I added comments but no requests.

Ahah yeah, no worries.
Thanks for the review!


Update README.md

Added 4K4D paper and links.
Made abstracts readable (removed hyphenations).
Added splatting for Windows fork and tutorial.
Other minor text fixes.

gsplat.tech

That's fair. I hadn't made the connection that the author works for Luma AI: https://www.linkedin.com/in/jcerveny/?originalSubdomain=cz
So, ha, maybe ignore 80% of my PR - say keep the "open-source" and "gplat" fixes and the de-hyphenation changes to the abstracts, to make them more readable. Add other bits as you like. I could edit this PR, but it's honestly better if you decide - I mostly wanted to pass on some sources of info that I had noticed that you didn't list yet. Your page is great; I'm just giving back how I can.

Thank you  Eric.
I merge it and edit it afterwards. This way it is more convenient for me.
Yes, he works for Luma. I think they hired him after he has published the viewer. However, I would love to see the source code and add it here, but unfortunately it is closed source.
Thanks again.
Best,
Janusch

Oh by the way I noticed that you are not listed as contributor. I think this is due to your git e-mail address. I think it is just not associated with github if I am correct (you can see it in the git logs). If you add it on github, you should also appear as contributor.

I'm not sure what you mean by my "git e-mail address" - I have one. I found there was some confusion some months ago with one email address I use - I would never get notifications from Github. I changed it and things have worked for me since. So I'm (a) not sure what to change and (b) am concerned that if I change anything, I'll again stop getting notifications.

Anyway, thanks for the shout out.

Listed for me

It seems that GitHub took its time to list you as a contributor. The git logs show your ACM email address. I once had an issue where I wasn't shown as a contributor because my git client email address differed from the one I used on GitHub. Nevertheless, everything seems to be in order now.

Whew, good! I didn't want to touch a thing, as I'm finally getting notifications again. Beats me in what inaccessible (to me) database they still have my ACM address. Anyway, thanks for the follow up. And, keep up the great work! It's fine to stay focused on open source only - no reason to do it all. I expect when CVPR papers are announced you might get overwhelmed...

I hope @henrypearce4D might be interested to help maintain this repo :)


有人有在线观看片资源吗欢迎来讨论

关于有人有在线观看片资源吗欢迎来讨论
>>>>>>点/此/进/入/最/新/观/看/入/口<<<<<<
搏为的是一家人的美好生活一年四季下来我在外求学而您们在外辛苦挣钱一年如一日在外求学都没有时间回家看看都在等待争

你可以将有人有在线观看片资源吗欢迎来讨论	43、我失去所有的光芒，唯独那微笑却没有消失。

有人在网上观看资源?
欢迎讨论
He lighting made it a local path, he wants to come even if someone don't worry can't see temporary road.
They also might as well as the day will be let go through every occasion.

请参考下方链接：
https://github.com/tuderw/uqvioa/issues/3
https://github.com/tuderw/eamwhg
https://github.com/tuderw/vxfkdv/blob/main/README.md
https://github.com/planshow/kmriob/issues/2
https://github.com/fowerv/4673234/issues/3
https://github.com/linevs/szpwh
https://github.com/tuderw/spxwap/issues/1
https://github.com/chiquane/ksbwn
https://github.com/goodiders/wfqir
https://github.com/fowerv/bnuqi
https://github.com/aoyouzg/qixhpu/issues/3
https://github.com/goodiders/uwihva/issues/2
https://github.com/nyueed/mgynhck/issues/3
https://github.com/aoyouzg/bxsur/issues/5
https://github.com/bingkangr/zgem
https://github.com/tooere/ipnsx/issues/4
https://github.com/fowerv/dysfuj
https://github.com/makedete/npxvt
https://github.com/goodiders/snmxh
https://github.com/shownews/ehhrd


Hash historyType routing broken on ES5 builds

Stencil version: (run npm list @stencil/core from a terminal/cmd prompt and paste output below):
<EMAIL_ADDRESS><EMAIL_ADDRESS>
I'm submitting a ...  (check one with "x")
[ x ] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or https://stencil-worldwide.slack.com
Current behavior:
When using stencil-router in hash historyType, application no longer works in Firefox / Edge / IE 11.
It is working fine on Chrome which uses ES6 build and not ES5.
Expected behavior:
Application should work on all browser with hash historyType.
Steps to reproduce:
Activate hash historyType:
<stencil-router historyType={'hash'}>
     <stencil-route-switch scrollTopOffset={0}>
          <stencil-route url='/' component='app-home' exact={true} />
          <stencil-route url='/profile/:name' component='app-profile' />
     </stencil-route-switch>
</stencil-router>

Compile using es5 flag to see errors and be able to test on other browsers than Chrome:
"scripts": {
    ...
    "start": "stencil build --dev --watch --serve --es5",
    ...
}

Following error is displayed in console:

Related code:
Sample repo:
https://github.com/mariofriz/stencil-app-starter

Might be related with https://github.com/rollup/rollup/issues/2570 ?


meson cant find luajit even though its installed

error meson is giving
Found CMake: /usr/bin/cmake (3.28.3)
Run-time dependency luajit found: NO (tried pkgconfig and cmake)
meson.build:52:8: ERROR: Dependency "luajit" not found, tried pkgconfig and cmake
luajit is also installed to /usr/bin/luajit, but meson cant find it, even though it found cmake in the same location

looks like I was missing the luajit.pc file, once I got that and added to the pkg config path i was able to get through the meson build step, but now the compile step is failing. host.h cant find lua.h to build the example, and generate_cdef.py cant find libclang-17.so.
strugglin'


Apache APISIX's official webpage is at risk of hijacking

Apache APISIX's official webpage is at risk of hijacking
Phenomena.

search the Apache APISIX website through Baidu or Google, the default is to use the HTTP protocol to access.

Solution.

if it's an http request, reply to the 302 bounce response to jump to the https page
add response header for all http responses: Strict-Transport-Security: max-age=172800 to ensure that subsequent users accessing the apisix website will use the https protocol by default.

need to create an infra ticket if this issue should be fixed.


Dragged model

This is #34 from @scottmessinger with js hint fixes

ah, looks like it wasn't just jshint. looking into it, but currently not able to run npm test on my machine.
➜  ember-sortable git:(draggedModel) npm test

><EMAIL_ADDRESS>test /Users/mehulkar/dev/oss/ember-sortable
> ember try:testall

Cannot find module 'semver'
Error: Cannot find module 'semver'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/Users/mehulkar/dev/oss/ember-sortable/node_modules/ember-cli-babel/node_modules/ember-cli-version-checker/index.js:5:14)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
npm ERR! Test failed.  See above for more details.
➜  ember-sortable git:(draggedModel) ember install
Cannot find module 'semver'
Error: Cannot find module 'semver'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/Users/mehulkar/dev/oss/ember-sortable/node_modules/ember-cli-babel/node_modules/ember-cli-version-checker/index.js:5:14)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

done

Very cool. Just having a think about an appropriate test.

@mehulkar this is the unit test I’d go for:
test('draggedModel', function(assert) {
  assert.expect(1);

  let items = [{
    y: 1,
    model: 'One',
  }, {
    y: 2,
    model: 'Two',
    wasDropped: true
  }, {
    y: 3,
    model: 'Three'
  }];

  let targetObject = {
    action(models, draggedModel) {
      assert.equal(draggedModel, 'Two');
    }
  };

  let component = this.subject({
    items,
    targetObject,
    onChange: 'action'
  });

  run(() => {
    component.commit();
  });
});

ok. I added that to the sortable-group-test but it doesn't pass. not familiar with all these magical helpers that are being used (e.g. action), so not sure how to fix.

@mehulkar the test is failing because the items are plain JavaScript objects and do not have get and set methods. We’ll have to use:
set(draggedItem, 'wasDropped', false)

and
get(draggedItem, 'model')

This is good practice for an addon, and I find tests like this help keep us honest in applying such practices.

agree. that's great that the unit test caught that. thanks for the prompt help with this!

This looks like it’s good to go. Thanks so much for getting it landed and thanks equally to @scottmessinger for the original contribution.
@mehulkar could you squash your commits? Then I’ll merge and cut 1.5.0.

squashed it all into the original commit!

:boom:

@mehulkar Thanks so much for adding the tests so this could get merged it. I haven't had the time to take the pull request over the finish line. @jgwhite Thanks for merging this in!


detach / temporary disable / uninstall by editing rk's config

As the rootkit checks it's config from registry every n seconds
add ability detach and prevent injecting an specified process using it's pid/process name-
by creating a key/value in it's configs
and also ability to temporary disabling and self uninstalling it using same way

then if users found a process crashing, they can add it in config and solve the problem.

There is currently no injection exclusion list. It seems plausible to implement one, either as a registry key or hard-coded or both.
An exclusion list can generally only be a processes' filename, and not the PID. Because by the time the PID is determined, the process is already injected. Therefore, an exclusion list would only work on process names.
I have noted that as a feature request and it's really a good suggestion as it fits in the whole concept and I'm aware that some processes tend to crash, such as MSBuild.exe. Not sure, though, when exactly I'm going to implement it (anywhere from a week to 2 months).
What you can also consider is to apply the R77_HELPER_SIGNATURE at compile time. This is done for TestConsole.exe and it prevents r77 from ever injecting the process, as the executable file itself carries this flag upon creation. Not sure, if that fits your scenario.
I've added your suggestion to the list for the next release and I'll let you know when it's there.

will you add temporary disable and self uninstall features too or only exclude feature?
if you add uninstall feature, it can't work when install is custom, i think exclude and temp disable features are enough
also another question, will the exclude feature also detach process if it's running, or user should restart the excluded process to detach?

As of now, there is a new feature to exclude processes from being injected. It's only on the dev branch, so you have do download the code from there and compile. To add a process name to the exclusion list, modify the contents of PROCESS_EXCLUSIONS and recompile.
This is the dev branch. Downloadable binaries and documentation will follow with the next release, as well as other features on the ToDo list.

what about exclude process name using registry? please add this ability too

Also, I think it's not a good idea to add 'MSBuild.exe' to exclude list by default

what about exclude process name using registry? please add this ability too

What would be the benefit of a dynamic exclusion list? Right now, I have implemented it to exclude problematic processes, such as MSBuild.exe (which crashes) and user defined processes for individual needs. But what's the purpose behind a dynamic list? It's especially tricky, because by the time the $77config key is created and read by r77, those processes are already injected.
Could you elaborate on that a little further, or maybe provide some examples? I'm usually implementing features that are requestet frequently or those that are generally useful.

r77 version 1.3.0 is released.
The new Control Pipe feature allows any process to communicate with the rootkit and trigger certain actions. That way, you can disable / enable injection, etc. (see Documentation section 2.9 Control Pipe)
Another feature is a hardcoded list of processes that will not be injected. The advantage over the configuration system is that these processes will never be injected. If you use the configuration system, these processes might be injected before you have written the value to the registry key.
You need to modify the code here and compile r77:
/// <summary>
/// Specifies a list of processes that will not be injected.
/// By default, this list includes processes that are known to cause problems.
/// To customize this list, add custom entries and recompile.
/// </summary>
#define PROCESS_EXCLUSIONS						{ L"MSBuild.exe" }
// Example: { L"MSBuild.exe", L"your_app.exe", L"another_app.exe" }


Display Issue

I'm not sure why this is happening as I can't find any errors being thrown, but whenever I run naivecalendar.sh the popup looks as in the image below.
I'm using rofi 1.7.0 and I've tried python 3.6.15, 3.7.11, and 3.9.6. I'm running it directly via the cloned repo. It also happens on every theme I try.
Anywhere I can look to try to debug why it's not displaying properly?

Hi, I think it's a rofi issue.
As I can see on the rofi discussions page, the 1.7 rofi version introduce breaking changes in theme configuration.
I'm on debian, and the rofi version here is quite old (1.5.4) and if I remember well, i've tested 1.6 version, but never the 1.7.
I was able to reproduce this on a fresh manjaro intall (rofi 1.7.0-1)
I absolutely don't know if this implies a lot of change in themes, I will dig onto this and try to update them.
Thanks for raising the issue.

ok, a small fix (adding 4 lines in theme config) seems to solve this issue.
I put changes on a new branch
git pull
git switch fix_rofi_1_7_theme_compat

Awesome -- thanks! Looks much better now.
And thanks in general for creating and sharing these.

Great!
Happy you like it and thanks for the feedback.


Scheduler name bike-shedding

Currently the trampoline scheduler is named immediate, and the microtask scheduler is named nextTick. There is als
I propose that we rename immediate to sync. I say this because immediate sort of implies that the scheduled action is going to take place right away, and that's not really true. It's going to be bumped from it's current call stack and executed next, but synchronously.
For nextTick, it's a little more debatable, it's pretty aptly named, but I think it would be more descriptive if it were named microtask, because ultimately that's the goal. To schedule it as a microtask after the current frame but before things like setTimeout.
... which brings me to another thing, we don't have a scheduler based off of setTimeout or requestAnimationFrame. The latter is DOM-specific, but given that we're modular now, I think there's grounds for including it in this library, it's an important scheduler.
Once we land on these names, I'll be writing some improved documentation on the matter.

I see no objections to this...

In talking to @chriscareycode, @abersnaze and @stealthcode at Netflix, there were a few other options presented for names around immediate in particular:

queueImmediate: because it gives users the sense that scheduled items are being buffered in some way.
trampoline: because it's a brand new word with no connotations in the JS community which may make it more memorable, and describes what it does in a way that can be googled.
jenga: because it topples the call stack over with in the same event on the event loop. Again, descriptive and memorable.
immediate: less favored because people have some idea in their heads of what "immediate" means.
sync: Because you're scheduling, but it's synchronous. This was less well recieved.

... all parties thought that currentThread didn't make any sense to them because of JavaScript's lack of "real" multithreading.

Trampoline sounds the best IMO.

+1 for trampoline and 'currentThread didn't make sense ' both. (intrigued into 'jenga' for sec..)

I'd be interested in thoughts from @zenparsing, @domenic, @wycats or @stefanpenner on this, as well. I'm sure this sort of scheduling has come up in conversations at the TC39, and they might have more specific vernacular we could leverage.

@blesh that's been the problems with transporting the names from runtime to runtime.  CurrentThread has a history of doing recursive scheduling right, placing things in the right order whereas the immediate was indeed immediate.
Consider the difference:
const Scheduler = require('rx').Scheduler;

Scheduler.currentThread.schedule('bye', (self1, state1) => {
  self.schedule('hi', (self2, state2) => console.log(state));
  console.log(state1);
});
// => bye
// => hi

Whereas the immediate scheduler would do the following:
const Scheduler = require('rx').Scheduler;

Scheduler.immediate.schedule('bye', (self1, state1) => {
  self.schedule('hi', (self2, state2) => console.log(state));
  console.log(state1);
});
// => hi
// => bye

@blesh had I done it over again, I would have the following:

Scheduler.asap for using the fastest transport mechanism available in a non-blocking fashion
Scheduler.async for slower mechanisms such as setTimeout etc
Scheduler.immedate once again for immediate scheduling
Scheduler.sync for synchronous scheduling that would once again mimic the current thread implementation.

that's been the problems with transporting the names from runtime to runtime. CurrentThread has a history of doing recursive scheduling right, placing things in the right order whereas the immediate was indeed immediate.

I completely get it.
For RxJS 5, we've had the lack of a scheduler mean "immediate" as in "no scheduling at all, just call it".

Scheduler.asap for using the fastest transport mechanism available in a non-blocking fashion
Scheduler.async for slower mechanisms such as setTimeout etc
Scheduler.immedate once again for immediate scheduling
Scheduler.sync for synchronous scheduling that would once again mimic the current thread implementation.

I sort of like asap, for the "microtask" scheduler, but it's not really "as soon as possible". In fact, it conflicts a little with async, since it is indeed "async". I think timeout was never a bad name for a 100% setTimeout-based implementation of a scheduler.

@blesh and for the most part, RxJS v4 has done the same with immediate, bypassing when specified and just returning an empty Disposable since it wasn't really capable of being cancelled anyhow.

From my point of view the only kind of scheduling that makes sense is "job queuing" (called microtask queue elsewhere).  : \

Therefore I don't see the point in all of these different (and confusing) names.

Therefore I don't see the point in all of these different (and confusing) names.

Suppose you want to synchronously traverse a tree recursively and the tree is 1000 levels deep.
... that's why there is more than one scheduler. :)

@zenparsng where you are coming from and where we are, are two different spots.  There is the want, especially on the ES-Observable, to make everything async, hence the microtask.  Here, we want the swappable concurrency layer to choose which is right for us, like requestAnimationFrame, nextTick, setImmediate or queued as it were.

@blesh btw I have the RequestAnimationFrame Scheduler in a branch.

@trxcllnt ... well PR that thing! 😝

@blesh still needs tests ;-)

Okay, I think where this has landed is:

RxJS 4
RxJS 5 (current)
RxJS 5 (after)

Scheduler.immediate
null or undefined
Scheduler.none, null or undefined

Scheduler.currentThread
Scheduler.immediate
Scheduler.sync

Scheduler.default
Scheduler.nextTick
Scheduler.asap

Scheduler.timeout
N/A
Scheduler.timeout

Rx.DOM.Scheduler.requestAnimationFrame
N/A
Scheduler.animationFrame

Is this acceptable? @mattpodwysocki @kwonoj @staltz @trxcllnt?

... the ideal being no name change, or no conflicting names (immediate is different in RxJS 4 and 5 currently)

@blesh I like these names

Some clarification on sync:
Every other scheduler is async, really*. The only other "synchronous" scheduling is no scheduling at all (Scheduler.none), so Scheduler.sync could only be the trampoline scheduler.
* virtual scheduling can be synchronous, but it's manual and we're not talking about that one.

Those names looks good to me.

I just don't like asap because it gives me the idea using it will schedule actions even before sync does. (Because sync is even sooner than asap "as soon as possible")
I get the point that nextTick isn't always accurate, but asap doesn't capture the idea either.
Perhaps soon or queue?

I just don't like asap

In the ES spec world, we call these things "jobs" and we have a "job queue".

Scheduler.job? Is job common enough vernacular?

Talking with @jhusain, he brought up a valid point, that by strict definition of "synchronous", the trampoline scheduler is not "sync" because it schedules on the next call stack. Being in the same event in the event loop doesn't really mean "synchronous" in the strictest sense of the word. For example, if you're inside of an action scheduled on the trampoline scheduler, and it's currently running, and you schedule from within that action, it's going to complete your current action before it runs the one you just scheduled. That's not synchronous.
Interestingly, it sheds more light on the name currentThread, even though that still doesn't make sense for JavaScript.
Also, @jhusain  reiterated what @zenparsing said above, which is in the ES community the "microtask" queue is generally called a "job", but he also liked the name "trampoline".
So now a new proposal:

RxJS 4
RxJS 5 Current
RxJS 5 Proposed

immediate
undefined
undefined or none

currentThread
immediate
currentJob? trampoline?

default
nextTick
nextJob? job? asap?

Right now I'm inclined to say currentJob and nextJob, as they meet the ES vernacular, and seem to accurately describe what is going on.
@stealthcode brought up the point that we might add queue to these to further describe the behavior. so queueCurrentJob and queueNextJob or something like that. It feels to me like all Schedulers "queue", in some way, so that might be redundant. But I'm just one person, and I appreciate other opinions.

How about:

Scheduler.none
Scheduler.queue
Scheduler.job
Scheduler.timeout
Scheduler.animationFrame

flatMap is actually mapFlat because map happens first only then it is flattened.

@blesh I'm lukewarm on the job name, as it seems too generic (what's a job? when does it run? why?)
I'm inclined to name schedulers after the method in which they schedule:
Scheduler.immediate (same as RxJS 4, but iterative instead of recursive)
Scheduler.processQueue (flushes trampoline and blocks current event loop)
Scheduler.timeout (uses setTimeout/Interval)
Scheduler.eventLoop (uses setImmediate)
Scheduler.animationFrame (uses reqAnimFrame)

I liked currentJob/nextJob but I also liked what Paul suggested. At least we got rid of asap :)

Scheduler.timeout (uses setTimeout/Interval)
Scheduler.eventLoop (uses setImmediate)

Still ambiguous: both timeout and eventLoop indeed schedule on the event loop.

HAHA... soft reason that "job" is out: Try googling ECMAScript Job or JavaScript Job.
Yeah... no.


Bump Dependencies #9502036985

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/9502036985

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


⚠ SceneTime has degraded performance

In 0d52ff9, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 1119 ms

Resolved: SceneTime performance has improved in 040282b after 23 minutes.


feat(TlsSocket): add ownership semantics to TlsSocket

TlsSocket is constructed by a pointer to the next socket, effectively acting as a decorator/proxy object of the underline socket. This however is problematic, because once a connection upgrades to tls, you now need to keep alive two different objects with whose lifetime semantics are bound. Therefore, we make TlsSocket own the underline socket, to avoid decoupling the lifetime of the two sockets.

Do not merge this unless my other PR passes all tests. I will comment here :)


Hidden security field

Summary
Everything in the database is public. Even if you are not database admin, you can still read all documents, including design documents. This request is similar to #1891, but a different way.
Desired Behaviour
I often need to involve some cryptographics operations during validation of the document. It need to include a private key to the design document. However, the design document is public, so everybody can read the document and retrieve the private key.
Currently I cannot see any possible workaround, how to hide that key from the common user eyes. Please include a feature of hidden field in the security object.
Possible Solution
The security object contains "users" and "admins". Let's introduce a field "secret", which is not visible, but can be set. The field "secret" can contain any arbitrary JSON. However this field appears during execution of scripts being included into RequestObject : "req.secObj", or as separate object as fourth argument of the VDU function
(so the secret part is visible inside of show and list function as well)
The secret object can be used to sign content generated by a list or show function, or to validate incoming data for a valid signature.
Additional context
Signing and validating signatures.

Closing for other issue

#2011


Require same shape for x and y in shape function of ApproximateEqual

In the kernel implementation of ApproximateEqual the shape of inputs
x and y should be the same. Though in the shape function of ApproximateEqual
there was no such validation. This fix adds the shape validation in the
shape function to make sure x and y are of the same shape, if they are known.
Signed-off-by: Yong Tang<EMAIL_ADDRESS>

Could we have a small test for that?

Thanks @drpngx for the review. The PR has been updated.


[Question] Is possible to generate children widgets at runtime?

Example, i want to create a wi-fi menu with all networks available, but those networks can be different at any moment
Something like:
 Wifi list

    Some_SSID                       [Connect]
    Another_SSID                    [Connect]

This will probably need to generate children widgets at runtime to change those values
Is that possible?

What you want is for and to some extent (you rarely really need it tho) literal

What you want is for and to some extent (you rarely really need it tho) literal

Wowwww, that can give what i need, thanks!


proposal: x/text: add replace package

The bytes, strings, and regexp packages provide functions for replacing text in strings and byte slices. These only operate on strings and byte slices that are in memory. I propose a new golang.org/x/text/replace package which implements golang.org/x/text/transform.Transformer's for replacing text. These would enable doing text replacements on io.Readers.
prototype: https://github.com/icholy/replace

CC @mpvl


Sliding window for history limit

Previously, if the list reached its maximum size, new additions were prevented by an early return;. This update replaces return; with History.RemoveFirst(); so you can have 15 (or whatever is the limit) of your latest commands in history, instead of first 15.

While we at it, I suggest that the default limit of 15 seems unreasonably small - personally I hit that limit way too quick. Storing the history of commands does not require that many resources, and I think that value of 50-100 would be a better fit

Oops! Made a bit of a mess with branches. I'll close this one and remake my PRs shortly.


firebase auth addScope question

Hi firebase team,
I followed your doc here

2, Specify additional OAuth 2.0 scopes.

I added following code try to get user's firstName & lastName value
provider.addScope('https://www.googleapis.com/auth/userinfo.profile')

I can see the values are being returned for the post request https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=xxxxxxxxxxxxxx when inspecting  browser network section,
but not be able to get it from the firebase response.
Is this an expected behavior or there is something I missed?
Thanks

I figured it out, need to call getAdditionalUserInfo(resp) to get additional user information.
It would be helpful to include a link of https://firebase.google.com/docs/reference/js/auth#getadditionaluserinfo within the Specify additional OAuth 2.0 scopes doc


refactor: Forge support

Closes #1

It compiles... but it still crashed forge...

Finally run on Forge


Sometimes Helm Release are not visible in "helm ls", yet resources are there

I am encountering an issue where Helm releases are sometimes not visible in the helm ls command output, even though the resources have been successfully created. To resolve this issue, I need to manually delete the resources (specifically, a Bitnami PostgreSQL StatefulSet) using kubectl.
Steps to Reproduce

Install Helm chart
Check helm ls output

Output of helm version:
version.BuildInfo{Version:"v3.12.0", GitCommit:"c9f554d75773799f72ceef38c51210f1842a1dea", GitTreeState:"clean", GoVersion:"go1.20.4"}
Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"27", GitVersion:"v1.27.2", GitCommit:"7f6f68fdabc4df88cfea2dcf9a19b2b830f1e647", GitTreeState:"clean", BuildDate:"2023-05-17T14:13:27Z", GoVersion:"go1.20.4", Compiler:"gc", Platform:"linux/amd64"}
Kustomize Version: v5.0.1
Server Version: version.Info{Major:"1", Minor:"27", GitVersion:"v1.27.1+k3s1", GitCommit:"bc5b42c27908ab430101eff0db0a0b22f870bd7a", GitTreeState:"clean", BuildDate:"2023-04-27T21:02:08Z", GoVersion:"go1.20.3", Compiler:"gc", Platform:"linux/arm64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.):
k3s

by default,  helm list  only list deployed or failed releases, maybe your release in some other state.
can you try with helm list -a  ?


Find a way to organize commands in folders

We need to find a way to organize commands in folders without changing all the .yml action files command paths.
This would be possible by:

Recursively searching for python commands and match that name with silex_client.commands.xxxx.XXXX and importlib.import_module that path

Maybe having only one depth level of folders and using relative imports as described here: https://stackoverflow.com/questions/10675054/how-to-import-a-module-in-python-with-importlib-import-module

A simple way is simply to put commands in folders like:
path: "silex_client.commands.farm.blender_render_tasks.BlenderRenderTasksCommand"


Passing data from feature to feature

Taking your README example, suppose I'd like to instantiate the LoginViewController with some data from the Profile feature, say a message string. From your README and your sample app, the only way I see such data can be passed is via the Route (like when you pass the hexColor). But LoginViewController is instantiated from the LoginFeature build method where the fromRoute parameter won't be of type LoginRoute. Any suggestion? Thanks!!!!

Hey there! The Route parameter is a protocol, you can cast it to LoginRoute inside the build method and retrieve the data. This is because you can have multiple routes pointing to the same feature :)

Sorry I am still confused about this build method from the LoginFeature:
static func build(dependencies: LoginFeature.Dependencies, fromRoute route: Route?) -> UIViewController

Can the route param be any route? or is it the LoginRoute?
If this is the LoginRoute, then I understand how I can instantiate it with some message.

Yes, It can be any route that from a RouteHandler that calls this feature :)

There is now a more complete example project that may help with this.


!extralife last is not returning anything to chat

Console output:
phantombot_fragforce | [01-02-2019 @ 04:24:12.366 GMT] fragforce: !extralife last
phantombot_fragforce | [01-02-2019 @ 04:24:13.072 GMT] Mask:7 donationAmount:$25 donorName:Matt Kniller message:You were a worthy opponent and adversary in 2018!  Here is to another year of great success!

Chat output: None
New automated donations are posting to chat successfully, only the last command is failing to post to chat.

Resolved by 03fadca20cd9323edb783dafe88b3d2fc5c50036


Add DSL reference for C++ components and IDE tasks

Context

Fixes https://github.com/gradle/gradle-native-private/issues/258
Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation
[ ] Recognize contributor in release notes

@big-guy Merging early so we can review the rendering on nightly.


Better support for packages: rubocop -V

It would be nice if there was a way for packages like rubocop-performance/rspec/... to "register" themselves so we could output their versions in rubocop -V.
For example I couldn't confirm in https://github.com/rubocop-hq/rubocop-performance/issues/200 that the report was due to an older version of rubocop-performance.

-V option has been extended from RuboCop 1.0 for extension cop versions.
https://github.com/rubocop-hq/rubocop/pull/8908
e.g.
% rubocop -V
1.4.2 (using Parser <IP_ADDRESS>, rubocop-ast 1.2.0, running on ruby 3.0.0 x86_64-darwin19)
  - rubocop-performance 1.9.1
  - rubocop-rspec 2.0.0

I've updated the issue template example for users by #9126.


Adds support for "fyne release"

This PR adds support for "fyne release"

[x] Update fyne cli to v1.4.2-0.20201127180716-f9f91c194737 fyne-io/fyne#1609 fyne-io/fyne#1527 fyne-io/fyne#1538 (Release 20.11.28)
[x] Add support to: AppBuild, Release and AppVersion flags
[x] Add support to "fyne release" for android os
[x] Add support to "fyne release" for windows os
[x] Add support to "fyne release" for ios os
[x] Add support to "fyne release" for macOS os

Note: since "release" for windows, ios and macOS requires native tools, it is supported only on the relative hosts via the fyne-cli tool.

Fixes #1

Great work getting this together thanks.
I see that iOS and Windows release build is called on the host, so I guess this means that they can lookup the keystore / key file for the signing.

Right, it is basically a wrapper for fyne release on the host for Windows and iOS. This is needed since the tools used signign are not available into the docker image.

However the Android build asks for a keystore path - is that accessible from the runtime ? (It may be outside the project)

Yes, but it can only access files inside the project. Mounting of external files or directories is not supported yet.

and it will ask for the password on the command line, does that work in this model?

Good catch, no won't work. We need to specify the password with a flag like for Windows. If this is not supported by fyne release we could always allow the Andoid release only in host mode for now.

I was a little confused as fyneRelease vs fyneReleaseHost seems to have duplicated code but as I understand it the former is just android? In which location do linux/bsd releases run?

Yep, I was unsure about the naming too. Tempted to add the Docker suffix but at the end I kept fyneRelease for consintence with the fynePackage. Anyway renaming to fyneReleaseDocker and fynePackageDocker is an easy fix if it helps to improve the code readability.
TD;DR
fynePackage and fyneRelease run the fyne tool inside the container.
fynePackageHost and fyneReleaseHost run the fyne tool from the host.
Only Windows (release command) and iOS (package and release) are executed on the host.

Testing locally, did a --pull, but I don't think the bundled fyne is new enough?
❯ fyne-cross darwin -release
[i] Target: darwin/amd64
[i] Cleaning target directories...
[✓] "bin" dir cleaned: /Users/andy/Go/src/github.com/fyne-io/life/fyne-cross/bin/darwin-amd64
[✓] "dist" dir cleaned: /Users/andy/Go/src/github.com/fyne-io/life/fyne-cross/dist/darwin-amd64
[✓] "temp" dir cleaned: /Users/andy/Go/src/github.com/fyne-io/life/fyne-cross/tmp/darwin-amd64
[i] Checking for go.mod: /Users/andy/Go/src/github.com/fyne-io/life/go.mod
[✓] go.mod found
[i] Packaging app...
flag provided but not defined: -category
Usage: fyne [command] [parameters], where command is one of:
...

flag provided but not defined: -category
Usage: fyne [command] [parameters], where command is one of:

For the record this was an out of date local fyne, which is used by darwin release.


Add the Builtin class to a namespace

Fixes a warning in ImperatorToCK3.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>2
Details

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 93.022%

Totals

Change from base Build<PHONE_NUMBER>2:
0.0%

Covered Lines:
3410

Relevant Lines:
3629

💛  - Coveralls


Fix leak of api_request_lock

api_get_post has error handling in case it is passed an invalid URL or the API does not return any items.  However, this error handling does not release api_request_lock, causing a deadlock the next time api_get_post is called.  A similar bug occurs in bodyfetcher.py.
This bug is a cause of !!/report breaking, but it may not be the cause.

If this was a cause, I'd expect to see our post scan rate on https://metasmoke.erwaysoftware.com/smoke_detector/8/statistics to drop before a !!/report is called. Need to look for that in the future, and retroactively.

It looks like there are drops in Aurora's scan rate just like @Undo1 predicted:


Deprecate UUID as id

Is an ID for a job really needed? I already considered UUID is better than random integers. Currently, testing whethere two jobs are equal is by comparing their UUIDs. However, run! does not change its UUID. In my imagination, UUID of any Jobs should be different, even they have the same input & parameters. The id parameter breaks this premise (2 Jobs can be equal even they have different submission time!). And I found  only compares the object id to test whether they are equal.
This makes id not necessary. So, I am going to deprecate it.

Turns out mutable objects can have the same objectids even if their fields are changed. So we have #28.


How to parse json back to lua?

Hi everyone, I used luaparse to convert a LUA file to json and then modify it, but I wanted to convert it now (after modified) to LUA again, I couldn't find anything in the documentation on how to convert JSON to LUA, is there any method for this? what should I do?

There is not a built-in serialiser. You need to walk the syntax tree yourself. See for example luamin.


Revisit Event CRUD

Implement the restrictions. The maxCapacity should be higher or equal than the attendees etc.

Aditional changes needs to be made: in the model, has been reported that in the Event and Lesson classes, the atribute Educators has to be optional and Attendees in Meeting has to be optional as well. Aditionally the atribute postal code on the class Volunteer has to change because there are cases where the the postal code starts with 0 and has 4 numbers and the actual validators don't allow that. It's recomended to change it into a String attribute and using "regex" as validator so it doesn't conflict with the .json that stores the dummy data prepared beforehand.


feat(config): standrize new lines config

Closes #238
Check the following

[x] Keep 100% code coverage
[x] Be properly formatted
[x] Documentation changes are included
[x] Include a change file if expected

Additional context
I have added the NewLines struct to the Config struct.
In WriteTemplate added 2 parameters instead of pregap boolean and changed it in the batch.go

@miniscruff  I would like you to go through the draft to see the structure I have implemented for this issue before I start to write tests to cover this issue.

Unrelated note, you seem to get getting this linting error:
Error: stringheader.md has 3 occurrences, make it a constant (goconst)
You can just disable that linter, I have not been a huge fan of it. ( Or set the occurrences to like 5 )

Fixed, a number of things:

should I add the new addition to the docs, If so where?
should I create a new change log?
the test coverage is not 100% because the second error is not covered in the WriteTemplate, the only way to get to this fail is if the writer would be damaged, but then the 2 errors before that will catch this.

should I add the new addition to the docs, If so where?

Yea we will need it somewhere, I think a separate newlines page would be good for now. I plan on reworking the configs to be auto generated later so I can clean it up later.

should I create a new change log?

Yes, use changie locally by running go run main.go <cmd>, I will add a newlines config when I make the next release as well.

the test coverage is not 100% because the second error is not covered in the WriteTemplate, the only way to get to this fail is if the writer would be damaged, but then the 2 errors before that will catch this.

In this case you can ignore the error returned, as you point out its not a realistic error. I think I skip this error check in another part of the code.

If you want I can build the documentation since you said english isn't your native language and writing docs can be tricky, just let me know.

If you want I can build the documentation since you said english isn't your native language and writing docs can be tricky, just let me know.

You can have a look at the documentation I have done, you are more than welcome to improve it.

If you want I can build the documentation since you said english isn't your native language and writing docs can be tricky, just let me know.

You can have a look at the documentation I have done, you are more than welcome to improve it.

I started work on automating the configuration documentation so I will do some work on it in my PR, if you can cleanup the linting and get the build to pass we should be good.

@jonatan5524 thanks for the work, it will be included in the next release, most likely 1.8 in the coming days. I created a second ticket to add a few more newlines to the merge command here https://github.com/miniscruff/changie/issues/323 if you wanted to tackle it or leave it to me, either way.

@jonatan5524 thanks for the work, it will be included in the next release, most likely 1.8 in the coming days. I created a second ticket to add a few more newlines to the merge command here #323 if you wanted to tackle it or leave it to me, either way.

I want maybe a another issue with another subject, I will check the issues on the following days.
Thank you for your patience and your help!


Create mm-bbs.txt

We are a vocational school for IT Experts in Hannover, Germany (www.mmbbs.de). We have still a registration for JetBrains Products (under the eduplaza domain), unfortunately our new students in the year 2017 didn't have any more an eduplaza domain email account. All Students at the mmbbs in hannover has an email with @mm-bbs.de account ! So please include the mm-bbs.de domain in your program, so the our students can benefits from your student program and I (as a teacher) can include the jetbrains products into my lessons.
best regards
Dr. Joerg Tuttas
Teamleader for Fachinformatiker f. Anwendungsentwicklung
Institution/School Name
{Multi-Media Berufsbildende Schulen}
Instiution/School Website
{www.mmbbs.de or www.mm-bbs.de for our Landing Page}
Email Users
Please place an x between the square brackets if yes

[x] Students
[x] Academic/Teaching Staff
[ ] Other/Support Staff
[ ] Alumni

Education Levels
Please place an x between the square brackets if yes

[ ] Post-graduate research
[ ] Graduate School
[ ] College (University) or Undergraduate School or equivalent
[x] Community College or equivalent
[ ] High School or equivalent
[ ] Elementary School or equivalent

Would it make sense to include the homepage mmbbs.de too? I suppose the MM-BbS staff uses e-mail-addresses with the @mmbbs.de handle (e.g. maiss@mmbbs.de), don't they? So they could benefit from JetBrains subscriptions and other benefits too.

Our teachers used @mmbbs.de and our students used @mm-bbs.de, so it makes sense to include the teachers as well (but they already have an eduplaza mail account which is still registered)

What do you think @leereilly?


Update local module install docs and remove unused configuration

Description
Changes proposed in this pull request:

Simplify installation docs, since the current steps were not working
Remove obsolete configuration

Related issue(s)

@nataliasitko You can unhold if it was only waiting for dev review


Telemetry Source Before/After events feedback/thoughts

Currently there are a few places where we have various Before/After events - BeforeAction/AfterAction and BeforeActionMethod/AfterActionMethod being amongst them. In both of these cases the Before events has more details than the After event. This means that for people interested in getting that before data in conjunction with the timing data have to subscribe to both events and either independently store the data from the begin event and carry it though to the after, or correlate the data after the fact.
In most cases, if the After event had the same data as the Before event, it would simplify things for the developer with the only thing they would need to store/flow between the two events is the timing information. In our case, it would also mean that we would only need to publish the After event to our internal store and/or not have to store this subset of data independently whilst waiting for the post event if we only wanted the one event going through to our internal store.
For the current Before/After events where there is a difference in parameters that are published, it would seem that the extra data the Before event has could easily be made available to the After event as well. And moving forward it would seem this pattern would continue as the After usual is executed in the same scope as the Before.

@rynowak

Discussed this a bit with @avanderhoorn this morning, he thinks the changes here are pretty minimal and is going to send a PR :+1:

@rynowak parking this on your plate for tracking.

a0764faa86e00c77189fb563039a9abbee08ca66

Thanks!
On Monday, October 5, 2015, Ryan Nowak<EMAIL_ADDRESS>wrote:

Closed #3204 https://github.com/aspnet/Mvc/issues/3204.
—
Reply to this email directly or view it on GitHub
https://github.com/aspnet/Mvc/issues/3204#event-427414122.


Generate mock Apis

Fix linter issues in mock Apis

Correct me if I'm wrong, but won't we have to redo all those steps next time we regenerate all the mocks using mockery? I'm asking since the modifications seem to be done on auto-generated file.

Correct me if I'm wrong, but won't we have to redo all those steps next time we regenerate all the mocks using mockery? I'm asking since the modifications seem to be done on auto-generated files.

The makefile contains the "mock_generate" step which autogenerates the mocks that are in the PR based on the file that are located in pkg/utils.  These are the autogenerated files based on the changes in the pkg/utils versions.


Lift TSR Refactor and Pill Bottle TSR

Adds a TSR object for the pill box, used in the assistive care video
Since most of the lift tsrs are object generic these tsrs were moved from their object files in to the generic tsr file. The tray has a specific tsr, however the prpy framework will default to the tray tsr first, as we would desire.

@mkoval I have made your edits, can this be merged?

Thanks. The changes look good.


Missing Command during setting up volto

There is a missing Command in the volto setup training documentation

In the first part after the cd my-volto-app command, there should be a yarn install command before the yarn start command.
This will be a bit confusing for the new people who are not experienced enough.
So I guess it will be just better to add that command

@SaiRev0 when you run yo @plone/volto, it already runs yarn install.


Check for previous/existing GitHub issues/module proposals

[X] I have checked for previous/existing GitHub issues/module proposals.

Check this module doesn't already exist in the module indexes

[X] I have checked for that this module doesn't already exist in the module indexes; or I'm proposing the module to be migrated from CARML/TFVM.

Bicep or Terraform?
Bicep
Module Classification?
Pattern Module
Module Name
avm/ptn/network/private-link-private-dns-zones
Module Details
Bicep replica of https://github.com/Azure/Azure-Verified-Modules/issues/613

Create all private DNS zones needed for private link supported services as per https://learn.microsoft.com/en-us/azure/private-link/private-endpoint-dns
Link to supplied vnets
Take in a location param to support things like azure backup geo code handling

Do you want to be the owner of this module?
Yes
Module Owner's GitHub Username (handle)
jtracey93
(Optional) Secondary Module Owner's GitHub Username (handle)
No response

I CONFIRM I WISH TO OWN THIS AVM MODULE AND UNDERSTAND THE REQUIREMENTS AND DEFINITION OF A MODULE OWNER

Hi @jtracey93,
Thanks for confirming that you wish to own this AVM module and understand the related requirements and responsibilities!
Before starting development, please ensure ALL the following requirements are met.
Please use the following values explicitly as provided in the module index page:

For your module:

ModuleName - for naming your module
TelemetryIdPrefix - for your module's telemetry

For your module's repository:

Repo name and folder path are defined in RepoURL
Create GitHub teams for module owners and contributors and grant them permissions as outlined here.
Grant permissions for the AVM core team and PG teams on your GitHub repo as described here.

Check if this module exists in the other IaC language. If so, collaborate with the other owner for consistency. 👍
You can now start the development of this module! ✅ Happy coding! 🎉
Please respond to this comment and request a review from the AVM core team once your module is ready to be published! Please include a link pointing to your PR, once available. 🙏
Any further questions or clarifications needed, let us know!
Thanks,
The AVM Core Team

This module is now published in BRM as of PR https://github.com/Azure/bicep-registry-modules/pull/2645
cc: @matebarabas @jeanchg

This module is now published in BRM as of PR https://github.com/Azure/bicep-registry-modules/pull/2645
cc: @matebarabas @jeanchg

Thank you for your work @jtracey93!

[x] Module published.
[ ] GitHub teams are available and assigned to their parents. --> @jtracey93 the avm-ptn-network-privatelinkprivatednszones-module-contributors-bicep team is not assigned to its respective parent (avm-module-contributors-bicep). Can you please confirm when you've assigned it, so I can close this issue? Thanks!
[x] CODEOWNERS file updated.

This has been done  @matebarabas 👍

Thanks for confirming, @jtracey93! I'm closing this issue now.


Pathfinding hangs indefinitely when obstructed by an unbreakable block

Detailed Description
When attempting to pathfind with goalGetToBlock, if the selected path is obstructed by a block that cannot be broken such as Bedrock, the bot approaches the obstruction and stops. At that point, the code hangs indefinitely until the obstruction is removed, a new goal is set, or the bot is stopped.
The bot also does this if obstructed by a block that it does not have the correct tool to break. If blocked in by leaves, it will not break them unless it has a Hoe in its inventory to equip. I noticed that #142  has videos which show this behaviour.
The bot does not throw any error, nor does it trigger any 'goal_reached', 'path_updated', or 'path_reset' events while this is happening. It gets stuck in place and hangs. It also does not time out when in this state.
Steps to Reproduce

Create a basic bot that connects to a server, with mineflayer-pathfinder set up.
Set a goalGetToBlock which is obstructed on all sides by a block that cannot be broken, such as bedrock.
Run the bot and observe.

Alternate Steps to Reproduce

Create a basic bot that connects to a server, with mineflayer-pathfinder and mineflayer-collectblock set up.
Run the collectBlock.collect() function, targeting a diamond ore block (or any other block) which is obstructed on all sides by bedrock.
Run the bot and observe.

Expected Behaviour
When the bot encounters a goal that cannot be reached because of an unbreakable block, be it Bedrock, a Chest, etc, it should throw an error or event update (such as path_update: noPath  or path_reset: stuck) so that the goal can be skipped.
Actual Behaviour
When the bot encounters a goal that cannot be reached because of an unbreakable block, be it Bedrock, a Chest, etc it stops in place and the pathfinding code seems to hang. It doesn't throw any events, updates, or errors, nor does it time out.
My Use Case
I am attempting to use https://github.com/PrismarineJS/mineflayer-collectblock/ to gather resources.
When gathering diamonds, the bot will occasionally locate diamonds in the bedrock layer that cannot be reached in survival mode.
I've also noticed this issue with leaves blocking the bot in if there is no Hoe in its inventory when attempting to gather wood.
Code Snippets
This is not my whole program, but these are the code snippets that I believe are relevant to the issue and recreating it.
//Debug listeners, these never trigger when the issue is occurring.
bot.on('goal_reached', () => { console.log("Goal reached.") })
bot.on('path_updated', (update) => { console.log("Path update " + update.status) })
bot.on('path_reset', (update) => { console.log("Update " + update) })

//This code sets up the parameters of the movements
const mcData = require('minecraft-data')(bot.version)
const movements = new Movements(bot, mcData)
movements.scafoldingBlocks = [mcData.itemsByName.dirt.id, mcData.itemsByName.cobblestone.id]
movements.blocksCantBreak.add(mcData.blocksByName.bedrock.id) //This line doesn't seem to make any difference on whether the bot hangs as described or not.
const cmd = msg.split(' ')
bot.pathfinder.thinkTimeout = 10000 //The think timeout doesn't seem to trigger at all when it's in the 'hanging' state I described.
bot.pathfinder.setGoal(null)
bot.pathfinder.setMovements(movements)

//Finding the blocks to be gathered from a command, cmd[1] will be 'diamond_ore' and cmd[2] + cmd[3] are integers. mcData.blocksByName returns the position of the block, not the block itself, so we have to convert to the Block datatype using the for loop and the bot.blockAt function below.
const blockType = mcData.blocksByName[cmd[1]]
    const targetPs = bot.findBlocks({
         matching: blockType.id,
         maxDistance: cmd[2],
         count: cmd[3]
})
let targets = []
for (let t = 0; t < targetPs.length; t++) {
    targets[t] = bot.blockAt(targetPs[t])
}

if (!targets[0]) {
    console.log("No " + cmd[1] + " located within " + cmd[2] +" blocks, aborting.")
    return
} else {
    console.log("Collecting...")
    //When the 'hanging' issue occurs as described, the below 'collect' function is called and executed, and it hangs there.
    //It doesn't throw an error or complete and say "Done Gathering", it gets stuck in the 'collect' function.
    //ignoreNoPath doesn't seem to affect whether it gets stuck in this state or not. If set to true, the bot
    //  will run into the obstruction, sprint into it, and hang in that state while sprinting. Effectively
    //  the only difference is that the bot hangs while sprinting instead of while standing still.
    bot.collectBlock.collect(targets, {ignoreNoPath: false}, (error) => {
        if (error) {
            console.log(error)
            return
        } else {
            console.log("Done gathering.")
            return
        }
    })
}
return

That's likely an issue with the collectblock plugin. pathfinder provides many way to check that the path is obstructed, the plugin should use them.

That's likely an issue with the collectblock plugin. pathfinder provides many way to check that the path is obstructed, the plugin should use them.

It isn't. I've tested this issue using a goalGetToBlock goal set to a point which is impossible to reach, without using the collectblock plugin at all. The same hanging behaviour happens as described in my post.

What version where you using? Bedrock should be on off the blocks that pathfinder should avoid when planing paths. It might be that for some reason it still tries to plan a path through an unbreakable block. Does it look like the bot is trying to break the block?


Disabling formatter JSON pretty-print actually toggles instead of disabling

Monolog version 2.1.0 (used by Laravel 7.0)
https://github.com/Seldaek/monolog/blob/master/src/Monolog/Formatter/NormalizerFormatter.php#L102
$this->jsonEncodeOptions ^= JSON_PRETTY_PRINT

The NormalizerFormatter::setJsonPrettyPrint() function takes a boolean that should either enable or disable the "pretty print" formatting. I'm assuming that is the intention, though it is not explicly documented.
However, the parameter provided has this effect instead:

true - set JSON "pretty print" on.
false - toggle JSON "pretty print" on or off.

I believe the fix should be:
$this->jsonEncodeOptions &= ~JSON_PRETTY_PRINT;

I need to test that that further, in case the number of bits set for the inverse of JSON_PRETTY_PRINT is not enough for the datatype of $this->jsonEncodeOptions, requiring perhaps some longint casting (just a hunch, but I really haven't dug into it that deeply yet), but it works for me as a quick test.
There is a workaround at present:-
To enable JSON pretty print:
$formatter->setJsonPrettyPrint(true);

To disable JSON pretty print:
$formatter->setJsonPrettyPrint(true);
$formatter->setJsonPrettyPrint(false);

i.e. toggle from a known state.
Happy to provide a PR if you aggree with this, including some documentation clarifications. I guess it is not urgent, having been around for a long time, and there is a workaround (which I am using here) that will also be forward-compatible with this fix.

I guess this is a follow-on from issue #1139


Container network segregation / firewalling

From @carmstrong on May 16, 2014 1:8
Application containers don't need access to etcd, for example.
Copied from original issue: deis/deis#986

From @moretea on July 10, 2014 15:38
What starting with binding critical services, such as Docker and etcd to $COREOS_PRIVATE_IPV4?

From @gabrtv on May 16, 2014 20:5
As it stands today, deployed containers can access anything on the network including unrestricted services running on the CoreOS host (like etcd).  To fix this, we need to deploy a unit file that configures iptables on all Deis machines.
Here is a first stab at network security requirements for containers:

Containers must be able to access the outside world
Containers must be able to access other containers
Containers cannot access the CoreOS host (SSH, etcd, etc)

Deis containers are a special case as they require access to etcd.  How we accomplish this is an interesting problem.  We may be able to launch a sidekick proxy or leverage some more advanced Docker networking.
I see 4 steps:

Think through attack vectors from malicious containers and agree on the requirements
Prototype an iptables unit that locks down traffic according to those requirements
Prototype a mechanism for allowing certain containers restricted access to etcd (proxy?)
Deploy the new iptables unit file across all Deis hosts using custom user-data

Thoughts?

From @paulczar on August 10, 2014 21:57
most important step here is to bind etcd to private network only on the hosts.   this way external entities cannot access.
you could also run etcd in a container that also runs iptables, that way you can restrict access regardless of whether or not the host ( coreos ) supports firewalling.

From @carmstrong on July 22, 2014 17:39
As far as I know, there is no way to support keyspacing in etcd. They support client SSL certs, but no way to restrict keys based on different clients. ACL support is tracked in coreos/etcd#91, but there haven't been any updates in quite some time...
If anyone has a better way to handle this before etcd implements ACL support, we're definitely interested!

From @benmccann on July 16, 2014 14:44
Wouldn't some applications want access to etcd for their own use? It seems like use of etcd authentication and ACLs may be a solution which allows applications access to etcd without being able to access Deis's internally used etcd keys.

From @gust1n on July 11, 2014 10:47
We heavily use etcd for watching the /services path for discovering new nodes and connecting over zeroMQ (not using your router). Restricting access to this would make us poll the DNS router instead which would make life harder for us...

From @bacongobbler on July 11, 2014 8:49
@moretea could you please expand on that a bit? I'm not quite sure I understand the question.

From @davedoesdev on September 11, 2014 8:15
Is there a way to stop one application from accessing another application?

From @iamveen on September 24, 2014 7:7
Perhaps some inspiration can be drawn from the geard implementation.
I think it would be pretty awesome if fleet had something like this built-in, rather than relying on docker linking. Something about seeing all those env vars just gets under my skin :\

From @intellix on September 24, 2014 8:53
Also confused by this issue. I thought etcd was primarily for discovering services in your application. Like my API asking etcd for the host/port of my database. If it can't access etcd then how do I know where the services exist?

From @gabrtv on September 11, 2014 14:44
@davedoesdev not currently.  In fact, that goes a level beyond what we're proposing here.
If you have time I would love to have you write up the use-case in a separate GitHub issue so we can come up with some proposals for addressing it.

From @davedoesdev on September 24, 2014 8:33
It'd be great to have support for https://github.com/zettio/weave/

From @blaggacao on January 20, 2015 9:27
Out of curiousity, has been thought to swap etcd for consul as the K/V backend? It comes with acl. Might be sensible to continue using etcd for the control layer until the guys at CoreOS catch up and meanwhile introduce consul for the application panel.
@carmstrong wouldn't environment variables not making troubles when morphing and dynamic in the context of the application runtime? - not sure what that would be good for, but I would best guess for some low level multitenancy, which is managed by the application itself (or better: some intermediate controller code). Let's say a dynamic database creaction with automated credentials creation and propagation. There we are still on the hosting level.
Update:
Maybe we could conceptually think of an platform controller panel, with it's highly segregated lightweight autochtonuous backing services and platform-wide first level backing services (e.g. ceph, dns, networking) and a more flexible application controller panel which implements opinionated 2nd level backing services (eg DB, K/V, monitoring, etc), but in the sense "opinionated by the operator towards the developer", not that much "by the publiser towards the operator"...

From @davidillsley on November 16, 2014 13:27
I'm wary of the statement "In practice, this is really only a concern when clusters are running untrusted applications.". It's also a concern when you have multiple applications, one of which has a security vulnerability allowing the application access to etcd to be exploited.
Is this the appropriate forum to discuss changing that text, or should I raise another issue?

From @carmstrong on November 16, 2014 20:50
@davidillsley That's a great point. I think this issue is a great place to discuss appropriate changes.

From @carmstrong on September 24, 2014 17:14

I thought etcd was primarily for discovering services in your application.

etcd is for the Deis control plane's services to coordinate with each other. Applications shouldn't be concerning themselves with etcd, and instead should be using environment variables to configure things like database endpoints.

From @gabrtv on January 21, 2015 17:58

Out of curiousity, has been thought to swap etcd for consul as the K/V backend?

Yes, we have actively explored Consul as it can potentially add a lot of value around health monitoring and service discovery.  Unfortunately, it's also a lot of duplicated infrastructure (another raft cluster) and a significant engineering effort.  As a result, it's not a high priority at this moment.
In the interest of providing better network segregation and security, how do folks feel about:

Separate k/v stores (and raft clusters) for platform-level and application-level concerns?
Enforcing an overlay network to isolate application traffic from platform traffic?

From @blaggacao on January 22, 2015 7:49
Beware, it's not an indepth opinion of mine and maybe in the wrong tradeoff scope.
The intention behind was to close down the runtime app rather completely to injection of malicios tools as it's probably the app itself which is the vulnerable point. I think this should never be enforced in any way, I just thought of building my containers this way and deploying as container images directly.
I'm just guessing loud, don't know much about actual attack patterns. However not being able to write to a filesystem sounds secure. Extra compromising tools would have to be loaded and executed directly to ram... persistent store can be monitored for/closed down against improper write access specially. It just would make any attack pattern involving fs writes more dificult.
Maybe this could be an interesting pattern for (some parts of) the control plane as well, reducing surface.

From @blaggacao on January 22, 2015 3:44
:+1:
3. as a "soft" design-rule / documentation: make the better part of the application file system(s) read-only? Not sure though if this is really an effective measure, however it seems to me that in 12-factor apps this becomes an option. Or did I conceptually miss something?

From @apps4u on February 5, 2015 0:19
Im not a expert in Deis or CoreOS so this might be a bad idea , but would there be a way to create VLANS then have deis containers on a vlan that can acccess the required service but have all other containers on a different VLAN that is locked from access things like ETCD , This seems like a easy solution so Im guessing this wont work or some one would of thought of it but I thought I might as well ask.

From @bacongobbler on January 22, 2015 6:37
The filesystem as per Heroku's cedar stack is ephemeral, so that's been the design we've been following. Same goes for any other PaaS out there*. Is there a specific reason that a read-only filesystem would be necessary?
Note: Heroku used to have a read-only filesystem in their bamboo stack which you could only write to ./tmp and ./logs, but they deprecated that in favour of documenting their dynos as ephemeral when they migrated over to the cedar stack.
*: Stackato, Cloud Foundry, Flynn, Dokku, etc.

From @azurewraith on February 25, 2015 19:39

In the interest of providing better network segregation and security, how do folks feel about:

Separate k/v stores (and raft clusters) for platform-level and application-level concerns?
Enforcing an overlay network to isolate application traffic from platform traffic?

Seems reasonable to me.  What is the game plan for driving this home?

From @wenzowski on February 24, 2015 5:20
Seems to me that #3072 must be considered when undertaking this if it is to be implemented in iptables like geard does. In terms of etcd access, what about binding keys to environment varibles on the container and sighup'ing it whenever the environment variables change?

From @Brandl on May 1, 2015 17:15
Dear Deis Developers,
I came across your software today and read through you documentation. It comes really promising and close to what I am looking for. I was really scared, when I came across the security section:

"Deis is not suitable for multi-tenant environments or hosting untrusted code."

If this is actually the case, I would call this a security critical bug, because if there actually is a scenario, where getting a web app hacked imposes a threat to all other containers and the actual host, that would be terrifying.
Maybe I'm just misinterpreting this issue, so what is the actual impact of this?

From @carmstrong on February 25, 2015 21:34

Seems reasonable to me. What is the game plan for driving this home?

For a change like this, we'd like the larger Deis community's input. Next step would be to open a proposal PR (see #2911 for a good example) adding documentation around the segregation, as if it had already been implemented. Once everyone agrees on that, implementation can commence with a high degree of confidence that it will be merged without significant changes.

From @gabrtv on May 2, 2015 18:56
@Brandl you are correct that a compromised container can pose a threat to other containers and anything accessible over the network (including the underlying host).
Ideally containers would run on an isolated-by-default network segment with explicit access grants to endpoints as permitted (e.g. other containers, control plane infrastructure and external/third-party services).  Unfortunately, achieving this level of network security is non-trivial and we want to be open about that, hence the disclosure in our documentation.
I do want to be clear that there a big difference between running untrusted code by design and running it by accident via application compromise.  While the net result is the same (untrusted code running inside the cluster), the latter scenario is no different in Deis than what you'll find on comparable container platforms or orchestration systems like Mesos, Kubernetes, etc.
We do intend to support multi-tenant environments eventually.  We are exploring technologies along the lines of ambassadord and Apcera's semantic pipelines (not open source) to help us get there.  We also need help from upstream projects like Docker and etcd.  However, until we undergo an audit by a 3rd-party security vendor, it's unlikely we will remove the disclaimer re: true multi-tenancy.

From @azurewraith on May 2, 2015 15:50
@Brandi has a point, even if you trust all your users a security breach (after all we are on the cloud) can jeopardize the security of the other containers / deis core.

From @apps4u on May 3, 2015 4:38
That is correct but they are two different things having your application hacked is different to running code that is designed to be unsafe. So running code in a container that is designed to bring down your cluster could happen if you run untrusted code but if your application was hacked then some one got access to the under laying system is not a Deis issue it would also be a issue if you ran Core OS cluster or a Docker Cluster .
So yes the platform is secure as any other like system but if you let some run a container that was designed to cause you issue then that could be a problem . Till Deis is truly safe to run in a multi tenant enviroment you should make sure yo run trusted code then you will be safe just unless you leave a whole in your application but that risk is there whether you run Deis or Not.
Jason Kristian | Director | Apps 4 U Pty Ltd.
ph: +61<PHONE_NUMBER>
mob: +61 0411 389 392
e: Jason Kristian<EMAIL_ADDRESS>
On 3 May 2015, at 1:50 am, azurewraith<EMAIL_ADDRESS>wrote:
@Brandi https://github.com/Brandi has a point, even if you trust all your users a security breach (after all we are on the cloud) can jeopardize the security of the other containers / deis core.
—
Reply to this email directly or view it on GitHub https://github.com/deis/deis/issues/986#issuecomment-98372477.

From @apps4u on May 2, 2015 2:44
just don’t run this if you are left users who you don’t trust like random online user. its not designed to work like that. Its safe when say a company runs all its containers on the platform
Jason Kristian | Director | Apps 4 U Pty Ltd.
ph: +61<PHONE_NUMBER>
mob: +61 0411 389 392
e: Jason Kristian<EMAIL_ADDRESS>
On 2 May 2015, at 3:15 am, Brandl<EMAIL_ADDRESS>wrote:
Dear Deis Developers,
I came across your software today and read through you documentation. It comes really promising and close to what I am looking for. I was really scared, when I came across the security section:
"Deis is not suitable for multi-tenant environments or hosting untrusted code."
If this is actually the case, I would call this a security critical bug, because if there actually is a scenario, where getting a web app hacked imposes a thread to all other containers and the actual host, that would be terrifying.
Maybe I'm just misinterpreting this issue, so what is the actual impact of this?
—
Reply to this email directly or view it on GitHub https://github.com/deis/deis/issues/986#issuecomment-98180216.

From @jokeyrhyme on November 10, 2015 0:24
Regarding @nlsrchtr 's point, it does seem as though key prefixes can now be used to restrict access in etcd: https://github.com/coreos/etcd/issues/2384
From my naive glance at the Godeps, it seems etcd 2.0 is being used. Is there work underway to upgrade to etcd 2.1 or newer?

From @bacongobbler on May 26, 2016 18:0
bumping this thread now with v2-related discussion. To bring us all up to speed on the release candidate:

Deis (now called Workflow) uses Kubernetes instead of Fleet
kubernetes has service discovery built into the system, so etcd has been "removed" from the control plane (kubernetes still uses etcd for skydns, it's built-in service discovery mechanism)

The last thing to resolve would be true network segregation based on which namespace the application is deployed. The application should be able to communicate with any other apps deployed in the same namespace to facilitate #4173, but not with the kubernetes API server, the Workflow API server, or any other application outside of its own namespace (internally, at least). Applications should still be able to go surf the public web, as well as target applications through the router. For example, application foo can talk to application bar via http://bar.example.com (through the router), but not through the pod's IP address (<IP_ADDRESS>) or through DNS ($ ping bar) unless bar happened to be deployed in the same namespace as foo.

From @bacongobbler on July 16, 2015 17:44
related: #3812

From @nlsrchtr on September 24, 2015 8:6
Maybe the Authentication and Authorization features introduces into etcd 2.1 could help solve part of the problem. Combined with a network layer based security, like drafted in #3812, would make it even better.


use shellcheck in a github actions

shellcheck

https://github.com/kokoichi206/plantuml-to-mermaid/issues/3


Which integrations are supported?

Checklist:

[x] I updated to the latest version available
[x] I cleared the cache of my browser

Release with the issue:
v1.1.0 Latest
Description of problem:
Not a literal problem but wondering which integrations are supported.
I added the OpenUV integration and got the following sensor.
I guess I will need to use the current or max UV index?
Additional information:

@tjorim thank you for using this plugin.
It supports any integrations or weather stations that can provide an UV index.
In your case it depends what you want.
If you use the current then this will change through out the day whilst if you use the max i guess this will be set once for the whole day.
I hope this answers your question.

Great, thanks for the help! Would it be possible to integrate the time of max uv index in the card? It's an attribute of the sensor:
state_class: measurement
time: '2023-05-04T13:37:44.745000+02:00'
unit_of_measurement: UV index
icon: mdi:weather-sunny
friendly_name: Max UV index

https://www.youtube.com/watch?v=uJVJgtk9-mk&t=1008s
this is video example how to use it.


[Search] Add text query vectorizer

Packages impacted by this PR
@azure/search-documents
Issues associated with this PR
#27146
Describe the problem that is addressed by this PR
Regenerates with 2023-10-01-preview Swagger to add text query vectorizer functionality.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-search-documents


with variable substitution

Have you read the Contributing Guidelines on issues?

[X] I have read the Contributing Guidelines on issues.

Prerequisites

[X] I'm using the latest version of Docusaurus.
[X] I have tried the npm run clear or yarn clear command.
[X] I have tried rm -rf node_modules yarn.lock package-lock.json and re-installing packages.
[X] I have tried creating a repro with https://new.docusaurus.io.
[X] I have read the console error message carefully (if applicable).

Description
Create siteVariables.js:
const testVariable= "TEST";
export const siteVariables = {
testVariable: testVariable,
}
Create mdx doc test.mdx:
import {siteVariables} from '@site/src/siteVariables';
import CodeBlock from '@theme/CodeBlock';
This works!
Test {siteVariables.testVariable}
Strange, my title and language formatting dissapeard as well my button to expand or copy the code....

Test {siteVariables.testVariable}

Reproducible demo
No response
Steps to reproduce
Create the document as described
Expected behavior
When using a codeblock on multiple lines that it would work as using it in a single line.
Actual behavior
title and language formatting disappeared as well the button to expand or copy the code
Your environment

Public source code:
Public site URL:
Docusaurus version used: 3.4.0
Environment name and version (e.g. Chrome 89, Node.js 16.4):
Operating system and version (e.g. Ubuntu 20.04.2 LTS): Windows 11 Pro

Self-service

[ ] I'd be willing to fix this bug myself.

Can you provide with a minimal docusaurus repro, i'm not sure I understood your problem. It would greatly help us if you provide one

The issue is using markup that makes it impossible to view the whole content you posted.
By accessing the raw markdown I understand the problem
# This works!
<CodeBlock language="powershell" title="PowerShell">Test {siteVariables.testVariable}</CodeBlock>

# Strange, my title and language formatting dissapeard as well my button to expand or copy the code....
<CodeBlock language="powershell" title="PowerShell">
Test {siteVariables.testVariable}
</CodeBlock>

I don't believe the first case doesn't work
However you must be aware that the children must be a string, and not JSX, so be sure to double-check what you pass as children prop
See playground: https://stackblitz.com/edit/github-isdmzv?file=src%2Fpages%2Findex.tsx

Sorry, try this one
https://cd3z58-3000.csb.app/docs/test

This is the preview of the sandbox, while I need the code
The link you should have shared instead: https://codesandbox.io/p/devbox/elated-andras-cd3z58?file=%2Fdocs%2Ftest.mdx%3A1%2C1-12%2C13

What I said above applies, and your code block is not using a string but is passing a
 tag. When using MDX, you can interleave markdown/JSX, and it creates extra paragraphs on line breaks. See the MDX playground on how those 2 samples compile differently:

In general I'd recommend to use a single template literal string to avoid such problems, and ensure you always pass a single string as Codeblock children.
As documented here:
https://docusaurus.io/docs/next/markdown-features/code-blocks#usage-in-jsx
<CodeBlock
        language="jsx"
        title="/src/components/HelloCodeTitle.js"
        showLineNumbers>
        {`function HelloCodeTitle(props) {
  return
Hello, {props.name}
;
}`}
</CodeBlock>


sanitycheck: fix filtering for boards without DTS

If we don't have a DTS (like nrf52_bsim) we shouldn't try and create an
EDT, but we still need to call expr_parser.parse to filter testcases.
So move the os.path.exists(dts_path) around the creation of the EDT.
Fixes: #20371
Signed-off-by: Kumar Gala<EMAIL_ADDRESS>

LEt me try it @galak, thanks

I can confirm that sanitytest for nrf52_bsim works now.
https://gist.github.com/stephanosio/d55dbc72d86ea5f8e333c64c831100d7


Add ability to view a specific contact's task list in GUI

Not yet implemented test. GUI still need further enhancements.

Codecov Report

Merging #49 (a52a843) into master (b192be0) will decrease coverage by 4.42%.
The diff coverage is 4.08%.

@@             Coverage Diff              @@
##             master      #49      +/-   ##
============================================
- Coverage     68.03%   63.61%   -4.43%
+ Complexity      421      420       -1
============================================
  Files            78       82       +4
  Lines          1386     1484      +98
  Branches        138      147       +9
============================================
+ Hits            943      944       +1
- Misses          405      502      +97
  Partials         38       38

Impacted Files
Coverage Δ

...rc/main/java/seedu/address/logic/LogicManager.java
65.21% <0.00%> (-9.79%)
:arrow_down:

src/main/java/seedu/address/model/Model.java
100.00% <ø> (ø)

src/main/java/seedu/address/ui/MainWindow.java
0.00% <0.00%> (ø)

...rc/main/java/seedu/address/ui/PersonListPanel.java
0.00% <0.00%> (ø)

src/main/java/seedu/address/ui/TaskCard.java
0.00% <0.00%> (ø)

src/main/java/seedu/address/ui/TaskListPanel.java
0.00% <0.00%> (ø)

...rc/main/java/seedu/address/model/ModelManager.java
86.20% <33.33%> (-6.11%)
:arrow_down:

.../seedu/address/logic/parser/AddressBookParser.java
80.95% <0.00%> (-4.05%)
:arrow_down:

...va/seedu/address/logic/commands/DeleteCommand.java
100.00% <0.00%> (ø)

...eedu/address/logic/commands/DeleteTaskCommand.java
0.00% <0.00%> (ø)

... and 2 more

Continue to review full report at Codecov.

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

Seems ok to me


Document that Map.pick can throw KeynotFoundException

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/conceptual/map.pick['key,'t,'u]-function-[fsharp].md
:white_check_mark:Succeeded

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


New SQL commands support

Which version and edition of Flyway are you using?
If this is not the latest version, can you reproduce the issue with the latest one as well?
(Many bugs are fixed in newer releases and upgrading will often resolve the issue)
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
Which database are you using (type & version)?
Which operating system are you using?
What did you do?
(Please include the content causing the issue, any relevant configuration settings, the SQL statement that failed (if relevant) and the command you ran.)
What did you expect to see?
What did you see instead?

Please add the below command support for Oracle.
SET TERMOUT ON
SET ECHO ON
SET TIMING ON
SET TIME ON
I am getting the error as the commands are unsupported on 5.2.4
[main] WARN org.flywaydb.core.internal.database.oracle.pro.SQLPlusSetSqlStatement - SP2-0158: unknown SET option "ON"
[main] WARN org.flywaydb.core.internal.database.oracle.pro.SQLPlusSetSqlStatement - SP2-0158: unknown SET option "ON"

These have now been implemented.


Subscribe callback should be able to return response object

In what area(s)?
/area runtime
Describe the proposal

Today, apps cannot return anything from subscribe callback other than an error.  For extensibility, users should be able to return a response object (perhaps "metadata"), which will make it possible to add features later without breaking changes.  Examples could be (not part of this proposal, for illustration only):

an indication the app does not want to process the message now, but does want it delivered again in the future.
an indication the app wants to reject the message forever

Discussed in pub/sub scoping review - this is needed before 1.0


Turing self evaluation: computing pillar

:white_check_mark: Checklist

[x] This pull request has a meaningful title.
[x] If your changes are not yet ready to merge, you have marked this pull request as a draft pull request.

:ballot_box_with_check: Maintainers' checklist

[x] This pull request has had the appropriate labels assigned
[x] This pull request has been added to the SATRE backlog project board
[x] This pull request has been assigned to one or more maintainers

:arrow_heading_up: Summary

Turing self-evaluation against the computing pillar

:warning: Note that we currently fail 2.2.12.: You must monitor the network configuration of your TRE to check for misconfigurations and vulnerabilities.. We should discuss here whether this should be Mandatory and/or whether the wording needs to be changed.
:closed_umbrella: Related issues

:raising_hand: Acknowledging contributors

[x] All contributors to this pull request are already named in the table of contributors in the README file.
[x] The following people should be added to the table of contributors in the README file:

I recall discussing 2.2.12 a number of times before. I think there are some problems with that point,

It seems much more strict that similar points (see 2.4.3 and 2.4.4)
It isn't particularly clear what this involves given that it is mandatory. Does it require external pen tests? What tools can we use to scan for vulnerabilities? Compared with the configuration management section which first suggests that you are able to detect misconfigurations before suggesting you actively check.
It isn't entirely clear why the networking rules needs to be more strict. If it is because we think that this an area where errors more likely lead to unapproved data egress, we could be more upfront or specifically ask about checking outbound connections.

I would be happy to see that requirement reworked to recommended with some clearer guidance.

@JimMadge : can you add a commit to this PR that would split this requirement into: "You should be able to monitor... / Recommended" and "You should regularly monitor... / Recommended" ?


Timestamp filtering returns empty DataFrame

What went wrong?
Since version 0.3.x we are able to index Timestamp and Date. But when we try to filter but those Timestamps, the Query is not well parsed and returns an empty DataFrame.
After a few prints and tests, I discovered that the d.getTime we use in LinearTransformer to initialize min and max of LinearTransformation, returns a Long X. In contrast, the filtering from the user returns a different Long Y.
This difference does not allow the QuerySpecBuilder to initialize the correct space. QuerySpaceFromTo returns an EmptySpace, which contains 0 files to read.
How to reproduce?
1. Code that triggered the bug, or steps to reproduce:
Using some code in the TransformerIndexingTest:
    import spark.implicits._
    val df =
      Seq(
        "2017-01-03 12:02:00",
        "2017-01-02 12:02:00",
        "2017-01-02 12:02:00",
        "2017-01-02 12:02:00",
        "2017-01-01 12:02:00",
        "2017-01-01 12:02:00")
        .toDF("date")
        .withColumn("my_date", to_timestamp($"date"))

    df.write.format("qbeast").option("columnsToIndex", "my_date").save(tmpDir)

    val indexed = spark.read.format("qbeast").load(tmpDir)

    indexed.filter("my_date == '2017-01-02 12:02:00'").count() shouldBe 3

But the returned DataFrame contains 0 rows.
2. Branch and commit id:
I'm using photon branch: photon-datasource-standalone
3. Spark version:
On the spark shell run spark.version.
Spark version 3.3.0 and Delta version 2.1.0
4. Hadoop version:
On the spark shell run org.apache.hadoop.util.VersionInfo.getVersion().
3.3.4
5. How are you running Spark?
Are you running Spark inside a container? Are you launching the app on a remote K8s cluster? Or are you just running the tests in a local computer?
Local

After more research, we found out that:

We are indexing in milliseconds, while Spark is filtering in microseconds (which gives a difference of 1000x).
Spark has two functions that convert a date to a Timestamp: unix_timestamp and to_timestamp. The first one pre-processes the value as seconds, while the second one converts it to milli. This is at writing time.
While reading, we do not have a special way of treating Timestamp type. So the filtering gets parsed to microseconds and QuerySpecBuilder is unable to find any areas of the index that match the space.

Possible solutions:

Ensure that all writings are done in microseconds. Or explicitly add an option for the preferred measure.
Parse the Timestamp correctly when reading. Detect the Timestamp data type in the filters from Spark and apply any transformation to match the index area.

I am working on defining a document with a proper review of how to store Time-Series. Thanks for your patience.

Since JSON format only stores dates in milliseconds https://blog.devgenius.io/the-optimal-way-to-include-dates-in-json-2220c2a355a8 , I think the second is the best approach.


Fix broken link to Localization READMEs

This PR fixes #44080 :)

lgtm, Thanks for the fix!

My pleasure! thanks for reviewing :)

/approve


Can't get this to work on Windows

Can someone help me setting this up on windows 10 x64 ?
Thanks

Can't provide tech support for the setting up the other software you need, sorry. You'll just have to follow the suggestions in the link.


chore: update yarn to current stable

Fixes #27

Let's stick with yarn for now, @stathismor... if for no other reason than this was a pain in the backside 😆


stat failures by class

In addition to stat'ing the general number of failed jobs in the queue, this will also stat the count by job class.
This would let you do something like:

configure alerting on any failed job, checking it once or twice a day
configure alerting for specific important jobs very frequently, and perhaps even having those jobs create a more urgent alert.

Going to merge this and try it tomorrow when I'm not on a plane


What does the argument parameter "args.target" sets for multivariate time series forecasting?

Thank you for sharing the code, really helpful. However, I noticed that for multi-feature forecasting, we still need to provide a target feature, which is by default "OT". My question is does the network only why is that required? Will not the network be trained to forecast all the features?
Also, how are the multiple features passed into the network? So is it done by concatenating the multiple features from the conv layer and use that as input to the network, or something else?

Hi,
If you use mode 'MS' or 'S', target is required and the model will be trained to predict the target feature. And if you use mode 'M', the model will be trained to predict all features.
Data fed into model is a tensor containing multiple features (shape is [Batchsize, SequenceLength, Dimension]), and information from multi-feature data will be extract by the entire network.

Thanks for the reply. But even using "M" mode, we still need to provide a target feature from the CSV file. Why is that? Does it use it anyway?
Regarding the second question, I agree the input is (shape is [Batchsize, SequenceLength, Dimension]), but I am asking does the output of the convolutions of multiple features concatenate and then fed into the network?

If you use 'M' mode, target is not required, you can set it to any value.
Convolution layer is a part of the network, the input of convolution layer is a multiple feature tensor (which is also the input of the entire network), and the output of convolution layer is fed to follow-up network structures. You can refer to code models/model.py and exp/exp_informer.py to get more information.


Update jshint

Need to fix some of the non issues we are getting from jshint.
Added the jshint config from beehive
Moved the files to the config/style_guides

Coverage remained the same at 94.05% when pulling e4f4675cc9789f83f4012572e028f0a35a2aec8c on update-jshint into 0aab6ae93de9113817e2e5d05b8b7e0a384c5962 on master.

:+1:

:+1:


[FEATURE] Hide scheduling when sending tokens.

Pull Request Test Coverage Report for Build 268

1 of 1 (100.0%) changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 32.672%

Totals

Change from base Build 265:
0.01%

Covered Lines:
2417

Relevant Lines:
6211

💛  - Coveralls


parentWindow vs defaultView

parentWindow vs defaultView
Is it the same as document, where parentWindow works in IE and defaultView works for all other browsers?
Wondering while setting up a react test suite using jsdom. Below works fine
var jsdom = require('jsdom');

global.document = jsdom.jsdom('<!doctype html>');
global.window = document.defaultView;

Below error's out: TypeError: Cannot read property 'addEventListener' of undefined
var jsdom = require('jsdom');
global.document = jsdom.jsdom('<!doctype html>');
global.window = document.parentWindow;

Any reason why 2nd option doesn't seems to be working?

Yes, parentWindow is a nonstandard IE-only property. Since jsdom is not IE, we don't support it.

@domenic :+1: Thanks. Closing the issue.


Update URL on News page

@fiestared @sot528  I was asked to update this URL a while ago but completely forgot.

@Dejimmy
LGTM😉