SecurityMonkey for GovClod region

Hi,
I am trying to setup SecurityMonkey for GovCloud region, but later found that non of the region is being listed in Dashboard. Is there any change require to make it work on GovCloud ?

Hi @skdubey, we would love to do some additional testing to get it to work with GovCloud.
Can you provide additional details on what you are seeing?

One major challenge is that only a small subset of AWS technologies are available in GovCloud, so you may see some missing functionality as a result.

You may need to do some refactoring...
For example: https://github.com/Netflix/security_monkey/blob/03c1594e0906167fb2c66a2d06fcd87d28736643/security_monkey/constants.py#L25
You would need to remove the govcloud region from the TROUBLED_REGIONS constant.

Thanks for the quick reply,
But i am not able to see anything in Dashboard, nor any server log which should say that it is attempting to do something on system. Services are running fine.

Hi Mikegrima,
What is ROUBLED_REGIONS ? Does it means, all the regions mentioned in this list, system will not check for those regions ?

@skdubey : Take, for example the code here:
https://github.com/Netflix/security_monkey/blob/03c1594e0906167fb2c66a2d06fcd87d28736643/security_monkey/watchers/sqs.py#L58-L67
If an Exception is raised, it will skip over the regions defined in TROUBLED_REGIONS, which by default, we have the GovCloud region in there.
What happens if you remove the GovCloud region from that constant? I would try that first, and post the results.

@mikegrima : Thanks, i will update you the result after making changes shortly.

Hello Mike,
Which file is this? I tried to find this string globally in security_monkey
directory and even in source, but couldn't find it.
On Mon, Nov 9, 2015 at 8:17 AM, Mike Grima<EMAIL_ADDRESS>wrote:

@skdubey https://github.com/skdubey : Take, for example the code here:
https://github.com/Netflix/security_monkey/blob/03c1594e0906167fb2c66a2d06fcd87d28736643/security_monkey/watchers/sqs.py#L58-L67
If an Exception is raised, it will skip over the regions defined in
TROUBLED_REGIONS, which by default, we have the GovCloud region in there.
What happens if you remove the GovCloud region from that constant? I would
try that first, and post the results.
—
Reply to this email directly or view it on GitHub
https://github.com/Netflix/security_monkey/issues/247#issuecomment-154905892
.

--
Regards,
Sandeep

Sorry got it "constants.py". Should i restart the service to take effect or
rebuild it from source after making this change ?
On Mon, Nov 9, 2015 at 12:40 PM, sandeep dubey<EMAIL_ADDRESS>wrote:

Hello Mike,
Which file is this? I tried to find this string globally in
security_monkey directory and even in source, but couldn't find it.
On Mon, Nov 9, 2015 at 8:17 AM, Mike Grima<EMAIL_ADDRESS>wrote:

@skdubey https://github.com/skdubey : Take, for example the code here:
https://github.com/Netflix/security_monkey/blob/03c1594e0906167fb2c66a2d06fcd87d28736643/security_monkey/watchers/sqs.py#L58-L67
If an Exception is raised, it will skip over the regions defined in
TROUBLED_REGIONS, which by default, we have the GovCloud region in there.
What happens if you remove the GovCloud region from that constant? I
would try that first, and post the results.
—
Reply to this email directly or view it on GitHub
https://github.com/Netflix/security_monkey/issues/247#issuecomment-154905892
.

--
Regards,
Sandeep

--
Regards,
Sandeep

Hello Mike,
After removing the govcloud region and restarting the supervisor, i am
getting "Error loading resource from API. Error: " error in console but no log in access/error.log file.
On Mon, Nov 9, 2015 at 12:43 PM, sandeep dubey<EMAIL_ADDRESS>wrote:

Sorry got it "constants.py". Should i restart the service to take effect
or rebuild it from source after making this change ?
On Mon, Nov 9, 2015 at 12:40 PM, sandeep dubey<EMAIL_ADDRESS>wrote:

Hello Mike,
Which file is this? I tried to find this string globally in
security_monkey directory and even in source, but couldn't find it.
On Mon, Nov 9, 2015 at 8:17 AM, Mike Grima<EMAIL_ADDRESS>wrote:

@skdubey https://github.com/skdubey : Take, for example the code here:
https://github.com/Netflix/security_monkey/blob/03c1594e0906167fb2c66a2d06fcd87d28736643/security_monkey/watchers/sqs.py#L58-L67
If an Exception is raised, it will skip over the regions defined in
TROUBLED_REGIONS, which by default, we have the GovCloud region in
there.
What happens if you remove the GovCloud region from that constant? I
would try that first, and post the results.
—
Reply to this email directly or view it on GitHub
https://github.com/Netflix/security_monkey/issues/247#issuecomment-154905892
.

--
Regards,
Sandeep

--
Regards,
Sandeep

--
Regards,
Sandeep

Hey @skdubey - We'd love to be able to get security_monkey to work in govcloud.  Unfortunately, we don't have access to it.  If you'd feel comfortable doing a google hangout sometime so we can try and work through the issues, that would be great for the project.
Do you know if GovCloud is going to support Lambda in the future?  I don't see it on the current list:
https://aws.amazon.com/govcloud-us/details/

Im at the same point working with Security Monkey in GovCloud. I would like to try a Google Hangout to try to resolve this. I have the web interface up and running but nothing is being returned. I removed the GovCloud entry from troubled regions and still SM returns nothing.
For Lambda, not sure if they will or not. Its kind of driven from user demand what they put in GovCloud.

Sorry Patrick for late reply, I was traveling.
Let me know what is the right time to skype/hangout ?
Regarding Lambda, not sure when AWS will introduce this service in
Govcloud, as there are other services would be in their  priority list.
On Tue, Nov 10, 2015 at 12:19 AM, Patrick Kelley<EMAIL_ADDRESS>wrote:

Hey @skdubey https://github.com/skdubey - We'd love to be able to get
security_monkey to work in govcloud. Unfortunately, we don't have access to
it. If you'd feel comfortable doing a google hangout sometime so we can try
and work through the issues, that would be great for the project.
Do you know if GovCloud is going to support Lambda in the future? I don't
see it on the current list:
https://aws.amazon.com/govcloud-us/details/
—
Reply to this email directly or view it on GitHub
https://github.com/Netflix/security_monkey/issues/247#issuecomment-155152823
.

--
Regards,
Sandeep

@skdubey the error message: "Error loading resource from API. Error: "
suggests the Security Monkey is trying to reach an endpoint that GovCloud has no idea of. In Security Monkey code, I see comments like:
If we can't get the region, default to us-east-1 so we can fillout
For example in your case, Security Monkey is trying to connect to ec2.us-east-1.amazonaws.com when it is supposed to connect to ec2.us-gov-west-1.amazonaws.com. GovCloud knows nothing about the commercial regions. A possible fix is to query the metadata server for availability-zone and then set the default region.

@hellovadi, I replaced the default region in s3.py and restarted the
supervisor service but still not able to get this region. I am not a
developer so understanding this is little bit tough  for me.
@patrick, Should we go on remote session to work on  this if you have time.
On Wed, Nov 18, 2015 at 1:05 AM, hellovadi<EMAIL_ADDRESS>wrote:

@skdubey https://github.com/skdubey the error message: "Error loading
resource from API. Error: reachable.>"
suggests the Security Monkey is trying to reach an endpoint that GovCloud
has no idea of. In Security Monkey code, I see comments like:
If we can't get the region, default to us-east-1 so we can fillout
For example in your case, Security Monkey is trying to connect to
ec2.us-east-1.amazonaws.com when it is supposed to connect to
ec2.us-gov-west-1.amazonaws.com. GovCloud knows nothing about the
commercial regions. A possible fix is to query the metadata server for
availability-zone and then set the default region.
—
Reply to this email directly or view it on GitHub
https://github.com/Netflix/security_monkey/issues/247#issuecomment-157481286
.

--
Regards,
Sandeep

Just noticed below error. Seems that i should replace all the connection
url to govcloud url ?
2015-11-25 08:48:50,173 INFO: 0 deleted Security Groups in
[u'inSyncGovCloud'] [in
/usr/local/src/security_monkey/security_monkey/watcher.py:347]
2015-11-25 08:48:50,173 INFO: 0 created Security Groups in
[u'inSyncGovCloud'] [in
/usr/local/src/security_monkey/security_monkey/watcher.py:348]
2015-11-25 08:48:50,174 INFO: 0 changed Security Groups in
[u'inSyncGovCloud'] [in
/usr/local/src/security_monkey/security_monkey/watcher.py:358]
2015-11-25 08:48:50,174 INFO: Account inSyncGovCloud is done with Security
Group [in /usr/local/src/security_monkey/security_monkey/reporter.py:67]
2015-11-25 08:48:50,174 INFO: Running ELB for inSyncGovCloud (15 minutes
interval) [in /usr/local/src/security_monkey/security_monkey/reporter.py:55]
2015-11-25 08:48:50,520 ERROR: Job "run_change_reporter (trigger:
interval[0:15:00], next run at: 2015-11-25 09:03:34.330395)" raised an
exception [in build/bdist.linux-x86_64/egg/apscheduler/scheduler.py:520]
Traceback (most recent call last):
File "build/bdist.linux-x86_64/egg/apscheduler/scheduler.py", line 512,
in _run_job
retval = job.func(*job.args, **job.kwargs)
File "/usr/local/src/security_monkey/security_monkey/scheduler.py", line
46, in run_change_reporter
reporter.run(account, interval)
File "/usr/local/src/security_monkey/security_monkey/reporter.py", line
56, in run
(items, exception_map) = watcher.slurp()
File "/usr/local/src/security_monkey/security_monkey/watchers/elb.py",
line 127, in slurp
self._setup_botocore(account)
File "/usr/local/src/security_monkey/security_monkey/watchers/elb.py",
line 81, in _setup_botocore
self.botocore_session = connect(account, 'botocore')
File
"/usr/local/src/security_monkey/security_monkey/common/sts_connect.py",
line 61, in connect
role = sts.assume_role('arn:aws:iam::' + account.number + ':role/' +
role_name, 'secmonkey')
File
"/usr/local/lib/python2.7/dist-packages/boto-2.36.0-py2.7.egg/boto/sts/connection.py",
line 384, in assume_role
return self.get_object('AssumeRole', params, AssumedRole, verb='POST')
File
"/usr/local/lib/python2.7/dist-packages/boto-2.36.0-py2.7.egg/boto/connection.py",
line 1207, in get_object
raise self.ResponseError(response.status, response.reason, body)
BotoServerError: BotoServerError: 403 Forbidden

Sender
InvalidClientTokenId
The security token included in the request is invalid

430679e9-9351-11e5-bf63-5b75a543508e

