Respect package.json in sub-folders

Currently, it seems like greenkeeper only respects the package.json within the root directory of a certain repo. If you ask me, it would be awesome if it would also respect all others within in sub-folders.
As an example: When building a Yeoman generator, most people add something like a boilerplate which allows developers to easily scaffold the base of their app. And those boilerplates of course also contain a package.json (since dependencies need to be installed somehow).

Hey @leo,
thanks for your feature request. It is true that Greenkeeper currently only monitors a package.json at the root of the repository.
Wee see that there are valid use cases for package.json files in other places, but currently it's our top priority to nail the npm module/Greenkeeper core experience.
I realize that this might not be the most satisfying answer, but we want to get things right before tapping into too many other fields, that might bring us further away from a thought through, smooth and stable core experience.
Thanks for understanding and giving Greenkeeper a try.
Best,
Stephan

Hi, just a +1 -- I'm not able to use Greenkeeper without this.

@cjb Awesome! :blush: But:

+1 to this. It would be great if there were a config var to manually specify other manifest files. I'm using Greenkeeper on the generator portion of angular-fullstack/generator-angular-fullstack, but it would be great if I could also specify our templates/_package.json file, which is used as the manifest file for the scaffolded project, but but it might be out of the scope of Greenkeeper, since the template manifest file uses EJS to include/exclude dependencies depending on which options the generator's user chooses.

@Awk34 Yes, exactly! That would be so awesome for generators and boilerplates in general.

There's other valid reasons you could face.
For instance: https://github.com/electron-userland/electron-builder#two-packagejson-structure
Other use cases would be projects where you got multiple deploy targets (heroku nodejs apps, react-native and electron apps) where it makes sense to use the same git repo for all the sourcecode.
If you're developing in react you may share some of your code in all of the deploy targets but you have very different dependencies and devDependencies making it impractical to use a root package.json for everything.
I almost regret trying out greenkeeper as now that I've tasted the forbidden fruit I've ended up with splitting my projects into multiple repos.
The benefit of not having to manage dependencies manually heavily outweighs the benefit of having all your codebase in the same repo…

@stipsan that reminds be of Babel as well: https://github.com/babel/babel/tree/master/packages (monorepo)

If you only have one package.json, you can move it to the root and link it from the sub dir (might also works the other way around), then do greenkeeper disable && greenkeeper enable.

I'd also like to see this feature

I'm also running into this issue at the moment.
We have a react-native project with several services inside (mobile app, graphql, etc) and they all have their own package.json.
It would be great if we could have a globbing pattern or something similar in the config to support this use-case.

Suggesting an incremental feature if it could work as a stepping stone... it'll be great if we could initially specify the directory where package.json is (e.g. a .greenkeeper config file in root would work for us).
Background: I work on a project where a single repo contains multiple projects in different languages, and splitting those out to separate repos will incur a whole ton of work on CI config, server config, etc. plus all developers will need to spend a fairly significant amount of time updating their local setup as well... hence we're holding off until this is implemented in some form.

Greenkeeper looks great, and I'd love to be able to use it in my repo with different python/node subfolders. Let me know if there is anything I can do to help. Happy to help review code, test, write code, or anything else.

My need is to monitor 2 package.json files within the same repo

Hello!
We've recently started using Greenkeeper to keep our private NPM repository up to date, but the effect is limited because we have a structure that is designed to limit maintenance to a minimum.
The root of our project contains a package file with developer dependencies, that are used by all (or a large majority) of our NPM modules. The modules themselves are in a directory called modules.
This means we have package files in the following directories:

root/package.json
root/modules/module-a/package.json
root/modules/module-b/package.json
et cetera

Currently, Greenkeeper only checks the first package file in the root. I would hereby like to request a configuration option to scan a glob for package files, making the location(s) completely customizable.
I have not yet taken a look at the code, but if you think a third party could implement this, I would be able to get our management to give this more priority, allowing us to create this feature. If that's the case and you already have an idea of where this should be implemented, please do provide us some filenames.
Quoted content from #308, so that it can be closed.

We deploy on docker, and build several containers using docker compose. This means our package.json is in a sub-folder. Would be nice if greenkeeper recursed.

@boennemann When is this coming?

80 and counting, this is preventing us from adopting greenkeeper in the vast majority of our projects. Any status update?

If you're looking for just the dependency upgrades/updates feature, and don't mind self-hosting (e.g. cron script, or Heroku scheduled task), then you try my open source script here: https://github.com/singapore/renovate
It does not "autodiscover" all package.json files, but you can configure them as a list using CLI options or an environment variable, e.g.
--package-files <list>  List of package.json file names

please please please

Happy 100th 👍, and one full year!  🎉

omg

This thread should be locked, IMHO.  Non value add remarks like the above come off as rude.  We are grateful for your hard work and offerings, GK team.

@cdaringe I agree, I think we've heard enough use-cases about this to gather what the requirements for such a feature would be.

Good news everyone! 🎉
We have just deployed beta support for multiple package.jsons per repo and we are soliciting early community feedback before making a more formal announcement. 📯
If you have any trouble with this, or just have a questions please reply here or email<EMAIL_ADDRESS>📫

Quickstart 🏃♀
Like enabling Greenkeeper for regular repos, adding it to the list of enabled repos in your GitHub App settings page for Greenkeeper will start the multiple-package.json-support.
If it is already enabled, you can disable and re-enable it to get started.
Alternatively, you can push a valid greenkeeper.json file (see below) to the root of your repo to enable multiple-package.json-support.
How it works 🤔
We’re in the process of writing proper docs, so this is just a quick reference. 📎
When you enable a repo and Greenkeeper detects that it has multiple package.json files, your initial PR to start Greenkeeper includes a default greenkeeper.json file. That file determines the way you will get updates. Here is what that looks like:
{
  "groups": {
    "default": {
      "packages": [
        "packages/frontend/package.json",
        "packages/backend/package.json"
      ]
    }
  }
}

Greenkeeper introduces the notion of groups to, well, group different package.json files together. The default case is a default group that includes all package.json files we can find.
In the case above, there are two package.json files in subdirectories. From looking at this, we could imagine that it is a frontend web app that uses JS, and a Node backend app. With the config file above you will get an issue/PR when a dependency in any or both package.json files is updated, with a commit, that updates the dependency in both files.
Now, given the nature of the project, it might be, that you want to update dependencies differently in the frontend and in the backend. There might even be entirely different teams working on this.
In that case, you can update your new greenkeeper.json config file, to look like this:
{
  "groups": {
    "frontend": {
      "packages": [
        "packages/frontend/package.json"
      ]
    },
    "backend": {
      "packages": [
        "packages/backend/package.json"
      ]
    }
  }
}

With this configuration, you will get separate issues/PRs for the different groups, making the backend and the frontend teams independent of each other.
You can have as many groups as you like. There are a few rules for the group names that you can pick and Greenkeeper will open issues with detailed error descriptions, if you introduce errors in your greenkeeper.json.

We’d like to thank everyone for their input and patience and we’re looking forward to see how this works for you. 🤗 ❤ 🌴
PS: We’re now looking at the reverse of this feature: grouping updates that are released from a Monorepo: https://github.com/greenkeeperio/greenkeeper/issues/711

@mAAdhaTTah excellent question. For Greenkeeper, lockfile handling, including yarn, is done in https://github.com/greenkeeperio/greenkeeper-lockfile/ — And we are currently working on getting that updated to support monorepos: https://github.com/greenkeeperio/greenkeeper-lockfile/pull/140
We’ll make sure to make this compatible with yarn workspaces, but no promises yet on when that’s all done.

Great, I'll subscribe to that PR. Would, in the meantime, manually updating the lockfile in the PR'd branch suffice?

Great, I'll subscribe to that PR. Would, in the meantime, manually updating the lockfile in the PR'd branch suffice?

indeed.

I switched to Dependabot many months ago. But hey, congratulations on over two full years! I'll un-sub now so you won't have to hear from me again.

https://blog.greenkeeper.io/announcing-greenkeeper-3-1504f5113998


Docker container not updated?

Describe the bug
Is it possible there is something wrong with the Docker container build process?
I have a cronjob running every night to update to latest, but since a couple of days/weeks I seem to be stuck on 0.111.1?
Steps to reproduce
Deploy container EVCC, check version, stays at 0.111.1
Configuration details
N/A

Log details
N/A

What type of operating system are you running?
Linux
Version
No response

You probably need to change the docker repository that you are using from andig/evcc to evcc/evcc. New docker images are only pushed to evcc/evcc since a couple of days (weeks?).

Yeah... Okay, didn't know that one. Thanks @Caibuk .
/me out.


Issue when Composing External Entities (ExtensionManager)

I've created a version of the Redis cache solution, which uses Newtonsoft.Json and StackExchange.Redis to avoid any issues (separate from this, willing to share if interested).  Since implementing and using the Redis cache, I have seen an issue when starting up our application, with a cryptic error around the ExtensionManager and IsLocked.
After debugging around the solution I have found the problem.  It is around the the Composing of the External Extensions we have created, and the error appears where the computed property IsLocked is used:

Piranha\Entities\Internal\PageTemplate
Prianha\Entities\Internal\PostTemplate

The computed property is making the call to Extend.ExtensionManager.Current.PageTypes/PostTypes, but the Compose method is still building the application from the previous call to Extend.ExtensionManager, which causes (somehow) a NullReferenceException.
Hopefully I am making sense....
Anyway, the problem isn't visible through the default WebCacheProvider because it just stores the PageType/PostType with a IsLocked having a NullReferenceException.  However, when serializing to Json the NullReferenceException is not appreciated and the system falls down.
I have a solution.  But before I submit a pull request, I want to make sure I am doing the right thing, as I  am not 100% sure about the circular reference on start up.  The chain of which seems to be:

ExtensionManager.ExtensionManager()
ExtensionManager.Compose()
ExtensionManager.OnImportsSatisfied()
ExtensionManager.EnsurePageTypes()/ExtensionManager.EnsurePostTypes()

Each of these calls on step 4 will result in the call to IsLocked on the PageType/PostType, which in turn call ExtensionManager.Current which appears to call ExtensionManager.ExtensionManager() (but that could just be Visual Studio) or is null.
My solution is to just change the property to:
public bool IsLocked {
    get {
        if (!String.IsNullOrEmpty(Type))
            try
            {
                return Extend.ExtensionManager.Current.PageTypes.Where(pt => pt.GetType().FullName == Type).SingleOrDefault() != null;
            }
            catch(NullReferenceException)
            {
                return false;
            }
            return false;
    }
}

