[sil-cloner] Always call doPreProcess when visiting SILInstructions.

What's in this pull request?

Resolved bug number: (SR-)

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

A smoke test on macOS does the following:

Builds the compiler incrementally.
Builds the standard library only for macOS. Simulator standard libraries and
device standard libraries are not built.
lldb is not built.
The test and validation-test targets are run only for macOS. The optimized
version of these tests are not run.

A smoke test on Linux does the following:

Builds the compiler incrementally.
Builds the standard library incrementally.
lldb is built incrementally.
The swift test and validation-test targets are run. The optimized version of these
tests are not run.
lldb is tested.

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

It is important to call doPreProcess to correctly setup the available opened archetypes which were referenced from the original instruction being copied.
This fixes a concrete bug in LoopRotate optimization and potential bugs related to cloning.
rdar://27659420

@swift-ci Please smoke test

LGTM

Linux test failure is unrelated.


二分类问题 miou为0

预测图片有效果，但是计算miou为0，请问泡泡up怎么解决呀
===>background: Iou-99.72; Recall (equal to the PA)-99.72; Precision-100.0
===>road:  Iou-0.0: Recall (equal to the PA)-0.0: Precision-0.0
===> mIou: 49.86; mPA: 49.86; Accuracy: 99.72

额？格式问题应该

Hello, i am facing the same issue, did you solve it?


GL_INVALID_OPERATION : glDrawElements: Source and destination textures of the draw are the same.

I have tried the method you prompt in http://www.html5gamedevs.com/topic/38099-texture-between-pixi-and-three/.
pixi stage was correct displayed. but I got this error in the console:
GL_INVALID_OPERATION : glDrawElements: Source and destination textures of the draw are the same.
I'm thinking it's due to __webglTexture share. pixi.js write to the webglTexture and threejs read it as a material texture. This share is not allow in webgl? maybe two webglTexture swapping should be used?

It seems fixed by create two PIXI.RenderTexture & swap them on each update.

It seems PIXI.Text on the stage is Y flipped.

That error is telling you what you are reading from to draw, and what your are drawing to are the same thing.
For example, if you have a RenderTexture render to itself, using itself as input.

It seems fixed by create two PIXI.RenderTexture & swap them on each update.

Everything is Y-flipped :)
Also I implemented double-buffering in pixi-layers,
https://pixijs.io/examples/#/layers/trail.js
https://github.com/pixijs/pixi-display/blob/layers/src/Layer.ts#L6

because its a regular texture and not renderTexture, its still flipped in pixi.
Either you synchronize ThreeJS texture and text canvas, search how to take canvas element into threejs. Either patch TextureManager that way baseTextures with CANVAS elements are uploaded flipped.


Method to get entities for a story?

Is there a method to get the entities for a story - like this call in the Explorer?
https://explorer.mediacloud.org/api/stories/999616922/entities

Thanks, that works. Is there a way to get the term frequency as well? This has it:
https://explorer.mediacloud.org/api/stories/999616922/entities


fix: handle absolute paths for the eslint.files option

✅ Closes: #414

:tada: This PR is included in version 5.0.0-alpha.5 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 5.0.0-beta.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


case when improvement: avoid copy_if_else

Case when improvement: avoid lots of copy_if_else which generates a string column.
For the following case when:
select
  case
    when bool_1_expr then "value_1"
    when bool_2_expr then "value_2"
    when bool_3_expr then "value_3"
    ......
    else "value_else"
  end
from tab

Current logic, link:
Iteratively invoke copy_if_else to merge the tail 2 branches.
This incurs lots of memory(string column) operations, here intruduced 3 copy_if_else
      val elseRet = elseValue
        .map(_.columnarEvalAny(batch))
        .getOrElse(GpuScalar(null, branches.last._2.dataType))
      val any = branches.foldRight[Any](elseRet) {
        case ((predicateExpr, trueExpr), falseRet) =>
          computeIfElse(batch, predicateExpr, trueExpr, falseRet)
      }

Improvement:
First evaluate all the when exprs and get bool columns.
Then select the first true in the bool columns and return the bool column index
Then select salars according to the select column.
implement 2 kernels to handle:
/**
 * select the first column index with true value.
 * e.g.:
 * column 0 in table: true,  false, false
 * column 1 in table: false, true,  false
 * column 2 in table: false, false, true
 *
 * return column: 0, 1, 2
*/
std::unique_ptr<cudf::column> select_first_true_index(
  cudf::table_view const& when_bool_columns,
  rmm::cuda_stream_view stream        = cudf::get_default_stream(),
  rmm::mr::device_memory_resource* mr = rmm::mr::get_current_device_resource());

/**
 * Select strings int scalar column according to index column
 * scalar column: s0, s1, s2
 * index  column: 0,  1,  2,  2,  1,  0,  3
 * output column: s0, s1, s2, s2, s1, s0, null
 *
*/
std::unique_ptr<cudf::column> select_from_index(
  cudf::strings_column_view const& then_and_else_scalar_column,
  cudf::column_view const& select_index_column,
  rmm::cuda_stream_view stream        = cudf::get_default_stream(),
  rmm::mr::device_memory_resource* mr = rmm::mr::get_current_device_resource());

My biggest concern is with side effects. And to be clear that is not an issue with this code. It is a more general problem with case/when I want you to be aware of. Case/when and if/else in Spark are lazy. This means that if an expression in the when part has a side effect, like can throw an exception, then we cannot evaluate it for any row that would cause an exception to be triggered. This appears to be specific to scalars in the case/when so it should be fine.

@res-life created an issue for this. https://github.com/NVIDIA/spark-rapids-jni/issues/2084

build

Please provide benchmarks to show off better how much benefit this can provide?

Please provide benchmarks to show off better how much benefit this can provide?

Will do it.

For end to end perf result, refer to:
https://github.com/NVIDIA/spark-rapids/pull/10951#issuecomment-2144673907
@ttnghia  is it needed to add benchmark tests? Above is end to end result.

@ttnghia  Thanks a lot, I will fix.

build

@ttnghia  Please review again.

Spark-Rapids corresponding change:
https://github.com/NVIDIA/spark-rapids/pull/10951/commits/7c43e698511b556311165c9e022a8347bd4308af
// removed
val finalRet = CaseWhen.selectFromIndex(scalarCol, firstTrueIndex)

build

build

build

The perf numbers
https://github.com/NVIDIA/spark-rapids/pull/10951#issuecomment-2144673907

Yes, please refer to the above link.


Adding a comment model and admin model registration