On Wed, Nov 25, 2015 at 2:25 PM, sandeep dubey<EMAIL_ADDRESS>wrote:

@hellovadi, I replaced the default region in s3.py and restarted the
supervisor service but still not able to get this region. I am not a
developer so understanding this is little bit tough  for me.
@patrick, Should we go on remote session to work on  this if you have
time.
On Wed, Nov 18, 2015 at 1:05 AM, hellovadi<EMAIL_ADDRESS>wrote:

@skdubey https://github.com/skdubey the error message: "Error loading
resource from API. Error: reachable.>"
suggests the Security Monkey is trying to reach an endpoint that GovCloud
has no idea of. In Security Monkey code, I see comments like:
If we can't get the region, default to us-east-1 so we can fillout
For example in your case, Security Monkey is trying to connect to
ec2.us-east-1.amazonaws.com when it is supposed to connect to
ec2.us-gov-west-1.amazonaws.com. GovCloud knows nothing about the
commercial regions. A possible fix is to query the metadata server for
availability-zone and then set the default region.
—
Reply to this email directly or view it on GitHub
https://github.com/Netflix/security_monkey/issues/247#issuecomment-157481286
.

--
Regards,
Sandeep

--
Regards,
Sandeep

@skdubey you need to work with a contributor to fix this. When I run:
find src/security_monkey -type f | xargs grep us-east-1
there are many hits. In many cases SM just assumes us-east-1 as the default region.  If you want a quick turnaround: clone SM repo, edit the source to handle every line of the output of the command I have given above. Sorry I used to have GovCloud access, now I do not.

@skdubey you need to work with a contributor to fix this. When I run:
find src/security_monkey -type f | xargs grep us-east-1
there are many hits. In many cases SM just assumes us-east-1 as the default region. If you want a quick turnaround: clone SM repo, edit the source to handle every line of the output of the command I have given above. Sorry I used to have GovCloud access, now I do not.

Closing as "wontfix".
Really, I'd love for it to run in govcloud.  I'd love to have a PR for this. I don't have the ability to do so myself, and Netflix doesn't need it.


Question: How to stop execution in a authentication inbound filter in zuul 2?

I'm writing a inbound filter to validate authentication. How can I reject the call and return a 401 if the authentication failed?
And from my routing class, how can I return a 404 when none of my routes are matched?
Do I need to write a HttpSyncEndpoint just to create the status code response?
Thanks.

@wederbrand I had a similar question #481
I think the only way to do it is to write a EndPoint filter.


Enable pydocstyle

Summary
Enable pydocstyle to ensure single style of documentation. Missing pieces to be added later and checks to be enabled.
Test Plan
CI
Additional Notes
—

How did you update the docstring style of many functions at once?

No secret here:

Use ruff's --fix --unsafe-fix whenever it is possible.
Regex or simple find-and-replace for cases where it is possible.
Manual. Run -> get issues -> fix. Repeat till there are no issues :)


Could not load BanManager-WebEnhancer

Hi Confuser,
I'm trying to use your new WebUI (merged with AP), following your setup guide.
Is it compatible with BanManager v7?

Details

Server Software4: PaperMC 1.15.2 R0.1 #146
BanManager Version4: BanManager v7.0

Could not load 'plugins/BanManager-WebEnhancer.jar' in folder 'plugins'
paperMC    | org.bukkit.plugin.UnknownDependencyException: BanManager
paperMC    | 	at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:272) ~[paperspigot.jar:git-Paper-161]
paperMC    | 	at org.bukkit.craftbukkit.v1_15_R1.CraftServer.loadPlugins(CraftServer.java:358) ~[paperspigot.jar:git-Paper-161]
paperMC    | 	at net.minecraft.server.v1_15_R1.DedicatedServer.init(DedicatedServer.java:234) ~[paperspigot.jar:git-Paper-161]
paperMC    | 	at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:885) ~[paperspigot.jar:git-Paper-161]
paperMC    | 	at java.lang.Thread.run(Thread.java:834) [?:?]

Thanks !

Not yet, #1. There's a PR in progress to support it #3

Thanks !


query parentage cell cycle arrest

abolished cell cycle arrest in mitotic G1 phase in response to nitrogen starvation
is a descendent of
cell cycle arrest in mitotic G1 phase?

fixed

edit file: fedad3dc05dbea79bf554eff4835023ad8a5ab61
release: 154d4089fe3156b9a93a5cd829b2c555ac49371b


Unnecessary ObjectMeta that can instead use the k8s built-in types

Expected behavior
Don't generate metadata and instead use built-in k8s input types.
Current behavior

Currently the metadata of a CustomResource is using a locally generated ObjectMeta for metadata instead of using the built-in types in pulumi-kubernetes.
import {ObjectMeta} from "../../meta/v1";
...
public readonly metadata!: pulumi.Output<ObjectMeta | undefined>;

...

export interface FooArgs {
    ...
    readonly metadata?: pulumi.Input<ObjectMeta>;
}

Desired:
import { input as k8sInputs, output as k8sOutputs } from "@pulumi/kubernetes/types";
...
public readonly metadata!: pulumi.Output<k8sOutputs.meta.v1.ObjectMeta>;

...

export interface FooArgs {
    ...
    readonly metadata?: pulumi.Input<k8sInputs.meta.v1.ObjectMeta>;
}

Related:

https://github.com/pulumi/crd2pulumi/issues/34 per the unnecessary | undefined in the typedef

Also closes:

https://github.com/pulumi/crd2pulumi/issues/18

This is true for Go too. Maybe you can remove Typescript from the issue title?

Duplicate of https://github.com/pulumi/crd2pulumi/issues/30


failure while building hdfsdu sources

