Diplomacy ribbon score

Resolves issue #206 . Moved to put this in the root /UI folder instead of a separate mod folder.

Fixed the merge conflict. Also here is a screenshot of it in action:

Looking good! Would it be possible to change the military score icon to something round? You can search for icons used in the game with this handy powershell snippet:
Get-ChildItem -Recurse -Filter "*.xml" | Select-String -Pattern "ICON_"

So I searched all the icons already (using npp++ find in files for the ICON pattern) but couldn't find any other suitably sized and also round icons. I was hoping to use the red "at war" icon seen in the screenshot on Pericles. But for the life of me I cannot figure out how to reference it. I think it is somehow embedded in a database call or something weird.
I'm open to suggestions on icon, but the only other one that seemed relevant was the red encampment icon.

Hey no worries, most of my issue correspondence is done by phone while I'm at work, since those are the most active hours for the issue tracker. Now that I've had a real chance to sit down and play with the changes, I think there are a few changes that can be made besides the military score icon. For one, I think the vertical spacing is a little squashed and could certainly benefit from some expanding. I think a separator element would do the trick well here. I'd also like to see some kind of backing to the scores like there are for the citizens assigned to districts, maybe set up in such a way that it tucks behind the leader icon without fully encompassing it like this (excuse the paint mockup)
I think that this may actually be a situation where creating a custom art asset makes sense. Since the Winter Patch it's been possible and I think it'll make for a good test case. I'm gonna take a crack at it and see what I can do.

I give up on the custom art for now. I was hoping I could just take the existing square icon and round it out, but it looks like we don't have any way to unpack existing civ 6 icons right now and it's all become one big slog I'd rather not take right now. Will definitely revisit later though


test(consensus): remove warning on into mock propsal part

This change is

#2448  👈 (View in Graphite)
main

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


Styling tweaks

Final styling tweaks before the release

Two PRs open and waiting for reviews:
https://github.com/jpmorganchase/salt-ds/pull/1310
https://github.com/jpmorganchase/salt-ds/pull/1373

Closing this as PRs have been merged


Command "                               " can be replaced by "                                                         "

Replacing command

with

we get these improvements:

i think , it better

i think , it better

the results of it are
>
>
>
>

which one has this final result

source: https://www.webpagetest.org/blank.html


react-html/server: inject blocking scripts before external stylesheets

Description
Placing inline scripts after external stylesheets forces the browser to finish downloading and applying those stylesheets before it can continue parsing (because it needs to have the styles present for JS, and needs to run the JS since that could alter the DOM tree mid-parse via document.write). In the majority of cases (or simply all cases), it is better to inject any synchronous inline scripts prior to external stylesheets to avoid this.
My assumption with this PR is that blockingScripts is exclusively (or at least primarily) used for inline scripts. If that is incorrect, it may be worth adding a new option for inlineScripts that is injected after <title> and the core <meta> tags (http-equiv).
Once this is done, we can use it in Admin to avoid the performance hit from our web-vitals inline polyfill.
/cc @atesgoral

Nice, looking at main it looks like the only inline scripts we seem to have left are the contents of the Serialize blocks. Do we care about bumping them up above the stylesheets? If not then I think we can close this as a won't fix


gdal: Test LERC support

Description of changes
Verify that LERC support works, as per #290556.
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Closing as it would be better to add a test to #290556 which uses GDAL to create a LERC TIFF and libtiff to analyse it.


Implement asynchronous APIs for GCS

The application should be able to overlap computation and I/O.  The application should be able to request that specific operations are executed asynchronously, for example:
namespace gcs = google::cloud::storage;
void AppCode(Bucket bucket, gcs::CompletionQueue cq) {
  std::future<gcs::BucketMetadata> meta = bucket.GetMetadata(cq);
  // .. do other stuff here, and when ready:
  meta.get(); // block until the response is ready.
}

This is a large task, it requires implementing completion queues, and doubles (if using std::experimental::future) or triples if using (std::future and callbacks) the number of APIs.
There is an existing design doc for the Bigtable library that is relevant.

This is becoming more important.  It would solve problems with deleting and composing multiple objects.
One solution might be to hide the completion queue completely, and just offer a configuration for the number of background threads (but none of the thread properties). That would work for REST and gRPC.

This is too open ended for a bug.  I am going to open more specific bugs and close this.


Fix quoting of command in λ!!

(lambda!! #'avy-goto-char-timer t)

Before:
(lambda nil
  (interactive)
  (let ((current-prefix-arg t))
    (call-interactively avy-goto-char-timer)))

After:
(lambda nil
  (interactive)
  (let ((current-prefix-arg t))
    (call-interactively
     (function avy-goto-char-timer))))

Oh, my bad. Actually, the returned closure shouldn't be quoted at all. Would you mind correcting that for me? i.e.
(defun λ!! (command &optional arg)
  "Expands to a command that interactively calls COMMAND with prefix ARG."
  (declare (doc-string 1))
  (lambda () (interactive)
     (let ((current-prefix-arg arg))
       (call-interactively command))))

@hlissner Sure!

Thanks for the help!


[TODO] Tarots of Tech mention

http://tarotcardsoftech.artefactgroup.com
name might be a hurdle for some - but it is good so projects can check if what they are building should be build.

Reminds me of ethicalOs.org - probably another one to remind people about!

yes - I think I even was hearing about these cards in a talk that was mainly about ethicalOs.
Btw.: gave some cards to @franzihei - so they will be on site. But for mentioning in the knowledgebase we need to know where people can find it on site.

Ooooohhhhhh I'd love a deck for liminal village.com if possible!
On Wed, 14 Aug 2019, 13:46 ligi<EMAIL_ADDRESS>wrote:

yes - I think I even was hearing about these cards in a talk that was
mainly about ethicalOs.
Btw.: gave some cards to @franzihei https://github.com/franzihei - so
they will be on site. But for mentioning in the knowledgebase we need to
know where people can find it on site.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ethberlinzwei/KnowledgeBase/issues/25?email_source=notifications&email_token=AIILIQ7ZTI3O6TZO5FSGNF3QEPWCTA5CNFSM4IJVBPQKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4IRJQI#issuecomment-521213121,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIILIQ76K6SKMOQU6S3454TQEPWCTANCNFSM4IJVBPQA
.

unfortunately there is only one deck.I laminated them by hand - was quite some work - so I could only do one. Perhaps next year we can produce some cards with a professional producer and hand out decks. Unfortunately this did not work out this year and I went with the backup solution as I think it is important that projects get looked at with this tool.

Ok too bad, it looks like a great artifact and we'd love a copy. Is there a
downloadable DIY kit perhaps? Getting a crew to cut them out and laminate
sounds like a way for people to really ingrain them through physicality :)
On Wed, 14 Aug 2019, 14:11 ligi<EMAIL_ADDRESS>wrote:

unfortunately there is only one deck.I laminated them by hand - was quite
some work - so I could only do one. Perhaps next year we can produce some
cards with a professional producer and hand out decks. Unfortunately this
did not work out this year and I went with the backup solution as I think
it is important that projects get looked at with this tool.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ethberlinzwei/KnowledgeBase/issues/25?email_source=notifications&email_token=AIILIQ6RKIBSSQU7VSGQFULQEPY7VA5CNFSM4IJVBPQKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4ITAYY#issuecomment-521220195,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIILIQZW72GFYN3F3MUY53TQEPY7VANCNFSM4IJVBPQA
.

I'd say we can best put them at one of the help desks or is there maybe a designated area where hackers can meet mentors? Then I'd put them there.

sounds great. I think help desk is a good idea and easy to find.

Maybe spread them out around the place so people that are curious can go
searching?
Great way to meet people!
On Wed, 14 Aug 2019, 14:32 ligi<EMAIL_ADDRESS>wrote:

sounds great. I think help desk is a good idea and easy to find.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ethberlinzwei/KnowledgeBase/issues/25?email_source=notifications&email_token=AIILIQ4UQGPXPREX2SAPRNLQEP3MJA5CNFSM4IJVBPQKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4IUSVA#issuecomment-521226580,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIILIQ7QOPWU5JTG5BBYJI3QEP3MJANCNFSM4IJVBPQA
.

Erm @soc1c there isn't only one help desk so we'd need to specify. My folks and possibly me at some point will be at the Layer 2 helpdesk so that would make sense I guess.

Let's order more decks!

I could produce like 2 more decks - but my printer has problems currently. If anyone could print the deck I can do the lamination. Brought 100 lamination sleeves - and just used 30 so far

No worries, I'm on it.


Migrate website: Test the thing

Take the GHE Repo. Move it to an internal repo.
Can we have an internal repo linked to project board?
Empty repo with dummy issues. Link it to a project and see what you see.

✅


Webbased admin/user Gui?

Hello,
This is not a issue post, but just a feature request.
Is it possible to intergrate an webased admin/user Gui please?
Just like these ones:
https://github.com/perara/wg-manager#Showcase
so that we can manager or add/remove user clients?
Thanks so much.

No plans for that. The beauty of this project is to have a very lightweight and unobtrusive way to install and manage a WireGuard server, so setting up an entire web stack including Node.js is the antithesis of what I am trying to achieve.

No plans for that. The beauty of this project is to have a very lightweight and unobtrusive way to install and manage a WireGuard server, so setting up an entire web stack including Node.js is the antithesis of what I am trying to achieve.


Helm registry mirror

Related to https://github.com/aws/eks-anywhere/issues/1166
Description of changes
Instead of modifying the downloaded bundle manifests to point the helm
charts to the registry mirror, we leave them untouched, and we make helm
patch the requests urls on the fly.
The main advantage is that downloaded artifacts remain agnostic from the
registry. This allows to download them before having access to the
registry or even used the same artifacts for different registries.
Testing (if applicable):

Added unit tests
I'll test the whole flow e2e before merging

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/hold while I test this manually

/unhold, tested it

/unhold tested it

/lgtm


add and use FaktoryClientException instead of StringException

This PR add's a FaktoryClientException.
The reason for adding a new exception type is so we can check whether an error is from the faktory client or not

Did you check already that this works with our fromException matching code? I might check that works first before merging this.

Yes - tested it works with FaktoryException and it does not catch StringException


double tab somtimes opens on private repo add all commit push

Can you elaborate this please?

when working on private repos double tab act as a shortcut to "add all commit push"

Are you saying that pressing the tab key twice starts that command?
If so, check your keymap file and make sure you don't have a mapping for double tapping the tab key. This package doesn't contain a mapping for that.


WIP Bigtable: add callable for point reads

This is necessary to configure different timeouts for streams & point reads

@igorbernstein2 Is this still WIP? Obsolete?

