Suspect bug in NSIDC-0116-nh and NSIDC-0116-sh CMORizers

Describe the bug
I was trying to CMORize the NSIDC-0116-nh and NSIDC-0116-sh datasets using the standard esmvatool CMORization scripts. This fails with an error "pyproj.exceptions.CRSError":
For NSIDC-0116-nh:
pyproj.exceptions.CRSError: Invalid projection: PROJCS["NSIDC EASE-Grid North",GEOGCS["Unspecified datum based upon the International 1924 Authalic Sphere",DATUM["Not_specified_based_on_International_1924_Authalic_Sphere",SPHEROID["International 1924 Authalic Sphere",6371228,0,AUTHORITY["EPSG","7057"]],AUTHORITY["EPSG","6053"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4053"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",90],PARAMETER["longitude_of_center",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],AUTHORITY["EPSG","3408"],AXIS["X",UNKNOWN],AXIS["Y",UNKNOWN]]: (Internal Proj Error: proj_create: unhandled axis direction: UNKNOWN)
For NSIDC-0116-sh:
pyproj.exceptions.CRSError: Invalid WKT string:  PROJCS["NSIDC EASE-Grid South",GEOGCS["Unspecified datum based upon the International 1924 Authalic Sphere",DATUM["Not_specified_based_on_International_1924_Authalic_Sphere",SPHEROID["International 1924 Authalic Sphere",6371228,0,AUTHORITY["EPSG","7057"]],AUTHORITY["EPSG","6053"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4053"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",-90],PARAMETER["longitude_of_center",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],AUTHORITY["EPSG","3409"],AXIS["X",UNKNOWN],AXIS["Y",UNKNOWN]]
From the error message, it seems that pyproj is not able to handle the CRS specified for the datasets. Looking into the EPSG database I find that the projections are marked as "superseded"
EPSG-3408: https://epsg.org/crs_3408/NSIDC-EASE-Grid-North.html?sessionkey=1720ksyky2
EPSG-3409: https://epsg.org/crs_3409/NSIDC-EASE-Grid-South.html?sessionkey=1720ksyky2
I suppose this could explain why pyproj gives an error, but I'm not sure if it's the right explanation.

is this error reproducible by others?
is there a work-around?

ESMValTool version:

ESMValCore: 2.8.0
ESMValTool: 2.8.0

Fails on:

esmvaltool data format NSIDC-0116-nh
esmvaltool data format NSIDC-0116-sh

Please attach
main_log_debug.txt

I tested with an older esmvaltool2.7.0 installation, and then the CMORizer worked. So it seems that something went wrong with the latest installation. Assuming this something is to do with proj/pyproj, the relevant parts may be

esmvaltool2.7.0: proj=9.0.1=h93bde94_1 ; pyproj=3.4.0=py310hf94497c_0
esmvaltool2.8.0: proj=9.1.1=h8ffa02c_2 ; pyproj=3.5.0=py310h15e2413_0
esmvaltool2.7.0-env.txt
esmvaltool2.8.0-env.txt

thanks a lot @TomasTorsvik for raising this! Unfortunately my knowledge of projections can be projected to a single point on a sheet of paper, but I went through proj and pyproj changelogs from the version that works to the one that doesn't and couldn't see anything labelled as deprecated/removed/breaking. The error comes from a compiled (pyx) module of pyproj - if it was indeed a Python issue that should have come from a Python script ie an exception raised by a chunk of Python code e.g. projection missing attributes/values etc, invalid type in proj definition etc. There are two aspects to this:

minor: iris should really use a try/except in their proj generator so that it can catch stuff and print nicer and more explanatory errors
major: an issue in Pyproj compiled: the line in the Cythoned code points to an invalid self._coordinate_system which I believe is set by iris when passing the projection data to pyproj, it could be that's bad; before doing anything - can we confirm proj and pyproj are installed from conda-forge and not from PyPI? If so, could I be a bother and ask you to run with the same proj/pyproj versions that you got the fail with, but downgrade to iris=3.4.0 or 3.4.1 please?

If @ESMValGroup/technical-lead-development-team have seen/found/have clues about this please chip in :beer:

Hi @valeriupredoi , @ESMValGroup/technical-lead-development-team ,
the esmvaltool 2.8.0 installation that I used was instaled by the system admin, so I don't know how it was installed. I also tried to downgrade iris=3.4.1, but this is replaced by iris=3.6.0 when I do pip install --editable '.[develop]'.
However, I'm not sure if this is so relevant anymore. I did some further testing with the latest version of esmvaltool with ESMValCore 2.8.1 (esmvaltool2.8.1 below), and with building from source from the main branch (esmvaltool-latest below). CMORization fails in both versions for NSIDC-0116-sh, and for NSIDC-0116-nh using noresm2.8.1, but works for NSIDC-0116-nh when I use esmvaltool-latest. :confused:
The environments are built with mamba following the instructions in the documentation.
# esmvaltool-2.8.1
$ esmvaltool version
ESMValCore: 2.8.1
ESMValTool: 2.8.0

env_esmvaltool-2.8.1.txt
NSIDC-0116-nh: http://ns2980k.web.sigma2.no/tomast/esmvaltool2.8.0/data_formatting_20230607_202555/run/main_log_debug.txt
# esmvaltool-latest
$ esmvaltool version
ESMValCore: 2.8.1
ESMValTool: 2.9.0.dev23+g54ace22f0

env_esmvaltool-latest.txt
NSIDC-0116-nh: http://ns2980k.web.sigma2.no/tomast/esmvaltool2.8.0/data_formatting_20230607_203005/run/main_log_debug.txt
NSIDC-0116-sh: http://ns2980k.web.sigma2.no/tomast/esmvaltool2.8.0/data_formatting_20230607_203533/run/main_log_debug.txt

cheers @TomasTorsvik - this debug is a lot better than the one before - sorry, not your fault or anything, it's just that this time round things don't come from a Cython compiled module and the call to pyproj is a lot more explicit, I see the issue with coordinate system, so I suspect this to be an iris=3.6.0 issue:
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/iris/fileformats/_nc_load_rules/actions.py", line 172, in action_provides_grid_mapping
    coordinate_system = builder(engine, cf_var)
                        ^^^^^^^^^^^^^^^^^^^^^^^
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/iris/fileformats/_nc_load_rules/helpers.py", line 719, in build_lambert_azimuthal_equal_area_coordinate_system
    ellipsoid = _get_ellipsoid(cf_grid_var)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/iris/fileformats/_nc_load_rules/helpers.py", line 467, in _get_ellipsoid
    proj_crs = pyproj.crs.CRS.from_wkt(crs_wkt)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/pyproj/crs/crs.py", line 431, in from_wkt
    raise CRSError(f"Invalid WKT string: {in_wkt_string}")

Now that you have a fully controllable environment built by yourself, would it be possible to simply mamba install -c conda-forge iris=3.4.1 in it and see if the cmorizer works with that older version? Re-installing iris with a different, older version should not change many dependencies. Cheers muchly :beer:

BTW it'd be rather useful if you got in touch with your sysadmins, when you got a bit of time, the standard paths to packages I see in your debug messages suggests to me that they do some weird stuff with the installation of different dependencies, one should almost never get an error from a .pyx script if that is compiled correctly too, maybe if you put me in touch with one of them we can talk how they do the installs :+1:

Hi @valeriupredoi , we had some technical issues with the remote server so I wasn't able to run tests.
I tried with mamba install -c conda-forge iris=3.4.1, but I get a conflict with something in the installation that requires iris>=3.6.0.
$ esmvaltool data format NSIDC-0116-sh
ERROR:esmvalcore._main:Program terminated abnormally, see stack trace below for more information:
Traceback (most recent call last):
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/esmvalcore/_main.py", line 521, in run
    fire.Fire(ESMValTool())
              ^^^^^^^^^^^^
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/esmvalcore/_main.py", line 310, in __init__
    self.__setattr__(entry_point.name, entry_point.load()())
                                       ^^^^^^^^^^^^^^^^^^
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/pkg_resources/__init__.py", line 2516, in load
    self.require(*args, **kwargs)
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/pkg_resources/__init__.py", line 2539, in require
    items = working_set.resolve(reqs, env, installer, extras=self.extras)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/pkg_resources/__init__.py", line 827, in resolve
    dist = self._resolve_dist(
           ^^^^^^^^^^^^^^^^^^^
  File "/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages/pkg_resources/__init__.py", line 873, in _resolve_dist
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.VersionConflict: (scitools-iris 3.4.1 (/projects/NS2980K/home/tomast/conda/esmvaltool-latest/lib/python3.11/site-packages), Requirement.parse('scitools-iris>=3.6.0'))

I can set iris=3.4.1 in the environment.yml file, but then I get back to the error that I had earlier.

yes the new esmvalcore=2.8.1 needs iris>3.6.0, you can install esmvalcore=2.8.0 that doesn't require such a new iris. But at any rate, I think I asked you to do way too many things, and would feel bad if I asked you to do more - any way I can grab hold of one of those raw OBS files myself so I can try it myself? :beer:

OK I replicated the issue and it's not iris at fault :grin: - hear that @schlunma - you didn't break Iris :rofl:

I'm not even sure it is an Iris pb. Could be pyproj having issues with what is a specific polar projection. I was thinking of removing the axis information from the wkt.
I haven't had the time though...

indeed so! Could well be, but I've not seen any issue at pyproj GH from others complaining about it - at the mo it's murky, I'd like to hear what iris folk have to say about it :beer:

just to keep peeps on track on this one, @trexfeathers has escalated this upstream with the PROJ folks https://github.com/pyproj4/pyproj/issues/1328

Hi All,
I tried today with the latest docker image and I still get the error. I thought this would be fixed with the new version of pyproj (3.6.1) but it isn't....
  File "/opt/conda/envs/esmvaltool/lib/python3.11/site-packages/pyproj/crs/crs.py", line 431, in from_wkt
    raise CRSError(f"Invalid WKT string: {in_wkt_string}")
pyproj.exceptions.CRSError: Invalid WKT string:  PROJCS["NSIDC EASE-Grid South",GEOGCS["Unspecified datum based upon the International 1924 Authalic Sphere",DATUM["Not_specified_based_on_International_1924_Authalic_Sphere",SPHEROID["International 1924 Authalic Sphere",6371228,0,AUTHORITY["EPSG","7057"]],AUTHORITY["EPSG","6053"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4053"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",-90],PARAMETER["longitude_of_center",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],AUTHORITY["EPSG","3409"],AXIS["X",UNKNOWN],AXIS["Y",UNKNOWN]]
2023-11-13 00:07:26,443 UTC [53] INFO
If you have a question or need help, please start a new discussion on https://github.com/ESMValGroup/ESMValTool/discussions
If you suspect this is a bug, please open an issue on https://github.com/ESMValGroup/ESMValTool/issues
To make it easier to find out what the problem is, please consider attaching the files run/recipe_*.yml and run/main_log_debug.txt from the output directory.

Looks like we need to link to PROJ (9.3.0). Any issue with updating the conda environment?


Upgrade clockface

I tried to upgrade @influxdata/clockface from 0.0.13 to 0.0.14 to make use of the new checkbox input, but experienced some visual oddities:

The scrollbars in the query builder are in the wrong place and the checkbox appears to be using some sort of absolute positioning. I'm not sure what else throughout the UI needs attention.

Some of the funkiness comes from conflicts between local styles and clockface styles

@alexpaxton what do you think about prefixing all the clockface styles (either the influxdb or clockface repo ones) with a special namespace so that we don't have to upgrade all at once?

@chnn dude that’s genius!!

Closed via https://github.com/influxdata/influxdb/pull/14458


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Use Build::opt_level_str instead of using homebrew solution

Signed-off-by: Jiahao XU<EMAIL_ADDRESS>

@gyscos Can we have a new release please?

Released:
zstd-sys 2.0.6
zstd-safe 6.0.3
zstd 0.12.3


Investigate Disconnect Issues

A client disconnecting causes issues in the game. Sometimes one of the games crashes on disconnect. We need to investigate and identify the cause of this issue so it can be fixed. Also, this is an issue that will be a discussion point for what should happen to a client's party when a disconnect happens.

Ideas for disconnected parties.

Is saved and removed from the map until rejoin.
Goes to the nearest town and waits for rejoin.
AI takes control of the party.


user.manager property

Is there any plan to introduce user.manager attribute to use in rules? I can see that Direct Report can be used in rule but then it cannot be combined with any other membership rule for e.g. if I want to create a group of users who are EMS licensed and reports to a particular manager, then how can I achieve this? Please comment.

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

ID: 5f7a4070-1be8-5f1f-0092-68fb6b9e2305
Version Independent ID: cd34312f-b507-affe-555e-1e0c63e7d494
Content: Rules for dynamically populated groups membership - Azure AD
Content Source: articles/active-directory/users-groups-roles/groups-dynamic-membership.md
Service: active-directory
Sub-service: users-groups-roles
GitHub Login: @curtand
Microsoft Alias: curtand

@prashant1380 Thanks for the feedback. You can upvote this idea for user.manager request.
At present, we cannot utilize Direct Report with any other attribute in dynamic membership rules.

@prashant1380 We will close this now, feel free to reach out to us as required.


feat(MockInstance): ignores undefined properties #4367

closes #4367

v14.5.0 has been released and contains a fix for the issue. Feel free to reopen the issue or to submit a new one if you meet any problems.


Website is failed to load icons

I'm sorry to trouble you that the zafira website is failed to load icons when I login. I just followed the tutorial, git clone the repo, then used ./start.sh to setup, then I opened the login page in chrome. And background is failed to load and after navigating to the dashboard, all icons were failed to load.I'm looking forward to your enthusiastic proposal, thks.

Hello, @tbdyzm
Could you please provide a little bit more context, what OS do you use, what docker image version of zafira-ui? Are you using any specific firewall/antivirus rules?
You have to check availability of the following resources on your host:

https://ajax.googleapis.com
https://fonts.gstatic.com

My os system is centOS(3.10.0-957.21.3.el7.x86_64), and browser is Chrome/Firefox, and I couldn't open the two pages you mentioned.

My os system is centOS(3.10.0-957.21.3.el7.x86_64), and browser is Chrome/Firefox, and I couldn't open the two pages you mentioned.
------------------ 原始邮件 ------------------
发件人: "Alex<EMAIL_ADDRESS>发送时间: 2019年7月12日(星期五) 下午3:36
收件人<EMAIL_ADDRESS>抄送: "琉璃碎瓦"1320007028<EMAIL_ADDRESS>主题: Re: [qaprosoft/zafira] Website is failed to load icons (#1663)
Hello, @tbdyzm
Could you please provide a little bit more context, what OS do you use, what docker image version of zafira-ui? Are you using any specific firewall/antivirus rules?
You have to check availability of the following resources on your host:
https://ajax.googleapis.com
https://fonts.gstatic.com
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Not sure about your current location but here is some information for China: https://meta.stackoverflow.com/questions/258288/use-of-ajax-googleapis-com-not-china-friendly

@tbdyzm Could you share the screen with browser's console?

@tbdyzm Could you share the screen with browser's console?

Here is the chrome console info:

Not sure about your current location but here is some information for China: https://meta.stackoverflow.com/questions/258288/use-of-ajax-googleapis-com-not-china-friendly

I used rm -rf to delete zafira, and then I used qps-infra to start zafira, icons were unloaded again, so I used rm -rf to delete qps-infar.Then I git clone zafira to restart, I got the info "Invalid credentials".Does the system can only setup zafira once?The second time when you setup, you'll get the info "Invalid credentials".

@tbdyzm Is your issue with icons solved? Can we close this? (For other troubles please open new issue, thx)

@tbdyzm Is your issue with icons solved? Can we close this? (For other troubles please open new issue, thx)

Sorry, the issue with icons was not resolved, I'm trying to fixed with it using some proposals.

@tbdyzm Oh, I see. Could you share this tab? :)

@tbdyzm Oh, I see. Could you share this tab? :)

I'm appreciate for your enthusiasm help! Here is the console info:

@tbdyzm Oh, I see. Could you share this tab? :)

I've fixed it with a chrome extension，Github is https://chrome.google.com/webstore/detail/replace-google-cdn/kpampjmfiopfpkkepbllemkibefkiice

Thks for your enthusiastic attention!

ok, then I can close the ticket?

Yeah, thk you very much!
------------------ 原始邮件 ------------------
发件人: "Alex<EMAIL_ADDRESS>发送时间: 2019年7月12日(星期五) 晚上10:28
收件人<EMAIL_ADDRESS>抄送: "琉璃碎瓦"1320007028<EMAIL_ADDRESS>主题: Re: [qaprosoft/zafira] Website is failed to load icons (#1663)
ok, then I can close the ticket?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.


show Dataset label on Chart #303 - reopen please

I agree with VipinAgarwal, Issue #303 should be reopened. I have the same issue here.
The chart is shown on a large display in a production hall, I need it to show the dataset label all the time, below the bar labels, because there is no possibility to mouseover the bars.

@Pansa237 are you looking for something like the label below?

Yes, exactly!
I got it to work by now, like this:
HTML

JS
var barChartData = {
labels : [],
datasets : [
{
label: "Umlaufreserve",
fillColor : "rgba(220,220,220,0.5)",
strokeColor : "rgba(220,220,220,0.8)",
highlightFill: "rgba(220,220,220,0.75)",
highlightStroke: "rgba(220,220,220,1)",
data : []
},
{
label: "Mindestbestand",
fillColor : "rgba(151,187,205,0.5)",
strokeColor : "rgba(151,187,205,0.8)",
highlightFill : "rgba(151,187,205,0.75)",
highlightStroke : "rgba(151,187,205,1)",
data : []
}
],
multiTooltipTemplate: "<%= datasetLabel %> - <%= value %>",
legendTemplate : "<ul class="<%=name.toLowerCase()%>-legend"><% for (var i=0; i<datasets.length; i++){%><span style="background-color:<%=datasets[i].strokeColor%>"><%if(datasets[i].label){%><%=datasets[i].label%><%}%><%}%>"
}
window.onload = function(){
var ctx = document.getElementById("canvas1").getContext("2d");
window.myBar = new Chart(ctx).Bar(barChartData, {
responsive : true,
scaleFontFamily: "'Helvetica Neue', 'Helvetica', 'Arial', 'sans-serif'",
// Number - Scale label font size in pixels
scaleFontSize: 14,
// String - Scale label font weight style
scaleFontStyle: "bold"
});
document.getElementById('js-legend').innerHTML = myBar.generateLegend();
}
Maybe the documentation should be clrified a little here.

@Pansa237 this will be much easier as soon as v2 releases. The legend is drawn on the canvas and shows by default.


gitStream miscategorizes the changes in PR

Description of the problem
Lately (about the last month) I noticed a wried behavior with gitStream in our Repo where it is auto-approving PRs.
For example (can't provide link to the PR since it's a private repo):
When I opened a PR for a python file client.py (+16 lines added -1 removed = total of 17 lines) the gitStream bot auto-approved the CR.
The bot label it as  a safe-changes, so i tried to validate the conditions for save_changes automation, but couldn't find any reason to categorize the PR as safe-changes
the condition is:
 {{ is.safe }}
where:
docs: {{ files | allDocs }}
tests: {{ files | allTests }}
asset: {{ files | match(regex=r/\.(png|svg|gif|css)$/) | every }}
formatting: {{ source.diff.files | isFormattingChange }}
safe: {{ is.docs or is.tests or is.asset or is.formatting }}

Steps to reproduce the behavior:

The .cm automation file:

# -*- mode: yaml -*-
manifest:
  version: 1.0

automations:
  safe_changes:
    if:
      - {{ is.safe }}
    run:
      - action: approve@v1

      - action: add-label@v1
        args:
          label: 'safe-changes'

  small_changes:
    if:
      - {{ is.small_changes }}
    run:
      - action: approve@v1

      - action: add-label@v1
        args:
          label: 'small-changes'

is:
  docs: {{ files | allDocs }}
  tests: {{ files | allTests }}
  asset: {{ files | match(regex=r/\.(png|svg|gif|css)$/) | every }}
  formatting: {{ source.diff.files | isFormattingChange }}
  safe: {{ is.docs or is.tests or is.asset or is.formatting }}

  additions: {{ branch.diff.files_metadata | map(attr='additions') | sum }}
  deletions: {{ branch.diff.files_metadata | map(attr='deletions') | sum }}
  small_changes: {{ (is.additions + is.deletions) <= 10 }}

The PR URL (as it contains the repo and PR identifiers)
Can't provide as its a private repo, but can be reproduced with any dummy repo with python file

Expected behavior
Shouldn't give any label as it's not match the automation conditions
Screenshots

Hi @avivtabak
We have released a fix to our Python formatter that caused this issue.
Can you please verify this is fixed on your end, too?
Thanks!


csi-driver: use node name from the podSpec to create hpenodeinfo objects

Problem:

Currently CSI node driver is creating hpenodeinfos object with name of the
underlying host which might not follow k8s object naming conventions. This will
fail if hostname has uppercase letters. But kubelet seems to convert them to lowercase to join
them to cluster.

Implementation:

Use NODE_NAME env populated with pod fields to consider as object name for hpenodeinfos type.
For upgrades, even if underlying hostname differs with spec.nodeName, we will continue to use
already created one. For new ones, we use spec.nodeName.

Testing: tested with deploying node plugin with changes.
Review: gcostea, rkumar
Signed-off-by: Shiva Krishna, Merla<EMAIL_ADDRESS>

Looks good. I had assigned the bug to Vidhut but looks like you got to it too fast :)

Oh, i didn't realize it got assigned to Vidhut..:)


How to install Lite Version for SPM.

Can I only install the Photo Browser feature?

This may not be supported as the photo browser is a selector based enhancement


Email templates engine

Features

Added Templates Controller and ability to send emails stored in the database

[Delivers #120765999]

@wnowicki Ready for your review


Document availability of socks5 proxy in various files

Problem description
Docker added support for socks since the version 1.11.0 (Release notes) onward. But since the release, no proper documentation has been added mentioning such support.

an issue at the Moby project (24708) suggests an edit must be applied to config/daemon/systemd.md
the documentation on using Docker client through a proxy (network/proxy.md) also makes no mention of the socks support either.

Problem location

I saw a problem on the following URL: https://docs.docker.com/config/daemon/systemd/#httphttps-proxy

I couldn't find the information I wanted. I expected to find it near the following URL: https://docs.docker.com/network/proxy/

Project version(s) affected
Docker Engine 1.11.0+ (docker/docker-ce 20366)
Suggestions for a fix
a pull request is needed to add mentions (and usage examples with a socks5 proxy instead of HTTP) of the feature, to help make it more usable. I added a question on AskUbuntu on this but it'd be better to have that info on the docs website.

+1


make setting limits config togglable

in certain situations - such as where we have limits set generically by another puppet module - we do not want to specify these here. As such i have made that config toglable - while retaining the same default behaviour for the module

Closing as module has been dead many years


ERR_INVALID_ARGUMENT on any url

Hello,
I have install scrapy-playwright in my venv using pip install scrapy-playwright and after that playwright install.
Whatever I try to do I get the ERR_INVALID_ARGUMENT error for any url. Even when I try something basic like:
import scrapy
from project.settings import DOWNLOADER_MIDDLEWARES

class QuotesSpider(scrapy.Spider):
    name = 'quotes'
    CUSTOM_DOWNLOADER_MIDDLEWARES = DOWNLOADER_MIDDLEWARES.copy()
    CUSTOM_DOWNLOADER_MIDDLEWARES.update({
        'project.middlewares.BrightDataProxyMiddleware': 900,
        'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': 400,
        'scrapy_user_agents.middlewares.RandomUserAgentMiddleware': None,
        'tor_ip_rotator.middlewares.TorProxyMiddleware': None,
    })

    custom_settings = {
        "TWISTED_REACTOR": "twisted.internet.asyncioreactor.AsyncioSelectorReactor",
        "DOWNLOAD_HANDLERS": {
            "https": "scrapy_playwright.handler.ScrapyPlaywrightDownloadHandler",
        },
        'DOWNLOADER_MIDDLEWARES': CUSTOM_DOWNLOADER_MIDDLEWARES,
        'USER_AGENT': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0',

    }

    def start_requests(self):
        url = "https://quotes.toscrape.com/js/"
        yield scrapy.Request(url, meta={'playwright': True})

    def parse(self, response):
        for quote in response.css('div.quote'):
            yield {
                'text': quote.css('span.text::text').get(),
                'author': quote.css('small.author::text').get(),
                'tags': quote.css('div.tags a.tag::text').getall()
            }

It ends with :
2022-09-07 16:26:48,375 scrapy.extensions.telnet - INFO:Telnet console listening on <IP_ADDRESS>:6053
2022-09-07 16:26:48,376 scrapy-playwright - INFO:Starting download handler
2022-09-07 16:26:53,376 scrapy-playwright - INFO:Launching browser chromium
2022-09-07 16:26:53,742 scrapy-playwright - INFO:Browser chromium launched
2022-09-07 16:26:53,751 scrapy-playwright - DEBUG:Browser context started: 'default' (persistent=False)
2022-09-07 16:26:53,998 scrapy-playwright - DEBUG:[Context=default] New page created, page count is 1 (1 for all contexts)
2022-09-07 16:26:54,020 scrapy-playwright - DEBUG:[Context=default] Request: <GET https://quotes.toscrape.com/js/> (resource type: document, referrer: None)
2022-09-07 16:26:54,027 scrapy-playwright - WARNING:Closing page due to failed request: <GET https://quotes.toscrape.com/js/> (<class 'playwright._impl._api_types.Error'>)
2022-09-07 16:26:54,139 scrapy.core.scraper - ERROR:Error downloading <GET https://quotes.toscrape.com/js/>
Traceback (most recent call last):
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/twisted/internet/defer.py", line 1656, in _inlineCallbacks
    result = current_context.run(
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/twisted/python/failure.py", line 489, in throwExceptionIntoGenerator
    return g.throw(self.type, self.value, self.tb)
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/scrapy/core/downloader/middleware.py", line 49, in process_request
    return (yield download_func(request=request, spider=spider))
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/twisted/internet/defer.py", line 1030, in adapt
    extracted = result.result()
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/scrapy_playwright/handler.py", line 275, in _download_request
    result = await self._download_request_with_page(request, page)
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/scrapy_playwright/handler.py", line 293, in _download_request_with_page
    response = await page.goto(url=request.url, **page_goto_kwargs)
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/playwright/async_api/_generated.py", line 7413, in goto
    await self._impl_obj.goto(
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/playwright/_impl/_page.py", line 496, in goto
    return await self._main_frame.goto(**locals_to_params(locals()))
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/playwright/_impl/_frame.py", line 136, in goto
    await self._channel.send("goto", locals_to_params(locals()))
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/playwright/_impl/_connection.py", line 43, in send
    return await self._connection.wrap_api_call(
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/playwright/_impl/_connection.py", line 387, in wrap_api_call
    return await cb()
  File "/Users/dragospopa/Desktop/project/scrapingvenv/lib/python3.9/site-packages/playwright/_impl/_connection.py", line 78, in inner_send
    result = next(iter(done)).result()
playwright._impl._api_types.Error: net::ERR_INVALID_ARGUMENT at https://quotes.toscrape.com/js/
=========================== logs ===========================
navigating to "https://quotes.toscrape.com/js/", waiting until "load"
============================================================
2022-09-07 16:26:54,248 scrapy.core.engine - INFO:Closing spider (finished)

How can I fix this ?
(Edited for syntax highlighting)

I suspect project.middlewares.BrightDataProxyMiddleware might be trying to set proxy configuration via Request.meta["proxy"], which isn't supported (see also Known issues).

That BrightDataProxyMiddleware only gets activated if I specify in custom settings BRIGHTDATA_ENABLED: True,
otherwise it doesn't do anything

Getting the same error, any fixes?

I still could not reproduce.
import scrapy

class QuotesSpider(scrapy.Spider):
    name = "quotes"

    custom_settings = {
        "TWISTED_REACTOR": "twisted.internet.asyncioreactor.AsyncioSelectorReactor",
        "DOWNLOAD_HANDLERS": {
            "https": "scrapy_playwright.handler.ScrapyPlaywrightDownloadHandler",
        },
        "DOWNLOADER_MIDDLEWARES": {
            "scrapy.downloadermiddlewares.useragent.UserAgentMiddleware": 400,
        },
        "USER_AGENT": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0",
    }

    def start_requests(self):
        url = "https://quotes.toscrape.com/js/"
        yield scrapy.Request(url, meta={"playwright": True})

    def parse(self, response):
        for quote in response.css("div.quote"):
            yield {
                "text": quote.css("span.text::text").get(),
                "author": quote.css("small.author::text").get(),
                "tags": quote.css("div.tags a.tag::text").getall(),
            }

(Note that I'm not including all non built-in middlewares, disabling them with None is the same as not adding them in the first place).
$ scrapy crawl quotes -o quotes.json
(...)
2022-09-27 14:47:38 [scrapy.core.engine] INFO: Spider opened
2022-09-27 14:47:38 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2022-09-27 14:47:38 [scrapy.extensions.telnet] INFO: Telnet console listening on <IP_ADDRESS>:6023
2022-09-27 14:47:38 [scrapy-playwright] INFO: Starting download handler
2022-09-27 14:47:44 [scrapy-playwright] INFO: Launching browser chromium
2022-09-27 14:47:44 [scrapy-playwright] INFO: Browser chromium launched
2022-09-27 14:47:46 [scrapy.core.engine] INFO: Closing spider (finished)
2022-09-27 14:47:46 [scrapy.extensions.feedexport] INFO: Stored json feed (10 items) in: quotes.json
(...)
2022-09-27 14:47:46 [scrapy.core.engine] INFO: Spider closed (finished)
2022-09-27 14:47:46 [scrapy-playwright] INFO: Closing download handler
2022-09-27 14:47:47 [scrapy-playwright] INFO: Closing browser

$ scrapy version -v
Scrapy       : 2.6.0
lxml         : <IP_ADDRESS>
libxml2      : 2.9.12
cssselect    : 1.1.0
parsel       : 1.6.0
w3lib        : 1.22.0
Twisted      : 22.2.0
Python       : 3.9.6 (default, Sep  6 2021, 10:09:19) - [GCC 7.5.0]
pyOpenSSL    : 22.0.0 (OpenSSL 1.1.1m  14 Dec 2021)
cryptography : 36.0.1
Platform     : Linux-5.4.0-125-generic-x86_64-with-glibc2.31

$ python -c "import scrapy_playwright; print(scrapy_playwright.__version__)"
0.0.21


[Bug] Navigation for View Demo icons on Nucleo Icons section not working.

Version
1.0.0
Reproduction link
https://demos.creative-tim.com/paper-kit-react/#/index
Operating System
Windows 10
Device
Desktop Computer
Browser & Version
Chrome Version 75.0.3770.100 (Official Build) (64-bit)
Steps to reproduce
This is an issue on the Paper Kit React Live site:
Scroll down and click on View Demo Icons on the paper kit react live
What is expected?
Navigation to  https://demos.creative-tim.com/paper-kit-react/#/nucleo-icons
What is actually happening?
It navigated to https://demos.creative-tim.com/nucleo-icons instead which generated a 404 error.

Solution
I can't fine if it's the version of the react router, since the SectionExamples.js link for Landing Page on line 47 works fine.  But the same thing in the nucleo icons doesn't. - Sorry not able to locate a solution at the moment.
Additional comments
If you download and build the Paper Kit React on to machine, there is no problem because the page doesn't use # routing and is hosted at root so /nucleo-icons will work - landing page actually works works in both cases.  Happens also in Firefox latest also - it would appear to be react not rendering the link properly.

After having a looking the issue further, it looks link the links on the page as a whole (for non-external) are wrong, instead of :
              <Button                 className="btn-round"                 color="danger"                 href="/nucleo-icons"                  target="_blank"               >                 View Demo Icons               </Button>
it should be:
              <Link to="/nucleo-icons" target="_blank">               <Button                 className="btn-round"                 color="danger"               >                 View Demo Icons               </Button></Link>
This works if you use HashRouter or BrowserRouter
As I am new to React, this is my best guess.  Hope this helps.

Hello there, @Zabeard ,
Thank you for your interest in working with our products, and for noticing this issue.
Really sorry for this late response, I forgot to add this repository to my watch list to get notified when a new issue is opened.
The problem was because we were using a button with a href="/nucleo-icons" instead of a button with a href with the full path.
The issue was solved.
Best,
Manu


Upgrade Chai to 2.2.0?

Chai seems to be at version 2.2 (https://github.com/chaijs/chai/blob/master/History.md), but Konacha is still using 1.9.1. Any chance for an upgrade?

Sure, can you submit a pull request?

See #209


Bump web-shell to 0_7_0: sharing soiree

This PR is an expansion of #2964 which was on-pause for various reasons.
Bumping to version 0_7_0
Version number affects the default firebase node as well as localStorage keys.
user is dead, long live persona
The user parameter is gone, as there is no centralized store of usernames. Instead, the storage (or, alternatively, persona) parameter should disambiguate the user completely: you are where your stuff is.
Examples:
For our shared default firebase, you can simply add a user identifier to the end of the canonical URL:
?storage=$firebase/scott
or
?persona=$firebase/scott
Note that $firebase is dev-mode shorthand for firebase://arcs-storage.firebaseio.com/AIzaSyBme42moeI-2k8WgXh-6YK_wYyjEXo4Oz8/0_7_0/.
Arcs can be anywhere
Similarly, arc keys are no longer simple identifiers, each should include a complete storage specifier. Mostly older key formats will still work if they are valid for the current storage default, but they are generally deprecated.
Sharing by Reference
Previously when an Entity was shared from user A to user B, the Entity was copied and it's id was decorated with provenance information, e.g. the source User and source Arc. In this PR, shared Entities are presented using share-types that encode a reference to the original Entity and provenance data (from where and from whom the data was sourced) as proper fields. Using the references avoids duplication of data in the BackingStore, removes hacky id-encoding, and avoids fetching the contents of ref until explicit dereference. Also, using References.
Arc Sharing MVP
There is a new tab in the launcher that shows all your friend's Arcs (and allows you to launch them).
Fixes #2728
Fixes #2918

@lindner thanks for the meta points, will consider. Some thoughts:
Inline docs have dubious value IMO unless you are talking API code; value also impaired without a paved path to some kind of doc viewer. If you mean more code comments, that's fair, although I probably refactoring would be the firs step. Keep in mind that it's not clear any of this code is for anything but demonstrations.

@lindner thanks for the meta points, will consider. Some thoughts:
Inline docs have dubious value IMO unless you are talking API code; value also impaired without a paved path to some kind of doc viewer. If you mean more code comments, that's fair, although I probably refactoring would be the firs step. Keep in mind that it's not clear any of this code is for anything but demonstrations.
Tests: need some.
How to make changes easier to test: making a proper test harness. This is again a bit harder to emphasize since the long (even medium) term fate of this code is unclear.

Cool, got it.  Also excited to see this move forward!


Updating ms.service name

Docs Build status updates of commit 9eb8ba0:
:clock10: Full build: the average full build time is 128 min(s) 23 sec(s), this is based on the last 141 build(s) for this repository.

Docs Build status updates of commit 9eb8ba0:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-services/cosmosdb.md
:white_check_mark:Succeeded
View (azure-python)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

#sign-off

@rloutlaw can you please merge this PR. It fixes the metadata issue we are seeing in the content dashboard.


Camera sometimes followes enemy bullet

Gotten this bug once so might not be a problem. The thirdperson camera started following the enemies bullet and the player avatar dissapeared, asthough it was removed while the client was still active. This might very well be the reason why the camera started following the enemiy bullet instead since that entity could take the entity id the player previously used if the player entity is removed.

Multiple join/disconnect? If that case close issue due to events between joins.

Still problem?


Fix a bug where some addresses would be unverified due to padding

balanceSlot is padded to '0x' + 64 chars with leading zeros, however contractProof.storageProof[0]?.key isn't.  This means that for some addresses (and for some tokens, if more are added) the balance slot will have leading zeros and proof key will not, failing the equality check.
Example:
const balanceSlot = web3.utils.keccak256(defaultAbiCoder.encode(["address", "uint"], ["0xA4b06Da12C746666D08e1163CD18Ab57bA544291", 2])); const contractProof = await web3.eth.getProof(
"0x6b175474e89094c44da98b954eedeac495271d0f",
[balanceSlot],
17884555);
key=0x9dd74d0da16d86e947a553ada92b0d3f6cee1cfb3c43e4a74617566fbd4c5be balanceSlot=0x09dd74d0da16d86e947a553ada92b0d3f6cee1cfb3c43e4a74617566fbd4c5be
Or just input 0xA4b06Da12C746666D08e1163CD18Ab57bA544291 at the demo https://lodestar-lightclient.chainsafe.io

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@rdvorkin Your change makes sense, now I still have an error with your test case even after applying it:
Error: Invalid proof provided: account is not empty (storageHash does not equal KECCAK256_RLP)
    at DefaultStateManager.verifyProof (http://localhost:3000/static/js/bundle.js:18994:15)
    at async fetchAndVerifyAddressBalances (http://localhost:3000/static/js/bundle.js:1052:151)
    at async fetchAndVerifyAccount (http://localhost:3000/static/js/bundle.js:509:31)

Does that ring a bell?


Include more info in warning about non-distributable layer

Describe the problem/challenge you have
imgpkg copy will often log the following warning:

copy | Warning: Skipped layer due to it being non-distributable. If you would like to include non-distributable layers, use the --include-non-distributable-layers flag

But this doesn't say anything about what the non-distributable layer is. Without more information, it's hard to determine whether I should pass --include-non-distributable-layers or if my bundle is messed up. And with a lot of images and a lot of layers, it can be hard to figure out which one is the offender.
Describe the solution you'd like
Include info about which image and which layer is non-distributable in the log message.

Vote on this request
This is an invitation to the community to vote on issues, to help us prioritize our backlog. Use the "smiley face" up to the right of this comment to vote.
👍 "I would like to see this addressed as soon as possible"
👎 "There are other more important things to focus on right now"
We are also happy to receive and review Pull Requests if you want to help working on this issue.

Thanks for the issue.
I think this is a nice improvement to the warning message.
Instead of both the image and layer/s, what do you think about specifying only the image? Since, with that information you can inspect the image manifest (giving you a list of the layers, of which you can see which are non-distributable)
Note:
Consider how to output a bundle with lots of images that have Non-distributable layers. (This warning might get really verbose)

Instead of both the image and layer/s, what do you think about specifying only the image?

That may be OK. It's certainly a decent place to start.

This issue was solved in #410 and released in version 0.30.0


Method Laravel\Nova\Fields\Text::resolveDefaultValue does not exist

Hi, I am using Laravel 6.20.6, Nova 2.9.2 and spatie/laravel-translatable 4.6.0. This is my setup in the model:
use HasTranslations;
public $translatable = ['name'];

When I try to use this package like so:
Text::make('name')
      ->rules('required', 'max:255')
      ->translatable(),

I get this error: Method Laravel\Nova\Fields\Text::resolveDefaultValue does not exist.

Ah crap, it seems like that ->default() added in version 3.4.0. I released version 1.8.3 which should fix support for Nova 2.9. Good luck!


Add RF connectors

I work in the 2-way radio industry and would to to see if its possible to add a connection type of RF into netbox. A lot of radios are computers with radios in them, so they have the standard connection types with the addition of a coax connection.

What interface types are you proposing be added? Please list the exact names.

For now, just a separate connector type that says RF, something i can add to a device type instead of interface,console, and power. I dont how important connector types are for netbox, but a few to start with are:
Type-N
BNC
PL-259 (UHF)
Thank you for the immediate follow up!

What are these interfaces used for? NetBox is primarily an IPAM/DCIM application; if they're not used for networking I'm not sure it makes sense to add them.

Jeremy,
Thank you very much for following up with this!
A radio repeater is basically a server and very much needs to be part of DCIM and IPAM. We have racks of radios all serving different purposes. They can be 1U-4U and have all the connections of a regular server with the addition of a coax. The coax can route directly to an antenna or a multitude of other components like multicouplers, combiners, and duplexors (Rackable radio gear). Think of a device that has 8 coax connections in and 1 coax connection out. Adding coax will give me/users the ability to track/trace where coax lines go given netboxes awesome connecting capability in the web interface. Much like how I can connect server X interface ge/0/0/1 to Switch Y port fe/0/01, Id like the ability to do the same with coax. Radio X, interface coax 1 connects to combiner Y port coax 1. I hope that paints a picture. I know beggars cant be choosers, but so far netbox has been the best solution we have come across. Thank you again!

@fogtea I'm referring specifically to the radio interfaces. It doesn't sound like they could be reasonably classified as data network interfaces, so it wouldn't make sense to add them as options for interface type. Afraid I have to reject this request.
I understand there's value in documenting these connections, but NetBox doesn't currently have a model which would support it. You might be interested in #968, which would potentially introduce a mechanism for adding arbitrary connections such as these. I invite you to document your use case there and give it a :+1:


refactor(docker-compose): remove version from docker-compose.yml

When running the container via the docker-compose.yml this error is given:
the attribute version is obsolete, it will be ignored, please remove it to avoid potential confusion
Reference in the compose-spec

Thanks :pray:


Executing AcceptDialog.push_input no longer crashes

There is a crash when calling ev->xformed_by(ai); on a null event. This just adds a check before trying to transform the event.
Fixes https://github.com/godotengine/godot/issues/53601

Thanks!


How to change length of id in any colection

Hello Guys.
i'm prettend change lenght of id in any colection .
Request for Createnew row:
{
    "id" : "B53190BF-B242-493E-8756-47D75522E54B",
    "idBuyer" : "1111",
    ....
}

Response body api create:
{     "code": 400,     "message": "Failed to create record.",     "data": {         "id": {             "code": "validation_length_invalid",             "message": "The length must be exactly 15."         }     } }
Thanks

You can't. It is not customizable at the moment (this may change in the future as there are plans to allow more native SQLite dev experience).


(TEST) Test for reference template for all versions

This PR was created from the following URL segment (removing https://github.com/michaeltlombardi for brevity):
/ghe/compare/test/main/test-pr-template-repodocs?quick_pull=1&template=reference.md

PR Summary

Affected Files

Preview content
Version 7.2 content
Version 7.1 content
Version 7.0 content
Version 5.1 content

PR Checklist

[ ] I have read the contributors guide and followed the style and process guidelines
[ ] PR has a meaningful title
[ ] PR is targeted at the staging branch
[ ] All relevant versions updated
[ ] Includes content related to issues and PRs - see Closing issues using keywords.
[ ] This PR is ready to merge and is not Work in Progress. If the PR is work in progress,
please add the prefix WIP: or [WIP] to the beginning of the title and remove the prefix when
the PR is ready.

The markdown for this PR (visible before you submit):

# PR Summary
<!--
    Summarize your changes and list related issues here. For example:

    This changes fixes problem X in the documentation for Y.
    - Fixes #1234
    - Resolves #1235
-->

## Affected Files

<!--
    When changing **cmdlet reference** or **about_ topics**, the changes
    should be copied to all relevant versions. Delete the entries for
    any version in this list that this PR does not affect:
-->

- Preview content
- Version 7.2 content
- Version 7.1 content
- Version 7.0 content
- Version 5.1 content

## PR Checklist

<!--
    These items are mandatory. For your PR to be reviewed and merged,
    ensure you have followed these steps. As you complete the steps,
    check each box by replacing the space between the brackets with an
    x or by clicking on the box in the UI after your PR is submitted.
-->

- [ ] I have read the [contributors guide][contrib] and followed the style and process guidelines
- [ ] PR has a meaningful title
- [ ] PR is targeted at the _staging_ branch
- [ ] All relevant versions updated
- [ ] Includes content related to issues and PRs - see [Closing issues using keywords][key].
- [ ] This PR is ready to merge and is not **Work in Progress**. If the PR is work in progress,
  please add the prefix `WIP:` or `[WIP]` to the beginning of the title and remove the prefix when
  the PR is ready.

[contrib]: https://docs.microsoft.com/powershell/scripting/community/contributing/overview
[key]: https://help.github.com/en/articles/closing-issues-using-keywords


Issues with podman

aqua info
$ aqua info
{
  "version": "2.23.1",
  "commit_hash": "65fb59915fced5e16413e59cd17b3f0a1b42b972",
  "os": "linux",
  "arch": "amd64",
  "pwd": "/home/(USER)/Projects/github.com/aquaproj/aqua-registry",
  "root_dir": "/home/(USER)/.local/share/aquaproj-aqua",
  "env": {
    "AQUA_ROOT_DIR": "/home/(USER)/.local/share/aquaproj-aqua"
  },
  "config_files": [
    {
      "path": "/home/(USER)/Projects/github.com/aquaproj/aqua-registry/aqua.yaml"
    },
    {
      "path": "/home/(USER)/aqua.yaml"
    }
  ]
}

Overview
Trying to add a new package to aqua-registry with podman on Fedora 39:
$ rpm -qa | grep podman
podman-compose-1.0.6-3.fc39.noarch
podman-tui-0.17.0-1.fc39.x86_64
podman-4.9.3-1.fc39.x86_64
podman-docker-4.9.3-1.fc39.noarch
podman-plugins-4.9.3-1.fc39.x86_64

How to reproduce
Executed command and output
bhundven@mill:~/Projects/github.com/aquaproj/aqua-registry$ cmdx scaffold iamhsa/pkenv
+ set -eu
if [ "false" = true ]; then
  cmdx rm
fi
bash scripts/start.sh
bash scripts/scaffold.sh "iamhsa/pkenv" "" ""
bash scripts/test.sh "iamhsa/pkenv"
bash scripts/start.sh aqua-registry-windows
bash scripts/test-windows.sh "iamhsa/pkenv"

Error: no such object: "aquaproj/aqua-registry"
[INFO] Building the docker image aquaproj/aqua-registry
STEP 1/15: FROM golang:1.22.0-bookworm
Resolved "golang" as an alias (/home/bhundven/.cache/containers/short-name-aliases.conf)
Trying to pull docker.io/library/golang:1.22.0-bookworm...
Getting image source signatures
Copying blob 9ef5d6b83255 done   |
Copying blob 7bb465c29149 done   |
Copying blob 49b40be4436e done   |
Copying blob 2b9b41aaa3c5 done   |
Copying blob d85d001093ea done   |
Copying blob 07ba5748a600 done   |
Copying blob 4f4fb700ef54 done   |
Copying config 0c4ed86491 done   |
Writing manifest to image destination
STEP 2/15: WORKDIR /workspace
--> 018c7015ed79
STEP 3/15: ENV AQUA_ROOT_DIR=/root/aquaproj-aqua
--> 2dff6d7dd83c
STEP 4/15: ENV AQUA_LOG_COLOR=always
--> 5c603fa0e3af
STEP 5/15: ENV AQUA_POLICY_CONFIG=/workspace/aqua-policy.yaml
--> dbe90d979600
STEP 6/15: ENV PATH=$AQUA_ROOT_DIR/bin:/root/.cargo/bin:$PATH
--> a8e9f02dad4b
STEP 7/15: SHELL ["/bin/bash", "-o", "pipefail", "-c"]
WARN[0013] SHELL is not supported for OCI image format, [/bin/bash -o pipefail -c] will be ignored. Must use `docker` format
--> 1acd37b17b28
STEP 8/15: RUN   apt-get update &&   apt-get install --no-install-recommends -y tree &&   apt-get clean &&   rm -rf /var/lib/apt/lists/*
Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB]
Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
Get:4 http://deb.debian.org/debian bookworm/main amd64 Packages [8786 kB]
Get:5 http://deb.debian.org/debian bookworm-updates/main amd64 Packages [12.7 kB]
Get:6 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [143 kB]
Fetched 9196 kB in 2s (4648 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
The following NEW packages will be installed:
  tree
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 52.5 kB of archives.
After this operation, 116 kB of additional disk space will be used.
Get:1 http://deb.debian.org/debian bookworm/main amd64 tree amd64 2.1.0-1 [52.5 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 52.5 kB in 0s (482 kB/s)
Selecting previously unselected package tree.
(Reading database ... 15610 files and directories currently installed.)
Preparing to unpack .../tree_2.1.0-1_amd64.deb ...
Unpacking tree (2.1.0-1) ...
Setting up tree (2.1.0-1) ...
WARN[0016] SHELL is not supported for OCI image format, [/bin/bash -o pipefail -c] will be ignored. Must use `docker` format
--> eca620644cf5
STEP 9/15: RUN curl -sSfL -O https://raw.githubusercontent.com/aquaproj/aqua-installer/v2.3.0/aqua-installer
WARN[0017] SHELL is not supported for OCI image format, [/bin/bash -o pipefail -c] will be ignored. Must use `docker` format
--> 882db4483464
STEP 10/15: RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable --profile minimal
info: downloading installer
info: profile set to 'minimal'
info: default host triple is x86_64-unknown-linux-gnu
info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'
info: latest update on 2024-02-08, rust version 1.76.0 (07dca489a 2024-02-04)
info: downloading component 'cargo'
info: downloading component 'rust-std'
info: downloading component 'rustc'
info: installing component 'cargo'
info: installing component 'rust-std'
info: installing component 'rustc'

info: default toolchain set to 'stable-x86_64-unknown-linux-gnu'
  stable-x86_64-unknown-linux-gnu installed - rustc 1.76.0 (07dca489a 2024-02-04)

Rust is installed now. Great!

To get started you may need to restart your current shell.
This would reload your PATH environment variable to include
Cargo's bin directory ($HOME/.cargo/bin).

To configure your current shell, run:
source "$HOME/.cargo/env"
WARN[0026] SHELL is not supported for OCI image format, [/bin/bash -o pipefail -c] will be ignored. Must use `docker` format
--> 76738c834599
STEP 11/15: RUN echo "1577b99b74751a5ddeea757198cee3b600fce3ef18990540e4d0e667edcf1b5f  aqua-installer" | sha256sum -c
aqua-installer: OK
WARN[0028] SHELL is not supported for OCI image format, [/bin/bash -o pipefail -c] will be ignored. Must use `docker` format
--> 47dec0a6c277
STEP 12/15: RUN chmod +x aqua-installer
WARN[0029] SHELL is not supported for OCI image format, [/bin/bash -o pipefail -c] will be ignored. Must use `docker` format
--> 9bc4742ee9ff
STEP 13/15: RUN ./aqua-installer -v v2.23.1
[INFO] Installing aqua v2.22.0 for bootstrapping...
[INFO] Downloading https://github.com/aquaproj/aqua/releases/download/v2.22.0/aqua_linux_amd64.tar.gz ...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 6578k  100 6578k    0     0  5663k      0  0:00:01  0:00:01 --:--:-- 9344k
[INFO] Verifying checksum of aqua v2.22.0 ...
aqua_linux_amd64.tar.gz: OK
[INFO] /tmp/tmp.QWbmczWeXD/aqua update-aqua v2.23.1
INFO[0000] download and unarchive the package            aqua_version=2.22.0 env=linux/amd64 new_version=v2.23.1 package_name=aquaproj/aqua package_version=v2.23.1 program=aqua registry=
INFO[0000] verify a package with slsa-verifier           aqua_version=2.22.0 env=linux/amd64 new_version=v2.23.1 package_name=aquaproj/aqua package_version=v2.23.1 program=aqua registry=
INFO[0000] download and unarchive the package            aqua_version=2.22.0 env=linux/amd64 new_version=v2.23.1 package_name=slsa-framework/slsa-verifier package_version=v2.4.1 program=aqua registry=
Verified signature against tlog entry index 68699067 at URL: https://rekor.sigstore.dev/api/v1/log/entries/24296fb24b8ad77a769569930edd1e1cf2ea9486eb1da26a46df11bbb030527a972db52d4c34fc7d
Verified build using builder<EMAIL_ADDRESS>at commit 65fb59915fced5e16413e59cd17b3f0a1b42b972
Verifying artifact /tmp/088656240: PASSED

PASSED: Verified SLSA provenance
INFO[0004] create a symbolic link                        aqua_version=2.22.0 command=aqua env=linux/amd64 new_version=v2.23.1 package_name=aquaproj/aqua package_version=v2.23.1 program=aqua

===============================================================
[INFO] aqua is installed into /root/aquaproj-aqua/bin/aqua
[INFO] Please add the path to the environment variable "PATH"
[INFO] export PATH=${AQUA_ROOT_DIR:-${XDG_DATA_HOME:-$HOME/.local/share}/aquaproj-aqua}/bin:$PATH
===============================================================

aqua version 2.23.1 (65fb59915fced5e16413e59cd17b3f0a1b42b972)
WARN[0035] SHELL is not supported for OCI image format, [/bin/bash -o pipefail -c] will be ignored. Must use `docker` format
--> c18e135eaef4
STEP 14/15: COPY aqua-test.yaml aqua.yaml
WARN[0035] SHELL is not supported for OCI image format, [/bin/bash -o pipefail -c] will be ignored. Must use `docker` format
--> 109c07ba539c
STEP 15/15: COPY aqua-policy.yaml aqua-policy.yaml
COMMIT aquaproj/aqua-registry
WARN[0036] SHELL is not supported for OCI image format, [/bin/bash -o pipefail -c] will be ignored. Must use `docker` format
--> 47c026dd5078
Successfully tagged localhost/aquaproj/aqua-registry:latest
47c026dd50781e2f310d61bece5bbbccdc06d153c865e79ac3e9149f89d3dc45
[INFO] Checking if the container aqua-registry exists
[INFO] Creaing a container aqua-registry
[INFO] Get a GitHub Access token by gh auth token
e9c7723e4cbba947612f16f6326bdcf0e239ddfa4f060f1ce7c20c1a75b76952
+ pkg=iamhsa/pkenv
+ cmd=
+ limit=
+ '[' -d pkgs/iamhsa/pkenv ']'
+ docker exec -ti -w /aqua-registry aqua-registry aqua policy allow
INFO[0000] no policy file is found                       aqua_version=2.23.1 env=linux/amd64 program=aqua
+ docker exec -ti -w /aqua-registry aqua-registry aqua i -l
INFO[0000] download and unarchive the package            aqua_version=2.23.1 env=linux/amd64 package_name=aqua-proxy package_version=v1.2.5 program=aqua registry=
INFO[0000] create a symbolic link                        aqua_version=2.23.1 command=aqua-proxy env=linux/amd64 package_name=aqua-proxy package_version=v1.2.5 program=aqua registry=
+ opts=
+ '[' -n '' ']'
+ '[' -n '' ']'
+ docker exec -ti -w /aqua-registry aqua-registry aqua-registry scaffold iamhsa/pkenv
Error: crun: executable file `aqua-registry` not found in $PATH: No such file or directory: OCI runtime attempted to invoke a command that was not found
exit status 127

Debug output
Output isn't different with AQUA_LOG_LEVEL=debug set.
Expected behaviour
The new package is created in the aqua-registry
Actual behaviour
+ docker exec -ti -w /aqua-registry aqua-registry aqua-registry scaffold iamhsa/pkenv
Error: crun: executable file `aqua-registry` not found in $PATH: No such file or directory: OCI runtime attempted to invoke a command that was not found

Note
No response

I guess the issue might be related to the way podman names an image without hostname (like docker.io). After I run cmdx s <package> I get:
$ podman images
REPOSITORY                                             TAG              IMAGE ID      CREATED         SIZE
localhost/aquaproj/aqua-registry                       latest           55d991505793  41 minutes ago  1.45 GB

So probably cmdx instead expects aquaproj/aqua-registry where podman creates localhost/aquaproj/aqua-registry by the default naming settings?

So, for me:
$ cmdx con
+ bash scripts/connect.sh
[INFO] Connecting to the container aqua-registry (linux/amd64)
ERRO[0000] install the registry                          aqua_version=2.23.1 env=linux/amd64 error="local registry isn't found" local_registry_file_path=/workspace/registry.yaml program=aqua registry_name=standard
FATA[0000] aqua failed                                   aqua_version=2.23.1 env=linux/amd64 error="it failed to install some registries" program=aqua
exit status 1

Turned out it's not because the name is localhost/aquaproj/aqua-registry, but for Podman and Fedora it just needs --privilege to run the image. See my pull req #20473.

@tadayosi Thank you for looking into this issue!
📝
podman run --help

      --privileged                               Give extended privileges to container

https://docs.podman.io/en/latest/markdown/podman-run.1.html#privileged

Give extended privileges to this container. The default is false.
By default, Podman containers are unprivileged (=false) and cannot, for example, modify parts of the operating system. This is because by default a container is only allowed limited access to devices. A “privileged” container is given the same access to devices as the user launching the container, with the exception of virtual consoles (/dev/tty\d+) when running in systemd mode (--systemd=always).
A privileged container turns off the security features that isolate the container from the host. Dropped Capabilities, limited devices, read-only mount points, Apparmor/SELinux separation, and Seccomp filters are all disabled. Due to the disabled security features, the privileged field should almost never be set as containers can easily break out of confinement.
Containers running in a user namespace (e.g., rootless containers) cannot have more privileges than the user that launched them.

According to your error message, /workspace/registry.yaml wasn't found. https://github.com/aquaproj/aqua-registry/issues/20289#issuecomment-1973140916
But this file should be copied by docker cp command.
https://github.com/aquaproj/aqua-registry/blob/096332d6104bf59282397d1142821623b4a4d0cb/scripts/test.sh#L9
Did the command cmdx s output any error or warning before the above error?
--privilege option may resolve the issue, but I'd like to understand the cause correctly.
I can't reproduce the issue even if privileged is false on M3 Pro.
$ podman inspect aqua-registry | grep rivilege
               "Privileged": false,

@suzuki-shunsuke

I can't reproduce the issue even if privileged is false on M3 Pro.

Because it's a SELinux/Apparmor issue. I'm not sure how the podman machine (CoreOS) on Mac works in terms of SELinux but I guess it's disabled or permissive already?  This article is a good source for learning how podman with the privileged option is supposed to work [1].
[1] https://www.redhat.com/sysadmin/container-permission-denied-errors
When I run cmdx s without that --privileged, indeed the aqua-registry container is created and running. And as you said those files are copied under /workspace.
podman exec aqua-registry ls -l /workspace
total 16
-rwxr-xr-x. 1 root root 3469 Mar  1 11:56 aqua-installer
-rw-r--r--. 1 root root  242 Mar  2 06:36 aqua-policy.yaml
-rw-r--r--. 1 root root  229 Feb 29 10:00 aqua.yaml
-rw-r--r--. 1 root root   43 Mar  2 06:40 pkg.yaml

The issue is not that those files are not copied but aqua fails to read them without --privileged. Actually, when I run cmdx s after sudo setenforce 0 (disabling SELinux) it also works even without --privileged. So I think it's a SELinux issue and SELinux just prohibits accessing those files by default (probably because it's root owned?).

Containers running in a user namespace (e.g., rootless containers) cannot have more privileges than the user that launched them.

So even with privileged it shouldn't get more privileges than the host user so it would be still safer than Docker which runs with sudo.

Oh, I see.
Thank you for your kind explanation.

So even with privileged it shouldn't get more privileges than the host user so it would be still safer than Docker which runs with sudo.

Looks good.


Update 10_data_source_configuration.md

Minor grammatical cleanups and clarifications, and removed what I believe was a duplicate example.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


working in different base images?

I see all the sample images are from debian/ubuntu , I am not sure how much slimmer an alpine image could be but at the moment it does not seem to work on alpine images.
Step 1 : FROM scratch
 --->
Step 2 : COPY files /
FATA[0004] docker-slim: failure                          error=lstat files: no such file or directory stack=/docker-slim/_vendor/src/github.com/cloudimmunity/docker-slim/utils/errors.go:11 (0x558ad6)
/docker-slim/_vendor/src/github.com/cloudimmunity/docker-slim/master/commands/build.go:134 (0x4ae52f)
/docker-slim/apps/docker-slim/cli.go:309 (0x40afed)
/docker-slim/_vendor/src/github.com/codegangsta/cli/command.go:174 (0x4bfb47)
/docker-slim/_vendor/src/github.com/codegangsta/cli/app.go:187 (0x4bc0b5)
/docker-slim/apps/docker-slim/cli.go:507 (0x405f6b)
/docker-slim/apps/docker-slim/main.go:5 (0x406059)
/usr/local/go/src/runtime/proc.go:111 (0x4389c0)
/usr/local/go/src/runtime/asm_amd64.s:1721 (0x468981)

It does not pick up any files among the artifacts

Alpine is on the roadmap too! It does look like it needs a bit of work. I'll investigate. If you want to take a shot at it go for it :-)

Alpine support is there (version 1.18)! Need more validation though ;)


Running the second example when inspecting the transcript index.pillar creates infinite loop

I've opened the Transcript's index.pillar in documenter, and after running the second example there I ran into an uninterruptible infinite loop. (Tested in Pharo 6.1, with the current version of Bloc/Brick/GToolkit)

Indeed, this is due to changes to transformations that made animations not work currently. And the demo is animations ... This should get fixed soon

Works in the latest version.


I then ran turso db list and the output looked like this:
penberg@vonneumann limbo % turso db list
NAME            URL
testing          libsql://testing-penberg.turso.io
Updating to the latest version
Casks/a/affine.rb already exists, no checkout
Casks/b/batchoutput-pdf.rb already exists, no checkout
Casks/b/brickstore.rb already exists, no checkout
error: could not restore untracked files from stash
Updated 4 taps (tursodatabase/tap, redpanda-data/tap, homebrew/core and homebrew/cask).
==> New Formulae
azion-cli           haiti               snyk-cli            three-body
==> New Casks
batchoutput-pdf
==> Outdated Formulae
abseil              gh                  libuv               pycparser
asciinema           glib                libx11              pygments
assimp              gmp                 libxcb<EMAIL_ADDRESS>awscli              gnutls              llvm<EMAIL_ADDRESS>boost               grpcurl             luajit<EMAIL_ADDRESS>brotli              harfbuzz            luajit-openresty    qemu
c-ares              hugo                maven               six
cairo               jpeg-turbo          mysql-client        sphinx-doc
capstone            jq                  nghttp2             sqld
ccloud              k6                  node                sqlite
cffi                krb5                node@16             turso
cmake               libevent            oniguruma           unbound
deno                libfido2            openjdk             unixodbc
docutils            libnghttp2          openjdk@11          vault
erlang              libpng<EMAIL_ADDRESS>       wabt
esbuild             libpq               openssl@3           wxwidgets
flyctl              libpthread-stubs    p11-kit             zlib
freetype            libssh              protobuf
gettext             libtiff             pscale
==> Outdated Casks
ngrok

You have 74 outdated formulae and 1 outdated cask installed.
You can upgrade them with brew upgrade
or list them with brew outdated.
==> Upgrading 1 outdated package:
tursodatabase/tap/turso 0.86.3 -> 0.87.0
==> Fetching tursodatabase/tap/turso
==> Downloading https://github.com/tursodatabase/homebrew-tap/releases/download/
==> Downloading from https://objects.githubusercontent.com/github-production-rel
######################################################################### 100.0%
==> Upgrading tursodatabase/tap/turso
  0.86.3 -> 0.87.0

Welcome to Turso!

If you are a new user, please sign up with turso auth signup; otherwise login
with turso auth login. When you are authenticated, you can create a new
database with turso db create. You can also run turso help for help.

For a more comprehensive getting started guide, open the following URL:

  https://docs.turso.tech/tutorials/get-started-turso-cli

==> Caveats
zsh completions have been installed to:
  /opt/homebrew/share/zsh/site-functions
==> Summary
🍺  /opt/homebrew/Cellar/turso/0.87.0: 6 files, 18.5MB, built in 8 seconds
==> Running `brew cleanup turso`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
Removing: /opt/homebrew/Cellar/turso/0.86.3... (6 files, 18.5MB)
Removing: /Users/penberg/Library/Caches/Homebrew/turso--0.86.3.tar.gz... (5.6MB)

Let's make sure that the forced auto-upgrade does not screw up the developer experience like this. For example, autocomplete should never trigger it. Also, the output of auto-upgrade should be silent by default, and the actual command people wanted to run should run after the update.

@gris

I'm using nix to manage my system, this feature screws it up. Please make this an optional opt-in feature. Or at least have the CLI ask if I want to update or not before it does it.

@tstachl it is optional, you can set it off with turso config set autoupdate off


CHECK needs a way to print a message

The JUnit folks have an overloaded assertTrue() method that takes, in addition to a boolean condition to check, an explanatory message. It would be great if we could also have  some means of explaining the conditions under which a CHECK fails.
I am testing an implementation of Euclid's algorithm for calculating greatest common divisors. I'm testing every combination of integers between 1 and 100, but when the test fails I only see this:
CHECK(a % gcd == 0) failed

Without gdb there is no way for me to see which combination of integers caused the test to fail.

Hi
Is it possible to log/print massage for not-fail check ?

At the moment not. I don't think we would accept it as a pull requests, unless you can convince me that would be good functionality to have :)


[#2524] refatoring profiler

[#2524]

Move unused code
Refactor spanchunk

Codecov Report

Merging #2671 into master will increase coverage by 0.35%.
The diff coverage is 73.68%.

@@            Coverage Diff             @@
##           master    #2671      +/-   ##
==========================================
+ Coverage   40.61%   40.96%   +0.35%
==========================================
  Files        1783     1762      -21
  Lines       61797    61268     -529
  Branches     8653     8600      -53
==========================================
+ Hits        25098    25101       +3
+ Misses      36699    36167     -532

Impacted Files
Coverage Δ

...in/MatchableClassFileTransformerGuardDelegate.java
79.31% <ø> (ø)
:white_check_mark:

...rofiler/DefaultClassFileTransformerDispatcher.java
77.96% <ø> (ø)
:white_check_mark:

...pinpoint/test/classloader/JavassistTranslator.java
0% <ø> (ø)
:white_check_mark:

...p/pinpoint/test/classloader/DefaultTranslator.java
81.13% <ø> (ø)
:white_check_mark:

...ofiler/context/storage/BufferedStorageFactory.java
0% <0%> (ø)
:white_check_mark:

...int/profiler/context/ApplicationContextModule.java
98.33% <100%> (+0.02%)
:white_check_mark:

...filer/context/provider/StorageFactoryProvider.java
58.82% <40%> (-3.68%)
:x:

...oint/profiler/context/DefaultSpanChunkFactory.java
84.37% <84.37%> (ø)

...ler/context/provider/AgentInformationProvider.java
82.6% <92.3%> (+4.03%)
:white_check_mark:

...ookeeper/exception/PinpointZookeeperException.java
0% <0%> (-28.58%)
:x:

... and 16 more

Continue to review full report at Codecov.

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


CLIP-976 Upgrade to TaskCat 9

CLIP-976 Upgrade to TaskCat 9

CI build: https://server-syd-bamboo.internal.atlassian.com/browse/ZDCD-AWSBITBUCKET62-5


feat: add server-tokens for configmap

What this PR does / why we need it:
给 ingress-nginx 的 configMap 添加一个k-v
Which issue(s) this PR is related to (optional, link to 3rd issue(s)):
Fixes #
Reference to #

Special notes for your reviewer:
/cc @hanxueluo @hicaistar

Release note:

NONE

/lgtm

/approve

/cherrypick release-0.5


'npx prisma db seed --preview-feature' do not create data

Bug description
Hello 😄,
I was learning prisma by following the video created by @Jolg42 at the Prisma Day 2021
video: https://youtu.be/OLPHnqvYNTg
repository: https://github.com/Jolg42/prisma-workshop
After using the command npx prisma db seed --preview-feature no data was created in my database and the console.log() I put in my main() function were not print
How to reproduce
run the following commandes in your farorite CLI
git clone https://github.com/Jolg42/prisma-workshop.git
cd prisma-workshop
git checkout rest-api
npm install
npx prisma migration dev --name init
npx prisma db seed --preview-feature

I tried to change the seed file by following the guide of this feature (link below)
https://www.prisma.io/docs/guides/database/seed-database
but the problem persisted
Expected behavior
I expected the data written in my seed to be in the database if I use the command
npx prisma db seed --preview-feature

Prisma information
// package.json
  ...
  "prisma": {
    "seed": "ts-node prisma/seed.ts"
  }
  ...

// prisma/schema.prisma
datasource db {
  provider = "sqlite"
  url      = "file:./dev.db"
}

generator client {
  provider = "prisma-client-js"
}

model User {
  id    Int     @id @default(autoincrement())
  email String  @unique
  name  String?
  posts Post[]
}

model Post {
  id        Int      @id @default(autoincrement())
  createdAt DateTime @default(now())
  updatedAt DateTime @updatedAt
  title     String
  content   String?
  published Boolean  @default(false)
  viewCount Int      @default(0)
  author    User?    @relation(fields: [authorId], references: [id])
  authorId  Int?
}

// prisma/seed.ts
import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()

async function main() {
  const alice = await prisma.user.upsert({
    where: { email<EMAIL_ADDRESS>},
    update: {},
    create: {
      email<EMAIL_ADDRESS>      name: 'Alice',
      posts: {
        create: {
          title: 'Join the Prisma Slack',
          content: 'https://slack.prisma.io',
          published: true,
        }
      },
    },
  });
  const nilu = await prisma.user.upsert({
    where: { email<EMAIL_ADDRESS>},
    update: {},
    create: {
      email<EMAIL_ADDRESS>      name: 'Nilu',
      posts: {
        create: {
          title: 'Follow Prisma on Twitter',
          content: 'https://www.twitter.com/prisma',
          published: true,
        }
      },
    },
  });
  const mahmoud = await prisma.user.upsert({
    where: { email<EMAIL_ADDRESS>},
    update: {},
    create: {
      email<EMAIL_ADDRESS>      name: 'Mahmoud',
      posts: {
        create: [
          {
            title: 'Ask a question about Prisma on GitHub',
            content: 'https://www.github.com/prisma/prisma/discussions',
            published: true,
          },
          {
            title: 'Prisma on YouTube',
            content: 'https://pris.ly/youtube',
          },
        ],
      },
    },
  });
  console.log(alice, nilu, mahmoud)
}

main()
    .then(async () => {
      await prisma.$disconnect()
    })
    .catch(async (e) => {
      console.error(e)
      await prisma.$disconnect()
      process.exit(1)
    });

Environment & setup

OS: Windows 10
Database: SQLite
Node.js version: v16.15.0

Prisma Version
prisma               : 2.25.0
@prisma/client       : 2.25.0
Current platform     : windows
Query Engine         : query-engine c838e79f39885bc8e1611849b1eb28b5bb5bc922 (at<EMAIL_ADDRESS>
Migration Engine     : migration-engine-cli c838e79f39885bc8e1611849b1eb28b5bb5bc922 (at<EMAIL_ADDRESS>
Introspection Engine : introspection-core c838e79f39885bc8e1611849b1eb28b5bb5bc922 (at<EMAIL_ADDRESS>Format Binary        : prisma-fmt c838e79f39885bc8e1611849b1eb28b5bb5bc922 (at<EMAIL_ADDRESS>Default Engines Hash : c838e79f39885bc8e1611849b1eb28b5bb5bc922
Studio               : 0.402.0

Bonjour @Nathan-html 👋🏼
So this repository, https://github.com/Jolg42/prisma-workshop.git is now 2 years old 😅
The best would be to start with a recent version of Prisma, version 4.x, the most recent one is 4.7.0
And follow:
https://www.prisma.io/docs/guides/database/seed-database
Here is an example
https://github.com/prisma/prisma-examples/blob/285c1e85c607c8858338c30bc885117802ad40c8/typescript/testing-express/prisma/seed.ts
https://github.com/prisma/prisma-examples/blob/285c1e85c607c8858338c30bc885117802ad40c8/typescript/testing-express/package.json#L34
Would that work for you?


Question: Any docs, or howto's for creating custom translator?

Cause, you know, docs are great.

I know docs are great. Now i work for opportunities create configuration files for translator

@aleksey-satir also i want (and actualy could) to make plugin for python->go code, but i don't have any info about python code parsers into syntx tree.

When project at this stage be adapted for config file i write docs


Move to ember-fastboot org?

Since this is used quite a bit in the FastBoot world, maybe we could move this repo over into the ember-fastboot org.
@ronco - What do you think? If that makes sense to you, you can initiate transfer to me then I'll move it into the org. Also, you'll definitely still be an owner there too...

I'd be happy to have you take over @rwjblue . I tried to transfer, but it failed as you had an ember-cli-head repo already. Let me know how you'd like me to proceed.
Chners!

@ronco - I made you an owner over in ember-fastboot (you probably have to accept the invite), so you should be able to transfer now. I'll fixup the permissions after we get the repo moved...

Hey folks 👋 do you still want to transfer this to the fastboot org?

Hey @mansona ,
I've added you to npm and this repo on Github. I missed the invite window for fastboot, so I can't move it atm.  I'm happy to jump on that this time if you send me another invite (or maybe you can do it now that you're a collaborator?).

turns out that I don't have permissions to add you to the fastboot org 🙃 maybe you could transfer it to me or make me an owner here and I can transfer it to fastboot?

@mansona I can’t figure out how to make you an owner.  Collaborator seems to be the one and only permission level. Other ideas?

I guess the only thing to do is a) wait for me to get admin on ember-fastboot or b) transfer to me and I'll transfer it in

@mansona , alright, I sent a transfer request.

😫
Apparently repository transfer requests expire in about a day so I wasn't quick enough off the mark on that one. I understand there are safety concerns on things like this but 24 hours seems a bit too tight 😞
Can you send it again?

@mansona , alright, sent it again.
Cheers

Done! 🎉
Thanks for all that @ronco and sorry for all the complications 🙈


source_type confirm entries with latest global_atts document

As noted by @taylor13 the following changes are required:

Replace all occurrences of BGCM or BGM -> BGC
Replace all occurrences of ESM -> AOGCM BGC

For more information see the working google doc - v6.0.1

These changes were the outcome of a discussion mainly between Pierre Friedlingstein and Karl Taylor.  Here is why they are necessary:
Hi Pierre,
[Can't explain this very clearly, I'm afraid;  anyway please respond to the last paragraph if you can.]
Thanks for pointing out the potential confusion around referring to ESM's as either ESM or AOGCM + BGCM (depending on whether emission-driven or concentration-driven) in the CMIP6 data archive.
You suggested they both should be called ESM's, but this would require more complex logic in classifying  "model components" as being either "required" or "optional" in our experiment summary (see below).  The purpose of the summary table (where these source_types appear) is for use in checking that metadata have been correctly recorded in files and in publication on ESGF.  The metadata will be used in ESGF searches.  We want users to be able to limit a search to certain model configurations (e.g., AGCM, OGCM, AOGCM).
For each MIP experiment the summary will list which components are required and which are optional.  For example, in AMIP simulations the required component is: AGCM, but one may optionally also include "CHEM" and/or "AER".  I propose that we isolate identification of the biogeochemical model component (BGCM) from the AGCM and OGCM components, and for emissions-driven experiments, we would indicate this by required_components="AOGCM BGCM", whereas in concentration-driven experiments we would designate "required_components="AOGCM", optional_components="BGCM".
To be sure this table will just indicate the experiment specifications (which components are required and which are optional).  When you prepare your model output, one of the global attributes you must define is "source_type".  This should list all the components you actually included when configuring your model. If you run the historical experiment with an ESM model in  either emissions-driven mode or concentration-driven mode, you would set source_type="AOGCM BGCM" (and you might also include in source_type "AER", "CHEM" or other optional components).  A model that performs a historical simulation but doesn't include the carbon cycle would have source_type="AOGCM".
Anyway I don't think there will be any confusion if we invariably refer to a coupled model configuration that includes a carbon cycle model as "AOGCM BGCM" (both for emissions-driven and concentration-driven experiments).  Do you agree?
thanks,
Karl
Hi Karl,
Yes I fully agree, that's the way to go, no need for the ESM which is not uniquely defined.
It's also much more consistent with the existing AER and CHEM. These 3 suffixes refer to additional components to the physical model.
One minor suggestion: name it BGC, not BGCM, as you have AER and CHEM, not AERM and CHEMM.
Cheers
Pierre


Crash when clicking "e"

http://pastebin.com/90MYTazW

When I remove Aroma1997Core the crash stops I figured out.  So I don't know if that helps narrow it down.

Minecraft 1.10 crash http://pastebin.com/XbaTAHeh
that with also pressing e to view inventory closes minecraft back down to launcher
I was using JEI but there items do not show for some reason. So added this mod seen as was compatible with JEI but nope crashes

Its aroma1997core.  If you want to use NEI you will need to remove that mod until the crash is fixed.

It appears to be uncomplication after all.  When I remove that mod everything loads.  Its replacing recipes from ic2.  Should I report this to aroma?

Nah, ill poke him about it.

Please verify the issue in the latest builds from CB's site.

Seems to be fixed and works with uncomplication and all of aroma's mods.  Thanks so much Covers you are very awesome.  I notice the TE work ;)

Cheers, Check Lemmings tweets.. he tweeted a link.


[SDXL] Train SDXL refiner for subject generation

I've been using the scripts here to fine tune the base SDXL model for subject driven generation to good effect. However, I've found that adding the refiner step usually means that the refiner doesn't understand the subject, which often makes using the refiner worse with subject generation.
Currently the scripts do not support fine tuning the refiner to make generation better. When tuning the refiner, realistically we would only need to fine tune the text encoder, not the  u-net. If this ability was added, I think that would be very beneficial.

+1 for this!

Agree!  Training Refiner model is really important now if community want to get a good anime model like NAI. They must train a anime refiner, only base fine-tune is not enough.

+1 to this

I want this too

I want this too


add jitter to mqtt and http checkin

fixes #23
NOTES...
A new local class IntervalJitter was made to keep the logic changes in the main src to a minimum. By that I mean something capable of having an initial (lower) jittered delay (for 1st checkin) and then stable jitter centered around the desired "interval" +- jitter
Introducing jitter was surprisingly more difficult than I first envisioned - nothing in NPM suited my needs.  The majority of examples use this nested timeout pattern...
    start () {
        this.stopped = false
        const runner = () => {
            // Stop if this jitter was stopped.
            if (this.stopped) { return }
            const interval = addJitter(this.#min, this.#max)
            this.intervalTimer = setTimeout(() => {
                if (this.stopped) { return }
                this.#callback && this.#callback(this)
                this.#loopTimer = setTimeout(runner, 1)  // << **** nested timeout ****
            }, interval)
        }
        runner()
    }

Where every call ends up adding to the stack and over the course of time, the delay is never centered around the set "interval" delay.  In tests, most aproaches around the web and in npm end up miles off course.
The included solution uses a unique pattern to avoid this.
For example, the below code ...
const j1 = new IntervalJitter()
const timings = []
let first = true
j1.on('started', () => {
    console.log('started')
})
j1.on('interval', (t) => {
    if(!first) { timings.push(t) }
    console.log(`j1 @ ${t}ms`)
    first = false
})
j1.on('stopped', () => {
    console.log('stopped')
    console.log('Minimum delay :', Math.min(...timings))
    console.log('Maximum delay :', Math.max(...timings))
    console.log('Average delay :', timings.reduce( ( a, b ) => a + b, 0 ) / timings.length)
    console.log('Total delay   :', timings.reduce((a, b) => a + b, 0))
})
j1.start({interval: 1000, jitter: 200, firstInterval: 10, firstJitter: 100})
setTimeout(() => {  j1.stop() }, 10100)

results in a jitter centered firmly around the desired "interval" without filling the stack with nested setTimeouts...
started
j1 @ 18ms    << first delay is between 10 ~ 100ms as required
j1 @ 1007ms
j1 @ 1119ms
j1 @ 1062ms
j1 @ 1001ms
j1 @ 965ms
j1 @ 1033ms
j1 @ 920ms
j1 @ 1058ms
j1 @ 965ms
j1 @ 887ms   << subsequent delays all hover around 1000ms as requested
stopped
Minimum delay : 887ms
Maximum delay : 1119ms
Average delay : 1001.7ms
Total delay   : 10017ms

And the result of interval: 50, jitter: 50 over 10 secs ...
Minimum delay : 3
Maximum delay : 97
Average delay : 50.43434343434343
Total delay   : 9986

Can you update the readme with details of the default jitter behaviour and how it can be configured?

Can you update the readme with details of the default jitter behaviour and how it can be configured?

Hi Nick, do you mean the parent issue #23 or some other readme?

I mean the repo readme: https://github.com/flowforge/flowforge-device-agent/blob/main/README.md
If the jitter adds a new config option, it needs to be documented.

Can you update the readme with details of the default jitter behaviour and how it can be configured?

Resolved in cc403fb


Error handling

Problem: Currently most controller methods are wrapped in try-catch that redirects to the error page.
Solution: Propose creating an error middleware that handles all uncaught errors and redirects to error page.
Benefits: Code de-clutter (eliminate boilerplate code), safer execution (all errors get handled even if no try-catch)

@alexdrenea  Could you propose the solutioning on this on our internal chat please?


Consider in-memory state of data sources for reverts

Currently when a block is reverted, data sources that were created on it remain in memory and continue to process triggers until the node is restarted. This fixes that so that the runtime hosts of the reverted data sources are removed. To enable this fix the block reversion logic was moved from the block stream to the instance manager.
A test subgraph was built to reproduce this. Previously this assert would trigger on a revert https://github.com/leoyvens/ds-revert-in-memory-state/blob/main/src/mapping.ts#L27, now it works as expected. We should also run integration tests of this branch against itself and verify that all tests pass and there are no more random PoI differences.

I was able to set up an automated test for reorgs by utilizing the fail crate, which allows injecting fail points, through which tests can activate particular code paths that facilitate testing.

I was able to set up an automated test for reorgs by utilizing the fail crate, which allows injecting fail points, through which tests can activate particular code paths that facilitate testing.

@lutter I've addressed the comments and did a couple small refactors, could you take another look?

@lutter I've addressed the comments and did a couple small refactors, could you take another look?


Marking the movestatus/moveresourcerror properties as readonly.

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[ ] I commit to follow the Breaking Change Policy of “no breaking changes
[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[ ] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
Adding a new service

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from API Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[ ] Updating API in stable version with Breaking Change Validation errors
[ ] Updating API(s) in preview over 1 year

Please follow the link to find more details on PR review process.

/azp run automation - sdk

Breaking Change:
The service is in private preview, and we are doing this fixes/improvements as part of public preview that is tentatively planned on 23th September 2020.
Additionally our private preview customer do not use the API's directly instead rely on the portal for the usage.
We are also working on releasing auto generated PowerShell and SDK's so the swagger is being actively validated before public preview.
Breaking-change Reason:
The MoveResourceStatus and MoveResourceError are referred in the MoveResourceProperties  and are referred as read only using the following pattern.
        "moveStatus": {           "description": "Defines the move resource status.",           "allOf": [             {               "$ref": "#/definitions/MoveResourceStatus"             }           ],           "readOnly": true         },
However, due to a bug in PowerShell auto generation, it is not respecting the readOnly field, so a workaround is suggested to mark the individual properties of the MoveResourceStatus and Errors as read-only as well.

Rule
Message

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L932:5Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L932:5

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1547:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1543:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L983:5Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L982:5

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L999:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L997:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1002:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1000:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1013:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1010:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1002:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1000:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1547:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1543:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1552:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1547:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1557:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1551:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1562:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1555:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1552:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1547:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1557:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1551:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1562:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1555:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1562:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1555:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1022:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1019:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1547:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1543:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1552:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1547:9

❌ 1029 - ReadonlyPropertyChanged
The read only property has changed from 'false' to 'true'.New: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1557:9Old: Microsoft.Migrate/preview/2019-10-01-preview/regionmovecollection.json#L1551:9

Approved breaking changes since this is a preview api-version within one year

Hi @innosam this PR LGTM, please let me know if this is good to merge, thanks

Hi @innosam this PR LGTM, please let me know if this is good to merge, thanks

Thanks, please go ahead and merge.

/azp run automation - sdk


Can't be able to use both exponential notation and decimal places rounding

Hello!
I'm trying to configure the BigNumber in that way that only displays two decimal places and display exponential at 5 digits, but as in the docs, if I use "toString()" without providing the base, the EXPONENTIAL_AT configuration is applied, if I use "toString(10)", the DECIMAL_PLACES configuration is applied, but I can't use both. I would like to be able to use both configurations, but I don't know if is possible. If it is, is a bit confusing on how is documented that.
Currently, I'm using this configuration:
BigNumber.config({ DECIMAL_PLACES: 2, EXPONENTIAL_AT: 5 });

I'm not inclined to walk you through this - this kind of question would be better asked on a site like stackoverflow - but generally toFixed and toExponential are used to display to two decimal places, or use decimalPlaces(2) and then call toString. See also 'toFormat'.
There are plenty of options, it is just a case of reading the docs and experimenting.