The following failure is seen on master when the hdfsdu cookbook tries to build  sources from
https://github.com/twitter/hdfs-du.
^[[0m    [FATAL] Non-resolvable parent POM for com.twitter.hdfsdu:hdfsdu:0.1.0: Could not transfer artifact org.sonatype.oss:oss-parent:pom:7 from/to twitter (http://maven.twttr.com): java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty and 'parent.relativePath' points at wrong local POM @ com.twitter.hdfsdu:hdfsdu:0.1.0, /var/chef/cache/hdfsdu/pom.xml, line 6, column 11^M
This looks like is an issue when it is trying to resolve dependencies from a repository that is hosted at https://maven.twttr.com/com/twitter/common/..
It might be that the site is unreliable and does not download the dependent artifacts .
Moreover, this site seems to be outdated and not maintained as per this link and some of the artifacts are being moved to central repository.
The following issue is opened on the hdfsdu github for this error.
https://github.com/twitter/hdfs-du/issues/14

Hi @vineshcpaul I think we are good to close this now, right? Please re-open this if it is still broken for you.


fix(react-query): fix missed updates between creation and subscription

closes #5443

Codecov Report
Patch coverage: 100.00% and project coverage change: +0.44 :tada:

Comparison is base (00319a1) 91.79% compared to head (10669f7) 92.24%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5474      +/-   ##
==========================================
+ Coverage   91.79%   92.24%   +0.44%
==========================================
  Files         101       39      -62
  Lines        3890     1264    -2626
  Branches      974      358     -616
==========================================
- Hits         3571     1166    -2405
+ Misses        298       92     -206
+ Partials       21        6      -15

Impacted Files
Coverage Δ

packages/react-query/src/useBaseQuery.ts
95.74% <100.00%> (+0.29%)
:arrow_up:

... and 62 files with indirect coverage changes

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

@TkDodo good news, we've tested the latest version of react-query and everything is ok right now! THX a lot)
@ericbiewener I can recommend you to update react-query to 4.29.12


Reported time does not match reported RSpec time

For a recent build, RSpec (console) reported:
Finished in 13 minutes 28 seconds (files took 23.36 seconds to load)

However, the RSpec XML generated for the same test run returned a much smaller number for the time:
<testsuite name="rspec" tests="1865" skipped="4" failures="0" errors="0" time="546.806313" timestamp="2018-06-11T16:25:59-07:00" hostname="27eb0b572fba">

546 seconds is 9 minutes, 6 seconds, so there are 4 minutes of unexplained difference in the timings. What could explain the discrepancy? I'm using junit formatter 0.3.0, but I checked the changelog and didn't see anything between then & tip that could explain a difference.

I double checked, we're reporting the same value as rspec's default text formatter. Sorry, but I'm not sure what's happened in your case. I suspect they were output from different rspec runs.


Can't bypass DOSkey macro with leading space

Environment
Windows build number: [run `[Environment]::OSVersion` for powershell, or `ver` for cmd]
Windows Terminal version (if applicable):
Microsoft Windows [Version 10.0.18362.535]
Any other software? A DosKEY macro

Steps to reproduce

Create a DOSkey macro, e.g.,
doskey dir=dir /b
Run the command,
dir
then run the command (note space in front)
 dir
Expected behavior

In the 2nd run, you should get the default "dir" listing. This is the case in classic console.
Actual behavior

You get the results of "dir /b" again!

The ' dir' does not work in my default console (CMD), it will stull use the alias?

The ' dir' does not work in my default console (CMD), it will still use the alias?

Sorry, but are you a bot? If not, are you on the Experimental Console programming team trying to replicate my reported bug? The dir command is probably the most-used command in console operation, so how could you be without one?

It's not counter-intuitive that matching a console alias would trim leading spaces. However, the doskey docs do state plainly that the user should "type the macro name starting at the first position on the command line". Moreover, they include the following instructions for creating a macro with same name as a command:

If you always use a particular command with specific command-line options, you can create a macro that has the same name as the command. To specify whether you want to run the macro or the command, follow these guidelines:

To run the macro, begin typing the macro name immediately after the command prompt, with no space between the prompt and the command name.

To run the command, insert one or more white spaces between the command prompt and the command name.

What I mean to say is that this bug report is claiming that running ' dir', after defining an alias for dir, should output the normal behavior of what is expected in CMD.
But when I tested this outside WT, I did not see this behavior. The macro is always being run, and I do not have a way to run DIR with other options than the one given in the alias.
I am running the same version of Windows, Microsoft Windows [Version 10.0.18363.535].

@luuk34: ah, thanks for the clarification. But eryksun has found the chapter/verse of how it should work according to the docs - thanks! - and what it's doing is definitely NOT according to the docs.
Can't speak to your situation/configuration. I've replicated it on two different machines. You do need to completely exit, then restart, your console session after unchecking/checking "use legacy console" to make the changes stick.

It looks like this should be easy to fix. I can get it working in a local build just by deleting this line:
https://github.com/microsoft/terminal/blob/9b92986b49bed8cc41fde4d6ef080921c41e6d9e/src/host/alias.cpp#L1154-L1155
But I'm curious why that trimming routine was added in the first place if it's not compatible with the legacy console. Someone from the core team will probably need to confirm whether that was a mistake and it's safe to remove.

commit 56f5ca586c788dfc970931ca873edee02ebdf6c9
Author: Michael Niksa
Date:   Fri Apr 27 20:38:26 2018 +0000
Merged PR 1747128: Make interactive mode command line trim leading spaces from aliases to improve usability
Per MSFT:16672211 trim spaces from alias lookups since they never resolved to anything anyway. Makes aliases a touch
more useful at the cooked command line.
Paul noticed this while I was doing the alias improvement code and suggested the enhancement.
Related work items: MSFT:16672211

Looks like our usability improvement was a usability detriment. :smile:

Hi, it's been 2+ years and now I note this issue is still present in Windows 11! Looking at the status, I see it continues to be pushed out, and the last milestone Feb. 2 is past. Can we ensure this gets put in this time?

@zadjii-msft I just found that you are in charge of this project - congrats! That being the case, what is your strategy for handling bugs? This IS a functional bug - I'm not asking about font rendering or cursor blink rate. When does the fact that this is a bug, that it's been aging two years, and that it's probably a one-line change (since you or your team would know where the line is and I don't) factor into your decision to just fix this and close it?

Hee! Got that view from article titled, "Guy in charge of it, Mike Griese, Software Engineer at Microsoft, writing on Hacker News"
Anyway, I could at least take out the trim and try to run it, then provide you feedback. It is true that just removing the trim may not fix the issue. Would appreciate your reply on the following:

Is there a makefile so I can just compile from Windows command line? I don't want to waste half a day loading it into Visual Studio and learning all the ins and outs of the code. I just wanna compile/run. (I guess you can see why a working console is important to me :-) )
Where does a new terminal go once built, and how is it invoked? I have a shortcut to cmd.exe and it gives you a choice to use the legacy console or not.

Well, I'm flattered, but in 2017 I was decidedly less senior than I am even now. Fun to think people on HN thought I was "in charge of {the terminal}" for the last 5 years 😝
building.md is the definitive guide, but if you're using CMD then the easiest way to build conhost would be:
git clone https://github.com/microsoft/terminal.git
cd terminal
git submodule update --init --recursive
.\tools\razzle.cmd
nuget restore OpenConsole.sln

@rem at this step you may need to open VS to get it to pull down dependencies, the SDK, etc.
@rem start OpenConsole.sln

@rem To build just conhost, switch to this directory and run `bx`
cd src\host\exe
bx

@rem this will launch the conhost you just built
opencon

You shouldn't need to build the whole terminal for this bug, just building conhost (openconsole.exe) should be enough to test this fix. The Terminal takes quite a bit longer to build.

@zadjii-msft How do I get the built app to run on a different machine? I studied opencon.cmd and tried the following, but I do not get anything: no messages, no new window, and nothing in tasklist:

two of the files, VtPipeTerm.exe and Nihilist.exe do not exist (apparently were not built) but that does not affect running the app on the build machine
copied over openconsole.exe
copied it again and renamed as conhost.exe
copied over conhost.dll
added vcruntime140_1d.dll which doesn't exist on the other machine and got an error dialog trying to start openconsole without it.

Update: I've also done the following:

checked all the DLLs as reported by listdlls and the file size and date of each DLL are identical.
the same for console.dll, which was created at the same time as openconsole.exe
just in case, copied all the .lib files from the build directory to the temp directory holding openconsole. No dice.
Started openconsole.exe in windbg and the failure is at ntdll.exe, as shown in the attached jpeg.

Can anyone help a guy out here? Thanks!

Sorry, wasn't checking mail last week. Copying openconsole to another machine should work all by itself. It should be able to be doubleclicked. Did you build it as Release or Debug? (if you just ran bx, you probably got Debug. bx rel will build the Release version).

two of the files, VtPipeTerm.exe and Nihilist.exe do not exist (apparently were not built) but that does not affect running the app on the build machine

That's fine, those are just test binaries
I'm pretty sure the only thing that's needed is openconsole.exe, and the right version of the c runtime. console.dll is only needed for changes to the property sheet.
The C Runtime is required though. Pretty sure VS installs that for you with the rest of the tools, but you should be able to get it from here manually.

Still no dice :-(  bx rel built fine with one warning (spacing is straight copy from console):
`       "c:\devel\terminal\OpenConsole.sln" (Conhost\Host_EXE target) (1) ->
"c:\devel\terminal\src\host\exe\Host.EXE.vcxproj.metaproj" (default targ
et) (2) ->
"c:\devel\terminal\src\host\proxy\Host.Proxy.vcxproj" (default target) (
3) ->
(Link target) ->
LINK : warning LNK4266: missing load config symbol for image built wit
h /GUARD [c:\devel\terminal\src\host\proxy\Host.Proxy.vcxproj]
1 Warning(s)
0 Error(s)`

The C runtimes are a common requirement, the version on my laptop was older, but installing the latest did not help. In comparing what was installed in Programs and Features, I found some discrepancies - perhaps .NET framework or its SDK is required? Or what about the version of the Windows SDK? Here are the diffs '<' is build system, '>' is test system:
`< Microsoft Visual C++ 2015-2019 Redistributable (x64) - 14.29.30139

older version:                                         14.26.28720
updated to latest:                                     14.31.31103

< Microsoft .NET Framework 4.8 SDK
<  Targeting Pack
<  Targeting Pack (ENU)

None!
< Microsoft .NET SDK 5.0.406 (x64) from Visual Studio
None!

< Windows Software Development Kit - Windows 10.0.14393.33 to 10.0.22000.194

                                       10.0.17134.12 to 10.0.17763.132

< CLR types for SQL server 2019  CTP2.2

CLR types for SQL server vNext CTP 1.6
< Sync Framework 2.0 Core and Provider
Same`

Oh that might do it. Hard to exactly parse that, but 10.0.17134.12 is quite a bit out of date at this point. I would not be surprised at all if the current conhost builds don't run on that version of windows 10 anymore.

Huh, this is pretty curious.
Would you be able to run it under the debugger after enabling loader snaps?

Windbg comes with a tool called "Global Flags" (gflags) - launch it, navigate to Image File, and enter OpenConsole.exe
Enable "Show loader snaps"

[Apply]

When you run OpenConsole under the debugger, it should emit a terrible volume of text about library loading, symbol binding, etc. that might help figure out why it won't load on this machine. :smile:

Oh that might do it. Hard to exactly parse that, but 10.0.17134.12 is quite a bit out of date at this point. I would not be surprised at all if the current conhost builds don't run on that version of windows 10 anymore.

Hmm. Quite possible... but to my knowledge we haven't made any changes that would exclude running on that version.
In addition, I think @cniggeler was only stating that they have that SDK installed (not that they're running on that version of Windows!)

I'm running Windows 10 Pro 21H1. Microsoft Windows [Version 10.0.19044.1586]. @DHowett  is correct that that was the version for the SDK.
I will run openconsole through windbg with loader snaps and reply next.

@DHowett I loaded gflags and checked loader snaps as requested. I pressed Launch, which had no visual feedback, so I returned to Windbg. There is now 2155 lines of info, which I've attached as a text file.
opencon_snap.txt

It looks like everything we need is loading; any libraries that can't be found (Status c0000135) later get picked up from the system directory.
Can you generate a backtrace when you get here?

A debug build might help. You'll have to copy over the debug CRT (from the VC\ directory in your VS 2019 install!)

I'm assuming you meant View - Call stack:

Also, here's the output after selecting GO, which adds another 1050 lines of output:
opencon_go.txt

Indeed!
It looks like the console is choosing to exit at +0xdb7a4. If you copy the pdb for OpenConsole from your build machine to the run you're running on, you'll get a bit more info. It could just be returning from main after failing to do something, admittedly... but nothing in that loader snap log looks wrong.

I think this took. I kept getting message WARNING: Non-directory path: 'C:\temp\OpenConsole.pdb' even after using "Browse" in windbg. Anyway, slightly larger file attached:
opencon_w_pdb.txt

And what's the call stack at termination for that build? :)

Has a function name in it :-)

Update: I also tried this on a brand new Win11 machine. Installed the latest C runtime and copied the release version of OpenConsole.exe to it. It also does not run.

Thanks. At this stage I was more interested in why the build wasn't able to run on different machines, because maybe that would point out some corrective action in the build scripts or execution prerequisites. But I would love to have it on my main machine where I work every day!
The change was literally the one line change above, and a pull request seems heavyweight. Is there an alternative to just add it to the branch for the next scheduled release? My build/test has managed to show it works ;-)

I'm trying v1.15.200 and am encountering problems for which I've entered a separate comment under its release. My questions here are,

Is Terminal intended to replace cmd.exe?
What happens when I UNcheck "Use legacy console" in the cmd.exe Properties - is that supposed to start this Terminal - because it's not, I continue to get the old doskey behavior.
How do I get in/out of the legacy/ new console behavior is via this Properties checkbox in cmd.exe... or am I just supposed to create a shortcut to wt.exe instead?

Thanks!

I'm trying v1.15.200 and am encountering problems for which I've entered a separate comment under its release. My questions here are,

Is Terminal intended to replace cmd.exe?

The Windows Terminal is a modern, fast, efficient, powerful, and productive terminal application for users of command-line tools and shells like Command Prompt, PowerShell, and WSL. Its main features include multiple tabs, panes, Unicode and UTF-8 character support, a GPU accelerated text rendering engine, and custom themes, styles, and configurations.
(see: https://apps.microsoft.com/store/detail/windows-terminal/9N0DX20HK701?l=en
In other words Terminal is an app which combines the functionality of different shells.

What happens when I UNcheck "Use legacy console" in the cmd.exe Properties - is that supposed to start this Terminal - because it's not, I continue to get the old doskey behavior.

see: Legacy Console Mode

How do I get in/out of the legacy/ new console behavior is via this Properties checkbox in cmd.exe... or am I just supposed to create a shortcut to wt.exe instead?

?

Thanks!

Thanks for the reply! Some of this raises more questions than it answers.

see: Legacy Console Mode

This link references "the Console Host team". Who is that?
In Task Manager, the "Windows Command Processor" app is comprised of two components: Console Windows Host (conhost.exe) and (the recursively named) Windows Command Processor (cmd.exe). But if I try to run conhost.exe by itself, nothing happens (Run... type in  conhost, no window opens).
Then, in the next paragraph, that linked page says "If you experience an issue that requires you to use the legacy console that is not documented here, please contact the team on the microsoft/terminal GitHub repository." This is how/why I opened this ticket regarding doskey.
Is the Terminal team different from the Console Host team?
This is still unclear: if I UNcheck "Use legacy console" in the conhost console that comes up when I run cmd.exe, what application is then run - is it Terminal? Because if it is, I can say for sure that the Terminal Preview v1.15.200 is NOT being accessed. Or is it instead some extended mode of conhost.exe?
All of which lead me to ask my last question, which I will try to rephrase in a couple questions:

Is the console (conhost.exe) that is opened when running cmd.exe deprecated?
If so, is Terminal intended to replace it?
And in that case, should I just create a new shortcut to wt.exe and use that instead of cmd.exe?

Thanks!

@sniggler: too much questions for /me to answer (and not make any mistakes, or wrong assumptions), I will leave that to the Team which is responsible for this 😉

Despite the merge and closed-fixed claim in #13476 afraid this is still not fixed in 1.19.10573.0! The test process is the same as it's always been.


Revisit client_session_file/client_keylog_file when origin server side QUIC connection is supported

There're features and settings to support session resumption (proxy.config.quic.client.session_file) and session keylog (proxy.config.quic.client.keylog_file) for ATS QUIC client implementations (traffic_quic cmd).
This might also useful when we support origin server side QUIC connection. But we need to revisit these to support multiple sessions which traffic_quic cmd doesn't need.
The concern was raised on https://github.com/apache/trafficserver/pull/5231#discussion_r273957129

The setting for keylog was replaced with proxy.config.ssl.keylog_file by https://github.com/apache/trafficserver/pull/8337, and it's available for all connections that uses TLS.


Code zooming transitions

Hi! This repo is great, and I'm incredibly looking forward to use it for my next presentation! 😄
The thing is, I want to achieve the effect I saw in this talk where you are actually showing code, but zooming in some parts and just scrolling from top to bottom. Is there any easy (or maybe built-in) option that I don't know of to do this? I know some people use Spectacle.js for that but I think this is way easier! 😊
Thanks in advance and keep up the good work! 😎

Probably related to #5; I think the library you mention might be https://github.com/jamiebuilds/spectacle-code-slide which I’d love to support in this library, but I haven’t spent time looking at how to make spectacle components work yet

I'm currently working on something similar to (forked from) spectacle-code-slide and I would like to make it work with mdx-deck.
But I'm not sure how to access deck and slide like Appear does. withDeck and withSlide aren't exported in src/index.js. Any other way to access them from the npm package?

If those HOCs aren’t exported, that’s an oversight – ideally they’d be one HOC but that’d require some architectural changes

My bad. I can import them from:
import { withDeck } from "mdx-deck/dist/context";
import { withSlide } from "mdx-deck/dist/Slide";

I have something working https://angry-sinoussi-d4c063.netlify.com/. It isn't ready yet, I'll try to publish it after I use it for a talk next week.

Wow, that looks very promising!! I think you almost got it! 🎉 @jxnblk what do you think? 😄

Nice work @pomber! Can't wait for this to land in mdx-deck.

Anyone wants to test it? It's here https://github.com/pomber/code-surfer

@pomber Awesome. I’ll be testing it in the next couple of days. On mobile now glancing over it and it looks great - would be nice to A) expose theming options and B) improve mobile though.
@jxnblk, what do you think about wrapping this as a mdx-deck exported component - maybe called FocusCode or something to match FullScreenCode?

CodeSurfer looks great! I think we can add a link to the readme for code-surfer to close this issue out

Closing this since now code-surfer exists and the link is on readme.md, thanks! 🎉


Add demographics summary to participant view

User specified demog_cols are printed on details view (values from first row of matching data set shown)

This was requested during the Oct 16 demo with Karen K., Karen B., Brian A., and David H.

Test notes:

Specifying an array of variable names dictates the columns presented in the participant details in the controls section, e.g.:

{"id_characteristics": ["RFSTDTC", "ARM", "SEX"]}

Specifying an array of objects with value_col and label properties dictates the participant details and detail labels in the controls section, e.g.:

{"id_characteristics": [
    {"value_col": "RFSTDTC", "label": "Reference Start Date"},
    {"value_col": "ARM", "label": "Treatment Group"},
    {"value_col": "SEX", "label": "Sex"}
]}

@sammusiah the array of string isn't working in latest 0.2-dev build.  (array of objects works as expected).

Tested and confirmed arrays to add new participant details in the controls section, with and without custom labels, in all browsers.


Error at line 1

Hi, not able to open your script due to an error in line 1:
Line text <!DOCTYPE HTML...
Error the line doesn't contain a recognized action

It looks like you weren't able to download the correct file, try this link
https://raw.githubusercontent.com/phonowell/genshin-impact-script/master/source/index.ahk

@phonowell thanks you, this one works well. the issue can be closed.
Please update the link in the readme file, as right now the link is: https://github.com/phonowell/genshin-impact-script/blob/master/source/index.ahk and this file isn't working

got it ;)