@igorbernstein2, I'm going to close this.  Please reopen when it's ready for review.


SSL support?

Any plans to expand the implementation to allow for that? I tried adding the options from the quart docs to local chatdocs.yml but with no luck. I am certain my local file is being used as the change of port is being reflected.

I'm not the author of the software, but if I had to use SSL, I would opt for a reverse proxy to the HTTP service. Personally, I use https://nginxproxymanager.com/ to provide SSL-secured access from outside. I hope this helps.

Did you get this working? I used nginx proxy manager. I got it to SSL and to go to https. The UI shows up but I can't search any documents. Just doesn't work? Any idea how to get this to SSL.


[Bug][GitHub] CICD Deployment count does not use job names

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
When viewing DORA metrics (e.g. deployment frequency) for a GitHub repository, it seems only workflow run names that match the deployment/production regex are being treated as deployments, while matching job names are not detected.
After some further experimentation, it seems workflow names are also being detected.
What do you expect to happen
According to docs / UI both workflow run names and job names should be matched against the regexes, while workflow names are ignored.
How to reproduce
Set up a GitHub repository with two workflows with one job each:

One workflow should set the run-name property to "Deploy to Production"
The other workflow should set the job name to "Deploy to Production"

Run the first workflow once, and the second workflow twice.
Import the repository in devlake with DORA metrics enabled, using "Deploy to Production" as the deployment regex (leaving production regex empty).
The Grafana graph for monthly deployments will show 1 (the number of workflow runs matching the regex) instead of 2 (the number of workflow runs with matching jobs) or 3 (the union)
Anything else
With automatically triggered workflows, the run names are by default based on the message/name of the commit/PR/etc. that triggered them, which is quite nice - but does not reliably identify the environment being deployed to, if any.
Meanwhile, job names are set in the workflow definition, and can be fixed since they do not need to differentiate the workflow run from other runs of the same workflow.
I'm willing to invest some time in this, but I barely understand Go well enough to read it (and in fact haven't found what needs fixing yet).
Version
v0.18.0-beta1
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Thanks for the report, will investigate later

Hi, @raihle , I'm investigating the problem, I would like to know what workflow names, workflow run names, and job names you are referring to. Can you take some screenshots and highlight them so we can be on the same page?
Thanks.

