Updates for Lacework v3.90

Thanks for reviewing @hazedav! Given that APIv2 isn't GA, and we haven't aliased CloudTrail to CloudActivities within the product, I'm just planning to document the name change in the release notes.  I feel like APIv2 is "use at your own risk" until it's GA.


Upgrade from Python 2.7.17 --> 3.8.1

Fixes: #191

https://www.python.org/downloads/release/python-381
http://pyfound.blogspot.com/2019/12/python-2-sunset.html

Thanks so much for submitting a PR (just peeked at this and #204)! This project has been pretty dormant lately so I'm happy to see some activity.

I also believe that Visual Studio 2019 is now supported and VS2015 is not so perhaps the beta should step up there as well.

Do you happen to know if support for Windows 7 has been dropped? It'd be nice to have a link to that info as well since there are still numerous users running on versions of Windows older than Windows 10.

As it stands right now, this PR appears to basically just bump numbers and update a link in the README. Unless there are objections, I plan to merge this once it's clear/documented how compatibility is affected -- i.e. which versions of NodeJS and Windows are supported. Then we can update to VS2019 and attempt a beta release (might need @felixrieseberg to help with that).

@jacobq Win7 still supported, see platform support: https://github.com/nodejs/node/blob/master/BUILDING.md#platform-list
Use the branch dropdown to compare to various node.js releases if wanted, for example: v12.x is  https://github.com/nodejs/node/blob/v12.x/BUILDING.md#platform-list

@jacobq Win7 still supported...

Thanks; that covers the NodeJS portion. When we do the VS2019 update we'll need to check compatibility for that also.

@jacobq https://github.com/nodejs/node/issues/25789#issuecomment-571293501 should help clarify some things.  @sam-github and I discussed and we think your beta idea (mentioned above) is great.

@felixrieseberg Can we please get a release of the current codebase uploaded into npm?


V4

Version 4.
Migrate to the graph as a core base structure.

Pull Request Test Coverage Report for Build 97010708

156 of 156 (100.0%)  changed or added relevant lines in 10 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 0c02ecf3646ac852523b910a2b1ea8d9abb95da4:
0.0%

Covered Lines:
350

Relevant Lines:
350

💛  - Coveralls


PETSc brigade hotfix

Make sure the KSP context solver is created on the same brigadier MPI_COMM as the X matrices -- otherwise parallelization fails. One line fix.

Right, I see what the problem is -- it has to do with deleting the temporary folders that are generated during checkpointing tests. When run in MPI mode, multiple ranks try to delete the same folder, but only one can do it.
A proper fix for this would also change the directory to tmp or something and have auto clean even when testing is not exited properly (probably do pre-test). I'll figure this out.
A quick fix for this is to implement a try/except loop over the shutil.rmtree of the chkpoint folder. I'll do that now.

Looks like it's not me, it's Numpy/Scipy. I guess they finally made it impossible to make non-square numpy arrays.

    with warnings.catch_warnings():

        warnings.simplefilter("ignore", category=DeprecationWarning)
        proto_matr = (

          np.array(dat, dtype=np.complex64),

            (np.array(row_ind), np.array(col_ind)),
        )

E           ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (5980,) + inhomogeneous part.

Update: this is really painful. Like I thought, this is not because of any petsc updates: this is purely due to the fact that we are running tests with Python 3.9, which here loads numpy=1.24, which is the version where they stopped allowing the creation of "inhomogeneous" numpy arrays -- a.k.a. ones with different internal dimensions.
The problem is, this is exactly the kind of thing that Scipy demands to build a sparse matrix!
I am trying to figure out a way around this -- they must have one, otherwise it is literally impossible to create sparse scipy complex matrices with numpy=1.24. Getting a lot of weird error messages as I'm trying different things here.
As an aside, this does not affect the PETSc sparse solver in any way.

@Chiffafox that's hilarious. Do you think this is worth raising in one of those communities? It's a crazy edge case issue but it's possible the devs of these packages could help.

@matthewcarbone I actually think it's a pretty serious case -- unless I'm missing something major, right now there is no way to make Scipy sparse matrices with numpy=1.24, it completely kills the entire sparse matrix functionality. I've tried googling a bit but haven't seen much. I'll create a minimal example and raise it with the Scipy people.

@Chiffafox wait a sec, is scipy's default numpy dependency numpy==1.2.4?? In that case, that's insane and should be raised with the scipy devs, I think.

@matthewcarbone , I think now that we pegged numpy to <1.24, this can be merged with no issues. I just pushed a separate commit that also fixes the issue I had on CFN with padding (need to make default ext=1000 in padded_kw).

@Chiffafox sounds good. Let's see if the tests pass 😁


 This can lead to infinite symlink expansion errors in the parent workspace.
Solution
Delete the Bazel symlinks in the child workspaces. This avoids the infinite symlink expansion and preserves the Bazel build outputs for the child workspaces.
Usage
Run @contrib_rules_bazel_integration_test//tools:remove_child_wksp_bazel_symlinks from the parent workspace. It looks for the Bazel symlinks in the child workspace while keeping the Bazel symlinks in the parent workspace.

Rebase manually

Replaced by #91


Can you please update your Documentation?

Hello, dear Cocorico team, Thanks for making this for us.
I see in doc there is not much clear about install doc on Linux Server. I think for not much clear doc many people are not able to use your application. I think good Documentation will easier to install and maintenance Cocorico and increase your users. My humble request please make good Documentation that can help users to install it easily with Nginx or Apache.
Regards

Hi @rakibulinux
Thanks for this recommendation. From what we know if you are used to install LAMP environments you should not have to much difficulties to install Cocorico.
It seems that you have some difficulties to install it. Could you communicate what was your issues and eventually also how you fix them. You can also complete the documentation if some information are missing.
Thanks!

Hello, @cocolabssas Thanks for the replay. Can we get an Nginx configuration example for Cocorico? I just get here Apache. It will really help us. Also, you have any community for Cocorico?: https://github.com/Cocolabs-SAS/cocorico/blob/master/doc/virtual-hosts.md

hello @cocolabssas i have the same issue as him. i used XAMPP and windows to operate it, can you please show me how to install it or make a video so everyone else who have the same problem can watch it.

FWIW - I have over 10yrs of LAMP experience and I've also had issues installing this application...

Hello!
I can't install it properly too (and yes, I have experience with local servers). I had tried to install it on two different machines, with WAMP and OpenServer.
Still, I get the this welcome page after the installation is over (as it shown on the screenshot, the layout of the page is broken, there is no pictures and styles)

Hello everyone,
First of all thank you for your feedback!
Although many people have succeeded without too much difficulty in installing Cocorico, we will, taking into account your requests, make the installation even easier.
In the meantime, here are some remarks:

It is strongly recommended to use a Linux environment rather than Windows.
Nginx: We will be committing in the next few days the Nginx config. To wait, you can take inspiration from the config proposed by Symfony: https://symfony.com/doc/3.4/setup/web_server_configuration.html#nginx
Read doc/installation-server-linux.md and doc/installation-application.md carefully
Installing Cocorico will be facilitated by your knowledge of LAMP. and Symfony

Concerning your issue @skylancr you need, according to your domain,to set these parameters:
cocorico.assets_base_urls: 'http://cocorico.local/'
router.request_context.host: cocorico.local
router.request_context.scheme: http
router.request_context.base_url: ''

in your app/config/parameters.yml and then execute:
php bin/console assets:install --symlink web --env=dev
php bin/console assetic:dump  --env=dev

See doc / installation-application.md:107
Hope it helps!


Improve DX by allowing easier local development of the UI using local backend

Currently the UI fetches the data always from api.onkometrorikki.fi.
Set the API url as an env variable for easier local development using local backend.

Just realized that they both use port 3000 at the moment :man_facepalming:


Deployment streamlining

Due to continued issues with juggling buildpacks in Heroku, this version removes the dependency on nodejs in production by switching to CDN versions of key libraries. In development, local un-minified libraries are still referenced.
This is a pre-0.5.0 release PR.

Tests passing & deployed for testing to https://meta.dribdat.cc/


Questions to tl.device_print function, something went wrong?

For the matmul example code, I want to print the offset when set blocksize=16 and M = 30, meaning the last block doesn't have enough datas.
I use tl.device_print, but it returns  pid ... idx ... bn: x, where x is an integer. In my view, x should be a tensor like [0,1,2,3] or [4,5,6,0] (0 means out of index) when set blocksize=4, and m=7. Am I correct?
@triton.jit
def matmul_kernel(
    a_ptr, b_ptr, c_ptr,
    M, N, K,
    stride_am, stride_ak,
    stride_bk, stride_bn,
    stride_cm, stride_cn,
    # hyperparameters
    BLOCK_SIZE_M: tl.constexpr, BLOCK_SIZE_N: tl.constexpr, BLOCK_SIZE_K: tl.constexpr,
    GROUP_SIZE_M: tl.constexpr,
    ACTIVATION: tl.constexpr,
):
 ...
    # Compute ptrs
    # [1,9] * [9,1] -> (pid_m, pid_n)
    # 8*8@8*8->8*8, block4*4, consider 2nd block
    offset_am = (pid_m * BLOCK_SIZE_M + tl.arange(0, BLOCK_SIZE_M)) % M # [4,5,6,7]
    offset_bn = (pid_n * BLOCK_SIZE_N + tl.arange(0, BLOCK_SIZE_N)) % N # [0,1,2,3]
    tl.device_print("am", offset_am)
    tl.device_print("bn", offset_bn)
    offset_k = tl.arange(0, BLOCK_SIZE_K) # [0,1,2,3]
    a_ptrs = a_ptr + offset_am[:, None] * stride_am + offset_k[None, :] * stride_ak # broadcast to 2D
    b_ptrs = b_ptr + offset_k[:, None] * stride_bk + offset_bn[None, :] * stride_bn # broadcast to 2D

print log
pid (4, 0, 0) idx ( 0) am: 64
pid (4, 0, 0) idx ( 1) am: 65
pid (4, 0, 0) idx ( 2) am: 66
pid (4, 0, 0) idx ( 3) am: 67
pid (4, 0, 0) idx ( 4) am: 68
pid (4, 0, 0) idx ( 5) am: 69
pid (4, 0, 0) idx ( 6) am: 70
pid (4, 0, 0) idx ( 7) am: 71
pid (4, 0, 0) idx ( 8) am: 72

I don't really know the pid and idx meaning. Is there any explanation to the parameters.?

@ThomasRaoux @zhanglx13

In general, pid refers to program id (triton term) or block id (cuda term) or workgroup id (hip term). idx refers to the index of the value in the tensor.
In your case, block_size = 16, so each program deals with a vector (tensor in general) of 16 elements. Then program 4 (the 5th program) deals with a vector with elements: 64, 65, ...
For more information about printOp, check the comments in it's implementation

Thanks for you reply. I am confused about this line offset_am = (pid_m * BLOCK_SIZE_M + tl.arange(0, BLOCK_SIZE_M)) % M
When M % BLOCK_SIZE_M !=0 (means the last block doesn't have enough data), is the offset_am[M,((M/BLOCK_SIZE_M)+1)*M)] we should ignore?

The offset_am is computed like this

pid_m * BLOCK_SIZE_M is a scalar. Let's assume it's 1 * 16 = 16
tl.arange(0, BLOCK_SIZE_M) makes a vector (tensor) of [0, 1, ..., 15]
Then you add them and get: [16, 17, ..., 31]
At last, you apply the %M (say M=30) part and get: [16, 17, 18, ..., 29, 0, 1]

As you can see, you still have a vector of 16 elements, but the last two values are "wrapped" so that we don't access out-of-bound elements.


[ESP32] Suppressing the logs related to Long dispatch time and Log re…

Problem:
Providing a config option to set time threshold for event dispatching.
To optimize the logging functionality.
Change overview:
Provided the config option specific to ESP32 to set the threshold for events dispatching time.
Set the config option by default to 0 to suppress the Long dispatch time logs.
The log related changes mainly changes the way the logs are converted into the idf specific format.
The arguments are directly used from chip_log instead of converting them to a string and then calling the idf API.
This also removes the need for the extra buffer, and also removes the limit for the 256 length for the log + arguments size.
Testing
Successfully tested the logs by building and commissioning the all-clusters-app and setting the CONFIG_LOG_DEFAULT_LEVEL to Debug, Error and Info.

@shripad621git Please fix the CI failure too


Spice_Codecs doesn't run with Rescript 11 RC5

@greenlabs\ppx-spice\src\rescript\Spice_Codecs.res:8:31-44

   6 │ let falseableDecode = (decoder, json) =>
   7 │   switch json {
   8 │   | Js.Json.Boolean(false) => Belt.Result.Ok(None)
   9 │   | _ => Belt.Result.map(decoder(json), v => Some(v))
  10 │   }

  The variant constructor Belt.Result.Ok can't be found.

  - If it's defined in another module or file, bring it into scope by:
    - Prefixing it with said module name: TheModule.Belt.Result.Ok
    - Or specifying its type:
    let theValue: TheModule.theType = Belt.Result.Ok
  - Constructors and modules are both capitalized. Did you want the latter?
    Then instead of let foo = Bar, try module Foo = Bar.

AFAIK, in one of their commits, they moved the Result type out of Belt.

Thank you for opening the issue. Yes correct.
I'll fix it soon for v11-rc.5.

Can you test with 0.2.1-rc.1

It's building now


Run playwright from template

Proposed changes

Types of changes

[ ] 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

[ ] Lint and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Further comments

Codecov Report

Merging #239 (2b9aa1a) into master (90933de) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #239   +/-   ##
=======================================
  Coverage   36.51%   36.51%
=======================================
  Files          35       35
  Lines        2273     2273
=======================================
  Hits          830      830
  Misses       1303     1303
  Partials      140      140

Continue to review full report at Codecov.

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


Add include-what-you-use action

With this action we are applying IWYU to the codebase and create a PR with the fixes.
This action will be run on every commit on main touch code in src/. The generated fixes are going to be applied and pushed to a branch hotfix/iwyu-COMMIT_SHA, where the COMMIT_SHA is the commit the action run on. Afterwards, a PR is created to merge the change into main.
Note, that in order to pass the CLA check, we are using the orbitprofiler-bot service account with its personal access token.
Note: The on: pull_request trigger is only for testing the bot access on this repository. If working it will create a PR on main including the fixup commit AND the commit from this PR (as in https://github.com/florian-kuebler/orbitprofiler/pull/21).
Test: Add the changes to fork and create a change with a
violation.

Note: It probably makes sense to wait until the windows build is added to the CI such that the IWYU is not breaking that build constantly.

With recent changes, the workflow produced https://github.com/google/orbit/pull/4501, which passes CLA and build checks (I manually canceled the recursive iwyu workflow).


Workaround the relocation truncated to fit problem on m68k builds

We add -mxgot to use 32bit GOT type.

Note, I've opened https://github.com/openssl/openssl/pull/24030 to consider removing this arch entirely from CI as its not on any supported platform list

Marking as urgent as this is a recent CI regression fix.

@nhorman do you agree with urgent?

Ack, concur urgent

Merged to the master, 3.3 and 3.2 branches. Thank you for the reviews.


Support built-in modules

Feature request

What is the expected behavior?
Chrome is currently shipping KV storage (behind a flag, origin trial coming soon), which is the first of many planned built-in modules on the web.
The issue with webpack is that built-in modules are only consumable via native import statements, which webpack does not currently support.
Ideally, a developer would be able to include the following in their source code, and webpack (perhaps with the help of a plugin) would know how to optimally load it.
import {storage} from 'std:kv-storage';

storage.set('key', 'value');

What is the motivation or use case for adding/changing the behavior?
Built-in modules offer a way for developers to import code into their projects with no download, cost. And they're actually usable in production today because they have viable fallback mechanisms:

Import maps provide a fallback for browsers that don't support the built-in modules.
And module/nomodule builds provide a fallback for browsers that don't support imports.

The only thing preventing webpack users from using built-in modules in their projects today is that webpack itself doesn't support outputting in module format.
Note: if you're curious, here's a small demo (source code) of a site using built-in modules (via Rollup) and using the above fallbacks so it works in all browsers. In Chrome 74+ (with the experimental web platform features flag turned on), the built-in module is used. In all other browsers a polyfill is loaded.
How should this be implemented in your opinion?
In my opinion, the best way to enable this would be to add full support for ES module output, eliminating the current ES5 runtime code and depending entirely on import statements to load chunks.
But since I assume supporting ES module output would be a lot of work, it would be nice if (at minimum) webpack could be configured to preserve unresolved (or external) module import statements.
I've filed a separate issue for this feature. If support were added, I think it would make it possible (albeit in a slightly hackish way) for webpack users to use built-in modules in their bundles while we wait for proper ES module support.
Are you willing to work on this yourself?
I'm willing to help, but cannot commit to full implementation.

Possibly related: #2933, #8010.

@glen-84 definitely related, but I filed this separately because I suspect it may be easier to support built-in modules as an incremental change rather than needing to wait for full module support.

@philipwalton PR welcome :+1:

That trial has ended, and KV Storage is no longer available.


added cifs-utils and csi-driver-smb

For Hetzner Storage Boxes to work correctly with this csi driver cifs-utils package is needed. Since nfs-utils and iscsi are installed regardless if longhorn is used or not, I would argue a small package like cifs-utils should be preinstalled by default as well.
EDIT: I went ahead and added csi-driver-smb as optional Helm chart, as I already said this can be leveraged by Hetzner Storage Boxes so I believe it is a welcome addition to the project. Also, now it makes more sense to preinstall cifs-utils by default.

I've tested these changes succesfully, whole cluster build and deploy.

I've encountered an issue..
Old nodes made by v1 work flawlessly with this setup, smb share mounts to host and I can list files and container get PVC mounted and can list files. The setup for v1 was identical except that I used old additional_packages var to add cifs-utils.
Now that I made this PR and upgraded my cluster, and added 2 nodes with packer from v2, even though cifs-utils is installed and I can list the files from smb share on the host without issue, if a pod is run on the new nodes it cannot access files from the smb share.
TLDR:

cifs-utils is installed correctly
smb mounts to both v1 and v2 hosts correctly when making a PV and PVC, files are accessable
pods on v1 work as expected, pods on v2 error out with (exactly the same pods, I just set antiaffinity for them and made replicas to equal number of nodes):

ls: cannot open directory '/var/storage/media': Permission denied

I've tested this, making a cluster with v1.10.9 and deploying the same Helm chart results in perfectly working Storage Box setup (note that I'm not even installing cifs-utils, just a normal cluster without Longhorn even) with my Autoscan deployment.
So something changed when the script switched to packer method. I'll investigate further...

@mysticaltech Could it be related to all these SELinux additions I see in the commit history?

kube-hetzner v2.0.0 works without issues, I'm testing to see if 2.0.1 works but I believe the culprit is there and not in 2.0.2

@aleksasiriski Yes, you guess right, SELinux was activated for k3s in 2.0.1. But it's super easy to fix.
Run this command sudo grep "avc:  denied" /var/log/audit/audit.log | audit2allow -M my_custom_policy && mv my_custom_policy.te my_custom_policy_all_denied.te
, grab the content of the .te, and add the the kube-hetzner policy in the locals.tf. Search for "policy", you will see it. Then rebuild.
But ideally, apply the .pp with semodule -i to test if it works, and if it generates other error, run the above command again, until it works for good and only then copy to the locals.tf policy, then delete the snapshot (you can use the cleanup script) and try again. It should work like a charm!

The issue is mentioned here, I'll try adapting kube-hetzner's SELinux to work with smb shares, as I would like for it to stay enabled. https://github.com/kubernetes-csi/csi-driver-smb/issues/132#issuecomment-709917748

It will work, super easy flow, you'll see. If you just append the content it's fine. I can organize it better with my friend gpt-4 later on 😜

This policy doesn't make sense to me, I guess I need to manually set virt_use_samba SELinux boolean to ON and then generate the current policy to a file?
module my_custom_policy 1.0;

require {
	type kernel_t;
	type bin_t;
	type kernel_generic_helper_t;
	class key { read view };
	class file execute_no_trans;
	class unix_dgram_socket create;
}

#============= kernel_generic_helper_t ==============
allow kernel_generic_helper_t bin_t:file execute_no_trans;
allow kernel_generic_helper_t kernel_t:key { read view };
allow kernel_generic_helper_t self:unix_dgram_socket create;

Setting setsebool -P virt_use_samba 1 manually fixes the issue, but I have to find out how to convert that to a policy entry

https://unix.stackexchange.com/questions/330861/is-it-possible-to-enable-an-selinux-boolean-in-a-policy-module
I guess it must be a shell command?

Just created a whole new cluster and it finally works without issues! You can give it another look if you want, but I believe it's ready to be merged into 2.0.3

Perfect, will do tomorrow morning ASAP, good work! 🥳

Oh yeah, will remember that. Let's not be Kubernetes...

This policy doesn't make sense to me, I guess I need to manually set virt_use_samba SELinux boolean to ON and then generate the current policy to a file?
module my_custom_policy 1.0;

require {
	type kernel_t;
	type bin_t;
	type kernel_generic_helper_t;
	class key { read view };
	class file execute_no_trans;
	class unix_dgram_socket create;
}

#============= kernel_generic_helper_t ==============
allow kernel_generic_helper_t bin_t:file execute_no_trans;
allow kernel_generic_helper_t kernel_t:key { read view };
allow kernel_generic_helper_t self:unix_dgram_socket create;

This does not seem to pose an obvious security risk, so will add them too. I want to make sure that our system is not overly restrictive while  we maintain SELinux on (voluntarily did not create an option to switch it off).
Also see https://github.com/kube-hetzner/terraform-hcloud-kube-hetzner/issues/697, we are now mapping the playing field of needed permissions to operate standard kubernetes tools.


Update hyperledger-fabric-consortium-azure-kubernetes-service.md

Updated chaincode Instantiation and Query related commands

@SunilRSanjeev : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Hi @SunilRSanjeev - This PR was opened in the public repository. The contributor guide article Public vs. private repo guidance indicates that "content developers and core product team PMs should work in the private repositories so they can address quality feedback from the quality automation present in the private repos."
We’ll leave this PR for review in the public repo, but would you make future article updates in the private repo?
In the private repo, content benefits from automated validations, a content staging environment, and comprehensive PR reviews. Also, you can sign off directly in your PR (in the public repo, you can't sign off in your own PR), and many PRs qualify for auto-merge.
To edit an article in the private repo from within the documentation, after you select Edit on an article page,  add “-pr” to the repo name in the URL.

Also, if you're interested, SpineEdit is a Chrome extension that opens the edit option in the private repo, if there is one and if you have access to it.
Thanks!

Related links in the internal Microsoft Docs contributor guide:
Public vs. private repos | Move a commit to a different repo (public -> private) | GitHub for content reviews
Quick reference for contributing to the docs | Make changes to a Docs article | PR review quality criteria

Hi @SunilRSanjeev - This PR was opened in the public repository. The contributor guide article Public vs. private repo guidance indicates that "content developers and core product team PMs should work in the private repositories so they can address quality feedback from the quality automation present in the private repos."
We’ll leave this PR for review in the public repo, but would you make future article updates in the private repo?
Thanks!

Moving to private repo.
#please-close


renaming the tab

how do you rename the tab?

Which tab?

the main tab in the browser

In src/configs/websites.js.
Most of the personal information can be configurated in folder src/configs/.

thanks

I was asking, how do you rename the site's tab name in Google Chrome or, in my case, Vivaldi

also how to change the favicon too

Oh I got it. In public/index.html:
https://github.com/Renovamen/playground-macos/blob/0b0892f5ecb0a2e0716829e12c22e5d696589268/public/index.html#L27

also how to change the favicon too

Set your favicon here:
https://github.com/Renovamen/playground-macos/blob/0b0892f5ecb0a2e0716829e12c22e5d696589268/public/index.html#L12
and here:
https://github.com/Renovamen/playground-macos/blob/0b0892f5ecb0a2e0716829e12c22e5d696589268/public/manifest.json#L1-L25

Thanks


remove python 3.8 and use 3.9 by default

Thanks for your reminder.

ERROR: Package 'ansible-core' requires a different Python: 3.8.13 not in '>=3.9'

Let me remove the py38-devel in tox only.

@ssbarnea
I believe the CI would work now.
Do you have any concern?


Inputs
Plan Slug: IN-COM
Available commands
The following commands can be executed by adding a comment to this issue:

/audit
/dry-run --plan-type build|deployment
/migrate --plan-type build|deployment --target-url :github-repository-url

Note: The plan-type option will default to build if omitted. If any remaining options are missing, the command will not be successful.

/migrate --plan-type build --target-url https://github.com/begonaguereca/bamboo-test

/dry-run --plan-slug IN-COM --custom-transformers transformers.rb

/dry-run --plan-slug IN-COM


/submission endpoint should redirect or be fleshed out

Pretty self-explanatory: the endpoint only has two buttons on it. The page should probably be removed.

https://github.com/Rytiggy/pass-ember/pull/2

This has been merged in :tada:


Use HTTP API instead of REST API for API Gateway

Now that lambda proxy has full support for using API Gateway's HTTP API, there's really no reason not to default to it, especially since the default serverless.yml doesn't have any auth in the API Gateway configuration. The HTTP API is faster and cheaper.
Closes #1
(Isn't that funny how the numbering is now up to #13 and I did most of that 😅)

we will need to fix https://github.com/vincentsarago/lambda-proxy/issues/44 before merging this !


do authors prefer YAML to JSON?

in the future, it may be preferable to store all metadata as YAML, so that humans may more easily correct errors. This is important because it the metadata maintained here is meant to act at the single source of truth, and that Zenodo (and others) should inherit from it.
the question then is, is it actually painful for users to manually update JSON? would YAML make this easier? are comments (# i'm a comment) useful?

JSON it is.


[HUDI-891] Improve websites for graduation required content

What is the purpose of the pull request
Justin Mclean point that there are also some required links / branding missing on your the web site.
check cite
https://whimsy.apache.org/pods/project/hudi

https://lists.apache.org/thread.html/rf661535e8837c13f25c8ec184310391108f029ee7eb88b98b5d6b465%40<general.incubator.apache.org>
Brief change log

Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Sync to https://lamber-ken.github.io/


docs.sh for language family repos that have docs Hugo modules

Summary

The script scripts/docs.sh installs Hugo and uses it to serve a local version of the Paketo website with the local copy of the language family docs replacing the appropriate Hugo module.
Use Cases

This allows contributors and code reviewers to quickly preview changes to the language family docs without having to manually clone and interact with the paketo-website repo. This script will fail to run in repos that don't yet have a docs/ directory + Hugo module. Currently, it is only useful for the paketo-website/dotnet-core repo, but will become applicable to others as we expand the use of Hugo modules.
Checklist

[x] I have viewed, signed, and submitted the Contributor License Agreement.
[ ] I have linked issue(s) that this PR should close using keywords or the Github UI (See docs)
[ ] I have added an integration test, if necessary.
[x] I have reviewed the styleguide for guidance on my code quality.
[x] I'm happy with the commit history on this PR (I have rebased/squashed as needed).

@sophiewigmore I chose to clone a clean copy into the repo to make minimal assumptions about the user's directory setup. This way, the script just works even if a) you haven't already cloned a copy of paketo-website or b) you have cloned a copy and you have local changes that you want to keep or c) you have already cloned a copy but it's not in a predictable location relative to the buildpack directory.
Also, it means that the script doesn't dump files into some unexpected other place on the filesystem 🙂  . I followed the model of installing binaries into .bin rather than plopping them in /tmp/ or so forth.

@sophiewigmore just want to note that I noticed a small bug in the existing update tools workflow: the implementation and language family buildpacks' tools.json were missing an entry for jam. I added that in.

@fg-j good catch, thank you!


[OpenAI]  Regenerate Code with later changes in typespec definition

Use https://github.com/Azure/azure-rest-api-specs/pull/26651 changes and regenerated,
No more compilation issue occurs.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-ai-openai

@jpalvarezl It is already based on the latest commit from azure-rest-api-specs repo. Once this PR gets approval, it will merged automatically.


Unexpected token JSON error when notarizing MacOS app

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description
Trying to use the notarize action and it's failing with the error:
Search query: 809: unexpected token at '{
  "key_id": "XXXXXXXX",
  "issuer_id": "XXX",
  "key": "KEY HERE ON ONE LINE",
  "duration": 1200,
  "in_house": false,
}'

my api_key_path goes to a JSON file with the exact contents:
{
  "key_id": "XXX",
  "issuer_id": "XXX",
  "key": "XXX",
  "duration": 1200,
  "in_house": false,
}

Command executed
notarize(
		verbose: true,
		package: "XXX.app",
		bundle_id: "XXX",
		print_log: true,
		api_key_path: "PATH/TO/AuthKey_XXXXXXXXjson"
)

Complete output when running fastlane, including the stack trace and command used
Command: `bundle exec fastlane notarize_and_upload --capture_output

  Nothing happened when using the --capture_output command. But here's the stack trace and everything:
Successfully loaded Appfile at path 'PATH/TO/fastlane/Appfile'
- app_identifier: 'XXX'
- apple_id: 'XXX'
- team_id: 'XXX'
-------
INFO [2021-05-12 16:30:55.93]: Driving the lane 'notarize_and_upload' 🚀
INFO [2021-05-12 16:30:55.93]: ----------------------
INFO [2021-05-12 16:30:55.93]: --- Step: notarize ---
INFO [2021-05-12 16:30:55.93]: ----------------------
INFO [2021-05-12 16:30:55.93]: $ ditto -c -k --rsrc --keepParent "PATH/TO/archive.xcarchive/Products/Applications/APP.app" "PATH TO/APP.app.zip"
INFO [2021-05-12 16:30:57.97]: Uploading package to notarization service, might take a while
WARN [2021-05-12 16:30:57.98]: Lane Context:
INFO [2021-05-12 16:30:57.98]: {:PLATFORM_NAME=>nil, :LANE_NAME=>"notarize_and_upload"}
ERROR [2021-05-12 16:30:57.98]: 809: unexpected token at '{
  "key_id": "XXX",
  "issuer_id": "XXX",
  "key": "XXX",
  "duration": 1200,
  "in_house": false,
}'

+------+----------+-------------+
|       fastlane summary        |
+------+----------+-------------+
| Step | Action   | Time (in s) |
+------+----------+-------------+
| 💥   | notarize | 2           |
+------+----------+-------------+

ERROR [2021-05-12 16:30:57.99]: fastlane finished with errors

Looking for related GitHub issues on fastlane/fastlane...
Search query: 809: unexpected token at '{
  "key_id": "XXX",
  "issuer_id": "XXX",
  "key": "XXX",
  "duration": 1200,
  "in_house": false,
}'

ERROR [2021-05-12 16:30:58.24]: Error finding relevant GitHub issues: undefined method `map' for nil:NilClass
Traceback (most recent call last):
	30: from /usr/local/Cellar/fastlane/2.182.0/libexec/bin/fastlane:23:in `<main>'
	29: from /usr/local/Cellar/fastlane/2.182.0/libexec/bin/fastlane:23:in `load'
	28: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/bin/fastlane:23:in `<top (required)>'
	27: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/cli_tools_distributor.rb:122:in `take_off'
	26: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/commands_generator.rb:42:in `start'
	25: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/commands_generator.rb:353:in `run'
	24: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/commander-4.6.0/lib/commander/delegates.rb:18:in `run!'
	23: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:76:in `run!'
	22: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/commander-4.6.0/lib/commander/runner.rb:444:in `run_active_command'
	21: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/commander-4.6.0/lib/commander/command.rb:157:in `run'
	20: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/commander-4.6.0/lib/commander/command.rb:187:in `call'
	19: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/commands_generator.rb:109:in `block (2 levels) in run'
	18: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/command_line_handler.rb:36:in `handle'
	17: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/lane_manager.rb:47:in `cruise_lane'
	16: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/runner.rb:45:in `execute'
	15: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/runner.rb:45:in `chdir'
	14: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/runner.rb:49:in `block in execute'
	13: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/lane.rb:33:in `call'
	12: from Fastfile:28:in `block in parsing_binding'
	11: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/fast_file.rb:159:in `method_missing'
	10: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/runner.rb:157:in `trigger_action_by_name'
	 9: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/runner.rb:229:in `execute_action'
	 8: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/runner.rb:229:in `chdir'
	 7: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/runner.rb:255:in `block in execute_action'
	 6: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/actions/actions_helper.rb:69:in `execute_action'
	 5: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/runner.rb:263:in `block (2 levels) in execute_action'
	 4: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/actions/notarize.rb:38:in `run'
	 3: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/fastlane/lib/fastlane/actions/notarize.rb:137:in `with_notarize_authenticator'
	 2: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/fastlane-2.182.0/spaceship/lib/spaceship/connect_api/token.rb:29:in `from_json_file'
	 1: from /usr/local/Cellar/fastlane/2.182.0/libexec/gems/json-2.5.1/lib/json/common.rb:216:in `parse'
/usr/local/Cellar/fastlane/2.182.0/libexec/gems/json-2.5.1/lib/json/common.rb:216:in `parse': \e[31m[!] 809: unexpected token at '{ (JSON::ParserError)
  "key_id": "XXX",
  "issuer_id": "XXX",
  "key": "XXX",
  "duration": 1200,
  "in_house": false,
}'\e[0m

Environment

✅ fastlane environment ✅
Stack

Key
Value

OS
11.2.1

Ruby
2.7.3

Bundler?
false

Git
git version 2.24.3 (Apple Git-128)

Installation Source
/usr/local/Cellar/fastlane/2.182.0/libexec/bin/fastlane

Host
macOS 11.2.1 (20D75)

Ruby Lib Dir
<EMAIL_ADDRESS>

OpenSSL Version
OpenSSL 1.1.1k  25 Mar 2021

Is contained
false

Is homebrew
true

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
12.3

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL

LANGUAGE

fastlane files:
`./fastlane/Fastfile`
skip_docs

lane :notarize_and_upload do
	notarize(
		verbose: true,
		package: "XXX.app",
		bundle_id: "XXX",
		print_log: true,
		api_key_path: "XXX/AuthKey_XXXXXXXX.json"
	)
end

# Archive the iPad scheme and save it to zip
lane :archive_and_zip do

end

`./fastlane/Appfile`
app_identifier("XXX")
apple_id("XXX")

team_id "XXX"

fastlane gems

Gem
Version
Update-Status

fastlane
2.182.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

did_you_mean
1.4.0

atomos
0.1.3

CFPropertyList
3.0.3

claide
1.0.3

colored2
3.1.2

nanaimo
0.3.0

xcodeproj
1.19.0

rouge
2.0.7

xcpretty
0.3.0

terminal-notifier
2.0.0

unicode-display_width
1.7.0

terminal-table
1.8.0

plist
3.6.0

public_suffix
4.0.6

addressable
2.7.0

multipart-post
2.0.0

word_wrap
1.0.0

tty-screen
0.8.1

tty-cursor
0.7.1

tty-spinner
0.9.3

artifactory
3.0.15

babosa
1.0.4

colored
1.2

highline
2.0.3

commander
4.6.0

excon
0.81.0

faraday-excon
1.1.0

faraday-net_http
1.0.1

faraday-net_http_persistent
1.1.0

ruby2_keywords
0.0.4

faraday
1.4.1

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20190701

http-cookie
1.0.3

faraday-cookie_jar
0.0.7

faraday_middleware
1.0.0

fastimage
2.2.3

gh_inspector
1.1.3

mini_magick
4.11.0

naturally
2.2.1

rubyzip
2.3.0

security
0.1.3

xcpretty-travis-formatter
1.0.1

dotenv
2.7.6

bundler
2.2.15

simctl
1.6.8

jwt
2.2.3

uber
0.1.0

declarative
0.0.20

trailblazer-option
0.1.1

representable
3.1.1

retriable
3.1.2

mini_mime
1.1.0

multi_json
1.15.0

signet
0.15.0

memoist
0.16.2

os
1.1.1

googleauth
0.16.2

httpclient
2.8.3

google-api-client
0.38.0

google-cloud-env
1.5.0

google-cloud-errors
1.1.0

google-cloud-core
1.6.0

google-apis-core
0.3.0

google-apis-iamcredentials_v1
0.3.0

google-apis-storage_v1
0.3.0

rake
13.0.3

digest-crc
0.6.3

google-cloud-storage
1.31.0

emoji_regex
3.2.2

jmespath
1.4.0

aws-eventstream
1.1.1

aws-sigv4
1.2.3

aws-sdk-core
3.114.0

aws-sdk-kms
1.43.0

aws-sdk-s3
1.94.1

uri
0.10.0

json
2.5.1

rexml
3.2.5

webrick
1.7.0

aws-partitions
1.453.0

forwardable
1.3.1

logger
1.4.2

cgi
0.1.0

date
3.0.0

timeout
0.1.0

stringio
0.1.0

zlib
1.1.0

ipaddr
1.2.2

openssl
2.1.2

ostruct
0.2.0

strscan
1.0.3

io-console
0.5.6

delegate
0.1.0

fileutils
1.4.1

singleton
0.1.0

open3
0.1.0

yaml
0.1.0

psych
3.1.0

mutex_m
0.1.0

generated on: 2021-05-12

Okay I figured out a work-around. I modified the notarize command to take two new inputs: key_id and issuer_id which it passes to the command if api_key_path wasn't passed. That tells altool to look in one of these directories for a AuthKey_[KEY_ID].p8 file:

./private_keys
~/private_keys
~/.private_keys
~/.appstoreconnect/private_keys

Then altool generates the required JWT/JWK to upload, and the rest of the notarize script works fine.
I think my original problem is because of some JSON parsing issue. Looking at past problems with a similar error (though none of them had a solution) the problem looked to be the same JSON 'unexpected token at '_''. I don't know what's causing that, but whatever it is this solution works for me for now.


AUDIT: Documentation is not updated (including Linux support)

Surfaced from @informalsystems audit of Stride at commit f9736fe0

finding:
id: IF-STRIDE-DOCUMENTATION
title: Documentation is not updated (including Linux support)
severity: Informational
impact: None
exploitability: None
type: Implementation
issue:
status: Unresolved
Involved artifacts

https://docs.stride.zone/docs

Description
The documentation contains pretty well technical architecture diagrams which explain three main data flow processes:

deposit and liquid stake
epoch delegation and reinvestment
unbonding

But some parts of the epoch delegation and reinvestment diagram need to be updated:

Reward Account probably should be removed and arrow no.3 may point to Withdraw ICA directly.

Function SetWithdrawalAddressOnHost changes default withdraw address (Delegation ICA address) to Withdraw ICA using MsgSetWithdrawAddress from x/distribution module:
msgs = append(msgs, &distributiontypes.MsgSetWithdrawAddress{DelegatorAddress: delegationIca.GetAddress(), WithdrawAddress: withdrawalIcaAddr})

so the "Reward Account" is an internal account in the dist module and is not important for the big picture.

There are deprecated enums: TRANSFER and STAKE

Up to this point, dockernet has only been tested on MacOS. In other words, nothing hasn't been done or tested on Linux. The audit team experienced a lot of installing problems using Linux machines so the solution rapidly appeared; the stride team provided a dedicated branch for Linux users: linux-dockernet and PR which introduces changes to make dockernet compatible with Linux.
Problem Scenarios
Out-of-date technical diagrams could lead to wrong conclusions about the data flow. Additionally, Linux users may feel some inconvenience while installing the chain.
Recommendation

Rename Revenue EOA to either Revenue ICA or Fee ICA to be consistent with other ICA accounts on the host zone
Remove the first sentence under the "Claim and Reinvest Rewards" section. There is no such thing as a "claim rewards" function anymore.
On the epoch delegation diagram make use of newly added enums for deposit records:

TRANSFER_QUEUE
TRANSFER_IN_PROGRESS
DELEGATION_QUEUE
DELEGATION_IN_PROGRESS

to clearly distinguish the current state of each deposit record instead of the former ones (TRANSFER and STAKE).

Similar thing for unbonding flow; mention the HostZoneUnbonding possible status:

UNBONDING_QUEUE
UNBONDING_IN_PROGRESS
EXIT_TRANSFER_QUEUE
EXIT_TRANSFER_IN_PROGRESS
CLAIMABLE

Replace the non-used ignite chain serve command which belongs to the
Installing Stride section from docs with the appropriate one.

Dockernet linux support : already done.

Resolved

https://github.com/Stride-Labs/stride/pull/327
https://github.com/Stride-Labs/stride/pull/374


Not wipe out DOM when changing values?

Firstly, great idea! Love it.
However, when changing values, React completely wipes out the DOM inside the radio components. This is not ideal when wanting to animate the radio buttons after being checked etc.
The best I could come up with (while still keeping the same pattern) was to use defaultChecked on the inputs instead of checked, and make shouldComponentUpdate inside the parent return false. Effectively making it an "uncontrolled" component.
Feel free to close this issue as it's kinda solved — I was just wondering if you had any thoughts how this could be done a little cleaner?

Ah, that's because I create a new react class, so the diffing algorithm does the equality check and resets the dom elements. Would #11 solve this problem?

use React.cloneElement

Ahh... yes I guess #11 is sort of the same issue.
@nkbt how/where would you use cloneElement?

@iest it should be part of library. Instead of rendering same element again and again it could be created independently and then you can clone it like
  render() {
    return React.cloneElement(React.Children.only(this.props.children), additionalProps);
  }

This is a good way to create wrapper-components that do not add their own dom as well.

So it could be something like
{children && children(React.cloneElement(CachedRadioElement, {name, selectedValue, onChange}))}

And of course we need CachedRadioElement which should be rendered separately, once.
Probable cached in this.CachedRadioElement and created when component is mounted.

How are you gonna cache the function handler if it's inlined in render?

I can give it a shot and do PR if successful =).

Actually right, it is a problem. When you render an element you cannot use it as <Radio> anymore, only as {Radio}.
On the other side if you create class then it is actually a new class every time and it will mount every any of props-arguments are changed.
I made one PR with breaking changes to show how it can be done. Will dig a bit more though. I think I have another idea.

Okay... here is another dirty hack to make it work with memoize, see #14

I am observing now with react-radio-group because the browser focus state resets when choosing a radio option, breaking a11y for my users. @nkbt I wanted to check out your PR https://github.com/chenglou/react-radio-group/pull/13 hoping that this would also my a11y issue, but it doesn't have the lib/ build directory, and it conflicts with master now anyway :/

@gkop I'll rebase it later today. It should fix the issue.
@chenglou I know you are now focused on other things, but what do you reckon on #13 and #14

Sorry, haven't been paying attention to this enough. What are the breaking changes?

@chenglou #13 changes API, #14 does not have any, but code smells. I put as much comments there as possible

@nkbt how can I test your code? When I install the released version from npm repositories, the lib/ directory is present. When I install yours by giving npm "nkbt/react-radio-group#new-api", the lib/ directory is not present.

@gkop I think you can just checkout repo, switch to a branch and run test example.
Alternatively you should:

checkout my branch (clone)
run build
do install from fs: npm install ~/nkbt/react-radio-group

The problem you not having lib is I believe a lack of prepublish script. Build is done in prerelease, which is not really correct.

Thanks for the help understanding npm @nkbt ! :) that makes sense. Meanwhile I have switched to using https://github.com/zippyui/react-radio which solved my a11y issue and is otherwise quite similar to this repo I think.

@nkbt giving you push rights to this repo. We should try the new stateless function components for this.

Thanks, I'll give a shot asap.

hi @nkbt any plan for merging or using function component? thanks.

Both solutions i submitted are not really perfect. I am not sure. Would
prefer to find better one
On Fri, 18 Mar 2016 at 7:31 AM, bsr203<EMAIL_ADDRESS>wrote:

hi @nkbt https://github.com/nkbt any plan for merging or using function
component? thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/chenglou/react-radio-group/issues/12#issuecomment-198069482

While the function-as-a-child idea is very charming and I've used it widely within my apps, I again and again get into issues because of this exact issue of recreating classes for each render.
Usually I refactor this via using context. I.e <RadioGroup> creates a context and <Radio> will require this context to work.
Here's a solution working with context could look like for the end user:
import {RadioGroup, Radio} from "react-radio-group";

...

render() {
  return (
    <form ...>
      <RadioGroup name="fruit" selectedValue={this.state.selectedValue} onChange={this.handleChange}>
        <label><Radio value="apple"/> Apple</label>
        ...
      </RadioGroup>
    </form>
  );
}

I realise it's quite a substantial breaking change, but not having to use the function-as-a-child syntax will probably make it easier for newcomers to use, plus fixing this issue would be straight forward in that case.
I'm happy to do a PR if you're interested in pursuing this idea further

That is interesting idea. In general I am quite against context, but in this case it feels like a pretty great solution! @chenglou what do you reckon?

Thanks for the ping. Commented on the PR.

Alright, so the PR is merged. Please try master (67a2bcdc7f3d0c8cb4d7762f82558d75c9592ea9). Things should work now. @danielberndt and @nkbt can publish this =).


fix: enable complex resource ids in instantiate()

Fixes #154.

I just tested this out with a local build, and it seems to have fixed the problem. Thank you for the quick fix here! Any idea when this might make it into the next release. As mentioned in #154, we have another large body of work which depends on this feature, with a hard deadline in mid-July.


updating httpoison?

👋  I am currently looking into adding this to a side project of mine and saw that bugsnex still depends on an old version of httpoison. Is this on purpose? Or can I create a little PR that changes this?

:wave:
Sure, please go ahead otherwise we might also get to it, as we should update :) Looking at the changelog it should be relatively easy and I think our usage isn't super fancy.


Refresh only part of a materialized view?

Say I have a materialized view which has a date field. Is there any way to refresh a materialized view, but ignore anything prior to a certain date? The idea is that, say for an orders view which contains joined data, eventually the orders become fixed and don't need updating anymore.

This is more of a SQL/Postgres question than a Scenic question.
That said, Postgres does not have facility to refresh a part of a materialized view. You could accomplish this by composing materialized views, some of which don't change, and only refreshing the most recent one and UNION-ing in the previous ones:
SELECT ...
UNION
SELECT * FROM older_materialized_view_2015
UNION
SELECT * FROM older_materialized_view_2014

Or by using an actual table to store results instead of a materialized view
UPDATE view
...
WHERE date < ...

Doing the union is a great suggestion. Thanks for the feedback.


Form(Preview) doesn't support default values

Current Behavior
No default values are being rendered by default.
Expected Behavior
Default values are being rendered.
Steps To Reproduce

create brand new svelte-kit project and follow the installation instructions in the shadcn-svelte
add the Form component(s)
copy-paste the code from the sample profile form

Link to Reproduction / Stackblitz
https://stackblitz.com/edit/github-zxmrcw?file=src%2Froutes%2F%2Bpage.svelte
More Information
I copied this form into my project and basically no .default() values are being rendered.
I am well aware that the default() values (for the website for instance) somehow work on https://www.shadcn-svelte.com/examples/forms.
Anyone has any idea?

When looking at your reproduction it appears that the default values are in fact displaying, can you clarify?

Yeah, I figured it out - I think I totally didn't figure out how the form library works. My initial code (which I hence modified and corrected) was as below. The commented code is an example of making it work with default values. Interesting bit is that if you export the last commented line and add export keyword (ie. export let form = superValidateSync(formSchema)) it stops working again - and I assumed that the formSchema (zod) was enough to render out the default values. :) Anyhow considering this resolved.
	let form: SuperValidated<FormSchema>;
	//  let form = defaultValues(formSchema);
	//  let form = superValidateSync(formSchema);


Composer Support

It would be nice if this is on Packagist

It is on composer already
composer require jajo/ng


The clli don't know the js code

Version
4.5.0
Reproduction link
https://github.com/19Qingfeng/issues.git
Environment info
npm install nx-website-component

Steps to reproduce
yarn
yarn serve
What is expected?
Identification code and Start project
What is actually happening?
Cli don't know the js code

sorry, I don't know your problem.

sorry, I don't know your problem.

I'm not sure why I reported js wrong by cli

I understand the question,thanks.


Feature request: Choose profile

Would be awesome to be able to change the profile within OBS on the tablet remote.

Feature i miss the most.


Additional channel/chat lifecycle events (Java)

See parent

This item is assigned to @JuanAr from Southworks. Having problems with Github at the moment.


Configuration property "slack_username" is not defined

I checked the log of Kube-slack and I noticed this error in both K8s clusters that I run in Azure.
Cluster 1
 (node:1) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 268)
(node:1) UnhandledPromiseRejectionWarning: Error: Configuration property "slack_username" is not defined
    at Config.get (/app/node_modules/config/lib/config.js:203:11)
    at SlackNotifier.notify (/app/notify/slack.js:25:48)
    at PodLongNotReady.callback (/app/index.js:27:26)
    at PodLongNotReady.emit (events.js:189:13)
    at PodLongNotReady.check (/app/monitors/longnotready.js:65:18)
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:1) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 269)
(node:1) UnhandledPromiseRejectionWarning: Error: Configuration property "slack_username" is not defined
    at Config.get (/app/node_modules/config/lib/config.js:203:11)
    at SlackNotifier.notify (/app/notify/slack.js:25:48)
    at PodLongNotReady.callback (/app/index.js:27:26)
    at PodLongNotReady.emit (events.js:189:13)
    at PodLongNotReady.check (/app/monitors/longnotready.js:65:18)
    at process._tickCallback (internal/process/next_tick.js:68:7)

Cluster 2
 (node:1) UnhandledPromiseRejectionWarning: Error: Configuration property "slack_username" is not defined
    at Config.get (/app/node_modules/config/lib/config.js:203:11)
    at SlackNotifier.notify (/app/notify/slack.js:25:48)
    at PodLongNotReady.callback (/app/index.js:27:26)
    at PodLongNotReady.emit (events.js:189:13)
    at PodLongNotReady.check (/app/monitors/longnotready.js:65:18)
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:1) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:1) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

My configuration:
K8s 1.12.7 deployed with Kubespray
Kube-Slack v4.2.0 deployed with helm
The pods are not restarted and work fine but this is still an issue.

/assign whs

@whs could you please take a look?

@pierluigilenoci helm install stable/kube-slack --set envVars.SLACK_URL="URL" --set envVars.SLACK_USERNAME="USERNAME" --set envVars.SLACK_CHANNEL="CHANNEL" --name kube-slack
The SLACK_USERNAME and SLACK_CHANNEL seem to also be required


Don't expose DB id's to the outside world

Add a Guid to the scener/releases/etc etc so that can be used to retrieve a specific release/scener etc.
Also add created/modified/deleted columns for those kind of tables

Ok... I'm going to split this into two individual requirements.
What is the reasoning for using a GUID rather than sequential IDs?

You should use both in your DB where the id is the pk, you can use the id server side but when exposing the data through an api you should use the guid instead of the id.
It's more of a security thing, if you expose the id of a record someone can easily decrease/increase that id and possibly retrieve data which they shouldn't, guessing a corect guid is a 'bit' harder.

That makes sense.  I guess we need to define what information should not be accessible.
I don't think there is anything about a release, group, scener, handle, event, bbs, or sid that needs to be protected.
Of course a user's login info would need to be protected when logging in via the API.

I've added "uuid" to the major types in the schema.


Set test status to Error for In-Progress tests when cancelling Testrun

Works as expected but is "error" the best descriptive state for this type of action?  Should it be stopped, killed or interrupted?

We have gone with Error for now as this is supported on the UI, other statuses wouldn't be rendered correctly. If we decide that stopped/killed etc is the better choice we will add support for this in the UI at a later date.


Add bower / npm files to support package management

I suppose it's not for the near future.
Does it still works with current angular?


SELECT Node version

Hello,
I am using Visual 2017 for my typescript developments. I have two versions of Node installed on my PC:

Node V4 in folder : C:\Program Files\nodejs
Node V8 in folder : C:\Program Files\nodejs_V8\node-v8.9.3-win-x64

I try to swtich from one to the other through "Option / Tools / Web Package Management" but even when I select folder "C:\Program Files\nodejs_V8\node-v8.9.3-win-x64" at the top of the list it is always Node V4 that is running. I would like to know how I can select Node v8 ?
Note: this question has also been asked on Microsoft forum

Thank you very much for your answer.
I updated the node version but I ran into a new probem : when trying to install sqlite3 with the options --build-from-source --scripts-prepend-node-path="C:\\Program Files\\nodejs_V8\\node-v8.9.3-win-x64\\node.exe" it failed with the message

npm WARN invalid config scripts-prepend-node-path="C:\\Program Files\\nodejs_V8\\node-v8.9.3-win-x64\\node.exe"
<EMAIL_ADDRESS>install C:\Users\jerome.marquet\Documents\workSpace\services\isogeo-sdk-ts\NodejsConsoleApp1\node_modules\sqlite3
npm WARN lifecycle npm is using C:\Program Files\nodejs_V8\node-v8.9.3-win-x64\node.exe but there is no node binary in the current PATH. Use the --scripts-prepend-node-path option to include the path for the node binary npm was executed with.
node-pre-gyp install --fallback-to-build
'node' n'est pas reconnu en tant que commande interne
ou externe, un programme executable ou un fichier de commandes.

So my ew question is do you know how to use the --scripts-prepend-node-path option ? Or is it broken on Visual 2017 ?
Best regards

@jmaFinistereVar glad you figured it out.


Feature/alpha

[X] Adds optional alpha value slider
[X] Adds custom SeekBar view that shows the progress as a label text floating above
[X] Deprecates OnColorSelected callback, adds new, renamed callback interface
[X] Adds new screenshots including alpha value sliders
[X] Updates Readme.md accordingly

Thank you @PattaFeuFeu for all the improvements :) Only one thing: I'm not sure it's a good idea to broke the compatibilty with the old callback :/ Maybe we can set it as deprecated but also call it ?  Anyway I'll merge it and tomorrow I'll upload it to bintray :)

I wasn’t sure either but in the end decided that it’d be OK—I marked the interface as well as the method as deprecated, changed the version number from 1.0.* to 1.1.* so that everyone who currently has gradle set to download anything after 1.0.* wouldn’t be affected by those breaking changes, and added the paragraph in the Readme, although to be fair I guess nobody will read that. 😆

Yeah, that's the point :D Nobody will read the Readme :D Well, I think its OK. I'll upload the new version.
PS: thank you very much, next time add your credits to the readme (if you want). Maybe we can make a "contributors" section


Add package versions to requirements.txt

To make the dev environment easier to replicate, the requirements.txt folder should be kept up to date with the project's package versions.

Should be resolved using $ pip freeze > requirements.txt


Browser request - Comodo Dragon

Found your site today - very helpful info!
I know you said you are hoping to add additional browsers to your tests.  Request you add Comodo Dragon.  Thanks!

https://www.comodo.com/home/browsers-toolbars/browser.php just a note that this browser is freeware, which is not open source

Thanks.  Didn't realize your tests were only for open-source software.

Chrome isn't open source and it's included so you can reopen this issue, I just wanted to add it as a note

👍

Yes, I'm open to testing browsers that are not open source. The tests themselves are open-source.


Format support

HI Yingming,
Thanks very much for sharing the project, actually this is the best YUV viewer I have known.
But it is a pity that YUV422/YUV444/RGB and 10bit/12bit input data is not yet supported in your depote. Do you have got any plan on supporting more formats in this YUVplayer?
BTW, I think to add English support and a license term might be helpful.
Best Regard,
Roy

Hi Roy,
I have no plane to support more function.
This project under MIT license.
Thanks.


Internal compiler error. Aborting! Tiny_YOLOV4

Edge TPU Compiler version 14.1.317412892
TensorFlow 2.1.0
I used edgetpu_compiler to comiled my int8 integer only tfltite model and got the abotting error.Could you guys take a look at this model?
tiny-yolov4.tflite

@Naveen-Dodda could you take a look at this one?


Large auto_refresh.ionterval values may result in cmdheight change

Describe the bug
When the value of auto_refresh.interval is large and we go from a large amount of resources to a small amount of resources or vice-versa, the cmdheight value may increase.
To Reproduce
Following example showcases cmdheight value going to 56, when using 10000 for auto_refresh.interval and going from large amount of resource to low amount and then back to high amount.

Expected behavior
cmdheight value remains to user set value
Environment (please complete the following information):
OS: Arch Linux Linux <IP_ADDRESS>-microsoft-standard-WSL2
Neovim version NVIM v0.11.0-dev-1328+g4889935a7a

After further testing, the issue is not present when using stable version of Neovim.
This could be an upstream issue. I'll see if I can figure out a minimal repro using a clean nvim  for upstream.

Sorry, after upgrading other plugins I cannot reproduce as well. It may have been a bad interaction with something else. I'll close it.
If it happens again, I'll make sure to get a cleaner repro before re-opening.


Revert Hadoop Shading

Hadoop shading was done so as to allow pinot to use the packaged hadoop classes and not conflict with the environment hadoop classes.
However, there are certain places in the hadoop code where reflections are used to fetch the classes. This breaks the code at runtime since the package names are not modified to shaded ones in reflection class strings in xml files.

What would be the next step to resolve the issue for which this was originally done? https://github.com/apache/pinot/pull/8798


Problem of rqt_gui

I am using ROS Kinetic.
I tried to use arni but when i launch rqt_gui it is completely empty, not able to load arni plugins.
Please help me to solve this problem.

I am not sure if you have seen the ROS support guidelines but we kindly ask to raise questions like this on answers.ros.org instead.
The rational for asking all kind of questions in a single place is:

There are many more people reading questions there so your chances on getting an answer and in a timely manner are much higher.
In the future other users will search there for similar problems and can find your question and the potential answers.
The issue tracker in this repo is used to track bugs, feature requests, etc. But your question is not such an action item.

Therefore I will close this ticket here for now. If you have asked your question on answers.ros.org please feel free to add a link to the question to this ticket so that future readers can find the related question.


"Elliptic curve crypto in IPNS"

Ian and I started chatting recently about the idea of using Tweetnacl for the crypto operations on libp2p and we agreed to move the discussion to a github thread so everyone could participate:
Email thread:

Hi David,
It was great to meet you at container camp yesterday. The crypto library I mentioned is:
http://tweetnacl.cr.yp.to/
There is a Javascript port at:
https://github.com/dchest/tweetnacl-js
I've independently verified the results of the JS version against the origninal C version and my own Java version.
Tweetnacl is the only elliptic curve crypto that I would consider using. DJB is a legend, and the NSA had no hand in authoring it. One of the best demonstrations of its strength is that Tor uses it, and thus a lot of organisations have put a lot of effort into cracking it.
You said you were using the default node crypto. I understand it uses openssl under the hood, which doesn't appear to have curve25519 yet:
https://github.com/openssl/openssl/issues/309
I'd love to hear your thoughts,
Ian

Hi Ian!
I share the same feeling, it is always good to put a face to the people we meet and work on the Internet :)
I’ve looked at tweetnacl in the past with Max Ogden because we wanted to have a standard module to upgrade any stream to a encrypted stream, but haven’t touched it since then.
The points you make are extremely valid and the first question I have in my head is that we need more than the crypto library from Node.js, because after all we need it to run in the browser, so what I started doing/drafting is a WebCrypto module that works both in Node.js and in the Browser, using the crypto module and the WebCryptoAPI. Would it be good to have a way to shim tweetnacl and expose it using the same interface? So that the users could pick the best crypto module for their case? This gives me the idea of creating an abstract-crypto, following the idea of https://github.com/diasdavid/abstract-stream-muxer and https://github.com/diasdavid/abstract-record-store.
What do you think! Also, maybe we can move this email thread to a github issue? ipfs/ipfs would be a good point, let me know if you are ok with it.
Cheers!
David

Yep, feel free to start an issue, and include some of my suggestions. Certainly exposing tweetnacl, but I was suggesting more, use it by default wherever you need a crypto choice. Apart from "post quantum" crypto (which have enormous keys) curve25519 wins on every metric against RSA and other ECC curves. Faster encryption, decryption, signing, unsigning, harder to crack, simpler to implement, smaller keys.
Ian

I'm starting to feel that more and more the ideia of having 'abstract-crypto' for crypto module is the way to goo, so that devs can pic their own implementation, as long as it respects the spec and the interface (for convenience) it will be easy to swap in and out, check perf and avoid being locked to one specific implementation.
For example, in libp2p and the IPFS Node.js implementation case, it is imperative that we have a version that both works in the browser and in Node.js, but since we also want to support more languages, being spec compliant helps developers contribute and use implementations available on their ecosystems.

A crypto interface sounds great. something along the lines of (largely taken from https://github.com/dchest/tweetnacl-js):
box(message, nonce, theirPublicKey, mySecretKey)
box.open(box, nonce, theirPublicKey, mySecretKey)
sign(message, secretKey)
sign.open(signedMessage, publicKey)
secretbox(message, nonce, key)
secretbox.open(box, nonce, key)
Maybe a separate interface for key generation:
box.keyPair()
sign.keyPair()
secretbox.key()
It might make sense to split these into three interfaces for the three different types of crypto.
Are we considering any kind of keystore interface for storing keys?

@dominictarr @substack, @jbenet and I just talked and he informed me you have already did some work towards this goal (having a crypto thing that works across platforms) and that also supports the DJB crypto primitives, where can I find more info about that? :)

That thing is TweetNaCl. We use it in Peergos for all our crypto.
Original C from DJB:
http://tweetnacl.cr.yp.to/software.html
Javascript port:
https://github.com/dchest/tweetnacl-js
Java port:
https://github.com/ianopolous/tweetnacl-java

there is also https://www.npmjs.com/package/libsodium-wrappers which wraps the emscripten version sodium. It's the fastest sign/verify, but it's also 3 megabytes of javascript, and it's almost the same api as
http://npm.im/sodium * (the main problem is that it uses UInt8Arrays instead of node Buffers) which means the same code doesn't run in both places... I started on https://www.npmjs.com/package/sodium-browserify to fix this, but since I don't actually need that for anything right now, it's not very far along.

the sodium module exposes a core api (which is just like the C api) and a "highlevel" "nice" api, I don't use the "nice" api because then the sodium docs still apply, and consistency is the most important thing.

Thanks for jumping in @dominictarr ! :)
So, just organize thoughts, we have several contenders:

ThingBrowserNode.jsGoOther langs (at least possibly)

WebCryptoAPI✔✘✘✘
Node.js Crypto✘✔✘✘
TweetNaCl✔✔✔✔
libsodium~~✔~~✔✔✔

Digging more into this and trying to get some justified conclusions

@diasdavid you should put a tick, or some character that means "slow" for node.js crypto in the browser.
After some considerable effort, we do have an effectively complete polyfil for the crypto lib implemented at crypto-browserify. (there may be some obsecure settings that arn't supported, but all the basic primitives are implemented)
Another factor worth taking into account is that webcrypto and node expose ciphers needed to implement tls, but you couldn't implement a compatible tls using nacl. (maybe you could support 1 or two ciphersuits)
nacl does not provide a selection of algorithms, it just uses the best algorithms. If you have to make your cryptoapp backwards compatible with legacy software then you probably need webcrypto/node crypto,
but if you are building a new system, use nacl. If you don't use nacl, you'll need to learn a great deal about how the various primitives work in order to use them safely. Hint: all the Three Letter Acronyms protocotols have bugs that can bite you if you don't use them correctly (RSA, SHA, AES, TLS, SSH, etc... note that NACL is 4 letters ;)
All the nacl ciphers are designed carefully so that they do not have these surprising edgecases.
The other important factor is speed, although this might not be as important as you think. If your application has javascript crypto, but it's only symmetric crypto (hashes, ciphers) that is still pretty fast and is probably okay even in javascript. If you have lots of asymmetric crypto (like a signature on every update, as in secure-scuttlebutt) that is a problem. If you are using only occasional asymmetric operations then js might be okay.

but if you are building a new system, use nacl.

I really, really dislike statements like this. nacl is one great way to abstract out all crypto (maybe even the best, i sure think so!) -- it's sane, good, fast, well written, safe, etc -- but it simply cannot be the only one for any serious systems aiming to get massive, widespread adoption. You will inevitably run into users with requirements outside your bounds.

Hint: all the Three Letter Acronyms protocotols have bugs that can bite you if you don't use them correctly (RSA, SHA, AES, TLS, SSH, etc... note that NACL is 4 letters ;)

Oh no! "ECC", "DHE", "BLS", "OTP", .... even "DJB"!!

SHA

What's the bug in SHA? just that you should use >SHA2?

The other important factor is speed

Indeed! ed25519 should be pretty fast anywhere though-- even

CurveCP

By the way, i looked into CurveCP perf this morning-- turns out all benchmarks show its perf in real networks isn't very good yet. The best benchmarks I found show it getting orders of magnitude worse perf than regular TCP.
Also, CurveCP (like TCP) will likely cause buffer bloat. {TLS, ...}/{uTP, LEDBAT} should not, though uTP will yield too aggressively to TCP flows, so it may not be a good solution for low latency applications (inc web requests).
My confidence is redoubled on QUIC-- it's really fast, sane, doesnt have head-of-line blocking (except for HTTP headers-- but i don't care about that), has ECC support, has both symmetric and asymmetric auth, can be used with all the right ciphers (sane AEADs), etc. Re buffer bloat, i'm not sure where QUIC stands on this, but the pluggable congestion control is much more promising than having to recompile kernels, or assuming "Chicago is right". In particular, i'm pretty stoked about pluggin something like Remy into QUIC.

Thank you :)
What I'm reaching to a conclusion is that there is a clear separation between the establishment of the encrypted channel and the records signing. For records signing (or at least the ones we create for IPFS, the nature of the MerkleDAG and IPRS should enable other people to use different signing mechanisms), something like NaCl takes the lead as the one that is fast, well built and available in a variety of different platforms.
For the establishment of the encrypted channel, that lives on the transport level and thanks to libp2p, we can isolate and bring some sanity to adopt multiple options as well.

@jbenet sure well I'm just saying that ssl was the right answer ten years ago, but nacl is better today, in another ten years, who knows?
The bug in SHA is length extention. you can compute hash(x+y) if you know hash(x), knowing the length of x  but not it's value, for some values of y (if it starts with a valid length padding that hash would append to x). This is why you need to use hmac. sha3 does fix this, though. Also there are lots of different ECC curves, you can't just choose any willynilly... I could go on.

So, on the Browser WebCryptoAPI thing, the progress isn't as fast and smooth as we could hope for https://lists.w3.org/Archives/Public/public-webcrypto/2016Jan/0028.html


Fix comments of the SequenceVar Rank functions

Make comments regarding RankLast and RankNotLast coherent, they had the RankFirst and RankNotFirst descriptions.
I know it's a small change, but I've seen a few of this mismatched comments and decided I should give it a go and do something about it :)
I can't recall which others had the same error as these ones, but I'll be on the lookout for them.

Thanks


Gitea v1.18 does not show new commits in dashboard and PR's

Description
It seems that gitea v1.18 stopped detecting pushed commits for me. Commits are not shown in dashboard and in pull requests.
For example, I have a PR with conflicted file. I resolve it and push new commit to repository. I see new commit in repo browser. But PR's page still shows only old commits and detects conflict which are not there anymore.
Here is screenshot of branch's repo browser:

There is new commit.
And here is PR for this branch:

There are only commits which were there at the time PR was created. New commits are missing.
Everything was working fine in v.1.17.4. After upgrade to v1.18.0 I enabled repo indexer. But tested new commits with indexer disabled again, and still new commits are nor reflected in dashboard or pr's.
I cannot reproduce it in try.gitea.io, it works as expected there.
Help me please to get it working again. Thanks in advance!
Gitea Version
1.18.0
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
No response
Git Version
No response
Operating System
Windows Server 2019
How are you running Gitea?
Running as windows service. Downloaded it from
https://dl.gitea.io/gitea/1.18.0/gitea-1.18.0-windows-4.0-amd64.exe
Database
MSSQL

Hi!
There are no errors in gitea.log or console when I push commits. But after upgrade there are lots of errors concerning CI/CD user:
2023/01/05 10:16:12 ...s/context/context.go:669:func1() [E] [63b616cc-3] Failed to verify user [<IP_ADDRESS>:55108]:0: user does not exist [uid: 11, name: lersbuild, keyid: 0]

Console shows same error:
2023/01/05 10:23:13 [63b61871-4] router: completed GET /LersUchet/sqls2pg.git/info/refs?service=git-upload-pack for [<IP_ADDRESS>:55419]:0, 401 Unauthorized in 32.9ms @ context/context.go:665(context.Auth)

This errors are not directly connected to pushing. They occur from time to time when teamcity checks for repo updates.

I tried to setup empty gitea instance in SQL Server 2019 Standard edition. The error is still there, no new commits are shown in dash or PRs. But cleaner logs gave me a hint to what is going on.
See the log's excrept:
2023/01/07 11:00:53 [63b8c445] router: completed GET /chichkov/test.git/info/refs?service=git-receive-pack for [<IP_ADDRESS>:1584]:0, 401 Unauthorized in 9.9ms @ repo/http.go:532(repo.GetInfoRefs)
2023/01/07 11:00:53 [63b8c445-2] router: completed GET /chichkov/test.git/info/refs?service=git-receive-pack for [<IP_ADDRESS>:1584]:0, 200 OK in 98.4ms @ repo/http.go:532(repo.GetInfoRefs)
2023/01/07 11:00:55 [63b8c445-4] router: completed POST /chichkov/test.git/git-receive-pack for [<IP_ADDRESS>:1584]:0, 200 OK in 2032.9ms @ repo/http.go:500(repo.ServiceReceivePack)

I guess that gitea treats me as unauthorized user to add commit details in db, but still adds new commits to repo.
I saw similar issue #22317 where @CodeDoctorDE confirmed it wasn't gitea's bug. But in my situation I can't see what I am doing wrong. I set up brand new gitea database in SQL2019, created user, repo and tried to push.

keyid:

ref: services/auth/source/db/authenticate.go
	if !user.IsPasswordSet() || !user.ValidatePassword(password) {
		return nil, user_model.ErrUserNotExist{UID: user.ID, Name: user.Name}
	}

The user exist, but the password is not set or the password is wrong.

Well, the password is definitely set. Here are my steps:

Create new gitea instance with empty db on SQL2019 (Std).
Call gitea admin user create --username chichkov --password 111111 --email<EMAIL_ADDRESS>Successfully log in.
Create empty repo.
Checkout new repo. Git asked for login and pass. I provided ones from p2.
Made a commit and pushed. Repeated it couple of times.

Dashboard shows only created repo, but no new commits. And console log shows unauthenticated every time.
Then I tried same steps on 1.17.4 and it worked as expected, no authentication errors are logged.
I can't see if there is any real problem with authenticating user. Commit is eventually pushed to repository, but no information is updated in database. Looks like checking for authentication fails first time and succeeds for the second time, or vice versa.

Dashboard shows only created repo, but no new commits.

This means that push hooks are not being run (https://docs.gitea.io/en-us/faq/#push-hook--webhook-arent-running may be helpful). It may work on the old version and not the new in the case that the binary is not named the same.

@techknowlogick , thank's for your reply! Tried to run "Resynchronize pre-receive, update and post-receive hooks of all repositories", but still no success. Gitea v18 does not show commits in dashboard, while gitea v17 does. Binary is always the same. I looked through hooks, and it seems that all paths are correct.
Gitea is running on windows, and gitea's account has execute permission on repo's directory.
Will rollback to v1.17.4 again :(

@lunny, @techknowlogick, thanks for helping me!
The hooks are actually called by git. But after running through process explorer I noticed that gitea execute requests to mdaemon services.
Our services were misconfigured. Gitea and mdaemon web was running on the same 3000 port, but bound to different interfaces. This misconfiguration was somehow working in 1.17 and broke down after upgrade to 1.18.
Changed gitea to free port and everything works as expected now.
Thank you very much!


Add 'replacedBy' field in certificate response.

In addition to the 'replaces' field, we should also have a field of 'replacedBy' so we can easily determine if a certificate has been replaced and should no longer be used.

yes, having a field that links/points to the most recent version of the cert would be very helpful. Say if cert 2 is replaced by cert 4 with is then renewed/reissued by cert 55. The replaced by  field in cert 2 should either point to cert 55 or show that it was replaced by cert 4 then 55. ie. Replaced By: 4 -> 55
This would help to show the history of the cert along with what the current version is. I see that in the API output cert 55 contains the certs it replaces which is handy.

Field has been named replaced.


Update THEMES.md

DOCS: Added Neko to the supported themes

Thanks! Merged right away!

Thank you Tommaso!


✅ Add test for dashboard/objects/data.go NewDataLayer

Fixes Issue
Contributes towards #148
Changes proposed

Add unit testing for the dashboard/objects/data.go NewDataLayer
Add some argument checks in the NewDataLayer function to complement unit tests

Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[x] All new and existing tests passed.
[x] The title of my pull request is a short description of the requested changes.

Note to reviewers
Not a go unit testing expert, but went with the testing table approach.
Thanks for the review!

Thank you!


Bad error message when trying to define apply in an anonymous class extending js.Function

While trying to break our detection of JS functions, I found this:
@js.native
@JSGlobal("bad")
abstract class BadFunction extends js.Function1[Int, String]

object Test {
  new BadFunction {
    def apply(x: Int): String = "f"
  }
}

This fails to compile with the following error:
Concrete members of JS native types may only call js.native.
      def apply(x: Int): String = "f"
                                  ^

Note that this does not happen for other native traits:
@js.native
trait MyTrait[T] extends js.Object {
  def apply(): T
}

@js.native
@JSGlobal("bad")
abstract class BadMyTrait extends MyTrait[Int]

object Test {
  new BadMyTrait {
    def apply(): Int = 1
  }
}

This fails as expected with:
A non-native JS class cannot declare a method named `apply` without `@JSName`
      def apply(): Int = 1
          ^

We should not even allow extending any subclass of any js.FunctionN.

We should not even allow extending any subclass of any js.FunctionN.

As long as all that stuff stays native, it's probably OK? Or would the expectation for a facade be to define it's own applys? (FWIW, js.Object's compation does that without extending the relevant js.FunctionNs or even js.Function).

I mean, it's not really possible for a class, native or not, to truly extend a js.FunctionN. One cannot create any kind of class (with class or function) whose instances would be callable. Native objects can meaningfully provide an apply because they're functions themselves (they are not of a class that extend Function); native traits can define an apply, because in practice that means it's a function on which we've patched the other members of the interface. But a class can never provide an apply.

Hum ... it appears there is a way to define a class that could provide a call syntax:
>node
Welcome to Node.js v14.15.0.
Type ".help" for more information.
> class Foo extends Function { constructor(...args) { super(...args); } }
undefined
> var f = new Foo("x", "return x + 1;");
undefined
> f(5)
6
> typeof f
'function'

Maybe, for now, we should simply disallow non-native subclasses of js.FunctionN?

Yes, that sounds reasonable.


Schedule Updates

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[ ] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[ ] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is including your motivation for the request,
i.e. "For the purpose of [...] I am missing a solution that will [...]."
Describe the solution you like
Hi, thanks for a great product and the awesome support!
One thing that we see in some other firewalls that I think is missing here is the ability to schedule updates for a specific time.
Many of our OPNsense systems are in use during production hours but are completely available during weekends for example.
This would really help us to keep systems patched and current.
A clear and concise description of what you want to happen.
(e.g. I would like an input field in the /ui/firewall/alias which would add .... to ....)
Describe alternatives you considered
A clear and concise description of any alternative solutions or features you considered.
Additional context
Add any other context or screenshots about the feature request here or links to relevant forum thread or similar

Hi @themonkeymixer,
The scope of this request is a little unclear. We already have cron-based update command that you can set from the GUI.
if you talk about one-shot schedule that feature was discussed a while back and although it’s possible it’s some work to get it polished so we might only do it for the business edition when requested by customers.
But using the „at“ utility it‘s possible to do this on the command line already. It’s only a single command and if you are interested I can try to find the forum post that covers this.
Cheers,
Franco

Maybe you are searching for this:
System -> Settings -> Cron:
Create Cronjob with Command "Automatic firmware update".


NEW: Adding a section for footer-content like in sphinx-basic-ng

Added footer-content.html, following the sphinx-basic-ng design.
For this and to mimic sphinx-basic-ng design (which we are ultimately planning to inherit) https://github.com/pydata/pydata-sphinx-theme/pull/840, have reordered and created a few tags for body content. Copied over the container CSS for these elements as well from sphinx-basic-ng, including the page width to be 88rem (which looked nicer to me, but can revert it.).

The specific tags created/reordered here are:

bd-container__inner now has a new main tag and primary sidebar as its only children. secondary sidebar has been moved from this position.
new main tag is introduced to accommodate footer-content section. The visual position of which is shown in the pic above.
main tag has bd-content and the new footer-section as its children tags.
bd-content now has bd-article-container and the secondary sidebar as its children. Note that the secondary sidebar was earlier on the same level as primary sidebar, but has moved here to adhere to the skeleton of sphinx-basic-ng.
bd-article-container  has an article header, article content, and article footer in it.

Inspecting the HTML, in the preview of this PR will help understand the hierarchy better.
The need for this section was highlighted in a PR in sphinx-book-theme: https://github.com/executablebooks/sphinx-book-theme/pull/597

@AakashGfude this looks good in general to me, though I'm a bit surprised at how many changed lines of code there are. Are those just rearrangements? Could you please:

In the top description, could you be more specific than just "reordered and created a few body tags"? What did you rearrange specifically? In particular anything that might be a breaking change for downstream CSS
Does this change the end output at all? I couldn't see any difference in our site.
Doesn't the theme already have a footer that spans the entire bottom of the page? How is this different from that? e.g. from our main docs:

Thanks, @choldgraf, have updated the top description to explain the HTML container structure better.
It does not change the output at all of this theme, because we don't use footer-content at all here (Which is introduced in this PR). However, I have made the page-width to be 88rem (same as sphinx-basic-ng), while I was adjusting the styles to the new HTML layout.
The screenshot which you have posted is of footer.html which is in bright red in the snapshot of sections in the top description. And it spans the whole page.
The one introduced here is footer-content, which spans the article plus the sidebar-secondary width. The need for this section arises in sphinx-book-theme . Notice the footer in the image below:

It will not break any downstream CSS, as the hierarchy has been matched in the SCSS files, but I will keep looking tomorrow for any unintended changes.

A quick thought - could you update our layout figure at the link below to include this?

https://pydata-sphinx-theme.readthedocs.io/en/latest/user_guide/layout.html

Hi @choldgraf, have added the section for footer content.

@choldgraf let me know how it looks now.

@choldgraf I don't have the permission to merge here. Do merge if you think it looks okay.

Thanks for the enhancement @AakashGfude !


Lichess implements natively study flairs

https://github.com/lichess-org/lila/issues/15282

The native implementation is very simple, at least at this time, so I fixed things in 2.3.75 so that the LT implementation replaces it. Keeping this open for new developments.

Finished.


Port 3883 is hard-coded during interception

Just have a look at the following snippet: https://github.com/sofn-xyz/mailing/blob/b0f4c800b19a1f757ae962d1f840d4d645fca9bb/packages/core/src/index.ts#L117
Having the server running on a different port results in interceptions not working properly.

Another problem would be, when relying on the configuration file, that the CLI option won't be supported. So, using mailing --port 3000 for example, wouldn't tell the script to ping port 3000 for interception.

Thanks @iDuuck for opening an issue about this -- we've known about this problem and you're right, it's tricky to support a custom port for the reasons you mention.  One option could be to allow you to change the port in the configuration file, but not from a CLI option.  Would that work for you?
If you have a moment to tell us a bit more about how you're using mailing, we'd love to hear more about it in this thread: https://github.com/sofn-xyz/mailing/discussions/121


Expose winston instance?

Preface: This is my first time using winston/express-winston but Google did not seem to help with my issue.
I would like to use winston in my express project for both the HTTP request logging via the express-winston middleware but also use it as a general logger in other modules.
I believe to do that I would need to have the instance of the winston logger exposed via express-winston?
Unless I can have multiple instances of winston writing to the same log files and not cause issues.

express-winston actually allows you to provide a winston instance to it, using the winstonInstance property. It's documented in the Readme, but it's easily missed under the wall of options. :)
So here's a quick example (not actually working code):
var winston = require('winston');
var expressWinston = require('express-winston');

var router = require('./my-express-router');

var mainLogger = new winston.Logger({
  transports: [new winston.transports.Console()]
});

app.use(expressWinston.logger({
  winstonInstance: mainLogger,
}));

app.use(router);

app.use(expressWinston.errorLogger({
  winstonInstance: mainLogger,
}));

Wow I feel silly now, I somehow missed those docs.
As you said, it is quite a wall of options though.
Thanks for the help!


Exception in 'checkedStateChange' listener on Command "Show Errors in Status Bar"

Description
Console shows error:
EventDispatcher.js:231 Exception in 'checkedStateChange' listener on Command {_name: "Show Errors in Status Bar", _id: "debug.showErrorsInStatusBar", _checked: false, _enabled: true, _eventHandlers: Object} Error: Cannot read property 'object' of undefined
TypeError: Cannot read property 'object' of undefined
    at ObjectsRegistry.get (/opt/Brackets-Electron/resources/electron.asar/browser/objects-registry.js:44:28)
    at EventEmitter.<anonymous> (/opt/Brackets-Electron/resources/electron.asar/browser/rpc-server.js:305:31)
    at emitMany (events.js:127:13)
    at EventEmitter.emit (events.js:201:7)
    at WebContents.<anonymous> (/opt/Brackets-Electron/resources/electron.asar/browser/api/web-contents.js:218:13)
    at emitTwo (events.js:106:13)
    at WebContents.emit (events.js:191:7) Error: Cannot read property 'object' of undefined
TypeError: Cannot read property 'object' of undefined
    at ObjectsRegistry.get (/opt/Brackets-Electron/resources/electron.asar/browser/objects-registry.js:44:28)
    at EventEmitter.<anonymous> (/opt/Brackets-Electron/resources/electron.asar/browser/rpc-server.js:305:31)
    at emitMany (events.js:127:13)
    at EventEmitter.emit (events.js:201:7)
    at WebContents.<anonymous> (/opt/Brackets-Electron/resources/electron.asar/browser/api/web-contents.js:218:13)
    at emitTwo (events.js:106:13)
    at WebContents.emit (events.js:191:7)
    at metaToValue (/opt/Brackets-Electron/resources/electron.asar/renderer/api/remote.js:209:13)
    at Object.remoteMemberFunction (/opt/Brackets-Electron/resources/electron.asar/renderer/api/remote.js:110:18)
    at MenuItem._checkedChanged (file:///opt/Brackets-Electron/resources/app/www/command/Menus.js:766:26)
    at Command.trigger (file:///opt/Brackets-Electron/resources/app/www/utils/EventDispatcher.js:229:40)
    at Command.setChecked (file:///opt/Brackets-Electron/resources/app/www/command/CommandManager.js:135:18)
    at Command.toggleErrorNotification [as _commandFn] (file:///opt/Brackets-Electron/resources/app/www/extensions/default/DebugCommands/main.js:264:61)
    at Command.execute (file:///opt/Brackets-Electron/resources/app/www/command/CommandManager.js:93:38)
    at Object.execute (file:///opt/Brackets-Electron/resources/app/www/command/CommandManager.js:287:36)
    at EventEmitter.<anonymous> (file:///opt/Brackets-Electron/resources/app/www/utils/ShellAPI.js:14:40)
    at emitTwo (events.js:106:13)trigger @ EventDispatcher.js:231Command.setChecked @ CommandManager.js:135toggleErrorNotification @ main.js:264Command.execute @ CommandManager.js:93execute @ CommandManager.js:287(anonymous function) @ ShellAPI.ts:30emitTwo @ events.js:106emit @ events.js:191
EventDispatcher.js:232 Assertion failed:trigger @ EventDispatcher.js:232Command.setChecked @ CommandManager.js:135toggleErrorNotification @ main.js:264Command.execute @ CommandManager.js:93execute @ CommandManager.js:287(anonymous function) @ ShellAPI.ts:30emitTwo @ events.js:106emit @ events.js:191

Steps to Reproduce

Debug -> Show Errors in Status Bar

Versions
Ubuntu 14.04
Breckets-Electron v1.8.2

https://github.com/zaggino/brackets-electron/issues/71

Here it hints https://github.com/electron/electron/issues/4733 that it might be something with referencing an object in the main process which has already been removed. Will have a closer look at my code even though I can't replicate this.


Add parser

alright @mat-hek and @mickel8  - a big PR 😅

Hi @ledhed2222, how is the progress? Is there something we can help with? Are you going to improve that further?

sorry guys - kinda forgot about this. i think i have it working but need to check my tests. will update

@ledhed2222 ok, looking forward to that

Hi @ledhed2222, how is this going? Do you need any help?

@mat-hek sorry guys, I'm too busy at work right now to continue on this at the moment. I would love your help :)
IIRC there's just one comment outstanding

@ledhed2222 ok, this is indeed one comment but will require some work to solve. We'll reach out again once someone from the team will have time to take this over.

alright guys I think i have this resolved

Thanks for bringing it to the end ;)


IDEA: I would like to make a todo list app as a default example, using react apollo

The idea is to implement a simple todo app using react, redux and react apollo, in order to fetch data from a graphql server. This will be used by new incomers as starter example

What is react appolo?

@amilajack http://dev.apollodata.com/react/

We're only going to be removing tooling from now. The more tooling we add, the more difficult it is for beginners to start using the project.