Is this appropriate for the chain of events?  Or am I going to create a problem somewhere else?

Also, network latency on the manager section is slow in azure Redis.  Is Redis as an azure cache viable for this version of Piranha?  Wondering if their are too many calls for a given object, and if this is a consideration for the next version.
The site renders pages quickly with Redis, it is just the manager section.

Hi there! Try your lock solution out for a while and let me know how it works. In regards to the Redis cache I have never tried it and I didn't write the code with it. Maybe @bapti has any thoughts on this since he contributed it!

Hi, I've been using it for the day and it has not had any issues, will keep it going for the reset of the week and com back to you.
I don't think the Redis libraries are the issue, I think it is the number of calls to the ICacheProvider which is causing hi network latency issues.  I still need to keep investigating, but caching is a pain to get right over a network.  We have seen 7k cache hits and bandwidth hitting 380kb/s in Redis while 1 user was testing the manager section, with page loads of 5-8 seconds.  It wasn't a large number of page calls either.
Will keep investigating, want to make sure the assumption of calls to the ICacheProvider are the issue, I recognise the issue from another project I did in the past.

Just checking up what happened with this issue @mike-jewell since I'm in the midst of releasing a new version. Did you find out anything else about your issue?


Better guidance on the appropriate "Service url" to use

Service URL generally needs to be a collection or deployment level endpoint. This isn't clear from the tool itself (the README somewhat explains) and failing to provide a collection level endpoint, for example, when invoking a collection-level command does not give the user much of an indication as to the problem.
Consider ..

Provide inline examples of valid service URLs (with the login command)
Fuller set of examples in the docs
Show a better message when a "wrong" URL is provided

Gonna change how this works when I fix #141


CFE ES Mempool code uses "uint32" where it should be "cpuaddr"

Fix a leftover case of using uint32 where the intent is to store a memory address.  This is the start address in the "Pool_t" structure.

Imported from trac issue 73.  Created by jphickey on 2015-06-24T10:32:05, last modified: 2019-03-05T14:57:55

Trac comment by jphickey on 2015-07-02 17:04:25:
Pushed commit [changeset:ac5c821] for review

Trac comment by jphickey on 2015-07-09 16:46:36:
This is included in the {{{ic-2015-07-14}}} integration candidate for testing

Trac comment by glimes on 2015-07-13 15:01:12:
Accept.

Trac comment by glimes on 2015-07-16 12:42:53:
Included in [changeset:fe8f06c 2015-07-14 development merge],
now present on Babelfish and IPAS-LIB.

Trac comment by jhageman on 2019-03-05 14:57:55:
Milestone renamed

Trac comment by glimes on 2016-02-25 10:17:32:
these will be fixed in CFE 6.5


FFmpeg Encoding

Are there functions available to support the file encoding system of FFmpeg?

The project itself doesn't have it but you can wrap them the same way they wrapped the decoders.

We haven't focused on the encoding side.  How important is it for you to encode using ffmpeg?

Well, in Videostream, I hit 1.4m users with ffmpeg encoding in the browser. This would be good for media streaming apps in Windows. AppleTV, Roku, Chromecast, etc.. all have a subset of supported video formats.
It would be a hugely appreciated feature!

I agree - support for encoding and filters would be an immensely helpful feature.

Yeah me too agree, would be a killer feature if this could have h264 h265 encoders along with rtmp write(upload function). I have written a winrt universal app component  which captures the screen and tries to upload it to a rtmp server(live streaming), I can share it if anyone is interested. But ffmpeg instruction given here does not include libx264 in it so the com is not finding the encoder. I am not able to compile ffmpeg with libx264. The msys is saying cant recognize the system when I try to compile x264 first as per the instruction given in ffmpeg.org.

@krishnan-unni: I'm interested about that winrt universal app component, could you please share it ?
Thanks.

@bobybacs I'll upload it and send the link. But keep this in mind, I have not been able to test the solution since I couldn't get the libx264 compiled with ffmpeg for windows10 x64. So the av_codec_find_encoder function is not able to find the H264 encoder. And its available for video only now not audio. There could be other errors, its still a WIP code.

I think it is very important. Screen recording is a huge gap in UWP app. And a key shortcoming of surface hub for MS.

Hi,
@krishnan-unni can you send me the link to your screen capture project?
Thanks

Hello,
Mostly I need a way to encode so I'll post this here:

I'd like to save a RTSP to file while also offering a preview. The preview part is done in the sample; how can I save the stream ?

RTSP streamming from VLC connected to my camera works just fine if captured by another VLC over the internet, but works very slow if i capture it with the sample project; any clue as to why ? (VLC is set to H.264 + MP3(Mp4) RTSP)

Thanks !

I need to reencode WAV as OGG files. This would be highly appreciated.


PicklingError: Can't pickle 'tkapp' object: <tkapp object at 0x000000000B66C930>

Hi.  I was excited to find your package for making a progress bar work with pathos multiprocessing.    When I change my original code..
p = pp.ProcessPool(4)
p.map(method, generator)
p.close()
p.join()

to
p_map(method, generator)

I get the following error:
PicklingError: Can't pickle 'tkapp' object: <tkapp object at 0x000000000B66C930>
Should p_tqdm work with Tk objects?
Thanks,
Nick

In other scenarios, I get an error saying it can't pickle generators.  It seems as though perhaps p_tqdm is using the native multiprocessing package and not pathos.  Is there something I need to do to tell p_tqdm to use pathos?

Hmm, p_tqdm should be using pathos since the import is from pathos.multiprocessing import ProcessingPool as Pool. Can you provide a more complete example where you define method and generator so I can see the issue for myself? (Also sorry for not seeing this earlier! I wasn't maintaining the library for a while but I'm hoping to be more active now.)


200: conditional authentication

add new technique to close issue per @netfl0

Closing this as too broad. Nearly all authentication is conditional. The write up indicates something like Behaviorally-dependent Authentication. passing to @hack-sentinel to deconflict with the additions he is currently working.


Full coverage of API v2.0 commands

well what else was I supposed to be doing on those flights yesterday ;-)

always thanks. :+1:


Loading animation while charts draw

Hello all!
I'm trying to figure out how I can show a loading animation while the charts are being drawn. I thought the loader attribute, but I am still not seeing anything. I have 5 line charts that are all being drawn within the same component. Each chart has 4000+ data points so it takes a few seconds to render on my page. Below is what I have tried:
return (

         <Chart chartType='LineChart' loader={
<CircularProgress />
} options={latencyOptions} data={latencyData} />
         <Chart chartType='LineChart' loader={
<CircularProgress />
} options={averageLatenciesOptions} data={averageLatenciesData} />
         <Chart chartType='LineChart' loader={
<CircularProgress />
} options={peakLatenciesOptions} data={peakLatenciesData} />
         <Chart chartType='LineChart' loader={
<CircularProgress />
} options={throughputOptions} data={throughputData} />
         <Chart chartType='LineChart' loader={
<CircularProgress />
} options={iopsOptions} data={iopsData} />

)

Note: CircularProgress is from material-ui library

Is my understanding of the loader attribute incorrect?

The loader prop is used while lazily-loading some js & css assets used by the chart.
For animations, you can add some configurations in the options object like this:
animation: {     duration: 1000,     easing: 'out',     startup: true }

The loader prop is used while lazily-loading some js & css assets used by the chart.
For animations, you can add some configurations in the options object like this:
animation: {     duration: 1000,     easing: 'out',     startup: true }


fix: typo

Fixes a typo in cmd/root.go

@rjsadow After going through the codebase again, had one question: Do we also need to add the Copyright in cmd/root.go?

@rjsadow After going through the codebase again, had one question: Do we also need to add the Copyright in cmd/root.go?

Yes please! We should have the copyright/license info on every file of source code.

/ok-to-test
/lgtm
/approve


Add CodeQL Workflow for Code Security Analysis