@klesh I'm using the terms as described here: https://devlake.apache.org/docs/Configuration/GitHub/#cicd
Workflow name: The name given to a workflow in the workflow definition file (the top-level name property), defaulting to the file path. These are shown in the left-hand list of all workflows when viewing the "Actions" tab of a repository. For this repository (https://github.com/apache/incubator-devlake/actions), that would be for example "Auto Cherry Pick", "Build-BuilderImage-Push-Docker", etc.

Workflow Run Name: The name given to a specific workflow run in the workflow definition file (the top-level run-name property), defaulting to various different values depending on what triggered the run (can be the workflow name, a truncated commit message, etc.). These are shown in the right-hand list of workflow runs when viewing the "Actions" tab.

Job Name: The name given to a job inside a workflow definition file (the job-level name property), defaulting to the id of the job. These are shown in the left-hand side list and in the right-hand side graph when viewing a specific workflow run (e.g. "Build lake-builder image"): https://github.com/apache/incubator-devlake/actions/runs/3010479662

@raihle

"The name of the GitHub workflow run or one of its jobs matches" like this:

It may be that our understanding is different, or our sentence descriptions are inaccurate, leading you to think that some data do not match.

GitHub workflow run is executed once and counts as one deployment.
As long as one of the job names matches, this run will be considered a deployment.

Finally, group by pipeline_id+commit_sha is used to calculate the number of deployments.
In the above example, that is  Build and Push devlake builder ｜ Build and Push devlake base ｜ Build and Push devlake image  belongs to one deployment, not 3 times

@abeizn In that image, "github workflow run name" is pointing at the workflow name. The workflow run name is "feat(config-ui): support full sync mode (#6200)".
We agree on what job names are, but in my testing they were not matched. There have been a few versions since then so I will try again.

@raihle Sorry for the late reply, I took a few days off.
Can you look at the data in the cicd_tasks table? When type=DEPLOYMENT, you can observe what is the value of the name field.
I set deployment and production regex to  Build and Push devlake (job name)  https://github.com/apache/incubator-devlake/actions/runs/6120227585/workflow

The cicd_tasks table is always empty, even when I can see the deployments in Grafana.

@raihle Thank you. I am also very confused. Could you please collect the apache/incubator-devlake repo and set deployment and production regex to Build and Push devlake (job name)? I'd like to rule out whether it's due to different workflow settings in our repos.

Good call, the incubator-devlake project does work as expected! So perhaps this is down to permissions for the access token.
I am using a GitHub app with the following permissions (all read-only):

Repository

Actions
Administration
Commit statuses
Contents
Deployments
Issues
Metadata
Pull requests

Organization

Members

As far as I can tell, the access requirements for apps are not documented, and we added everything that seemed relevant. Fine-grained PATs are the closest, and we have all of the permissions listed except for Discussions (a feature we do not use). But I will request access to Checks, Discussions, and Environments, and we'll see if that helps.

@raihle  Thanks for your testing.
I think devlake's document should only list all the neccessary permissions.  + 1

Looking forward to your test reply.

And I also have some conjectures. You can also help me see if this is possible.
For GitHub Actions, the job name can be either the name in the left-hand side jobs list or the name used in the actual running job. It depends on how you define the job in your workflow file.
When you use job_id: or jobs.<job_id>.name: to define a job in the workflow file, that name will be displayed in the left-hand side jobs list.
Example:
jobs:
build:
name: My Build Job
In the example above, My Build Job will be displayed as the name in the left-hand side jobs list.
When you use name: to define a step or action within a job, that name will be displayed in the actual running job.
Example:
jobs:
build:
steps:
- name: My Build Step
run: echo "Building..."
In the example above, My Build Step will be displayed as the name of a step in the actual running job.
The job names can be different for different repositories because each repository has its own workflow file, and you can customize the job names according to your requirements.
Finally, attach the workflow settings of devlake: https://github.com/apache/incubator-devlake/blob/main/.github/workflows/build.yml

Adding the new permissions seems to have worked. Presumably it is "Checks" that made the difference. I will re-run the tests with only that permission added, but it takes some time because our GitHub org admins are quite busy.

@raihle Great, looking forward to your reply.

Hi @raihle, any updates? Please feel free to contact us if you need any help.

Sorry for the delay, I can finally confirm that this was resolved by adding "Checks" to the app permissions.

@raihle Thank you very much for your reply, it will be of great help to us.


Having both protobuf 2.x and 3.x installed confuses the linker.

This is with an Ubuntu distro (14.04 LTS).
When trying to run make, I get the following error:
[INSTALL] Installing libgrpc++.so.<IP_ADDRESS>
[INSTALL] Installing libgrpc++_unsecure.so.<IP_ADDRESS>
[HOSTLD]  Linking bins/opt/grpc_csharp_plugin
./libs/opt/libgrpc_plugin_support.a(csharp_generator.o): In function `GenerateServerInterface':
/usr/local/google/home/sidb/workspaces/genomics/grpc/src/compiler/csharp_generator.cc:305: undefined reference to `google::protobuf::io::Printer::Print(char const*, char const*, std::string const&, char const*, std::string const&, char const*, std::string const&, char const*, std::string const&)'
collect2: error: ld returned 1 exit status
make: *** [bins/opt/grpc_csharp_plugin] Error 1

If I remove the C# and Obj-C plugins from PROTOC_PLUGINS in the Makefile, the installation completes, but then when trying to compile a proto file, I get the following:
protoc --proto_path=.:/usr/local/include --cpp_out=./gens --grpc_out=./gens --plugin=protoc-gen-grpc=/usr/local/bin/grpc_cpp_plugin google/longrunning/*.proto
--grpc_out: protoc-gen-grpc: Plugin killed by signal 11.
make: *** [google/longrunning/operations.pb.cc] Error 1

Removing the system default protobuf packages solved this issue. The installation for protobuf 3.0 was with the standard configure options. Perhaps the precedence for /usr/local/lib was not right.
Happy to provide more information if someone wants to pursue this. Otherwise OK to close this issue.

Which version of protobuf was installed on the system exactly ?

Package: libprotoc8
Versions:  2.5.0-9ubuntu1 ...

So, another way to solve that would've been to upgrade protobuf 3.0 in your /usr/local. I'm guessing you had installed a version prior to 3.0.0-alpha3, which is the one required by the current version of gRPC.

I installed from HEAD of the github repo - https://github.com/google/protobuf - as it was yesterday. And later also performed the same install steps from the third_party subdir of the grpc repo in case it was linked to a different version.

Hmmm, that's as if it was linking against the 2.x version for some reason. We'll investigate.

If an user has two versions of protobuf library installed, it's likely that the "-lprotobuf" linker flags will be pointing to the wrong lib. Seems to me the right solution is to give the user an option to specify the exact location and name of the protobuf library to link with.

Hey @siddharthab, thanks for sharing this. I'm experiencing a very similar problem right now. How do you make sure that the system default protobuf packages have been removed?  For me "protoc --version" produces "libprotoc [new version]", but I'm not sure if it's a good enough indicator that the old version has been deleted.

I believe something like ldconfig can help you figure out which directories have protobuf library installed and in which order they are considered.

Due to semantic versioning with protobuf, it's impossible to really have more than one version of protobuf installed.


Fix on table of contents

Although I do see the problem; it's worth fixing but in a way that keeps the 1s :-)

Okey! Thank you and sorry for the disturbances.


Is the source still ud

Planning to paste this, is it undetected? thank you

#83 #77

No, as soon as you press enter after git clone your house will turn into flames and literally Hitler will appear and try to gas you


Add guide about local SSH access?

Not entirely sure we should support this but balena devices can be accessed over local SSH using the instructions here https://www.balena.io/docs/learn/manage/ssh-access/
We could potentially write a guide on how to do this for more advanced users

I definitely disagree about documenting this. This is a recipe for disaster.

Ok closing


add network topology to component/application definitions

Add firewall rules to image resource.  The rules schema must be consistent with the information captured in the NetworkService resource for firewalls.

Ideally the implementation should be a reference to a NetworkService resource rather than adding the information directly to the image.

In the most recent CYCLONE F2F, we discussed in more detail how we could facilitate the deployment and configuration of the WP5 network services. Generally, it would be helpful if SlipStream could provide the full network topology for an application.  For components, this would require knowing what service ports are required.  For applications, the allowed connections between components would have to be specified, ideally with some relative QoS. Interactions with external services and clients might need to be represented as placeholder "nodes" within the application to have a complete overview of the network topology.

Won't be implemented.


Missing data file for tests: kafka_011.log

Looking at the failing tests it seems that a data file is missing.
The failing test is in directory jocko/protocol.
go test -v produces:
TestRecordBatchDecodeKafka011: record_batch_test.go:14: open kafka_011.log: no such file or directory
Any chance to add the file?

I searched all the originals forks for that file and couldn't find yet. Since *.log is in the .gitignore since initial commit I believe it is lost.
One can probably nuke that test.

Ouch!
Will delete the whole 'report_batch_test.go' file then.

Here is the missing file, that test wasn't suppose to have a dependency against a file, my idea was to include the []byte of the content inside the test.
The file is a copy of a log file generated by kafka <IP_ADDRESS> and was a good test targer.
kafka_011.log

Thanks @snichme! If you want :sweat_smile: to do it I just commented the test instead of removing it.


Add unary minus operator?

Currently
var p = Pressure.FromBar(10);
// var minusP = -p; // Does not compile
var minusP = p * -1; // Workaround

I noticed you are using this workaround yourself, e.g. in Extensions.Abs, so I'm pretty sure I didn't miss something this time.
Would probably need to define something along the lines of (following your way of defining the regular operator-)
public class UnknownUnit
{
    // ...

    public static UnknownUnit operator -(UnknownUnit right)
    {
        return -right?.BaseUnit;
    }
}

and
public class BaseUnit
{
    // ...

    public static UnknownUnit operator -(BaseUnit right)
    {
        if ((object)right == null)
        {
            return null;
        }

        try
        {
            if (right.Unit.IsSIUnit())
            {
                return new UnknownUnit(-right.NEWValue, right.Unit);
            }

            return new UnknownUnit(-right.ConvertValueInto(right), right.Unit);
        }
        catch (OverflowException)
        {
            return new UnknownUnit(double.PositiveInfinity, -right.Unit);
        }
    }
}

What do you think?

I think it is a good idea!
I didn't even know I could use the -operator that way but I like it!
I'll add it!

The above code is untested to please check, but I'm pretty sure I did something like this a couple of years ago

Working as expected after recent updates


Object initialization depth

Hi,
For complicated objects with big amount of fields, when fields also have big amount of fields, I think, good to have any option which will control depth of initialization. For example, when set depth 2, initialized only Root object and his fields, but fields of fields are null.
By default this option might be turned off.

Guys what do you think? If you are agree with it, I can contribute, this changes are important for me

I think this is a good idea.

Hi,
Indeed, this is a good idea. You are welcome to contribute to the project!
Kind regards
Mahmoud

@sansherbina I'm closing this issue since your PR was merged.
Many thanks!
Kind regards
Mahmoud


Add description for setting up a FreeBSD host

Before sending a pull request, please review Contribution Guidelines:
https://github.com/google/syzkaller/blob/master/docs/contributing.md

Codecov Report

Merging #1025 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1025   +/-   ##
=======================================
  Coverage   67.53%   67.53%
=======================================
  Files         114      114
  Lines       20425    20425
=======================================
  Hits        13794    13794
  Misses       5985     5985
  Partials      646      646

Continue to review full report at Codecov.

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


This is in the 'on-premise' section of documentation but all links take me to dataverse solutions

[Enter feedback here]

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

ID: d070b5ae-5925-bda8-3c8e-294db6865dd7
Version Independent ID: 1bd1afe5-c922-a521-e50a-161eb9539857
Content: Web API Samples (Developer Guide for Dynamics 365 Customer Engagement (on-premises))
Content Source: ce/customerengagement/on-premises/developer/webapi/samples.md
Product: d365ce-op
GitHub Login: @phecke
Microsoft Alias: pehecke

Thanks for your comment, @ClintWoods. This issue has been assigned to the doc author for review.

@ClintWoods  We are consolidating our documentation by removing duplicate docs. Documentation for D365 CE on-premise that is duplicated in the Power Apps doc repo is being removed and links to the Power Apps docs added.
Sorry for the confusion.


Add features and their status

What type of PR is this?
/kind documentation
What this PR does / why we need it:
Added a table of features and their status on the README.md to make it easier for people new to the project.
Which issue(s) this PR fixes:
None
Does this PR have test?
N/A
Special notes for your reviewer:
None
Does this PR introduce a user-facing change?
NONE

@JAORMX @saschagrunert @jhrozek Please share your thoughts. Are there any other features we should be calling out?

Codecov Report

Merging #652 (0d66557) into master (c5b3463) will increase coverage by 1.90%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #652      +/-   ##
==========================================
+ Coverage   43.38%   45.28%   +1.90%
==========================================
  Files          31       31
  Lines        1920     1963      +43
==========================================
+ Hits          833      889      +56
+ Misses       1040     1028      -12
+ Partials       47       46       -1

/test pull-security-profiles-operator-test-e2e

@saschagrunert @JAORMX @jhrozek PTAL

/test pull-security-profiles-operator-test-e2e


In preprocess2, nested subtopics of a branch-filtered submap are duplicated/unresolved

Expected Behavior
I have a submap that is included under two branch-filtered conditions:

If the submap contains a topic that has nested subtopics, I expect only two HTML topic files in the output directory (the topic filtered for each condition):
$ ls -1 out/topic*.html
out/topic-1.html
out/topic.html

Actual Behavior
In the DITA-OT 4.2-prerelease with preprocess2, some extra HTML topic files are created:
$ ls -1 out/topic*.html
out/topic-1.html
out/topic_2.html
out/topic_3.html
out/topic_4.html
out/topic.html

and the index.html file has unresolved references to intermediate hashed file names:

Product A

Subtopic 1

Subtopic 2

Subtopic 2 Subsubtopic

Subtopic 3

Product B

Subtopic 1

Subtopic 2

Subtopic 2 Subsubtopic

Subtopic 3

Possible Solution
Not sure.
Steps to Reproduce

Download and extract the following testcase:
4380.zip
Run the following command:
dita -i map.ditamap -f html5 -Dforce-unique=true

Environment

DITA-OT version: 4.2-prerelease
Operating system and version: Linux
How did you run DITA-OT? dita command
Transformation type: HTML5

The key here is force-unique use with branch filtering.

Can the priority for this be raised? It is a blocking issue for our content.

I confirmed the fix for this on our production content - thank you!
During testing, I found another issue and filed #4429.


[Documentation] Add instruction to not use CI skipping mechanisms

@homu r+

:pushpin: Commit 9a95bb8 has been approved by segiddins

:hourglass: Testing commit 9a95bb8 with merge 8268b7c...

:sunny: Test successful - status


Allow edit of device types in console UI

Once a device type is created using the console, the only way to edit the attributes is by going to the raw data in the dynamodb table. It would be nice to have the ability to edit the device in the console UI.

Thank you for the suggestion. I have added it to the backlog.

We have done a complete refresh of the solution in v3.0.0. Device Types can be edited through the UI in the newest version.


Support for Node v20

Describe the bug
IBM Cloud functions has jumped from supporting Node 18 and gone straight to Node 20 as a supported runtime, however IBM Cloudant SDK  "@ibm-cloud/cloudant": "^0.7.1"  has not yet been updated to include Node.js 20 support.
When I install the package, I am getting the below warning message, however I do see that I can use the SDK and establish a Cloudant successfully.
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE  package: '<EMAIL_ADDRESS>npm WARN EBADENGINE  required: { node: '^16 || ^18' },
npm WARN EBADENGINE  current: { node: 'v20.8.0', npm: '10.1.0' }
npm WARN EBADENGINE }

Is it safe to disregard these warning messages and assume that the SDK will continue to work properly with Cloudant ?
Must gather (please complete the following information):

SDK Version ["@ibm-cloud/cloudant": "^0.7.1"]
Node.js Version [e.g. Node.js 20]
Name of service that you're trying to use (if applicable)
Name of operation that you're trying to invoke (if applicable)

We are not officially supporting Node 20 until Oct 24 when it'll become an active LTS, but there are no known issues with this node version and our sdk 0.7.1 was tested with it too, so it shouldn't be a game stopper, just precede with caution.


Fix PermissionsBuilder:AddPermission return value

Before the return type was PermissionsBuilder?, preventing method chaining. This PR fixes that.

epic


Not comptible with Python 3.12

Installed Python 3.12.  Received error pypfopt not installed.
Did a pip install but that failed on several sub routines
Expected behavior
Module runs as expected with no errors
Code sample
import pandas as pd
from pypfopt.discrete_allocation import DiscreteAllocation, get_latest_prices
Operating system, python version, PyPortfolioOpt version
e.g WIN11 Pro, Build 22621.2428, python 3.12, PyPortfolioOpt 1.5.5
Additional context
Add any other context about the problem here.
pip.exe install PyPortfolioOpt
Collecting PyPortfolioOpt
Using cached pyportfolioopt-1.5.5-py3-none-any.whl (61 kB)
Collecting cvxpy<2.0.0,>=1.1.19 (from PyPortfolioOpt)
Using cached cvxpy-1.4.1.tar.gz (1.6 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: numpy<2.0.0,>=1.22.4 in c:\users\bill\appdata\local\programs\python\python312\lib\site-packages (from PyPortfolioOpt) (1.26.1)
Requirement already satisfied: pandas>=0.19 in c:\users\bill\appdata\local\programs\python\python312\lib\site-packages (from PyPortfolioOpt) (2.1.1)
Requirement already satisfied: scipy<2.0,>=1.3 in c:\users\bill\appdata\local\programs\python\python312\lib\site-packages (from PyPortfolioOpt) (1.11.3)
Collecting osqp>=0.6.2 (from cvxpy<2.0.0,>=1.1.19->PyPortfolioOpt)
Using cached osqp-0.6.3.tar.gz (228 kB)
Installing build dependencies ... error
error: subprocess-exited-with-error
× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> [133 lines of output]
Collecting oldest-supported-numpy
Obtaining dependency information for oldest-supported-numpy from https://files.pythonhosted.org/packages/94/9a/756fef9346e5ca2289cb70d73990b4c9f25446a885c1186cfb93a85e7da0/oldest_supported_numpy-2023.8.3-py3-none-any.whl.metadata
Using cached oldest_supported_numpy-2023.8.3-py3-none-any.whl.metadata (9.5 kB)
Collecting setuptools>=40.8.0
Obtaining dependency information for setuptools>=40.8.0 from https://files.pythonhosted.org/packages/bb/26/7945080113158354380a12ce26873dd6c1ebd88d47f5bc24e2c5bb38c16a/setuptools-68.2.2-py3-none-any.whl.metadata
Using cached setuptools-68.2.2-py3-none-any.whl.metadata (6.3 kB)
Collecting wheel
Obtaining dependency information for wheel from https://files.pythonhosted.org/packages/b8/8b/31273bf66016be6ad22bb7345c37ff350276cfd46e389a0c2ac5da9d9073/wheel-0.41.2-py3-none-any.whl.metadata
Using cached wheel-0.41.2-py3-none-any.whl.metadata (2.2 kB)
Collecting setuptools_scm>=6.2
Obtaining dependency information for setuptools_scm>=6.2 from https://files.pythonhosted.org/packages/0e/a3/b9a8b0adfe672bf0df5901707aa929d30a97ee390ba651910186776746d2/setuptools_scm-8.0.4-py3-none-any.whl.metadata
Using cached setuptools_scm-8.0.4-py3-none-any.whl.metadata (6.4 kB)
Collecting qdldl
Using cached qdldl-0.1.7.post0.tar.gz (70 kB)
Installing build dependencies: started
Installing build dependencies: finished with status 'done'
Getting requirements to build wheel: started
Getting requirements to build wheel: finished with status 'done'
Installing backend dependencies: started
Installing backend dependencies: finished with status 'done'
Preparing metadata (pyproject.toml): started
Preparing metadata (pyproject.toml): finished with status 'done'
Collecting numpy (from oldest-supported-numpy)
Obtaining dependency information for numpy from https://files.pythonhosted.org/packages/32/95/908d0caa051beae4f7c77652dbbeb781e7b717f3040c5c5fcaed4d3ed08f/numpy-1.26.1-cp312-cp312-win_amd64.whl.metadata
Using cached numpy-1.26.1-cp312-cp312-win_amd64.whl.metadata (61 kB)
Collecting packaging>=20 (from setuptools_scm>=6.2)
Obtaining dependency information for packaging>=20 from https://files.pythonhosted.org/packages/ec/1a/610693ac4ee14fcdf2d9bf3c493370e4f2ef7ae2e19217d7a237ff42367d/packaging-23.2-py3-none-any.whl.metadata
Using cached packaging-23.2-py3-none-any.whl.metadata (3.2 kB)
Collecting typing-extensions (from setuptools_scm>=6.2)
Obtaining dependency information for typing-extensions from https://files.pythonhosted.org/packages/24/21/7d397a4b7934ff4028987914ac1044d3b7d52712f30e2ac7a2ae5bc86dd0/typing_extensions-4.8.0-py3-none-any.whl.metadata
Using cached typing_extensions-4.8.0-py3-none-any.whl.metadata (3.0 kB)
Collecting scipy>=0.13.2 (from qdldl)
Obtaining dependency information for scipy>=0.13.2 from https://files.pythonhosted.org/packages/f4/ce/be0b376ba6069f3f8ba240aa532a374733447453c93582d4c474effdde21/scipy-1.11.3-cp312-cp312-win_amd64.whl.metadata
Using cached scipy-1.11.3-cp312-cp312-win_amd64.whl.metadata (60 kB)
Using cached oldest_supported_numpy-2023.8.3-py3-none-any.whl (4.8 kB)
Using cached setuptools-68.2.2-py3-none-any.whl (807 kB)
Using cached wheel-0.41.2-py3-none-any.whl (64 kB)
Using cached setuptools_scm-8.0.4-py3-none-any.whl (42 kB)
Using cached numpy-1.26.1-cp312-cp312-win_amd64.whl (15.5 MB)
Using cached packaging-23.2-py3-none-any.whl (53 kB)
Using cached scipy-1.11.3-cp312-cp312-win_amd64.whl (43.7 MB)
Using cached typing_extensions-4.8.0-py3-none-any.whl (31 kB)
Building wheels for collected packages: qdldl
Building wheel for qdldl (pyproject.toml): started
Building wheel for qdldl (pyproject.toml): finished with status 'error'
error: subprocess-exited-with-error
    Building wheel for qdldl (pyproject.toml) did not run successfully.
    exit code: 1

    [73 lines of output]
    running bdist_wheel
    running build
    running build_ext
    Traceback (most recent call last):
      File "<string>", line 81, in build_extensions
      File "C:\Users\Bill\AppData\Local\Programs\Python\Python312\Lib\subprocess.py", line 466, in check_output
        return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Users\Bill\AppData\Local\Programs\Python\Python312\Lib\subprocess.py", line 548, in run
        with Popen(*popenargs, **kwargs) as process:
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Users\Bill\AppData\Local\Programs\Python\Python312\Lib\subprocess.py", line 1026, in __init__
        self._execute_child(args, executable, preexec_fn, close_fds,
      File "C:\Users\Bill\AppData\Local\Programs\Python\Python312\Lib\subprocess.py", line 1538, in _execute_child
        hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    FileNotFoundError: [WinError 2] The system cannot find the file specified

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "C:\Users\Bill\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 353, in <module>
        main()
      File "C:\Users\Bill\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 335, in main
        json_out['return_val'] = hook(**hook_input['kwargs'])
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Users\Bill\AppData\Local\Programs\Python\Python312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 251, in build_wheel
        return _build_backend().build_wheel(wheel_directory, config_settings,
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\build_meta.py", line 434, in build_wheel
        return self._build_with_temp_dir(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\build_meta.py", line 419, in _build_with_temp_dir
        self.run_setup()
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\build_meta.py", line 341, in run_setup
        exec(code, locals())
      File "<string>", line 113, in <module>
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\__init__.py", line 103, in setup
        return distutils.core.setup(**attrs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\core.py", line 185, in setup
        return run_commands(dist)
               ^^^^^^^^^^^^^^^^^^
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\core.py", line 201, in run_commands
        dist.run_commands()
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 969, in run_commands
        self.run_command(cmd)
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\dist.py", line 989, in run_command
        super().run_command(command)
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 988, in run_command
        cmd_obj.run()
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\normal\Lib\site-packages\wheel\bdist_wheel.py", line 364, in run
        self.run_command("build")
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\cmd.py", line 318, in run_command
        self.distribution.run_command(command)
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\dist.py", line 989, in run_command
        super().run_command(command)
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 988, in run_command
        cmd_obj.run()
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\command\build.py", line 131, in run
        self.run_command(cmd_name)
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\cmd.py", line 318, in run_command
        self.distribution.run_command(command)
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\dist.py", line 989, in run_command
        super().run_command(command)
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 988, in run_command
        cmd_obj.run()
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\command\build_ext.py", line 88, in run
        _build_ext.run(self)
      File "C:\Users\Bill\AppData\Local\Temp\pip-build-env-3an8bra3\overlay\Lib\site-packages\setuptools\_distutils\command\build_ext.py", line 345, in run
        self.build_extensions()
      File "<string>", line 83, in build_extensions
    RuntimeError: CMake must be installed to build qdldl
    [end of output]

    note: This error originates from a subprocess, and is likely not a problem with pip.
    ERROR: Failed building wheel for qdldl
  Failed to build qdldl
  ERROR: Could not build wheels for qdldl, which is required to install pyproject.toml-based projects

  [notice] A new release of pip is available: 23.2.1 -> 23.3
  [notice] To update, run: python.exe -m pip install --upgrade pip
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.

hi @BeachGuy007, your log said "RuntimeError: CMake must be installed to build qdldl". Please check the CMake, it's not an error with pypfopt.
see also https://github.com/robertmartin8/PyPortfolioOpt/issues/525


select all / copy all

how can i select and copy all output ?

I assume you can do that with tmux regardless of the terminal being used.
According to this cheat-sheet, you need to:

Start or attach to a tmux session with tmux or tmux a
Switch tmux to vim-mode: tmux setw -g mode-keys vi
(Optional) Save the setw -g mode-keys vi part in  the ~/.tmux.conf config file
Open tmux in copy mode by typing Ctrl+b followed by [ key
Press Space to start selection, then move to the begining of output by pressing gg, and then copy into the tmux buffer with Enter
You can paste the contents of the buffer by pressing Ctrl+b followed by ]

umm.. thanks for the idea .. but really we need something simple like ctrl+a or right click > select all

Once you set this up, this is really simple. Alternatively, you can select everything by dragging the selection to the top of the terminal and then copying everything by either right-clicking or typing Ctrl+Shift+C


[PSUPCLPL-13377] - Guide For OAuth2 authorization in Kubernetes

Description

We use kube-bench to make KubeMarine CIS aligned. Some of the improvements do not support in source code and could be applied manually.
The suggested improvements have be reproduced
Some additional observation in CIS scan which needs to be added in the hardening guide

Solution

Update the guide (hardening) in KubeMarine documentations

How to apply
Not applicable
Test Plan
After applying the changes mentioned in this PR, run the kube-bench scan and verify result for identifier 3.1.2

Login to one of the master node of the cluster on which it is going to be tested
Download kube-bench_0.6.17_linux_amd64 package from https://github.com/aquasecurity/kube-bench
Install downloaded pkg using sudo dpkg -i kube-bench_0.6.17_linux_amd64.deb
Run scan using command - kube-bench and check for identifier 3.1.2

Checklist

[x] I have made corresponding changes to the documentation
[x] Integration CI passed
[x] There is no merge conflicts

Hi @pranavcracker!
Let's make it more generic. Basically we need only common advice witch services could be used to prevent potential secure issues according CIS warnings.

@shmo1218  pls update


add inception + cifar10 for nightly test

example results:
http://ci.dmlc.ml/job/mxnet-mli/lastCompletedBuild/testReport/(root)/test_all/

@piiswrong @pluskid now we can push heavy jobs to jenkins

@antinucleon looks like our results are not so stable http://ci.dmlc.ml/job/mxnet-mli/lastCompletedBuild/testReport/(root)/test_all/03_Python_Inception_Cifar10/history/

probably need more epochs.


fix: remove hardcoded repository from edit link

This PR fixes the hardcoded link for the "edit this page" feature.

Hello, the theme.value.editLink?.repo can set with branch name such as vuejs/docs#branch-name, In this case, ${repo} will be vuejs/docs#branch-name, the url will be error. So, you need get name before #:
  const repo = theme.value.editLink?.repo || 'vuejs/docs'
  const branch = repo.match(hashMatch)?.[1] || 'main'
  const repoName = repo.match(hashMatch) ? repo.split('#')[0] : repo
  return `https://github.com/${repoName}/edit/${branch}/src/${page.value.relativePath}`

Good catch thanks!


Suggest having an "Allow transition to only" States instead of Restrict

I have discussed this before with the developer who worked on this feature. I was just wondering if there is an Action in progress for Allowing a Transition to only specific states. With Restriction, you have to create a lot of Actions. I think it is limited to 10-15 Actions, which if you have a lot of states, this function will not work for you and is very cumbersome to setup.

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

ID: dbe3c173-e8cc-7172-7331-11c3fc0f9724
Version Independent ID: ee6e18ae-8ec3-613d-3644-35f1f2199e77
Content: Restrict workflow transitions, apply rules to workflow states - Azure DevOps Services
Content Source: docs/organizations/settings/work/apply-rules-to-workflow-states.md
Product: devops
Technology: devops-agile
GitHub Login: @KathrynEE
Microsoft Alias: kaelli

@salipour1105 -  Thank you for your feedback. There is no such action on the roadmap for Azure Boards. As people use the Kanban board to update the State of work items, allowing any-to-any tranisitions was deemed best, particularly if someone made a mistake in advancing a state. You can always suggest a feature on our Developer Community page.


OneDrive for Business API search: cannot search by filename using filter & search results missing property "path"

I have two problems:

I can not search by filename using the filter function, such as "?q=searchwrod&name eq 'searchword'".
The results miss the property "path" contained in property "parentReference".

In #207 it is mentioned that path is not present in the parentReference object in the search response. This was from October 2015 and I was hoping it was resolved by now... it appears that is it not.
Any chance we can get an update on this @rgregg :)
Thanks!

@danjarvis, Thank you to tell me this. I'll have a try to check it.

As part of a repository clean up effort we are closing older issues. If this issue remains, please: open a new issue, reference this issue, and provide any additional details that may help in resolution. Thank you for your understanding as we work to improve our responsiveness.


Change in UI

Description
The UI of the sign up page needs to be made more attractive with better background color ,filter and few enhancement tools.
Screenshots

Additional information
This page needs a better style, Formal and attractive fonts.
Please assign me this task under GSSOC'23

hi @DhyanShah22 if you have any design can you please share. It would be easy to visualize the changes.


Enhance UI

To enhance the application a more sophisticated UI should be implemented

Finished in https://github.com/alexanderwe/checksum-validator/commit/77301c00edd83800b62dd1dee4a6aa323653ff1d


Initial global custom scrollbar implementation...

May be heavy, requires Win32 and requires restart when activated.

thanks www.movied.org


[WIP]Document CNI version-related breaking change

This is a Bug Report

Problem:
As a user upgrading to Kubernetes v1.24 GA I must be aware of the following information:

(No, really, you MUST read this before you upgrade) Before you upgrade to Kubernetes 1.24, if you use a CNI network plugin that complies with Container Network Interface (CNI) versions earlier than v1.0.0 and you plan to use any of the following container runtimes, you must specify the CNI version as described in Declaring the CNI version of your plugin. Otherwise, your network will break.
For Kubernetes v1.24 GA, when you upgrade one of the following container runtimes, safely drain (cordon) your node, upgrade your CNI plugins to the latest versions, and confirm that your CNI config files specify/match the correct versions for your plugins. Ensure that you have installed the latest version (v1.0.0 or later) of the CNI loopback plugin.

Proposed Solution:
Publish release note, doc topics, and blog posts for the CNI version-related breaking change described in https://docs.google.com/document/d/1zwKls4-NUxkpak-591ghRaGEKdjp8BEdXD8YpL_zdIk/edit?usp=sharing
Release note: Lucas Dwyer
Release blog: @mickeyboxell
Feature blog: @rolfedh
Procedure and Troubleshooting topics: @Rolfe Dlugy-Hegwer
Page to Update:
https://kubernetes.io/... TBD

Kubernetes v1.24 GA

/assign @rolfedh @mickeyboxell

FYI @nate-double-u @mikebrow

/cc @JamesLaverack @sftim @reylejano

/milestone 1.24

/triage accepted

(looks like i can't triage, sorry for the noise)

/wip

/remove-kind bug
/priority important-soon
Should we transfer this to the Kubernetes repo (k/kubernetes)? Several of the actions here are not directly related to the documentation.
To transfer it, an org member can execute the Prow command /transfer kubernetes by making a GitHub comment containing just the command text.

I agree, k/kubernetes is more appropriate

/transfer kubernetes


Add Luftdaten (sensor.community) endpoint for Urban

@lowfatcode is this still something we should add?

I had some (old) Enviro code posting data into Sensor.Community if that helps with this: https://gist.github.com/helgibbons/725710e28ab6523379092303f1834a70
I did notice that the particulate readings were considerably higher from the Enviro Urban than from the Enviro+ HAT on the other side of the house (could be a difference between the PM5003 and the PMSA003I sensors!), so we might need to consider looking at calibration (or applying some averaging) if we're going to make Sensor.Community an endpoint.


Pagination can display the page size and select a different one

Describe the feature you'd like
I'd like the Pagination component to optionally display the page size and allow to change this value selecting it from a given set of values.
In order to select the wanted page size a SelectList would be used:

Reasoning
The reason why I created this issue is because in GAME we want to allow our users to select how many quests they want to see in the quest list from a given set. The Pagination is being used there but it currently lacks this feature.
New API
I'd add the following props
interface PaginationProps {
    /**
     * Will display the page size on the left.
     */
    showPageSize?: boolean;
    /**
     * Page sizes to choose from.
     */
    pageSizes?: {label: string, value: string}[];
    ...
}

