Cargo isn't able to find the spin-sdk crate during build

Hello folks!
I was trying out the containerd-shim-spin quickstart and while building the container image,  the below error message was thrown:
 => ERROR [build 4/4] RUN rustup target add wasm32-wasi && cargo build --target wasm32-wasi --release                                                          459.5s
------
 > [build 4/4] RUN rustup target add wasm32-wasi && cargo build --target wasm32-wasi --release:
0.187 info: downloading component 'rust-std' for 'wasm32-wasi'
15.78 info: installing component 'rust-std' for 'wasm32-wasi'
17.35     Updating crates.io index
423.7     Updating git repository `https://github.com/fermyon/spin`
459.4 error: no matching package named `spin-sdk` found
459.4 location searched: https://github.com/fermyon/spin?tag=v2.0.1#1d72f1c4
459.4 required by package `qs-wasm-spin v0.1.0 (/opt/build)`

I'm running spin v2.0.1
spin --version
spin 2.0.1 (1d72f1c 2023-11-10)

The list of plugins that I have are:
 spin plugins list
check-for-update 0.0.1
check-for-update 0.1.0
cloud 0.1.0
cloud 0.1.1
cloud 0.1.2
cloud 0.2.0
cloud 0.3.0
cloud 0.4.0
cloud 0.4.1
cloud 0.5.0
cloud 0.5.1 [installed]
cloud-gpu 0.1.0
js2wasm 0.1.0
js2wasm 0.2.0
js2wasm 0.3.0
js2wasm 0.4.0
js2wasm 0.5.0
js2wasm 0.5.1
js2wasm 0.6.0
js2wasm 0.6.1 [installed]
k8s 0.1.0 [installed]
pluginify 0.6.0
py2wasm 0.1.0
py2wasm 0.1.1
py2wasm 0.2.0
py2wasm 0.3.0
py2wasm 0.3.2 [installed]

Other details:

I'm running this on my Mac (M1 chip), but I've also tried this out on Ubuntu.
Docker Desktop version 4.25.2 and I have also enabled the beta feature for running wasm.

Also, FWIW here's the content of the Dockerfile generated
FROM --platform=${BUILDPLATFORM} rust:1.59 AS build
WORKDIR /opt/build
COPY . .
RUN rustup target add wasm32-wasi && cargo build --target wasm32-wasi --release

FROM scratch
COPY --from=build /opt/build/target/wasm32-wasi/release/qs_wasm_spin.wasm .
COPY --from=build /opt/build/spin.toml .

The funny part is the cargo build command works like a charm during a normal spin build command outside of containers and is able to find the spin-sdk.   I was able to reproduce as well.
I think the issue is due to Spin's minimum declared Rust version, which is currently 1.71.  When I updated the first line of the Dockerfile to FROM --platform=${BUILDPLATFORM} rust:1.71 AS build, it was able to build.  Would you mind trying this when convenient?
Also, as you've probably noticed from the quickstart, the Dockerfile image approach is just one (older) way of running the Spin app in k8s.  Now that Spin natively uses OCI registries for distribution of apps, you can go straight to spin registry push once your app is built; no need for a wrapping container image.
I'm seeing a few things in the linked Quickstart that could use updates, so thanks again for relaying your experience and I'll create a PR upstream soon.

Absolutely! Do you think this could be explicitly mentioned somewhere in the Quickstart? I realize that the version number cannot be static lol, but just saying that Spin has this minimum declared dependency and the version of rust, at any point in time, must be cross-checked against this version?  I'm happy to submit a PR/raise an issue for that against the Quickstart, if needed!

@divya-mohan0209 I put up a PR with some of the things you've spotted, including the Rust version here: https://github.com/deislabs/containerd-wasm-shims/pull/188.  Would definitely appreciate your taking a look and trying things out to see if there are still some places to update.  Thanks!

So, I'm happy to report that the build works.
However, when I deploy it to the k3d cluster, the pod creation fails with an error:
no match for platform in manifest: not found.
I even tried running it just as a normal container using Docker but ended up with the same error. I cross-checked with the Dockerfile of the spin images that are used for the example deployment and the entries for the Rust-based deploy seem to be identical.

@divya-mohan0209 Do you know which version of the shim you have in the k3d cluster?  It's a bit hard to tell from the containerd-wasm-shims quickstart.  There's a Discord thread (https://discord.com/channels/926888690310053918/1122332926244294806/1124380791846219886) where this happens when the manifest format is newer than the shim can handle, although I'm pretty sure the shim has been updated very recently.  @Mossaka is probably the expert on this.

@itowlson I will have to check my notes although in the Quickstart itself, there seems to be an indication of the version of spin-shim that's being used and it's a little different from the one you have on the Spin docs listed under the k3d section. FWIW, in the cluster I'm running, I did run by the Quickstart (i.e.the first option) and that does seem to be the latest.

@divya-mohan0209 I've raised an issue for the different versions.  It looks like the shim quickstart was updated within the last hour to new versions; the previous one looks quite old but I'm not sure how k3d image versions map to shim versions...!

Thanks @itowlson ! I'll try out the new quickstart guide right now & get back to you :)

@divya-mohan0209 checkin in on this one.  The containerd-shim-spin project has since migrated to https://github.com/spinkube/containerd-shim-spin and an updated quickstart exists at https://www.spinkube.dev/docs/spin-operator/quickstart/.  Wondering if you'd be interested in trying the new shim/quickstart at some point?
If any issue arise, can you please file in the https://github.com/spinkube/containerd-shim-spin repo?  Thank you!

@vdice : I'm so sorry I dropped the ball on this! I'd definitely like to provide feedback. But I'd also be able to do so after KubeCon.

@divya-mohan0209 no worries, thanks so much!  Enjoy KubeCon :)


python311Packages.influxdb-client: 1.36.1 -> 1.37.0

Diff: https://github.com/influxdata/influxdb-client-python/compare/refs/tags/v1.36.1...v1.37.0
Changelog: https://github.com/influxdata/influxdb-client-python/blob/v1.37.0/CHANGELOG.md
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 247199 run on x86_64-linux 1

5 packages built:

home-assistant-component-tests.influxdb
python310Packages.influxdb-client
python310Packages.influxdb-client.dist
python311Packages.influxdb-client
python311Packages.influxdb-client.dist


[Rule] Calling keyword outlook should follow keyword definition outlook

What happened?
Rule to keep keyword calling outlook in line with the keyword definition:
*** Settings ***
Library           String

*** Test Cases ***
Calling Keywords
    ${CAPS}  Set Variable  NOLOWERCASEHERE
    # From String library 'Convert To Lower Case' keyword
    ${low}   Convert To Lower Case  ${CAPS}
    # Following should warn/info
    ${low}   ConvertTo Lower Case   ${CAPS}
    ${low}   ConvertToLower Case    ${CAPS}
    ${low}   ConvertToLowerCase     ${CAPS}
    ${low}   Convert ToLower Case   ${CAPS}
    ${low}   Convert To LowerCase   ${CAPS}

Operating System
Linux
Robocop version
1.10.0

To verify - do you mean that we should check if the same naming convention is used across the same scope? For example if the same keyword is used at the beginning of the keyword it should use the same name:
My Keyword    ${arg}
My_Keyword    ${arg}  # warns that we don't follow the same naming
My Keyword    ${arg}  # fine
My keyword    ${arg}  # warns that we don't follow the same naming

OR rather it's about checking the definition of the keyword (Convert To Lower Case for example) and veryfing if it's used the same as in the library definition? This would be bit more dynamic checks and for most of the libraries wouldn't be possible to implement in the Robocop (without initializing your project we don't know your libraries etc). But it could be possible for built in libraries as bare minimum.

It is more like the latter:

OR rather it's about checking if the keyword call uses the same name convention as library definition? This would be check that requires context reading and for most of the libraries wouldn't be possible to implement in the Robocop (without initializing your project we don't know your libraries etc). But it could be possible for built in libraries as bare minimum.

Indeed, this blurs the line of static analysis. This RF behavior is a bit annoying from the maintenance point of view. Searching various possible keyword 'outlooks' across the code is a bit painful.
    Hit Homepage
    Hit Home page

The rule would be useful, but implementation would be troublesome and with many pitfalls...

Since this rule candidate requires reading the context (e.g. importing all libraries and reading all files from the project), it's out of the scope for this tool. Although, we are currently thinking about creating a centralized place for community rules (#809), and this rule may end up there, eventually.
Closing.


found integer overflow bugs

found integer overflow bug
by source code audit,i just found integer overflow at function load(...) which return pointer on mmap address.
var offset and size can assumed as u64
so in this case, if offset and size big enough,it may cause Addition overflow and return a pointer points to invalid address.
mmap_loader.cc:48:
        const void *load(off_t offset, size_t size)
        {
                if (offset + size > lim) //         integer overflow here
                        throw range_error("offset exceeds file size");
                return (const char*)base + offset;
        }

here a sample:
a.zip
which i just modify the offset of program_head to -1(0xffffffffffffffff)
$readelf -h a
ELF Header:
  Magic:   7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF64
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Advanced Micro Devices X86-64
  Version:                           0x1
  Entry point address:               0x401040
  Start of program headers:          -1 (bytes into file)    //  modify offset here
  Start of section headers:          23000 (bytes into file)
  Flags:                             0x0
  Size of this header:               64 (bytes)
  Size of program headers:           56 (bytes)
  Number of program headers:         13
  Size of section headers:           64 (bytes)
  Number of section headers:         31
  Section header string table index: 30
readelf: a: Error: Reading 728 bytes extends past end of file for program headers

use ./dump-segments a

and this is a batch problem at elf.cc which cause segmentation violation
elf/elf.cc
  70,44:         } *core_hdr = (struct core_hdr*)l->load(0, sizeof *core_hdr);
  87,30:         const void *hdr = l->load(0, hdr_size);
  97,35:         const void *seg_data = l->load(m->hdr.phoff,
  105,35:         const void *sec_data = l->load(m->hdr.shoff,
  191,46:                 m->data = m->f.get_loader()->load(m->hdr.offset,
  270,46:                 m->data = m->f.get_loader()->load(m->hdr.offset, m->hdr.size);

An attacker can exploit this vulnerability by submitting a malicious elf file that exploits this bug which will result in a Denial of Service (DoS).

This issue appears to have CVE-2023-24180 assigned.

https://gcc.gnu.org/onlinedocs/gcc/Integer-Overflow-Builtins.html
Making use of these might help?


Added Support for Characterset for each Database

The characterset and the ncharacterset can be defined for each database.
The old defaults are still used, until the parameter has been defined in
oracle_databases.
Example:
  oracle_databases:
    - home: db_home1
      oracle_db_name: ORCL
      characterset: WE8MSWIN1252
      ncharacterset: AL16UTF16

Merged - Thanks!


ReadTheDocs: Rename latest to stable and master to unstable

If that's possible.

Not currently possible. There is an open issue against rtfd to support version renaming

The intent behind this was that by default the visitor is sent to the latest stable release. I think I got that  working.


How to hide the "Edit this page" button for the API Docs?

The 'Edit this page' button is not functioning for the API docs pages as it redirects to a non-existent Github URL. This is because these pages are dynamically generated and do not reside in the repository. I simply want to hide that button on those specific pages. To accomplish this, I have attempted to use a short JavaScript snippet in my _static/custom.js file. However, the snippet doesn't seem to work as expected. Here's the code I'm currently using:
var githubPath = document.querySelector("div.tocsection.editthispage a").href;
var dirNames = githubPath.split('/');
if (dirNames.includes('apidoc') == true ) {
    var tocSection = document.querySelector("div.tocsection.editthispage");
    tocSection.style.display = "none";
      }

I would appreciate any assistance in resolving this issue.

The 'Edit this page' button is not functioning for the API docs pages as it redirects to a non-existent Github URL

already reported in #1237 (which will be fixed by #1246).

This is because these pages are dynamically generated and do not reside in the repository.

not exactly. It's because the commits for those pages aren't at the tip of a branch in the git history, and GitHub only allows the edit interface at branch tips. (try switching edit to blob in the URL and you'll see the pages exist on GitHub).

I simply want to hide that button on those specific pages. To accomplish this, I have attempted to use a short JavaScript snippet

I'll leave this issue open in case someone has time to help with the Javascript (I'm swamped at the moment, sorry).  Would you be OK if the links just worked and pointed to an edit interface of the page on current main instead?  If so I'll mark this to be closed by #1246

Thanks @drammock.
My case was a little different (my bad. I didn't give enough details, sorry). The API docs pages I'm referring to are generated from a Python script in conf.py. So those pages do not reside in the repository, that's why the edit button is not needed there.
I'll close this because the Javascript code worked for me. It wasn't working because I forgot to add the path in conf.py.


Granular Configuration

ISSUE TYPE

Feature request

SUMMARY
I keep seeing more and more feature requests for things that include very granular settings per project. (i.e.: having custom TLDs per project, different php versions per project, etc....)
I had an idea and wanted to share it with you in case it was helpful:
This level of setting is more than a env file and docker-compose.yml file can handle. But if you had an extra set of configuration that could be per project you might be able to open up a larger number of possible configurations.
i.e.:
global.yml:
  _default:
     - TLD
     - phpversion
     - docroot
     - ....
  site1:
     - domain
     - phpversion
     - docroot
     - ....
  site2:
     - domain
     - phpversion
     - docroot

Or possibly a config.yml file in each project to make it easier to configure each project seperately.
Then the bind server, and the web server would be able to parse these files and do more specific settings.
Goal
Make Devilbox easier to customize critical settings on a per project basis.
Remove the limitation of 1 global env / docker-compose.yml file.
Let me know if you would like me to clarify anything about this concept. And if its to complicated, shrug. I just thought I'd share it.
Thanks for all the work you put into this.

And if you had this type of config, you could also use it to register custom container with the devilbox intranet so it could give status checks on those other services.

Sounds like a good plan. Will probably require some heavy relifting of the webserver's internals. So I will have a more close look into this one once release v1.0.0 is out.

Configuring devilbox is super easy and intuitive, except for those custom vhost settings. In my case it's usually changing the DOCROOT from / to /public/ or something similar.
Would be huge if we wouldn't have to touch the full vhost template for those settings. 👍


remove typescript from package json, update ts files to js

Description
Removed Typescript. This includes deleting TS dependencies from package.json, in addition to updating file names TS to JS, and removing the TS config file.
Fixes # (11)
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ X] This change requires a documentation update (no longer using Typescript)

Instructions

Run npm i
Run npm start
See that there are no warnings/errors
Browse through files to ensure there are none ending in '.ts'

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

after running npm i + npm start, I ensured there are no warnings or errors coming up

Checklist:

[X ] My code follows the style guidelines of this project
[ X] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[X ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

just removed any references to TS in eslint 👍 in mangrove atlas it looks like they don't reference prettier, so i'm unsure how this config change will impact the other prettier setup we have (including the lint-staged/husky setup). I think I will leave that part for now so I can take a closer look.


[Mssql 2012] Create entity for view

Hello!
I created view in my db and orm file for it.
Entity\Mssql\Myview:
    type: entity
    table: MyView
    readOnly: true
    id:
        id:
            type: guid
            nullable: false
            length: null
            fixed: false
            id: true
            column: Id
    fields:
        name:
            type: string
            nullable: false
            length: 1024
            fixed: false
            column: Name
        entity:
            type: string
            nullable: false
            length: 12
            fixed: false
            column: entity

but when i run
php app/console doctrine:schema:update --dump-sql

generated sql query for create this table. Problem in vendor/doctrine/dbal/lib/Doctrine/DBAL/Platforms/SQLServerPlatform.php in getListTablesSQL and getListTableColumnsSQL in this function select object with type 'U' this phisycal table, view has type = 'V'. This class also has getListViewsSQL method, but i can not find where it using. How i can say doctrine that my entity is view?

Is there anyone alive?

@Slavenin doctrine doesn't understand views at all.

Ok, but why SQLServerPlatform contains methods for work with views? Perhaps i can create new orm type for view? Something like:

@postHawk the schema manager can create views, if needed, but the ORM only deals with tables, for now


Inconsistent behaviour of IN with Enums

Use case
CREATE TEMPORARY TABLE enums (x Enum8('hello' = 0, 'world' = 1));
SELECT x = 0 FROM enums;
SELECT x = 'hello' FROM enums;
SELECT x IN ('hello', 'world') FROM enums;
SELECT x IN (0, 1) FROM enums; -- Type mismatch in IN or VALUES section. Expected: Enum8('hello' = 0, 'world' = 1). Got: UInt64.

That is very important for backward compatibility after #6265.
select * from system.query_log where event_date>=yesterday() and event_time > now() - 160 and query_id='check2' and type in (2,4)

Received exception from server (version 19.15.1):
Code: 53. DB::Exception: Received from localhost:9000. DB::Exception: Type mismatch in IN or VALUES section. Expected: Enum8('QueryStart' = 1, 'QueryFinish' = 2, 'ExceptionBeforeStart' = 3, 'ExceptionWhileProcessing' = 4). Got: UInt64.

@filimonov That's exactly how I found this issue.

look here


Upgraded to schemas from specs-v1

connects #150

upgraded to https://specs.frictionlessdata.io/schemas/table-schema.json from specs-v1
implemented apply defaults to descriptor (https://github.com/frictionlessdata/stack/issues/4)

fixes #32

schemas now can't be out-dated

@pwalsh
please review

Thanks


Handle cert renewal correctly

See #3897 for context.
This PR changes cert's renewBefore period to be calculated as min(renewBefore, cert duration / 3) where renewBefore is either cert.spec.renewBefore or 30d.
It fixes a bug, where when cert's duration is very slightly longer than the renewBefore period, we enter a renewal loop.
This has so far hit a number of Vault issuer's users.
The bug:
See the below section of cert status:
nextPrivateKeySecretName: example-com-l2g4c
  notAfter: "2021-06-06T09:06:50Z"
  notBefore: "2021-05-07T09:06:20Z"
  renewalTime: "2021-05-07T09:06:50Z"
  revision: 185

See these functions where we calculate renewal time.
This cert has defaultRenewBefore=30d, actualDuration=30d30s, which means that we return 30d as the renewBefore time here.
We then calculate renewal time here.
In this case the renewal time it will be cert.spec.NotAfter - 30d resulting in renewal time 30s from now and we start renewing every 30s (when I tested this, every cert issued by Vault had the duration with the extra 30s).
Fixes cert renewal bug for Vault certificates with duration close to renewBefore period. Thanks to @andreas-p for raising the issue.

This PR is based on #4031 , but also refactors the renewal functionality so that these kind of bugs can be more easily spotted in future. I have added two test cases for these error cases and tested with an actual Vault instance.
Fixes #3897
Signed-off-by: irbekrm<EMAIL_ADDRESS>

/kind bug

/lgtm
Thanks! This fixes the bug and also makes the code and tests clearer.


Social Icons and Background design not showing up in deploy version

Social Icons and Background design in the welcome section of the from page shown in the development version but not in deploy version

Social icons solve in https://github.com/Frankazo/frankazo.github.io/commit/05f65297f025900b6b9d7161a1aa102c21c124b3


Show "execute:" description when running executes commands

Currently, the command description when running the execute command during the build is just the command itself. This PR changes the CMake COMMENT for the custom target/command so that while the execute command is run the user-given description is shown instead of the raw command.
This makes the build output look a bit cleaner. The output isn't perfect since the description is present in the cbuild-idx.yml in a mangled form to be suitable for a CMake target name. For perfect user experience that should probably be a human-readable name including spaces.
Example
  executes:
    - execute: Generating foobar source
      run: python $input(0)$ $input(1)$ -o $output(0)$
      input:
        - scripts/generate.py
        - src/foobar.in
      output:
        - src/foobar.c

Current Output
[2/11] cd /path/to/project/tmp && python /path/to/project/scripts/generate.py /path/to/project/src/foobar.in -o /path/to/project/src/foobar.c

New Output
[2/11] project+context-Generating_foobar_source

Optimal Output
[2/11] project+context: Generating foobar source

@EaselinkBachmann, thanks a lot for your proposal and PR. You feedback about the execute identifier vs. description is valid and is something to clarify in the specification.
Probably having an ID with a restricted character set suitable for Makefile targets versus a separate description is something to think about.

Thanks! I didn't notice the unit tests. I updated the tests in the latest push to contain the new executes CMake COMMENT.


removed unnecessary charactor on readme's sample code.

I found an unnecessary charactor on readme's sample code.
So I removed it.

LGTM

Thanks for your contributes.


egctl support /logging

Description:

Enable/disable logging levels for different loggers in envoy proxy.

[optional Relevant Links:]

https://www.envoyproxy.io/docs/envoy/latest/operations/admin.html#post--logging

i think it'd be really nice to have something similar to istio's proxy-config log command

it's in the original design, but was removed because of cannot make an agreement.
proxylogging will help, but it would be better we can do it on the fly.

i think it'd be really nice to have something similar to istio's proxy-config log command

Actually, you can use istioctl to that:
istioctl pc log envoy-default-eg-e41e7b31-7bc75b798f-nr9cn.envoy-gateway-system log --level debug --proxy-admin-port 19000

terrific!  hadn't thought of that.  thanks!

the other istioctl proxy-config commands (e.g. routes) appear to also work.


VS2015 options missing

I cant find the colour options, eg, LogCustom1 in tools options in VS2015?
the default colour for warnings makes it almost unreadable.

I have the same problem, even after uninstalling/reinstalling the extension. If I get a chance I'll try to help track it down

Moved colors in beta 1 to VSColorOutput options window.


<EMAIL_ADDRESS>does not satisfy its siblings' peerDependencies requirements

I'm trying to do npm install in an ubuntu xenial lxc machine with node 4.4.4, but it fails because there is a conflict with the depedencies:
npm --cache-min=Infinity install
npm WARN peerDependencies The peer dependency<EMAIL_ADDRESS>included from karma-qunit will no
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly.
npm WARN deprecated<EMAIL_ADDRESS>'native-or-bluebird' is deprecated. Please use 'any-promise' instead.
npm WARN deprecated<EMAIL_ADDRESS>Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN optional dep failed, continuing<EMAIL_ADDRESS>npm WARN deprecated<EMAIL_ADDRESS>Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
/

<EMAIL_ADDRESS>postinstall /root/parts/impressjs/build/node_modules/karma-sauce-launcher/node_modules/sauce-connect-launcher
node scripts/install.js

npm ERR! Linux 4.4.0-38-generic
npm ERR! argv "/root/parts/impressjs/install/bin/node" "/root/parts/impressjs/install/bin/npm" "--cache-min=Infinity" "install"
npm ERR! node v4.4.4
npm ERR! npm  v2.15.1
npm ERR! code EPEERINVALID
npm ERR! peerinvalid The package<EMAIL_ADDRESS>does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! Please include the following file with any support request:
npm ERR!     /root/parts/impressjs/build/npm-debug.log

Have you tried running on node 6? Our dev environment doesn't have big node support, maybe it's worth documenting it.

Do you mean node 4.6? That failed with the same error.

Do you mean node 4.6? That failed with the same error.

No, node 6.

ah, right, sorry for being dense :)
That works indeed. Thank you!

I have created an issue to document the node version, so that this kind of issue doesn't happen anymore, see https://github.com/impress/impress.js/issues/589.
Thanks!


feature-wip Template for building internal query SQL statements

Proposed changes
Template for building internal query SQL statements，it mainly used for statistics module. After the template is defined, the executable statement will be built after the given parameters.
For example, template and parameters:

template: SELECT ${col} FROM ${table} WHERE id = ${id};,
parameters:  {col=colName, table=tableName, id=1}
result sql:  SELECT colName FROM tableName WHERE id = 1;

usage:
String template = "SELECT * FROM ${table} WHERE id = ${id};";
Map<String, String> params = new HashMap<>();
params.put("table", "table0");
params.put("id", "123");

// result: SELECT * FROM table0 WHERE id = 123;
String result = InternalSqlTemplate.processTemplate(template, params);

Issue Number: close #xxx
Problem summary
Describe your changes.
Checklist(Required)

Does it affect the original behavior:

[ ] Yes
[ ] No
[ ] I don't know

Has unit tests been added:

[ ] Yes
[ ] No
[ ] No Need

Has document been added or modified:

[ ] Yes
[ ] No
[ ] No Need

Does it need to update dependencies:

[ ] Yes
[ ] No

Are there any changes that cannot be rolled back:

[ ] Yes (If Yes, please explain WHY)
[ ] No

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

review plz @morrySnow

Besides, I'm not sure whether simply use regex to do the mach and replace would lead to the SQL injection or this problem could be tolerant since Doris is normaly used as a internal service

add label area/statistics and project plz @morrySnow


prevent frequent page reloads due to favorites/room reservation updates

won't fix; all is better with PWA :)


Update root dir const for -m usage

Without this, it is possible for local override files not to be detected and for the fall back to be used in error.

However doesn't that mean that you have to provide local overrides? The current working directory should never be the one where this package is installed as a library.

I have gone on the initial assumption that you run the command in the same directory as the local override file(s) (as you currently would if you were running pylint and flake8 manually). I could add a command line option to define the local files location if required in the future, but I was trying to avoid adding unnecessary options that the user would have to know about.
You don't need to provide any local overrides at all, our defaults will be used if it cannot find the local files.


Gh-3129: FileGraphLibrary empty Schema fix

Related issue

Resolve #3129

In addition to these changes, I also plan to add a test which reproduces the problem identified in the issue. This won't improve coverage but will help ensure future changes don't reintroduce a problem.


Add call wrapper

This should behave like the other functions - wrapped errors and timeout handling.

The Windows failures are expected, unfortunately.  mdx doesn't work properly on Windows yet.


Fix false positive with value argument list has lambda (indent)

Description

Fixes #764
Checklist

[x] tests are added
[x] CHANGELOG.md is updated

thank you!


Clone a particular branch

There doesn't appear to be a way to specify a particular branch that you can clone when you use Repository::clone.
Also, it does not appear that there is anyway to change the current branch of the repository.

You can use Mercurial::Shell.run and add an extra option -b. E.g.
Mercurial::Shell.run(["clone ? ? ?", "-bmy_branch", "file:///home/bozydar/workspaces/example-repo", "/tmp/example-repo-clone/"], :append_hg => true)


Revert "Dummy Markdown change"

Reverts Expensify/Expensify.cash#2867
Used for testing https://github.com/Expensify/Expensify.cash/pull/2329

🚀 Deployed to staging in version: 1.0.43-9🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production in version: 1.0.44-0🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Fix issues preventing installing dependencies for web development

https://github.com/nimblehq/laptop/issues/??
What happened
Describe the big picture of your changes here to communicate to the team why we should accept this pull request.
Insight
Describe in details how to test the changes, which solution you tried but did not go with, referenced documentation is welcome as well.
Proof Of Work
Show us the implementation: screenshots, gif, etc.

Thanks for this!
Do you think you can also add the ulimit -n 1024 command before Erlang is installed, and maybe ulimit -n 256 once the installation is completed?
I ran the script and the next error that popped up was fatal error: cannot open file ... Too many open files.
The solution was to run the ulimit command and re-run the script.

Do you think you can also add the ulimit -n 1024 command before Erlang is installed, and maybe ulimit -n 256 once the installation is completed?

@breenatheseira I'm on the fence about forcing developers into this configuration. I'd prefer to let the developers be aware of occasional errors and how to solve them rather than force them.  I want to add a try/catch code to show error messages and suggestions for solving them more clearly.


xrdp doesn't work with wildcard SSL certificates

When using a wildcard certificate, the connection can't be established.
Here is a logfile extract using DEBUG loglevel:
[20210325-16:37:40] [DEBUG] TLSv1.3 enabled
[20210325-16:37:40] [DEBUG] TLSv1.2 enabled
[20210325-16:37:40] [DEBUG] Security layer: requested 11, selected 1
[20210325-16:37:43] [DEBUG] Closed socket 12 (AF_INET <IP_ADDRESS>:3389)

Not very helpful i'm afraid.

Thanks for the report @neuhaus
Can you give us a text dump of some fields of your public cert (i.e. using openssl x509 -noout -text). It'll save a bit of time. We don't need it all, but please include the validity, subject, SANs, Key Usage and Extended Key Usage fields. We can then try to re-create the issue.

Also, if you're trying to use ECC see #1776. Versions of xrdp up to and including v0.9.15 can only handle RSA certs.

I can provide this information on Monday, thanks for looking into it.

we use wildcard certs without problem since several years, the details are perhaps related to ECC

Here is the certificate info:
`# openssl x509 -noout -text< server_chained.crt
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
...
Signature Algorithm: sha256WithRSAEncryption
Issuer: C = US, O = DigiCert Inc, OU = www.digicert.com, CN = RapidSSL RSA CA 2018
Validity
Not Before: Jun 30 00:00:00 2020 GMT
Not After : Jul  1 12:00:00 2022 GMT
Subject: CN = *.domain.de
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public-Key: (2048 bit)
Modulus:
...
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Authority Key Identifier:
keyid:...
        X509v3 Subject Key Identifier:
            ...
        X509v3 Subject Alternative Name:
            DNS:*.domain.de
        X509v3 Key Usage: critical
            Digital Signature, Key Encipherment
        X509v3 Extended Key Usage:
            TLS Web Server Authentication, TLS Web Client Authentication
        X509v3 CRL Distribution Points:

            Full Name:
              URI:http://cdp.rapidssl.com/RapidSSLRSACA2018.crl

        X509v3 Certificate Policies:
            Policy: 2.16.840.1.114412.1.2
              CPS: https://www.digicert.com/CPS
            Policy: <IP_ADDRESS>.2.1

        Authority Information Access:
            OCSP - URI:http://status.rapidssl.com
            CA Issuers - URI:http://cacerts.rapidssl.com/RapidSSLRSACA2018.crt

        X509v3 Basic Constraints:
            CA:FALSE
        CT Precertificate SCTs:
            Signed Certificate Timestamp:
                Version   : v1 (0x0)
                Log ID    : ...
                Timestamp : Jun 30 07:..:... 2020 GMT
                Extensions: none
                Signature : ecdsa-with-SHA256
                            ...
            Signed Certificate Timestamp:
                Version   : v1 (0x0)
                Log ID    : ...
                Timestamp : Jun 30 07:..:... 2020 GMT
                Extensions: none
                Signature : ecdsa-with-SHA256
                            ...
            Signed Certificate Timestamp:
                Version   : v1 (0x0)
                Log ID    : ...
                Timestamp : Jun 30 07:..:... 2020 GMT
                Extensions: none
                Signature : ecdsa-with-SHA256
                            ...
Signature Algorithm: sha256WithRSAEncryption
     ...

`
Hope it helps!

Thanks.
Your cert looks OK to me.
As @moobyfr says, wildcards should be fine. As a TLS server, we simply present the certificate(s), and it's up to the client as to what the client does with them. I'll freely admit that our error reporting in this area is poor.
One important question springs to mind.  If you aren't try appending the intermediate cert to your wildcard cert in the certificate file.
A couple of other debugging tips for you:-

if you're able, use remmina/freerdp from the command-line to attempt a connection. You may get better error reporting that what's available from our side.
Wireshark is able to find the TLS handshake in the RDP protocol datastream, despite the handshake not occurring at the start. You should be able to see the certificate chain (intermediate ~+ wildcard) in the output.

Please let us know if that's useful. If not, we'll try to figure out some other way to get your certificate working.

In the absence of any other information, I'm pegging this to be closed by a PR submitted for review.


obfusticate apikeys, passwords, sensitive info from logs

When the broker starts up it parses the templates, and possibly apikeys or other sensitive information can show up in the logs.
By default, we should prevent this behavior.
For this issue, please address and also investigate how we could support a way to override this suppression of sensitive data. Since we have advanced features around multi-apikeys and templates, I think that during testing and learning users may need to view this info in the logs for debugging - so it would be good to have a way to not prevent that.
Possibly just masking api-keys, e.g. "XXXX-XXX-XXXXX-si0914j" or something like credit card with only last "4 digits".
Here is example log entry with this issue:
{"level":"info","ts":1594294123.2600162,"caller":"broker/services.go:233","msg":"context to execute template","ctx":{"project":{},"cluster":{},"Credentials":{"projects":null,"orgs":{"5ea0477597999053a5f9cbec":{"id":"mykey","desc":"testOrg","roles":[{"orgId":"5ea0477597999053a5f9cbec"}],"privateKey":"d7cf7772-fe56-4033-9a8d-1825432d51ef","publicKey":"CTWZPIFJ"}},"broker":{"username":"adminx","password":"adminx","db":"mongodb+srv://tester:MongoDB2020@statestorage-mytsp.mongodb.net/admin?retryWrites=true&w=majority"}}}}

moving to sprint 3 bug fixes

Complete


chore: Update Dependabot/Renovate to reach Made for UDS

Describe what should be investigated or refactored

Make sure Zarf packages, UDS bundles, etc. are actually tracked by the bot and automatically open PRs. If Dependabot doesn't support this, then checkout Renovate.

Links to any relevant code
https://github.com/defenseunicorns/uds-common/blob/main/docs/uds-package-practices.md
Additional context
Add any other context or screenshots about the technical debt here.

Example renovate config: https://github.com/defenseunicorns/uds-common/blob/main/config/renovate.json5


Whether extension works in local environment or not

Hello. I’m wiring to you to confirm whether this extension can work without importing/exporting libraries or codes.
Our team has limitations that “Do not transmit data with any server in Internet” except for installing extension itself or visit website with users intention. As I searched repository, there seems no track about importing/exporting. This extension works alone, right?
Regards.

@mekua-jp
Yes. This extention works alone.

Thanks.


channel page does not reflect following data (until followed list is loaded)

I went to a channel from my notifications and it gave me the option to follow, but I was already following. After I loaded the following page, then it showed the right status.

Fixed.


pythonPackages.lookatme: reintroduce at 2.5.0

Description of changes
Add lookatme, an interactive, extensible, terminal-based markdown presentation tool.
It got removed earlier this year in PR #170162 due to a Python2 dependency with click version 7.
The dependencies got relaxed, so click version 8 is now allowed as well.
I added the former maintainer @AmeerTaweel to lookatme's maintainers as well as myself as I've been using it now and then recently.
I also added tests. It builds fine on x86_64-linux, and I'll test building on x86_64-darwin soon as well.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

closes https://github.com/NixOS/nixpkgs/issues/208969

Result of nixpkgs-review pr 209302 run on x86_64-linux 1

2 packages marked as broken and skipped:

python310Packages.hug
python39Packages.hug

1 package failed to build:

python39Packages.lookatme

72 packages built:

ansible-doctor (python310Packages.ansible-doctor)
apache-airflow (python310Packages.apache-airflow)
esphome
faraday-agent-dispatcher
flashfocus
hassil (python310Packages.hassil)
home-assistant-component-tests.renault
home-assistant-component-tests.sia
json-schema-for-humans (python310Packages.json-schema-for-humans)
localstack (python310Packages.localstack)
lookatme (python310Packages.lookatme)
platformio
python310Packages.aiohttp-apispec
python310Packages.aiomysensors
python310Packages.apispec
python310Packages.cairo-lang
python310Packages.dataclasses-json
python310Packages.deal
python310Packages.deezer-python
python310Packages.environs
python310Packages.faraday-agent-parameters-types
python310Packages.flask-appbuilder
python310Packages.flask_marshmallow
python310Packages.gradient
python310Packages.icontract
python310Packages.lektor
python310Packages.marshmallow
python310Packages.marshmallow-dataclass
python310Packages.marshmallow-enum
python310Packages.marshmallow-oneofschema
python310Packages.marshmallow-polyfield
python310Packages.marshmallow-sqlalchemy
python310Packages.pylddwrap
python310Packages.pysiaalarm
python310Packages.pytenable
python310Packages.renault-api
python310Packages.spyse-python
python310Packages.vaa
python310Packages.webargs
python39Packages.aiohttp-apispec
python39Packages.aiomysensors
python39Packages.ansible-doctor
python39Packages.apache-airflow
python39Packages.apispec
python39Packages.cairo-lang
python39Packages.dataclasses-json
python39Packages.deal
python39Packages.deezer-python
python39Packages.environs
python39Packages.faraday-agent-parameters-types
python39Packages.flask-appbuilder
python39Packages.flask_marshmallow
python39Packages.gradient
python39Packages.hassil
python39Packages.icontract
python39Packages.json-schema-for-humans
python39Packages.lektor
python39Packages.localstack
python39Packages.marshmallow
python39Packages.marshmallow-dataclass
python39Packages.marshmallow-enum
python39Packages.marshmallow-oneofschema
python39Packages.marshmallow-polyfield
python39Packages.marshmallow-sqlalchemy
python39Packages.pylddwrap
python39Packages.pysiaalarm
python39Packages.pytenable
python39Packages.renault-api
python39Packages.vaa
python39Packages.webargs
sublime-music
tribler

lookatme fails to build for Python versions < 3.10 with the following error and I have no idea how to get rid of it.
I've looked for the solution for too long then I'd like to admit, but I cannot understand why the Python 3.8 and 3.9 environments do not include setuptools :exploding_head:
error: builder for '/nix/store/lj1fn76fipyklpiwqwynqpmdp2kf35nd-python3.9-lookatme-2.5.0.drv' failed with exit code 1;
       last 10 log lines:
       > setting SOURCE_DATE_EPOCH to timestamp 315619200 of file source/tox.ini
       > patching sources
       > configuring
       > no configure script, doing nothing
       > building
       > Executing setuptoolsBuildPhase
       > Traceback (most recent call last):
       >   File "/build/source/nix_run_setup", line 3, in <module>
       >     import setuptools
       > ModuleNotFoundError: No module named 'setuptools'
       For full logs, run 'nix log /nix/store/lj1fn76fipyklpiwqwynqpmdp2kf35nd-python3.9-lookatme-2.5.0.drv'.

Result of nixpkgs-review pr 209302 run on x86_64-darwin 1

4 packages marked as broken and skipped:

python310Packages.cairo-lang
python310Packages.hug
python39Packages.cairo-lang
python39Packages.hug

30 packages failed to build:

python39Packages.aiohttp-apispec
python39Packages.ansible-doctor
python39Packages.apache-airflow
python39Packages.apispec
python39Packages.dataclasses-json
python39Packages.deal
python39Packages.deezer-python
python39Packages.environs
python39Packages.faraday-agent-parameters-types
python39Packages.flask-appbuilder
python39Packages.flask_marshmallow
python39Packages.gradient
python39Packages.hassil
python39Packages.icontract
python39Packages.json-schema-for-humans
python39Packages.lektor
python39Packages.localstack
python39Packages.lookatme
python39Packages.marshmallow
python39Packages.marshmallow-dataclass
python39Packages.marshmallow-enum
python39Packages.marshmallow-oneofschema
python39Packages.marshmallow-polyfield
python39Packages.marshmallow-sqlalchemy
python39Packages.pylddwrap
python39Packages.pysiaalarm
python39Packages.pytenable
python39Packages.renault-api
python39Packages.vaa
python39Packages.webargs

32 packages built:

ansible-doctor (python310Packages.ansible-doctor)
apache-airflow (python310Packages.apache-airflow)
faraday-agent-dispatcher
hassil (python310Packages.hassil)
json-schema-for-humans (python310Packages.json-schema-for-humans)
localstack (python310Packages.localstack)
lookatme (python310Packages.lookatme)
python310Packages.aiohttp-apispec
python310Packages.apispec
python310Packages.dataclasses-json
python310Packages.deal
python310Packages.deezer-python
python310Packages.environs
python310Packages.faraday-agent-parameters-types
python310Packages.flask-appbuilder
python310Packages.flask_marshmallow
python310Packages.gradient
python310Packages.icontract
python310Packages.lektor
python310Packages.marshmallow
python310Packages.marshmallow-dataclass
python310Packages.marshmallow-enum
python310Packages.marshmallow-oneofschema
python310Packages.marshmallow-polyfield
python310Packages.marshmallow-sqlalchemy
python310Packages.pylddwrap
python310Packages.pysiaalarm
python310Packages.pytenable
python310Packages.renault-api
python310Packages.spyse-python
python310Packages.vaa
python310Packages.webargs

@AmeerTaweel Any ideas why building would fail for Python version < 3.10 ?
See https://github.com/NixOS/nixpkgs/pull/209302#issuecomment-1374027225

@totoroot I think this is an issue with nixpkgs, not lookatme.
Python packages are not building “ModuleNotFoundError: No module named ‘setuptools’”
nixpkgs#poetry is broken at nixpkgs-unstable

@totoroot Do you need help regarding testing this on Mac?

Upstream project no longer actively maintained.


Keep extended attributes upon token refresh

When a token is refreshed I need to find a way to keep the extra properties (extendedAttributes) related to the old access token. Is there any way to do so? Thank you.

what u want may be not belong to what this lib should do. for me, i handle with a foreign table related to the access_token table.


Update to 1.19

No real changes, just mapping updates (and verbatim copying things from the minecraft and sodium default shaders because the game doesn't do it anymore for some reason)

I am happy this mod is still supported!


[Help]

Thank you very much for your document. It has been helpful to me. I am currently encountering an issue where sometimes after sending commands to the vehicle, I receive the following response:
commandStatus {
operationStatus: OPERATIONSTATUS_ERROR
signedMessageStatus {
counter: 9287
signedMessageInformation: SIGNEDMESSAGE_INFORMATION_FAULT_AES_DECRYPT_AUTH
}
}
Following that, I receive another message sent by the vehicle itself:
sessionInfo {
publicKey: "\004#\315\0230\374\3657\371\241Ju\367\320\346\020\266z\303p'\322\206PS\267\304\027m\203\236\023\332\364\307\p0\320W\370\260\254\202Y\\026`r\261\346\223s(\356\256\005\264kH\320\335\033{y"
}
From my understanding, the temporary key of the vehicle has become invalid. Your document mentioned that this could happen, although you had not encountered it yourself. As a result, I regenerated the shared key based on the publicKey (ephemeralKey) sent by the vehicle, but I still receive an error. This key is now unusable, and I need to delete it and add it back to the whitelist to go through the whole process again. I am not sure where the problem lies. Can you help me with this?

If I were to guess, I’d say that the problem is more than likely in your implementation. Specifically, the car is unable to decrypt your message. Perhaps you sent something wrong somewhere? Or maybe you encrypted with the wrong nonce? Perhaps you incremented the nonce integer but in are still using the original nonce array for encryption?
There isn’t enough context for me to help you much further, unless you send some code or something. Hope this helps.

Also, no your ephemeral key didn’t change. I was testing for the past 2 years and am yet to see it change from the original value.

Thank you very much for your answer, which is enlightening to me. I also suspect that there is an error in the nonce recorded by myself. I will read your document again and test whether there is any instruction that can synchronize the nonce, so as to ensure that the nonce stored locally is consistent with that of the vehicle.

What the problem here probably is if it’s the nonce isn’t that you’re sending a used nonce. No - the car would notify you of that. The problem is that you might be encrypting the message with a different nonce than you’re telling the car you’re encrypting with.

Hi, My encryption method was initially working fine, I could control the vehicle. However, after using it for some time, it would become ineffective. Previously, you suspected a problem with the counter, so I added a logic that when it becomes ineffective, it would request the counter from the vehicle and increment it by 1 for the next command. When the app starts, I obtain the counter from the vehicle and send the following command:
<ToVCSECMessage 0x282961800>: {
unsignedMessage {
InformationRequest {
informationRequestType: INFORMATION_REQUEST_TYPE_GET_COUNTER
keyId {
publicKeySHA1: "\340\247MO"
}
}
}
}
Upon successful execution, the vehicle responds with:
<FromVCSECMessage 0x13f6072d0>: {
sessionInfo {
counter: 255
}
}
At the same time, I also request the vehicle's status by sending:
<ToVCSECMessage 0x2829476c0>: {
unsignedMessage {
InformationRequest {
keyId {
publicKeySHA1: "\340\247MO"
}
}
}
}
The vehicle responds with:
<FromVCSECMessage 0x13f304080>: {
vehicleStatus {
vehicleSleepStatus: VEHICLE_SLEEP_STATUS_AWAKE
}
}
The problem arises when I send a command, such as opening the trunk:
<ToVCSECMessage 0x282948ba0>: {
signedMessage {
protobufMessageAsBytes: "\253_\206\260"
signature: "\216J\270\205v:\251(\254/H\332\242\2747;"
keyId: "\340\247MO"
counter: 256
}
}
At this point, I receive the following response:
<FromVCSECMessage 0x13f40b560>: {
commandStatus {
operationStatus: OPERATIONSTATUS_ERROR
signedMessageStatus {
counter: 256
signedMessageInformation: SIGNEDMESSAGE_INFORMATION_FAULT_AES_DECRYPT_AUTH
}
}
}
I also receive:
<FromVCSECMessage 0x13f304080>: {
sessionInfo {
publicKey: "\004#\315\0230\374\3657\371\241Ju\367\320\346\020\266z\303p'\322\206PS\267\304\027m\203\236\023\332\364\307\p0\320W\370\260\254\202Y\\026`r\261\346\223s(\356\256\005\264kH\320\335\033{y"
}
}
In other words, even though I synchronize the vehicle's counter, it does not solve the issue of ineffectiveness. Currently, I am at a loss, can you identify any problems from the provided information? I look forward to your response.

I found the problem and have fixed the bug now, thank you


fix: wire --esm cli flag to options

Likely forgotten in bde049045da8493945f62d373b11c8ca8643e6c6. Fixes #91.

Tested manually by running
npm exec wsdl-tsclient -- --esm test/resources-public/products.wsdl -o gen-test/

An looking at the import paths in the generated files.


Release v0.7.1 element-read-attribute type "value" from text input element undefined

In version v0.7.1, when attempting (element-read-attribute ($ "#text-input") "value"), the result is undefined.
When I tested reading the "type" attribute instead of the "value" attribute, it correctly returned "text".
The previous version, v0.7.0, does not have this issue.

Hmm, I could not reproduce it. This example shows hello. What is different?
<!DOCTYPE html>

  <meta charset="utf-8" />

<input id="text-input" type="text" value="hello">

Thanks very much for checking. Your example works for me too, but this variation of it, below, does not (although it does with v0.7.0).

        <meta charset="utf-8" />

        <input id="text-input" type="text" placeholder="type something here to test...">
        <button id="button">Test</button>

@gustavmelck v0.7.1 bundles newer jQuery and it seems like the cause of this. Could you try this patch?
diff --git a/src/library/webscheme_lib.js b/src/library/webscheme_lib.js
index f6350b7..ef9ce64 100644
--- a/src/library/webscheme_lib.js
+++ b/src/library/webscheme_lib.js
@@ -102,7 +102,7 @@ define_libfunc("element-identify", 1, 1, function(ar){
 });
 define_libfunc("element-read-attribute", 2, 2, function(ar){
   assert_string(ar[1]);
-  return $(ar[0]).attr(ar[1]);
+  return $(ar[0]).prop(ar[1]);
 });

 var element_write_attribute = function(ar) {

Thanks! I've tried it and yes, that patch solves the problem with element-read-attribute. Presumably the same issue occurs in other places too (for example, with element-write-attribute), but I haven't done further tests yet.


Standing water fill pattern and water "barriers"

This adds a fill pattern for standing water for landuse=reservoir/natural=water;water=reservoir:

Also the same for a fountain as area:

Additionally barrier-like stroke for man_made=breakwater and man_made=groyne ways and areas.

Such as this off-shore example:

Thanks @RudyTheDev!


[Add/edit observation] Allow multiple choice fields to be shown inline

The edit observation form currently shows multiple choice questions (option, checkbox) in a modal dialog, requiring two extra taps - one tap on the field to open the modal, and one on "APPLY" after value(s) are selected. Showing the checkboxes/options directly on the form would reduce friction during data entry.
It's assumed we'd would want to preserve the modal for longer lists, possibly adding a search function in the future. This can be controlled by a flag in the form field definition (style: "INLINE")?

Current implementation:

@gino-m
Suggestions:

Keep current layout because: 1) If we show the form inline, the list of questions can be potentially too long; 2) Tap to Modal dialog can be actually good for keeping users focused on the task
Tweak "Add Button" styling so that it meets Accessibility standards (i.e. Contrast)

Keep current layout because: 1) If we show the form inline, the list of questions can be potentially too long; 2) Tap to Modal dialog can be actually good for keeping users focused on the task

Showing inline would in addition to being able to show as modal - it would optionally be specified in the form designer.

Tweak "Add Button" styling so that it meets Accessibility standards (i.e. Contrast).

+1. This will be fixed with #486.

Covered by #1146.


added new tx details rows, update tx exploded page, update nav hambur…

…ger font color

Closed and replaced with updates on new branch eric_corrected_branch


integrate install

Hi,
does this action do vcpkg integrate install?
Can we add that as an option?

@jmoguillansky-gpsw run-vcpkg does not run the command vcpkg integrate install. Please elaborate what is the use case in order to grab the requirements.
Currently you can run vcpkg integrate install in a run step if it is needed.

Thanks @lukka for the quick response.  For now I'll just run vcpkg integrate install manually.  Currently we use that command as part of the build.  This command adds the includes/libs to global visual studio configuration.

@jmoguillansky-gpsw ok, it would be helpful to take a look to what the actual workflow is, if publicly available.
For a CMake based project, providing the toolchain file suffices, and only for MSBuild based projects the integrate install command may be a requirement.

Hi @lukka I'm currently trying to integrate run-vcpkg into the project, it would be very helpful to have vcpkg caching mechanism.
Here's a link to the github action run:
https://github.com/gopro/gopro-lib-node.gl/runs/1560926321?check_suite_focus=true
and here's the code snippet:

name: Restore from cache and install vcpkg
uses: lukka/run-vcpkg@v6
with:
vcpkgGitCommitId: 595777db2332a3442b73f9af9f656355f207aec9
vcpkgTriplet: x64-windows
vcpkgArguments: pthreads opengl-registry ffmpeg[ffmpeg] sdl2
cleanAfterBuild: false
- name: vcpkg integrate install
  run: |
    cd vcpkg && ./vcpkg.exe integrate install

Thanks for the help!

@jmoguillansky-gpsw To me it looks like the vcpkg integrate install command is not needed for your workflow. The command would only help for MSBuild based projects, as it places a couple of .props/.targets MSBuild files that are then consumed by MSBuild, which you are not using.
I see your Makefile uses VCPKG_DIR: I would suggest instead to use the existing VCPKG_ROOT env var instead.
Please take a look at the vcpkg best practices, I'd suggest you to use a vcpkg.json manifest file if you use a recent commit id of vcpkg repository.

Thanks @lukka for the support ,
I can't get the caching mechanism working?
I made a test script:
Here's the code:
name: 'tests Windows'
on:
push:
branches:
- 'master'
pull_request:
workflow_dispatch:
jobs:
win-msvc:
runs-on: windows-latest

steps:
  - name: Install dependencies via vcpkg
    uses: lukka/run-vcpkg@v6
    with:
      vcpkgGitCommitId: 595777db2332a3442b73f9af9f656355f207aec9
      vcpkgTriplet: x64-windows
      vcpkgArguments: pthreads sdl2

  - name: vcpkg integrate install
    shell: cmd
    run: |
      cd vcpkg && vcpkg.exe integrate install

and the log:
Run 1:
2020-12-17T01:22:18.7755391Z ##[group]Cache vcpkg and its artifacts
2020-12-17T01:22:18.8010325Z tool: C:\Program Files\Git\bin\git.exe
2020-12-17T01:22:18.8011384Z Fetching the commit id at D:\a\gopro-pkg\gopro-pkg\vcpkg
2020-12-17T01:22:18.8277130Z 595777db2332a3442b73f9af9f656355f207aec9
2020-12-17T01:22:18.8325908Z vcpkg identified at commitId='595777db2332a3442b73f9af9f656355f207aec9', adding it to the cache's key.
2020-12-17T01:22:18.8330479Z Caching paths: 'D:\a\gopro-pkg\gopro-pkg\vcpkg,!D:\a\gopro-pkg\gopro-pkg\vcpkg\packages,!D:\a\gopro-pkg\gopro-pkg\vcpkg\buildtrees,!D:\a\gopro-pkg\gopro-pkg\vcpkg\downloads'
2020-12-17T01:22:18.8331628Z Running save-cache...
2020-12-17T01:22:19.0462564Z ##[warning]reserveCache failed: Cache already exists. Scope: refs/heads/master, Key: submodGitId=595777db2332a3442b73f9af9f656355f207aec9-args=-921422610-os=1553167195-appendedKey=42-triplet=1258145250, Version: 08941d5f3e94c016a7135b24720cc07ea555ab0edb184a7c0b255970ce334563
2020-12-17T01:22:19.0480475Z ##[endgroup]
2020-12-17T01:22:19.0481545Z :stopwatch: elapsed: 0.270 seconds
2020-12-17T01:22:19.0482433Z run-vcpkg  action execution succeeded
2020-12-17T01:22:19.0483082Z run-vcpkg action execution succeeded
Run 2:
2020-12-17T01:18:49.7208423Z ##[group]Restore vcpkg and its artifacts from cache
2020-12-17T01:18:49.7209233Z tool: C:\Program Files\Git\bin\git.exe
2020-12-17T01:18:49.7210135Z Fetching the commit id at D:\a\gopro-pkg\gopro-pkg\vcpkg
2020-12-17T01:18:49.7214138Z Cache's key = 'localGitId=91193352-args=-921422610-os=1553167195-appendedKey=42-triplet=1258145250'.
2020-12-17T01:18:49.7215514Z Running restore-cache...
2020-12-17T01:18:50.1744817Z Cache miss.
2020-12-17T01:18:50.1750088Z ##[endgroup]
Please advise, is there something I'm doing wrong?

@jmoguillansky-gpsw in Run1 the cache id is different than in Run2. Looks like in Run1 the vcpkg directory is a submodule, but in Run2 it is not.

@jmoguillansky-gpsw
Using lukka/run-vcpkg@v6 add in your workflow a value for additionalCachedPaths as shown in the quickstart documentation.
The problem you described should be fixed, please report it back.

@jmoguillansky-gpsw
Using lukka/run-vcpkg@v6 add in your workflow a value for additionalCachedPaths as shown in the quickstart documentation.
The problem you described should be fixed, please report it back.

Hi @lukka ,
Latest vcpkg supports binary caching (as you probably know).
It would be great if run-vcpkg action automatically cached the artifacts folder simplified the configuration required from the user
(e.g. by default its under C:\Users<username>\AppData\Local\vcpkg\archives), and it can be customized with "VCPKG_BINARY_SOURCES" env variable (see https://devblogs.microsoft.com/cppblog/vcpkg-accelerate-your-team-development-environment-with-binary-caching-and-manifests/).

Hi @lukka ,
Latest vcpkg supports binary caching (as you probably know).
It would be great if run-vcpkg action automatically cached the artifacts folder simplified the configuration required from the user
(e.g. by default its under C:\Users<username>\AppData\Local\vcpkg\archives), and it can be customized with "VCPKG_BINARY_SOURCES" env variable (see https://devblogs.microsoft.com/cppblog/vcpkg-accelerate-your-team-development-environment-with-binary-caching-and-manifests/).

Hi @lukka , now everything seemed to work.
Not sure why it got errors previously.
Thanks!

Hi @lukka , now everything seemed to work.
Not sure why it got errors previously.
Thanks!

@jmoguillansky-gpsw I like the suggestion to minimize the amount of inputs the action requires, I am absolutely pro to remove unneeded input and to ease the user experience.
Regarding binary caching:

there is no way to determine exactly what is the directory that vcpkg has used to put the artifacts. It can be any of the ones specified in the Configuration paragraph. Unfortunately, vcpkg does not tell which one was used.
my thinking is that caching the content of CMAKE_BUILD_DIR/vcpkg_installed or $VCPKG_ROOT/installed is a better choice: https://github.com/lukka/run-vcpkg/issues/54#issuecomment-729034490

Let me know if there is anything that can be done to improve the user experience, thanks!

@jmoguillansky-gpsw I like the suggestion to minimize the amount of inputs the action requires, I am absolutely pro to remove unneeded input and to ease the user experience.
Regarding binary caching:

there is no way to determine exactly what is the directory that vcpkg has used to put the artifacts. It can be any of the ones specified in the Configuration paragraph. Unfortunately, vcpkg does not tell which one was used.
my thinking is that caching the content of CMAKE_BUILD_DIR/vcpkg_installed or $VCPKG_ROOT/installed is a better choice: https://github.com/lukka/run-vcpkg/issues/54#issuecomment-729034490

Let me know if there is anything that can be done to improve the user experience, thanks!

Hi Luca,
I think you can specify the caching directory via environment variable “VCPKG_BINARY_SOURCES”?
From: Luca<EMAIL_ADDRESS>Sent: Monday, January 4, 2021 3:53 PM
To: lukka/run-vcpkg<EMAIL_ADDRESS>Cc: Jeffrey Moguillansky<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [lukka/run-vcpkg] integrate install (#63)
@jmoguillansky-gpswhttps://github.com/jmoguillansky-gpsw I like the suggestion to minimize the amount of inputs the action requires, I am absolutely pro to remove unneeded input and to ease the user experience.
Regarding binary caching:

there is no way to determine exactly what is the directory that vcpkg has used to put the artifacts. It can be any of the ones specified in the Configuration paragraphhttps://github.com/microsoft/vcpkg/blob/master/docs/users/binarycaching.md#configuration. Unfortunately, vcpkg does not tell which one was used.
my thinking is that caching the content of CMAKE_BUILD_DIR/vcpkg_installed or $VCPKG_ROOT/installed is a better choice: #54 (comment)https://github.com/lukka/run-vcpkg/issues/54#issuecomment-729034490

Let me know if there is anything that can be done to improve the user experience, thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/lukka/run-vcpkg/issues/63#issuecomment-754294153, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AO3BUE5FMAOB2LIULMQPJFDSYJIFRANCNFSM4U5G5EPQ.

Hi Luca,
I think you can specify the caching directory via environment variable “VCPKG_BINARY_SOURCES”?
From: Luca<EMAIL_ADDRESS>Sent: Monday, January 4, 2021 3:53 PM
To: lukka/run-vcpkg<EMAIL_ADDRESS>Cc: Jeffrey Moguillansky<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [lukka/run-vcpkg] integrate install (#63)
@jmoguillansky-gpswhttps://github.com/jmoguillansky-gpsw I like the suggestion to minimize the amount of inputs the action requires, I am absolutely pro to remove unneeded input and to ease the user experience.
Regarding binary caching:

there is no way to determine exactly what is the directory that vcpkg has used to put the artifacts. It can be any of the ones specified in the Configuration paragraphhttps://github.com/microsoft/vcpkg/blob/master/docs/users/binarycaching.md#configuration. Unfortunately, vcpkg does not tell which one was used.
my thinking is that caching the content of CMAKE_BUILD_DIR/vcpkg_installed or $VCPKG_ROOT/installed is a better choice: #54 (comment)https://github.com/lukka/run-vcpkg/issues/54#issuecomment-729034490

Let me know if there is anything that can be done to improve the user experience, thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/lukka/run-vcpkg/issues/63#issuecomment-754294153, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AO3BUE5FMAOB2LIULMQPJFDSYJIFRANCNFSM4U5G5EPQ.

@jmoguillansky-gpsw I'd be happy to see more elaborated design on how the input of the action could be reworked in order to deal with VCPKG_BINARY_SOURCES?

@jmoguillansky-gpsw I'd be happy to see more elaborated design on how the input of the action could be reworked in order to deal with VCPKG_BINARY_SOURCES?

Feel free to report any problem you may experience!


Unknown command 'flushdb' reading the append only file

When I tried to update to 2103 build, suddenly server says "Unknown command 'flushdb' reading the append only file" and exits. I have flushdb command disabled in config. When I enable it, the problem goes away.
What's even more weird - I tried to start 2101 build with command disabled and it didn't work either - same error.
What went wrong?

@chester89
check if the AOF file that you are trying to load contains the FLUSHDB command.

yes, I certainly flushed this db a couple of times. that must be it. thanks


Use HTML representation

This PR uses the HTML representation provided by hdmf on the stub test preview

Recommend pinning the version of HDMF requirements to be >= 3.7 to ensure the HTML feature will be included


How does the lock file removed

I use this code to run a script every minute with the onlyOne() method to avoid overlapping
$scheduler->php($script)->onlyOne()->everyMinute();
My question that once this scripts complete execution how will the lock files be removed... Or am i to remove them myself once execution is over?

@mitmelon the lock file is only removed by the scheduler when executing a Callable job, because it's the only time the scheduler knows when the job is completed. In all the other cases, without knowing when the job is complete, the lock file will stay there and you will have to remove it manually.
That being said, if you don't manually specify the temp folder for the lock file, it will be stored on the temp folder of your system (https://github.com/peppeocchi/php-cron-scheduler/blob/master/src/GO/Job.php#L171), which will be cleaned up automatically by your OS.
If you have any suggestion on how to remove lock files (specially for async jobs) please feel free to open a PR

@peppeocchi Thanks very much I will look for means to see if that could happen and open a pr.


Update spring-boot version to 2.1.4.RELEASE

Thanks @DanielFran - I'm waiting for the builds to pass, and I'll release the first 3.0.0 version


West Europe?

I got redirected to this page from this one:
https://techcommunity.microsoft.com/t5/azure-network-security-blog/azure-ddos-ip-protection-is-now-available-in-public-preview/ba-p/3669075
which says
"More available regions are being updated here About Azure DDoS Protection SKU Comparison | Microsoft Learn"
But on this page there are no region mentioned at all.
Anyway, the main question I have is when will this be offered in West Europe, and when will this go GA? I see the option already in the preview portal, and I managed to enable the IP Protection in West Europe, but not sure if it really works ...

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

ID: 668d8ec7-efd0-6648-7743-4dd8bc0e4c92
Version Independent ID: 1c2efe6a-a24f-1f56-168a-f174caaafcff
Content: About Azure DDoS Protection SKU Comparison
Content Source: articles/ddos-protection/ddos-protection-sku-comparison.md
Service: ddos-protection
GitHub Login: @AbdullahBell
Microsoft Alias: Abell

@AbdullahBell
Could you please review add comments on this, update as appropriate.

Hello @deyanp, DDoS IP Protection is available in all regions including West Europe and is currently in GA as of 04/04/2023!

Heard about GA, great!


File: Error: html2text is required to parse Epub files: pip install html2text

Uploading an epub format e-book to the webpage results in an error message at the file name: File: Error: html2text is required to parse Epub files: pip install html2text. After installing pip install html2text, the same error still occurs."

It should be one line missing in requirements.txt.

html2text is already in requirements.txt, you can redownload the latest image to resolve this issue.


feat: make cairoVersion a property of Account

Motivation and Resolution
Resolves #591
Checklist:

[ ] Performed a self-review of the code
[ ] Rebased to the last commit of the target branch (or merged it into my branch)
[ ] Linked the issues which this PR resolves
[ ] Documented the changes
[ ] Updated the docs (www)
[ ] Updated the tests
[ ] All tests are passing

Problem with existing implementation is flag do no belong to InvocationsDetails (that's create some uncecesery usages and is not part of transaction)
I created PR to patch deploy when used with this flag as it will break (UDC contract is cairo 0)
Example dev try to use this expecting to work for deploying cairo 1 contract
const deploy = await account1.deployContract({
        classHash,
      }, {cairoVersion: '1'});

In this case with global flag, users will do
const account1 = getTestAccount(provider, '1');
      const deploy = await account1.deployContract({
        classHash,
      });

And this will break as deploy use execute that use now class prop and can't be overide.
I will try to figure out solution to resole both cases and do not change interface

At the moment this is the only approach and we will figure out edge cases later.


Enhance nullability for ChatId conversion

Enhance nullability for ChatId implicit cast operator, so that compiler does not complain when Chat is not null.

Thanks!


election option "publish election result only for elected candidate" has no effect

In the settings of OpenSlides under elections there is an option "publish election result only for elected candidate". But setting/unsetting this has no effect on existing elections or on new elections.

Confirmed. @emanuelschuetze Do you want to hide the election results for non-elected candidates only on the projector or also in the interface or do you even want me to hide them in the REST API? I do not remember the behavior of 1.7.

I removed the unused config option in pr #2230


Samples in Navigation should be moved up before Tutorials

Think it would make more sense for the Samples Menu item to be moved before Tutorials, the tutorials are referred to as next steps

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

ID: 14cc0408-bafc-daf6-22ee-5b0619ce3cd3
Version Independent ID: fff4523a-d9c5-7387-3212-5b7016839677
Content: Example Jupyter notebooks - Azure Machine Learning service
Content Source: articles/machine-learning/service/samples-notebooks.md
Service: machine-learning
GitHub Login: @sdgilley
Microsoft Alias: sgilley

@ShaneOsborne-MS Thank you for the valuable feedback,we are investigating the issue.

@sdgilley Hi Sheri, could you please help to check if moving sample part before tutorials makes more sense? Thank you.

Thanks for the suggestion, I see what you mean.  However, we have a standard table of contents to make it easier to find content from one product to another.
You'll find that many introductory articles link back to the Tutorials as Next Steps as we don't assume you've read all the articles prior to the one you're looking at.

#please-close


Add memoizeWith

Closes #2125. This isn't as straightforward as being able to do R.memoizeWith(R.prop('a')) because we have to support multiple arity functions. This means that the customising function is applied to arguments so the correct way to use the function is R.memoizeWith(R.compose(R.prop('a'), R.head)). I think the examples in the documentation  I've provided aren't good enough and I was hoping people had some better suggestions.

I don't believe you can capture enough detail in the sort of short docs we try to write.  But the unit tests cover the gaps quite well.
This looks very good to me.
:herb:

me too
:cow2:

With memoizeWith, the key is always a string. Could you shed some light on how to provide a key if I want to cache the result when none of the references of all args is changed (prev arg === current arg)? Thanks!

If you can get different results for the same arguments, then that method is not suitable for memoization.

thanks for the reply. it is a pure function, it will get the same result for the same arguments. but the purpose here is to avoid re-calculation by comparing the references of the arguments, If an arg's reference is not changed, but the content is changed, theoretically we should recalculate, but we won't re-calculate to gain performance by assuming all arguments are immutable , just like what react or reselect is doing. So for that purpose, is memoizeWith suitbale? if not, is there any other functions in ramda that can achieve this? Thanks

if i understand what you are saying, you just want to test reference equality? If so then
const memo = memoizeWith(identical)
ought to do the trick

do you mean identity? identical will return a boolean, there is no point to have a key with only 2 values true and false. identity will also not work, because it only takes 1 argument. but the way the key function is called inside memoizeWith is
var key = mFn.apply(this, arguments);
arguments is the list of arguments to the underlying function. so if you use identity as the key function, all arguments other than the first one will be ignored. also, the generated key will be used as an object key, so if you use identity on an object argument, it will return an object as the key, which will be converted to '[object Object]' when it's used as an object key. so using identity as a key function only works on simple types like number or string.
to use memoizeWith, my understanding is, you need to generate a unique string key based on all the arguments provided to the underlying function. but what i couldn't figure out is, how to generate a unique string based on the references of those arguments

yeah apologies i should've looked at the docs myself.

np. I'm just trying to implement what reselect is doing.
the main difference is that ramda's memoizeWith function caches a list of results based on a key, whereas reselect's implementation caches only the previous result, so it doesn't need a key, it only remembers the last argument list, then it can compare between the last argument list and the current argument list based on a specified equality function (in this case, reference equality).
it would be nice if ramda can provide a different version of memoizeWith, which caches only the last result, but is able to compare the argument list based on a user provided equality function

@ln613
Sorry, I've been off for a bit, having my head examined* and I missed this.
While I wouldn't object to seeing a PR for this, I'd have to think about it a lot before I decide that I was interested in including it.  In any of its forms, memoize has always been an odd fit for Ramda.  Because it's only about avoiding re-performing complex calculations, it's technically not about side-effects, but it really feels as though it is.  (I have the same feeling about tap -- it's useful, but an odd fit for the library.)  For this reason, I have a difficult time wanting to include more memoize-related functions here.
If you feel strongly about it, don't hesitate to open a PR; it will certainly get a fair hearing.

* So, it was just my right eye and one side of my forehead, covered in shingles bumps -- that's still part of my head!

Thanks for the reply @CrossEye. I totally agree, not a good fit for Ramda. I implemented it myself for my project.
Although knowing it's a FP library, when I use Ramda more and more, I tend to use it as a one-stop shop, trying to find a solution for everything with Ramda. For example, defining a 'tap(console.log)' function would be the first thing when I create a new project.
Thanks for providing Ramda, making javascript programming more functional.

Thank you for the kind words.
In any project I do, I have my own utility library, these days generally layered atop Ramda, for all those functions that I need but which don't exist in Ramda.  If I reuse them in many projects, and if they otherwise seem to fit, I might propose them for Ramda.  But often they end up similar but slightly different across projects.


/proc/sys/net/bridge folder missing inside of container, even with kernel modules enabled

Distribution: Ubuntu
Distribution version: 18.04
The output of "lxc info" or if that fails:

Kernel version: 4.15.0-34-generic
LXC version:
LXD version: 3.0.2
Storage backend in use:

https://github.com/lxc/lxd/issues/3306
still doesn't work altough as i understand from this conversation https://discuss.linuxcontainers.org/t/bridge-nf-call-iptables-and-swap-error-on-lxd-with-kubeadm/2204/3 it should. as i checked every CNI in kubernetes needs this

Can confirm this is happening for me as well.

I do see this behavior even on a 4.18 kernel, but it's got nothing to do with LXD and there's nothing we can do at the LXD level about it.
This is a kernel bug (or missing feature) in the br_netfilter kernel module.
@brauner @tyhicks either of you interested in looking at a kernel fix?

@stgraber
Should I submit an issue with Proxmox?

@zimmertr this is kernel thing, not proxmox, from the conversation i posted i had feeling that it was already implemented...what type of networking then kubernetes deployed with conjure-up uses?

@brauner @tyhicks

I know where this issue comes from. And I think I know how to fix it. Currently the sysctl is only registered in init_net_ns.

So, I have patch for this that I need to test and extend a little bit. Basically, bridge netfilter is not namespaced properly but it should be doable relatively quickly:

record handler for br_netfilter sysctls in struct net
add

	.init = br_netfilter_sysctl_init_net,
	.exit = br_netfilter_sysctl_exit_net,
};

I have these but I need to make then actually do something useful. :)

https://github.com/brauner/linux/commits/2018-10-27/namespace_br_netfilter_sysctls
You can try and download my current test kernel from (Only use them on a test-system though.):

https://trello-attachments.s3.amazonaws.com/5b5a0002016713b8f9504d33/5bcdf12fe9462e4c99738fe6/d3f0cf69d6f2125497183a81cb3897d7/linux-libc-dev_4.19.0-rc7-brauner-brnf-22_amd64.deb
https://trello-attachments.s3.amazonaws.com/5b5a0002016713b8f9504d33/5bcdf12fe9462e4c99738fe6/2def429cdfd1255cd1f86993da094f3f/linux-image-4.19.0-rc7-brauner-brnf_4.19.0-rc7-brauner-brnf-22_amd64.deb
https://trello-attachments.s3.amazonaws.com/5b5a0002016713b8f9504d33/5bcdf12fe9462e4c99738fe6/783a85389087f29c9da0f6ed1db67b8c/linux-headers-4.19.0-rc7-brauner-brnf_4.19.0-rc7-brauner-brnf-22_amd64.deb

I'm too scared to install it on my Proxmox server to be honest. I don't have a monitor connected to it would be a pretty large ordeal to fix the kernel in single user mode if it doesn't come up after installing. Plus it will take down my entire network and make for an unhappy girlfriend.
@p53 are you able to? If not, I can probably try to do so tomorrow.

Oh, don't bother if it means redoing your whole system. :)

I booted and tested changing the sysctls in different namespaces, loading and unloading the modules and it all worked fine. I just need to know whether the per-namespace-iptable filtering works and I have no test-case. :)

i will try it, i am just try to use it for not very important project and it is new machine

@brauner:
pve-manager/5.2-10/6f892b40 (running kernel: 4.19.0-rc7-brauner-brnf)
root@pmx3:~# lsmod | grep br
br_netfilter           24576  0
bridge                159744  1 br_netfilter
stp                    16384  1 bridge
llc                    16384  2 bridge,stp```

Looks like it's working for me 👍

@brauner you're awesome!

He, thanks and sorry, @zimmertr. So net-next is currently closed and will re-open on Monday. Then I'll send out the patch. If there are no security concerns then it'll be merged into linux-next soon(ish).

i tried on lxd  on ubuntu server and it is loaded without problems, i didn't have any problems running it, i run kubernetes in lxd containers, interestingly kubernetes network plugins flannel, calico seems doesn't need br_netfilter, altough many tutorials for installing kube have as one step installing this module as prerequisite, i will try also other network plugins, maybe some other cni plugins or cni plugins backends require it...

The br_netfilter module get loaded in the lxd version 3.6
Inside the lxd contianer without any modufication to the kernel in ubuntu 18.04 if I add the kernel module I get this output
root@k8s-worker1:~# lsmod | grep br_
br_netfilter           24576  0
bridge                151552  1 br_netfilter

So my understanding is the module is loaded but the file system associated with it doesn't get mounted correctly. So when kubeadm check the status of the module from the file system it fails.
I have installed a kubernetes cluster on multiple nodes using the calico plug-in. It complains about not having the br_netfilter module but if you ignore it it works regardless.
The problem can also be seen from the console.log of the container.
/var/snap/lxd/common/lxd/logs/k8s-cpu# cat console.log
...
systemd-udevd.service: Failed to reset devices.list: Operation not permitted
         Starting udev Kernel Device Manager...
systemd-modules-load.service: Main process exited, code=exited, status=1/FAILURE
systemd-modules-load.service: Failed with result 'exit-code'.
[FAILED] Failed to start Load Kernel Modules.
See 'systemctl status systemd-modules-load.service' for details.
systemd-sysctl.service: Failed to reset devices.list: Operation not permitted
         Starting Apply Kernel Variables...
sys-kernel-config.mount: Failed to reset devices.list: Operation not permitted
         Mounting Kernel Configuration File System...
[  OK  ] Started Journal Service.
         Starting Flush Journal to Persistent Storage...
[  OK  ] Started udev Kernel Device Manager.
[  OK  ] Started Apply Kernel Variables.
[FAILED] Failed to mount Kernel Configuration File System.
See 'systemctl status sys-kernel-config.mount' for details.
...

root@k8s-cpu:~# systemctl status systemd-modules-load.service
● systemd-modules-load.service - Load Kernel Modules
   Loaded: loaded (/lib/systemd/system/systemd-modules-load.service; static; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2018-11-06 10:28:43 UTC; 5min ago
     Docs: man:systemd-modules-load.service(8)
           man:modules-load.d(5)
 Main PID: 52 (code=exited, status=1/FAILURE)

Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
root@k8s-cpu:~# systemctl status sys-kernel-config.mount
● sys-kernel-config.mount - Kernel Configuration File System
   Loaded: loaded (/lib/systemd/system/sys-kernel-config.mount; static; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2018-11-06 10:28:43 UTC; 6min ago
    Where: /sys/kernel/config
     What: configfs
     Docs: https://www.kernel.org/doc/Documentation/filesystems/configfs/configfs.txt
           https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems

Nov 06 10:28:43 k8s-cpu mount[62]: mount: /sys/kernel/config: permission denied.
Nov 06 10:28:43 k8s-cpu systemd[1]: sys-kernel-config.mount: Mount process exited, code=exited status=32
Nov 06 10:28:43 k8s-cpu systemd[1]: sys-kernel-config.mount: Failed with result 'exit-code'.
Nov 06 10:28:43 k8s-cpu systemd[1]: Failed to mount Kernel Configuration File System.
Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.

Currently you can hack around to make kubernetes work in lxd but it would be much better to support it properly.

@brauner Hi, did you manage to get your patch merged upstream by chance? If not, how difficult would it be to backport it to the 4.15 kernel used by Ubuntu 18.04?

@ebourg, yes I pushed for it upstream. Here's my last mail:
https://lkml.org/lkml/2018/12/13/305
It would be super helpful if people where to respond to that thread and point out that they really need and care for that patchset.

@brauner would it be worth doing a re-send on that patch to see if someone will finally pull it?

OK, if anyone could help move this topic forward, it would be great!
This issue simply prevents any advanced use of docker in LXC.

If you need this feature, please reply to
https://lkml.org/lkml/2018/11/7/681
and point out that you need it. We kernel people are way more likely to merge stuff like that if users reply and point out that they need it and ask for progress. :)

Bumped!
Do you know how difficult it is to answer a message from this mailing list for a non-expert if you are not already a subscriber? ^^
Thank you in any case for your work, and hoping that it will make things happen!

He, yeah, mailing list based development is interesting. 😁 Thanks for the bump! I'll try to not them again if they don't respond to you. :)

I would love to see this feature implemented, it's  what's keeping me from running a docker swarm entirely in LXC containers on some smallish proxmox nodes I have. Thanks for your work here, hope to see it merged and if I get a chance I'll try your kernel soon in my proxmox cluster and report back.

Would it be possible to create a shadow copy of the hosts bridge folder and have LXD move this into place? (while we wait for a kernel fix)

On Wed, Apr 10, 2019 at 08:08:36AM -0700, zeroflaw wrote:

Would it be possible to create a shadow copy of the hosts bridge folder and have LXD move this into place? (while we wait for a kernel fix)

This would require support in lxcfs but I think this is the wrong place.
I will try to push for this upstream again.

I went ahead and merged your changes into 4.19.34, running on ubuntu 18.04 it works as expected. I guess I can live with the custom kernel issue.
Thanks for the fix.

Hi!
I'm very interested in this patch to be merged, like @remotephone I need to run docker swarms on a node.
But I'm inexperimented with mailing lists and I have no idead how to reply to the mail to help get this feature. Could someone provide a bit of directions for a noob?

@brauner May I ask, did you receive any feedback? With LXD snap 3.13 on linux-image-unsigned-5.0.0-16-generic, the forementioned folder is still inaccessible.

I resent this just now:
https://lkml.org/lkml/2019/6/6/434

Patchset has landed and will make it into Linux 5.3:
https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=ff6d090d0db41425aef0cfe5dc58bb3cc12514a2
https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=22567590b2e634247931b3d2351384ba45720ebe

Thank you so much !

Is there some update on the kernel issue, yet?

Tested with the linux-image-generic-hwe-18.04 kernel for Ubuntu 18.04, which gives kernel 5.4.0-77.
Running proxmox-ve inside lxd containers: it can happily manipulate both ebtables and iptables inside the container :-)
It just needed a modprobe br_netfilter on the outer host.


Early stopping during adapter training?

Hello,
is there a way to terminate early the training if the validation loss is not improving?
Thanks

Sorry for the very late answer. This is possible with the early stopping callback of HuggingFace's Trainer class: https://github.com/Adapter-Hub/adapter-transformers/blob/fc62058af8dd283c98c6a9ff59201b8f6f23394f/src/transformers/trainer_callback.py#L505
E.g. applied here: https://github.com/Adapter-Hub/adapter-transformers/blob/fc62058af8dd283c98c6a9ff59201b8f6f23394f/examples/seq2seq/run_summarization.py#L590-L592


fix: optimize the code and add err.log

Signed-off-by: sacredartr<EMAIL_ADDRESS>
What type of PR is this?

optimize the code and add err.log

/cc @Mengchenchen

Codecov Report

Merging #538 (b4801a4) into release-1.3 (a9b52fe) will not change coverage.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

@@             Coverage Diff              @@
##           release-1.3     #538   +/-   ##
============================================
  Coverage        12.18%   12.18%
============================================
  Files              110      110
  Lines            16975    16975
============================================
  Hits              2068     2068
  Misses           14660    14660
  Partials           247      247

/lgtm

/approve


Скласти таймлайн

Скласти список всіх (важливих) життєвих подій, визначних дат, досягнень, періодів, що дали приємний і неприємний досвід, тощо. В цьому конкретному випадку довгих списків не буває, натомість бувають погано згорнуті, тому пакуємо сюди все підряд, а про "лишні" події можна буде промовчати пізніше. Список повинен бути систематизованим і посортованим в такий спосіб, щоб читач швидко зрозумів "паттерн" і міг легко орієнтуватись в просторі і часі цього резюме.

Career
15th July 2019 – present
Focused on my own businesses by founding KKW Beauty and KKW fragrance in 2017.

11th May 2019
Made waves at the Met Gala with my figure hugging corset-induced Thierry Mugler dress.

Made a cameo appearance in the heist film Ocean's 8.

I was paid between $75,000 and $300,000 for each post that I made on Instagram, Facebook and Twitter endorsing beauty products like waist trainers, teeth whiteners as well as Coca-Cola and well known charities.

I was the cover model for Vogue Spain.

Released a mobile game for iPhone and Android called Kim Kardashian: Hollywood. The objective of the game is to become a Hollywood star or starlet.

10th January 2010 – 25th December 2013

Debuted my fourth fragrance, titled True Reflection , which I worked with the company Dress for Success to promote. Released my fifth fragrance Glam, which draws on the glamour of my Hollywood lifestyle, and was made available through Debenhams.

Released my third fragrance Gold.

Starred as Summa Eve in the film Deep in the Valley, filmed a music video for a song titled Jam (Turn It Up).

15th April 2003 – 5th November 2012

Made my feature film debut in the disaster film spoof Disaster Movie , in which I appeared as a character named Lisa. Was a participant on season seven of Dancing with the Stars.

Entered the business world with my two sisters and opened the boutique shop D-A-S-H in Calabasas, California. In addition to my mother Kris Jenner, my step-parent Caitlyn Jenner, my siblings Kourtney, Khloé, and Rob Kardashian, and half-sisters Kendall and Kylie Jenner, I began to appear in the reality television series Keeping Up with the Kardashians. The series proved successful for E!. Posed in a nude pictorial for Playboy.

I got my first stint in show-business as friend and stylist of Paris Hilton, appearing as guest on various episodes of the Hilton-starring reality television series The Simple Life.

Personal life
20th August 2011

I married NBA player Kris Humphries, only to file for divorce within 72 days of the wedding. The divorce was granted in 2013.

15th December 2012

Announced that I was pregnant with rapper Kanye West’s baby. We had been dating for a while.

15th June 2013 – 10th May 2019

I became engaged to Kanye on my 33rdbirthday.

Gave birth to daughter North West at the Cedars-Sinai Medical Center in Los Angeles.

Kanye West and I got married formally in Florence, Italy, on 24thMay.

My second child, son Saint West, was born on 5thDecember. After my second child, I was advised against becoming pregnant again.

My third child, daughter Chicago West, was born via surrogate on 15thJanuary.

In January 2019, I announced that a second boy is on the way via surrogate.


Consider charming cos-alerter

Enhancement Proposal
I have seen some interest in a cos-alerter charm. We should consider the possibility.
Note: This issue is complete when a decision has been made.
Abridged discussion from chat:
> user
Can we get a charm for the COS Alerter in order to deploy it with juju ?

> dylanstathis
We intentionally did not make a charm so that people would not put this in the same location as their infrastructure. One simple cloud container is our recommendation.

> user
We plan to deploy it as recommended, using docker. We will deploy a cs:ubuntu unit in a different cloud, to monitor remotely.

which brings to 2. why not use juju to deploy in a different location ? Deploying cs:ubuntu, manually installing docker, and then running the image in it feels very anachronic :wink:

> dylanstathis
The idea is to be outside of juju entirely. As in just click buttons on aws or whatever since you only need to deploy one. That being said, I can discuss charming it with the team.

> user
the point of juju is to avoid clicking in aws (also, deploying with juju means we have the asset in our inventories) (oh, and for avoidance of doubt, we will deploy in a different cloud, managed by a different juju controller)

Closing this in favor of #78.