Security Insights Swagger Spec should be valid against swagger specification 2.0

As an Azure rest API user, I want to be able to:

Generate a server from a swagger specification
Generate a client from a swagger specification

using Swagger tools (i.e., https://github.com/go-swagger/go-swagger)
Issue
The Swagger / Open API specification for Security Insights is not valid against swagger specification 2.0.
The issue does not allow the user to auto-generate client/server code.
How to reproduce
docker pull quay.io/goswagger/swagger
alias swagger="docker run --rm -it -e GOPATH=$HOME/go:/go -v $HOME:$HOME -w $(pwd) quay.io/goswagger/swagger"
swagger validate https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json

Details
swagger validate https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json

returns
2020/03/10 10:43:25
The swagger spec at "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json" showed up some valid but possibly unwanted constructs.
2020/03/10 10:43:25 See warnings below:
2020/03/10 10:43:25 - WARNING: definition "#/definitions/SecurityAlert" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/RegistryValueEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/MCASCheckRequirements" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/MicrosoftSecurityIncidentCreationAlertRule" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/ToggleSettings" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/DnsEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/MDATPDataConnector" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/FusionAlertRuleTemplate" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/TiTaxiiDataConnector" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/FileEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/AwsCloudTrailDataConnector" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/AwsCloudTrailCheckRequirements" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/TiTaxiiCheckRequirements" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/CasesAggregation" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/AADDataConnector" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/UrlEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/AADCheckRequirements" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/ScheduledAlertRule" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/TIDataConnector" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/ASCCheckRequirements" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/IpEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/RegistryKeyEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/AzureResourceEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/MCASDataConnector" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/ScheduledAlertRuleTemplate" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/MalwareEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/SecurityGroupEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/ProcessEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/IoTDeviceEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/HostEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/MDATPCheckRequirements" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/AATPDataConnector" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/FileHashEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/OfficeDataConnector" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/UebaSettings" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/AccountEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/ASCDataConnector" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/CloudApplicationEntity" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleTemplate" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/TICheckRequirements" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/AATPCheckRequirements" is not used anywhere
2020/03/10 10:43:25 - WARNING: definition "#/definitions/FusionAlertRule" is not used anywhere

The swagger spec at "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json" is invalid against swagger specification 2.0.
See errors below:
- "kind" is present in required but not defined as property in definition "AATPCheckRequirements"
- "kind" is present in required but not defined as property in definition "AADCheckRequirements"
- "kind" is present in required but not defined as property in definition "Aggregations"
- "kind" is present in required but not defined as property in definition "MCASCheckRequirements"
- "kind" is present in required but not defined as property in definition "AlertRule"
- "kind" is present in required but not defined as property in definition "MDATPCheckRequirements"
- "kind" is present in required but not defined as property in definition "AwsCloudTrailCheckRequirements"
- "productFilter" is present in required but not defined as property in definition "MicrosoftSecurityIncidentCreationAlertRuleProperties"
- "kind" is present in required but not defined as property in definition "Settings"
- "severity" is present in required but not defined as property in definition "ScheduledAlertRuleProperties"
- "query" is present in required but not defined as property in definition "ScheduledAlertRuleProperties"
- "queryFrequency" is present in required but not defined as property in definition "ScheduledAlertRuleProperties"
- "queryPeriod" is present in required but not defined as property in definition "ScheduledAlertRuleProperties"
- "triggerOperator" is present in required but not defined as property in definition "ScheduledAlertRuleProperties"
- "triggerThreshold" is present in required but not defined as property in definition "ScheduledAlertRuleProperties"
- "kind" is present in required but not defined as property in definition "ASCCheckRequirements"
- "kind" is present in required but not defined as property in definition "Entity"
- "kind" is present in required but not defined as property in definition "AlertRuleTemplate"
- "kind" is present in required but not defined as property in definition "DataConnector"
- "kind" is present in required but not defined as property in definition "TICheckRequirements"
- "kind" is present in required but not defined as property in definition "TiTaxiiCheckRequirements"

Suggestion: it would be great if the validation check happens in your CI server to avoid such issues in the future.

Hi @zouzias Thanks for your feedback. I am not quite familiar with your tool, As we have some extension in Azure Swagger 2.0. so we normally use autorest to generation code and have some other tools to do validation for swagger, Tools can be found in check of PR in this repo.

Hi @akning-ms , many thanks for your response. I was unaware of the autorest tool.
Is it possible to generate Go client code from the API specs in https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json?
I guess something like autorest --go --input-file=SecurityInsights.json should do the job, right? If so, feel free to close the issue.

@zouzias you're right. Thanks again. I will close this issue.


enh: marker integration for better pdf parsing

What about docling support?

What about docling support?

Seems interesting,
maybe https://github.com/drmingler/docling-api is also worth looking at.

Wondering if the Apache Tika integration can be modified to handle this.

This seems promising: https://github.com/opendatalab/MinerU

MinerU is quite promising. I tried both Docling and MinerU.
Docling today unfortunately today does not support recognizing formula.
MinerU gives best result and even can recognize complex formula and the table parsing, layout detection are much better: https://github.com/opendatalab/MinerU

The only downside is setting up is complex, I provided a guide at https://github.com/opendatalab/MinerU/discussions/1374 if you want to try MinerU ☺

MinerU is quite promising. I tried both Docling and MinerU.
Docling today unfortunately today does not support recognizing formula.
MinerU gives best result and even can recognize formula and the table parsing, layout detection are much better. Here is a markdown generated by MinerU, you can see even this formula is very complex, it recognized perfect. 🤩

The only downside is setting up is complex, I provided a guide at https://github.com/opendatalab/MinerU/discussions/1374 if you want to try MinerU ☺


There is an issue with the Renderer.py it seems like its not passing the headers when called from CSVStreamingRender

In renderer Line #73
needs to be >>>>
data.header = self.header or data.header
... Reason as header will always be none
Following Snippet of code fails, you seem to have it provided for streaming renderer. Ive fixed the bug locally
renderer = CSVStreamingRenderer()
renderer.header = ['customer','name','etc']
from django.http import StreamingHttpResponse
filename = 'some_report_{:%Y-%m-%d}'.format(timezone.now())
response = StreamingHttpResponse(renderer.render(content), content_type='text/csv')
response['Content-Disposition'] = 'attachment; filename="' + filename + '.csv"'

rebased and merged #54


MultiGet ignores _source field (reopen #849)

Issue #849 reported that MultiGet was ignoring _source fields. The issue has since been closed with a supposed fix pushed to develop. Having tested that fix, I can confirm that functionality is still missing.
Here's a sample which demonstrates the issue (references latest develop sources):
class Program
{
    static void Main(string[] args)
    {
        const string serverUrl = "http://localhost:9200";
        const string indexName = "test";
        const bool resetAll = false;

        var guids = new[] {
            new Guid("16b006aa-416f-42e4-801c-7f61f6d74294"),
            new Guid("eb2e4f76-a697-4690-b339-cf923eda2c92"),
            new Guid("494d59fa-965d-4c84-96e3-ac617a7536ca"),
        };

        var client = new ElasticClient(new ConnectionSettings(new Uri(serverUrl))
            .SetTimeout(15000)
            .SetDefaultIndex(indexName));

        if (resetAll || !client.IndexExists(x => x.Index(indexName)).Exists)
        {
            ResetIndex(client, indexName, guids);
        }

        var response = client.MultiGet(s => s
            .GetMany<Thing>(guids.Select(x => x.ToString()))
            .SourceInclude<Thing>(x => x.Id, x => x.Name));

        DisplayThings(response.Documents.Select(x => x.Source).Cast<Thing>());

        Console.ReadKey();
    }

    static void DisplayThings(IEnumerable<Thing> things)
    {
        foreach (var item in things)
        {
            Console.WriteLine("{1}{0}{1}{1}{2}", item, Environment.NewLine, new String('*', 50));
        }
    }

    static void ResetIndex(IElasticClient client, string indexName, IList<Guid> guids)
    {
        Action fnCreate = () =>
        {
            client.CreateIndex(x => x.Index(indexName));
            client.Map<Thing>(x => x.MapFromAttributes());
        };

        if (client.IndexExists(x => x.Index(indexName)).Exists)
        {
            client.DeleteIndex(x => x.Index(indexName));
            fnCreate();
        }
        else
        {
            fnCreate();
        }

        var items = new[] {
            new Thing() {
                Id = guids[0],
                Name = "Thing 1",
                Description = "This is a description for thing 1"
            },
            new Thing() {
                Id = guids[1],
                Name = "Thing 2",
                Description = "This is a description for thing 2"
            },
            new Thing() {
                Id = guids[2],
                Name = "Thing 3",
                Description = "This is a description for thing 3"
            },
        };

        client.IndexMany(items);
    }

    [ElasticType(IdProperty = "Id", Name = "thing")]
    public class Thing
    {
        public Guid Id { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }

        public override string ToString()
        {
            return String.Format("Id: {0}{3}" +
                                 "Name: {1}{3}" +
                                 "Description: {2}",
                                 Name, Id, Description ?? "<null>", Environment.NewLine);
        }
    }
}

Guys, it looks like this is back again. Just verified locally under the exact same conditions as originally.
Here's the NEST query:
Client.MultiGet(s =>
	s.GetMany<Something>(termItems.Select(x => x.Term))
	.SourceInclude<Something>(x => x.Id, x => x.Name)

And the generated request:
http://qual-elastic002:9200/_mget?source_include=id%2Cname
{
  "docs": [
	{
	  "_index": "qual4-events014",
	  "_type": "performer",
	  "_id": "f6fc51e4-4198-4d32-a47a-4e0e17e025a3"
	},
	{
	  "_index": "qual4-events014",
	  "_type": "performer",
	  "_id": "98d2b8dd-0de8-4dfa-87f8-716a880fa6e0"
	}
	/* etc... */
  ]
}

The expected request:
    http://qual-elastic002:9200/_mget
{
  "docs": [
	{
	  "_index": "qual4-events014",
	  "_type": "performer",
	  "_id": "f6fc51e4-4198-4d32-a47a-4e0e17e025a3",
	  "_source": [ "id", "name" ]
	},
	{
	  "_index": "qual4-events014",
	  "_type": "performer",
	  "_id": "98d2b8dd-0de8-4dfa-87f8-716a880fa6e0",
	  "_source": [ "id", "name" ]
	}
	/* etc... */
  ]
}


A problem about performance

I use kcptun in business. And I face this problem.
I have kcp-server which targets to remote address. These two servers are located in shenzhen and beijing. When many connections are opened by kcp-server, kcp-client cannot response in time because many connections closed before client reads response.
If I set kcp-server targeting to localhost nginx, and let nginx open connection to remote address, everything works normally.
So I want to know, is it exactly a performance problem of kcptun to open many connections concurrently?

as I can tell from the situation, the link between kcpserver and target server is bad. it's not a performance issue in kcptun in my opinion, but you can try to adjust the nofile settings and tcp parameters in sysctl.conf
kcptun is a tool to strengthen the weakest link in the chain.

Thanks for your reply.
I put a nginx between kcp-server and remote, and this problem is solved. So I don't think it is related to nofile or other thing in sysctl.conf.
These two situations:

I found that even though connections opened by kcp-server become more and more, cpu usage doesn't increase, just like kcp-server is not busy. At the same time, that error info starts appearing.
When I use nginx, with connections more and more, cpu usage of nginx increases too. When it is over 100%, that error info appears.
I guess, kcptun has no ability to handle many connections which have a few latency. I do another test to prove this. I set target as localhost application server directly, and benchmark with same way, this problem doesn't appear.
So do you have another thought?

kcptun can handle as many as 2^32 connections according to smux theoretically,  i cannot be a problem. i don't know what caused the problem occured

Maybe you misunderstand.
The problem should happen where kcp-server opens connection to remote. I inspect source code and find it uses net.DialTimeout("tcp", config.Target, 5*time.Second) to open connection, smux doesn't be involved.

then it won't be a problem of kcptun ,try tunning nofile

According to my understanding, kcptun-server only establishes a connection to the target at the same time. So the quality of the network between the kcptun-server and the target will affect the speed of establishing the connection.
https://github.com/xtaci/kcptun/blob/825ccca6ac202b108b5a61cd9aeb34ffd0c293a7/server/main.go#L78
Why not dial in a new goroutine? I think it will be better.

@ccsexyz I just know Golang a little, and with your reminder, I find it is exactly what you describes. kcp-server opens one connection every time when accepting a stream. After opening successfully, it goroutine to handle it.

没看懂你的 网络结构设计。。最好先把你的 结构说清楚。从上面的来看，好像你的 KCP 不是用于 服务器之间的 通道的。

@ccsexyz I have test about this.
I set kcp-client and kcp-server at one server.And I set two application servers used as kcp-server target at two locations, one is localhost and another is a remote server which latency to localhost from ping cmd is 150 ms. And I use wrk2 to test http service latency. I see, QPS of previous target is several hundreds, of last one is around 5-6. This number is exactly 1s/150ms considering that opening a connection costs more time. I test third remote server which latency is 230ms, and QPS decreases to 3-4.
@xtaci I don't know if there are other considerations here to code like this. But it affects perf.
consideration |
-- | --
consideration |
-- | --

Have to solve it by puting nginx between kcp-server and remote. Maybe kcptun doesn't concern about it.


[core] Use TS project references to typecheck all projects

Instead of using Lerna to typecheck all TS projects (which builds their dependencies, resulting in Base UI being built twice), I'm using TS project references. This uses cached build outputs and prevents already built projects from being built again.
Since project references don't work well with projects containing JS + .d.ts files (.d.ts are not copied to the build output), I had to convert the only JS file we have, useAutocomplete, to TS. Annotating its internal types is out of the scope of this PR, and I added the @ts-nocheck directive at the top, which essentially keeps the previous behavior.
Additional changes:

Renamed Base UI's index.js to index.ts
Removed unnecessary tsconfig from API docs builder config
Modified few imports not to use the main barrel export

Modified few imports not to use the main barrel export

Should this speed up the process? Or it is unrelated?


Update resource diagram to match current relationships.

Depends on #122 due to ubuntu-18.04 runner under brownout.


Can not see screenshots and video in artifacts folder but log file appear just fine

Description
I am currently setting up a new project that uses Detox 20.1.1 and running the test.
Here is a snippet of my config from .detoxrc.json
"artifacts": {
        "rootDir": ".artifacts",
        "plugins": {
            "instruments": { "enabled": false },
            "log": { "enabled": true },
            "uiHierarchy": "enabled",
            "screenshot": {
                "shouldTakeAutomaticSnapshots": true,
                "keepOnlyFailedTestsArtifacts": true,
                "takeWhen": {
                    "testStart": true,
                    "testDone": true
                }
            },
            "video": {
                "android": {
                    "bitRate": 4000000
                },
                "simulator": {
                    "codec": "hevc"
                }
            }
        }
    },

The log file appears in .artifacts just fine and shows that the config file is read
but somehow screenshot and video isn't in the .artifacts folder. I try to change different configs in the screenshot and video, but it still doesn't work.
Please help
Your environment
Detox version: 20.1.1
React Native version: 0.70.6
Node version: v16.14.1
Device model: Simulator iPhone 14 iOS 16.2
OS: macOS Ventura
Test-runner (select one): jest

Does your test fail?

@noomorph Thank you for the fast response.
I tried both "fail" and "success" cases. Either case doesn't show the screenshot.
I also tried "screenshot": "all", "video":"all" same result, no photo or video only logs

Could you share your detox.trace.json log please?

Here is my detox.trace.json https://gist.github.com/pacozaa/c528875fb26cfdb3051c90a9c994750f

Test-runner (select one): jest

Why lie? 😆

Duplicate of #3730.

Let's continue the necessary discussion in the relevant issue.


Have a confirm password field on register form

The two passwords needs to match

I don't think it's required, why should we annoy people with a password verification?
No one does this any more.


Feature/settings

@halo we need to nest the selects but now you can style them.
closes #2

Well, I'm happy enough with the styling as it is, this is beautiful to begin with.
What do you mean by "nesting"?

@halo by nesting i mean: in your branch you had one select in one dashed rect. because i used a component all selects are in one dashed rect.
Can I merge?

So it should be two dashed rectangles?
Merge at will. We can take it from there.


Update README.md

Include youtube tutorial link, and currently available trained models

LGTM! :+1:


Build failing - missing executables in CMakelists.txt

Hi! I saw that lcm_server_high.cpp and lcm_server_low.cpp were recently removed from the examples directory, but these changes weren't propagated to the CMakelists.txt. Removing lines 30-35 (which specified these missing files)  in CMakelists.txt resolved the issue.

Thank you, we've updated the CMakelists.txt.


[Improve] WHS.Shape/WHS.Light remove() need to set null to it's root.

Remove funtion only removes object from scene now:
remove() {

	this.root.scene.remove( this.mesh );

	return this;

}

It should remove object also from WHS.World's children array and remove object's (shape's/light's) root value.

UPDATE
WHS.Shape's retrieve() function add's shape back to this.root (WHS.World) object. But it won't because we remove this.root value each time we remove object. You should also add something like this.last_root that will always store WHS.World in which this shape was last time.
The same for WHS.Light

It should be removed from this.root.children and this.root.modellingQueue.
Something, like this will do
let index = this.root.modellingQueue.indexOf( this );
if( index !== -1 ) {
  this.root.modellingQueue.splice( index, 1 );
  this.root.children.splice ( this.root.children.indexOf( this, 1 ); //Since every object is put there
}

Why should we remove object light and shape value ?

@Noctisdark Where have you been? Join our discussion in slack!

@Noctisdark We shouldn't remove light/shape value. We should remove it's root property value.
``javascript
// WHS.Shape object
{
//...tratata
mesh: {},
root: WHS.World // We should set it to null
}

@Noctisdark The problem is that remove function removes object only from scene in WHS.World object, but it also should remove object from children array in that WHS.World and should delete own root property or set to null.
When object is added to WHS.World:

// WHS.World that consist WHS.Box:
{
   ...
   children: [WHS.Box],
   scene: {
      ...
      children: [THREE.Box],
      ...
   }
   ...
}

// WHS.Box that is in WHS.World:
{
   ...
   root: WHS.World
   ...
}

And another situation:

// WHS.World that doesn't consist WHS.Box:
{
   ...
   children: [],
   scene: {
      ...
      children: [],
      ...
   }
   ...
}

// WHS.Box that is not in WHS.World:
{
   ...
   root: null
   ...
}

And same for modellingQueue array (like children), but it's only for morph meshes (WHS.Morph).

Retrieve should this root to the old root too ?


Image stamps are different orientation to context map

Hi, I noticed that the image stamps have a different orientation to the context map.
The stamps have:

E <---
      |
      |
      v
      N

and the context map has:
      N
      ^
      |
      |
E <---

It would probably help to have the stamps match the context map.

We noticed this as well last week in Oxford. E.g.:
https://lasair-ztf.lsst.ac.uk/objects/ZTF23aadjoew/.
Interesting that other brokers, e.g. ALeRCE orient the stamps the right way up. E.g.:
https://alerce.online/object/ZTF23aadjoew
They must be flipping or rotating the pixels. I think the telescope is on an equatorial mount, so north is up or down usually depending on whether the telescope has done a meridian flip. In ATLAS, we use the PA value in the header to determine whether or not the generated jpeg is flipped/rotated. Admittedly in the FITS files there's not a lot to go on - so maybe all the images are north-down!  (In which case it's just a parameter in the default JS9 representation I think.)
SIMPLE  =                    T / conforms to FITS standard
BITPIX  =                  -32 / bits/pixel
NAXIS   =                    2
NAXIS1  =                   63
NAXIS2  =                   63
BUNIT   =                 'DN'
END


cmakeConsole template: update.json wants Makefile

When running task try-update-template, it fails with:

Applying common tasks ...
Copy-Item: /home/USER/git/PROJ/.conf/projectUpdater.ps1:219:5
Line |
219 |      Copy-Item "$Env:HOME/.apollox/$templateName/$_source" .
|      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Cannot find path '/home/USER/.apollox/cmakeConsole/Makefile' because it does not exist.

Line 219 tries to copy files mentioned in
https://github.com/toradex/vscode-torizon-templates/blob/bookworm/cmakeConsole/.conf/update.json
This file still references Makefile, even though a Makefile is not needed nor present.

Hey @Dualton thanks for the report, this should be fixed when using the follow in the settings.json:
"apollox.templatesBranch": "dev",
"apollox.templatesTag": "next",

Or in the next stable version.


use standard fix

This PR updates the test script to use standard --fix, which can clean up a lot of minor linting issues for you automatically.

will it get corrected during the test run and not be reported as an error?

If the PR author didn't lint first, Yes. But it will come out in the wash. The next time someone lints locally, they'll commit the fixes.

Ehh, but then you'll have PRs that are modifying unrelated parts of the code base just to get the tests to pass.

Fair enough. Maybe we should add a lint script that's standard --fix for discoverability?

👍 want to give feedback on https://github.com/probot/template/pull/50 for that?


qemu_x86: thousands of timer interrupts per second

Describe the bug
When running sample applications under qemu_x86, I experience wired problems caused by overloading the system with timer interrupts.

What target platform are you using? qemu_x86

What have you tried to diagnose or workaround this issue?
Tried different samples. Tried older zephyr versions.

Is this a regression?
Not sure.

To Reproduce
Steps to reproduce the behavior:

Run (sleep 10; printf "\x01c"; echo "info irq"; sleep 1; echo "info irq"; printf "\x01x") | west build -t run -b qemu_x86 samples/basic/minimal
This command runs the sample while waiting 10 seconds, switching to qemu monitor and then it prints interrupt counts twice with one second delay in between. The output is:

SeaBIOS (version zephyr-v1.0.0-0-g31d4e0e-dirty-20200714_234759-fv-az50-zephyr)
Booting from ROM..
*** Booting Zephyr OS build zephyr-v3.2.0-2077-g737d799660cc ***
QEMU 7.0.0 monitor - type 'help' for more information
(qemu) info irq
IRQ statistics for isa-i8259:
 0: 792144
 4: 1
IRQ statistics for ioapic:
 0: 792144
 4: 1
(qemu) info irq
IRQ statistics for isa-i8259:
 0: 880620
 4: 1
IRQ statistics for ioapic:
 0: 880620
 4: 1
(qemu) QEMU: Terminated

Observe that there were 880620 - 792144 = 88476 interrupts per second!

Expected behavior
The number of timer interrupts is much lower.
Impact
samples/subsys/console/getchar doesn't work.
Environment (please complete the following information):

OS: Linux
Toolchain Zephyr SDK
Commit SHA  737d799660ccf843c5396330fbaf254e1a322409 (zephyr-v3.2.0-2077-g737d799660). The same happens with zephyr-v3.0.0, zephyr-v3.1.0 and zephyr-v3.2.0.

Not stale. Still happens with current main. It seems that this is a qemu problem. The same code works correctly on x86 hardware.

Coming through triaging old bugs.  This is actually just a mistake.  The default qemu_x86 configuration uses CONFIG_QEMU_ICOUNT=y, which runs the emulation in virtual time, not host/real time.  You're seeing extremely fast interrupt rates because the emulated system is running hundreds or thousands of times faster than real time.  Instead of counting interrupts in your app, it's easier to see this with e.g. a simple sleep loop, e.g.:
    while (true) {
        k_msleep(1000);
        printk(".\n");
    }

Build this as above and you'll see it spam the console when it runs.  Build with west build ... -- -DCONFIG_QEMU_ICOUNT=n and you'll see the lines come out once a second.


Filter by Feature Not Working

[ ] Muncipal Boundaries

@emjohnst  - Please provide more details. It's working for me. Filter by feature is configured on an overlay-by-overlay basis so if there are some that you are expecting to filter by but currently can't please list which ones should be added.

When filtering by feature a "Request Failed" error message appears.
Municipal Boundaries
Can't select:
crown tenures
Indigenous Reserve Boundaries
Natural Resource Regions
Municipal Parks
National Parks
Provincial Parks
Regional District Boundaries

This issue was caused by increasing the max URL length to a value that is too large in an attempt to fix complex Advanced Search functions. Will reduce length to a smaller value and we will have to create a fix for the Advanced Search issue.


Remove demo app

Description
The demo app is a very large portion of this codebase. It was a very useful tool early on when we did a lot of development isolated in this project working on apis and components for features that didn't yet exist in the application. But we hardly use it anymore and it is becoming unnecessary. Updating mock apis and demo's whenever we update api services or change components feels like extra work for little to no value. So I put this PR together to remove it altogether. If anyone feels strongly we should keep this, please comment on this PR. Otherwise an approval is a vote to remove.

Go ahead and remove the netlify.toml file as well - I'll spin down the demo site netlify-side ahead of that change

Go ahead and remove the netlify.toml file as well - I'll spin down the demo site netlify-side ahead of that change

@znicholasbrown I did remove that file in this PR 👍 I assume its still trying to make a preview because that file is still on main.


Migrate documentation

Migrate existing documentation to appropriate pages:

about.md (about the collection, maps, etc.)
tutorial.md (how to use the application)
README.md (project/technical documentation for anyone hoping to reuse the site)

Include technical prerequisites for developer documentation

README.md is updated but needs review on technical documentation. The link for the markdown template needs to be tested once the update-readme branch is merged to develop.

README.md is updated but needs review on technical documentation. The link for the markdown template needs to be tested once the update-readme branch is merged to develop.

The link was broken and has been fixed.

Information has been added to the tutorial.md on the update-tutorial-page branch. After updating it, I wondered if the information about what the OIMOM is might be better suited to living on the home page. Additionally, the "how to" section might benefit from being on the same page as the mapbox, so that users can follow along with each step without needing to switch pages to read the directions. Any thoughts, @ect123?

As we discussed, let's see if we can migrate the tutorial content to an info "window" or "content box" that is visible to the user on each map view pages. The box should be toggle-able so that it takes up a minimal amount of space on the page, by using a button, icon, or some other visual cue to turn on or display. Once this is done, then we don't need the extra page.

README.md and tutorial content are both integrated, which leaves the "About" page on the OIMOM with information about the project and the library itself.


Error when updating pure: " Not a valid ref: refs/remotes/origin/main"

Please check the existing issues to make sure you're not duplicating a report.
For bug reports, please provide the following information:
In a terminal, run zimfw info and paste the output below:
zimfw version: 1.4.1 (built at 2021-02-17 23:25:22 UTC, previous commit is 12dab4e)
ZIM_HOME:      /Users/joestepp/.zim
Zsh version:   5.8
System info:   Darwin Joe-Stepp-MBP16tb.local 19.2.0 Darwin Kernel Version 19.2.0: Sat Nov 9 03:47:04 PST 2019; root:xnu-6153.61.1~20/RELEASE_X86_64 x86_64

#Paste the output here

gist of .zimrc: https://gist.github.com/joestepp/d34a6d0550410b8c313a5a3204bc2697
gist of .zshrc: https://gist.github.com/joestepp/66c17e6061495a2d2df365d541cb0780

Description
I get the following error when running zimfw update:
❯ zimfw update
x pure: Error during git remote set-head
  error: Not a valid ref: refs/remotes/origin/main

Steps to reproduce
Run ``zimfw update`.
Images or other information

Hi @ joestepp. The "git remote set-head" step was just added in zimfw version 1.4.1. I cannot reproduce your issue. Here's how to manually try to reproduce it (repeating the "git remote set-head" step that zimfw update does):
% cd ${ZIM_HOME}/modules/pure
% command git remote set-head origin -a
origin/HEAD set to main

@joestepp, looks like this is caused by master being renamed to main. Please check https://stackoverflow.com/a/66253232/2654518

Just released version 1.4.2 with the fix for this.
zimfw update will handle the branch renaming automatically, without users having to manually fix this in the repositories.
@joestepp, thanks for reporting this!

@ericbn Awesome, thanks for fixing this so quickly!


Dockerfile.s390x: notary server does not compile

Building docker on s390x with Dockerfile.s390x currently fails when compiling notary-server with error messages like "cannot find package "github.com/Sirupsen/logrus/hooks/bugsnag"".
See also: (https://jenkins.dockerproject.org/job/Docker Master (power, z) Binaries/label=z/1315/consoleFull)
Steps to reproduce the issue:

git clone https://github.com/docker/docker.git
cd docker
docker build --rm --force-rm -t docker:build -f Dockerfile.s390x .

Step 16 : RUN set -x && export GO15VENDOREXPERIMENT=1 && export GOPATH="$(mktemp -d)" && git clone https://github.com/docker/notary.git  "$GOPATH/src/github.com/docker/notary" && (cd "$GOPATH/src/github.com/docker/notary" && git checkout -q "$NOTARY_VERSION") && GOPATH="$GOPATH/src/github.com/docker/notary/vendor:$GOPATH" go build -o /usr/local/bin/notary-server github.com/docker/notary/cmd/notary-server && rm -rf "$GOPATH"
---> Running in 220ac8c8543f
+ export GO15VENDOREXPERIMENT=1
+ mktemp -d
+ export GOPATH=/tmp/tmp.MmfSLEvL7R
+ git clone https://github.com/docker/notary.git /tmp/tmp.MmfSLEvL7R/src/github.com/docker/notary
Cloning into '/tmp/tmp.MmfSLEvL7R/src/github.com/docker/notary'...
+ cd /tmp/tmp.MmfSLEvL7R/src/github.com/docker/notary
+ git checkout -q docker-v1.11-3
+ GOPATH=/tmp/tmp.43uItm940a/src/github.com/docker/notary/vendor:/tmp/tmp.43uItm940a go build -o /usr/local/bin/notary-server github.com/docker/notary/cmd/notary-server
tmp/tmp.43uItm940a/src/github.com/docker/notary/cmd/notary-server/config.go:9:2: cannot find package "github.com/Sirupsen/logrus" in any of:

tmp/tmp.43uItm940a/src/github.com/docker/notary/utils/configuration.go:12:2: cannot find package "github.com/Sirupsen/logrus/hooks/bugsnag" in any of:

tmp/tmp.43uItm940a/src/github.com/docker/notary/tuf/data/keys.go:16:2: cannot find package "github.com/agl/ed25519" in any of:

The reason seems to be that since version "docker-v1.11-1" the notary git repository contains a vendor directory that contains all dependencies.
The following commit has done this:
commit 51dc1747e4ab5738039fc21f8a082cba5a6e4f78
Author: Ying Li<EMAIL_ADDRESS>Date:   Tue Mar 8 11:28:04 2016 -0800

    Move the godeps workspace to the vendor directory to be compliant with Go 1.6

    Signed-off-by: Ying Li<EMAIL_ADDRESS>
Since the vendor sources are directly under "vendors" and not under "vendors/src" go build does not find them.

Please advise how to correctly fix this problem.

ping @cyli @duglin

cc @docker/security-team

Not a solution but a few things that jump out and comments:

As of docker 1.10 (and in experimental from 1.9), notary uses the crypto.Signer interface, it was necessary to add Yubikey support, introduced in go 1.5 so we wouldn't expect it t ever build with go 1.4. I'm not sure how this was working before.
The structure of the vendor directory is correct for go's native vendoring, it should not contain a src directory unless one's imports are in the format import "src/my_pacakge". Also only supported from go 1.5 onwards (1.5 requiring the GO15VENDOREXPERIMENT env var and 1.6 onwards detecting the vendor dir by default).

The structure of the vendor directory is correct for go's native vendoring,
it should not contain a src directory unless one's imports are in the format import "src/my_pacakge".
Also only supported from go 1.5 onwards (1.5 requiring the GO15VENDOREXPERIMENT
env var and 1.6 onwards detecting the vendor dir by default).

Does this mean that gcc 5.3 is no longer supported by notary?
# go version
go version go1.4.2 gccgo (GCC) 5.3.0 linux/s390x

Does this mean that gcc 5.3 is no longer supported by notary?

Notary does work on 1.4, but the Yubikey functionality does rely on interfaces that are only on 1.5+.
In fact, if you don't plug a Yubikey in at all, Notary with pkcs11 support still seems to work, but probably we should disable it for gccgo, if gccgo only supports the 1.4 go standard library.

In fact, if you don't plug a Yubikey in at all, Notary with pkcs11 support still seems to work, but
probably we should disable it for gccgo, if gccgo only supports the 1.4 go standard library.

Sorry, I am not very familiar with notary. How can we disable Yubikey?
Will you do that?

@michael-holzheu:  Apologies, the Docker client uses Notary as a library to do content trust.  One of the features Notary (and hence Docker client) supports is using Yubikeys to sign.  I can definitely disable it by removing the pkcs11 tag from Dockerfile.s390x.
That doesn't address the original point about GOPATH though.  I have a couple questions (sorry I'm not familiar at all with how the s390 is used - I am seeing a 404 from the jenkins.dockerproject.org link above):

Are the docker daemon and the docker client both built for the s390?  Or just one or the other?  Just asking because content trust checking happens only on the client, which may simplify some things.

Are integration tests run on the s390, particularly the content trust tests?  If not, then Notary Server is not needed at all for the Dockerfile.

I otherwise don't know of a way to build on go1.4 other than (1) this symlink solution, or (2) for Notary to not support 1.5+ type vendoring.  :|

@cyli : Thanks for the explanation!

Are the docker daemon and the docker client both built for the s390? Or just one or the other?

Yes both are built. In principle s390 is not different to other platforms like x86, power, or arm.

Are integration tests run on the s390, particularly the content trust tests?

The integration tests run on s390. Also the content trust tests (DockerTrustSuite).

If not, then Notary Server is not needed at all for the Dockerfile.

I already discussed with Srini Brahmaroutu (@brahmaroutu) to remove notary from "Dockerfile.s390x". But since the s390 (Mainframe) customers are very focused on security I assume that we want to have this.

I otherwise don't know of a way to build on go1.4 other than (1) this symlink solution, or (2) for
Notary to not support 1.5+ type vendoring. :|

I assume (1) is probably easier ;-), I have to discuss this with Srini.


unhandled network error

Traceback (most recent call last):
  File "history.py", line 66, in <module>
    socketIO.wait(seconds=1)
  File "/usr/local/lib/python2.7/dist-packages/socketIO_client/__init__.py", line 254, in wait
    self._process_packets()
  File "/usr/local/lib/python2.7/dist-packages/socketIO_client/__init__.py", line 279, in _process_packets
    for engineIO_packet in self._transport.recv_packet():
  File "/usr/local/lib/python2.7/dist-packages/socketIO_client/transports.py", line 156, in recv_packet
    packet_text)
  File "/usr/local/lib/python2.7/dist-packages/socketIO_client/parsers.py", line 96, in parse_packet_text
    packet_type = int(get_character(packet_text, 0))
  File "/usr/local/lib/python2.7/dist-packages/socketIO_client/symmetries.py", line 26, in get_character
    return chr(get_byte(x, index))
  File "/usr/local/lib/python2.7/dist-packages/socketIO_client/symmetries.py", line 30, in get_byte
    return six.indexbytes(x, index)
  File "/usr/lib/python2.7/dist-packages/six.py", line 607, in indexbytes
    return ord(buf[i])
IndexError: string index out of range

Hmm, I would need more context here if available.
If this happens regularly and other people are getting corrupted packets, then maybe catch the IndexError and ignore it to drop corrupted packets.


[Bug]: Oauht Proxy failing on some installations

Is there an existing issue for this?

[X] I have searched the existing issues

Deploy type
Using an OpenDataHub main version (eg. v1.6.0)
Version
1.7.0
Current Behavior
When installing the dashboard through a default installation, when trying to access through oauth, we get this error:

Looking at the oauth proxy's logs, we have this error message:
2023/07/07 13:47:51 provider.go:587: Performing OAuth discovery against https://<IP_ADDRESS>/.well-known/oauth-authorization-server
2023/07/07 13:47:51 provider.go:627: 200 GET https://<IP_ADDRESS>/.well-known/oauth-authorization-server {
  "issuer": "https://oauth-openshift.apps.ods-qe-04.rhods.ccitredhat.com",
  "authorization_endpoint": "https://oauth-openshift.apps.ods-qe-04.rhods.ccitredhat.com/oauth/authorize",
  "token_endpoint": "https://oauth-openshift.apps.ods-qe-04.rhods.ccitredhat.com/oauth/token",
  "scopes_supported": [
    "user:check-access",
    "user:full",
    "user:info",
    "user:list-projects",
    "user:list-scoped-projects"
  ],
  "response_types_supported": [
    "code",
    "token"
  ],
  "grant_types_supported": [
    "authorization_code",
    "implicit"
  ],
  "code_challenge_methods_supported": [
    "plain",
    "S256"
  ]
}
2023/07/07 13:47:51 oauthproxy.go:656: error redeeming code (client:<IP_ADDRESS>:45526): got 400 from "https://oauth-openshift.apps.ods-qe-04.rhods.ccitredhat.com/oauth/token" {"error":"unauthorized_client","error_description":"The client is not authorized to request a token using this method."}
2023/07/07 13:47:51 oauthproxy.go:445: ErrorPage 500 Internal Error Internal Error

Expected Behavior
Log in successfully in the dashboard.
Steps To Reproduce

Install the dashboard through its kfdef
Try to log in

Workaround (if any)
No response
What browsers are you seeing the problem on?
No response
Anything else
No response

interesting, with which version of ose-oauth-proxy sidecar?

interesting, with which version of ose-oauth-proxy sidecar?

It's on v4.8, I've tried to upload it to v4.10, but it's failing too, I'm checking if all the permissions are ok.

@VaishnaviHire @zdtsw I think this is related to the secret generator I'm not able to reproduce it all the time but I've seen this happen a few times already, we might wanna take a look.

based on an internal conversation with @VaishnaviHire it seems that this is not related to any issue to our deployment, it might be some misconfiguration on clusters.
Closing this issue.

I think this is a related ODH slack thread. https://odh-io.slack.com/archives/C0330L52N22/p1689081494878929?thread_ts=1689076444.124509&cid=C0330L52N22

Reopening the issue as the bug is still reproducible on v2.4 RC2:
https://redhat-internal.slack.com/archives/C05NXTEHLGY/p1700135335630479?thread_ts=1700121604.676009&cid=C05NXTEHLGY

@asanzgom This issue should remain closed -- all conversations should be taken to https://github.com/opendatahub-io/opendatahub-operator/issues/712
This issue is more than likely unrelated to our repo -- but if it turns out we need to fix something, we can log something new and address that as-is. This issue was closed because it was not our repo.
Changing this from success close to not planned closed.


one HTTP forbidden error causes program to abort

I don't know why, but ilias-downloader-cli can never seem to access this particular file:
Downloading file "Lösung-Bonusklausur2-MedStat-WS12-13.pdf" (16,500 bytes)...
Exception in thread "main" com.github.thetric.iliasdownloader.service.exception.IliasException: Failed to GET https://www.ilias.fh-dortmund.de/ilias/webdav.php/ilias-fhdo/ref_9538//Alte_Klausuren//Miniklausuren//L%C3%B6sung-Bonusklausur2-MedStat-WS12-13.pdf: Forbidden
        at com.github.thetric.iliasdownloader.service.webparser.impl.webclient.OkHttpIliasWebClient.checkResponse(OkHttpIliasWebClient.kt:90)
        at com.github.thetric.iliasdownloader.service.webparser.impl.webclient.OkHttpIliasWebClient.getAsInputStream(OkHttpIliasWebClient.kt:84)
        at com.github.thetric.iliasdownloader.service.webparser.impl.WebIliasService.getContentAsStream(WebIliasService.kt:22)
        at com.github.thetric.iliasdownloader.cli.sync.ItemDownloadingItemVisitor.syncAndSaveFile(ItemDownloadingItemVisitor.kt:82)
        at com.github.thetric.iliasdownloader.cli.sync.ItemDownloadingItemVisitor.handleFile(ItemDownloadingItemVisitor.kt:48)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.walkIliasItemNode(CourseSyncServiceImpl.kt:107)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.visit(CourseSyncServiceImpl.kt:50)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.walkIliasItemNode(CourseSyncServiceImpl.kt:103)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.visit(CourseSyncServiceImpl.kt:50)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.walkIliasItemNode(CourseSyncServiceImpl.kt:103)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.visit(CourseSyncServiceImpl.kt:50)
        at com.github.thetric.iliasdownloader.service.webparser.impl.WebIliasService.visit(WebIliasService.kt:38)
        at com.github.thetric.iliasdownloader.cli.SyncController.executeSync(SyncController.kt:39)
        at com.github.thetric.iliasdownloader.cli.SyncController.startSync(SyncController.kt:28)
        at com.github.thetric.iliasdownloader.cli.CliController.startCliController(CliController.kt:41)
        at com.github.thetric.iliasdownloader.cli.CliKt.main(Cli.kt:30)

That wouldn't be so bad, especially since I encounter no trouble attempting to download this file manually through my browser. However, because it causes ilias-downloader-cli to abort, I am unable to finish syncing the other files in this course and all the remaining ones.
After downloading the file manually, I tried manually changing the timestamp of the file to trick ilias-downloader-cli into thinking it had already been synced, but that didn't work either. Actually, I noticed that all the timestamps of local synced files seem to be off +/- 5 minutes from the timestamps displayed in the Ilias web interface, but the difference appears to be somewhat random, so I can't guess the exact time ilias-downloader-cli expects the file to have and I am not sure whether it is comparing only minutes, or also seconds or even milliseconds, so I have given up on that workaround for now. I suppose I could dig into the sourcecode, but I am not that motivated and am hoping you guys can offer me an easier solution or workaround.
I would like if the program caught HTTP errors and prompted the user to abort, retry, or skip the current file. It would also be nice if there were an ignored files list in the configuration json. It would also be nice to figure out what causes the HTTP forbidden error, since this doesn't happen for me in my browser, so let me know if you have any ideas about how we could get to the bottom of that. Thanks.

This is indeed a very annoying issue.
Could you please check if you can access https://www.ilias.fh-dortmund.de/ilias/webdav.php/ilias-fhdo/ref_9538//Alte_Klausuren//Miniklausuren//Lösung-Bonusklausur2-MedStat-WS12-13.pdf in your browser? Perhaps you need to login first.
Are you using the latest version (3.0.0)?

Are you using the latest version (3.0.0)?
Yes, I am using the 3.0.0 release downloaded from here.

When I attempt to open that link in my browser (Chromium), after logging in, I also receive the same error:
Access to www.ilias.fh-dortmund.de was denied
You don't have authorization to view this page.
HTTP ERROR 403

Navigating to this file manually in my browser, the download link appears to be https://www.ilias.fh-dortmund.de/ilias/goto_ilias-fhdo_file_474343_download.html.

The CLI uses a different URL (not the same as the 'normal' web UI) to find the courses contents and to download the files. Can you check if you are able access the parent directories of the file?

https://www.ilias.fh-dortmund.de/ilias/webdav.php/ilias-fhdo/ref_9538//Alte_Klausuren//Miniklausuren
https://www.ilias.fh-dortmund.de/ilias/webdav.php/ilias-fhdo/ref_9538//Alte_Klausuren
https://www.ilias.fh-dortmund.de/ilias/webdav.php/ilias-fhdo/ref_9538

I can't figure out why you get the HTTP 403 Forbidden error. My first thought was that the access was denied because you haven't joined the course, but this isn't true as you can download the file via the web interface. If some of the links above are working I might have a start for further investigations.
Otherwise I would start implementing your requested feature to exclude files.

It would also be nice if there were an ignored files list in the configuration json

Ignoring these "broken" files wouldn't be a great solution in your case because you still would have to download the ignored files by yourself (that should be the task of the CLI :sweat_smile:)

I am able to access all three parent directories and all 33 of the other files in 'Miniklausuren'. However, clicking on 'Lösung-Bonusklausur2-MedStat-WS12-13.pdf' from that file listing in my browser does give me the same HTTP 403 unauthorized access error, so perhaps this is a bug in ILIAS. However, as I mentioned above, I am able to download the file in question through the 'normal' web UI.
Yes, I agree that the task of your CLI is to automate downloading files. However, I still think the program should somehow be able to handle unexpected errors like this and continue its progress. If there are 100 files and the 10th one gives such an unauthorized access error, wouldn't the user still be better off having the last 90 files instead of only the first 9? My workaround for now is to disable synchronization of this entire folder. That is the only way I can keep my other classes synchronized for now.

As a temporary "fix" for the 403 Forbidden I released 3.0.1 which continues on failed download attempts.
Just to be sure that it isn't my mistake could you please test another Ilias downloader (by a colleague of mine)? If it also fails to download the file it would be a stronger evidence that it is an Ilias issue.

Awesome, thank you!
However, with this new version I get a different error on the same file:
Downloading file "Lösung-Bonusklausur2-MedStat-WS12-13.pdf" (16,500 bytes)...
Exception in thread "main" java.util.MissingResourceException: Can't find resource for bundle java.util.PropertyResourceBundle, key sync.download.course.failed
        at java.base/java.util.ResourceBundle.getObject(ResourceBundle.java:544)
        at java.base/java.util.ResourceBundle.getString(ResourceBundle.java:501)
        at com.github.thetric.iliasdownloader.cli.sync.ItemDownloadingItemVisitor.getLocalizedMessage(ItemDownloadingItemVisitor.kt:56)
        at com.github.thetric.iliasdownloader.cli.sync.ItemDownloadingItemVisitor.syncAndSaveFile(ItemDownloadingItemVisitor.kt:95)
        at com.github.thetric.iliasdownloader.cli.sync.ItemDownloadingItemVisitor.handleFile(ItemDownloadingItemVisitor.kt:49)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.walkIliasItemNode(CourseSyncServiceImpl.kt:107)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.visit(CourseSyncServiceImpl.kt:50)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.walkIliasItemNode(CourseSyncServiceImpl.kt:103)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.visit(CourseSyncServiceImpl.kt:50)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.walkIliasItemNode(CourseSyncServiceImpl.kt:103)
        at com.github.thetric.iliasdownloader.service.webparser.impl.course.CourseSyncServiceImpl.visit(CourseSyncServiceImpl.kt:50)
        at com.github.thetric.iliasdownloader.service.webparser.impl.WebIliasService.visit(WebIliasService.kt:38)
        at com.github.thetric.iliasdownloader.cli.SyncController.executeSync(SyncController.kt:39)
        at com.github.thetric.iliasdownloader.cli.SyncController.startSync(SyncController.kt:28)
        at com.github.thetric.iliasdownloader.cli.CliController.startCliController(CliController.kt:41)
        at com.github.thetric.iliasdownloader.cli.CliKt.main(Cli.kt:30)

My first attempt to get your colleague's program was unsuccessful. When I try the import courses feature, I get an indescript "Fehler bei Erkennung" and on the command line output I see a cookie rejected warning:
Apr 17, 2018 10:32:25 PM org.apache.http.client.protocol.ResponseProcessCookies processCookies
WARNING: Cookie rejected: "[version: 0][name: ilClientId][value: ilias-fhdo][domain: il_cookie_domain][path: IL_COOKIE_PATH][expiry: null]". Illegal path attribute "IL_COOKIE_PATH". Path of origin: "/ilias/login.php"

Published 3.0.2 which addresses the MisingResourceException.
The automatic course recognition of his program doesn't work. You have to add the course manually by following the instructions in the dialog under Kurse > Kurse hinzufügen...

Closing as the issue is resolved. The 403 Forbidden error seems to be an issue with the ilias server. The ilias bug tracker is password protected so I can neither search their bug reports nor create a new one :disappointed:


No way to finish picture cropping

What

It probably needs some changes here #1800
Have you checked the changes for that pr on an actual device or emulator, sometimes emulator does give different results @vik4114,
Mind if possible you could have a look into this :smile:


PR implement OTS calculate checksum

Implement OTS OACP Calculate Checksum Procedure.
Add checksum usage on both central and peripheral sample.

@pirun I'll be busy preparing for and attending UPF the next two weeks, so my next review will be sometime after that. I'll dismiss my change requests in case someone else approves this :)


Cookies for language preference

The issue I have is that everytime I open my browser it sets the language as portuguese, my OS and browser are in english, and I set it to english everytime still, it swaps back to portuguese. I'm from Brazil, but still.

@peonso are you clearing your local storage or using incognito? Because it will remember your language setting unless it's cleared


Image format incorrect for WMF playback.

Despite format saying RGB, Windows is almost always BGRA . This fixes the color issues where blue's and reds are incorrect.
#186

Thanks for that.


git'n a sticker

💡 Pull Request for WebMasterLog 💡

Issue Title: Text-to-speech converter using HTML, Css and JS

Name of the project: Text-to-speech converter
Category: Vanilla Js
Name: Priya Pandey
GitHub ID: https://github.com/Priyapandeyyy
Identify yourself: GSSOC Contributor

Closes: #135

Describe the add-ons or changes you've made 📃

I have added Text-to-speech Converter to the Vanilla Js Projects. This project has an attractive UI and also simple interface so that users face no difficulty in using the Converter
Type of change ☑

[x ] New feature (non-breaking change which adds functionality)
[x ] This change requires a documentation update

How Has This Been Tested? ⚙
Yes, this project has been tested well.

Checklist: ☑

[x] My code follows the Contributing Guidelines & Code of Conduct of this project.
[x] This PR does not contain plagiarized content.
[x] I have performed a self-review of my code.
[x] My changes generate no new warnings.

SCREEN RECORDING AND SCREENSHOTS ☑

https://github.com/Avdhesh-Varshney/WebMasterLog/assets/132647631/8c509a40-114e-4678-92d5-1e55aaf6774a

@Avdhesh-Varshney Hii sorry I didn't read the guidelines properly. Can you allow me to PR again please

@Avdhesh-Varshney Hii sorry I didn't read the guidelines properly. Can you allow me to PR again please

@Priyapandeyyy No requirement for asking, until issue is assigned to you. You can create another PR ok.
But next time follow the guidelines carefully.
For further communication and queries, join this discord server https://discord.gg/tSqtvHUJzE


COMPOSE_PROFILES is missing in compose envvars reference.

File: compose/reference/envvars.md
I know that compose respects an environment variable named COMPOSE_PROFILES. If set, it will by default use the profiles listed there as a comma operated list, as if you had given the --profile flag one or multiple times.

Nervermind, I am blind or something other strange is going on. I have even ctrl f for profile but couldnt find it. Now its there.


A flag to enable syscall trace for debugging purposes.

I found the commented-out code segment at the end of the WASIDefault constructor most valuable when debugging syscall-related problems. After I found myself un-commenting and re-commenting it, I thought to suggest to you that this could be a config option.
I named the field traceSyscalls. Alternatively, you could have a field called trace which is an object with flags for different kinds of traces, but atm it felt like an overkill.

Rebased; can you look at this @syrusakbary?


fix prompt local variable error

local variable 'prompt' being used before being assigned

Thanks for your contribution!


Debian package

I would like to see a Debian package of GraphHopper. Someone interested in this too?
There is e.g. ElasticSearch which ships a deb package and builds it via a custom pom.xml
Then a docker image would be easy.

:+1:
Interesting idea!
You mean the core package?

The core and web, yes. Including the script to make GraphHopper available for more users and easier. The problem is that then the GraphHopper in Debian will be very old compared to master, but even without this I see benefits like just providing the deb package.

Additionally it would be nice to have a service file for Debian (or systemd in general) to load graphhopper on server startup.

:+1:

With fpm it is already partly working but unfortunately we need two packages (see this issue): one package that installs the files and one for the service.
Here are the steps:

edit the config-example.yml and add

  datareader.file: /opt/graphhopper/berlin-latest.osm.pbf
  graph.location: /opt/graphhopper/graph-cache

create a graphhopper file with:

#!/bin/sh
# change dir so that logs go into /var/log/graphhopper/logs
cd /var/log/graphhopper
java -jar /opt/graphhopper/graphhopper-web-0.13-SNAPSHOT.jar server /etc/graphhopper/config-example.yml

create an empty log file (workaround to create /var/log/graphhopper/logs in a later step)

echo '' > gh.log

Install fpm

# install ruby
sudo apt-get install ruby ruby-dev rubygems build-essential
# install fpm
sudo gem install --no-ri --no-rdoc fpm

create deb packages

fpm -n graphhopper -s dir -t deb --deb-no-default-config-files --config-files /etc/graphhopper/config-example.yml -v 0.13 web/target/graphhopper-web-0.13-SNAPSHOT.jar=/opt/graphhopper/ config-example.yml=/etc/graphhopper/ graphhopper=/usr/bin/ /tmp/gh.log=/var/log/graphhopper/logs/
# create service deb package
fpm -v 0.13 -s pleaserun -t deb --deb-no-default-config-files -n graphhopper-service /usr/bin/graphhopper

install the packages

sudo dpkg -i graphhopper_0.13_amd64.deb
sudo dpkg -i graphhopper-service_0.13_amd64.deb

start the service

sudo systemctl start graphhopper
# open localhost:8989 in the browser
# see the log
tail -f /var/log/graphhopper/logs/graphhopper.log
journalctl -u graphhopper

peacecop@peacecop-HP-ProBook-4520s:/var/log/graphhopper$ java -jar /home/peacecop/graphhopper/graphhopper-web-0.13.0.jar server /home/peacecop/graphhopper/config-example.yml
io.dropwizard.configuration.ConfigurationParsingException: /home/peacecop/graphhopper/config-example.yml has an error:

Malformed YAML at line: 6, column: 56; while parsing a block mapping
in 'reader', line 1, column 1:
graphhopper:
^
expected , but found ''
in 'reader', line 11, column 3:
graph.flag_encoders: car
^

at [Source: (FileInputStream); line: 5, column: 55]
at io.dropwizard.configuration.ConfigurationParsingException$Builder.build(ConfigurationParsingException.java:279)
at io.dropwizard.configuration.BaseConfigurationFactory.build(BaseConfigurationFactory.java:96)
at io.dropwizard.cli.ConfiguredCommand.parseConfiguration(ConfiguredCommand.java:126)
at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:74)
at io.dropwizard.cli.Cli.run(Cli.java:78)
at io.dropwizard.Application.run(Application.java:93)
at com.graphhopper.http.GraphHopperApplication.main(GraphHopperApplication.java:34)

Caused by: com.fasterxml.jackson.dataformat.yaml.snakeyaml.error.MarkedYAMLException: while parsing a block mapping
in 'reader', line 1, column 1:
graphhopper:
^
expected , but found ''
in 'reader', line 11, column 3:
graph.flag_encoders: car
^
at [Source: (FileInputStream); line: 5, column: 55]
at com.fasterxml.jackson.dataformat.yaml.snakeyaml.error.MarkedYAMLException.from(MarkedYAMLException.java:27)
at com.fasterxml.jackson.dataformat.yaml.YAMLParser.nextToken(YAMLParser.java:359)
at com.fasterxml.jackson.core.JsonParser.nextFieldName(JsonParser.java:825)
at com.fasterxml.jackson.databind.deser.std.BaseNodeDeserializer.deserializeObject(JsonNodeDeserializer.java:247)
at com.fasterxml.jackson.databind.deser.std.JsonNodeDeserializer.deserialize(JsonNodeDeserializer.java:68)
at com.fasterxml.jackson.databind.deser.std.JsonNodeDeserializer.deserialize(JsonNodeDeserializer.java:15)
at com.fasterxml.jackson.databind.ObjectMapper._readValue(ObjectMapper.java:3984)
at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:2384)
at io.dropwizard.configuration.BaseConfigurationFactory.build(BaseConfigurationFactory.java:81)
... 5 more
Caused by: while parsing a block mapping
in 'reader', line 1, column 1:
graphhopper:
^
expected , but found ''
in 'reader', line 11, column 3:
graph.flag_encoders: car
^
at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:572)
at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:158)
at org.yaml.snakeyaml.parser.ParserImpl.getEvent(ParserImpl.java:168)
at com.fasterxml.jackson.dataformat.yaml.YAMLParser.nextToken(YAMLParser.java:355)
... 12 more


⚠ Bofrost.fr has degraded performance

In d7e6b4d, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 897 ms

Resolved: Bofrost.fr performance has improved in e630750.


Enable dependencies and index cleaner by default

Signed-off-by: Pavol Loffay<EMAIL_ADDRESS>

This change is

@jpkrohling updated


Make it easy for companies to join the Sponsorship Program

Make it easy for companies to join the Sponsorship Program, add information how to get in contact.

Will embed a Google Form, Typeform or alike.


Font color not applying for cell

sheet1.fill(3, 2, {type:'solid',fgColor:'EE8152',bgColor:'EE8152'});
fgColor is not applying to the font in excel cell. But bgcolor  for cell is applied.
How to apply the font color ?

The examples show that you have to use string numbers for setting the colors, for example:
fgColor: '2',
bgColor: '64'.

But I don't know why it's not working either.
Maybe we can get an example from the project creator?

See https://github.com/protobi/msexcel-builder for a fork that (re)implements font color.


Should RawContextKey include a description and whether context should be user facing?

Per final comment in https://github.com/microsoft/vscode-docs/issues/3039, people proposed adding a description to RawContextKey and an indication whether the context is meant to be used by end users (keybindings) or extension authors.
This information could be surfaced in Inspect Context Keys or perhaps in when clause IntelliSense.

I have pushed a change that allows users of RawContextKey to provide a description. The description, the name, and the type (iff available) are collected in a static registry. That registry can then be inspected, right now only via a command: _generateContextKeyInfo will print all values onto the console... This is similar to the _generateCommandsDocumentation command and the output form can be tweak to any likings. However, fasten your seatbelt, there are many context keys... It depends on the installed extensions but in my dev sample I have ~580...
We can also find ways to feed this information to the extension host (via another command) and then teach the configuration editing extension to suggest them whenever a context key is being edited

Closing we have the core functionality now. I will give a team shout to adopt this better (which likely will take a while)

Verify that you can bind a keybinding to _generateContextKeyInfo and that it prints all context keys onto the dev tools console


EISDIR error on sfpowerkit:project:diff command

Getting EISDIR: illegal operation on a directory, copyfile '.forceignore' -> '../temp' when running sfdx sfpowerkit:project:diff
Directory structure is successfully created in ../temp but looks like it fails when attempting to copy over any files.

Thanks for raising the issue. Could you provide details of the OS Details?
@genoud  Can you look into the issue

@swood09 is this happening when copying forceignore file?
can I get the OS details.

@swood09  Alternatively can you provide an alternate directory to the destination and check?

@manisfdcsfdx the error indicates that it fails on the .forceignore file. No other files get copied into the directory structure.
I am traveling so access my machine info. I know I’m running Mac OS 10.14.6 on my machine.... what other info should I get you? (Apologies... I am new to npm and SFDX)

@azlam-abdulsalam I did try another directory. Got the same error.

Fixed in 1.18.3


EN_setlinknodes produces an error when a PRV/PSV valve is reversed

This is related to the comment I left on Issue #40 but I'm creating a new issue here for the sake of bug tracking. If one tries to reverse the orientation of a PRV or PSV between two junction nodes (neither of which is connected to another valve) using the EN_setlinknodes function, it returns with error 220 - illegal valve connection to another valve. The code snippet below will produce the error:
    EN_addnode(ph, "J1", EN_JUNCTION, &j1);
    EN_addnode(ph, "J2", EN_JUNCTION, &j2);
    EN_addlink(ph, "PRV1", EN_PRV, "J1", "J2", &prv1);
    err = EN_setlinknodes(ph, prv1, j2, j1);
    printf("\n  PRV1 reversed - err = %d\n", err);

The problem is caused by the valvecheck function in project.c when it tries to check for a valid connection between a valve and itself. The fix is to remove this type of check.

I think maybe the fix should be to test for this node-reversal edge case. Removing the check might have bad side effects, since most of the time I figure you do actually want to enforce the check in some way?

There are two types of checks made in valvecheck for a given valve. First is a check to see if it's connected to a Tank/Reservoir. That's not at issue here. Then a check is made to see if the valve is illegally connected to another valve. It's when looping through each of the "other" valves that the valve in question gets checked against itself which causes the erroneous error. Like I said, the fix is to modify the loop's code so that it doesn't try to check connections to itself. E.g. if we have valves V1, V2, and V3 and we call EN_setlinknodes for V1, then V1 should only be checked against V2 and V3 and not V1 against V1 (which is what happens now).

I like the solution of passing in the link index (or zero) as an extra parameter.

This issue has been resolved via PR #562 .


Notification Upon file created using createFile()

Version [v0.13.4]
Device [Android Emulator pixel api 29]
Is there a way to receive notification upon file creation using createFile()

Yes there is. createFile will resolve the promise upon file creation.
So you can use another library e.g. https://github.com/zo0r/react-native-push-notification to create a notification on promise resolve.

Hi @RonRadtke Thanks,
Whenever I create a Directory using

ReactNativeBlobUtil.fs.mkdir(ReactNativeBlobUtil.fs.dirs.DocumentDir + '/foldername')

Directory is created and I am able to check that by

ReactNativeBlobUtil.fs.exists

But I am not able to see that directory in physical device

Is there a way to create file anywhere other than apps internal storage , as whenever I clear data of my app those files also gets deleted

Yes, you can use the downloadDir or the external storage directly. But keep in mind that you might need to request additional permissions for that.

Can you please share a snippet for that

Tested it myself first. Seems like there are some problems with Android 10 / 11 at the moment.
For these Android versions all paths will be in the apps directory.
Some changes to use the media files api would be required here, so we can use predefined, global locations.
But I'm not sure yet when exactly I will get to implement this

Okay thanks

We will run into a problem here.
In general with Android 10 / 11, following Apps are not allowed to access files outside of their scope anymore.
So we would be able to store the files outside of the apps directory (e.g. in the public Download directory) but the App would not be able to access it without a user opening it over a file picker.
Only exception would be using certain media file collections like the gallery for images.
One reason for this is exactly what you want to mitigate - that data the app created gets deleted when the app is uninstalled. The best probably would be to first store the file in the apps scope and then copy / move it to another, public location. But currently the app can't do the last part.

0.14.0 was released yesterday implementing the possibility to store files in e.g. the download collection.


[Enhancement] improve ignored albums functionality to ignored directories instead (directories can have subdirectories)

Is your feature request related to a problem? Please describe.
I have my music library organised by ~/music/artist/album and in every album directory there's a cover.png. In the gallery these hundreds of album covers drown out the images I actually want to look at.
Describe the solution you'd like
The current ignored albums functionality only allows me to add each ~/music/artist/album to the ignored albums, which would take forever to manually add. I'd like to just hide everything inside ~/music and its subdirectories.
Describe alternatives you've considered
Adding 600+ album covers to the ignore list manually, one by one
Additional context

The app is using MediaStore API's, so it doesn't have any access to folders or the filesystem itself. To add this functionality it would require a more permissive approach which is adding a new permission that will grant the app full access to the internal storage.
This permission will also be used for copying/moving media to restricted folders as well (Android/media/*, outside of DCIM or Pictures)
As a temporary solution for you is to create a '.nomedia' file on your main album (it might work for inner albums as well)

The app does know file path, so it can be used to check whether an image is inside an ignored directory or in one of its subdirectories.

Screenshot

I have added a .nomedia file in a directory, and it has several subdirectories with images. The subdirectories are still appearing as albums in the gallery.

I've forgotten to update this issue, but the feature is already available in the latest nightly under Ignored Albums. You can create a regex pattern to target multiple albums/folders at the same time

I have added a .nomedia file in a directory, and it has several subdirectories with images. The subdirectories are still appearing as albums in the gallery.

Updated to version 3.0.0, and tested the .nomedia method. This time, All subdirectories were excluded, as expected.

I just noticed when you use the app as a file picker (for example in system settings > wallpaper & style > change wallpaper > my photos > complete action using gallery), the list of albums at the top does not filter out ignored albums

With the .nomedia method, they don't appear on the file picker either.


GROOVY-9935: java.lang.Number can accommodate any number type

https://issues.apache.org/jira/browse/GROOVY-9935

Merged. Thanks!


[EPIC] Pipeline CRD results are stored to a Result Store via Result Store API

Expected Behavior
Results for Tasks and Pipeline Runs are stored and available later.
Structured Result Stores are places to upload the results of each Knative Build.
A Knative Build can be a result of TaskRun. The TaskRun Controller will be responsible to upload, update and fetch the results for a Build to and from the Result Store.
Types of Results
In Pipeline CRD, results will be produced by a

TaskRun and
PipelineRun.

Structured Result Store API Requirements
Required Requirements

Upload to the result stores
A task should be able to upload to result store for every result produced during its execution
Download a specific Result.
API should support downloading a specific Result.
Update a result in a result store.
For complex multi-task pipeline we would want to update the
PipelineRunResult as TaskRuns complete. This will prevent Controllers from holding onto too much state for a Pipeline.

Additional Requirements

List results for a given TaskRun.
Structured Result Store API should be able to provide a list of results produced during a task run.
Download StepLog for a specific step in a Task Run.
Each Step in a TaskRun is container run. The KBuild container run logs should be mapped to each step. That way, we can effectively stream logs to the presentation layer.
For this, we will have to work with BuildCrd group.
Support different types of Result.
PipelineCRD itself defines resources. Some of the resources like Image themselves	can be results of Tasks. Other examples are Junit-test results, Binary Blob.
The API, can support querying different ResultType.

Actual Behavior
Right now, the logs and results for a pipeline and task runs are available in cluster as Pod Run State.
These get garbage collected as pods get deleted.
Result Store aims to provide persistence storage for all the logs and run state for pipeline and tasks.

I think this issue has more info than #454 but we seem to have moved our work over to #454 so I'm going to close this.


STAR-1355 Deferred loading of system keyspaces

The purpose of this PR is to make the localKeyspaces state mutable so that CNDB control defer the loading of system schema to the services that need them.

Until there is a legitimate reason to defer loading local keyspaces, I'd not introduce another complexity and mutable state

Isn't the legitimate reason that it's required by CNDB?

This is another startup ordering issue in CNDB. There are situations where the Schema.instance is accessed before configuration is complete. Without this change, the result of starting early is that the local keyspaces are final set to none. With this change the keyspace loading can be deferred.


Update lakehouse-configuration2.md WMS ID 8001 - fixed json files for loading

Add here your WMS ID
General requirements

Information in the workshop is adequate and updated
Code is correct and working
Links are correct
Make sure you enter the help email link in your manifest.json
Please make sure WMS URLs are updated as needed after your PR is approved

Checklist - Refer to the QA document for the complete list
Please confirm that the following is completed before submitting your PR

[ ] All filenames are lower case (including folders, images, files, etc.)
[ ] Filenames are descriptive
[ ] Your workshop folder structure should be similar to the one used in the sample workshop (https://github.com/oracle-livelabs/common/tree/main/sample-livelabs-templates/sample-workshop)
[ ] Are you using multiple versions (desktop/, sandbox/, tenancy/)? Make sure that each of them contains a manifest.json and an index.html
[ ] Image references in markdown contain an alternate text

Hey @malcherm, when I try and paste that new link https://objectstorage.us-ashburn-1.oraclecloud.com/n/c4u04/data_lakehouse/o/movieload into the browser I get "object not found". Would you double check that's correct?

That is correct - It is a URI for data studio

From: KillianLynch @.>
Sent: Friday, July 28, 2023 4:35 PM
To: oracle-livelabs/analytics-ai @.>
Cc: Michelle Malcher @.>; Mention @.>
Subject: [External] : Re: [oracle-livelabs/analytics-ai] Update lakehouse-configuration2.md WMS ID 8001 - fixed json files for loading (PR #218)
Hey @malchermhttps://urldefense.com/v3/__https://github.com/malcherm__;!!ACWV5N9M2RV99hQ!OfsSmcFnz51Hh76RDSTvy7p9NrohAXFin0zQnALB1taYG5u_nWl_lD5OCGyUjUNav9Hxeq-TSFSqJrqNB90MNwgwPSCV2vk$, when I try and paste that new link https://objectstorage.us-ashburn-1.oraclecloud.com/n/c4u04/data_lakehouse/o/movieload into the browser I get "object not found". Would you double check that's correct?
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/oracle-livelabs/analytics-ai/pull/218*issuecomment-1656357264__;Iw!!ACWV5N9M2RV99hQ!OfsSmcFnz51Hh76RDSTvy7p9NrohAXFin0zQnALB1taYG5u_nWl_lD5OCGyUjUNav9Hxeq-TSFSqJrqNB90MNwgw_wq-UKc$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/ALVIWLMUA27F2N6V7EH4PALXSQWCVANCNFSM6AAAAAA235HUGE__;!!ACWV5N9M2RV99hQ!OfsSmcFnz51Hh76RDSTvy7p9NrohAXFin0zQnALB1taYG5u_nWl_lD5OCGyUjUNav9Hxeq-TSFSqJrqNB90MNwgwfNyGDMw$.
You are receiving this because you were mentioned.Message ID: @.***>


Click on stickyheader

I'm trying to add a click to a a label on my stickyheader (i have two labels on my header view) but i can get it to work.
I've tried setting the clicklistener on the xml label, i've tried sending events but nothing works
When i create my item, i set it like:  item.withHeader(getString(R.string.checked_product_header)).withSelectable(true);
and still no click feedback.

The technique used doesn't allow it, it is simply impossible. So you have to change library or the library should change technique adopting a custom implementation or a new custom LayoutManager, which is quite long and complex to do it.
I gave up this drawing technique, I used the same and then I removed it, now in my library I created a new way to do it, if you are interested you can check it out.

@gaspar1423 this is not related to the FastAdapter this is related to the StickyHeader implementation of the 3rd party lib used in the sample.
You may find some answers here: https://www.google.at/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=clicklistener decoration recyclerview
But otherwhise you have to switch to a different StickyHeader implementation

I'm sorry to open this, but I have a solution for you.
Check the page of the StickyHeader Library used in FastAdapter.

StickyRecyclerHeadersTouchListener touchListener =
    new StickyRecyclerHeadersTouchListener(recyclerView, headersDecor);
touchListener.setOnHeaderClickListener(
    new StickyRecyclerHeadersTouchListener.OnHeaderClickListener() {
      @Override
      public void onHeaderClick(View header, int position, long headerId) {
        Toast.makeText(MainActivity.this, "Header position: " + position + ", id: " + headerId,
            Toast.LENGTH_SHORT).show();
      }
    });
mRecyclerView.addOnItemTouchListener(touchListener);

@LuizEdgar, you should read [last part of] my answer some time ago at this question: http://stackoverflow.com/questions/33018788/how-can-i-set-a-listener-inside-a-recyclerview-header-decor

Thank you all for the feedback.
LuizEdgar answer was the temporary solution i needed but i'm going to work on that one because i just want to click on half of the header, but for now it will do the work.


Review that relative_path_prefix in Palette should be _admin/ (probably should be _tab/)

Make sure relative_path_prefix value is correct as a template.

Merged into #126


Linux Mint 17 32bit compile error

First, > ./fips gen works well.
Then > ./fips make yakcapp give errors:
> ./fips make yakcapp === dependency: 'oryol': dir '/home/takis/tmp/oryol' exists === dependency: 'fips-unittestpp': dir '/home/takis/tmp/fips-unittestpp' exists === dependency: 'fips-remotery': dir '/home/takis/tmp/fips-remotery' exists === dependency: 'fips-glm': dir '/home/takis/tmp/fips-glm' exists === dependency: 'fips-glfw': dir '/home/takis/tmp/fips-glfw' exists === dependency: 'gliml': dir '/home/takis/tmp/gliml' exists === dependency: 'fips-zlib': dir '/home/takis/tmp/fips-zlib' exists === dependency: 'fips-vld': dir '/home/takis/tmp/fips-vld' exists === dependency: 'fips-libcurl': dir '/home/takis/tmp/fips-libcurl' exists === dependency: 'fips-soloud': dir '/home/takis/tmp/fips-soloud' exists === dependency: 'oryol-imgui': dir '/home/takis/tmp/oryol-imgui' exists === dependency: 'fips-imgui': dir '/home/takis/tmp/fips-imgui' exists === building: linux-make-debug make -j3 yakcapp Scanning dependencies of target glfw3 Scanning dependencies of target Core Scanning dependencies of target ALL_GENERATE [  1%] Building CXX object oryol_Core/CMakeFiles/Core.dir/App.cc.o [  1%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/context.c.o Traceback (most recent call last):   File "/home/takis/tmp/yakc-master/.fips-gen.py", line 56, in <module>     processFile(attrs)   File "/home/takis/tmp/yakc-master/.fips-gen.py", line 47, in processFile     module.generate(input, out_src, out_hdr, args)   File "/home/takis/tmp/oryol/fips-generators/Shader.py", line 1870, in generate     shaderLibrary.validateShadersGLSL()   File "/home/takis/tmp/oryol/fips-generators/Shader.py", line 1567, in validateShadersGLSL     glslcompiler.validate(srcLines, 'vs', slVersion)   File "/home/takis/tmp/oryol/fips-generators/util/glslcompiler.py", line 102, in validate     output = callValidator(cmd)   File "/home/takis/tmp/oryol/fips-generators/util/glslcompiler.py", line 38, in callValidator     child = subprocess.Popen(cmd, stdout=subprocess.PIPE)   File "/usr/lib/python2.7/subprocess.py", line 710, in __init__     errread, errwrite)   File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child     raise child_exception OSError: [Errno 8] Exec format error make[3]: *** [oryol-imgui_IMUI/CMakeFiles/ALL_GENERATE] Error 1 make[2]: *** [oryol-imgui_IMUI/CMakeFiles/ALL_GENERATE.dir/all] Error 2 make[2]: *** Waiting for unfinished jobs.... [  2%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/init.c.o [  2%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/input.c.o [  3%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/monitor.c.o [  3%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/vulkan.c.o [  3%] Building CXX object oryol_Core/CMakeFiles/Core.dir/Args.cc.o [  4%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/window.c.o [  4%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/x11_init.c.o [  5%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/x11_monitor.c.o [  6%] Building CXX object oryol_Core/CMakeFiles/Core.dir/Core.cc.o [  6%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/x11_window.c.o [  6%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/xkb_unicode.c.o [  6%] Building CXX object oryol_Core/CMakeFiles/Core.dir/Log.cc.o [  7%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/linux_joystick.c.o [  7%] Building CXX object oryol_Core/CMakeFiles/Core.dir/Logger.cc.o [  7%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/posix_time.c.o [  8%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/posix_tls.c.o [  9%] [  9%] Building CXX object oryol_Core/CMakeFiles/Core.dir/StackTrace.cc.o Building CXX object oryol_Core/CMakeFiles/Core.dir/RunLoop.cc.o [  9%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/glx_context.c.o [ 10%] Building CXX object oryol_Core/CMakeFiles/Core.dir/Memory/Memory.cc.o [ 11%] Building C object fips-glfw_glfw3/CMakeFiles/glfw3.dir/glfw/src/egl_context.c.o [ 11%] Building CXX object oryol_Core/CMakeFiles/Core.dir/String/String.cc.o Linking C static library libglfw3.a [ 11%] Built target glfw3 [ 12%] Building CXX object oryol_Core/CMakeFiles/Core.dir/String/StringAtom.cc.o [ 12%] Building CXX object oryol_Core/CMakeFiles/Core.dir/String/StringBuilder.cc.o [ 13%] Building CXX object oryol_Core/CMakeFiles/Core.dir/String/StringConverter.cc.o [ 13%] Building CXX object oryol_Core/CMakeFiles/Core.dir/String/WideString.cc.o [ 13%] Building CXX object oryol_Core/CMakeFiles/Core.dir/String/stringAtomBuffer.cc.o [ 14%] Building CXX object oryol_Core/CMakeFiles/Core.dir/String/stringAtomTable.cc.o [ 14%] Building C object oryol_Core/CMakeFiles/Core.dir/String/ConvertUTF.c.o [ 15%] Building CXX object oryol_Core/CMakeFiles/Core.dir/Threading/ThreadLocalData.cc.o [ 15%] Building CXX object oryol_Core/CMakeFiles/Core.dir/Time/Clock.cc.o [ 16%] Building CXX object oryol_Core/CMakeFiles/Core.dir/Trace.cc.o Linking CXX static library libCore.a [ 16%] Built target Core make[1]: *** [src/yakcapp/CMakeFiles/yakcapp.dir/rule] Error 2 make: *** [yakcapp] Error 2 [ERROR] Failed to build config 'linux-make-debug' of project 'yakc-master'

Yep, the problem is the 32-bit Linux. All the binary tools and libs (e.g. the glslangValidator shader compiler) have been compiled for 64-bit Linux only. It would be a whole lot of work supporting 32-bit Linux. Not something I'd like to do anytime soon (especially since the Android SDK also requires 64-bit Linux).


Embedding API does not support string attributes.

The https://api.flutter.dev/flutter/dart-ui/StringAttribute-class.html is useful to attach certain attribute to a string for accessibility focus. This information is not sent as part of embedder API https://github.com/flutter/engine/blob/18750d2452519ebe006f935d4d054f15a4949890/shell/platform/embedder/embedder.h#L1115
We should add support for this

It seems like native macOS API does not support any of StringAttribute.
@loic-sharma Do you know whether they can be useful for Windows?

Sorry, I don't know. @yaakovschectman would you know?

Whether additional arbitrary string attributes would be useful for Windows? I'm not aware by memory of any use that would apply to us.

Implemented by https://github.com/flutter/engine/pull/44616


Add viewport-fit=cover to the meta viewport tag for stencil app projects?

Dear Stencil Community,
Currently whenever I want to add for example capacitor to my stencil app to compile apps for native iOS and Android builds...
I have to add viewport-fit=cover to the viewport meta tag for each new project that I create, so that the safe area insets for both iOS and Android work.
Without it, my apps will have no safe-inset-area's, meaning content will overflow the statusbar and bottom navigator for iOS and Android.
Is there a reason why this is not added to the index.html file generated by default?
Yours truly,
Hylke

See:
https://developer.mozilla.org/en-US/docs/Web/CSS/env#usage
For more detail on subject matter.

Done in #89


feat: support IVF_HNSW_SQ in Python

Are the parameters max_level, m, m_max, and ef_construction documented anywhere? Not urgent, I'm just curious.

it's at python/python/lance/dataset.py: 1285


RBAC: Support LDAP

For RBAC AD support see #3741
Feature implemented, how to set this up:

Set up LDAP authentication, docs here
Set up RBAC with LDAP subjects, docs here

We'd need some volunteers to test things out.
We coordinate in discord, a link to the thread -> here.
Image: docker pull public.ecr.aws/provectus/kafka-ui-custom-build:3700
Config example: here
Please check

That authentication with all users you need works fine.
RBAC groups matching works fine.

AD a bit later, it requires more black magic.

As I found no volunteers w/ AD, it's gonna be a separate issue. Please upvote #3741 if you're interested.

@Haarolea tested RBAC for image public.ecr.aws/provectus/kafka-ui-custom-build:3700 with LDAP configuration but not able login with this image and I dont see any errors in logs

@Haarolean
Tested RBAC for image public.ecr.aws/provectus/kafka-ui-custom-build:3700 with LDAP configuration but not able login with this image and I dont see any errors in logs

Most likely, your configuration is invalid. Please share your config.

rabc.yaml file
rbac:
roles:
- name: "readonly"
clusters:
-
subjects:
- provider: ldap
type: group
value: "OU=Users,OU=Accounts,OU=Resources,DC=,DC=com"
- provider: ldap_ad
type: user
value: "CN  "
permissions:
- resource: clusterconfig
actions: [ "view" ]
    - resource: topic
      value: ".*"
      actions:
        - VIEW
        - MESSAGES_READ

    - resource: consumer
      value: ".*"
      actions: [ view ]

    - resource: schema
      value: ".*"
      actions: [ view ]

    - resource: connect
      value: ".*"
      actions: [ view ]

@padmaachuth you haven't configured LDAP auth at all, see first lines of the config example I provided

@padmaachuth you haven't configured LDAP auth at all, see the first lines of the config example I provided

@Haarolean deploying image in openshift passing LDAP config from ENV
KAFKA_CLUSTERS_0_NAME:
KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS:
KAFKA_CLUSTERS_0_PROPERTIES_SECURITY_PROTOCOL: SASL_PLAINTEXT
KAFKA_CLUSTERS_0_PROPERTIES_SASL_MECHANISM: GSSAPI
KAFKA_CLUSTERS_0_SCHEMAREGISTRY:
KAFKA_CLUSTERS_0_KAFKACONNECT_0_NAME:
KAFKA_CLUSTERS_0_PROPERTIES_SASL_JAAS_CONFIG: com.sun.security.auth.module.Krb5LoginModule required useTicketCache=false<EMAIL_ADDRESS>useKeyTab=true serviceName="kafka" keyTab="/keytabs/.keytab";
KAFKA_CLUSTERS_0_KAFKACONNECT_0_ADDRESS:
KAFKA_CLUSTERS_0_READONLY: false
AUTH_TYPE: LDAP
SPRING_CONFIG_ADDITIONAL-LOCATION: /roles.yml
SPRING_LDAP_URLS:
SPRING_LDAP_USER-FILTER-SEARCH-BASE: DC=Domain,DC=com
SPRING_LDAP_USER-FILTER-SEARCH-FILTER: (&(sAMAccountName={0})(objectClass=person))
SPRING_LDAP_ADMINUSER:
SPRING_LDAP_ADMINPASSWORD:
With this LDAP config able to Login but it not listing cluster, topics,schema,connectors,etc.

@padmaachuth please raise a discussion or ask in discord community, that's unrelated to this issue

RBAC with LDAP does not work for me on v0.7.0.
I have the following config:
kafka:
  clusters:
    - name: dev
      readOnly: false
      bootstrapServers: ${KAFKA_BOOTSTRAP}:9093

auth:
  type: LDAP
spring:
  ldap:
    urls: ldap://${AD_SERVER}
    base: "sAMAccountName={0},ou=${USERS_OU},dc=${AD_SERVER}"
    admin-user: "cn=${LDAP_ADMIN_USERNAME},dc=${AD_SERVER}"
    admin-password: "${LDAP_ADMIN_PASSWORD}"
    user-filter-search-base: "dc=${AD_SERVER}"
    user-filter-search-filter: "(&(sAMAccountName={0})(objectClass=user)(|(memberof=CN=${GROUP_NAME},OU=${GROUPS_OU},DC=${AD_SERVER})))"
    group-filter-search-base: "OU=${GROUPS_OU},DC=${AD_SERVER}"
oauth2:
  ldap:
    activeDirectory: false
    activeDirectory.domain: "${AD_SERVER}"

rbac:
  roles:
    - name: "admins"
      clusters:
        - dev
      subjects:
        - provider: ldap
          type: group
          value: "${GROUP_NAME}"
      permissions:
        - resource: applicationconfig
          # value not applicable for applicationconfig
          actions:
            - view
            # - edit
        - resource: clusterconfig
          # value not applicable for clusterconfig
          actions:
            - view
            # - edit
        - resource: topic
          value: ".*"
          actions:
            - view
            # - create
            # - edit
            # - delete
            - messages_read
            - messages_produce
            - messages_delete
        - resource: consumer
          value: ".*"
          actions:
            - view
            - delete
            - reset_offsets
        - resource: schema
          value: ".*"
          actions:
            - view
            - create
            - delete
            - edit
            # - modify_global_compatibility
        - resource: connect
          value: ".*"
          actions:
            - view
            # - edit
            # - create
        - resource: ksql
          # value not applicable for ksql
          actions:
            - execute
        # - resource: acl
        #   # value not applicable for acl
        #   value: ".*"  # FIXME: it crashes if this is removed
        #   actions:
        #     - view
        #     # - edit

I am able to login but I cannot see any clusters:

I have enabled DEBUG logs and I can see this:
DEBUG [boundedElastic-3] o.s.s.l.u.DefaultLdapAuthoritiesPopulator: Found roles from search [{spring.security.ldap.dn=[CN=${GROUP_NAME},OU=${GROUPS_OU},DC=${AD_SERVER}], cn=[${GROUP_NAME}]}]
DEBUG [reactor-http-epoll-1] o.s.s.w.s.a.DelegatingReactiveAuthorizationManager: Checking authorization on '/api/clusters' using org.springframework.security.authorization.AuthenticatedReactiveAuthorizationManager@XXXXX
DEBUG [reactor-http-epoll-1] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Found SecurityContext 'SecurityContextImpl [Authentication=UsernamePasswordAuthenticationToken [Principal=com.provectus.kafka.ui.config.auth.RbacLdapUser@XXXXX, Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[${GROUP_NAME}]]]' in WebSession: 'org.springframework.web.server.session.InMemoryWebSessionStore$InMemoryWebSession@XXXXX'
DEBUG [reactor-http-epoll-1] o.s.s.w.s.a.AuthorizationWebFilter: Authorization successful
DEBUG [reactor-http-epoll-1] o.s.w.r.r.m.a.RequestMappingHandlerMapping: [XXXXX] Mapped to com.provectus.kafka.ui.controller.ClustersController#getClusters(ServerWebExchange)
DEBUG [reactor-http-epoll-1] o.s.w.r.r.m.a.ResponseEntityResultHandler: [XXXXX] Using 'application/json' given [*/*] and supported [application/json]
DEBUG [reactor-http-epoll-1] o.s.w.r.r.m.a.ResponseEntityResultHandler: [XXXXX] 0..N [com.provectus.kafka.ui.model.ClusterDTO]
DEBUG [reactor-http-epoll-1] o.s.s.w.s.c.WebSessionServerSecurityContextRepository: Found SecurityContext 'SecurityContextImpl [Authentication=UsernamePasswordAuthenticationToken [Principal=com.provectus.kafka.ui.config.auth.RbacLdapUser@XXXXX, Credentials=[PROTECTED], Authenticated=true, Details=null, Granted Authorities=[${GROUP_NAME}]]]' in WebSession: 'org.springframework.web.server.session.InMemoryWebSessionStore$InMemoryWebSession@XXXXX'
DEBUG [reactor-http-epoll-1] o.s.w.s.a.HttpWebHandlerAdapter: [XXXXX] Completed 200 OK

If I remove the rbac section, I can login and I can see and do everything because there are no roles.
Let me know if I should open a separate issue.
Thanks.

@alexisph please raise either a new discussion or join us on discord (the link available in readme)


Fix element precision bug in at media CSS elements widths

Add more precision with @media (max-width: 33.9em) changed to @media (max-width: 33.999999em).
For bug example : http://v4-alpha.getbootstrap.com/layout/responsive-utilities/ with a layout of 750px, hidden-sm-down and hidden-md-up are visible both.

Partially duplicates #17283.

Two popular Sass mixins for handling media queries (see below) substract 0.01em by default so I think that should be enough.
https://github.com/sass-mq/sass-mq
https://github.com/eduardoboucas/include-media

1 em ~= 16 px (or 14px) so 1px ~= 0.0625em (0,0714..em).
I agree, 0.01em should be enough.
W3C says : "CSS theoretically supports infinite precision and infinite
ranges for all value types"
So I prefer 0.0000.....1 to be sure this bug will never be back again :)
Le 01/09/2015 11:45, Sergio Lavanga a écrit :

Two popular Sass mixins for handling media queries (see below)
substract 0.01em by default so I think that should be enough.
https://github.com/sass-mq/sass-mq
https://github.com/eduardoboucas/include-media
—
Reply to this email directly or view it on GitHub
https://github.com/twbs/bootstrap/pull/17388#issuecomment-136651410.

Fixed by #17403.


#80 Median of two sorted arrays in O(LogN)

Closes #80

Description:
Checklist
<Put an x between square brackets wherever appropriate without any spaces like [x]>

[x] I've followed the Contributing guidelines provided in the repository.
[x] I've made the changes which were demanded in the linked issue.
[x] My code gave a clean output on debugging. (NO warnings/errors)

LGTM


[FR DateTimeV2] Add new French specs for HolidayExtractor

@XiaoxiaoMa0815, please name the PR titles following the template for this one that I have edited, ok?
Also, please add to the PR description the number of new (or edited/fixed) French cases in each PR.

Tagging @GaoyanCheerup for awareness too.

@XiaoxiaoMa0815, can you fix the comments on this PR, so we can merge it? Thanks.