Sounds like a good idea! I would like to know what the usecase/urgency is though, are there instances where the user needs to change the page sizes?
While this is a nice to have, what I personally struggle with more is switching to the appropriate page. If there was an input box that we can type the name of the page we would like to go to in, I feel like that would solve some of my frustrations 😅 but yeah maybe that's for another issue :)

I've added the reasoning behind the issue on the description, I'd say it's quite urgent since it's something that we expect to have by the end of this week / beginning of the next one. I've started working on it already.
About switching to the appropriate page I think we'd need design input, maybe @rafael-sepeda could help us out here.

@lloydaf to be able to jump to a specific page we need to enlarge the Pagination component and add pages into it. We can do that in addition. I can prepare a draft/design for this as well. But this might be done in a separate story.
@martimalek since you decided to create a component for Wave for this pattern I will document this a bit better.

@rafael-sepeda I will extend the current Pagination but without creating a separate component, not sure if that's what you meant.

After further pondering on the API I'm thinking that maybe showPageSize is not a good name for the prop that regulates if the SelectList on the left with page sizes will be displayed or not, since the actual page size will be displayed no matter what below the buttons to change page.
Now I'm thinking that maybe just passing pageSizes is enough to control whether to show the SelectList or not as long as it is well documented in the prop description. I'd like more opinions on this 🙏🏽