Summary
This pull request introduces a CodeQL workflow to enhance the security analysis of this repository.
What is CodeQL
CodeQL is a static analysis tool that helps identify and mitigate security vulnerabilities. It is primarily intra-function but does provide some support for inter-function analysis. By integrating CodeQL into a GitHub Actions workflow, it can proactively identify and address potential issues before they become security threats.
For more information on CodeQL and how to interpret its results, refer to the GitHub documentation and the CodeQL documentation (https://codeql.github.com/ and https://codeql.github.com/docs/).
What this PR does
We added a new CodeQL workflow file (.github/workflows/codeql.yml) that

Runs on every pull request (functionality to run on every push to main branches is included as a comment for convenience).
Runs daily.
Excludes queries with a high false positive rate or low-severity findings.
Does not display results for git submodules, focusing only on our own codebase.

Validation
To validate the functionality of this workflow, we have run several test scans on the codebase and reviewed the results. The workflow successfully compiles the project, identifies issues, and provides actionable insights while reducing noise by excluding certain queries and third-party code.
Using the workflow results
If this pull request is merged, the CodeQL workflow will be automatically run on every push to the main branch and on every pull request to the main branch. To view the results of these code scans, follow these steps:

Under the repository name, click on the Security tab.
In the left sidebar, click Code scanning alerts.

Is this a good idea?
We are researchers at Purdue University in the USA. We are studying the potential benefits and costs of using CodeQL on open-source repositories of embedded software.
We wrote up a report of our findings so far. The TL;DR is “CodeQL outperforms the other freely-available static analysis tools, with fairly low false positive rates and lots of real defects”. You can read about the report here: https://arxiv.org/abs/2310.00205
Review of engineering hazards
License: see the license at https://github.com/github/codeql-cli-binaries/blob/main/LICENSE.md:
Here's what you may also do with the Software, but only with an Open Source Codebase and subject to the License Restrictions provisions below:

Perform analysis on the Open Source Codebase.

If the Open Source Codebase is hosted and maintained on GitHub.com, generate CodeQL databases for or during automated analysis, CI, or CD.

False positives: We find that around 20% of errors are false positives, but that these FPs are polarized and only a few rules contribute to most FPs. We find that the top rules contributing to FPs are: cpp/uninitialized-local, cpp/missing-check-scanf, cpp/suspicious-pointer-scaling, cpp/unbounded-write, cpp/constant-comparison, and cpp/inconsistent-null-check. Adding a filter to filter out certain rules that contribute to a high FP rate can be done simply in the workflow file.

@pikasTech Pinging to check in on a possible followup to this PR?

The new CI did not pass, so it does not meet the basic requirements for merging. Additionally, the support for CodeQL will be further assessed and may be retained or removed after future evaluations. If you are okay with this, please fix the CI first, or close this PR.

@pikasTech Thanks for the comment. The workflow actually is functioning as expected:

The script fail_on_error.py looks through the CodeQL analysis results and forces the workflow to fail if there are errors found.

If the result of this CI is 'functioning as expected', then this PR will compromise the quality identification for all subsequent commits, as all subsequent commits will be set to fail. Sorry, I cannot merge this PR.

@pikasTech I understand. WF has been updated accordingly


Taser Nerf and Blood No Longer Slips

changelog
-taser only fires 1 shot before needing recharge now. ss14 realistic game????
-blood puddles no longer slip
-puddles parent has had slippable remove and its now opt in for children puddles

can you add an actual changelog for the bot

hurrgggggggg yea


ESLint v9 support

Hello, are there plans to update the plugin to support ESLint v9? Thanks!
https://eslint.org/blog/2024/04/eslint-v9.0.0-released/

Hi , @l3ender
Let me investigate what we need to do to update to v9 👍  Thanks

Hi @l3ender
It looks like a breaking change affecting our plugin is planned for v10.0.0. So it should work fine in v9, let us know if you have any issues. Of course, we need to replace the depreacted methods for v10 support.
https://eslint.org/blog/2023/09/preparing-custom-rules-eslint-v9/#context-methods-becoming-properties

We are deprecating the methods in favor of the properties (added in v8.40.0). These methods will be removed in v10.0.0 (not v9.0.0) as they are not blocking language plugins work. Here’s an example that ensures the correct value is used:

Looks like the type in: packages/eslint-plugin/lib/index.js#L5-7 is referencing a deprecated type see types/eslint/index.d.ts#L1280-L1281.


Docker: updated dev.x86_64.stable to dreamview frontend build errors

No description provided.

Dockerfile used:
FROM apolloauto/apollo:dev-x86_64-18.04-20210202_1125
RUN apt-get -y update && \
        apt-get install -y --no-install-recommends \
        libpng-dev nasm && \
        apt-get -y clean && rm -rf /var/lib/apt/lists/*

But when I use the master version released in March 2021, when compiling the front-end, there is still a problem of compilation errors, reminding pngquant failed to build, make sure that libpng-dev is installed.


Remove some now-unneeded VMS controls

As pointed out by @dot-asm in a comment in #3864

Only Richard can approve it...

Running tests, hold on...

thanks for verifying! 1ef4541


Docs docker to spanish

Checklist

[ ] The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
[ ] Links to related issues (if applicable)
[ ] Tests for the changes have been added/updated (if applicable)
[ ] Docs related to the changes have been added/updated (if applicable). If a new feature has been added a Usage Guide has been added for the same.
[ ] For any breaking change/potential downtime/deprecation/big changes an entry has been made in Updating DataHub

@johnfelipe mira este comment en tu otro PR, por favor! https://github.com/datahub-project/datahub/pull/5206#issuecomment-1179268646
Tengo las mismas preguntas de mantener las traducciones si no tenemos algo automático/programático

Overdue response here - we've held off on merging this in due to having limited resources on the DevRel team to shepherd in multi-lingual docs. We are excited to move toward internationalization in the future. Still, we are going to hold off on accepting contributions for doc translations until we have someone on the Core DataHub Team that can keep up with our rapidly evolving codebase & maintain a high level of accuracy in translations into other languages.
Thanks for the understanding here; please feel free to contact me on Slack with any follow-ups!


Monorepo

I know that I just split out the code into multiple modules and repositories in #71 (Europa release), however, it's already becoming challenging for maintaining versioning and collaboration. While we still only have a few modules, I'd like to take the opportunity to converge into a monorepo. That way, I can perhaps ignore the loss of git history (unless there's an easy way to preserve it).
I'll be looking at using something like Lerna to make it easier to publish etc. I was waiting for it to be adopted more and thoroughly tested, and babel has been using it for some time now. The packages will remain the same, they'll just all fall under this repository.
This should not involve a breaking change so can be done in a minor release. I'll add more info to this issue as my investigation begins.

This is going to happen. I made my first monorepo using Lerna for another project that converts SVGs to other formats and it works brilliantly. It will make publishing and maintenance much easier with a single repository.

Once this has been done, we'll also need to unregister the europa bower package as it doesn't play nicely with monorepos. Unfortunate, but I'd rather that this project was easier to maintain than supporting a tool that they themselves no longer recommend (bower says to use yarn+webpack).

The Bower website states the following:

There must be a valid bower.json in the project's root directory.

Since this will no longer be the case, I'm hoping that Bower will simply no longer publish future versions, which is acceptable.

Once this has been merged and released, I'll remove all of the obsolete repositories and travis jobs etc.


Save and Retrieve Files

Given that Pluggable Storage exists, it now needs to be connected to the form
Feature: Files in Forms
  As a Content Creator
  I want to add a file to my content and have it saved
  So that I can have that file available with my content

  Scenario: Validate
    Given that I have uploaded one or more files as part of a piece of content
     When I save that content revision
     Then the files should be validated based on validation criteria provided by the input plugin
      And if validation fails I should be notified with the files I uploaded still available in my form

  Scenario: Save
    Given that I have uploaded one or more files as part of a piece of content
      And the file uploaded meets all validation criteria
     When I save that content revision
     Then the files should be saved using the configured pluggable storage
      And those files should include its file type, original file name, and new, relative file name

  Scenario: Edit
    Given that I have a content revision that includes files
     When I edit that revision
     Then the revision's files should be viewable to me in the form
      And I should be able to edit, add (where appropriate), and remove (where appropriate) the files
      And any files that I have not edited should be available in the revision being edited when saved

Files in Forms

[ ] Validate
[x] Save
[ ] Edit

@Snugug looks like the validation on input-plugin-file is not ready to validate against actual file data that would happen in a real scenario. Added a bug report in input-plugin-file and feel said bug should be cleared before I can move forward on the validation scenario.

moved validating of files to a separate story: https://github.com/punchcard-cms/punchcard/issues/603


[turborepo] npx @turbo/codemod update throws an error

What version of Turborepo are you using?
1.8.1
What package manager are you using / does the bug impact?
pnpm
What operating system are you using?
Mac
Describe the Bug
after running npx @turbo/codemod@latest update --force :
WARNING: Git directory is not clean. Forcibly continuing...
? Where is the root of the repo to migrate? .
No codemods required to migrate from 1.8.1 to 1.8.3

Upgrading turbo from 1.8.1 to 1.8.3 (no codemods required)

Upgrading turbo with pnpm install turbo@latest --save-dev -w

Unexpected error. Please report it as a bug:
Error: Command failed: pnpm install turbo@latest --save-dev -w
    at checkExecSyncError (node:child_process:871:11)
    at execSync (node:child_process:943:15)
    at Command.N (/Users/i/.npm/_npx/36146fcc85b26196/node_modules/@turbo/codemod/dist/cli.js:4:8282)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async Command.parseAsync (/Users/i/.npm/_npx/36146fcc85b26196/node_modules/commander/lib/command.js:935:5) {
  status: 1,
  signal: null,
  output: [
    null,
    <Buffer e2 80 89 45 52 52 5f 50 4e 50 4d 5f 48 4f 49 53 54 5f 50 41 54 54 45 52 4e 5f 44 49 46 46 e2 80 89 20 54 68 69 73 20 6d 6f 64 75 6c 65 73 20 64 69 72 ... 112 more bytes>,
    <Buffer >
  ],
  pid: 23255,
  stdout: <Buffer e2 80 89 45 52 52 5f 50 4e 50 4d 5f 48 4f 49 53 54 5f 50 41 54 54 45 52 4e 5f 44 49 46 46 e2 80 89 20 54 68 69 73 20 6d 6f 64 75 6c 65 73 20 64 69 72 ... 112 more bytes>,
  stderr: <Buffer >
}

Expected Behavior
no error
To Reproduce
Try the same command I suppose? npx @turbo/codemod@latest update --force
Reproduction Repo
No response

Thanks for the report, will take a look.
What error do you get from running the same command?
pnpm install turbo@latest --save-dev -w
We'll make some improvements on that error output as well to be a bit more clear.

pnpm add -D -w turbo@latest works fine, I used it to update turbo after I got the error from the other one.

Having the exact same issue with the same setup (pnpm, Mac).

Got, would you mind also sharing your pnpm version?

Mine is 7.28.0

I get this error when trying to update:
Need to install the following packages:
<EMAIL_ADDRESS>Ok to proceed? (y) y
npm WARN deprecated<EMAIL_ADDRESS>cross-spawn no longer requires a build toolchain, use it instead
? Where is the root of the repo to migrate? .
No codemods required to migrate from 1.8.2 to 1.8.3

Upgrading turbo from 1.8.2 to 1.8.3 (no codemods required)

/bin/sh: yarn: command not found
/bin/sh: pnpm: command not found
Migration failed
Unable to determine upgrade command

Getting the same error as @mzavattaro, but for a different version:
$ npx @turbo/codemod update
? Where is the root of the repo to migrate? .
No codemods required to migrate from 1.8.5 to 1.8.6

Upgrading turbo from 1.8.5 to 1.8.6 (no codemods required)

/bin/sh: yarn: command not found
/bin/sh: pnpm: command not found
Migration failed
Unable to determine upgrade command

Same than @dglazkov
npx @turbo/codemod update --force
? Where is the root of the repo to migrate? .
No codemods required to migrate from 1.8.2 to 1.8.8

Upgrading turbo from 1.8.2 to 1.8.8 (no codemods required)

Migration failed
Unable to determine upgrade command

Same here, looks like missing an existence check for pnpm and yarn binaries?

The only work around I've found is to uninstall the Turbo package and reinstall it afterwards. From my experience it installs the latest update. This isn't a fix to the problem, as the same error will occur again.
You'll have to uninstall and reinstall to update to the latest version.

@mzavattaro you can upgrade by installing turbo@latest with your package manager, that will work fine - but the benefit of using @turbo/codemod to upgrade is that we'll run any transforms required by the update automatically.
I still haven't been able to repro this one - if anyone is able to create a reproduction repo and share it here I would be glad to take a deeper look (you can bootstrap a minimal example with npx create-turbo@latest)!

@tknickman my intuition is that this is about the state of the system, rather than a particular repo. For example, if I have yarn on pnpm installed, the codemod will just work.
(that's the workaround for me, btw: just install yarn)

Similar issue here, but the error was different.
? Where is the root of the repo to migrate? .
Migration failed
Unable to fetch the latest version of turbo

Got it, that's helpful - thank you @dglazkov! I think I have a lead on this now - I'll hopefully get a PR up today!

@tknickman I am having this issue too and I am using yarn, did you ever manage to add that PR?

Same error here:
Error: Command failed: pnpm install turbo@latest --save-dev -w
    at checkExecSyncError (node:child_process:885:11)
    at execSync (node:child_process:957:15)
    at Command.I (/Users/ivan/.npm/_npx/b5f7626c653117ba/node_modules/@turbo/codemod/dist/cli.js:4:8282)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async Command.parseAsync (/Users/ivan/.npm/_npx/b5f7626c653117ba/node_modules/commander/lib/command.js:935:5) {
  status: 1,
  signal: null,
  output: [
    null,
    <Buffer e2 80 89 45 52 52 5f 50 4e 50 4d 5f 50 55 42 4c 49 43 5f 48 4f 49 53 54 5f 50 41 54 54 45 52 4e 5f 44 49 46 46 e2 80 89 20 54 68 69 73 20 6d 6f 64 75 ... 126 more bytes>,
    <Buffer >
  ],
  pid: 60073,
  stdout: <Buffer e2 80 89 45 52 52 5f 50 4e 50 4d 5f 50 55 42 4c 49 43 5f 48 4f 49 53 54 5f 50 41 54 54 45 52 4e 5f 44 49 46 46 e2 80 89 20 54 68 69 73 20 6d 6f 64 75 ... 126 more bytes>,
  stderr: <Buffer >
}

I believe the cause of this issue is very well known and the fix shouldn't be hard to implement.
pnpm does not support the install command as a way to install or update/upgrade a package.
Install is aimed to work as with yarn where it only refers to the initial installation that takes no package as an argument.
Thus it is not:
pnpm install turbo@latest --save-dev -w
but
pnpm app turbo@latest --save-dev -w
or also (I think but haven't tried)
pnpm up turbo@latest --latest -w

PR is up to fix this! Apologies for the (longgg) delay here.

@tknickman will your PR support yarn v3?


still problems with Weather Underground

Updated to 2.7.1 version of the plugin but still getting errors with Weather Underground:
[2019-3-31 19:25:11] [MeteoBCN] Error retrieving weather report for Weather Underground
[2019-3-31 19:25:11] [MeteoBCN] Error Message: TypeError: Cannot read property 'pressure_mb' of undefined
[2019-3-31 19:25:11] [MeteoBCN] Error parsing weather report (forecastday[0]) for Weather Underground
[2019-3-31 19:25:11] [MeteoBCN] Error Message: TypeError: Cannot read property 'simpleforecast' of undefined
any ideas?

The recent update only fixes the homebridge crash with weather underground. The weather underground service is discontinued for free and paid subsriptions as fas as I know.
Only accounts that run a personal weather station can access the new api. ctgreybeard is working on an integration for this new api. I will release it when a pull request is submitted.

Ok, perfect.
thank you
El lun., 1 abr. 2019 a las 10:01, Arne<EMAIL_ADDRESS>escribió:

The recent update only fixes the homebridge crash with weather
underground. The weather underground service is discontinued for free and
paid subsriptions as fas as I know.
Only accounts that run a personal weather station can access the new api.
ctgreybeard is working on an integration for this new api. I will release
it when a pull request is submitted.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/naofireblade/homebridge-weather-plus/issues/58#issuecomment-478476828,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AtbE6xEflc3qAJ_PEDriYkFYp4X6UD3Yks5vcbzugaJpZM4cUdhs
.

--
Pedro Anglada Camps


Qualifiers

Description
Qualifiers : Backend Development with Java
Domain
Backend Dev (Java)
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/assign documentation


Prettier

added pretty command to recursively fix all JS files
set line_lenth to 120
yarn.lock was left out-of-sync in master, this fixes it

If you are OK with these changes, we should run pretty to reformat the codebase to line_length=120.

If you are OK with these changes, I'm happy to push the yarn pretty run as well, to fix the test, etc. But that'd kill the "files changed" tab in GitHub, so I submitted this version first.

So simply changing the line length makes prettier format objects differently? Why can't we keep a huge line length and tell it to format objects in a sane way...

It cannot, it bases object formatting on line length. So {a:1, b:2, c:3} stays on one line but the big objects go multi line.
Actually life with 120 is not that bad, I got used to it when coming from 200.

I went through the diff for pretty with 120 and I believe the codebase definitely gets more readable.

FWIW I do 120 at work, seems nice to me 🤷♂


Fix terrain viewer

Coverage remained the same at 91.832% when pulling 287e099c609814b61091ae7d2dde7c356624b448 on fix_terrain_view into 393d160613fe093481d1aac63bb9f55009fd31e4 on master.


Allow Öbidog to generate custom casts

This could be very useful to make the Lua code less verbose while keeping the C++ interfaces clean.
Currently we can't do things like :
Engine.Window:setClearColor("#FF0000"); -- Can't convert string to Color
This.Sprite:setPosition(10, 20); -- Trickier, can't initialize Vector2 with its two components
Engine.Scene:loadFromFile("scenes://default.map.vili"); -- Currently works because function uses const std::string&

This would allows us to change every Path in C++ parameters from const std::string& to Path.
class Color
{
    /**
      * \generatecasts
      * \brief ...
      */
    explicit Color(const std::string& nameOrHex);
};