switch to bulk op and metafieldsSet mutation

This update significantly improves the manual run time for this task by using a bulk operation to query variants and then the new metafieldsSet mutation to apply the metafield updates in batches of 25.
This task requires the 2021-10 Shopify API or greater, so it should not be merged until that is released (expected Oct 1).

 Modernize/Update - "Sync inventory levels to variant metafields"


Add SPM Support

It would be really awesome if the repo would support Swift Package Manager as an installation option.

Thank you for bringing that to our attention.
It's definitely something we want to support, but it hasn't been planned yet.
Anyway we are more than happy to review any contribute coming from the community meanwhile!

Building the Package.swift seems rather straight forward but I am having trouble with the target... https://github.com/mltbnz/snowplow-objc-tracker/blob/master/Package.swift Fairly new to SPM I have to say


Natural key multi column csv export

As Ozzy the Operator, I want to be able to export Nautobot data that contains relationships to other data in a format that is clear and easy for me to understand.
I will know this is complete when CSV export supports multi column natural keys by allowing the various fields in a natural key to be separate fields in the export.

Fields should be named with double underscore deleters, I.e when exporting devices, the tenant field would be tenant__name, so they are round-trippable.
Device and location should honor the simplified natural key settings, e.g. DEVICE_NAME_NATURAL_KEY

Hey team! Please add your planning poker estimate with Zenhub @bryanculver @glennmatthews @gsnider2195 @HanlinMiao @jathanism @timizuoebideri1

Should this be blocked by https://github.com/nautobot/nautobot/issues/4346?

Should this be blocked by #4346?

If this gets done first it negates the need to change the export of #4346 from composite_key to pk. More likely this can just be a proper communication depending on the order they are picked up.