pageSize must be passed to the component as prop so I don't think it's a good idea.
But I'm not sure what is the benefit of adding the whole thing to the Pagination component.
Can't it be implemented on the side by implementing a SelectList that controls a state for the pageSize and pass it to the Pagination?
const [pageSize, setPageSize] = useState(PAGE_SIZE)

<>
  <SelectList onChange={setPageSize} options=[10,20,50]/>
  <Pagination pageSize={pageSize}/>
<>

This should be possible if I'm not wrong, and I think it's better to control the selector from the outside, instead of adding more concerns to Pagination.
But I'm open to changing my mind if you see value in this 😊

@div-Leo Yes it could be used separately. My reasoning behind adding it to Wave was because even though right now only my squad needs it in the future probably Rider Automation and even Rider Incentives may need to implement this.
As for why adding it to the Pagination component that's because it's a very small and simple feature for a separate component and it's about changing the number of items for a page, so it would always be used next to Pagination.

It's true that they are bound together as they would handle the interaction with the pages in the table, but in all cases, we'd need to add another external state to pass to the Pagination component, which would be the one responsible for the state updates.
I'd need to see the implementation to see what's the trade-off between the gain in terms of saved code and the complexity we add to implement the pagination component.

@martimalek I added small additional documentation for the PageSize case.
https://www.figma.com/file/dTefUItBx5bfbxcCcMzMXm/Wave-DS?node-id=354%3A22716
let me know if anything is needed in addition.

@rafael-sepeda I think everything is there already, thanks a lot!


New WTH template generator & GitHub Action

I found two "bugs" with the generator that should be modified.

The "Home" link on all Solution-XX.md files in the Coach guide link to home page of the hack, not the TOC/Readme.md in the /Coach folder.
The generated Challenge files do not have a placeholder for the challenge title.  Right now, each one just says "Challenge XX" or "Challenge XX - Coach Guide".  It should have a placeholder for the challenge title.  This placeholder should be 'human readable' and end up in the generated files for the authors to replace.  For example: "Challenge XX - " or "Challenge XX -  - Coach Guide"

I recommend fixing #1. I can update #2 when I make a pass at updating the verbiage/content in the templates themselves.


Recompilation in development mode generates incorrect imports

Bug report

What is the current behavior?
We have an import from an ES module which is compiled correctly when webpack is started, but starts failing when changes are made in other files while webpack is running in watch mode: a warning is emitted about an import that was not found and the generated code stops working. When inspecting the output file, we can see that the expected individual import has been replaced by a (non-equivalent) import of the entire module where the import is from.
The problem first appeared for us when we upgraded date-fns from version 2.0.0-alpha7 to 2.0.0-alpha8, but we were able to construct a minimal reproduction project without any dependencies other than webpack itself.
If the current behavior is a bug, please provide the steps to reproduce.

Unzip the attached reproduction project: webpack-import-recompile-bug.zip
Run npm i and npm start
Observe that the initial compilation does not produce any warnings
While webpack is running, make any change to main.js (e.g. a comment line)
Observe that a warning is generated on require-me.js:

WARNING in ./src/require-me.js
4:16-26 "export 'default' (imported as 'myFunction') was not found in './my-module'
 @ ./src/require-me.js
 @ ./src/main.js

Now make any change to require-me.js (e.g. a comment line)
Observe that compilation succeeds again

The problem only appears when running in mode: "development", not "production". If sideEffects: false is removed from src/my-module/package.json, or if sideEffects: true is removed from webpack.config.js, the problem also disappears.

What is the expected behavior?
The compilation output remains consistent while webpack is running in watch mode, without warnings about missing imports appearing and disappearing when making unrelated changes. Our only workaround is to restart webpack, which increases our wait time from ± 5 seconds to more than 20 seconds after each change.

Other relevant information:
webpack version: 4.8.3
Node.js version: 8.9.4
Operating System: Windows 10
Additional tools: -

Can confirm all of the above.
Other relevant information:
webpack version: 4.8.3
Node.js version: 8.9.4
Operating System: MacOS 10.12 Sierra
Additional tools: -

Very good


clion 1.1