opening a separate comment_system app to maximize parallelism on
models (post model was added as an empty model that will be replaced
with an import of the post model when it will be ready - related to
#40)
adding [migrations/0001_initial.py][1] and a model ([models.py][2]) for representing a comment.
adding customized model registration to comment model and automating the process for models ([admin.py][3]) that will be added in the future

Adding commenting model part and model registration in the admin.py file
for reviewing PR through the admin interface:

vagrant up
vagrant ssh
cd \vagrant\
pipenv run python manage.py createsuperuser
type details (name, email and a password)
go to localhost:8000/admin (it's the same as our usual admin page)
add a comment by pressing the '+' button next to the Comments table button
add a post by clicking on the '+' button on the comment table (it will contain only id number for now, and click the save button) and click save on the window that opens
fill the required fields (of the comment - the active field is for later for approving comments in the views.py)
click the save button, and look for the created comment object on the admin interface (click on the comments category to do so

)

for now the other default tabled that has been generated are functioning partially, if someone knows something about it, please share us in the discussion below

Also regarding the 3 hours difference is time,  it's not a problem- django saves the UTC and the converts it based on the timezone, Israel
is UTC +3
related issue: #44
closes #46

When I click on 'Content types' in the Django administration, I get this error:

@EdDev @Yarboa @guy9050 Do you know what is the reason for that?
Also @maayanhd I think you could add an image of the expected comments table

@Leeadar I fixed the comment adding functionality that has happened lately and attached a photo and instructions on interacting with the Admin interface, still haven't found a solution to the contentTypes table rendering problem, @Yarboa, @EdDev, @guy9050 , is it even necessary for the project, its one of the table that auto-registered by the code I added in the admin.py file. (also the Post table for now is not working- but that's ok because it will be deleted once the Post model will be ready and will be replaced by an import as I explained above)

@Yarboa I asked Barak about adding such a file of tests and he said we don't need to have this, but since you asked what did you mean other than including in this file actions to populate the database as appeared in a way in the challenge?

@Yarboa I asked Barak about adding such a file of tests and he said we don't need to have this,

I was not aware to that.

but since you asked what did you mean other than including in this file actions to populate the database as appeared in a way in the challenge?
Please refer this one Beyond - Tool introduction challenge.pdf
see TASK #5

what do you my by using model methods, simply writing methods to help populate the database?
In case you need a class method in your model, if needed.
but could be overridden see the sample above.

It is just a practice upload, code with minimal verification.
In case you think it is too complicated please reply with new Issue

@Leeadar I explained it shortly but for now you'll just have to wait until I will commit changes on the view, it's going to help me after the post model will be working, as part of the functionality of adding a comment related to a specific post, to create a comment without saving it in the database and marking it as not active, and only then commenting it to a post and mar it as active, to make sure each comment is saved to the DB after it has been linked to a post, I used a guide for this part..

The quite part was suppose to describe the post as a pot of a quite place, I can add more words to describe it if you think it'll be needed or in later version we can add an image that describe each tag for example

So I think you meant 'Quiet' and not 'Quite'.
You can also used the word 'crowded' but I think it's a little bit problematic because it could change in high frequency

yeah, @Leeadar you're right obviously, I'll fix it next force push with the test file of the migration, my bad. should I add it as a "Quiet Place" along the way ?

works well.

need to rebase!

Please see comment below, no manual commands are needed in PR description
Consider adding some content into the tables, through
I would consider this as must adding 0002_test_data.py file which populates the model
and use some model methods.

I see this, Ack thanks

Sorry, my mistake, there are merge conflicts, can you resolve?

@Yarboa I asked Barak about adding such a file of tests and he said we don't need to have this, but since you asked what did you mean other than including in this file actions to populate the database as appeared in a way in the challenge?
what do you my by using model methods, simply writing methods to help populate the database?

I see this now, thanks 0002_test_data.py

@Yarboa I'll resolve conflicts and separate the code you said to a different PR, the idea was that I will handle the registration model process, so I thought it would be not enough code to hold a separate PR.
There's only one thing left, unfortunately I would need to wait to PR #56 since the empty post class would be replaced with an import if the soon to be merged Post model, what do you think? Is there any other way you suggest on doing?

@Yarboa I'll resolve conflicts and separate the code you said to a different PR, the idea was that I will handle the registration model process, so I thought it would be not enough code to hold a separate PR.

Please rebase, remove the code.
Open an Issue.

There's only one thing left, unfortunately I would need to wait to PR #56 since the empty post class would be replaced with an import if the soon to be merged Post model, what do you think? Is there any other way you suggest on doing?

Your PR is close to be merged.
on the Post PR, it will be fixed, ok?

@Yarboa working on it, had some issues with rebasing and squashing a commit with an older one, I believe soon I' separate the PR as needed, but what about the commands? are you talking about my instructions file? it was same as Barak presented us in the challenge since we didn't had the admin interface, I just added it in case someone would want to review this PR using this commands manually, is it really needed in the PR?

I'm done with the changes after rebasing and all of the stuff, just tell me @Yarboa if adding the command to bootstrap file is needed since, it was only for interacting with the shell and the test file is doing a better job at populating the database as you asked me to do

Ack, no need, Good job,


Document WG Goals Proposal for 2019

Proposal Objectives and Key Results for WG in 2019
Some Questions to Answer

is the problem this working group is trying to solve?
Why does it matter?
Why does it matter to CHAOSS, and is there clear alignment?
What then, is the objective CHAOSS D&I working group ties their goals and work towards in 2019?
What are the Key Metrics for that objective ?

First draft for discussion in Monday call
https://docs.google.com/document/d/1_rwp6f0teAyXZFkJien7nsmV2FankZDhLk9UmrT48vw/edit#

Initial draft  (without Key Results yet)
https://docs.google.com/document/d/1_rwp6f0teAyXZFkJien7nsmV2FankZDhLk9UmrT48vw/edit#heading=h.afrr9xwu1zby

Thanks for putting this together @emmairwin I added comments in preparation for our call tomorrow.

@emmairwin I tried to help by brainstorming key results for each objective. You may discard or change them freely - I am not married to any of these ideas.

I made a few suggestions to the proposal, including another project to consider. I work on marketing at the Linux Foundation and am helping with our organization's D&I activities and involvement.

We adopted the goals. Thanks again @emmairwin for advancing this issue and helping us move forward.


Version 3.1 that added 10 second default timeout has bug.

This PR https://github.com/Flagsmith/flagsmith-nodejs-client/pull/128/files#diff-f4f0d60a954687ddb23b817e910fec0c113105f276c9d4aba5866f3c511466ebL23
The workaround is to just initialize the data.requestTimeoutSeconds to 10 seconds.
The intended default of 10 seconds is never passed to the retryFetch which is subsequently expecting a value in milliseconds. My guess this was added because without a positive numeric value it would never timeout, which has also caused me grief I just didn't know it until i reviewed this code.
from index.ts
These 2 lines
this.requestTimeoutSeconds = data.requestTimeoutSeconds;
this.requestTimeoutMs = data.requestTimeoutSeconds ? data.requestTimeoutSeconds * 1000 : undefined;

Should be changed to
this.requestTimeoutSeconds = data.requestTimeoutSeconds ?? this.requestTimeoutSeconds;
this.requestTimeoutMs = data.requestTimeoutSeconds ? data.requestTimeoutSeconds * 1000 : (this.requestTimeoutSeconds ? this.requestTimeoutSeconds * 1000 : undefined;)

or possibly
this.requestTimeoutSeconds = data.requestTimeoutSeconds ?? this.requestTimeoutSeconds;
this.requestTimeoutMs = this.requestTimeoutSeconds ? this.requestTimeoutSeconds * 1000 : undefined;

The this.requestTimeoutMs is always undefined and when passed into the retry fetch it defaults it 10 milliseconds.
This is defined in utils.ts
export const retryFetch = (
    url: string,
    fetchOptions: RequestInit,
    retries: number = 3,
    timeout: number = 10// set an overall timeout for this function. <-------- this value is Milliseconds and should be 10 * 1000
):

and called from here in index.ts
const data = await retryFetch(
    url,
    {
        agent: this.agent,
        method: method,
        body: JSON.stringify(body),
        headers: headers
    },
    this.retries,
    this.requestTimeoutMs || undefined,
);

@RBornost thanks for this, we'll take a look.
Sidenote - I've updated the formatting of your description, please use 3 backticks in future to create code blocks rather than a single backtick which is for inline code. It's the difference between this and
this
which
is
multiline

@RBornost this issue has been solved with the above commit and published with version 3.1.1 of this SDK.

Excellent thank you for the quick fix.
And also regarding the formatting.. it was driving me nuts :)


virtual machine image release?

It would be great if you could release at least one version as a single virtualmachine imagefile which does not require installing, but just opening/launching the file in the virtual machine. This would make it much  easier to use the tool in Windows environment for non-experienced users (lime me :-) ).

ASP already can be used without installing. One just downloads the right tarball from https://github.com/NeoGeographyToolkit/StereoPipeline/releases, extracts, and runs it with /path/to/your/user/dir/asp/bin/parallel_stereo.
The conda installation of ASP is also rather straightforward, it is just a short sequence of commands, not that different than using apt-get or yum to install system things, and does not require a root password.
When it comes to installing as a virtual machine image file, there are too many virtual machine kinds out there, like VirtualBox, VMWare, etc , and a VM image would be huge as it would incorporate the whole system. I guess Docker is the way to go here, but that would require installing Docker too.

To add, on Windows you can install WSL, then extract ASP in it. I know it works, as verified by some folks who use it that way. But you'd need to get the latest version, 3.1.0, as I fixed some path issues on WSL not so long ago.


Fix unit test

/cc @zeeke @adrianchiris @bn222

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.1%) to 15.619%

Files with Coverage Reduction
New Missed Lines
%

controllers/sriovibnetwork_controller.go
2
69.31%

Totals

Change from base Build<PHONE_NUMBER>:
0.1%

Covered Lines:
1146

Relevant Lines:
7337

💛  - Coveralls


fixed print error

Fixes #

[ ] Title summarizes what is changing
[ ] Has a news entry file (remember to thank yourself!)
[ ] Has unit tests & system/integration tests
[ ] Any new/changed dependencies in package.json are pinned (e.g. "1.2.3", not "^1.2.3" for the specified version)
[ ] package-lock.json has been regenerated by running npm install (if dependencies have changed)

Thanks!


cranelift: update x64 inst_size_test

Running cargo test --all on the latest main (3fa545bd8) fails on my x86_64 machine, in particular in the test. I am creating this PR to check my sanity. I expect that the CI for this PR fails.

Yep, it does.

Out of curiosity, were you seeing issues with a nightly compiler, or something else (local changes, etc)?