Due to M2M->CSV->M2M ugliness we are going to document not supporting M2Ms (except for tags) in CSV round trip and exclude testing for them for 2.0.0.
Future follow on may find a way to re-introduce them, or provide multi-part forms to handle this (see how we've documented addressing CSV import of IPAddress-to-Interface assignments via #4103)


Support Include() like method on queries based on a kind of navigation between documents

Pure relational dbs have its pros and cons, pure document dbs also have its pros and cons. To have a nosql db based on an sql db is an smart movement to have best of both worlds easily available to solve the different problems we find developing an app.
Following this philosophy it would be interesting that Yessql also support relations between documents.
Usually we see those relations in ORMs for lazy loading. Personally I'm against the use of Lazy Loading because in the long term devs tend to overuse it hurting performance of the system as have seen many times in Orchard 1 when a content type has content fields pointing to other content items.
What it is interesting about relations is that YesSql can offer a kind of Include() method for queries, helping us to avoid easily N+1 queries in a transparent way. Because we will delegate on YesSql the work of optimizing the operation for getting the related documents of resulting documents of a query using only one extra query for retrieving documents on the other side of a relation.
In Orchard 2 this will be very useful to deal with fields pointing to other content items in an optimal way. I've added a similar solution based on an extension for IContentQuery applicable for content fields and other content items like content fields, taxonomy fields, MediaPickerFields that have boosted performance in Orchard 1 sites, problem it still is not enough clean and elegant as I would like to submit a PR ...  :)
To declare a relation we will need to mark "navigation fields" with metadata stablished by YesSql that of course will be independent of Orchard Concepts. Those metadata will stablish keys involved on the relation and the type of the relation: Many-To-One, One-To-One and Many-To-Many. Orchard fields depending of its type will fulfill this metadata with its serialization according to its needs.
In the orchard side Fields should be developed in a way that they cannot be accessed if its navigation property have not been loaded through include extension. But YesSql should offer a way of explicitly load one field based on a relation. IMO the important thing is to don't offer lazy loading cause it is the root cause of performance issues done by devs, but give them an explicit load alternative to help them to be conscious of what they are doing.
To keep things simple for storing documents and not be worried on tracking changes on related documents, we could only store documents explicitly asked to store. But YesSql won't be responsible of storing related documents of documents explicitly stored.

I think eager loading can be done manually in most cases.
For instance, when you do your query and get the fist level of content item ids, you can just create another request that fetches all content items from the second level (the include), then assign them to their parents.
It would not help you avoid SELECT N+1, if you just make it easier to not make them. If someone uses Include() it's because they know they would otherwise do a SN+1, so they can just apply what I explained otherwise. If they don't know they should avoid SN+1 then they would not even think about using Include().
If yessql had to handle references, it would need to support identity maps, and also handle the lifetime of the collection, probably replace all objects by their ids meaning custom serialization. Lots of work and potential bugs IMO.

Eager loading can be done manually in every case, but it means Orchard won't be optimal by default unless you program it. I think that the final purpose of having those methods is having the possibility of offering to an user the posibility of setting a field for eagerly loading  in a projection query through the admin UI. This will makes a big difference in ease of use and performance for regular users.
Related to implementation I don't think we need a complex implementation for us at least a simple one will be enough. Identity map is only needed while the query is solved, we don't need to maintain it at request level or sth like that, so I don't see complexity on Identity map or lifetime of the collection specially because YesSql doesn't track changes so we don't need to be worried of lifetime. Lifetime of the collection should be the same lifetime currently you are using for first level content items.
Last part is the one I've less knowledge: "probably replace all objects by their ids meaning custom serialization.". The key point will be to find an elegant way of doing that without leaving serialization as much automatic as we ca. Maybe marking property with Navigation object within a field as non serializable using [JsonIgnore] attribute and also adding a custom attribute to this property defining the relation and involved keys. This custom attribute could be provided by YesSql and won't affect to serialization. YesSql can detect it in the type definition of the field in C# to determine how to fulfill the navigation property.

In fact, if we follow the proposal I said of design the fields in a way that they return an exception when you attempt to access them without loading them previously then you are doing Orchard optimal by default. Because if a user defines a projection query and in the view access to a referenced content item through a field that is not eager loaded, we will catch that exception and will show a message sying he needs to mark that field to be eager loaded. So, Orchard will be optimal or doesn't work in all the cases.
IMO this is a big improvement.
Well always we can find someone that after reading explicitly eager load the field int view forcing the N+1 problem, but I think this is sth that can be avoided with an enough explanatory error message of the recommended solution.

Let's use an example to see all the impact:

We have a custom marker to break the aggregate root that represent a document, to relate to another document, let's call it [Reference]
We have Product and Category, a product can have many categories, categories are shared among products.
Product.Categories is a list and has the Reference attribute, so that categories are not serialized in the product document, but as a list of ids: int[]

var p1 = new Product {
 Name = "P1",
 Categories = new [] { new Category("C1"), new Category("C12") }
}
var p2 = new Product {
 Name = "P2",
 Categories = new [] { new Category("C2"), new Category("C12") }
}

Saving
session.Save(p1);
session.Save(p2);

Serialized like this
{
    Id: 1,
    Name: "P1",
    Categories: [ 2, 3 ]
}

{
    Id: 4,
    Name: "P2",
    Categories: [ 4, 3 ]
}

All categories are new

This means that during the serialization process we detect that Categories is a set of references and thus we also save them. This assume the Json serialize supports this. It's ok with JSON.NET, probably not with others. It also means that the user needs to have called Save on each reference as the serializer can't do that.

Some categories are existing

If one of the categories already existed, then they would already be in the identity map of the current session.

We haven't done any change on the categories themselves, or changed some of them, and we have hundreds of them, it would be sad to serialize them again, hence it's better to call Save individually (another reason to call it, c.f. 1.1).
We add or remove one item from the list, means we need to update the ids. This is ok as the Product will be serialized anyway.

Removing a Category from the list doesn't delete it. It needs to be deleted explicitly using Delete. However if another list contains the object, there will be an issue as the item won't be found aymore. I assume this is ok as this is true even without this feature.

Loading

Simply loading a product doesn't load its references. Even more as the deserializer could not do it.
Using an Include syntax while loading a Product means that first the product is loaded and deserialized. We also get the ids of the references, and do a second query with the ids. It can't be done in a single query as the int[] need to be deserialized. So the Include helper would get all ids from different root aggregates, then create a query, then assign all the reference objects.

NB: There would be no way to filter which referenced documents are included, like FirstOrDefault(), it's all or nothing.
Alternate solution
Maybe you just need to reify your the relationship, and save an document which would contain the information between the two, and index it. This way with one query you can get all references of multiple root aggregates, and assign them back. This could be used to filter also, this could also handle aggregation vs. composition. And with dapper we could also load the products and the categories with a single query, then ask the relationship object the referenced elements. The property would just be a marker.
It would also handle when a referenced document is deleted, all its references are automatically delete. It's funny as this is a topic I had an intern work for me on it 10 years ago.
public class ToManyAggregationIndex<ParentT, ChildT> {
    public void Add(ParentT, ChildT);
    public void AddRange(ParentT, IEnumerable<ChildT>);
    public void Remove(ParentT, ChildT);
    public void RemoveAll(ParentT);
    public void GetChildren(ParentT);
}

// This represents a table named ProductCategories with two fields: ProductId and CategoryId, and
// ProductId is not unique in the table. It's an index so it can also be used for querying/filtering.

public class ProductCategories : ReferenceIndex<Product, Category>  {
  public Product Product {get; set; }
  public IEnumerable<Category> Categories {get; set; }
}

public class ProductCategoriesIndexProvider : ToManyIndexProvider<ProductCategories> {
    // ... method describing how to add and remove referenced categories for a product, like
    // other indexes do for map/reduce.
}

var myProducts = session.Query<Product>().Include<ProductCategories>(c => c.Where(x => x.Name.StartsWith("C")).FirstOrDefault());
// at that point Categories have been assigned

Hahaha I love this aspect of our profession: We as devs is common we have an obsession on solving a challenging problem. It follows us for many years giving us opportunities along the time of refining our solution in unexpected ways.
Sounds good, in fact alternate solution is brilliant!!

If a feature for supporting collections is developed https://github.com/sebastienros/yessql/issues/22 then this feature would be interesting that supports to define relations between documents in different collections. We would need the collection key and the document id stored in the relation to allow that scenario.

Related with the alternate solution you provided, this is how you showed an index for include should be declared:
public class ProductCategories : ReferenceIndex<Product, Category>  {
  public Product Product {get; set; }
  public IEnumerable<Category> Categories {get; set; }
}

What if there are more references to more entities and you need all of them at some point. The optimal way of doing that is to put all the references the same index all, isn't it?
public class ProductAllReferences : ReferenceIndex<Product, Category, PromotionProductLine>  {
  public Product Product {get; set; }
  public IEnumerable<Category> Categories {get; set; }
  public IEnumerable<PromotionProductLine> PromotionProductLine{get; set; }
}

Problem is declaring ReferenceIndex using a generic with a variable number of parameters as far as I know it is not posible. So, should we provide an index per each relation?
Another question is how this will work when you want to include nested entities? For example PromotionCategoryLine with its nested Promotion (suppossing they pertain to different aggregates).
We would need an extra index like this?
public class PromotionProductLineReferences : ReferenceIndex<PromotionProductLine, Promotion>  {
  public PromotionProductLine PromotionProductLine {get; set; }
  public Promotion Promotion {get; set; }
}

And we will query in this way?
var myProducts = session.Query<Product>().Include<ProductAllReferences>().Include<PromotionProductLineReferences>();

What are other document databases doing in this case?

Siaqodb that is an hibrid of ObjectDb(Graphdb/DocumentDb provides an include method that accepts an array of strings that indicates the complete path of the entities to load.
.Include("Categories","PromotionProductLine.Promotion")
this also is valid .Include("Categories").Include("PromotionProductLine.Promotion")
https://siaqodb.com/docs/Partial-object-loading-and-Eager-loading/#eager-loading
It doesn't allow to filter entities included like you proposed .Include<ProductCategories>(c => c.Where(x => x.Name.StartsWith("C"))
The point is Siaqodb stores together with the entity the position in disk where its nested entities are stored. How it uses that I can try to figure it out but I cannot say sth for sure cause it is not open source.
A pure document db like MongoDb provides database-references https://docs.mongodb.com/manual/reference/database-references/  which rely completly on the client, so the client needs to use an extra query per nested entity. So, for complex graphs where to denormalize is not aceptable I guess performance will be bad in those scenarios.
The case is YesSQL is using a relational db so it would be great it provides similar performance/functionality as a pure document db but with better performance retrieving related entities.
What do you think of going through your initial proposal instead of the alternate one based on ReferenceIndexes? Maybe it could use an include method similar to the one provided by Siaqodb

Well initial proposal doesn't takes profit of relational nature of underlying db, so it is equivalent to document db solution for these scenarios cause we execute extra queries for retrieving nested entities.

I am on skype, can I call you ?

I've just started my holidays and I'm thinking another time about that.
What do you think of using this other approach?
We could have a new kind of indexes called IncludeIndexes. We could declare one per Document Type.
For example for our sample with Products, Categories, PromotionProductLine, Promotion
, we could have ProductRelationIndex, PromotionProductLineRelationIndex, PromotionRelationIndex
Each RelationIndex will have following fields:
string Id {get; set;}
string Path {get; set;}
string RelatedId {get; set;}
When a document is saved neither related objects NOR FOREIGN KEYS won't need to be stored in the document. So, not only properties [Reference] won't be serialized as you pointed previoulsly in this thread, also we won't need to store foreign keys so they won't be serialized within the document and we don't need to worry about them.
For storing/updating/delete relations data in RelationIndexes YesSQL could provide explicit methods for adding/removing relation index records.
For storing data on relation indexes YesSql could offer methods like this:
session.AddRelation(productId, c=>c.Provider, providerId);
session.AddRelation(productId, c=>c.Categories, categoryId);
session.AddRelation(promotionProductLineId, c=>c.Promotion, promotionId);
session.RemoveRelation(productId, c=>c.Provider, providerId);
YesSQL would provide an Include method based on info stored on relation indexes and on reflection for the type used for the include to get all the nested documents no matter how deep are them in the hierarchy with only two extra sqls queries. One for getting all the Ids and the other query for getting the contents related to those ids.:
var product=session.Query<Product>().Include<Product>(c => c.Provider).List();
var product=session.Query<Product>().Include<Product>(c => c.Categories).List();
var product=session.Query<Product>().Include<Product>(c => c.PromotionProductLines.Select(pl=>pl.Promotion)).List();
var product=session.Query<Product>().Include<Product>(c => c.Categories,c => c.PromotionProductLines.Select(pl=>pl.Promotion)).ToList();

Include would use reflection to determine how to assign values retrieved from database to a property marked as [Reference]. I mean it would behave differently to load a value for Provider which is a property of type Provider than to load a value for Categories property which is an IEnumerable.
 Can this be the start of sth?

I've just started my holidays and I'm thinking another time about that.
What do you think of using this other approach?
We could have a new kind of indexes called IncludeIndexes. We could declare one per Document Type.
For example for our sample with Products, Categories, PromotionProductLine, Promotion
, we could have ProductRelationIndex, PromotionProductLineRelationIndex, PromotionRelationIndex
Each RelationIndex will have following fields:
string Id {get; set;}
string Path {get; set;}
string RelatedId {get; set;}
When a document is saved neither related objects NOR FOREIGN KEYS won't need to be stored in the document. So, not only properties [Reference] won't be serialized as you pointed previoulsly in this thread, also we won't need to store foreign keys so they won't be serialized within the document and we don't need to worry about them.
For storing/updating/delete relations data in RelationIndexes YesSQL could provide explicit methods for adding/removing relation index records.
For storing data on relation indexes YesSql could offer methods like this:
session.AddRelation(productId, c=>c.Provider, providerId);
session.AddRelation(productId, c=>c.Categories, categoryId);
session.AddRelation(promotionProductLineId, c=>c.Promotion, promotionId);
session.RemoveRelation(productId, c=>c.Provider, providerId);
YesSQL would provide an Include method based on info stored on relation indexes and on reflection for the type used for the include to get all the nested documents no matter how deep are them in the hierarchy with only two extra sqls queries. One for getting all the Ids and the other query for getting the contents related to those ids.:
var product=session.Query<Product>().Include<Product>(c => c.Provider).List();
var product=session.Query<Product>().Include<Product>(c => c.Categories).List();
var product=session.Query<Product>().Include<Product>(c => c.PromotionProductLines.Select(pl=>pl.Promotion)).List();
var product=session.Query<Product>().Include<Product>(c => c.Categories,c => c.PromotionProductLines.Select(pl=>pl.Promotion)).ToList();

Include would use reflection to determine how to assign values retrieved from database to a property marked as [Reference]. I mean it would behave differently to load a value for Provider which is a property of type Provider than to load a value for Categories property which is an IEnumerable.
 Can this be the start of sth?

I forgot to show a sample of a relation between a property of a nested object withing a document and another document. Following with the same types we are using. Let's think that Promotion and PromotionProductLines are stored in the same document.
If we want to add a relation between a PromotionProductLine and a Product in PromotionRelationIndex we will add a record with Path='PromotionProductLines.Product'
Then an include like this var product=session.Query<Promotion>().Include<Promotion>(c => c.'PromotionProductLines.Select(p=>p.Product)).List(); will produce an sql like this:
SELECT DISTINCT promotionProductLines_product .Path as level1Path , promotionProductLines_product .RelatedId as level1Id FROM PromotionIncludeIndex promotionProductLines_product WHERE categories.Path == 'PromotionProductLines.Product'

An edge case is when you want to reference from a document an object within another document or even more difficult you want to reference from an object within a document anoter object within another document. For example if we have an Order document that contains OrderLines that have a Product which has a relation with PromotionProductLines like we did before but PromotionProductLines is stored within Promotion document. So, we have two types of documents: orders and promotions with a relation between their nested objects. For this sensible scenario we should try to extend our solution to cover that case.
A solution is we redefine the fields of a RelationIndex
int SourceId {get; set;}    //Source document id
string SourcePath {get; set;} //Path to nested object in source document
string SourcePathIds {get; set;} //Path of ids to reach nested objects in source document
int TargeId {get; set;}
string TargetPath {get; set;}
string TargetPathIds {get; set;}

Then maybe we will need to extend the [Reference] annottation for indicating the target root type containing the nested object and the path to the target nested class, but not sure if we need it.
public class Product
{
...
[Reference<Promotion>(p=>p.PromotionProducLines)]
public IEnumerable[PromotionProductLine] PromotionProductLine
...
}

An with that we could have new overloads for methods for adding/removing RelationIndexes of nested objects:
session.AddRelation<Order>(orderId, o=>o.OrderLines.Select(o=>o.Product), "1/2", productId, promotionId, p=>p.PromotionProductLines, "3", promotionProductLineId);
session.RemoveRelation<Order>(orderId, o=>o.OrderLines.Select(o=>o.Product), "1/2", productId, promotionId, p=>p.PromotionProductLines, "3", promotionProductLineId);

We have to keep in mind that session.AddRelation() and session.RemoveRelation() methods will change always two index tables one per entity participating in the relation.
Then an include like this var product=session.Query<Order>().Include<Order>(c => c.OrderLines.Select(ol=>ol.Product.PromotionProductLines)).List(); what sql will produce?.
SELECT DISTINCT promotion .SourceId as level1SourceId, promotion .SourcePath as level1SourcePath, promotion.SourcePathIds as level1SourcePathIds, promotion .TargetId level1TargetId, promotion .TargetPath as level1TargetPath, promotion.TargetPathIds as level1TargetPathIds,
FROM OrderRelationIndex promotion
WHERE promotion .Path == 'OrderLine.Product.Promotion'

This sql would provide the ids of the documents to load and the ids and path to get related entities within both documents. The include would do the work of assigning related values in the documents three using reflection.

Two corrections to previous comment.
When I said:

We have to keep in mind that session.AddRelation() and session.RemoveRelation() methods will change always two index tables one per entity participating in the relation.

Instead of that we should have one RelationIndex table per relation not per documentType. At the end of the day what I'm proposing is to use a many to many table to represent also  many to one or one to one relations. We can name this index ordering lexycografically the two document type names involved in the relation. Following this convention no matter which of the two entitites is the source or the target in an include we will read always same table if involved entities are the same.
So, another refinement for RelationIndex. Index name will be DocumentType1_DocumentType2_RelationIndex and its fields should be renamed to this:
int Document1Id {get; set;}
string Document1Path {get; set;}
string Document1PathIds {get; set;}
int Document2Id {get; set;}
string Document2Path {get; set;}
string Document2PathIds {get; set;}

Then an include like this var product=session.Query<Order>().Include<Order>(c => c.OrderLines.Select(ol=>ol.Product.PromotionProductLines)).List();  will produce this sql:
SELECT DISTINCT promotion.Document1Id as SourceId, promotion.Document1Path as SourcePath, promotion.Document1PathIds as SourcePathIds,
promotion.Document2Id level1TargetId, promotion.Document2Path as level1TargetPath, promotion.Document2PathIds as level1TargetPathIds
FROM Order_PromotionRelationIndex promotion
WHERE promotion.Document1Path == 'OrderLines.Product.Promotion'

Then if we define a property for the other side of the relation with [Reference] annottation like this:
public class PromotionProducLine {
...
[Reference<Order>(o=>o.OrderLines)]
public IEnumerable<OrderLine> OrderLines
...
}

We will be able of using an include navigating in the opposite direction of the relation, using an include like this var promotion=session.Query<Promotion>().Include<Promotion>(promo => promo.PromotionProductLines.Select(ppl => ppl.OrderLines)).List();  Which will produce an sql based on the same table as previous one:
SELECT DISTINCT orderLines.Document2Id as SourceId, promotion.Document2Path as SourcePath, promotion.Document2PathIds as SourcePathIds,
promotion.Document1Id level1TargetId, promotion.Document1Path as level1TargetPath, promotion.Document1PathIds as level1TargetPathIds
FROM Order_PromotionRelationIndex orderLines
WHERE orderLines.Document2Path == 'PromotionProductLines.OrderLines'

IMO the weak part of this proposal is that the user code needs to provide the position of the objects in the path to a nested object involved in a relation when it wants to add a RelationIndexRecord. And also it needs to keep those positions in sync if those are changed.
session.AddRelation<Order,Promotion>(orderId, o=>o.OrderLines.Select(o=>o.Product), "2/0", productId, promotionId, p=>p.PromotionProductLines, "3", promotionProductLineId);

In this example  we want to relate Product on position 0 within OrderLine on position 2 withint root object on Document 1 of type order with PromotionProductLines on position 3 within root object of type Promotion on Document 2.
Another limitation is that we only can create relations between nested objects in separated documents when in the hierarchy to reach the objects are present propertys of types serialized in the document or IEnumeables. However IMO this is not a big limitation, in fact it looks enough for most common scenarios.

The advantage will be that YesSQL will allow us to use document database power of loading very fast big hierarchies in a document but also will provide a fast way of loading branches in that hierarchy stored in other documents. Avoiding the only alternative we have currently on document dbs that is to denormalize. So, with YesSql we would have two options: denormalize causing other issues related to synchronization or creating relations between documents with low impact on performance but a bit of extra work for syncing relations on changes.

Well, I think I lied, because without include you always can use specific code for each scenario where you want to combine data loaded from different documents. At the end what include provides is a convenient and flexible way of doing it without writing very similar code again and again for each scenario.

@sebastienros  I've started to work on this issue to see which limitations I face. By the moment my initial design has changed:

User code doesn't need to explicitly maintain relation indexes
There is an index for each side of a relation instead of one for both.

Here it is my first commit, it is WIP and in fact only a first step.  https://github.com/jersiovic/yessql/commit/c2f0ece7602277bbbe6b9c28df8d62e54124b147
I point it to you just in case you want to give me your opinion.
By the moment RelationIndexes are MapIndexes with predefined set of fields and with hepers that allow developer to focus only on set its relations.
In order to avoid to have to load always relations on an entity and to update on each commit all its relations I decided that when a property with a Refrence attributte is null it means that relation was not loaded, so, no update of records of that index for thtat property are needed.
When our reference property is an IEnumerable like Order.OrderLines this is fine, cause when we want to remove relations we can do OrderLines.Clear(), but what if it is only an object like it coud happen with Order.Customer ? We only can set it to null or to a Customer.
What's the best solution in your opinión? To use a generic Object that works similar to Nullable for reference properties, allowing us to differentiate between uninitialized state and empty state. Another alternative I can't see?
A constraint of current implementation is that subentities within a document tree that contain a property with the Reference tag have to contain an Id property, and the same happen for the referenced entity in the target entity of the relation. Those ids are part of the info stored in relation indexes and will help Include methor to build the resulting Object tree.
By the moment if a new subentity with a reference property is added the Session.Save methods assigns an unique Id to each of those new entities.
To-Do:

Update relationindex when entities are updated: It should remove and add only old mappins of properties !=null.
Remove realtionindex when any of the entities in the relation are removed.
Include method loading relations

Mentiond in #355, I have a use case that seems it would require something similar to this.
OrchardCore ContentItems with a ContentPart containing a field with a JObject. All of the parts' JObjects' keys are aggregated into a Keys table (with a unique row for each unique key). Then a Structures table exists that maps the Keys Id columns to a StructureId so that one StructureId has multiple rows matching it to various KeyId values. Example:
Keys
Id, Name
1, Apple
2, Banana
3, Orange
Structures
Id, KeyId
1, 1
1, 2
2, 1
2, 2
2, 3
To do this with ReduceIndexes though, I see a few issues.

You need the StructureId to NOT be an auto-incremented ID since multiple rows reuse the same ID. Is this configurable in YesSql per Index table somehow?
You need to be able to directly access and refer to primary Id of a different Index in the logic that creates the rows for the second table (since KeyIds are directly referenced in Structures). As far as I can tell, the primary keys of indexes are not accessible to the handler functions of the Map/Group/Reduce functions, etc.
Since the data in the application just has the names of the keys and not their IDs, you'd need to fetch the keys table before creating Structures records in order to know which KeyIds correspond to which Key names. However, it's not exactly clear where that should even be done. I think it's something you'd need to perform on every fresh execution of the .Map() logic for the StructuresIndex (a type of ReduceIndex).

It seems to me like I'd need to, for now, just stick to independently creating and processing these tables in an IContentHandler in OrchardCore that just reacts to the saving/loading of the data rather than trying to create YesSql indexes for those tables.

Wouldn’t the Apple ID just be a guid, and used as the discriminator?


Difference between 'derived from class' and 'derived from type'

Accessibility
Each member of a class has an associated accessibility, which controls the regions of program text that can access the member. There are six possible forms of accessibility. The access modifiers are summarized below.
public: Access isn't limited.
private: Access is limited to this class.
protected: Access is limited to this class or classes derived from this class.
internal: Access is limited to the current assembly (.exe or .dll).
protected internal: Access is limited to this class, classes derived from this class, or classes within the same assembly.
private protected: Access is limited to this class or classes derived from this type within the same assembly.
Can anyone confirm if ''derived from this type" should be interpreted as derived directly from this class, indicating that a class derived from a class derived from this class won't have access?
I can't really figure out what the difference between 'derived from this class' and 'derived from this type' should define in this context

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 3148b5e9-550e-67c9-eb13-907cb78f7fe7
Version Independent ID: c723989f-2ff6-389d-dcb4-f55d97d14501
Content: The building blocks of C# programs'
Content Source: docs/csharp/tour-of-csharp/program-building-blocks.md
Product: dotnet-csharp
Technology: csharp-get-started
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

A type in C# can be one of the following:

Class
Record (which is actually a class underneath the hood)
Struct
Anonymous type, etc.

The only types that can involve inheritance are classes and records. So in this specific context, both class and type mean the same thing.

Thanks for writing this one as well @DawMuld

Can anyone confirm if ''derived from this type" should be interpreted as derived directly from this class, indicating that a class derived from a class derived from this class won't have access?

"derived from this type" would mean any derived type, including a class derived from a class derived from this class.
I think it would be best to keep using "type" instead of "class", because of records. This article does state that structs are sealed, so I think it's still clear.

Thanks for the note @SeanKilleen
I did a review, and I agree.  Closing as resolved.


Migrate to the new Dev UI

see https://github.com/quarkusio/quarkus/issues/31315

Any deadlines?

No deadlines yet. asap ?

Is it fine, to keep the old Dev UI, while we are on Quarkus 3.0.0.Final?

Yes sure

@ppalaga is this something you can look at ? We are starting to plan the removal of the old Dev UI.

quarkus-cxf breaks with Quarkus 3.4.0.CR1: https://github.com/quarkusio/quarkus/pull/35426#issuecomment-1710183985
That change will be rolled back for 3.4.0 final, but for 3.5.0 at the latest quarkus-cxf needs to move.

I did the rollback here: https://github.com/quarkusio/quarkus/pull/35808
I also started the work to migrate this (CXF) Dev UI to the new Dev UI. Expect a PR soon.


user should be able to enter the invite code of the inviter

on the invites(rewards) screen

[x] add a text box and button where use can paste an invite link/invite code if he was not invited yet
[x] once user presses the button it will show a dialog with loading spinner and says "collecting invite bounty"
[x] in the background it will trigger two calls to the blockchain via wallet

joinInvites
after joininvites complete it will trigger collectBountyFor

if user still did not use an invite code he will see the textbox

once he enters a valid link/code the button turns blue

user clicks on get reward and see this modal

if everything is ok and reward was claimed successfully he will see this modal:

if user or inviter are not whitelisted yet the following modals will be shown

after user and inviter are whitelisted the user will be able to click on get reward again. until then the button will be greyed out

@tzvister please see above flow, design and texts
and comment with any required changes
this task is waiting for you now

@sirpy @serdiukov-o-nordwhale
There are few issues:

after you claimed you didn't automatically get an invite bonus
to my mind there is an issue with props too
the textbox is still visible for users who already claimed the invite bonus

Environment:
DEV 1.30.1-16
Devices:
Windows 10 // Google Chrome v92
Attachments:
https://app.zenhub.com/files/166818382/f12cee57-30fe-462d-9328-57dfa440cfc4/download

@sirpy @johnsmith-gooddollar
There is the possibility to enter an invite code and claim your invite bonus:

after you claimed you did automatically get an inviting bonus
the textbox is  invisible for users who already claimed the invite bonus

Environment:
DEV 1.30.1-18
Devices:
Windows 10 // Google Chrome v93
Attachments:
https://www.screencast.com/t/QohPE98U -  entered code and after passed FV
https://www.screencast.com/t/4eXuxrGOK2V - passed FV and after entered code


Make it work on Safari

Downloading image currently only works on Chrome and Firefox.

Firefox download support was momentarily failing due to window.URL.revokeObjectURL(blobUrl); in saveSvgAsPng.js

Could create an alternative code path for Safari to at least see the result of the image, then download it. http://updates.html5rocks.com/2011/08/Downloading-resources-in-HTML5-a-download


Fixed some incorrect translation of the Russian localization.

Fixed the discrepancy between the json fields of the en localization object and all other localizations.
Aligned the tabulation of json localization objects where it was needed.

Please do not correct the whitespace, it makes merge conflicts with other merge requests. I'll close this MR, feel free to reopen with only the russian changes.


Ensure key usages are set on CertificateRequests created by the Certificate controller

NONE

fixes #2247

/assign @munnerz

Were the test failures transient, or are they being worked on?

/retest

/unassign
/assign @munnerz

/lgtm

Great work, I'm excited about this one.
Do you know when the release will be?


draft-ietf-tsvwg-ieee-802 should not be a thing

Describe the issue
From a conversation with @stefanomunarini in #378:

More concretely, see https://bib.ietf.org/public/rfc/bibxml-ids/reference.I-D.ietf-tsvwg-ieee-802.xml and note that the returned anchor is incorrect - there is no such thing as I-D.ietf-tsvwg-ieee-802.

This is a different issue I think. I can see ietf-tsvwg-ieee-802 is actually indexed in the service.

Should this not be the case, can you @rjsparks please open a new issue? Thanks

draft-ietf-tsvwg-ieee-802 does not exist. draft-ietf-tsvwg-ieee-802-11 does (it became an RFC - its last version was draft-ietf-tsvwg-ieee-802-11-11.
The datatracker has some heuristics that use probing to see what exists when a name ends in -\d\d. I suspect the code that chose to index ietf-tsvwg-ieee-802 lacks similar consideration.
Code of Conduct

[X] I agree to follow the IETF's Code of Conduct

That'd be a good addition to the index code.

Thank you for raising this issue @rjsparks . This issue is being investigated

It turns out, ietf-tools/relaton-data-ids contains some data generated from older versions of a Relaton Gem (specifically relaton-ietf prior to v1.12.6). The ietf-tools crawler for this repository does not remove data before each crawler run, in opposition to what the relaton/relaton-data-ids crawler does (see https://github.com/relaton/relaton-data-ids/blob/8fd23a9f6dba6f3ad86f53024e0bf5ffb7d2da83/crawler.rb#L9-L10). draft-ietf-tsvwg-ieee-802 does not, in fact, exist in relaton/relaton-data-ids.
I do not recall being there any particular reason for not removing old data. @kesara can you confirm? In case there is no reason, here is the PR here

The document draft-ietf-tsvwg-ieee-802 is not indexed in the service anymore. However, the issue with the wrong anchor formatting for draft-ietf-tsvwg-ieee-802-11 persists (current anchor is draft-ietf-tsvwg-ieee-802). Is there a documentation on how Datatracker achieve this using heuristics?

The datatracker has the advantage of knowing what drafts exist.
When it makes bibxml-id entries it uses the draft name.
'When it tries to find drafts that are ambiguous because there are endings that might be versions or part of the draft name, it probes the set of known names as part of the heuristics.
See https://github.com/ietf-tools/datatracker/blob/b78f5bab908dcd5e078cfcb947bc01b8a7a8f721/ietf/doc/utils.py#L1201-L1209. This works by looking for the longest matching string that is still an existing draftname. It relies on there not being any draft names in the database were A-nn and A are both valid names. If we ever allowed that to happen, the heuristics would become much more complicated.
For the bibxml service, I would look to see if that at the point the code is generating the anchor it has fully identified the draft name already and is unconditionally stripping -nn when it shouldn't be.

Thank you for the pointers to the Datatracker implementation @rjsparks . I'm looking into implementing a similar heuristic in the bibxml-service, however I am running into a loop of cases which are creating a lot of confusion.
To summarise, and I invite you to confirm the new behaviour of the service:

[ ] The document draft-ietf-tsvwg-ieee-802-11 should be indexed in the service, while ietf-tsvwg-ieee-802-11 should not (it does not exist).
[ ] The bibxml-service should serve draft-ietf-tsvwg-ieee-802-11 for both paths I-D.draft-ietf-tsvwg-ieee-802-11-NN and I-D.ietf-tsvwg-ieee-802-11. In the first case, it should serve the NN version; in the latter, it should serve the latest version available.
[ ] On a more general term, we accept all of the followings: foo-bar (unversioned), foo-bar-11* (unversioned, if it exists), draft-foo-bar* (unversioned, if it exists), draft-foo-bar-11* (versioned, draft v.11, if it exists), draft-foo-bar-11 (unversioned, the whole string is the document name).

* these are paths that by default would raise an exception, because the expected format is either draft-foo-VERSION, or foo without a version. For these paths, the service will check against the Datatracker to assess whether the whole string is the actual document name.
One last case that is not supported: draft-foo-bar-11 (unversioned, document name is draft-foo-bar, requesting v.11) should result in an exception.
Can you please confirm all of the above? Thanks

Could you also please confirm the expected anchor values for the above cases?

For the first checkbox, yes, but more importantly draft-ietf-tsvwg-ieee-802 does not exist (you started conflating the specific version requests vs latest version requests with identifying the document being requested, and yes, those do interact).

The other check boxes are on track, but the * is not.
draft-sparks-sipcore-multiple-reasons-00 should definitely be something I can ask for. Can you clarify what you meant with the *?

draft-sparks-sipcore-multiple-reasons-00

In case of such path the service looks up for a document having name draft-sparks-sipcore-multiple-reasons-00. If no document is found, it returns the draft v.00 of sparks-sipcore-multiple-reasons.

Could you also confirm that draft-draft-ietf-tsvwg-ieee-802-11-11 should also be an accepted path? This request should return the draft v.11 of draft-ietf-tsvwg-ieee-802-11.
This reflect the default behaviour of the system, I just want to make sure this path exists for this case.

The better way (because it's going to be right 99.99... for some string of 9s percent of the time) is to look for draft-sparks-sipcore-multiple-reasons first and if so, treat the -00 as a version. Only if you don't find a draft-sparks-sipcore-multiple-reasons would you go look for something named draft-sparks-sipcore-multiple-reasons-00.
Doing it in the order you suggest will cause a database lookup that will fail all but that very fractional small percent.
There are other ways to optimize this (that involve keeping extra configuration or state) but the above is the path the datatracker takes.

Hi @rjsparks , I am not fully confident of submitting a PR just yet, as the changes I've made affect a big part of the Internet Draft adapter. However, I deployed what is in this PR to our dev instance (https://dev.bibxml.org) and I invite you to test the new changes.
In particular, note that while before https://bib.ietf.org/get-one/by-docid/?docid=draft-ietf-tsvwg-ieee-802-11&doctype=Internet-Draft&query=draft-ietf-tsvwg-ieee-802&query_format=docid_regex&page=1 would point to https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-tsvwg-ieee-802.xml , the dev instance (https://dev.bibxml.org/get-one/by-docid/?docid=draft-ietf-tsvwg-ieee-802-11&doctype=Internet-Draft&query=draft-ietf-tsvwg-ieee-802&query_format=docid_regex&page=1) now points to the right document (https://dev.bibxml.org/public/rfc/bibxml3/reference.I-D.draft-ietf-tsvwg-ieee-802-11.xml).
The wrong URL (https://bib.ietf.org/public/rfc/bibxml-ids/reference.I-D.ietf-tsvwg-ieee-802.xml) can still be accessed manually tho, as I haven't found a way to block it without blocking other valid paths.
Please note: the way this part of the system was implemented makes it very hard to accommodate this special case without breaking other paths. We may have to reconsider a different approach if the above proposed solution does not satisfy the requirements.

@stefanomunarini - @Kesara may have more to say after looking more closely, but I think that for the short term, getting the correct answer for a correct question is far more important than getting a wrong answer for the wrong question. These are rare enough that if the last example is problematic, we can block it or redirect it at cloudflare.


Size of simple app

I tried todomvc and one can see the wasm is 1.7mb, what is a bit to much for such simple thing. Any tips to cutting it down to something respective?

Are you compiling using the --release flag?
When looking at wasm bundle sizes, it's important to consider that the majority of it is runtime and a "base" that doesn't grow as the applcation code grows, so comparing small things (e.g. todomvc) isn't the best comparison when comparing "real world" bundle sizes.


No progress flag for ng xi18n

Bug Report or Feature Request (mark with an x)
- [x] bug report -> please search issues before submitting
- [ ] feature request

Area
- [x] devkit
- [ ] schematics

Versions
node --version
v8.11.1
npm --version
6.0.1
 [System.Environment]::OSVersion.Version
Major  Minor  Build  Revision
-----  -----  -----  --------
10     0      17134  0

Repro steps
Running npm run ng xi18n -s --no-progress in a angular project still writes the build progress to the output.
Running npm run ng xi18n -s -- --no-progress gives the error

Unknown option: '--progress'

Desired functionality
Desired functionality would be to only receive Errors without the buildprogress.

Thanks for reporting this issue. This issue is now obsolete due to changes in the recent releases. Please update to the most recent Angular CLI version.
If the problem persists after upgrading, please open a new issue, provide a simple repository reproducing the problem, and describe the difference between the expected and current behavior.


Fix FromIterator for Segtree

This pull request fixes the FromIterator implementation for the Segtree struct. The previous implementation use Iterator::size_hint().0 to get length of the iterator. However, that is incorrect.

You are correct.  The current implementation, introduced by @mizar in #115, uses size_hint().0 as the number of elements in the segtree, but this is actually the lower bound of the element that is actually yielded from the iterator; moreover, it may be completely wrong.  It's my fault overlooking it, thank you for pointing it out.
I guess however that my implementation in #107 is still correct.  The implementation uses size_hint().0 to avoid reallocation when the number of elements is estimated correctly.  It also fix the length of the slice for the parent nodes if there are not enough or too many of them compared to the number actually obtained by the iterator.  Thus, I think this PR is superceded by #107, provided that I add the filter test that you suggested.
(By despite https://github.com/rust-lang-ja/ac-library-rs/pull/115#issuecomment-1484337588, the FromIterator was not actually reverted.  That's also my oversight...)
Comment me if someone (the OP or a maintainer) has any concern; otherwise I'm closing this PR.


fix: fixed the workspace required error in search section

Overview
This PR is for ticket #2384 and fixed the required workspace error when it auto-selected
Verifying Changes
workspace-autoselect.webm
Legal
This project is available under the Apache 2.0 License.

seeing that the default workspace is selected even before workspaces are loaded in

seeing that the default workspace is selected even before workspaces are loaded in

yes, setting the workspace using localstorage value, if that value is not exist in the workspaces then 0th value from the workspaces will get updated and stored in localstorage


Where are the instructions for running the nativescript project?

Note: for support questions, please use one of these channels: Chat: Gitter

I'm submitting a ...
[ ] bug report
[ ] feature request
[x] question about the decisions made in the repository

Hi There, I had a read over instructions a few times, but I cannot find instructions for running the
nativescript app.
please advise?
Cheers

Do you want to request a feature or report a bug?

What is the current behavior?

If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem via
https://plnkr.co or similar (you can use this template as a starting point: http://plnkr.co/edit/tpl:AvJOMERrnz94ekVua0u5).

What is the expected behavior?

What is the motivation / use case for changing the behavior?

Please tell us about your environment:

Angular version: 2.0.0-beta.X
Browser: [all | Chrome XX | Firefox XX | IE XX | Safari XX | Mobile Chrome XX | Android X.X Web Browser | iOS XX Safari | iOS XX UIWebView | iOS XX WKWebView ]

Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, gitter, etc)

Oh sorry never mind I found them in the package.json file under nativescript folder.
cheers

Nativescript is not working for now. I am waiting for NS team to finish the port to webpack.

@JonnyBGod, any news on this topic?


showcase site template for V4.0.x

use section bootstrap and webpack

thanks @EBII!!! Awesome work!
We don't need livereload and Guardfile anymore thanks to the webpack-livereload-plugin module in the package.json. It works out of the box.


(Autogenerated) Getting error while trying to install Interactive extension.

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az interactive
Errors:
No module named 'prompt_toolkit.interface'
Traceback (most recent call last):
python3.7/site-packages/knack/cli.py, ln 206, in invoke
    cmd_result = self.invocation.execute(args)
cli/core/commands/__init__.py, ln 603, in execute
    raise ex
cli/core/commands/__init__.py, ln 661, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
cli/core/commands/__init__.py, ln 654, in _run_job
    six.reraise(*sys.exc_info())
...
cli/command_modules/interactive/custom.py, ln 41, in start_shell
    azext_interactive.start_shell(cmd, style=style)
cliextensions/interactive/azext_interactive/__init__.py, ln 10, in start_shell
    from .azclishell.app import AzInteractiveShell
interactive/azext_interactive/azclishell/app.py, ln 27, in <module>
    from prompt_toolkit.interface import Application, CommandLineInterface
ModuleNotFoundError: No module named 'prompt_toolkit.interface'

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az interactive

Expected Behavior
Environment Summary
Darwin-18.7.0-x86_64-i386-64bit
Python 3.7.4
Shell: bash

azure-cli 2.0.70 *

Extensions:
interactive 0.4.3

Additional Context

Duplicate of #10088. This issue has been fixed in 2.0.71. Please download the latest version and try again: https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest


Swarm support in Rancher

Make Swarm the native scheduler in Rancher
Put all Rancher scheduling enhancements in a Swarm scheduling filter
Optionally enable/disable Swarm master (so we don't always expose the Swarm master to the Internet)

interested in other schedulers so i'll follow this.

Closing issue as the primary task is complete.


fix GEARPUMP-64, only allow LocalJarStore for ComposeDAG

So submitting application from dashboard can work correctly (not compose dag) if I use DFSJarStore?

Yes 🐶

+1


Error when passing very long string to BalloonPopup

Context
while playing a bit with the SDK I found that passing a long string to the balloon popup method breaks the application.
STR
1 . Execute the code on MainActivity.java.
2 . I was running a Nexus 5 Android 7.1 API 25 emulator
3 . Click on any feature, it will run a query using the CartoSQLService class and try to call the balloon popup constructor with the result, which is a very long string
4 . See error log
files
Archive.zip
content:

error_log.txt
MainActivity.java

Thanks for reporting! The string requires very large bitmap canvas (approximately 1000x140000 pixels) to render, thus causing the fail. A fix (that simply discards the popup) is now commited in master. Closing.


Can't find Win 10 SDK (installed with default options on Win7 x64)

[x] I have read the contribution documentation for this project.
[x] I agree to follow the code of conduct that this project follows, as appropriate.
[x] I have searched the issue tracker for an issue that matches the one I want to file, without success.

I'm using electron-forge via ember-electron, but my problem appears to be independent of that. When I try to make a Windows 10 app (.appx) I get an error because makeappx.exe couldn't be found. Looking at my system it is located in C:\Program Files (x86)\Windows Kits\10\bin\10.0.15063.0\x64 but electron-forge is looking for it in C:\Program Files (x86)\Windows Kits\10\bin\x64.
  Progress indicators will be sent over electron-forge:lifecycle

...

Packaging Electron project.
Failed to compile file: C:\Users\Jacob\AppData\Local\Temp\electron-packager\win32-x64\my-app-win32-x64\resources\app\ember\crossdomain.xml
Compiling C:\Users\Jacob\AppData\Local\Temp\electron-packager\win32-x64\my-app-win32-x64\resources\app\ember\crossdomain.xml resulted in a MIME type of application/xml, which we don't know how to handle
Making Electron project.

An error occured while making for target: appx
Can't find makeappx.exe in PATH, you probably need to install the Windows SDK
Error: Can't find makeappx.exe in PATH, you probably need to install the Windows SDK
    at findSdkTool (C:\path-to-project\node_modules\electron-forge\dist\makers\win32\appx.js:104:11)
    at _callee3$ (C:\path-to-project\node_modules\electron-forge\dist\makers\win32\appx.js:141:50)
    at tryCatch (C:\path-to-project\node_modules\regenerator-runtime\runtime.js:65:40)
    at GeneratorFunctionPrototype.invoke [as _invoke] (C:\path-to-project\node_modules\regenerator-runtime\runtime.js:303:22)
    at GeneratorFunctionPrototype.prototype.(anonymous function) [as next] (C:\path-to-project\node_modules\regenerator-runtime\runtime.js:117:21)
    at GeneratorFunctionPrototype.tryCatcher (C:\path-to-project\node_modules\bluebird\js\release\util.js:16:23)
    at PromiseSpawn._promiseFulfilled (C:\path-to-project\node_modules\bluebird\js\release\generators.js:97:49)
    at Promise._settlePromise (C:\path-to-project\node_modules\bluebird\js\release\promise.js:574:26)
    at Promise._settlePromise0 (C:\path-to-project\node_modules\bluebird\js\release\promise.js:614:10)
    at Promise._settlePromises (C:\path-to-project\node_modules\bluebird\js\release\promise.js:693:18)
    at Async._drainQueue (C:\path-to-project\node_modules\bluebird\js\release\async.js:133:16)
    at Async._drainQueues (C:\path-to-project\node_modules\bluebird\js\release\async.js:143:10)
    at Immediate.Async.drainQueues (C:\path-to-project\node_modules\bluebird\js\release\async.js:17:14)
    at runCallback (timers.js:672:20)
    at tryOnImmediate (timers.js:645:5)
    at processImmediate [as _immediateCallback] (timers.js:617:5)

(I've taken the liberty to skip responding to the other questions because I think they are not necessary / relevant.)
I wish we had a more robust way of detecting the Windows SDK installation folder, like https://docs.microsoft.com/en-us/visualstudio/msbuild/getframeworksdkpath-task.

I can confirm this bug.
Even if I change the SDK path in config.forge.windowsStoreConfig.windowsKit in my "package.json", I still get the exception.
I think the error is here. The exception is thrown by the findSdk function, which does not take in consideration the forge config.

/cc @felixrieseberg @paulcbetts
Is this a change in the standard SDK path that we need to handle or is something else going on here?

Perhaps part of it is that we should only try to set forge.config.windowsStoreConfig.windowsKit if it's not already set by the user.