Thank you for the contribution. It was merged directly as 6873229a7d64c05bd2fc5f58591d7ca82c1d15da to keep commit history cleaner. Your contribution is still credited to you.


Update gates_per_clifford module and add unit test

Summary
close #356
This PR conflicts with #345 and #335
The best way of merging this PR is

[ ] merge #345 and rewrite docstring in this PR accordingly
[ ] merge this PR
[ ] merge #335 with unittest based on this PR

Details and comments
This PR includes following changes

deprecation warning for count_gates function
this function seems not to be used by other functions/classes except for gates_per_clifford.

deprecation warning for arguments of gates_per_clifford

qobj_list: it is difficult to create unittest for qobj input, thus this arg will be deprecated
clifford_length: this is array of Clifford number for each experiment. thus arg name should be plural.

integrate count_gates in gates_per_clifford

add unittest for gates_per_clifford only with QuantumCircuit input

Will it require to update the tutorials for RB, see e.g.
https://github.com/Qiskit/qiskit-iqx-tutorials/blob/master/qiskit/advanced/ignis/5a_randomized_benchmarking.ipynb

#345 is merged - it seems that now there are some minor conflicts.

Here is a list of tutorials that may be affected by the API updates:

4 tutorial notebooks for RB in: https://github.com/Qiskit/qiskit-iqx-tutorials/tree/master/qiskit/advanced/ignis
2 more RB notebooks in: https://github.com/Qiskit/qiskit-community-tutorials/tree/master/ignis
section 5.5. in the qiskit textbook: https://qiskit.org/textbook/ch-quantum-hardware/randomized-benchmarking.html


fix: build proper mask in unproject_layout

Fixes a bug reported by @NJManganelli in which an un-needed mask was not specialised to the appropriate valid_when value.
@NJManganelli can we vendor your reproducer parquet file for our tests?

TODO: move unproject_layout to Awkward.

@NJManganelli does this fix #472 as well? I assume not.

@agoose77
Indeed this fixes the issue from the slack convo; issue 472 remains and still raises the same CuPy buffers error message
Cheers!

And yes, feel free to add that file into the test cauldron!


New draft: Open science and open science

I have just posted a new draft post titled Open science and open science, which results from this comment.
@corinalogan - it's the post I mentioned during today's OpenConCam lunch meeting - I added a reference to the #OpenGlobalSouth thread you reminded me of.
@cbahlai - if you have time, I would be happy if you provide some feedback in this issue. Or, if you prefer, you could comment once it is published. And it you don't have time, not worries, of course. Thank you for initiating this reflection.

This is fantastic- I'll see if I can dig deeper in a bit, but this, I think, will help people feel heard and move forward in a positive direction

Nice work @lgatto! I would be really excited if OpenCon Cambridge had this as the theme this year.

Thank you both for your replies. I have published the post now.


Archive  cloud-platform-maintenance-pages repository

User Need
As a (type of user)
I want (some action)
so that (some result)
Value
Functional Requirements:

Non-Functional Requirements:

Acceptance Criteria:

Notes:

Duplicate


Limit the number of pending requests

Accept requests immediately and return 500 if the server is too busy.

I just implemented this in a fork, would you like me to open a pull request?

Yeah, sure. I was just toying around with the idea - so far, no one has requested this - but I'd be interested in an implementation.

I just took a look at your implementation. It's pretty straightforward, similar (conceptually) to what I was thinking about. Do you have any way of asserting that it works?

After reviewing your implementation, I think I'd rather move the logic out of RestServer class, and instead implement something it like this:
public static class ThreadPoolManager
{
    public static int GetMaxAvailableThreads()
    {
        int maxWorkerThreads;
        int maxIoThreads;
        ThreadPool.GetMaxThreads(out maxWorkerThreads, out maxIoThreads);

        return maxWorkerThreads;
    }

    public static void SetMaxAvailableThreads(int threadCount)
    {
        int maxWorkerThreads;
        int maxIoThreads;
        ThreadPool.GetMaxThreads(out maxWorkerThreads, out maxIoThreads);

        int minWorkerThreads;
        int minIoThreads;
        ThreadPool.GetMinThreads(out minWorkerThreads, out minIoThreads);

        ThreadPool.SetMaxThreads(threadCount <= minWorkerThreads ? minWorkerThreads : threadCount, maxIoThreads);
    }

    public static bool HasAvailableThreads()
    {
        int availableWorkerThreads;
        int availableIoThreads;
        ThreadPool.GetAvailableThreads(out availableWorkerThreads, out availableIoThreads);

        return availableIoThreads > 0;
    }
}

And then the property can be as simple at this:
public int Connections
{
    get { return ThreadPoolManager.GetMaxAvailableThreads(); }
    set { ThreadPoolManager.SetMaxAvailableThreads(value); }
}

And in the RestServer.ContextReady method:
if (!ThreadPoolManager.HasAvailableThreads())
{
    context.Response.SendResponse(HttpStatusCode.ServiceUnavailable, "");
}
else
{
    ThreadPool.QueueUserWorkItem(Router.Route, context);
}

But I think I'd also like a toggle around this behavior, so that it has to be enabled intentionally.