I ran into this issue as well, I think I tried the nightly compiler and it started failing, reverting back to stable works. (This was a few days ago so I'm not totally sure on the details)

Oh, yeah, I also thought it's nightly misbehaving, but running
rustup run --install stable cargo test -p cranelift-codegen -- isa::x64::inst::inst_size_test

resulted in the same panic! (rustc 1.64.0 (a55dd71d5 2022-09-19))

That's weird, I tried updating my stable version, and I'm now on:
stable-x86_64-pc-windows-msvc (default)
rustc 1.64.0 (a55dd71d5 2022-09-19)

And running cargo +stable test -p cranelift-codegen -- isa::x64::inst::inst_size_test passes the test for me. 🤔

Could it be from the new enum layout from https://github.com/rust-lang/rust/pull/94075 ?

We're merging an identical patch now in #5188. I'm glad you all brought this up early so it wasn't a surprise!


[Feature request] update packages only if pipefile.lock is missing or out of date

We distribute a script which in turn uses pipenv to run some python code. We do this to be able to have our script be portable.
What we are looking for is a way to check/verify that the machine the script is running on has the latest version of the pipfile.lock file.
Workaround is to always run pipenv install which works the way we want IF the pipefile.lock is missing or invalid. But it doesn't when everything is OK. Meaning, what happens then is that it uninstalls/removes everything and reinstalls. The option, if present, would simply do nothing at this point.
I hope that makes sense?

I can think of three options currently and hopefully one of them can help, but maybe others can come up with more.

You can check the return code of pipenv install —deploy which will fail to install in the first place if the lockfile is out of date
You can check the output of pipenv update —dry-run and see if it is suggesting anything, you can check for ‘All good!’ in the output
You can add a version tag in the system metadata section if you’re distributing this yourself, but this may not be very reliable because dependencies may need to re-resolve on other systems which will wipe any changes you make

Thanks @techalchemy for your suggestions.
I'll checkout -deploy
As for --dry-run, I thought of that too, but there seems to be an issue with it (see my comment here: https://github.com/kennethreitz/pipenv/issues/810#issuecomment-348127544).
Apart from that issue, I'm not sure that would pick up any additions/removals to the pipfile, only new/change dependencies - right?
As for the third suggestion, like you said yourself - won't be reliable since we distribute this to different systems.

@BeyondEvil we had a discussion about something like this in #1080 which involved a check for whether the lockfile /pipfile were in sync with the venv, which isn’t currently implemented but could be
A rough implementation would just be to do pipenv run pip freezeand use a json parser on the lockfile to compare.
As for picking up changes to the Pipfile, that’s what —deploy does

Thanks @techalchemy I checked out the two issues you mentioned and then I coded something in #1168
Let me know what you guys think.


Add channel value playground

Changes proposed in this Pull Request:

Add ChannelValue Playground

[ ] I would not recommend using "12 $" as the default. Maybe 12 kWh instead?

Everything else looks great!

Ahh I apologize for this. Can you add  a prefix knob?


How to  display Project full path when build error occur in  TFS2015   Build

I asked this question in  stack overflow  someone suggest me to put it here.
I Have 2 build definitions, One is correct, it always show prj full path in build timeline,but another didn't,
How to change the definition to display the prj full path ? Thanks

@zlphoenix sorry i missed this issue. iirc in 2015 unchecking "log timeline events" may turn off relativizing the paths (side effect). in 2017 i think it will always be full path.

closing since eric noted fixed in 2017


[FE]: Create Settings Page

[FE]: Create Settings Page

[!IMPORTANT]
Before applying, please read the Contributors Guide. Following the guide increases your chances of being assigned to this task.

Description
Implement the Settings page for the application. The route /settings is already configured, and the task involves creating the page using the specified component file. The design is already available in Figma and should be followed strictly.
Requirements

File to Edit:

Use the component located at src/components/settings/SettingsComponent.tsx to implement the Settings Page.

Design:

Follow the design provided in Figma: Figma Design Link.

Image

For this section:

Please use the component: src//components/ui/UploadPhotoProfile.tsx

Could I take on this issue?

Can I work on this, please?

Could I grab this task?

Estimated Completion Time (ETA): I estimate completing this issue within 2 days.
Plan:
Understand Design Requirements: Review the Figma design thoroughly to ensure accurate implementation.
Set Up Layout: Begin by structuring the SettingsComponent.tsx to match the layout in the Figma design
Styling: styled the components to adhere strictly to the design guidelines. and ensuring responsiveness and accessibility.
Test: Validate the page functionality and appearance across different devices and browsers.
Submit for Review: Ensure the implementation meets all requirements before creating a pull request.

I’m a full-stack Web & Mobile App engineer with 4+ years of experience building responsive applications using React, React Native, Node.js, and TypeScript. I’ll create the Settings Page in SettingsComponent.tsx by following the Figma design closely, reusing components, and ensuring responsiveness. Once complete, I’ll test thoroughly to ensure everything works perfectly.
ETA: Within 24 hours.

May I pick this up?

Hi, I'm a front end developer with proficiency in JavaScript, Reacts, Next.js and typescript. I will want to implement this setting page and ensure is responsive on all screen sizes using tailwind css and the ETA is 2days.

@KevinLatino Hello,
About me
I am a diligent frontend developer with more than 3 years of working experience in creating responsive, pixel-perfect web and mobile applications with various libraries and frameworks, especially React, Next.Js, TypeScript.  And for styling tailwindCss,  Vanila CSS,  SCSS,  mantime, etc.
My Approach in solving this issue
I will first tackle this issue by analyzing the figma file that is provided above and locating the "SettingsComponent.tsx" , where I will implement the styling for the settings page according to the figma page.
ETA
Design implementation will be done within 12-24 hours if I am assigned this task.

Is it okay if I tackle this?

Id be thrilled to take this. ETA: less than 24hrs, will be implementing a pixel perfect layout that is responsive on both desktop and mobile

👤 Personal information
My name is Dylan Castillo, a developer passionate about technology and computing. I have a focus on frontend development, where I am constantly learning and evolving. I have experience in creating dynamic and functional applications using React. I always seek to develop efficient, scalable solutions focused on user experience.
🧢 OnlyDust Info
I’ve contributed to a project on the OnlyDust platform. Check out my profile on OnlyDust to learn more about my work.
🛠 General Project Requirements
Implement the Settings page for the application based on the provided design specifications and requirements. This task involves creating a responsive, user-friendly interface that adheres strictly to the design.
💡 Proposal
To implement the Settings page, the following steps are proposed:

Setup and Review:

Open the component file located at src/components/settings/SettingsComponent.tsx.

Review the Figma design linked in the issue to understand layout, colors, typography, and any specific interactive elements.

Component Structure:

Divide the page into reusable subcomponents as per the design.

Ensure proper nesting and accessibility using semantic HTML tags.

🌟 Benefits

Improved User Experience:

A visually appealing and functional Settings page enhances user satisfaction and engagement.
Incorporating accessibility practices ensures the page is usable by all audiences, including people with disabilities, providing an inclusive experience.

Consistency:

Strict adherence to the Figma design ensures consistency across the application..

ETA: 1-3 days

@JoelVR17 Task assigned to you. Let me know if you need further clarification or additional support! 😊
Here is our telegram group, please join https://t.me/starshopcr

@JoelVR17 Task assigned to you. Let me know if you need further clarification or additional support! 😊 Here is our telegram group, please join https://t.me/starshopcr

Thanks!!
I'll work on it!


Fixing the endpoint type command schema

Getting rid of the endpoint_type_ref from endpoint_type_command table since the endpoint type cluster table already has this. Normalizing the schema between endpoint type command and endpoint type cluster
JIRA: ZAPP-1127

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 66.01%. Comparing base (61d328c) to head (a79ff32).
Report is 29 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1339      +/-   ##
==========================================
+ Coverage   65.64%   66.01%   +0.37%
==========================================
  Files         189      194       +5
  Lines       19869    20529     +660
  Branches     4266     4456     +190
==========================================
+ Hits        13043    13553     +510
- Misses       6826     6976     +150

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


scc-validation webhook prevent user to modify default scc

This PR is for removing the "default_scc_modification" template because we have scc-validation in place to prevent user to modify default scc.

/lgtm

/lgtm

/approve


IG pods restart randomly

Components
IG
Describe the issue
IG pod is randomly restarting without any warning.
Possible causes

blocked threads due to incorrect promises handling, during external http calls in the groovy scripts. The error Thread has been blocked for... has been noticed before in the logs
insufficient resources for the application

Additional Context
The issue has been observed while executing the payments flow, but sometimes also happened when no load was on the environments.

Root cause identified in code snippet below:
def getRSAKeyFromJwks(String routeArgJwkUrl, JWSHeader jwsHeader) {     JWKSet jwkSet     try {         //There's an issue which leaves connections hanging and leads to threads getting blocked         jwkSet = JWKSet.load(new URL(routeArgJwkUrl))     }
Work-around is adding request timeouts to the load method to avoid threads remaining blocked for too long.
def getRSAKeyFromJwks(String routeArgJwkUrl, JWSHeader jwsHeader) {     JWKSet jwkSet     try {         //adding connectTimeout = 5000 ms, readTimeout = 5000 ms, sizeLimit = 1000000 bytes (1Mb) to avoid blocked threads.         //There's an issue which leaves connections hanging and leads to threads getting blocked         jwkSet = JWKSet.load(new URL(routeArgJwkUrl), 10000, 10000, 1000000);     }


Github Actions Fix: poetry install fails for python 3.7 tests

The latest version of poetry released on 20 August 2023 (four days ago as of this commit) which drops support for Python 3.7, causing our github action to fail.
Until we complete #207 we need to conditionally install the last version of poetry that supports Python 3.7 (poetry==1.5.1)

Failed publish-test is due to pypi being down for maintenance right now. Not a blocker for merging.

No changelog entry required as this is purely a fix to Github Actions.

For reference, the conditional syntax used in this PR was copped from here: https://github.com/actions/runner/issues/409#issuecomment-752775072


Mac OS X support?

Mac OS X support?

Mac OS X is not my forte - so I'm not sure what it needs to take it there. If you have any thoughts on that, please share

It's just work on Mac OS X.
Just copy and paste in a Cocoa Framework
Support Mac OS X just like iOS!!

thanks for the tip - support added as of version 0.6.0 :tada:


Allow incremental loading of all annotated variants

Is your feature request related to a problem? Please describe.
For large projects, the Clinvar Export AJAX API spends a lot of time looking for annotated variants. This lead to problems like timeouts etc.
Describe the solution you'd like
Either greatly speedup queries or break apart into a page-wise loading of variants.
Describe alternatives you've considered
N/A
Additional context
N/A

Clinvar Export is replaced.


Mixer sends spanName 'unknown' for client span requests to ServiceEntry

Bug description
I am using the New Relic Istio adapter (https://github.com/newrelic/newrelic-istio-adapter) to forward trace spans to New Relic for our Istio multi-cluster setup. Doing this we are able to see spans for cross-cluster traffic.
However, the root entry spans are always showing up with a spanName of 'unknown', even though one of the attributes which should populate that field (destination.service.name) is present. When enabling debugging on Mixer, we can see that the Instance seems to build correctly:
&Instance{Name:,Template:tracespan,Params:&types.Struct{Fields:map[string]*Value{apiProtocol: &Value{Kind:&Value_StringValue{StringValue:api.protocol | "",},XXX_unrecognized:[],},clientSpan: &Value{Kind:&Value_StringValue{StringValue:(context.reporter.kind | "inbound") == "outbound",},XXX_unrecognized:[],},destinationIp: &Value{Kind:&Value_StringValue{StringValue:destination.ip | ip("<IP_ADDRESS>"),},XXX_unrecognized:[],},destinationName: &Value{Kind:&Value_StringValue{StringValue:destination.workload.name | "unknown",},XXX_unrecognized:[],},endTime: &Value{Kind:&Value_StringValue{StringValue:response.time,},XXX_unrecognized:[],},httpStatusCode: &Value{Kind:&Value_StringValue{StringValue:response.code | 0,},XXX_unrecognized:[],},parentSpanId: &Value{Kind:&Value_StringValue{StringValue:request.headers["x-b3-parentspanid"] | "",},XXX_unrecognized:[],},requestSize: &Value{Kind:&Value_StringValue{StringValue:request.size | 0,},XXX_unrecognized:[],},requestTotalSize: &Value{Kind:&Value_StringValue{StringValue:request.total_size | 0,},XXX_unrecognized:[],},responseSize: &Value{Kind:&Value_StringValue{StringValue:response.size | 0,},XXX_unrecognized:[],},responseTotalSize: &Value{Kind:&Value_StringValue{StringValue:response.total_size | 0,},XXX_unrecognized:[],},rewriteClientSpanId: &Value{Kind:&Value_StringValue{StringValue:false,},XXX_unrecognized:[],},sourceIp: &Value{Kind:&Value_StringValue{StringValue:source.ip | ip("<IP_ADDRESS>"),},XXX_unrecognized:[],},sourceName: &Value{Kind:&Value_StringValue{StringValue:source.workload.name | "unknown",},XXX_unrecognized:[],},spanId: &Value{Kind:&Value_StringValue{StringValue:request.headers["x-b3-spanid"] | "",},XXX_unrecognized:[],},spanName: &Value{Kind:&Value_StringValue{StringValue:destination.workload.name | destination.service.name | "unknown",},XXX_unrecognized:[],},spanTags: &Value{Kind:&Value_StructValue{StructValue:&Struct{Fields:map[string]*Value{api.name: &Value{Kind:&Value_StringValue{StringValue:api.service | "unknown",},XXX_unrecognized:[],},api.version: &Value{Kind:&Value_StringValue{StringValue:api.version | "unknown",},XXX_unrecognized:[],},connection.securityPolicy: &Value{Kind:&Value_StringValue{StringValue:conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")),},XXX_unrecognized:[],},destination.owner: &Value{Kind:&Value_StringValue{StringValue:destination.owner | "unknown",},XXX_unrecognized:[],},destination.port: &Value{Kind:&Value_StringValue{StringValue:destination.port | 0,},XXX_unrecognized:[],},destination.service.name: &Value{Kind:&Value_StringValue{StringValue:destination.service.name | "unknown",},XXX_unrecognized:[],},destination.service.namespace: &Value{Kind:&Value_StringValue{StringValue:destination.service.namespace | "unknown",},XXX_unrecognized:[],},destination.workload.name: &Value{Kind:&Value_StringValue{StringValue:destination.workload.name | "",},XXX_unrecognized:[],},destination.workload.namespace: &Value{Kind:&Value_StringValue{StringValue:destination.workload.namespace | "unknown",},XXX_unrecognized:[],},request.auth.principal: &Value{Kind:&Value_StringValue{StringValue:request.auth.principal | "unknown",},XXX_unrecognized:[],},request.host: &Value{Kind:&Value_StringValue{StringValue:request.host | "unknown",},XXX_unrecognized:[],},request.operation: &Value{Kind:&Value_StringValue{StringValue:conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown"),},XXX_unrecognized:[],},request.path: &Value{Kind:&Value_StringValue{StringValue:request.path | "",},XXX_unrecognized:[],},request.protocol: &Value{Kind:&Value_StringValue{StringValue:context.protocol | "unknown",},XXX_unrecognized:[],},source.owner: &Value{Kind:&Value_StringValue{StringValue:source.owner | "unknown",},XXX_unrecognized:[],},source.workload.name: &Value{Kind:&Value_StringValue{StringValue:source.workload.name | "unknown",},XXX_unrecognized:[],},source.workload.namespace: &Value{Kind:&Value_StringValue{StringValue:source.workload.namespace | "unknown",},XXX_unrecognized:[],},},XXX_unrecognized:[],},},XXX_unrecognized:[],},startTime: &Value{Kind:&Value_StringValue{StringValue:request.time,},XXX_unrecognized:[],},traceId: &Value{Kind:&Value_StringValue{StringValue:request.headers["x-b3-traceid"] | "",},XXX_unrecognized:[],},},XXX_unrecognized:[],},AttributeBindings:map[string]string{},CompiledTemplate:,}

This is the ServiceEntry for the global service:
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
  name: productpage-mvp
spec:
  hosts:
  # must be of form name.namespace.global
  - productpage.bookinfo.mvp.global
  location: MESH_INTERNAL
  ports:
  - name: http1
    number: 9080
    protocol: http
  resolution: DNS
  addresses:
  - <IP_ADDRESS>
  endpoints:
  - address: cluster.example.com
    ports:
      http1: 15443 # Do not change this port value

As expected, the traces for this ServiceEntry show up with destination.service.name set to productpage.bookinfo.mvp.global, and workload information missing (also expected). The spanName, as stated before, is unknown - despite spanName: &Value{Kind:&Value_StringValue{StringValue:destination.workload.name | destination.service.name | "unknown",}.
The New Relic adapter does not modify the spanName value; it simply forwards the value it receives from Mixer (see https://github.com/newrelic/newrelic-istio-adapter/blob/master/trace/handler.go#L51-L101).
So, this seems like a bug, since the expected behavior would be that spanName would be set to destination.service.name as specified in the instance:
apiVersion: config.istio.io/v1alpha2
kind: instance
metadata:
  name: "newrelic-span"
  namespace: istio-system
  labels:
    app.kubernetes.io/name: newrelic-istio-adapter
    helm.sh/chart: newrelic-istio-adapter-1.0.0
    app.kubernetes.io/instance: release-name
    app.kubernetes.io/managed-by: Tiller
    app.kubernetes.io/version: 2.0.1
spec:
  template: tracespan
  params:
    apiProtocol: api.protocol | ""
    clientSpan: (context.reporter.kind | "inbound") == "outbound"
    destinationIp: destination.ip | ip("<IP_ADDRESS>")
    destinationName: destination.workload.name | "unknown"
    endTime: response.time
    httpStatusCode: response.code | 0
    parentSpanId: request.headers["x-b3-parentspanid"] | ""
    requestSize: request.size | 0
    requestTotalSize: request.total_size | 0
    responseSize: response.size | 0
    responseTotalSize: response.total_size | 0
    rewriteClientSpanId: "false"
    sourceIp: source.ip | ip("<IP_ADDRESS>")
    sourceName: source.workload.name | "unknown"
    spanId: request.headers["x-b3-spanid"] | ""
    spanName: destination.workload.name | destination.service.name | "unknown"
    spanTags:
      api.name: api.service | "unknown"
      api.version: api.version | "unknown"
      connection.securityPolicy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
      destination.owner: destination.owner | "unknown"
      destination.port: destination.port | 0
      destination.service.name: destination.service.name | "unknown"
      destination.service.namespace: destination.service.namespace | "unknown"
      destination.workload.name: destination.workload.name | "unknown"
      destination.workload.namespace: destination.workload.namespace | "unknown"
      request.auth.principal: request.auth.principal | "unknown"
      request.host: request.host | "unknown"
      request.operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown")
      request.path: request.path | ""
      request.protocol: context.protocol | "unknown"
      source.owner: source.owner | "unknown"
      source.workload.name: source.workload.name | "unknown"
      source.workload.namespace: source.workload.namespace | "unknown"
    startTime: request.time
    traceId: request.headers["x-b3-traceid"] | ""

This doesn't seem to me to be related directly to a multicluster setup...but rather the use of a ServiceEntry.
Expected behavior
spanName is populated with destination.service.name.
Steps to reproduce the bug
Install Istio 1.4.5 with a ServiceEntry, generate traffic/spans, view the client spans generated.
Version (include the output of istioctl version --remote and kubectl version and helm version if you used Helm)
Istio: 1.4.5
Kube: 1.15.7
How was Istio installed?
Helm template
Environment where bug was observed (cloud vendor, OS, etc)
kops - aws

I believe the workaround here is to switch the ordering of the CEL expression. destination.workload.name is likely set by the kubernetesenv adapter to "unknown", so the expression is short-circuiting.
I suggest: spanName:  destination.service.name  | destination.workload.name | "unknown" instead.
Closing this issue, as Mixer is deprecated and deleted.


Ensure datasets are emitted from the right task

If models are run with no tests, we should emit the dataset from the model.
If models are run with tests, we should emit the dataset from the test. This way, if a model breaches the tests, we don't run things downstream.
This should be an optional configuration.

@javihernovoa are you using openlineage-dbt? I think it may be worth reopening the ticket you created. I have a feeling it may be also related to https://github.com/astronomer/astronomer-cosmos/issues/305

@tatiana , not using openlineage-dbt. #305 does seem related!
Do you want me to reopen #473 and link it to #305?


Fixed #24290 -- Skipped postgres_tests if not running with PostgreSQL.

I'm not very satisfied of the special case in runtests.py but that looks good enough for now, ship it.


Sample size training dataset

For this particular model mentioned in the paper, what is the minimum training sample size dataset to get a prediction of the segmentation masks?  Is it possible that 100 images for the training dataset, trained for 100K steps and all the parameters mentioned in the suggested python command is sufficient?

no, I think at least 1000 to get a fine result


[Rebrand] Update README.md

It's important to reflect rebrand guidelines into the repository name just like the URL.

Crawlera is still mentioned in many places of the README. Do we want to update all references?. Otherwise, should we add a note explaining what "Crawlera" is for people that stumble upon it?

@pablohoffman Better to update it throughout the README. I'll ping you once it's done.

@pablohoffman I've updated the read of the README.md where it was appropriate to replace Crawlera with Zyte Smart Proxy. Please review.


Need better instructions for integrating plugin with kn cli

The docs in integration-with-kn only point to the kn CLI docs that state that any plugin must have a kn- prefix. Curious why the func plugin doesn't conform to this out-of-the-box. I had to rename it to kn-func to get picked up as a kn plugin. This should at least be documented more clearly to help new users.

@trisberg the install document has changed a bit over the last few months. Can you please take a look and close this issue if it resolves your concerns? The document now includes a few different ways to install, including brew install func and direct download. The need to name a binary kn-func is no longer there.

Looks like I still need to rename when using a direct binary download

Well, you need to rename if you want to use it as a kn plugin, and don't have access to brew. But you can also just use it as func standalone. We don't intend to change the name of the binary for downloads, afaik. This is similar to how kn itself works. The downloaded binaries from github are named according to architecture.
https://github.com/knative/client/releases/tag/knative-v1.5.0

/assign

This should be resolved in https://github.com/knative/docs/pull/5243


用flutter 3.10，build macos

Running pod install...                                           2,183ms
Building macOS application...
/Users/hao/ideaProject/aidea/macos/Pods/Pods.xcodeproj: warning: The macOS deployment target 'MACOSX_DEPLOYMENT_TARGET' is set to 10.6, but the range of supported deployment target versions is 10.9 to 12.3.99. (in target 'FMDB' from project 'Pods')
error: No profiles for 'cc.aicode.flutter.askaide.askaide' were found: Xcode couldn't find any Mac App Development provisioning profiles matching 'cc.aicode.flutter.askaide.askaide'. Automatic signing is disabled and unable to generate a profile. To enable automatic signing, pass -allowProvisioningUpdates to xcodebuild. (in target 'Runner' from project 'Runner')
** BUILD FAILED **
flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.10.0, on macOS 12.5.1 21G83 darwin-x64, locale zh-Hans-CN)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
[✓] Xcode - develop for iOS and macOS (Xcode 13.4)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2022.1)
[✓] IntelliJ IDEA Ultimate Edition (version 2022.2.4)
[✓] VS Code (version 1.81.1)
[✓] Connected device (2 available)
[!] Network resources
✗ An HTTP error occurred while checking "https://github.com/": Connection closed before full header was received

问题已解决


findComponentRoot unable to find element

I'm getting the following error:

Uncaught Error: findComponentRoot(..., .<IP_ADDRESS>.0.$1/=11=2$0.$<IP_ADDRESS>.1.1:$0.0.0.$header_0.0): Unable to find element. This probably means the DOM was unexpectedly mutated (e.g., by the browser), usually due to forgetting a <tbody> when using tables, nesting tags like <form>, <p>, or <a>, or using non-SVG elements in an <svg> parent. Try inspecting the child nodes of the element with React ID ``.

Note, I'm using React 0.14.9.
When I go in the debugger and look at the React node cache, I find that .<IP_ADDRESS>.0.$1/=11=2$0.$<IP_ADDRESS>.1.1:$0.0 is the first week row shown in BigCalendar:

Is something funky going on in EventRowMixin.getRowHeight()?  (Which I'm surprised doesn't return the height?)

I thought mutating even a DOM element's style directly is discouraged?
https://github.com/intljusticemission/react-big-calendar/blob/master/src/TimeGrid.js#L408

It's "discouraged" because it's not very react-y but in this case it's appropriate. It's probably not the source of your error as it' is supported by React. More likely you have another error above that, that is the "true" error.

Okay, any idea where I can hunt for the cause of this error?  I'm creating a very simple calendar:
<BigCalendar
          events={[]}
          date={date}
          view={view}
          onNavigate={onNavigate}
          onView={onView}
        />

onView and onNavigate just put the view/date in URL query params, and I parse and pass those back into the BigCalendar.

I'm also strangely seeing events flash in and out on Sundays when I navigate between months.  I think that must be related.

Well, something is going horribly wrong in other views too but React sure doesn't make it easy to figure out.  I thought maybe it was a duplicate React issue but I can't tell.  Anyway, I'll stop bothering you about this issue.

Okay, I figured out what mistake I made, and I'm just posting about it here in case you're wondering.
After a lot of digging, I realized a component I wrote a long time ago was calling setState during its componentWillUpdate, which I didn't realize at the time is a no-no.  This was triggering a second call to Month's componentWillReceiveProps before its componentWillUpdate, leading to all kinds of nastiness.
There's an old open issue about what error setState should throw during componentWillUpdate: https://github.com/facebook/react/issues/2682.


Add docfx website for documentation

This PR sets up the docfx infrastructure for documentation. Two points:

I modified the GitHub actions recipe dotnet.yml, but not sure if its the right modification
There is no GitHub Actions recipe added yet for online docs generation as it seems we are revamping the GitHub Actions workflow https://github.com/bonsai-rx/zeromq/pull/23 and I still need to learn how to do that.

@bruno-f-cruz @glopesdev


The source code for 3.5.6

Hello team,
I could not find the source code for the version 3.5.6. Can you please direct me towards that?
Regards,
Rahul

Not sure that version existed. https://unpkg.com/browse/json2csv/ has a versions dropdown with all versions published to npm.

Btw, @rahulmohang is there any reason to keep using such an old version instead of updating?

Hi @juanjoDiaz , @knownasilya ,
Thank you for the answers.
I was asked this by the project team that I support. I will just ask them and come back to you. Thank you.
Regards,
Rahul


Android Support

Are there any plans to add android support?

Currently there are no such plans, since react-native 0.11 will make this module obsolete. I would expect the core react-native team to provide synthetic keyboard events for both iOS and Android.


Failed to deserialize KDL node

I'm trying to follow the documentation step by step, and the tool successfully created the chroot, cloned my fork of the aports repo and loaded my existing keys. Great! I then tried alpkg fetch bazel6 which failed halfway through with:
  × Failed to parse Zellij configuration
   ╭─[/home/strophy/apkbuilds/pkg-edit-layout.yml:1:1]
 1 │ # https://zellij.dev/old-documentation/layouts.html
   · ─┬
   ·  ╰── Failed to deserialize KDL node.
Possible reasons:
- Missing `;` after a node name, eg. { node; another_node; }
- Missing quotations (") around an argument node eg. { first_node "argument_node"; }
- Missing an equal sign (=) between node arguments on a title line. eg. argument="value"
- Found an extraneous equal sign (=) between node child arguments and their values. eg. { argument="value" }
 2 │ tabs:
   ╰────
  help: For more information, please see our configuration guide: https://zellij.dev/documentation/configuration.html

Is this a configuration error or has something changed? The file exists and seems to contain some YML config for Zellij. Removing the comment at the beginning results in the same error on a different line.

Hey! 🐻
With the new versions of Zellij they switched to a new configuration format. I just pushed eba365fe98467c3b75daa55bda58f3ba8abf8e8d which should fix this.
Can you check and confirm?


No horizontal scrolling

The tool is nice, but the list can be very wide and even a widescreen might not be enough to see all columns.
I would like to have a horizontal ruler to scroll left and right.

thank you for your suggestion, I will try to implement it as an option

option in 1.6.4


Dep cleanup and ts type declarations.

Let's ship it and see what's what. Worse comes to worst we can roll it back


Implement iso-surface generator

We plan to port an iso-surface generator from an application into Axom to make the capability available to other applications.  The code implements the marching cubes algorithm.  The input is a scalar real, node-centered value and computes a surface mesh corresponding to a certain value of that field.
Once the porting is completed, we will GPU-ize the new code, as a separate issue.

Resolved with PR https://github.com/LLNL/axom/pull/1178

Resolved with PR https://github.com/LLNL/axom/pull/1178


<EMAIL_ADDRESS>decompress error

PS C:\Users\Sunil> scoop install twilio
Installing 'twilio' (5.8.0) [64bit] from twilio-scoop bucket
twilio-win32-x64.tar.xz (39.8 MB) [===========================================================================] 100%
Checking hash of twilio-win32-x64.tar.xz ... ok.
Extracting twilio-win32-x64.tar.xz ... ERROR Exit code was 2!
Failed to extract files from C:\Users\Sunil\scoop\apps\twilio\5.8.0\twilio-win32-x64.tar.
Log file:
~\scoop\apps\twilio\5.8.0\7zip.log

can you try running this command in powershell as an admin. Its mentioned in the doc here


[eve]  port can't use after installed.

Describe the bug
A clear and concise description of what the bug is.
after ./vcpkg install eve
add this line  find_package(eve CONFIG REQUIRED) to CMakeLists.txt
and when configure , report can't find eve-config.cmake.
Environment

OS: Linux
Compiler: gcc 11.2

To Reproduce
Steps to reproduce the behavior:

./vcpkg install eve
add  find_package(eve CONFIG REQUIRED)
configure add see configure error
Repro code when

Expected behavior
Should can use find_package to find eve port.
Failure logs
-(please attached failure logs)
1> [CMake] CMake Error at /home/rob/vcpkg/scripts/buildsystems/vcpkg.cmake:824 (_find_package):
1> [CMake]   Could not find a package configuration file provided by "eve" with any of
1> [CMake]   the following names:
1> [CMake]
1> [CMake]     eveConfig.cmake
1> [CMake]     eve-config.cmake
1> [CMake]
1> [CMake]   Add the installation prefix of "eve" to CMAKE_PREFIX_PATH or set "eve_DIR"
1> [CMake]   to a directory containing one of the above files.  If "eve" provides a
1> [CMake]   separate development package or SDK, be sure it has been installed.
1> [CMake] Call Stack (most recent call first):
1> [CMake]   clang_rename/CMakeLists.txt:8 (find_package)
Additional context
Add any other context about the problem here.

@jiayuehua eve is not exporting cmake config correctly, it's a port bug and I will fix it by adding or exporting usage. :)


Modify OracleDB connection string format.

Due to the accidental deletion of the previous warehouse, #2832 cannot be merged, causing trouble to everyone, I am sorry. Now, I resubmit it and the revised content is exactly the same as #2832. I also hope that everyone will spare no effort to help review, thank you.

Codecov Report

Merging #2970 into dev will increase coverage by 2.22%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##                dev    #2970      +/-   ##
============================================
+ Coverage     37.19%   39.42%   +2.22%
- Complexity     2559     2703     +144
============================================
  Files           435      435
  Lines         20020    20121     +101
  Branches       2426     2453      +27
============================================
+ Hits           7447     7933     +486
+ Misses        11907    11432     -475
- Partials        666      756      +90

Impacted Files
Coverage Δ
Complexity Δ

...olphinscheduler/dao/datasource/BaseDataSource.java
50.00% <ø> (+50.00%)
15.00 <0.00> (+15.00)

...olphinscheduler/api/service/DataSourceService.java
7.27% <100.00%> (+5.05%)
5.00 <0.00> (+2.00)

...phinscheduler/dao/datasource/OracleDataSource.java
90.90% <100.00%> (+90.90%)
6.00 <2.00> (+6.00)

.../server/worker/processor/TaskExecuteProcessor.java
10.16% <0.00%> (-27.12%)
1.00% <0.00%> (-2.00%)

...ver/master/consumer/TaskPriorityQueueConsumer.java
38.68% <0.00%> (-20.14%)
16.00% <0.00%> (ø%)

...duler/server/entity/DataxTaskExecutionContext.java
75.00% <0.00%> (-20.00%)
11.00% <0.00%> (-2.00%)

...inscheduler/common/task/sqoop/SqoopParameters.java
74.00% <0.00%> (-6.00%)
25.00% <0.00%> (+10.00%)
:arrow_down:

...e/dolphinscheduler/remote/NettyRemotingClient.java
51.07% <0.00%> (-2.88%)
9.00% <0.00%> (-2.00%)

...dolphinscheduler/dao/entity/ProcessDefinition.java
80.95% <0.00%> (-1.98%)
44.00% <0.00%> (ø%)

.../dolphinscheduler/server/utils/FlinkArgsUtils.java
87.03% <0.00%> (-1.43%)
10.00% <0.00%> (ø%)

... and 81 more

Continue to review full report at Codecov.

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


Post time not reported properly

Generic information

OS name and version: Both
Application build code: N.A.
Network type (mobile/Wi-Fi): Both

Bug description
Inside a single post item, the posting time does not appear correct. After a minute that a post has been created, the text displays "A couple of hours ago". This is due to the fact that the time is considered to be in UTC instead of the local user time zone.
Steps to reproduce

Create a post
Wait a few minutes
Look at the posting time

Expected behavior
The posting time should be appropriately displayed based on the current timezone of the user, not UTC.

This appears to be already fixed with build code 4018

This still happens.
The time on Mooncake

vs the time on Big Dipper

This is the transaction
https://morpheus.desmos.network/transactions/C14C755A4ECD6723C2E1F45E452C152C72559DE14220157C51B0EF434E615BA0


404

everytime i try copy from google drive to google drive i got this error
"Failed to copy: googleapi: Error 404: File not found:"
found this solution but it for rclone only. not gclone.
you may need integrate with like this https://beta.rclone.org/branch/fix-drive-resourcekey/v1.59.0-beta.6141.d206761d2.fix-drive-resourcekey/

+1

I can't fix this since this issue is from rclone/googleapi. Better wait for them to fix it.


LAN hostname stops resolving

Starting yesterday, kudu1 often gets not accessible by it's kudu1.local from other LAN hosts (say HO).

From HO, ping kudu1.local not finds the host. Using ip address it goes through.
From kudu1, ping and ssh works to HO.
Rebooting kudu1 doesn't help.

sudo service avahi-daemon restart instantly resolved the issue. Not sure what's going on.

Workaround found so closing, but if this persists we need a permanent fix.

This also happened today for t440s. We need to look into this at least and figure out if we can come up with a fix/workaround.

Not having seen this for awhile.


pipeline: drop tree/output ID from results

Now with the release out, with the German holiday over, and all callers adjusted, we can proceed and drop the output_id and tree_id from the osbuild results.
The osbuild CI passes with this. Lets see what Schutzbot has to say!
Resolves #390.

(Changed to export() on the actual ObjectStore.Object. This allows using it even if we do not commit.)

I merged gicmo/ostree-osbuild-demo#25 :partying_face:  This can go in!


Support new Java GC algorithms (Shenandoah and ZGC) in JvmMonitor

In this code:
https://github.com/apache/incubator-druid/blob/431d3d8497f9079857c3baa7ae7ab4cb44a22355/java-util/src/main/java/org/apache/druid/java/util/metrics/JvmMonitor.java#L253-L271

i believe this is still relevant


Gracefully show errors on the app states

Done in the pull request, waiting for the merge to the Master.

I voted "Impact: Small" because I understood that Impact is from a user facing perspective, and this is a developer "behind-the-scenes" type improvement. Perhaps we need clarity on the definitions.


[fix] node v10.0 lacks fs.promises

In this node version, fall back to util.promisify of the callback version.
Fixes https://github.com/npm/cli/issues/2623. Fixes https://github.com/npm/cli/issues/2652. Fixes https://github.com/npm/cli/issues/2625.

Updated the tests to run on the .0s as well, but altho coverage is at 100% CI-wide, it's no longer at 100% job-wide.
Typically I use codecov rather than per-run coverage validation to handle this case, since in aggregate this surely has 100% coverage.


Generated copyWith looses type information if nested in another class

Hi :)
I have the following (very strange) issue as an extension to the environment in #24.
Image the following class definition:
@immutable
@MappableClass()
class SingleSetting<T> with Mappable {
  final List<T>? properties;

  const SingleSetting({
    this.properties,
  });
}

@immutable
@MappableClass()
class Settings with Mappable {
  final Map<String, SingleSetting>? settings;

  const Settings({
   this.settings,
  });
}

If I initiate something like
SingleSetting setting = SingleSetting<String>();
the condition
setting.copyWith(properties: ['test']).runtimeType == SingleSetting<String>
is true.
If I prepare the following class
Settings settings = Settings<String>;
settings = settings.copyWith(settings: {'Test': const SingleSetting<String>(properties: ['test'])});
SingleSetting setting = settings.settings['Test'];
the condition
setting.runtimeType == SingleSetting<String>
is true as expected.
However the condition
setting.copyWith(properties: ['test']).runtimeType == SingleSetting<String>
is false but
setting.copyWith(properties: ['test']).runtimeType == SingleSetting<dynamic>
is true.
The behavior is very strange and for now, I can't explain it. Do you have any ideas, about what the issue can be? Thank you!

Ok makes sense. Its because for this class the copyWith is still an extension and not a mixin, which causes the type parameter to get lost.
So I just change it to mixins everywhere.

Ok, good, that it somehow makes sense. I was already worried to write a complete stupid GIT issue :D

If you are interested why this is:
Extensions work with the static type of an object, while mixins work with the runtime type.
So having an extension on A, then for A<dynamic> a = A<int>() the extension would only get T = dynamic while the same as a mixin would have the correct type T = int

Thanks for the explanation! I wasn't aware of that, as well.

Published in next prerelease

Hi :)
Unfortunately, the issue still exists in dev.5. Now with:
@immutable
@MappableClass()
class SingleSetting<T> with SingleSettingMappable<T> {
  final List<T>? properties;

  const SingleSetting({
    this.properties,
  });
}

@immutable
@MappableClass()
class Settings with SettingsMappable {
  final Map<String, SingleSetting>? settings;

  const Settings({
   this.settings,
  });
}

Do you have some reproduction code?

@nblum37 any updates?

I am unfortunately currently finishing our next release. I hope I will be able to provide the reproduction code next week.

I will close this now. If the issue persists in the newest version (2.0.0-dev.8) please reopen.

I will check it with the new dev version :)


Cannot add HA integration

The old (ghealey - thank you!) Ampli integration stopped working so I upgraded the Amplipi software (confirmed 0.4.5, firmware 1.9). Basic web interface looks fine. However, after installing the newer micro-nova HACS driver and rebooting HA (multiple times now), HA doesn't automatically discover the Amplipi and when attempting to add the integration manually it continues to present an error:
Config flow could not be loaded: 500 ...

FWIW: I don't think my local router allows amplipi.local to resolve automatically and I'm suspicious that the instructions seem to assume this for auto-discovery and that there may be no other UI path to setup.
Any suggestions?

Actually, this is possibly due to upgrading to 2025.1.0b[0123]. Here's the error message:
2024-12-29 12:25:33.379 ERROR (SyncWorker_8) [homeassistant.util.package] Unable to install package pyamplipi==0.4.11: 0.01s - Debugger warning: It seems that frozen modules are being used, which may
0.00s - make the debugger miss breakpoints. Please pass -Xfrozen_modules=off
0.00s - to python to disable frozen modules.
0.00s - Note: Debugging will proceed. Set PYDEVD_DISABLE_FILE_VALIDATION=1 to disable this validation.
  × No solution found when resolving dependencies:
  ╰─▶ Because pyamplipi==0.4.11 depends on pydantic<2 and pydantic==2.10.4, we
      can conclude that pyamplipi==0.4.11 cannot be used.
      And because you require pyamplipi==0.4.11, we can conclude that your
      requirements are unsatisfiable.

This is a pyamplipi issue so I have created one there: https://github.com/brianhealey/pyamplipi/issues/20


fix aide cron settings

/domain @Betterment/squad-sre
/no-platform @6f6d6172
Context:
Fixes an issue with aide cron settings. Basically, there was a change in ansible versions >2.1 upstream that changed the behavior of how the cron module works. Now it won't let you edit /etc/crontab directly and instead enforces entries applied by the module itself.
This is currently preventing us from building new blueprint images.

<< domainLGTM

<< domainLGTM


Docker Compose example?

Hey, this is exactly what I've been looking for. I'd like to containerize the web app and maintain the xlsx import/export (and all other) capabilities. Any ideas on what it would take to build this into a container?

Hi @wbste , great idea!
I will do that soon. At the time being I haven't even open sourced the server!


[Feature] support both scala 2.11 and 2.12 by pom profile

Search before asking

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

Problem Description
Scala 2.11 is deprecated in spark 2.4 and spark 3 use scala 2.12.Some people compile scala 2.4 in scala 2.12.So it's necessary to provide both 2.11 and scala 2.12 option to user
Description
support both scala 2.11 and 2.12 by pom profile
Use case
No response
solutions
No response
Anything else
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

close with  pr  https://github.com/apache/linkis/pull/4146


cli,config,sql: add experimental zone config SQL syntax

PR: https://github.com/cockroachdb/cockroach/pull/19140

Learned this is purely experimental at the moment, so closing for now.


Duplicate

I don't know why I have 2 style tags in head. When built, they didn't extracted to vendor-*.css too. Does anyway to load CSS separately or exclude it?

Thanks! I just want to modify CSS to match our style. But currently it isn't optimal because I must add !important to each line of my CSS file (my CSS file render before chart's CSS).

Maybe try a higher specificity like using an ID selector will help you to not write !important for each line.
#your-app .apexcharts-tooltip {
  // styles
}


Privacy Policy Link in Footer Fails from an Admin Page

If I click the privacy policy link in the footer when viewing an admin page, I get a not found error. The route is incorrectly including the Admin part of the path. I believe the link needs to be amended to include the correct area.

@stevejgordon I'm looking into it

@SarabjotSingh1986 Are you still looking into this one? It looks like a fix was merged, so perhaps this issue needs to be closed?


MAC address randomization

Hey! Cool library. Out of curiosity, how does this handle MAC address randomization? Will it double count?

It does not handle MAC address randomization.
To be honest, I can't tell if this matters yet. I haven't seen any MAC randomization take place yet even though the people around me have iPhones and I have a Pixel which all supposedly do randomization. However, in my use-case the phones are affiliated, which, I suppose does not prompt the randomization. But I've run this in a place where people may be unaffiliated with the network, and even then I do not see tons of random MACs yet....

The OUI check may be removing some (at least iOS) devices where the randomized mac falls into unrecognised ranges. I opened #13 to track making it optional.

Here is an interesting paper: https://arxiv.org/pdf/1703.02874.pdf
It seems to suggest that certain phones use a very specific OUI for their randomization, which will allow detecting them as cellphones (though one would be unable to track them individually). It seems that only iPhone has a random MAC address

the same paper schollz linked mentions sending a Request-to-Send (RTS) frame, if you already know the global MAC.
So if my phone's MAC is "00:01:02:03:04:05", i figure I could use scapy/libtins to send an RTS frame with "00:01:02:03:04:05" as the receiver address (RA). And the my phone, having this mac address, would reply with a Clear-to-Send (CTS) frame, so I would know it was in proximity.
Maybe you could just send out RTS frames for every possible mac address for a manufacturer.
for example, I used [https://www.wireshark.org/tools/oui-lookup.html](this list of manufacturer OUI's to find one of apple's): 00:03:93
so just send out RTS frames for every MAC address from 00:03:93:00:00:00 to 00:03:93:FF:FF:FF
if a phone with that MAC address exists, then it would reply with a CTS frame and you would know it was near you.

Hmm - that's 24 bits worth of MAC addresses to try.
2^24 = 16,777,216
That is an awful lot of MAC addresses to brute force...lol.
I'd like to see if there's a solution the MAC randomisation problem as well though.

Yeah, I think they all randomize MACs. What I have found with my testing is that the real Mac address will be included in the list of addresses captured. Unfortunately the wildcard filter does not help with uniques.

@Timru Thats cool, thanks! Do you know if tshark can extract that information?

I'm using scapy to capture packets but i'm sure tshark should be able too. You have to filter for packets with type = 1 and subtype = 12 (CTS).... type = 1 & subtype 11 is RTS. I've also looked into your code regarding device counting and you should include 'unkown' types in your filter because many chinese manufacturers dont have a officially registered oui but a private one.
I'm working on an approach to deliver precise information about present devices because in my opinion probe requests are not sufficient enough due to differences in probing rates.

@Timru Do the RTS/CTS messages also have RSSI information?

I will look later into it... Personally i'm not a huge fan of RSSI information because of the variance after certain distance. Interestingly you can also use RTS/CTS for indoor localization which can be achieved by comparing timestamp information in the packets in contrast to RSSI strength. See http://www.ece.umd.edu/~zcui/Publications/Mobiquitous2015.pdf

We did wifi tracking at a major fair with 60k people a day with 4 raspis monitoring probe requests, last month. We captured more than 4.5 million packets and found that 80% of all MAC addresses were randomized.

stripe42 could you give us details on your rpi setup, we would like to run some tests at an upcoming event.

@timru it appears you couldn't perform RTS/CTS attack targeting Global MAC as per your paper https://ieeexplore.ieee.org/abstract/document/8730828
It is odd that Martin et al claim to have a 100% success even in randomized devices.

@feochoa
It depends how you define 100% success... I tried the attack and the devices only respond upon sending a probe request containing the real device MAC. In this case, we would see the device anyway over the probe request and wouldn't need the RTS/CTS packets in the first place. To me it looks like Martin el al spammed RTS messages to global MAC of devices and received CTS responses without taking into account when or why these responses happen. So yes, the attack works against 100% of devices but only  when the device is sending out a probe request with its real MAC. I was quite disappointed by this as the application of this attack should have been the foundation of my master thesis and turned out to be rather useless. I just hope that i didn't make any mistakes reproducing the attack but i did not find any code/papers that actually support the initial purpose of this attack: Pinging a device by its global MAC and receiving an answer any time.

@feochoa
It depends how you define 100% success... I tried the attack and the devices only respond upon sending a probe request containing the real device MAC. In this case, we would see the device anyway over the probe request and wouldn't need the RTS/CTS packets in the first place. To me it looks like Martin el al spammed RTS messages to global MAC of devices and received CTS responses without taking into account when or why these responses happen. So yes, the attack works against 100% of devices but only when the device is sending out a probe request with its real MAC. I was quite disappointed by this as the application of this attack should have been the foundation of my master thesis and turned out to be rather useless. I just hope that i didn't make any mistakes reproducing the attack but i did not find any code/papers that actually support the initial purpose of this attack: Pinging a device by its global MAC and receiving an answer any time.
From Matte:
"Unlike previous work and our own tests, they claim to reach a success rate of 100% with the RTS
attack." - sounds to me like they were not successful either at performing the attack.

Do you have any code for RTS/CTS attack, any py package different from scapy to perform this attack ?
We can collaborate and work together to make it, i'm working in this attack since January ..

@feochoa
It depends how you define 100% success... I tried the attack and the devices only respond upon sending a probe request containing the real device MAC. In this case, we would see the device anyway over the probe request and wouldn't need the RTS/CTS packets in the first place. To me it looks like Martin el al spammed RTS messages to global MAC of devices and received CTS responses without taking into account when or why these responses happen. So yes, the attack works against 100% of devices but only when the device is sending out a probe request with its real MAC. I was quite disappointed by this as the application of this attack should have been the foundation of my master thesis and turned out to be rather useless. I just hope that i didn't make any mistakes reproducing the attack but i did not find any code/papers that actually support the initial purpose of this attack: Pinging a device by its global MAC and receiving an answer any time.
From Matte:
"Unlike previous work and our own tests, they claim to reach a success rate of 100% with the RTS
attack." - sounds to me like they were not successful either at performing the attack.

Do you have any code for RTS/CTS attack, any py package different from scapy to perform this attack ?
We can collaborate and work together to make it, i'm working in this attack since January ..

I think the best way to address this issue is to fake hundreds of common APs SSID to force the phone to drop the real MAC
like https://null-byte.wonderhowto.com/how-to/use-esp8266-beacon-spammer-track-smartphone-users-0187599/

@feochoa
It depends how you define 100% success... I tried the attack and the devices only respond upon sending a probe request containing the real device MAC. In this case, we would see the device anyway over the probe request and wouldn't need the RTS/CTS packets in the first place. To me it looks like Martin el al spammed RTS messages to global MAC of devices and received CTS responses without taking into account when or why these responses happen. So yes, the attack works against 100% of devices but only when the device is sending out a probe request with its real MAC. I was quite disappointed by this as the application of this attack should have been the foundation of my master thesis and turned out to be rather useless. I just hope that i didn't make any mistakes reproducing the attack but i did not find any code/papers that actually support the initial purpose of this attack: Pinging a device by its global MAC and receiving an answer any time.
From Matte:
"Unlike previous work and our own tests, they claim to reach a success rate of 100% with the RTS
attack." - sounds to me like they were not successful either at performing the attack.

Do you have any code for RTS/CTS attack, any py package different from scapy to perform this attack ?
We can collaborate and work together to make it, i'm working in this attack since January ..

I think the best way to address this issue is to fake hundreds of common APs SSID to force the phone to drop the real MAC
like https://null-byte.wonderhowto.com/how-to/use-esp8266-beacon-spammer-track-smartphone-users-0187599/

Like the article states this is a Karma attack which is likely unlawful in business oriented use cases like crowd counting.

Do you have any code for RTS/CTS attack, any py package different from scapy to perform this attack ?
We can collaborate and work together to make it, i'm working in this attack since January ..

I tried the attack both with SCAPY and its C++ equivalent libtins with no real success besides getting responses upon sending out a probe request by the device. For the code i would have to check some old repos.

@Timru I have tried the RTS/CTS attack but different phones not detected, do you know how to calculate the duration of RTS send ?

I think the best way to address this issue is to fake hundreds of common APs SSID to force the phone to drop the real MAC
like https://null-byte.wonderhowto.com/how-to/use-esp8266-beacon-spammer-track-smartphone-users-0187599/

Like the article states this is a Karma attack which is likely unlawful in business oriented use cases like crowd counting.

@Timru I agree that this is the first step of Karma attack, but you can also perform a DoS attack with RTS packets which is unlawful too. In my opinion, the key here is the ethics of the implementation. Cheers.

I think the best way to address this issue is to fake hundreds of common APs SSID to force the phone to drop the real MAC
like https://null-byte.wonderhowto.com/how-to/use-esp8266-beacon-spammer-track-smartphone-users-0187599/

Like the article states this is a Karma attack which is likely unlawful in business oriented use cases like crowd counting.

@Timru I agree that this is the first step of Karma attack, but you can also perform a DoS attack with RTS packets which is unlawful too. In my opinion, the key here is the ethics of the implementation. Cheers.

Do you have any useful scripts to do that ?

Hello, did we had some improvements on the management of the random MAC addresses?

@matteopeluso maybe it can help
https://arxiv.org/abs/1906.02686

In the naval academy paper, I believe they said there is a vendor specific Information Element in the management frame of the probe request which sends a unique value tied to that phone, but I haven't been able to find any other reference to that anywhere else on the interwebz... Am I interpreting that correctly?
Specifically, they said:

... the addition of an Apple vendor specific IE was added to all transmitted probe requests. This made identification of iOS 10 Apple devices trivial regardless of the use of MAC address randomization ...... the data field associated with this IE never changes across devices.

For my use case that would be plenty sufficient, even if it doesn't necessarily match the MAC address.
My use case, would actually even be satisfied by being able to identify a small number of known IOS mac addresses in a non-associated environment. Specifically I'm looking to do access control/tracking for known IOS users, without access points nearby.
@Timru - Do you have any sample python code available that you used when you were probing known IOS MAC addresses?

Hello Guys, I wanted to use this for tracking mass gathering in an area during Covid 19 periods and i too faced this issue, almost all my android/ios mobiles are using randomized Mac Ids now. So even if I have only one phone, it'll be counted as 4-5 or 10. The mac address keeps changing randomly when it is not connected to any network. Is there any solution to this problem?

Hey, back when i did my thesis on this i talked to two companies specialized in WiFi tracking/counting and they told me that its not possible to overcome randomization. They get very accurate results using statistical analysis and prediction methods mostly using the vendor identification. Or you simply estimate crowd size based on devices that are not using randomization. So if 10% of your devices are not using randomization then you can predict total amount of phones by multiplying with 10. (very simple example) Or you get some groundtruth data by counting people in your venue manually and then try to predict that data with the number of probe requests you observed..
Also not every persons carries a wifi enabled device while some carry multiple devices so its never possible to directly map number of devices to number of people. With MAC randomization you just get more noise and have to model more statistically.

@Timru thanks very much

Can anyone help in sample code for RTS/CTS attack or i want to send RTS frame with one ESP32 and i want a nearest mobile or another ESP32 have to respond with CTS Frame. Can i get any basic code to start with. I got all the theory but not able to figure out the code

With mac address randomization on a significant number of devices now, since the code is only scanning for particular oui's, we are probably grossly underestimating the number of people around.


Add support for command ZCOUNT

Add support for the ZCOUNT command in DiceDB similar to the ZCOUNT command in Redis. Please refer to the following commit in Redis to understand the implementation specifics - source.
Write unit and integration tests for the command referring to the tests written in the Redis codebase 7.2.5. For integration tests, you can refer to the tests folder. Note: they have used TCL for the test suite, and we need to port that to our way of writing integration tests using the relevant helper methods. Please refer to our tests directory.
For the command, benchmark the code and measure the time taken and memory allocs using benchmem and try to keep them to the bare minimum.

@JyotinderSingh can I pick this issue

@JyotinderSingh can I pick this issue

Since you are assigned another issue already, let's allow others to pick this one up.

please assign this to me

Pull request which closes this issue https://github.com/DiceDB/dice/pull/1171

Linking #1158: depends on this for integration tests


create SASAP project document

Create a project document showing the SASAP project info serialized into the emerging project description format.

Example XML for SASAP here - https://github.com/NCEAS/project-papers/blob/master/ProjectPageXML2.xml

[ ] Decide what to do about acknowledgments (are funding and acknowledgements two unique elements, or should funding contain acknowledgements?
[ ] Decide if/how we should restrict length of string for tagline
[ ] Decide how to handle logos (all as images? or some type logo?)
[ ] Solidify containers for markdown in project pages (projectDescription, resultsOverview, etc)

@mbjones and @smfreund, not sure if the meeting today is going to be used for more discussion on this, but wanted to get the ball rolling here.
My opinions on the above -

Acknowledgements should have its own slot in project separate from funding since these two things may be completely unrelated.
Describe and give an example of an appropriate length of tagline in the documentation and schema design, but don't bother restricting the length and just expand the top bar with the text (then user can decide if too much text looks bad).
Still a little torn on this one, but I think there should be an  ImageType like TextType and slots can have that type. So for a project, we'd have alogos slot with a list of logos ofImageType.
We went with projectDescription and resultsOverview which will handle  textType and thus markdown.
Need to discuss filters. Could store a filter which containsfilterName (which can be anything), filterOptions within that (which should be a controlled vocabulary within the project - but the project is responsible for making sure the keywords are properly assigned to datasets) and then something like queryFields which is a list of solr query-able fields in which to search for these keywords.

I have the same opinion on points 1 and 2 above.

At our meeting on 3/26 we decided the following -

Add acknoweldgements as a textType
Don't  bother enforcing excess restriction/max length for synopsis (can do this on frontend if we want)
Create ImageType with the elements attribution,  licensed, caption, format,  url, imageBytes
We decided we did not want to re-use distribution here for the url, but we will use the new licensed eml complexType here.
Went with above suggestions (projectDescription, resultsOverview)

Todo

[ ] Look into standards for HTML5 ARIA for accessibility
[ ] Conversation about filters and how to store them

Working repo continues to be my fork
on the 2_2 branch - https://github.com/emilyodean/eml/tree/BRANCH_EML_2_2

Project and collection serialization is captured in this folder.
metacatui-project.xsd contains project schema and metacatui-project.xml is a working example project document.
metacatui-collection.json contains the collection/filter schema and exmplecollection.json is a working example of a collection. metacatui-collection-definitions.json contains definitions for all json attributes.
Working SASAP project document here.

I've reopened this issue since we are still gradually working on updating this document.
I just made a change to the filters that define the SASAP collection that I think would be helpful for @robyngit to look at since she'll be creating the DBO document as well.
Commit: https://github.com/NCEAS/project-papers/commit/ac96a6b981b6264e930aab617b5d89a4b889ab84
I removed the "-obsoletedBy:*" filter since this will get included automatically by the DataCatalogView. (By default, we search for metadata objects that are not obsoleted.)
I also changed the apostrophe character in the SASAP filter since it looks like all the EML documents use the Unicode character U+2019 rather than U+0027.
I also changed the field name to project instead of projectText.

pid for this document is urn:uuid:a03fae16-1ebe-4663-b369-c5f691ae2cb2, will obsolete this pid when the document is updated, and @csjx will assign a seriesID

updated with pid urn:uuid:3f1e5802-661b-4889-a97a-24bd85fa4321. The seriesID (sid) is urn:uuid:db68e045-fe37-4190-aa2f-d79fd854df6d

updated project document with the version from my latest commit - new pid is urn:uuid:89dd0291-918a-49e7-8c30-51e30949411f, sid is the same

I tried to update the project document with a new one (541d6ffb8ef5edcfb28de1931fc3c072825f2276) on the dev knb, but I think my user does not have permission to update the document. I got this:
Updating object autogen.2019020112483505360 with the file at ../project-papers/docs/examples/metacatui-project-sasap.xml.
Error in .local(x, ...) :
  Error updating autogen.2019020112483505360: The provided identity does not have permission to UPDATE the object identified by autogen.2019020112483505360 on the Member Node.

I tried to bug @jeanetteclark about it on slack, but it was too late in the day. I'll bother someone about it on Monday.

I think @jeanetteclark or @csjx will need to add you to the knb-data-admins group. They are the owners of that group. (If either of you could add me as a owner too, that'd be helpful)

Someone got me the permissions. ...and I've already forgotten who it was. ...but thank you person!


Updated to latest dependencies and sorted packages in alphabetical order

Updated to latests dependencies in composer (+ sorted packages in alphabetical order) and in ExpressiveInstaller to install latest versions of packages.
Resolves #135 #136 #137

moving forward, should add the following to maintain the sorting:
"config": {
        "sort-packages": true
}

see https://getcomposer.org/doc/06-config.md#sort-packages

@webimpress I'm merging now, and will take care of the conflicts.


Stack overflow when GATT client is writing GATT characteristic

When the GATT client is writing GATT characteristic, ESP32 crashes and gives the message
***ERROR*** A stack overflow in task ble has been detected.

The problem is caused by insufficient stack size of the FreeRTOS task "ble".
https://github.com/CW-B-W/mynewt-nimble/blob/13f283feaf9d2c6f8febfd58a0beb0c7d537e35b/porting/npl/freertos/src/nimble_port_freertos.c#L49-L50
    xTaskCreate(host_task_fn, "ble", configMINIMAL_STACK_SIZE + 400,
                NULL, tskIDLE_PRIORITY + 1, &host_task_h);

After increasing the stack size, it goes normal
    xTaskCreate(host_task_fn, "ble", configMINIMAL_STACK_SIZE + 800,
                NULL, tskIDLE_PRIORITY + 1, &host_task_h);

The original NimBLE-Arduino uses VHCI, but in this project we use UART.
Therefore I speculate the problem is caused by extra memory usage in
https://github.com/CW-B-W/mynewt-nimble/blob/13f283feaf9d2c6f8febfd58a0beb0c7d537e35b/nimble/transport/uart/src/ble_hci_uart.c

Using uxTaskGetStackHighWaterMark(host_task_h) to measure the stack size usage of ble task.
ESP_LOGE("BLE_GATT_ACCESS_OP_WRITE_CHR", "The stack high water mark for task 1 is %d bytes.", uxTaskGetStackHighWaterMark(host_task_h));

The result is
E (12938) BLE_GATT_ACCESS_OP_WRITE_CHR: The stack high water mark for task 1 is 5776 bytes.

It seems to require > 6000 bytes of stack size


https configuration

Problem:
The current system running on the VM does not use TLS/SSL so can't handle https requests. Hitherto attempts to configure the nginx default.conf file to use ssl certificates have resulted in partial success: The OVE landing page is accessible at https://...:8080 but other sub-pages e.g. the application launcher are not. When a GET request is made for these pages, nginx logs the following:
[info]: client sent plain HTTP request to HTTPS port while reading client request headerrss, client: <IP_ADDRESS>, server: liionsden.rcs.ic.ac.uk, request: "GET / HTTP/1.1", host: "<IP_ADDRESS>:8080"

and only a blank white page can be accessed.
Additionally, the usual background [TRACE] logs e.g.
[TRACE] 25/01/2023, 1:04:16.426 pm - audio            : Responded to sync request

are replaced with an [ERROR] e.g.:
[ERROR] 25/01/2023, 11:13:26.902 am - audio            : Error: Unexpected server response: 400
    at ClientRequest.req.on (/usr/src/app/node_modules/ws/lib/websocket.js:579:7)
    at ClientRequest.emit (events.js:198:13)
    at HTTPParser.parserOnIncomingClient [as onIncoming] (_http_client.js:565:21)
    at HTTPParser.parserOnHeadersComplete (_http_common.js:111:17)
    at Socket.socketOnData (_http_client.js:451:20)
    at Socket.emit (events.js:198:13)
    at addChunk (_stream_readable.js:288:12)
    at readableAddChunk (_stream_readable.js:269:11)
    at Socket.Readable.push (_stream_readable.js:224:10)
    at TCP.onStreamRead (internal/stream_base_commons.js:94:17)

Proposed solution:
It is possible to configure https servers with nginx. There is also a useful looking blog post with an example .conf file that is similar to our setup.
Additional context:
At the moment, to access the server running on the VM a http://... address is needed (not https://). Some browsers will automatically convert http:// to https:// if you have previously visited the site with https://. For Chrome, see these instructions to stop the automatic redirection.
Aha! Link: https://imperial-college-ict.aha.io/requirements/RSE-139-14

After tests in the demonstrator room, it seems that https is not required, and http requests worked fine to the VM from all the PCs and MS Hubs. Suggest we close this issue @AdrianDAlessandro. Could then reopen if it becomes a problem.

Yes, agreed


Swipe Gesture doesn't work

Idk if it's just my phone but swipe gesture doesn't work when I'm reading, I need to press > button in order for me to read the next chapter so hopefully this will be fix soon https://streamable.com/9xlnzj
also it would be nice if you add horizontal/vertical swipe gesture option in reader bottom sheet similar to this one :

Vertical swipe gesture to read the next chapter is not implemented.
Vertical/Horizontal swipe gesture options to switch between vertical and horizontal reading mode?

Oh okay. I thought my phone is having a problem xd
Yep that's right

I have added swipe gestures to navigate between chapters. I will close this issue as there is another one about horizontal reading mode.


Fix bug of DisableGravatar default value

#18058 made a mistake. The disableGravatar's default value depends on OfflineMode. If it's true, then disableGravatar is true, otherwise it's false. But not opposite.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@dce8887). Click here to learn what that means.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main   #22296   +/-   ##
=======================================
  Coverage        ?   48.15%
=======================================
  Files           ?     1043
  Lines           ?   142404
  Branches        ?        0
=======================================
  Hits            ?    68575
  Misses          ?    65645
  Partials        ?     8184

Impacted Files
Coverage Δ

models/system/setting.go
57.47% <100.00%> (ø)

modules/setting/picture.go
78.18% <100.00%> (ø)

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

We should check/enforce the positive form of settings. So EnableXXX instead of DisableXXX. Makes it easier to work with.

make L-G-T-M work