The \generatecasts flag would hint Öbidog to generate new overloads with the parameter set directly exposed.

Another nice thing to have would be automatic cast for vili::node objects from Lua tables


An error occured while executing PHP Mess Detector

When opens a project I get this error message:
An error occured while executing PHP Mess Detector
Going in deep toggling  developer tools

/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:28 An error occured while executing PHP Mess Detector
e.doShow @ /Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:28
No more details.
I'm running PHP Mess Detector 1.0.3 on a VSCode Version 1.15.1 (1.15.1) 41abd21afdf7424c89319ee7cb0445cc6f376959 on a Mac OSX 10.12.6 (16G29)

Thank you for reporting. I do need the verbose logs from the extension though to be able to analyse the issue.
Could you go to "File" > "Preferences" > "Settings" and find the "phpmd.verbose" setting and edit that to "true".
Then go to "view" > "ouput" and select "PHP mess detector" in the dropdown in the panel that opens.
When the extension crashes, please copy the content of the output panel and paste that here.

Done!

[Info  - 09:47:40] Language server connection initialized.
[Info  - 09:47:40] Configuration change triggerd, validating all open documents.
[Info  - 09:47:40] Creating controller
[Info  - 09:47:40] New document opened, starting validation.
[Info  - 09:47:40] PHP Mess Detector validation started for file:///Volumes/develop/alteregoweb/emiliana/app/Http/Middleware/AdminVars.php
[Info  - 09:47:40] PHP mess detector command not using global PHP, skipping PHP test
[Info  - 09:47:40] PHP Mess Detector test succesful (PHPMD 2.6.0)
[Info  - 09:47:40] File /Volumes/develop/alteregoweb/emiliana/app/Http/Middleware/AdminVars.php test successful
[Info  - 09:47:40] Running phpmd command (~/.composer/vendor/bin/phpmd "/Volumes/develop/alteregoweb/emiliana/app/Http/Middleware/AdminVars.php" xml "~/.composer/vendor/girotecnics/girotecnicsmd/ruleset.xml")
[Error - 09:47:40] An error occured during document validation after open with the following message: An error occured, no output was received after executing the phpmd command

When I execute the command in a terminal:
 ~/.composer/vendor/bin/phpmd "/Volumes/develop/alteregoweb/emiliana/app/Http/Middleware/AdminVars.php" xml "~/.composer/vendor/girotecnics/girotecnicsmd/ruleset.xml"
I get:

Cannot find specified rule-set "~/.composer/vendor/girotecnics/girotecnicsmd/ruleset.xml".