@stevelong00 Have you found this to be useful? Grapevine 5 is in beta (https://github.com/scottoffen/grapevine), and I'm debating whether or not to pull this feature in. Thoughts?


PR view for a branch still opens after PR branch is deleted and recreated with different contents

Create a branch off main in Remote Repos and use it to create a PR
Make some commits to main
Delete the branch (e.g. because PR was resolved)
Create a branch with the same name in Remote Repos
:bug: the PR view for the merged PR appears

My expectation in this context is that we do not attempt to open the PR view for a branch by default if the associated PR has already been merged. It should still be possible to get to the PR view though.

By default we no longer show the active PR view for merged PRs now.


Generify PostAggregator

If the generic parameter is called T, the return type of compute() should be T and the return type of getComparator() should be Comparator<? super T>.
Although PostAggregator is an ExtensionPoint this should be a compatible change, because generics in Java were designed to support compatible transition.

Maybe do the same for AggregatorFactory.combine and AggregatorFactory.getComparator.


Need Ability to Represent an Email System and Email System Facet Class and Properties

Background
In the realm of cyber investigations, accurately capturing the state of an email within its service environment is crucial. Currently, UCO provides detailed structures for email content in observable:EmailMessageFacet, but UCO lacks specific attributes that reflect an email's system-level status. Introducing observable:EmailSystem and observable:EmailSystemFacet will enable a richer representation of these system-level properties, enhancing analysis capabilities in cyber forensic investigations.
With the introduction of the observable:EmailSystemFacet class in UCO, we achieve a more detailed and nuanced representation of email-related concepts for cyber forensic investigators and analysts. This matters because it enables these professionals to access critical system-level information about emails, such as whether they are archived, auto-forwarded, flagged, or read. Such information is pivotal in understanding the behavior and intent of users within a cyber investigation.
Requirements
Define observable:EmailSystem as a new class in UCO.
Define observable:EmailSystemFacet as a new class in UCO to encapsulate system-level email attributes.
Requirement 1
Include properties within observable:EmailSystemFacet: IsArchived, IsAutoForwarded, IsFlagged, IsFlaggedSpam, IsForwarded, IsRead.
Requirement 2
I think we need to integrate observable:EmailSystemFacet with observable:EmailMessageFacet to link email content attributes and system-level properties. I'm not exactly sure how to do this so need some assistance. It seems to me that Email Systems contain Email Messages.
Risk / Benefit analysis
Benefits
Provides a comprehensive view of an email's status within its system, crucial for detailed forensic analysis.
Enhances the granularity and accuracy of email-related data representation in UCO.
Risks
Implementation complexity and potential overlap with existing email-related classes.
Requires updates to existing UCO tooling and documentation.
Competencies demonstrated
Enhanced ability to analyze and interpret the status and handling of emails in cyber investigations.
Here's an example SPARQL query that searches for encrypted and auto-forwarded emails from<EMAIL_ADDRESS>to<EMAIL_ADDRESS>in the year 2023, using the proposed observable:EmailSystemFacet class and its properties:
PREFIX uco-observable: <https://ontology.unifiedcyberontology.org/uco/observable/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

SELECT ?email
WHERE {
  ?emailSystemFacet a uco-observable:EmailSystemFacet .
  ?emailSystemFacet uco-observable:IsAutoForwarded "true"^^xsd:boolean .
  ?email a uco-observable:EmailMessageFacet .
  ?email uco-observable:isEncrypted "true"^^xsd:boolean .
  ?email uco-observable:from<EMAIL_ADDRESS>.
  ?email uco-observable:to<EMAIL_ADDRESS>.
  ?email uco-observable:dateSent ?date .
  FILTER (YEAR(?date) = 2023).
}

Scenario
Vulnmaster has two email accounts: one for business<EMAIL_ADDRESS>and one personal (vulnmaster@personalemail.com). Some emails are encrypted and auto-forwarded from the business to the personal account in 2023. The auto-forwarding of encrypted emails may be indicative of an employee who is stealing intellectual property from the company.
Ground Truth Positive Question
"Which emails from Vulnmaster's business account were encrypted and auto-forwarded to his personal account in 2023?"
Expected Result
Emails that meet all the criteria: sent from the business account, received at the personal account, encrypted, and auto-forwarded within the year 2023.
Ground Truth Negative Question
"Are there any emails from Vulnmaster's personal account that were auto-forwarded to his business account in 2023?"
Expected Result
No emails should be returned, as the auto-forwarding is set only from the business to the personal account, not vice versa.
These questions help validate the implementation of the observable:EmailSystemFacet class and its properties, ensuring the ontology accurately captures and queries the specific email transaction scenarios.
Competency 1
Enhanced ability to analyze and interpret the status and handling of emails in cyber investigations.
Competency Question 1.1
How can investigators determine the system-level state (like read status, archival status) of an email in a given investigation?
Result 1.1
With observable:EmailSystemFacet, investigators can effectively determine these states, providing a deeper understanding of the email data within its service context.
Solution suggestion
Define observable:EmailSystemFacet as a new class in the UCO ontology.
Add the proposed properties to this class to capture various system-level states of emails.
@prefix observable: <https://ontology.unifiedcyberontology.org/uco/observable/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

observable:EmailSystem
    a owl:Class ;
    rdfs:label "EmailSystem"@en ;
    rdfs:comment "Represents the system-level information about an email service."@en ;
    sh:targetClass observable:EmailSystem ;
    .

observable:EmailSystemFacet
    a owl:Class, sh:NodeShape ;
    rdfs:subClassOf core:Facet ;
    rdfs:label "EmailSystemFacet"@en ;
    rdfs:comment "A grouping of properties unique to an email within an email service. If the same email is sent to two different accounts, the users of those accounts may further classify or group emails with these properties so that their corresponding analytics results are different among the two email systems and accounts."@en ;
    sh:property
        [
            sh:datatype xsd:boolean ;
            sh:path observable:IsArchived ;
        ],
        [
            sh:datatype xsd:boolean ;
            sh:path observable:IsAutoForwarded ;
        ],
        [
            sh:datatype xsd:boolean ;
            sh:path observable:IsFlagged ;
        ],
        [
            sh:datatype xsd:boolean ;
            sh:path observable:IsFlaggedSpam ;
        ],
        [
            sh:datatype xsd:boolean ;
            sh:path observable:IsForwarded ;
        ],
        [
            sh:datatype xsd:boolean ;
            sh:path observable:IsRead ;
        ]
    ;
    sh:targetClass observable:EmailSystemFacet ;
    .

Here is an initial working draft example UCO json-ld that I developed showing a search result.
{
  "@context": {
    "uco-observable": "https://ontology.unifiedcyberontology.org/uco/observable/",
    "xsd": "http://www.w3.org/2001/XMLSchema#"
  },
  "@id": "kb:compilation-1234abcd-5678-efgh-9101-ijklmnopqrst",
  "@type": "core:Compilation",
  "contains": {
    "@id": "kb:emailsystemfacet-2345bcde-6789-fghj-0123-klmnopqrstuv",
    "@type": "uco-observable:EmailSystemFacet",
    "isAutoForwarded": true,
    "emails": [
      {
        "@id": "kb:email-3456cdef-7890-ghij-1234-mnopqrstuvwxyz",
        "@type": "uco-observable:EmailMessage",
        "from"<EMAIL_ADDRESS>        "to"<EMAIL_ADDRESS>        "dateSent": "2023-01-15T08:30:00Z",
        "isEncrypted": true,
        "observable:bodyRaw": "VGhpcyBlbWFpbCBjb250YWlucyBzdG9sZW4gaW50ZWxsZWN0dWFsIHByb3BlcnR5Lg=="
      },
      {
        "@id": "kb:email-4567def0-8901-hijk-2345-opqrstuvwxyzabcd",
        "@type": "uco-observable:EmailMessage",
        "from"<EMAIL_ADDRESS>        "to"<EMAIL_ADDRESS>        "dateSent": "2023-02-20T10:45:00Z",
        "isEncrypted": true,
        "observable:bodyRaw": "SGVyZSBpcyBhbm90aGVyIGV4YW1wbGUgb2Ygc3RvbGVuIGludGVsbGVjdHVhbCBwcm9wZXJ0eS4="
      }
    ]
  }
}

@vulnmaster I can see the UCO-conceptual coverage gaps you noted in your motivating scenario, and agree they are worth representing.
First, I had thought UCO had a general concept for "System," e.g., a thing that would receive a system security plan in some organizations.  Doing a quick check over the observable namespace, it seems we don't have that.  If we did, EmailSystem would be a subclass of that.  observable:Application might fulfill this need?  Either it does, or a System is something that ties together several applications to provide some set of services.  I'm leaning towards thinking UCO should have System as a class.
I suspect EmailSystem should be able to be a subclass of something else in UCO, rather than a "top-under-Observable" class.
Second, I think I agree with the set of new properties you suggest would tie to individual email objects.  What's interesting to me is that some tie to emails only in the context of an email system.  Rather than trying to use (extend?) the core:context property that so far applies to only core:Events, I think this suggests a more foundational pattern of inherence.
Take an organizational Microsoft Exchange[^1] service with a user using a desktop Outlook client as an example.  A monitoring service might be watching the Exchange server regularly, find an email that raises a review alarm, and then an investigation of that user's laptop might find a corresponding email.  Those are two different email objects: One inheres in the Exchange service, one inheres in the Outlook application.
I could see the auto-forwarded property you suggested being the result of a rule stored in either a central email configuration, or of a client application.  The client application can store different rules (pattern:LogicalPatterns?) that the central service might completely unaware of.  What's not clear to me, just from own lack of experience analyzing email systems, is how auto-forwarding would be determined.  I'm not sure how forwarding is recorded in a client application vs. a central store, and I'm also not sure whether forwarding having happened due to matching a rule would be recorded.
I think it's worth representing the impact of inherence on the recorded metadata in an email.  What is the metadata that differs between an email on a client application vs. the central service?
I think it's also worth representing an email matching rule, so pattern:LogicalPattern can be further exercised.  In the context of email (at least GMail, by my recollection), a pattern can be defined, but only applied non-retroactively.  So, if "auto-forwarded" isn't recorded in a central email system or local application, determining "auto-forwarding" could require UCO to define a class of pattern-matches, likely something involving some subclass of core:Compilation.  It would be interesting noting that emails matching a rule do not appear to be affected (e.g., archived) by that rule, which could be an indication of the time the rule was created and/or applied.
I can see a few more focused proposals getting spun off of this one.
[^1]: Participation by NIST in the creation of the documentation of mentioned software is not intended to imply a recommendation or endorsement by the National Institute of Standards and Technology, nor is it intended to imply that any specific software is necessarily the best available for the purpose.
[^2]: We could hit a snag here because of the core:ContextualCompilation minimum-one-member rule.  ContextualCompilation feels like the right superclass of a pattern-match class, but a pattern can match nothing, and that would be worth representing.

I think, as currently spelled, Requirement 1 suggests a subclass of observable:Email is needed, to represent emails found in the context of system.  Those do not appear to be properties of an overall EmailSystem.  I don't think we can have a Requirements Review vote on this in January's meeting.

First, I had thought UCO had a general concept for "System," e.g., a thing that would receive a system security plan in some organizations.

I would too welcome and support such an addition.


When editing a token with cmd+click and you have a layer selected, that token is applied

When you cmd + click on a token to go to the Edit mode, we apply that as well.
Expected: We edit, but we do not apply it.
Note: fix on main

@six7 I tested it on windows again. I clicked the token with windows key. The video on this pr was recorded on windows. I'd like to know whether editing modal pop up or not. What I mean is while the token is applied, does the modal pop up? or only the token is applied without popping up the modal?

you're right, I think I just miscommunicated ctrl + click to do it, when windowskey + click does it. My bad!


[docs-only] Fix descriptions of envvars in the frontend service

Referencing: #5749
Fixing descriptions in the frontend service.

Make descriptions more clear what it is about.
Add notes where / are required respectively must not be set.
Align redis descriptions to what we have in other services.

Needs backport to stable-2.0

:boom: Acceptance test cs3ApiTests-ocis failed. Further test are cancelled...


feat: framegear add styles for light mode, make legible

What changed? Why?
I know, I know we should all be using darkmode all the time, but my machine is on auto, meaning light mode during the day. Right now lightmode in framegear makes most of the content illegible, and most importantly you can't read the URL that you're entering into the fetch frame input. I made simple changes that seem to be inline with the rest of the styling to support light mode, don't want to disrespect any plans you might have for implementing a design system etc, but this makes light mode usable for now.
This is what light mode looks like currently

This is what light mode looks like with changes

Notes to reviewers
How has it been tested?
Tested in Chrome Version 1.62.165 Chromium on MacOs 14.0 with light mode enabled, dark mode enabled and auto enabled.

I know, I know we should all be using darkmode all the time

You know I actually prefer light mode but I just went with what the designer gave me 😆
LGTM overall! The button link inside the top banner doesn't show up well, but we can add more comprehensive support in a future PR.


docs: DEV-4614: fix argument name in export.md

PR fulfills these requirements

[ ] Commit message(s) and PR title follows the format [fix|feat|ci|chore|doc]: TICKET-ID: Short description of change made ex. fix: DEV-XXXX: Removed inconsistent code usage causing intermittent errors
[ ] Tests for the changes have been added/updated (for bug fixes/features)
[x] Docs have been added/updated (for bug fixes/features)
[ ] Best efforts were made to ensure docs/code are concise and coherent (checked for spelling/grammatical errors, commented out code, debug logs etc.)
[ ] Self-reviewed and ran all changes on a local instance (for bug fixes/features)

Change has impacts in these area(s)
(check all that apply)

[ ] Product design
[ ] Backend (Database)
[ ] Backend (API)
[ ] Frontend

See https://github.com/HumanSignal/label-studio/issues/4614
Does this PR introduce a breaking change?
(check only one)

[ ] Yes, and covered entirely by feature flag(s)
[ ] Yes, and covered partially by feature flag(s)
[x] No
[ ] Not sure (briefly explain the situation below)

This PR is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in 10 days.


feat: analytics

This PR adds tracking using Google Analytics.

Closing due to unsufficient support from Google Analytics for our solution.

that phrase didn't age well, say sorry to our god google

Reopening as we got google analytics working!


Installation error: version `GLIBC_2.29' not found

I don't know if this is a bug in better-sqlite3 or in snap.
With the following minimal demo package:
/tmp/MtBBdL$ cat package.json
{
  "name": "demo",
  "version": "0.0.1",
  "main": "demo.js",
  "dependencies": {
    "better-sqlite3": "^7.0.1"
  }
}
/tmp/MtBBdL$ cat demo.js
const Database = require('better-sqlite3');

I get this error:
/tmp/jwbayK$ node demo.js
/tmp/jwbayK/node_modules/bindings/bindings.js:121
        throw e;
        ^

Error: /snap/core/current/lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /tmp/jwbayK/node_modules/better-sqlite3/build/Release/better_sqlite3.node)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1250:18)
    at Module.load (internal/modules/cjs/loader.js:1049:32)
    at Function.Module._load (internal/modules/cjs/loader.js:937:14)
    at Module.require (internal/modules/cjs/loader.js:1089:19)
    at require (internal/modules/cjs/helpers.js:73:18)
    at bindings (/tmp/jwbayK/node_modules/bindings/bindings.js:112:48)
    at Object.<anonymous> (/tmp/jwbayK/node_modules/better-sqlite3/lib/database.js:9:24)
    at Module._compile (internal/modules/cjs/loader.js:1200:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1220:10)
    at Module.load (internal/modules/cjs/loader.js:1049:32)

some system info:
Ubuntu 19.10, linux 5.3.0-53-generic x86_64
snap info node:  14/stable:        14.3.0                         2020-05-19 (2752) 30MB classic
Package: libc6                           Version: 2.30-0ubuntu2.1

For completeness, of course I executed npm install (which compiled better-sqlite from scratch it seems) before running the script. Here's its output:
/tmp/jwbayK$ npm install
npm WARN lifecycle The node binary used for scripts is /snap/bin/node but npm is using /snap/node/2752/bin/node itself. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with.

><EMAIL_ADDRESS>install /tmp/jwbayK/node_modules/better-sqlite3
> prebuild-install || npm run build-release

prebuild-install WARN install No prebuilt binaries found (target=14.3.0 runtime=node arch=x64 libc= platform=linux)
npm WARN lifecycle The node binary used for scripts is /snap/bin/node but npm is using /snap/node/2752/bin/node itself. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with.

><EMAIL_ADDRESS>build-release /tmp/jwbayK/node_modules/better-sqlite3
> node-gyp rebuild --release

make: Entering directory '/tmp/jwbayK/node_modules/better-sqlite3/build'
  TOUCH b857c92884e9598d609f6be182a2595df7a8e00f.intermediate
  ACTION deps_sqlite3_gyp_locate_sqlite3_target_extract_sqlite3 b857c92884e9598d609f6be182a2595df7a8e00f.intermediate
  TOUCH Release/obj.target/deps/locate_sqlite3.stamp
  CC(target) Release/obj.target/sqlite3/gen/sqlite3/sqlite3.o
  AR(target) Release/obj.target/deps/sqlite3.a
  COPY Release/sqlite3.a
  CXX(target) Release/obj.target/better_sqlite3/src/better_sqlite3.o
In file included from ./src/better_sqlite3.lzz:10,
                 from ../src/better_sqlite3.cpp:4:
/home/mfu/.cache/node-gyp/14.3.0/include/node/node.h:749:51: warning: cast between incompatible function types from ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, v8::Local<v8::Context>)’ to ‘node::addon_context_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, v8::Local<v8::Context>, void*)’} [-Wcast-function-type]
  749 |       (node::addon_context_register_func) (regfunc),                  \
      |                                                   ^
/home/mfu/.cache/node-gyp/14.3.0/include/node/node.h:767:3: note: in expansion of macro ‘NODE_MODULE_CONTEXT_AWARE_X’
  767 |   NODE_MODULE_CONTEXT_AWARE_X(modname, regfunc, NULL, 0)
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/mfu/.cache/node-gyp/14.3.0/include/node/node.h:798:3: note: in expansion of macro ‘NODE_MODULE_CONTEXT_AWARE’
  798 |   NODE_MODULE_CONTEXT_AWARE(NODE_GYP_MODULE_NAME,                     \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~
./src/better_sqlite3.lzz:67:1: note: in expansion of macro ‘NODE_MODULE_INIT’
./src/objects/database.lzz: In static member function ‘static void Database::JS_new(const v8::FunctionCallbackInfo<v8::Value>&)’:
./src/objects/database.lzz:172:21: warning: variable ‘status’ set but not used [-Wunused-but-set-variable]
./src/util/data.lzz: In function ‘v8::Local<v8::Value> Data::GetValueJS(v8::Isolate*, sqlite3_stmt*, int, bool)’:
./src/util/data.lzz:75:92: warning: this statement may fall through [-Wimplicit-fallthrough=]
./src/util/data.lzz:75:197: note: here
./src/util/data.lzz: In function ‘v8::Local<v8::Value> Data::GetValueJS(v8::Isolate*, sqlite3_value*, bool)’:
./src/util/data.lzz:79:81: warning: this statement may fall through [-Wimplicit-fallthrough=]
./src/util/data.lzz:79:175: note: here
  SOLINK_MODULE(target) Release/obj.target/better_sqlite3.node
  COPY Release/better_sqlite3.node
  CC(target) Release/obj.target/test_extension/deps/test_extension.o
  SOLINK_MODULE(target) Release/obj.target/test_extension.node
  COPY Release/test_extension.node
rm b857c92884e9598d609f6be182a2595df7a8e00f.intermediate
make: Leaving directory '/tmp/jwbayK/node_modules/better-sqlite3/build'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN<EMAIL_ADDRESS>No description
npm WARN<EMAIL_ADDRESS>No repository field.
npm WARN<EMAIL_ADDRESS>No license field.

added 68 packages from 38 contributors and audited 68 packages in 61.014s

1 package is looking for funding
  run `npm fund` for details

found 0 vulnerabilities

(I've also tried using the mentioned --scripts-prepend-node-path option, still the same error.)

JFTR, this still occurs on Ubuntu 20.04. System Info:
snap node 14.4.0
snap core 16-2.45.2
Linux 5.4.0-42-generic x86_64
libc6 2.31-0ubuntu9

Log:
Error: /snap/core/current/lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by ***/node_modules/better-sqlite3/build/Release/better_sqlite3.node)

Thinking this might be an issue with snap itself, I've reported a bug about the core snap, but they say it's the node snap's issue. As I've not found that many issues involving the node snap, I think it might have to do with this package after all.
See also https://github.com/nodesource/distributions/issues/804 . This issue also mentions gyp as a potential cause.
Do you think it might be a problem with better-sqlite3's build configuration or so? Or do you think I should open an issue about the node snap? (Or about gyp?) Unfortunately, I don't know much about node so I myself cannot really judge where the problem lies. Thanks for any help!

Any news on this. I am having a similar problem:
`internal/modules/cjs/loader.js:1302
return process.dlopen(module, path.toNamespacedPath(filename));
^
Error: /snap/core/current/lib/x86_64-linux-gnu/libm.so.6: version GLIBC_2.29' not found (required by /home/joaquim/Code/Enel/dr-customer-offers-ui/node_modules/node-sass/vendor/linux-x64-83/binding.node)     at Object.Module._extensions..node (internal/modules/cjs/loader.js:1302:18)     at Module.load (internal/modules/cjs/loader.js:1100:32)     at Function.Module._load (internal/modules/cjs/loader.js:962:14)     at Module.require (internal/modules/cjs/loader.js:1140:19)     at require (internal/modules/cjs/helpers.js:75:18)     at module.exports (/home/joaquim/Code/Enel/dr-customer-offers-ui/node_modules/node-sass/lib/binding.js:19:10)     at Object.<anonymous> (/home/joaquim/Code/Enel/dr-customer-offers-ui/node_modules/node-sass/lib/index.js:14:35)     at Module._compile (internal/modules/cjs/loader.js:1251:30)     at Object.Module._extensions..js (internal/modules/cjs/loader.js:1272:10)     at Module.load (internal/modules/cjs/loader.js:1100:32) npm ERR! code ELIFECYCLE npm ERR! errno 1

Having pretty much the same problem:
Error: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.28' not found (required by /root/PanelBot/node_modules/better-sqlite3/build/Release/better_sqlite3.node)
at Object.Module._extensions..node (internal/modules/cjs/loader.js:1122:18)
at Module.load (internal/modules/cjs/loader.js:928:32)
at Function.Module._load (internal/modules/cjs/loader.js:769:14)
at Module.require (internal/modules/cjs/loader.js:952:19)
at require (internal/modules/cjs/helpers.js:88:18)
at bindings (/root/PanelBot/node_modules/bindings/bindings.js:112:48)
at Object. (/root/PanelBot/node_modules/better-sqlite3/lib/database.js:9:24)
at Module._compile (internal/modules/cjs/loader.js:1063:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
at Module.load (internal/modules/cjs/loader.js:928:32)
`

having same issue:
><EMAIL_ADDRESS>install /home/container/bot/node_modules/better-sqlite3
> prebuild-install || npm run build-release

prebuild-install WARN install /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /home/container/bot/node_modules/better-sqlite3/build/Release/better_sqlite3.node)

><EMAIL_ADDRESS>build-release /home/container/bot/node_modules/better-sqlite3
> node-gyp rebuild --release

make: Entering directory '/home/container/bot/node_modules/better-sqlite3/build'
  TOUCH b857c92884e9598d609f6be182a2595df7a8e00f.intermediate
  ACTION deps_sqlite3_gyp_locate_sqlite3_target_extract_sqlite3 b857c92884e9598d609f6be182a2595df7a8e00f.intermediate
  TOUCH Release/obj.target/deps/locate_sqlite3.stamp
  CC(target) Release/obj.target/sqlite3/gen/sqlite3/sqlite3.o```
it just hangs on the `make` and doesnt do anything

i have same thing

Afaik this issue is caused when you build better-sqlite3 with too recent version of glibc. We ran into this with our custom version of better-sqlite3 with more prebuilds, and it was caused by GH actions switch to ubuntu 20. When we used ubuntu 16 in the build container, it helped.
Here is our version of better-sqlite3 that should work fine:
https://github.com/apify/better-sqlite3-with-prebuilds
It is just a clone of the repo with more prebuilds and inlined TS support (no changed other than that).

I have same thing, But I have no problem compiling it. This error occurred when I ran the packaged Electron application

@JoshuaWise This error also occurs when running in Electron on Debian Buster.
This only occurs during runtime, not install time on Buster.
Error: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /home/rathboma/Downloads/beekeeper-studio/node_modules/better-sqlite3/build/Release/better_sqlite3.node)
    at process.func [as dlopen] (electron/js2c/asar_bundle.js:5:1846)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1138:18)
    at Object.func [as .node] (electron/js2c/asar_bundle.js:5:1846)
    at Module.load (internal/modules/cjs/loader.js:935:32)
    at Module._load (internal/modules/cjs/loader.js:776:14)
    at Function.f._load (electron/js2c/asar_bundle.js:5:12684)
    at Module.require (internal/modules/cjs/loader.js:959:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at bindings (/home/rathboma/Downloads/beekeeper-studio/node_modules/bindings/bindings.js:112:48)
    at Object.<anonymous> (/home/rathboma/Downloads/beekeeper-studio/node_modules/better-sqlite3/lib/database.js:9:24)

Seems like from #586 using version 7.1.2 might solve this temporarily?
Looks like changing the github actions pipeline to build on Ubuntu 18.04 might solve this.

Looks like changing the github actions pipeline to build on Ubuntu 18.04 might solve this? Not totally sure here, but it rings a bell from an earlier problem I had on my app.

As I already noted above, building via ubuntu 16 fixes this. Not sure if ubuntu 18 will work too, I believe not. The problem is with back compatibility, if you build with newish GLIBC, you need to have newish version to use it too. When building with the old version, it will work fine.

So Github actions supports Ubuntu 18-04 - ubuntu-18.04, so this should be a fairly simple change to the .workflow file. I'll submit a PR when I get a minute

how to fix this error guys? I got this error on Centos 7, I have installed gcc, python with the following command:
sudo yum install -y python3

yum install gcc-c++ -y
yum install cmake -y
yum install centos-release-scl -y
yum install devtoolset-8-gcc devtoolset-8-gcc-c++ scl-utils -y

scl enable devtoolset-8 -- bash