But file already exists:
`ls -la ~/.composer/vendor/girotecnics/girotecnicsmd/ruleset.xml

-rw-r--r--  1 alexcor1  admin  1031 Jul 27 11:27 /Users/alex/.composer/vendor/girotecnics/girotecnicsmd/ruleset.xml

There is a particularity, a symbolic link
` /Users/alex/.composer/vendor/girotecnics/girotecnicsmd -> /Volumes/develop/girotecnics/ci/girotecnicsmd
because my global composer.json has
    "repositories": [
        { "type": "path", "url": "/Volumes/develop/girotecnics/ci/girotecnicsmd" }

OK! I found the issue:
~ works for the command but not for ruleset path. With:

"phpmd.rules": "/Users/alex/.composer/vendor/girotecnics/girotecnicsmd/ruleset.xml"

works like a charm.
It's a problem of phpmd, not of your extension. Sorry and thanks to show me how to debug it :)


Add export option for the Web to ignore DevTools shortcuts

This PR adds an option for the Web build in order to ignore common shortcuts for summoning web developer tools.
If set to true, the Godot Javascript bindings will simply omit to send F12, Ctrl-Shift-I and Meta-Shift-I to Godot.

Fixes #86175

Closing PR. Just realized that the ideal way to go forward with this would be for Godot to realize that an input was unhandled, and then make the browser process the input as usual.
I realized that Godot games interrupt everything, even shortcuts to quit the browser and such.


Delete 2020-08-13-tampere.md

I am sorry, but when I created a new file with the same content with this, I accidentally pressed enter before selecting creating a new branch.

But was it also added somewhere else?

Yes, so it is https://github.com/coderefinery/coderefinery.org/blob/gh-pages/_events/2020-08-13-tampere.md

Sorry I got confused by a file being moved in two different pull requests but I understand that it's probably not possible differently when using the web UI?

Yes, as far as I understand, it is not possible to move a file from one directory to another within the same repo on the web UI.


Encrypt content before sending transactions

Feature description

Currently all content in the transactions are not encrypted and public. Although the system is censorship resistance, it still enable trace of content delivery which link back to a certain user. As Mooncake holds the private key of the user, the content can be first encrypted and then put inside the tx message before broadcasting. The user sign the encrypted message rather than the original content. The content in the tx can be decrypted by Mooncake using the corresponding users's public key when the users load the data. The content being encrypted should be a salted string instead of the plain content so that other users can't decrypt it using users public key as they don't know the secret salt.
One scenario this feature can benefit is as below.

User posted a post
User regrets and deletes it
User's post and deletion are all hidden in the txs where you can't trace from the Mooncake or on chain.

Implementation proposal

Mooncake holds a secret salt. This can be the original value of the hashed subspace or another piece of random string. It acts like the app_id and secret of a Facebook app.
Every time a user posts a content, the content is salted with the secret and encrypted. Then the post message holds this encryptedSaltedContent and broadcast.

saltedContent = secret + content
encryptedSaltedContent = encrypt(saltedContent, privKey)

djuno should still store the encryptedSaltedContent to keep itself as the chain parser.
When Mooncake displays the content, it decrypts with poster's pubkey and remove the secret

content = remove( secret, decrypt( encryptedSaltedContent, pubkey ) )

The secret should only be available in the binary build of the Mooncake, it should not be stored on GitHub. This should be purely done during build time.

Comments about the feature description

Although the system is censorship resistance, it still enable trace of content delivery which link back to a certain user.

What do you mean by that? All accounts are public, so what does "trace of content delivery" mean here?
Comments about the implementation proposal
I think the implementation you proposed is not fully correct.
If we only used asymmetric encryption, the sailt wouldn't do much about the privacy:
let saltedContent = secret + content
let encryptedContent = encrypt(saltedContent, privKey)

If we only do this, then everyone would be able to access the saltedContent by doing:
let saltedContent = decrypt(encryptedContent, pubKey)

Then, since this would be a plain text, they could simply remove the secret by guessing which value it has (this can be done easily by comparing different unencrypted post contents).
The best way would be to use both a symmetric and asymmetric encryption methods:
// When sending
let aesEncrypted = AES256.Encrypt(postContent, secret)
let pubEncrypted = RSA.Encrypt(aesEncrypted, privKey)

// When receiving
let pubDecrypted = RSA.Decrypt(pubEncrypted, pubKey)
let aesDecrypted = AES256.Decrypt(pubDecrypted, secret)

At this point tho, the RSA encryption would just be a useless overhead, since all the Mooncake installations would already know the secret value. So, this can be easily simplified as:
// When sending
let aesEncrypted = AES256.Encrypt(postContent, secret)

// When receiving
let aesDecrypted = AES256.Decrypt(pubDecrypted, secret)

Problems with this feature
As far as I see it, implementing this feature would lead to two major problems:

If the secret present inside Mooncake gets lost, then all the content would become unreadable.
If an attacker decompiles the application and reads the secret leaking it, it would make the whole system useless.

I personally don't think this feature is necessary, also because I do not understand what it achieves more than we have right now.

The goal is to hide the content in the transactions so that only Mooncake can reveal content inside the state where other public users can't trace back by only accessing the transactions.
I believe in performance-wise it won't be an issue. There are packages utilizing the smartphone hardware for encryption/decryption.
https://pub.dev/packages/cryptography
https://pub.dev/packages/kms
From the Apple's iOS Security Guide, the process of AES processes should be pretty fast (I couldn't related information on Android though.).
https://www.apple.com/in/business/docs/site/iOS_Security_Guide.pdf
Possibility of losing the key and reverse engineering of the app are at a high risk. After some studies, I agree the trade-off is not worth taking at this stage. Let's put this aside first. We keep Mooncake as fully open for now as it should be. We can come back to this issue after we gather more feedback in the future.


confusing sample code for !boolean, !float, !integer and !stringArray attributes

!string sample code is used as sample code for !boolean, !float, !integer and !stringArray attributes (MapFish Print v3 master doc)

Please be more specific.


How to display json data using C#

Hello there, I'm new to .NET Interactive, and I'm trying to experiment with it, but I haven't found a simple way to show some json data I got using HttpClient. I'm querying repository issues from the Github api, which returns an array of issues. From there, I'm stuck. This is what I have:
using System.Net.Http;
using System.Net.Http.Headers;
var client = new HttpClient();
client.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue("Net_Notebooks", "1.0"));
var response = await client.GetAsync("https://api.github.com/repos/giggio/node-chromedriver/issues");
#r "nuget:Newtonsoft.Json"
var responseString = await response.Content.ReadAsStringAsync();
var issues = Newtonsoft.Json.Linq.JArray.Parse(responseString);
// and now what?

I tried displaying it using JSON.net but it shows jibberish.
dynamic issues = Newtonsoft.Json.JsonConvert.DeserializeObject(responseString);
issues

The value at responseString is correct, it contains a valid json array.
I'm not sure what is the idiomatic way to do this. Any pointers are appreciated.
Thanks.

What you're seeing is the default HTML formatter, which isn't very useful in this case. We should probably provide a built-in viewer for JSON data like the tree view Jupyter Lab.

(I didn't dig into why the fields are reading empty.)
It would fit nicely here as well:

@giggio Thoughts on #1233?

@jonsequitur I don't like it.
I'd like to see a table. If I have:
[{a:1, b:2}, {a:3, b:4}]

I'd like to see:

a
	b

1
	2

3
	4

I'm not sure how it would work on more complex objects/arrays, maybe with nested tables, but this is what I was looking for.

What about cases where the fields of objects in an array do not coincide? Also, with nested tables it will explode in side very quickly, instead of a tree hierarchy you will get a huge object you can't read.

A suggestion by @eerhardt was to make it look more like the JSON displays in browser developer tools:

The first iteration is merged now. I'd like to do another iteration to improve the styling.
Here's how it looks:


real-time data from seedlink

Is your feature request related to a problem? Please describe.
getting real-time data from seedlink
Describe the solution you'd like
using obspy to connect seedlink server
Describe alternatives you've considered
可能會卡在某種未知的困難

成功用Obspy接上iris seedlink server(rtserve.iris.washington.edu).
之後可將回傳trace組成stream來做處理與預測
範例
https://docs.obspy.org/tutorial/code_snippets/easyseedlink.html


missing 'error' handler on this Redis client

I always get this error whenever I try to run the following code
import { Server } from "socket.io";
import { createAdapter } from<EMAIL_ADDRESS>import { Cluster } from "ioredis";
const io = new Server();
const pubClient = new Cluster([
{
host: ,
port: ,
},
{
host: ,
port: ,
},
]);
const subClient = pubClient.duplicate();
io.adapter(createAdapter(pubClient, subClient));
io.listen(3000);
And there seems to not be any clear solution could someone help me out?

You should be able to register an error handler on the redis client:
pubClient.on("error", (err) => {
  console.log(err);
});

Maybe the client is not able to reach the Redis server?

Perhaps it may be so I'll look into it thanks for helping out

I added the error handler just for it to return an error about there not being an error handler lol
}           missing 'error' handler on this Redis client            ClusterAllFailedError: Failed to refresh slots cache.            command: { name: 'cluster', args: [Array]                                                                                }

And this too ReplyError: ERR This instance has cluster support disabled

It sounds like your Redis cluster might not be configured properly. Could you please check?

Never mind I think i figured it out I just switched from io-redis to redis and now it works just fine but thanks for your help I appreciate it!


Detect which image was pressed in tableview cell

Is it possible to detect which image was pressed in which cell of tableview?
I add LCBannerView as subview of cell view, and have array of photos loaded in lot of cells, how can I detect in which cell photo did pressed? many thanks!

You could give bannerView a tag, equal to indexPath.row, in method tableView: cellForRowAtIndexPath:.
Than you could get bannerView with delegate method when image be pressed, and also, you could get indexPath.row.
The hope to help you :)

Thanks!


docs: Explain how to use the dataset from HuggingFace

Adds some documentation about using the dataset from HuggingFace. @salavina can you take a look?

Looks good!


KYLIN-4481 Project-level ACL lookups not working for non-admin SAML-f…

…ederated users
Proposed changes
Describe the big picture of your changes here to communicate to the maintainers why we should accept this pull request. If it fixes a bug or resolves a feature request, be sure to link to that issue.
Types of changes
What types of changes does your code introduce to Kylin?
Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update (if none of the other choices apply)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[ ] I have create an issue on Kylin's jira, and have described the bug/feature there in detail
[ ] Commit messages in my PR start with the related jira ID, like "KYLIN-0000 Make Kylin project open-source"
[ ] Compiling and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If this change need a document change, I will prepare another pr against the document branch
[ ] Any dependent changes have been merged

Further comments
If this is a relatively large or complex change, kick off the discussion at user@kylin or dev@kylin by explaining why you chose the solution you did and what alternatives you considered, etc...

Pull Request Test Coverage Report for Build 5886

0 of 12 (0.0%)  changed or added relevant lines in 2 files are covered.
4 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.004%) to 27.323%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

server-base/src/main/java/org/apache/kylin/rest/security/saml/SAMLSimpleUserDetailsService.java
0
3
0.0%

server-base/src/main/java/org/apache/kylin/rest/security/SAMLUserDetailsService.java
0
9
0.0%

Files with Coverage Reduction
New Missed Lines
%

core-job/src/main/java/org/apache/kylin/job/impl/threadpool/DefaultScheduler.java
2
80.23%

stream-core/src/main/java/org/apache/kylin/stream/core/storage/CheckPointStore.java
2
73.74%

Totals

Change from base Build 5884:
-0.004%

Covered Lines:
24350

Relevant Lines:
89120

💛  - Coveralls


Not connect SSL

L A R A V E L  E C H O  S E R V E R
version 1.3.6
⚠ Starting server in DEV mode...
✔  Running at localhost on port 9090
✔  Channels are ready.
✔  Listening for http events...
[10:12:12 AM] - Error authenticating zx0PgS4PGjRKtOiwAAAA for private-chatroom
{ Error: getaddrinfo ENOTFOUND gallery.local gallery.local:443
My option
{
"authHost": "https://gallery.local",
"protocol": "https",
"port": 9090
}
Pls help me

Add you ssl file paths to your config.


Get Change Sets reports changes in embeddable entity with no changes

Describe the bug
We use @Embedded to store some information on our tables, and we have two issues across two MikroORM versions.
Using versions:
    "@mikro-orm/cli": "^5.9.6",
    "@mikro-orm/core": "^5.9.6",
    "@mikro-orm/migrations": "^5.9.6",
    "@mikro-orm/nestjs": "^5.2.3",
    "@mikro-orm/postgresql": "^5.9.6",
    "@mikro-orm/reflection": "^5.9.6",
    "@mikro-orm/sql-highlighter": "^1.0.1",

We are seeing issues where our audit log is showing "changes" that we have not made, see this change log:
{
  "requestId": "01HTCQC97S5Q72VDQF0BKNKM0G",
  "dateTime":<PHONE_NUMBER>671,
  "organisationId": "-",
  "userId": "-",
  "entityId": "01HTCQAVHVMGXTSFRN3EKVDSJS",
  "entityName": "Organisation",
  "type": "update",
  "before": "{\"id\":\"01HTCQAVHVMGXTSFRN3EKVDSJS\",\"createdAt\":\"2024-04-01T11:39:53.787Z\",\"updatedAt\":\"2024-04-01T11:39:53.787Z\",\"lastIngestionDataDate\":null,\"name\":\"Test Organisation\",\"someBoolean\":false,\"bookStats\":{\"asExpected\":true,\"reportedAt\":\"2024-04-01T11:39:53.787Z\",\"extraInformation\":\"This is some extra information\",\"numberHeldAtTimeOfReporting\":1234},\"orderStats\":{\"asExpected\":false,\"reportedAt\":\"2024-04-01T11:39:53.787Z\",\"extraInformation\":\"This is some more extra information\",\"numberHeldAtTimeOfReporting\":5678}}",
  "after": "{\"someBoolean\":true,\"bookStats\":{\"reportedAt\":\"2024-04-01T11:39:53.787Z\",\"numberHeldAtTimeOfReporting\":1234,\"asExpected\":true,\"extraInformation\":\"This is some extra information\"},\"orderStats\":{\"reportedAt\":\"2024-04-01T11:39:53.787Z\",\"numberHeldAtTimeOfReporting\":5678,\"asExpected\":false,\"extraInformation\":\"This is some more extra information\"},\"updatedAt\":\"2024-04-01T11:40:40.650Z\"}"
}

You can see there that bookStats & orderStats appear as changes have been made but in reality, we ONLY changed the someBoolean value (and the updateAt is changed automatically correctly).
It looks like the change tracking here might just be using JSON.serialize and not respecting the ordering.
And then using versions:
"@mikro-orm/cli": "^6.1.11",
"@mikro-orm/core": "^6.1.11",
"@mikro-orm/migrations": "^6.1.11",
"@mikro-orm/nestjs": "^5.2.3",
"@mikro-orm/postgresql": "^6.1.11",
"@mikro-orm/sql-highlighter": "^1.0.1",

Here the change log has some values set to null, using the exact same code:
{
  "requestId": "01HTCR1ZMZ48VYWV1SASN971C3",
  "dateTime":<PHONE_NUMBER>749,
  "organisationId": "-",
  "userId": "-",
  "entityId": "01HTCQAVHVMGXTSFRN3EKVDSJS",
  "entityName": "Organisation",
  "type": "update",
  "before": "{\"id\":\"01HTCQAVHVMGXTSFRN3EKVDSJS\",\"createdAt\":\"2024-04-01T11:39:53.787Z\",\"updatedAt\":\"2024-04-01T11:52:31.727Z\",\"lastIngestionDataDate\":null,\"name\":\"Test Organisation\",\"someBoolean\":false,\"bookStats\":{\"reportedAt\":null,\"numberHeldAtTimeOfReporting\":1234,\"asExpected\":true,\"extraInformation\":\"This is some extra information\"},\"orderStats\":{\"reportedAt\":null,\"numberHeldAtTimeOfReporting\":5678,\"asExpected\":false,\"extraInformation\":\"This is some more extra information\"}}",
  "after": "{\"bookStats\":{\"reportedAt\":null,\"numberHeldAtTimeOfReporting\":1234,\"asExpected\":true,\"extraInformation\":\"This is some extra information\"},\"orderStats\":{\"reportedAt\":null,\"numberHeldAtTimeOfReporting\":5678,\"asExpected\":false,\"extraInformation\":\"This is some more extra information\"},\"updatedAt\":\"2024-04-01T11:52:31.741Z\"}"
}

Reproduction
Sorry I didn't see there was a reproduction starting point, so I made my own:
https://github.com/ashleyww93/mikro-embedded-bug
The env file is as follows:
# Runtime Configuration
PORT=3123
HOST=localhost
RELEASE_TYPE=local
PACKAGE_VERSION=local

# Database Configuration
DATABASE_DEBUG_LOGGING=false
DATABASE_HOST=localhost
DATABASE_PORT=5432
DATABASE_SCHEMA=min_tech_stack
DATABASE_USERNAME=user
DATABASE_PASSWORD=pass
DATABASE_SSL=false

You can setup sample data by calling the setupData mutation, and test the issue using the testBug mutation
What driver are you using?
@mikro-orm/postgresql
MikroORM version
^5.9.6 and ^6.1.11
Node.js version
v21.6.0
Operating system
OSX Sonoma 14.3.1
Validations

[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Slack.
[X] The provided reproduction is a minimal reproducible example of the bug.

Cannot replicate in the reproduction repo. So closing this for now.


Fix repository.url in package.json files.

See this conversation: https://github.com/heremaps/harp-font-resources/issues/25#issuecomment-492552436

After further reading, it is not needed. Both formats are accepted.

@musculman
I'm not sure, https://docs.npmjs.com/files/package.json says

The URL should be a publicly available (perhaps read-only) url that can be handed directly to a VCS program without any modification

git doesn't like current "url"s:
$ git clone git://github.com:heremaps/harp.gl.git
Cloning into 'harp.gl'...
fatal: Unable to look up github.com:heremaps (port 9418) (nodename nor servname provided, or not known)

I guess following would be acceptable:
"repository": "github:heremaps/harp.gl"

but that prevents us from having directory.
Nevertheless, proper URL is much better for interoperability so i would commit this

If you want to unify the formats, is fine, but we have examples of npm packages already published using the : that work fine.
I was wrong on my original comment on the issue in the harp-font-resources catalog, as both are accepted.

@musculman TLDR - closing it
https://www.npmjs.com/package/@here/harp-map-theme also says Unable to find a readme for<EMAIL_ADDRESS>So, as we have this problems only with huuge packages (@here/harp-font-resources) and harp-map-theme i assume this is somehow connected with npmjs infra refusing to inspect these and extract README.md files.
Unfortunately, more people have problem like this [1] and seems like there is no resolution.
[1] https://npm.community/search?q=Unable to find a readme for

Thanks for the additional information, from my side I was also not able to find good reasons to change it either way or to investigate further :(


Error when changing the source docs to other file.

When I use the default source docs it output normally but when I change to the other file, it gives the following error. Please help me fix it.

Here is what the log says:

This issue should have been fixed. Otherwise its probably caused by launching the app from a wrong folder.


Web trigger

We have a very unusual use case where code we are working with cannot be tracked in GIT or other usual repository. We still want and need to use build pipeline to run QA jobs. The only way I can think of now is trigger by calling some URL available on Azure DevOps, something like https://company.visualstudio.com/project/build/trigger. Calling this URL from our internal tooling would trigger build pipeline to run.
Is there, by any chance, plan to implement something like this?

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

ID: f5673ec1-c7d1-e0ac-043a-8fc3d5b226a9
Version Independent ID: b4872831-51c0-6cf8-1c56-de20beb38a80
Content: Build pipeline triggers - Azure Pipelines & TFS
Content Source: docs/pipelines/build/triggers.md
Product: devops
GitHub Login: @andyjlewis
Microsoft Alias: alewis

Thanks for your question. It looks like you're working through an issue with your scenario or implementation, rather than an issue with the documentation. Here are a couple of options where you might consider asking your question:

Azure DevOps on Stack Overflow
Azure DevOps Support Bot


How do I conditionally set a tab visibility false using setTabVisible method

How do I conditionally set a tab visibility false using setTabVisible method. I need hide/unhide certain tabs conditionally.

<tab name="Invissible tab" :is-visible="tabXvisible">
...
</tab>

export default {
    data() {
        return{
            tabXvisible = false,
        }
    }
}

should work. Not tested.

Hi @ian-pinto-vamaship,
You can watch the variable to automate it, reusing @JBtje data ():
<tabs ref="tabs">
  ...
</tabs>

  ...
  watch: {
    tabXvisible: function (val) {
      this.$refs.tabs.setTabVisible(this.tabXHash, val)
    }
  }
  ...

@JBtje I see no reason why isVisible could not be a property, PR? :)

@manelclos PR is only useful if the project owner accepts them.... Seems that's not the case for this project. (my PR is still not accepted)

@JBtje as you can see here https://github.com/spatie/vue-tabs-component/pull/67#issuecomment-417677592 you just need to be patient

The visibility method was added to work a round a specific case (see https://github.com/spatie/vue-tabs-component/pull/16).
In hindsight, it should have been done differently, but we don't really want to support any new configuration at the moment, so we're going to stick with the existing API.
We'll revisit this problem in a future major version of this package.


chore: bump otel metric version

What type of PR is this?
chore: bump otel metric version

What this PR does / why we need it (English/Chinese):

Which issue(s) this PR fixes:

/LGTM


Up default sidekiq pool size to 22

Looks like sidekiq lied and actually wanted a pool size of 22, not 7.

Setting up Sidekiq (pool size: 7) and Redis (connecting to host node-a18aa0b169c4aedfb.openredis.com)
Your Redis connection pool is too small for Sidekiq to work, your pool has 7 connections but really needs to have at least 22

Follow-up to #48, refs #45.


[FLINK-9256][network] fix NPE in SingleInputGate#updateInputChannel() for non-credit based flow control

What is the purpose of the change
SingleInputGate#updateInputChannel() fails to update an unknown into a remote partition without credit based flow control due to a NullPointerException resulting from networkBufferPool == null.
Brief change log

make SingleInputGate aware of credit-based flow control
only try to assign exclusive buffers in SingleInputGate if credit-based
replace some Mockito use in SingleInputGateTest

Verifying this change
This change added tests and can be verified as follows:

extend SingleInputGateTest with credit and non-credit based test variants
add a test for SingleInputGate#updateInputChannel() in both modes

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

Change looks very good, thanks!
Merging this...
We can probably remove most of this code out again later, once we drop the non-credit-based code paths in the next releases. But that still makes this a necessary fix for now...


Questions about data preprocessing

Hello, thanks for the lip2wav dataset you kindly provided. I noticed that there are several scenes in the dataset where there is no face on the screen, and wondered how you solved this problem. Did you filter these data when training the model? Or did you just ignore them and got a good result still?

The preprocessing script automatically filters out non-face segments.

I found that when the face detector can not found any face in a timestamp, it will skip to the next image indeed. But I don't understand how the preprocessing script align the audio and video files when there is some mismatch. Is the audio segment also be cut when its video segment skips some non-face frames?

the face crops are saved with frame numbers in their names. while training, the data loader skips segments if certain faces are missing.

Yes, I got it. Thanks for your kind reply.


Make libvirt calls thread safe

What this PR does / why we need it:
In our tests we saw that sometime, calls to libvirt
methods return "Missing error" error, it happens when
libvirt call from another go routine override libvirt
last error.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

Make calls to libvirt methods thread safe

Signed-off-by: Artyom Lukianov<EMAIL_ADDRESS>

/hold

/unhold

I am also not sure what to do with the event loop. It can block for a very long time. If we use the thread lock, then  the lock is off limits for other go routines, although it does nothing.

@rmohr With VirDomain it will be more complicated because we just use some interface and Domain from libvirt library implement it, so I will need to create an additional struct that will wrap libvirt domain and will implement VirDomain interface.
By event loop do you mean startDomainEventMonitoring?

retest this please

Since version 0.6.0 libvirt is thread safe https://wiki.libvirt.org/page/FAQ#Is_libvirt_thread_safe.3F
Are you sure that this change is needed?

@gbenhaim Sorry for misleading, I talk here about libvirt-go client and this PR https://github.com/berrange/libvirt-go/tree/thread-safe-errors must fix the problem, so I think I will just wait for @berrange PR.

@cynepco3hahue +1


Chiral and bond stereo bond directions may clash when using WedgeMolBonds()

A minimal example, in which bond stereo is lost due to the clash:
from rdkit import Chem
mol = Chem.MolFromMolBlock("""
  Mrv1908<PHONE_NUMBER>2D

  0  0  0     0  0            999 V3000
M  V30 BEGIN CTAB
M  V30 COUNTS 9 8 0 0 1
M  V30 BEGIN ATOM
M  V30 1 C 1.8809 8.9283 0 0
M  V30 2 C 0.3425 8.8576 0 0 CFG=1
M  V30 3 C -0.3651 7.49 0 0
M  V30 4 C 0.4654 6.1932 0 0
M  V30 5 C -0.4878 10.1547 0 0
M  V30 6 O 0.2201 11.5221 0 0
M  V30 7 C -0.2424 4.8256 0 0
M  V30 8 C 2.5884 10.2962 0 0
M  V30 9 C 2.7112 7.6315 0 0
M  V30 END ATOM
M  V30 BEGIN BOND
M  V30 1 1 2 1
M  V30 2 1 2 3 CFG=1
M  V30 3 2 3 4
M  V30 4 1 2 5
M  V30 5 1 5 6
M  V30 6 1 7 4
M  V30 7 1 8 1
M  V30 8 1 1 9
M  V30 END BOND
M  V30 END CTAB
M  END
""")
print(Chem.MolToSmiles(mol))
Chem.WedgeMolBonds(mol, mol.GetConformer())
Chem.SanitizeMol(mol)
print(Chem.MolToSmiles(mol))

This prints:
C/C=C/[C@@H](CO)C(C)C   # ok
CC=C[C@@H](CO)C(C)C     # bond stereo is lost

Using mol.Debug(), we can see that this happened because one of the bond directions around the double bond is wrong, as it has been set to BEGINWEDGE instead of ENDUPRIGHT:
Bonds:
	0 1->0 order: 1 conj?: 0 aromatic?: 0
	1 1->2 order: 1 dir: 1 conj?: 0 aromatic?: 0   # This should be  'dir: 4'
	2 2->3 order: 2 stereo: 3 stereoAts: (1 6) conj?: 0 aromatic?: 0
	3 1->4 order: 1 conj?: 0 aromatic?: 0
	4 4->5 order: 1 conj?: 0 aromatic?: 0
	5 6->3 order: 1 dir: 3 conj?: 0 aromatic?: 0
	6 7->0 order: 1 conj?: 0 aromatic?: 0
	7 0->8 order: 1 conj?: 0 aromatic?: 0

Ok, I forgot to mention that I noticed this in 2021.03 branch, but it seems to be solved in master. It was probably fixed by #4255.


Get EloquentController working with Patch, Post on Relationships

Hi guys! I've started using this wonderful library, however I got stuck trying to implement PATCH and POST for relationships, i.e. POST /post/1/relationship/tags, in order to link a tag to another post (many-to-many relation). I'm using the EloquentController base class.
However, when I try to send POST request, Controller is throwing the following Exception:
Method [addToRelationship] does not exist

I've seen that the addToRelationship method in the EloquentController is not defined (even if it's there a stub in the JsonApiController.)
So, I'd want to ask: is this a feature that missing (Road to 1.0, yeah!) or am I doing something wrong?
Thanks!

Hi! Glad you like the package, sorry it's taking a while to get to 1.0
Full support for all the relationship methods is being worked on at the moment (it's on a branch at the moment but I wouldn't recommend using it as it is still being iterated on). The plan is that the next release (v0.12) will add in full relationship support.
In the meantime, I'd recommend implementing an addToRelationship method on whichever controllers you need it for the moment. If you get stuck doing that just let me know and I can help point you in the right direction.

Hi @lindyhopchris! Actually I'm going in this direction, so I digged inside source code and implemented a solution like this:
    /**
     * Handles resource linkage for a To-Many relationship.
     *
     * @param RequestInterface $request
     * @return mixed
     */
    public function addToRelationship(RequestInterface $request)
    {
        $model = $this->getRecord($request);
        $key   = $this->keyForRelationship($request->getRelationshipName());

        $links = $request->getDocument()->getResources()->getAll();

        $ids = array_map(function(ResourceObjectInterface $link) {
            return $link->getId();
        }, $links);

        $model->{$key}()->syncWithoutDetaching($ids);

        return $this
            ->reply()
            ->relationship($model->{$key});
    }

However I'm posting it here, and I'd be glad to know if you find this solution viable.
Anyway, I'm actually developing a Laravel Admin Panel based on Json Api and it is at first stage, so I'll follow this package releases in order to keep it updated; I'll link it here when I've got to release it OSS 🎉 .
Thanks again.

@leonardfactory interesting, what are you using for the frontend in this admin panel? The reason we use JSON API is because we use Laravel + Ember.js

I'm developing a solution based on React.js since we've hade a very good experience with it. However this is just about the view layer; the data handling is a custom middleware built on top of the JSON API spec, since I've not found many libraries working seamlessly in JS

After some tries with other relationship types, I've changed the method to the following implementation. Posting it here in case someone may find it useful!
    /**
     * Handles resource linkage for a To-Many relationship.
     *
     * @param RequestInterface $request
     * @return mixed
     */
    public function addToRelationship(RequestInterface $request)
    {
        $record = $this->getRecord($request);
        $key    = $this->keyForRelationship($request->getRelationshipName());

        $links = $request->getDocument()->getResources()->getAll();

        $ids = array_map(function(ResourceObjectInterface $link) {
            return $link->getId();
        }, $links);

        /**
         * Handles different relationship types (many-to-many and one-to-many)
         *
         * TODO: Implement HasManyThrough
         */
        $relationship = $record->{$key}();

        if (
            $relationship instanceof HasMany ||
            $relationship instanceof MorphMany
        ) {
            $related = $relationship->getRelated();
            $related
                ->getModel()
                ->whereIn($related->getKeyName(), $ids)
                ->update([
                    $relationship->getForeignKeyName() => $record->getKey()
                ]);
        }
        else if (
            $relationship instanceof BelongsToMany ||
            $relationship instanceof MorphToMany
        ) {
            $relationship->syncWithoutDetaching($ids);
        }

        return $this
            ->reply()
            ->relationship($record->{$key});
    }

@lindyhopchris I'm going to work on these methods since I need them in the following days. Would you like a PR or are you working on these right now? In case you're interested, just ping me

@leonardfactory thanks for the offer of a PR. Normally I'd take you up on the offer, but I'm actually working on this at the moment so there's no need to submit a PR. I'm moving all the logic to the hydrator, as that's responsible for modifying resources, but approach is very similar to what you're doing.

Awesome, I was asking exactly for this reason. Looking forward to it, thank you!

Closing this as modifying relationships is now implemented on the 1.x-dev branch.


Orders not appear on my account

Have you “npm run o2m” up and running? Orders are displayed only after they’re transferred to backend (Magento in that case). Otherwise the list is empty

I see this problem in
https://demo.vuestorefront.io/my-account/orders

Fixed - the order_2_magento.js process encountered some problems on demo host
Now it's fine:
https://www.dropbox.com/s/aj2pxggnro7ttlg/Screenshot 2018-09-29 22.15.04.png?dl=0

@pkarw Order cannot be placed on demo host: https://demo.vuestorefront.io/
Request URL: https://demo.vuestorefront.io/api/order
Response:
{code: 500, result: {command: "INCR", args: ["q:ids"], code: "MISCONF"}}
code: 500
result: {command: "INCR", args: ["q:ids"], code: "MISCONF"}
args: ["q:ids"]
code: "MISCONF"
command: "INCR"

This was a Redis issue, already fixed on the test env.

Still not working, the orders are not showing up on my account eventhough there's a confirmation from the server.
Furthermore the account details cannot be updated.

And after refreshing the whole page (Ctrl+F5) the order is there? it should


:sparkles: Feedback functionality

Feedback button in navigation bar and functionality using a generic form, per issue #136

Wording for the prompts is now corrected.

Nice work on this one 💃

What is the status of this? Why was it approved if significant changes were expected? Is it now done?

For the bug @willsb mentioned:

Scroll to a day in the past
Click the send feedback button
Cancel it and delete the draft
It will scroll back to current day, but the header will still display the older day.
I believe it shouldn't scroll back to the current date at all.

Located the issue here. PagerViewController's viewWillAppear is called when the email draft closes. In viewWillAppear, the date displayed in the TimeLineViewController is always set to the current Date(). Not sure about where to fix this without getting really messy/hackish  (likely with a boolean somewhere).

It seems like a bug in the first place that the pager can switch days without switching title. That should be fixed. In addition, the original design said that the pager only switches back to 'today' if it was not visible for at least an hour (it was meant to have the app switch to today when the user had it in the background over night, and then started it the next day). I'm not sure that is necessarily the correct fix for this though. Ideally it should only consider switching day in the case where the app was opened from the background (maybe have the pager subscribe to the appstate's active state).
Just some thoughts. ¯_(ツ)_/¯

While it is a solution, I don't like that latest commit. It makes no sense to have that dependency. The solution should be more general. Otherwise we'll have to inject even more things in the future, if we add more features like this.

Last change is more generic.

Superseded by #153


'Cloud Native Storage with Longhorn' Landing Page

SURE-6859
Request description:
Add landing page as top page in hierarchy for each 'Integrations' section.
Page should include:

brief description of integrated product/project

benefits of integrating product/project with Rancher

additional benefits received by Prime customers

Reopening as additional review/updates need to be made. Initial PR was merged so some stakeholders had access to a preview.


Potential for Unexpected Behavior in OpenSSL 1.1.1c

An "issue" that gives no information whatsoever? Sorry, not acceptable.


IsNoteBookSupported should also validate version to see if new enough

I'm not sure what the newest version required is, but for this issue (#3785) it looks like the user had an older version and upgrading fixed everything.
This likely means we have a minimum version required.

Warning message if the notebook version is lower than minimum version we support.


Add support for 64-bit FreeBSD

The compatibility list on addons.mozilla.org should be updated:

Installing the plugin for Linux works just fine.

Thanks, merged in https://github.com/dannyvankooten/browserpass/commit/8723d9cf3ce835e8e1e0e169d57b5f5d6f8be116
@dannyvankooten please update the compatibility list next time you upload an extension, as suggested above.


Possibility to inject scripts

PhantomJS allows for the possibility to inject JS files into the page. I couldn't find this functionality here. If it fits the roadmap I could submit a PR, but I don't have a good solution on how to unit test this.
The edit is contained in the lib/scripts/conversionScriptPart.js:
Adding these lines to the page.onInitialized function
    if (body.injectScripts && body.injectScripts.length > 0) {
      body.injectScripts.forEach(function(script) {
        page.injectJs(script);
      });
    }

This functionality could then be triggered by calling conversion like this:
conversion({
    url: "http://example.com",
    injectScripts: [
      __dirname + '/polyfill.js' // <-- include the full path to the script(s) to be injected
    ],
    waitForJS: true
  }, function(err, pdf) {
    ...
  }

Thoughts?

Yes, this makes sense. It would be great if you can make a PR with this.
You can also easily unit test it. Just link injectSript with console.log('test') content and make sure the test string is contained in the conversion response log res.logs[?].should.containEql('test').


Treat policy status "pending" as non compliant

/assign @sudomakeinstall2

/cherrypick release-4.13


doc: state PackageId/SourceId string is opaque

What does this PR try to resolve?

In #12280 we found that SourceId serialization might be out-of-sync
with different lockfiles. However, we don't really want people to rely
on the exact format of serialized PackageId and SourceId. Unluckily,
cargo metadata already emits such a format.
This PR tries its best to inform uses that there is no guarantee of
their formats across Cargo versions.

How should we test and review this PR?
This is doc-only change, though it is a bit controversial that we use
strong words to state the instability.
Additional information
Some follow-up questions:

Do we also want to clarify what the level of the stability --format-version gives?
Alternatively, we could bump --format-version for such change in #12280. I personally don't want though.
Another questions is that in the current doc of cargo metadata we explains source format quite a lot. Should we remove it or guarantee that some part of it is quite stable?

Updated. Thanks for the suggestions!

Thanks!
@bors r+

:pushpin: Commit f3fd9ef724f5cac8c6ead446369c58978e3c11d7 has been approved by ehuss
It is now in the queue for this repository.

:hourglass: Testing commit f3fd9ef724f5cac8c6ead446369c58978e3c11d7 with merge ea9c1a5bd7f6fe6cc5f5fdccce41a075d1b9413a...

:sunny: Test successful - checks-actions
Approved by: ehuss
Pushing ea9c1a5bd7f6fe6cc5f5fdccce41a075d1b9413a to master...


Discuss wordpress/general/general.json

Do we need it?
Can we gitignore it?
Did you know if you change the path that it will delete folders?

All good @zakiya ?

Also...https://github.com/cagov/wordpress-to-github/issues/96

Summary:
general.json is  a file with global values from the source WordPress database such as site name, site description, and url. The wordpress-to-github service writes this file to the target GitHub repository (such as drought.ca.gov) so these values are available to the static site generator.
I'm no longer blocked so we can close this.


Can operator-sdk run bundle use local image?

Type of question
Hi, I am writing operator using operator-sdk. Recently I was looking for a solution on how to do e2e testing. I chose to use kind as a temporary test environment.
I started the kind node locally, and then built the operator image and bundle image locally.  When I tried to initialize the test suite environment through operator-sdk run bundle before the test, I found that operator-sdk would pull the images through the network.
In CI environment, these operations are temporary, in order to verify that there is no problem with my logic, I think operator-sdk should first try to use the local bundle image, instead of pulling the remote repository, otherwise you need to provide a test repository to store the temporary image or special version. I think this mechanism is bad for development testing.
I want to ask is this something wrong with me or does operator-sdk run bundle always pull the image of the remote repository?
Question
What did you do?

make bundle
make bundle-build
kind load docker-image quay.io/zncdata/spark-k8s-operator-bundle:vv0.1.0
operator-sdk run bundle quay.io/zncdata/spark-k8s-operator-bundle:vv0.1.0

output:
INFO[0001] trying next host - response was http.StatusNotFound  host=quay.io
FATA[0001] Failed to run bundle: pull bundle image: error pulling image quay.io/zncdata/spark-k8s-operator-bundle:vv0.1.0: error resolving name for image ref quay.io/zncdata/spark-k8s-operator-bundle:vv0.1.0: quay.io/zncdata/spark-k8s-operator-bundle:vv0.1.0: not found

What did you expect to see?
operator-sdk shoule use local image builded with docker, rather then pull bundle.
What did you see instead? Under which circumstances?
above
Environment
Operator type:
golang
Kubernetes cluster type:

$ operator-sdk version
operator-sdk version: "v1.33.0", commit: "542966812906456a8d67cf7284fc6410b104e118", kubernetes version: "v1.27.0", go version: "go1.21.5", GOOS: "darwin", GOARCH: "arm64"

$ go version (if language is Go)
go version go1.21.5 darwin/arm64

$ kubectl version
WARNING: This version information is deprecated and will be replaced with the output from kubectl version --short.  Use --output=yaml|json to get the full version.
Client Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.4", GitCommit:"f89670c3aa4059d6999cb42e23ccb4f0b9a03979", GitTreeState:"clean", BuildDate:"2023-04-12T12:13:53Z", GoVersion:"go1.19.8", Compiler:"gc", Platform:"darwin/arm64"}
Kustomize Version: v4.5.7
Server Version: version.Info{Major:"1", Minor:"27", GitVersion:"v1.27.3", GitCommit:"25b4e43193bcda6c7328a6d147b1fb73a33f1598", GitTreeState:"clean", BuildDate:"2023-06-15T00:38:14Z", GoVersion:"go1.20.5", Compiler:"gc", Platform:"linux/arm64"}

Additional context

By reading the source code, I found that the mirror implementation logic supports getting the image from the local, but the local mirror logic is not checked at the time of calling.
https://github.com/operator-framework/operator-sdk/blob/4abd483aa4004af83b3c05ddf9d7a7e4d4653cc7/internal/registry/image.go#L30-L72
But at the time of the call, no local judgment is made
https://github.com/operator-framework/operator-sdk/blob/4abd483aa4004af83b3c05ddf9d7a7e4d4653cc7/internal/olm/operator/helpers.go#L37-L40
I was wondering if anyone could fix this?

I recommend installing local registry like instructed here: https://kind.sigs.k8s.io/docs/user/local-registry/
After that, you can push to that registry and run a local bundle. For example, my quick test:
➜  cass-operator git:(master) ✗ bin/operator-sdk run bundle localhost:5001/k8ssandra/cass-operator-bundle:v1.20.0-dev.faa4d28-20240404 --use-http
INFO[0008] Creating a File-Based Catalog of the bundle "localhost:5001/k8ssandra/cass-operator-bundle:v1.20.0-dev.faa4d28-20240404"
INFO[0008] Generated a valid File-Based Catalog
INFO[0016] Created registry pod: 001-k8ssandra-cass-operator-bundle-v1-20-0-dev-faa4d28-20240404
INFO[0016] Created CatalogSource: cass-operator-catalog
INFO[0016] OperatorGroup "operator-sdk-og" created
INFO[0016] Created Subscription: cass-operator-v1-20-0-dev-faa4d28-20240404-sub
INFO[0023] Approved InstallPlan install-kbnqd for the Subscription: cass-operator-v1-20-0-dev-faa4d28-20240404-sub
INFO[0023] Waiting for ClusterServiceVersion "default/cass-operator.v1.20.0-dev.faa4d28-20240404" to reach 'Succeeded' phase
INFO[0024]   Waiting for ClusterServiceVersion "default/cass-operator.v1.20.0-dev.faa4d28-20240404" to appear
INFO[0026]   Found ClusterServiceVersion "default/cass-operator.v1.20.0-dev.faa4d28-20240404" phase: Pending
INFO[0028]   Found ClusterServiceVersion "default/cass-operator.v1.20.0-dev.faa4d28-20240404" phase: Installing
INFO[0089]   Found ClusterServiceVersion "default/cass-operator.v1.20.0-dev.faa4d28-20240404" phase: Succeeded
INFO[0089] OLM has successfully installed "cass-operator.v1.20.0-dev.faa4d28-20240404"
➜  cass-operator git:(master) ✗

Personally I always have local registry installed in my kind setups, since it gives more "e2e" feeling in that sense.

+1 I think this one would be useful. I've tried to setup the local flag, but there are other parts of the execution that are pulling the image later in order to get the bundle into a directory.


Remove explicit typing of _name properties

In our application we have some cases where we want to use the name of the tables for strict typing, but as they are explicitly typed as string it is not possible.
Use case
type CurrentPrice = typeof tables.currentPrice._name;
type Product = typeof tables.product._name;
type Store = typeof tables.store._name;

export type StrategyScopeTable = Product | Store | CurrentPrice

We need the _name  properties to keep the implict typing (as readonly string value) so they can only be equal to one specific value and be usable for strict typing

Fixes by https://github.com/squashql/squashql-codegen/commit/3f87cff97ed6f815f2ebfe698974e5885abb8c09


Add Iterable.filter* methods

filter* allows filtering values in iterables. (Alternative to the already existing where* functions).
Justification
In most languages it's called filter, except for dart where it's oddly called where.
filter, together with map and flatMap are the most common used operations on Iterables. While map is part of the official dart SDK, flatMap was already added to dartx. The new filter* methods follow the same logic.
This makes it much easier for newcomers of Dart to work with Iterables.

Initially, I decided not to implement the filter() methods to follow Dart terminology but I agree with you that some users might look for them because other languages also call them filter.